libstorage-ng-devel-4.2.78-lp152.2.15.1<>,G a/=„'F rᴊojBSQeǥX3ZnOq(rOP2d0'>u6}qga/Ek!d_>5vi۶ا3'tZoXRtI3>P8P&}><$&+̑xεB\k8Ө>b{cN[i;K$aC~q m3#+bA} ~a`{|oqAl8p$>;(?d * [  *SY`nn n $n 6n ?n RPndnz.nTn8h  6 (]8d9H:F oG nH@nI-nX2hY2p\2n]DPn^z bcdqevfyl{u܌nvDzClibstorage-ng-devel4.2.78lp152.2.15.1Header files and documentation for libstorage-ngThis package contains header files and documentation for developing with libstorage-ng.aold-cirrus1openSUSE Leap 15.2openSUSEGPL-2.0-onlyhttp://bugs.opensuse.orgDevelopment/Languages/C and C++http://github.com/openSUSE/libstorage-nglinuxi586 { W P  Q  0 ?  'J"""U5x jSu   +x 'Y& ux wC !<FCO\ZOZ{8pmKs=)8 WNj`uI{!G  78787872_7=B*cAW\+6;77!,GJsD= @;>@qeo>hLvK4: ,]>d8)C{(*҈JY8m9r>79.8X77}rJ!C R( R ?C6,6\$ $ 6 O+ Ak W+ W]2Qz + '*b*{h' 4:|nj GLs1mT!G 8= 8 / z&(hK707/:IJ/Jn-tjc\z ' %GDfD {3 {D:!PGq 5 !4Go 4 !PGq 5 l'#B9&C=wt+:C8,8 D 4 rS%j'e! "F)Qj?;x~*z&})Q3%3%3%v~n*Xx%^*]: R/ Rx #KeEht $ &XA D 4 D {3 {D:!WHOq 5 op 9!=FL d, dem + &[ 9 C q1 qC x2 x D1 6 ~* ~(~P*v$ K m. mG!jF r/ rPC=)))%?fg!]Gs 6 v & O i& ieo!]Gs 6 Y& YgTd,z)*Ta> c, c-g) 7' 7jV z+ zXS Nex & n*g!G} '; '$A \/ \}A\ \* \~&.rx%!Ds 5 !D; 5 !}C x2 x#Y r/ rY5%ia  ~ * L  &D`o 0^ qe e 1 IDe 2~*)l0. +1n;#(#85 / &nK DR x~&-x%$-~P)v$!G. 5 %K5 $~~n*lx% D( 6 D 5 ~P*Qv$ e q _ em8ShU2 k << l.= $ }!7 u- W ! Z>W  @y - ^ #Fx#k8<dN2\ ra-O?h6 z5.y#?V + ) D8 , * g ("  |_b{:-@,?FUM$=MaQH!z6GNPh:@b9d8TkIB6#7#7#7#56: gGMNc0oB6Y5%czFszA?FH5;e?=wDXP9sk:>o6=?&*K79zIQ6)/9Mh606FN=.Dmig)Jæz - 2"OQ  ! WZīJe\ggge;ja7_Dp^vZY<3 6fdW"iQ2`29DЗ![ r%SNlx2T7|6 &gCkcl.lkVd}'/eEdgm)!bhA큤A큤A큤A큤A큤A큤A큤AA큤A큤aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa+aaaaaa+aaaaaaaa+aaaaaaaaaa+aaaaaaaaaa+aaaa+aaaaaa+aaaaaaaaaaaaaaaaaaaaaa+aaaa+aaaa+aaaaaaaaaa+aaaaaa+aaaaaaaaaa+aaaa+aaaaaaaa+aaaaaaaa+aaaaaa+aaaaaa+aaaaaaaaaaaaaaaa+aaaa+aaaaaa+aaaaaa+aaaaaa+aaaaaaaaaaaaaaaaaaaa+aaaaaaaa+aaaaaa+aaaaaa+aaaaaaaaaa+aaaaaaaa+aaaaaaaaaa+aaaaaaaaaaaa+aaaaaa+aaaaaaaa+aaaaaaaaaaaaaa+aaaaaa+aaaaaa+aaaaaa+aaaaaa+aaaaaa+aaaaaa+aaaaaa+aaaaaa+aaaaaaaa+aaaaaaaa+aaaa+aaaaaaaa+aaaa+aaaaaa+aaaaaaaa+aaaa+aaaaaaaa+aaaaaa+aaaaaa+aaaaaa+aaaaaaaaaa+aaaaaaaaaaaa+aaaaaa+aaaaaaaa+aaaa+aaaaaa+aaaaaa+aaaaaa+aaaaaa+aaaaaa+aaaaaa+aaaaaa+aaaaaaaaaaaaaaaa+aaaaaaaaaaaa+aaaaaaaaaaaaaa+aaaaaaaaaaaa+aaaaaaaaaaaaaa+aaaaaa+aaaaaaaaaaaa+aaaaaaaa+aaaaaa+aaaaaaaaaaaa+aaaaaa+aaaaaa+aaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5364180de78978f56e26dd7a3d542fa37abe5edbdf1f9faf318f418079017bd47f306bae643a02f51cb82e7a5ca81499403278562a405ceee3445b018be85d59f4734a53e7a08f1a581c2315a5c2ef142a773cfd72b2a548639f5d659ef6eb6bed554ae946ef1ddb6ee24130772469c3522a4ab95a95afe163be5d0e444b7c0ffb1290fdaf3b9828c37961be6c15bc6208c0133fa7bc2b93b03604b35923639ddfd0b8585470d3fd965ff3ae643b093c7d2a1ceba6f9e46aff218d5736b151cce50b8f6a593d936b03b0e172f4989b099ad781cd61ffeb78e0d80ad1bf8c1bef166408b50c5ea33dbfd24d2c4aae8f993d01eb19add7ebdc6d606448b049e88540a343dac6bb23b9087901aaf16eec1a28b039b044a4ba717956f23253533a30771024d587dcc13c6e8757852ed6ef559783a067d716b4af314d9e9a18aade1dc421adbf4ba2b0c7969ef6dd8c17830ea8859e6a78322f921574b73b6ffe0467dcb61cf5c569306d1e91438bddabd17fcf8de131e4b8f60535adc049a668fd591e7da27f107ef8c76b085e7eeff1dfde176351cdb9e06c7eb4bf5990c52f7fa02ca6250090a5e4a235de1860a361bf03aa9583f7269de1344acfb5424cf032337385087a3c75d6ec3e5482b47970a7110cfab54ab45428706edbec641bc6fc363ab880ed11771236fcaf444d3f7191bcb8c50f9eb23b6af59556b9277b2747a6ba54632f81efb604386fe464ace27d66f9857d6e7e8edb5ea29c3ca9113891bd75f0f3f8fc436d47d7b787937ef8eec6e9436b9326f33418772ed0aa742f0056f87d49b8be14efc2507e1f0c390c1559a3bc22e8feb86e695543b1d439915d80258289b42268a5f1dad6258f65040b6fa8be745a2e77999d1f7320d0049cd839a3763efd1b79afe07d14eb8bffd454a1554ceee9b464bd407710430b507000d0974703a83fc6b7fd2a7581faa1f795949c5607456f4ce872ae41ce128a3adb5ddde6af7ad5130271ca985321d23e6b1f4379af22243cc32c445c6afe28ce39713d7e063acff8fcf925b7bd77e77622f12b819080940b3dd0f0174e20586ce2eae6c213044474b93b300ea1bd43261e559537762a00868ca1d8c9ff8009cf8ea6a168c3e3f5e703245ab918b629865dbcdeb2f24233d1a06273dcd43f9d240a217623be3b524b0a8902e1eecc258f3d75c193f51baa8787445943898e271b643f43e3aa9c259e3f461f9faba22918da23296d955bae8d1e8f91eb0bf89991337f1597f40a3751091396c2a55245029015673c9790305336d4390ba22137a17cc014ada627388af962b5e75e44a26e1083822684198292376ab2debf3956c496f563713d6efead76278e495a86ce4e172f62ec7e51cfa5e069781f6a96c6cbd8c8f7d2ebe3a343372cde7f84e4fb086ad4c644730345cb7f799687d8f362e6a21bcb1c616e039a4ed8687956080a7427fea8897b18bbd64c8f7f4d440af870a3bf8e7496f0f280449935a1a91bee3285375f749d41779c715fb1b2e6d349c67cb9799b809ece74290808e7c38ab601937b5cc3938df846051bc44423f76b94abd332ef1d366535214b107f6588c964042a6e48bfdf1859a79b19ccdc218635da1b44658cc87411bc50f44f2db9b7b70e2df690dca74ce8be4b7fb43da06a0b824c0b16216d6158c6890a034d881cc6cce4fa70974b51835691351328993609d94f8b992268c2983085fe1eb07d998ff8db520e20db393e8e3c70210357f81fce211504d82970c48e649799e8bd2d9147787ea3d63f7dcaefe0eb3ee9d405a28713965bf3760d259189eff6fedd95437b13aa39eee1bd5302b9f046dc8c5c79db607aa5c9437c4edbc99d2b2fe75974d3a722569c380ee681d674e74fa37b837f76fb5f716ccfcd2b3ee467932980097425d49c469caaaa26fb0daf9a1dca69e2d506d53206c8df65362135c49e3b7310d163c75e457270caa3f906686f69edd4e5f40164a90455d51215832c6f46822497fe19027fdfed6fec13ee49c2de13e37c3468b8c6924e7486e2cc4afd5955bd688daed70c41f0b6e7d477a044cfdb09ccef1ee1e72784fdc80962667392d9a9fa025998289f2351bee82d3a86bff48896681239c12d894e332fd8afa48341b647dd5e0e7b368d3f1f5c09a3a5ef17c58d5bd3487239637913fd70bdeadb50ae4fbb4014394be962d6ddad65e435e7fdc0575c17d7daccd0fde74ece542bb5019daefa7184a77a42088cad40b8bc02751902ebb5b97dd84aabddc4804c0f68e7d59afb4d2d73a6218124aff88fa8c95f772f76a38df09d7d6151fc5fabb84f5261e2780d9efd2d075ad2ea426b2915f3392382099bb4223ac72db50332ea6008b17df382cb866a3a1deab09eb0530cdf9458b5afc547a5e562e03ab5efbcb1e33ec835ced4cae83a1488869a1f3fcd71b03d881e5e97ca592675326d8b169b5c22fa064ea76a6866b609d0a90c93101309bb18eba00e516074b836e64eee4dff41b70e56509d8907f90c66b1a00e4bebf3fcecb7f9b869fda57aa366166edecc2e6bca474769bcc7c0de14a094c7e2d70d308610b281563f7bd9c2eef88c17ba98106aca650beb89d8f931f3bf0f996d1fba741c8cc2ea49c7f7a9559ffce46a873a3003046ccef3f3a617de4efe12574a835ef9afdfbde2e3d1b1d17825e9fc1768a2bd4a56273a58b77df0541191d9ea67e4fc8fe12ee179d8f7807c41b262b6cde5d4dfb78c7aff47d4d21fa59c497fc1579c1c118cb7d717ce483a94bac718cf872ccc3b5534e20b06ecd7326d002435874829a89003710539ec728a5261c38d8b6629ae61015afcfdcdc5d459249fb86e73df20c7472d397c167797a7910f68ecae4b8e41d540677466b38375ef11dab09f2c6421544d79db1921cb17ca5d0eb6d57292de1954c1e6c20f5a282f8082a7d729e320981f259c55891f2d66f5a4760721f722334e09f9b7c5e6853b5795b1a12c83350e16e5e97faf95306c6ee0418e4d9e30c0f9f608f79854cea8c1f0451ac3ac22f320c6e61759d7dd7e0e2cd22a20ea82eed1329f45c187580e3df61f3710a5f7bee0c8eef3dce7ea239af5dcb68c420d6e9cddd50e0f6ea0853a34567f747d7402646166cc58155cb418ce62e428ec59536f98144472692e384f74c3093cf325a127106a1ed308ecb4f4953025855be49e172dad8ad92e0af94f3d2d7cbb3e300b896cfea3d1a7e2355b9e870f93c620a653ceb6213e4e1dc9ec6d71868c8a2ef539ae8d93d8b81128753d6c1ed45b695ad740a81ee240458fc5ec23fe43b18a21ab6cc34dd906f49f467b303f842fc317afb5a8384d5b2c2a82e77f1cb28353b780b55150b1fd30990d509539479cc810f91dc48c926acce3ffc20d8e2721b36315094346142d6a80aee1cc90175c25e5a4a46952e53e4d442dab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6d14a7b738d9ae882cc7bd682420ab23528717776f329cec55430e442c9e58eac561eb7e94a3a32e68964a56b9e7c8ae3e9d101feeda9eb6037a59355f026898c23b928a2ec90d074858dced20be4866714e2f80488ebf4444ace33433bb606d23bd55805420a5b74df868d70b69bbbd6508c5d2145ad53aa7d121168e018a1dc7b705134cdf6a49a38fe3627e3ad0f99087bf6ce4f34456362b5cc825086aea1f50447131b21e3db031bed55926ee2f688b5ac69194572f1f46e01315e4c8b6cbc67866586b1a80c6804676cf2acf6b60c320ec21fb6d6263563fa9c151e623b68399b6a81cadc3898c19adcf0bdf17ae62ff8d58cb88c85d7f66872fd4e2fa19f5143568c3f76b628ca66dfb234c1e9a2c820ae2bf24c591ddc18f0bf3a635730b978060ab59e7b26bf5925c064133e92d35d1c83111039c4d2540ce706fa829d666204a1d9de3011807ea7cf2746a68c2e80e07c49557bb71c3a4868e3ae3ce40232abcbcd2055c39dcd7d82ba37222e6cf662132a6f8c24cf60e754aefe30c53c0c3a7fce7b650a0acc4e2366ee272daf6075a2faa2855e3b9646976e3cd9dc45f69552cd03fd2be7889b68a10efd49bb11d3a2ffc56f7ad6b9b767cf3aefeae549e2e609e64b2e39fcf75954261ec0560a83cb7653ecd23dd1100bd155d599e955a939fd11ba808b4f7c56d78a581d79847955f37b81a145d4538cdba7ade9ecf4a014d892848b47925559dbe0ddbc960a6d6e3748b70d904cc1d74dd52816e3577b03a989d610431da05ae24faac2634e1319207feb5e4568c6ddba3414969c29b57290106c553f2ab47d3dcd62b59144484743a62b2c8444a3900f48acdcb547fa5e29226bfd957879ccd156de58978fca40937716bf586b5fd8e702706a58c9549c76a498cced6192eb905074d8f54486617288bf04a78591cbdf04e94208712a2c0583e5d67a23498d8184f4218f8d7eb36024ab0a6317a20eb88bbe4eae7a5e3b5983600202efb80bf0dc16ac1838789f7f228edd4addaab7e9f132d4ab945083c16c9ccbd4841841a1b75fe25e442832a4fd3e24d64e86f7ce90cfd536e714a9d9e1ff1b3c354799cf5ef030217c07ada6b00b9a86f432783e8bd1c03f8e38fb5dc40c4a1c92ca598fa9b248b9ea713e278bc07e23ebd1119063e477bab0d657728f623634c05759bffaf0b040f0939dce58e63b56d7c7f21f2744e29355a7854e798f4b731002bc1e73c491cae9a38b05dcf6a0d55a1866cc2347989e6a84376f3ba4e8993914b88d66870e2f8064663259d5181316d2db99c6dea816418f9025aecb076d3ee34b46b5e9b7e51453ffce4a3eae2946ce2ae568137ecadfa2fdba02570690982696d694c078eeabd93dbc69ff3aebcb461e4c9d1478cefc306ef6e3df7bc0724c6d36cd4d05f91278c8fcb2f94e163221e1fc999a7ae28ec50965679b8ebf7ce0823e0e428bfa09687deda2934184b876a4b90e2c98a2afb0139213b5f42a788e9e266e6c28a65488f3fe58253112f0b619fe569afee7cee288e92c6c2aa268ac80c6bf37c9a41819fc00ac5c068dd3520ddecb5c04ec2372ddd7d4e840be5e73361a37c41bec39b665fc34437394597e9141321e39a78adee5a8e3037ce6d07ef69a2f5a06c2f11f5e7d591902eb477fc27c2fc6c2dc38c5ecdfbeeb662974f2b5d4e4a4dfefa809200e9b43686fcc89fc70146e81bbc119127525176ce05ae91185ceed22c463c33319cc58008fbd0f16004ebeab50319f8257ad50d81853ed265c5f365eb1af064e375dca7493e742ada2753b09831c2b75909cdb408ff6dfa19cfe45fb79bf0c1c5ad33e18d4f466a7d6bdb0699c8aadd6a3dc30c34f4159782cd3a9d757bd6c668f29e54318ad9eb49b4eef4e65d7869345b47b3c6de33da6daa90f4ba090934f4931233a968c8d5089e962a81108282af7d38a4888b9d446000df4f21d32f6b32d1d2a368c85086067d54bbfb15cd4fbde1170c98567bb265df8cd2387825e70bce30d7b4e2f9b6ced79df90f473e58a7de9b92bcaf587befafa6f012d12bd29efc60b02b065bbf9076fd112cb68d8a6160fece4fc68922bbd1e4ec223fce82bc4b21e4ff42babf7ace101419c94fba6c6b73250d403653aaccdfd407fc13b5de5fa34bb81b2917f53a2e48b6574b3c6b5e3abc6dfba34746868bfbe998a692e0b64f68db76bdf5d8bde61c29ecceb430626c3033b032a303a9ba386437d3117ccf31261e004f673514e238e2529e40e9379b41474b19a8075f07f095a5235dbaa80692c24ec4fcc6823426703c69915e30c7e6f579f68e53422d14de6349ea69481a554370d6ecf9dcd222c3224581ebebc12ad0f090dd0116dc2dfa571f9374cb48843f0f394c18a44d5d4ae79ae23c92f86866b5937a631f540ec9e0403c806bb9094684cf945399aa50e37cb0b9f88799f14137f0369ace12415f5e410b2c0dfff9564d5aba581bc289fc915520803272e9b999bb7606fedfbacbe7b656205fa5fca80540192f64c5be27eacf2b7257fc7418e09401b62d93ef1cae277fccb184c84812b0cd03c678edf723fae947cad6d295be9c57d5cee07b82645d1a616d00e2c1455e9fc917f26d8be216f96266fff9def0426c8bc5817933702380750da848adbff1eefaa21a8b518705f844b1c3eafbdfe6c4499a2db3d55b1d0e022e545955ac3d577585344d18262c62da1392e739bc8ba7cda1fd5b7360b87edf4fc4d50e9d4b4f41b84e57d61d10c0e437104a59baba86186b24e066b81b1fa5cfa94e5aafbedfbc8454e73fb010a75301baf19a8aaa078f9980fdd4cd6db15eede0d58ac41364e402099041b2285dd8fe30e232b8bbf5ba597a1666661236cb08d553d5ec20fa50eeba6c390dc6c4081aec0b93b9174ca74b7be8ebf547a92821e829e28848c0bdc445a976fe6864baafe925a877ed07bf66a5d80461fcc0280bb5fdc0128da2d4b4689d6986e8f397a9c5ae5835ae009d8d598963e0864a27bc8e7677c6b3a963c0792b0a278204d3159ea71062d0c32d8f272340bfa69f15139a07099b248e8ad1836644f15f8c47c307152d33f5b11dc1562e3b8421de85e1f1ea513c23a431f87da885117249d84a22c396d72271117cffe41d9f054ced7afe8b9ae3966879ea900f78c118d139af9e56d303b26f14c98a822750ade668b6794cbe82f6e88a50db2d1a3a276483ab0d285964bbdc05e8214f4fe76b48eed2f16eb8f57f68e00a0764c2810d69383d88e300c5a44c1bd9879d4a2f8cd9d915fb8b8b2b59f91fa88320908a18b3a509976afda37a8337c6cd80d0c6e7c418b793742e7a2590500b6d42087488649b4054b2610c554e4e3944326e9483fb3e314ac4744803528dc68099e7ed0ef70f99bb7f763a48ddd95d5990e103bb145eedfd0a76d19c122374be2782b30d237bdbeddfde4aed01f007264cc116b2d4be2f398a7cb74ec7a5bc58b1b412a2895a94b03d3c598e8adc2ae301f9d1485ed20e5b04530a2bc7ece4906afb367c3fb9d5d852af0804edf50e7a922ef165ccaae6cdb59b37c1efed22fc4a2612137a017d279e4d7b53bc8ab74fa84f20ecbe938352c375a929ff2af7c76b912de42e747b7ebe0f4fb01b6d554b651a89358c927000d465d65f7a041d4f8800945f9776d9bcd8160dfef5b178231a42ac4c190d256ad2972cdb65ac5eca7457c517d92c7a135455baa98b2746401fe507cfb5e39bf8ef5884ae27803c870e82ac7a9e7293a7db55ded639ced51d952eaa8f367e582889827a36c448b8f6e1f3ccbd09ca1d9f11fc9ccef3a2a48861bc91f97ce84292c08c6349e4db714b09c44954cdc22a854d7a101e4288be616ecea25b81fe2009ac1dd6562d138e7b734ab82cc3902881a2aaf6f351a984c540bebee8110f129d41a99b983ce632ee5e445698096e7418cc224cb2e680687090e9b85ed1db8487d2044da43d6980212ab6307630180cd5d57e783415a0b1aeb343fd60a0a3d024cee79439d692c71a736f19b7794843942fe34d56d1998d6e611703fd9f6984eeacf9a8bd0e715ebd0f34ca8f7983183c980fc43dc96aa77e13404eea9996329cc7dc7640904cab18df2e993f418ebcf3ffc299cf4bb6fb70411bf78aa15fca9d497aee7852ce7552012268b97052b358062f1fa00afd221b5973d2bd068888dee1a0db199858962c69321a727f603b7a598af5a57443643b3be9275d7616e74fa172eb32f6fe6afa31721d04efc714c6a98e48fcb62b7d241b50975690182c3de918231513be66700608d7e5cddf81adb1d709a937a87af645912df85539aa69f9d2ec60069522bea9ba2beeaa7859579e9c10529f5e74520b55695293d7756e1c0f258e5ea5f4c759c30bf626492d2c97c0c60a14b41c7e196317a0c18117e4e514da8aa2b6e6d8280b1579cabb43dc74f98224e55a23f1c2e1a7c3490320641c5f308dcb81c0174c2ef3f433945c622b3e33529b734df2facb4b66f32b51627400b3b9246b4bd63714855207e7b4d9f56f35bcb46c8ce6160191e91a614bd21b43f0ce8f1b5d92fb8a6ab140823f3fe27616d3b7713904e910f1d0f36446f2056569f9d6cd1c0eef39a778421548d816b3df69995e9fbe6679b46eff7a69e7f31c6d5f2e619cd1099c88e432891ea75a097ab95d92dd7248bf8f329978203e5a21e370dfe0b40a782d0550a76b6b5af486ede21ed3db6f208dbcbbd3ce1397858b1a1c5d7598a556c7fb8b69a5665c8c42e8615700be9e7f8591fe989ac2c4b4daf57622701fb7f56e4d95437c4790040682be09e83db592aed00eab58fb6d8837e0ad9be2da74cdcd52bb1d96de7d8c59bbcf242691623f1e74d4148d23a43c9930273f03524e1d3fab7586b69c1e9b1daf28e98ad9e412b41561c905606a0487d533ddcd91d97eff2f38cc92d4a0e2de68d4ad9e69637b0b65d674acd7d43535836d05e17a1bd85b222e0b46c036b1b43e697ff70fcb1ab63ab2f91fb5a9dd3b3c9cac5d95b3035ac4fccafa4294f5d0cbf22bb0c4916cca2bab183c801ddb5fee70f71d014b81b8b9438cb958211e69f59f3235c1ed4a73492e77887f658f5d372ce5b9c83e58954357809ce69cf517ca23066f90a122cd6fc663b2a6ba586c2bb04b14e815e712799ba34afa247ac35c724f14ff8f73c32d3ea92fc8145a15265b3171d7afe3094701b33b9d2f293e3c02ab742a24f9f62242c1ffe52135a78dff8764bd52dbfe4ad656ee561142e31aab0771a969f1ce38c388444221511921af5c6319d20e43e8b17911eecc3c7a9b5791969ee37e8dbdad7b12a3ac30a492d4a2237c0aef253555bd1040eee008eb8f5b746dc27fb8fbb9e6c9d765f0f31a724754414ae3eaa8a37766f529433fd7b0f34d09a433ead51a7ef5b1d97ff47d2b271ac20d884780d92f4408df086b0fd30cfb39ac32e27f11c0c6c8a91290ad5d7e20edc926c684d7f7e53e54868fc76b3a036112db09cf0964d6d798db237c9d4fb31e8827cdb10b76a939fdcad6d55971d0cba99d769ced0e8ce802fc81d55ff6d34e927211a37047aeb5d78a15486c148afd73d91353a08747db1bbeb3bc1a395befed68ab8d970bc07fc9da65fbb07ed1de983955640858914b71bb43461d9806dc20ab43fe0f026016b037a85f56fccb764ec2e34c324344f92d7a13e9c90fb745ba0918a631b75ee2c8eab3adee73764d2e612c9508933469a38ec35cc8a066519dec1a5e5dedabfc8e14991bd1780d8800a01e19ff1dd2bd4f1e3d94d12b6088f16475d7422c9ef9698dbf3f4eaba012a57fb18ea1e975c2ed9765d81d9aff34d3d6d87f167c6f72674f11b5f77514bb0917c7ebec614d5c102bd214db9b3db8a50d3976ab1778f13253397c316298553173083d8def9544d3482b7f74711d4dae03bafc01a9b0fb2c1790d2881391d881c23cafccf050b324f57c6c9bfe70aff46f77852af659ea64d9eba6eaf94188f2ca4ef6aa7bf18848eff27a46cdb97f56b84098e547e335fa78c85afefea1bc2ed28fe477405dc06a5029c580183943e39c275825da4b4e4be29a3c5bfba9500503b9fc7346df7edee0b66e13310ddd1700651221ab9f5912dbb8e6c3e0e347fac9244a5e091f31edb794acf1e5e1557d7a97cd57675f01117544e55798a17396ee1c445904eed07beefb813c6adcd5025974369d34f7394d31a9b4ce21e822972f99a5686046b9e2a3ee8dac25aa12e060ff3200a8ba00834092eff3bcd4d9a7fecec4295a4d38a51fc7bb0be3e8a9288808c6e37465a65947a57edcbe57fa14494f325fee6835b51597608502fa1059e4b5c76954f4cf9b500469186394e44f12c19b14559891429a79373a90840e0af0b095f323754ad2430fec2bf5dc8984ea67c6d1d73a6f0808d6bc3466ed212957ed15d350846e1a77d9c85add833eb42fab386ee9085ac9543574b2766fe48594091f2dd45c03823d7e494637815cb459c3e680b819b8454d200250ec7d2ef4ec3c7569b2b5f99cd632f99dfca404b217da1ceb0049403bf893a0d4bdda09700ebb248d26ce7a948868a6112a7785308984b8f2a95e47b620bbc5acbf8559acdbb1709733d8c60a8349cd8b91b08dad6c64f3234e9187637379a06c419d156b06a2bffcef76f4c2e288a7d1ba1dbcc1a3cbb99c704173ca5ec2c0a8bc0f146386a0c62decc238fb8a7f68eb27316849e3461d66eed33de66e329c2001cc31bc4239f2ab2f3c89daf7a4afaaf6beb9d1b1531bbb0956383dbce97efc044f877b4b2a121f0702cfa34721ea780459c40becc6123f8ba86f14e8dade5bbd048b72eb4da85e500e635e5143b7ce71faa708c285d99289bcf5ff434ac9f458170ca97dcd3581d19750b5ded1c2b9ebf4ee9b485626acaa868c4a4fa604501fec31d1ed355b2347fd734660d0e89d15f9eb22ea1b2624e1efcc7a234ed64e6a975d2ae3203ceeb88f6df791d897460c98fd9991aa2564d54695e0433bd06f1664c75f721cff8cc3ccd056938b580d13a67b4b2cc81ff06c2b3a1cc18369df9c7ef4c0b3bba325a0177f0ed733b1b695a30cb2418279de24a654bc956497afaf84408e13d8d5815318d9946766247ddaac7e17e27edfa9710d9d6e5d15f35b4042697ec33da72c473490b0dd1eafeb5db99e35e89c63506e20b80abea32c23c26ce7c6b290e6d4729d98d4419e52eb260026f898c7087e369208c58c528c87410c307277baff0c086d1adebf433b43a2c54aede1c67fa407b24669904e8863a351d0adae6ffc709b89fad2f4d52e7c6c87a33760f7363d2142e4855f56fae1a2c670cafd88a9087ba52e28eb8e649829013f83f27d53575f5e5a308d2146b6bd0f08c1f93e64ad86cd8bbcea388593005579674a24070a3d01fb7f29186afd544c1fac9562506c6cd869ce354e03a71e34cbd0827e071da87528f608850c2db22e70ab6dafb0f7a08a06959da7ab889a15ec00fd8229336129597988b19875df8771389ab93eaa6140dfad4f2221c2ac1b5d3a2bdfe5a8cacaff1f1da7d10107b5ab8a8f5d06974cee3544b6830951b97bc31a51fd5c3d263b9ef6b567bd1f99d2758adde39c1c1c373ce405a14cd1fb64c5e4d61ba0484b9a53ff369a30f254fd414e826131fc2ba6637c0d896394109c8849941245469f9d6e29c20df13a816e41892702047038f16d73d1e3e9b4d072b186865d5f51ac4e1d720405b16cffda3afb25988c8e1bb71b3fbe8873f7ef740a00b2ec218637d460d0749946221f9bef75393bce804901347e8bdffdd3de058484b6ff41f31d6afa1e5b694cfbefc9277ef0c4ad4edb2fe3ff493fd907b66e474f23e23d79acfb0e715e0b0085fde3c0964eaef0f125b6f237e1fd911e40d54a4954460eb445dd15b0e57e67ea84a6a0c5a2cb1ae5271f074e0beba0505bd8618ff502308bb1490c2bd0eb143d72a2b8e29df509732bc5b9809b51cf94fb58baff7de89a4d99ff69ae9f56302e738a05f8bace5052912a1522d25932926012581eea34941d45216150826448d533b147698d2f8b826e8ec984b0cb3e26ac4c8ef3dcb2332c3ed71b22fc9e91b2dc086e5fc23e47c963125125d010fd6d63e6cd8d9d96d9604f9d7ab8ca81d137bcb1467c531347c65ffbb6e9def9a709c77c7ad6d80fe4ee829024c8f30b622cabe2503ca95aeedba643ed7e09c07b1fadfa2092b5688b9cdabb12a72321ac12f7a92194c8480fabe48cff8ec56fcce950d8d09a6e2e907dfca2ab376e49f7f80d4a28ebea929789e2d55a447a2892993608658b5bdea86ed93f9238e8be1149defbb0741740b751a4dc9c8c802da6d12cb8bd13ac116de3188461a5b3977dc54e45df1fb9b67da360a98b555df6aa7793e0a6fdfdd9929dc46ae624fa09ca7be99f6632a1fdd3ac1e59f0f53693ceac256a79ab02bab6d462baceeb4e02a61f7ab8c14e4a4ff523ea4c22f34ba07b2f888c1c9c7a7c04519ed726fbfb6a2c1242628eb04d6033038d14f92f045d18783a0853846370a508eb5cf9d6bde14eeffa3c0cb9f423bd2a25ba33713bc9e811e6b929c396314b78d2d19638802573271c07fc16354654527f309e9f1bc56692d09b9a8770ca8c6d78287f4faecd633fbd5a5c1f2900f753a0d91c32aaadb8ed925c3aa95c972b47b0741b1abbbab1ca1d4b79d241451c221581c8a2de025293904d1685305b0e53b9bed43a4b8dee5c00a76d04e85c8ef0b97358f5a330f68081f8ecf722f2eeb8593f4167796f34d702a01ac7a1137fc694c0ac0622ddc1aff0ef061c7b51855fc97fdd920735cee4ffdcdd965179e2918e856270cefef69cfc2928753f8a450d3f98a388ce0eb4a46de3b1179aa8422fd528d142925d6d60e3af46a5cf80176ee1cbe1df16bd93ced32c9fd373ffe6f83e5484df4ee403be76232f53bd3782ea672acaa43f779245a2132b517ddb844da90129834b08192521f15635aa880ae83241ff9aa292e4cc825f524c2c4d396cce065ee325196d8c424ba8e2c01fde39030c017907b621a61a54bf11116d36c92b1d475453c1f1d36bb9d043a48e7536365840da7556f794c593de1ba3699eb3069e71f2e1c020bbc448bfc539f4ba24fea2b9d6b3798c8ad0f3667e9ed203fe9f35005ca4b507753131b5209d80f972ed930b774c82a22511d9620412e1e773362aaaf4c8b1024bc4800295fe3ffa702d00681903815f20775c9e2055a5e78baa16987c8656f01e995436c8ce37389a996d770ae498454f73688221fde57901f1b07705fcaeb9dd35bda3c12acd6e009bd2562b064440e50a4b18bf878b3d0a07acf589cc3b284a53d2fd1c20f2fc5012fabee280fd2c47150d8a5c82c37b187df9f6d3aee3f471b1cc136d096c13a17edb9e59ea9592f87e1bd3d59ea40f9f3f8fb604f2746a06cdf8e352d4fce1fb2053e71bc186b088784efeaba0094044c748182ccc4c7c643de1f998f5c545b2b1a6ac6951cf637fae0a7bbcfb08160f8fa6a2dcaaa290972fb99aa1db7d900bc5e482508fb9f69b01f31832da55f16524b1129fb94f868a653359ef485ec7b13527a846831e98f474b6cca3dea51c3774dd1e1fd88584f8091b5264747e0dba62ecd078829dc813480718dcfe068d9589f76ef8d44721e0b6c95be31fe67b31185abbe3293f259ffe64adc085fe8e70c67ae62604973579361c1eaff82a08518489f2c45470652bcc37ebddc79a058757079a73e649377929a6819482e9d5f5c10e657c0f307efa08be50c5b82d36d75ebc9db8d0341e0523734e5ede4c74a8e1a48fe0a71b7149c3ee9e6aceaee3c816a7f314067dff1378c276a672649b258ce85e0e6dc5927cfca27b65f0407b7e23d0416b6281bc722d3780210e1658dc09c9c5b06a55501f34e399a1cc577a2612bb916d5bab979596e2b5f306b1ed584922f327cce347725730fc07265d2b77feb19b39d24d95b3712ed26c7cd174506d727526f1e0ffae7436535db00a01bcc009f222cc2ed81c89ede3811ba4ae276cc463feca013dc765a54c1396c1ea9e8edcc61935a2f9a79def461af13382e02ae02642a7ddef89a49b68ad743121653146e8ebed71247209f618a660c145fe43e411dd5b5109318a3628e5206c13e4219961c38aad252344715672831b81addc3e08ab8e46b37f3b590b5d8da38b407692982eaabc4c96ff70ae0237643a7911b7bc47f0f2e69f72d26c893a4f7912c545a27b3eeac0b71c13d9f8c3f479329578b5b8c6c66a896b6ed5a96683ca92357f70f9ea402b7b7ded75e6d34fccf038155416e9014f10f1a3ba764b10848b5e453fb68cfdfabae5f47be1754d795b26c0364a9d71ccbc127ec519c62ed6060266f86fdea5cdfa275b46338c1aa81eadb849f178a794757f3b339c9339620dc64ed706f03dfc4d7a6df90d08a0733e0706324d476aeeb1a5f1a9fbde66a36d3f2f6a198501c4291e731ad10a9b49964e6857fe053265efcaea9413936b9ff9abf43d60b7ea80b87a1c4a51e2fe07d32c934a038f510aa0bcf15f857f2a73c17daca838a3ee242531534dead0c7d8f9864431e6682bdeab6a1ff3fd0ff0dda45f4a69b7ccfe9adb4139169df3e952f712360ca084565a64089c6c31509005a7520d9fbb02691f471f3db47ba377e0b14f7f39ecfe6c6259f83917713926aa8bf68930e7f9bc9b298db894887c4500d983909cfd575b98b9080ff261c6c7ee406e73d9f11f7781db12e1399784f3150065e372cae3c40fa65c508af60a2c2b130d7f29e1c9f19a2ddec2a14a0ff178b4174a916422af0ed24627d3d4bd753438fbc7effd1ce7f3de6a10d17e616496c34f3d07732330d9591c1326a1652b07c7c5257a2d24eba8cf4c2050226c20f9bc1bb9c7aafc6562d9c94c13d46073cb797bee34f06c4efc6f9a8f0f25ad74158f8e2848261622ebf1fc138db9c80446d3d463e93c7a18766aa9318f5e790ff01d15fce99f6279d6f961b679b22bd0c1b8bdb6ad1c0100212343a4769baa03dafc5bcd87edd269486b96a56f83a9c64e49f41bd855689a66dd16c5c179da743b654fe611ce615abd52995f8fddb2b8c704d808ef1186dba1d319d788dc050bb32a431a89e03705915e6b195040cfa5409bd54aba86c1fa2bb9bd0d6700fe663e78bb5885c24d857d8337026781fa9e9a1715046e3ee0ffb05ac9e280c6dc0adfab05bcb21278d8ec576b7ee0d1dfae5c723b7d92aba584462468d03248c4efc9c95fe8e171ed5e6911957401d676008d53480ef8b723b6fc1d5c68e0788f232d00c72d23fdf69440faa17cb225c2ee591c93e3426132abd1341a24a1f1605384c79a165da8f80a7dac409f2b0eff8d08b64c334a630e5bf14633ce2dca1881819407345dce5d2cd4f4be37b1539bb8fa49cac613e720edcaeb87a51e1a267588b4dc7696520690cbd5e2abd0feb0f3dfce0038e8c318197329cdfc77217e8025b747bf4834166d1fe8a9b610325238bbbca153e6b0a51e206390c5e1c42a50cd03509413f512747af1ecc513a5d7ca9319057ff24e882c8bcc56cb035a1e5a8c4712fe38517774bfb811c236595bc5ab73290320bfaef77e033c3c2beac40bce11d036f6bddf5d6b09cdf78baeea75525bdfede33aec1c80fe884b9611c248351e5456e160d758df53ca39139ff7f5d78344b441e5d0ea70f2e2dae8af4a740f2bf81c4dec61bcdc67f69aa668e528d527cea3e4a5d90fbd1e9ea3953caabc9379156e4c576dd34aaf6ec22124143187d95e24d59d766122d12b1699246f0262b3d4058236e9dac6d4e1f758e1d34e38194df81c5f129f9d447d73bca606186710bc115ba06a35cceaf9d4d9fb8879ed8cb99b2f3ae4033ef19d3b34d91fdfc0bd0cb1edbf488154b998bb8be0df377e84dd487998a11e801c11831c7add6c24e94f03b6ae2f855d551fc5a954f82336843e51f4d4b39c0603f22c384e0e93bfaece97f010f86fd91309e77bbf40bf214c0faded9f3d549a9251d46ea37062d817dd60124c11f72a2b15ee82ff0dfe2f9cbd49fc5e3b574fa23b3e94034734c78b813459d3e1701fcd10510a8b044e75bb156053664f4b0325b03f743791e8d3332b31d429e06c4648ea2d4422842ee78a7f559f23b326e8f282a8c23b7a7a3f9e7bbb6fb73cf6f2f176c0f919328facfff84d3464ca9098c1691c39582655efbbdc9afa2bcfc9e6fe742a9c930471d4c4fb01bd0a8aea5968a87fc2166db9b48689fc4cf09593bb562743995684317f6d1c706c2d513a45d12bed0243aa981349e60c2d1c53906158036988fff8b677845b2bbf1edc7282f6a2385d4ba9f649e6e7270ea11551365b4c8334939138b78391c2bd69078bd35c17567862b96b7bf889393c94a541383f4954094b5d6653c05056bb2c175b0c73ca5e761c7791ccf9773b2de8037ba11cddfc78a1584f72a0a110e4cc2cc98772e2b96fcd7dd59d00cd66c30ade235e96d4a354cac059d27973fbf0e1eb26683456b480470a127c46a8b1bf1c358dac598ebed90ab995237f51eb8146fc858a492a70b76ea98f8a24033b5ae05fd353947f0081358bd39bced3e417ddc74b7966b457bc4e3ddaf7476c65e2a1eac8667007c3b376de15586a159d0c83ae037cb900aca7e29728e089109d59604682f779ba0178924f57af9a607b228d3f92abd5ed5e9ba098d6d56a8bd5d3407e65254f24a1f7cc392b99c344fba0ea55111c81abf16ef7865c0bcadf5a5c031363ee0a89bb827754a8a7d11b3aef1d043209a869a20278cd69d50a94aacc60fe6517488260c43b7428d01f5c0dfc17f0639dcd67ae31ad11b291c979dd50afba5de05a4b7eab31b395ccdf46e1008daaa188bc70ce8125f7f0f7f43bd1c0fe2592e72cca445e139691f9793117f2e622b5e09bb2612ab261c63b9e24f27493dc5e0250a13e4aaa67ccf9f875948b7eac8c34f83f4097567177455a119ba0ca54a2ff387e68f28b8e71f8b638782a517a961ab363852ce10feb84e26be6050d6bd173a012ef77a750261d6ee032a9afbac20fa9b6c99812363f63b4c7dbe6305bacc878555b2695058438ac2d8832637d7863fd3f3bf6123fef774f6d84b03f7fe466422e441e2357574491999c0ca19dd36aae1724831669d58df25e4d69df001b5cedaa90a818e0ffb6dddfc25c5c415a25db1a1f12cd41bee2ed8031011f203bce1114a0b96d1be5bd5450b0d1c6934cf7526e3237212467b11de30cfa2068071f90f7c583867730ef3856b758205d7361eac3e9995bcb02a55e89c36d5875e0ae696fd41b572d72e59380d01fc033a6b89a89e3b196211dc4b6734aab66ebb3db71cf5d44f0c4a259c42e9a0cb5fd6aa6b32e1e9dd77389de7ee1b95f14b6b892a5568cecf9c1dacc405715ea1985a33a0aede95750ed3aa77188ca992c59b0157f6bd57572139e2d242c85a774db4b5d5e569232235d45e6e3fd7b3db959b8fd857d6f8750487147755836ac5df81a25d1070d2ae663438d34a8f20824e7bf80bf08db8775ade3cbd0faa71aea18bc0c8b316a7ee30bc634dc0b5bc156f4912d540bf74bbadad6332fd1837c295b4e8f1a434750aae781db4760f326977836cc93776916287219f3b0141201d2adf404f5aa540bd5b759966f65dff08bcf8c434fbd4075edbebdae267915ab004a3e8f2896179892ca254eaafafe80c6bc25784f296c78f6f0d128239452aa1a280f5b254cecf2334ee0f6f8eb62e1ea29d7d576279a45ad0ca02037ad9c1f4bc38b7c6ea43660a1c123ddd32da5c381d4983238b8103797f677def2ac7dcec9426b9673b0d39dcbacc441fef6ff673c11519a73c80acafb89bf8b735df10e0225561addc484ce2c1ca3bb49ffde786ee06ed538eb22855e226b4ea73812f9cc3f9f7dc2f580f0d801114855ab885217c73eb58b76707c5b6878a96c394e2d2eecfd88f9bd606b681fd9cb0179ef633fdd2f70a6d659c53eb2e2ebf30244bc32a6aec1adcffe0fcd31efa1e6607ba680f16e7b916e6df70e882c5b30f0bb336d60b3ae127f772057d34ca70fd4f3a254c55a705ebadb77efc573b9390893d7fde8171fd005f1c87910219486da846a6cfeba99259b31cd1c4fd1968f4ea095bcc023d847213ff60d9f07917ea5e36f09eff5e1b365b8fa3f5493fe08c09fb6fade13353a5bf7f764f4b0cf2d22ccbed3ccff06398beaea0594412a84099aa0f155b8bd90833119e7262d7d47a63d90250ea5dfff14c9ba9876e6f27702ed18c86b83794bfc621827851a7975fd12a71d1c33cf8d9c32bf7908b2624b113c041ac187de190147ee0c110aefb98422f4a5b7fe8fe0aaf4f99daf592f9eaf4608e22fe4e2e395c8ac155201b98152e22235be04e935100b6e960fd4d4d03b632b46634b5135676a81e116243c0d132e87c8bcadf28daa997e2c7b3e679a5b493b48067879c8a33196273f958904160f3f59d7551708e8969b8ca3f65d88e67fd8421c9cc7c954c93920d439ed0644341397906d5a917ec63a2343cbee06c26f770d9b1fec266663833ce777933c757eaa25bb4b0e352f29b43456449b1fcec83124567d813f2c790672f8b8667d046fee209a8a828f31cad8406cd7e83fa9c6a8bf131b161273f5686a157ebf1c994c06abcac96515ff03c438e2fe9479c6f8977781c29fefc899abb1f245849dfcd60def8ccc89a2fd7ebaf6279c2bf1f024d3ccccdc471a060cf2665889229f72f15c829c95f79a63985f01e474106c08e119e317632dce8311cf25efd27a91b38d961028b728c6529f2bec3c0b6af8bb450f9f278da7637bb43147286989b354e1dd93d60d59c65d65ad635847fb43db28829d588ffed5a017ef0175379a4390f6b7d7904b4c19b838ab1a954fa0d71791966d63d61adb6bc0499c67d0a4016897268a6b0422ecfdb67a59d131ecb054fa9804e8ede74f8466fce801ed8c4432c6f6f975fa0a7ec7526ce4241a68cc70c0bdebd0912993d9a5e2d8545d067407a94f458eb01952f7797c600f858097aa281e382e2aa445d68ff2c5e2e54fed5f1679a9e3cbd7d7ad44876cd6b56fb62151bad8e86c8c128182fe0016e4225fb52d411b839af6c1b98f341080cd0d52ec8c13cf3c3184b9d73d69ac03ec695d0bedad987f9e505b7d7a314cf348b62640f2f008b48673bc746185cf7fceb98684825c03c10eae7dedda48e1e016f9c9fb76a0d831b7a22d2f4a372d1fd8cd98bf3dc2b052c951b277cf8e75621abb4e2e41d366abffce3d357b6279acada159c31e40a5871b5c76bc526c460aa4282aceb59f7025583a091fd5a4527073770d77b2114fcb77c95dd883fc8c02f3fc27bc89afabd1c272bc179c78d7431dfefe1674416335a4441a75e5d2d1d71af5758d6c9f143d51c1386cd0d738bd6c3827f98c8f0abb213d31055fc4a66f2679e2cd62315bfecde76fc85959bdbb42aa70c0f9fdecd5a12d462a6aa6d67e38c3252f091c88122b0d4230dceac8218ff0f5e4dd1e8fc028c22b2e5763d1aa56fd0469de393bec44b519186ba2b1f7f0ba0d3fae4b2606dbe15fcdba76dbc12fff894f5b6aeb9c271282c7ccce8ed1273a5a89332d95548c8356038412f3ca791c2e006d70c0784603bed6ae57d0668e10b6a495d9390b8bc2401c1267277c4a5c9c0e9259634cf2a27222fc0e65675d4b0347ca4581a782871f10de9ab6c3453b06a20c67dadf74c34a50f9e3e9e0be4129a1169ac4b815b52de366acf787ca83293beca62f2d023b587d4348a83e1b40ba981ce4248bea22da7bce2514c6a71e8a17b579bbd2917b92697caa387bcaac268f5efe3369d47d249b75c513c673c5fb69213040331cbb804b99c43453c35628be12e8fa2a8a6478f169dcae4396aa38de1cc47ea77a6d4e9b0609a0b212619b1d0feb288574a998baba904128d17a037013c98bb5698d5353f0408b352438fced4bab5c36a941d1fb2140e871877f44cf706575dd4e064cada0bea1e72a0b9e153a7ed2abbb515a24c11ab3d86d19afcbd932a33bfe6ed8c10dadcd559bfd20d19bf39eac49f09e4809223d3f8bc2c9d2d11f896011ba9eb44011a107e5b7b6c51931d32ef2e3da3f30197ef7f5438e3c98416272e93f556cc1cd3ed7a02a172618e491dc1e0c9b42ada32acd3a872e21212ca11aaeec8fed6c8ac69a45e7e16376c8d40bee09bef1aee9a247f9a0bbf76d2949dc4287975c55933d199d761ffeb32c8a25b53bec33185509f969f08ddac43f6c87ff5de8353477e9577abc0967bc50e969c84696ee3be787b1240ad5f6f7f4327275b955fcc388432146b442cd018bcc979507a5b88e344766a1dbda2fa4a15c5dc1289758a85f4c97d8948373e0247024d94f119587113cb135f77e17a413ccfa3e31707dcf63269b101d030eef1c2569841d5e5457048db4ed70934425fd39940f2435333067b06f6e4edf814ed56a776ef8ac1ce8dbf05490c7945da803739b9a2866dc8e43b2a9b420fe895e08008d617a1f3d3c10cbb3dde36a1d9acc9a60a8310cd18f8e0d28de5f8dc9e9f281637d4a4eff09fafa11d1e99b8d05a34625b010f85994ce77f976161b928afa4e1377e79ac332b77d3a0d65616023d54d8aab8ed1933f6998146f90713ba8adbba9aedc253816f714ff63c1dd22b46adcd0f97fdf9474ca495d78a38092aa92f82fc08ab134c12279bd2014fefd876984e86f002a4687751de173c771c47c1a1a5b418a8c401d1ea37894e956c8bf25a348b72d4a9d6586d60d61a5b52b3f3629cf2599a025f4f750d6bf448f0fe5321debd3df2cca978c66d1aace22e4c0c580cfbc3eecb10112a100867a7dbee3c68bba6dd007633928711851862e5b53e8678e133cb63ec0eb9e08283c9ed280ede7dae514c08c658c4038024dadb8529f1f11121f85a47dc41028ebc91d8cf5aadcd678b78b4c27a248a2b7323aa357428d4bf8241719c869730eb7ad654c6779af39777af329f90f063eca9fdecfcc457921d0ebc2ab64da89e9660c3a661e1c4a9876272d49171f60d694435de58e7c1bbaaf12f790b063de6b8ef67764231fb39e99f42ad441cfebba569e8214d5657f5027607934bdf8421b84e8d457c91d92c58a7fe866b856677a75e27c9f9e032695fceef1d96a7813e81f531afecf2a307f0c8b92dde63c41a25fe1087275ae4c8fba5248e6c57825383e0bdc044af7cf634f668d76746ae87ae16d4ddbd2a82c29d6fd56efb91c880556a42f9dc2beeb4d18364e828092012173ac544ac1af593137e7df602684303b5ee7c0068537f389e4ece4577e5c765b444c521fd99bfbe2698c9a65f58956981badeb0e80f10e85703f4a7fd91ad2a0e5cddaef03fdb5ece8decb7ed7ad0276caa173dd7ebc57d244d044f7f04b2f458552b04c3f24e36e2f034a021a6ca150a39933658091a55058292ea0f6d78b10ae43abf2c66d1e270f16c3e1558706e3b635ba6b7a146ac1a07d7fdc57a84586ece79b309df8043d8a3766fdf88c5ab81b2d60e2fdba834568bad74f7b5450e7a7689c41a4328c8503d1535030b34c41966c57088891d8a5a8dd30f8e0157d874e1eb02818adc8ef722d1745e1344b01eba0360639d90e5c5d3a30bacd8dee6c841e3b73a62469a81c7e8e2e1ddeff73eea3c5f6e702f024f56790dbf12b838247fb3a5cc6f6792d5b078bd0e3d00f8a67427c867e31480a1fc4e76f948614877403c12b77cca84e047d164ecbaa9459431b275afdcdd18a048351c62d3864fd6dfc8019e41896845ccac2fc247b2fad14f18e8c4ee8b47a484a71ec263a69732811541058edb0825820c49e78b88654edd614df1b8abca0c8fbffee200b6b10b906f2fc21262401bc64bf187b56c528a4769927f8dba28bd5676f3dbb0163e8ca23e1d115ef51173801c19ad65dcb5d2c64d100df8dd89d236a01c369fb8fe362adf0af43f4746663fde499f70115e2dca15bfc84a6e83294b6a873ce63a5081b96783efd5ce6e46c0eb2ee9674b5ee5d18b43a7133a650eb38fd2bb8c7c1753ed0d8f7ea1b7f74df1c8a36cc4a0f48a52f90efac0e75210a77c84852546dfaa242a60fbac250aefd21164511a6bab11a3792e4346f94caee94bdc331aeee7a73ae5f4f321d997ac6b3fa06e00c89664a0867352580365abc4e73357d43f0b333529964d609d54fb289dde37b500ea5794c19a1e5b7d1a648e8ce025d0ce84b71b9182b1da4cf200ca2c6507157de12e936a2ee06cd0cb814206c73d164eaec1ddf309ee64ddcb3b54b84e03fc20efdafcf3fcb8f81c4b91f5ee2561afd0e96090378f440b8f4406bbe24cd8f7a6f87e3ae8f162fa072f84906d2d7c92daffd10bd7109a7c35d4b1563056ec38174fdebffb7478685be7a11f24d606a1b1bcba9ff04db77c2c14ab9985591d02b2b4bba0bc8e2ad8bc1c1e9d76f9691eec58e81120be435200106a2f6382d10e8caf63fd083c06b594ae67ccbb5a776b61e168087d921145ff12bc91bbc262b7add929773c3e789add418fd2d7d958d3083ff6c0c9b04e85f9f106ba3a61c572cad7d4e2ad42e61e26ef5aa10970aa49055e5a674f7113332e443f49d6bf402487722577e42f2f3c4078e8fa24b327a8ebbe4715da1eb39498ae154ac3c73802732bff2605492b85cf20dbfa4c59453067e361fde90feef0b5b2b778c933c5cb46dccf4878ba211dd9f604a36562836808761f9fc5a94846661e2385056c352980f5facab60f51f3679b1cfacaf747731eb55c21901faa0f7608115b9f07b6127f5cc188d6955f69d15635c1a5125876baf392fd979a6b1ede7b587fda8fe5b211f0486074d118328aef87a96e62c704b0643d5b3120f4bd3eb86bf818585b96f689ce2216196e38a6949fa1919479dcbbfe47666f0adabcd035f36488abcff4b500e694f54fe92d41ce24829b93bce649977270c8af8814b13a05b31c78dce9a74301460bec03980f88ba1630699720c5f52ade4a1a25e3ac3313f40c815031ee84f7a5c2f9eee18953a3bdf488a1e556c688c1f50051d347ad3de689b902ca8805e5f64ddbdce18fd337b15e8d40e8e22053a7dc4b63c30ffcb64b5183168600bd84bf7100143c692e49ff7009e8a12df0ab36c0f49ae9adfa2cea31f1fbfa901ab1ad799513009a13deeff3641d50f0bfb6617f58c5a294aae4161da92954fff765f4e54c8764c2cd32406151b1d42ceb36c368f2837045721a4a53588f4da23a186092c01946407d057627dd0568b6f92ce798d82832472b80f1486f46c6f8d99ca5518f43e2d540852b06035b89e5a5a0ff1e75e9c856a5d845ef25496023df2db43b153233f55a16de867c9f7f95d11489f5faf98c55281e693bb2aab4199f46fc1ed1f489697d7fcf05efa41ebd448864120e45ccc5fa72a007e314005829fd0cb181f3c43cdd4709a5fb0592d62bb8d2ce62fc6c3c739760b672eae9f4ad3eec4f46fa2e67aae679766cd84cdcef8979ba4a7853d57c4fb269788a7220af69cb96852c08cbde3c9d84d3fe45b6f5a3cad44ebae98fa9b41a4074c4beca7d279876db490b348938f35b153b20fae1ce29ece3e9a43e98198c7302234cbab1deb40afe1c6309c441c7b99d27ba5cb6c585e12824b787894081bcc855b4569af5d225637756aa629260cf6065ab74e676461b00b6bf912a11070f15e3c9b63f59d1a34d4c7d2ef52dbdda3adbe4f27c210f8b59f838ca95c17b362b88fc83f44979c0e68423cffa892a201a1447cc0f6e36750c88f5093bed503c15fad992528d80a81580e640dde944ffb52991f5823b6a10a97173c698ad2b7934a2cc3b1749e01677e6ab32d166e21ba6b9715ba5534ba3a89f90bcde5c38e2bca95fad588960792df3c894ba7fa9fb860093200f865d1f07cfb63143f97ce636cb6239e40b1118ae7f2b9f6f5d029345a2b4544073817b6e845f9f3d24caffeaaa9950ccfc4351db4e1e43f52bda0cc994795c8b6d7fd2b3feebdd013c2695313a76ef00df3a3717f3558fc2a89d819087840e435eae346639606de9ca90a4fb74f7039fb255676177dd70762eb8a1365ba1b073c802bb340105e954cc4411fea8103855863af479de6c3cbd29488eb9506ae53d76717223a57866a21f3e6751dde8787586a21afa4870c9fcf5dd126ee9410f1b9085e6f7a67604504ea71aed102d1d3fa490c05562065abea8596cc19b6cef8f044a49ebb7c259bf4156c822d227a31cca7961dac8945123bf0c1b9da04f68103e18de461af2ef19112bf5ddbbd477a2d97080bc0b160633850b7ebec7f36b8d1fc489fef4fb5211af4cc0f275abede97ea826234c11411edea3093374544116546cf968a134acf33b3186646ce2cd5822443e5340f103373039ba45fdacecc31fffa95a0264069c8c98930529899cc55ccd87d6f6fc25f6f466df3bcee1ff1aa04de467bf6bc9c19c998a73dc3ae9795752b4b0b74be9169d719b43249ae8c2802901c681e22c19463ac0c2e592f41b9779a9e76154e6790a68ead6a9ffa2ec4cafccc1c4b1e2a2c834da9f15958a8dfa884f546176bed53d4845bd28c5685ad8ad706693c028242b86115046da694d131d91afdbaf030133fbb6e72ca5112fde2498790c096e0a1571ab1f81673762af066b18b4d4599312af3bd3fa1c99be9d4d88d9ad4a1997eebe100c135446b190f5bec730a818a878d715e96c47afb94f1ce5d05438332143e799c674a0c4562570cd4f7aea3a14d7d3fa1d36364d51ac547c11840f8525c4f38dccfa245483da9bb0c5b069d03edd247c9578782f95fa47ec1fe9101694a588db1439bd1592c4b3ab984bb43a8080ab7207e9895d0f287abe56dc52bfe4deee50020e5e64d6069e9ff6762e36618106cca7c3376e4cdaf55486fb48e1f7a122d042d7eb779a4464430253d4b0b1f663f0d0c8bf984aa56c38b2b6a12036034e24fff0e0c8e7997f8d8709c417aa9f8bbc212a183a08384b3d66754f1037fa1ff8d154a13dbfe3fd0ddfb1dd40e403d3cefc341f649803c7d369f7a45d571e705c3120936b4f49658b3a281e57be658f701572b4943ac368af9f89f1fe12d2cfe6f2a142ead48ed1e37e29935d835a2a6c69bd936be4dcf010fa166b933858d0dbad4f4d896c334e89ded5673bb484aa6490499743eb27c173abdc8bce87f48996709cd8680cbedcbd4977dd6742787f1eede0e6bc595cc7e2b63c40dbb7988f94688b660e2b3d4f237d5b36b50e54a7552955d890cdac0eff7a528d2ae34c0a8a767d937db74c19c75e6ca5a37b7298920aed17d926a17b3b6dfa1a9c5bb6d6f6b774e287f8768448ead3d3aecdf92a27b6af115db6887c565220ac5b00af79e9af9b7c6567d8d8a7300b0072ee77efd912ee542d02ccf0afad5c80e7272b7a1b52f22964c2c7128c5fd29cedb16b56a7af4b16f4a9bc9975c95aad67aeaa856f8290fce26df242dc10121de07c2249f8cdf6849cc5ea74bfd9a48b7b29ac7b62bf06d46107627273146934a37c51aaaceb305e59be652dfa1ab472b404a6d93d88679c3a4a0527a10e312d9da4e04a1e55a1c73bcaa6727d9fe576ee3c2c5db7f1158798b72c287e13359adf90c7000ca0782611dc2904666c695e503f654892bc4c412fc1c266758c7246eb11795102b384eb56c59f0ca5996627380de18d1df69c5a3a0ebb82b6d746b6223e94ae34a8e1737da17d088c84748c40c8aac87bfbde61e4c0ac8d5b73e91e3b171c5874bbd004533426a98b7382fac7ed6ca094690d5a88cc97a42f196d594f9998fa9ecac852c0abb466a53d7b7b89cc11d10489e1f02d4780c34f970c26b8ea98f9df83db7d4bf51b1c6aba105e4897009db8dbfb74143f08639ab9c5e4a270fc83bff60069c25c897b9b3d26efe0b500456c4c8c3ebc712422e07127b2fcdf8a68f61548aac15105ed50705e3e6032ef6a3ab1e36a1f6dd2210f80aa3178e43ea8cd744903a52e66ab39c7c6f13dfaf78fb28a887fd82760357eb3034588071e83c518adc28756f5df48cafe795280cd3a964db393ed54c3ba75cc2b8b41a993e0649c4659c04c85fe137e456850a1b1023f2b50abcfbaadbde78ba81542eedbe064d7565b434c5d3c67b61eb8d6fb9e2dde74fe20f1407a5534e899a63b9b96618ba24b5949a8859a07e7a52b59ea2f454a78da9ffcf85ff86ded32d0ce6dbc2a6201c0a98edf659eed22196c9ebd648e4ade97267b36a55ce2a65e7b7104256eede4cb7901967b9eb912e3c9e86a20536aec2ae7b210338b112bf6bcbde2c223de9eeafba53544dd3aa0cc1c73fb8c31461db19927e1762dd3d88f48f8ebfa2c61c6e1bd191550996ca2e4a054419156d686a6cb7ae01ac8645270117ae7929c24b803242f889f80ad8f0aacd5e95c250d8642afd1bdab5027eb1562815989e821f9cf4bbb7d7423a8fa757918cfd73ba7759589d87b13b852af2315218710b893e7358b9ca41c296683070d1806a4c3756b800b58ea41c54ed67afc1d011391ac70f53957e2ac4c53f883817388456b008c8f63887304d2df83b8ff2c63eb5d4843ba186e8c6e804a608cae815d4e93f77640acbee45f0342bf55f33063a55d94be16d52d6d9b5f7d8941833b072360487ade3490d12436da71bd3703e1b6f4cf9ecee9960394e7f1fb3d68ea5ac67ac8549ebc75461804c11b0c7c4db94b9c1c35d8ffea1a574108426ad614ebfacfe7d269f14d1cc113812d5b8f5e0a6e1cce66076c47c1e6059ea9f696ed80630698b61eeeed314a3209c8fdc3197477930c56e9bc96305e43cce6c7dadd5ecd0b40ffc1feecca5f272e33631336905e2d1ad34d6177d618083a382089537399e999a85c4f9205aef3d4e1ad9a3e1c726bb3ef2b76de110ff494e1e951a3d17699d4378e4fb951d60d957b7b2cd4dadeb9346ea199e567c4d11d76ff5c10ae14743aa1397d31a12167ff3d75757b9cf5b41064f3661553dce359c7a29acb8fe8aa309181a014158543953c085104c5756a52cb6ddd7667b49bfb4c325e83471dfb15f1e9482efcb5b4d87e8db5a25be5a8775cb93ccdfe66fbc79171ce2ae7460aeef6cf4ffa447f65d8d836eda867e741043ed2110e1a438219d347b9185a1bade68ccee99adfb0611a352a42e448feb05447d8bf47116b2fc36a2c5838b96d7d5d5eb928645218a44097c592e7d90bad640a2df78eb1ca622a25a41daf485cd8c28e2301bd9f648309ff2c218c32c9c2ec4855206a4f2f1e3c461b5590e8e49424595b03c85e33809f641730286cfa4678be647ec612c1b8e47e824a59ee7f8aa6257c4233a4927ffd80fa4e1bd9bc53ddbef60eb000332f38ab185996dd3f1a8b0ad507788e0f608470bf22599c66571da8069ac11b6747659b3ad97ffa94934e4367b41c8683ddd8f9f2d5640581f64631e91c287d1e2c0fe95f52419d479f51e7d3bfa60eb744325ed8d704aad6273cc4753fc417a43a60de582b6fd4ee65fd04de615100a4699f7bf538ed9b467cb87a0a58a0d2b4ff2afcbc7586ce83ec3dc4c95af420d38527d634b8053e1c106fc228bce63dedc2a16a190aa482078edc8abd87a7251efac0c659688aae3af206162a542bf20082ec141681c1b3245e87bafa13739fcb9a2ef5b864d895f8e2e2cf86530ab061846a826fb1c2fe9269b4ab611db4b15b100c0667d3b994c85862e9e7377e5febcfede916a16d94ad072274d11b9066d8ca4236a19792c50bad11d4e60b94155a9fd34e1e8373499049ff136a790a0a16dd5460162011b6cd0549fa333875c7bf27430e955e92c3fd2afdc94ffdb05bc1f2a1edb13b6e9cd5cf60980fb1fe0ff680c4a78111d82d97d1e4044b6086c5447b5c80a3733f7523a090105839a905670cb27b2edf9c1d136acbb890802242d3a2f57016a13a414ef946e97784d13175b1bbc02f286826ef3a8e6fa0628f24334c895f2913620ac211dd78bdea2e8ce0de80147ea7a06f4fa7d3ec6bf892a4979b02756825964b9b50db0334d83b3bd0ce039fe9c9ab55582ca46af6db6920382d9ad0c589f3f9e67443b280cee0047135088d246d04ef91bf8f4a85affd60df2e2c44ed4f948769de9f2f3add9d3db3c14d82932e410f051718f340dab63a9d93334aab22b02f928ab6b4450999567d8f90b5fb5c4f6626124b39a2b9c433e8fcdc2bc5dbeeef62419c63e36c5fb672abb7e3a07b20bba9da7b9bad5b5ec3b7d0768b5505867b66f21eeb4dd2d94ad8172af131895719cfaace194f85809ed6c444de3e24eaaea095665a43cd5acfe09d56eb76ab5256a9fc6f888c120b3e9eff641ce1a30afed14d2de175c8caad0be7e0eb94fe4128c60b437d85ab05211f7d2cb8c81577f11b1701607dbb77d276dba922ce0661f5dcafdfc5ce45b605762bc697b7af3117a515b18ab6e1e896c70ef5489d0dae9b93a0f9e4161a5aaadd5cd9a1c36766c3473f96e7a50a21883c0359b289f611a4b7a3b2370dd1d297df1cdb74e111b32f99bdbde0006c65f8e7cefa0c8d030c76bcbbc7b059de1f412ba5a0622b1232c1c1e50f1fe0e64ca729c443c3b2ad6e52ec0109c5f1f50a0882d90019c133b3bfa946c7e60761e6ce91ed5104580b5214c4a55f5efd8f0eed034670bb0b90631c64d6c6095717fe804f477cc75b6f17b5d01653dc37afc3f093be63a9f4b28e078564ef64534e9fc45c21ffbda49af27f549b9c44d571fe93110d938cb3782b063b76d0f133d634d720ac925cc23ad9dadd619addcc4f0aadc49797241e19d6c03c6419c7340e87d9270b7d0c048961c0e9b2c925e5c569b988d7441dffa49ba4aa2951f87a4bd3485d42f4ea2a9d10b79133bdd84904c83ff5c51b39c5d9d8e8e1feb73afa8c794b3d2a25010ce3c5b4c31f3b10bfafdd99a01f351041de2e827ffb769e97f5a5c43cb842d3da548f26ff4123a54868a477c408333c8539de132a993b7faef6470852b2b0c04177e704d87fb20007d45566f4e3fbbb3353a8efa2ec94d3d346e45b012b4b40ac4b81f4197920dc28fd97e85ae4f70191ced5d9b9af7ce04946d4b25ac7804630d32c81b5c9dda28de5df00771c4753c8c738987ad0ab595832060ab056cfcc2f0f79a989ef6e17f0ead2900d55f3da26c9b153d20e1bf906248c02ba340d575fa02d7a3c263a0f132d19474abf7e5fb4e36d470c888502c7ad5612e30bb6a63b7a9f1ea425e3d784d5c3b44cd41aca1627e813a64ab32b4df8092c23b81125d1978644e3e614bd5c43c80736e6f6784c708adfea59d50e89b766faca6fc6a44909e4fe80b572cae43be826f2e11f7d46a9f1ac4450ad6351cb27179f253e5e7339566801667d859b5802fc614db4ae8c9ceddae4a8d75e1c1eb1b2774e933ed0402e234f869f839275cc5dd3fb44ab652745f6b450481ff6c327be42d49a841d61eab1a78a16683580a60848b0c8b9e4080f1fe9779de132b9f2729c7b0b80bfab1ea2937e4f2af651c9535fcd7669710c7a458f225d784172d8b0cd5f71c553d88e62fe5f9e2dec2023df519d7686a082de319046b89ff975e1e0b41ea59c967d8eabeb0431f5c22291708f12b0a33ee3552f96663a5050cdc74d3cc85698ef3b665229b30f35986683c851f454692e7da3b115007ecc0292419a96267dc41a70a27e5242cd1a63f1a1ccdc7fc3aca9443aa1337f1f677ad50e455f41696638086c9cb336de0b13d41b68fb9f5404f5641a72cdfc7f4c86f8586126b244a9f246d9c6f9c75a8d0c6bfd1e79a61e1e499de264f251bbcb9df3ce2d6996a46222087700c9c276991eb07b82fc43d49beafea559648afdb5720f6567d3224fd5065e4ba897fcd3bb47002e1e8e724d4ad616c6a14650c503ee376497f7cd2cb407130b7890196261a4ff1a011c7f8850f80c41bcb77c0b852affce1cdb6f81973e7ea5f249adaa69c2187e84d647a589672c59d9aec09e8a640a218c60d0c1541e69b35c46c329379f7bb6898fc594fd3b3c40440f85fe520da4f2dd2716ed7e30f1cef0a22f1164f05e734c3ab2a8d665e4c86ea603391b157465fc2312a62d407b60d070d2203bb49a2d68a1c2beba7d3e6eabe9975211887ef80ed760d1b8570454c62a2b2872b85bfd8f0e2947f4e645290ade6cf5b37d448abab79688a42b49252e540f1b54d1b053365ca090e798d8a96927fefdca8668d95d8041a9f679e3161e79aa4f187571026f38093450b96c3a1b87dc5d61d0eb6cbd617af707cb5fe0d36538af3f119e815430af125453106c949155ab0ee0cbcf515e736f7ae041e0b80700130cb32c37166cd56408acbc3b0a45cd0aadf4ad3b0d18b2023808a1a9c81b3a57e24f61acaa835df1194c07f92bca4b55d6861d6f102fde1e804cf461c0268f658f064d84e4c6366e741524bc1e4b14f38d145b25cad00c3900e4791561ad4fe6afae1b50643eb666e35c4766b0a796d66bf4c19bfce73b5cd737cc1b9fd8bb81a701263fbbf4a2c3f794db5e9d1bd2a8f35ab85e086492b5add01656486505c958b6138963b46e403e034d0a52a1bb0266fbb7bf00daa6624a16343a7b9c5ca743591dce09bc99b5742343a9841f4beb69aa7b05a5850f086b538b9c72e9810294d8da6976e6fd809b7efe24cfbe7be3bf5f9cd7769a6217c69742c1b539e8bc33823a0d580b80c16dd0993cef67a483deda31fe084572b266e1fd839abbdf7ec6b11d7162da25d6a1c65dce01f62b623faa8bf66ceddf32ac8681226850cfa3118de85a221156b5c00833b04ec9215942e2fa788f9495c5c201843f2c09bf2362159172bd477394033b72269061bf6812db9291243415fac21e2f338847dc5962b60925368a2da0a685c665ce274a80a512c13ca9a56b9d8d60e953d8feada88a017fca4fa3e4dd174e59cc98ee99fbf09afed17bce059ebe0469dacf5c8ba5dddaf8c2c3aa2bef13621ae9e84ef81e623e42243a9e8180ae19389618e84564939a0a1c497361ae8e87177e73528672e436685da856bb855d844bb0d4d7ad4d1a114f1cf456caa040e6712444563ccf336510dc98e37caf4e1993d7f71f5a4786a59a884f4d8ebab9d86a3e4ba0be06a5436e9e8e7a5de0cc026276a94ce45287001732707a2f2d60162b4542abb9574d26f6027e16a561f4a8e5a5f81240a09cef4b134a3308dd75b348a361ca5cd83bb9a5d28fd2a7fb9415d67807b059cfc207d72351e413556bbf0134018e2428de2c66c49b0eed5cb0900444ccaf85a50a9b842daacf5267f15a413acf8d0fa6f2f8e5bb9016cc4fdebef0567afc83f46bf8f6b6fd09d389b20e2d628942c884d430f4207180f17ebaabf050f705f2da58a3c343e1d17a6098a26d1421b5500a9aa8e0ad936f7fe36075f5991a29315de73ae8726b02580682c44d3f85d348f516b2bb6448729e9ef310cbb23bc148d6d37a36dcef4a5b74616ef85ec9f5a14ec391aef1e1d8a50d4b5bfad77e215718736f81e30bad1fdf425aa6eb050ff30ad423a304aa5ca81b5a09ae93e086b46c19872908a923684a56afb0ee5938bdae0ea650a00ab66eba036f5b9367bd10ce9c6cdf172a2bc4a10b4f92deec3468e36443516d5d6bfe70f239852029c7a82bbea000da7b32fad3f416a5ffbda0c109d658d80d23814c3a076ccaf74214cccaa4ff7757256c0839cbfbf058272050e55553a7e124ebc9ec3d4bbd2dac4e12d20231c428ed709639193e81689d86d25a126d7af174e864a57e06d1ea97e4e340a1524e7d00b402d39ee766ef8ce706dd8ea95f63874ed438bc203e96a9172a9ab84ea89c42a3beaa9b01c4a5140797562efe605d49a3ad181cb63e6fffcaf7878e8b06c63896310cc63aeb37c582f9e79e4a01b321e565e2be6e9a66d166dd5e1fc9ce065f884975421917c63b8827f6746e0924ca788678141010bb84ff1582d9d7ec160dbb23e15e962b43ee88abf042f9ffd371ef85c24bd546e59e5a9ec2d981aa1a81ea9182809f17d708f4184908f75dedf80d0fabd677d4a920b5b7b57abc6effbdc98c02adc57337f58c40aae15bbac05a3ccb364e5adb1d610a16452e92f17830f89ad4c45a54d1061183da5cb1ae60952d0be1cf0300d0dbae2996e02e826019c494beff1447af22f25e46737685f1f3e1be84e92309241ae4ae293732c77b655b0c2ff2ae2bbbeaa339690844219b18ea5dc06f108f5f8d8c4f637a2f2e0c8cac5a6bd99296137d3c954a2cecb5c4496bc61c26b8bb3236197676f3da1dd4b6f956398f1f4a960ec8422d225d6dda503682a474c3f18bed09db166466a83e0e5cd4cb41607a30d7820cc20ea76b4a3b8f57d3d2b7d102b58c8e13ad95e83aa1d95fe86c0291b1e5eb2a4ac28881b88b3c8bb76e5ead42331d1161546a61ef666973a2aae66bbb99f2b57f2ef160182825fa5305444511ca1eca4e1b0b38528bcf2e0e8bee279b9acc19d868dc12a32cb559aeb90be39aa0a2922efb9e5dfec7a6ca13a1c87edcfbfc91317896452c31a9d49c4768f1b4b46ac32e0907e00a73680166339ff62595dd2d2eed3a79fb9fa0c2e8250e89539f6d678aa2e5e51e26bb410a47a7b13e46a24ea1d1ff3726220ebb5b874c4eaba7a26a64df5454841cac595f48f77f6570049fc0ca984e552e9c15e213c4ac242502f992d97bc99d10af1eb14a3113aa6e67a173356c47636b8f165d90148c0a387fc96118a6dc8a1ab3b2b35f6eeb4d70ea84cad0faaf3021029b136da6b9b0ab13e0a3d869eb66e527d5ee6a82c338de656f0c9cda7465b66fce6adc34ca45d191a86e5441664fba8ecd694af98430c9d0fb7c65d309905136e75abb4c9f73352f3e60fbb9fd313ec48bc10a084543d31a0ac32370ebbb52e9427c5d4aac15d81d3010e27899afeae85539df442b02102e21b21fb2b51576c2ff7da17f9de0a50212e05909d440583f4c7e9c5628fb9738fd9b448f94eaa1c1f1615c2988c209286799303344c22e03aed7c1954632f379c978296bbe8085ed560bec772621c5bbe04427ef8cb35bc0b7586d07c9ed8f6b80a9040ea28d81676d227fad48e16653aa882b1ec0eb01b486f524a4d81e156fcded9a1e031b2494fbb94f65c57d379049b99bcb70664151794b29430f1822733687d771ac88daff8d1cf5f5bb4a9b182e88dcb318543a8a678fef8bb41243e9473fff88765c46a8ee59213e82e2ee3c293a209afcd69c5cb0ad2f8014eeba4f4127fa81bdcca55204a85d95d52af7be474096dacd737da4980baf5e11d0e68c23670640c3030ab1c74948c4dc42a50c4198c4f9cafd4c6f6ada3f4ba78a5371992378bcd802078b359e94e12f8fbbd868bac98f7711d0b7685193c4ba8be90f5d2c040a659b94c480c54a2bd7adfe56ee9a8b6a743e1f51f3850fac92d213acc65cd50a907a70de3e326a1be31a52655683111389912f94eebc91cb3831b2f2750b19276076c6c73b110534c71c5747dd4494a0c7b4fed46d49750df1a0a359c396220bf99d4569bf0326a3ac2f44953b18109d1a64f4755f54e261eab3673bac7486f8b51733e65ef6a11cdd7fe99246d98b63ed217dbf9d59e4925d35c3ab3a2f09d3ed9010833d41856e5d5f90a48a34df52c2d854744d6a1ba6817abf18a8301c09c04b7dd51ef18d8779f6888534f0fcafa5b51027f2bc0128f4e6951ed1313c809fd646ed0e572b58d29086933e9aca96132d4561ced97a3fd2de8678e8a47fe9a0d7779d52a41512a621d09910eca4b872806c2b3dbffeb41ebdf6b45f19fae9dac0b69b72b82bbe7978989fe5c0fcd6e05aea707823ba4d25cc34fbf25eb9e99ded3b1ba556cc65e92a3951efcc7acfc065fcdce03a57e426dadbb4f2a2e695dc3bb42a139acf68c122499141e60d785d435652328d83a54c61c65548a5bf3cefc391014d94182068b4d382ab78d1ca777bd8e0df7d0f44230e446f4d9680f0c693133e038ab3e9d827c4a8d7cbafc03e6a1e6c8d56e979bb9109af9393135f28a59c9938213438812a4a904d463f32888506610222df916dc1c01a0a0e19fb7c38f5e52fbac868bfadc828f5a6adb6becdce4a41a82c30f7a84c7e6d62a817117124354f7e732249341f5efc3d0b9ad242b99f1c1ca86d8a3d6febefb51aa507a134e4ab7499021ca81595b81d9dbb07a8b1471e9b4ef260fc5e767a73716aabfd74c070bc1cfeadfe865f2fe894dc76ebabeaf9dec6bf372d383f627e8fe7b3d1b0690ec1f4f998e1ee5c7d865d8f85484dcb45106d4dce4374412ebf283d43c9b83c11278e8b6ea85e357ef22d5fc8092bf6304b8e0686ef8b63aa825f6a6e2512ae149eb919b8a3e81211e8cf1acc7bafed157bbaa3968a1e208166892b855db491775a28e7983aee305e5f391677cfb6b970418426603451d837a8ca7e9aad37e8811479665a8c577ea2d8058a7828433c4a237edfca69926fafa30a6e1207acf7a2191f9c23807a05a97446eda23b2e8b9163f8c7336c9a9ad29410d5542571bf82f918d6408dfd00096bbcb305a1e0af32167a8152531077aee669b006a521ac2539120428aa1edeaa19be4bc1bf84b42856e29ae9863b6cdeeaa338779ac5dcefc5a753be4be892e57aa25ea91f91cb2514ddef349bc7841c5dd2398fd28c69bff88b6e8ac9ff8af18c4a0dd68af3b94c2e4a37008c72093021ba942a9f5dc23a041e11755d13be87994c9ea13159fceef7125f19728dd134fa063149936859b131f8454148b01edaa21efc2f11dfa79c30decd70eef9d8a332393ea87fde90ab222547bac060644236b4920e445a970bfa4c1542451df21faa74260e509cd55131e29bc7ac24b725cae6b9d49c6d695712b6802ee875a9058d0a421535b583f9c29552d9b165b8eb01fe63504f1480e9448b80f0ca926dcdb4aa9caa29251beca276d29896c908781de0394dd6b9669580bcc0ef33717eabd327f508832bb02d93f3639250cc2f1349407d1d1e000d0dda5d0991fb789dfcedf50c79248a68cf73758fc2053db9ea3f41b7aa1daf5b374a0b5ecf309e738e142fdd3cd826343fcc3734e098462eac6e1950e2ee6eb55a231f853728265b37bea76cf03809bd0ebc0fff1bc68c533fa19ffe02dd6343df7b3272a78cae879a20a9120e4b4af4b0781b6403ae7c9a988bfb52bb52ce6e2e7becb777006d59582823c2fc264aee7b99bba3155bdbc2dfbc99fe5ffa2c01cc4f9798c1ca67aa7c1081cbd3909264d9dfb07926cee19f3013409c01bac5808dbbbf2bed87d6a8aa41830e1f476dfee7d6094707c9c67a3c499913707fc3f1dc10cffe7c758785a0a190974eb5ad5f16e8ba1eef61e7982811203a4e97b30f77071e25bcb17f63d1bbe3b36725447021767ceab1081681204fcf0a09d7c2a1c3617341389935ba46d273315e6362baab6640e47bbf53ef0ddb9cd1980996f8b57f318577a62a8887ec629940f16b8fb7bb295000248067b2413bac0a490f3efcfdf8ef22717fe403058d410fb65a470d0309b1d6d086f9e30c31c43d515f4a6e69e8f5f07c4f37b17ddbba749d14ff5889546548655445398d9637b634e4b50a20cec6db948aa46de21c5fc7cf6a7bd409bccefe0b0f43a14b31094473356e9043460937cfc0f74890a169163265d753f912dc499cc8f3798b143c8770b18eae533569a7f7ed25db74c27c57b776e38fd12c5806126fc2842fc665f93723594da7be03a5495e6d6903f060a9deb96e164b289e32e171ea8ec2f42415ee7e44b28130bd7ae757a1a0bbef33b9423d63ac019a9eb76517cbf6a6bb45d3317896afb84a1d38a1d47ebab62e2e64d0deb6b430d88b0a9798b58d8777f6a28cc9fd3f10138d494bed7fc95624c93393094034a5407e16b6a565e16bc550621bdff626904687441c1a4f60359f0278a081391203a415637566237e4cc55b8d9dfe77551a7c1634ce4b39736f74a96464d6ef97683b769047fe3953237a55425fee56717314cdc831bcd48303cc898786591972f2953975c811c508fcfcc1305458ae521776b22618dc69bada96733fd1c5120877f1ed714e8ae7f4278d5ee0e309bc2bd017296a16234d00bf9be32d76535b7f161a47a699a5157cfbf649647f696e154ce1624448f73a24d14d2657b749bb8b936097ec0f2049c498fe3d6063e1a4dbcc2cc954cd96de0264ac2d017e52fc0de9b5ab8f3aca40fc2d00bb72168ee97bda2fcf7b443ea1a2808b38d2c77a75a03986176c729f514c46e2b93c2e124f550a4f03015b2b456c014a0135e51c2a1ac32c643c1745aa06745bde763ebc1e165352807361820a623235f39696dd7892069eb109f751845470fd2f25faf0ccfa93a9da6d4788c7af3a9526eb1b0f99e5b73d971d1668114e19fb49eab703a2f92719754521a9acb11f1b63f5876d0e85601c3265bba8506c4448beab97a7c7945340c4565c98341122da70f6a9de3cb413d77bd3bbacc1be4230d083552164b40e815b720310fe5c980145a1104bced632f259dc41f29a397a4fc9e9f368ec4923b1874aef26ae1371bdbbf87254da6ba55664c67c0f5a0de9c64a5e56c27f2f74d8f62d9c79930fea194024b725de02ee3d9c17fc0ba5104573aeb6e051a99829a0cd7c2ba63e1d1c08edc8022cf683968543e056557acd2e2f2b1c9ebbf858c17d6aa4b311274aaf6fc70fedf185f899cc88ebf33c93b12f5d1695a94a5b56c070e3aeea2fe32d93379a641d29689bdac17e7ec8c2fd7f13f569202459aa375f73f764f91f9f318b61f52f5ce7df35a9629e0c281f4802bda5bb9b94704cb295b93654068fb59aa3e85c45c04a127ec244e9542296b8842f2cce134c03e2473a7cab822fcca6da5e291fe64ea1e91fce372500a5cde9b01dbc74c6bc263efd444e39f612fe0e49e25745d47d463f46c586a0f8ed140eb24571134f54eefae5c1d0ceda13850abc8e9bdbf15da9c4ffe6067c7c42ac0b1733c0aac2b995b0e39691e48a6b171d67b1c7ed5c3533a8c415fd1dbecc8ed28523fa3279052458e0529beb98990ea56056f91173323e947173301d178ecfe42d970bbda626338c2c718d46c8910c1b8b0d3f9b9b719d930f1f6b4bd0342c8cdd0ac1cba055ed9963b2f2851cb547e10348440716db795f792bbbe9f5f78878b38d1b0abcfe4b0c0c8a9a500766258123171d84cf59533faec0093873f14a808d6ab5089d970a1a5caf4eb126ec8f0c0351bb03b4dea21b72ae9c50d09b5bac3e67cd12eb6df3cde65e8da636bb6720dde53a2bf68bd70168e6cc39d291a429787fff3377f817d376f2561a670be533a189b2845698a5eb44fae817121ed91cdc73955b1fcfd3bef95f7c1a1531fafa7bb1a3d63277d3ba8c93319d3cc7b7ce9fdbd51e05cf5714a2ae3493d233f0befe30c1452fae86d87d5c032ef25de27ddc77f4c3cfb759202057ea3b141afe8c5359ce83294606ab86e7ddde2cb3016b7c42cc5240e8f9602d2d64dc2498d683d71e03383b3c64741fe1f489f6d7a26b9e64b3c1df819579f36533826713e7381e282c87b56c4792f8788392d50918a9a5bfd51edd0ead1666eb3b2d348b510130ef517d4ef9bb69344cdffe9b35f8f01b86eb751913e04b762ee3e10566350cced34def76ba3f9d06ab64c6889a56fea3fad0e8f03c996d0f431562fa1d0c5669fa3ec9374eaef0a5a1520b12d32443bed93c86828dc8a02e22c2d1388f38e72a5ce32d7659e6140ad9ffab27d45e5885311eb37e04f34bdc6a72666e1b300fdfc5ecf102714c9fd57df76fdf47139f8dbf8ae59863643171164c16baa5953c17821a7ce5feac673c05a56b287453ce3a0bf5048f0999b7711604d6cdeaf3cdfd661fa21fc5bf18de929671c801f00415eaecd35abda3a04665e9dd0ef5ef2c6ddf02b4a12472984485adb027fd12ae6c60ffd203b1a41c555557ca84ba3598f52c281780dd7e22655db21ac383712e62d4540a1bc525925277ccf3a617f5cd363fbb9e1f75d835aedf4fea24eef7861a77164b0861e13cc1000f0667b36a8901cd9806279467dc1a711578796a930eab544873ce71fccbbbb09cc11244f90e16042e13c885a3c928a19973f7389ef8d3752eec924d7f3a21e1518b75ebfda661ecb56363abfc99701066fc4d21b526f0fc5343ed4aadcdec0cc3c4327bb681138a1a6f0082613d5f15ab67a708621870d9dc4142c8592b6e03217915f1a454524fafe5c6f905aa4eb840c9476c268c2c9e6a12bab4d554f71d9cdb8016f56d12ca4944b25de41a83870e9394de816a6c15fa1efe98fd858621aa0e40f7c4b5cd02cf6c7b128530887fe30527122cebc968942a749bd8c8347026aed8d8c044dd4836bea112be61fbdd162d8f5c123d947cd940255d56b3aa794b859f918bcc0ff062e29006593d33b5bca46fa1e36035dab45a9452a539bcba0c183ec442cc90fe27a2dbafd4e1c791aff374b5326ba16880a16d98269abb731904dd1f8eb00aaea66bfef72d5252931d84cc01cfabde3bea854b5b145ddd37bdced843340e0679b6b4e7ed2fe318fd0cef76d160543722e0c3eac11f901ae15db25905dca7a17b81c6d51869fd12ea569fc4b072d217786b4b4d73bde4b9bd9425bc87b33d6b1911e6398673939aa2f15ac505b9a1ab029b8452dd0869f392daa28adc942272615ff2db16bcf084f01ec9fcc2f7f6a632b2bba8c468655e985a3b271c25952b7ba3a9142a23515947e79dc051e75d70f84249a4b15e90117ac8a5740b42f86484b820c01b7cb0ac26edf9d699e0d10c1a5a673aacc34ba8fde0e241f437829a06b8335761df7ae039bd9ad6967462fec2d38e25d29e99373066df48c1ff4c920298e355908ec9c0fa28311940556884d6d0b2d6a02c85926b8b6d02d50504aae84daa32e9dda57cf62ea75d0f345f3a23c721dc5e08e9c3a6055633232b6515cddb667f13205f446a649776a3dbeced828b9f593f7f741fac437d890a1d15e16ccc284efd416d35035cc2d1b2d1633fe2abddc01d8a7075f45d8cc19ae58c0b266d8594d9367519a13e5af262631d10ecb78abd87124d2c593a461d7fe4a2777fbd0ddcf37f5d0d3fb35e6caa3921de095d7e78f77aacfa427958aa396c2eec28bf00c7644c6b4cf147f57b2753b7e103c2206c6d198971c973f36e6d79f3db29fbde33f812ff06e80985d267663f57fbfed8e0a58d4c99903b08f3d257c516826fbfc01d701f13448d50e15477ba31e8590a15285083d1f63a51ff6598ace3f590aa29179f8137cb0ed5a1c748c0ec4ffcbc8b42ed4dab5dd499b7ae3d52dc8a63c3faa7cebfbb382f5b1b971664bb4e7ef31abe5d3f05143a7ba1f351f4410a5ca6550cba5e197e29e7144701b0b1842f7608c804a8be18ba8345ca6a8df52ce74ba8a38bed17d634a4b2c4aa84adb408545a0d68cec88f3164bfbbe9480459f60c41d932b58231a2dae580e18986dc733b555b048963dccb51156ee6e0a6093fb6cb8f976a44d15dc2428ba885508fd4d8e335f9a94783b936176e18a2398f295f699d158762aae164e9d0b60baa99838909b50ac0a0b59eebd845a9e5c98eb609d71a48490e6df65f651fc5fdff65dce2f056d9604c0e33244f70f7e375e2c8451372167f6dfc0a01f612ee62e7490284542bbfd683af2c375002228d43a7885a1b29df505b5d9b0e32d64259a787cd6c0b3d835a12d7ddda05437693cb2637553099fbd88297a42fa5b410a0e1b29bf822691472fb384ea8484dfb8843faf6a9f8930598055cabc1aef0da4748536689dd31a2d182a558cd3c4a39d611aafcc60d67e53cea6d6512984a3f16e4785aab3ad047521e0a5f8c98a7f4c1f963c6f40719dd573a978cfb07e0857ecb3147ffef6d5a4899d28338784a5bff38df9fc6c64fb7c7f3e4053b0461edc0ebef4fc2750952781fbe28ea8713bdba0d41ca112f5fae3a21af97acc4562f5b3587b342e44dedcb141ba8706a77a91c1408f8792fa1519be138afed471d5cdd6e3f825fb01abe579094ef14dcc87e624b7375b28c252353dab70967c9288474b624894db313f494bca77867b5a5a9ab6b09cfba3407c357039451b67be3c6486bcea95233495c54a73ebd1b23a443425f4d1bce2dca581e48987622d6b6eb59a9ee19c08d56e12379968ef064fd981d0a670128b260ab2966eee1b4e52e8e5eb7f14c48cc6d482aab48e967b008dc87ff1cf1a2101d3854867c529d7a1ed2936544bdb44b0847147961f76a76c16fcf279d8e6c8bcb363f140f302812b1947e0c416efc16b2ad519b3b40d59e1fa9d1aa8bc5e44bb6bcae6272cf00aecb2ece0d717df669b8792d993f9b41a992a9b589ea2067edd287a8a4d493a2f48e78385602dedb69d7f5850f1b75323de038b968f0289b21e485ea66891bd9f7e1a31fcbd29c794ce7db58bcc38619c67cb4eb4decca81e9d882d10b9d5703adceaa451f954878bf63846dd3811f4dbe7048a18d060e7d77dc88ad65beefcb5a965671562c9cf5506d159d9125dcbe5e19c817b52a7cd2cdee2606e5269c86bf7411292b54ff28171923eeafc97bf8ca8480879cb6ebf30973b54aa98776251afb971b1b07df085b8e26b1267ae715e5c7c0de9b32d1166033784129c4eac0bf58de3d5f070ee90a2e0ced7cd85577d0b5583626ee5dbd2d4f7546af5a6874733d0169bfff7cf8004cd3efb3e66da96142dd24e392167ec15045e680f996034267be752b31646ef65d70e5098ece661f37c5f2bac74d89d65ccf2815aa5c059dbac5ad418d5e0f8c389070322cbe43f72ec3e105aa190d317b84a98dcb942a83ca0bcee1376bbf7fc9a02b81924cfb3d7cf6aebc994ddf2e91c9c7736b40abc55a313b91f9ec022fcf331fead3391d42383e4f6b650825f733dbcde039cabccca0bc434e67280bab2b8304b57553700d3e65002e2a7436985991d5001500171d7d7cedbd0657f7be291d31606afa2c0e9e8aba5b21b118fcf623d86b932a7c09dbbaa8c7d7798a2113b2376a4001f98e1f4bc6df3b8421848d90b0030144c84e3b8b7e7b3b192dc8e0420fa2a23873fe461066fbfdd5d5ff672a7fc66e7e956df0de642187527593bf05456b02c545c3bbb8cfa0e29e68dac640855b4daabaff6ce224fa865bbc17e17d8c596bb762d0f763bbeddd9c6863444d55228db3bffe43bd4f32223065e0a943feeee9f4e8189f6bcbd67eaa1cc9ebeac6e3fb997c8fd6811170a54fd984f411e1551026e0b140938c2aeae1354472c46504ba743d37fa65fe237771f0b357e109b734e3a31a1365ede0b9f9a62bf0d7c4d653d5322192af415e62dd735c4f1833c2e2257a54de4cc6ea3141dc0036eb0f8e168f6954ad66d7a57a5b37fe19abdb3ea57f5f423dac73e3e225859d5d0e813f506b4ba99a328bbd3ea4c97d117bb00ad0a11b6bc82d70ab29297aaccf79df2395fdf8e340413f9a6f121246c4ffe724c7aa57131ca3caa1696b2e9ec52ebb01fbc4c6d80208c29abbeb98c3dd007823cd9b9bd3dfcbdd06f76c1acd742fc182642b7906558526a821c6cdf87f04755603f651336db095da3dc8db8691f52413f1a36cffc0bbae9a74ea88c28405cb0609a7c8863bb2e73cb2e970edb65f7915ed4d45fd09672786e2d5bda3e23f128504727ef0e082b0ce7b7924494706fb7d514ccade951db438cf0164d6248347942dea64d22af59e75881167b3a58e6e7c2732ecd3e2b82a24de3e90d0083f4ab26bb2ff4817bcbb726406dcf6e9af181f410311c5972a2abfc92c54c5ed03a6c1aae119b184ff8aa8de081a8919ca874c44d30315843149894c991fd9e9c13610bad08bfb0a630a9ab1a24281907e8e87482356c7c7f1ea7ebbd6300e34008db7b5ee9575a461db07faaff246c4788ca0ef7b934107a269904dcc93f78469bf50c5f1fee3973c22efc03424326858f988807988500f8ee1377b5f1f7780b32ddd4cc06152632bf76f139ed63e11efc254a1af71646b47c603d39accd70527b0c681c1d3ecf10f7604265b19211302e6b94166b5e741803a08e1012ea04986e7aa57c2b2edd730e2f61a41f1cb8f615871203ea4b95eb013d3ea2ef251e7d788fcb52435df6a8a8bc3eb84f0cc9fc73a7a5de850c93c12fe04c0fc2d7d0e8f930515ae44922026f0308a3e023a6c310a4af352e8b32969bcd36af748454d34d83b12efb527a43cd70655952024a612a129fba733eaf738109e8fa29a54821b07e9a25af62cb283471a5b950b8a1abeec70e7b12c1c6ab7c8863bf3e57dd7b626a282dd0f494ad4954d4f08e815d3824d605e2395b14a43013c1b0561ac34e53ad1c1fcf68fa37b00173a1f7ba50586f8873e5f43a7c19b16e63a7a2b999869c39d44249aecb241cbeb0b35b01c20f3db9510103b799c66950daf8737acfd28462f6388bba0c9eb10e0ce4a503e5eb52bd44d83aa2777e905ae4509510e56281f9a5ac62ed1ec83947ad85fc15a99a34366ce21f4538185280f078176f379254b7be6a6309715684cc64db2488698d1a1cd436d8dc9430df6f62fd79e3b9eb2842b76b499e8fb59b643ad10b160970b0fb42722ab4967f4cf069464eedb7187f469e80171ce76b06bfe5171dd4d0860d0932fbceedb36a3193f810a4fb382da524de13fb503a8f139a7707985ea16c03a3da0ddc503b76e51efe06c5bf6ccb1be9ec343f693f8fbea3db7920e43cdf55416d88283c62afe4068a878b54592f42cbe53ae2f4c63bc4dfc64e35c857e48f9ddcfc7fb7c484301aa8fda98bd2039ec6506b0c8bf0baccb24e381ff17d970ea58141f5c053e72c6393a8d0e0585b267e8085c4e1cd2df82daa44d61045f9a61d415e5b36566aeb9714e6f191c42612411319ce72bb8767a03fbf3c26ad211602f05ffa9b2cd2d84d125e30b3deb28de1ed2caf36fef92a088f239fd929a26106f77b86a61fe151b7b43f81bf8bec5ea073c812a4a6b52dc121e5cff8b5819afd3331dc08291a3739e1d59776eadec62c5753597819af9e6da7e727a7ec55e4a3173255e1163d2f178f1804401274d7102b95be88b8b3ef555fcdc25c8f6c446505fc5675b79087378c7faba5c31c148777ca6eed20d508c896a0a96fc116b4313a8691f6f1a3f409e8981d64575c7fa2fb502fedd4af223bdb2cfe6efd9b99e7de70462158fea0d8e405835e8a1be2072a3155ed3ae6c579ea10197f15e7bcf41e766c256aad6246579d1f9f06552906149e3c4404ee6b664799553aa9474275c698264f983f0c7238b2b9cac3b19534a26b4b4b110f2687383f6c6e28929a1f51f554412be1609b112a308ec9a7add34db23a99f11e8d5cbdd3f15263075bcc1ec7ac2a3d14f96ad95bc51d07cd18a7b83b7b2ca4e402d35317425c3c0e5b95b23d68c22c7ae10367eb7f04cd75420e4c5eb228ada1360b14f2144d9e485bce8b995619e034812260c85f31212ad6c06e9c3fedd6765e7bc0350abdce0bea024650aa6928f871c0c9de6ce48cfad94972ef6ced24dbbb5db658a64886cbd8a9be19dd89d7d2b8681fe0b8027c0046359485e354f54df6d706a95877ab12412e4ab8271524ae52d5dde5f95f330cfb8de4048a3a6d47430f808f943cf8281472a4547dd1a43a3aab622e9a5bf2300d3464083b37f65679d57638855f2a170e456a252b8d54075821734011441d091f6b1a7032ad411dd58258037189f90e2ca07d27778f12a58b6f75f9b8af67b6e6d4d84ed86cfc22b1757a45ff7eae4f9fbb18efb64da78889f9c1eaa8f63214eb1ce2f882828d8c0da2c766112fdb78e71d5e23bc33919fcf16e233027d1600eea41cb2e64411c19f6085b61bd0058df5900b29a543172fd6ed6457e4c33cec5c4651f9aab42e516f202bbc82e39794adeae0ad512e216d8a29f10faf2c8dc231be25efbc82740ec91bfa72c1f7523a6b76f95f9c7c4dc27eb50bc1f73ed04e7c92027c8deebd271255f82292f084e4ac2150dc8db9967beb3d24c2df758b2bbded53a5c29f53352334a56f79d539760f8c47d6ebefae6ad8c433b781d5c0a2ee7cc538f37f200e98e3e060ce8d13635b8472caea6c6e4dc1b06f372e90cf07b1ae48c2667aedc715d6e681a79b59100ce1528ddd50204b252a3bf45db7043dba93de8623eb08ce94606cc05d2ae05aebf7bd06a267b1a7d67c0f3b63afb99340e70757c7846cee33454e910f46b1bd03c2db0dd7b4d162c0a10cb56fd1df1228ba1d95ec86d5c5b008b9bbde1f3d5aa6c0a5362baaaa87e86fa9720f78ecba8ac97373670f562170cfef017840e019fcbac979844095a503d26d13adbf3a790b49876af18cd109ba41ab5f5f686434245818baa3795df76153a827f9c9020a38feb31bd967a98034f4ca69ddcd7f80de1be6558267ae8652fdc885573a01f4e832c501f011da3137b58b25ec76c6c10187912013c14205f68d91fe6f4e38fae2f51188d581beb1c2e3a4b239600b95319808e0c5462dc7882b176182d2bafc69ac51f3593bb54363f9d4946ddd1c555499d47197788f943632548e9326cbde8442ce43c12d6b97d564a0e3009e344d402ffe1fc2a01757c07295e5bc4e6a264d51ee950a6cd9a1fa3843a10ce5fee7299d1746cfdc25abed1038a86da664a80d5e6da8e761b7d8d112d9749b3e2ae77656fcdae239297baf3388d234a67b07dc03574fdd866d00f2d277ab497a7e7715b90fdcbaf6d2939e50b3c3350375eb5cd639b2569c5ffa2ecc7962bae1d183493fe737b1b7c04cbaf5730ae112cc7bb44afd09244afb149b238bba542baa4074a22d44e0a09d526c1598993e12d597a074e52fccd2503ef744d1c23a74907a1f847c4276c13ab514e6887d70fbcab6a1bc18ff998f9ae5bfe6a3568bc68b09277878ddf2e6a008a42b0567f00247996efbb0a3e171045ca73db526cb0cc3ef0bec39bb497e8d838f67d17ea0985d6603421f98d90948786707b167a94543c750e75cf42a4deeeb7af69843e9a419bbf60e1ad460a9ef4853ef4373d513c042939e22492188ab4673fb1fecc1474866b8ab6728735cbdf8f87da3f10264febcb0b01b9eebe5beb9116c180828338cf069d0d6e4d6a077c84d336ef6c4e3b01099762d85c2cddb0f8d466eedae3917f03a9dcf46a9e6f7fbf3421d32376eb753b4831f0308d848927bddabe10e10fc148f344b7ff396880b30bc3edc59041573c069afbd01553248089da82a1032ce1b37e0529833daab6b70b92294764c2beafe89ec1e23167529b7c4998934bc419c780783c824a358fab4c7251576f7003538859e68c5a661b6322b50c5b506c7f8be73fe4aeb909aca08e6cb54d92f14934b56763ca99497cfedf9b1eb8d01451cef8f5b34f0ac061c65de54954065a642ec3aebc23b4d4917158c267de19f9f56c7bf672664a1ab66352de64b54cdd6cdc3cab931bd05498b5e663deb6180e70b34b22bfbc8c42fbca7a74acc4661592c9782bcd0cf31786ea5d3dc541fcc0273df4150c81e2539908c9c114fe3bb4875d64fb2c99de3aea532a54ae2c8a9e2ae85d146283c398d8108b0af442a1bf6d46eb171cc9160c39be8f97c9fb1034f9573ce33a6e55652cea9e0b80e61b4806badd5e7b1175e077024ad6aac1520609f51fa8b420519796a3f75987380260995ca7af6223696aa0fa47684b3492c3c1054243fa346009384e912890374340bbdd7b805cddbd22c244c646f949d3d4ac6f9d9084138333c604033988c79c0c33e65a9958b97d1235582eca95a0585b9deab9bf1e22cf3be9e8b04470282fde0a813093bdaf8084e2b47e13f341a2f2ae12557e7193d742f400a71616016d3ca235f9a9fccaa8fd9c111fc9d49cc0afa73af4ad40540015c92e41d1ef8dc74389abf92b8f0fcb845bb726a8abeab7f0f529936870a9a3e0ea3059c5ee041b7088361236e70ff6e7bb6f4568a7d5ac6debdb0036032fa75f750067208c8939018c82c43351ba9778940bb76d139ee588a05da6dca3e282f9c5a2381bdf9f576061c92ec99fa4d928ab65049709f7cdbbde524f94d45f96810f8b88367986ae91d4ab52dd7000a380ad8fd4dde8fef89756c6fb7ffe544994878423e1118a147910ba3a73dc2ba491281e5f6b7bd1a7b2b13b6bdd97316ff50079ed052538b08b2e1d3ebe2511a08d9c662a5a15eb0852b72e0c2296ef468095e2e2429bf8fd093cffd5326caa0d210de1c9679b334a464707aa15b6d786476893871fd0e137e174df6a06ef6694faa25903324d77150f28cc71c1c1c461b7cd24ddc7bef2873159effb0572d7e9105c805e286a5af20be356f4b2532bfbe89659ee8355d894f77273943e3d7c9cb9bc1eeacbd51298df0a60b0ac29b1b84eeb2944c511476db4ebd934618f6a1a213415249e4429c741a1f92520680fef76c38b6c3b62db93888ad49fb89e2d461cfa2343cded38c63a9f7eabed4f877e4866ee0c06c13baffbe836276929e2d3c280a1cde0cf37160f999b27279394fb506dc075cda33be61b0e422451b091a8a2c9f8d2fafcc99dad8b7410dcb6d95b690b33169b6eac3a56e99f90ff999fdc0332b054ff1b98182dbbf58c26cf41de7e2d38ca3bc771d2745dbeb5a9f63acc8e89896ca47b8d22379960ba08117a440c3a2b2421be63ea35828e66f631fc0a85debb1f4b03738a4711cd75ccc6e9f69d0bbeda2baa7e5f17a6cd04714c8073e52b7191a07042701d8668a71ef013e7d46d048b94a6f6866d7633e1d129e1fefeb01ca5f0035246bd3f9c19694ae81e49ba113c4aa72daa6c281b5f64cf04d642bfd91ed4ae8a5ebda9980417120edd7cbbd637a8ac3deb8947da9f284b880cc3c3a001ea0918a184e681078a1794aa1df7356ffc102d4ed47deecc93e851e59cae7eeb5993c088db6072dcc7f5a7a028122b3239b195893e3f29bedd13a49221e10612b554f2738745c45392af5c143c5310a30f5f1e0cea9b81d9667c0743b03ee279872b177067299261e75caba3a8c7b85cbfead05a0c3fc6ab21908f7d501754b2f5f94b4e9a8394f30a9aeb89468a45aa69cea8e6d72f444eb1517389b67abf5f5ba1c57f04994974e458329a4a1a0947a7479a40f11a11ffe142f317725226e3346c6e2268765f71dfba2ac2ce25e9290c1661f2c6e26588dabb62ff918b91d8d0abc45768494848dfa9b2906670aa53f219d05fda7cc0d5e41078a216451b5390736279439120e52b5dbcd2e2ac3a9f68ebca61be8310a0c71b841a86b9167af84d0c32edb7eaf63718290d8d47824522a275f1761812674876758a35a9f4e243b487f6548cd8ccc80d688fd00db5b1d6c56e96406d78f5dde0244736c24a8f3e6e15a9d3d90a2621929b10fd9424a306a868c3988e5f736cccbfdd203955f107a93ac011e6d82d6e67c4caca8db12133298ef654c0a3a0c35483dd4de92c98f60afb2c0c54a242832b317f0f758097e96ab1b87d6b25da0622ccb5520a441b66055637dd46cb1b077f1bb36fef502a64f1cd891d99e273dbf36aa17ee5dc3bf6c78a0eccd4e0c8c9decd5ae0ab8259439cc9ab81da52956797025d2c7d014e7a7f60d0fad5c377a498d67ec0e98c1c04200e501bb86a1df05bdefb5b8eb1cf8c42d088b840135868eddf178ddabba26dbbaaa63c0d25e6a292cdb339d116cd7feeac61e5ec106a3ebf616160fef23b7b9362451042f91c8e6334a2e432103ff18ca19a1b785fb7f73a190402ccf72b006130fbffe667d6598337e2c9f10d88f980e2fea838acf9cf2dfe2b0ebfc5e48824c1b0c1210ccc8dc6ce5e4196329e33c55e080c68dalibstorage-ng.so.1.31.2classstorage_1_1Aborted__coll__graph.mapclassstorage_1_1Actiongraph__coll__graph.mapclassstorage_1_1ActivateCallbacksLuks__coll__graph.mapclassstorage_1_1AlignError__coll__graph.mapclassstorage_1_1BcacheCset__coll__graph.mapclassstorage_1_1Bcache__coll__graph.mapclassstorage_1_1Bitlocker__coll__graph.mapclassstorage_1_1BtrfsSubvolumeNotFoundByPath__coll__graph.mapclassstorage_1_1BtrfsSubvolume__coll__graph.mapclassstorage_1_1Btrfs__coll__graph.mapclassstorage_1_1CommitCallbacks__coll__graph.mapclassstorage_1_1CompoundAction__coll__graph.mapclassstorage_1_1DasdPt__coll__graph.mapclassstorage_1_1Dasd__coll__graph.mapclassstorage_1_1DeviceHasWrongType__coll__graph.mapclassstorage_1_1DeviceNotFoundByName__coll__graph.mapclassstorage_1_1DeviceNotFoundBySid__coll__graph.mapclassstorage_1_1DeviceNotFoundByUuid__coll__graph.mapclassstorage_1_1DevicegraphStyleCallbacks__coll__graph.mapclassstorage_1_1Devicegraph__coll__graph.mapclassstorage_1_1DifferentBlockSizes__coll__graph.mapclassstorage_1_1Disk__coll__graph.mapclassstorage_1_1DmRaid__coll__graph.mapclassstorage_1_1Exfat__coll__graph.mapclassstorage_1_1Ext2__coll__graph.mapclassstorage_1_1Ext3__coll__graph.mapclassstorage_1_1Ext4__coll__graph.mapclassstorage_1_1F2fs__coll__graph.mapclassstorage_1_1FilesystemUser__coll__graph.mapclassstorage_1_1Gpt__coll__graph.mapclassstorage_1_1HolderAlreadyExists__coll__graph.mapclassstorage_1_1HolderHasWrongType__coll__graph.mapclassstorage_1_1HolderNotFoundBySids__coll__graph.mapclassstorage_1_1IOException__coll__graph.mapclassstorage_1_1ImplicitPt__coll__graph.mapclassstorage_1_1IndexOutOfRangeException__coll__graph.mapclassstorage_1_1InvalidBlockSize__coll__graph.mapclassstorage_1_1InvalidExtentSize__coll__graph.mapclassstorage_1_1InvalidMountPointPath__coll__graph.mapclassstorage_1_1Iso9660__coll__graph.mapclassstorage_1_1Jfs__coll__graph.mapclassstorage_1_1LockException__coll__graph.mapclassstorage_1_1LogicException__coll__graph.mapclassstorage_1_1LuksInfo__coll__graph.mapclassstorage_1_1Luks__coll__graph.mapclassstorage_1_1LvmLvNotFoundByLvName__coll__graph.mapclassstorage_1_1LvmLv__coll__graph.mapclassstorage_1_1LvmPv__coll__graph.mapclassstorage_1_1LvmVgNotFoundByVgName__coll__graph.mapclassstorage_1_1LvmVg__coll__graph.mapclassstorage_1_1MdContainer__coll__graph.mapclassstorage_1_1MdMember__coll__graph.mapclassstorage_1_1MdSubdevice__coll__graph.mapclassstorage_1_1MdUser__coll__graph.mapclassstorage_1_1MountPoint__coll__graph.mapclassstorage_1_1Msdos__coll__graph.mapclassstorage_1_1Multipath__coll__graph.mapclassstorage_1_1NfsNotFoundByServerAndPath__coll__graph.mapclassstorage_1_1Nfs__coll__graph.mapclassstorage_1_1NoIntersection__coll__graph.mapclassstorage_1_1NotInside__coll__graph.mapclassstorage_1_1Ntfs__coll__graph.mapclassstorage_1_1NullPointerException__coll__graph.mapclassstorage_1_1OutOfMemoryException__coll__graph.mapclassstorage_1_1OverflowException__coll__graph.mapclassstorage_1_1ParseException__coll__graph.mapclassstorage_1_1Partition__coll__graph.mapclassstorage_1_1PlainEncryption__coll__graph.mapclassstorage_1_1ProbeCallbacksV3__coll__graph.mapclassstorage_1_1Reiserfs__coll__graph.mapclassstorage_1_1Storage__coll__graph.mapclassstorage_1_1StrayBlkDevice__coll__graph.mapclassstorage_1_1Swap__coll__graph.mapclassstorage_1_1Udf__coll__graph.mapclassstorage_1_1UnsupportedException__coll__graph.mapclassstorage_1_1Vfat__coll__graph.mapclassstorage_1_1WrongNumberOfChildren__coll__graph.mapclassstorage_1_1WrongNumberOfParents__coll__graph.mapclassstorage_1_1Xfs__coll__graph.maprootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootlibstorage-ng-4.2.78-lp152.2.15.1.src.rpmlibstorage-ng-devellibstorage-ng-devel(x86-32)    gcc-c++libstdc++-devellibstorage-ng1pkgconfigpkgconfig(libxml-2.0)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)4.2.783.0.4-14.6.0-14.0-15.2-14.14.1ac`^^@^^@^@^{G^{G^{G^ku^ku^`^Nt^M#@^M#@^J@^I.^B@^;^:@^:@^8 @^%@^!^ P@^^@^@^@^@^@^[^[^[^^^^@^r^,]f@]] @]+]+]]@]@]N@]]]@]߶]e@]]]@]]ƪ@]X]@]µ]µ]d@]]@]@]@]n]@]@]@]w@]v>]rJ@]p]o@]o@]o@]o@]o@]o@]o@]m@]bx@]_@]_@]W@]J@]@1@]>]:@]%@]#0@]@]]@]R]]^@] ] ] ] \@\@\]@\ \@\\@\9\@\@\\8\\\@\@\@\f\f\@\\r@\,@\C@\\\\\\\\\\\\\\\\\|\@\\\@\@\~d\w@\v{\s\s\mA@\mA@\j@\b@\ac\ac\\\Yz\U@\T4\R@\R@\Q\J@\HW@\E@\A\/J\2\U@\ @\\\@\@\&@[@[@[[=@[=@[=@[[[[[[[[H[H[_[_[@[[@[@[@[@[v[%@[@[ݍ[<@[ٙ@[ٙ@[ٙ@[ٙ@[ٙ@[ٙ@[@[@[^[ @[@[u[[[@[R@[R@[R@[][][@[t[#@[[@[@[E[Q@[Q@[@[@[\[\[[@[[9@[@[~[}P@[}P@[{[r@[qr[qr[qr[m~@[l,[l,[l,[j@[j@[j@[j@[j@[j@[j@[i[i[i[i[i[i[i[f[`O@[`O@[U@[L[H@[D[CN@[CN@[2*[*A['[[[@[@[@[@[@[)[)[)[)[)[)[)[)[)[)[)[5@[[@[W[@[c@[c@Z@Z@Z@ZnZnZnZnZnZnZnZnZZZZz@Zz@Zz@ZZ4@ZZZ@ZZK@ZZZ@Z@Z@Z@Zb@Zb@ZZZZZZ@ZmZ@Z@ZZZZZZZZZZy@Z'Z'Z@Z@Z@Z@Z@Z@Z@Z@Z@Z@Z؄Z؄Z؄Z3@Z3@Z3@Z3@Z3@Z3@Z3@Z3@Z3@Z3@Z3@Z3@Z3@Z3@Z3@ZZZԐ@ZԐ@ZԐ@ZJ@Z̧@Z̧@Za@ZZľ@ZlZlZZZ@ZI@ZZZ@ZZZZ`@ZZ@ZkZw@Z@Z@ZZ1@Z1@ZZZZH@ZH@ZH@Z@Z@ZSZ@Z@ZZZZ_@Z_@Z Z Z@ZZZv@Zv@Zv@Z$Z$Z@ZZ}@Z}@Z}@Z}@Z}@Z|;Z|;Z|;Zz@Zz@ZyZyZxG@ZxG@Zu@ZtRZtRZtRZtRZtRZs@Zs@ZqZqZqZp^@Zp^@Zp^@Zp^@Zp^@Zp^@Zp^@Zo Zm@Zk@Zk@Zk@Zk@Zk@ZiZiZiZiZiZiZiZiZiZiZiZiZiZhu@Zhu@Zhu@Zhu@Zhu@Zhu@Zg#Zg#Zg#Zg#Ze@Zc/@Zc/@ZaZ`@Z_:Z_:Z_:Z[F@ZTZTZOhZF.@Z@Y>@Y>@Y:Y:Y9<@Y6@Y6@Y6@Y5GY1S@Y0Y0Y.@Y-^Y%uY%uY"Y"Y@YY;@YR@YY]Y i@Y i@Y Y @Y @YtYtYtY.Y.Y@XXXX@X@XXQ@XX@X@X@X@XXX9@XDX@XۡXۡXP@XP@XXX @XӸXӸXXX@X@X@X@XXXX~@X~@X~@XCXXXf@XXXX@X@XX@XBXBX@X@XYX|@X@X|XwoX[@XOXF@XEVX<@X.@X-X&X@X=X=XXXI@X X @XX@X@Ww@W@W@WW@W@WW_@W_@W@Wv@WWW@W֘W^@Wu@WW@W@WQW@W@W@W@Wt@W9WE@W@W W@W@W~WW~D@W|Wv[@Wu Wu Ws@Wj}Wi,@Wi,@Wi,@WbWaC@W_W^@W^@WZWZWYZ@WYZ@WXWQq@WPWN@WM|WH6WDB@W#LW#LW!@W!@W!@W WW4W4W @VbVn@VV@V@V@VJVJV@V@V@VaV@V@V޾V޾V޾Vm@Vm@Vm@V'@VՄ@V2V2VVV͛@V͛@VIVVŲ@VŲ@VV<@V<@VVV@VVV@VzVy;@Vy;@VwVpVpVpVn@Vn@VhVf@VetVa@Va@V`.V\:@V\:@V\:@VV@VV@VUVTQ@VRVO @VMVMVLh@VKVKVI@VD@VD@VA@VA@VA@V@V@V@V(V'~@V V@V@V@V@V@V@VU/@UT@T@TTTTE@TE@TE@TTTTT@T@T@T@T!T@Tء@TԬTԬTԬTԬTԬTԬT[@T[@T[@T[@T[@T[@T[@T[@T T T T T T T T T T T T T T Tи@Tи@Tи@Tи@Tи@Tи@Tи@Tи@Tи@TfTfTfTfTfTfTfTr@Tr@Tr@Tr@Tr@Tr@T T T T T T T T@T@T@T@T@T@T@T}T}T}T}T}T}T,@T,@T,@T,@T,@T7T7T7T7T7T7T7T7T7T7T@T@T@T@T@T@T@TTTTT@T@T@T@T@T@TTTTTTTZ@TZ@TZ@TZ@TZ@TZ@TZ@TZ@TZ@TTTTTTTTTTT@T@T@T@T@T@T@T@T@T@TTTTTTTTq@Tq@Tq@Tq@Tq@TTTTTTTTTT|T|T@T@T@T@T@T@T@T@T@T@T@T@TMTMTMTMTMTMTMTMTMTMTMTY@TY@TTTTTTTTTp@Tp@Tp@Tp@TTT@T@T@TT@T@T@T@T@T5T5T5T5T5T5T5T5T5T5T5T5T5T5T5T5T5T@T@T@T@TTTTTT@T@T@T@T@T@T@T@T@TLTLTLTLTLTLTLT~@T~@T}T}T}T}T}T|X@T|X@T|X@TxcTxcTxcTw@Tw@TuTuTuTuTto@Tto@Tto@Tto@Tto@Tto@Tto@Tto@Tto@Tto@TsTl@Tl@Tk4Tk4Tg@@TJ?@TJ?@TJ?@TJ?@TJ?@TJ?@TJ?@THTHTHTHTHTHTHTHTG@TG@TG@TG@aschnell@suse.deaschnell@suse.deaschnell@suse.comaschnell@suse.comwfeldt@opensuse.orgwfeldt@opensuse.orgaschnell@suse.comwfeldt@opensuse.organcor@suse.dewfeldt@opensuse.orgwfeldt@opensuse.orgwfeldt@opensuse.orgjlopez@suse.comopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.comaschnell@suse.comaschnell@suse.comjlopez@suse.comaschnell@suse.comopensuse-packaging@opensuse.orgaschnell@suse.comopensuse-packaging@opensuse.orgjlopez@suse.comopensuse-packaging@opensuse.orgaschnell@suse.comopensuse-packaging@opensuse.orgfreek@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.comjlopez@suse.comaschnell@suse.comjlopez@suse.comjlopez@suse.comaschnell@suse.comaschnell@suse.comopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.comjlopez@suse.comaschnell@suse.comaschnell@suse.comaschnell@suse.comaschnell@suse.comopensuse-packaging@opensuse.orgaschnell@suse.comaschnell@suse.comaschnell@suse.comopensuse-packaging@opensuse.orgaschnell@suse.comjlopez@suse.comancor@suse.deopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.comopensuse-packaging@opensuse.organcor@suse.deopensuse-packaging@opensuse.orgaschnell@suse.comaschnell@suse.comjlopez@suse.comopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.comaschnell@suse.comaschnell@suse.comopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgfreek@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.comaschnell@suse.comaschnell@suse.comopensuse-packaging@opensuse.orgwfeldt@opensuse.orgjlopez@suse.comopensuse-packaging@opensuse.organtoine.belvire@opensuse.orgmedwin@opensuse.orgaschnell@suse.comaschnell@suse.comaschnell@suse.deaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgfreek@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.comaschnell@suse.comaschnell@suse.deaschnell@suse.deaschnell@suse.dejlopez@suse.comjlopez@suse.comaschnell@suse.comweblate-noreply@opensuse.orgaschnell@suse.deaschnell@suse.deaschnell@suse.comaschnell@suse.deaschnell@suse.delslezak@suse.czweblate-noreply@opensuse.orgaschnell@suse.comaschnell@suse.comaschnell@suse.comaschnell@suse.comaschnell@suse.comaschnell@suse.comopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgweblate-noreply@opensuse.orgaschnell@suse.comopensuse-packaging@opensuse.orgsbrabec@suse.czschubi@suse.deaschnell@suse.comaschnell@suse.comaschnell@suse.comaschnell@suse.comaschnell@suse.comaschnell@suse.comaschnell@suse.comjreidinger@suse.czaschnell@suse.comopensuse-packaging@opensuse.orgaschnell@suse.comweblate-noreply@opensuse.orgopensuse-packaging@opensuse.orgweblate-noreply@opensuse.orgopensuse-packaging@opensuse.orgweblate-noreply@opensuse.orgaschnell@suse.comaschnell@suse.comopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgschubi@suse.deweblate-noreply@opensuse.orgopensuse-packaging@opensuse.orgVojtech.Zeisek@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.comopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.organtoine.belvire@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgfreek@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.comaschnell@suse.comopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.comaschnell@suse.comaschnell@suse.comopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.comVojtech.Zeisek@opensuse.organtoine.belvire@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgshundhammer@suse.deshundhammer@suse.deaschnell@suse.comaschnell@suse.comaschnell@suse.comshundhammer@suse.deaschnell@suse.comjreidinger@suse.czopensuse-packaging@opensuse.orgshundhammer@suse.defreek@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgjreidinger@suse.czaschnell@suse.comopensuse-packaging@opensuse.orgjreidinger@suse.czfreek@opensuse.orglslezak@suse.czopensuse-packaging@opensuse.orglslezak@suse.czopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.comjreidinger@suse.czaschnell@suse.comopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.comaschnell@suse.comaschnell@suse.comopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgwfeldt@opensuse.orgwfeldt@opensuse.orgjreidinger@suse.czschubi@suse.demvidner@suse.czopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgfreek@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.deaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgaschnell@suse.delslezak@suse.czopensuse-packaging@opensuse.orgaschnell@suse.dewfeldt@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.dewfeldt@opensuse.orgwfeldt@opensuse.orgaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.dejlopez@suse.comaschnell@suse.deopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.organcor@suse.deopensuse-packaging@opensuse.orgjlopez@suse.comopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgVojtech.Zeisek@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgfreek@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.dejlopez@suse.comaschnell@suse.deopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgVojtech.Zeisek@opensuse.orgfreek@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.deshundhammer@suse.deopensuse-packaging@opensuse.orgaschnell@suse.deigonzalezsosa@suse.comopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgfisiu@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgfreek@opensuse.orgopensuse-packaging@opensuse.orgfreek@opensuse.orgaschnell@suse.deaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.organtoine.belvire@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgweblate-noreply@opensuse.orgwfeldt@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgfreek@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgfreek@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deancor@suse.deancor@suse.dejlopez@suse.comaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deshundhammer@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.dejlopez@suse.comaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.deaschnell@suse.deshundhammer@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deshundhammer@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.dewfeldt@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgshundhammer@suse.deaschnell@suse.deaschnell@suse.deancor@suse.deaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.comaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgmvidner@suse.czopensuse-packaging@opensuse.orgaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.deaschnell@suse.comopensuse-packaging@opensuse.orgaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgwfeldt@opensuse.orgaschnell@suse.deshundhammer@suse.deaschnell@suse.deancor@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.dejlopez@suse.comaschnell@suse.deopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.dewfeldt@opensuse.orgaschnell@suse.deancor@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deweblate-noreply@opensuse.orgaschnell@suse.deaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.deaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgaschnell@suse.deaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgaschnell@suse.deaschnell@suse.deweblate-noreply@opensuse.orgaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgigonzalezsosa@suse.comopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgaschnell@suse.deigonzalezsosa@suse.comaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgaschnell@suse.deaschnell@suse.deaschnell@suse.deVojtech.Zeisek@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgfreek@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgaschnell@suse.deaschnell@suse.deaschnell@suse.delslezak@suse.czaschnell@suse.deopensuse-packaging@opensuse.orgaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgopensuse-packaging@opensuse.orgshundhammer@suse.deopensuse-packaging@opensuse.orgaschnell@suse.comopensuse-packaging@opensuse.orgaschnell@suse.deopensuse-packaging@opensuse.orgfreek@opensuse.orgaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deshundhammer@suse.dewfeldt@opensuse.orgaschnell@suse.deaschnell@suse.deaschnell@suse.dewfeldt@opensuse.orgaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.dejlopez@suse.comaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.dejlopez@suse.comaschnell@suse.deaschnell@suse.deaschnell@suse.detchvatal@suse.comaschnell@suse.deaschnell@suse.deaschnell@suse.dejlopez@suse.comaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.dejlopez@suse.comjlopez@suse.comaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deancor@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgshundhammer@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deshundhammer@suse.deaschnell@suse.deaschnell@suse.deancor@suse.deaschnell@suse.deaschnell@suse.dejlopez@suse.comshundhammer@suse.deaschnell@suse.deshundhammer@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.dejlopez@suse.comaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.delslezak@suse.czaschnell@suse.deshundhammer@suse.deaschnell@suse.deancor@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deancor@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deancor@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deancor@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deancor@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deshundhammer@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.dejsrain@suse.czaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.comancor@suse.deaschnell@suse.comaschnell@suse.comshundhammer@suse.deancor@suse.dewfeldt@opensuse.orgaschnell@suse.dewfeldt@opensuse.orgaschnell@suse.deancor@suse.deaschnell@suse.deaschnell@suse.deopensuse-packaging@opensuse.orgaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deancor@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deshundhammer@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.detgoettlicher@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deshundhammer@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.degs@suse.deshundhammer@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.demvidner@suse.czmvidner@suse.czaschnell@suse.comaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.comaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.deaschnell@suse.de- prefer file system over empty MS-DOS partition table (bsc#1186823) - 4.2.78- remove double mount options (see bsc#1186298) - 4.2.77- merge gh#openSUSE/libstorage-ng#754 - added UsedFeature for NVMe disks (for bsc#1172866) - 4.2.76- merge gh#openSUSE/libstorage-ng#734 - merge gh#openSUSE/libstorage-ng#732 - merge gh#openSUSE/libstorage-ng#717 - merge gh#openSUSE/libstorage-ng#715 - track device block size when creating an Md RAID (bsc#1164295) - simplify combining disks with different block sizes into RAID (bsc#1164295) - add block_size check for Md::add_device() - update doc on RAID block size - ignore clusterd VGs also in vgchange command (bsc#1161775) - ignore umount/swapoff failure if it looks inactive already (bsc#1168615) - fixed typo - 4.2.75- merge gh#openSUSE/libstorage-ng#719 - document device block size handling (RAID, LVM, BTRFS) - document device block size handling (BCACHE) - clarify LV block size remark - 4.2.74- merge gh#openSUSE/libstorage-ng#720 - fix unit test - 4.2.73- merge gh#openSUSE/libstorage-ng#718 - allow control over environment variables - query number of partition slots from parted - respect number of partition slots reported by parted for GPT (bsc#1161783) - run travis with "--privileged" to avoid permissions error - 4.2.72- merge gh#openSUSE/libstorage-ng#714 - simplify combining disks with different block sizes into RAID (bsc#1164295) - Revert "add tests for adjust_block_size()" - Revert "add adjust_block_size() method to Region class (bsc#1164295)" - update doc - 4.2.71- merge gh#openSUSE/libstorage-ng#713 - Make BlkDevice::possible_mount_bys public (for bsc#1166096) - Increase minor so version - 4.2.70- merge gh#openSUSE/libstorage-ng#712 - update doc on RAID block size - 4.2.69- merge gh#openSUSE/libstorage-ng#711 - increase minor so version - 4.2.68- merge gh#openSUSE/libstorage-ng#709 - add adjust_block_size() method to Region class (bsc#1164295) - track device block size when creating an Md RAID (bsc#1164295) - add tests for adjust_block_size() - add block_size check for Md::add_device() - 4.2.67- merge gh#openSUSE/libstorage-ng#708 - merge gh#openSUSE/libstorage-ng#707 - Translated using Weblate (Finnish) (bsc#1149754) - Add option for ignoring clustered LVM - Update lib version - Ignore clustered LVM - Revert "Add option for ignoring clustered LVM" - Revert "Update lib version" - Revert "Translated using Weblate (Finnish)" (bsc#1149754) - Sync branches (SLE-15-SP1) - 4.2.66- Translated using Weblate (Spanish) (bsc#1149754) - 4.2.65- Translated using Weblate (Italian) (bsc#1149754) - 4.2.64- Translated using Weblate (French) (bsc#1149754)- Translated using Weblate (Chinese (Taiwan)) (bsc#1149754) - 4.2.63- Translated using Weblate (Chinese (China)) (bsc#1149754) - 4.2.62- merge gh#openSUSE/libstorage-ng#706 - added support for btrfs RAID1C{3,4} - increase minor so version - 4.2.61- merge gh#openSUSE/libstorage-ng#705 - fixed failure message - 4.2.60- merge gh#openSUSE/libstorage-ng#704 - added being and end function to ProbeCallbacks - extended documentation - 4.2.59- merge gh#openSUSE/libstorage-ng#703 - Remove OutputProcessor class- merge gh#openSUSE/libstorage-ng#702 - added callback for missing commands during probing - added unit tests - improved readability of defines for external commands - simplyfied code - fixed typo - added probing callback for missing commands - 4.2.58- Translated using Weblate (Portuguese (Brazil)) (bsc#1149754) - 4.2.57- merge gh#openSUSE/libstorage-ng#701 - check for existence of lvm vg before using it (bsc#1161191) - 4.2.56- Translated using Weblate (Finnish) (bsc#1149754) - 4.2.55- merge gh#openSUSE/libstorage-ng#700 - merge gh#openSUSE/libstorage-ng#699 - Unmount when mount point was active - Mount when mount point is active - Bump version - Add comments - Fix mount and unmount (forward port) - 4.2.54- Translated using Weblate (Slovak) (bsc#1149754) - 4.2.53- merge gh#openSUSE/libstorage-ng#698 - remove default option '-m crc=1' for mkfs.xfs - use udevadm from /usr/bin instead of /sbin (bsc#1160890) - 4.2.52- Translated using Weblate (German) (bsc#1149754) - 4.2.51- Translated using Weblate (Dutch) (bsc#1149754)- Translated using Weblate (Catalan) (bsc#1149754)- Translated using Weblate (Portuguese (Brazil)) (bsc#1149754) - 4.2.50- Translated using Weblate (Japanese) (bsc#1149754)- Translated using Weblate (Czech) (bsc#1149754)- merge gh#openSUSE/libstorage-ng#696 - updated pot and po files - 4.2.49- merge gh#openSUSE/libstorage-ng#697 - merge gh#openSUSE/libstorage-ng#693 - Translated using Weblate (Estonian) (bsc#1149754) - Translated using Weblate (Finnish) (bsc#1149754) - Add unit tests - Bump version - Ensure default to 0 for optional columns - Improve test - Revert "Translated using Weblate (Finnish)" (bsc#1149754) - Revert "Translated using Weblate (Estonian)" (bsc#1149754) - Allow optional fstab columns (merge SLE-15-SP1) - 4.2.48- merge gh#openSUSE/libstorage-ng#695 - added probing of BitLocker (bsc#1159318) - added unit test - fixed message - add minimal support for BitLocker - 4.2.47- merge gh#openSUSE/libstorage-ng#694 - Fix partition id when creating partition - Bump version - 4.2.46- merge gh#openSUSE/libstorage-ng#691 - Add method to get partition id name - Bump version - Add note - Partition Id names - 4.2.45- merge gh#openSUSE/libstorage-ng#692 - improved sort-key for block devices (for bsc#1140018) - extended documentation - 4.2.44- merge gh#openSUSE/libstorage-ng#690 - provide sort-key for device name (for bsc#1140018) - adapted utility programs to changes in networkx 2.4 - removed obsolete variable - 4.2.43- Translated using Weblate (Finnish) (bsc#1149754) - 4.2.42- Translated using Weblate (German) (bsc#1149754) - 4.2.41- merge gh#openSUSE/libstorage-ng#689 - use ranks in graphviz output to ease readability (bsc#1149154) - reduce test devicegraph to required information - 4.2.40- merge gh#openSUSE/libstorage-ng#688 - Add new callbacks for LUKS activation - Bump version - Add specialized Luks callbacks - 4.2.39- merge gh#openSUSE/libstorage-ng#687 - use correct size for btrfs resize command during shrink (bsc#1157762) - 4.2.38- merge gh#openSUSE/libstorage-ng#686 - extended some testcases to also check executed commands - merged testsuite/actions into testsuite/dependencies - added tests for shrinking btrfs - extended tests - extended and added testcases - 4.2.37- merge gh#openSUSE/libstorage-ng#685 - added testcases for growing btrfs - check that all command and file mockups are used - added testcases for growing and shrinking ext4 - added testcases for resizing filesystems - 4.2.36- merge gh#openSUSE/libstorage-ng#684 - list all devices in subvolume actions (bsc#1152523) - consistent list of block devices in compound actions - removed unneeded use of c_str - updated explanations for translators - show all block devices for action texts of btrfs subvolumes - 4.2.35- Translated using Weblate (Estonian) (bsc#1149754) - 4.2.34- merge gh#openSUSE/libstorage-ng#683 - extended unit test (bsc#1135341) - updated documentation (bsc#1149148) - added internal check - fixed typo - 4.2.33- merge gh#openSUSE/libstorage-ng#682 - merge gh#openSUSE/libstorage-ng#681 - Translated using Weblate (Danish) (bsc#1149754) - Translated using Weblate (Estonian) (bsc#1149754) - fixed handling of btrfs subvolumes with special (regex control) characters in the path (bsc#1135341) - 4.2.32- merge gh#openSUSE/libstorage-ng#680 - fixed escaping of graphviz escString (bsc#1157916) - 4.2.31- Translated using Weblate (Estonian) (bsc#1149754) - 4.2.30- merge gh#openSUSE/libstorage-ng#679 - use estimation from resize2fs for min size of ext4 (bsc#1149148) - use 64bit feature forr max size of ext4 - separated parser for ntfsresize output - added example programs - added unit tests - extended exception logging - cleanup - consistent naming of example programs - changed path of resize2fs to /usr/sbin - improved calculation of resize information - 4.2.29- merge gh#openSUSE/libstorage-ng#678 - Only join entries when path matches - Select the most reasonable mount point - Add unit tests - Update version - Bind mount workaround - 4.2.28- merge gh#openSUSE/libstorage-ng#677 - Make default mount_options public (needed for jsc#SLE-7687) - Bump version - Rename Mountable::Impl#get_default_mount_options - Split MountPoint#set_default_mount_options into pieces (needed for jsc#SLE-7687) - 4.2.27- Translated using Weblate (Estonian) (bsc#1149754) - 4.2.26- Translated using Weblate (Estonian) (bsc#1149754) - 4.2.25- Translated using Weblate (Estonian) (bsc#1149754) - 4.2.24- Translated using Weblate (Estonian) (bsc#1149754) - 4.2.23- Translated using Weblate (Estonian) (bsc#1149754) - 4.2.22- Translated using Weblate (Estonian) (bsc#1149754) - 4.2.21- Translated using Weblate (Estonian) (bsc#1149754) - 4.2.20- merge gh#openSUSE/libstorage-ng#676 - handle is_permanent() in possible_mount_bys() (bsc#1155566) - simplified code - 4.2.19- Translated using Weblate (Estonian) (bsc#1149754) - 4.2.18- merge gh#openSUSE/libstorage-ng#675 - Log messages about the mount_by fallback are just warnings (related to bsc#1151075) - 4.2.17- Translated using Weblate (Chinese (Taiwan)) (bsc#1149754) - 4.2.16- merge gh#openSUSE/libstorage-ng#674 - cache luks activation information (for bsc#1129496) - use password from LUKS activation for resize (bsc#1153871) - extended integration test - fixed typos - 4.2.15- merge gh#openSUSE/libstorage-ng#673 - parse cipher and key size in cryptsetup output - added cipher and key size to Encryption (for jsc#SLE-7376) - probe sector size for Encryption - extended documentation - added sanity check - coding style - added test case for paes cipher - handle cipher and key size for encryption - 4.2.14- merge gh#openSUSE/libstorage-ng#672 - Add open_options - Bump version - Extra options to open encryption - 4.2.13- Translated using Weblate (Danish) (bsc#1149754) - 4.2.12- Translated using Weblate (Catalan) (bsc#1149754) - 4.2.11- merge gh#openSUSE/libstorage-ng#671 - added integration test - 4.2.10- merge gh#openSUSE/libstorage-ng#670 - added notes - 4.2.9- merge gh#openSUSE/libstorage-ng#668 - removed unneeded code - cleanup integration tests - code cleanup - 4.2.8- Translated using Weblate (Japanese) - 4.2.7- Translated using Weblate (Slovak) - 4.2.6- Translated using Weblate (Portuguese (Brazil))- Translated using Weblate (Dutch)- Translated using Weblate (Czech)- merge gh#openSUSE/libstorage-ng#667 - update pot and po files - 4.2.5- merge gh#openSUSE/libstorage-ng#666 - added note - use dev_t to save major and minor numbers - improved unit test - coding style - consistent function name - added support for plain encryption (bsc#1088641) - added unit test - added integration tests - 4.2.4- merge gh#openSUSE/libstorage-ng#665 - extended documentation - 4.2.3- Translated using Weblate (Chinese (China)) - 4.2.2- merge gh#openSUSE/libstorage-ng#663 - update packaging documentation - 4.2.1- merge gh#openSUSE/libstorage-ng#662 - merge gh#openSUSE/libstorage-ng#661 - Adapt Dockerfile for SLE-15-SP1 - Translated using Weblate (Slovak) - Translated using Weblate (Catalan) - Translated using Weblate (Czech) - Translated using Weblate (Japanese) - Translated using Weblate (Arabic) - Translated using Weblate (Chinese (China)) - Translated using Weblate (Chinese (Taiwan)) - Translated using Weblate (Dutch) - Translated using Weblate (French) - Translated using Weblate (German) - Translated using Weblate (Hungarian) - Translated using Weblate (Italian) - Translated using Weblate (Korean) - Translated using Weblate (Polish) - Translated using Weblate (Russian) - Translated using Weblate (Spanish) - Translated using Weblate (Swedish) - Translated using Weblate (Portuguese (Brazil)) - Translated using Weblate (Finnish) - Fix dectection of surrounding region (bsc#1146686) - Bump lib version - Fix surrounding detection - Revert "Translated using Weblate (Catalan)" - Revert "Translated using Weblate (Finnish)" - Revert "Translated using Weblate (Dutch)" - Revert "Translated using Weblate (Portuguese (Brazil))" - Revert "Translated using Weblate (Swedish)" - Revert "Translated using Weblate (Spanish)" - Revert "Translated using Weblate (Russian)" - Revert "Translated using Weblate (Polish)" - Revert "Translated using Weblate (Korean)" - Revert "Translated using Weblate (Italian)" - Revert "Translated using Weblate (Hungarian)" - Revert "Translated using Weblate (German)" - Revert "Translated using Weblate (French)" - Revert "Translated using Weblate (Chinese (Taiwan))" - Revert "Translated using Weblate (Chinese (China))" - Revert "Translated using Weblate (Arabic)" - Revert "Translated using Weblate (Japanese)" - Revert "Translated using Weblate (Czech)" - Revert "Translated using Weblate (Slovak)" - Revert "Adapt Dockerfile for SLE-15-SP1" - Merge SLE-15-SP1 - 4.2.0- Translated using Weblate (Chinese (China)) - 4.1.145- Translated using Weblate (French) - 4.1.144- Translated using Weblate (Indonesian) - 4.1.143- merge gh#openSUSE/libstorage-ng#660 - added functions to query existance of holders - 4.1.142- merge gh#openSUSE/libstorage-ng#659 - added parser for 'cryptsetup luksDump' - added example - added support for LUKS2 - extended documentation - coding style - extended integration tests - fixed documentation - fixed typo - relaxed parser for whitespace changes - LUKS2 support - 4.1.141- merge gh#openSUSE/libstorage-ng#658 - probe zone model for disks - added unit test - avoid compiler warning - coding style - 4.1.140- merge gh#openSUSE/libstorage-ng#657 - extended documentation - 4.1.139- merge gh#openSUSE/libstorage-ng#656 - improve sorting of pmem devices - 4.1.138- Translated using Weblate (German) - 4.1.137- Translated using Weblate (Portuguese (Brazil)) - 4.1.136- Translated using Weblate (Chinese (China)) - 4.1.135- Translated using Weblate (Slovak) - 4.1.134- Translated using Weblate (Dutch) - 4.1.133- Translated using Weblate (Japanese) - 4.1.132- Translated using Weblate (Czech) - 4.1.131- Translated using Weblate (Catalan) - 4.1.130- merge gh#openSUSE/libstorage-ng#655 - allow to customize style of graphviz output - use new style api - added examples for style api usage - coding style - added unit test - 4.1.129- merge gh#openSUSE/libstorage-ng#654 - updated pot and po files - 4.1.128- merge gh#openSUSE/libstorage-ng#653 - improve filesystem related commit action messages - added unit test - added integration test - removed unneeded include statement- merge gh#openSUSE/libstorage-ng#652 - added unit test for LVM over MD - 4.1.127- merge gh#openSUSE/libstorage-ng#651 - extended fstab handling for multiple devices btrfs - added unit test - fixed documentation - 4.1.126- merge gh#openSUSE/libstorage-ng#650 - sort block devices when creating btrfs (needed in testsuite) - 4.1.125- merge gh#openSUSE/libstorage-ng#649 - use devid from devicegraph when resizing btrfs - extended integration test - added note - fix resizing btrfs on e.g. LVM - 4.1.124- merge gh#openSUSE/libstorage-ng#648 - allow to reuse commands and files in mockup files - read sub uuid in blkid output - updated devicegraphs - add id to FilesystemUser - removed obsolete setenv calls to enable multiple devices btrfs - work on btrfs multiple device support - 4.1.123- merge gh#openSUSE/libstorage-ng#647 - Enable multi-device Btrfs probing by default - Bump lib version - Enable multi-device Btrfs by default - 4.1.122- merge gh#openSUSE/libstorage-ng#646 - Initial changes - Rename auxiliary struct - Block shrink multi-device Btrfs - Adapt action text when growing multi-device Btrfs - Add integration test - Bump lib version - Resize multi-device Btrfs - 4.1.121- merge gh#openSUSE/libstorage-ng#645 - extended documentation - 4.1.120- Translated using Weblate (Dutch) - Translated using Weblate (Finnish) - 4.1.119- merge gh#openSUSE/libstorage-ng#644 - added unit test - added integration tests - removed unneeded virtual specifier - wait for block device - moved integration tests - added note - allow to add devices to existing btrfs (for jsd#SLE-3877) - 4.1.118- merge gh#openSUSE/libstorage-ng#643 - extended documentation - 4.1.117- merge gh#openSUSE/libstorage-ng#642 - added documentation about multiple devices btrfs - added example - 4.1.116- merge gh#openSUSE/libstorage-ng#641 - handle mixed mode in output of 'btrfs filesystem df' - 4.1.115- merge gh#openSUSE/libstorage-ng#640 - parse UUID in output of mkfs.btrfs - fixed exception message - 4.1.114- merge gh#openSUSE/libstorage-ng#639 - Use the Docker image from OBS - 4.1.113- Translated using Weblate (Indonesian) - 4.1.112- merge gh#openSUSE/libstorage-ng#638 - parse devid in output of 'btrfs filesystem show' - reuse predefined regex - 4.1.111- merge gh#openSUSE/libstorage-ng#637 - extended documentation - changed wording - 4.1.110- merge gh#openSUSE/libstorage-ng#636 - handle btrfs raid levels during create - added unit test - fixed typo - 4.1.109- merge gh#openSUSE/libstorage-ng#635 - handle multiple devices for btrfs subvolumes - 4.1.108- merge gh#openSUSE/libstorage-ng#634 - added parser for 'btrfs filesystem df' - probe btrfs with multiple devices - updated unit test - added unit test - added integration tests - extended documentation - added pre-check for btrfs - added checks for nullptr - renamed variable (that really ties the function together) - simplyfied interface - coding style and cleanup - work on btrfs with multiple devices - 4.1.107- merge gh#openSUSE/libstorage-ng#633 - make get_displayname available (to_s is overridden by use_ostream) - added unit tests - coding style - fixed class names - make get_displayname() available in ruby - 4.1.106- Translated using Weblate (Portuguese (Brazil)) - 4.1.105- Translated using Weblate (Swedish) - 4.1.104- Translated using Weblate (Spanish)- Translated using Weblate (Slovak)- Translated using Weblate (Russian)- Translated using Weblate (Polish)- Translated using Weblate (Korean)- Translated using Weblate (Italian)- Translated using Weblate (Hungarian)- Translated using Weblate (German)- Translated using Weblate (Dutch)- Translated using Weblate (Czech)- Translated using Weblate (Catalan)- Translated using Weblate (Arabic)- Translated using Weblate (Arabic)- Translated using Weblate (Arabic) - Translated using Weblate (Catalan) - Translated using Weblate (Chinese (China)) - Translated using Weblate (Chinese (Taiwan)) - Translated using Weblate (Czech) - Translated using Weblate (Dutch) - Translated using Weblate (French) - Translated using Weblate (German) - Translated using Weblate (Hungarian) - Translated using Weblate (Italian) - Translated using Weblate (Japanese) - Translated using Weblate (Korean) - Translated using Weblate (Polish) - Translated using Weblate (Portuguese (Brazil)) - Translated using Weblate (Russian) - Translated using Weblate (Slovak) - Translated using Weblate (Spanish) - Translated using Weblate (Swedish) - 4.1.103- merge gh#openSUSE/libstorage-ng#630 - fix compilation with -O0 - 4.1.102- Translated using Weblate (Slovak) - 4.1.101- Translated using Weblate (Galician) - Translated using Weblate (Portuguese (Brazil)) - Translated using Weblate (German) - Translated using Weblate (Polish) - 4.1.100- Unifying name Bcache/bcache to bcache (#629) - 4.1.99- merge gh#openSUSE/libstorage-ng#628 - handle topology for Partition and Luks - added unit test for bsc#1121129 - improved calculation of usable size for LVM PVs (bsc#1121129) - 4.1.98- merge gh#openSUSE/libstorage-ng#625 - moved topology from PartitionableImpl to BlkDeviceImpl - added get_sysfs_file to BlkDeviceImpl - use new get_sysfs_file - added save_to_string to XmlFile (for debugging) - read pe_start from pvs command - coding style - enable logging - added pe_start to LvmPvImpl - added get_usable_size() to LvmPv - added unit test for LvmPv::get_usable_size() - updated hyper link - added documentation - preparations for bsc#1121129 - 4.1.97- merge gh#openSUSE/libstorage-ng#621 - handle entries in crypttab whose block device do not exist (bsc#1123342) - added unit test - added documentation - added explanation - renamed variable - 4.1.96- merge gh#openSUSE/libstorage-ng#620 - extended documentation - 4.1.95- merge gh#openSUSE/libstorage-ng#619 - disable parted-sector-bug workaround on virtio-blk DASDs (bsc#1112037) - avoid empty nodes in mockup files - extended testsuite helper TsCmpActiongraph - added unit tests - throw exception based on Exception class - enable verbose output of checks during build - 4.1.94- merge gh#openSUSE/libstorage-ng#618 - updated pot and po files - 4.1.93- merge gh#openSUSE/libstorage-ng#617 - extended parser for lvs command - added function to join Texts - added unit tests - use callback to report unsupported logical volumes (bsc#1099744) - coding style - allow to ignore errors during in probe utility - consistent message style - added function to join names of block devices - improved messages for creating volume groups and mds - consistent naming style - use new join function in message about deleting filesystems - fixed typo - 4.1.92- merge gh#openSUSE/libstorage-ng#615 - Workaround upgrade with multiple mout points per block device (bsc#1118865) - 4.1.91- merge gh#openSUSE/libstorage-ng#616 - added debugging code - extended unit test - 4.1.90- merge gh#openSUSE/libstorage-ng#613 - Rename method - Add method for removing a bcache cset - Add actions to modify an existing bcache - Increase minor version - Fix error messages - Small fixes - Allow to modify Bcache devices - 4.1.89- merge gh#openSUSE/libstorage-ng#614 - detect DASDs using virtio-blk (bsc#1112037) - added unit test - avoid copying objects - 4.1.88- Translated using Weblate (Dutch) - Translated using Weblate (Slovak) - 4.1.87- merge gh#openSUSE/libstorage-ng#612 - Fix dead links to old libstorage in the documentation- Translated using Weblate (Catalan) - Translated using Weblate (Chinese (China)) - Translated using Weblate (Czech) - Translated using Weblate (Danish) - Translated using Weblate (Japanese) - Translated using Weblate (Russian) - Translated using Weblate (Slovak) - Translated using Weblate (Spanish) - 4.1.86- merge gh#openSUSE/libstorage-ng#611 - Remove setters for non-permanent stored values - Extend Bcache API with helper methods - Use bcache command - Increase minor version - 4.1.85- Translated using Weblate (Swedish) - Translated using Weblate (Chinese (Taiwan)) - Translated using Weblate (Arabic) - Translated using Weblate (Dutch) - Translated using Weblate (French) - Translated using Weblate (German) - Translated using Weblate (Hungarian) - Translated using Weblate (Korean) - Translated using Weblate (Polish) - Translated using Weblate (Russian) - 4.1.84- merge gh#openSUSE/libstorage-ng#610 - check for some storage signatures next to partition tables (bsc#1115807) - added unit test - increase patchlevel - updated pot and po files - 4.1.83- merge gh#openSUSE/libstorage-ng#609 - added roles to class MdadmDetail - probe devices order for MD RAIDs (bsc#1083542) - extended documentation - check for duplicate entries in mockup files - updated pot and po files - added callback recorder for probe callbacks - probe sort-key for device of MD RAIDs - 4.1.82- merge gh#openSUSE/libstorage-ng#608 - Throw better exceptions - 4.1.81- merge gh#openSUSE/libstorage-ng#607 - Add support for probing Flash-only bcache - Adapt testsuite - Add test for Flash-only bcache probing - CompoundAction: add helper method - Adapt bcache formatter - Add tests - Add bcache doc - Update lib version - Add support for flash-only bcache (with ABI compatibility) - 4.1.80- Translated using Weblate (Spanish) - 4.1.79- merge gh#openSUSE/libstorage-ng#606 - Evaluating correct block size for DASD devices. (Workaround for a parted bug). (bsc#1089554) - 4.1.78- Translated using Weblate (Indonesian) - Translated using Weblate (Spanish) - 4.1.77- merge gh#openSUSE/libstorage-ng#605 - merge gh#openSUSE/libstorage-ng#604 - Relax check for luks correctness bsc#1120070, bsc#1101870 - Unit tests for the fix of bsc#1120070, bsc#1101870 - Merge to master: Relax check for luks correctness bsc#1120070, bsc#1101870 - 4.1.76- Translated using Weblate (Czech) - 4.1.75- Translated using Weblate (Portuguese (Brazil)) - 4.1.74- merge gh#openSUSE/libstorage-ng#602 - merge gh#openSUSE/libstorage-ng#601 - merge gh#openSUSE/libstorage-ng#600 - merge gh#openSUSE/libstorage-ng#599 - use exceptions to handle errors - Create crypttab with proper permissions (bsc#1059972) - Create lock with proper permissions (bsc#1059972) - Create log file with proper permissions (bsc#1059972) - Add missing quoting (bsc#1059972) - Improvements from review - Backport: Fix audit issues - avoid thread unsafe strerror function - Backport: avoid thread unsafe strerror function - Merge SLE-15-GA - 4.1.73- Translated using Weblate (German) - 4.1.72- merge gh#openSUSE/libstorage-ng#598 - avoid thread unsafe strerror function - 4.1.71- merge gh#openSUSE/libstorage-ng#597 - Create crypttab with proper permissions (bsc#1059972) - Create lock with proper permissions (bsc#1059972) - Create log file with proper permissions (bsc#1059972) - Add missing quoting (bsc#1059972) - Improvements from review - Fix audit issues - 4.1.70- Translated using Weblate (Finnish) - 4.1.69- Translated using Weblate (Chinese (China)) - 4.1.68- Translated using Weblate (Spanish) - 4.1.67- Translated using Weblate (Italian) - 4.1.66- Translated using Weblate (Italian) - 4.1.65- Translated using Weblate (Slovak) - 4.1.64- Translated using Weblate (Slovak) - 4.1.63- Translated using Weblate (French) - 4.1.62- Translated using Weblate (Czech)- Translated using Weblate (Japanese) - 4.1.61- Translated using Weblate (Dutch) - 4.1.60- Translated using Weblate (Portuguese (Brazil)) - 4.1.59- Translated using Weblate (Catalan) - 4.1.58- merge gh#openSUSE/libstorage-ng#596 - updated pot and po files- merge gh#openSUSE/libstorage-ng#595 - improved sformat to be type safe and handle Text properly - properly translate partition type texts - properly translate devices size texts - removed now obsolete c_str calls - added comment for translators - reduce format warning level - fixed typo - 4.1.57- Translated using Weblate (Portuguese (Brazil))- Translated using Weblate (Italian) - 4.1.56- Translated using Weblate (Italian)- Translated using Weblate (German)- merge gh#openSUSE/libstorage-ng#594 - use exceptions to handle errors- merge gh#openSUSE/libstorage-ng#593 - added support to create udf (fate#312911) - added integration test - increased so patch number - handle block size in max_size for udf- merge gh#openSUSE/libstorage-ng#592 - added comments for translators- Translated using Weblate (Slovak)- Translated using Weblate (Slovak)- Translated using Weblate (Slovak)- Translated using Weblate (Slovak)- merge gh#openSUSE/libstorage-ng#591 - extended documentation- Translated using Weblate (Czech)- Translated using Weblate (French) - 4.1.55- Translated using Weblate (Chinese (China)) - 4.1.54- merge gh#openSUSE/libstorage-ng#589 - Add method Luks#get_uuid- Translated using Weblate (Czech)- Translated using Weblate (Japanese) - 4.1.53- Translated using Weblate (Italian) - 4.1.52- Translated using Weblate (Catalan) - 4.1.51- merge gh#openSUSE/libstorage-ng#588 - Regenerated potfiles - 4.1.50- merge gh#openSUSE/libstorage-ng#585 - Fixed broken autobuild environment - Support for StrayBlkDevices in CompoundActions (bsc#1085134) - Moved predicates to base class - New unit test for Bcache compound actions - Use new check from superclass - Removed unnecessary include - Support for Bcache in CompoundActions - First (incomplete) CompoundAction formatter for Bcache - Fixed broken English - Use inherited methods - Use actual output for translator examples - Use multiple lines, not one neverending line - First complete CompoundAction formatter for Bcache - First unit test for MD-RAID compound actions - Added CompoundActions formatter for MD-RAIDs - More test cases for MD-RAID - User sanity check - Coding style cleanup - Updated year in useless legalese - Added missing sformat parameter - Added missing parameter doc in translator comment - Fixed translator comments - Moved device list formatting out to separate common function - Use better comparision function - Use existing constants - New CompoundActions- merge gh#openSUSE/libstorage-ng#587 - extended documentation - ported check from snapper - minor improvements - 4.1.49- merge gh#openSUSE/libstorage-ng#586 - mark AUTHORS as %doc- merge gh#openSUSE/libstorage-ng#584 - mark LICENSE file as license - 4.1.48- merge gh#openSUSE/libstorage-ng#583 - Use predicates to make the code much better readable - Added missing return - Use speaking function names for getters - Moved methods to base class - Use predicates and speaking getters to make the code much better readable (bsc#1085134) - 4.1.47- merge gh#openSUSE/libstorage-ng#582 - make format of po files consistent with gettext - 4.1.46- merge gh#openSUSE/libstorage-ng#580 - add bcache attributes (fate#325346) - [RFC] add bcache attributes (fate#325346) - 4.1.45- Translated using Weblate (Chinese (China)) - 4.1.44- merge gh#openSUSE/libstorage-ng#581 - Added test case for weird UUID (bsc#1102572) - Whitespace - Fixed blkid output parser to honor escaped quotes (bsc#1102572) - Fixed blkid output parser to honor escaped quotes - 4.1.43- Translated using Weblate (Dutch) - 4.1.42- Translated using Weblate (Indonesian) - 4.1.41- Translated using Weblate (Indonesian)- merge gh#openSUSE/libstorage-ng#579 - Use for bcache cset as display name string "bcache cache" (fate#325346) - 4.1.40- merge gh#openSUSE/libstorage-ng#578 - use predefined constants - 4.1.39- Translated using Weblate (Russian) - 4.1.38- merge gh#openSUSE/libstorage-ng#577 - implement searching for free name for bcache (fate#325346) - 4.1.37- Translated using Weblate (Dutch) - 4.1.36- merge gh#openSUSE/libstorage-ng#576 - Added Travis ccache documentation - Added Travis ccache documentation and cache cleanup - 4.1.35- Translated using Weblate (Chinese (China)) - 4.1.34- merge gh#openSUSE/libstorage-ng#575 - Use ccache in Travis builds - Use ccache in Travis builds (up to 4x faster) - 4.1.33- merge gh#openSUSE/libstorage-ng#574 - Allow to set Md uuid for testing - 4.1.32- Translated using Weblate (Danish) - 4.1.31- merge gh#openSUSE/libstorage-ng#573 - extended documentation - 4.1.30- merge gh#openSUSE/libstorage-ng#572 - Allow bcache to have partitions (fate#325346) - Allow bcache to have partitions - 4.1.29- merge gh#openSUSE/libstorage-ng#571 - do not translate snapshot description (bsc#1092757) - updated pot und po files - 4.1.28- Translated using Weblate (German) - 4.1.27- Translated using Weblate (Portuguese (Brazil)) - 4.1.26- merge gh#openSUSE/libstorage-ng#570 - merge gh#openSUSE/libstorage-ng#569 - fixed variable scope to fix temporary mounting (bsc#1099144) - added unit test - 4.1.25- merge gh#openSUSE/libstorage-ng#568 - avoid setenv after fork (bsc#1107403) - added unit test - 4.1.24- merge gh#openSUSE/libstorage-ng#567 - added luks label to blkid parser - added unit test - 4.1.23- Translated using Weblate (Czech) - 4.1.22- merge gh#openSUSE/libstorage-ng#566 - merge branch SLE-15-GA - merge gh#openSUSE/libstorage-ng#554 - merge gh#openSUSE/libstorage-ng#565 - merge gh#openSUSE/libstorage-ng#560 - merge gh#openSUSE/libstorage-ng#564 - merge gh#openSUSE/libstorage-ng#562 - detect correctly whether a file system is currently mounted (bsc#1105227) - adjust multipath parser to accept nvme related output (bsc#1089353) - Added some class descriptions - MdLinks: make it work also when even /dev/md does not exist - Avoid exceptions for inactive RAIDs (bsc#1090010) - Fixed the existing tests - test inactive noncontainer - detect raid containers differently - Mark inactive RAID in the BlkDevice attribute - A common way to configure the indentation style - Inactive raid - Merge SLE-15-GA into master - 4.1.21- merge gh#openSUSE/libstorage-ng#560 - adjust multipath parser to accept nvme related output (bsc#1089353) - try to make multipath parser more robust - add unit tests - 4.1.20- merge gh#openSUSE/libstorage-ng#562 - detect correctly whether a file system is currently mounted (bsc#1105227) - add unit tests - add spaces - 4.1.19- merge gh#openSUSE/libstorage-ng#563 - do not crash when parsing docker devices (bsc#1104899) - 4.1.18- merge gh#openSUSE/libstorage-ng#561 - Changed licence to GPL-2.0-only. - 4.1.17- merge gh#openSUSE/libstorage-ng#548 - RAID: states of operation - RAID docs: nicer formatting for the older notes - autodocs: ignore Doxygen search data - Don't surprise myself. - 4.1.16- Translated using Weblate (Catalan) - 4.1.15- Translated using Weblate (Czech) - 4.1.14- Translated using Weblate (Chinese (Taiwan)) - 4.1.13- Translated using Weblate (Italian) - 4.1.12- Translated using Weblate (Slovak) - 4.1.11- Translated using Weblate (Dutch) - 4.1.10- Translated using Weblate (Slovak) - 4.1.9- Translated using Weblate (Japanese) - 4.1.8- Translated using Weblate (Slovak)- updated pot and po files- changed pretty name- added documentation- Translated using Weblate (Japanese)- Translated using Weblate (Czech)- merge branch master - Translated using Weblate (German)- merge gh#openSUSE/libstorage-ng#558 - updated pot and po files - 4.1.7- Translated using Weblate (Japanese) - 4.1.6- extended NameSchema class - added StrayBlkDevice class (bsc#1085134) - extended unit tests - added unit test for probing xen xvd devices - cleanup - updated pot and po files - extended documentation - 4.1.5- merge gh#openSUSE/libstorage-ng#557 - Update the "build_dependencies:*" tasks to read the alternative spec file - README.md: libjson-c-devel is needed as well - Added pkgconfig check for the libjson-c library - Do not crash when displaying summary for an encrypted but not mounted disk (bsc#1099181) - Added unit test - Fixed a typo- Translated using Weblate (German) - 4.1.4- merge gh#openSUSE/libstorage-ng#555 - fix build with glibc 2.28 - 4.1.3- merge gh#openSUSE/libstorage-ng#556 - update git2log script to latest version - 4.1.2- Translated using Weblate (Chinese (China)) - 4.1.1- added special handling when creating udev ids starting with dm-uuid for partitions on multipath (bsc#1099394) - use strlen- merge gh#openSUSE/libstorage-ng#550 - document package version scheme- merge gh#openSUSE/libstorage-ng#546 - document package version scheme - 4.1.0- merge gh#openSUSE/libstorage-ng#545 - added document for limits - 3.3.317- merge gh#openSUSE/libstorage-ng#544 - work on creating and deleting bcaches - updated swig catches - added unit tests - added integration tests - reuse code - cleanup - 3.3.316- merge gh#openSUSE/libstorage-ng#543 - use sysfs path in find_by_any_name() - 3.3.315- merge gh#openSUSE/libstorage-ng#542 - added support for f2fs (fate#325755) - added integration test - removed unused code - removed obsolete documentation - 3.3.314- merge gh#openSUSE/libstorage-ng#541 - handle Intel Rapid Start Technology Partition ID (fate#325885) - extended documentation - coding style - 3.3.313- merge gh#openSUSE/libstorage-ng#540 - do not use deprecated header file - coding style - 3.3.312- merge gh#openSUSE/libstorage-ng#539 - handle device type attribute of udevadm info output - removed unused and obsolete file - do not try to activate LUKS on devices used by multipath (bsc#1089699) - improved explanation - 3.3.311- merge gh#openSUSE/libstorage-ng#538 - Add method BlkDevice#is_active - 3.3.310- merge gh#openSUSE/libstorage-ng#537 - updated unit test - extended unit test - fixed exception logging - 3.3.309- Translated using Weblate (Indonesian) - 3.3.308- Translated using Weblate (Russian) - 3.3.307- Translated using Weblate (French) - 3.3.306- merge gh#openSUSE/libstorage-ng#536 - Expose Device#devicegraph (needed for bsc#1094157) - Encryption#set_dm_table_name adjusts #name (for bsc#1094157 and bsc#1094963) - Code improvement from code review - More code improvements from code review - 3.3.305- Translated using Weblate (Chinese (Taiwan))- merge gh#openSUSE/libstorage-ng#535 - Return better exception (related to bsc#1094963) - Fix project name- Translated using Weblate (Portuguese (Brazil))- Translated using Weblate (Spanish)- Translated using Weblate (Slovak) - 3.3.304- Translated using Weblate (Czech) - 3.3.303- Translated using Weblate (Italian) - 3.3.302- Translated using Weblate (Catalan) - 3.3.301- Translated using Weblate (Dutch) - 3.3.300- merge gh#openSUSE/libstorage-ng#534 - handle exception (see bsc#1073633) - 3.3.299- Translated using Weblate (Japanese) - 3.3.298- merge gh#openSUSE/libstorage-ng#533 - merged po files - 3.3.297- merge gh#openSUSE/libstorage-ng#532 - improved error handling during probing partitions (see bsc#1095168) - 3.3.296- Translated using Weblate (Italian) - 3.3.295- Translated using Weblate (Russian) - 3.3.294- Translated using Weblate (Slovak) - 3.3.293- Translated using Weblate (Slovak) - 3.3.292- Translated using Weblate (Spanish) - 3.3.291- Translated using Weblate (Chinese (Taiwan)) - 3.3.290- Translated using Weblate (Chinese (Taiwan)) - 3.3.289- merge gh#openSUSE/libstorage-ng#531 - added helper functions - place repair action before partition actions - insert action to repair GPTs if needed (bsc#1092193) - added unit test - 3.3.288- merge gh#openSUSE/libstorage-ng#530 - Add conflict with old libdmraid (bsc#1088570) - 3.3.287- merge gh#openSUSE/libstorage-ng#529 - fix probing of certain nvme systems (bsc#1093684) - 3.3.286- Translated using Weblate (Portuguese (Brazil)) - 3.3.285- Translated using Weblate (French) - 3.3.284- Translated using Weblate (Italian) - 3.3.283- Translated using Weblate (Czech) - 3.3.282- Translated using Weblate (Dutch) - 3.3.281- Translated using Weblate (Japanese) - 3.3.280- Translated using Weblate (Catalan) - 3.3.279- merge gh#openSUSE/libstorage-ng#528 - added action to fix undersized GPT - updated pot file - merged po files - 3.3.278- merge gh#openSUSE/libstorage-ng#527 - Use stricter NTFS max label size (bsc#1084867) - 3.3.277- Translated using Weblate (Hungarian) - 3.3.276- merge gh#openSUSE/libstorage-ng#526 - improved error message (see bsc#1089554) - 3.3.275- merge gh#openSUSE/libstorage-ng#525 - Fix lt translation - 3.3.274- Translated using Weblate (Chinese (Taiwan))- Translated using Weblate (Korean)- Translated using Weblate (Chinese (China))- Translated using Weblate (Lithuanian) - 3.3.273- Translated using Weblate (Polish) - 3.3.272- Translated using Weblate (Slovak) - 3.3.271- Translated using Weblate (Greek) - 3.3.270- Translated using Weblate (German) - 3.3.269- Translated using Weblate (French) - 3.3.268- Translated using Weblate (Portuguese (Brazil)) - 3.3.267- merge gh#openSUSE/libstorage-ng#524 - fixed probing of NTFS (in special cases) (bsc#1091585) - added unit test - 3.3.266- Translated using Weblate (Catalan) - 3.3.265- Translated using Weblate (Catalan) - 3.3.264- Translated using Weblate (Slovak) - 3.3.263- Translated using Weblate (Italian) - 3.3.262- Translated using Weblate (Spanish) - 3.3.261- Translated using Weblate (Spanish) - 3.3.260- Translated using Weblate (Czech) - 3.3.259- Translated using Weblate (Dutch) - 3.3.258- Translated using Weblate (Japanese) - 3.3.257- Translated using Weblate (Dutch) - 3.3.256- merge gh#openSUSE/libstorage-ng#523 - merged po files - 3.3.255- merge gh#openSUSE/libstorage-ng#522 - centralized reading /sys/block - added function light_probe (for bsc#1090753) - added integration test - 3.3.254- merge gh#openSUSE/libstorage-ng#521 - added stand-alone functions to read fstab and crypttab - added integration tests - removed unneeded include - 3.3.253- Translated using Weblate (Portuguese (Brazil)) - 3.3.252- Translated using Weblate (Swedish) - 3.3.251- Translated using Weblate (Swedish) - 3.3.250- merge gh#openSUSE/libstorage-ng#520 - fixed probing of active flag (bsc#1090520) - improved error handling - 3.3.249- Translated using Weblate (Polish) - 3.3.248- Translated using Weblate (Russian) - 3.3.247- Translated using Weblate (German) - 3.3.246- Translated using Weblate (French) - 3.3.245- Translated using Weblate (French) - 3.3.244- Translated using Weblate (Chinese (Taiwan))- Translated using Weblate (Chinese (China))- Translated using Weblate (Russian) - 3.3.243- Translated using Weblate (German) - 3.3.242- Translated using Weblate (German) - 3.3.241- Translated using Weblate (French) - 3.3.240- Translated using Weblate (French) - 3.3.239- merge gh#openSUSE/libstorage-ng#518 - added function to query allowed MD parities (see bsc#1090182) - 3.3.238- Translated using Weblate (French)- 3.3.237- merge gh#openSUSE/libstorage-ng#519 - update git2log script to avoid identical timestamps in changelog - 3.3.236- Translated using Weblate (Chinese (China))- Translated using Weblate (Chinese (Taiwan)) - 3.3.235- Translated using Weblate (Dutch) - 3.3.234- Translated using Weblate (Korean) - 3.3.233- Translated using Weblate (German) - 3.3.232- Translated using Weblate (Swedish) - 3.3.231- Translated using Weblate (Czech) - 3.3.230- Translated using Weblate (Hungarian) - 3.3.229- Translated using Weblate (Japanese) - 3.3.228- Translated using Weblate (Hungarian) - 3.3.227- Translated using Weblate (Italian)- Translated using Weblate (German) - 3.3.226- Translated using Weblate (Catalan) - 3.3.225- Translated using Weblate (Catalan) - 3.3.224- Translated using Weblate (Czech) - 3.3.223- Translated using Weblate (Spanish) - 3.3.222- Translated using Weblate (Swedish) - 3.3.221- Translated using Weblate (Japanese) - 3.3.220- Translated using Weblate (Arabic) - 3.3.219- Translated using Weblate (Dutch) - 3.3.218- Translated using Weblate (Czech) - 3.3.217- merge gh#openSUSE/libstorage-ng#517 - updated documentation - merged po files (bsc#1089902) - 3.3.216- merge gh#openSUSE/libstorage-ng#516 - fix unused partition slots calculation for logical partitions (bsc#1088483) - added unit test - 3.3.215- merge gh#openSUSE/libstorage-ng#515 - use correct options for multipath (see bsc#1089353) - 3.3.214- merge gh#openSUSE/libstorage-ng#514 - added unit test - 3.3.213- merge gh#openSUSE/libstorage-ng#513 - keep exception type (bsc#1088570) - 3.3.212- merge gh#openSUSE/libstorage-ng#512 - handle new mount type variable also in equal, print, ... - 3.3.211- merge gh#openSUSE/libstorage-ng#511 - Add MountPoint#mount_type to XML format (follow up on bsc#1088426) - 3.3.210- merge gh#openSUSE/libstorage-ng#510 - Expose the vfstype field from fstab (bsc#1088426) - 3.3.209- merge gh#openSUSE/libstorage-ng#509 - Force acceptance of SR (fate#318196) - 3.3.208- merge gh#openSUSE/libstorage-ng#508 - added helper function - support lock within same process - 3.3.207- merge gh#openSUSE/libstorage-ng#507 - added function to set freq and passno - removed unneeded const - added documentation - 3.3.206- merge gh#openSUSE/libstorage-ng#506 - added minix to enum of filesystem types - 3.3.205- merge gh#openSUSE/libstorage-ng#505 - enable system-wide lock - 3.3.204- merge gh#openSUSE/libstorage-ng#504 - handle pid_t in bindings - extended integration test - 3.3.203- merge gh#openSUSE/libstorage-ng#503 - only insert resize action for devices existing in LHS and RHS (bsc#1085523) - added action dependency - added unit tests - fixed typo - added documentation - 3.3.202- merge gh#openSUSE/libstorage-ng#502 - Simplified supplements for lang subpkg (bsc#1081454) - 3.3.201- merge gh#openSUSE/libstorage-ng#501 - make LockException available in API - 3.3.200- merge gh#openSUSE/libstorage-ng#500 - extended documentation - 3.3.199- merge gh#openSUSE/libstorage-ng#499 - provide reasons why resize is not possible - added unit tests - added integration tests - use more common notation - 3.3.198- merge gh#openSUSE/libstorage-ng#498 - added workaround for cryptsetup exit code regression (see bsc#1082640) - added convenience function - 3.3.197- merge gh#openSUSE/libstorage-ng#497 - Enable exception - 3.3.196- merge gh#openSUSE/libstorage-ng#496 - do not recognize 0x1f as extended partition - 3.3.195- merge gh#openSUSE/libstorage-ng#495 - recognize 0x85 as extended partition - 3.3.194- merge gh#openSUSE/libstorage-ng#494 - moved enum to storage namespace - added integration test - use mdadm to delete MD RAID (see bsc#1085470) - 3.3.193- merge gh#openSUSE/libstorage-ng#493 - export more functions in API - 3.3.192- merge gh#openSUSE/libstorage-ng#492 - handle erroneous small disks in get_unused_partition_slots() (bsc#1084777) - added unit tests - added note - 3.3.191- merge gh#openSUSE/libstorage-ng#491 - added functions to copy devices and holders between devicegraphs - 3.3.190- merge gh#openSUSE/libstorage-ng#489 - allow to remove partial volume group (bsc#955870) - updated pot file - added integration test - fixed typo - added convenience function - removed unused function - coding style - handle udev encoding for label in fstab and crypttab - removed unused define - added define by /dev/disk paths - use new defines - simplyfied code - coding style - 3.3.189- merge gh#openSUSE/libstorage-ng#488 - avoid compiler warnings - removed unused capture - improved check function - moved CheckCallbacksRecorder class - extended unit test - propagate force_rw flag (bsc#1079000) - updated documentation - 3.3.188- merge gh#openSUSE/libstorage-ng#487 - handle duplicate LVM PVs during probe - cleanup - added unit test - 3.3.187- merge gh#openSUSE/libstorage-ng#486 - split large function - probe LUKS later - do not probe LUKS on devices used by multipath (bsc#1079817) - added unit test - fixed typo - 3.3.186- merge gh#openSUSE/libstorage-ng#485 - added unit test - 3.3.185- merge gh#openSUSE/libstorage-ng#484 - added unit test - coding style - 3.3.184- merge gh#openSUSE/libstorage-ng#483 - added note - improved logging - try to delete directory before creating btrfs subvolume - handle change of path in mount point - added integration test - handle missing attribute for pvs - do not search for block device of missing pvs - improved exception handling - improved example - fixed log message - 3.3.183- merge gh#openSUSE/libstorage-ng#482 - added check for existence of devicegraphs - 3.3.182- merge gh#openSUSE/libstorage-ng#481 - always allow to activate multipath (see bsc#1082542) - 3.3.181- merge gh#openSUSE/libstorage-ng#480 - log time in several formats to ease debugging - 3.3.180- merge gh#openSUSE/libstorage-ng#479 - recalculate size of volume group when setting extent size (bsc#1079579) - added unit tests - coding style - added documentation - 3.3.179- merge gh#openSUSE/libstorage-ng#478 - generate dot files with more information - 3.3.178- merge gh#openSUSE/libstorage-ng#477 - added callbacks to handle errors during activation (bsc#1057426 and others) - updated pot file - improved integration test - 3.3.177- Translated using Weblate (Swedish) - 3.3.176- Translated using Weblate (Swedish) - 3.3.175- Translated using Weblate (Swedish) - 3.3.174- merge gh#openSUSE/libstorage-ng#476 - improved integration tests - added documentation - 3.3.173- Translated using Weblate (Ukrainian)- Translated using Weblate (Finnish) - 3.3.172- merge gh#openSUSE/libstorage-ng#475 - allow SystemCmd to verify program exit code - added base class for callbacks - added callbacks for probing (bsc#1070459 and many others) - use callbacks base class - use new verify feature of SystemCmd - improved error handling - work on handling errors during probe - updated pot file - use callbacks base class - coding style - extended documentation - 3.3.171- merge gh#openSUSE/libstorage-ng#474 - fixed device existence check (bsc#1082143) - 3.3.170- merge gh#openSUSE/libstorage-ng#473 - Default to GPT for creating partition tables (fate#323457) - 3.3.169- merge gh#openSUSE/libstorage-ng#472 - insert mount and unmount actions for resize - added unit tests - 3.3.168- merge gh#openSUSE/libstorage-ng#471 - fixed parsing /proc/mounts for ntfs - fixed error handling when ntfsresize fails - 3.3.167- merge gh#openSUSE/libstorage-ng#470 - consistent names - remove duplicate actions - added helper functions - fixed integration test - adjust existing unit test to so far supported setup - coding style - renamed function to reflect recent changes - 3.3.166- merge gh#openSUSE/libstorage-ng#469 - added possible_mount_bys() - 3.3.165- merge gh#openSUSE/libstorage-ng#468 - use parted with --ignore-busy (see bsc#1058667) - added convenience functions - 3.3.164- merge gh#openSUSE/libstorage-ng#467 - cleanup - added integration test - added jfs support (boo#1078552) - 3.3.163- merge gh#openSUSE/libstorage-ng#466 - improve ruby bindings - 3.3.162- merge gh#openSUSE/libstorage-ng#465 - extended is_usable_as_blk_device() - 3.3.161- merge gh#openSUSE/libstorage-ng#464 - use system devicegraph during probe- merge gh#openSUSE/libstorage-ng#463 - added function is_usable_as_blk_device() - added function is_usable_as_partitionable() - 3.3.160- merge gh#openSUSE/libstorage-ng#462 - added function to immediately activate/deactivate mount point - added documentation - code cleanup - 3.3.159- merge gh#openSUSE/libstorage-ng#461 - work on error handling - added documentation - coding style - extended test case - 3.3.158- merge gh#openSUSE/libstorage-ng#460 - Removed unit tests that clash with new glibc number formatting (bsc#1079855) - 3.3.157- merge gh#openSUSE/libstorage-ng#459 - extended unit tests - added and improved math functions - do not rely on 80-bit floats (bsc#1078997) - added unit test - added note - 3.3.156- merge gh#openSUSE/libstorage-ng#458 - removed deprecated functions - updated unit test - 3.3.155- merge gh#openSUSE/libstorage-ng#457 - improved error logging - 3.3.154- merge gh#openSUSE/libstorage-ng#454 - allow to set ssh port - 3.3.153- merge gh#openSUSE/libstorage-ng#456 - fetch the full history in travis so the log can be generated correctly - 3.3.152- Translated using Weblate (Dutch) - 3.3.151- merge gh#openSUSE/libstorage-ng#453 - added parser for stat - ignore disks without node in /dev (bsc#1076971) - coding style - 3.3.150- Translated using Weblate (Dutch)- merge gh#openSUSE/libstorage-ng#450 - Ensure not to write malformed /etc/fstab entries (bsc#1066763) - 3.3.149- merge gh#openSUSE/libstorage-ng#451 - work on error handling - 3.3.148- merge gh#openSUSE/libstorage-ng#449 - fixed default value - 3.3.147- merge gh#openSUSE/libstorage-ng#448 - Add GraphvizFlags::DISPLAYNAME to Devicegraph- merge gh#openSUSE/libstorage-ng#447 - allow finer control of flags in write_graphviz- merge gh#openSUSE/libstorage-ng#446 - use sid as vertex id- Translated using Weblate (Hungarian)- Translated using Weblate (Hungarian)- Translated using Weblate (Afrikaans)- merge gh#openSUSE/libstorage-ng#444 - added Mountable::remove_mount_point()- merge gh#openSUSE/libstorage-ng#443 - added PRETTY_CLASSNAME to GraphvizFlags- Translated using Weblate (Chinese (Taiwan))- merge gh#openSUSE/libstorage-ng#442 - renamed integration tests - added integration tests- Translated using Weblate (Chinese (Taiwan))- merge gh#openSUSE/libstorage-ng#441 - added integration test - added udevadm settle call- Translated using Weblate (Korean)- Translated using Weblate (Korean)- Translated using Weblate (Arabic)- Translated using Weblate (Arabic) - 3.3.146- merge gh#openSUSE/libstorage-ng#439 - start rpcbind before doing NFS mounts - cleanup - added integration-test - 3.3.145- Translated using Weblate (Arabic)- merge gh#openSUSE/libstorage-ng#438 - extended documentation - 3.3.144- merge gh#openSUSE/libstorage-ng#437 - distinguish between mounted and unmounted in supports_shrink/grow - 3.3.143- Translated using Weblate (Korean)- Fixed an Arabic format string typo - 3.3.142- Translated using Weblate (Arabic) - 3.3.141- merge gh#openSUSE/libstorage-ng#436 - added sanity check - propagate exception to ruby - 3.3.140- merge gh#openSUSE/libstorage-ng#435 - propagate exception to ruby - 3.3.139- Translated using Weblate (Slovak) - 3.3.138- Translated using Weblate (Slovak)- Translated using Weblate (Slovak) - 3.3.137- Translated using Weblate (Spanish) - 3.3.136- Translated using Weblate (Polish) - 3.3.135- Translated using Weblate (Polish) - 3.3.134- Translated using Weblate (Slovak) - 3.3.133- Translated using Weblate (Slovak)- Translated using Weblate (Slovak) - 3.3.132- Translated using Weblate (Slovak) - 3.3.131- Translated using Weblate (Slovak) - 3.3.130- Translated using Weblate (Slovak) - 3.3.129- Translated using Weblate (Slovak)- Translated using Weblate (Slovak)- Translated using Weblate (Slovak) - 3.3.128- Translated using Weblate (Slovak) - 3.3.127- Translated using Weblate (Slovak) - 3.3.126- Translated using Weblate (Slovak)- Translated using Weblate (Slovak) - 3.3.125- merge gh#openSUSE/libstorage-ng#431 - Update libstorage-ng.spec.in - 3.3.124- merge gh#openSUSE/libstorage-ng#434 - find crypttab entries by correct block device - coding style - removed unused parameters- Translated using Weblate (German) - 3.3.123- merge gh#openSUSE/libstorage-ng#433 - added helper function - improved probing of LUKs - added unit test - allow to find unused mockups - removed unused mockups - use name from crypttab when activating LUKS - allow to include more information in graphviz output - removed unused parser - 3.3.122- Translated using Weblate (German) - 3.3.121- Translated using Weblate (Slovak) - 3.3.120- Translated using Weblate (German) - 3.3.119- merge gh#openSUSE/libstorage-ng#432 - updated - 3.3.118- merge gh#openSUSE/libstorage-ng#430 - Revert "Add libstorage-ng-lang Recommends" - 3.3.117- merge gh#openSUSE/libstorage-ng#429 - Add libstorage-ng-lang Recommends - 3.3.116- merge gh#openSUSE/libstorage-ng#428 - use /etc/fstab and /proc/mounts for probing NFS - added NFS unit test - 3.3.115- merge gh#openSUSE/libstorage-ng#427 - extended integration test - 3.3.114- merge gh#openSUSE/libstorage-ng#426 - fixed alignment calculations - added unit test - 3.3.113- merge gh#openSUSE/libstorage-ng#425 - added new align policy KEEP_START_ALIGN_END - updated unit tests - updated integration tests - 3.3.112- merge gh#openSUSE/libstorage-ng#424 - propagate exception - 3.3.111- Translated using Weblate (Chinese (China)) - 3.3.110- merge gh#openSUSE/libstorage-ng#423 - updated documentation - extended documentation - extended integration test - added convenience functions - updated catches file - added convert function - added integration test - 3.3.109- merge gh#openSUSE/libstorage-ng#422 - added check for active flag - coding style - 3.3.108- Translated using Weblate (Italian) - 3.3.107- Translated using Weblate (German) - 3.3.106- merge gh#openSUSE/libstorage-ng#421 - avoid use of cerr - updated exceptions - coding style - avoid use of cout - 3.3.105- Translated using Weblate (Italian) - 3.3.104- merge gh#openSUSE/libstorage-ng#420 - remove LIBVERSION_MAJOR macro from spec.in - 3.3.103- merge gh#openSUSE/libstorage-ng#418 - check divisor prior to modulo operation - avoid throw in destructor - 3.3.102- merge gh#openSUSE/libstorage-ng#419 - Leave enough space even for 'reiserfs' - 3.3.101- merge gh#openSUSE/libstorage-ng#416 - added obsoletes (bsc#1073645) - removed very old obsoletes - 3.3.100- merge gh#openSUSE/libstorage-ng#417 - Explain why virtio udev links are filtered out- merge gh#openSUSE/libstorage-ng#415 - fixed print call - 3.3.99- merge gh#openSUSE/libstorage-ng#414 - renamed functions - provide find_by_any_name in API (bsc#1073254) - updated catches file - added integration test - 3.3.98- merge gh#openSUSE/libstorage-ng#413 - disable vfat resize since support from utilility is unclear (see bsc#1072479) - 3.3.97- merge gh#openSUSE/libstorage-ng#412 - switch to python 3 - 3.3.96- merge gh#openSUSE/libstorage-ng#410 - added helper function - added helper class - added function to compare by subvolume id - probe active flag for BtrfsSubvolume - 3.3.95- merge gh#openSUSE/libstorage-ng#409 - also renumber extended partitions - 3.3.94- merge gh#openSUSE/libstorage-ng#408 - renumber primary partitions (bsc#1072656) - added unit test - 3.3.93- merge gh#openSUSE/libstorage-ng#406 - removed sorting of results - 3.3.92- merge gh#openSUSE/libstorage-ng#407 - Install libboost_test - 3.3.91- merge gh#openSUSE/libstorage-ng#405 - handle active flag - provide more generic function - coding style - set active flag for blk filesystems - fixed subvolid regex - added log message - 3.3.90- Translated using Weblate (Italian) - 3.3.89- Translated using Weblate (Italian) - 3.3.88- merge gh#openSUSE/libstorage-ng#404 - fixed documentation - 3.3.87- Translated using Weblate (Czech) - 3.3.86- merge gh#openSUSE/libstorage-ng#403 - use print as a function - update examples - 3.3.85- Translated using Weblate (Czech) - 3.3.84- merge gh#openSUSE/libstorage-ng#402 - improved error message - 3.3.83- Translated using Weblate (Ukrainian) - 3.3.82- merge gh#openSUSE/libstorage-ng#401 - package some utils - cleanup - 3.3.81- merge gh#openSUSE/libstorage-ng#400 - added helper functions - sort devices using a sort key - added unit tests - remove sorting - increased library version - fixed usage text - avoid endl - extended documentation - 3.3.80- merge gh#openSUSE/libstorage-ng#399 - increase log line limit - fixed output format - 3.3.79- merge gh#openSUSE/libstorage-ng#398 - coding style - omit pointers - 3.3.78- merge gh#openSUSE/libstorage-ng#397 - handle improved parted output (bsc#1066467) - coding style - 3.3.77- merge gh#openSUSE/libstorage-ng#396 - make PartitionTable::is_partition_id_supported() public - 3.3.76- merge gh#openSUSE/libstorage-ng#395 - removed unused variable- merge gh#openSUSE/libstorage-ng#394 - Don't sort disks and dasds by default- merge gh#openSUSE/libstorage-ng#393 - added unit test - 3.3.75- merge gh#openSUSE/libstorage-ng#392 - added function to get mount_by method - remove "none" from crypt options - get mount-by method from crypttab - added crypt_options to Encryption class - improved unit test - coding style - coding style - 3.3.74- merge gh#openSUSE/libstorage-ng#391 - added logging - 3.3.73- 3.3.72- merge gh#openSUSE/libstorage-ng#390 - do not rely on sorting - added compare by sid function - 3.3.71- merge gh#openSUSE/libstorage-ng#389 - added mount-by variable for encryption - extended documentation - use get_mount_by_name for luks - coding style - added logging - 3.3.70- merge gh#openSUSE/libstorage-ng#387 - log errors of found by check - added checks (disabled until yast2-storage-ng is improved) - coding style - added missing member variables in print function - added check - added documentation - 3.3.69- Translated using Weblate (Portuguese (Brazil)) - 3.3.68- Translated using Weblate (Portuguese (Brazil)) - 3.3.67- merge gh#openSUSE/libstorage-ng#386 - handle pmem prefix during sort - added unit test - coding style - more natural sorting of Mds - make compare funcions available in API - added compare function for partitionables - added unit test - added integration test - added test - 3.3.66- merge gh#openSUSE/libstorage-ng#385 - extended documentation (result of bsc#1066290) - extended test data - extended test - 3.3.65- merge gh#openSUSE/libstorage-ng#384 - added check for chunk size of MD RAID (see bsc#1065381) - support RAID 4 - added integration test - extended integration test - fixed typo - 3.3.64- Translated using Weblate (Japanese) - 3.3.63- merge gh#openSUSE/libstorage-ng#383 - added document about spelling - consistent spelling - updated pot file - 3.3.62- merge gh#openSUSE/libstorage-ng#382 - fixed compound action message (bsc#1066364) - also extract messages from compount action formatters - updated pot file - 3.3.61- merge gh#openSUSE/libstorage-ng#381 - work on exceptions - 3.3.60- Translated using Weblate (Indonesian)- merge gh#openSUSE/libstorage-ng#380 - changed interface of wait_for_devices() - improved comment - 3.3.59- merge gh#openSUSE/libstorage-ng#379 - extended documentation - 3.3.58- 3.3.57- merge gh#openSUSE/libstorage-ng#378 - added global function for wait for several devices - coding style - wait for devices before swapon (bsc#1064282) - wait for devices before creating md raid - wait for devices before pvcreate - 3.3.56- merge gh#openSUSE/libstorage-ng#377 - probe page size (for bsc#1065381) - coding style - 3.3.55- merge gh#openSUSE/libstorage-ng#376 - added udevadm settle calls - 3.3.54- merge gh#openSUSE/libstorage-ng#375 - updated examples - removed unused code - unified Python and Ruby bindings - added examples - 3.3.53- merge gh#openSUSE/libstorage-ng#374 - fixed typo - coding style - fixed off-by-one error in max_primary() - coding style - fixed max_logical() - added documentation - extended unit tests - added function to create implicit partition - extended Partitionable constructor - added unit tests - added unit tests - moved code - work on exceptions - extended documentation - consistent wording - consistent logging - updated pot-file - fixed typo - 3.3.52- merge gh#openSUSE/libstorage-ng#373 - work on udev link handling - 3.3.51- merge gh#openSUSE/libstorage-ng#372 - handle implicit partition table when detecting resize info - extended query for possible partition tables - make stream function public available - added integration test - no partition slots on implicit partition tables - specialized messages for creating and deleting partitions - added unit tests - improved integrations tests - updated status.md - added integration test - work on exceptions - 3.3.50- merge gh#openSUSE/libstorage-ng#371 - extended documentation - updated status - fixed typo - added hyperlink - save bus-id in Dasd class - added example program - added class ImplicitPt and probing of it - updated docygen.conf - updated swig files - added unit test - work on exceptions - extended unused_regions (bsc#1064429) - use references instead of copies - fixed typo - added documentation - 3.3.49- merge gh#openSUSE/libstorage-ng#370 - dependency handling for thin logical volumes - unit tests - 3.3.48- merge gh#openSUSE/libstorage-ng#369 - fixed min-size calculation for small filesystems - added block size parameter to ResizeInfo - handle new block_size parameter - implemented get_resize_info for thin pools and thins - allow to set reserved extents - added unit tests - extended integration tests - smarter resize info calculation - fixed comment - 3.3.47- merge gh#openSUSE/libstorage-ng#368 - added helper functions - added functions to calculate default chunk size and metadata size for thin pools - added integration test - handle lvm pvs without lvm vg during probing - added note - added function to query max size for thins - improved lvs parser - updated documentation - added is_overcommitted() - handle reserved extents - added checks - work on exceptions - improved calculation of used extents - added max_size_for_lvm_lv - extended documentation - added checks - added unit tests - work on API of check functions - updated pot file - added helper function - fixed test - added check - simpler code - clearer documentation - 3.3.46- Translated using Weblate (Russian)- Adapt SetTuneOptions::commit - Drop CommitOptions destructor - Add const to CommitOptions arguments - Drop unneeded const in CommitOptions - Mark commit(CommitCallbacks*) as deprecated - 3.3.45- merge gh#openSUSE/libstorage-ng#367- Translated using Weblate (Dutch) - 3.3.44- merge gh#openSUSE/libstorage-ng#366 - work on filesystem tune options - extended integration tests - 3.3.43- merge gh#openSUSE/libstorage-ng#365 - Honor mkfs_options when creating filesystems - 3.3.42- merge gh#openSUSE/libstorage-ng#364 - handle chunk size - updated integration tests - 3.3.41- merge gh#openSUSE/libstorage-ng#363 - added messages for thin pool and thin logical volumes - 3.3.40- merge gh#openSUSE/libstorage-ng#362 - fixed stripes detection for thin-pools - set stripes like LVM does - 3.3.39- merge gh#openSUSE/libstorage-ng#361 - get more data from lvs command - take stripes value from lvs instead of dmsetup - added chunk_size to LvmLv - updated unit test - 3.3.38- merge gh#openSUSE/libstorage-ng#360 - extended exception message - thin volumes cannot be striped - work on exceptions - 3.3.37- merge gh#openSUSE/libstorage-ng#359 - added unit test - 3.3.36- merge gh#openSUSE/libstorage-ng#358 - fixed variable name - 3.3.35- merge gh#openSUSE/libstorage-ng#357 - extended tests - consistent parameter style - 3.3.34- merge gh#openSUSE/libstorage-ng#356 - added reserved extents variable - added documentation - 3.3.33- Translated using Weblate (Lithuanian)- merge gh#openSUSE/libstorage-ng#355 - extended lvs parser - 3.3.32- merge gh#openSUSE/libstorage-ng#354 - added udevadm settle call - 3.3.31- merge gh#openSUSE/libstorage-ng#353 - call efibootmgr before deleting partitions - 3.3.30- Translated using Weblate (Czech) - 3.3.29- merge gh#openSUSE/libstorage-ng#352 - added JsonFile class with simple JSON parser - use JSON report format for LVM tools - coding style - added exception class LvmLvNotFoundByLvName - added convenience functions - updated swig catches file - added integration test - coding style - 3.3.28- Translated using Weblate (Chinese (China)) - 3.3.27- merge gh#openSUSE/libstorage-ng#351 - extended lvs parser - add lv_type to LvmLv - updated integration tests - updated swig catches file - allow to create thin-pools and thins - added integration test - do not allow to resize extended partition - 3.3.26- Translated using Weblate (Dutch) - 3.3.25- Translated using Weblate (Dutch) - 3.3.24- merge gh#openSUSE/libstorage-ng#350 - raise global sid if needed during load - 3.3.23- Translated using Weblate (Chinese (China))- merge gh#openSUSE/libstorage-ng#349 - added helper functions - provide functions to create/remove encryption while keeping children - added unit tests - updated swig catches file - also check devicegraphs - 3.3.22- merge gh#openSUSE/libstorage-ng#348 - updated documentation - 3.3.21- merge gh#openSUSE/libstorage-ng#347 - work on querying resize-info - work on unit tests - documentation - coding style - fixed typo - 3.3.20- merge gh#openSUSE/libstorage-ng#345 - Update the scripts from openSUSE/linuxrc-devtools - Install graphviz as well - Use .tar.xz format for the source tarball - Do not use the shared YaST Travis script for building - 3.3.19- merge gh#openSUSE/libstorage-ng#346 - added do_resize for Btrfs - updated documentation - cleanup - cleanup - 3.3.18- Translated using Weblate (Portuguese (Brazil))- merge gh#openSUSE/libstorage-ng#344 - do not clean pot-file - 3.3.17- merge gh#openSUSE/libstorage-ng#343 - implemented do_resize for Xfs - 3.3.16- Translated using Weblate (Catalan)- Translated using Weblate (Catalan) - 3.3.15- merge gh#openSUSE/libstorage-ng#339 - Add .snapshots subvolume directly to /etc/fstab, not via the external installation-helper command - Add leading slash to .snapshots subvol name in /etc/fstab - Inherit mount opts from parent btrfs and add leading slash to subvol name - Reset diff reference after writing the file - Reset diff reference before change - 3.3.14- Translated using Weblate (Catalan)- Translated using Weblate (Finnish) - 3.3.13- Translated using Weblate (Japanese) - 3.3.12- merge gh#openSUSE/libstorage-ng#341 - updated documentation - 3.3.11- Translated using Weblate (Japanese)- Translated using Weblate (Dutch)- merge gh#openSUSE/libstorage-ng#340 - added pot file - added translation from libstorage - 3.3.10- merge gh#openSUSE/libstorage-ng#338 - coding style - use --force and --yes more often when using lvm tools - added integration tests - also handle action resizing physical volumes - handle ResizeInfo for lvm pv - updated swig catches - 3.3.9- merge gh#openSUSE/libstorage-ng#337 - added documentation - added more combine functions - added documentation - make function available in API - added function to query unused surrounding region - added unit tests - fixed some filesystem limits - coding style - do not look at filesystem usage for newly created filesystems - integration tests - redirect ntfs resize info query to probed devicegraph - fixed typo - 3.3.8- merge gh#openSUSE/libstorage-ng#336 - changed some requires to suggests - require parted >= 3.2 - 3.3.7- merge gh#openSUSE/libstorage-ng#335 - added function to query minimal number of devices for Md - added unit tests - removed unneeded include statements - 3.3.6- merge gh#openSUSE/libstorage-ng#334 - fixed actiongraph generation for deleting partition tables (bsc#1056153) - added unit test - merged testsuite directories - 3.3.5- merge gh#openSUSE/libstorage-ng#333 - use parteds 'resizepart' instead of 'resize' command (bsc#931765) - 3.3.4- merge gh#openSUSE/libstorage-ng#332 - create partitions on GPT with empty name (see bsc#1023818) - 3.3.3- merge gh#openSUSE/libstorage-ng#331 - Configure snapper if snapshots enabled - Set snapshot feature so snapper packages will be installed - Fixed docker setup for Travis - Fixed make_package script (snwint) - Move snapper config step1 from post-create to pre-mount - 3.3.2- merge gh#openSUSE/libstorage-ng#329 - use linuxrc-devtools tooling for OBS auto-submission - remove VERSION and libstorage-ng.changes from git repo - add git2log and make_package scripts - don't forget to actually create the VERSION file - point more often to linuxrc-devtools project - add link to linuxrc-devtools workflow overview - 3.3.1- merge gh#openSUSE/libstorage-ng#328 - fixed license file- merge gh#openSUSE/libstorage-ng#327 - added subsystem deactivate functions - added deactivate function - added integration test - fixed typos- merge gh#openSUSE/libstorage-ng#326 - generate Activate and Deactivate actions for BlkDevices - activate and deactivate actions for LvmLv - separate deactivation action for Md - deactivation action for Multipath - deactivate only active Encryptions - coding style - sort partition by number- merge gh#openSUSE/libstorage-ng#324 - submit to default YaST project (YaST:Head) - generate changes file - set version to 3.3.0 - 3.3.0- merge gh#openSUSE/libstorage-ng#323 - simpler code- merge gh#openSUSE/libstorage-ng#322 - use define- merge gh#openSUSE/libstorage-ng#321 - added exception handling- merge gh#openSUSE/libstorage-ng#320 - support partition ids on dasd partition table- merge gh#openSUSE/libstorage-ng#319 - special dependencies for DASD partition table - added unit test - coding style - fixed typo- merge gh#openSUSE/libstorage-ng#318 - improved activation of Md- merge gh#openSUSE/libstorage-ng#317 - updated paths- merge gh#openSUSE/libstorage-ng#316 - allow independent control of container entries - also parse MD level in MdadmDetail - skip parted call on inactive and zero-size devices - added note - added MD level "container" - renamed superblock-version to metadata - use reference - recognize imsm and ddf - set initial MD level to unknown - probe MD level from mdadm --detail - coding style - cleanup - exception handling - added MdContainer and MdMember - added unit tests - added unit test - updated documentation - updated bindings - updated status - extended documentation- merge gh#openSUSE/libstorage-ng#315 - moved document, fixed typo- merge gh#openSUSE/libstorage-ng#314 - added program to generate downcast file - regenerated downcast file - coding style - fixed test - added unit tests - coding style- merge gh#openSUSE/libstorage-ng#313 - added program to generate catches file - updated catches file- merge gh#openSUSE/libstorage-ng#312 - try to fix installation on multipath- merge gh#openSUSE/libstorage-ng#311 - regenerated catches file- merge gh#openSUSE/libstorage-ng#310 - Comment some public Region methods- merge gh#openSUSE/libstorage-ng#308 - coding style - fixed DM RAID activation - only probe active DM RAIDs - removed unneeded code- merge gh#openSUSE/libstorage-ng#307 - implemented activation of DM RAID - updated documentation- merge gh#openSUSE/libstorage-ng#306 - improved dmraid parser- merge gh#openSUSE/libstorage-ng#305 - updated bindings- merge gh#openSUSE/libstorage-ng#304 - added query function - updated unit tests - added support for DM RAIDs - added example program - fixed typo - coding style - added unit test - extended unit tests - activate Md before DmRaid - fixed typo- merge gh#openSUSE/libstorage-ng#303 - Expose Alignment#grain - Expose Alignment#offset- merge gh#openSUSE/libstorage-ng#302 - fixed syntax - work on exceptions - coding style - added unit tests - added unit tests- merge gh#openSUSE/libstorage-ng#301 - added functions to set dasd type and format - consistent function names- merge gh#openSUSE/libstorage-ng#284 - avoid integer overflow - correct name for unit tests - extended unit test - probe multipath devices - better interface - extended CmdBlkid for external journal information - probe external journals devices - added unit test - added override - added support for named MD RAIDs - added integration tests - extended unit test - added unit test - adapted integration test - extended documentation - coding style - generalised tests - corrected test - added documentation - avoid g++ warning by removing unused code - added override - removed unused variable - added unit test - renamed get_device et.al. to get_non_impl - pass mount_by to get_mount_by_name() - extended unit test - reduced scope of variable - added test case - shorter code - added documentation - added special handling for named RAIDs where the name is a number - added get_all_if for Mds - added debug messages - use strongly types enums - fixed command handling - reduced interface of SystemCmd - updated file list - allow to load mockup - generalised test - added function to adjust sids - extended int - added query function - added query function - coding style - renamed variables - renamed library - renamed variables - coding style - improved probing for multipath - set dm table name for partitions - set range for partitionables on dm - updates tests to md level enum change - simple valid check for multipath names - added unit tests - use wider int - sort udev ids like libstorage does - include multipath with alias in test case - added example program - activate mds - do not log debug log-level per default - updated swig catches - updated documentation - avoid cycle in actiongraph - added documentation - updated swig catches - fixed file list - extended documentation - updated swig catches file - removed wrong parameter documentation - coding style - generate swig catches for some deprecated functions - enable doxygen xml output (needed for generating swig catches) - fixed class name - coding style - updated list of exception classes - coding style - added dependency on doxygen.conf - provide definition of data member- merge gh#openSUSE/libstorage-ng#147 - Detect libxml bit more properly to work on most distributions - Cleanup the spec file to adhere Factory packaging guidelines - Check for boost headers to ensure configure stops prior build failure if the boost-devel is not present - Split out the boost dependencies up to the latest boost package split on openSUSE_Tumbleweed - Do not require rubygem-test-unit on Factory - Remove boost-regexp dependency as it was removed in favor of higer C++ standard function- merge gh#openSUSE/libstorage-ng#283 - fixed function names- merge gh#openSUSE/libstorage-ng#282 - reuse existing table of filesystem names - improved exception message- merge gh#openSUSE/libstorage-ng#281 - split directory examples into utils and examples- merge gh#openSUSE/libstorage-ng#280 - Fix bug- merge gh#openSUSE/libstorage-ng#279 - added used features flag for DASDs- merge gh#openSUSE/libstorage-ng#278 - extended transmogify example - improved Action::RenameIn ordering for DASDs - added unit tests - added documentation - added bugzilla reference- merge gh#openSUSE/libstorage-ng#277 - updated mockups to use parted --machine - removed old parted parser- merge gh#openSUSE/libstorage-ng#276 - added check - do not use cylinder size as block size - avoid holder two actiongraph in memory - coding style - added more comparison operators - check partition order - coding style - added call to check() - workaround for parted sector size during resize - handle alignment in partition resize integration tests - simpler Makefile.am - renumber partitions on DASD partition table - added unit-tests - renamed unit-test - added integration test - renamed variable - fixed typos- merge gh#openSUSE/libstorage-ng#259 - WIP - WIP - WIP - Add CompoundActionFormater base class - Add BtrfsSubvolumeFormater class - Update gitignore files - Add NfsFormater class - Add BtrfsFormater class - Add LvmLvFormater and LvmVgFormater - Add compound actions to actiongraph - Integrate CompoundAction and Actiongraph - Add bindings for CompoundAction - Remove old files - Update gitignore - Add CompoundAction#is_delete - Change return of find_by_target_device - Rename CompoundAction classes - Use Generator to generate compounds actions - Simplify CompoundAction creation - Rename and delete public methods - Return const objects - Remove empty destructors and improve constructors - Fix spelling - Add methods to LvmLv formatter - Add methods for LvmVg formatter - Delete improperly added file - Update example - Add automake subdir-objects option - Throw exception when action is unknown - Add tests for CompoundAction - Fix example - Improve formatters - Add files for compound actions example - Improve formatters - Improve tests - Improve text for compound actions with swap - Minor fixes - Rename data files - Fix test makefile - Improve variable names - Some improvements in formatters - Add gitignore - Remove spaces- merge gh#openSUSE/libstorage-ng#274 - Add compound actions summary doc - Fix text - More text fixes- merge gh#openSUSE/libstorage-ng#275 - enhanced get_possible_partition_table_types() for DASDs - simpler code- merge gh#openSUSE/libstorage-ng#273 - added documentation - renamed variable and enums - set extended_slot to false on GPT - implemented partition slots for DASD partition table - added unit test - removed unused function - use vector instead of list - added assert - renamed typename - added utility function - added unit tests - simpler code - added comment - added convenience function - added integration test - better variable names- merge gh#openSUSE/libstorage-ng#272 - added unit tests - new parse error tests - converted unit tests to new parted parser - removed old code - added note - fixed syntax - updated mockups- merge gh#openSUSE/libstorage-ng#271 - recognize parted "diag" flag - log partition id as hex- merge gh#openSUSE/libstorage-ng#270 - added find_by_name for Partitionable - split Topology class into Topology and Alignment - set minimal-grain to 0 B for DASDs - improved integration tests - set extra alignment for DASD partition table - fix sectors when calling parted on DASD partition table - use correct sector size - nicer check - keep minimal grain for DASDs - allow to get Alignment class - allow to align only to hard requirements - updated documentation about alignment - use partition id supported on all partition types- merge gh#openSUSE/libstorage-ng#269 - adapted parted mkpart call for dasd partition table- merge gh#openSUSE/libstorage-ng#268 - allow more control over mockup - rewrote parted parser including fixing sectors on DASDs - work on support for DASD partition table - updated unit-test - coding style- merge gh#openSUSE/libstorage-ng#266 - added function to convert partition type to string- merge gh#openSUSE/libstorage-ng#265 - avoid ambiguous code - replace own Regex class by C++11 regex - use C++11 regex instead of boost regex- merge gh#openSUSE/libstorage-ng#264 - fixed human string parser- merge gh#openSUSE/libstorage-ng#263 - use svg for graphs- merge gh#openSUSE/libstorage-ng#262 - updated- merge gh#openSUSE/libstorage-ng#261 - also allow to display actiongraph- merge gh#openSUSE/libstorage-ng#260 - allow to keep temporary files- merge gh#openSUSE/libstorage-ng#258 - removed obsolete file- merge gh#openSUSE/libstorage-ng#257 - improved parser - added test case- merge gh#openSUSE/libstorage-ng#256 - eliminated defects found by coverity- merge gh#openSUSE/libstorage-ng#255 - updated cleanup lists- merge gh#openSUSE/libstorage-ng#253 - make delete Filesystem or PartitionTable also delete signatures on disk - modified integration tests - added nop flag to actions - added helper function - set nop flag if btrfs filesystem is also deleted - extended documentation - removed unused functionality- merge gh#openSUSE/libstorage-ng#252 - added unit tests - renamed integration test for consistency - removed unused variable - added integration test - coding style - handle tense - removed unneeded function override- merge gh#openSUSE/libstorage-ng#251 - setup logger - coding style- merge gh#openSUSE/libstorage-ng#250 - updated file list- merge gh#openSUSE/libstorage-ng#249 - fixed documentation- merge gh#openSUSE/libstorage-ng#248 - added in_etc_crypttab flag - also provide EtcFstab and EtcCrypttab in SystemInfo - coding style - set in_etc_crypttab - set correct crypt device - added documentation- merge gh#openSUSE/libstorage-ng#247 - provide version information in bindings- merge gh#openSUSE/libstorage-ng#246 - removed probing in constructor and added probe function - adapted unit tests - adapted examples - adapted integration tests - fixed comment - added DEVMAPPERDIR define - save and load in_etc_fstab - adapted integration test- merge gh#openSUSE/libstorage-ng#245 - removed inadequate lvm activation - removed unused code - improved documentation - added missing include - provide begin() and end() - added function returning number of inactive lvm lvs - added utility functions - removed unused code - activate inactive lvm and luks if desired - updated bindings - added integration test - provide activate function in API - check callback pointer - fixed typo- merge gh#openSUSE/libstorage-ng#244 - Propagate DifferentBlockSizes through the bindings- merge gh#openSUSE/libstorage-ng#243 - added override- merge gh#openSUSE/libstorage-ng#242 - fixed typo- merge gh#openSUSE/libstorage-ng#241 - added check- merge gh#openSUSE/libstorage-ng#240 - initialize values - reduced include- merge gh#openSUSE/libstorage-ng#239 - added check - added unit tests - updated test - updated documentation - updated integration tests - consistent naming - added documentation - added convenience function - improved integration test- merge gh#openSUSE/libstorage-ng#238 - added convenience function - removed nfs from dasd probing test - also remove descendants - added helper functions - return const objects - moved mount point data to dedicated class in devicegraph - adapted bindings - adapted example - adapted integration tests - added integration test for changeing mount-by method - added documentation - adapted unit tests - consistent naming - make functions as deprecated - do not longer allow to create Devicegraph without pointer to Storage - keep exact signature of deprecated functions - coding style - added warning- merge gh#openSUSE/libstorage-ng#237 - fixed exception message - more detailed exception message - updated xml devicegraphs- merge gh#openSUSE/libstorage-ng#236 - more detailed error messages - added comparison operators- merge gh#openSUSE/libstorage-ng#235 - check types to avoid exception- merge gh#openSUSE/libstorage-ng#234 - create parent directory of new subvolume- merge gh#openSUSE/libstorage-ng#233 - document that nested RAIDs are unsupported- merge gh#openSUSE/libstorage-ng#232 - added functions to handle default mount-by - removed obsolete classes - added documentation - renamed variable- merge gh#openSUSE/libstorage-ng#231 - work on md size calculation - added documentation - fixed typo- merge gh#openSUSE/libstorage-ng#230 - coding style - added unit test - improved function interface - removed debug output - install header- merge gh#openSUSE/libstorage-ng#229 - probe subvolume id after create- merge gh#openSUSE/libstorage-ng#228 - added functions to get source and target of a Holder - fixed integrations tests - added integration test- merge gh#openSUSE/libstorage-ng#227 - added convenience functions - minor refactoring - added unit tests - added convenience functions - added integration tests- merge gh#openSUSE/libstorage-ng#226 - flush results after each test - handle spare devices in size calculation - make a conservative calculation - improve results output - fix typo- merge gh#openSUSE/libstorage-ng#225 - fixed check - added test for nested RAIDs - added workaround for bsc#1030896 - removed debug setting- merge gh#openSUSE/libstorage-ng#224 - added sort-key for devices of MD RAID- merge gh#openSUSE/libstorage-ng#223 - added flag in_etc_mdadm- merge gh#openSUSE/libstorage-ng#222 - create /etc directory when mounting /- merge gh#openSUSE/libstorage-ng#221 - probe some uuids after on disk creation- merge gh#openSUSE/libstorage-ng#220 - coding style - reuse objects EtcFstab, EtcCrypttab and EtcMdadm - added writing of mdadm.conf - set partition id - handle new values in Md::Impl - probe md-name and uuid - add tense to CommitData- Fixed line number output for empty ranges - Unit tests for Diff - Fixed include path- merge gh#openSUSE/libstorage-ng#219 - Added generic diff - Added log_diff() - Use log_diff() instead of log() - Fixed verbose mode - Fixed out of range segfault - Prevent diff context at file borders- merge gh#openSUSE/libstorage-ng#218 - added support for DASDs (the block device)- merge gh#openSUSE/libstorage-ng#217 - initialize value- merge gh#openSUSE/libstorage-ng#215 - protect mount options since subvol can include spaces- merge gh#openSUSE/libstorage-ng#213 - added btrfs subvolume support- merge gh#openSUSE/libstorage-ng#214 - Handle fs type unknown - New test case for fs type unknown- merge gh#openSUSE/libstorage-ng#212 - initialize value in ctor - set filename- merge gh#openSUSE/libstorage-ng#211 - cleanup AsciiFile (possible after EtcFstab rewrite) - use AsciiFile to read fstab for mockup playback and record- merge gh#openSUSE/libstorage-ng#210 - Use full filename for fstab and crypttab - Add missing space in mount command- merge gh#openSUSE/libstorage-ng#209 - changed return type of get_mount_type() - added compatibility functions- merge gh#openSUSE/libstorage-ng#208 - removed unneeded includes - removed obsolete handling of list- merge gh#openSUSE/libstorage-ng#202 - Activate vgs - Add comment - Fix indentation- merge gh#openSUSE/libstorage-ng#206 - New EtcFstab API - Methods to maintain correct mount order - Stricter constness and avoid endless call recursion - Added missing factory method - Added MountOpts::clear() - Unit tests for new EtcFstab class - Better runtime checks using exceptions - Tests for checking and fixing mount order - Added tests for pathological cases - Make line no. optional during parsing - Store filename for writing, too - Removed obsolete tests - Added EtcCrypttab class - Don't pad last column - Remove entry by pointer - Unit test for EtcCrypttab - New unit test: Nonexistent crypttab - Removed cruft - Don't stop parsing after the first error - Accept unparsable fs enums as type 'unknown' - Support for logging contents - Added missing includes - Get and set options completely at once - Use new EtcFstab: StorageImpl - Use new EtcFstab: ProcMounts - Use new EtcFstab: Nfs - Use new EtcCrypttab: Luks - Use new EtcCrypttab: Mountable and BlkFilesystem - Use new EtcFstab: XML mocking in testsuite - Omit 'defaults' for mount opts in XML - Code review fixes - Documentation fixes - Support for mocking during probing - Fixed unit test data- merge gh#openSUSE/libstorage-ng#200 - split off Mountable from Filesystem - removed unused variable - added parsers for btrfs tools - removed unused functions - unified comments - fixed typo - added missing implementation - allow mocking of SystemCmds with unstable command-line - added include - avoid btrfs in test cases (will need more mockup) - extended style guide - added example program- Imported https://github.com/shundhammer/commented-config-file (#199)- merge gh#openSUSE/libstorage-ng#197 - added some compile time checks - renamed macro to avoid name collision- merge gh#openSUSE/libstorage-ng#196 - moved code to implementation classes - removed unneeded virtual in API - added Encryption::get_all() functions- merge gh#openSUSE/libstorage-ng#195 - added comment - removed unused enum value- merge gh#openSUSE/libstorage-ng#194 - redirect to probed devicegraph in EnsureMounted- merge gh#openSUSE/libstorage-ng#192 - tiny code simplifications - added includes - make EnsureMounted more generic and work for Filesystem - added class to parse df output - added class SpaceInfo - added function to query nfs mounts - generalise and move some functions from BlkFilesystem to Filesystem - store SpaceInfo in Filesystem - cleanup - added basic NFS support - coding style - extended bindings for NFS - added integration tests - removed dangerous functions and added comment - updated python bindings - added check - added integration test - added Nfs::Impl::used_features()- merge gh#openSUSE/libstorage-ng#191 - split off class BlkFilesystem from class Filesystem - updated testcases - updated example - updated documentation - updated bindings - updated testcases - updated integration tests- merge gh#openSUSE/libstorage-ng#190 - coding style - removed abstract class - use direct parent class - avoid flushes- merge gh#openSUSE/libstorage-ng#189 - detect nilfs2 - cleanup - shorter code - coding style - coding style - added support for ext2, ext3, reiserfs, iso9660 and udf - updated bindings to new filesystems - added integration tests- merge gh#openSUSE/libstorage-ng#188 - removed cycle from actiongraph for Luks setup - cleanup- merge gh#openSUSE/libstorage-ng#187 - Bind exceptions for BlkDevice::get_encryption- merge gh#openSUSE/libstorage-ng#186 - fixed shrinking devices - enable commit- merge gh#openSUSE/libstorage-ng#185 - added Encryption::get_type() - make get_type() in EncryptionImpl virtual- merge gh#openSUSE/libstorage-ng#184 - implemented do_rename_in_etc_crypttab()- merge gh#openSUSE/libstorage-ng#183 - save sid in devicegraphs - add dependencies to some actions of children of partition table - added test case - added documentation - use convenience function- merge gh#openSUSE/libstorage-ng#180 - added set_number() function - renumber logical partitions in delete_partition() - added testcase - coding style - added actions to rename entries in fstab and crypttab - use integration test utils - implemented rename in fstab - override function - allow to skip more steps - better check - renamed functions - reuse code - the check was correct - coding style- Added Travis support (use Docker for building)- merge gh#openSUSE/libstorage-ng#179 - fixed swig bindings for used_features()- Typo: Fixed inconsistent enum prefix (#178)- merge gh#openSUSE/libstorage-ng#177 - added move constructor and assignment operator- merge gh#openSUSE/libstorage-ng#176 - Make boot flag checks public- merge gh#openSUSE/libstorage-ng#175 - turn udev_path into vector (see bsc#1011357)- merge gh#openSUSE/libstorage-ng#174 - show base in log for hex - fixed typo - added tests - handle partition id on GPT - added unit tests - removed TODO mark - fixed typo - DRYer code - renamed test files - markdown improvements - renamed function- merge gh#openSUSE/libstorage-ng#173 - updated history- merge gh#openSUSE/libstorage-ng#172 - added interface to query used features - added bcache to used features - added unit tests- merge gh#openSUSE/libstorage-ng#171 - added convenience functions- merge gh#openSUSE/libstorage-ng#170 - make functions public available- merge gh#openSUSE/libstorage-ng#169 - added parsing legacy_boot in parted output - actions for boot, legacy_boot and pmbr_boot - added integration tests - updated status document - removed out-commented code - extended documentation- merge gh#openSUSE/libstorage-ng#168 - added probing pmbr-boot - added test case for pmbr boot- merge gh#openSUSE/libstorage-ng#167 - moved setting BOOST_TEST_CATCH_SYSTEM_ERRORS- merge gh#openSUSE/libstorage-ng#166 - Added LvmLv.get_all()- merge gh#openSUSE/libstorage-ng#165 - added utility function to public API- merge gh#openSUSE/libstorage-ng#164 - added convenience functions - moved template definitions to separate file- merge gh#openSUSE/libstorage-ng#163 - added name for partition id- merge gh#openSUSE/libstorage-ng#162 - added test case - moved test cases - reuse code - coding style - simpler code - reuse code - help compiler understand code - removed workaround - fixed partition name - run performance tests as last - coding style - allow to set udev path and ids - set udev path and if when creating partition - added test case - updated unit test to include object for partition table - make logical partitions children of extended partition - added note and todo - added checks - moved unit test- merge gh#openSUSE/libstorage-ng#161 - also check udev_path and udev_ids in equal and log_diff - fixed typo - omit more udev-ids (use whitelist instead of blacklist) - added explanatory comment- merge gh#openSUSE/libstorage-ng#160 - set default partition id based on partition type- merge gh#openSUSE/libstorage-ng#159 - fixed initialization order - check that function is called on correct devicegraph- merge gh#openSUSE/libstorage-ng#158 - use const unique_ptr for pimpl - added testcase - added documentation- merge gh#openSUSE/libstorage-ng#157 - renamed class - removed printing to cout from Actiongraph - performance improvement - added performance test - removed examples with testsuite character - improved example- merge gh#openSUSE/libstorage-ng#156 - updated status document - include feedback from code review- merge gh#openSUSE/libstorage-ng#155 - updated documentation - added end user example - fixed typo - improvements from code review- merge gh#openSUSE/libstorage-ng#143 - the dependency fix: updated from the specfile - specified distribution specific dependencies - corrected deps on tumbleweed- merge gh#openSUSE/libstorage-ng#154 - handle tense - handle tense - throw on logic error - coding style - added humanstring example- merge gh#openSUSE/libstorage-ng#153 - fixed temporary check - quote commit message in log- merge gh#openSUSE/libstorage-ng#152 - removed some examples that were initial test programs- merge gh#openSUSE/libstorage-ng#151 - cylinder -> sector cleanup- merge gh#openSUSE/libstorage-ng#150 - added TmpMount class - added EnsureMounted class - use EnsureMounted class - added note - name enum strongly typed - now removed enum entirely- merge gh#openSUSE/libstorage-ng#149 - added convenience function to query Ntfs objects - added convenience function to query Partitionable objects- merge gh#openSUSE/libstorage-ng#148 - initialise class members- merge gh#openSUSE/libstorage-ng#145 - improved device_exists - fixed typo - added support to resize (active) lukses - added integration tests for luks - coding style - moved check function to impls - added check function for Luks - added comment - added unit test for resizing luks - require to provide filename - incorporated comments from code review - ignore generated files- merge gh#openSUSE/libstorage-ng#144 - added UntranslatedText and moved Text to own file - moded StopWatch to own file - added documentation - renamed variable- merge gh#openSUSE/libstorage-ng#142 - fixed lvm vg dependency generation if modify actions exist purely on lhs - coding style - added convenience function - added flags to control handling of credentials - correcter explanation for translators - use ST_THROW macro - coding style - support to create, activate, deactivate and delete Luks - added encryption handling functions to BlkDevice - added unit tests - added integrations tests - handle tense - added skeleton actions for crypttab handling - handle tense - handle crypttab- merge gh#openSUSE/libstorage-ng#141 - use C++11 initialisation - shorter code - removed unused check - coding style - added reusable sort_by_key function- merge gh#openSUSE/libstorage-ng#140 - Added a failing test (TDD) for LVM dependencies - Bugfixes in Action::Create#add_dependencies - Dependencies between LVM operations - Fixes from code review: coding style - Another complex test for LVM dependencies - Reusable function to add grouped dependencies - Added a test for PVs being moved between VGs - Dependencies for moving PVs between different VGs - Added note about add_chain cost- merge gh#openSUSE/libstorage-ng#139 - added const - added helper function - renamed variable - moved calculating dependencies for creating partitions to PartitionTable class - make vertices in actiongraph stable- merge gh#openSUSE/libstorage-ng#138 - renamed function - indicate only-sync in graph output- merge gh#openSUSE/libstorage-ng#137 - also save devicegraphs - renamed function - call function in base class - add dependency for reallot actions - added unit tests for reallot actions in lvm case - moved some tests to md subdirectory - always use svg instead of png- merge gh#openSUSE/libstorage-ng#136 - Obsolete again old libstorage- merge gh#openSUSE/libstorage-ng#135 - pass vector by reference- merge gh#openSUSE/libstorage-ng#134 - do not call udevadm info for inactive devices- merge gh#openSUSE/libstorage-ng#133 - fixed output - set flags for ostream - probe attr for lvm devices - added active flag to BlkDevice- merge gh#openSUSE/libstorage-ng#131 - fixed parsing of 'dmsetup table' output if no devices were found - catch exceptions from Storage constructor- merge gh#openSUSE/libstorage-ng#130 - Avoid conflict with old libstorage config file - Do not obsolete old libstorage in .spec- merge gh#openSUSE/libstorage-ng#129 - added functions to query volume group - wait as late as possible - added note - moved detect_resize_info to Device - provide ResizeInfo for LvmPv - added override - generate actions for resizing lvm pvs - added tests for lvm pv resizing - added get_size_string() - inform children (LvmVg and Md) when parent has new region- merge gh#openSUSE/libstorage-ng#128 - format numbers - handle ResizeInfo in LvmLv - added functions to find a volume group by the vg-name - make reallot handling work with Device instead of BlkDevice - handle reallot for volume groups - allow to save graphs - fixed consistency between variable name and partition- merge gh#openSUSE/libstorage-ng#127 - added most common lvm actions - removed obsolete define - wait as late as possible - added define - include size in volume group create/delete text- merge gh#openSUSE/libstorage-ng#126 - added override where appropriate- merge gh#openSUSE/libstorage-ng#125 - make find by uuid functions non public - extended comment- merge gh#openSUSE/libstorage-ng#124 - sort sids in output for better readability- Use stdin, not tmp files for passwords (bsc#986971) (#123)- merge gh#openSUSE/libstorage-ng#122 - added convenience functions for lvm - make delete_partition take a Partition - removed obsolete code - shorter code - added function to delete logical volume - renamed file - make doxygen analyse more files - updated documentation - activate DEPRECATED define - consistent function names- merge gh#openSUSE/libstorage-ng#121 - added convenience functions for Bcache and BcacheCset- merge gh#openSUSE/libstorage-ng#120 - move dm-table-name from Encryption to BlkDevice - probe stripes and stripe-size - removed obsolete class - removed unused functions - fixed documentation- merge gh#openSUSE/libstorage-ng#119 - removed unused functions- merge gh#openSUSE/libstorage-ng#118 - also support downcast for bcache classes- merge gh#openSUSE/libstorage-ng#117 - added copyright headers - moved filesystem classes from Devices to new Filesystems directory- merge gh#openSUSE/libstorage-ng#116 - added and renamed examples - init logger - prefer vector over list - detect bcache in blkid output - renamed output files - simply call probe_pass_2 for all devices - extended check function - added get_string function - decentralized code - added bcache probing support - includes cleanup - added bcache probing testcase - added documentation links- merge gh#openSUSE/libstorage-ng#115 - extended 'dmsetup table' parser to provide target and stripes- merge gh#openSUSE/libstorage-ng#114 - updated doxygen list of input files- merge gh#openSUSE/libstorage-ng#113 - enable client side searching- merge gh#openSUSE/libstorage-ng#112 - extended lvm parsers - probe size of luks - probe size of lvm vg and lv - added copyright header - handle new class variables- merge gh#openSUSE/libstorage-ng#111 - add get_partitionable() to API- merge gh#openSUSE/libstorage-ng#110 - use new is_valid_name- merge gh#openSUSE/libstorage-ng#109 - added is_valid_name for BldDevice- merge gh#openSUSE/libstorage-ng#108 - use fallback lockup - removed now unused function- merge gh#openSUSE/libstorage-ng#107 - use fallback lookup by major and minor number- merge gh#openSUSE/libstorage-ng#106 - corrected order- merge gh#openSUSE/libstorage-ng#105 - added note - added luks probing testcase- merge gh#openSUSE/libstorage-ng#104 - extended SystemInfo for encryption - cleanup - prefer vector over list - added luks probing support - use C++11 range based for- merge gh#openSUSE/libstorage-ng#103 - during probing find devices by major and minor number if find my name fails- merge gh#openSUSE/libstorage-ng#102 - added convenience function - added unit tests- merge gh#openSUSE/libstorage-ng#101 - work on LVM support - added documentation - added todo - added check - extended check functions - provide vectors of LVM objects - added get_lvs function - added get_lvm_pvs function - added get_blk_device function - downcast also LVM objects - added more convenient functions- merge gh#openSUSE/libstorage-ng#96 - Added YaST requirements, based on meeting in NUE - AI formatting - MD formatting - More formatting - comments from review - comments - Clarified upgrade from EVMS- merge gh#openSUSE/libstorage-ng#100 - added functions to search for lvm devices by uuid - added BlkDevice::get_all - cleanup - sort results of lvm commands - use get_all function- merge gh#openSUSE/libstorage-ng#99 - added functions any_md, any_lvm and any_luks - explicit function name - probe mds only if blkid found some - added uuid to lvm objects - added get_all functions - added testcase - added parsers for pvs and lvs- merge gh#openSUSE/libstorage-ng#98 - call parted with --wipesignatures when creating partitions - use long option - adapted tests- merge gh#openSUSE/libstorage-ng#97 - removed perl bindings (only potential use-case kiwi was rewritten in python) - mark function as override- merge gh#openSUSE/libstorage-ng#95 - initialise and log variable- merge gh#openSUSE/libstorage-ng#94 - allow to set minimal_mbr_gap- merge gh#openSUSE/libstorage-ng#93 - allow to set minimal grain- merge gh#openSUSE/libstorage-ng#92 - added convenience functions- merge gh#openSUSE/libstorage-ng#91 - added convenience functions- partition alignment, drop cylinders and geometry, change unit of sizes (#85)- merge gh#openSUSE/libstorage-ng#89 - Added support to set label and uuid for swap devices - Allow to change label and UUID of pre-existing partitions - Fix from code review: ST_THROW- merge gh#openSUSE/libstorage-ng#88 - Update TsCmp.cc - Update .gitignore- merge gh#openSUSE/libstorage-ng#87 - added buildrequires graphviz since doxygen needs it- merge gh#openSUSE/libstorage-ng#86 - Added check for PPC PowerNV- merge gh#openSUSE/libstorage-ng#84 - Added ID_EFI- merge gh#openSUSE/libstorage-ng#83 - swig bindings for Storage::Arch - include Arch.h in docs and devel package - fix list include - automake fix- merge gh#openSUSE/libstorage-ng#81 - do not create devicegraph without storage object - coding style - added missing includes - coding style - coding style- merge gh#openSUSE/libstorage-ng#80 - add documentation on parted partition alignment - enhance doc according to pr comments - added details on alignment- merge gh#openSUSE/libstorage-ng#79 - removed now unneeded scope operator- merge gh#openSUSE/libstorage-ng#78 - Disable changelog check- merge gh#openSUSE/libstorage-ng#77 - added detailed flags for write_graphviz()- merge gh#openSUSE/libstorage-ng#76 - added missing include (for whatever version travis/jenkins is using)- merge gh#openSUSE/libstorage-ng#75 - clarify dependencies, how to test- merge gh#openSUSE/libstorage-ng#74 - detect reducing/extending of devices - just keep one sorted vector of devices - added function to remove edge - added function to remove device - use exception macros - allow to add and remove spare devices to md - added integration tests - more descriptive parameter names - coding style - added comments - eliminate temporary variable - added some inline documentation - reshuffle code- merge gh#openSUSE/libstorage-ng#73 - added second link in documentation - detect faulty devices in MD RAID - fixed comment- merge gh#openSUSE/libstorage-ng#72 - test public interface - added testcases- merge gh#openSUSE/libstorage-ng#71 - added set_range to API- merge gh#openSUSE/libstorage-ng#70 - added documentation - added documentation- merge gh#openSUSE/libstorage-ng#69 - Added integration with Jenkins- merge gh#openSUSE/libstorage-ng#68 - added document about resizing - fixed typo- merge gh#openSUSE/libstorage-ng#67 - reduce code duplication - throw exceptions in error case - also generate pictures of devicegraphs - renamed function and added comments- merge gh#openSUSE/libstorage-ng#66 - avoid code duplication - added unit test- merge gh#openSUSE/libstorage-ng#65 - work on tenses for messages- merge gh#openSUSE/libstorage-ng#64 - avoid header file - use new size constants - avoid assert - use exception macro - no need for postfix - fixed error handling - cache, load and save Resize- and ContentInfo- merge gh#openSUSE/libstorage-ng#63 - adapted filename to library rename - make code reusable - coding style - init logger - provide __str__ for more classes - added missing dependency - use exception macros - added is_probed query function - allow to query resize and content information- merge gh#openSUSE/libstorage-ng#62 - avoid code repetition - updated gitignore- merge gh#openSUSE/libstorage-ng#61 - added Action classes for resize- merge gh#openSUSE/libstorage-ng#60 - removed unused functions - avoid boolean function argument- merge gh#openSUSE/libstorage-ng#59 - several adoptions to library name change- merge gh#openSUSE/libstorage-ng#58 - drop major and minor number from BlkDevice- merge gh#openSUSE/libstorage-ng#57 - rename rpm and library to libstorage-ng- merge gh#openSUSE/libstorage-ng#56 - drop bindings for legacy interface - dropped legacy interface and most/all legacy functions - renamed enum- merge gh#openSUSE/libstorage-ng#55 - added and use LogfileLogger- merge gh#openSUSE/libstorage-ng#54 - added downcast function in bindings- merge gh#openSUSE/libstorage-ng#53 - Expose get_geometry() / set_geometry() to API- merge gh#openSUSE/libstorage-ng#52 - added actions to handle /etc/mdadm.conf - renamed classes- merge gh#openSUSE/libstorage-ng#51 - initialise member variables - replace cmp_lt_number by compare_by_number - ignore coverity output directory cov-int - fixed assert - use proper function - use proper functions - added check for overflow - replace ParseError by ParseException - extended testsuite- merge gh#openSUSE/libstorage-ng#50 - more tweaking for broken ruby packaging- merge gh#openSUSE/libstorage-ng#49 - make Exception hierarchy available in bindings - do not expose exception macros in public API- merge gh#openSUSE/libstorage-ng#48 - avoid warning with g++ 5.2.1- merge gh#openSUSE/libstorage-ng#47 - removed redundant ";" - added interface functions to query number of partitions- merge gh#openSUSE/libstorage-ng#46 - support probing of Md using Md - fixed function name - consistent function/variable name- merge gh#openSUSE/libstorage-ng#45 - added get_md_parity_name - added TODO note- merge gh#openSUSE/libstorage-ng#44 - added quote for vector - moved code to storageitu.py - fixed documentation - initialise all member variables - added basic MD RAID support - added checks and unit-test - added DEVDIR macro as requested during code review - added node about consistent naming - use strlen instead of fixed value- merge gh#openSUSE/libstorage-ng#43 - define sorting of results - use macro - shorter code - do not use legacy file for AC_INIT - remove function identical to base function - extended style document- merge gh#openSUSE/libstorage-ng#42 - remove interim sync actions - included suggestions from code-review- merge gh#openSUSE/libstorage-ng#41 - renamed classes - added num_actions()- merge gh#openSUSE/libstorage-ng#40 - ensure "one definition rule"- merge gh#openSUSE/libstorage-ng#39 - added region.to_value function - added disk.get_possible_partition_table_types() - added get_pt_type_name() - use new ST_THROW macro - call parted with filesystem type depending on partition id - do not set numeric partition id on non MSDOS partition tables - added more fs-types for parted mkpart call - use define - better names for partition table types- merge gh#openSUSE/libstorage-ng#38 - added Device::remove_descendants() - moved num_children and num_parents to Impl - use new exceptions macro- merge gh#openSUSE/libstorage-ng#37 - added functions to query partition table type of partition table object- merge gh#openSUSE/libstorage-ng#36 - added missing include - use C++11 underlying_type for correctness - define copy constructor and copy assignment for Region- merge gh#openSUSE/libstorage-ng#35 - fixed function name - added TmpDir class (complied with RAII) - added Vfat and Ntfs device classes - removed ntfs-3g naming workarounds - coding style - delete copy constructor and assignment operator for Device and Holder - use new ST_THROW macro- merge gh#openSUSE/libstorage-ng#34 - moved test files - extended bindings - updated test program - added missing include - added test programs - moved test programs - added options to example probe program - consistent naming - avoid casts by using std::function - added logic check - use traits to avoid undetected typos - moved setting compiler flags before AC_PROG_CXX to avoid problems with --coverage - more descriptive exceptions - moved swig catches statements to own file - extended unit-test - test documenting exceptions with doxygen - use constant- merge gh#openSUSE/libstorage-ng#33 - added test case - added branch coverage example - call region.empty - coding style - moved Exception to Utils - added test-cases - made text more comprehensible - added test-case - fixed off-by-one error - robuster test-case- merge gh#openSUSE/libstorage-ng#32 - Add ruby remote probe example- merge gh#openSUSE/libstorage-ng#31 - added missing DeviceTraits - consisting coding style - avoid warning with clang++ - added and use templates is_device/holder_of_type- merge gh#openSUSE/libstorage-ng#30 - don't generate documentation for legacy interface - added some overall documentation - documented difference between high- and low-level device graph functions- merge gh#openSUSE/libstorage-ng#29 - added subgraph and filtered_graph paragraph- merge gh#openSUSE/libstorage-ng#28 - use fixture - added checks for big numbers - coding style - removed bogus operator - removed some asserts now handled via exceptions - added block-size to Region class - make Partition create functions take region parameter- merge gh#openSUSE/libstorage-ng#27 - Prevent crash upon shutdown (object destruction sequence) - Added TO DO- merge gh#openSUSE/libstorage-ng#26 - fixed file list- merge gh#openSUSE/libstorage-ng#25 - more detailed message - added check - adapted to api change - implemented umount/swapoff actions - replaced specifier deprecated in C++11 - moved Logger to Utils - added nullptr checks - added traits for Holders - work on exception logging - exception handling for storage::to_partition - updated examples- merge gh#openSUSE/libstorage-ng#24 - fixed Umount and RemoveFstab actions- merge gh#openSUSE/libstorage-ng#23 - added functions to convert enums to strings- merge gh#openSUSE/libstorage-ng#22 - added Filesystem::get_all()- merge gh#openSUSE/libstorage-ng#21 - added const version - steps towards private Devicegraph::Impl graph - added convenient functions - use checker macro - avoid using Devicegraph::Impl.graph member- merge gh#openSUSE/libstorage-ng#20 - make Actiongraph.graph private - added operator[] and fixed some constness - added probe mode that write devicegraph - rename class to reflect concept - make also graph type private - added typedefs - log destruction- merge gh#openSUSE/libstorage-ng#19 - use font Arial also for action graph- merge gh#openSUSE/libstorage-ng#18 - make Actiongraph part of public interface- merge gh#openSUSE/libstorage-ng#17 - also provide non-const relatives functions - added function to remove a list of devices - use exception macros- merge gh#openSUSE/libstorage-ng#16 - use long named option for readability- merge gh#openSUSE/libstorage-ng#15 - added one more 'udevadm settle' call - use a define for udevadm settle- merge gh#openSUSE/libstorage-ng#14 - added logger control functions to new api - allow Logger test function to also check component - added documentation - do not expose symbol - added constructor (just eye candy)- merge gh#openSUSE/libstorage-ng#13 - added to_device_of_type template function - use new to_device_of_type function - added testcases - detailed exception messages - make exceptions take parameters instead of final message - remember base filename in exception locations- merge gh#openSUSE/libstorage-ng#12 - work on exceptions- merge gh#openSUSE/libstorage-ng#11 - prefix include guards- merge gh#openSUSE/libstorage-ng#10 - generate bindings before running tests- merge gh#openSUSE/libstorage-ng#9 - parallel compile and run of tests- merge gh#openSUSE/libstorage-ng#8 - removed unneeded define- merge gh#openSUSE/libstorage-ng#7 - set BOOST_TEST_CATCH_SYSTEM_ERRORS=no- merge gh#openSUSE/libstorage-ng#5 - Added exception classes - added class SystemCmdException and CommandNotFoundException - added testsuite helpers - added unit tests for SystemCmd class - documented CmdParted class - improved error reporting with new exception classes don't throw exception for all kinds of parted stderr output - improved error reporting for CmdBtrfs, added CmdBtrfsSubvolumes class - added gpt fix backup - added files common.cc/.h, added test case parse_empty - use const string& - remove do_probe and probe() from CmdBtrfsSubvolumes - use const string& - remove common.cc/.h (not needed here), remove systemcmd1.cc (to be adapted first) - added test case parse_bad_device_name, parse_no_devices and systemcmd_error - test case parse_wiped_disk_good added, better test names applied - test cases for ParseException added - tests for SystemCmd added - retcode != 0 doesn't work - ignore non zero exit code - check for boost version >= 1.58 - add test cases for exceptions - add TO DO for test cases parse_gpt_enlarge_good and parse_gpt_fix_backup_good- merge gh#openSUSE/libstorage-ng#6 - Added use case document - Added pseudo code for suggested API - Use partition_table, not disk directly - Added multi_boot_pc_with_windows() C++ sample - use correct exception macro - added comment- merge gh#openSUSE/libstorage-ng#4 - added rules to style guide - added reasons to use C++11- merge gh#openSUSE/libstorage-ng#3 - updated URLs - added requirements and how to run unit test- extended comment- merge gh#openSUSE/libstorage-ng#2 - Enable documentation of the storage_legacy namespace. - Added brief descriptions to classes.- merge gh#openSUSE/libstorage-ng#1 - How to compile - How to make a RPM, code documentation.- make code- added design decisions- added heading- moved style guide to docs- added goals- use C++11 to_string- adapted testcase- moved testsuite compare classes to testsuite directory- make output work with older graphviz versions- added testcase- use back_inserter- make errors in actiongraph testsuite readable- improved test message- moved statement- work on compatibility layer- work on compatibility layer- throw exception instead of returning nullptr- renamed class to avoid likely conflict with keyword- work on compatibility layer- ported interface additions from fate#318392- ported interface additions from fate#318392- build on Fedora 21- sync version numbers with libstorage- mark functions as override- added per action callbacks- adapted enum names- first setting first and last flag on actions- save detailed actiongraph- added commit error callback- display name of partition id in message- fstab actions depend on the root filesystem mounted- place detailed node info in extra line- save libstorage version in output files- added namespace- allow to show details in graphviz output- added compare example which reads devicegraphs- added check for nullptr- don't save empty values- a devicegraph might have no devices or holders- work on strongly typed enums with swig 3.0.0- work on compatibility callbacks- skip nop action- rename devicegraph- install legacy header- added namespace- added include- work on compatibility layer- fixed efi detection- quote device- implemented real get_default_partition_table_type function- add storage backref to Devicegraph- install perl5 bindings into versioned directory- allow access to Arch and set some values- save architecture in Storage object- work on compatibility layer- added dummy functions for default partition table type- implemented create for msdos and gpt- generate bindings for filesystems classes- added btrfs (without multidevice) and xfs- use C++11- work on compatibility layer- added check function to Storage- delegate checking for modify actions- added convert functions- mostly reverted a previously patch- added type query functions- make functions creating partitions also take region- implemented calculating unused partition slots- work on compatibility layer- added partition type parameter to create partition functions- added constructor taking all values- removed functions from interface- added function to count partitions of a specific type- more verbose error message- handle range in Disk- catch exception- allow to create ext4 on disk (without partition)- save files in YaST2 dir- added include- better error handling- log beginning of commit action- wait for device before mkfs- handle rootprefix when writing fstab- set size when setting region- work on compatibility layer- work on compatibility layer- work on compatibility layer- extended compatibility layer- extended compatibility layer- improved messages- work on compatibility layer- added mkfs_options and tune_options- work on compatibility layer- use helper functions- fixed dependency generation- work on compatibility layer- handle mount-by when writing fstab- fixed variable order- extended compatibility layer- added Storage reference to Actiongraph- added functions for rootprefix- added include- added include- create mountpoint directory- write fstab entry- simpler syntax- treat empty fstab opts as "defaults"- fixed typo- improved commit messages- extended tests- moved code from Actions to Devices and added Actions- moved code- added action to format swap- updated testsuite data- added rotational/ssd to Disk- added sysfs-name and -path to BlkDevice- added script to demonstrate remote probing- allow to provide own functions for remote probing- implemented commit callbacks- removed unused Actiongraph declaration- provide getPresentDisks- use C++11 chrono::steady_clock- added simple compatibility for saveDeviceGraph- allow access to new Storage from old StorageInterface- fixed namespace- fixed use of PYTHON_INCLUDES- query perl include paths from perl- read mount-by type from fstab- added convenient functions- install StorageVersion.h- install perl files to vender_site- also use data from /etc/fstab for filesystem probing- fixed namespace- detect mountpoint from /proc/mounts- renamed functions- use udevadm to query udev device links- extended compaitbility code- some rudimentary probing for ext4 and swap- load more data- moved code- print more data- added function to query filesystem type- removed function from public interface- added todo- removed unused code- moved file- cleanup- handle udev path and id in compatibility layer- handle udev path and ids in BlkDevice- use external command to query links- formatting- moved get_classname and print to Impl- improved log_diff output- set verbose for 'make check'- handle gpt enlarge during probing- fixed gpt enlarge detection- also record stderr for mockup- implemented comparing device graphs- removed unused code- clear devicegraph in load- initialise values- removed file- added function to get holder sid pairs- added probe testcase (unfinished)- use external command- added clear function- added testsuite- use external command- pass complete object- allow to set mockup filename- added probe modes to read and write mockup- removed obsolete code (env.var. does not exist anymore)- implemented load and save in Mockup- added testcases for EtcFstab- added mockup mode- moved file- added testcases- added testcases- added testcases- added testcases- moved testsuite for SystemInfo to subdir- added testcase- added testcases- allow mockup for SystemCmd and AsciiFile- added test- use variable- added runtime checks- removed old stuff- added lvm classes- added spec file and utilities- split c and c++ flags- better cleanup- added translations (which are needed for testsuite)- added sysconfig fillup- integrate doxygen- use single location for dependencies- install integration-tests- avoid compiler warnings- ignore generated file- ignore generated file- find local swig bindings- generate file- added source files- added subdir- package test xml file- do not include non-existing file- added missing includes- package test scripts- moved file, generate file- added logging of environment- always create a "probed" devicegraph, even if empty- perl like function name- provide sformat also for plain string- namespace cleanup- namespace cleanup- log probed devicegraph- first integration tests- ignore operator<<- include and namespace fixes- report disk label type- fixed examples (still not all working)- make Region usable for interface- work on providing legacy interface and bindings- provide legacy functions- provide more getters and setters- avoid name conflict in swig generated target languages- fix includes- added testcases- added include- addes testcases- fixed compilation- added testcases- don't crash if no logger was setup- work on probing (design still unsatisfied)- updated gitignore- added include- removed generated file- added names for enum- added function to setup logger- fixed sformat string- added assert- added testcases- cleanup- save label as enum instead of string- added functions child and parent- save proved devicegraph- fix for strongly typed enums- added check- added Msdos device object- coding style- cleanup- copied SystemInfo and some utils from old libstorage- reformatted- use different namespace to avoid conflicts with old libstorage- work on style and bindings- added testcase- work on startup- cleanup- fixed order- work on bindings- work on testsuites- added testcase for perl bindings- use strict in perl examples- renamed testcase- renamed cast functions and use autorename for ruby- work on bindings- work on bindings- added tiny testsuite for ruby bindings- work on exceptions and testsuite- added testsuite for python bindings- fixed sid_t bindings- consistent naming- improved failure message- extended example- renamed INCLUDES to AM_CPPFLAGS- consistency- work on loading and saving device graphs- use template function- moved file- fixed compilation- use enum- added find example- work on loading device graph- fixed variable names- work on saving device graph- split Holder files- renamed function- added getSids function- added Environment class- added main class Storage- added swap function- avoid warning from swig- use enum- work on perl5 bindings- exception handling for bindings- added polymorphism example for ruby and perl- use common swig interface file- added BlkDevice::createFilesystem- make Device and Holder object contructors private, use create function instead- removed generated file- work on interface- work on swig bindings- work on swig bindings- work on swig bindings- work on swig bindings- work on bindings (not usable yet)- use impl ptr pattern for DeviceGraph- added back reference to device objects- remove old output files- added helper functions- use impl ptr pattern for Device objects- better module name- check exception message- disallow create/delete of disk, instead have partition table object- fixed mount ordering- changed action texts- display device graph- fixed return type- added testcase for dependencies- link to wiki- updated- added nop action for synchronization- removed example now in testsuite- dummy ordering for mount actions- use specific test tools- added testsuite- updated- restructured build stuff- updated build stuff- initial evalold-cirrus1 1639114742  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmn4.2.78-lp152.2.15.14.2.78-lp152.2.15.1 storageActiongraph.hCommitOptions.hCompoundAction.hDevicegraph.hDevicesBcache.hBcacheCset.hBlkDevice.hDasd.hDasdPt.hDevice.hDisk.hEncryption.hGpt.hImplicitPt.hLuks.hLvmLv.hLvmPv.hLvmVg.hMd.hMdContainer.hMdMember.hMsdos.hMultipath.hPartition.hPartitionTable.hPartitionable.hPlainEncryption.hStrayBlkDevice.hEnvironment.hFilesystemsBitlocker.hBlkFilesystem.hBtrfs.hBtrfsSubvolume.hExfat.hExt.hExt2.hExt3.hExt4.hF2fs.hFilesystem.hIso9660.hMountPoint.hMountable.hNfs.hNtfs.hReiserfs.hSwap.hUdf.hVfat.hXfs.hFreeInfo.hGraphviz.hHoldersFilesystemUser.hHolder.hMdSubdevice.hMdUser.hSubdevice.hUser.hSimpleEtcCrypttab.hSimpleEtcFstab.hStorage.hSystemInfoArch.hUsedFeatures.hUtilsAlignment.hCallbacks.hException.hHumanString.hLightProbe.hLock.hLogger.hRegion.hRemote.hSwig.hTopology.hVersion.hlibstorage-ng.solibstorage-ngAUTHORSLICENSEautodocshtmlActiongraph_8h_source.htmlAlignment_8h_source.htmlBcacheCset_8h_source.htmlBcache_8h_source.htmlBitlocker_8h_source.htmlBlkDevice_8h_source.htmlBlkFilesystem_8h_source.htmlBtrfsSubvolume_8h_source.htmlBtrfs_8h_source.htmlCompoundAction_8h_source.htmlDasdPt_8h_source.htmlDasd_8h_source.htmlDevice_8h_source.htmlDevicegraph_8h_source.htmlDisk_8h_source.htmlDmRaid_8h_source.htmlEncryption_8h_source.htmlEnvironment_8h_source.htmlException_8h_source.htmlExfat_8h_source.htmlExt2_8h_source.htmlExt3_8h_source.htmlExt4_8h_source.htmlExt_8h_source.htmlF2fs_8h_source.htmlFilesystemUser_8h_source.htmlFilesystem_8h_source.htmlFreeInfo_8h_source.htmlGpt_8h_source.htmlGraphviz_8h_source.htmlHolder_8h_source.htmlHumanString_8h_source.htmlImplicitPt_8h_source.htmlIso9660_8h_source.htmlJfs_8h_source.htmlLightProbe_8h_source.htmlLock_8h_source.htmlLogger_8h_source.htmlLuks_8h_source.htmlLvmLv_8h_source.htmlLvmPv_8h_source.htmlLvmVg_8h_source.htmlMdContainer_8h_source.htmlMdMember_8h_source.htmlMdSubdevice_8h_source.htmlMdUser_8h_source.htmlMd_8h_source.htmlMountPoint_8h_source.htmlMountable_8h_source.htmlMsdos_8h_source.htmlMultipath_8h_source.htmlNfs_8h_source.htmlNtfs_8h_source.htmlPartitionTable_8h_source.htmlPartition_8h_source.htmlPartitionable_8h_source.htmlPlainEncryption_8h_source.htmlRegion_8h_source.htmlReiserfs_8h_source.htmlRemote_8h_source.htmlSimpleEtcCrypttab_8h_source.htmlSimpleEtcFstab_8h_source.htmlStorage_8h_source.htmlStrayBlkDevice_8h_source.htmlSubdevice_8h_source.htmlSwap_8h_source.htmlSwig_8h_source.htmlTopology_8h_source.htmlUdf_8h_source.htmlUsedFeatures_8h_source.htmlUser_8h_source.htmlVersion_8h_source.htmlVfat_8h_source.htmlXfs_8h_source.htmlannotated.htmlbc_s.pngbdwn.pngclasses.htmlclassstorage_1_1Aborted-members.htmlclassstorage_1_1Aborted.htmlclassstorage_1_1Aborted__coll__graph.mapclassstorage_1_1Aborted__coll__graph.svgclassstorage_1_1Aborted__inherit__graph.mapclassstorage_1_1Aborted__inherit__graph.svgclassstorage_1_1Actiongraph-members.htmlclassstorage_1_1Actiongraph.htmlclassstorage_1_1Actiongraph__coll__graph.mapclassstorage_1_1Actiongraph__coll__graph.svgclassstorage_1_1Actiongraph__inherit__graph.mapclassstorage_1_1Actiongraph__inherit__graph.svgclassstorage_1_1ActivateCallbacks-members.htmlclassstorage_1_1ActivateCallbacks.htmlclassstorage_1_1ActivateCallbacksLuks-members.htmlclassstorage_1_1ActivateCallbacksLuks.htmlclassstorage_1_1ActivateCallbacksLuks__coll__graph.mapclassstorage_1_1ActivateCallbacksLuks__coll__graph.svgclassstorage_1_1ActivateCallbacksLuks__inherit__graph.mapclassstorage_1_1ActivateCallbacksLuks__inherit__graph.svgclassstorage_1_1ActivateCallbacks__coll__graph.mapclassstorage_1_1ActivateCallbacks__coll__graph.svgclassstorage_1_1ActivateCallbacks__inherit__graph.mapclassstorage_1_1ActivateCallbacks__inherit__graph.svgclassstorage_1_1AlignError-members.htmlclassstorage_1_1AlignError.htmlclassstorage_1_1AlignError__coll__graph.mapclassstorage_1_1AlignError__coll__graph.svgclassstorage_1_1AlignError__inherit__graph.mapclassstorage_1_1AlignError__inherit__graph.svgclassstorage_1_1Alignment-members.htmlclassstorage_1_1Alignment.htmlclassstorage_1_1Bcache-members.htmlclassstorage_1_1Bcache.htmlclassstorage_1_1BcacheCset-members.htmlclassstorage_1_1BcacheCset.htmlclassstorage_1_1BcacheCset__coll__graph.mapclassstorage_1_1BcacheCset__coll__graph.svgclassstorage_1_1BcacheCset__inherit__graph.mapclassstorage_1_1BcacheCset__inherit__graph.svgclassstorage_1_1Bcache__coll__graph.mapclassstorage_1_1Bcache__coll__graph.svgclassstorage_1_1Bcache__inherit__graph.mapclassstorage_1_1Bcache__inherit__graph.svgclassstorage_1_1Bitlocker-members.htmlclassstorage_1_1Bitlocker.htmlclassstorage_1_1Bitlocker__coll__graph.mapclassstorage_1_1Bitlocker__coll__graph.svgclassstorage_1_1Bitlocker__inherit__graph.mapclassstorage_1_1Bitlocker__inherit__graph.svgclassstorage_1_1BlkDevice-members.htmlclassstorage_1_1BlkDevice.htmlclassstorage_1_1BlkDevice__coll__graph.mapclassstorage_1_1BlkDevice__coll__graph.svgclassstorage_1_1BlkDevice__inherit__graph.mapclassstorage_1_1BlkDevice__inherit__graph.svgclassstorage_1_1BlkFilesystem-members.htmlclassstorage_1_1BlkFilesystem.htmlclassstorage_1_1BlkFilesystem__coll__graph.mapclassstorage_1_1BlkFilesystem__coll__graph.svgclassstorage_1_1BlkFilesystem__inherit__graph.mapclassstorage_1_1BlkFilesystem__inherit__graph.svgclassstorage_1_1Btrfs-members.htmlclassstorage_1_1Btrfs.htmlclassstorage_1_1BtrfsSubvolume-members.htmlclassstorage_1_1BtrfsSubvolume.htmlclassstorage_1_1BtrfsSubvolumeNotFoundByPath-members.htmlclassstorage_1_1BtrfsSubvolumeNotFoundByPath.htmlclassstorage_1_1BtrfsSubvolumeNotFoundByPath__coll__graph.mapclassstorage_1_1BtrfsSubvolumeNotFoundByPath__coll__graph.svgclassstorage_1_1BtrfsSubvolumeNotFoundByPath__inherit__graph.mapclassstorage_1_1BtrfsSubvolumeNotFoundByPath__inherit__graph.svgclassstorage_1_1BtrfsSubvolume__coll__graph.mapclassstorage_1_1BtrfsSubvolume__coll__graph.svgclassstorage_1_1BtrfsSubvolume__inherit__graph.mapclassstorage_1_1BtrfsSubvolume__inherit__graph.svgclassstorage_1_1Btrfs__coll__graph.mapclassstorage_1_1Btrfs__coll__graph.svgclassstorage_1_1Btrfs__inherit__graph.mapclassstorage_1_1Btrfs__inherit__graph.svgclassstorage_1_1CheckCallbacks-members.htmlclassstorage_1_1CheckCallbacks.htmlclassstorage_1_1CodeLocation-members.htmlclassstorage_1_1CodeLocation.htmlclassstorage_1_1CommitCallbacks-members.htmlclassstorage_1_1CommitCallbacks.htmlclassstorage_1_1CommitCallbacks__coll__graph.mapclassstorage_1_1CommitCallbacks__coll__graph.svgclassstorage_1_1CommitCallbacks__inherit__graph.mapclassstorage_1_1CommitCallbacks__inherit__graph.svgclassstorage_1_1CompoundAction-members.htmlclassstorage_1_1CompoundAction.htmlclassstorage_1_1CompoundAction__coll__graph.mapclassstorage_1_1CompoundAction__coll__graph.svgclassstorage_1_1CompoundAction__inherit__graph.mapclassstorage_1_1CompoundAction__inherit__graph.svgclassstorage_1_1ContentInfo-members.htmlclassstorage_1_1ContentInfo.htmlclassstorage_1_1Dasd-members.htmlclassstorage_1_1Dasd.htmlclassstorage_1_1DasdPt-members.htmlclassstorage_1_1DasdPt.htmlclassstorage_1_1DasdPt__coll__graph.mapclassstorage_1_1DasdPt__coll__graph.svgclassstorage_1_1DasdPt__inherit__graph.mapclassstorage_1_1DasdPt__inherit__graph.svgclassstorage_1_1Dasd__coll__graph.mapclassstorage_1_1Dasd__coll__graph.svgclassstorage_1_1Dasd__inherit__graph.mapclassstorage_1_1Dasd__inherit__graph.svgclassstorage_1_1Device-members.htmlclassstorage_1_1Device.htmlclassstorage_1_1DeviceHasWrongType-members.htmlclassstorage_1_1DeviceHasWrongType.htmlclassstorage_1_1DeviceHasWrongType__coll__graph.mapclassstorage_1_1DeviceHasWrongType__coll__graph.svgclassstorage_1_1DeviceHasWrongType__inherit__graph.mapclassstorage_1_1DeviceHasWrongType__inherit__graph.svgclassstorage_1_1DeviceNotFound-members.htmlclassstorage_1_1DeviceNotFound.htmlclassstorage_1_1DeviceNotFoundByName-members.htmlclassstorage_1_1DeviceNotFoundByName.htmlclassstorage_1_1DeviceNotFoundByName__coll__graph.mapclassstorage_1_1DeviceNotFoundByName__coll__graph.svgclassstorage_1_1DeviceNotFoundByName__inherit__graph.mapclassstorage_1_1DeviceNotFoundByName__inherit__graph.svgclassstorage_1_1DeviceNotFoundBySid-members.htmlclassstorage_1_1DeviceNotFoundBySid.htmlclassstorage_1_1DeviceNotFoundBySid__coll__graph.mapclassstorage_1_1DeviceNotFoundBySid__coll__graph.svgclassstorage_1_1DeviceNotFoundBySid__inherit__graph.mapclassstorage_1_1DeviceNotFoundBySid__inherit__graph.svgclassstorage_1_1DeviceNotFoundByUuid-members.htmlclassstorage_1_1DeviceNotFoundByUuid.htmlclassstorage_1_1DeviceNotFoundByUuid__coll__graph.mapclassstorage_1_1DeviceNotFoundByUuid__coll__graph.svgclassstorage_1_1DeviceNotFoundByUuid__inherit__graph.mapclassstorage_1_1DeviceNotFoundByUuid__inherit__graph.svgclassstorage_1_1DeviceNotFound__coll__graph.mapclassstorage_1_1DeviceNotFound__coll__graph.svgclassstorage_1_1DeviceNotFound__inherit__graph.mapclassstorage_1_1DeviceNotFound__inherit__graph.svgclassstorage_1_1Device__coll__graph.mapclassstorage_1_1Device__coll__graph.svgclassstorage_1_1Device__inherit__graph.mapclassstorage_1_1Device__inherit__graph.svgclassstorage_1_1Devicegraph-members.htmlclassstorage_1_1Devicegraph.htmlclassstorage_1_1DevicegraphStyleCallbacks-members.htmlclassstorage_1_1DevicegraphStyleCallbacks.htmlclassstorage_1_1DevicegraphStyleCallbacks__coll__graph.mapclassstorage_1_1DevicegraphStyleCallbacks__coll__graph.svgclassstorage_1_1DevicegraphStyleCallbacks__inherit__graph.mapclassstorage_1_1DevicegraphStyleCallbacks__inherit__graph.svgclassstorage_1_1Devicegraph__coll__graph.mapclassstorage_1_1Devicegraph__coll__graph.svgclassstorage_1_1Devicegraph__inherit__graph.mapclassstorage_1_1Devicegraph__inherit__graph.svgclassstorage_1_1DifferentBlockSizes-members.htmlclassstorage_1_1DifferentBlockSizes.htmlclassstorage_1_1DifferentBlockSizes__coll__graph.mapclassstorage_1_1DifferentBlockSizes__coll__graph.svgclassstorage_1_1DifferentBlockSizes__inherit__graph.mapclassstorage_1_1DifferentBlockSizes__inherit__graph.svgclassstorage_1_1Disk-members.htmlclassstorage_1_1Disk.htmlclassstorage_1_1Disk__coll__graph.mapclassstorage_1_1Disk__coll__graph.svgclassstorage_1_1Disk__inherit__graph.mapclassstorage_1_1Disk__inherit__graph.svgclassstorage_1_1DmRaid-members.htmlclassstorage_1_1DmRaid.htmlclassstorage_1_1DmRaid__coll__graph.mapclassstorage_1_1DmRaid__coll__graph.svgclassstorage_1_1DmRaid__inherit__graph.mapclassstorage_1_1DmRaid__inherit__graph.svgclassstorage_1_1Encryption-members.htmlclassstorage_1_1Encryption.htmlclassstorage_1_1Encryption__coll__graph.mapclassstorage_1_1Encryption__coll__graph.svgclassstorage_1_1Encryption__inherit__graph.mapclassstorage_1_1Encryption__inherit__graph.svgclassstorage_1_1Environment-members.htmlclassstorage_1_1Environment.htmlclassstorage_1_1Exception-members.htmlclassstorage_1_1Exception.htmlclassstorage_1_1Exception__coll__graph.mapclassstorage_1_1Exception__coll__graph.svgclassstorage_1_1Exception__inherit__graph.mapclassstorage_1_1Exception__inherit__graph.svgclassstorage_1_1Exfat-members.htmlclassstorage_1_1Exfat.htmlclassstorage_1_1Exfat__coll__graph.mapclassstorage_1_1Exfat__coll__graph.svgclassstorage_1_1Exfat__inherit__graph.mapclassstorage_1_1Exfat__inherit__graph.svgclassstorage_1_1Ext-members.htmlclassstorage_1_1Ext.htmlclassstorage_1_1Ext2-members.htmlclassstorage_1_1Ext2.htmlclassstorage_1_1Ext2__coll__graph.mapclassstorage_1_1Ext2__coll__graph.svgclassstorage_1_1Ext2__inherit__graph.mapclassstorage_1_1Ext2__inherit__graph.svgclassstorage_1_1Ext3-members.htmlclassstorage_1_1Ext3.htmlclassstorage_1_1Ext3__coll__graph.mapclassstorage_1_1Ext3__coll__graph.svgclassstorage_1_1Ext3__inherit__graph.mapclassstorage_1_1Ext3__inherit__graph.svgclassstorage_1_1Ext4-members.htmlclassstorage_1_1Ext4.htmlclassstorage_1_1Ext4__coll__graph.mapclassstorage_1_1Ext4__coll__graph.svgclassstorage_1_1Ext4__inherit__graph.mapclassstorage_1_1Ext4__inherit__graph.svgclassstorage_1_1Ext__coll__graph.mapclassstorage_1_1Ext__coll__graph.svgclassstorage_1_1Ext__inherit__graph.mapclassstorage_1_1Ext__inherit__graph.svgclassstorage_1_1F2fs-members.htmlclassstorage_1_1F2fs.htmlclassstorage_1_1F2fs__coll__graph.mapclassstorage_1_1F2fs__coll__graph.svgclassstorage_1_1F2fs__inherit__graph.mapclassstorage_1_1F2fs__inherit__graph.svgclassstorage_1_1Filesystem-members.htmlclassstorage_1_1Filesystem.htmlclassstorage_1_1FilesystemUser-members.htmlclassstorage_1_1FilesystemUser.htmlclassstorage_1_1FilesystemUser__coll__graph.mapclassstorage_1_1FilesystemUser__coll__graph.svgclassstorage_1_1FilesystemUser__inherit__graph.mapclassstorage_1_1FilesystemUser__inherit__graph.svgclassstorage_1_1Filesystem__coll__graph.mapclassstorage_1_1Filesystem__coll__graph.svgclassstorage_1_1Filesystem__inherit__graph.mapclassstorage_1_1Filesystem__inherit__graph.svgclassstorage_1_1Gpt-members.htmlclassstorage_1_1Gpt.htmlclassstorage_1_1Gpt__coll__graph.mapclassstorage_1_1Gpt__coll__graph.svgclassstorage_1_1Gpt__inherit__graph.mapclassstorage_1_1Gpt__inherit__graph.svgclassstorage_1_1GraphStyleCallbacks-members.htmlclassstorage_1_1GraphStyleCallbacks.htmlclassstorage_1_1GraphStyleCallbacks__inherit__graph.mapclassstorage_1_1GraphStyleCallbacks__inherit__graph.svgclassstorage_1_1Holder-members.htmlclassstorage_1_1Holder.htmlclassstorage_1_1HolderAlreadyExists-members.htmlclassstorage_1_1HolderAlreadyExists.htmlclassstorage_1_1HolderAlreadyExists__coll__graph.mapclassstorage_1_1HolderAlreadyExists__coll__graph.svgclassstorage_1_1HolderAlreadyExists__inherit__graph.mapclassstorage_1_1HolderAlreadyExists__inherit__graph.svgclassstorage_1_1HolderHasWrongType-members.htmlclassstorage_1_1HolderHasWrongType.htmlclassstorage_1_1HolderHasWrongType__coll__graph.mapclassstorage_1_1HolderHasWrongType__coll__graph.svgclassstorage_1_1HolderHasWrongType__inherit__graph.mapclassstorage_1_1HolderHasWrongType__inherit__graph.svgclassstorage_1_1HolderNotFound-members.htmlclassstorage_1_1HolderNotFound.htmlclassstorage_1_1HolderNotFoundBySids-members.htmlclassstorage_1_1HolderNotFoundBySids.htmlclassstorage_1_1HolderNotFoundBySids__coll__graph.mapclassstorage_1_1HolderNotFoundBySids__coll__graph.svgclassstorage_1_1HolderNotFoundBySids__inherit__graph.mapclassstorage_1_1HolderNotFoundBySids__inherit__graph.svgclassstorage_1_1HolderNotFound__coll__graph.mapclassstorage_1_1HolderNotFound__coll__graph.svgclassstorage_1_1HolderNotFound__inherit__graph.mapclassstorage_1_1HolderNotFound__inherit__graph.svgclassstorage_1_1Holder__coll__graph.mapclassstorage_1_1Holder__coll__graph.svgclassstorage_1_1Holder__inherit__graph.mapclassstorage_1_1Holder__inherit__graph.svgclassstorage_1_1IOException-members.htmlclassstorage_1_1IOException.htmlclassstorage_1_1IOException__coll__graph.mapclassstorage_1_1IOException__coll__graph.svgclassstorage_1_1IOException__inherit__graph.mapclassstorage_1_1IOException__inherit__graph.svgclassstorage_1_1ImplicitPt-members.htmlclassstorage_1_1ImplicitPt.htmlclassstorage_1_1ImplicitPt__coll__graph.mapclassstorage_1_1ImplicitPt__coll__graph.svgclassstorage_1_1ImplicitPt__inherit__graph.mapclassstorage_1_1ImplicitPt__inherit__graph.svgclassstorage_1_1IndexOutOfRangeException-members.htmlclassstorage_1_1IndexOutOfRangeException.htmlclassstorage_1_1IndexOutOfRangeException__coll__graph.mapclassstorage_1_1IndexOutOfRangeException__coll__graph.svgclassstorage_1_1IndexOutOfRangeException__inherit__graph.mapclassstorage_1_1IndexOutOfRangeException__inherit__graph.svgclassstorage_1_1InvalidBlockSize-members.htmlclassstorage_1_1InvalidBlockSize.htmlclassstorage_1_1InvalidBlockSize__coll__graph.mapclassstorage_1_1InvalidBlockSize__coll__graph.svgclassstorage_1_1InvalidBlockSize__inherit__graph.mapclassstorage_1_1InvalidBlockSize__inherit__graph.svgclassstorage_1_1InvalidExtentSize-members.htmlclassstorage_1_1InvalidExtentSize.htmlclassstorage_1_1InvalidExtentSize__coll__graph.mapclassstorage_1_1InvalidExtentSize__coll__graph.svgclassstorage_1_1InvalidExtentSize__inherit__graph.mapclassstorage_1_1InvalidExtentSize__inherit__graph.svgclassstorage_1_1InvalidMountPointPath-members.htmlclassstorage_1_1InvalidMountPointPath.htmlclassstorage_1_1InvalidMountPointPath__coll__graph.mapclassstorage_1_1InvalidMountPointPath__coll__graph.svgclassstorage_1_1InvalidMountPointPath__inherit__graph.mapclassstorage_1_1InvalidMountPointPath__inherit__graph.svgclassstorage_1_1Iso9660-members.htmlclassstorage_1_1Iso9660.htmlclassstorage_1_1Iso9660__coll__graph.mapclassstorage_1_1Iso9660__coll__graph.svgclassstorage_1_1Iso9660__inherit__graph.mapclassstorage_1_1Iso9660__inherit__graph.svgclassstorage_1_1Jfs-members.htmlclassstorage_1_1Jfs.htmlclassstorage_1_1Jfs__coll__graph.mapclassstorage_1_1Jfs__coll__graph.svgclassstorage_1_1Jfs__inherit__graph.mapclassstorage_1_1Jfs__inherit__graph.svgclassstorage_1_1LockException-members.htmlclassstorage_1_1LockException.htmlclassstorage_1_1LockException__coll__graph.mapclassstorage_1_1LockException__coll__graph.svgclassstorage_1_1LockException__inherit__graph.mapclassstorage_1_1LockException__inherit__graph.svgclassstorage_1_1Logger-members.htmlclassstorage_1_1Logger.htmlclassstorage_1_1LogicException-members.htmlclassstorage_1_1LogicException.htmlclassstorage_1_1LogicException__coll__graph.mapclassstorage_1_1LogicException__coll__graph.svgclassstorage_1_1LogicException__inherit__graph.mapclassstorage_1_1LogicException__inherit__graph.svgclassstorage_1_1Luks-members.htmlclassstorage_1_1Luks.htmlclassstorage_1_1LuksInfo-members.htmlclassstorage_1_1LuksInfo.htmlclassstorage_1_1LuksInfo__coll__graph.mapclassstorage_1_1LuksInfo__coll__graph.svgclassstorage_1_1LuksInfo__inherit__graph.mapclassstorage_1_1LuksInfo__inherit__graph.svgclassstorage_1_1Luks__coll__graph.mapclassstorage_1_1Luks__coll__graph.svgclassstorage_1_1Luks__inherit__graph.mapclassstorage_1_1Luks__inherit__graph.svgclassstorage_1_1LvmLv-members.htmlclassstorage_1_1LvmLv.htmlclassstorage_1_1LvmLvNotFoundByLvName-members.htmlclassstorage_1_1LvmLvNotFoundByLvName.htmlclassstorage_1_1LvmLvNotFoundByLvName__coll__graph.mapclassstorage_1_1LvmLvNotFoundByLvName__coll__graph.svgclassstorage_1_1LvmLvNotFoundByLvName__inherit__graph.mapclassstorage_1_1LvmLvNotFoundByLvName__inherit__graph.svgclassstorage_1_1LvmLv__coll__graph.mapclassstorage_1_1LvmLv__coll__graph.svgclassstorage_1_1LvmLv__inherit__graph.mapclassstorage_1_1LvmLv__inherit__graph.svgclassstorage_1_1LvmPv-members.htmlclassstorage_1_1LvmPv.htmlclassstorage_1_1LvmPv__coll__graph.mapclassstorage_1_1LvmPv__coll__graph.svgclassstorage_1_1LvmPv__inherit__graph.mapclassstorage_1_1LvmPv__inherit__graph.svgclassstorage_1_1LvmVg-members.htmlclassstorage_1_1LvmVg.htmlclassstorage_1_1LvmVgNotFoundByVgName-members.htmlclassstorage_1_1LvmVgNotFoundByVgName.htmlclassstorage_1_1LvmVgNotFoundByVgName__coll__graph.mapclassstorage_1_1LvmVgNotFoundByVgName__coll__graph.svgclassstorage_1_1LvmVgNotFoundByVgName__inherit__graph.mapclassstorage_1_1LvmVgNotFoundByVgName__inherit__graph.svgclassstorage_1_1LvmVg__coll__graph.mapclassstorage_1_1LvmVg__coll__graph.svgclassstorage_1_1LvmVg__inherit__graph.mapclassstorage_1_1LvmVg__inherit__graph.svgclassstorage_1_1Md-members.htmlclassstorage_1_1Md.htmlclassstorage_1_1MdContainer-members.htmlclassstorage_1_1MdContainer.htmlclassstorage_1_1MdContainer__coll__graph.mapclassstorage_1_1MdContainer__coll__graph.svgclassstorage_1_1MdContainer__inherit__graph.mapclassstorage_1_1MdContainer__inherit__graph.svgclassstorage_1_1MdMember-members.htmlclassstorage_1_1MdMember.htmlclassstorage_1_1MdMember__coll__graph.mapclassstorage_1_1MdMember__coll__graph.svgclassstorage_1_1MdMember__inherit__graph.mapclassstorage_1_1MdMember__inherit__graph.svgclassstorage_1_1MdSubdevice-members.htmlclassstorage_1_1MdSubdevice.htmlclassstorage_1_1MdSubdevice__coll__graph.mapclassstorage_1_1MdSubdevice__coll__graph.svgclassstorage_1_1MdSubdevice__inherit__graph.mapclassstorage_1_1MdSubdevice__inherit__graph.svgclassstorage_1_1MdUser-members.htmlclassstorage_1_1MdUser.htmlclassstorage_1_1MdUser__coll__graph.mapclassstorage_1_1MdUser__coll__graph.svgclassstorage_1_1MdUser__inherit__graph.mapclassstorage_1_1MdUser__inherit__graph.svgclassstorage_1_1Md__coll__graph.mapclassstorage_1_1Md__coll__graph.svgclassstorage_1_1Md__inherit__graph.mapclassstorage_1_1Md__inherit__graph.svgclassstorage_1_1MountPoint-members.htmlclassstorage_1_1MountPoint.htmlclassstorage_1_1MountPoint__coll__graph.mapclassstorage_1_1MountPoint__coll__graph.svgclassstorage_1_1MountPoint__inherit__graph.mapclassstorage_1_1MountPoint__inherit__graph.svgclassstorage_1_1Mountable-members.htmlclassstorage_1_1Mountable.htmlclassstorage_1_1Mountable__coll__graph.mapclassstorage_1_1Mountable__coll__graph.svgclassstorage_1_1Mountable__inherit__graph.mapclassstorage_1_1Mountable__inherit__graph.svgclassstorage_1_1Msdos-members.htmlclassstorage_1_1Msdos.htmlclassstorage_1_1Msdos__coll__graph.mapclassstorage_1_1Msdos__coll__graph.svgclassstorage_1_1Msdos__inherit__graph.mapclassstorage_1_1Msdos__inherit__graph.svgclassstorage_1_1Multipath-members.htmlclassstorage_1_1Multipath.htmlclassstorage_1_1Multipath__coll__graph.mapclassstorage_1_1Multipath__coll__graph.svgclassstorage_1_1Multipath__inherit__graph.mapclassstorage_1_1Multipath__inherit__graph.svgclassstorage_1_1Nfs-members.htmlclassstorage_1_1Nfs.htmlclassstorage_1_1NfsNotFoundByServerAndPath-members.htmlclassstorage_1_1NfsNotFoundByServerAndPath.htmlclassstorage_1_1NfsNotFoundByServerAndPath__coll__graph.mapclassstorage_1_1NfsNotFoundByServerAndPath__coll__graph.svgclassstorage_1_1NfsNotFoundByServerAndPath__inherit__graph.mapclassstorage_1_1NfsNotFoundByServerAndPath__inherit__graph.svgclassstorage_1_1Nfs__coll__graph.mapclassstorage_1_1Nfs__coll__graph.svgclassstorage_1_1Nfs__inherit__graph.mapclassstorage_1_1Nfs__inherit__graph.svgclassstorage_1_1NoIntersection-members.htmlclassstorage_1_1NoIntersection.htmlclassstorage_1_1NoIntersection__coll__graph.mapclassstorage_1_1NoIntersection__coll__graph.svgclassstorage_1_1NoIntersection__inherit__graph.mapclassstorage_1_1NoIntersection__inherit__graph.svgclassstorage_1_1NotInside-members.htmlclassstorage_1_1NotInside.htmlclassstorage_1_1NotInside__coll__graph.mapclassstorage_1_1NotInside__coll__graph.svgclassstorage_1_1NotInside__inherit__graph.mapclassstorage_1_1NotInside__inherit__graph.svgclassstorage_1_1Ntfs-members.htmlclassstorage_1_1Ntfs.htmlclassstorage_1_1Ntfs__coll__graph.mapclassstorage_1_1Ntfs__coll__graph.svgclassstorage_1_1Ntfs__inherit__graph.mapclassstorage_1_1Ntfs__inherit__graph.svgclassstorage_1_1NullPointerException-members.htmlclassstorage_1_1NullPointerException.htmlclassstorage_1_1NullPointerException__coll__graph.mapclassstorage_1_1NullPointerException__coll__graph.svgclassstorage_1_1NullPointerException__inherit__graph.mapclassstorage_1_1NullPointerException__inherit__graph.svgclassstorage_1_1OutOfMemoryException-members.htmlclassstorage_1_1OutOfMemoryException.htmlclassstorage_1_1OutOfMemoryException__coll__graph.mapclassstorage_1_1OutOfMemoryException__coll__graph.svgclassstorage_1_1OutOfMemoryException__inherit__graph.mapclassstorage_1_1OutOfMemoryException__inherit__graph.svgclassstorage_1_1OverflowException-members.htmlclassstorage_1_1OverflowException.htmlclassstorage_1_1OverflowException__coll__graph.mapclassstorage_1_1OverflowException__coll__graph.svgclassstorage_1_1OverflowException__inherit__graph.mapclassstorage_1_1OverflowException__inherit__graph.svgclassstorage_1_1ParseException-members.htmlclassstorage_1_1ParseException.htmlclassstorage_1_1ParseException__coll__graph.mapclassstorage_1_1ParseException__coll__graph.svgclassstorage_1_1ParseException__inherit__graph.mapclassstorage_1_1ParseException__inherit__graph.svgclassstorage_1_1Partition-members.htmlclassstorage_1_1Partition.htmlclassstorage_1_1PartitionSlot-members.htmlclassstorage_1_1PartitionSlot.htmlclassstorage_1_1PartitionSlot__coll__graph.mapclassstorage_1_1PartitionSlot__coll__graph.svgclassstorage_1_1PartitionTable-members.htmlclassstorage_1_1PartitionTable.htmlclassstorage_1_1PartitionTable__coll__graph.mapclassstorage_1_1PartitionTable__coll__graph.svgclassstorage_1_1PartitionTable__inherit__graph.mapclassstorage_1_1PartitionTable__inherit__graph.svgclassstorage_1_1Partition__coll__graph.mapclassstorage_1_1Partition__coll__graph.svgclassstorage_1_1Partition__inherit__graph.mapclassstorage_1_1Partition__inherit__graph.svgclassstorage_1_1Partitionable-members.htmlclassstorage_1_1Partitionable.htmlclassstorage_1_1Partitionable__coll__graph.mapclassstorage_1_1Partitionable__coll__graph.svgclassstorage_1_1Partitionable__inherit__graph.mapclassstorage_1_1Partitionable__inherit__graph.svgclassstorage_1_1PlainEncryption-members.htmlclassstorage_1_1PlainEncryption.htmlclassstorage_1_1PlainEncryption__coll__graph.mapclassstorage_1_1PlainEncryption__coll__graph.svgclassstorage_1_1PlainEncryption__inherit__graph.mapclassstorage_1_1PlainEncryption__inherit__graph.svgclassstorage_1_1ProbeCallbacks-members.htmlclassstorage_1_1ProbeCallbacks.htmlclassstorage_1_1ProbeCallbacksV2-members.htmlclassstorage_1_1ProbeCallbacksV2.htmlclassstorage_1_1ProbeCallbacksV2__coll__graph.mapclassstorage_1_1ProbeCallbacksV2__coll__graph.svgclassstorage_1_1ProbeCallbacksV2__inherit__graph.mapclassstorage_1_1ProbeCallbacksV2__inherit__graph.svgclassstorage_1_1ProbeCallbacksV3-members.htmlclassstorage_1_1ProbeCallbacksV3.htmlclassstorage_1_1ProbeCallbacksV3__coll__graph.mapclassstorage_1_1ProbeCallbacksV3__coll__graph.svgclassstorage_1_1ProbeCallbacksV3__inherit__graph.mapclassstorage_1_1ProbeCallbacksV3__inherit__graph.svgclassstorage_1_1ProbeCallbacks__coll__graph.mapclassstorage_1_1ProbeCallbacks__coll__graph.svgclassstorage_1_1ProbeCallbacks__inherit__graph.mapclassstorage_1_1ProbeCallbacks__inherit__graph.svgclassstorage_1_1Region-members.htmlclassstorage_1_1Region.htmlclassstorage_1_1Reiserfs-members.htmlclassstorage_1_1Reiserfs.htmlclassstorage_1_1Reiserfs__coll__graph.mapclassstorage_1_1Reiserfs__coll__graph.svgclassstorage_1_1Reiserfs__inherit__graph.mapclassstorage_1_1Reiserfs__inherit__graph.svgclassstorage_1_1RemoteCallbacks-members.htmlclassstorage_1_1RemoteCallbacks.htmlclassstorage_1_1ResizeInfo-members.htmlclassstorage_1_1ResizeInfo.htmlclassstorage_1_1Silencer-members.htmlclassstorage_1_1Silencer.htmlclassstorage_1_1SpaceInfo-members.htmlclassstorage_1_1SpaceInfo.htmlclassstorage_1_1Storage-members.htmlclassstorage_1_1Storage.htmlclassstorage_1_1Storage__coll__graph.mapclassstorage_1_1Storage__coll__graph.svgclassstorage_1_1Storage__inherit__graph.mapclassstorage_1_1Storage__inherit__graph.svgclassstorage_1_1StrayBlkDevice-members.htmlclassstorage_1_1StrayBlkDevice.htmlclassstorage_1_1StrayBlkDevice__coll__graph.mapclassstorage_1_1StrayBlkDevice__coll__graph.svgclassstorage_1_1StrayBlkDevice__inherit__graph.mapclassstorage_1_1StrayBlkDevice__inherit__graph.svgclassstorage_1_1Subdevice-members.htmlclassstorage_1_1Subdevice.htmlclassstorage_1_1Subdevice__coll__graph.mapclassstorage_1_1Subdevice__coll__graph.svgclassstorage_1_1Subdevice__inherit__graph.mapclassstorage_1_1Subdevice__inherit__graph.svgclassstorage_1_1Swap-members.htmlclassstorage_1_1Swap.htmlclassstorage_1_1Swap__coll__graph.mapclassstorage_1_1Swap__coll__graph.svgclassstorage_1_1Swap__inherit__graph.mapclassstorage_1_1Swap__inherit__graph.svgclassstorage_1_1Topology-members.htmlclassstorage_1_1Topology.htmlclassstorage_1_1Udf-members.htmlclassstorage_1_1Udf.htmlclassstorage_1_1Udf__coll__graph.mapclassstorage_1_1Udf__coll__graph.svgclassstorage_1_1Udf__inherit__graph.mapclassstorage_1_1Udf__inherit__graph.svgclassstorage_1_1UnsupportedException-members.htmlclassstorage_1_1UnsupportedException.htmlclassstorage_1_1UnsupportedException__coll__graph.mapclassstorage_1_1UnsupportedException__coll__graph.svgclassstorage_1_1UnsupportedException__inherit__graph.mapclassstorage_1_1UnsupportedException__inherit__graph.svgclassstorage_1_1User-members.htmlclassstorage_1_1User.htmlclassstorage_1_1User__coll__graph.mapclassstorage_1_1User__coll__graph.svgclassstorage_1_1User__inherit__graph.mapclassstorage_1_1User__inherit__graph.svgclassstorage_1_1Vfat-members.htmlclassstorage_1_1Vfat.htmlclassstorage_1_1Vfat__coll__graph.mapclassstorage_1_1Vfat__coll__graph.svgclassstorage_1_1Vfat__inherit__graph.mapclassstorage_1_1Vfat__inherit__graph.svgclassstorage_1_1WrongNumberOfChildren-members.htmlclassstorage_1_1WrongNumberOfChildren.htmlclassstorage_1_1WrongNumberOfChildren__coll__graph.mapclassstorage_1_1WrongNumberOfChildren__coll__graph.svgclassstorage_1_1WrongNumberOfChildren__inherit__graph.mapclassstorage_1_1WrongNumberOfChildren__inherit__graph.svgclassstorage_1_1WrongNumberOfParents-members.htmlclassstorage_1_1WrongNumberOfParents.htmlclassstorage_1_1WrongNumberOfParents__coll__graph.mapclassstorage_1_1WrongNumberOfParents__coll__graph.svgclassstorage_1_1WrongNumberOfParents__inherit__graph.mapclassstorage_1_1WrongNumberOfParents__inherit__graph.svgclassstorage_1_1Xfs-members.htmlclassstorage_1_1Xfs.htmlclassstorage_1_1Xfs__coll__graph.mapclassstorage_1_1Xfs__coll__graph.svgclassstorage_1_1Xfs__inherit__graph.mapclassstorage_1_1Xfs__inherit__graph.svgclosed.pngdir_07fa4af1beb4bf54866da33541fdac7e.htmldir_19b5daa7a6a8a9bea3e7938094914eb5.htmldir_70f20ecf11358dff00a0daf546d3147e.htmldir_94a702a068db0037fc797a0ce58cab1f.htmldir_dfc4c45d527dd4da6a43f6bdb399d28a.htmldoc.pngdoxygen.cssdoxygen.pngfiles.htmlfolderclosed.pngfolderopen.pngfunctions.htmlfunctions_0x7e.htmlfunctions_b.htmlfunctions_c.htmlfunctions_d.htmlfunctions_e.htmlfunctions_f.htmlfunctions_func.htmlfunctions_func_0x7e.htmlfunctions_func_b.htmlfunctions_func_c.htmlfunctions_func_d.htmlfunctions_func_e.htmlfunctions_func_f.htmlfunctions_func_g.htmlfunctions_func_h.htmlfunctions_func_i.htmlfunctions_func_l.htmlfunctions_func_m.htmlfunctions_func_n.htmlfunctions_func_o.htmlfunctions_func_p.htmlfunctions_func_r.htmlfunctions_func_s.htmlfunctions_func_t.htmlfunctions_func_u.htmlfunctions_func_v.htmlfunctions_func_w.htmlfunctions_g.htmlfunctions_h.htmlfunctions_i.htmlfunctions_l.htmlfunctions_m.htmlfunctions_n.htmlfunctions_o.htmlfunctions_p.htmlfunctions_r.htmlfunctions_rela.htmlfunctions_s.htmlfunctions_t.htmlfunctions_u.htmlfunctions_v.htmlfunctions_w.htmlgraph_legend.htmlgraph_legend.svghierarchy.htmlindex.htmlinherit_graph_0.mapinherit_graph_0.svginherit_graph_1.mapinherit_graph_1.svginherit_graph_10.mapinherit_graph_10.svginherit_graph_11.mapinherit_graph_11.svginherit_graph_12.mapinherit_graph_12.svginherit_graph_13.mapinherit_graph_13.svginherit_graph_14.mapinherit_graph_14.svginherit_graph_15.mapinherit_graph_15.svginherit_graph_16.mapinherit_graph_16.svginherit_graph_17.mapinherit_graph_17.svginherit_graph_18.mapinherit_graph_18.svginherit_graph_19.mapinherit_graph_19.svginherit_graph_2.mapinherit_graph_2.svginherit_graph_20.mapinherit_graph_20.svginherit_graph_21.mapinherit_graph_21.svginherit_graph_3.mapinherit_graph_3.svginherit_graph_4.mapinherit_graph_4.svginherit_graph_5.mapinherit_graph_5.svginherit_graph_6.mapinherit_graph_6.svginherit_graph_7.mapinherit_graph_7.svginherit_graph_8.mapinherit_graph_8.svginherit_graph_9.mapinherit_graph_9.svginherits.htmlnamespacemembers.htmlnamespacemembers_b.htmlnamespacemembers_c.htmlnamespacemembers_d.htmlnamespacemembers_enum.htmlnamespacemembers_eval.htmlnamespacemembers_func.htmlnamespacemembers_g.htmlnamespacemembers_h.htmlnamespacemembers_i.htmlnamespacemembers_l.htmlnamespacemembers_m.htmlnamespacemembers_n.htmlnamespacemembers_o.htmlnamespacemembers_p.htmlnamespacemembers_r.htmlnamespacemembers_s.htmlnamespacemembers_t.htmlnamespacemembers_type.htmlnamespacemembers_z.htmlnamespaces.htmlnamespacestorage.htmlnav_f.pngnav_g.pngnav_h.pngopen.pngsplitbar.pngstructstorage_1_1DeactivateStatus-members.htmlstructstorage_1_1DeactivateStatus.htmlstructstorage_1_1RemoteCommand-members.htmlstructstorage_1_1RemoteCommand.htmlstructstorage_1_1RemoteFile-members.htmlstructstorage_1_1RemoteFile.htmlstructstorage_1_1SimpleEtcCrypttabEntry-members.htmlstructstorage_1_1SimpleEtcCrypttabEntry.htmlstructstorage_1_1SimpleEtcFstabEntry-members.htmlstructstorage_1_1SimpleEtcFstabEntry.htmlsync_off.pngsync_on.pngtab_a.pngtab_b.pngtab_h.pngtab_s.pngtabs.cssxmlActiongraph_8h.xmlAlignment_8h.xmlBcacheCset_8h.xmlBcache_8h.xmlBitlocker_8h.xmlBlkDevice_8h.xmlBlkFilesystem_8h.xmlBtrfsSubvolume_8h.xmlBtrfs_8h.xmlCompoundAction_8h.xmlDasdPt_8h.xmlDasd_8h.xmlDevice_8h.xmlDevicegraph_8h.xmlDisk_8h.xmlDmRaid_8h.xmlEncryption_8h.xmlEnvironment_8h.xmlException_8h.xmlExfat_8h.xmlExt2_8h.xmlExt3_8h.xmlExt4_8h.xmlExt_8h.xmlF2fs_8h.xmlFilesystemUser_8h.xmlFilesystem_8h.xmlFreeInfo_8h.xmlGpt_8h.xmlGraphviz_8h.xmlHolder_8h.xmlHumanString_8h.xmlImplicitPt_8h.xmlIso9660_8h.xmlJfs_8h.xmlLightProbe_8h.xmlLock_8h.xmlLogger_8h.xmlLuks_8h.xmlLvmLv_8h.xmlLvmPv_8h.xmlLvmVg_8h.xmlMdContainer_8h.xmlMdMember_8h.xmlMdSubdevice_8h.xmlMdUser_8h.xmlMd_8h.xmlMountPoint_8h.xmlMountable_8h.xmlMsdos_8h.xmlMultipath_8h.xmlNfs_8h.xmlNtfs_8h.xmlPartitionTable_8h.xmlPartition_8h.xmlPartitionable_8h.xmlPlainEncryption_8h.xmlRegion_8h.xmlReiserfs_8h.xmlRemote_8h.xmlSimpleEtcCrypttab_8h.xmlSimpleEtcFstab_8h.xmlStorage_8h.xmlStrayBlkDevice_8h.xmlSubdevice_8h.xmlSwap_8h.xmlSwig_8h.xmlTopology_8h.xmlUdf_8h.xmlUsedFeatures_8h.xmlUser_8h.xmlVersion_8h.xmlVfat_8h.xmlXfs_8h.xmlclassstorage_1_1Aborted.xmlclassstorage_1_1Actiongraph.xmlclassstorage_1_1ActivateCallbacks.xmlclassstorage_1_1ActivateCallbacksLuks.xmlclassstorage_1_1AlignError.xmlclassstorage_1_1Alignment.xmlclassstorage_1_1Bcache.xmlclassstorage_1_1BcacheCset.xmlclassstorage_1_1Bitlocker.xmlclassstorage_1_1BlkDevice.xmlclassstorage_1_1BlkFilesystem.xmlclassstorage_1_1Btrfs.xmlclassstorage_1_1BtrfsSubvolume.xmlclassstorage_1_1BtrfsSubvolumeNotFoundByPath.xmlclassstorage_1_1CheckCallbacks.xmlclassstorage_1_1CodeLocation.xmlclassstorage_1_1CommitCallbacks.xmlclassstorage_1_1CompoundAction.xmlclassstorage_1_1ContentInfo.xmlclassstorage_1_1Dasd.xmlclassstorage_1_1DasdPt.xmlclassstorage_1_1Device.xmlclassstorage_1_1DeviceHasWrongType.xmlclassstorage_1_1DeviceNotFound.xmlclassstorage_1_1DeviceNotFoundByName.xmlclassstorage_1_1DeviceNotFoundBySid.xmlclassstorage_1_1DeviceNotFoundByUuid.xmlclassstorage_1_1Devicegraph.xmlclassstorage_1_1DevicegraphStyleCallbacks.xmlclassstorage_1_1DifferentBlockSizes.xmlclassstorage_1_1Disk.xmlclassstorage_1_1DmRaid.xmlclassstorage_1_1Encryption.xmlclassstorage_1_1Environment.xmlclassstorage_1_1Exception.xmlclassstorage_1_1Exfat.xmlclassstorage_1_1Ext.xmlclassstorage_1_1Ext2.xmlclassstorage_1_1Ext3.xmlclassstorage_1_1Ext4.xmlclassstorage_1_1F2fs.xmlclassstorage_1_1Filesystem.xmlclassstorage_1_1FilesystemUser.xmlclassstorage_1_1Gpt.xmlclassstorage_1_1GraphStyleCallbacks.xmlclassstorage_1_1Holder.xmlclassstorage_1_1HolderAlreadyExists.xmlclassstorage_1_1HolderHasWrongType.xmlclassstorage_1_1HolderNotFound.xmlclassstorage_1_1HolderNotFoundBySids.xmlclassstorage_1_1IOException.xmlclassstorage_1_1ImplicitPt.xmlclassstorage_1_1IndexOutOfRangeException.xmlclassstorage_1_1InvalidBlockSize.xmlclassstorage_1_1InvalidExtentSize.xmlclassstorage_1_1InvalidMountPointPath.xmlclassstorage_1_1Iso9660.xmlclassstorage_1_1Jfs.xmlclassstorage_1_1LockException.xmlclassstorage_1_1Logger.xmlclassstorage_1_1LogicException.xmlclassstorage_1_1Luks.xmlclassstorage_1_1LuksInfo.xmlclassstorage_1_1LvmLv.xmlclassstorage_1_1LvmLvNotFoundByLvName.xmlclassstorage_1_1LvmPv.xmlclassstorage_1_1LvmVg.xmlclassstorage_1_1LvmVgNotFoundByVgName.xmlclassstorage_1_1Md.xmlclassstorage_1_1MdContainer.xmlclassstorage_1_1MdMember.xmlclassstorage_1_1MdSubdevice.xmlclassstorage_1_1MdUser.xmlclassstorage_1_1MountPoint.xmlclassstorage_1_1Mountable.xmlclassstorage_1_1Msdos.xmlclassstorage_1_1Multipath.xmlclassstorage_1_1Nfs.xmlclassstorage_1_1NfsNotFoundByServerAndPath.xmlclassstorage_1_1NoIntersection.xmlclassstorage_1_1NotInside.xmlclassstorage_1_1Ntfs.xmlclassstorage_1_1NullPointerException.xmlclassstorage_1_1OutOfMemoryException.xmlclassstorage_1_1OverflowException.xmlclassstorage_1_1ParseException.xmlclassstorage_1_1Partition.xmlclassstorage_1_1PartitionSlot.xmlclassstorage_1_1PartitionTable.xmlclassstorage_1_1Partitionable.xmlclassstorage_1_1PlainEncryption.xmlclassstorage_1_1ProbeCallbacks.xmlclassstorage_1_1ProbeCallbacksV2.xmlclassstorage_1_1ProbeCallbacksV3.xmlclassstorage_1_1Region.xmlclassstorage_1_1Reiserfs.xmlclassstorage_1_1RemoteCallbacks.xmlclassstorage_1_1ResizeInfo.xmlclassstorage_1_1Silencer.xmlclassstorage_1_1SpaceInfo.xmlclassstorage_1_1Storage.xmlclassstorage_1_1StrayBlkDevice.xmlclassstorage_1_1Subdevice.xmlclassstorage_1_1Swap.xmlclassstorage_1_1Topology.xmlclassstorage_1_1Udf.xmlclassstorage_1_1UnsupportedException.xmlclassstorage_1_1User.xmlclassstorage_1_1Vfat.xmlclassstorage_1_1WrongNumberOfChildren.xmlclassstorage_1_1WrongNumberOfParents.xmlclassstorage_1_1Xfs.xmldir_07fa4af1beb4bf54866da33541fdac7e.xmldir_19b5daa7a6a8a9bea3e7938094914eb5.xmldir_70f20ecf11358dff00a0daf546d3147e.xmldir_94a702a068db0037fc797a0ce58cab1f.xmldir_dfc4c45d527dd4da6a43f6bdb399d28a.xmlindex.xmlindexpage.xmlnamespacestorage.xmlnamespacestorage_1_1Action.xmlstructstorage_1_1DeactivateStatus.xmlstructstorage_1_1RemoteCommand.xmlstructstorage_1_1RemoteFile.xmlstructstorage_1_1SimpleEtcCrypttabEntry.xmlstructstorage_1_1SimpleEtcFstabEntry.xml/usr/include//usr/include/storage//usr/include/storage/Devices//usr/include/storage/Filesystems//usr/include/storage/Holders//usr/include/storage/SystemInfo//usr/include/storage/Utils//usr/lib//usr/share/doc/packages//usr/share/doc/packages/libstorage-ng//usr/share/doc/packages/libstorage-ng/autodocs//usr/share/doc/packages/libstorage-ng/autodocs/html//usr/share/doc/packages/libstorage-ng/autodocs/xml/-fomit-frame-pointer -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:17262/openSUSE_Leap_15.2_Update/9740ff03d61c2db02a63aff20837ff39-libstorage-ng.openSUSE_Leap_15.2_Updatedrpmxz5i586-suse-linux                     directoryC++ source, ASCII textC source, ASCII textASCII textHTML document, ASCII text, with very long linesPNG image data, 8 x 30, 8-bit/color RGBA, non-interlacedPNG image data, 7 x 8, 8-bit/color RGBA, non-interlacedSVG Scalable Vector Graphics imageHTML document, ASCII textPNG image data, 9 x 9, 8-bit/color RGBA, non-interlacedPNG image data, 24 x 22, 8-bit/color RGBA, non-interlacedPNG image data, 104 x 31, 8-bit/color RGBA, non-interlacedPNG image data, 1 x 56, 8-bit/color RGB, non-interlacedPNG image data, 1 x 6, 8-bit/color RGBA, non-interlacedPNG image data, 1 x 12, 8-bit/color RGB, non-interlacedPNG image data, 6 x 1024, 8-bit/color RGB, non-interlacedPNG image data, 24 x 24, 8-bit/color RGBA, non-interlacedPNG image data, 1 x 36, 8-bit/color RGB, non-interlacedASCII text, with very long lines, with no line terminatorsXML 1.0 document textc/^>WW]utf-8871895b39d289fd87c7a5cd8aff4f5722a32cb72332ec6af750308c5eec5dc37?P7zXZ !t/P]"k%fk=Ve-3+e7?ȇLyo' p|kFNe@V' 脃hG"Fy?#:; _u{ 3Rhr@sIݭS cUQc0dغQC?0@Bjl34k0Gv^o_P f+L7/6I`95i)u%Wѕ_ltI.S3}-IJhӢ2 4i0iu>N)em=Ϛy^{2=:-$2:GXK7*vox[ZcTRd сFpG-fء[~0T1Uz c[Gl #Kb >sC6I0r#:aPѵjPר~7יg\ee6/0>"ZOi5ڄhN2؝>v/}6*5 &,~3 ‰a{q|d =rp50z䑄y Gh-w_C4֫Bά%],VZ:hFY'㓯^-_bwBLSJ3OGEpW %%@W0Iˏu(1٫&qZ,(HxМ^79!+&ԡ¿râf_[wAu`!A* "{udqr='c!LQ[~z3/ 3¬t=eV -$0n1:V`_Sd&n >>gP[᯳wkDM|wsV49/lnn33t5IEqm+s>[E.mbQd')C Vgs`}ҪݎKY=`O&.]~7΃j1`vqoDf}p F WFS ң 0LXX[7[ #HFRPZH'/thd3umYRo&>Wf}`X)/5Yכ-JX̶5ZCWR>3vj6fM?Kۡa;'o 7?&UAT4gAL'͋E!D3/s@&?S[i;la,plIqT D؆N+.![)6Z"^۷11 FzGrLi7-b{%w5 yE=<}Cf#3jtP~4z f^ ϶CX4^dC l.X(;yRYv~c",Xf * ܥhYb]E0ӌ-g JX#k0f^"UFn$ղaDUlHrSJaM{@ULW'FNsR:+:% trS܏^k%6ЕeD vVk)u4,I.h ?Z7l3g'̱n2RʵTBS ;tɉ'>=xgy>ixKmo.'wcvV; &z~FqFq/m1-R(d]M |"z;[\CPi8ur 敵QǦxjxϯ;bP),JyD~J]iP5*QOޠl ~#&"=Q6P -w\toܬEW4ʡ'2g̐bu7)EU)_$WhT8 @}n)ay[LW[NCd.>4 e%ɧ#ws*:SH4.9}rPAs}ל$uWlS53cBqc[ěEo3ٚM'l)c@]~|/aR $㲿^h:M ROifx͂TmN5>M!W.osTxp#s b+Gg xĮeGJm)!nkXUd!|@NZj?ɧ`ƻ tcL!&ejh{?)x7xt itD:1d]Ft}>C}bi]:,>אə=VVzg{y\_o^= WG߱ a=H ' Ft Qs&.Ϗw;3=Hyݥ$|.#aqTn5َK pa4$͵r nG6aќ2Lj0mq?p[NkmsVbhjZoj(4opN"*îS>%Xqm+P݋Ho{n6tIe=.1Fzi˖H߶r$o J%NꈟVOi/Ah͎eO}H&um޾ EVCOݳD'R98UbQFhE>TY񍙤a*ҡпHU}._4/6Oכ$q16[yDZv\ _@z'!%!HsGtfpgN-E_aeYiNigQd48@O.Fa u--y`І 3IrJ~O{XXO2|qFmO}!~kܞ>?In=jZ2 ,ȀFݑm5.n1,(|Fv%X=mV~-=u<3,'Cp"ERx2-ś;V%(&^b^|[$0UP9O W>l reGx{\k@A.YC U-AITJ;ߟɕ~^4Ala50Kr}%b Α7%*qm h-Ľw8_9cL:zE@CAC/BºGB8P dIKSջ}- TYY ,܀B'>"zۇS^?wR {~*QN昌>|7'GUkH1/v}n`⁓m1f~G%Yx5S5ٰ߃EHŷqLM|R7z8О̖nHnT=./Q.;u NNO}ɭX.QնYRMa> 2-WǤ|?|#E^;u.PZ$&!a?4)e).6n^YשڞhӀRd@|i\s-9ϻv(wg/ݐ|C ͑5 =+߂E)]W@YfgI*=c٨ v}`1Uhu8bhӡtxMEkGTCIl`$+ jA4WݮIt:s٧Ek@ǎd&݌+>ZB|dbH.4DsVks MRCY.؍T1[%dlVc>fj1S—^&=Cy b3'Є{`oyeIϿ!_ww8 Sٹ"*[Cbd[@=+m]O~|Z#wѤ4iFvO=,Rh8=?*L2Nq0t*?i-|k[`Ilr-|t&<-j1/ T1]iVܴ אLI'x b_+#zs=V"2}-zP<Y>w S$_ZZzng@/f7 & 2"]U wk׶8}R'y ~XHm D~?Dexh%Lg2ݸA$-?"]w!@B:3[Ԕ`s|%jǓ=/;6敄FԀ,MBsߡ.9,1[<0N,',+᝙.2,H wU/PPN f1˰+UPӆ6(C'iTBXioA$nu4A& I!}J8ǭL` &GaUcYE)W#bu`;-&o8Ot,,֯qP%yu[KsM]AWln{`h1,AgMyXZSu؃W7[%]r<ֳW{P;!K"'phM)ϘlFsyxL>q[2E9 ,r,: n$'i,3cB;S/jBG|"4 xXy6PJ>BJy^*fω M(LJ*)1;6T#F9bV*u~2x"d{/^Db#9vpHη2ݎErcy˖ "FE:I QnJPN;l7WzPCPI0p75 )Ҫ յ `ch@I eS.6Q $`Q'QP{pjr.oCg(&*HgDp[s@̠0 -\ak%FS MrgÛ\-Y'Cq2̓0P?_H~'pz?F@ "O2 O9WhA~hb7̣nd?8|IT57߫_U..'(#7-?Vԅ(p gѷ\e/Sp~hAIa,PZ{TƊb+Ƌ-LIˈھczG{+Z~6aI]a oI6d%%VX4ύ+}H Ciӌs?qm:N~!E sܡ V5\ t5>v(Φq֪GH?mQg n^1I ,mxV5VMRjRNggKuړ )jܮ0W/^ }^@d(Y:n/D߁~,a܉=h~@0<ږw_?Ji4xv%Nˊ B1!l@6q3oM8/YvvX!3kv2,H.NZc=g\|74DkPs2Aa2 jׇB+ ϸaGAq*~?'x^mZ5˂N/OPlG1#; lAOd[Ů8lEnt h`9Ʊ!,7At[{!yW1 !NfũYA-L#}t9PuKMk`1K~4yP~1't^,$8Mp&BDpߥL`*8ȢUaf ϭj$wf3i{LSw<c6fk~Zo dtS-_ؐ(*/(D#ʣ&76mr>;jg"d;24DVONJ;(Oee; ݯ+-PK r/wCz MֿFՇo+v,0!"Go^[5 :5ijP@+qŀr7 $@ȆY,d1aHFrSv,( 9hH{1 lhƨ#_77~C%$hBPlb15aw˪6ˡV&q  T~$2[(rUDXFaȰL8fO3{ecg,X0nomm`Ibʟ!c'F(K"na[GS!w_ThA%7121q^iCAchM9W_m#5+(@!u>5lB%9w)f[;~]2fL` xQ̾wB@["f"45>u^/,(pPSl7h1G<>c~У<8Dbm`:uk'}nަC@w(SPk?Z36{xq;բj="@$;ӆS c|"eMn38LL, 4fhpVQokg1 |B ;pg_H҅HhM1K.T5 Xd_d5W Љ۶R-4Mg~<̽}kF^leM+s}D͋0Zg,r**^4A$*7Qg)O!=5ʨ񄨤Dӝ*i>! 1 f/_A9R: FQvby˼3}$H&]<4uCXV ם`"婹wHy`kDܕ].U!UEױdCddVA\ hR-+4J3͕Q;k47?bp8ՅH-@\)1颛ngk^ 2+nlRwY*.8M_G$ DepvIԕ4JHxuaD,dmMM i:mQm5K}.1Edw.ؑԨd&Yol[C/L~ 1eZqKG eسҟTkEC\J: )W}?03a%weOe-V;9B цJAdFƦ,rSٲ ̺Z`#7ob_a/5ieka5ϞA0EK/(Ӕ#4qŁK#="}$L<>a_:3W #*DC4d)=ZzT3?Y >5#:-|`PҠ4ziJ>Ж_ھgg6-l_c$ȁu +?7/t!IZjP>w?geynRU) a\9^kubs*FDƬcfM*&\[TSy &x00ޘw0:re" )BУ8?ˏĂ@qmXhs]ڸIp*څ`vWfjP<UW#0XT'+3*Φ6wD0ʵnFHf6U-,/M33z,>JM?n Wcdz2B+\KM^W'Y<҅?4vI]"}$e}Hȍ8՟և&I]"FB='^aoHHhkR(Xo8b]>n<;P,AxLsA%inVrSaA<'Bíoa;R}%˜(@N)B wc.dh6_ZS[m@kYo =֙[t*f#ͨZ`*^p}dH.Md@ dq-V(n# coF Jwrظy I ȃ h +3$MP/~uEm^4/^T;4 "]*i'nDieLB9Oۯj dÛ6YI>omwcPw=!{hT+ZGciڣE|hU$aY?o!nQe׌()PQXfi#$T\p䌬I᪱AxZn + {pSRװeqҴ a@LןϕH5bZ\q-!^„1q16O΍xrQ"^kf_;SW`ybU\%{hRBm O>F=}0qYN%kdkt`'L~P-LW azr(Pda#ZX-D㕚)M.sswDTmGqx=CV?[rc kY%~&w;3!:MWr +r]j;g="|ェФoåtB4=c UbQtXGG%,&;.d%wL&BDFPޏiV ͗$/DX^_|&9̈́sujD5]ߞwv;9x*H?$Jw~aax:`j(d^L9"מಾ .En^ޒر$?EЅℕGZsOV5F<wYG/fl$& $ʝS *BC]øA)4}@^C:`{8$M۟AB7IB(HslG3r_ x#S8XK@ˣ=~",9$,4PJgԴ'=?~.?j}o@'h௴ (:;|!Odd8 a(BC]кzD [2^@>f6:ݽ^{2 wםѻdu=(]eLؕAop/vqJRH[&z٩NZȇif~a%_vzG0 !wyH_*=P-=DGGR)"o\XEM4c"7q*ޥ <ӚIHڒt, #:1D=qC_kµtX0@C7!Ngը(r_s|hKYve17xc4{^ſ'\0m dOk(dU4/B̙KWTG.EG7F6 Q}M7+&>$A4\lc2|N#p⽍Oq6*8)_ XҔ)7z бY9KYP~P89뛔`&+}I_]{mJ pitM= lu:?(<!fg \R6!sOsOuk1(x ۾,} 0Ǣ{ݹjE|ӹjKDג⑖ :cKt f^6;}UvنhOaZŽVgDz>a1/^b̼| ;޶)dI,~P+i2nK\vSLW(=H^Ʉ1$fH+ 1_U':Oܒd|Jܖ$҂.1*ikqj~9 {5 K pဟrf椫&I=dC>3EEa&Ṇ4a3U3(6:d2Kqo8"nq`4=> ,11a_Q?I auxi9E$H~g1Q6Bh yA`'zV(KZ Ë({kށU֮k {^.?2f}Kj1_C|ΕE j"k ˆ% )G{6)֗8̚+qt;ך܀4"ی;,K*К--oBwz~Y;z|Np48ȊCSl y}x7vт"W}| ~'fiɱQ4Xo?歸|e辁B:Kz儠ڊTD|ekm DI9aL^-щ2 N׶lm:p.hy|SY 03f]Hã{ °s'OŒ%=lw*ٌ}$#Ѩ&li*}Hdq1:A>VQz-|`b#PCz㳂sQ?G[v?oҡ|r?eMc:]5gc :QBߌoO+}̛G8f,2օCp  Hn'2;SwnXJĴ8vz>4Ȩ?nU~ G;1'=z+&aG?!pc]ٗZ{x<jj^/ZSl["7=]#K&ꩯ=}*-45(e%EoJvqG*!_&/$@kom}4 ƒy>[d ǽ^ r$Vj#y8)R{T0zhv;|*9h>VsWӣ`Ve"uRڼ \ &"aCi8Vs+[A }QqYcxp9OsKǫ$ 5 *Zt$8!Z.1^gZ\Ʊw뺊lg{x%dXjvx0RI\3%:<$&hGql2] f͜mF5`h>uҞ/Y1dnb&~?g=Q6BRN=KBdI$$a|`3]Rb?91k2@~8KR5t]mADžEa ʆ('<N^~9^7Ŋ !|ekq)Zw2,Zk"^qyi`ecqV.@%? DMs*@5?9y^?ĵ2wE:ک+FʡuQNғ{m!pP4.հqnFFG4I* JO`x5(R }mY37/I<_fHQ4lVS{NfT`G.upYAALB5𥮹쒂WeCaet mܜ9??>ABdE a J%d|{4PK@ˤ]<+UA=~5{sKxwPŔe~R#l^4>fky1pf;ۊ-D+@X-a6{UDnJ;^6s3pj{`i@Dy2,kN`'p&@9$ǖ.L8cƯd$zu8;db13W|&&/;jH'2E ICgJ-h[$(w|b(nE0a{0CAaZpс8>b"] `TOAk(/\x}uR$ڲnR`ILI7K4ۣӇԲ3)B~=嬡ⵓBwfeTar'^j/pF:K'X'`um QHXu\I,Fgq ^W?V)@B궥T4-Ҝm: H(Ux-͏ր[M̎#E>a7@01¤^cA\qzқBH{VW@v\v "k\ZS*9lg 1t}ݪo{ RίmTr֌ox~d34q~رHZ€zqE]tYY^ȲфN mvJ}Q +ݶXbTGeUN-7 ˸2ԮWi˖8_wn8DZE&w IWJ=.=mw\}Ts&TsH~ w` j+@v1%Hyhyq~ |8%F$XW;C=f_RǨ*Iَ)[ILRjFVՃKWF~Nsd  pTf8*'CҊ_g᎚Z"Y55P]rֲmrdow\/6D ]8IW{:Jc|mc`]" aQHsI3{8iBY]}RϞi/ϭ7+[X:䋊S.B(h % >Tf9z^'t-Ķ`r'fj1Tr[x:=zDl$h_6f4s&wlqI^mo%MF;B3<7")|4}k_,Q7G#*5R-y~b `p;@zng4V7vx+)ǎFj9 zs08t6I;(̴_\U~LuޛzuP5TT9<]~/L8=Sϰ>' 8TJ< z@jOn+@]ꌕQ8ix OxXKv^-7 >q7iqèiǥ]JFtozsuv~ =aKcZb@'S N~:gGh&ظ_bZÒ -+k*_3c0=Kr ,\ ςYؘ:xhgY͗ t'mm.:gmr~B@goɄ5#zxTSϕT)DpZ'63}oT*_7D!:u)Q5|{M|4:hIPR7X "JC=]e%Ux>EAI$L/aA6ZѕH"efd&l=u,E'z5}I`OIAna-.ٔ hr Eμ벢E£]o*'@Tp<%e !HYgb%I Cm/U RDU9B  D6~30Rs0fuA*N9{љK@t0L4dL(ZoTgGf U UsuQ;l9xkzGGMOogqϖ!kJ~ՔxnZX>>7{ɿ죇'VrS2J{eΒaESaϺaxS^X,-S=\!^ `Z&zZXLuj Bj,I]uw~1 Hx .w>'E|E[6G]#C7z:# tӶsȞgƻ%dNS~v'B6!E<{c۷_3*͐Z3:9%Л W\žAHs[<!{C]3^>2qhxYF ;:%oȔ}ic'&;FѵOЁ,IDZ8fY;L慒:z{~xZxq1\ 2SrǴ-O]q/O76LcҤ]ƉgUI+I%Ll^귙>t2欀*bF@aن!kLfECT#h f$)}cYV؋R88u`\+ ms[LT* CQ[YKh<8a0$٩R2-: a\De^c\$kOĢD6Hc*&_j#TX2cGI6RiYy2#Dk!INA]inGgݛsȂ~k0&~^r3+mł4 PJ'MFIC[|A yxC N/}6hCUʚ>,sr j-=g!(d2~WTi¯\RȎ;׾$tl .JCuHS$L3VHXŀ2ND JL;T$U7mIQ.ӭ FaeW#=CWڤzir76F6*3(6XG\.$kaVl]_"z@mdpIχȵHʣݧDH~ v)%_YrjnzZu@QvW =[Td 4A}g)AҪrrɬcGe/rSA;YhK ȝH/61gU<"-tÀ. P_ SE~Dhe^oj0ZT25:Cv.t7ZRI쥯R|urPAt