vpp-devel-18.01-lp150.4.3.1<>,[ //=„C Ѕ>͢@KɖSF +i0@ Ws+Va+#c0= 4K9jOao!j0)<{>l!+fb ;cioTAΫ~MW6Tn1pf%MjxG\t?V 3FOTKs:9z8L01z?L|Ԗ'LJg]myf>-`C>A?d   A04<@S\g     % Ι Ҵ޸  ,    ( 8 9 x: F)G)H5IAXDYD\D]P^wabcdNeSfVlXulvp wDxHyLzCvpp-devel18.01lp150.4.3.1VPP header files, static librariesThis package contains the header files for VPP. Install this package if you want to write a program for compilation and linking with vpp lib. vlib vlibmemory vnet - devices, classify, dhcp, ethernet flow, gre, ip, etc. vpp-api vppinfra[ /lamb01openSUSE Leap 15.0openSUSEApache-2.0http://bugs.opensuse.orgDevelopment/Libraries/C and C++https://wiki.fd.io/view/VPPlinuxx86_64 1"Wa4D k}[ *QUp%^@]4qoK2Mt;l5g5pQW;^b?90Nvf@;v205!$ 3dPi Nd4AW< qpN%@>@X/9[ ;zb.0)wJvq6/(E &+GQxa +6 T 5N 6 '1zcZ oA**)$0 ((' ~  3#3#Y9*kF# ~ 6"S5 9xs_---p;f/nFF+ 1Nw4D5, ]Q9F+lx+8 O u[+Z7 lq.@S( PjEZ )8H/f!J%$M R$:J  Y%s */* *q1 A ++Hp.Zqk*ZzOIK2[KB,QZ k A!(m0z- @^PB A CbD1 U L F l=FTS#sqa.I0 g3<N i 3-, +4p b|DGC;  ;3=) BAFx +x   Mv)x+=)d"  N) c >i& Nf H#A AR $ c#KX:'/ 9M (R XLw z 1k  GZu m~.u?D #85s9?@N$+,56 T <Iq0mJ K6n+ K^<4` FRgVe #C0%> ! ^  _ *>uVAA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AAA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AAAAAAA큤Zh& [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ Zh& Zh& Zh& Zh& Zh& Zh& Zh& Zh& Zh& Zh& Zh& [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ [ ce5a0552f508be338fb73e34d6ba8a47410bbd820a235b12333f17a17c2adf0c5b8ab42f5cd80c7e982fbfe385367b6790dd5cccbd4f9364c0426e57ca3b47e0de30c2f58692166f6805c174f260cfb22df32ab00273097473908d791f8f153e5683fcca7196eac7f2e4350a5d82ffa94f6bd26f90e20f8db472ae735a1da14ad31a9f26c3604f0ea47fffae054aa781ab071f65d2ee8fb926b12b623c6810bc3413acf80bed78acb3b7ba7b2eb55d7d597fd471533b07408459c71e7a59440cc65c54804c7b9fdd5890bb2f968a30261e7bb8b97cf2999e5d54c149871e90d29543288d170f7b63a2786a98d5e733783458d1fdefa0bf822466b9b2e84061f60dcf02cc9d71158723963cbcd176faa7149402cfd398968cfc31cf047e6b1e0eb464200cad133b29c9fe1650c41a8d5b782dc7add79491d89ae7e0f55c2ae7a5b351dbbf950817ce60e3a0a29f2679627b9ec053bd7b5a59f3bdc0fe59529a578e3b4882b42c7a2afc676daf0e4f199c1b8541fae9baf5334095a0385c2054e1ff54a0281709c2945ff9569d4f1cb6021cad02f2d9560b954f6a2cb32f6e1aac25828e020dc11996cf8d13b4b1a352b02d8afc3109020722ee26dbab7aaed5a0d10c5b06e91d3ec31f87a31ca5bbcb835025152893f97616d8c71ed95ce67d938193a36eac72d094e631e0f2438caf38bac2bc9c0aa2ffd31dc6da339b4246364b290ca833d6f1102e6da41d2ed03019ae80e056a19b8bc1dfcdbf755f06ac3de64a14e01a54eab41e3cc3fa289fcc70dd1d7522ae289fc1e0d8a92452abdd9f2930264967245d0016788135509fdb00f3ef8cb8103f5cc0da988e9da61e2ca261c8161134e4dd2af961b91ad65ccc1bc3862941ff6c8cd00a7181515d3ebcc98ba5c4446e102bf80842b7fe328c3600aa844a61cbdf5f3b2e097b8703ced85af4ce9fb1dc045c7bb9d8cb18dbf7c1b3ec2ca15b5af7c7d2cbd87a0317046fe6f73778525e729d6a0c20dbf8c8e82b1413ff429afe195fef3b92985f8dacc3eb24d58bc2456a64d0c59f18485686162f10db4dc0286374d4071efb2cafbd34b7f4a91535c5c20044167a6b0c3fc8c88f8facce83b6f305840127a029c635a5b76549b79bbd51e19b8a1433611239e3f6372d63a5ea52013124d405be25360145c7b0d01e0de6c3b602ac2595d14f587583c47ca2870bc76db8630804b7f1d41d6aa5b6d65c41b0092a289adba1e8196fe7d2c30fbc057aedff95503f19c0a747130446074945c0fd2ada898229e95b994341bbad3e9fc0a92eab3dfc24037d3f3f68875fb905834edcbace0dce3f27f0d00d2e696a8b92b241ab4402e50022d770c10e7261fecdc252db4d0752406d6875d95fb63b79b5bbf16424c4fba4569aa438a167ab14fd7862ba868208d05586debe20256fbd3830f94d49121e822fbcd7b89928c81820add8944728e7ee733cf832afe855815b10d511b52416bdd1a5dd73b7442a0921f55eb48f978ed44387af1e8626a1b9a85e1d6408d9c4ae424f741c05a6fc1705d37182484053a50e099c2cdbc4f9a5a1ca0beda52d21181b247eec7b6f2b0337f9d5b9e8f47b7dc5a5795aa58572d8b7d9606685f2afd0b46b424fa8fb19849f599543f8dab848941cf17226ff54f0d585f6a0ed2467bf45995736da764ebff7df48e4d65f9784841df682b326fd1be890bc70462995b1dbe107eff0a1363b155d093f37769837b5632942bbf0e4d7130c1a927bb47b31c90e2990ae04f9c711ce09a0415092aaa4722f36f3c7ab59d5b2101d4a282df61b65afb7264a67e3f9a695bd688c35f5d75c1fc2933b04089f3c10f2339844c93a1e73b76481e5a2c66aa8587ca325e2ea1fa1fcd4d92c0807bc0b271eec9716a3b5604571397a04da5e0939ad00076349aa70390dce357399798cae96debc958b6d464d9fc63d98b94f3e576502eabe0fd798406c6ecbf27fe06b956a1d19c8cfb43fa3029bf1faf53688d1bbc8f24ffcbd95da7ea295fc531de48748ad5c4c0f567bbfc58b30325474e564086bc3b9fd093a5aee027a915d60ddde0cb3e9a9f497d433545f889f016b16fb5c0f64b0f1d4ac7586da58ac014012ca260c21a4da1edd89c75f19db19bb056ce6469b521213dc144d81739ae32050c9034328025ed20f4021994efe564a2dd7d38d15ac627d3e4a202ef23dc29947b26c41a393b7ca057af46c659672eab1224ac6659223e977a99c3a29bafb1a4ebea48e24a99182a807c43a9c6bac2215099a945e75cfc42033b8cb05638df830e1ed31a03ac407fa7351489c4cb671d1bb668f823d66d08f03c84f72c3eccfc008555d80c28c0b4fc74e95ee67c7e878320b9badf47226d9af8ba4ac1efbd92b9446be0b6489fb5d89411ae3065e65f67ea292b0d27c39bc9ff365708acb4f9e7b859c604739fd1509d4fda4a5504412962a5efaacf9d70c20c91b949ea9ff47a292da7aef28551c33e706ccc2ec40c0f9a769be06e43352616a7902d317256ddacc83dd3cbe57e1c3a46ce93a5344b78197bd10315b13140354e819667033b1166f62df2e66ea36a50839802df5949e47265b0fb127cb36dad39704e0c0d1ce41e8c7d312b709ddfa00286a5388eea3b0b8091b601b05154f0108dde08dc23d78fc436a3cd7f0793a01aaab880870032a714ac01ea75e86bc8530ef9ac06f6d3ae11af61786349bd47dd3cfa4bb1484c3c4091883f05174a58fe1fe91deb546919b8e0d9dce43235a24d8405c2c8fda04645fa2b3722f95cb977490e40f678f2b7c07da59f5b7d02c78065a5e030bcf2bf2ec0b5770e3e61dfb80426a6c4f962ebfbe453d208f2de5549c13d02810c81da61d630a40007149983219cf8cf127af8f76dc19e6843b368e67f21ff06801350ca0f3fd154afc4b55a82f381c76e6fd1eaf4ee1d1af9827347a6bfe573feb49a802db2f0275fc39550262506aa168325622c1d506d4a76dcf64948f0bab9b3a637f9424545a61b472e0a2df520b6f0c5a9010be69ef304dbff1a36fc4137b59469820f5cd95212a96f8b3b1bebee470129f9dee37e4958963ff34208e66e8e6ac9a45e6ef6d5e8b045aa2b9c46f7c3063c87a96e41605470854b159a23c068e2e5cc56e0960907af9b06e0d59daf1a5a2f3b06937ceed83f93b36927f3e6fb64a1e13c2e302ce5288975aceb1ec7131280fdb76f1aad55e3ec37ab8a317afe8367885a81c12ca4e25be75fb909069c42a8ee7ca130d7282bd82d7b475c79d0d70cdefb4b7a6977ccbe85c59c8ce56068cf98d1695258a52e82f271d07894e58893edea5d1b7c30e419e45421c1096c095ccc78b2a6b4b44101aace3de4e8d92200ff8864d433c6a8bc4973f4888f6163c68b71ded2b1b3c354258abd5363f82d2895a42d391269e2ca7932d1a8caf571ea3829e60e6d679ab6ca6ba952fae1db7daada938103aa34a872607b1b9aae44548a13fc3096646453883d39eba8972f08d16e955fb6408250ff791ab81e13bbd9b237aa44f94be79e0a92548afb62ea63be6cff2b9e374ed170ec7f59b58065cb8e4e744e6cca72f0960b9262d39401f944fa3f54b92ff722c73d4711b50995db0d665400fd2f5f0e07250f2441beee6355b6431b4d78a4ac3736b83c57580b4ae67d85c594068ed2222123cfb4f17c26dd25934694662b6af0a84fda4543b1cfeb8d7a43b8e7ad1278e54b9029ba97e2b7aaac79ebfc57d36491b9b9b935ebaf32a066738bf4b8e28818e4e2de361d3c8e89f8b6ffb8eec978a3484e0451a47603a26b22c8bb6938dc99c88d3aacc3d8efd3dc35a859ea1333788c71ec6d7a5b291a0cc6e64bf0acfa5e4a9e419c2de37acd84016d194bb8f2766122aad7881ac68f74d8bb956af333b030e629d8e2e980681695eedd01fccac5b18739a0074f0c07c8f60b07da79718fd3b93d878146da109d042037a44138348fe066fc07d6037e4b1229972a960e644f3b6d74618011ba72dc094c73e238bef89c704e17a33909657c68ab5e92b538ffb27b6a0c5684480cef00e322db9a297723e463a644c705c2dd832c5b33445b4fdb05bb1c016b3205da81e8873f67dbd33ef6d7999c18ae74f0ebd9d3a5b91e8e8c36762962bf07d698098fe776c6bac4dd94eb573599727ff833abbef0afcacdfe1e1b8a07c03eacd36be280e030d70f8eb20609164c48b722914f14b5e39991f486f1d5dd5035717c949f4b1f9d3f1c031f9a66c6cd6af6ff113280aa7cff43226dfe0470f79c9126872681f005df97a27f8b12630d3b1a2e414d7b4f8a4d7dafa52d404af81b7032fcac2a0d1d2fb7ebfcc97f9edd59def4cfbf52029c247cb460e607a66dde559149168c06a7951a720c28a343ad104bf5d16e5b9d2f8d5861513b2a260b23d59991e4108fc55bad98650f285a5192491819a861ff4efd2606e732bc7179f2777081bf2e2f24bca23f17b9338d1a1cdc4f7a98e60429d6f313e14a3345cd8f570ad61f81d8b9820ba6d353ffffe19746d951084aec8dc13df8989c9763822966875b60485f52caaa67c0d8200ffe7d64a5a4511ba570176d43149048d1d773331a266d383b1f9e5a47dafad877c5da6d0b1cdda1a101f6a0f09a8106ca0bb4b05aff0ef2689fd049c080aedb40426985576a8a9f4b5075339c4446cfbff6f776f8c1ad9cb11f25349f136a88dd91d413fd239231f8aefaeda1c253b23f965fd433399eb4077c3158b29735a7f1591a451c503bab62e8ca93fb7e6214ab41f7bd510c1fd5bfae735b3b925474e58ba0c7b81a2c517aaa91e2ac3bfa5911e26e9fb157dc64afacb3a6e8f9ff84b6ab9ca232b45ae95b926b9c251b734960de198f932a859d09197bd708e55950d7ce159ca69c6d3b5c66b025024d64496aead78e14eed923ad9800addc346b83bca59ad9b22394bf230a9ed5b2d12d276ec0882b18a2fd3af4219ce2e5a32f5001c2ad047655a4d4905f3c6be113ba01a164601a53e3065b97da8e16f4c45038f714f6167678c0dd090a22e3c0ec5daef04eec7e1456febc11573de2fd181862c15133729f5a8ec373fd7670362cbaef49e82561a40b5bad98f1807e53c22e8f918f2e952f4d0d3065540526b578304048b70b1a050aa1cf6be389ff864288a62258cd55dbd30c97e6abe73a08ababb6e95bdf45eabb5b3c25fc404072fb072f2c27fce39f3ec6a4277bbda53e695e6b0af981faadfbf424c8f3fcc34a8acb2e8527678e23a65deccd2daabc0f42cf27fca349e52b4af350629183cfe40ee8c77d97e533b0c171a3ca7ace8f7a0381f9101e277e6a7cdb7568b5a7be69e6ec66e11f5ea43c661cc79162c49759ec36821e8a5e55bb8643ffae1c94fad00ef06ee8a75c15b2a0702109dfed6492979a2b4a145e019aab0267678337afd98a8d3f94d2829eb9ac37058d8ea6d2dd9245bc76d796647b3dc813dee3d3a295868c61aa383a4a05549a2f52224547c3de97ed816b7d54aa2bb7848f264599993430792a34a80f4bfdaf8f00f831f986b805f749555a65dd7eb7b327b2040466c30ca0b6cb8f342de0924edb774e305d183bfe7722a4449e47f784abc4a30ab786e0a8ba107475b4a60ce808148f0073cfa8b63c234cdae5bda87b0e948d88d6e21133dc5b3480df5d3798eb63661b1e7d5124d7ec686881e3cb48844140ad02e320bde43a7bc08847b121877b9ae800669ab2d19a362f66f6217e2e0729f729ac8ed25ba6e86789e7ae80c1fb3d391ce153e4e95fe9e94fda1530251f69165c49f60cf9f887622677a8d5a2e094bc0f499907827d9c36db3fc753e8791a4a0857e1f61f9b6f40d3cb4ce127aa0740cc5f5695cad0c303d38b9b0b22489eaef41ef577d65ad709ba0b9127776ae444a6b9348fa7bd98ce1b9b2c3d8113d56503a22e6d610da0b6d0090e5ad630c9b6de65fd8f4b3953406654c6fcb0736234b56defa9fa98039a013db2dd59285d6c280ca09efac224c4c9097b1cc7366c5f2b226ec371f0de6293e57a69c32fd927d2ea61ecfa1cae6db67cd8994bdd179218797e6196b5581b1a34556780e3517d63a0269e73e7d9dbd6eceb1a658756b35509a7d0c6ce05c9d86fef7b993331824a5bcbf4ecceeb7a7554f9a3fbbab02a7aef81fc482aa4bc248916f8be180bf62f336cf06e6610a7f5f3dc44ac949d2348dce64ab5b9f2cfc9c19869766d9653da8a2a9cc76d366c7d1b73b13560cadd43baa2b9009031192972724b9b018765d08de3123eb8631e6b9619f4f45e3bc91fda9c9b9e47a47e258a3fa857a6c61eb96268189d2480006cf18d8f1e7415c95dca51e5b83b405bd88a3614b2e59837d6c1ef49a57c0514b44e8a2e13da968329fecb0e6b5f1dcb0bd093c634fc5c11434dca8b560a674e774acdcc7435786e954fc0eba208edd09e7eaebf0b5747f101b7dc1167494c3edd3f6aab121ad05d67e20b9d3788bc1034972d49422252550af423a237c05094b6b60e70fdeeaa90969b232e9c60d37edcabc9e95d06e7f8e1ab9eb3add5d27e4bbc9e784ddf37e07733a8a8550abaa2ba7fcf84de5d7595f0e978a9f1411fb4dba378a5fefd7fe2d284ef5430d853cbd2969c2de3d8aa669c8e6748d07bef6a17b0e38d47bba6f03cde71b1e0aa95b2cac44ccc582e4f234ee22b9288b37a001ddf63d731627ac739d32d7dffd3fd1ef46ffa548acd52a8ed24411c62c09ece9a82ecbbef6f0dfc56be1117ff020d8e3e11eacb01354c93f209c741599406b00cb1c7ed6e2e8491cc5c7a4c158807138358dd3efa95170679dca1f24be9e489820e3a5d9805a2bdd55fc7921869b510a782d13fa369c33271f8ee6c9c79af9eb51a5e06995a0762e396fd700f198c5ef7c8357b7394e3ea8c6ccd0339756982847487672893a0c3da42d2558011198528dd22c9d528028fdac0cd5cc63c0045ec032c47faed28eff1d874f1de815aa9849e988d387d2912802ba2bede0fb25ce6967ff7c4a47056d367d2dfdd6657028962704aef2087d08f4f1ef3be48022d6a1bfd7f931849e6b227f8480cc430351d440e0bfe42b02f19fde963c13acdb8c13b813f7001bb2e0e7381e8bcba5b56fc86e6f285f66fe46f994f83cadd8a50d020853bf54314d5eb893d3aae925d1043e36d5ad0d3fd49d87231c5ab1d2ff451bf3c5bb4862defcd22a4a8c6c54caf74507c0c518b1fb3905f10231a9a129aa362b1d13511405e9a7605e652fb9b513ae5fbd2803a478a37e0670a6d8f9b87303d6677c6d6006e9b1e0f94530c313f44c4bbde1b7f48ebeb6d037a9078eda5c3fbe80e01f8d602226305759929273929f58af74f34d367fd788301a4cdee81cc2e83c50ec468a73291d4777b353585f7ab91d83883f3ac553cbdc2137090d02061880ff9b5a2ef7a3bb412656abfce7cbfb2a0509c588e3d77b8111a3b7b3ef140e065a09480dd9d462b0fa522baf1393ac4429336b10207cf31dc6e6405817727d5a74d2352fed9f09270f02c505c06d98dfe97fa28b5b49464ef25fdf21e7119fefee559f837a6b9288686667858753d864568c02047d5a2df6d09fffe557df07b651de256f3a960edbbe0929dd8d9113a6acfff697abe9a72ef6d57a79e3d826dc1ac00ca6f04f8baf651d1080c06426e13d246b099d81f2cb3e5257ce3b566dc3e209305ebece245cf765fc96fd32460caaea23ad48062e2a00047eff3b4f7fc30caa563b6386cd49916b8f7b6d2512a1a807f8983659eabc4439b929e1d7b2b815b7d9fbb1baff0f09afed285d5a259c040178787c27828ab85036bfc543554dd3375969715ca3ad7389e4de7233f931957693ff67c24e4a63e8d715de467baf12c58b771bd2cdb0712d8a6208111ac3b940250eb5847f89688214c2707f9f70b98f8cf6e2bf66f1ba8b4ff9f22b9148cc3600d11351fdeab455b267d2418e7d28a60622c08b9723257d5265a4043e1ff24e9a6a42774b7a14a7de8f2364d7875fbdcf52adecbe976729a161227c4881332a1f99d26fef1e08103de35b4ec6ce85611b7cd98a7c1cc780eff1a9705521da7140065ad38c392d4eb751434e37f667d1f9d61b988da993ac8751ffbd7456bb01b7b5dd0405d123aca8c813bb73fe0c59976d7dc03db2fbda03ab06c26c537d5833db2211145667197d4d2448a6f8ec455c857b713f5b832ee561803bdbb802909fd63f5fb0dc7618546370bb52e0c1e9f6865226c395ee273cc88b24d29d67ddccdac19b21f42749e4c8a6f91336b2d1a5f2189a64bcb0ffd460a60f4130c0800dcd0c3942369bde51f54788c8de3f73865bb9e41b7bd07c15d4174a713adabec3377a7f41fe519f4301958f84dae4e6dcdea87643fa11c58345f17946f27abb980c031f0e6ffa59ffc6bf8a90b03788854ebe60e921080a048d0cc71039e1a3044b2e9c9be386a30a63f6804f5b842fb7f9f1cc587ed2b9ebfb74c73283eb67f16c6a16091c3f81962526b6a8e3a0fa19a30bd883972188c6fd00b06d66a0df25674f6a76fd24d329d7b1beae465105429f9b9c664717196310220b038feffaa269eb80ba867ecc7109b00668faf644bdcc66fcefcddb07b064a101174f9b4943e356ad07d1bf1c7de9fae713db11aa043987a5d95a835308a4da7d0869f973e2b765f228b180cf58024bae6a879326bc29d20621278dfe77f0f51fad5bde83e9f5f04c176f0f059559f709180a6de7c49540cddc95b0843ffd490c8a80a6202dd57de889777a47b5b9202f40f461733842c06346d0880c5e0fbec5f6ca0bbf20090ec2571f273424f97e5e8d1efca10c7d5a40bb49a4c61d868784ef66685ec9b16b336b3716d4fda978b3a0146a95b78028d246c0edeedf45d888b22338709283f16f1027a2bfefe02771373b4500b8c6ccc4e3156a50806e7b3d3b679cfc19e9fb82d167d7819d8e7ac6c8763b86a356302c705cd376bfb3c00120ba177e11ace907fe359a86d8e8b460ba46370934c18780b581d89dd58386b46e4af83cda8500a552dbb5c5fdbc3385f2aeda0d6d9397ce562f3a543136c3fbe18c84db1595d10e2b5561d316f21371729fc7826c87ba8f456e2880c182e0cbe474b55eb9c06ba068aeee9ae4030a1d25f8c8dd781b224286b5f168584b812e327e90f0c2dc9f64f16618672538feaf53086f158ee7001758443c96c7359910da9a6694a9fa46e77a780df66e63705d44824f9b2256b7d643a2ae6f994a8ad53fe7b9cdc6928e06640add03156e1613f747dda32c2dd31d7b129b3ca4168430b79982561d9d5786480ccb47f39582d6586a9e45316137e918b326870b5f28700240712b173ecb8ca43892c98e3bfee4e881c6034f5541c218f89efa96366e67892a51ce80ab32632bb6823f6a2ddbbbe8888fdcd1fbdd466bb4cf8337bd4fa633eef4cfdd48bc72ecdacf9c033295ea6fe03e4cb7b98b742a9b2723f389102aa67b8006c3e43dfc666b0b2e3a735a4ca24115f8dae4411afddab2a2ab1d391483c2d0e99f506a08192bfb1b05672a47e3ffa4b9729aa675a5365bee5c0f1c7ca1f11799f9d14b7398f6624d7a26a0e064e68d72aacff69526beeeef6a56e8e0a99afb6db664b1317aa6b391c6ccf44b80b73c117e29d251ad8dc5cc4ca58fd856cbea2f302b8482735f9cb8afffe6a8ad5f9301d71d3f89dc9001eaec5544a79f4eb1f0fd45a48136b286571461901648658438ec851751b120dacf913ad886f7ab6291d03064f0d646f6f5f2d8dce9768b60d83644c2c6c4e7f20ae00a47b530430ed65ecf267f4d5041a5ba4328b3e5769053168596735188ae915832129e0166da7fa572351956889337efeabdeb0d844b5f65acec9a43e9ae949477fa799837cefdbf94c6f78f48345e1384eb98d3e8ef3b07a34124b3f72a14f0176201bc4ab14140019cf090323cbbdf9aeea304bfa8d6033977b652965717384b8995e8e333880d30833b84d5e35e22f258f3359854d1bbd3e5db6176371de5be348684e72e9052ddbe1c51aa908b508d3b9003e2107e38873c97fe3965642743e973716ba918777a38f253f7bca3b1ec2fec17b26ff1dd6d95c119fc11a605c774256a85d47632922c10d87b60ff7808b22046f0a49e94b5784a69c397eda5dc2ffcf64042233d5d38f2d35e28c736b5b034446ccdf9524dc801a9b02e3abe55f83683f3ec49d42ff65598b30b83b1d9f64724202c86bf5941287177fff24dcaaf46860cff260493f52894a3594c803457e921f873424a10d71f925370b9a729485dfd20a323947d0a9ebabbe7559e1fb26fad24ef16a95f7d2c4c911d23dd50081049490160c9b831314e02463a5bc342da9610397d83179ee20b1ea82b10c1ea7160d577d971576df577e7e8a676cf8a108af429469b1d69f2964323b45ebfeaa22f2c2f1d49ca4d9dea43ff946bdd41a95f9190f3fb25db59817acea32bc7b7537e9168c420ae53f7e029c45094afd83c26ab062fd52d7fd05bad47f5e1b5f471876afe80cb5ebe8e070d25febe693dc8b79e975021f7c9744432382d3d0a182b423f84981bcd5b1524b935c5571468b81895014c78583d2017677f8e8274cf15678f57cb4f3a89b1b6711d0593ab8d424949a34d79e182affc6e33643d3ffd25bec69a53b18c1a68dbab7e9783c855e118eafd5d8947f3b5440749d65501f57f9f5c4f660c1e38d684ffdf1e8fa2af51f21807cf464f649b8520afaad7478f6548785cc82f145c6bbab8ce776412689567c5617819f6db3d1d2cd4237a2e7ae1111802008292934d623ed6568f1abe698cfdc4d9f3712323974e941573054f29e976ce45b4cbf8626e8186d5afda07eaec94e96af83ef9a73dde5a11d8c94f24cb6ccf3d0aabeb3f8bf1d04735c987fb90b6654d0ee13a23cf093fcc6d87935b96b30e9800e50332c724edd766f9cefa9ab3c7b2b27503ab3c083a62cd258e955316f6f9f5f54b1ef5f750a322b0598e7b507b89360e95065a06c378de2ae9c679bdc33419850895069eab330734161983cbe0407fdbdf9dd1bc0cb58c66f378e994c32f85216dcba569b3078925b5b224a7f554bcc38960c59bb15b529bcaef34979797c1a1b5f795ee5e962422f660d3ab34ca503748e1166eb0f5423f522097d1f5a2a00d8990dc9c2a42ea77aa4fe030b1f449de912b6f9cabfe8bd76008936d72bd4f7c8f53897f7e3dc296abf8168d4c73d622239584edad59d7e92d18dc14f1bb2af3954a9d12386d70ee14dbde37314105d8d3fd3c1b9123234c7939969c3c6e4074b97929d789583801ae63f7e1a5b181bb204b31ea381fa27ebbedeaf22ed0a63aaddfe8f930d8fa72c504cbb8ed25324dab6823f88eab0780cea6959118d3406bec5fc4518bec6d427fcaf0963f6613a6f35756f8a35702312dddeb6a350a528245c95202c5ab444f31267d01f72f14fe613fffbb18db73760c2537a9b058e2fe9def363dce7079330b6862869355cd33afe4be2c17bcd1da4c3ac35cc68dfb64776136a75197ca57fbaa6705c58e90118eb247250b66dd3ad7f31bde617364453bdc268cf8857a296a4b1928f37ceeba1217a8ced443e4e36c4b1a7f525ca4e20531e467479a7bd9ffc617536de596d6984f9f09951f370a6ee2938a6cb4ab02645ee74b78072ac7410ac452dbcd1919ae78a54af0b3b808b3ab1f9db0ffa3764ec00dddd1c050a38624d8d27b6a95ab4d0398df60dac86b6ca11111c0ceb742034910c2416b5d895223d6fe73a5c01204daa25cb6a7d4b4c727396eafd89cd7cc21318a7c1f0294006d714a50955ec1025e7a9ca3228c29e113b4716f9455cb07b4d1a144f9500963274b078b8ea0d2164db9f742257820cfdf8360cb79da10809e887bc9242d566f9c1106ea0c04894b597ae62fb09d0b6aefaaa94515125246a24cbfd57eb0a6b9b3181b111c283c9dad8f1978c29a45254b62defa187d235a1316d6c8306e3e327aca5aa7dc28986554dbd6cc94c1ebb2a61ec071820187d5d004c0c9be269cf359ab1e6c8f91be5a056548b9ed4f703209b43f33d3fff0876fe5a273a9191b29b857e02060502bb6e2baaf42dde07d56c1f64ee5519b0ff0fb781e46a9d00d458a94b41970b3a80eadc88b5152d3101d7700e81b22ff2fd54671d7e2b2150543a51e18f11a6134767759dcf19883fdac3eb568ad5b84ad04e52f3df74373f0ab24cdc5699fcf6424536c3d0238b2b832b425fffa2a223d5184198a51d89ca1788c4f2deb376bcd65e7bcead23ae197f5558189e46642e34fe260564ca638b81e37ae44980d65d37d51f20ca5c190b3b2e74db7b56ef08d617b80ef7413dc281eef5426bcfaebf81a8dbf6e9754097e8dcc69768a7c6d85e86ecde6b3105d6d96365d6c9e03c1550c21e0a315e543429610c9b3dca6fde09a9540a563ce3168648146d71f5137d0ef6fd5acf7cf6c6a2c72f69357ebfe5e8e7628d844f1e47620997c30a2e7c1cb9134b105c72a22d9f99b3b91d241ffad84ac1a8afb77891d3a440b232fc9dd404e3225fb9452619fe1cfa6b0c7878090a344ad1102463ddc34181b5f0afe5265077727b7d6510345529b3baee5b70e3db0d5b8257cd022f54439797ebd905dd90e4220bd4592063b79b4d6e20517868e1ca9a6fda264f5f49e96c8a302ff4c9e5409c925360301437e0bdcdc65042b82fcd60c1568b1fa478051bf08816fa942e1dad2824e81031e37a18790875bc99ab0e072a07ef2d99be66e439f01a0885212a1506a1196efe689fee1bd739da742f74608e696fc7605206b33c56293c2df8a0752dde5e8ede49c9b8eb2f5b669cb3c1bb809d5c654182f12fe1904c800c719ec05d2971236c538d2c98fea71cbc956b8162808398d81d53d22ce4e53bb2cc47ffc580d602f946501b3eed2a52d1719db94a152e4fb20441c6612025976179dd3862c6eedeacc83b7d533ad8b384c7db3f0e7da5b127bedbb7b63c53051e91817206a92aa16e877e87b142529127d1af092e11a8c5a8e04fb47ec2e7635ff2d69b8d200fe22c2b05dc82eda1a6d07b4f17f73a122f8234a026b606cbeafa15f7426d3863a10d481a05dcdee0d5b7d4a42c774c9b0d465391570148ab497ec5bf237e07bd4a944a18745f71803c8b51463126584636c3e754f4aa4b2b4b9a19cddc3149aef445425f5d23c568e0c63b08ce17824ed14b36803dcd7ed51d48b26b1b6e12af784727bc2d22fedc5abef0ac20af19e80bbb6ca1d3e23d366d63dcf87ed055b90c230a4650e6f9eebd70bfe9770db7fdabc21f8faf2bab9f80edd292306b1e74587b82ad08b705e5de6d1926dc54ae9439f4ebaa5c1330dfc951a272456b8c60234a71ca8952ffb8368f6aea771fdc5429c094999a2110551085d8527d9867907dc219a32d6bdcac8219c30ea9869042af629f6088011109259ec82ae9394c513046e2226b2cd809cd8a1666df71f7da74a7f25c60dc01fa30debb498c50bcbbee6fd51e6cc12d3ed892e0b010aae0ceb8877f44366c07db2d18908d4ec8cbd26a180710c883f5f2a78a69611db783ea4f1284b380f11d57bc5c3ee45ffad8e979dc2515ba95f7e1957a376e557629099e07c1ecde7b1f5d730c104c1db385391ed2936cfe29c5f06d4d00e3964ea42f69a33dcc09f3df58e455d3f172cdead565a26848aab69c9da58b9056415f31822d6725d7a2962c3af105851762ce6e4bb74606759402a502ee0cbb4bff5654cf715d38c91bc15c9e5026adfdd216f53def7396b36e4a78cb05571bb10ab70def5f676c5bcdd69abb7a7f43a3fa79b11929dfab0ebd418e4e2aff264a624425c5a306b8658171b37dd0f31ab06558030f3846615116bb0ddb77dce3a71a46eaeb4c2596a15623c52fd21745f891623a6783a9ff708298d20bdad130dc719512e34c41a7d824720b9d11839b95f5f5ee2ad4eab2f4d73f48a71587dcf28b837426e7493bb4a9510e56c62bb4794c915e51eabcdf2761d34ed40301d436fecba94f8601e0ff530994deda3fcd4d5de6d0c810b6e3763c4c51ed52f39c9c7ddc94d482fb1a992fd3bfee3c352ee3c4d14df57db15c3a608a9ef23ac412fb58a990e848ea1f26bab6c38440617213b2a0b851c7bc1345424461c54994d0a0ffd5fc99d5a7a6aa2d7dfc35ecf252277fcad5e5f5af333862d50767c4f11fe576c74d410296ef539e493f8548b750cac4fe6bd0fc3d93a6928dbbc2b7a8ebe92510e1082d8aefa4ec047e10dc5bc8aaaa6f24beb02df758fc41f5bc1575e954f59495b25c1e1e9b1e30ae7a63b4856cfffe9a8ea89e2bb97c47b8643ac4d6c2fc5b14996282ed77b83992a65c5d0480055170ee72eaf96c0210b23206318e068127b8851d6cf498c1a629653722141fb3ce4907132fd053fe4eb1ac5ec87d888b527d396204c8c55e6ecd31cb127c739f41f7f52b6adab7cd21d1f0496e6e2f860edc859022f95fa7f792f27eb65f17760c22d033d27d9dcff157e913d5c951f01cd5aa810f2d6618c40f370ed74a714d48b4af198909e0e29e9b35b6e9116ec2fb4db91df68e106916ef3f42370dc99609fb590e48079997c5252571aebfdcbc1592c513b04a02c897b01fa866b128d5e21c6c1404d26e6c76735306e3ab0d1c234ac027ea978230ecfe24c02bbab60cd88681b396db4dd21ff216305a4897dcf2e01b95f37f9c21853773576fdb9edaeb613dd32e7280d4f5635ad6f5cc227a6345303e703b9b4cdfa8baf35ffa386824300fca258bc84c7545a9b78ee366027875d0765ec3c3c42d064e853528de7dece1742f63f8a309ec28180bf49766f926c7137f8e6671004add7191a7517cae5fe5508991f41392a27e9447d7f4a11795a0507b658160df330efbe530aeefc436820402239e38a944ba2d93582a18b5c15de9ebd462a92867c02d8c2fb8432fa45b7effed9ef5deeccde0ba1076c86b737c96469b846034d394f0c434344f4c518a705d441a515fa4719af75f4925ada312d8d00ffc303c7f64b11e060416fd6d06cfc998006af4b3e5e3117aa11f01a0d48b84d8a5a9433d071937a5b629b69ba2caaa003f5eea598c98c519cc17c4f9e3941f798f71f01589746c40dd2584de5aa8bbe918ce443a5fcf2f78227db4983d23187f050a8588a234a5f80d88952623699e63350558d3ac12a0eaab2387c91c45bfad62221797dfed5aa590b8b80a5bfe51da6563dcb68025ec3aba7a21592fd6950f9780ac7ae28f1acdcab90d33359fe3237de4c588c423a87a9b686ce17beb5465a631196d83976a0968e9b10db86ce417082145058654b6a1a1628e9dccd1e86faec5e97ce44f5e9012211402d3b3a6230ebf6b4c4f69abad93ee1f467d55ed03e3e2befac5d71e296bb55e220f46425367eadf4ad9363168bb9ae2347dc181043390bced3a488f9cd7e4e5247a53ef09a3555ff60b14d7df9596036a796026246d17a3f7690d38bfbced06d178100be40bda0868422be3ad66fd77dcfd111be410ea2e39e415031aab52f9e3a0b81d972d460c63ba017bf13a04ad16135291fc4b4db1b3896535865c7bf9b510077e885219e000d2ddd499bfc50bd6ca14364c52c5c5ed933c26d28964dbdd038ca95190b4dae568db08e08ae8d59953c999a96bdf36c4b24a44638002a4864154a56e337e6b66b620b404fd57868d0f23a5dbba9ad63701afa962e875ff7b20d71493b243dd7c09e3842aa97399163bce66151e08c03b37753609e53f90541f58f9bb191912e3b7c3129fbe707c1afffab2412120463c03a583ca0f467e8bb879e50d2a37271fe34190c39be94523f0c5d63baa00736420c887df5439326f174d3a9d8286edaf9675961f433e11ad940f8f97fa371b1703be81e49d0480c0366a442b5e5684f7df07ffdde93c0b0733e9197c6eee511f99628ca410ab03784aeb565e20492f1a5a36ed2b012a6b823413867110a841dd63641eb391e6dd36c442fc65ad47a46c940fa4144787f51bdf03f44ba9a68bc5e494b917d9d29f44f868a8513c355a28a7cbc31ba1f0265faece9c06ed3c627d4dfb436a7b45068e3563707573de56d8872ec2c1dead386ad0b04e44292b65339ea3857dcde28ed5e22320c20a26e7b120d3846192a5fe4e1644fa0988b7831fbdff5db7f38cf152736163b86ee20d5ecf8e6aef39d104cb5229e3df944265b48a7ecbc30757d55d702aacee4979084c05fdc872c4b6cdb3e0f64d97fb5ad10e274eaf2048ab3e4cbcd8c7691d0e474acd8020b2a88cf3e1ab2013ed42a186ef86e224a0a46bca67943ba344eafac7e23d4d3811fea41198a2190578e4cea2d84e09b55825a2bce5f42bffed59b1d8d70c4d18e21ef16d7d55824c62dde8a3344de5db63462bb26b0cd3ec28dfde995bb2bca1f025bc26a8ff2b0928f446d9ba09cff6075103f19e136fea91e56bb8c579f3272b7c7386569c07292696db864ddcba1756f746142fe1e3fa3362553f41b1e527ae55233ba70b50d7d857479d2ab19cad885587f8f480c79ca717fba0f074035c72683cc4f5493c9a1baedb3ed4bf61b9574405a53bbe03c4f68951060a4d978271316512fb04d756c4ca93d6277fff2481342830796d5c315f92d954d16c3a5309e9bd0bc658953767f4a8070aa24c41df0e221dc3ac9f9285ff9edf7e7bf74014f573b17f9d6a15234283ca39b13bb2362e9049435b1432e03c08769a56c3e5dd28ab4599cbc126c5c9b423dc45d4c4d37eab259503ba7597f72250a14bb7c78dfe64bc2937f843f22a35a4ec94a2286b5369b5e3d669845e14d6cd725317261846949e9366c8827b6a871727980d9d6903ea0dbe430eae154a476aeb13ac234defad64a8a8ccd08e0b0b60df4e087981d53d58023d16d067d98279b65a598defa18d5802f85681ac4ac23fe351f16e04b8f331999f0c01ac5bfcf6dc772c0b062093213174d783544e5b9df88cf62453a60ef011f77911f131133d0c79fd1d1d5cf1f89d781cadb8a3a7e8478f3c50b79057a543ce3030666cb0e2d5d88994af771edaa02572c30bee5fa24e8ccaece5deaa69a46269fe2c8df69135b7190ea834aee146619dda4cd1a94d791217b0d1493b972a6ac5ea419726271251b56d15a2de6c723b1f3d9ad983115a140bd04d9b502ceda2c8f3cc23b78c285064be1211a34697b97649fef9563682484508bd43241921393892ca749aeb0460ffb2b660a61bbb708b546fda247c8a57ffa075b66b191c62f3357e05b9b7752be105232129d1dea8ff602095740eb588d6a7eeba766afaa4cdd6189895d130ef8719010dbe6348a3fcc93b50cad7c4dfc1af9e118a9ee2de9913b5ed8c221e64fd402424d5822131126fc3720c165d2cf387d9eec5a08139961f3235b707351959ffe0cc5873c878197182b0b9a8c782cb7eeddb0066908c50d2f2857c6f8de0f1a988178506dd7104cf32124af21ff7fe9e6a6e220d8eb2cae29f50bfc02069bc0ccec5c00f3ee5b59750b3b328e5c3788a82d70d0ae5364f9cfc5d7059459ef9be11208d9c7539df4b9cb2f555cff815f44eb4c3111a97eb3da53e0fc6f77cbc3dd9266dbc7db9860386ab48b561d06cc84ea81ea124852be3169ce60d43c39cb8975bddc8bc77b3b04383dc67a7d9ba22be23735d28279afb40eb42fe6cd3e6da561c76f8ac27fb6629f8084528531ca3ad4912793b1ce85c8ce1e3413aa94df16a34e82399bda429876c0c8ac01af57a774bb2d0b9774c711e1070e1994d31681c1183897db1c8d45c97c2840628915ff06eb599bc548935dc3cc84aba4573d757cdc1b4aec56f8d8e9b6b81d7f487689bc40c3a67b7c55f18102dabca072e787c54cd3fe782d3b8c413bfc4375a0ccfec01fd0ea0685c6ac4bff4c10c4089e0076934ed1d7b20279d6f66885d77251b271ae92a07521a8edfd48f6f34a0efc4373d55ce42314cf666f7e899545658620eb6636328f7b932ece95154f3d82ec987fb014736b0d7c65d0a57ac1fd9ac025e732be7210baf688e1c60d10c83d7a73623f384f46f05efcc9afab2f8a1c2a56c1929e5d856be0befd21ef35f9d33e9977eb79c0fc4416bbe5dd4b78fc2c8948dc1f47659bf6178600bce12ffc54441b308bfdea4a91410e149622e2ff6c6dee5557d62e4b8488c280b421e7134bf6de3948ea6f5a76bb2ac95d55f3c8af3f3489bf06114f17c7cd5f56665905bf183e73d42d981c0b4993d44d17ca387e86b7dd698e759c71388626fb44232bc060800496c9dbdedbea51ae03428916fbf6ac0c2a6c2fc5ea7cd28159b9396add381c85a0fcbcaef0c31f9a8ff6d5aad1a962924b099eff9d6faf1003ade058172d24f1a125152c4abcee990b8a1ef7cb7e181a8485c55c69d9c8d1f89fde35885e2af4ec15d2de266ae046cee521025db36225cf0619cc7bc053916895632eff3bcec945202fb3bb9126ed0e0a1f1f715f6e50ce01501c7deddc44be8deead74b6c86b77e0be50cc267a4abd0571d4a06f5545e3548284ecb1481cfcb9d7b23d9b872f35a457594fd7a03a13df1ef39a04796bf27d56622fd17ff28979b90e121a11a05ebabe7281223c16529eb7794475092a6da1c6c6f7223a00b24d26b4612d7e18d11883ef9661d051dfab5224a98cb93c2987118374aa6c60fff1523cb7bc8009b8d9fba63aaccf30bddf026ba5fa24af9b33b7963c5062e2cda5ebc9a4e54679db220cace05b09160e6050b4acf4c624c62809b32e2d9db2538fd6c4fd9c6a45e7fdbd965890e6c68d9f18f4cc211894ce245d267eca0881b3a0845054f0123f354d6dda00a8101a78651bd5e30df4afc6cbab44c1c28a729a3bbb6c9485166fd53c5acb5ae6446b25f6300940116ae218b737bad1a6314b3a0453b65b2a7f603f51555d6f00824bb814cb6c7ced4c2344e22a2c25226781b36913c4e1bdf6c2f856c439a6b282a3991bbb0b33d8a14b4c81ef95fbec7a5adb9317f4e9f959b635f4c04dba51d1959a067f3c0ee9f9f995f07a34e01623e7c0427411eab4c1e602f366e6a8eb253fa1ca9999c800b496de2684b1c9c086110ca01f6e93018c98a9f0bb7506f259c235fa93c2fd0e5af4685b7510a5072e78190787b4611fcf76d79ecead8bf7c85e6641e5deb78e8ab6ab9fde105841533b3a1466811c1dccbeb126db07ff2fe32760b8d9f6b9e10424942ce9f739f059daae974053fed83fa707b91e65067d28ac7904dcf02823582c74c0e12622d22f9a1f7cc7a9ad089e472f7b06cdb3b394be9b8a18927bc9284570cf6c380f1d24c075eac20ac48dc44eefa2c5b94d406703ce9ad08960173378b3e044082249f688418bcda182dc8bdc7e7b8f95fd56bb411830c944722c3a7e046d6b057c619b6864bc96a5d83161f8ebeebe0ef10e9f83f1e559fff401f01aad0bde85da3ad8bd33d29900cf4e41edfd46f56713c1fec458974e9d8515c386a4ca8f958458b8d51b845ba3dd2cc59371922ec946c0ee9afad1f63fdc2449ae90ba225e6ccaecddc1be7daaddaafd4deee6dbe989d1d423f22c1c8490f6a28cdf3ccd1cfcb1bc61952ffc7124fc34ac6de5f69422e28046424fc372760597fdaf1f9be0bbb514be424ad2598e758d92247b2309469b21ee4ee2b1810e93f2cdba1eb117c955b33eff4f6baceedeb5a3b4a99ed247a6b8560f7f9d88eca975a5a164df0eb2844690fd67681f1726562a4e9bf8021bd41b0b1d9690acf0f607f7a891befcf5cd53b2c27ca3706f67000807a8e37d4f3d64320a6070da83476bc3be710c35818ea58e9942fc796224b76cdbcb29000b59faf724845d0552b552b7da1d04ac70c5c3c3ec75e45d9c7fe2f84fd1b4d5e01c1700174f3383a14916cfacc5e71263729ec8819ec62c1e39c8dd5d6e59235eb012166b0a023c374b375ee6d2be1305ccd36fbf8b3d62d32658efdcaf1c30a6c5c11b758adbbd32b9e99644fe0ae16a6ed44543184d87484dc495d1fd5ee44149a50cf5664410f4c0cf34d394c9f1f3840eaee1846766fef2f452ec9548eaad5cba70ef393909b427c08b97f1aaa55fd8ff39264ae72ac1413d9849f52bdd2c2c170d61f0c0d8f67fd15d0c851a6415919c7235b8803364b7cbdb56224c49da83f6b54b44b9947972128de4558ea09bd5dc13f3acf27ff82bd8cc1c0907ea3606f64e891a27bbd71da35d843340d9ed3bb3ef1bd1a256d9ef43744b717283171c76c482f0d46735a9ec5bb507a80a5e2309c0e8b245c77ed3f671d67a7e1cbc7822211e44b2cec3100b868c00b7f4233fc3e0e69fa51c244fea278c2d9bc6e9491dcae84472701b129ebed38d1abb86ea410da64a4994b68f20e0522b2542d1f64db74f335d5d1da2ef16f39073bdeff32bc3a332c62585911d908f3a88d314156331d113b605920672e4010da407198d064c8b6640bf5d66ee0411732d2cf26f0641a2dccd02149d51ab5d4587bd78edf8353ec2bd250015002cc910135fabb637312cb5345346cf2b5cd04fc5105d5c2c2a0dee163307e8d77ecdba6529ef1f67cb5ded96b6c5d37c6a94f6275325d622c581e816205839d507a3f081c4a3d59d8f74702f05f48b3a48ccd2808694d68e02c962a8745df0701985757fcb95e480c60975698291d1bac6667c080b50ceb6e780cb148c76f01f0b055ab4c94c032f14d95586f6a3304476fa72dfe96b5865f09208c063d8f207bf93b9e14c5eaba2859b5f1ce5cacb344bf69d9ff4354e46851e52da466e0afb8bbcf431d62b6f694b85fa9ecb8b4b3c0406c390fc95dbf99469038612ed731cc391c81da5caed644338e57b26a494d518e2df394164171c9e83ed0df5be1e2e3a7bac2af65619c20e50a94a6eb8ed18afda005799829986ecbdbf5102ca617f922f7608dea68111ee3173672ff94d8ba0255e7e4aa58aca1fc0449db167de0fe74cf3855f55afa31cc0babc439bac1836415317b095e86f034df25b73569e211166be467a4175297b54aff1d42dfdee9c7be591338583547ed7756721fe1a373464383217dd1bf055eb95e0d6fb0baf87f5f33da77a81227432b5ac771e6a364d5855add34b758b2cb6d8d982f115b844e6c6cb5e0403f66b000d4b35685e29447958ab700200095659111715c259484e8de837cef27f57bea35b3613c7584834029cb42d544b8bebe49a1e086b6d4021c856719f46b1db8c9ca32ca0d11f181468affce717a0416310df6ed6f1aaaa58974eafdd9c0824b8333ac4bece1a25e1c6ba28e719ef050b4bf32f92fcbab0cb318be22ea1458c51c99afc559bbc435645d1067d8355d854aab85a7117f171e96945d37e82556d06167bbf1f2b433b08eddb93dcb64039be482db9b6341a64241fb110780579cc9f49a948938a52e84631a670f45878ca691e31e4250a26018c7ad245a34f15f2bdcbfa45e4f8a06e6c90fe0bbdae965c4dd656612b3e100744073021ce107dd9678e6d354a4acc5547f55d86a6312e9a847a6e935089700613629537b080e22cfc71857b8a903bc7c7066ea430f1d9f562c131003cb8a1235534217a76eb56639edacd3a8ccf1d712f0ab63550391330a4f695907d3bc966ec9c1751f9172aa41021710ca6ab482dc765bb9d6a84149cd329447436cdd694c500ca4edca0388989cbcda2feba17997875d02caea6508d8576c62a35e9cd150349de9c8cdfd645a41ddd731d77c24fe5eea90cf98029e303e006c95e9bb5d7f6de30d7d98ee557fc01054972f10aaeaa614be9c8cd82e0370dc202c482b7b3777e7015fea940c9005ad87e0a6e76e4387c57d27b5577571eb6c0ab08803d82eba53860265d03b5484638f13fafe7e79ca970b07a1618c2e79e4ddd4ad6ff451d4ef3c1583e49591bc163cc2ede467ae482cd6325610e2fe8d17c91542b61646608a5a1f466f5dbd9ec011ba55624f19316c963e0e4ff15343fb67dbaab68212cdd26aa5ba047f100b63d2cd9efa0ff7c12d5763288b30d330d12756eec957b0212e57c21120638fe6654416417dc8a9488f381f7ed2975b38e68143074a4868db0d6eea92783534a5bbcd771ad5c874ab8b2d52cf19fc89481887619f6060999e57e87eaa9e1240d4275ba003ae87ebe3bbeb421d27fd215a6f9c8fd48319b04a816f86af1a154057ee1ec7dc3d990f41b357c0e8dabea4db3eaa274183e4d3985e3188f2c7175c48fbca0607f503a50f4335f5310237271d695dc293b2c1965b55a9d513673dcf6a0fec5017c1f60b8029f737f72cb587d50b6b8abebda27f8b7766a144101d050cc25373814e0ec4ad3a2d52ec2f8e40ecfbe33b5f2db28bb894d327847cb05124ec2155d62d4f891f36683f56c37632fc4087cb7bbd3cc7a762ac164b281eea576d2a54a3dee23c4d661c0cb562aaae4dbd891acdc43259c7a1366db9b6a47c91bdfbe9890cc0d7c0ce1472bf5d1f597fad93765e3a2e576925de4772136899876686b84272a1b6aebd2b886f35a620659fdeaed70a50ce5281979b836a123ea9f62aeaecaa41e5779beb530d5b4a5116e9053a0882c08da62e601cbf1f7716eec7466fb26a1073228996c08c1afff6b3b9d080f8bec208a943a00d6d78d4c481cc6811ef10f836596e346db14757492166d229faf01689e9158dc60a4eba9d145eb145f0a223168d680074529c7f13d53d706609c6eca33cc48b3eb90a022999e1a923f1b0613c074502b5ac8fdcb24e418fdf04a6bbe83611f6218e35b3edeedf003d5616b27d4a9852511525add7ab68217bb75a0f9afdaa328b64191f2e22d96148599b7d9eb3c1c2cf4ecfb260dbcbbbf4bc766d6526a16e7372d4ef8bd563b24b56d6a23e184bc9cbf16e81d874dbdda5060d4abcae37b8a741244030a47c79382be4195c0186700cce68551bd79036ea42583b6534cb559127e0e66276fbc786995f9457bdd15dddb6887a7047cbf3d99bd26fb0201c1739d7f30c75fd0dc4a2434630e6174d8dc347ad01466f73740d3bd410c25fd4a352f96f8ad931e6fc0c22293773065942d65d587ab5393ace4ede2b9993b694718803febeda201c2117f74d9798d5f343d98462b3a1bd5e97cefef610b2c10e84c00cef54d726e06eecdeff03d1ab56ba8786a2da2d79b85e0a9c625bff57ff53cc5de4dc755dae66631fb1c098447539d872bede2f6c6a4be866c18fdf850bd0f79f8c1aa1c9c738cecef352174e372620b2e2558975c9c636510e69d788d4e3cc4be0e773f4dea86a2288f96af3a6520c6b64f1d14b0c6bb3690fda21cd0d19ad6fe0acaa31179ff1254cb8445aacc395bafe3b48e779cf09ac018b6ddd3c54252373b5361f0aff6f650bc96103ee868624d2d6a6d7739fa3efa4490cd2c177d4cc4a9dd3a500396b29d18497cf7a5bdd92f8563f11ab868f62703fcef7dc372568f611c874ec3353981ab05393d1ced66c788c44485f9b647b683f6498452566de8df3ab2869c9f6d92256c81993f3574a190d948f6741a08b8f5c421b54e09ead049a64f98bd4e4a59b7f2bc233911e2cbc2ebf04fd6b3315af0a10a1ec8c8e947e62ee4b2b9e49f2ce0feb39ddcecdc2566f1586f2925d56fcfacd6089a47a7e92fdbd50127c622eaadea8cb9cbefc97be5d9af05b242cf515135880b168ddef760d32a210d6b195a7ed4c85d58b01bfa2004960cf59803feee47b5a8f918855a78db2b610b40d537611be74c9c00633eff11d1cfcea20219378a8496979d80e76f37b6fa054602dfd2edc7feab3d5393034c8d50c8a7e465f0fb459684b421f803d294f115eb393c506a167db92c9de678624fd42e9233d998d377a6f57bba1a788cc844af8ff2681070a6a0a79771d04cdf39a8f63f1cfbc72e4358bf956a7b7bc900b52e85bd7cb2e9c3535b7182fa5fdba3a2eca7059a472a2b5f952ab0a174bab07b4949f904dce5d5cc8361791c6ea9bbecee8ca66bef9f24ba6f7b0349e5e114820d912509b0bc0d899bf1d067cbd6265b86f77670f06c563ce569fd8ea2ad472dc39bea8cfceb68a9c97f8ad1ffcb381cf77db7650c1cb2ecb2b4c6192f480a273a224a13977fc819a04a89764492989cf9179a253484fd9d479831571bbe66cd9b9f868e3de698f31de193be1d1e13979d3b3cfb430e97a25d663db25ab4a13d66eeb51a35f86ec9efbe3dafa18e2c6c4984285400b63d8430c4506fe70cdbdbfcf8997f2c7ff672a4ffe817de56503c7b31b56bec264ca06e4396717dc617b3be0f44373af10fcf2363091d365840b6c7e4732f8e6b0b261a7467774d91523f23223ba6cb0e1344fdeb070e46f41e9ef432e93eed98e8cd5cfe818d58623e8c245a217c5c29885399cee1278f68464ff831c8414c780d6b77bd7ede1981bda13d4ddcca94c72dbd6dd1865c4c1d42b2e96c79371c14f70806825627067fc719a01d5e50143ecc8f424ad96a7ff153b661fd428774ee261191928aebad9cb2c36a499329b3b5eb9d6ccd96c1b470a0ba24a7a1438cbd8d6b3c8dfed15a6a2069e219b6158f84c9cef0d4a898557a9b17b362ebe5bc754fb7c22cfa568760014de73887826f1d08636d1c5ca9325ca26e88f126b5f471d987434200e457c8758e2fae5f8dfa35cd9d807e2e90aa940e555157b32d3099799400b0ea44fccd2f92ac81163758d6a741d7a08c22a20a3451a768577bdcef761bd91f796b771454ab697a7cabe59a9a58c34d06feb0706fdb8fbb26b7c176f0555a0d85397821e6cd5cf9a4b4e695e3f128094235ccc9a9ba71cdc0f5dd6690a279ae966434cdc858a1147c533a035c2046c292ac06d74ecca16f46ce200dac428f6fe150dd8532671c11578f6ff4adc2c4fec3b16dfbcc5785f6254cdb4351996e86eef75ee82badd2665d4087e29c028fa2e1f8aedd5223471bebb17c756c743f76776f4cc05c41ff3e1d4f564ed2d92f32ed657f51e7d892b82cda7ddeeb44bee7112d8b5c37c3caa451401060d8b69e7ab913e55706ec88ac1957f1840ad6c5ded54c27654c2a61e2378ece6c7a287807c8ff88ff2be5e788e22db18f98a85ef97ad37d4531207386059216ea4907fe94fef78d9c1653d0cdde1791575ecb9b0f7e45b3cec683294794a2b26c6966cc975b2b5f56ef39d8c6969fba43131be53853f7e197f19ca29e52346b01b3120d7dbff44e6635c0ce1e3ffe18516e3117d9236fc37b939fb1c53854ea9841a13ac24e82b4f9cc60d3440344ce48ed1d92d8b839771628f988135fca03a16649a7c5423c5c1659e35bc9d5a549625249dbba659fa1c8f42161781e40bbc775e6048fa6f225bb9e4ee74b09a2a5609cee7a796a0cd5afe0543f886d3ae9da0ff0d501395f33cf88fbfe68895bbb4da353827fd2c950bfb4aad0f535446fe83e75e3bc89ed16ba26dfa45d0a76aa6ff572d69e3b24d1cb5a5bd48aa9c44426f396cb5bf9767e99620be15d10acb08770844418e8c9de0d0f7b0b7fd86ab949e59e1d924b1c26bdfd0cf46f89b28a4a17f85449a650e54db6056baf7ba25fd53e3bf79fefd561ec4fa0488108a48ef3c25c15d9fd957cede5195bb76b4e89160b24303ff2a6385e5adcd3c66b14a6d3a88bed5b53929a4ec07bd1411bad404c9e36d4d4e876f1819f190c5a9ee7d563929357d67c3415bd81911f8d589e18e594d34bdbae878468cfebfe8dd620dc464cb8daceb9b4b7a1a1f7737234b6b5876143f775a9f7b9eff4ccaf29c2efdce83a6a419a15c6362f26b6b33457f86ec25304e6c5b53d7488451c809b7ff570cd5ebce85ccd8f04feda654bf77e4d3d80c003245a9d22ab7dd5329907255a1e414632925974857a99e833ea5b10f8a396923a8da040c1be3307ec11369dcebed71939df61b0c95c13488bd19062d0f3814566b7fc1121fa8b66ed0a7d0b8a23addfc3cbf78d3ab1b86ff2c8bbebc4ac46c52bad6dc94874c5391ce6d5c183e23ea378694c24d12a04c9d03c81a7b5d844033e6875fa3c6a7921ba57e7125b49a170dbded4038880af6cbe06ec67d34400896e007983e326e561b1dedc512222f6de1760343a2caf885a6ef8d01a2b7031df2b4a9b50c564d1aace40549acde7651fb043935222705ca716a9fcc75a0949edd8d4497a52e3271df9ec02775ef1daaca58e91d7fe19e7ec95db2abe9199133974ec7648c19b8656a0d3ef50fd5b06c96a302a67e3b0b66326d9e73943263b5a20bd16b2468b629d65950f283fedd77a57ff6788dcfb300e6d6c440100f0ec15f4070e4e05034613305981fe02c2bea3b3767eacd3753378cd976de406bd281464d98e024003adc4e1764054a27baf574103025991b3493e5126474be946a5d6fa0d74104cadbcbcf0d3a4077c7f5af015e8c043c057a5bbf5d54b13a899da664d76cbe5726d144c15ac1afa12c6f330c4d40f54bea58ca9acc9ae5e5aabdfd55ce215adea13268f32bdf04fbf9d9496468741f736fd2736c892f18c26ec4db9d4ec72c01da216ff391562bc37591264923bc0f750b2d1ddb0e314a6ba058857459d3de8d9e9c490bb507539fa0d1b0abc5ccee61140765cf235df86a1c9d34f2ba3866d89e4363c028d4a8d8ca2b3eb52912464b65114ba3ccdd0d6d70a3e00efe6374918ead81934a98940df28bff283c5035408f1738ed1a47a6c1f56d2ffb7fb771724c101118d64868692e4963154bc9a6de7e723a4a64a1fd8b8533341309218667674b3f331cb93af2f9ebfd8515f18406154d3849b592b05c4d456f6753d7d46d3a763f9e41bc485594beca38f2d56d16484cbf92284e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855bf5f055995311fa59de026e34d008f6449a296ec99d277ab0e00d1750d7a344125238e2287c2fe0ae5d74b69fa249cea74e6edf946af8ca5a48c8b5a2b392c98eab019aeffd58f346d1aee7631338b985c777daa2872143653f9306c54ee6378764cbfe3ccf5de7d700848f8ff3cfb6e176967606f8ed08d0ee96eeb7adfe5c064a67b8c86fd681c543a323925369c833b05a11d8e7610139430546126e9ad8171411a50968dac4c9717bcf6343f65bd3fec94196dc3a20b93051449634e3b564dcb9247fe8691a1281523e14b50029b5d488bdee8d78ec2bd6580e4871d7a1379495839cbc815a23dd6ccb84cfd9e16e23d3d4ba448cdb63ef1f189aae8f7892f2279ffc2638b8f41c71ecf588975eed3d1cc9dc7523ce3dca63e491389fa31c3ab4c2313b26793cefc810c6cc317a55d43506a56b0a842753c7f03d05ebadda0ce5bc6864d60e887472c1fc8b4fdf7550082c8c61cee9892e3e5a1cea40579745bf1efb33e0ff3ce3273f5481163b5418d3a7a55fb983f27de4427383c1348c73dba4116e6227fa7f2aa86016b81882ae5444f50a73db73c44f3641ac929a8c2c9267234b9aea1478f1fa6aacdb3257f2b73e3a5463e70ec7d3d6ef56bf570aaf6d9f61235485560c2b95399dd7eedb1255851764d9a17f57dc542df7626868c505fd6576cb00cac08fa1ede70f2304bd0267ac32fd6ca72bdbd56b4a77c6ddca9d337ce5c0307c082b0f335444e2b64b0b646a6a9fa03ee0ef5f414c71de3115fdbc1a5d027bfd54ef50b5f6c82ece00ef9b13a684a2564b49f46cfd719f7e3223b1393c63646d4d1b0bcdf60f58607ebd6961f009b2c31e6848a02400fa364b0ab912952c3236b3aaad8c10db3340df60d7c259f8b9cf534dba887788b9af5d4586c734277fea0ffefc2114531b39bb59c6c5eb5f5f6c5a4eb5431b37e571f04623f01b95d83cb0e0dc68f90ff3fc1fe5866477640bc5c51141614936ba4ae5985c5104cfd3a0682f6c1aa2c68c30f4c2517bc1a97a70be07a91f20f836a12c1e81893e8e4130d6aac81b2832fd9e1e54d5697fb5de88b93c19aee8f07a61590a75993f674b09a32656a13d949dfe4bcbd311347e2a65bcf94e72b19d1fedef92ca12d3fb9906df66eaba1f68d54c19ea21c48277d1a5daefd96c59c303ca645b2a4d042eae2d4c5b3f6f4e9fe873d2f4fe645f5e68493c0b9a89524096828d56d85e34c9ec35df2e54b0ebb29343982f6ba284385a48817e1acbc59abcfd676579f7c8ae662679019e02d83d3a6523ce12d8858539950b65011e86d913334c66e64e84e935389d7212c8ed74623c71ad60c5b6dc228f40570cdce2698a7c08df0ab5136451962ef77912830ea85f7dc7b287fe2175d329abdaf0f22407890ee7187ed6570bdc38b23356cba690d9525d5895ddf6dd324c71bac50085b60ae7d315fec9dc03b37a13d094d57294096aecaf519b21a9a13d9db70aade434bb388c2acfd4524e895588adaf3a9974d7747037f6b9ffa7e51b0c171158e7568ae87990831d878cf487d250408083031c5069a1afda30b01e21a5ae4a864c2f27c89a77795b3d0b3ba626e6927086f382db2ec60e0db56df7b97a326ed9fa1288d977aefcf08a40dc5ec8a362a228f9c3c0637bade897c24b3dfad501e5d950fd174ce2a0545bb78a6dbe6c2e8b558ffa71c41d5905ffc7a4743ab00e2ebef3ff7db7b73ac488907675a80ff6c2e5a55dff86941ebebb728b198dc471a2e996ab8a22600e27b144705c5b6218c9b50ae9989e270d7c1d64196dad60d1c392efbbc83cdd486158a6e39970c335d8e4efdec3d000eec03959be5513465859f08eab3db0d8a3318d3a1c47a5b0708a06e3f51badd5d397f6dfaeeef1c48fd60de9258d87d94123dc18012631d440976a7b29bdc03a36079ad0e7680c235fc365ad6dac6a1d532ae225e60a0a168d095847474a038a30586c59aff0078cd950f3f7a0a0dc09e3d1bc374ba89fbc336d4ab00f976e476c0579b7de4376eab9911bddd2227c6e89b17674adf1c686a760a46dbae824bc6a702b9b645fbe8edf8ed4c8fcb5bdfd80b09eec3fdd1bc56eaf805ff30e824c8da52ec4881673d9ed57fadd0faff6a3b59dcbf229f37b77de62893a276f870600f36e28925fbba2352d44ffebaf8efed377d96c4569833c0ea58bbb3c7dd598fc2f0b756fbe77d2e90460002af9f5651a30eb835ab281cc053322ad662138a180b516ba2bc90d6a53720b0c576652d6cf1286e99c11a1aee28ddb9729dc04a847661ac3bc8ceddcd3d9a464c263bab1758b356e247b16f7378ba99bfb7cfc60259113d16e6685b34a06892c272d8da9c80964bad334a00d1069ea08e04bea31ef980faa27c3e6900511842ea88c79668b36d8cb03d3361397be9b8bffb6e8e75d4c186aec2034cdab83e35bc97e358144ff5e8bd2035e2f4d094d59bfb0998e00cb4349f9db034e4277d4af29600969abf48b6b4ad2699ebd67bbbb5e48eb5ce269152d247de9606199120d64d91504d7c6e3468c3c6143f0daf274fb1421d0e3ef47fc20f631dc758f3529199f96a30bfe28799cceeaf57c100b16514c90a6572be4e844ae2dde70e8b5bd7a95122b12a479f618471e2fe06fdb4daa488e1ff2755a9c23ca217909fab06e1ecbb071b328ab9c801d393d31f0aaa597449576abecdbb72eadb328ea2b1aeb3619e64b3cbf771ff1680f2b24bb8f6ae57a63a7c1ce966c2ddb38a772f8ecfd4694b6fc83e56e8a792599fc2c64f83589e41dca034b3fa275da74cc4f889e782123a5e936d749438bc9d61bfd807e6d4333d010f7ee91068d42842a1afe09faca7051fdaa3ae741535d28803200afc4c2158351468b95ea9c39888b86953b47ff148ef907e8824f1a5c82dd4b32707a8a96b2c6f91c0f6cb56c19add1104b2d603cd4d1e3ff9e05993e4ccdc3181282daea210fc2df8dfe6a0431979fe5c7d9b2b287bff8369882c6eb8c77db3963aba1daab320675e67bdf299c23498dde34a15379faaa8f98aeae26b880686f63b8d73bccf39ebc17b79922ce2dc1c59df30b2b465078d958178477b1fc8a18da65b3b892ec7e1e514d969c425c78b1aa83dfa55e7b72264882e862768c80fd2bf63d5a9927e92d8badc3741b06710a151748c1370a2d9808851fa0369254e84103e376dd164a20db8818b55bd11becefc6flibjvpp_common.so.0.0.0libsvm.so.0.0.0libsvmdb.so.0.0.0libvapiclient.so.0.0.0libvatplugin.so.0.0.0libvcl_ldpreload.so.0.0.0libvlib.so.0.0.0libvlibmemory.so.0.0.0libvlibmemoryclient.so.0.0.0libvnet.so.0.0.0libvom.so.0.0.0libvppapiclient.so.0.0.0libvppcom.so.0.0.0libvppinfra.so.0.0.0rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootvpp-18.01-lp150.4.3.1.src.rpmvpp-any-develvpp-develvpp-devel(x86-64)@@    /usr/bin/envlibvpp0python(abi)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)18.012.73.0.4-14.6.0-14.0-15.2-1otherproviders(vpp-any-devel)4.14.1[ͻZI@Z1@Zhu@Ze@ZTZS]@Z.s@Z&@Y@Y@YdY5YY@Yn@Yu@YGY9<@Y7Y5GY0Y;@Y @X@XBXBX@X@Marco Varlese marco.varlese@suse.commarco.varlese@suse.demarco.varlese@suse.demarco.varlese@suse.demarco.varlese@suse.defstrba@suse.commarco.varlese@suse.demarco.varlese@suse.defstrba@suse.commarco.varlese@suse.commarco.varlese@suse.commarco.varlese@suse.commarco.varlese@suse.commarco.varlese@suse.commarco.varlese@suse.commarco.varlese@suse.commarco.varlese@suse.commarco.varlese@suse.commarco.varlese@suse.commarco.varlese@suse.commarco.varlese@suse.commarco.varlese@suse.combwiedemann@suse.commarco.varlese@suse.comjengelh@inai.dejengelh@inai.demarco.varlese@suse.commarco.varlese@suse.com- Do not install 80-vpp.conf; it modifies system-wide settings and it is not needed since VPP 17.08 (boo#1112540)- Added runtime dependency on -devel package since all -api packages require header/json files at runtime- Added memfd-create.patch to fix the memfd_create issue caused by the upgrade to glibc 2.27- Update to the stable version of 18.01 release. More than 560 commits since the 17.10 release: * Features - Infrastructure * DPDK 17.11 * TCP Checksum Offload * Arm64/Arm-v8 support * SUSE packaging * bihash_vec8_8 variant * PCI rework to support VFIO * chi-squared test calculator - SNAT / NAT * One armed NAT * Twice NAT44 * NAT hairpinning rework * NAT64 multi-thread * NAT64 IPFix * NAT64 Fragmentation * NAT: DS-Lite * Remove old SNAT API * ACL-based NAT - VNET * DNS name resolver * BIER * GENEVE Tunnel * IPSec Openssl 1.1.0 api support * FIB improvements * tap v2 - API * VPP stats (Broadcast & Multicast support) * SR MPLS * VPP Object Model (VOM) - Host Stack * VPP TCP Stack scale / congestion improvements * Refactor UDP * Namespace support * VPP Comms Library (VCL) improvements - ACL * ACL stats - Plugins * Kube-proxy * L2 Emulation * Memif * Known issues - For the full list of issues please refer to fd.io [JIRA](https://jira.fd.io). * Issues fixed - For the full list of fixed issues please refer to: fd.io [JIRA](https://jira.fd.io)- Latest update to DPDK 17.11 required rdma-core-devel to enable Mellanox NIC. Being VPP dependant on DPDK, it required the same build-dependency to be added.- Updated to -RC1 release (v18.01-rc1); some of the fixes include: * NAT64: free port when dynamic BIB deleted (VPP-1107) * VOM: NAT updates * tcp: add builtin server/client transfer test * fib: make deag entries urpf extempt * VPP-1109 Fix loop for some CLI (code review) * L2 Emulation * Translate matching packets using NAT (VPP-1069) * Fix MPLS local-label CLI help string * VPP-1083 "ip punt redirect add" crashed if not mentioned any other parameter * FIB memory leak during recursive loop detection * Fix passing bad context for callback function * NAT: Twice NAT44 (VPP-969) * NAT: Add performance testing TRex scripts and config (VPP-832) * Provide useful output when installed vpp-dpdk version is incorrect * Support kube-proxy data plane * SR-MPLS: binary API and automated steering * GRE tunnel key includes the FIB table * Use crc32 wrapper (VPP-1086) * dpdk: unset ETH_TXQ_FLAGS_NOXSUMS only for selected PMDs * apps: refactor uri and update build infra * Fix icmp/udp/tcp punt/drop paths * implement clib_smp_pause() for arm and aarch64 platform * fib: fix show fib path-list and path * pci: auto-detect right vfio/uio driver * vom: acl: Extend constructor for l3 rule * vom: acl-list: Add comparison operator - for UT * vppinfra: add AVX512 variant of clib_memcpy * tap_v2: include host-side parameters in the dump binary API * Enable AWS ENA PMD * session: fix proxy removal * session: generalize handling of network transports- Added patch: * vpp-18.01-nojavah.patch - Replace javah invocation with javac's -h option - Fixes build with jdk10- Replace boost-devel BuildRequires with libboost_headers-devel and libboost_thread-devel ([boo#1062583](https://bugzilla.opensuse.org/show_bug.cgi?id=1062583))- Updated to vpp-18.01-rc0~365-g8b9a5d19 * Support for OpenSSL1.1.0 * GENEVE tunnel * Various bug-fixes- Added patch: * vpp-17.10-java9.patch - Specify java source and target level 8 in order to make the java code buildable with jdk9 - Don't require java-1_8_0-openjdk-devel, but java-devel >= 1.8- Updated to 17.10-release tarball - Infrastructure * DPDK 17.08 * IP reassembly * Bounded-index extensible hash bucket-level LRU cache * Templated timer wheel improvements - API * C/C++ language binding * API stats - Host stack * VPP TCP stack scale/congestion improvements * VPP Comms Library (VCL) * Overall performance, scale and hardening - Network features * IPSec rework - utilize new FIB * VPLS and VPWS implementation - NAT * Renamed SNAT to NAT * Performance / Scale * Destination NAT44 with load-balancing * In2out translation as an output feature on the outside interface * Fullback to 3-tuple key for non TCP/UDP/ICMP sessions - Security Groups/ACLs * "Replace" semantics for adding a new MacIP acl * Test suite tests for MacIP ACLs - ONE-LISP * Map-server fallback support * Preemptive re-fetch of active mappings that are about to expire * ND termination - PPPoE * PPPoE Control Plane packet dispatch * PPPoE decapsulation * PPPoE encapsulation- Updated tarball to 17.10-RC1 (vpp-17.10-rc1.tar.xz)- Removed 0002-aarch64.patch since change incorporated upstream - Updated tarball to vpp-17.10-rc0~374-gba3c4e88.tar.xz- Updated VPP version - Removed aarch64 patch since merged upstream- Enabled DPDK 17.08 integration - Removed patch to exclude AESNI since managed upstream- Split binaries and libs into sub-packages - Fixed packages dependencies- Upgraded to latest stable release 17.07- Updated to latest master vpp-17.07-rc0~396-g7f4d577d - Fixed provides/conflicts/requires- Updated to latest upstream containing the patches for gcc-7- Added 0003-startup-conf.patch to fix the default configuration- Added 0001-fix-bihash-template.patch - Added 0002-fix-out2in.patch - Fix compilation warning as errors with GCC-7- Updated to 17.07-rc0- Updated source code to latest upstream - Added Lua and Java bindings API - Incorporated DPDK for extra performance and data plane patches- Add reproducible.patch to make build fully reproducible- Master of vpp (17.07)- Remove redundant ldconfig calls- Update RPM groups and description- Major spec file rework to accomodate changes in plugins build from 17.01 vpp release - Refactored the libraries included in the different subpackages to avoid unneeded dependenciesNew features in the VPP 17.01: - Integrated November 2016 DPDK release - Complete rework of Forwarding Information Base (FIB) - Performance Improvements * Improvements in DPDK input and output nodes * Improvements in L2 path * Improvmeents in IPv4 lookup node - Feature Arcs Improvements * Consolidation of the code * New feature arcs - device-input - interface-output - DPDK Cryptodev Support * Software and Hardware Crypto Support - DPDK HQoS support - Simple Port Analyzer (SPAN) - Bidirectional Forwarding Detection * Basic implementation - IPFIX Improvements - L2 GRE over IPSec tunnels - Link Layer Discovery Protocol (LLDP) - Vhost-user Improvements * Performance Improvements * Multi-queue * Reconnect - LISP Enhancements * Source/Dest control plane support * L2 over LISP and GRE * Map-Register/Map-Notify/RLOC-probing support * L2 API improvements, overall code hardening - Plugins: * New: ACL * New: Flow per Packet * Improved: SNAT - Multi-threading - Flow export - Doxygen Enhancements - Luajit API bindings - API Refactoring * file split * message signatures - Python and Scapy based unit testing infrastructure * Infrastructure * Various tests - Packet Generator improvements - TUN/TAP jumbo frames support - Other various bug fixes and improvementslamb01 1540295983  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~18.0118.01-lp150.4.3.118.01-lp150.4.3.1      !!"""""""""########$$%%%%%%%%%%&&&&&''''(((()))***************************+++,,,,,,---------------.../00000000111111233344455566666678889::::;;;<<<<<<<<<<<<<<<<<=>>??@@AAABBBBBCCCCDDDDEEFFFFGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHIJKLLLKMKNOPPPPOQQQORRROSSSOTTTUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUVVUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUWXXXXXXXXXXXYYYYYYYYYYYYYYZ[\]^_`````````````````````````````````````````````````````````````jvpp_gen.pydpdkapidpdk_all_api_h.hdevicedpdk.hipsecipsec.hioamexport-commonioam_export.hlib-tracetrace_util.hjvpp-commonjvpp_common.hsvmmemfd.hssvm.hsvm.hsvm_common.hsvm_fifo.hsvm_fifo_segment.hsvmdb.hvapiacl.api.vapi.hacl.api.vapi.hppaf_packet.api.vapi.haf_packet.api.vapi.hppbfd.api.vapi.hbfd.api.vapi.hppbier.api.vapi.hbier.api.vapi.hppclassify.api.vapi.hclassify.api.vapi.hppcop.api.vapi.hcop.api.vapi.hppdhcp.api.vapi.hdhcp.api.vapi.hppdns.api.vapi.hdns.api.vapi.hppdpdk.api.vapi.hdpdk.api.vapi.hppfeature.api.vapi.hfeature.api.vapi.hppflow.api.vapi.hflow.api.vapi.hppflowprobe.api.vapi.hflowprobe.api.vapi.hppgeneve.api.vapi.hgeneve.api.vapi.hppgre.api.vapi.hgre.api.vapi.hppgtpu.api.vapi.hgtpu.api.vapi.hppinterface.api.vapi.hinterface.api.vapi.hppioam_cache.api.vapi.hioam_cache.api.vapi.hppioam_export.api.vapi.hioam_export.api.vapi.hppioam_vxlan_gpe.api.vapi.hioam_vxlan_gpe.api.vapi.hppip.api.vapi.hip.api.vapi.hppipsec.api.vapi.hipsec.api.vapi.hppipsec_gre.api.vapi.hipsec_gre.api.vapi.hppkp.api.vapi.hkp.api.vapi.hppl2.api.vapi.hl2.api.vapi.hppl2e.api.vapi.hl2e.api.vapi.hppl2tp.api.vapi.hl2tp.api.vapi.hpplb.api.vapi.hlb.api.vapi.hpplisp.api.vapi.hlisp.api.vapi.hpplisp_gpe.api.vapi.hlisp_gpe.api.vapi.hpplldp.api.vapi.hlldp.api.vapi.hppmap.api.vapi.hmap.api.vapi.hppmemclnt.api.vapi.hmemclnt.api.vapi.hppmemif.api.vapi.hmemif.api.vapi.hppmpls.api.vapi.hmpls.api.vapi.hppnat.api.vapi.hnat.api.vapi.hppnetmap.api.vapi.hnetmap.api.vapi.hppoam.api.vapi.hoam.api.vapi.hppone.api.vapi.hone.api.vapi.hppp2p_ethernet.api.vapi.hp2p_ethernet.api.vapi.hpppg.api.vapi.hpg.api.vapi.hpppolicer.api.vapi.hpolicer.api.vapi.hpppot.api.vapi.hpot.api.vapi.hpppppoe.api.vapi.hpppoe.api.vapi.hpppunt.api.vapi.hpunt.api.vapi.hppsession.api.vapi.hsession.api.vapi.hppspan.api.vapi.hspan.api.vapi.hppsr.api.vapi.hsr.api.vapi.hppsr_mpls.api.vapi.hsr_mpls.api.vapi.hppstats.api.vapi.hstats.api.vapi.hppstn.api.vapi.hstn.api.vapi.hpptap.api.vapi.htap.api.vapi.hpptapv2.api.vapi.htapv2.api.vapi.hpptcp.api.vapi.htcp.api.vapi.hpptrace.api.vapi.htrace.api.vapi.hppudp.api.vapi.hudp.api.vapi.hppudp_ping.api.vapi.hudp_ping.api.vapi.hppvapi.hvapi.hppvapi_common.hvapi_dbg.hvapi_internal.hvhost_user.api.vapi.hvhost_user.api.vapi.hppvpe.api.vapi.hvpe.api.vapi.hppvxlan.api.vapi.hvxlan.api.vapi.hppvxlan_gpe.api.vapi.hvxlan_gpe.api.vapi.hppvxlan_gpe_ioam_export.api.vapi.hvxlan_gpe_ioam_export.api.vapi.hppvatjson_format.hvat.hvclsock_test.hvcom.hvcom_glibc_socket.hvcom_socket.hvcom_socket_wrapper.hvppcom.hvlibbuffer.hbuffer_funcs.hbuffer_node.hcli.hcli_funcs.hconfig.hcounter.hdefs.herror.herror_funcs.hformat_funcs.hglobal_funcs.hi2c.hinit.hmain.hmc.hnode.hnode_funcs.hpcipci.hpci_config.hphysmem.hphysmem_funcs.hthreads.htrace.htrace_funcs.hunixcj.hmc_socket.hplugin.hunix.hvlib.hvlibapiapi.hapi_common.hapi_helper_macros.hvat_helper_macros.hvlibmemoryapi.hapi_common.hmemclnt.api.hunix_shared_memory_queue.hvl_memory_api_h.hvl_memory_msg_enum.hvnetadjadj.hadj_glean.hadj_nbr.hadj_nsh.hadj_types.hrewrite.hapi_errno.hbfdbfd.api.hbfd_api.hbfd_main.hbfd_protocol.hbfd_udp.hbierbier.api.hbier_entry.hbier_table.hbier_types.hbier_update.hbuffer.hcdpcdp_protocol.hclassifyclassify.api.hflow_classify.hinput_acl.hpolicer_classify.hvnet_classify.hconfig.hcopcop.api.hcop.hdevicesaf_packetaf_packet.api.haf_packet.hdevices.hnetlink.hnetmapnetmap.api.hnetmap.hssvmssvm_eth.htaptap.htapv2.api.hvirtiovhost-user.hvhost_user.api.hvirtio.hdhcpclient.hdhcp.api.hdhcp4_packet.hdhcp4_proxy_error.defdhcp6_packet.hdhcp6_proxy_error.defdhcp_proxy.hdnsdns.api.hdns.hdpoclassify_dpo.hdpo.hdrop_dpo.hip_null_dpo.hload_balance.hlookup_dpo.hpunt_dpo.hreceive_dpo.hreplicate_dpo.hethernetarp_packet.herror.defethernet.hp2p_ethernet.api.hp2p_ethernet.hpacket.hsfp.htypes.deffeaturefeature.api.hfeature.hfibfib.hfib_api.hfib_entry.hfib_entry_delegate.hfib_node.hfib_node_list.hfib_table.hfib_types.hip4_fib.hip6_fib.hflowflow.api.hflow_report.hflow_report_classify.hipfix_info_elements.hipfix_packet.hgenevegeneve.api.hgeneve.hgeneve_error.defgeneve_packet.hglobal_funcs.hgreerror.defgre.api.hgre.hpacket.hhandoff.hhdlcerror.defhdlc.hpacket.hinterface.api.hinterface.hinterface_funcs.hipformat.hicmp4.hicmp46_packet.hicmp6.higmp_packet.hip.api.hip.hip4.hip4_error.hip4_mtrie.hip4_packet.hip4_to_ip6.hip6.hip6_error.hip6_hop_by_hop.hip6_hop_by_hop_packet.hip6_neighbor.hip6_packet.hip6_to_ip4.hip_packet.hip_source_and_port_range_check.hlookup.hports.defprotocols.defpunt.api.hpunt.hpunt_error.defipsecipsec-greerror.defipsec_gre.api.hipsec_gre.hah.hesp.hikev2.hikev2_priv.hipsec.api.hipsec.hl2feat_bitmap.hl2.api.hl2_bd.hl2_bvi.hl2_classify.hl2_efp_filter.hl2_fib.hl2_flood.hl2_fwd.hl2_input.hl2_input_vtr.hl2_output.hl2_rw.hl2_vtr.hl2_xcrw.hl2tpl2tp.api.hl2tp.hpacket.hl3_types.hlawful-interceptlawful_intercept.hlisp-cpcontrol.hgid_dictionary.hlisp.api.hlisp_cp_messages.hlisp_msg_serdes.hlisp_types.hone.api.hpackets.hlisp-gpelisp_gpe.api.hlisp_gpe.hlisp_gpe_error.deflisp_gpe_fwd_entry.hlisp_gpe_packet.hlisp_gpe_tenant.hllcllc.hlldplldp.api.hlldp.hlldp_protocol.hmapmap.api.hmap.hmap_dpo.hmfibip4_mfib.hmfib_table.hmfib_types.hmplserror.defmpls.api.hmpls.hmpls_tunnel.hmpls_types.hpacket.hosiosi.hpgedit.hpg.api.hpg.hpipeline.hpluginplugin.hpolicerpolice.hpolicer.api.hpolicer.hxlate.hppperror.defpacket.hppp.hreplication.hsessionapplication.happlication_interface.happlication_namespace.hmma_16.hmma_40.hmma_template.cmma_template.hsegment_manager.hsession.api.hsession.hsession_debug.hsession_lookup.hsession_rules_table.hsession_table.hstream_session.htransport.htransport_interface.hsnapsnap.hspanspan.api.hspan.hsrmplssr_mpls.api.hsr_mpls.hsrppacket.hsrp.hsrv6sr.api.hsr.hsr_packet.htcptcp.api.htcp.htcp_debug.htcp_packet.htcp_timer.hudpudp.api.hudp.hudp_error.defudp_packet.hunixpcap.htap.api.htapcli.htuntap.hutilradix.hrefcount.hvnet.hvnet_all_api_h.hvnet_msg_enum.hvxlanvxlan-gpevxlan_gpe.api.hvxlan_gpe.hvxlan_gpe_error.defvxlan_gpe_packet.hvxlan.api.hvxlan.hvxlan_error.defvxlan_packet.hvomacl_binding.hppacl_l2_rule.hppacl_l3_rule.hppacl_list.hppacl_types.hpparp_proxy_binding.hpparp_proxy_config.hppbridge_domain.hppbridge_domain_arp_entry.hppbridge_domain_entry.hppclient_db.hppcmd.hppconnection.hppdhcp_config.hppdhcp_config_cmds.hppdump_cmd.hppenum_base.hppevent_cmd.hpphw.hppinspect.hppinterface.hppinterface_cmds.hppinterface_ip6_nd.hppinterface_span.hppip_unnumbered.hppl2_binding.hppl2_emulation.hppl3_binding.hpplldp_binding.hpplldp_global.hpplogger.hppnat_binding.hppnat_static.hppneighbour.hppobject_base.hppom.hppprefix.hppra_config.hppra_prefix.hpproute.hpproute_domain.hpprpc_cmd.hppsingular_db.hppsub_interface.hpptap_interface.hpptypes.hppvxlan_tunnel.hppvppvpp-apiclientvppapiclient.hapivpe.api.hvpe_all_api_h.hvpe_msg_enum.hoamoam.api.hstatsstats.api.hvpp_pluginsaclacl.api.hacl_all_api_h.hacl_msg_enum.hmanual_fns.hgtpugtpu.api.hgtpu_all_api_h.hgtpu_msg_enum.hmemifmemif.api.hmemif_all_api_h.hmemif_msg_enum.hnatnat.api.hnat_all_api_h.hnat_msg_enum.hpppoepppoe.api.hpppoe_all_api_h.hpppoe_msg_enum.hvppinfraasm_mips.hasm_x86.hbihash_16_8.hbihash_24_8.hbihash_48_8.hbihash_8_8.hbihash_template.cbihash_template.hbihash_vec8_8.hbitmap.hbitops.hbyte_order.hcache.hclib.hclib_error.hcpu.hcrc32.hdlist.helf.helf_clib.helog.herror.herror_bootstrap.hfheap.hfifo.hfile.hformat.hgraph.hhash.hheap.hlinuxsyscall.hsysfs.hlock.hlongjmp.hmacros.hmaplog.hmath.hmd5.hmem.hmemcpy_avx2.hmemcpy_avx512.hmemcpy_sse3.hmhash.hmheap.hmheap_bootstrap.hos.hpipeline.hpool.hptclosure.hrandom.hrandom_buffer.hrandom_isaac.hserialize.hslist.hsmp.hsocket.hsparse_vec.hstring.htime.htimer.htiming_wheel.htw_timer_16t_1w_2048sl.htw_timer_16t_2w_512sl.htw_timer_1t_3w_1024sl_ov.htw_timer_2t_1w_2048sl.htw_timer_4t_3w_256sl.htw_timer_template.ctw_timer_template.htypes.hunix.hvalgrind.hvec.hvec_bootstrap.hvector.hvector_altivec.hvector_funcs.hvector_iwmmxt.hvector_neon.hvector_sse2.hxxhash.hxy.hzvec.hjvppgen__init__.pycallback_gen.pydto_gen.pyjni_gen.pyjvpp_c_gen.pyjvpp_callback_facade_gen.pyjvpp_future_facade_gen.pyjvpp_impl_gen.pynotification_gen.pytypes_gen.pyutil.pylibjvpp_common.solibsvm.solibsvmdb.solibvapiclient.solibvatplugin.solibvcl_ldpreload.solibvlib.solibvlibmemory.solibvlibmemoryclient.solibvnet.solibvom.solibvppapiclient.solibvppcom.solibvppinfra.sovppexamplessample-pluginsamplevppapiacl.api.jsonaf_packet.api.jsonbfd.api.jsonbier.api.jsonclassify.api.jsoncop.api.jsondhcp.api.jsondns.api.jsondpdk.api.jsonfeature.api.jsonflow.api.jsonflowprobe.api.jsongeneve.api.jsongre.api.jsongtpu.api.jsoninterface.api.jsonioam_cache.api.jsonioam_export.api.jsonioam_vxlan_gpe.api.jsonip.api.jsonipsec.api.jsonipsec_gre.api.jsonkp.api.jsonl2.api.jsonl2e.api.jsonl2tp.api.jsonlb.api.jsonlisp.api.jsonlisp_gpe.api.jsonlldp.api.jsonmap.api.jsonmemclnt.api.jsonmemif.api.jsonmpls.api.jsonnat.api.jsonnetmap.api.jsonoam.api.jsonone.api.jsonp2p_ethernet.api.jsonpg.api.jsonpolicer.api.jsonpot.api.jsonpppoe.api.jsonpunt.api.jsonsession.api.jsonspan.api.jsonsr.api.jsonsr_mpls.api.jsonstats.api.jsonstn.api.jsontap.api.jsontapv2.api.jsontcp.api.jsontrace.api.jsonudp.api.jsonudp_ping.api.jsonvhost_user.api.jsonvpe.api.jsonvxlan.api.jsonvxlan_gpe.api.jsonvxlan_gpe_ioam_export.api.json/usr/bin//usr/include//usr/include/dpdk//usr/include/dpdk/api//usr/include/dpdk/device//usr/include/dpdk/ipsec//usr/include/ioam//usr/include/ioam/export-common//usr/include/ioam/lib-trace//usr/include/jvpp-common//usr/include/svm//usr/include/vapi//usr/include/vat//usr/include/vcl//usr/include/vlib//usr/include/vlib/pci//usr/include/vlib/unix//usr/include/vlibapi//usr/include/vlibmemory//usr/include/vnet//usr/include/vnet/adj//usr/include/vnet/bfd//usr/include/vnet/bier//usr/include/vnet/cdp//usr/include/vnet/classify//usr/include/vnet/cop//usr/include/vnet/devices//usr/include/vnet/devices/af_packet//usr/include/vnet/devices/netmap//usr/include/vnet/devices/ssvm//usr/include/vnet/devices/tap//usr/include/vnet/devices/virtio//usr/include/vnet/dhcp//usr/include/vnet/dns//usr/include/vnet/dpo//usr/include/vnet/ethernet//usr/include/vnet/feature//usr/include/vnet/fib//usr/include/vnet/flow//usr/include/vnet/geneve//usr/include/vnet/gre//usr/include/vnet/hdlc//usr/include/vnet/ip//usr/include/vnet/ipsec-gre//usr/include/vnet/ipsec//usr/include/vnet/l2//usr/include/vnet/l2tp//usr/include/vnet/lawful-intercept//usr/include/vnet/lisp-cp//usr/include/vnet/lisp-gpe//usr/include/vnet/llc//usr/include/vnet/lldp//usr/include/vnet/map//usr/include/vnet/mfib//usr/include/vnet/mpls//usr/include/vnet/osi//usr/include/vnet/pg//usr/include/vnet/plugin//usr/include/vnet/policer//usr/include/vnet/ppp//usr/include/vnet/session//usr/include/vnet/snap//usr/include/vnet/span//usr/include/vnet/srmpls//usr/include/vnet/srp//usr/include/vnet/srv6//usr/include/vnet/tcp//usr/include/vnet/udp//usr/include/vnet/unix//usr/include/vnet/util//usr/include/vnet/vxlan-gpe//usr/include/vnet/vxlan//usr/include/vom//usr/include/vpp-api//usr/include/vpp-api/client//usr/include/vpp//usr/include/vpp/api//usr/include/vpp/oam//usr/include/vpp/stats//usr/include/vpp_plugins//usr/include/vpp_plugins/acl//usr/include/vpp_plugins/gtpu//usr/include/vpp_plugins/memif//usr/include/vpp_plugins/nat//usr/include/vpp_plugins/pppoe//usr/include/vppinfra//usr/include/vppinfra/linux//usr/lib/python2.7/site-packages//usr/lib/python2.7/site-packages/jvppgen//usr/lib64//usr/share/doc//usr/share/doc/vpp//usr/share/doc/vpp/examples//usr/share/doc/vpp/examples/sample-plugin//usr/share//usr/share/vpp//usr/share/vpp/api/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.opensuse.org/openSUSE:Maintenance:9011/openSUSE_Leap_15.0_Update/da8f7e681483d00563a89dbcb784e0b4-vpp.openSUSE_Leap_15.0_Updatedrpmxz5x86_64-suse-linux Python script, ASCII text executabledirectoryC source, ASCII textC++ source, ASCII textASCII textC source, UTF-8 Unicode textC source, ASCII text, with very long linesC++ source, UTF-8 Unicode textempty RRRRRRRRRRRRRRRRRRRRRRҏz箩rt, utf-845111ecb49d4566ea6ba10198f2b4da7d1fa0d886d981ca32a4c26f975d4a85b?7zXZ !t/%1]"k%w0:?$ f`WZkn# wI7N*M'c5rHKs7bmxdxCS6xT)k$d簶Uw? 9^H&d=|<.h `Rk=*U85LZmBxFe<wS/3.I MRC;Ü6wWF[eE+_{p#H} IGI[j_d"Ֆ̟qDR)Z* (?E^Gr$߻c\ŞKg ;欝qk73OO bHq-zbxo y"H8􍍅0>䚘Sr~޲׮<{cPBiZN “ O"1.f94͚ndDd9PW`4wF%;-7B-f(>X1XO*\ԇ#DLqշDr V[=='|T:p'؛=RdJc{4/u*3 Kڳj g1dK1SԂA:Lw xP)Ă9.Wf߼0ڃyhKY'EM3MS1C:݈ 62|_տܠ$5hX;<䪔碫֩ăχ8̵L4u4ƌUޘ8-#i f?lj di6 5O\623,i0J\6K }هkQ>bGCZ >, a؊&MLJ9uZ`1k_ }<5wxNrj_q } püjh]W7r!]gj\XsbΞIeBS4'6(&+Q֦G$*ElܐڊvM-MXU٨\:L.%?/g<0_ :CԀB "(wnqoAHb)I Xssɑk  d[Nꨢx%jI" b}\PؠwB'NS a .OY)(lGֵnV3>}Q l"Τ+:a-{:k' ĢWOe?d Go$$j0)kYⴺ^yJ$:V:2hE aQzSn&}S{}\.*vvnjO<4E !e,yэZآ!xCdv0 ր2xGE\1 l,jDG(ʍ1g { w6FJ~!q;W{FnjV[ǰ\ɯi[kJmM×EGh`'p_UUWk,6#\D4S=jg _(5,YtsuyB=:`GJtSΝfC$mݔk~wܧ.ls{&y4kc2% idW1_Q~C|r Y*"X:RCunu-lr E@V ktޡ[C|%'lsۦZL=4o- X7N {fWgq0;d%*;W%u[0N0IHsĠ訟;yq=O;l%A¤2xmTbUd)TʢY\ -CӤG 丐IW 3; \!Q61~ec*bdj I-$2R%NjF^ᫎ]-)Nv<#Z.pu߅ivM|'?pL!wn.Z>J$ӟ&Dt"ԭ|j=ηFaT[0صTsOhS5"bl(?!Fz_`.\tuInA9 nR~*mȵIhk4`2v'޹Ȣ9^4^xRN3eJU(⃂gtc#uDm: bl,}%+W\S 9|m%!th6PC4