libstorage-ng-devel-4.2.78-lp152.2.15.1<>,@`a/=„Dl\5Ɨk&HVK'ZxFFz {F-07TR{m)FI|ߍia,UK["Ў|Z\qd@U TȚV@W%2l.B7~)}SV;  %w}( g3af&LJ:ߡn7[;h{;(?d * [ .W]hn n n $n 6n ?n RXndnz6n\n@p  > (e8l9P:F wG nHHnI.nX2pY2x\2n]DXn^ق b&cdleqftlvu܌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.aobs-power9-11openSUSE Leap 15.2openSUSEGPL-2.0-onlyhttp://bugs.opensuse.orgDevelopment/Languages/C and C++http://github.com/openSUSE/libstorage-nglinuxppc64le { 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 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 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(ppc-64)    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 evalobs-power9-11 1639114522  !"#$%&'()*+,-./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/lib64//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/-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_ports/9740ff03d61c2db02a63aff20837ff39-libstorage-ng.openSUSE_Leap_15.2_Updatedrpmxz5ppc64le-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 textχx4ĝqutf-8b0e1260567e2e5a3c162115725aecaf6c564334cec9a777b9c52365dac4b4ecc?P7zXZ !t/IJ]"k%K=Ve-3+e8~{K1!w+=RoהNKUyV}czΚ>qz2qasJFޑy$K"3fhbZ܄hD-Ni$8% _(^ |hWG+E<vvE-%J7>ϭTaj\._mevζ#O.|##@].L*gC(vԀ_姃~&*ųk g5^UYv ٜL]ӫg[Qk5 $YͧN'QBuaNك0s;ME MSdz2ԋwMNy˘YVwbR0>RniRX ^lǑ9I:j M+>!?,8vB-/yOkIW !쨥 ՍG#Te) լxʤ`_-e[#Lel=q((۬:א8e5g Ay|B᧽QaѧD>ҧU`6t*QE?k RGmZ ۧᇭ!hBvM9Տ  ŷ@F}m~IwǥX|_~G/Yxd(fm I^Ȟ Լ*{ZTV,r^^$Y|W竱Iysm\J1bZM>&[JE/)+7@H^f1 6 (_!4ɍB ^]%BoMȩ(6(Coޫ˙(gpSe d81/5Ţb>avTAl\WO]=')F>A,z߆,L:2˩ݝlV;Dq`W 0ֱm HavlĀ+M#RTY=a, Ъ4Z(g@9v0wpg+ 0) p);Hu0Xӈd!w.bSCuG:,l|Ox WzE`á zJ2mʟZQ*VLݚ*J}ĵG7nPx9Yy>Ԗ;ޱ);5FCH,٤ q)4{%x%07:OfN2'ɞe6<˹q@a@ҴQL6120(hHJ,SWn(=Ve%.R0ge;Jqy?هR\Sy?KrLyZ[3apeC2:b>iAfCD{]Zdu?JOlQMrހ۲\ۘ+DEԿ_ĶEP?P>b鑦N͙ݩۍU$:e=^ &ee\*qR7W#f#-_72GMJ&.;#B)I[>sF1;٦81t)b.LicuvGȩM}'` CU̶./TO#RBNoWYw O3smS ^ 'BOr r&(34M[*Ļ !bh4vJ\j#B$X2)-B‘U7Ulv~ QbgmOjxKʋWv13=xu"'Tg7|,bAYWHşXcN9m?vw!nbZJn{PnHr_r&1B1ƶi-8_KplH™>aK o0߂w/'V{)SR'1!W5 (_!o~c톮{3bQB(qG,Yat*$Fvqc_M$_/iH #-ůԏW[5_X~yxP X~ٖCŅ79r^fxt?Q^xeR160'D ]YyQ_@ .C`ˠ>S`1; J?w2e>4;Okɮ7GF0T7"d Q#u>fje!p\qSV0D"9.`R?xWa*=C*2qyE>sYtר"XSztT C pJ_y0(h\s9[ FJuoGd9/+B̤ГK\[Ed 9{~宀/ @cqZ]]C _btE/ǛCL0Eةm9ynC/CZ>Hb5bΜ q'EqH4LRg`|IkL(C, ;&WZ4Tԛ.hڱO-װ⇚OT)J0aCRswf.V~#~ [{^tNxUo Ѧ KOo+kmP[ЍNM' 1JH[.m }V[Je"ddp2ͥ6(יH^1}Iqd@QAW! wRxR:3Rn?*v ov N9휖s'0$s8[$8}iMb'J {+6F6O*4l`c3b>36--IܕՅW.Dx. (Q[?I!q|F <Zw[JQw lH9iGeu|Fx4D_Jj 41%`c.1S&O4J_KG}͉3 6S>2 AOiwc4]0p0vnzMWݯ7d-s1S  Č]:(c\5R=WU|@g d+Qf٠հ/:9qiOE<ÈǸ\C@جwD@/=Ǡo?~xÈR=W(DF ,q6 S` 8Z־΄Oܚϱjt%9TxP؛xsd p־~|"A!+^szҔp>? My2'%W@DR=Ao t:-n.*\]a;/$M]N4Jj,އfxzKF;'U#1C0!:*4zB)9!TkE.mK@Cwn⴪0y0 yC;-r*M v|y,|<⺸5Vwna|pﲋA7OcoAlD7D%6uN!wK7~ fdʯDU![FMɵ{*Mcuw{ JIq|K01ɹFf.TTGGgY.{ԟ󼋞Df(),m""8Ju4Ph#P˽2gwଯHH?5-c 0@PN0 i@zմar{i3,M'eTn#lƒ ɣn\.Ns.ܢ`~n 6#O'Q1(BL)+ik]ݞ6B =0cX;74۫FʖLʆD!%@v{XhM X/Y ~j0|e]il4sRj*T!Z";0`M$~ח捶H򵰇rq Cwr jX}g3Q(3;~@ "$ajӅO`^;,6_/ԉ97Y2]5xdz?gdd.A4c\Hv*IhqiBZ7ZQ9!j@cG.Ϲr̓(wSA|.P,%`Db Rwpkz#fkE^qQ/ϊ[eTvN2.#O+ڟM1OW)$ ߤRxjPILheWS!VGX9 b"rKK.eD]pi t 7zW_㖮n,f6dU`?AQӻ34rݖNy۸Bai˭E~uitaY+^ɗ;wOU\X<"!; d^6vy)Ρ DkUw(g=) ̓=_أBgYhtDܡ[Bjc3ʑ @F8 E-Ф\r'♑@q_vzru>x †I ~cOA`՘YnPF<֫=QZikXC!i('kjmS`2ÂRYbn`[rܘj3 tʂ+a`sQJmg~,_ws[@b%6j'G𧻓k9p?y<%#V[Qj7w[C{dfuC86DetTe$z{_`'چ ܴ,uK@J} F.+O?蒇iQDE#4Eg7pe[qDE-y$X5'#;eCO7 `,Lhw0;" 3OzϘsXӠQY v=^J7elu"QC%*unxNӒ=BNhWMMS:( ?ly(sgfoSk(,|0}ur!z3C/ (Al`ϿW=pdKƀ|_ަRy $9f2П߻!lwO-흚6]$~1^`cˆP*5u l}<(pA̍Y+B; 'rlr@Z: xA l.e/9:fs b0y LtQwP%߰9KXhP^Z^UzJTL5E ܾ,ҹ:K>)gLƬn!E8}3y!KׂA-Nٕ{v?Ye2Oᢥ5>8a!q& 7o1"?DJ&mOi= BJc<7@M WY%LqЩ2;}b'lڋpoսU j-Wɪ\C;SgD)nW2+%ĕjvr3K8D}qnG])&0YmL!@-؆f0ĺq,LuE+_DfIdh `r Ly[_ฆ3\zjUwA`C>ak'`M!c`-wDj(8(l,3%x܋|G_CA?5 o EbEs_;vЙ-OqpaD\^;h7G^lΧCb3Ȳc%'SL9ũhN5[s^d+a*'1 C|HV[!ܻˮvtEb؛h+I9XM OhJP0Iu Cdb-\>y]Uz5(Kב]pzcwJ# c/w>_+A/{- O/~j%tx]PHHu(E~ d[7H5eĤXTԅihc@MFѕ2pwy 2ן I߻kHceS+WN`B0HewGw@:@~*>c+BwY&p*d [r ͜d[gcJ)ïxDԽw֧:)S*bNI C-R#.$N6% ucC%?өxOF٠ɁqaIgk@]8fe!/ggACC{ܤLP%@Cwܼ'A$O4]!Az}`_w+Fm *a9QEl Prq/HZ+Ưx<51O#MK& Sm–( ).E&[=c|G{G_7Hs((:(~pmT[`%z}'.}:,֕Lm~;67\Xz)a> rbUm)mgǟ"QU-6S.aMePR|oEu6pO!S/#tCH[p*UHZY~9pWOm\ŢV L /d?5-+N[+̖-!O i.c6l=,k%\@u~Zdm 7n,0Xt+wjSUWSIM5we7j:`=:)9 Iآ 3& ?gpJuC@ 7.꜔+M(%j6ޱ-/>{hA^O4i&zuĨܶ4IBЇDFTn 0 E.sH5Ln8TlX)[\"&4¢V>8:rO|KV#5٥ͭԼ/cYƐ29|lZQ4 >>=e= Ntdz^j ށߖl[KO+`cQ@~h$&ɶZ*ZyOΞ|^^I=_WD^yw&;fڕ*I@FPD' e7|b`a؄R# ήܗGa@i韾W U1q?DHx^VvSwZ]jb毾IVl~ڊՉ/qt夗Z'd;RU{g D,IVHfҮUtd"ҕ%9f(^Msү|3* o]= ע!B .5Za|{꘳>ݮ nݴaUȄ&# XU][5DB U8A(s2Hhk,VǚASg$e9 n0 1z<\S\ @tk"۷T 2oBFKC@X2?:Oͼpkё6̘w*08DaGyF7Nqc`ޥJ\|nWpPRm츝[`3T`+E.;|=&{HjESy@*:;7'/h':Qb|Sq 2UgۣܺRǀ`gW% 6/?R0BW~|6AS]M3pOŁ60 J@ZCa2YCM,Xт|)`&|kΤR}́qvVVE fA#,6L=сgXMߜ8fzgl Xg,8\:)vS-7CwD>~> XdAkHhJVU!8<"u[w>u0NQ 3']!kd̨߳.Q={DBffFLow$nT[V.2um(螐" i_uZYZv,E"!iL;"{Q  ]bcYAƻ;g}tS<zN/``Z48|?4a?aHYf/$^ TӤ ]r*!q1?-o%t=!dUe{l=,s?%غe2`J3~bEGri9c(+bp?/[)SpOlm IQcsي0}#LDD" a7*V]@o)d$pma/+!nv[V2?KvI a@m5شc@fObCӽmmVߓUyKT,7}(`P䊊sr;eOk&!"~UOȎ?rcd ?ByVmP_]sC,] l\m hkNCsCMt'O#)!(թ~XHIFhCM.ڇ"NOrk߶[ GXxL&BPn04Ќg<;2c/a(82rV $ Z ި" ֜7к; ,gN;Dw?Pi5qQrV+9qm ^WnH&NRtr:V02_Ns ;𪴺D<o~xF]hWfw!D2vT=i:K 9:oaJ"H>}5 C*)d9D]Xsx Sll#.fJ1#)@Ic)wG]Dц47=. ] |f4@O,}FdQ+y H- *aV!:O[,%짠Z1Op J4? /1K__4_guD@lbPMFҥ&u¿A:'vq;z0K:Rs +W8)]Ph*_vڏː0C'ѱcTo$0;n1?OhfzܸqYbY]2 ܁v+#==sל,m2,\?]oyJDi?_ihh 2 "J ++٨]wcw j[ߝ;Ĥ}k3k>ߖi(5L 74!LFE*Z7oRSI'3rSFͼUKDVb5öhQ@ zs{! iQ?q^|+ѺfƪśÝOl}ܤɇV_ @z^ȧ~R$ll6 Po#|1g43dT$x3^5i#خwĪbdYCDE?ږ\9.oF>/ƐF˪1eȈlÿPS'Nh)4[_Q/H}Q o"W:Oq0@') JT,ŷ+KLKXh4=^n3C -vFSK簥u J[;XVgϓ0`'b>aY;?MM~DczTmִ&Ͳt"Gi5I<2=mx8tdtz֐SJ";&BJQMa>hB4S\oWa1E[ <\ufoUo#GEww2̂,G╟jvET"-x!.Ed ŶIT. *3# -?mJ~J^_ EMfw^i XB/qz[;DiKUͧ6k ĎF6Ik]28Ns&a0lu3IiYSDud4 -[X0B_N]nvҲq/CCc{ mhv^ ,o z NF۠r;fjYbd!STS^.ΘGOۍ84] \R?٤t[1*AӔU CwGI&Dk}YRjPqb>4/ f_beni 041 9*a;OSv2{Ke^\\]Wc`^5KA;XjQ=M幮xjg¾e~W d¡ "0Ӏ| 6xZ{AS\N0nXe9+o^iKپk$'c%j:{!V+g>?! |5 OKr?z m,Oj^|4GAeNbXB01] ñ~\ӾotƓoDkkLw'Zwv]oj'I>/} Qɔmykiq,rcjڨ]͘hw߰'ɎB% ʉ{'픠'i U>*r`vP׵gN)ST2{_dnO`3HDdu\HvYt3. ^mmD} Fmw=[ GwMMPbTD嗩p u v:?&G[6'd|CHetoc` ?Kؔ<@MZ'&;0!׀t~ fѽݐ۹f[̃~˕@M#:  ϳJe<:'EcGxvUGt+5t$C#zqW%D@Qf/rt5i6S<1 BnXv뉽j#}27zWh漊DҔ`a YZ