velocity-javadoc-1.7-150200.3.10.1<>,xeD[p9|NvMWLՒOZ"%$3N=MFG3}*ٝi"BlPGm7JýBƟü%dA8S?pK;JQWi얙4 ύ°#Dt2Dz .sfh/(d=IBA6fL ɋU"$ȍ3}X|͛kDy/yd->l^#Kxjyz Ev,G`S>?xd % : *5 K^{ 6 p $ A Tev$8(8 9 : FGHPIXdYh\|]^P17b]c^Md^e^f^l^u^vi`wj,xtyz(,2tCvelocity-javadoc1.7150200.3.10.1Javadoc for velocityVelocity is a Java-based template engine. It permits anyone to use the simple yet powerful template language to reference objects defined in Java code. When Velocity is used for web development, Web designers can work in parallel with Java programmers to develop web sites according to the Model-View-Controller (MVC) model, meaning that web page designers can focus solely on creating a site that looks good, and programmers can focus solely on writing top-notch code. Velocity separates Java code from the web pages, making the web site more maintainable over the long run and providing a viable alternative to Java Server Pages (JSPs) or PHP. Velocity's capabilities reach well beyond the realm of web sites; for example, it can generate SQL and PostScript and XML (see Anakia for more information on XML transformations) from templates. It can be used either as a standalone utility for generating source code and reports, or as an integrated component of other systems. Velocity also provides template services for the Turbine web application framework. Velocity+Turbine provides a template service that will allow web applications to be developed according to a true MVC model.eD[h03-ch2aXASUSE Linux Enterprise 15SUSE LLC Apache-2.0https://www.suse.com/Documentation/HTMLhttps://velocity.apache.org/linuxnoarch #kna>mYX>3WZ6xa2Bb-r"$E<y!p#H3<1===P>1=,*.;BAV~2(LD,D'4' .qLF4HmXGGHQ?>Ju0%$)Y,,3N?=$Nyb^:ziX*/ 9'8>)7.",4]Dq R*qC;h&iGUI.@%c.~,@#<"{b6tnfW >$*;+C92_, S]ZT)mG-;}f/l\b|#_}g2uz]^kCHau^j`yh@d]SAyT%|, s9+< t<@,4$|74.dL4YEacGNVSx"7g<P&GTedjLq/Gnn$<vEk4-^D,$L4 /O48; J$#sXI{KblB8u-pRND3l '!tmv,TkkVdFo|_lq7`n:bheJleiivhjWrpjbOii`m6|T__ihr`FlHV7vWz`mjsqeVV^VES>TElF|NG 5YPHS#,v,v,,B),,v,\-F-,\-`,,B-,\,\,,_-,,,\,\,',\,v,v,\,v,,\,,-,,(,(w,(,v,dwg_Ag]w*6"e;Pc &'5E^85a2>6#\L3la:oc@_vi5f_p@#!$!.%D>><i|#>HO!D,]wS PRm}M:A/= "<)UR@$;@8'5!L2X+/>=5MC*KI.HH6SDi(U(ZfLG]kF o)W2~.C.z ;"(?+Pt\!#t(,lE$3&}?25,:8[H $#S '&960:9aA큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤eDXLLLLLLLLLeDQLLeDQLLLLLLLLLeDQLLLLLLLLLLLLLeDQLLLeDQLLLeDQLLLLLLLLLLLLLLLLeDQLLLLLLLLLLLLLLLLeDQLLLLLLLLLLeDQLLLLLLLLLLLLLLLLLLLLLLeDQLLLeDQLLLLLLLeDQLLeDQLLLLLLLLLeDQLLLLLLLLLLLLLeDQLeDQLLLLLeDQLLLLLLLLeDQLLLLLLLLLLLLeDQLLeDQLLLLLLLLLLeDQLLLLLLLLLLLeDQLLLLLLLLLLLeDQLLLLLLLLLLLLLLLLLLLLLLLeDQLLLLLLLLLLLLLLLLLLLLLLLLLLLeDQLLLLLLLLLLLLLLLLLLLLeDQLLLLLLLLLLLLLLLLLLLLLLLLLLLLeDQLLLLLLLLLLLeDQLLLLLLLLLLLeDQLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLeDQLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLeDQLLLLLLLeDQLLLLLLLeDQLLLLLLLLLeDQLLLLLLLLLLLLLLLLLeDQLLLeDQLLLLLLLeDQLLeDQLLLLLLeDQLeDQLLLLLeDQLeDQLeDQLLLLLeDQLLLLLeDQLLeDQLLLLLLeDQLLLLLLLLLLLeDQLLLLLLLLLLLeDQLLLLLLLLLLLLLLLLLLLLLLLLLeDQLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLeDQLLL4b71273d91420780e56cf6040c6ad8bba3d9f247480a1adf48a8d34b5ed15fbbcf0672d8cea972bc80de74dda5ac72f6e7c9381a51b3288d4c2ba518178ab993e01c1fbe734162648778b881e81c3a80e0533fe6f58949512c9f12eaa9fbbaf88289655391077c33d1a126ce2d90a91d3f7b1dd2e80ab6cb4dc108f39319f2b6c42afb79a88bd388b99f0b6496bdf7b643a8f54a9b2bf9351167bbb2dcaf8cb9949da70d5314bb81a99c66142981ea0ee674adbb3b26cb2d0f6fe5454710021294ae636f8ba4c8a6c2585cd4bf9a353cc2fd0219fa85a57334b4acf28c1084f64455b69f124f376d6b7a62c130c1329f681806e621fe27f284fa6a37cd059f9d34373514618def148f86b0f938d53e4d7d173e156f242084c1fff474fac9d465bc4ff0ec0acf2921cd7c1c69f377ceae55986f9439afbfe5cee354eb90c0b0612c1bea94efb9764045374f29a059843841b979a26051ded8027733a87046472a479b884ec08d4ffbc8e1b27c68ebe35f5ea54fc9fb8a8773c5838a639a51f54b464ec52deeb49f5ee7e98329b73e32f7f24472ccc8ac32714581713a8eba87cfeef61837a92d400e37d140a0a6b67cc9e7c17145bbec67037199746e153bb9c24df26537c089344aa1139c8b469b6850e4bf77e8f710bbf0a4b9f9487c1b0e69d65f24a35aa86749b9ff1ddce204c23f9e7ed37cee8355b8dbce8276cc4d485b04ba6a500f4b31e8b367bd67574c6f5af3e9a391f71e919562d3987a55faab50ed5468291cf3c894e562536dc9f3c9a5cda2830a0dc31049cb8839307fda2fcbfb33b69a77d880f4e39ca8aa51a3837368eeea146cbaa616a6c67baea1dedcf942c916eff675d8cf9cedabc67e49d384102285451f02f652090d7f4662cf233f1e4ab5f83a5adcb40269680dcdf4bb7f184467ca2593da6b7f61f7efaa3de6e46c635fb251cc49e996ae7c0501ccb6dc659f5b7c012835c8a25c0b8a47390770b8d32013abde31634094a81ed3dbf734791a24e52199628f79080ee71baa54137a734acde06fe0ca20fec7702f64e72cad45f79399954c82ee9c61a61df80818961f1d04b11eec280be018c168040e0d187e5120c6dc9c0c7049cb0bf3b75c2c869fefc05c552134f232f98b246bc942efee4f9a2a716398b63c7e1696e22f2acba1b59171a89abb560879946c804306118617e23fa6fbd03ff364e05702cc2c90bdc42db88e92cc4c47e29d38651e696a240737705d9fbc09fa678749bc83ef9e6caf9859e8a20a043f82db1d210fcd2a37b6d6584483cc189abd2d5c453170ac4a532b29dbf94245ba0b1ae42d7e711b8f1c4f872b112223969845490edea7e537e0bcf1486bbe6195503cc7a85ca0fbeafff966a62c8ca920b298f48c91e919881dd3d3523830d410e196dc0c3395cf7b54dee8a998283879638bba16140e5b2b753f37c203913b19c4673ba53e65a9cfe22e66cfac33765c2fb016b01746a8aab1ce5cbc8c76277590604d92d9659da0ce4c3f503d34f6f7220f2ad0d4c8a02e0f98965908ec3aaa226bd85359735882a01f9d55813ea3af3f391b04d3d778c789e8db989de9adc7219f138055087aee65ddb053d0bfedf7939ebfe103d42f252e1fc55bf29adf8e65ab2397c15a3c9b97d5850d228edba0836b1e3efd02be8c63d16a86302326fc0efa0ebe73c3a450539d248b2ff681f05051cffa062d719ececd53a605123857c3fd3972e33f4175305f22b87302cf059408451c5fc6cb6d037688320ebcf4ed2ac968d1b84d4ee0938a337240eb550cc36f48b6f232f8e39d9f41789237b589ef0d060113b576e7cae6351949bcdc44be25a4e645a2b7d884b509ac80d8d620088f299bc5b77ca0510dadc0518a0854216de04eea3ec5cf37cb4f1054042467f27726c32535252c67cc57944eb896636ecb2449f62cc9ea2f98d620786e455816cecea3d00069f501043635fe1c42a6adaffd9f7566ac25705bb95eaf7aa2ab6f9cb660b3ce80ba030efc0f354d43a053ef05212e2381669aabb26cc05b024443f451d0123b533a2b0e0636429c23eca566fe0b3d6d3db0f2e55a768046ceacbaf124cc6ccd75e74dbae61e8794330917e074f89dd261e73177b35a9d4ca7d97102be754faae2ff0100591281bc660be35e54ab1b1625fbd2b646acdba0117aa96cf8122019b7b95d7d97617e6ae88c514e5e5f660cdd7017597baa03a224fcb0afb6af07ebe6ca105b7df4145245a3f7f7d7ef06f138506e5eb59bf290008be0ce616b7dd3a0371fc5d537b227eab994105506e2369ad11da20150cc9a427dfeef984760a11031a3d6ef009c59473cbc8ecc9ce92f1864767557a2f6978ed27f269e7f9ce57bf571f2e42073642c4c47840cd02c951e17d60c9bcf5c54d0828a12503199f8c17f4a321c4cdb48e8f87361abaf199e53ed91c9743d145bf6a84121c1da72d8d097d672d16c0ee7d8400149205fcacfa3c35ae584844a60767d044c53161db8a3fb4ab63d3cf422ca82b530c6df3e16fa3456bfa012d0bba4b1f965e8a206cd19b8cb82b87403c367ad374de93a73dc60a468fad266fdc884e01692e619b9636dfd1734d299f3ff8ce37912a35ef0de4c8714249e35002bdf1577f3bafc1325138beb0a91457ea7dec19a62003aeff3298b3808b7d89d3f0e514df5da453d3282d884852313446052b78c6244877e11ad4b8ac7981e1b95bebd76f043608caddccf853787da2fa402452d398830716cc035f73396d0ac0ce3a4e0f0100f85f070c419423f0ea29c9ddecba8aed095103ddcb3a8abd47fcf3675ac8b49ce062e80e47cf68ebb833da598f24d5ca2bdd3fa02eb2018d50b549e0f571df7c95160704da55026b8585e29ca39e1a59cfa35cd36ccd818ed189d80c33f08f3004582e24d85778d2cd0429a5141a078056d62aa36457a202e013e9595823348e2f067fff11417a80ad69bf2ce874c4f8e0b5354eb97619de2aede14c576782f41e30219e903b3111ab650ad8313941b81395111562a5a9528b3154441981d9c59516474ab2721597022177fd0fbfa583003e9accebbac8d81fd2db8cb445319a0e6517b2f4704e487089f2ebc576580996941d2eefbefa6458d269441bcd99339ac110ca243fae2a2bf3a962cba6a8b6f91c02cc43d41e6b7a8d568b110c8d99ebfe508789bc873c87340524370f00fbb7d613908d25f7bfa26e3e420078f9710430626ab5b424349dfd2c007536ada38e825d34b7b0973f66a30aa64299f858b5d6b7bca20404c928d0ccc560a70caf28b42636d19ce28d8ab000fd82e217ef0a3c28019d243f929688af07ec35138c93497ea055e24f348351dfef42660a7670085b01932215587a0e006c447ca2fc0c76ef89c5bc7dd5ed74c493e5dc2eebac3fff597ea7b069fad6ac6f5f6eece3fd8c6820754ad5e04e3267d3e22b23c9ad17341931fe95c68a8bf6ed92f0ca47363ca8f4b8904a5d7a80b7da86a0dfd0f2413cc02b99cc628810ec3f9865b8a5f1ffcec9025a4189b75e877798b27ca4636957274c40c96e7de6b8240a6c88e637aed1b06c6e103dd6541e41f523310e7317fe4c763b0fcee0cb2d8adee3ab7d9d8c520e629515e3cfe709f0cfc4886f14ece57e1e4ad97ce5d9baec1a76d90be865d97afa3da96dbf8fc2f8b861549488028258008a92cf74c4096c9057992f6affcc37666470bca6471d164136ea996268eb09f6f6873b145472ce39ac059d2cfcfeadfcec588d860ff75e017aecdbb7f4bf12e869c00d97a454d14b01faaeb7ffb669264c96689d31192f628d6f0c314153bc3a01bf2f5a816acac72fb12370c826a83efa57167de11795199dd11070f5df0765b49953e5765a85fb88cf74953d14ddd94469a69d2dac7a371d5b4ae44a0f7feab74b45b85c9f4e348481f6d936ab81cb1d546dd97c12055b6f2f4db776ef1858886694d3b5e9fb5e72a28c2ec708fc776d61f1c9e4d05e9c646939595ee9370d355b5a8d373f3bd5522d93cc64c21a587f11354200774cdee560c566dd0496b8c2a8f83bd315ec194ca9c18f8287d8cc76855cf2d77b49d6153fc2335f368a65cae75cc5f2d1bf2129d2dc6cb61121730d3b49c2f55d4ba5185439be82fd38b2984ba3015e355cab8a913fd552e51b94b0f10787656eb5fc569c220bac7515fe4ade568be90879a30ca9bdd39c3168a119142e944b70043aa3f51f5c19d28662fa4496350aafb96bae45769bd74d56155b38d444036c2c2cf351f6b0fb72aabd9fc782ce872f057d99987f8539784f11eb1b9082f30a1925be1b663e43d73f3761ca02a2c68fd22223a278a56b850e645e45d4cde754f44b46fc8375b1505b75adec06e118c5d2a20253ca323b1b9a85cced0bf798723c4d5f95115e5629b4be3dcb345527feb8b31639547105cbf5c37c1101936d011be6195114dda847bce036893b23950373381a8d9bf226928c26e50ae0dd5b5b6510137fd128091b3beba7200f5c2d8edc08b49bb2c23526517885f090d63e423181953ffce2e03ed8e0827236ed33e1d75362d42d0a20fa38914e580888fcf036d3d6ed26c12168508c2a79d985c542328760dc07b28f1e9dd8b94698fab17c47f0abcfd603ca1f0d413d1cc303fa499994735c7d1f6dd66ab375039eadb7121ef8bd8680f5114cf00f0bb0f13d44a1c8df0e7ee1235111a0ab64cd358a62bbb5ba06ad867e03942682f87b739c3ffd65d4fb93f92a0bd5d6687c89b049f8273396341e4aa038e48d4ff099e598287812e34e5e1e1e732e112e141c7087c78d3aa1f21c29f75e7998f68c44a631c89abcd05953a55451f365951c76974516de912654bda6ccb77a3b51b59095bb4415a4b01846366780963aee951b5f1004154ea9ebd31293612f2f0580534d0cfbbfeedfe80fcca415cbc1ed27329e1fa4d27beb57291b1ab6f2e0f27fa323b64b4e16c712ea13c4061ac7cbe65a765e7e59e683a8ce76b7479e8885d8d512f0ff81ababdde86700adc00caf69368a9ae0f0d942cd2ec221409226dc7dbcc0c8e2ccca6d353edd81981722fef7445c3569e3f3223f298e48913c7b33e15cb8304f5a014ec89eebe917f57c6559e3e13cd9885178b10f3d3cc3b6e09bc94a98bb66ce015336f5e6cca37ffebd5ff68d581b8c2c6c1b41184dc98f59cfad8083e21bd5ebf2a64d1d93938fc46630fff1210e1f4f65bed61a8e5a12996d27826a2baa37979b5f0eb21a07caa09ecc62d7a572c8098b19f9a49e12673cbb16b514e7f26dfefb2e2cb87d7f2b3d6804d024a9e8d2e41456e62ef35d66b69a9cbd8512a1e388d67bdaa124cb0687a3120a79cc94af066e27fc94cc765497215a8ee0088fb546aeb72ba6880789e45a2319648b00cdd4eda6e5cb78e8e879954f0a836cbb250ff12f19484c1ab56d83e40bc38a8db79a204e871b9cd28e0dd90d5c77dd563f58e5ff5cc4bb9abb30c53ceae603923a7a0a3a34f6d7c3998da6c1212d35a45929767492ae44f0a2275223a99aacfa3601b1c168189642d8f5173e4ddc7f39fe822327a5dbc0fbc05198fa6f5fe2683ca5bf16c37c997d5f6cb37ba64dd216f09e7fdc4d52bae037c6bb1c4c2f816aac7acd438932269e60b78dc473406acee54b659c3e7b47dc084e6d21098d0155ba5968e25e3e79397a3d362553665e420b9503d39cf60e76907f9c90430332df939ee84847f0a99eee2abe2225e42439af310c58c4aa681937edfb079ebfd92e48524106c1d0f87fc359e5b4f880d2c7ba8ebf36f9404a09dcb359448878e8a1be35a3c770f5ca8fe46fd02deafe71c510cd7e0acebbcb1001978994e10431dbcb37c26d4d0d8a1d09c5a9967c64a1a0296d71799562e79b2bec1e4f82757fd2c59d46ca18781ae2e74a9d3603f5c62f02b8ca73c18f236a9da64c5045edda6eb547587e7e89f83a120b1d0e5be5c5cdcce98209950372ff56179d102b0196df48a55ff1f076c1e82c477e3c36b065e05c95fa3380ebdb73204e34707e7ac8ae4faca4ba05f7d8d45b2ff2f87a4a2ebfa01dfa1fdb668c481f1fbed6b703afada77ba817364f2f783c78d582b2733402eed22fd536bd35fbef3e9818dd8ea2664e6afc74c86594544714455dac80b91070fc6193ea3b7f0360575fd1bc892f161b95ee9ad6744334b3dd34119f848e36136ec9ca8ef027c17bb4df69868268e6eb091b40afc7bae7f03235b5a0e6d2c7b116247fb5d28f1dc111ac9fe46a9f6c7aca0d788fdbfbd75b1097223f053eb2eb69334756590b8f48932f900f6c8765e5efae12cc580361c6391cb45f15229caaa57ea0621980b8164f79e30ebc21ea98372c163ea8349a17dc0621d7a395a657e1712d8cf3490f8de87eb2e5cf5c5300a26be761d8a75367d275346fa73dd92efdc38f9c60dc73782c6c0d829ba05792a10e2ebabd8f255095f81db79c6d767e12870967f0ff00badbb0b48b1d130e4e71d54acac0aa4f190edb95b220a6fb6a5584e52fd03fe44bff977a3898b0bdea015571e97b02840544350d12e5c41fe68eb7cf65607b5e60c9098ad96522006c43d89e7129cc5d923f5586c2669cf130bb2b74b1da31d9008c9aa4e3923be22fee27fcdc79feceb97e762cfb2c4ab5986bc605e0654da540d9aa42263b61bddf7c0b677a991fd5484f5311ea16f261a75cca1e55153e5c66239a76aeef6dfc1306277b174cc840c692bd7c1a66e3a2577f51ac0df81c6462e34997ae53f6f42a8253478d0828e7133c8792c25a5c5b06e4d02906a9deda3c80d0b13197cd7aa17269b6e463c0d719c1fcdc80cbb435e8883d08c1f71bc2a5995c06cf6242c9e017d2c39dc49b85f94b634fd2f8215370a19cf45d148290701338aaa9891e32599830934618a2e2ea3b65e7e784b12e3da3eec16088c2c729b783dd7a40ca7dee959cbea5bcbe6ff263af997b0353800b926b5dd3b2598261aded827d68932a7960614d02cd3519450314dd56dc92c76471c1ca04cd7d608f6f1f13f863979f5508c0365bc63a5d615b58c3a0c3eeae339c5594c5469325090023ae531b7c878d8e8bafef3930ce52b147f9edcef3b3d62d73f7bf66d86affd617f79902764c5b437ea08aa3a06089efbecbf13f8481f7f5c0960a10b384bc85a199619dc83d26d0a4a80f2c2e370974bb3479d4ede705cad4f3db0203451e251a272a3dabadec50dd2c19250cc0dc222343a4a940b36beee10047675911147c2afb75aaa964a1f62c10119f494466df2f9739bbfc3cdcac3e6563d099027d1e462e8c86be20944791941f0013befd799f99f78087e71a81c6c887fe60fc4e9a730d791cb13ca27df2f5339cee1984e938a838678b9558ffcefc463233b96e08650468d03bf882455596cdc6a5720141694c742fae8091510da4067ddf457206b5f3bc01fd6d324841ead1c4051a5d5c866e46aaca3732b5bc8be068dbb7f4113e591683eb9d00fb2f76344a91ec82df633512c28d9bf48b5abd04e3ec3d05b54d54c6107b2ff51f6a1b0092391a95abdba3ca2bc4ff602e45fb828579ddf415a5525eacf99c1e4bc6945d3954a5de33f3fa62197063f84901ac143cecf541bce56ea18e69101943a6a84bb8cfa23471d990bf95ed2f72a30b844232b19457001d04e93c96e04c193a69efd91d7ab8b9601e7de3cefb4dfb9fed7d91164e65e4632dd6a5eb406741d2189e6123c18b47944558afebec15a84c0b411638ceabec0b89fe536b7e658b8890d314e9305974077db6e9d8cda7872860eccec425770767850e5d17409ab8149a3b2f907b9eea975092efe78aed6960798ed6af822d5e8a93a25c848150b95ddd184036d420397306c91fa33e5ba5357cedf92315c6ff4d33aa0726319735a2555df9890297f39c70ba951d4ade1e1f0389877bd35dcde91432dd60363853bca3c3d2599781dd0370bf3b189d331abd5d003c062ec711dc65c95812bf8eb90e722a0eb4f59506e12c9ddec205bf158ced4ebcdfc6f3ec7c18bc8bfad3e961c1b8995dfde58eb9fa8a3ae7c64b689e4b6b838e97787907a109e9b2952dff8fc2c5082db31636630ea23142cf86ac1dfff5009734f436b4b84813d5ce6cbb930c3f9a5605f99a528931f701c968c3394dd4df2655a8aa2373d0a11e44c851fb13ce2cce16da0cebe1449f64c3f33639fe20c99a052ebaa6a62db1b57454324a91479a2befa2ce93a46ac524753da00cdcc7bc42c6aedc6ae54a9306b0b2c6b7f4cbe6e7bf9448a2d3212ad75a06b46933bdd674a581760a18563025c08453a838bb320fe20f9a94c94a254a4494526fd28d256a4ac033b917abe14f9c147fb1565df83c326a87fe42a4cd59639e640b272c717e550d93e3f5e5b554929ad8a7839d7cea43704b7e42cb268ddddfde0698714a4588bf91ce3094b151b6050b6a9eed2d6995ed145a1562b632996826427b1b5fbf5f40e8ce3530b4a52dcee45c1e6fef0c2d47b13bf8eb1eb04e50ab7e4fea9ea13ad3543c5c75d87069744919acd2625598af8e31cbc84a7dbc0a9771c00e78598123388e3ef2cb631c7747702ba4c4d141a6a88b735a04ab2f7aee1c4ff4bc439a99fd1d5341452b806c05d450a7a315ac5e2fcef4df80d1fa0688be9175bba0656aa9a5d8a761e55875eca03622dae2451365fa06a8210b2726b6829aa852cfedd14a74edc986078b7b923928bad86042cfca1e41581dca442e42abee98ff2b686cc4f85332dacf026acb8da59d774452eb9233a1ac1f6cfde874971c267e1acdd0f13485f141669cf27b1cb20f63a7472de451329312ce2de24dbcf0cd20b966bde630e68a8fafd6d19a35298bdfc7ca490e5aa2ac2afd703b54c6b8dc40a107e3d651ee7a2a221b02e5478bf93d93f34d2d35f69d70b6d3934e74136e9b56e40a9559d448e3710619137dad9960e2301553568147a5c7c9aa588c34236dde1f7b6fd833fcd93bb15ea05e37fa72322ea8ea3b428f94764597b330acce462e54dc2a370df4e86e5a7abd3d01f57572eb210760922a9f4efda58ff82ff954167de7f6513626b0c7a3a0f7becd90cb672b96dd66483078f2bc2238f08f34fa06e22f51181b4c5fa0a2d6976901119c2336d5498db0af8c7f83743a214126dd554f894038bcfa6bf6b3e129ea3b560710f52014dfe8944299ce6ae504c587810c2cab0ad50cadfcd4e1f2d95413b30a560a811b6221c865fbe353811c8f0421c749d5e87e3213dc6472da85a1c7bb3d331d5b02d8fb4f4ae0e0b4819da21177cc014f0cce7fbc68f3b494b624fb57649c22f441cfe3c7e7cd1d1f975503760982d7991704297a0c9c0b74635f0c6064ae10a2ed0098fa2e4d511e882e4bf0589c817973f1e6e56cee0a8b98c45b37e78501fd45c8345a8dbdf739caeacda21c6937dd9d23e9dd0e7c449c8abe54ca639af48ee5ce077f6f05a0c2f577310135754feea54de2936b83f9a9076fcf2c0d3a768a0edf5c2bc85e97ef2c39d349fb0dc253a54ed4d082ec3fd418a34e95ec2f37b6e83187a3280a08395c1c8670fc0c77405f9d1ec54773ae1f079bd542e3d6c073aba3c5256fd1cc6537a5078ab0e187f4482c81b710f85db243cf40971dc5301173fdb898c166e59a470fe086031323799e1b55f7c29cd6ea70acf4e64718f2f5a28708180b82a3549a697935fb2f1700ca8777ceaf64f72704009a73f95d17f997f72ee9a7302ff08e5bc9adf906aecc995013a6a8215d5452f730aca3773f89215728c1c033bbab787b8738ea6f7898fffb01834b431cb7aa8c36bff06fc2c9245caa5357d33e075f5e3ffa06d800edffdd05bfdbf4534fc8876b98070a0d5199138e8a6851fc4f0a94119b5b6547c28d90a031ae94cdb918358e7118eb2765aa71117197bb024ca24040158f9c3f2e78050942a161181a701a3f539cbdb1bea3442ffa55206b19adbd54f42b61b91d3f43c8fa1e1fc2b77c6e46e9902aa40f70cecbc1d3516becd8c5bfa1adf397fd8d5e0765a8080d9f9b7982c87f4cb134dc2ca3c352c831cb5c05196de68cb1b0e73aa9e120d5899002311a54ea4aed5d4f639c9a5c25311edf7cb1bcb43528a3b4d71e2f963cfffec944588af5573cd9de089d71a1adbfc73118d46536de5a5808292c76ef0dd2531b2a8e92c32a8ec78eb251cfba7ec1c4c137ca4db24523beb5bf8a5ed0f24c2402e8892877b1387731f93125f9301d1b38c2678caf609004dc0209198ce3ee9de169385ea9ce0170bb1ab6231be5fbba604d58ac3e374e4451ebf873b9aef2af2ee0ab570a01790e4a7f7b7bf4835b7ccd307e242cdafb922b9b3eea151e5157a05245d47ac2738d75c4d7bb06412b8487e318d63028758ccdb8f4a56cc80e688eb7f215efedb64a98ffc3755119749832dc3af9fe9da3a8ef94a8cc6a710dac5b8251c39647aef71957e5cee45fa1f7c5115ee1690aecb7476d37a2ab779044933614cc365ab7f87a32ed6fb3f8d0bbc899f94524c926b25dfd4fc7c9c3c1d77055b864e57ade31de7ab3c737c62f11f7b32489e16d0867b1ce3b0555cfde0e5548ce3c4a982d30f0a498723866d520bbdfacd3987060dedd579d63df902a75c2d8214ca2b74bc761da79cee36502d90c9646ab552136834d85a693c70e79e0107a580c648a1dce738dbca55b6678eeeb7bb519435d9399c70f70b1d652138249b41ea3c3d9c8e25a7c090edf42603f2d6b17d5585ecc681feab4ceb064b55c597e3ebd30fee268562402dc84bb974f48ff31c1eeb20e74aab1d223ce486b429f5446a484ef7202f66c348d8451cf4f06ad2041e2ac862ec47128f9e1efa6dd38e8072775ef3f4147ea08e068016b99f4a038ca2a7f86ab18f470446615e5976341fa884960138b1ce195428b67a6e61a7348d07999da5ca9b973dc72ff18e219a58de7999511aac904a02a3e0c6596a86bef3650122d9ec60948af966d18431350609c544e51e82226be00454ac5354b0a69e4562eff50c2ea1a905c9f742139f84c748f416d223e1c4b4f96163a3a911424d8d005986fa5ca817dc85736616bdbdc364e2fa5fc7afa79d93119c65ae58bc42b247db97d28c6e61fbf9ca2b6a58628199ec86554d2df11201d76e218c9f6618bf4a980f4b4b534868fc25779a59f5d824849b7902f8066d7565fb0f37a0f5050172f2847a97118a779e768ec232da04ca8992c3677bc94937fcd8531a8dc0f5d5719b2e30ca0af8890ced6d7f0ee4531544d707204116dda51c5c6a5f38f5cfdc5c9f9e8927be7ad57925977fbe15c7e10917b0d295af1c9f0561a78daf0d9c77bd2fe8302d8acfe7bdc7232a72aaf54e5498c153cb841b4ff2cba306715f5feb4afc4fef3741950773d472c41423ce537002d8dab500d9600c06b76a79b193cc30efe505eaabdda90b4206d36fe0855f87f4bdf4c9dec80563ddd4ec70c51eeb616dce53434d8502de279503d13e0da5443963e98130860dd50ae2083858011f43d90d8d1000e0ec6db9d552b2c4056951fe35900dd2fe5794592a2097bd92abe6469cd0765dec4e5665625b6db3506bae4f1ed7646da9241ad01c692c9acec1c853ee446700c435f39bca3fe690774ae1be475eed18a3402f315d847ba372cba15c8fd8c4b12c3c1cc5dc6e0249293fbf4a7740a2629aa099d5e4c9e0e2d554ea50c1796dc70872ad301856e3ad55debfc5208360478a7a74b301f629e973cac86c315236accf00acc8753b9171a7b579683fdb3106226560f802d74c29fc4a2e1cc2273e44195c322e826e81cddd60b9ed7e80d366f18bc79452eb845210b0cd885cfdfc7732bdadc5098978263076fc71c7f1ed1ec82204b5de3f89ef96898c081bf61c1fec3546fd4120ad475d6ce5991d1b6373f0b61ae02e918af89f9c3c79177ad4fda9b28d728f095d44037074fd212a467d75c3093a1fa53ba9855d134dde50a6a3027403e665013b9af24d7a2f0ce36cb84e7d4251a72e276c495e31d268d86d3372bd54c846250963f8a1214a6c8f0f34ec9f09554d95ad1cd203fb4f7052a22f20d79ace72decd36890a0fe86b3c0f32909edde2aa22b056b6baea346f0dfb800a4879e827dbf06816c7adb98ebfa474e30ec7072c70ef74f16d402fdf1e13124f0b7f7753160c307d1d0207274a0daf6eb660c8bcf78895ac0b0569f1a2e8be5bf07cd777f84fc404e62da971157e4486a05ab3e9b86717f88f2de4e621541a97777c76c0db868efce47dbb63e582f4a0ff62bc113b102b70d23c75268acdc5efe2cfafd24b0c14ffc5e14f1102372d713809b4ddb754e30484afcc9e8b25843989f290a04a3e509e0073fa9776970e27d942c9e1d3faaccdad83c30241ea2dc937baa5120dc4bfcd955582b751a3993c193cc5a1819002639db8e41f99f06f15242ef1a6d4ec0abaf860e2db12095ecc95bd47ebbf4f3a451effc3b8b12b15e63d53a7dd0648b623a20b90b85e9b1745e4f5ece8f9294829449bb2d1424db37babeebf46fb54a31f3e8bd47d42e7c0db2053b45146eaac05ad85bec0f7c7a07efd9d4bf2a14e941f05636f0c91cd0cec9a7483358954475e20c1116cbb7cda4684e2cfd5771530726210896b5d253a1f570bc26edfd016fbbf2c7d7b1a39d555032e8da985220fdea75cc9290fe857b2827f07e2c71436606de814fc0c8c2fff2eebf562516db8e1afb86966c3f53d40a898b478bcb5819aca3d74dddba6ca9d36ef5dbb3c1fddba66e255e34c9b898741ea756d600d922b273a99d0dc62f835932f963a397ac8f842d9da3a2ac3d3804d0f299d9d43adad0074f705dcadd14e5a71e1a74928d8aa4fe0253f88e37c3efdb8243a182b0fc07710f0666dfc72725c55958a5a11c9e941dd54f2820c719b895827502932da29ac416b955f392983b12a789b0f152581282e61348247f542412178fa5f4873b3c7119b4675d4192f63617ef0776b4ffeeb0f7e82fda5bf14c4fd867519da16fa99fd34a98906b603a6e8aea0cf0ac219b4e8dd901dcbfdd1f67ea939a06c6ee742830c2266031bfb7d991665431d929f07049dd82e332b0a513e938d6650f1316ff2281288eb432a7da612cce0de9c5c2c2e5c256676f71c92a7cf0c1a2f15a1605eb851b81118de29b61bac30d408ced9e796a4baf8fac5bbbce1f8002dd5e2f7bd6b9c4f5609966567596cb695fe9881d20278d491318947b1cdd460ff005408d76486bb2d9bbd012abf22befe31099c3db4aaf6fe3a92cbd3707968053ce39049309196ae0b58a44c640aeef549ff30c6905c3d032d55c848299385e80eb89ffaa39273b5100468fc1e3cd273635d17efcbdcc19e5ea53f59774fa400132d73c9bc0937bef6b5d741f3ec0cfb6d5b3e8138e1add86f594e3068c07a0fbf37ed6e80acde77def73d164a2117789cdb04e12b2b619b3feb58b31a6bbf575fa7424ac4c89ebc687b1203e385c0f4f4d2369854b5d6f6eaea34d90b0ea935dd07d38cb12c2494cdad90eb8b24ba471eb96939a5eb71362b5d46c4bca2a44385d0adf1aed0e4284c6685879728c1c6b3ff7a9da3b0645116db38537ab38af56806c376e6995b9795cfc4915020bb774bc3212c5d253f8596081fe997cec33b2b8d2c5a014a39bec80d9a22547b4697b8ef6f5f720ae9d4023f10ce6084265f94cd5b270078482fe88da1f1bf8b5db7b8920b25f1c278814670fad3dffde276389c32d167683c7f6387129ffc83392ff6a2f3823c02ad912c50aea961b729b867cc4dfa5d6b8647cb5cbbb3d5e36959191670259f6154b71232ee2a6ee472e2b92fa49deb93531ffe8beed5bdc6836da357dc6baf3a8d77e9dbf731192c6f18ac28eba2f31047119e6e6a46eae2c6749083e819f3bdf1607fe5ce7e12d4b901c68dbf06396823e0bfc52de41aac6bac8e207d241b459e3270f58dd172324e5e2f40e77c8ede651e464af43f200eec5aeee6f6751edc0f5d76d5a6d7542ba4e54874fb42f2b93637eda38c58f85aa0eaf79463e56fd2750a3baa23f9bb741969184e713f01465f40f0f7c6e901c917da06f8de7dc920c5f79863a267a9ea8e7032524065e7906c2c451bd467d1dd2df414e2de5615c1641244822be816c76417c61f862520b98ae7d9a3ed0a9223f56a9fca38f35654417a7021f2ae35a6187f2e9f83730156f3d4a7b3beec9f83ea9518ffcee8bb5db37a4858317c8e77e3c7f1293abaa9e468f70ef5e21b0b3f24917ee96115b82ab035c029c789dea67477909792c90b61ae221fae524c430cda4454d4717ea0759b18e50c959ef80f395432fccadbcef81b646d054c3cc6bd8a78d0f22574e1e5c542f2db95c5af0d6c2d6d7dc5a9839bbd994dff25a5f31f4c8cf8e96e0fae024ce7038efa3fd7eeb1a0ca1e6055a597cf803f21180348cd059cd62a42ef204bb30d31db833500cb02531bb7b1aa7063041c154ef41a190e3236ed56e5a05d627cf9de7fdde6c56a3da8ea73a21fe50b44b4494a9d82b6b240021f726176b544ea245dec42156509f199d584ffea468a4d54daaaf6a2607364080ce349d9df7a004e4d86ded2f74d667394996ae067a0fcdf6784951a5880ff70cea4e944a6e61153ab7023cacac7fc2e89e6d08486da7dbf158d6a1c5a085633f854dede31d66d9841e5d3695f125a05a42702935bc1df7a72258b473bffaa8efc344f101635f189f5732cc7ec038595b87e30aeeef835eb2779548ad0232451c72bfe436905f5c46bac41095a2b9ace2cc43fbb9b19d7162edc46e03b784bdd26ba163eced241950c744df0374a0c4d7b31fd29ced390155c1e7eabb11a3d4f23f6e474cff51d8fe8d5b3d67412d5d34cc2bf3f0cf4e269a55fa12f44eeafc99f8f1eeea165cf6e4cdb6f40afc1624a8258ba2b757b811b19e1567ae35bf0b2917c17d51113e126375ac5e5cc6058b4cb63aeddb2740970cbd703435e719bdc17ff03647956815c48b6a3d9ad5c27837d259b883dece7146f26add5fc070930ab4fe5df578c7a768455ec40a9e033371e682200bfa3dd8c7e8c8742e957d8b70dbaf4fa0d828dc8be69e5121c306b8f006555a68ff7af176eead8054e10cfd14b2a2bb4daa3dade3f26ec827b8b572ee23b51b88f138e091b0b781710337fcbb40fefb316856b43e5ca9bfb6fef3886a0497daadf29e1677d2bacad2a03f159548cd8dd4c1f6ce26561c54bd6046fe2bd301b63372cbe042e6492cc1fbb487a6769d8e5400984d9d0722b08e889d8561fb3d9a3a693936efc702d7864cec90cc936afc00af8a8a7e1fadb5d03a3068d453aa8d71fa0b80a62bd9b16750d9d2d342663ea06601c0a9b889c185f2ae87bde9bf1a488166a87402abd1108637d8c65a94923fce5c002b32a6033ab73c003f6f7fb04dcbfe5b3267659124ec111f95ab87088e96ab9bdb05168f708406962b135215e34bca03c43ea25a05c16bd014c35b93747dce1aaca6dda0d7204eb7a4c155e489890a2044e6ed4bf834e2efe0af0973dc55dc46fdd16e21cfa9835cb10383344cd4482218ffbb3ea9c723d6fc2578119d81e972f74a33cc110a69776ffd341cbebf5f6bbebfbb5920632c2e72bd697c6984226088a53d9a3fb7803d4aa49e1219e0ca5a83bf080f0b8fc293c8b2eb4e61bac92331b9ee618170f37db34ae26915ff70dc1df24f9b93748609b598e977ce7d35ae6d30a3def62b302fea7985f933b61cac0f87d1087f365894d22b5d6726ddbb3620d8984f964819177db3de07ee42be0e54cb3f2dc45bd060ee5651835939abca0fefc59a5f67f76c2d95c7c3e1e332e4e5f71ffa306234d97e70c4ccd57d03d123569fcacbe949c61f880257525c3a042b29f2fbafe6ae149a17eb211cf0e62aa8a112747ca86eaef1c8494f4e429163c01d47e9cf8d85d925d4d8ed47c93806162d63d5249ddbaafd71b8c5cdf510c6eaf845a20b706a1d9e491f15b56cf9ae2f96d912694b6514b0501925b30c7223d39339f9bc023c5a6e38b06e642decf431cdfc65df080501cbd7121fcf617fe625a0599465ee313ba9f02ca53183ee975e7ec26628580b7f83457fb7b3e050b7208f39db97e1e90794325b783f806bfe66648b7b047878c60584be18a5d8f745779a2deef680a741b7a063fd857f4f0f3181725a49f89362e2b9c3784d7b6d8bc6ee3b47a8dc3da846097c21bdec0e65e6e02ecacd52408eeaf06c1720ffb2c37b2ef5e6b05908723414b65ca1a2f1f40f851469231580959171fdf46deb6acc926ea889674a21b30f0bb132f24e7a6997fa395bc629366153646d0e217128ed1f84c3f3d803741d10212dceb740382ebf015c1865a82e4f2c26116236e72dde1feb15becc8eab5276fd047c036e9ba0d0fb0c322ad2bd3bfb695d0e1933564c566ae022cb9fea1682a29b30c21028954dc548eeff7f5b7a82376d11f0cbb5ff344f9c0ddbcda4c4c32ee2739fa379a993b698330ba9b7ab26d374ff7a087eacf1e98dd598fccce5be2fa22a4be6027263ae308124779a7088f9b2a3a71bcf000345c42cafd2a739356fef64ad561febb3bde116c4238729f9fa365f9749e2895986b93f16b05098e1bfdea756c97fe46c0ca26cbeff19ec93cb84de599966ebbcb4abf9211270b3f02476ea8bfb0f70156ecdb0c5dc0c8d13a6f9f4fb18c2fed3c53ba6cd375dd0a304a27b1f4160db0cc1222ccd0666f60a3ce329afa6271dddb162ff76a578a0cae90165ff01e053ba5675454355967456d0aae2323e07ef903441ff2a2dfd82d6d82a9cbda865923515a83a9379473728d3749f36f145661285d9d8c6a889a65ae3651a5e33dc6ddb64653f7ef3c7bcbe53071d4fc498eb5834207c794e4a9224536acc7cf72bcf9395bf62647dc5e903e4c26f4b0a1d7fec34535b278fd11ad2160decb4367deb6447535db681e4edd7652272e161ea59b12168325e6b834cd51fe415abaa4da7fa669c6684cad853921a55d8110fa92dd9bb1e001dd896e3bd49e2eaa31775ee1f9f2a551ca9b92ae321021b1ddb090237b09f712a574ebecfa518924a910ed309328c42bf90b011afb207c24febb64caff045f3e66c14cf14b9ce60a075e680f00462798247e6f566649f718ec7f28f7565e4aa7dbe1a337677bb32035215332bbe02e901fa4fc9a2025f7a2b0d1fa4091df32efe0eda339c9c4204900e6bdf09c71a52338ae7a8e5d959435790430611ef40374ccefcff5769ba893d9b74dd1388c46b648ea45a4ed9068ba43fe262374eae7cc223e1cda1aa14a3e3f3d9d1dc35ec5d6b5bde96e32a6706d68c432f03bb700023eb6eae4c970496ee7968e6486d7728982749327ebd8969d5a69498ebabd67d8b3259dedbc76033b9fcf99fad17f040da504edf7f5f9c002483d9623b27f3978c12c79351e282f111a79dc35357c9c4473491ce3705bbb22754a088d48282b04cd7b1c604fc36509524cb7c8e73a91644669cfc70a931ecff1adeabb1759f3e7b45845289d4604e440e3b911c97464562de53cc7591d01f966ec483334cdd59485f1d1e227532006e54cbe9ee1174d4757296e4b66205a716c78c049d7582babcdcf6e00f7069fef57ccd15865739759a1ef490c391c519e387ecbe0979e0470f66540a7d4e1ebb3fbc71883ed8e25b7cc3c3b0d4e666cbbe23e96453e7369d6e2e34a6f2729309dd93dca90d50d87d712c039f68f69cb29a07077dbb50e135ed0b04bf7c46cd842e777666a6b61024acbe6acf76c0b1ce42f2a6dec95cb3e10d7673fa55eed4d05c32cf3d62b9df180cb4f6e38517c675f2a52b5e6f514d7d00173091b5f626fd5d7c99af675f9565f54da90e5e9d864ea3b79c7a6c5d53cd6c72e03bc4e5337da19e278d38a68c30d20ff4a13398626be5449d0e3c337085a8135a8026eb998f70bb93666ed75cdfe8c7c9779aed8a0074209ce01dcf529fd6f7517e52a6ae432ecff3ac4054048fd1efccb71391e4cb013d11e9c56f4a9f77dc5145b98bd4c0f3552ae015676aff2034cab408df5589e05a1834e87420edc30802ff76f7110cb2d7f710abd5e74317458a2f32ce5446b4b0b4a317af278f17d2dccc127cff112f2e27fe5bf97968e847537daf3c9a9b46511238bddfc10fa0141352706ce963eeafa408f2fae93ccd3657fdc82bea7d190f921eec8db8f073e6ace01d19515ce6638e8a547fc4cb6873232fa2c1f97673ab6f9cece1bb2466dda3ef6b97efd63946c801cfd22370826c4ede50ff2990436d593e0189f962aa4974e93e3a4d66a2fd0459e24dbb6b883b20682cbaf613b4a680dcb055fd3f6d5bad04415238e5c7d616d81f034bb037e6b6e536870f57c59af7dcef2af22c90526f50d64f48fa67e16e97c70db6708ac20904aecf1152279c87159bb898f4183e2f9eb1af9e47756b8153c14a59f602a3547be76bce7b66566cc4594cf82ebf421cc280aa42b029b042a49a3aade2f73e6d13d336eb049865ad6543159839db25f6a0f36b20a14b3e74f5d99ec9c7b06f0e4219a80ddea36e7a230cb8a353f3385c53df52de57ff728038c30d139c84a2bfcfb1cef3cce587a5d64d2572d91328bf072b190eddc480a9609ab07c94add8c51a68410b1fb8433de71ebb7dbf9edabf41e4fa5d2b0ab40bcbb8f652bad9b759bbc99b612f5c9283939e7213400d0726997ff1629b937a369da40b7f020b9c8222f787bfc3789f12e74ca53be1a9ddf5a54ca56d20e25a88f0feb999f48d809413555f941556ddfdb3645dcbe806d72b38ed762e9e1b789920c1069d26592d7be9fdb7e83af7bf2c33980fac2bda4f1527ad79377d563d07bf604c8227beba1e43b17891633614c546d9a84080ef4ba9494432f2b20dcd48df670712b28965f32a51decb0039d53783fc6e1dad6c68eec713719949851f980be9b459ab5ad10a27bf2970bbf8e911a48876fd7b1803b09a8e70006a6c2471344ad746fc0c6795ef8bacebce2099e2b10cebe1c659ce6af1423a5eef72472616c740e3cba6955cd7d38eab85ecb7e6ec5975c79081ce4fdd083d428a17076b1bc63507ad4a4e7c21d0b4d1b56d6202a0ac2c5b8c9a41cd49b429e727b6c3a7b5369dfb1a782c3d0f87cca419e0716c30ad2b801905b632f7949ba800c743dcf56c40cc94d97b5d665b0a8350b81d4b67322964da94eee7e2de4daab563edc74a3766524e31bd20eb201dcab9cef6b9eef035e19a4e7e0353d324d748b3174b99decd3318f7a55edf649e586b8cc3fb6ab075d88014d99cd6b28e870dcde543db70ed81d622980d3a7a8571371cbf61a4ca52bc0737e8a9eb12a8b37b12ce6f9f86a00dafdd947f38cb0c40f186f9de3d2c71582a9e24083f0bc751b0264b6e73e0962821a896fb8e4e7d9ab6b4d41d3b4709531b4f0d530be479983ddae6c33a45f84c06e9ea18d219b90971d2ba58f4c5b095ca3ca3ac5cad651728de9946b6c3a5d3080bae0d406e8ad705c097ba5ad2f6ab8e0ca24c425395253d67b2d9faafbd75a58190e526e19df0cf33139ed8d55998f2f96aa58f7eace986382d5dafaa94c57e1aad1abc97ddf09052065643b17e6d065f7d819fc4a841cb542197a042e52eec24bd539058a0580c2d6c0db3c436a252e9bdaf3a08b7f1da046bdd1b91170b9fdd118932b3e483dbd1fd599f7c6e98a4dc64f823ca2c7910f9940c8bb1b8a058eab5af9c2e786412017ca9dab631ab2d69a7afc43050b8bf65cfbe581756b60db5583b38360f6825f2e853d309da06ea046bb59031df41f246178894bd6639fd4e18507c78149c5629069e7b47494f3b67a597057889fe2a76b9926195a492d45a18b6b815df0225f5e099b516bfc3975171e0b554515862caee4473de7fdec2067340a4556fbc552051251c71981197d6e763ef2eae7ebcadabf54cf2bcd15815ae1e8d76433c1338989aab9dd2fa8eba885a9cbc1a2aa36dc102acd8c8cf638edbcd2fcfc8504e31626a094c17a60d4d7ab375968b5c89c0e079418d29823404705274f57880affa1737009082ac67d0613dedcf004ebb8bc7ec26f19aef56ad00e90c41a61e1f9acdc1f8d915efffa89e18e598a40c2d445ff0ee93f436decf05d39a2390fbee03f6ce51e23c5c21b31ba8837e0cb38d24faec721474669d2e2bac2df37b25d1f9c921411fde39e029cf363cab4912fa29b2748c98eec1940bc184b5875dd19b8e624fd62b739cceebe313de2bc060e45c46b9f9f75e80c7fdd96a1bed3c6221e0b096a5009b6394adb4a0264481dc0c9e0e585690073cbf55d99ee446be9fee3bf7032aa701d0115b9339584db9bced8e066893e21b9067f00769d9fc1a4b005aaaf474d6536b81a59a0e5ef0a08508a8cf4c1b118aadb054d7ad0bd17ca17d139c5120b7fc79bf20539680699276c2459418aeac2b9da4f728f5fcae76cd16586bf971f46b15309a99ee9cfda4cb9d56eb25db119e47cdcb68fe8bdea01a029f42cf85b0ac6592426bace7fe967d3aa2dabb32eddf8cedaf5b30c98b435929d25b1bba215cebad228e32aeff2a3ce76ba97931c8de9f20cc2d3e849fbfd41375fd4f74b3ce2d1e2fd9d55336f4e7db88669326ec90231565d78966276a3fdd362417b7127a0d81b6dbb00781f6f00cca0b469df0ea1c8060dedd8e5918ae9191f1df1aa9555d30435a98b5553dfb1c3cb1eb4be4c1988d131aa6a2c3dfea3730b450de565d544c345e244224b0bcbebfb3277b10b1c4b034447a2a8d755ccf337ef61cae92314485b924f64de5c088665e83ec671b1a6fbf15bf1b9feef73ed81534952bfb47d3207868684c80340d2820622804f53f4dc832b8f5356d68f1ecb8cf1fdc444c0005489824f3a18e610c095dcfb3aa63e5ce866866f20c6260c01a7465b10f339c8366f1ca16009e1521ecf1c2d3fd2ce894f3b97c0d06f9ef107c93962649808209a72b112db4b4f5abe78f744d24604cc3ea73e5b8f56440214a396e6e8fda230ff17f3d31d6299ad8a9874f50fb36b5f73ad6f76683e9d177b514cd689b7088e568ba620f61973025a6a65e9c70382184e56a1279b8fe77ee7178c2629e9611dc4992cdfc097dc3874592429def3e0a858c13b887fec1f495e9f4c9b162fc73f64e585a081dd252a07edfaab5547ca15fa3aca402d92cccccd4f49f11bd174274d1ad7004e7a3540fab4fa43354458426449973c2ae12b569373b1ccce0fafbaa40f8c6ec9e0caf6737696586d970750e085914dea2096ef6bb543af64676b5cd893154596d4b78cde1da9d0a55b734f0d5d75866afa3d43337392e912657873c1c4f3243ddafb5b00b5c08263fb77e885198d1168309ec20361e2862ae3be5b869e0a7e4fa871236fc290248a133ae00693af2bf496d94a3fa099ac67c4b5e5f3a15e064ff417fe0a3120c577d284a961120ec6f2c6b6087d03835a632119e942fb30ccd2f5b077b1e27e8de73b71eae1216be1515627a193c854f0517e0a2568088ee4ce0f78b0104a48dde80ed1bc8315b3d2e8b5a710da3815d795276f44e1b53331235b6bc861fabadd4a776353980d03e1a9c65a79b02018f0199ae4a4d2d7d19cf89e77daf0cf8546a903680aa13c46935a35d842485c78f39df621a0374ffe77b797997379eb7e635f070798819e5f893ea7fbe65d2acc64a610c328f69c859dc047b81de5fae1c0504df5448b9562d1e81312902d4e07e5018c0aa6490d4f6d6c3d2e4b04fc0356989acf62debafec45f4c1a67ece9e682d2c3bb14bb3bf9ee81e1fbc341152a33ed9f2834e01fe4012be9a0145afc674b8ce9233f6ea53f093c117a566fa157a31e9c0792884415443967962a707d885dd0303ca3ce3e4c6d148883feea39905de356bb56e29e26ff4b53a3586e7e076232febe75e62be04ffaeeaef354189de602a26df1ec0e0e102acca592fbeaca972f256a8bdbd4847ed0b4ae5323037966773f826093a33db04e2d8e82c98d69e7f33b7c3772ff711ee455a1e55fe002b049658d084261aab2db562756a55a1e03b08825c43c5cd452982b598677d927e9bfc5c99af662c9972847148489aa18f416ebf60b414b91227615dd734b6869271c3c5ff18d200376c5b892868f4db732c9d8cf5e09bff693f36a4704a5c0c1947b3a5fde1c8c095cc3baa6f6003b4d6d0c588fb96f7b9502f40750b4aa8a81714292da1cbaef85f0c725974414ee6f6e42764ddf54deeecf85fda3dd57e39e5015e832570c41268d2a2b5a7ff593801e1c428e4c72234204131fb829deec75b35d3c8ac7288381cd9cb940b669c63749cb52d109cbd67a25e866d166c11a2bb568c0b8fc8e55670bab6d7d2a4276b3c3ca17f0a2c83b0c6209801a10da385752bca8f75870a2948310ee90650e607419e79ac2ecc86db53bc62d61b2d8d4727b6a704c93d7a065fd8da08ee0cbd72d96fcafc9e76111120bcae27b43832bc63cb14a790ef0ef614cccc7da13ea2b4f89b382b2a7427c1b48022f7e81c9b52f8833507260347710f2f6eaef2e098f655ffb6982285237f63f6778a4aedb069e1015de9a84da545c30590e3bf0ad70ba4f21b58de2098a4d722b30126904c5651d66e1e4c2b1178662812305693352233980812101980086ec2d3036e1b5d8404d8e4079a379189c3db1e4b43939c783c50eebdb6068957576d546aaf54390e74bfb3fb6711f7f94946e6a76e662cca53e3903f6b8b427f977502bd3f676c3a05bb59dbf602055d9af90cb95c63f0e831bc22959140cbe05ce1b72d97241651c550b7d15dc6ba80f981226e0079eb6a57449f37598865121a807cf55f0752ad89661b1b104a22e36e0ff6dda0feb4c967ae1c4095b162b32ddf85d4760e9709036bc853942425842913d3f815c819ea6a0b02628d24d3d471b8ba258dd66724b0bb38a48d7a651f4ec1dc760d7364963f58744f2a8e1e4a2657b207316b500d0c2c08a918448487b964489412c646f6efc9cf2925ca3d5a87e4cbeb2c471c186d0181f5f008b6bb3a30e45a200d958b96eea3e5d8e0fe0b258cacf48703b4cc2e342e170662d5580dc1b7bd27ee55fd2b80f1d66d213a27b8c021c2938f2af3632971b734ddd19b15545fd6b896715f2940fc9b0251e89e8e654e390d6907dcb68be356f08184f82339388a17be6d8e85d13ba8e2c2f0829b00ec33076374834e78f8630d8e2b4d6055406a11d24c20e18662da4f866942bb0efca2db42fd01800b290c0000fa33bb242eda62ab69694015c65b722854205db96b2d465fbd2997e7799a11119a67fc9a191ff9c868f2601e3600da4a905cdbfd5fc68a64d482a5695aaf891a524e497b05b19822a4c2095edd645696d3918c4afc7b060da615ee7c164a39a4212619d224cec0f737c629430c2d519c636aa954a3b4c36329a207d278a2a6f195bd11294ddc7cae71c07be937b7a5cb2288f7a5ca59069158269e21d6eac76b87f27ee08423f7436abef90f5c2b085dd1c6e21fd5824836c57235080f243bd5fcf17584a7b38cdbcea1ff529eea7ec19410f5716498d3480c1255d84b2dc5f5aca4f50c137d85aea1b2f150664486c2905c3971a9c67d5725cc8b79a3dd2b3f18312f5e2aeb11ef0a66b721082c20dfbe84f90fa281cfd7e14c9fc2914ad6453681d0df71f5e11ff3926195bad5038e1a1c9b876ee232a05739cc451422a7f5393e94ca34390b8e9c309969d0ed5dec24082279618e001568b90e4eb4f8957118162c7a573a310c7d9446bbace3e25e4c78b7c16b1b383f06cca7fa88f03da9acaa4398cbe6604b3b9cccfbfb16bcd7a8dd60a572cfd4f3842a6945b7f8b377021a5e0ef1b9edb51b63282e42a00e63f7f7a7ce58735968092dcf08267a2227f80dd092cb8272c4343f430949436163320de08b18adb088207473c0a3704177cdd556d633c608d6a98ee68bc95d6772e9f0c31f8a10e263cf9c4aee9af673010a478a0bb9f25f1951ef46e9142354dd417709a55d1fbea6d22bedf619c62bf90547332dd4d9c5632bb035e81d4028cc1689700e0621fd7ca9668b06577bea34ad1794e46f650f8a7d2ea7964fd5f61c944010ea4f756e4851a2463e80f4cfb07b6a5e015fc6bdb489e70640e0251431c3d5c7936b2e1679e98d8617aa316517cddcd25032ea4c9c7b121448aa9cdba23458be914312b201d2e3cbcff69bef4d7c463fe3e2abe5a64933822f9ac8b7b411131f674376121974a1adcd9af58fe08ff900046016c74e3d3be9561229d0fdcb991b8f170f77c0caa64737e821e64ebd9629a304cb53dfec03508b13917c6103fefe45b8758ebbb60094db508e46c1d55f5c21e90439353fb36dbecbee7e21a270cf0a61202a12b7d95a1e6a7dbf49e23f57440b953dc652d44b6c32fcd92a1bc984cd4f7325bf246a3a61642c672ebe03164e6f2a2925097b18cacfdd960c9e65c1d581c1348be26ebfae19d700d463db99dd3bdd5d58ad246f163892985ac0533aa963bd8ced07660aa921c2311c91480acf2009d659cb4d6ac0ac31f21c980304fabf1b2effc222694719dfb2ff4d945a6d1f0961432fd579d7cb93d55c856e409b4ebb2eec63751df9c0f6b88163316a58c27e9975ddcd4b243add52f134cbed052fdf3e3de7670c30244223bd544eb0a10b4149c127f6d6a966c0802c035fd0a7484f9b4a5517529f9c4a97c21ad49d8630cf6e8781a0d1b97634ee635ca9c6f9d0f3ac3bcbf00d3dee919241e29b29d926e610f3f15b45b1f6dda146c1a0e6cbcd35dcbd548fb86a2866d39ca66fc744e07db4fc672673747915ffaf5a862471e220f30507e2756e3d0d00dd8ae8f8ef859691f11b29ce3d38ab81d9e9a987a9dee96f42c9ebcd19ee3602eb01d4db138173819bb68c7ffd2e1eb5e6b72a72da0b4bafe7389c0c1f6f11d694d691fe8bb668879aa9c4f49b8c9d8a8cd24544e05001775bbe7f9b3a2dd5c3b648a8012e736983c571a9b26b6d557043998d187fcd6402c070affa79c16a53fbd0e935ca19fa059cab02663b02330b12cbd1c14d9c6fe640164f3f927d8a4e5b91ba6ece328260f03334c41a8fd71c284aa2a64aebf5ee85e1b2a014965161c58d4d6ba1d2dfc764946106254c1e5be1c62a6230b4a1716df1c4386291b8f3f1757d0c00ea52892da92b378c864ecb49f25134255acf5d3617e8fa4240ad0169fb57c02efabe723c32ec632367ef46e1d7f71d0d6f795ec5444086a32165a926d3978c03a3a0a5e038deb7c0072139ab5badef5b4a5650e30d156b87f55828fc1729ef4713ad57566f5ca23a72750dd29ccb9579b644c8026664ff3b7658c8a990de1929d80f321e90b23b08bcec1fb7f0b11bbc414361da1d798f2002ac3ed86dbf3fb4f2f805fbe98d722ada0e677c932f40811352838712b6b90d63f9b29c877998b5f165d081da17f5f865c190a10f0f982183f3df40101111b726b8693153bb2bae85198989c1f5f90393b149ef54db1e5e4910a62057793ba81b45b51ddf3be9e4d8190ed0ce9262ee9889a420df5be01fc1f53e5826edc3f7b07aff1143161e0dd2a064ef68cd6baced201d760cd2e249c0e775615a18d9bde4b336dd27a09ed44cb5d6fc959566a704d33ff1320cc9b6157515be76b917df4f870dd2ed58d2652ce13d830aa2bd9db059fcc551f443e426b2690b68b1bab4b554c6943ea5f8ea27ef084605ca44230b6e9ec3e01b8c69090b7d06db9544ab3219f123f782ea1a44f021db34a80a23c344c20e11ab08fcfec8c9baf29261a8da16b9efe898fe0e3f734f1366aa76255d4d179a22b4f6da3b2dcb254d997b6cfc38a7e29aefb41ee869d1a693cd03f490fa2f00add8a7b8f4e55286be537fc1a779bbe4d9d46c98a8467a4b2c36f191c7110817d212990e9d822ed82436d7a6c1d1f1f6a6720307527b95cdbad49411b37ecc7ab1c9390a960a2bd81348b33ee1d681e11bdbe2666130b18c4f4642ca25212f7348f28269ee18843b8598c81ffdebf32390ebc35291d8b776f416e1f7fa6e931aaa977bc2c945a54ab795b37be2c5bad9a44f5e783044ba36bc349ef481f138622f5c4178fd4063d369f0d47b5be49efafe02345e376554cb94fe4c39d3f6ecea3e7cedaa3b7e9da7470f390f889aa3cdf50ae837d30b7202e91bb5bb7130086512888d375c107e9836d99d7979f84c2af22c1435f7ae80ab02edd5fcb251eb4bbd27c4c28a71b4c2a5432b03846447825f5b88f6f80354cfd74fd81e9da61e76492798115320f5853e201fb1f4082243f1f2ed1991b7d58413137602cc6156f28361c71bf3480935ab6c65cf2840baf2b124cd6edcf680f30cc7cd39929cae62b3e757f70f5c9e3d28025b95c5ebafa7be3bde2f72a5d5e3e8d9b903d6582843d705e8954c7788ed756b772ff9b084a5ad47bd93658f0cc7b9cc55ca9d03392466e9189b25f3775fdf75e307269dc9df3f314a8f6c17e5dd087ea64cf9dc9437641ad874817d9c2b9625071f3aedef6da64a9d866d12295085b834ad8cd291fd08c6d40cbdafd8fedf7e9ed819ccc954f98548800db88c9895348f2515c147617ebdca0d22d9b51ee88dee2fea7d3258d6bac167bcb2642a866248f7f4b324e11f87d0c080eb3ada1bce1c3c957b35ee649782415b14a720d6578be0f3dd1d8a6690e583751f6ee70ea84ec3bf74eff2697aaf294bf2e9f83ab6ba38ced669c3bcdc9d4ddf85aa54848115b9ea2389de24418a58dc8be2537a89f24383aacb0f7de072cc90c21575868d2888ad27a393bbbfd988402009c454e3fb9d25e2ac98d31e91e9261fa9a5b19ad6d8cdd36d3f2064bf18e2e92d07e0e406c535fed7bdde1c29f7724d4c8fa2267d3ba770e6dabfd1a09ba8dd25845517592fd5f6f51807db32811df1cbdf5e49cd0cf7e45abbc3dbae73d0de61166b0c912263b996c656008aaffee02e0b9a6ea47ff645220d76a32d3d35a16efd2b9218d8611c70e02488db113b512fe080593c23801f1ceeed99b3929bd257af3ce2deb7e352e65816c2886f3e4a26ad2f1873cd0b3b0c7de948ee8a3c35520a8d3863dc265822a48cd57e9b075aa448b7843a4ee660dc624884779258ae711cac380bdd79bf9748b2a25db6525e1de1112e93f62a8a933f5e7d2d7842921ab1376ade5caa5fcfa3e99f9039508eb743e3454168c60cac4b762f6887d360e0be1414d7e8aa5e06f82a191079bd007f99969452d328529aaa3a4d04058747bb573f13e42843a675579a39137fab59afcf7778bea0826fb58c7cfbe2fd4135484120a18cece2889a68c840981cc2cb79789136418d872fe9a8ef449df270c6ff56b4b427b7b7604123d38e172a3dec28e02b666f3bd9cad56aad3be3b4c63cccc98ff9b196179350151c9c88622ef74fc626954483dec3c6ff061b7e6d63945019d6bdf3adbadb2dcac0dab5b1d39608e2c07e79f6dbc51d32f471684fe427655b483fcd278f2a9cd50dc3b06c79466c66a8bd012c81d945d640f0021cc72ea8396e3053f1f51e88bab61b73514de97da46edec4dce38cfab73a49cb581a71901338f7cfbec5fe64c7cfff0bdaad9cc57454456bd3923004fe08367756aa04e6bbef25a15b3a2f1c377ab7712239fdff938eafbae40b1bdbc3056e9c1bcac6df78569e2d0cfc2fd38178717b3014110cd4b210583704da6864efdc5a87f166e2a9c93f3e9c8ee6b188b50870d410ac557285f03ce85b47114cf1c7dd46183ce976888b20213f3dca0cb17d6dfc4449c62833d8ba7153dfed5532002b9690fdfba7d75e0e15cf76039d3fa4a7da7f755ceb221b3018845b9e42da9cc6a8cb7d84c0e080e14756de2cc2cbd273dc4ee0d0cb7c88aaeb083b31584063eecb718086a2fc265rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootvelocity-1.7-150200.3.10.1.src.rpmvelocity-javadoc@    javapackages-filesystemrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.1e@b9@b@`KW]?\7\eX@[0YY@Y@U hT@fstrba@suse.comfstrba@suse.comfstrba@suse.comfstrba@suse.comfstrba@suse.comfstrba@suse.comfstrba@suse.comfstrba@suse.comfstrba@suse.comtchvatal@suse.comdziolkowski@suse.comtchvatal@suse.comp.drouand@gmail.com- Reduce considerably the dependencies graph - Added patches: * velocity-1.7-commons-lang3.patch + port from apache-commons-lang to apache-commons-lang3 * velocity-1.7-log-chute.patch + make JDK's own logging provider as default so that the others can be removed and dependencies on other logging frameworks with them- Build with java source and target levels 8- Do not build against the log4j12 packages, use the new reload4j- Added patch: * velocity-1.7-CVE-2020-13936.patch + Backport fixes for bsc#1183360, CVE-2020-13936: arbitrary code execution when attacker is able to modify templates- Build against the compatibility package log4j12- Do not depend on the apache-parent, since we are not building using Maven.- Build against the new plexus-classworlds package- Add alias "velocity:velocity" to the maven artifact- Fix buid with jdk9: specify java source and target level 1.6- Remove unneeded deps- New build dependency: javapackages-local- Fix build with new javapackages-tools- Update to version 1.7 + No changelog available - Add requirement to commons-logging; new dependency - Remove java-devel >= 1.6.0 requirement; not needed anymore - Do not copy convert folder; doesn't exist anymoreh03-ch2a 1698992219  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~1.7-150200.3.10.1    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! """"""""#######"$$$$$$$$$$%%%%%%%%%$$$$"""""&&&&'''&&&&((())((((**+****,,--.----,/,,,,,000110000222222222222333333333332444444444444444444444444445555555555555555555555555444422226velocityallclasses-frame.htmlallclasses-noframe.htmlconstant-values.htmldeprecated-list.htmlhelp-doc.htmlindex-all.htmlindex.htmlorgapachevelocityTemplate.htmlVelocityContext.htmlanakiaAnakiaElement.htmlAnakiaJDOMFactory.htmlAnakiaTask.Context.htmlAnakiaTask.htmlEscape.htmlNodeList.htmlOutputWrapper.htmlTreeWalker.htmlXPathTool.htmlclass-useAnakiaElement.htmlAnakiaJDOMFactory.htmlAnakiaTask.Context.htmlAnakiaTask.htmlEscape.htmlNodeList.htmlOutputWrapper.htmlTreeWalker.htmlXPathTool.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlappFieldMethodizer.htmlVelocity.htmlVelocityEngine.htmlclass-useFieldMethodizer.htmlVelocity.htmlVelocityEngine.htmleventEventCartridge.htmlEventHandler.htmlEventHandlerMethodExecutor.htmlEventHandlerUtil.htmlIncludeEventHandler.IncludeEventExecutor.htmlIncludeEventHandler.htmlInvalidReferenceEventHandler.InvalidGetMethodExecutor.htmlInvalidReferenceEventHandler.InvalidMethodExecutor.htmlInvalidReferenceEventHandler.InvalidSetMethodExecutor.htmlInvalidReferenceEventHandler.htmlMethodExceptionEventHandler.MethodExceptionExecutor.htmlMethodExceptionEventHandler.htmlNullSetEventHandler.ShouldLogOnNullSetExecutor.htmlNullSetEventHandler.htmlReferenceInsertionEventHandler.htmlReferenceInsertionEventHandler.referenceInsertExecutor.htmlclass-useEventCartridge.htmlEventHandler.htmlEventHandlerMethodExecutor.htmlEventHandlerUtil.htmlIncludeEventHandler.IncludeEventExecutor.htmlIncludeEventHandler.htmlInvalidReferenceEventHandler.InvalidGetMethodExecutor.htmlInvalidReferenceEventHandler.InvalidMethodExecutor.htmlInvalidReferenceEventHandler.InvalidSetMethodExecutor.htmlInvalidReferenceEventHandler.htmlMethodExceptionEventHandler.MethodExceptionExecutor.htmlMethodExceptionEventHandler.htmlNullSetEventHandler.ShouldLogOnNullSetExecutor.htmlNullSetEventHandler.htmlReferenceInsertionEventHandler.htmlReferenceInsertionEventHandler.referenceInsertExecutor.htmlimplementEscapeHtmlReference.htmlEscapeJavaScriptReference.htmlEscapeReference.htmlEscapeSqlReference.htmlEscapeXmlReference.htmlIncludeNotFound.htmlIncludeRelativePath.htmlInvalidReferenceInfo.htmlPrintExceptions.htmlReportInvalidReferences.htmlclass-useEscapeHtmlReference.htmlEscapeJavaScriptReference.htmlEscapeReference.htmlEscapeSqlReference.htmlEscapeXmlReference.htmlIncludeNotFound.htmlIncludeRelativePath.htmlInvalidReferenceInfo.htmlPrintExceptions.htmlReportInvalidReferences.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmltoolsVelocityFormatter.VelocityAlternator.htmlVelocityFormatter.VelocityAutoAlternator.htmlVelocityFormatter.htmlclass-useVelocityFormatter.VelocityAlternator.htmlVelocityFormatter.VelocityAutoAlternator.htmlVelocityFormatter.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlclass-useTemplate.htmlVelocityContext.htmlcontextAbstractContext.htmlChainedInternalContextAdapter.htmlContext.htmlEvaluateContext.htmlInternalContextAdapter.htmlInternalContextAdapterImpl.htmlInternalEventContext.htmlInternalWrapperContext.htmlProxyVMContext.htmlclass-useAbstractContext.htmlChainedInternalContextAdapter.htmlContext.htmlEvaluateContext.htmlInternalContextAdapter.htmlInternalContextAdapterImpl.htmlInternalEventContext.htmlInternalWrapperContext.htmlProxyVMContext.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlconvertWebMacro.htmlclass-useWebMacro.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlexceptionExtendedParseException.htmlMacroOverflowException.htmlMathException.htmlMethodInvocationException.htmlParseErrorException.htmlResourceNotFoundException.htmlTemplateInitException.htmlVelocityException.htmlclass-useExtendedParseException.htmlMacroOverflowException.htmlMathException.htmlMethodInvocationException.htmlParseErrorException.htmlResourceNotFoundException.htmlTemplateInitException.htmlVelocityException.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlioUnicodeInputStream.htmlVelocityWriter.htmlclass-useUnicodeInputStream.htmlVelocityWriter.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlruntimeParserPool.htmlParserPoolImpl.htmlRenderable.htmlRuntime.htmlRuntimeConstants.htmlRuntimeInstance.htmlRuntimeLogger.htmlRuntimeServices.htmlRuntimeSingleton.htmlVelocimacroFactory.htmlVelocimacroManager.htmlclass-useParserPool.htmlParserPoolImpl.htmlRenderable.htmlRuntime.htmlRuntimeConstants.htmlRuntimeInstance.htmlRuntimeLogger.htmlRuntimeServices.htmlRuntimeSingleton.htmlVelocimacroFactory.htmlVelocimacroManager.htmldirectiveBlock.Reference.htmlBlock.htmlBlockMacro.htmlBreak.htmlDefine.htmlDirective.htmlDirectiveConstants.htmlEvaluate.htmlForeach.NullHolderContext.htmlForeach.htmlForeachScope.htmlInclude.htmlInputBase.htmlLiteral.htmlMacro.htmlMacroParseException.htmlParse.htmlRuntimeMacro.htmlScope.Info.htmlScope.htmlStop.htmlStopCommand.htmlVelocimacroProxy.htmlclass-useBlock.Reference.htmlBlock.htmlBlockMacro.htmlBreak.htmlDefine.htmlDirective.htmlDirectiveConstants.htmlEvaluate.htmlForeach.NullHolderContext.htmlForeach.htmlForeachScope.htmlInclude.htmlInputBase.htmlLiteral.htmlMacro.htmlMacroParseException.htmlParse.htmlRuntimeMacro.htmlScope.Info.htmlScope.htmlStop.htmlStopCommand.htmlVelocimacroProxy.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmllogAvalonLogChute.htmlAvalonLogSystem.htmlCommonsLogLogChute.htmlJdkLogChute.htmlLog.htmlLog4JLogChute.htmlLog4JLogSystem.htmlLogChute.htmlLogChuteSystem.htmlLogDisplayWrapper.htmlLogManager.htmlLogSystem.htmlNullLogChute.htmlNullLogSystem.htmlPrimordialLogSystem.htmlRuntimeLoggerLog.htmlServletLogChute.htmlSimpleLog4JLogSystem.htmlSystemLogChute.htmlVelocityFormatter.htmlclass-useAvalonLogChute.htmlAvalonLogSystem.htmlCommonsLogLogChute.htmlJdkLogChute.htmlLog.htmlLog4JLogChute.htmlLog4JLogSystem.htmlLogChute.htmlLogChuteSystem.htmlLogDisplayWrapper.htmlLogManager.htmlLogSystem.htmlNullLogChute.htmlNullLogSystem.htmlPrimordialLogSystem.htmlRuntimeLoggerLog.htmlServletLogChute.htmlSimpleLog4JLogSystem.htmlSystemLogChute.htmlVelocityFormatter.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlparserCharStream.htmlJJTParserState.htmlParseException.htmlParser.htmlParserConstants.htmlParserTokenManager.htmlParserTreeConstants.htmlTemplateParseException.htmlToken.htmlTokenMgrError.htmlVelocityCharStream.htmlclass-useCharStream.htmlJJTParserState.htmlParseException.htmlParser.htmlParserConstants.htmlParserTokenManager.htmlParserTreeConstants.htmlTemplateParseException.htmlToken.htmlTokenMgrError.htmlVelocityCharStream.htmlnodeASTAddNode.htmlASTAndNode.htmlASTAssignment.htmlASTBlock.htmlASTComment.htmlASTDirective.htmlASTDivNode.htmlASTEQNode.htmlASTElseIfStatement.htmlASTElseStatement.htmlASTEscape.htmlASTEscapedDirective.htmlASTExpression.htmlASTFalse.htmlASTFloatingPointLiteral.htmlASTGENode.htmlASTGTNode.htmlASTIdentifier.htmlASTIfStatement.htmlASTIncludeStatement.htmlASTIndex.htmlASTIntegerLiteral.htmlASTIntegerRange.htmlASTLENode.htmlASTLTNode.htmlASTMap.htmlASTMathNode.htmlASTMethod.MethodCacheKey.htmlASTMethod.htmlASTModNode.htmlASTMulNode.htmlASTNENode.htmlASTNotNode.htmlASTObjectArray.htmlASTOrNode.htmlASTParameters.htmlASTReference.htmlASTSetDirective.htmlASTStringLiteral.htmlASTSubtractNode.htmlASTText.htmlASTTextblock.htmlASTTrue.htmlASTVariable.htmlASTWord.htmlASTprocess.htmlAbstractExecutor.htmlBooleanPropertyExecutor.htmlGetExecutor.htmlMapGetExecutor.htmlMapSetExecutor.htmlMathUtils.htmlNode.htmlNodeUtils.htmlParserVisitor.htmlPropertyExecutor.htmlPutExecutor.htmlSetExecutor.htmlSetPropertyExecutor.htmlSimpleNode.htmlclass-useASTAddNode.htmlASTAndNode.htmlASTAssignment.htmlASTBlock.htmlASTComment.htmlASTDirective.htmlASTDivNode.htmlASTEQNode.htmlASTElseIfStatement.htmlASTElseStatement.htmlASTEscape.htmlASTEscapedDirective.htmlASTExpression.htmlASTFalse.htmlASTFloatingPointLiteral.htmlASTGENode.htmlASTGTNode.htmlASTIdentifier.htmlASTIfStatement.htmlASTIncludeStatement.htmlASTIndex.htmlASTIntegerLiteral.htmlASTIntegerRange.htmlASTLENode.htmlASTLTNode.htmlASTMap.htmlASTMathNode.htmlASTMethod.MethodCacheKey.htmlASTMethod.htmlASTModNode.htmlASTMulNode.htmlASTNENode.htmlASTNotNode.htmlASTObjectArray.htmlASTOrNode.htmlASTParameters.htmlASTReference.htmlASTSetDirective.htmlASTStringLiteral.htmlASTSubtractNode.htmlASTText.htmlASTTextblock.htmlASTTrue.htmlASTVariable.htmlASTWord.htmlASTprocess.htmlAbstractExecutor.htmlBooleanPropertyExecutor.htmlGetExecutor.htmlMapGetExecutor.htmlMapSetExecutor.htmlMathUtils.htmlNode.htmlNodeUtils.htmlParserVisitor.htmlPropertyExecutor.htmlPutExecutor.htmlSetExecutor.htmlSetPropertyExecutor.htmlSimpleNode.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlresourceContentResource.htmlResource.htmlResourceCache.htmlResourceCacheImpl.htmlResourceFactory.htmlResourceManager.htmlResourceManagerImpl.htmlclass-useContentResource.htmlResource.htmlResourceCache.htmlResourceCacheImpl.htmlResourceFactory.htmlResourceManager.htmlResourceManagerImpl.htmlloaderClasspathResourceLoader.htmlDataSourceResourceLoader.htmlFileResourceLoader.htmlJarHolder.htmlJarResourceLoader.htmlResourceLoader.htmlResourceLoaderFactory.htmlStringResourceLoader.htmlURLResourceLoader.htmlclass-useClasspathResourceLoader.htmlDataSourceResourceLoader.htmlFileResourceLoader.htmlJarHolder.htmlJarResourceLoader.htmlResourceLoader.htmlResourceLoaderFactory.htmlStringResourceLoader.htmlURLResourceLoader.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlutilStringResource.htmlStringResourceRepository.htmlStringResourceRepositoryImpl.htmlclass-useStringResource.htmlStringResourceRepository.htmlStringResourceRepositoryImpl.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlvisitorBaseVisitor.htmlNodeViewMode.htmlclass-useBaseVisitor.htmlNodeViewMode.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlservletVelocityServlet.htmlclass-useVelocityServlet.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmltexenGenerator.htmlantTexenTask.htmlclass-useTexenTask.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlclass-useGenerator.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlutilFileUtil.htmlPropertiesUtil.htmlclass-useFileUtil.htmlPropertiesUtil.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlutilArrayIterator.htmlArrayListWrapper.htmlClassUtils.htmlContextAware.htmlEnumerationIterator.htmlExceptionUtils.htmlMapFactory.htmlRuntimeServicesAware.htmlSimplePool.htmlStringUtils.htmlTemplateNumber.htmlclass-useArrayIterator.htmlArrayListWrapper.htmlClassUtils.htmlContextAware.htmlEnumerationIterator.htmlExceptionUtils.htmlMapFactory.htmlRuntimeServicesAware.htmlSimplePool.htmlStringUtils.htmlTemplateNumber.htmlintrospectionAbstractChainableUberspector.htmlChainableUberspector.htmlClassMap.htmlInfo.htmlIntrospectionCacheData.htmlIntrospectionUtils.htmlIntrospector.htmlIntrospectorBase.htmlIntrospectorCache.htmlIntrospectorCacheImpl.htmlLinkingUberspector.htmlMethodMap.AmbiguousException.htmlMethodMap.htmlSecureIntrospectorControl.htmlSecureIntrospectorImpl.htmlSecureUberspector.htmlUberspect.htmlUberspectImpl.VelGetterImpl.htmlUberspectImpl.VelMethodImpl.htmlUberspectImpl.VelSetterImpl.htmlUberspectImpl.htmlUberspectLoggable.htmlVelMethod.htmlVelPropertyGet.htmlVelPropertySet.htmlclass-useAbstractChainableUberspector.htmlChainableUberspector.htmlClassMap.htmlInfo.htmlIntrospectionCacheData.htmlIntrospectionUtils.htmlIntrospector.htmlIntrospectorBase.htmlIntrospectorCache.htmlIntrospectorCacheImpl.htmlLinkingUberspector.htmlMethodMap.AmbiguousException.htmlMethodMap.htmlSecureIntrospectorControl.htmlSecureIntrospectorImpl.htmlSecureUberspector.htmlUberspect.htmlUberspectImpl.VelGetterImpl.htmlUberspectImpl.VelMethodImpl.htmlUberspectImpl.VelSetterImpl.htmlUberspectImpl.htmlUberspectLoggable.htmlVelMethod.htmlVelPropertyGet.htmlVelPropertySet.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-use.htmloverview-frame.htmloverview-summary.htmloverview-tree.htmlpackage-listpackages.htmlresourcesinherit.gifserialized-form.htmlstylesheet.css/usr/share/javadoc//usr/share/javadoc/velocity//usr/share/javadoc/velocity/org//usr/share/javadoc/velocity/org/apache//usr/share/javadoc/velocity/org/apache/velocity//usr/share/javadoc/velocity/org/apache/velocity/anakia//usr/share/javadoc/velocity/org/apache/velocity/anakia/class-use//usr/share/javadoc/velocity/org/apache/velocity/app//usr/share/javadoc/velocity/org/apache/velocity/app/class-use//usr/share/javadoc/velocity/org/apache/velocity/app/event//usr/share/javadoc/velocity/org/apache/velocity/app/event/class-use//usr/share/javadoc/velocity/org/apache/velocity/app/event/implement//usr/share/javadoc/velocity/org/apache/velocity/app/event/implement/class-use//usr/share/javadoc/velocity/org/apache/velocity/app/tools//usr/share/javadoc/velocity/org/apache/velocity/app/tools/class-use//usr/share/javadoc/velocity/org/apache/velocity/class-use//usr/share/javadoc/velocity/org/apache/velocity/context//usr/share/javadoc/velocity/org/apache/velocity/context/class-use//usr/share/javadoc/velocity/org/apache/velocity/convert//usr/share/javadoc/velocity/org/apache/velocity/convert/class-use//usr/share/javadoc/velocity/org/apache/velocity/exception//usr/share/javadoc/velocity/org/apache/velocity/exception/class-use//usr/share/javadoc/velocity/org/apache/velocity/io//usr/share/javadoc/velocity/org/apache/velocity/io/class-use//usr/share/javadoc/velocity/org/apache/velocity/runtime//usr/share/javadoc/velocity/org/apache/velocity/runtime/class-use//usr/share/javadoc/velocity/org/apache/velocity/runtime/directive//usr/share/javadoc/velocity/org/apache/velocity/runtime/directive/class-use//usr/share/javadoc/velocity/org/apache/velocity/runtime/log//usr/share/javadoc/velocity/org/apache/velocity/runtime/log/class-use//usr/share/javadoc/velocity/org/apache/velocity/runtime/parser//usr/share/javadoc/velocity/org/apache/velocity/runtime/parser/class-use//usr/share/javadoc/velocity/org/apache/velocity/runtime/parser/node//usr/share/javadoc/velocity/org/apache/velocity/runtime/parser/node/class-use//usr/share/javadoc/velocity/org/apache/velocity/runtime/resource//usr/share/javadoc/velocity/org/apache/velocity/runtime/resource/class-use//usr/share/javadoc/velocity/org/apache/velocity/runtime/resource/loader//usr/share/javadoc/velocity/org/apache/velocity/runtime/resource/loader/class-use//usr/share/javadoc/velocity/org/apache/velocity/runtime/resource/util//usr/share/javadoc/velocity/org/apache/velocity/runtime/resource/util/class-use//usr/share/javadoc/velocity/org/apache/velocity/runtime/visitor//usr/share/javadoc/velocity/org/apache/velocity/runtime/visitor/class-use//usr/share/javadoc/velocity/org/apache/velocity/servlet//usr/share/javadoc/velocity/org/apache/velocity/servlet/class-use//usr/share/javadoc/velocity/org/apache/velocity/texen//usr/share/javadoc/velocity/org/apache/velocity/texen/ant//usr/share/javadoc/velocity/org/apache/velocity/texen/ant/class-use//usr/share/javadoc/velocity/org/apache/velocity/texen/class-use//usr/share/javadoc/velocity/org/apache/velocity/texen/util//usr/share/javadoc/velocity/org/apache/velocity/texen/util/class-use//usr/share/javadoc/velocity/org/apache/velocity/util//usr/share/javadoc/velocity/org/apache/velocity/util/class-use//usr/share/javadoc/velocity/org/apache/velocity/util/introspection//usr/share/javadoc/velocity/org/apache/velocity/util/introspection/class-use//usr/share/javadoc/velocity/resources/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:31390/SUSE_SLE-15-SP2_Update/962384c2f807be5bb0e2c8ccbda35995-velocity.SUSE_SLE-15-SP2_Updatedrpmxz5noarch-suse-linuxdirectoryHTML document, ASCII textHTML document, UTF-8 Unicode textHTML document, UTF-8 Unicode text, with very long linesASCII text, with CRLF line terminatorsGIF image data, version 89a, 15 x 14R~q ,kɄ)ߘ#utf-89419af31b7ae48bea3ee6772b3d9688d38e274db39c0e206d352a332dbfe4f4d? 7zXZ !t/!]"k%˧kG E]`Rz4MѰ 1I)d? ?(vd@ HWЉ Ҕ'aD@Gv!EMl=sXFִ۴f|M'ygQo&Y,4ܵo:Fǣ?Q<,nJBIr2[,iΰzx(!\ nY=Jl7I;IP3<_0VN,~Mނ#'>󕪺EL) e >a.<+"~bb. ;e좟~Xo]g:Pd zA9s)ڸ&6Qn.$sːoX5đXr}4!f2wZ^;cyS`)O*DH^  }Yw T?Q^/ 㐟Nʣ>b(Ziuj E3X@ѼQ]6V˚ORў6I0nZ[3SWܵ-t@TN{y8|d@-E5)+־zMNss$)Y[z$YȘnݖ7{$ٟF9IqLo%{b ,A@1 meNqTKYU6FMn4`ΓC<}^d`Qǫ;fdCk;n<lp.-0 {liVw屮4\ԗ߸ܝ*~[\4|sJ:eQ\p @0pG@4iݜZQ $*`K\Q=BX8ӊɣS }÷ÅBCLEij ^g%}.[8PV^{vǦ;$DJcPB)Uǀ"n(tWT=w)p59dK6o>Û שB8N3;>j3Ԧ1$sNсv{*,JxiIiD1v9U+Nzb,z/muHk0L^MlT!B$X~lx`l=YgG ZD ;b#N6ec 1?v o{Q5FS7;N~:- r1 .wc %Qc@FOd;,t9c-`UWR&ɍ/̂߯&Pv9q)US\!\"FenB!dN#no2_Qd?@a$ieK5mY5YhH.F9o>io0p=|l­!K:RN&(|Hi\o>uTQ(3,^ u/A}wd!A=O88{UY `\{tHR&`lG:08?эfdSUxaP4VEVzL"!S M֨8%ҩD==)lðK2h-WW{LS+9kS;p)W!"YU1`8>*2HDכlx ` '7S 滃M1*㈐ @ۄЛt CZH|¡7W8߆ F7seo`k* g "Rr/m*K˅1]Z&vY};q] 1ghSK]xm25"҇bA{dQ_m$C]g LR\ nՇ%MvW%%n.&? x; FHpmD3#@iXK 79EhGUBV&q? - -9 K^'/'c܃\K!өO9C=|\^GAWީə<' X45w L Ǔ̍f:eΤ{&I^nfUʁx"OI4Dʷ +zt4t.Y. OnUIhDUDau[!yd+4R{?qbe,[mLb|Pp &z;C ql,y=-)9ag~+7PiiIz1ߗ uQ1I&@A(P݉G p.a|I4}30~݉| Ua''l ݾ=jՒxUu%y95? ~KF T&j3ME ^ӗsre H+ڴ+> xQUin[O O$Ⱦ]w`GxmΑ^ KPn_z=ֶdrf,q.mZQEO3cʤr%oRӝ0 I؍fJw6)sڰo_Z^='2E/NJ;&aWSɥa7U$0h@hi$1(3mk{\`dcIJJV gsD#?gHl̸k< FnjQ:ޘl)zc{L AL>7ŀF(ݍDWaY}Ut! 82/WӪ{$O$oMծX ,0OuI3>.F50F@i-v#~0lר_}6iiyna}@&hM'G2X~Zԍ6fwF7 6xh^5|󀱺ie+w] exI)C‰%k؍c\mT~>F(?ۺbR^;x #Sl)=F1s_BKUBb$1A&7-ah*Zo띻NnTwJ;MJepe%}Czy \yL6$Vռ)RfC!䶇ɀ ~18~ bM(@f`N϶w֕X9+PqI YN #Y/q sN b~jq mgݿr>60FC'> nec>CZN4sn^`1fc!D_-l&S[Bn ۺ4utl] ,[hH5*kC7e;bҢ c1=>g4w ,LpI;.4(,Ĭ[H H sT"* "W1)2'f"m욼,O%mb栲KQ_|rV5L3! oV1 ON!{fYL&Fs"wU+aΉf dA'!֥?`j+iY>(ãylUL[3.FLǾ8$ZLʾ/AX}ƿO|X>L].JB8Dk|o|$ѫZl֐6Rxg!~W0&2SsBK8sL<߳RS%7GH8=;3$<TH2Ock>kNBof!C} YZ