libstorage-ng-ruby-4.2.78-lp152.2.15.1<>,0(a/=„h)˨_BTzLAn?nd ) I   " $ ( i lpuz0*(^8h9L:}BksFkGkHkIkXkYkZk[k\k]k^kblcldmtemyfm|lm~umvmwn,xn0yn4znxnnnnClibstorage-ng-ruby4.2.78lp152.2.15.1Ruby bindings for libstorage-ngThis package contains Ruby bindings for libstorage-ng.aold-cirrus1O(openSUSE Leap 15.2openSUSEGPL-2.0-onlyhttp://bugs.opensuse.orgSystem/Librarieshttp://github.com/openSUSE/libstorage-nglinuxi586O(a*868ce9e02983af3a714fab68eb04adb3c734ed5e82be2b8f8f865bced757ab87rootrootlibstorage-ng-4.2.78-lp152.2.15.1.src.rpmlibstorage-ng-rubylibstorage-ng-ruby(x86-32)@@@@@@@@@@@@@@@@@    libc.so.6libc.so.6(GLIBC_2.0)libc.so.6(GLIBC_2.1.3)libc.so.6(GLIBC_2.3.4)libc.so.6(GLIBC_2.4)libgcc_s.so.1libgcc_s.so.1(GCC_3.0)libruby2.5.so.2.5libstdc++.so.6libstdc++.so.6(CXXABI_1.3)libstdc++.so.6(CXXABI_1.3.1)libstdc++.so.6(CXXABI_1.3.9)libstdc++.so.6(GLIBCXX_3.4)libstdc++.so.6(GLIBCXX_3.4.11)libstdc++.so.6(GLIBCXX_3.4.21)libstdc++.so.6(GLIBCXX_3.4.9)libstorage-ng.so.1libstorage-ng1rpmlib(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 evallibstorage-rubyold-cirrus1 16391147424.2.78-lp152.2.15.14.2.78-lp152.2.15.1storage.so/usr/lib/ruby/vendor_ruby/2.5.0/i586-linux-gnu/-fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.opensuse.org/openSUSE:Maintenance:17262/openSUSE_Leap_15.2_Update/9740ff03d61c2db02a63aff20837ff39-libstorage-ng.openSUSE_Leap_15.2_Updatedrpmxz5i586-suse-linuxELF 32-bit LSB shared object, Intel 80386, version 1 (GNU/Linux), dynamically linked, BuildID[sha1]=65d8978186e655103b542a231fea5a6ff9ee4ea9, strippedRRRRRRR R R R RR RRRRRc/^>WW]utf-8efbf727b46fb4634e973ca331d8e98056e73993f44974230bd6faacf83791078?7zXZ !t/]"k%+=Ve-3+'SLE𯕐O;Lq{RذI{džCOc ߤ(sn}4HD'ISbx ^ wC֖{FA:0WQs_<QBJ::>w@h'w`o2wq!(tH`fR˞" UQ 1;h;F= ĀFd  X{D܏Bx-A.,/;YнK4H^|Xncȴw"e+J xTp`"C jΑ]wj.pAb)۹jaD|s|䌱JDM,dS٨D B;zUS.n__Ni<: * w͟o7_ߤK 8H J{ez7bꥩ3琓= W[Xڍ.#*|<c֔6I4ϽQqRzy[$, ƹAEHe Wۂg}k%Hl`.2_ǯ)dXskb*p3NVn=#i4љSlȺ1)ޡcO&3.xdN渥|C $SfP Ob|SU*fRCoEعj#.ؑHL f8y@^ʵѹF˸@$J!S΄>` |RUdoW򸩜aق4^!;2&M P/TEؠ4~q ;ȦT ^"⊑H1wLutg+^29_zίyA6ci^&zځEIS̓ S \qx?o&{[{cP+7h)X*3(t>G(wT"^:U%θ|ywgj{UFnn}i/$9ŭ}h*F.DX\mܙݺC<܅n}Msc@v@۷'!W5E1jfߙ /h뻥LԺJ#1!IS|Nہ{w^c*o"=}ѳ`.ѷX=֖n: ScI1Fl> 9_>oWOR2+fPL)<6j`;y&[U`t &/=. |W<R?sWܷJ[,y+2 hW :$:ҙcv3+h}2M*%Oo6Lْmc vujye3Bڍۉvr+WKǸ7*P~93E{ǁkv76:iMߡDpulCx;G̼4uUkAqɶ٠|{m+ڳ>-9鮽1=jJ]xpb2X/x<-a;LS=CSЏܪ)io.H<(ʱN$XVc1ưjf6[tS36/UfT1Szs An.oA߭`I )mJt:W` e7-S<]=_5=5j< [K xDxv io9_$ 6 j`](Rܜs6]f-6EWu6@nT$$BMz'W+ l|$4[ ԰1UMk_݀`ɱc2TJjxM 3M)C'*iu&~@l=:r,7:ŚG-̣OlB/14?W7nji BZ܁! 33.L-tK}Nnm9xfĢP7 Ӯ&D_Gܟgpx`;|Rl$rTN[[4OY)gTp"+/>.Ӊd|6۹B'.<۰eCE1%8HR,ϢؘRfk dg|Y g-1A_w;B;.G[%m5l!4YǗ]A A*".mZG}1@qGryntXZ\^jUoIzOG`oVŊP/G{e8j Ben YyΝt5=wk"Gbf}N ٟ:|+,n`09FfdeO|DQw-Mju}o 8Og y'R\"P,`P۔þT(OҴD?1;WpvI"&d`ad3iFҜnpyi1;75rSLWtUVU\Y׵Og0'_b$K %Pb‚F،>Kv It,vE"|j |<;7ђKiS .A!%BL[N_SJ BVΖ~ҳ"d̦YKT<5OX?AW2b5Rs$ٶ[DvWYy} =g#f~MzرF[8z,9G [/RDq^Mjڛh` #7@uDvFpUhz7&TWƎ#uD&d:ܼf\RdޖX:`C=GDUI/S c2)65`'hAt`z=p-C4-i*{3i≜8S8DK2E]'n\kvryD-6k.t(fr!a߾-U%7+xtMY õF.Mcv{KS P'?1T_=˰CKab *97e=z>?ȜL#7j36;N;苈j (|0␺WD6w ?ҾW^p:^t{}`V'PeDo7鶦΅Br8Avxȁ>D{G]vQyp*سv#I)mPxCFd8JQt1tR ʸF:8˗8]r>KzJ&gK -+]ӸuSDtv퉥rO*%ߛ9@:d3V< JüON.4y<3{;Z6m, !=Lck"t{rx6}UTpZu! 2EcS()s2*RRlLPo&tz)Ry^WtNP#@a?tiקLX =-FU`QƛL Slz^qC6piVi\{H\ fJMRfixU[Z`jR Y.G٨(F3{EZ3j`OHBeh{DBQCղj|cyKݠהK;kngZo~;_3HΣ:Oj)M_5֫܄malgKMmut Eg֍%&(K &2u̽ms8}}e3͙r"3S_(-+IGzⓙS BMظ\T#ke>u~>"_AQT ,TFm!՞h:.; t%a{P=~cw)R=] NTkp`8XBy?Un"(L83'4^,&lgGyϷGCsμCIeHFa%*2xuZ6=aK%)ʧ;ڨaK;$&L #W#4o}RAmkmM9Lb+6a뱧c ׋}'{Jům Q= Q>1 F*hۇ{ȯ(pSAϩJ TD=4iٻ9iB{-Iג lzFst>~ӫyكt+$XAB}ruo ,.4#ӆ"Ջon6 G-h`+SZTs|%F )mXe6q]WF4C!BDŦU G$;6?F'~睋 $-dI/D#\ˌ !I/nU.@&9e:@)6mihX3!:#[*#&^FJ溶h'qd揑~J70x$'ގ uwbLƹlϓ;HL" IDP ">罓!dNʒ$ =Tk2RW?|ab&~d4T&P!xϩti>D //U:3W޷GDsyX{/; W=nǤA"mxY DJdP)Y8|⧣6iZsU37n*7@~%+Gr/t)&QV !gUs#1r%\ ԰D1(hՌbSVa NW\ɑ`|@yC P:Mr\2!څ% )ͯa/e#r]rt7Xk:K}1gbEs&u{.Ok~nJ׌.tyba'~pKTŌ̒=ƴx"%Ej8},HgWp&em lkX7cPБHnF 3yd@r;褫+vW'J-J͎L_R)M&Gby Fjw T#kеF"fҊN( F=Fxp ,9XFXNQ)mDpzw+l5QW+Xq9Pܛ0åPD/\P'̚!aw`]fݔn~M̱Fo}dJ i%DzWyԲOl7 X'FzI|s(`>L9ٓPCNa"ieHJ6hܺF?ɹCێ ,WEOWiq1yuqO2kp Xy\LǶ"[y*ͅ 5s{C4+I[Me!+VLAkzjw=>"3]:sĹt? @DSt\5E| @Ns}ʖzf^>qkcz 2$LȂC/JIJ-EB[JVN]Xk(.lP:pr 7)62RS.%)Rv<53xE4PC~_ >a|2w5ٖ@^3Jc$ -H߸|M"9z/89wW f y6軜aRЛa@1\ 6"0S?p݆]xX"M~hu@%K!/i=O }*y3,ifG&ƯBn9TH1nľPDI5X%f_Ssygsh]Е,d-@lit/t#42k|y9Qz%=Pݟ4!g)B$9ZeO?@{?9S"f )=)bN$k3iU; lJ;L.Ce$m0T4fV8aUdۿ3㞕{ѱޔy]e*brO.<Pf,^@l=LKX6; wu} -1hUZd-aBêӃK[4|*gTjw-d@ÊD/ٚw->HBaB@^7)O9~SbCxӽ_ +))*aLez!hQ]8KE>רI4]!h&dxJ^!aZtCG]P++VQl*dEzfQɑbJ5|qNӻO{ ]#8mN7 љ1my8˄rx+*畂X*_'t(CϷ5~|G{Y F"as&ztQo[_Gۦ^Vo_ TXGZl^ziDt fϿ܂5\Q{yV;]V9,-S6eٽt@&x F5{hgG39%VTTRx-_n@8 CF[XLM]ݷ_ i=,q3F 3zB ʓg%[]Ҟ1P Xp;Z(,䝙B n7j'sMvRŅ2̙Qgҿ$uћU"JA_]E6d'htM0QI+GK.>Ў8QwO߹d`E 3/O\l`2#Eh^+5>n$8^U{~V|Y/"coW s7aQ4 GPeX(n5jJjfh kMK)_Zr٠/+zgvSC5 )*yϚH-wLa|(B'I93>`@=Rߌn:@1\(gmz%7H<Ιܘs吡ٸo"0yp.>B/f:ikdyCTCG2}KLUPrLH%S C4/RKp0*"Z&^ooiw4]N-k  U 5Σ BK޾eWKćBga!phGeڑ+FyGښE2w,$s3&֖Yڮy`Q-+[ ;EVϤH/owjy󝾖 gcva!(f πE1^+#7$g Gp#ϨKp54 y ^ϫI'V'¶]JÛO.$Ws[>I {o=f5My8@ޓt~`e]|J0_.^+:}o@SUQ%`qn3dEZgGf1g@(_.x˓ /Ϯ#YaE~#.$^ph$s#ک5ip?@±HYHcU9T֝ J0ljR1P 7SIN2yq&6Բxطu|p3&e& h8)vfEH࿹{$ҹ_q' 3JxIcc.UQoM( ѷ)!紿ѻPq?0 yl!c#4y-f󤚵qCZ/IZ6b2ʃ6جtg )3~ѫUt۫Nl= iT9jȯCL)zarhp+~}t3?i-Pz+7(HnJ@= Ŭ,FfPZ񕥼w+oh\O!bE"`ߩÑNZSR#"e@BF]ZLyBXP|^vZP`ן_ІP,/܀S1-C22D4{lV=CZ0Q7 SUdl8jgf.AE&{Cʫh&ࢯvÏv5h)IA)޲QJkوl똬o1_A0~3Sj1iS;G۸}0\Ce: M-)cM-HeP󘨉ĆdWͬ"]LJ*5᧝%V')BzIK}vk3*O.h"}MS{EWdc#a7y4籬t } 7 DVovۿ;%s 2m ŃD~dXm@ʐWߣZ=<ء7i8HvqNc(w:1ՎՈ}˹hZUbe2!~ ?TJc̩c1sD|h4Z ".B`nt 7kWS\}A 1=>B ׺2gԞ5b 5M '%(2]0Q< 7W)ixX0(61g YYC4T(,kEh>c 1H?p6tp7CeNuaoT(VVm<[<Ej2 ={ juV)$nvk5ٙŠ*q b瞒 I,4b*rx2gekyN>@9[ǻ8J}.蠁.EB[pͽʫc3h"n21z޸p,4Cɞ~Jb.=ԪB<~ ϽaQ7ug /Oo' 0\H"5~ ]3ggq[Zm"{z .'6xKз-,@D#E4 :;03]1) @=ס(,r|T̄ Ƥliy[p7Z!K{;yɴV~ltL'1qɯK_c&失lg_~ܚ?1J<K?_{U/&a>7~\Eo Wxؠi$;B٤1664͋lӜ?Ӯ7|MP1~{-d9)GmfRzP>C>cdUI1Vq=VO#:0c~D`Ot{/:6})39a2ʄ#hD $/ [!NGt4CIjtE7oFE \JoqjN=mgsF}d+#kq`q3ݹyŏT ?w٤Uׯubvʍމ˨ ɓ]=+QNvj;W!oK Һo >#6]4B8f"YKoL{aBlqIޏ|m0ʂw1WKtUW5SR -h%8i f 3v3$V!q [^P ,N @]vW>z-7]@iTr5\ӳZȂt퓌-_U"u;m2 (%x&}'3⮁&lT9ѰI*վ$3<U@-ԩ7 [*}D>@-]$-ȆU:ֲ Ҫ]\s;,} JV< 40(i:>gEr2ܲx1 :L/ʺO &ãm.=8$PM'l՘Be݈eR(ZqQ! `ӆ [_f.MȵwBd@Uf3Prc8)7E2O7R{Z-Zx ^t`%589B◮̏K%Sfi,UghwUMF>u IJ hB"\6]Plk`K'raŒo DW5EY+ۘhP:DI3Զ:]vI]v3Ͳ{RP vS8>J aeaV'- /Μ鍪7q;a{Jqnx&e4;x%&2-J {@׀npy W~DޘjȠ16m#]2`6:];JKDw@ΜAY} Fr9?n JZb|G /"Xy$8].$x#,%H%{]JTcßNuV5%pOs9ngI}k(.g ` bա:SMI`-H"{yޒ C3VHvEPax'S2zZ㙴A,, ^#<=܏,՚p뿓RCp2 mz,dq G33I& B8Yr.ĝND[jDz>9Y' "PuBNGSfuW*;NŬʆ^HR*[Q D٨:n8l/e2b!BWdw]Ta~̾C2nMi 3D%U`9W'./Y8fZxKin,^LNT4g , OE:9ߍ(&.h& ٷ͆k$)u11 [ꃤTnMK+< ĎBg Yz@gZF/ I/m1rǂ="zoy9#n:yڜ)Ȱ>e-";3i7,8 7`2l(Mi6W4]ddԡAg82{8 4w=3iWK a(3Jѯ ܤLޗ3!c}$JsȐ?~^_tҎJ:/ݗ;CNCsV>D:nI CDt*?ZdZuʝu}ĆWatlۭwY_x@~rU}RE+V$W$DÔ9Xeqd ›jDXҷ0>1KE\_9ެ-Ly{4לYQS͡gC|x3_ c X̀Qm~>sf3[ iE|ژvybZ ^&)nnD5=#z.0'9dufrVG3 N"k6B@,^~>Ms{łJ#:ޝ5 ϣ߼d$idiZ@ k6PBLtƵJv : gAQdoy^imzQWYT(=bU3Sq!w'~]{#RTåy #EJ݊!9̧+>+鑝b9j..Yq$]zw0LVCkAw sqJ"ͣrXqͨJ%V:F{ @]W*L07dEv5ꓣ7qW ?n_6cQj S#w,?6hu,Js]Vid/LMZ$L%&js] 5T רZԹל`?D~EXW7C@F(0WNfǀdr*LhAx::1SX=(EMB9痘6S cb4E;EA/%Q.:z .P-c^ !rpFj94Wt7lY68 A0H{pMy rygt'X<^`=:>- cS7PxӘm9Ti 'e,(.d #"aoϞ$\v{¦( ~0b;]s Ҁd:"e_oq^a\t:#nbYQ,$Y`hV5 >PQ;oh4%Rkh~jyOɐ!/}p3~Kovpז.3LR]+dӚ47LDV??bi0BpIl-,_$EqmA_tK)B D7Yɡo:G_P,iO~H 4bf2 -t .=[v Aw[Vsv`Y,{|>ߪf$TE+EsĸRLf,S?l4h!*Qj^/;d=TXeJGRW-ܞR$:^A~墹=pAmXa1)N"3;O@1=]CbI,[*p_S]%ޮ.)w޳0=Εąp[[2r^Y%e)K} QQ8farEIrW ]k+j2 Xf`CJpep70N٠@C K?ٜ@br6 +ӭ0,W,2( éiùL8`O\{dLWa ,I%F"U1?] ջҙSVJ[Ivs:i(j JiZE i٤\$QLx!@$ؿ0ޅ<}a2sV)_ 2A[27[Hld >DZvYHr,) 2H\}3YO~kGy,@CuceQ- A=)@L.~ŒiqtC<Դ\3kZ^礩Ja,C |d駆*9g_(wКneg#za;Gtzo{B q&.U]Jqۇ4zo$eܸgf^|,=dUoՠ+ᥲnKA=ų`u$ǃ没S'iu l12$I$&zp`H4-ǸC\}1;jsZ^x聭7ݘM.1i_o_c7!%狣eTfSbȎ\VʻLOl׺W9.dP̋d zht"` QKJͨ.Erf-X!dq%ͯ:Q@?5WݞBE2q<񛘏ti_'sKU\nf a-7۟T\;JIRv(_u1x X@cZ܈wwIȾT+{f'ur$5cxc'w^ԾUx[Bb1k\ mU4X^íJcԦg,dbiF@SuXB,}"i!]#_AGT)+U+Io$^7ha*d1bqkSx;̬ }̶, RxEZc}tzL#)# JEv-(&p]Oi(wQNyVaɈ@yºޒ5F6"?q mtt ?{#l<R'%9ŽʹY!"H4EQ$q ä 1 V=-ĵO. {Af_oy/=O׭W)=lmM9Р.u ._nBOo4Κ1z:ݩ _!oBcǷr ?6Q8,` b+`*vCN3/;`J'hqu"uȸh졛B[A9Bszлdˍk;D#\J`؞JWg5P'(jѺ5Ic-4oEY`kUlLWdPMϔ OxeO@,~f-uG&|E5Dc|{8`jF w)$Cj;]Kr`Q~ Ј]MpۆM<఺(L,zJfD8\{{PK&ɒ[ݜy9'tLAy\ED'dTiV7/|'SXXys=A|FH%beik618PU# fծ 7ع{sӭ@gIGs.Ť%Gn7e l_"KAzT3^ȣ+/c&HZcFwn!=z;rmQϟ8kWu[-H2aƖeD0cidP%[~˷ 7,@<+(NPc kmSY7](CJySDEɕ߾ D{{7W89N1*Hli!'@4?xqC{A"fuI5>^jp n)sGeid28:Dz4C(v(kL33nuw dq¾-CeZca%- \NyzzF-bbOv,k,e4Rokp; x'8pb} B6o[uDM #Ո!Av&DX7A^ݾԃ 4i {g}wiWES3+/I1t xBtƕmn!Q{t^!l`hJlpwVz_ǭU,MhV^(,!Zćx .E򛤵nH5:<َM j88[H9bųjyʈϖ!EJs 3͚̓ߍ+g_>zGȑ$ !Ѓ+,E伋'5cf.G{!X2bn\bśsh HX : E]ɶR?,YQ@+l-|$elNNB lWr?h`Xh3q FGZT[zYs9:&dS(xܸ< ^CLRgEVJ[B l|ϼJ-^{ϡH0<Ã6sJv ;oN~= ؾ"3V*[ܲeO671ͨA$`!4J_yhӨOgWCOSC(OJHgC utR/,৷3JU@G3宊(\6q+ΫYBe1Y~ӹDr+A)mQEgf,~ظIs4πmy|&m6upku=PEc8_(+,~CX8˒uF3FDN݇zsW$kO5F5 LEw]Lv݀g0]7t!x7f=!,]oB_CT 7>21zqt.<|m;w:WUh>4KE89Pɾ|]iagD&ŘJjj+\tG 3:؊ J\PnIkzf6<6ۇ`P<]ʬ$ojf% I {qs"aQN߂5HXHvR0D}"W%57{8RV">?*g:/"teXaD f>4X2{] uN;6#tvBZ͞iJ}Nh/xe&fp,%$z_M̿mveV4뾻/yCۛ '?]Y3>EVu2=AfD)f]( fi)#1jgu\eicD\ ^' o#u4L?(P[]|93ZG_z(4Ly0'KeEZj$suWSgmYA/rt,4~IY !NIGOѕzO¬B{+K1̣wUV)O76' *`g7Hd$0I#x~ͣ b5^+I[qX﫣߄bH9q3HI,U$}SA He͑aR+`uo>x@ؒ |PJʿ}}lfc6kvGUBv/wfED8  W~};S_<ͲHâbf=u_zAM(Ӂ{Q.Ȃ_yvcΑixi>#TdPa†Ha'>]`Q5qƅ&̲ܵK@znGjbb3';aɫ)j@#d=*O{ShAK6eC %| BRkѴ T2 5M)jZtJqS@,խqc;<%zSdmSPR| q* YSuy#z։oE@ꚢ0zIG#̈?z*H{>Acz(3NbݨMvˬY %r )ƭwk#`u0g#}26ݼP!T}QYr ޷Ⱦ5D] U`8d:s)#RK o <Akiҍca[% 3Yf딏o PVyܚ[#-xYR9<1mQO.ODx~!'eR81/DWN]R(  еD|١悂N iec8%16׳txVAϜre;IB<[>9#b2NPMgqM/vCk1W "=71c_̝{$ unծE'd38xC]u=L" Z)?}¨< `gn"Xj춷5s(#jѶ`1[RlI/`cH5l?ddlLZCqb_͙ߚLwz/?OCC1 Kh;R+s54zh)֜X/g&~Ḧ2bxƖsclu1(*juDRwY`Zz3*U\8ScĥN5k@Yا1e]`xY`J.1'WuEPHl5l[hαP&ӵ}0qY mYHWHG=V( @^e~e*G|{)`,$֘?EZQ(; xvGڮ)͛-fGaM) *QQD\u]4N29hǖ8t=Y1n)-C1pL+{p{ȲT)ۆ%ib*oVгrf(5X7.E7JKE9qM5\1 ;/MɕUS q*bW2$c)1<5'KEw\h ؆=MɶJ K\TD6(L0IB3 C,8" IL{[GH_I:%(W}'wgߌvj(k*̫0(2N|$j̞jJ7 `ph٩L^w<!; O-M!88V.hFh B (0Ղ^(AODyk7U$& Q0ojs4R`Sk_fmPp8fQg(}Q B#ƭ@{pzk`-/)O3鄒Ց'uTd[ͅJ)FRVh6>RIn. 1e(Q@O VpMv# Q(D\N,+ əV?Xx,r-Qm`I07TZ̒a=F0S`3fhM^]]jOPr8&ͪEz":{dx!0%m|&y=Ϻ+Y>=@˺lAIJ>rbP; Fg SE GAex@&0hN)-0K)dIRKYmSl _'Ld/ڟr ܫB `0OC˕o j0`h!# z`I6$M]DkpEVBz޷L9DnPdjC\e }.‡a.[1;*Ic,+^扌I=N5V N @w=M5ďLjgKH>M!n&vVɲhQa05Qw65r"@D #W"Cu?R~x|T2_LeLeuA1z} CĴ*= 8@9O?gYm_cD8:+ r$9V`H/g`_Qr,sI !4}$\ع1hޟ7<8ؿKE֡T@ihg fb߷Frg:|C=8^mۀ9mTF1񐢏I$<|&'Htˊ_>xF,n KPj4XD*B,r6ؐ.#bP 6ӓqgrxݜy NI $0hHiCӱD؁U!-Ken)%Q5K)i._\ MAG\j5' Y&C@We#| ذqe?^30*d8Sb 胯o\<qb^@ǧW~wKcBkX°W~_N\ عq>k^qu~rȁHʜoնrʗBU/#3}ãHzPHm'M"QJ]Xo'%V@669MM&"ى ѿ*K>>()k=Dy ɓ}5D~ְ[2.Gp+mzXELf~,-7Mus3Ey|9i~1<ܐv[v+Jީ@AQImBYNCe:gz:pt.58!#mȘ' ܦMO)\ R` O}W4PT F. *?ũ>P zD@Z2EPFL P/|,}˳ ZDl&A%40#$($m;WVҺ"V4m~Z^3nnIQHg/6n\6sX1}!}lލ[ L([IM,y*ʑ jn(CȪ(7bX^I Bp6<&P f ]b01#şr41jyIX Ab3[ϊ+ƙ[-8Wf. yzZNqc`}}13h1ޱ-{?;owpyxfj)5`YdM> ka[Kqw x4.`2#xF:h#2y} h\F\.ʩg8o@C!䅇3k;Q= ׍ӿd1v$ XJ_!4j) g LS nT> 3iIa{ѐ=&:j(fqzʈxZh]uA ZR2skktb:ie)}i A 1,jE\G.X)_g{z:]i͙0EvhzIjk@]қ+ #D,U$|# Jym[\(Ƕqp6*ܙ$򿝾%˨P"^MРj?`f|JοdUI|N-bYHc'rd,T?1{oMF~ڌPuqr۱ٮL$"&Y1lJSCu܎Ѱ1@8H;,fATCe*WS(x[70 a$ N%uځr!:o}pQQԄVpH >8u]hoNXF/9i49C( cZocDU@Wf|GO×tY^3=s!YhB+T6ZQLj]#+N-sͤ8-Zd8]+3pg0gmk4lQHaùM=nfPm+;=:&ҷ͊fU+$ߵVZIFnF/\AO`d串;B9AWuRFi,⩇֟ ( φ_j+P^4L_xJ@(27 ٭`mw}#s<;hB,yB,Q/mf'R6J W2跡!0 +LiiQ]H[R,ة9=,4Kq+w@J!8 e4n*p}V%J"5xO[ .(> >`d>ܠSuعy dbn5|3-ӗ*üuS48#+~`ɳṪB 0pݢm>&Ȯ2M[j;ftv; .PnPthʒ樥z:a>jbm1 VF-T!4 yf5όێWuLon'tAjP"x6S⨃ ϕiXWkIH<dO)ގ]QE>^tSS9CIp $1>O( \-Yy -1,#'<x)ٽ!VSh0!Jx ,z!|4& 7GVgL2Mi 6=ԎGzjMǚxQsESF3w)Wx:Su(CtK6։v6M\{r{˼wr44:ZS ZXl|#` QA>y!"l^0m9ӂKCm!3-.@kvLW|̓Ϭ\k~h:UּwxvI[zGê EaXo߳? ΂.l]0̼oH¢;[-GpVg@ = A21,w9 o}jI>xnqx!&FR#أ-afTOϓr_e*qcx׏Atluݨq5*#`cv (1`$ېn߭ ekԮ Qc)&߁O1z QD3ʬ1nRe)EuO4:'2Iud\*GRa`9 UԓKzw;ŵs_<Ṛ<ٙ}Xavu(C!gKvv 5L.ku+$tęaQgj 2n&rg&3͈QG%~n%iߥ9[kIJk!d-7=)DP$#@Zwh"st)-<"?]o]Nu.Gb,ޥX>aOAl^nxԓ("ػzVuxdR[(=VHru$hx3y4_4wC+x>r+!:mަj6`P!x ;'-z8.JU/Iik296ÕyG F?OQäbf)QSǸu*fw9;E`lh#֍g!'FWՌWC@\%nαb"|Ӛc?IL2q1n vH1}R #< c p1k)7ĩ";kE_ ~[A$|,sKɖ($IRXʛY~]8}X1"%;C3.PC rmPC\(X[\'<>^ʱ9 kPY|y'vM9 |&m/lԞK{3SȺoP??>iXHJjFMxr$L ݖ u3 Zda^\.*:?z," 53 ѩFm6 (EPt|jHJ@Lޏ6˓Dy|q~!!8"bB'ն*ÇFnqҖGBVz j<'9u hxGG+DBDO'M>c[N?X,,G L" 8m-xAJЫF?mr@ _zCO?F,!Dػ' JZsTĿ(i%{l=9odv>rGGv_^b(Xj:LBΖ[ kmKl?&I_NCcObs yv׸ ,\]{o[D*".Ě;BA4Z! TJ~B5ˣ4}qQc<2cs`Yzl) kk)^ńxQRl4tbA<>%0 WDCpzCO?|Ғ$J22 "0-ꘓ&a^mJm*(WzKlmՑ_F!Fsd:t]8Tv II琜n)^=,yz~Q\E&l bӐ ƣ iYV௺S8du+*1 -hmy/+\ھ1yF#`.Bpł>>a##DD&FLW⳪9*%)}̌t".{cO^~ tv9<U[,uf3ik2,~t'>G.koS|[^η2ۇ5Oym wq?FۆTtgg桊Q3'qj=bzp4|]"JחO=/O";%(LGؤ6~_mr:ӥڀd&@$&+iJn8Q`Ry2C^TRG5ܾ䲿ڦ-VTNBlQE|Ppw8[!N'GjdOA(FS$#:yҾr',bS6؆DB2AxCf626֗۞(L(2KSvBE"Ft%kZ(AoXOG2^t@df%}Eeoԛ5~\7Ǽ`H$ փJ_{G+`:N|xx܎]'bP,a,ҏ4V/#-G!@c Qphױ(%uf4k"b{Z<+t*W7xͪhS`OUԞXA#cǓ5P %i\4)Y (3.KyNk s~͖uΘ14?*VCeγ Q/RQ=~z$,g6&luZ<]'pw"L:X CToԒ1~Q<UH["m{""vT -fc!dkDdqc^r+`!r9.P"L:^MJ(rp[!145 %\N8vϛԨN:eW{Ijf9j% mO>|/hE;'x3N\% B0BUw)11,-?\WY03CF1$Au0d  *G3J+x;j5[|q٘ڽWy\^P|4FF|+.$u dixxk#ڪi*|k}nkɥJ"i;[yYn mQދ: 5b:".v| i@Gjgo+.j_^^1xs3 +2hm%_JO2 pXg-m{qJadrN ]]Y[9WAB %SlzTx龶@ZbһFi e(G9|֤J3c<0[#,D6˱;RvSOBG.D"ӤBa']z 4'٣5~`Tswp+v/ݞ(es/Ybi7/iI;HMQBjovS:3@z6K0ЕN+i}b@]#"q(b;&EbeVJZOdRb4˱jfQlT}\a˜8k2{W<Ѩs =I*V@c UNB3 szr\_rwQ`jʷMc( A&7@P-CL[j^$͈. c P!~S2`f݈ɂB&1]LڳK *_MNXV!".,/vƢ 2CVwi0U[o4wcUFꇊ^PnKe'(R[ ٿO=o9T?>a÷xˉp?*Lgw>d5+'=}Cz5:\k8˭ncܿȴE5;Ce'y:vPdV.Xcz?.Xj/@|Fhÿy?@h0C`>BBld|uv2nRu$F˺H;W ,bC|BmHYk0k&Y'_ڼwgW+Yr*pA&Nc<7BqYFObz꣊/x}He6{.PR*$ٓ蓎RQPׅ2iC:5=%nJ//Lo߯T</[!@3.'Bk ]kJFzg )u{U"l3w[ w!Kc߲'mڃ]<Xeti2$gбAx1}p ԭPe|;{=t[;VL:spj6(uL 9w.{=S%qe˞p,deDs`>2[yCٗQhҐzWD//-ezza>&( V ][al@7_17iV{2ᩴѤQ p41',)q-^!#jкt r9-O1K\l. E"+8V})aܱi7[[%~ qLɘQCs|dٜvHliGqK`a#grNk|C3t1QHJҶ7#ªg~M8&eɂZgs&!oHQR'%34f2PB?7 H@jW1cyhL]F^XO~D4izBQ ͱϴDUM16{]+L o1GW".QT2LlCK gä[@Y@b8z< %pՓlc,K8Xg,DV q~|̲&+\Z@]a6DE'[G%ky؃/"j$ KB0 pL[CwT!K"c2/V8Fk[尝oB9KLNʄfۑBA߀~^Q$C=O@H6V쭾=ؖD@V u B@_Fk":^ ]}2H8/)Lq:)MbrC J ֒lA|q ¥g`@$R0μ.FqS|¦uLg}`A>v vN{Op爴UBgM7hG:j}[+Q?j`:RN)ğ*lFT$[Gbo6A-cP[N'83(꼝`]/̕/u8߈o:-״G5.jfBw*]ͬYE6u=@"eWe[XuR#AAXzt<~G\wc0[6frm}\U%$Mke`=xp,Ę+nD^ YfdNFv3罉\֤;Z>`9M+OM_qҸJ &<H=َ>V}XҸu$Ow]'1W!࿩6 =~[2?!_K+2ը(yLSПCeo@$E5T+58W3t2|$D}AZ!\NJ6 e"睼Eb%ƪe+SX8+Kal3 |7o{Iۡi{@,+[;TLn7ZU74|K)7l)WTG^u!uYܦx73{ݼ5 5>-]6<(Jz+t|ZϤZNƭ)@yTp݋ڬ>AP- / IƁI 0ׂ8d{س%jvnI&'&@gsd}',ۄ.do%xvB&~Ylˣ` dC -:&gr72N8`:>a4lLS}wqUZ'pRJ\Nv5CŨ-–s`!D߭t1L :r. 5aE _%,k|5WE\%z5H LhnBhQJ[KkhLR`g8@V@kg@qe ~'ws{['):\3+ tXxMffEړwדzRl\l[Ʋ2_ܩd ȸJ7Ȯ\a屭dCډd)$#H,h_ 64#Vm1ʩnXju}$ j Y JN5nttk. I(xT&6'g>s#ydxcKP(8*M&hqna!$ϦM% L+6GSh)W(F _SZ{ hm6X;4l"e`MJS#pFG?bE&ck(TǽQg|HP;wZۜs&}6oz.;4.(# 9}9H}'BG!*o}ea6ӤviuxKս=wTb4Mֶ|j8e?,}=Ϟ\29(Ka*;)x%@Zg@XHe\~7Ӓ(S /]ʽ r7t,x|;1ᚼhU\>倄o_Ȋq9hlﴄ( Л՟\qErEuD[у՛r$ca=PҾ+ bf(t%ӕ+.dlAv54 ګ}gsmqus5m菜"<C׀%8צafٳ?2GҜިe&]/{4%kWWm}rq˼}%jeejr 7,C~bj6ӾeU S9 ( ^hΰaAܺ&DN{X8-cgzNlm%I[/hݬa}%tSL&K"_HFwh5ZRrN:P ۱sݣ%^Sf"x&,:}7|~4cK +_vtt̙DCO򈽦h}Y^5U>=3rz0 Qe,JqPW7&2ݰ6u} /'v54DV_>V,Hp}7;{~K_ۋĩ.u~uYV`9JC#;eUrVB'*ʒZCu/NT\9sAo:LUdG J)`Ҫ) 7E:S}%m?Rܴ9-[$) \<ڦ vvϩzDkV=T1,!ҒLˇ#E,i䕷r0($qO Zj~U7C"ˈhl0.FD:0#\?a3ɞ7$Efa1i c&P}=m!RTXÐ;Гg_÷~%;b~',M`*'{;LEOMFJ"avWodI[uԞ E+'7v{2(,~ fb&?WӮx23$R)i:߶]Bx-Tӯ"'G[XZ bt'f\֏h9eygηrr5 fG)BPu׼sr6y b+4MK 7G |ꃊ[uHPml*#Rsda~:Skgr"-QDvC+2\5Z8e84|Y( KKz=Op'lP.9}R]-[6X_̿zUrN327]4%@0їη3ۚ2DގNDX[,ô $18l6L{ŅZ(mK[ӯzb~BN}Jl@%pO`001:Σɍ [}%.@#Q!딌Nف%Wiґzpg|`ֱ }F]+8`@-|kwpBZm@wjylʀm񬢤.у!=JV;EEc𚮛fW ¨r:;n>],dϷ3goX/>6T08ħoXϮ \LNuQ(ˏ8RHL (VZLA=wz8#|Ƥq2KZ},|rV~[9K`VO[NP G0`cCq1 k*:0񽳷-+mWA^2:/dJN3\ԏYTx/>dN@^vt^X+IsbaLτ?rɄt N~`dʼ} .|zp6uN>nS.ɺĻuknFtF%[fk0=`)DITZCDa~e'EwqQx6Reӕtr4=ٜdOuчqRZ_!~Wh Vk@@y횾AiEYq4 /%pfp  {$551`C[ D&T<-£u/Y=/=PPbpkN^3]/.js]bL{[rYR&m vyaMZm|'=sAQRw`kP íM!@'F'㪰pNZ2icN z倊O+Jا-z* RCNf6HO!:#!Ι~Y%sYoٸ6QXd"",~ea7O;3bW[\Ԭz*cphDc#h<2Tt}g+ -4|U=d#LǾ|ȴU4 ûƭlo13+6#e ϴ0މU]o&Uvuxy)9AXiJiȐX_t2)Ԇ>,kxc2w|"N2K+nyз ,>np-ZAj'o[fy'^( ٴ ds~*f]E7${].Uu5``g\,Jܣx0|nj%.F8fRթq lyUd6%; EdF3S;bdOŒVЬYy(cGo,~bYOQN<-Oy'@`XK,FQV<TJ*F:=ʄWf2zW(1v UOH?h,, ?S^$K2?$J!^yRy=A'JDLE::H2ͱ[B_`Mܕ]@|{KZTxNrcrZ$vJg⁢!V.!WIkDdۊ4NHŏSzgA e}WR_ۊF fU~Xk͗S5];,_ e$ET6AӍE;nwC|oY,iO2S*=;z. X8StTټ~R ?uMfOY.1\ 爅A />ѕ:qsz XASPߠk)ڄxE6'1WjzhD;"4DTSW(G_鯳7b_@Igbqڣk?X؜pf w=ظFO)ULvQoVt9[~uYdQM/.Y$ tF9%UvRǑaYľG!zM%^r&4y5Gہȇa\7<9 c-A0\D2[ !!dV{iAuЍHP tW7#W e JdЃLAFhLh"f&ߦ]έ+j{QC{D|[f>jak [# L-npkL:2خ5WA8ᐦc lqk٩'󏼔1s>3w-U,f1R|x"]lfUuacqp:4 U?~UU;:s7&hꎵX72CqpOd~T" md R[(OJp'/\R?v&AkзXx}ނvȶعHpeo4~F\;{;^w5%,.q3C #IW ~gϚKۂM2\$ E讋ʃPz 9D6%]k2L$(FEv(&\H>a$1RԈѥVU5Q( b0G>{'#2km0w h_DŔ_h6)BV{¾y#/}e+UQ:L5 =وj9?óg7mwMݨ.Q^ Jz:W=xٛζzB@HgL?m8ݽ/}"rQ(*фp`/93 N҇ޗ/_=a %#WTaeGδ):R(XYՉݱEwBQ;c['{A$e7v:} [_<)7JqFײLs!! ՕpepX@dzg<=TX,׀kYWs_*ҺD;1PE6%#IM⺢尝&§=lݭOV!#A<idy2&4F?{$69Z;y²n.B {L8ѧKL'E9hNLT֐ s٬,'ȯ֘ |1l\05Hj}APT;Q!yFδ!Y+Rd=`8?Nr]Dz"?9aZ}@vf,1*-Ww۹{Ng>LP 2|("@ϜrDt32gjj33_aRG"?S{L-Y-YZ"Gfbܗ1N5› f,XKx i_ND!Rb8h!XHU<˥5vu&c] =z-W)+沠/_}\ ;\yTQM/} QT; 1Вz3ex4r_v9\sBZԸj0Сs>KX9疅: ^{5x0+v }9p9ePؘ8,e97ŐoU0p@tl4+FakSd-I-hk,n6wզZPV 8E|aphhޫZ-4ؖۛp5u>D=IBeyq^Fo]Jk=_Xx,F$“ gTu(KFaN]YEkFN)ܹ(c+637J/ =/|Dr/{5@1׭'l)4 :oPg)U>vlΪ83X-俾?:Ɣ]q5O2@^\91vg#?<ë28PFI"AjUxUpryӇ>5h.oC:ő P9/m1abgR-s5u__+;jGH#2wqqg Y1i'Q];حxњՉ BK?na} %ΓT~ S3v[Nwms% ܖ+"t,lo K#SB[u]S̩v~ɣؙCeԤd]Ś,-+du,=^ID(8Zdp<.Ŷ\$k¶`\`X9'bd͞Inޛj])k`*-q'`-9`V煎L2N.;n%>i Op$A;wOdJNc1T%MFd;_R:e1(K{1u z>)yYU 䲇1tԿ#3 j"539I5m Ҋ""_#יfኽsxrVı,Q#QǭpPέ%UqV⑽ njZWc %o=;⃞A W4G{Jw_p CA~d8QRi6Ag&sC(fV/RiwצvҺAk)X_=??+ P/෍'#"rX J#wjЦ3!QW5]eɈ-,Dȝ u7Y; @#ńG~گ 3 W56X^p}$ BljB KSΟX-^\ʬ,}xZgxoalڲr?ewRaQ~ΰ|uuS LkoGs$p2Jhn Ge70<9])Ho=඙M.ۮ-.RVڏ,?{ z>WP0_y ̵ %~A3Ó0>>0*Hk\=vnEc24uSr #ƟJNx1;dj0}:KhHVmUw+(2x<T'ǃ}%z' @=%>6 Չ8|e1XCv)q^5uf$QB&Z̃Ƨ}(ֹ^`9~\f~e4~]Ss{>)^*ik q+?zy L7~ck 18ƯZ@L;72)'! KSO[+\ݞgA-_`afnf1d/$mIUeQ#A [d :D&qkS#GYJ?B-P#~ _pԢ4p4waÆdt9X}F,:˴lF?l>Cu׉MV [eUK4Snahd=/"@pA֐e=hq䟞2Ys5B*\1w2FY?b絚X ڪH5c6?DgBz`-=(QCs D-e}y.iTuM;Jp\).K@XIW R|Le& q OFS DO߷vqqb;wlJ/m"⬌ǖe >ފ+4?mB<< t6XG}6Q sGO ߳{lTrgwdNŤy͝ EpXG4J15Zh$Kʦ^S FQg\ЯA*qdOFjWTYC@$v2g\~Q&IMW@2/"JHfr"a)| 196!a Ww?~R9BH9$װ,G~}+|E]py,,5:`kb8Kp܁{jwӳyN9'kV!kBDcWҙf9\GNxWJzF^v\voe"}'jȹʭw2*O^t|m-2,d&@N..,6gZt{k>ZGEqc3Ԡ`$K/zd=gJqەGduv^n1O׺бPMcy0_KSX(od XF{V2<~Y̵Ϊvos!*$#_+/ia?}Oϝc^S T<]VQ<|6]aOmz|L#7i{ 0:k> _Ke߳КYD. À ^4u >} E Pw$zj="l%OS&ցsHTLzu5*n1#㮽PeZo[Q ]3Zw&)mANv̄P(Zsv0dD.,~%e` sjLu>R^|jN3HLwćpn_3t^>N^ m7hPwġ?P#+Y&"7߰굙0y yp^h(mUi%\zrBSۢ"e.bg#{%V3;zxUĸAEㆢ2C4 `#}RrPH%aHvĸ*q@2?<#'B,VOzkxd 6" mzgAU*,$[Q ѣi\]̫O"'z]rtA԰ 0ss|gLIfQ""ԤP9d#!.1k`uS!,#MY!cuFrQ%S'$qn*3wKa"7"?38$bwK}o2T&o3[|5_7E'DО߿fEW,q $baS›l\M ,>c0t^Vh[I[r?B#Ϊl 5UߠHY]BD` ʪu:D pCD_x3[r뷳x´5cRKyLPY%]SٺHP#ZͯY"nQ²q56$΄M l,Ej4cV_K^U'HDU4o Op#*w5m }xoSڭ" ]6Wx$.q A)\sQqx=Q+Ir-c-9ǃY__#6Js!z?lI p9ݍhh\>77 Y'Ebrpxj' :Xhy8Ol"E꟱TĔ~#(J>`+G=?l|;y87L% h^:%kQ< 1w\`;4EAjBjHt˜R[5!?B{)ȔA)Kmh-4)Xjv m Vmѽ"آCj #qEI;ҔcKG2Mt7QNa DE> La6Jk|=]k&q o$ =h޹"+bׄ6oןVX$O;l 6V0AŬNˈ]T ҠKd#&Iմnha֤HfpY1%vyy`Uaǣ$fڨvV>d} yavJAkjִS -Cd'Hg YS#Dau"F+c(0nvuNۆ 8إ7Uu88_9E,'ަiSgKp0%)#@ubXx}2@}YdJk??+to<+aU/zhQhr~]^)gNIIlYm ᧈ~Tv^pry#nVppUjx6)FEpX 1?}L-+I v |jO;89|5/)C Q7zc' q.l"hXep5UQGF!&n$fm`Jyd[w8M"\"Zjy]}}{)66 ;F Ʒ_*^e`hvjFGt{k GOX0qwwv)lрo%μUA@ѭ3 j= tdpkBgbȠ s][L[ TJ3'Z𔸨L?IBi&Yz.8#pH\;Xy YJMUiY^S i!tIǬ' n" ԙޞPl^H"؜51SR"EXk/NyiaEA o7o{cANOk3-vD^5 {M7]&|zhm!`y`6T;5wBY<z(RŌ 1;R%\So7m%_?f0k~$=4GHT&J!Y3{dX>t+>A}7r 1 SL[T9e8smTFYg] TDŽCǽL ;5qy͞U3vob>s΄Ċw MpK0IqJ's NHs{qb̬ix}Ĭ?sz`M`Q1̚O-8 Ę@r Y3:T\>P9{ig,dt[W5%w; ƼJLQ`_֘=Il&X<^ފ ҅4t2V]&P{yn¼5 t.΃מd"=m+W+"$ZNc&Q5%Q/.Tp+' Ot_cD|P{>aZWj`l??  'Hv$Dt R6wlus$a7jlk]&]((y;Qχ_0X%ϣo(_Ct~cthtX0#$к_ oJh{z2l `q:׽CR5k1x{>¯8xATo廌>L6Wxhk8j[,Gx2O Y[Fڻ kփ0n?A|WG\R˰R)vWUڊD6eGܻV Xt@TE͜i_IԜ=eA.:-!OtCԽ8,˖I ?T=):ߖpX_N7*ot9%[{ʌt=N>^t-d$Id&$3CL^P׬e'~~ /sQh#]7@26 |[Q%M 48W. !f(bR=eX|hh*i]iI\)᷑ "d6o|r .k#_5/,nAg$EJ{%OHyk"cLiXZ#7˗_> pzEۉUBNC$/M' 90AK ^.=:Y@1ݵe|QnUb-fQ־P3TsOnPDx5ךKl9SD/N߮/ܵYJū{.p 7azK5|Z]9/+ť/!ʚ; :.Bme8/%ϰev0g5a(hڟ6{?.;K:+{Ԩ7 ODJR9UE슣:7sɀ-bډ5}Z0}"#ˌԍ,SzO_diЭ6 MDd=(j:5C)`XV=d@dc3,As_1ylO@|>Q G[2cF86lVf9E6s2RWUM8.Nik4~ ~_ ai*`[R1f .qZк+O, dYQ#?mWom%]IA!ӒE[ʚOkުģ+^y" h|18z@_V-V+XB8ۢa?gk}0˅<~=UR׳)pSQƯϿ{;b!"zȥ[.T矌at pJTS{xgZpciavFQG*7h?Vdc IQDG&@ƋƔaI5y.'4r7CCQ^lW7Ji}!貦N~/ˎ1U!( mNp In`{𦭆 zS,IdJrIEطm:^Mf}$`L޳Rw-}!|W^~XƧ=-en#ce? kFD_iu:A.=nCcnOa[䧻m|u|)lb'J]ڋOWYKmKHW@B<83ʡTSd@ 'Qm|-웒;aQ\Qk+ƏC=b-0yЛ0 5nSd%B1$ xL覆\4vݑJ-V(.UGB!GWI%! {Nl/@F!:DW1MnQ4T+k@;zOd]L!8e|w/t[T\]\r͒ i)r`(&MPIM=ƛU׊oelcT:B jG3x!5Y̳7X$"cUzK`ׅp@ c%/ ~'s:eV}_ڲ&՚ΡcZ# ECn> Ώ>P`i&s( AF+2KI>^ c31=}skNVM~Ήz&Pwx.gaT z,%&*h0AM`LB+/ӵ.MUKo Ơϙm0m fCnPMjbhX  v"_K'K4i~H],4,AXVV[*/Tf%zB,z0`1Q0ZL֥er\)lgn/ꃉ !Qlr{h<ãOV:(Z}0>ZuH7T0x:[swgMDK}dPYyG †.bv>d5P>_@^f)Sx$)]v[j |)Si6r#յTHy$HI/ω1f| 4prYM;!jL(pV`}JlG<t%7? 6DZTn4=^8zq7@fiXI~<) NbNh7j'6*\RC0MS@b:T7O'YC9^id٦H 0v'[5+D^6-8q+giÄ\؃-)m#о&܊ͣ!M"'qXde1irɇFbr-7m\:D&4DЦ!Xw\DîPIx>y |~ޑF{L9eF%1**noz~My^l@t2HX5RyeL.5J:J$#rEhAM$;|2yה{0'j//aRj1 ,Z߬h=u9zT́w2`pPN >ӣS;j7CzYR0l5֕|u%B#(dG)񂥕[?v-TL<$EA]Ik2;Í U]́i]VӘջz<>eK.(RȢ[ۃK5J}NedqfM; yѻl^}p'ETىnz0Wp5&w) C YX')ܙ_l7X*-Pl _0 Cu}ؓc?Ww{͛uNRm4!̛P4lR\M82 e U T kU=g~[\*y-;m}N֑R2B Q7WNtf^,$y|u?M`_}Da6X6;]W 9< K=xjN9Մ'/_A?%cykO}0nzd19k. 0A  ٝjΕZb5Nx径vJ>- ߆KqzqLf$ ~/&;~^{uCJh=)?3*677s4s)Ѹn㈠ p~ySۨ+bΛݦf~!Tٮ/]q. eu*\4uf3Ioe6kG[iRv™y_+:ⵄ',"[;dFQZ$d A%u.WZxp쵓jznJ&7;kWT1}w7u ,Dc3d2zb1mϩK>^T&OVn I3z}IsDڈL\QM(5jZh]:8Mp?jK $狼fs[\\'¥D.ך/|Q^:%xܜܱvnBf=F(%@nsJhM*ku~E5WFLiWp*˿g^FE"Z}$`Irƪ%$w&) D,ph[~p+3C+UyTc=iiE0Ҍosi1 t  Ù$Cj|SqKBK9\^Ŭ󋈼Sd []TŨ5}AxyK{:5D2k]Qۜ7cWMfڑ;]_d\gezVk>'Wq%/b1/- =\}wxfPx|aOu0>帨0E^/>-4m r0"H.yg՟U%54aFWp]RF6sva= Bav*`WQ#r"8?֋nxmp( шΆ~8U *SYE>O}#w+XŪwyR"d戄MC jF>>xē#8Zcy~ο~b1Ao(f<"juʅò ?K!1mA)L}|V#=~! xn,Fx!|t-g: +7 [*݅bZ+?65v"&+35, ZGx-GIH)uCR> yZ8M#*!>kg%ʜY?ıMχViV'oT!ri tyO&ydۆׄ]Wr}w }k353K9g7Xgvo&; `aJ| .ZKQ}Y/6sTsyOrkF=gGq@咭(%xXwr`2ӎJctHD 쪅:J`8|E+$2%sZ!H}#Dԁ3-W5vgm3kFf(ݳ Y>'m2&[1/68^ 5>n1p.<OK=eKҁ'nM/DէuSunꈁ$)VkpZN5B%F)G]BGչL#>pUY4QP!@h?xbq} {2E1TČo4Ԋ(JAp[_QF#+uYq6H)Gû&V /.LjPmJR"AP[jc k=Nx -Rr5{k;/ .ki:d-.!Yŋ#ŜUqk#H54CDZ7oIAVzrx%qTM#{ ŊɠzK_G!Hb+Ah"v_Y Ǎtx~c~P73xL#jd7g:4C<+hB@&vEPDyV NZ ucʯԤD| Xȴ$@f_^"Ucg{d/ly߆]~2? |!aGD9! %bp`tX>'Жe-} }A#OtNڧ ˯oDSYW$b%8 48c<@*x6f*\Zt~&,LI\2k L*}9o՘ HӺ{^{p-V/A*ٿvtdG"4 H4KGDker."qt>nhj(P1egf̺ Vm;|lZ=NT\`Zg47KK(.GK[(nVvT}e{*8#7al p\Dvu(5Nʴ. ME8: $8)0iݶ/п5c^r%&ø՗9״8j4ٓf>%h-jhw J5$ =%M޳ISoU] Q@芍g1""5 eYb.pl"xlnnru?hH":3wy ߷5_=4)Bo ,+>:Փ*':95}ǘ8b[n]/p-P!pO_^0E7s1~'g1%+ZvU`7m#G'|l[bSH礟ap?OhLZ2oTe8c`6iG%:%HC9hdb~%/:Aʼ`˻d"zq0:k\k':LڅXEEIApyuZ>HXŦeCn^Øls6pu86Q^m%eu QN+N<ި+&Xy>J3ƠNF+q ǫF 0zm"v\T0Vki ckՌWG.uU1f.emM5V5KmAWݔ5+>Dq:<{DGb=4r]k QL_1w7 9>I#> @_5(dفM\C,+H+^iSzSW0ڽ/,WX_T:2Թm{iPPm?d&mu@U>/[[KhHGzCTI5,x#솛xw(yk=NO%͊Jƀ"kIL1Z8~@Eh)D%D'o(HBn9k  )0259{ݹ~rHT(k䇷v1iUdD(?UuJ%pPM55\&Y F @P(>_F>k|QxӷI@u/E]K閜ikݜ+"f&{9)O*ۆu cF"zA_X xOCuۂ`!!`3BBbv2KO{ n‚r>I0G!i1e,M<b?ND&NST<HJ u!$AFNlQ ,FD-0~'ZHѕv.nLj²g6nYNxd[<2=BJ9ǵ"8[q0 E#׽sEͶJB 2a~xS$9 O®%aK ^.u`@DQ̊VZ@MOlVx..H pMs"JBWe-9)?l3=eb,'uٔV8-7ڛS#:l'nxM*|..ZNJ'P?xb't5ž]ա,9'`Who/yW}U@B{}DVdIf{zcW$'I(>2PVУjξ%hYOÕ&GAF#^J '_gTpocX˜t!ATu{}P-xWͥ[,<Fs`Nתy w[]JyPλ84VN|uVײK$vوD~ݸ@:d=,, $`]y=f֦nW :Gs8_ȕxeBoEkˌNkBR^{#_ܻ8£ &DfT .♩,f4 Z S3ǜh p;Mz%!0)`Be{w2?SMN\S$@XG89=]^18 >ݡV9 2b)Aʜ fyБB.DU6[3 X,FK{,b:SpWT4B8þUI\auiOͽՒjy+ s>+{OuHgxK kWW~0(ENK* G RRzF/r Iv"dȆuSg=7?/5ݐ$dJ,F}Jp@}!| *&`B)=`M1K> ݲxKxNP-alx_F^+⛢Nc Lڊ{\#<'"(F΂}7+\þ^4}'";_I S8m`:))x$yGNsl{sP2r {" }IijwNecOX~jszW'f1AT;8,ci6@+LCSH߿&aCZdFJO1SݴFx([W,Wvxɏv͕ cE\ٵ*h p A74N|?IL*?Iܚqtbe*Ө'0͍"!2[nj`DKGcSpԴB)pwK`Ě^6):˒}U=5~t; :½͍KJJo4Q2l3>D)'WZ o+eJ}ZQ;<:Sאdu}mڽ$<) M P !2gAU6} Ϊw= \:?姠fFH'Ɗ`e$ б`-TjVeGԵM)fW3q%Ʋ"(0]2,Rnt+fO^1q6aAၹEyT2%@D5fA#T._TvEZ/!-qa1V vLh As9IsGš]xKE=~*g뾿@g&ƾS:~Z$7qoC݂;{Kô0_mםi?+2s\׭,(X[n}z,VFY@/fV)bp38&C˜-Kg6_]N_jsa *Skc -:'XqB3S%0&8ǯR龜/SDeGڨ'l?ؿ88l7n]*Z~_v)PKϷui]a5ǧY5Uɯ-H|#cY m[Sbp5m{%8"3Nq[$>5ǁ"K}( pdA-rvg'}= p`=dC!CYxv,oqY1bW2lٗCm[>e¨YI7n16iהKܯUҍt\ANp r_X!%l" /+-T }Y$p K\RIycAm--=l= zf,ӑ8Qt:%vOn$6]yO`^=!x9` ;r^(~_o!sSa+m|wݟ❚0'?1~] wle Mz$NW\.KƄ68CrKB FVŹCjCŒiM GۍȤ(99SA'RGsXd(k?հ(eBBc'>oPI vQ{ z\L>zQ8҂FT}ZgŁ=/CN[L[ #]e댇:Ps OCJyCO(~bvH_kQ%61hu.JI|TS) ZD9 ci9W*ڬ %39W wa7uda|ZM UW\ h}IVHJ2OP7N2PoR*mX\Ž]`J{)cIH؂'&cxӽIv/ mwձl*'57,;ؽ\>U{' o VuBoONkcڀ2._[楏V{pnًM@ \sSNV\d!<O/9wwhpA⓲'ѯP }{C23EAk+ƣ^ [d=JF/ȭMLGr[qKuV#c\DBFYɹU9yF u D*hV>zr>G W.yZ(܍WW<=ځĺW6yR2gX]&yl1W5LԊF),.'ru_[ FamH29p}oȳ\$`cd3afFLUMc^!YxKlA198AHl18 ma#"}w#AwzJER.~Q3}VuCHtrR߇3BWVN`%uX%>P~ҡJfc,A&/Z4bG״J{[=ԋ̓[|@E$RN=O; 0ps2NЗ{"҃aKLQuϣ;gƵ/N+>hjE/Hzfp&. XQ]@#cx"= J Jxb 3q~r4l_xG@ٻQRza"],J=@߶P*$P[.ߴ4_Qݲa}]k.*.Csm:oβ#s0Hyo^&`"~K$˴#pd1ULKnu^[c[Etέ_ m/\|QI毿Oe}[鹡+OxLg @@P|]; /Ұ݅l|oHqRX5*;H ֚}ΓX~S9sI]]MCт,tD?9I"^CL[MmީٳhX\iSOyBdFO%v `0M+!Mzڭ %,l_,|WTX1a"%t$M_NbY?!k>UwL&k `6mcwfzՈwhҞe\lvm&.13#feϢHkF01/G/]2ј<`ey&~R ND_WTG}O7 iX[j\Gp]NSCW-/Ii}4g;0 2nh<_7u&ADqb965|Xh6^+%|$k6y`\. hTVo|1#W]>_ھE9H Q(<~;S''wd *%8)czA}'|9dݖwaզ<5Zs1 U oWѓ&% S#?H@A豞#L7=Ԩ,0$_:6 Qد=}Bu:I!˔B_Ife@̲MQƀ&֌U:pvh$4< j9Cs_8z?t(WɪSt8ۡas~#y.n(u 9{ӋciHvh~=л 4 j U:V?V^a93v82NzU 8d_E 'ce!ׄo.gp|] TtũlPj#Ir9w F W<H<*l `8Lx'9<0^6u[b'de$!^X]AQN;/|5넨ؑȭzk_i-Gd$wgR ]$VaA*å Y7|E5$ /U}o"ZΝX<-~ZE RZsƺ?vhü4tTp~{'evW<tk}g ׳8a ءȔSf#$8ͷ`Ԙ} TdZsZ/ " Y:ُ6qW1&gY+64@/P,|io@X'Esz:ɒңhpZSr[ \쓕fFxY6M"l1B$Q*E6wFo VLE+piXS%AAm\K$%̻H@Ū .:Nc3"ag$mjRb띝EOEou([G*玢мv5#2soŇLm}Gn=PҫjJFT؆zsZ]o* \,p{x%8G~ }-ʱ>wL#>q\ک ) ^Bi)?iOT1F}Ԑ*3Rvm2*PG+@K\J^Mݻ×[]J]ʾB+OAGe6c9]?VyQm8Og}Fzۈiq<2xfuEBE8ٓ4Pu2NNLqی+&˅"rU#As†V;-E'Z:A8&p$F:{4F!NAiW_bag7zz?{,") f)ŐbŝTYD}y~BBoj.D2eabV[0Nm,1DCҴeST(|n锚F>3bpONO\~K_t٧7L^QYekIa 5Ej|>9\G݃ŭR|Yf2+K"ۡE!7Jn˗*m{;XRȭϼs$Ou;w8hb0a&QcNIJE~͑V cË1չ) CLsc& ØB8&]"Ge PN;$=󬁇f"xm&CEda]>-qXHإ7>lJBz1pETui/^[{jQv-82B/˸E0Enm/A,sPzXj`\+;2V}=]<%Ӥ\QFkE+%gVHX~}$ތȮ2o&lg .˅ݝS^PͼE *`n_0Y. *VFf 9NG!v cO_J^?}.F%x5_z/:+`?HQ 2>ۗM .P-hQ̑VYB.3 ސRr ^6G:Oy_fz1|)\>.E%?Ek6pc9ɦw,0hj R,1}2B0M  db3lIe֬(o[xxEvA~0/EC v-7-,vb) )Ջ Dqn0R94,/Y`:αl~k$WAM_*G)_<ψ"@6VNT\`!c9I/.Mq햆ܙ].0Z962gZlX,fTjɊ 7Pvk` D1'`ov8}1<-)kG.@yɹ"Ajo𹆜=^gQ[9&X& uP"̼L2<G 1[;usО8bQɖĺWZ +M0iZ"^KCR 'x"L)&]7{`ZǖОS (z($}V1O8+n˓QO2[}jtWodVNbҠ W@~̮I+^g^6M/CS9] C eJG2-BD9QOc膌6tJ'vW5R!QXjvHB*D^Bf+⃗C!6)pᑚa%8bEvq;)Hki#[PL{n->3]n5w ˆn28_/+ IByˢEf[# {[k<ښo 1@sy)khW ^B):#R{}5m4OvZvvm/̭BBO-4O}e%9QJƍ>` rd&ۗ95bv5de1t+Nd7r! ltK;h*E |aN3Hv" UQ$$-U-.Q?{Ew*0`TʭuZrwYbWi eʎ8(b/LH8׾BKgbG &Apj,D`$UMG5ȓi"ǘ.A:dg+J-iҨ.l#O.f9mr`wԅ$*xfib>7fM'%^XqʷDaeifW >Rٮ-\T=H'tMYÒwF>+)CJ}{MEY_ LKMsspv?R‚^Job3<ۿ%g1W9 &nRt\ hӫk%e}r!Q `bөءº!^mC0qGȹ5lFIJi}6>m+:#i YIt1~qb>%FXzp1vXD1je焇Jy%&L-T`Wz-5TFb8cJf>#g)1IR,!0dѢsӗ7X(E\X ^"E;l<@&mA'wc73dych  B:wm סFjÔ)j_i^3̷/IKHߺxNe[3^O޷ޔ%oJ~&5 70@BD1rg¦8 \@ ͻPL]1I.qxpglù @.sk` ]e/ށ-cT + 9[ g&vũ?)U։.-yCr'+f9v;r>mC|!ʘӀ|Q| IW=*64Ww2iRJ7r;UûwBhȲ ! @]ۦ &a$pgE :DU%j(A*} $bC .k7FCDNE6 -P357a~g sLuOjp Qq O2G n}3[>hʬ{ږŷ\?ZܔOBDS=)sȇ&)3ăoĨ{bLN9n7|1sf8)5NI\2㔏#~T@| A0֔6*qqԧyb69er"å? kp=>#-8˂%f4C(%7!z@ PKAV"$Tv nͷ|KPd;XLTmN3c4 Z\&M, rM6eBQks;/Nq8gsT`ի.gN\_fF3!0NrGy7юT'=4G"#[Z@'dx>+)B|'0S:Rc'^sC4é>}J#B.]#|/>㞀u:zG&I 4l#}I "FQ VjzrU:rIcp jEQo"-7PdO'8 8 _HFЂp7M*Y]ϗS' cײuI.x6'Gy7zwI(;<*Q>'Pqg-f̩{Q\M$pMCH7u~ -.Wu5>ATyM縉Mܱ*K7k\5]2u`AaS6K5_*DNyzdOPdMo{OQyoYnRTkl*NI3K=ߦeN4Ο(+kq6ۓ x-gMGlNۯ;Aj٦oEQ7>n$L DˉAlK#Ϛj?vMbU&g H=B[!cal jEwNM%xvk(+ b o5F]&WU9˨Q]SSŊǒxO'=-oYҠ)"I]}^x Rx 8.׽9.g.:xDŽ="14{X_(2xNu׆٠5dؑcPیKKmYm(.0C֙&W_b Ն izӮ>f\ Y'@yKȢ|*"P6 SN0 {ƣMQor7L"l#G9FR( y߇Kg0-я]i q#o"t= YRC?ʻN5&ffm=uԤ*'Ǥy_\fsOMr!&X>n`A33UjoTuB|^$Kb?eތOX |: N| DE[ɄWGtP*T څ4Fd=ua0[| kcECSV 18wPc3cj&G4Ωr?d&0+?JIT.y7939LjR+ \`Zd>*_#xԷj=0gl׌A5u u [|$\¦t>f`ْeʔi- 3dp$LPNδZLbdLMyWyߜxF[˜%\jBeWa5qWBnPLǕxC;>H@FQԆ 3hxpI=r~68w\>0W>C V( Ba1Yi%{.ϻؤ>ZܜJ }d;4dYr]Z8g_/R݊tknQKBT)Y/B\^uO=\s *ᢔXu]LibRWP@C\WlÈU?mςJ,&l#xj'VcgGIVݐa9A9Γ9!*Oa7B?Qg)ޟ&}g|ˈtg;im&aI@֦ݳ$M8Ok𿙚u'V̡ I-v;]J*,ҾXq+r0¹; R˱ A,:M89;#DqԜƐ޷ `Y<* +M?WV4 R9CȢ'gjo{HKe! ukgbTc:l#: ZJ-!\~e><.c)pʟ Ӣ?z0cv./s&wb%%C^~8i/֎'Y0I!zczff/ S6-HN~6uJ"; ^Bt4,%Rt꓂3 ?yHf@ѩ(Pf _w5o,Q=fJX,lPpI*к BYxcEn\^M¡L?o}/H lsHA)"A83FRmcU44!Z5_\~6t~6upU.vOlqχQy08x I$$Ņa{--GLBt!q΢CxڗLr\LJ,#Hty"!dǷԲBl<{{vf^(YrR[#-qzY9RȂT E^8` 1Zȓra1P!mdב7xB$Ԫ`n4ȰFRm ] NVڥN;d**nT%tN m.q+bTV IK*IH?k t.! lsR_Z>C\}!gfxtR8  B6M` H+!Eޠ1i| KcpIeL-?ӳZ^=5 "~Dm ˋwXMGGdXs3δQT!-G؎!ُ3W@rhJ9^΋k,;jm5v$G[ Y39lV,R%(OO4xq6Ɖş=;z<zn+;5w='ˁz,.ZxWǸɒzOh=b)ȏQ{Dy`"ķ(L C .<:*㮒?蛀=uǸ/'cy,5-RŃNL-zq$:z*n z{s` LOt\I%qrPKZΪ q$"%t^.bCa'I( yw\o:!֝"L*&j.k߹AXN]tw-~{;'@^qQF,,7`0 R4ikQG+vX>1e %u,K=b+WDl)!e>r;֊`-x;A$ T2%E>R-YCA|#@XI-z]FMnOhL$2WT=Nkׁg}iWMe&eZUS8k2jȑ:a`~lT XNj,H$ow_=rC ߴ*5"_SQѨ:X5/dr*T8`?x4'H܉ k4g\o}}+3n_h ~Eo G9zӛԐ6x~ViVEݢEyTq>Q1k\̝MWR}_oJ#'  B%w`Ql0twVV<;ӄB=%jco,Y>d.RFNE5,ϽM(3 7+]> OVEawj#g=7 ɣHkV z߿9#Fo\8$?6f ̰~r~rXhLBD"|mNaSV\̖e=w[H_Urߧ ?-TUEbtR3}"lx7hyb޶Px9SEE㩄)]6" ]iN]oF-[tQsq \ 1yȁ Ó w:ȡYI3 EJwa?\g-H{hdhlsL VusFE"|̃`Ua1}Hxg{fH'2?/S#6*qF}BrR'4*WHGu)64I>f@Pf3엲h0|P*e4R d?s<ɻɜ/8RžaULLC C0UN,aii/ 5'Cnß2ݢ lZ!H͒;CBbRiwPC|ߤX,_1#Ip3 cHN?=\ ;ݙO? dio-csR8.#H&4E9x|9Ri"9z)xR)T*Oc!2o%1nD:7W@ԋ6G f}&nSYkٴƠ\Vv< susc3[QIpkN  n3 :V9;*H%sXI !lk B5O~[¸]@cܭ~ʯU$˓kɣxNsPHk}GQb%y6!zJ$!نXGϺ/Lb!ɣ4Vm@BT\$Æ:2&tw* "Y @Ƀlo6( .:6<;ԴgcVZ!yZ#g"3RAF'@6_VLGyXlحTiw2 HiRRҹ>Ycr=^tiXc\E\t[CۋBߢO?aJ47;lM(~Q'4G`=1ݹAPHܑhs6FPX7uE`eQ H^/Q#t$HtWei~"$/ˣu6{FM<;i{6JR-t U Ma.gIa{O7d=N@o΁"7i2j ,t±g*g kIHgMG*,"4po~d!bXĺluh ؞9 IMP*u+_HPO‡*E eūuQ$.[UɥiL<{43Y F8vOSYb8\7}fywըBfԕLR{R,d+al+{::[SDT2oD.$)OKmfy[mƊrsѭߥUt`{93gp /25r۶DJ`G/Lc* OxR+m8ʛFUK^sB=~W0;|(݅'x)[EBʜ^5 5kk) VD,+NG=K6c#}֟@B& ɚF M2F(14mUM H `{;MojA\:/]w{|T$CiKYI&YM TD\qoD{УQQs5P' bش;/NfbmѬqX @3E'EU-M@yC5M9؃ Xip빴4),Z?cqy͂ЙfN{T? 7)?sdGS]CO4׭59xsv..Ayegr+κW}di[@3%c,{FݰD'a> YkQGqxb$qx&Og *JOkQL顥[Lpylf UA~b0H(wC!W*_&ɾ'AҖcKpPA55Vg~XjHنu5a9%ı'I痉|Y{p="._ޓ Hؘ>Hv y"rj,EY 3L-b5D=/L-I!gqaoRDMwz7c4|rFn]+?E~+5մePi>UZ Z/M̋;޼n #f&2L=اLl–sE `.>#{qCe82k͗*-:llj99Ꞝ87}ob|r7 6Lnb‘%*3/Xݚpyg/r1z,lJ}Hڄ>" Ԍb RܯiHQ54!ve:G\)+ @ =_ٗߴ r|l%a?sRs岴fֶ-ՠ*ȻgM}W-Y$vF`xM**hѸ 4Ŕl*bjaU/dE Pn*DvKt[kEuAl.+]{=ᒺff/FBRe!fb$$0ݷ)q DdCIbjsgJC\]`&4̀Z/SqE*Z}EDX1b8aop=m\mB =CS|uabb,.zH%c]ϘLk>VsY ݽg*6 }G;$ N5D*8J7Ӎ+qcPn`j)<‹kHivL$2X2YuauCa+i+ZӰnڋ'jY^;dwMM`OEп f K̀0ڀϥF${X헐/BbQbݵ hlųţZȓz#>d\9]o9T&ȄlT|:eKԷr٪6u<=UX^hT#Q[՜Yޅ/{BNV+}D; "AjaGaC :!@Ͼ|EZCֲGl{D<౜_s4u8:+VGE.}ns 5 :.p {5RhVcMD!%iq5iM9PHHd Y]t &'7M%\>6NVKgta(5&NsACgTn;B66d݆Dڗ# Yu ϝ4Sh} ۮ(r7!gze=7\͕ς=FsD;]4a;8d.`U9l`(tJ\_.BAPvx(e=qoeF|уin 77$kCp<IM aFf(,I%≱2[aO x;:QNi\8jbKM غ=~ w a?Lq$sf?jˡpQ4&)xi:. =:2 8s$}ãVV4p!5S#ԭҾ۾Li!,~*5YB^[iط?_tRsz@rz]ȉ l4CQd␤/g:!cFv/&YGBU_? E*Ҫ.bR6~4F;NܿvI|uҝ_Rܿ`S̤'7"Bp6LG]34T~Pj;^b,S?;j-X^LCr=OsW` ~GO"]ۓhN}!Jz g%5@!Qhj~y!"+TFIB2$)uRFg?fwiεq6]YxܰC*fIyFh޲BDt PTI\/@T7?~Vb1]:)T}]MdċS=lD(UHGT!zV(Ts-?BԥG}SQr A}nQbF{O%s2ɖՉ{v U}m]2ax+iFZ7)(3Q.6)"E md\V2aFAhhl }+].I}fOkr@$gסu,lbԟ||J"ȁY\z6Z/V9;|S*3͞)Υ[ kV2oieþ8<ՓԜI4PKƔ߹ 7S`%u< |abộԫk  r[=yG=**e qOg*[8F b}STuP/1m"GL":]/uM"rɹZ9YH*)Utά$l;4FGƙ3V=Fr2w93fWC׼T\e @wp~mR"<\2ec`T=GSBQ\+W[ /{G-lD2 d)5 66d}J4+3:RR`bBՍѮ%{X-5NnΫSfok'EiwBD6eLT@!Gc3#߱9Y ؼdtOC\9fmsN0 (L}A'Gp.XK^Ye=E"Ox"^PSy =$7xRB2(8pdr Ͽ]X[tVo) DŽ5U3)dM:t 拎c @_&߸T(q 誓މU]nL'|#׸ S(C$ Op:~M|)1YiEѳ+@ЮۏL]t,57uh6[xQP-8l;(9=})+Nϧ26|%#/oo%F$=)Lӿȅ~sRdfEr9)`uf*ϋEi^L8p~Lvw&T5[OQܽ12'DħŰDa<R*cpc<T;_{TZ6UdW1w+T4GfQB%`@{ke<`hHupn_y 32Tݼs|+T.zZ \>֊)cE  l4t*_bL*/гlL7nT A;"8Y{+a CeD0؝Ւ5u?,;J KdMĪ o즮hi9Pkr1K#@!{W*oUH7rTU[Wں:,;6xqhIuI*Tl-*[[muP 'WHb;sIYxNv;[?,ou."ٺR\-ǵY/F*J~B,?B78/c"|&Ζ9W{6vܿSwSK'J|(pBt%JyL1 sСV+dQB4ibJ^,c`a9DtbL9S 8S&I[wXHXQAבcMB.σ2]rƼ_9*=jN1صBPݫ{c'* ‹!I I]oΦ/o퐯0S%ߧaq/ή|kRi΍)1$b?T6Rߗr*\Irՠg[Dli?}xoDC܋AA[ Jl6Lޯ:+o&Ϟ# QxZGc 8*74\W_|Theow4ڟ|L#*HmX0howdMGǃM6X n|ڭUkvGS Qn#61 (úcd%M&,RJn3ᣈypm+"4mA#֠!OHM4˧fBaf`.o=yVuY_ʼt39'_K#Ewqڝ}<-Ji`'ߖQJw>"&Q EDWHsOI(z,J5_ߑR ( l.t7JW+A䦲b'Atw TdeMtVBIրU|ybK#͘1ύ]x8F҃~9\Iw)5'1mr!! %f?J2u`* |Rɻmu°af@bÞPL=(>Q0ތw-ဦv. mp7xRf'?F+ZX; P @HV&쐓tm_ BNz8=%YC|'6CO~Kl _گ+b;F]"f&a(Y`)e%er|J  JdpK qW. Wv;xͥ_ƍ [#k*vۀds_|o ͈a'r˹hmOgd S*n'ea=3R,%\X"kxdIXAbmPfgœ"bfnJ\`Ad%ZY?+kY.*+9%T5[]'i.^ؽK[y3w. OԱH;@s5\l991=ICKVר]ە*>=)P)k\UuY8e|(j{# .j13_Ylȟ o/쐋:eOtSM :\!l ih(h|M*pӕLZC=OF\}WAg҉FH H*uĕ)h u:YdZ;*d> ,ݒ4)-13Ҕ6c {xC\&4up4۬ͳ#bA i^iqqV=leP86g;W|.m}!TR~̎PM}# &?>Q%xr[3[ ùe?Q l #+Z`g - FE{Pْ.=e=8%[,"mmVʍՕlXQ6 8ќ8 h$Ipos+SlOGZdqPu|kɿ0.]L+%o8H]LkLc;=N|DXF. ?vaw} |Ɣz˒j @v{O 46=|֙< ^ddjˆ<׆zHw\9&< WSNNIYDm.v0F^os:=0C4XhMbҾzF2 -7z>g.h|t/$ƈn'&ţԠ~6Lbp_?\,qyvhll$+ OőěR$꿐=rs:[q : x2S>FI;W]:mQ:A7`{ IU=( ?l +Txɧ?9L}`?؀DP8]Z̲ܠàz9fk컏dhUub~RxB{.ESV3!lg!y~ 8Jjq5 L56$]qz&j GHDC &gp!̷b#ScۢMN1 iaɶ{sT"ig>Q^B^ r Ďd. cZ=R>KPhuk=6 Y)vU+l6˼Ow āZ.>C( 0*bQIŌsRq/޾z 0?~ BNtcFt`>2v7aC~ObXGkRjf.mm=]gxڇ^W|lT%|Wb.r#ULu$aX'cx#a]I$o"f~L@̳ueKZ O˱QnOUoޞ}ާM-@o6o&{DMb*sDasea7id+U vyKqqF漣A_bxC[ߵc=st8# xcNAG9I/RvQno`e+z=Co&Xr1E 2~DH%\o_6w)u8`YհnY8S3uhḧ́҇ g,lAub h7-}JZog[P.zo0kr.pGz/[N>'XNAZJjKcQb+]>][Y:{C;}q!!N=88!FnJ}"0Gq`Fi {$';7f.Ɠ j/fT'pIKr[tP]>胖hG8!ҳMmBVo o|Y)$eǩJ!n3c8RxHBϟ&;u8y} nǐ/!~r@7WJSYw0d_4w >Q  m̈;2](>@ xuS>'C@%96Tcy# xAMѱ@|e­ R Gu D(/OFhHx|~!"Wƒy'(7,ş6h%_Rs<&V4!wr_wW#cFT=TmJu* iXTE]E޶3Ā*?YGT>Dۃɐj>8+'ZSޮ_rBDA" Va{}K N!8!PSP!xTgn*>6.::֛5͈\jA +Ldv+{*D=ָζ~țcvHW71wI?Ѕt6v /$x emQ<7V=QEL%O$;U,iM%e+b1݅X8@ #/qPX SHt9Ֆ=*EYզ]ԠQdiC]'Ā|Gz?xwwGarY27cvU;t?%4?4ȹzBzG^Ǫa.QZXCڴzM LvǮLS&Y] hF.dpTßB4ӬP]C F*>+yn)r1wM.abYeű^M4pY]p;􇢣6/߯XSR`6&[jcaf#5Lh-y;156:3n9h k䝸N^O-\ո x@xe8zQz4|{!e^mu۽)-[wNߓ>ز$*|ӈ|X'!uqrjgּQs6\D5$2L[7D'71I|Zw2k"0TZՎD ]r'OX&%I΄VG Hq/*Q5JҤ_/U~Eˏ1g-̽lVb|c -+4tih6šPԘR2?5{/i (E*&)j .gd{&yX4M16KJy4^(5wثaG!*8[4݀[D1v[7Ϟ.G}zRﳃ"MϾjQcnN]Vr[M ! k垣TQ>hE)<=IޫF"43s 5>2xuxuNZE{WvOW-;閉J[t_-j'޴Lp_d_AO$ 7-9]zpr- h5I-㧅wqщDy=fXe,#̬V׈>&yЏ7u-o>#JDn_I^A$*#@qjKT;& Z$Ƌv=FF~Ջφ.y3"I?*\)DC/L}EMJo fh\[xo&߯ FSeY&ڭ1nmB_V e[ €KMSQ1<+&0  =1i_;)SzB{ʼnl+_O[quV-b!7ͲG~y=m(FY$]snegnk%֭:|Vf K_%m\ &[TU9;6Zfe$%UvP+s!>hއ#`5yHʑ^LA$CT#KSP 'jBs!]aB |p\ pXL;ϭKuLqXn7g]=+ӯpUV n"+[BX3q +NB,e 9Lfiw!`g=VF -+ي_wY-_paE?B(@ VTbj܅?:2 ک+'gSyԞ[!}kPVGN1bg1~f4JIB 2-3DaCvH݊fJH)-t[݂O6lrjVF+qVXoףlF*3$39RX\%§e,T,dl3yM]ۦ"8(@j#oOe}r-PP6q$'ۮMf-K&: $AgKQܽk- g4p;,_m _[QIKv0 h3Aӈ\zT9Z643Sì|a<դ/ŖB0xt8twa[w90t6?GC]W:ey/'QaV!_R)Q%$k0fO*rI4CCϯUI9 R£J&fjgҾx*Ep\x mO~/?Wg-!} qo~ W3NFYݫKF{m2WQ,ο'JɿD< a ښmbGlE'K~9>{BY  D^= +Whwc9 'Z#chIT5x[`xzc&GD",(RJB lퟨaFQ ZoA7ph| pJUwX2bZ$ >Hj{RxH"o 882otC7vmkS`L6n{!ZgW!| 4*Mp{kE7EGeG`զȿ@&Kⲏt$3)Řخ- =v3^M<-:U,*]gCװ/}6 ucHڑ")V"x1q(?.,Ђ'Y(~$ 14@B9I_HNg$(F$+;G@8m烑,`ryaBr1Pn_lAk%u*7T3iOvZT (p9cUO ,H߽vcq0GYMv܀Z2+Đ!0q{3Lߒ?l_Imp/%hH0VԴP'6ؖ7%:P;I2ׇE@HuWFYRc9@HRP$+Ù'B,k0Ho -oz^"KiV9<>p 3Wx`2e\C7o[g@m/s %y[ 2D*ZFtu Mq[_H>Dw_>֮NPvdPA0^"L9 W{ط K{Vy ! #G0$B1(+`ʪgo-G-T.`jw3|"7=b^xF E g>; f0pE&F6%9Yu5`s|3eEޑ[<<\?+Էm>GȆշ;,zs;|"%8Pk3뤟=|HS:7:X뽌<4Cc&+pmYM#疙=:g(?$}+O 4&p}Ԏu2XJJxh13ڸPdg^2qO%  d5 sYYv) BuWv,CSEbl/s9QkSnW j-O;c!!)krplh>|PE0m?+^.ٙi*|FEsɄb}94٢&KݐT)wSޤm*|if$P#ڬ_\n/i'o^4Q YVY ۢ=;اM]/$?Tv:Quj}0?{nDP 7׎ -w&Cn%6̦r\CH(x>jюD/<ߨADwi4^@CޅTW αf#9[&Zjo)}Vg|z*m9f{=zia% L&y1Oz-F ,GXfXF\9uu>K!R/H-S@"R[0 zb8ьw'IpŃʶ{ ߫ .8R,Tm%9$\mkXR;0ͳ/bY2A{ۚG*^bDx 5Ӊ%>Ab0Ӗ&Spw\R(h*(m 1hN$tdJ;ajEr)sn+E"9Kj]5+2;<ڡ=^RV?:nEnmJ.d'ja@y}gX(SV|"9OKT;j*v oni(Amb|͐1W"5.>p6 "B/6@㒒P4==j6EņeTCs覙&ڬSUÝސś=/e'Vl !xsSQY:z}Jc˕WK>3qXcMREzH5/}m3ˤ+%i^]CVt aJc?ҎPе*ØUxq&T |$v"d?aY=B7Vt7QGik@{dKLRhhS[< !N{>O⌯ov^`1ns>Y^W"X' A8>ģf2 FY1Cxj ;+VmPBz }d;Hf!Y6 !"T+uˉZu+v] ĂDs)1y&dbn$Qq J{Ips8qYJ>5L`У!W#r61ݫb6eO1(*47v,sXϷSGE{DžhhB$ӃAK܂`)8Zٻ:\?{[444+=؃,Ҿ)):ps @ʨN]*B+uYk?)L$yo9t3}i7,uC2zjc#NMtIOkU#\Tb`\Сkƣl%4D$6jT8b.bk:bRoWi,-GytQ0Zjj[x Y칂cHS'h߶r-ۉ;saL< YKNSiƗZSBKlW'GPS&SS~KqCI/=wseNFr~Ed#^&WE D~iWoI.^Q)V=]odXAŐd >V97~&Yf+8iQ3h5SȧnF}{rvЉ ;cze1vޫ(^z]P_r2*9z(]؍=so" V-Hky{+,'[US* X)RRu;ޛ~'zk';MRˠ*d]ejRǶRO_tJL},T 7p_`ԨA' l~ &\Y=ߑmШ~ore G:yNOLPHO,P8 -`{+#u xï[rXrbe{YهE,bq 3<m Ou*Ƭ6U2_ !qͣ6{ v+tm c"zhu7`*V~/`voF?c&=z]hr%G]RE0)͹jDڔtW'+]kth~p49vh8.CS1ؽB-VFÒKtCS!S7:kd< < n{Jc5=%Ob@_4U5ݨTZqvֿW„8*77Myex$yDW®62P+YPZBjB.JP ZDx=Elir?9u̍Nm~]9fh<: ?*5ǿwMEGG;MdWI2\Lj'}$]̒"Y~E|M Y,?kU%KUp^"p3>#pxTTShV iտ@H2Vbg&d.' %Q|]Xa ǹ[-D35Pl4(:.%2+'CCɨŽcMxK[D8t哦CTu~~g[A#(R@d\JQpVxjJə* oB"޻$[=W-A[ߢ 09佃|6l7iY3إ Uk]u{WP}IM ~iŠXG1Sj6ŷQax-cƍ\]xً >H~ʚ˟4>-HM%T;f;ՔnO"n R5;.M_`4"$ ;eXڅ[`o)P'5YGNK$g]JVJ>0{%0`;ۓ"ǻm| S+HJy31fT Zh(>F/Ej-b}-gz'I|:k"~PW"+[V&dHGlJ,O8a5TqT7T'CHn{u@Jby3ZOgn! QN)asX a| 25s:>gCF@MY "B$}q$E 2C]WJT >,-WK#fKu J1O ,j*NޟYIÓ.tQ >U頁шt]i^Qaa2ZRJbF0˨ŕ9] QOXj`6;+PA*C]D20&Eh#MǽvH|#6"G 3P79mpr38V'2Ɣj®Ƒ`T+ )FX6у^frQ$F8>.DUjZH4ڒH M?YՍ2~4&/B`Xv CsHOk~ /v6lx/ye` WVT?=?<sY@෎׭s@\UIi@ݡ #CޭW_0tYqr[+Vr:dH\"s=Y݃Kgb-Eb@Dlh2+7.nCpigf+eyxLFBI^goNIGvkLۤ3tBR=&M5TS #RzW@ïY~}8#;''E |M{)lբɤF&=6 v(=T.HV1:7~.XlNu>Y[g, 8sزnc[BI΍zĂK)CarUeHKlEH<Jɴ\x/XLZHpQJHπcU,Lb]^ N@3`p,G奺- >0e_3dVtWJ7n1T?4IpOy(^G64ΌJ{C1&^ʩ䫠.ĺtٿ&VKJ6~tEvv /xY=RY2"\kZHm1LS ZN+Xױl`1L,! S'* - ͧ +)U<}(9Ao#e@MƠwan%!r%S?aJ- l7T Si7iXy99?@shْ+n1;)vܔ0~?yV8*#gIؘ^$hB!j~UIe` T;VIeIɌtژ]=}%%8 ӧP>5,QM \ŝ2$m'lmR"XlA/T'd TFIskC![Ƨئ5x,࣭XwIǵ/u?[stCw- &O! 7I\݌#) ЛwWt=7OmV:ᵘثzry(M=+Xֆ( Y[pg˚ux[k -2r:ጆ 5sڃ%l1Ǐ}A㾳g?Dgr;j  c3~*?xS;qu\m'bV*Zͮ P-\z\iJOL7=ST \ߩ8Ub}ʂ.=vp]ɛ6+h6 >4} }10_ylK@_>]bTwMDQe[/E"za ϧˆ8Bۭ3֥}Ӆ n&T*y\;"SնnKUOc)#1i8ԫB ;3ӹYKmyרϨ V|>1H}6WH Lbyy3E^852*_SCC[& 3u;{z9 6Kբ|A>H"gCvQ`"#KInF ,q rvEtf'6+>6d`\.g0d ۩}#09/Vò<>Q)bNAX[Z5mPb΋JKs DYPQI*kd"\5"-;-c0pƪeV(zň ]O؁'*ןZ~-ٞAT},۝(gG-?Sn֔ҊtVHVgqsPiQmT[}=q2&&U"jt !/)W|O|Dx'[ԖؚpLKR+LTY9 z_6yQXd♢PMI5R_m,A6ʁcB+{D _X_iC]f=4'tF4Y<33sU\d`3y%C&Zz*ց^~x`f8 c]Ǖݐ+{+H/CٽE;P }EgLZaA,&AI.ïNѰ8. H`_le\r3ad>϶LTHww,*O#R_ϝ)EM\G%-EȰ`YEz Ja\]I+Lhl, [* NЪ=$ !ЬmAYؽ*|h"iȿsIMU9 IYc̳Hg'bn`EAX{1}"JNmb7U-A9c@&3(T m[#Cpwv_GېsG7KK DP]R/w)ria؎]ipWC]B {~D2,1&Cmx;RGKxm2Yiʚo`Tk)iQ,v.ɦ |𫴮\ AQx_!,@P,rPe :yX?+T&8 9͍ h䧲v]yr윜Lrk 8fx wVӂ':`H?Htt)-<7((iFL!y:,@ ~4 xLMp[uFRx$H׳ƞ/Šb$X<VA@ӪqT#{Xm0ssRw֚;|Q1>ԡAھ!g3*3q_nbe4kJprlhJxA-^y~,;kzU1^?TvҎbĮad jG}.k wvH#T%yxDUj!tZ +W?MiHljlSׇley>{b"嶘J oH )s@jnY^te^t\7U@pH]ױcc~5WU|wͩ( ]@|YE\tsk`☀zt}lWVIǼu-bzҁe|D>3b?(x482A8 SS C|P. M@D"0 "]KoAhN-K]GϥtG jyދY146$+$;SˤY:ͬC"݋*omkPߩ碸d*n؄q 㔽8]L_;g#/pV$0#IKc.T05p?wJ׮qh/W%BϗN|0ݻxvW^~9!(R꫙)D`ƞ ϟp N.r,> Kzvp k+D(iK]a?dqHJ0X"-ɋ1限*Y0m$/_{yVO _DN |T5'/s kD^}Py+gA[b:>S^&Cop]쩔A ;T1De/Iu[jjOaiZߎ9}aϲ䃄 M[ğ Tc'g1gj.xdR^ZF|S}k5,OİFvz&E1}ԥ;;3]+%xp,(Hpؾc:fV B 4 8p\iVK1_F rBuq,2r ?o5ֿ4)%'x[ׅuеHƱE & HJ^Ċy  {Q8Di.dşǙJ}jѸEWښ6Vx(4͊cV0w`)=$/_b{> v:BB\xTb9F'^s"|Mi'W:qs䮒KwAiOZ/cc HLjR5U$#;t}]S<^x/ ŷ@rR@Z(M7ʛxSN:I35PM򸓒/Gqv{ BƾcZ)AcX2יb]]t&bb0G /Tp,eaPi_zEvCr֐[{"ۍ Z"l^Y)ڵ S{NIU͸n>h6N S{dsj1M7r -Vh'4@y˯gq` zAX0P-#K&g8".yk5c< *RT^p5!@U(زԻZ^+q^隒p APɣug-./i='kZd9-#yMAXP֓ U_H;|s'v;c33ì8 8``hAЯB'~̞Rz4Kڢ?vKcZM6ٵ>| ]n\Vi%y w|/ 5@8dymU]L#?by] d B-u֜,buCœuQþ ]ۦ ]\պVGHXq& Dܰ^Ra-xFHˊsTH*S @8R5x s+>Ǒe0RWefG:''B01d& p9TGp{;Y^`)M0˜}S)p Q(!Kـڂ'VR,nݾsڻy4[N,sp+ 89wHo_4j=XV7O4 8nF Yhn=zL^ k;RKM,bjyѵ{nB_͓lt(-.ӎ,0a+,: ]@ks!l*:O"2:1j5 2>{jwhŨ$t/hku|E6u0;^#ndPr9NZ (ug:Π K% 8ⲽ H{NZ`"?Нጆ zB5CajA2NUo}B5ރ0d6&Ljز[M0p+3Q7sczcNC+sn#ːm6 tt$27G, Ɍ J4f@mc<|\zvp(e{\r&iP.,{x1ŅJn5) H> ]Iyz|3z;Q4-Rsr v""b1muHz& ],qiR ,`Εͯ{l;P@ɂFRTfI1~"ҙv4ĒbjWr㑆ȓxX!U,1p\E>/fWKX"8~om3Lw.C~Ie+uxẴ*eP654"I&[m%O޼L Ot*6JyV]_}(rsFaEЊ_& Xei>m 5% 9.#G"5f$u;%%Lvm8MT8uj%Z9\7&(0gAq!+@>5+7ulv>|tig)8|1z>-:〖JO~=ZҥFQO(~ s_%c3ϐ[#ƹOG6r`/a Q)QNXhԣPz'.BC7QKXk.9635T%vl d1N?jTxRN!V\\36 7c,oB+] 97}k.R4@Kzm܈ 8&˝}t!*L%\R*%:*ybr3gF YLF+hSyiL]̢KR9!KEGpP8!e* {6U3>u<,Ya\]ުvݰo"+~'Qmaho$ )H>eZEB'q0NlG:doċ>eX93n<2Hԕ=bEKRKwr{\!]" kMӎ;TedD2sVlw'?)vebl2u|+%Uc2D?;|6^B%_8_W+P>H@<`<4QFO`>4d} m s@eB~EÞYGP7+i9qgƬԠi:`Vlz-[Mt uRA)I;b'Tח"{ uNR|`LƇ&]ݳ`{pYspWՇ(EőXck< YZ