wlroots-devel-0.14.1-bp155.3.6 >  A dkGNJI%z ~iɦ H}e*b V)&yN`w4ll֏=rmT\sg̷5nq">[ُ qf<@O 3<.VX4^4A1.(ͣELFa*mbxhlMOV*~TyR^O÷PT%wjX|Z>)oG`1f /}X֜N9Mnoq WVn]}nSJhNQ L$?a7>fPx895dhx. \m}]u\#!jD }fdHnK`[|$vqãRkIs|4=>m)pJn­P 'f`=yCxvrŵ ʖH7s Qq[~|=RqԊ( 920ba191d3ffbfe16fb3cef4b1ae0d9e03ac10b8bd3e48e59b0fc5f17b003e951eb85b3c924c89ec019bc0b941572f858066fdf0KdkGNJI%z ϲH!Aٝ8rxu{[,{ .Lj޻׮k >-#];F3wK(dH~z'8/ w?9=0ݡsR01$vZ{I/MuN̚| 5c 1BcaȒdf@Y* Ba飚=lIC">yhW`7o\Dg2u_2tq!=⦾-4kg$ KSW`O*9ݵH&u?(  x #_*huS9`-`;3=MgX`7{`u-7:f_jqtpd;?BЦߖ!O-)?}iF0p>?d ! D "(0ff f `f f f ff!f##f%d%&(l((8(9)0:+FpGpfHrfItfXtYt\tf]vTf^| b}c~def l ufvw fxfy<zCwlroots-devel0.14.1bp155.3.6Modular Wayland compositor libraryPluggable, composable modules for building a Wayland compositor.dkGs390zl28SUSE Linux Enterprise 15 SP5openSUSEMIThttps://bugs.opensuse.orgDevelopment/Libraries/C and C++https://github.com/swaywm/wlrootslinuxs390x !mUH| D46@6c  +!7 <. X v\ ; S e ~\iq'7 I) :g}g11T1>} l" I0] HAA큤A큤A큤A큤A큤A큤A큤dkGdkG`)`)`)`)`)`)`)`)`)`)dkGdkG`)`)`)`)`)`)`)`)dkG`)`)`)`)`)`)`)`)dkG`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)dkG`)`)`)dkG`)`)dkGdkGdkG`)`)dkG`)328fbef334f254201a88acc1908b19d87d863e01c11bbd46fa60c4a537559da2567c7212023c6753f35c4dc1e906c41099c94afd5d082f9490785e9e4146219797728cbe9f9e935bc4d0d733ea46720422f0a3d7eb047f80bd7c3fb110fc2b6a40b9bef9c2c429ac5a948d6c74e480e37add7f85a7b3990fe76b6edcce1199ca4755e96ed5efd8376c4bb21fdb598e7c649882490df0d012e510fa3191ae0e75d58f219a29356d65cc212362efce824ee3c115e36a6d73c1bf9ce46c7edb7f276b5a104a80a3479da4fc856ba8d825710c4765482077ae80a56c2317ad11c7ad24f221ba3caddf8ef98348293fba11a4e1e9e68d6fd16b085613e07b90d72c5ff2c57802fb34fe62963a82bafd9c798c6a52409b55405ee5b3974660082cded163edf3303fb147ee6d0b0033eb29f92a751b48c900cfac12fc6709fab1575db39f5762d258a904eadbc3021faf3b57a9d88df506f3532f09ed21bd5053aeaee7c1c04ca1815082a2d93a52a92ffa368c85e7f5a5fbda3dc5ccf295089e1d65b9e4d69d3d82502741acf68517f30d9984c4700091d5b42e7722ee8bb17e2297fe78aede133894ee4419ca92c75fd51d6e5da6928de08aa798f083540a252de886b076e1e2f109bb14ae8f8199aed208cbfefc61e5d955e3779523a0cf7efe9ba91aa2fc0b57ada68d89230ec62341d43aa026aa882275b911fb0091244516d807f62ad6295ac095921cf68c061c8cca1a322eefd5c4eed10855667502a0fa65872d878e9f863cc8c5e3c78d5c867ea227a613670070e97680d9f1b1270465e3f7a824e92f52e7deb40c5d89657f4f3e0e21544da80038e5e2a3df6b1233fe7e7b892c5026cfeeffa669fb31011252d08207645e924c31c3b48e7b31d85f3602f597ce44145db46e6b691470c53feb43276d97ef29723d58de53a1054cd83c8276ca4932236e4e016f3638f4c3fdbf14fcbdd50a43954a009f09e8e0805c85f1cdc235850bb90b2f36f9eb26e11e78a8936eeb8c3776fc87b002bf8274a215139af7528d3096d58e2abbf0762cf3fc19461955fc790281ffbf6aece6db9411433d69ed85cbc93afa32c3282d1abdc80b81b526f6304c2a95d4cbe68c0ed112686bb1d4099635db420d9703c9e03ad5de1d97e8776dc1fcccf94221621d188637796e379fb65ff825cc762adb31ba7f17803b3f6454ec19efc5a34bc6a9f0891fdcddd998548f41f840fcef02d6939d7baddec4de8f2325e40314346976eb1428bd4397419267e1890092ea32a6c7415c400d4bca97b1145c62dfa2526f98a24852f31857ecbafa6c41f68d92eddd35cd962d630b2b5f4a7a6dee4d985a3c61c6f574b4a6dacdbec04e60dbac37aebe106116423b7737b58fa53c66a66e90da12aae087e6b17359172bc6b8f2c3587fb0b37a247cde3eace2f22cd9bf7970e0053167e579c0bc50f4fa405efc9665f19e53cc38d8d2a696d2ae747279e49a4fd5115ff2ecb8b1cd74dd49a3a339be2fd74815a7b6b05549da9634841515c52704e9045621ae95c82d3acfea293bb987354d980b76116227df7c79c1b9f8f7181311b05703d4df01170d241ab9da074d4fdbbbb6867a19c8ad9688bfaab59290303e28647aedcbd61e4a00f306fbb0859ef65bec6de10e6800db34b58071fd733d8cb027cb8a792969fef27c098d3f7da285b5559eb6c6e4e1261e204b291790751151e7152fe0036b53ebafc9eadace319c54589f5689329161b787e444fc7d564193e89dac05be74356a596fca4389467e4d1bfb3c927d74dc7bed6448048b8a9071cfcd167118475e3589aba53c1f909f7d5de4b8a6c8e9c145dffd0bf908e901041f0b2b7c217c964af330dba9de84d0043485206a07edd0536c914a5d9b6a10ad5467594f45e1b7cc14bc04d7b8cf7364b1c8ab8351287847a04c77ee0b73d0cf35a46e8dfa627a91cf7cbb21fa6b8434546fb27ef24b286c40eb528ed3139a71abe96c4d9cd99ee98763f65c46c43f1d10fc4e4712c99475ced4d0d2c24731aec19b71907eeb3ecac11cb40274bbc219738c05cbb7fe633d0673bedb029e2aa814d299c70ad548ee5a2623199f8c02b008ea435c0bcf7d74ece11b2d8c5946f371732ebf0530d26667bcf1a89b5ff1b419e278cd78b092d274122153596fd44f35792c71e76a128f61603ef587f092c16195456d4e57c01a3bbff8da4c15c8a34d827dfcb70aaf7e71f4813f9c03f0fd356dd4352d99b8586e8958e79c153aa43dfaab37222056887bfa75b9ceb5cde68747934cf9c39221d156b229b651261657dc04750db82af1316627969f3d7fccc052aac11e775759aad6b1e2db983b96f779391b42a9d08acba3e904e65047fae60360895aac796e5a2b8ae1311a1b19bb227b4a78a509b31406374a9a7a881f74d8384f743c1c87cb5e546d9554606d29b4f9df6879ed821d633a008beb66a49002e6802910087e407e0c972fb22d30fa60d436f7bfae637e76cfd06e5bcf1f496285cc1092b47d2e62f1a92e1d15aa199c94b4b4df08cffa6b8dbf3d42867987861f647e27c22bc49d5b46ce3630b0a9bb87d2141620891bf3032eaae18725e3269037e60a23fa3a9d957be9eb9e534c631f6b86a1268cac31c449829ee5ed357e3f445ae14a3c6e5d49d912119e4c16d858a5de8d0ed3ae5a69b934154baa968c9262f8f44efe9a03af7426f62e8fa332243b4898f74b81932a2f82e29371242f7aeee76aeb6881c7ede3008cdb51ff0680f35ea7fb1de784d454afadf053e9def38418ead87833f1d4b64d7c2827abe4ac9f399ab1017a30a0998863880aa9e2e58362aeedece4e2a22fd612032c3d6e4a75eda00f97a4267690d904e0eda1bcfe64983df4f70917cba0ff839e9d10ea7a4b74a625559437c0e70329c50322928847fb163111a6db02d827775c1f011aaad2883fdbbafacf6f8bf756230c8dfc182a7b068f165d0122fa0aada580b38a738e3aed3fe727080301dcb5369388df1aaf2d23ee0af2f297271d28db6f436a0be95a4b7a4f112209763293eff8fa95b3cf522c4262f35aa7ba4a8fb146579f6c25c07346fc192e6c47d2f60bc539cfdb3dfda3efe8afb46c8d1328d81ef81a61e5b0413814ce88351b4b11683b57ec8ec1dfed984330ec8334f58db14fa32bb0840f756ef1e0ff8152396bfbe1cf5295a5ff62a615d21e3a667e529a2bc69712f2f4738ed6a2969802bba9ce3311c77f6f10cb3ac33e36643e8e68c9c788709ab6502219242ee513c6eece46d67dceeae8d81918f6be00c77ebe54a5b872f5cd6b1a9e1f1de7cadac8c802527458f77a8de0c5df29b0026b058e8b0aa77fbbca48c4ade300bc97233403dce0e10c8ed85308b6307fc39a70c63f7f6990e016191e299ee1f497bc799cd6ebdc18febfaf195e8f314626e45b75628469a86acdae5e3dd5e1de36b7963dbdca978751a8312cfb5ca7cd483ee2509483a0090870b0281d2f3602cee2ee7957bcbf6a1ad312e73793399d2c4330885ef9478ee6241efd60b887beba79c4c39c4070e18f7152c350baeeaea0a7e38f078f5c64194e75cc0ac43a9710f66c96f0c4c020a254683ab9a30d9c72151f139c021ac9d0f29530b89b514d0e22a774df50051622997554319b3934ccf19565e0ab447fc99c1395b84a6ec8730d2160ebad17d8394856a2919ac542751ddf94bc9719ed41452f61784e5bf9dab299db92946e0a9e9c7c48448fd1c4e5745477389583736772b6d30f2242755dbe3caf272d12bfaeefc48760c0e0d920efb097865111b9bfccfc3f53eefdbacc701fb7e61c74cb1867d4671b3fb4ccdd1da38ac747c53098ff895737c1f35149357111739dbe77b0eaaa168a64dbf88bbb54b8c72ca5b599afd1fb68181a1b77be99bdcbbe4f999bb90be932581b0bd7d92ae7263d487966de1d2de5d37fe8101b3596f9071f039decb2697f5f998e9818746561ceddaf722a2a8116a97cb4c876262dce674538ee616d11a614c65a071c1600e014f68fd3232b51b49d522c646d9aa96dbdb359d8263ea283dce4583523f1fac7d87aaac4ae148207a9f809b3484793d489177270f3e8ecaa72bfd907147fc5d8cde68fc8c99b8173ef15f8399e581c02d3c88553fa3b06a8828cf4a04cf7b46f2308ffd3737a478b83a8b51b42757d3bf909ef36694508355879722e11fc1fa6736blibwlroots.so.9rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootwlroots-0.14.1-bp155.3.6.src.rpmpkgconfig(wlroots)wlroots-develwlroots-devel(s390-64)@@@ @@ @ @ @@@@ @@@@@@@@@@@@@    /usr/bin/pkg-configlibwlroots9pkgconfig(egl)pkgconfig(gbm)pkgconfig(glesv2)pkgconfig(libdrm)pkgconfig(libinput)pkgconfig(libseat)pkgconfig(libudev)pkgconfig(pixman-1)pkgconfig(wayland-client)pkgconfig(wayland-server)pkgconfig(xcb)pkgconfig(xcb-composite)pkgconfig(xcb-dri3)pkgconfig(xcb-errors)pkgconfig(xcb-icccm)pkgconfig(xcb-present)pkgconfig(xcb-render)pkgconfig(xcb-renderutil)pkgconfig(xcb-res)pkgconfig(xcb-shm)pkgconfig(xcb-xfixes)pkgconfig(xcb-xinput)pkgconfig(xkbcommon)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)0.14.117.1.02.4.1051.14.00.2.01.193.0.4-14.6.0-14.0-15.2-14.14.3aa`:@`s`@`n@_/@_A@^^ۅ@^j$@^h^)^[^,]e@\!\@\w@\u*@\X)@\N\J@\IZnMichael Vetter Franck Bui Michael Vetter Michael Vetter Luigi Baldoni Michael Vetter Michael Vetter Michael Vetter Michael Vetter Denis Kondratenko Max Lin Michael Vetter Michael Vetter Michael Vetter Michael Vetter mvetter@suse.commvetter@suse.commvetter@suse.comMichael Vetter mvetter@suse.commvetter@suse.comJan Engelhardt mvetter@suse.commvetter@suse.comrzl@l2f.inesc-id.pt- Remove libcap build option. It's not used since 0.11.0: https://github.com/swaywm/wlroots/pull/2140 - Fix x11 backend option: x11_backend is actually x11-backend- seatd is no more optional, see upstream commit 95b657ba80f6128eefd- Update to 0.14.1: * surface: accept commits with buffer size not divisible by scale * buffer: make enum wlr_buffer_cap public * surface: allow locking pending state in commit handler * Revert "backend/drm: populate cursor plane's current_fb" * backend/drm: don't clear pending cursor FB on failed commit * output: detach buffer from renderer before commit * output-damage: fix output swapchain handling * tablet-v2: fix pad and tool object versions * backend/drm: force linear layout for multi-GPU buffers- Update to 0.14.0: Release highlights: * Renderer refactoring work is well underway: everything now uses the new infrastructure under-the-hood except the DRM backend's primary plane. * The Pixman renderer has been merged, alongside new allocators (shared memory for Wayland/X11 and DRM dumb buffers). * Session management is now completely offloaded to libseat. * Support for the xdg-activation-v1 protocol has been merged. * For details see: https://github.com/swaywm/wlroots/releases/tag/0.14.0 - Remove logind/systemd dependency and use libseat instead for (e)logind and seat support- Use named source tarball - Fix meson version requirement- Update to 0.13.0: * Replace wlr_key_state with wl_keyboard_key_state (#2446[1]): enum wlr_key_state has been replaced with enum wl_keyboard_key_state * Use uint32_t in wlr_renderer_begin signature (#2433[2]) * Remove unneeded includes from wlr_input_device.h (#2470[3]) * Renderer v6, incremental version (#2240[4]): some implicit assumptions about wlr_renderer's EGL context no longer hold true. Compositors not using EGL directly shouldn't be affected. + wlroots' framebuffer no longer is the EGL default framebuffer + wlroots' framebuffer no longer has a depth attachment * Remove wlr_create_renderer_func_t (#2561[5]) + wlr_backend_autocreate, wlr_drm_backend_create, wlr_headless_backend_create, wlr_wl_backend_create, wlr_x11_backend_create no longer take a wlr_renderer_create_func_t parameter +The wlr_renderer_create_func_t type has been removed * backend/noop: listen to display destroy and destroy the backend (#2583[6]): the noop backend should no longer be manually destroyed after the wl_display * xdg shell: remove wlr_xdg_surface_for_each_popup (#2610[7]) wlr_xdg_surface_for_each_popup has been removed, use wlr_xdg_surface_for_each_popup_surface instead. * layer shell: rename popup iterator for consistency (#2617[8]): wlr_layer_surface_v1_for_each_popup has been renamed to wlr_layer_surface_v1_for_each_popup_surface. * Keyboard interactivity options (#2555[9]): wlr_layer_surface_v1_state.keyboard_interactivity has now the type enum zwlr_layer_surface_v1_keyboard_interactivity to reflect protocol changes. * output: remove scale/transform events (#2631[10]): the scale and transform output events have been removed, compositors should use the commit event instead. * output: send commit event after pending state is cleared (#2630[11]): compositors can no longer read the to-be-committed state from wlr_output.pending in an output commit event handler. Instead, use the current state and wlr_output_event_commit. * render/wlr_texture: clamp texture coordinates to edge by default (#2476[12]): the GLES2 renderer no longer wraps textures with GL_REPEAT. If you want to repeat a texture, manually change wlroots' default via glTexParameteri. * text_input_v3: correct typo in enum field (#2735[13]): WLR_TEXT_INPUT_v3_FEATURE_CONTENT_TYPE has been renamed to WLR_TEXT_INPUT_V3_FEATURE_CONTENT_TYPE. * Stop using wl_shm_format (#2744[14]): the renderer functions take DRM_FORMAT_* values instead of WL_SHM_FORMAT_*. Make sure you don't have any remaining WL_SHM_FORMAT_* enum values in your compositor. + wlr_renderer_read_pixels now takes a DRM format code instead of an enum wl_shm_format + wlr_renderer_get_shm_texture_formats now returns DRM format codes instead of an enum wl_shm_format + wlr_renderer_read_pixels now takes a DRM format code instead of an enum wl_shm_format + wlr_output_preferred_read_format now returns a DRM format code instead of an enum wl_shm_format- Update to 0.12.0: breaking changes: * render/gles2: remove gles2_procs global (#2351) The wlr_gles2_texture_from_* family of functions are no longer public API. * Remove xdg-shell-unstable-v6 support (#2391) wlr_xdg_shell_v6 has been dropped and is superseded by wlr_xdg_shell. * output: fix blurred hw cursors with fractional scaling (#2107) For backends: wlr_output_impl.set_cursor now takes a float scale instead of an int32_t. * Introduce wlr_output_event_commit (#2315) The wlr_output.events.commit event now has a data argument of type struct wlr_output_event_commit * instead of struct wlr_output *. * For details see: https://github.com/swaywm/wlroots/releases/tag/0.12.0- Update to 0.11.0: * build: replace version with soversion (#2005) * Fix wl_output_transform rotation direction, and composition (#2023) * backend/drm: add support for custom modes (#1881) * Introduce wlr_client_buffer (#2043) * Augment wlr_buffer to support swapchains (#2044) * output: remove wlr_output_impl.schedule_frame (#2046) * output: replace wlr_output.damage with a damage event (#2065) * Implement the viewporter protocol (#2092) * output: introduce wlr_output_test (#2097) * output: fix blurred hw cursors with fractional scaling (#2107) * Texture improvements (#2139) * xwayland: split server (#2175) * Make wlr_xcursor_manager_load() return a bool (#2195) * output: make wlr_output_set_gamma atomic (#2196) * Allow keyboard and pointer grabs to hook clear_focus() (#2217) * backend/drm: atomic improvements (#2238) * render: choose DMA-BUF texture target via eglQueryDmaBufModifiersEXT (#2255) * output: fix dangling renderer context after wlr_output_preferred_read_format (#2292) * layer-shell: remove unused surface list (#2309) * For details see: https://github.com/swaywm/wlroots/releases/tag/0.11.0 - Remove 0001-Declare-wlr_seat-globals-as-extern.patch: in new release - Remove viewport-implementation.patch: in new release - Set -Dlogind-provider=systemd- Add viewport-implementation.patch: To be able to compile sway 1.5 RC1 which depends on unreleased wlroots- Add -fno-common patch in order to address boo#1160244 * 0001-Declare-wlr_seat-globals-as-extern.patch * https://github.com/swaywm/wlroots/pull/2013- Disable logind support in Leap 15, we don't have systemd >= 237, neither elogind.- Update to 0.10.1: * xdg-shell: fix popups rendered outside of the screen * meson: Fix protocol includes for compositor examples * examples: Fix compositor-examples * xwayland: ignore pointer focus changes- Update to 0.10.0: * The RDP backend has been removed entirely in favor of solutions like wayvnc * Code cleanups and bug fixes- Update to 0.9.1: * virtual-pointer: Actually use the value passed to axis_discrete * xwm: allow applications to change focus between their own surfaces * backend/wayland: fix frame callback not registered- Update to 0.9.0: * layer_shell: set layer of existing surface #1842 * backend/drm: add support for custom modes #1881 * Simplify globals implementation by removing destructors #1915 * Improve presentation-time API #1919 * output: re-introduce atomic mode, enabled, scale and transform #1797 * See for details: https://github.com/swaywm/wlroots/releases/tag/0.9.0 - Changes form 0.8.0: * presentation_feedback: add the sampled state * See for details: https://github.com/swaywm/wlroots/releases/tag/0.8.0- Update to 0.7.0: * backend: touch: Assign good ids to single touch devices * backend: touch: Fixup incomplete patch for single touch devices. * render/drm: keep old drm_format if realloc fails * xcursor: avoid leak and loss of all cursors if cursors realloc fails * Fix memory leak * Simplify check * wlr_surface: condition is always false * xdg_shell: remove variable self-assignment * backend/session: non-void function should return a value * backend/drm: use UINT64_C for uint64_t literals * Avoid loss of a fractional part * backend/wayland: check if zxdg_toplevel_decoration_v1 is not NULL * xwayland: prevent possible array overrun * examples: remove duplicated condition * Use a set to track pointer button state. * session/logind: keep active for pause_device gone * zwp_virtual-keyboard: fix mmap error handling * wlr_xdg_toplevel: reparent on parent unmap * wlr-layer-shell-v1: destroy xdg popups on unmap * x11: Send a frame event on the pointer after button events * virtual_keyboard: Require keymap before accepting keycodes * Remove rootston * Add libinput-1.14 support * Revert "render/drm: keep old drm_format if realloc fails" * Add _incr_version to contrib/ * Support pointer-gestures on Wayland backend * wlr_seat_touch: Don't destroy touch point with surface * layer-shell: Remove unused event source * layer-shell: Reject requests on gone surfaces * text_input: Don't forget to send enter events * output: clear output->damage on successful commit * output-damage: set needs swap only when we have new damage * session/logind: specify seat exactly * session/logind: check for XDG_SESSION_ID first * screencopy: fix segfault on disabled output * screencopy: send failed after output disconnect * export-dmabuf-v1: fix segfault on output disable * Implement serial validation for selection requests * wlr_seat: Fix edge cases with serial validation * wlr_pointer_gestures: Register event serials * wlr_tablet_v2: Register event serials * wlr_seat: special-case first serial set use * Use -fmacro-prefix-map to strip build path * Fixes #1689 RDP RemoteFX crash * wlr_output: remove idle_done on output destroy * drm: legacy: issue a NULL modeset on disable * backend: drm: switch to pageflip_handler_2 * backend/drm: destroy output immediately * Revert "output: atomic mode" * seat: Move focus back to first shell surface when unfocusing layer surface * xdg_shell(_v6): Take maximize/fullscreen state into account on view init * wlr_touch: Declare wlr_touch_impl usage as const * backends/x11: Touch support * wlr_input_method_v2: Remove input method's resource from the list on destroy * wlr_seat_touch: add a way for a grab to ignore a touch point * wlr_xdg_popup: grab touch events alongside pointer and keyboard * wlr_xdg_popup: don't treat all surfaces of grabbing client as grabbing surfaces * backend/wayland: use xdg-decoration-unstable-v1 * backend/wayland: remove wl_shm * render/gles2: print GL_RENDERER * Remove orbital screenshooter and gamma-control * backend/drm: check format when scanning out DMA-BUF * backend/drm: strip alpha channel on scan-out * render/dmabuf: add wlr_dmabuf_attributes_copy * buffer: add wlr_buffer_get_dmabuf * output: change set_dmabuf to attach_buffer * output: fix attach_buffer semantics * output: save buffer in pending state * backend/drm: hold buffers while scanning out * backend/drm: reject DMA-BUFs with flags * rootston: add support for direct scan-out * output: refuse to scan-out if software cursors are used * output: introduce wlr_output_lock_attach_render * output-damage: support direct scan-out * backend/drm: fallback to drmModeAddFB2 * backend/drm: add support for multiplanar BOs * output: reset the pending state on failed commit * output: remove wlr_output_impl.transform * output: drop wlr_output_mode.flags * Remove all wayland-server.h includes * output: atomic mode, enabled, scale and transform * xdg-output: add support for xdg-output-unstable-v1 version 3 * backend/drm: fix missing plane formats- Update to 0.6.0: * We have removed the long-deprecated wl_shell implementation from wlroots. * output: refactor frame submission API * output: remove lx, ly * Rename lid_switch to switch_device to disambiguate lid and tablet mode switches * Add FreeRDP backend for remote desktop support - Remove wlroots-0.3-libinput-include.patch: not needed anymore- Update to 0.5.0: * DISPLAY is no longer set automatically for Xwayland * wlr_output_layout_get_box: handle empty layout * Unbreak build with '-Wstrict-prototypes' * rootston/view: Remove redundant declaration in the same file * wlr_xdg_shell: Remove redundant declaration in the same file * Remove glEGLImageTargetTexture2DOES * seat: fix remaining wlr_button_state enum rename * xwm: use min size as base size hint if it is missing and vice versa * xwm: fix typos in WM_NORMAL_HINTS handling * backend/session: Allow setting a custom tty via WLR_DIRECT_TTY * backend/drm: Don't fail on failing to find overlay format * seat: guard against button count corruption * meson: enable more compiler warnings * seat: use wlr_button_state enum instead of uint32_t * seat: only store serial if pressing a button * tinywl: send pointer frame events * backend/session: add noop session * rootston: refactor rendering * rootston: fix rotated views rendering * rootston: fix Xwayland children rendering when fullscreen * rootston: split rendering code into render.c * rootston: fix input events for rotated views * xwayland: don't set DISPLAY * seat: add debug logs when validating grab serials * backend/session: open TTY with O_CLOEXEC for direct session * xwayland: set CLOEXEC on /dev/null FD - Compile with -Wno-redundant-decls See: https://gitlab.freedesktop.org/wayland/wayland/issues/82- Update to 0.4.1: * rootston: Make add_{switch,binding}_config static * clang compile fix#1572[1]- Update to 0.4: * xwm: stack below on map * drm: do not modeset to current mode * wlr_output: do not modeset to current mode * backend/drm: fix modeset on drm fd resume * Make popup inert when destroyed. * Add build-*/ to gitignore. * Revert "drm: do not modeset to current mode" * Add a wlr_output_set_subpixel() * data-control: add primary selection support * Prevent NULL dereference in tablet_tool handler * backend/drm: fix memory leak in realloc crtcs * backend/drm: Unset cursor on cleanup * Post protocol error on invalid wl_surface scale * rootston: don't try to maximize fullscreen surfaces * rootston: surface_at: check for fullscreen surfaces in between TOP and OVERLAY layers * xwm: Add _NET_CLIENT_LIST support * Allow cursor render surface to be used as fb * Copy cursor surface to secondary gpu if necessary * Add workaround for hardware cursors on nouveau * data-device: destroy previous source when starting drag * xdg-shell: destroy child popups on unmap * Deprecate old protocols * primary-selection-v1: copy from gtk-primary-selection * surface: error out on invalid transform * subsurface: add map/unmap events * xwayland, data-device: fix surface state on unmap * data-device: make old offers inert before sending selection * backend/drm: fix NULL dereference when unsetting cursor * xwayland: don't use SOCK_CLOEXEC * xwayland: remove remaining SOCK_CLOEXEC * data-device: refactor wlr_drag * data-device: fix drag cleanup if not started * rootston: cancel drag on invalid serial * data-offer: send WL_DATA_OFFER_ERROR_INVALID_FINISH * data-device: unbreak wl_data_source.cancel during drag-and-drop * rootston: move part of desktop.c to view.c, use an interface for views * rootston: add a view child interface * rootston: make roots_view embedded and remove unions * data-device: check if there's a source before sending dnd_finish * Allow compositors to run as systemd user units- Update to 0.3: * gtk-primary-selection: refactor everything, untie from seat (#1397). Various properties related to this unstable protocol have been removed from wlr_seat and wlr_seat_client. Use wlr_gtk_primary_selection_* instead. * output: switch wlr_output_swap_buffers damage to output-buffer-local coords (#1403) * Standardize the wlr_box input paramaters (#1441). The destination parameter is now always the first one. * Remove wlr_xdg_surface_send_close (#1461). Use wlr_xdg_toplevel_send_close and wlr_xdg_popup_destroy instead. * data-device, primary-selection: add request_set_selection (#1402). Compositors now need to listen on wlr_seat.events.request_set_selection and wlr_seat.events.request_set_primary_selection, then decide whether or not to accept the request with wlr_seat_set_selection and wlr_seat_set_primary_selection. * wlr_seat_client_send_selection has been removed, this is an internal function (#1427) * wlr_data_source_finish has been removed, this is now handled by wlr_data_source_destroy (#1427) * wlr_data_source_cancel has been renamed to wlr_data_source_destroy (#1427) * Compositors now need to listen on the wlr_pointer.frame or wlr_cursor.frame events, and call wlr_seat_notify_frame (#1503). If you're simulating pointer events, you'll need to call wlr_seat_notify_frame manually. - Add wlroots-0.3-libinput-include.patch: fix include- Avoid pointless scriptlet dependency on /bin/sh. - Avoid double-shipping documentation.- Update description- Adjust spec file to not use git but version 0.2- Initial versions390zl28 1684752305  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdef0.14.10.14.1-bp155.3.60.14.1-bp155.3.6 wlrbackendbackend.hdrm.hheadless.hinterface.hlibinput.hmulti.hnoop.hsession.hwayland.hx11.hconfig.hinterfaceswlr_input_device.hwlr_keyboard.hwlr_output.hwlr_pointer.hwlr_switch.hwlr_tablet_pad.hwlr_tablet_tool.hwlr_touch.hrenderdmabuf.hdrm_format_set.hegl.hgles2.hinterface.hpixman.hwlr_renderer.hwlr_texture.htypeswlr_box.hwlr_buffer.hwlr_compositor.hwlr_cursor.hwlr_data_control_v1.hwlr_data_device.hwlr_export_dmabuf_v1.hwlr_foreign_toplevel_management_v1.hwlr_fullscreen_shell_v1.hwlr_gamma_control_v1.hwlr_idle.hwlr_idle_inhibit_v1.hwlr_input_device.hwlr_input_inhibitor.hwlr_input_method_v2.hwlr_keyboard.hwlr_keyboard_group.hwlr_keyboard_shortcuts_inhibit_v1.hwlr_layer_shell_v1.hwlr_linux_dmabuf_v1.hwlr_list.hwlr_matrix.hwlr_output.hwlr_output_damage.hwlr_output_layout.hwlr_output_management_v1.hwlr_output_power_management_v1.hwlr_pointer.hwlr_pointer_constraints_v1.hwlr_pointer_gestures_v1.hwlr_presentation_time.hwlr_primary_selection.hwlr_primary_selection_v1.hwlr_region.hwlr_relative_pointer_v1.hwlr_screencopy_v1.hwlr_seat.hwlr_server_decoration.hwlr_surface.hwlr_switch.hwlr_tablet_pad.hwlr_tablet_tool.hwlr_tablet_v2.hwlr_text_input_v3.hwlr_touch.hwlr_viewporter.hwlr_virtual_keyboard_v1.hwlr_virtual_pointer_v1.hwlr_xcursor_manager.hwlr_xdg_activation_v1.hwlr_xdg_decoration_v1.hwlr_xdg_foreign_registry.hwlr_xdg_foreign_v1.hwlr_xdg_foreign_v2.hwlr_xdg_output_v1.hwlr_xdg_shell.hutiledges.hlog.hregion.hversion.hxcursor.hxwayland.hlibwlroots.sowlroots.pcwlroots-develCONTRIBUTING.mdREADME.mdwlroots-develLICENSE/usr/include//usr/include/wlr//usr/include/wlr/backend//usr/include/wlr/interfaces//usr/include/wlr/render//usr/include/wlr/types//usr/include/wlr/util//usr/lib64//usr/lib64/pkgconfig//usr/share/doc/packages//usr/share/doc/packages/wlroots-devel//usr/share/licenses//usr/share/licenses/wlroots-devel/-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:Backports:SLE-15-SP5/standard/82b9e2ab75831ea8edd76787866cda9e-wlrootscpioxz5s390x-suse-linuxdirectoryC source, ASCII textC source, UTF-8 Unicode textpkgconfig fileASCII textPR RRRRRR RRR RRR RRRRRRRR RRR-eLrZ0Jutf-8de0be5a8bfa2369240971729ae32f91304c3874954e23516a591b3d6019c8582? 7zXZ !t/WW•] crt:bLL ؝-v,otjX/j%K+2*&/$FKxJr?Ki ٵT,H~v0+Ex1t'h GY3 {[>Hz *ƀdGJ8YkΜ1EU8e)ѳm8ud#|C4eNxEެ\Gx3ѷ5 ւY8*ϟ.o(S,DݟJ Q% +)CF }g #|e±i܊ؙ@ĉM1c$n8sr VD6ҧ3Q[8k*~g`Gʖ_#3|3DĐޠ6]:fR FS/7eŒ˄f$>BQ#vQʭ7xΠ[6x@>X'D\[r[7Րya@_Gw K3ߊ/blbIًe1H[l23'(,8JB(X-(Hc=Bzq4XΖ%JlT >ʕ^;,\( 0}jhCĈ q!Z刀/o7A l]Qo~21{ài„,*~KJRD( }gyLeSБlTVok bIN6 #jQ]KZ R8wꐠ=7Z U(`ϻ6F0':*ŗ=c,iZk ݁>_tn_&tMg",6Xq=tXl2ڂtK7ЮA)@ 7_#;њ ~ ~75~-qcgMcG5mBܲ7H[ȮKJC@^`Sg";அғzDh:$(-M(Ÿ.:r,P<vE,6'i\47Qِ%Pm81 "g+Q"=BAg0֘I}EP~GnLdD,)qˊ)](*8 #t |V5삊rxoc%[ RTp|"\ |Վ}D cǮ`+ߍz TC[ ft9#)HC넃筜\gF\oG2ic`+n]EIܷD}{zZ@ A věl."w;LAncT=HL#& ˕F;(vЈML$j&qBYK0>HYo)bqElH|!LHS2tLm'@I [NfRz"c8"5 |+aL@CDSl[6@}GΉy NeHSzY0YfЄPG_ VQ] :_x5`/eQ)<s3ga%H/nGwaǞ9z@) Z5sau8v];A35'!O[}gB+ޤvP |н-Y.˘ Tc5{'ƹ<ǿ?X\FEn\^)מ@?Fki*#/IO H}yQ0IUBT1?/#01[ Ha`i33lGN_oefe-zMMCtUZjggL/h, I ߵ\3aEId@;1Xx:cB̽ ޶DIzN9 ^5+.c7)Ϊ3~~_uxIv{B%_ [@h(R*kaE8:vТ瞞(n0jn4=f!ٱcNH)t)݃dNhMz\EJ7?p8ȕ`3 e D~E6B6vv,KѺbH EӘ8fN,zF=)d;/'r >+3pGP Y2a0 O6*.ǃng!B4]S*]SJn:ZyTVk;5]Ee͹༂InY2^W Ury"<.Qj#$f\xOգzq`"ˎvɁ$Ɗ  5|:aydWҕzr-ن&kF I]j&q_ewt{~ _PwNU,3 y^p t^ r7B|yď3"΁w7K4J1;hůHǰ谟Xj. m{Q|~aoR#Ocn lL7eWp-t6erɥ"DS!0vM9MY!ϨP7lH{݇UbضEn枂g0 ШPօ2Oxŏx'a zlz' .xb30sK/tBPQRKY8 gWEZ(}c[L8a{޶hDxZ\+$CUKЎmmOD쥲v>nhyu^Lx)؍#HSV-$@zj]:wh$u:\<_ G97 4O0L/F2Qח!@Nn6z_c֩Z6Do~.P]/ɉMox`7e>evS  s0Vo2k\躳58{3dn OLiǴl=z`3$p,KC1Y׸M:#g,MeX_FpB%Ù}jN+uR$36B~:H ~XU'7ˆn /!G:(8< ɋYxFw9d8G: roWzo*CGQ3@/0 |0[" },x)NB{M  YL\>< `F0z4[=aSn7GUnG\⵪rH GB)'X.^:풂:ǂF F#ud Mx<*-ާ2):R~3у<@b~w +k!Re=wWX?3Q3X}putA O%NLf _bOttOu p[s6cU*m2S3}L BN}x#XB]f)1FmC~;.Ycn[|-: 9F" ?FKk|Q4U'ݍlVȿg)0 +CmհRy_8/PG+@7:uw}/3=m?+  {:?Qw.s:,tRý{'N|.ww8]cr=?Cy{ !m\j@؈lωr0?i `&=j6V1p$L'ӾH$.밄9E1vDj (m1a˘?fJ|+=Ϥ:lBHfſRtMsjôZϪ.ȣ!"}|yMқT '4:f7Y_?r4O3CN6ڜB6a|Ɨ\5R~-e|wu_gOAS Q N!,Rg-*TD CgR=p?L<8LnVz_nNRӜlFe>Q8gpriJ[IIڴ3wvim%C\XNܝ8)#+wZ Ѵֳ # hbӤJEy/Ť{*H&|6'KG =ze2 o\wʘ& @聀AU$@i[ŴHZ^IH@Slj@B&Κ]^ }_6 wPÂy@G .͉hFUʈ5(OᨲcĥmFY݄l\ea,řǓv$RĻ}SEoOR>P ZFD_E xCaϑ|aLֿ!48*myKR&MI;b$t42y>BsI!tU|-z8u2PؘчUnBXɃFB{ 8)-<Y%6/ܨu)ucC5^Xק>Ea]o"LlMߞLsezL $bݖDſЋW__$EƬwm|tDBR)u֤IyDBqMD8}GP[!*Lև2cRUs dxkyGAqqa%G Yv*̥KҞ;&tLvԽ:@ 9X+x]r氹%h&6.Bؿu)ܵ{հ9sO['ba^J3]߮5Nv2u;_Awr#,s`[*%EE/4_buq̿2!d4O Ԉo6cZT[rTJ%X>Zسd-fKѥޅmWsE25$43rV }k-^P$9Nrm4BSq`ġkt@8y͝H+ѵ {3}T'OظKU>H*&pӖQV汞:tہqRt:xu|TÍdW\]{aجѭ[BYfi+w`:Ȉ}L+B&o4r>N&Y \ogB^(zHh+0E,Y-DyQ`t0;/o9ށFvA>ox'5 ޭٰԛL}V0W߿|DB.eO<9y1B0h4f.U `o%M&#&'Uydr,ӧ&Ul.G͒ۆԝf~j&3)>s7סC?aU04x_T,>9 fi&fub-1LU@pxEauL5f*+rfu4KAl=.,KhJ)% &r-i·0Ē*ՃUzto( ˬm l‴I4ŤV_>qj)q?a]B rXՃ{Fضo1K#qngfu 0!\?T1rE S{8X۩%qhl+ /JJ<\} +睞GuhU9 ᶾy+k=Dl]xCJƋ7]# i HxԽ)}bnG\q>< +ZTw7#5q{k[ ja[jlj,蓈:P_N/Zts˛uq|*8Mwupu`KPW5Mى{4S"(*:ׇ?".ULBxUϟ: X$K{|TnZxHN P;"l`_][ɼ8-pg7͞0k:N~ 1ޚoK[a5%Et$wJd HTSFLgZhCg+)PLⰃT9u[J7yC.|jBCw =]RW幒h[Mђg9I1'ΓhBYn[bײ@{dXq9w 9Y6&sA )}fc>-`F*:rZ.;pdipKX?XV`5" U&ÙMӍD|u?S&/z@W/y7<T†tcuťP'o=\#ƅg%mϐ^i 9+W\g19% рvvpEX_aXKdfad7m2u%ذse[2 HWLz`Yy@r+|p9CН=%=,j5q83.-L ?CgmF?LJRKc@/y 6o @>-jq_yMfWw0KN Mhޜrn!anɄ?\T\JUsP($>8yvM@Y[%\Je!Cݨqvє'5fه--^-an ml r)zC61 @U,FcU~x9X_G Ez&ԠV,6:tF7!GG 9,7$6O 8ԼmKFt607TqHv~a B% p hie`9T4(0i{S)sR&NN$?pnn:qzp艽x uxo%ŵP,hL;_J{"-SuvvI0Ct8;@IdfkU6r%(T8-A_luHrռG༣`͉ n?P)cx40b}YϻB _S/"]zε*VA >u/ڌ%terPou^z00D-b\-:|3 ƒ\Jނkds ɺ_jMM,*~e_In^ .澍OV}iN 0v7HtnǺ(-~9}a2r7- s|MHwMFeE"o>QWFRJ|ytY`fC5O^uw+!^.m6.#ʚ|>[/*˕/i@:P$\ȥ<#x1^vpa$Q?z^6i-Ҏ\u~TMkv.RG DhQrqO3?5ְJА:JR/A)s2 rJܠ < m~[2bTޔib$/th'0H6QI5 \*KO#ս^m/pYؓ9}]XHu+Af~H$E@k'WJIYЊ1>au2ŔHRI]3h/M̯9xNGߙ/'&H˙-pz|ρf? ٞc(s Y4ڴ/ Ь-,ࡅ}溜ͥ-v ;ln5Ih!̭Vi':{7uU]2GBT\ceEjjAfbqY_Z&gLuVˮ0V*THb.N?>QTJ˫NR= d:^rVptlOk+:qe)KSkogl^LmO̎JK sZd!rRӾ,8%f1`NF? .T`}TM\8o ^T}BL&DsS2Wu?/a4[e2~.<a!e…n=+8s=쒃LtbNv_FeƌI:,,' CdZ"Od y8K`0&gh.+ ;QJ?2;`o# ҍW/f<]ԴUT]@\ ʼX <ץTEt^n[' B{0_,34Dg—fWJ_H焻gY/ʷpy(ugl5 * -7xi&*k DF|Z,܉t5J_~aNr& vW D!j SӬvd~D!: <*ؾ[m{9 as3[R#$iߗm O7k\$ kXV'Z "0+ukJ\.*-M!Ǫ/򿈙 @)#RBB>Iݓ3L0γUހýgYT}@E`7eQZxMX2 1M*e"^~ ?\ǿ7z.J[~w /V^(DA,Z}F [7BST5R#lsʥ SȖ󐹑`uԬg ^( ^.?:<,;F|rSRa*w6%G8xH@͑"WdKϣXh1ݬy1'l.B~HLF%9 ୮Hk1Ò1RfFȣ>WhK#ÈnVɗvz` :$$K܍ CF+u0%8:lm'XOq mH1V A^yC(𗨖ۻH\ R[SMcÚ2 >= F 5j@UT"h Ik$C;dІ/ 񀅚n|15'f G.%+2(7' CrBAFY/񶚲&\)>DҚܢ$=VڵL[ϐLא@Ih m1"m-ABUN-XlFZUm&h_1=ҞrU>cL[tr]^++FGz̄6\_yXtfDQpa8T q\<mpP_i`)kfYTJ-ήX*MfP]}t Foآ5p/LVCҮzX;K7I"j4O<aӆZ29T{2a e3TK!JSHxl/_O '~'@D#Gȝ՚Q$2YoXUޖ19ly?#IHZSjx-ˀ8` 5'ذ$fǥuOPr+(ACp:pS (,Kh>Aލ\Jϫ8y~!b@-_h0I10ƓM?|O''I-=H\B/Pr RUnpϣ_3[D N:,ŒeuL` Yhn;$|Q !m&-o\"}+"θ})HI>ʸV]vL)YyV}١ߦq I]:F1ʿ;{*xJm%N{AODS7~9`.N &3\F&Y6.^qhYݏ+ԥ븢 >,NS'[ӑ.0AkCÀ74`l=Vwzo '4AEAlL"1jYN@ 9"8h܍Cߕ2,=%;7 Q%r ZY89\گ\84q?^pM9 }[+S rezO|mN O?!P4,01vO2k>b[ĤuȔ"0lT)׫kK@#S{M*^/bpv͞O{n`2Qy 2_HϕY^7/ ryF~z炍\)ߣjp KZK~ۆU:ܟ4J\к[2d+Ut_z[p"?+ہ/.kkboyBNx<7Z򫊒;^.W)E%h*xxGQ18RC&>[Q= nb/)N" Ϫ18[fhJNح2)rD?ג:ik?}/Aϡ6Tq~B*00a,/BlOg 1"|j5?]ʅ*墍(˵ eƝ`v 55K:tF-Y4#:iJx+x{vUZc@C# 3/Epo6 CPc ?~'̎NU§xG([uC\3"y&|Y帏;)5|3DWPKs%}Ԕ)3CKt%rOj7B~T>W}w:܉OlߧQM{wdЮOvcLߙ(ٸbz+*[II&{8H#7k5^J1>V[vdBɖ '*n658shL }/MpBA޿m$הEf,!dy->26 2j0SkS{/#EiN8ۈ:-9ĽE, &a/~X[P"XRB_ 4KHˮ_N\zsȞڷ5-?jY2W|/Ge HPopB@JZ|R,VڪkqFf\;1YHxErCedº R2 럶Ap;EM>*Foxg6&}t~7tLEzZHxa_)H(zp:A^PŴ>rt/66T8XNƂ W =9hO87ҘĽlr aCqΠ m>F:o;\؄/pyB?ܦ;*G8PC|ppE;6kG\80ӞEXz~O{4mDM3P,web1}܏pD,2EsRgX4$1Zӕ dJoH4xЀ^ %sN?]]ZHW.$+l4tKIZhB2=9U>GW~s֗u&3mpc5*gW.ZTD xbPX$)_[0 Schgg 0ӍLRhh=%Et笶G4.-imp]@i@B E?Yy;,xrQk5O; Y?+ ԛ Ͳ|+fqsj6bȱ}d%b4"ZASj (ؼD{ hB"eɢAw iD'-D1lT7\ H Ud!0.}P܂=eX+Y.tsk .={[\ 40 SkXVl߈Qwf?Ab}Iq0c`)۞O˭g]SvAQB%ٲh=B(ីj<MX\:mX7Y>N`# :EW꒻Svsn[@&RGv!}CF 8ӝf>&wI@tO}\̾n@o*jgyX7ypI_۝+g9/ZI>no3?I.Qs5NvbN%.zr)@/v#5˛Ȯ2m +wCjz1`zL,TqoFŝy+e]um B253ߏMUK:c%;!BR3R)?Qn&=h ~i rJK__]R9~3b;mΥ!W^cH#pݪ$-9Sgv9^Rj\B;`/2*O`$C i|橏=pޔ+ ZM@;cfŃ K&E1~t_8{Ǫ4g*|lid$ ~aj#3a3jPN[g^5h ž#8˼[#0gmPX2AV9}"| eYпV-&%t\*9I0_O\"Hd;ONx8"g󄝪=EpQzj%3wo%x( ^4iْ{د'a#`D7~=>:ߗU<1X'ϽkҍԐ— d-#8nixv0ƖBLybu|xM-A(Ȝ%*cOIݳX HJ)@au-TZËܴFH\'~<^1q3`zXjaȽ uz@< dYeOxuuE#O0Coz_C*2S2U*\HDR;~+«KH-)puUdXx׋"lXe%ǚI0mMϧ "/w \ ,gW~Đ=򚱼(dt:Fї!YM6|c$#23{a/YwcE߽ 'Sġ*C[R@z\W'OVi(Pu(Tpgl]֥/F蕇}UB`R3}:VCQ%Щ~=5R o`=7 $˔}\t5@?>C n ßn`۴lKmhd'% EZNzVe#dڥ`C#j8yGacE@ԅY1n{R&D5:Gd YwZDU`XӢXS5$ey/~"g!Βm+{%&V, ;h,{.% YF vG vL*hTn2qn6ոEK-ZzRՒ% 02|C@e62ړxG]_ $X<>,<ع!;$TgD}+p$<_K7PZj*~HD{Ӝs"6"=h<(pu};ki?jٴHW;åEz=S4 7԰xr@_6Oprol f^bլ;5UA{մ"(o› ¡  n-ppQ}c:@Wkβ˽D[]X黡>n' ? \A =i1I2̈́Ykqq=?d4fưa;IL76\h|x\åDa_ݩE)O(?ZHneEJ lp&+h0fY<7,<LҊF:rBԁ6\0y5]}AZe'g]fG}uNm -ӿǨB0Xݶ|@bSx?Ŭ=VQ(xn# "˩Q-dl}6$U͎ .oyY (^?9=6!c[+AxyH7^k0*דvhPL;H^L,ΙTWȴx`/o0Eu<Jvrڸh1nw+(A*b9 ;<;qls9 }u@ <(cnt5:ǣLﺩ%/Hz$q(8Tf6q߉R_J]?>]}|4ٙ2B/L;/`Z^s{eͧp;3P,ədI= " ?4 vde ;G{z?,{-#qיXJHxPH7tbNeрu# *T0sAu)&5|0c,Y y%{N-6Z75_\em3{}vpٹ Qwl<~󎰋RMML[@,PC3V`?ɍ(E8gH}.>pó^8wܨ+ 0-.oMUgdN%ĄR)֐0q)VdoG\Oo4f*3'6jRl݀9lFRZ :PMjC"6γs72t֌І nŞE#ZdfY,m$NDԸ *jyK90QHE ˃.K{`lx%d mEF$@O򒘯0 ܼkzwPv,fFH 8!<9uDvrSklDNU#vubE:8I89 VP=k \pj`@;qKMAmn |֐R(bǨ9>!"Q*@ ]\SzS3BʧB3qJpBגPCrcp֔l G'Ģٽx_^Ϩem@Q7Y^dGTxy,O- ȟ܃u#srX@ytw4ZVTr苚DN ˽ 6.~KZFO&wl@=#FOש:$C= EH.;܁~hTQ12#D\ֆԗ`B .y@FLG*w ʺU;\q+ޙ瓫C #v'Y48O@:TPlD~8=oOяEDՠFZCd->LkVi \}[~G;b2tv F.{pR'Y{%n?R2+!~a&bаK"Jo欨p)̃T?+ǿĕh!X{֧G),#id9ٞLv4&j#{ZnQc 4#0 ^'Gz7>n}le._YA1С#l>H)a\6VUhwOssnؒ*_6?Aɔ[U ~h`m9peq"q\i핵xfD^UCNb<&"O#Ip]i}/'vd 3 *oblseȟ(P|EvGF1v&"02ӐܽEds^2 DMd0% /pi#!_9>:8/iY&YJUU09/b~g a1e}{׌5sBx?n[]nUnWPαPkǥU$`45JRu儳a,Y48Yz`M "kf$ɏQf~MW%Fr"i`ۚѶ ?I%*> Jj`/ BPz_4FW6;dϝQNMsXaR]8gf,s_өǁ(yM-]./Y9D/֨M6"u;lcl_l!^sXhP("O鵋C`hw:'z< elv9CfY02  41t0@JZ] S=2D +j[79w@R6 ?6KZÓ(e~Y?حԨ6g" 9CsתǗD&U_(G5[gȴKaH(18QCb+=Tc֐*t d+tt]˦^/r \<>>%lhԤ&@xx-JXYhcH\[%z1OE=> RF*t y CZ gMzΜ"Q T{+fsܮ$-]0 jJOOzXTa^^@L}*F k2KH-df!=ʠ%U\*eM_qQj%o|UK%>*=/7H0+Dl صH&ݴ2/#dPW3>Rև I}Q-P p_RwVп}PA+jo}j3p]%zn@<>u M-bk_Vv@L :Yu䔈ߌn[g+O~A M\P踦1T25w?f0xh*l[SqGƯxXqnPꝳ,gƮcA7X(/ }B3U dA'"'lFv)i5_\ht 7շ5VUvX0SsǑ"LR@q=khԏcggdGA` aF9 p"(26J skۿꤠ{ŪY+Jj-(@[\&x>D3OS{x C4Uv=ދUwP:2 T9fv7w_]-&&RmE KY.*Cذe֦G. ,W'\٭k>ތLrWÃ-+ WX($s8U w2%,C,;a - RN+LX#y;_;*|Wza^E*_F O SzoR ͬ)ƝN S_ `T[TPYU<O d,'.~Jz[)Ro^L/ POϽ7{?#}C؅;30X*.2՛۱*ͤo X-d}17d圾רymֶiTG5/IbLYUL; >qS,h^:Dʰ!>kSu(;`'\'sqWfqk!й1n<@֌jR=ӏZ"ʚ,[}*5#hF <H4PR"+ ҅"Kюn8}Vx޹=+[3n:pACGB|2YB{1`g(!K8[@jޭnh@Ÿ1i h(c! }6L2<dOD2W_Ju%cFos$4b7z-.M)h,(c-[ܜwkLJ=dFRkŎÔ= (RI,Cӛp _AgYOژ᷺S=TbOCh`F:rd"Zugjy@ņHEKfg"=;UF mϵ*٣7/2HM)48uo8UP!-R Tϗs&F }N oY^h㾃`RPFHIM,oPa (Yh+̎gkT&+KKApP5~3zHלӠ| u%kq|tÙT@ ,]k-E4$d_ED;#^E0UXSk|U# C6? um$QcB(d$z\o]vƓ\40҇mcց eI-j?zن`xfXRu(?N.NtڮRc;%hpq~f- ɺ(ģ*RÄVl#.5vhlI~F2l ĮƯS[{"y3ZV^av㱸CR uYS*'_G'R?D3O1  DBw@G9[bթil',~wDԘ'cvy}sjg(a}r%w {,* 8-uڈО,"ۺn}CɅJ;|}r) ,iE{ (Fk| gW%4Xb+=RPa<W9#N՘"^k|0?n% 4ldJ+]_x/Ҷ0rDeq|zDz$2lj[箟jY<3&Wyvz:ORzwt< `T1P}hJ`UUf.QnJGXُ1^{'r? $ 1}|GqQq7F]'O?yMo;ytG&αv̈́*A Ae`˨t=A}6;G0ynqk_"n^cL YN]jzO:u R*8va;O?ύ*\`2qG8] ]',0PUf o84gY%́XFYOnˎ[]wuCte"ޓ9nW1%V'0Ddyӽh71e?Tʤq8*)Lq ۬8hDpL]/d8PC=¬BzloʡȞg7CjC<@۪+MZ`%Emi#fCib dR ׬cy,b&7!ӽj%߽_d BOU2c"U\B?l9kDnBy:a ?~!6<Ѭɉ6ɫ.1a`ԥu^=gj-]T㦿;͡1nu\1a RGKqUƙRt=e -18&PsG`=. N:1lg#$*0;f1b> 3JriY)^.@ݗ`Y9.< ɥjs]ʬ/`~kŤ.tsEC(f}5 -4w&i}Y i7Xqc,.eJXzm)WEICͶ[~w +Tl6k; NDALqfϢQIe2 ˹3 ٰDUWsZTT(&P|kb@֑l 4 HaĽq&SsXUEn1P̈́t{8_8RXȵO%KY)đ-I3Q+D{IAqK_lcz_XfrpU`^[bOC:d ojű)boHb:p(S6]Y23&ɓeyXD))h!z.Wv):  >-psQ*/XTBBYVk:偛" fZA%(j-xBYP$ ~vFʠfWhŜ48^̰UΣv]iw9f֟Ti7>MFq"GϦRzuA_dupmȖB x#Eb1VE ~5/aE8Oɶ'h/vB=8;N;;N hˆ0$ztr@,Hp=jMlÆ&/~t_Cq|Ex2/(p¬\@n$Js<8AJ6@:W/Q lSbXuzT@^AUn2V/JxO[1->~!;%!tQX2xU͕r# ?wإ^q`ۡI~}_StmN,0Ӓ`c Ȓh6rY>D_%`N$(61QZ0O}qXw冉PŬ)Ȇď;DkF,hGK= Zym-["a .CR CaUXf 4bGUƌؿQBi|gt iwfv\OV7r5ݩ2:EsieSpg}p< s9++hލ?0[M `U>$-#+v뱴'xG79 y T=46e:mSmMg1gz!$|1SiǾ_C*Fڄ-e/P#k96JNHGF-z851m;j -< ^LXBmqLiNzkZ0\QE +Y|m).ӽÈIp?kT? Y9H]7'm(zV-JB}cx]@唣ť_h\ ZfF5&GW6c-VD6Ϩ}E M| ]ґf˿XkkMh>Z&H"):Bm5\ TF !> e-ή N OiH/$+Ua}P4FQU-1 GfXU!Sb60K΃PvT<a֧!&nTfA"$y8&7Ж[Fq6cސmldwXD%LiT V;NƆ*,1n7ˮj)Eֲ0(sG,o]4SD~(=G/t91pן{טm6MڊB:,zA nx$%Q rZJ[">vQ$Ikg:9ч얺JDvMrEmF+Y c~#b0s%\jX*<Էu\# 9Kߗݫ%acX\muΖ "]U8.d訓Y):Ϟ#].pY)Gǐ?5OҍD4b?4#-k{~ssl7%6 VN Hgk[CqUl˫]m:v̨~BR/W~~qj+yc0M:U^~UƏQF\!ȲfJvJʓ>Q4$oZ;j]$ę`؄o3PAO:V \%қo0 =9R$m0 ~WYNSS7uOS}M#ݬј=, <ڋWOoMcRs RRSPw<^NVgNw+O68v5rFU!3~nBY\7O9X;j2FѶ1ОX5`'p8tU!8r( Zٷ v2a4k(S glsG ~¦CӁn h9~(3;?a!vZƼ߆Z ʤcĨ|Q$t~ex,' Mpn'Ā:)؊50_gR"c-^ʍg@]_9pqJҟB}jJ3!NXSv=p~rXwkdȆvMKe8֧!mx'\`>~]_+Q 21cۈE| L?y uErLbZN &X39]#;|UX7ڇBŋmQ;`&‚ZkBqw0T6H|٠ALGE_6?e63]j-135"6.> r^*6ngnt'<9S(L8_gR{G]9P9ڃM>b!? |Hui;Qvv sJlo}5vAb|r tt_rO]=7LӠE5{3:EɘGe$84x`sk8Fr8RfЉzo(Fz9-KN ÑwJUp']oɊƍRYwBhX0T>.m@_ӔGKy@3j'Xۯkq7D_8~:oċv`Nƛ3JqW{Rgao$h3 E(3>\(wl5^M}u&5N!J۬CByea@?ڍEjc4nX*l-bD}HqR=+6bZS=_9H "<4y%J3ɒlw8:1?SSh3\ G&]kHDӳoSuh|L\k83Sե?2+.wYk%/ܚCv͐,ݴ=osQ1jN_lTUTPJ慨> &n" SmqMm\shF^Y Ë!1{E~"9$ϿpX <ޏ:Sa,PvJi{f@9!ŽVe f*ɯ o-׍sзZM'OWuRܶ,"?_PJ ~Q.]r2SlPpJ Pɚ$TAA3,})1: X!d"G̛߰b| aȺ}`P)BnX3([#k۝i9'71 PH|^&aFZi^9PmpxvV;U8̸kT]>1Xrųė0qR$8^G/S$M+E\1&o/768<6NurjVj ̱(CbU3k%ƁI@{2,2c"5iqf_1^=C$F)Xzj%LbV?ײ^P N 9EYqNx1o2㤆;dҚhg-@?^WyƅN % ة9ujLμؔv>]4~'=lP*CSEn/ &  A4nT>хvdQ e;I> 0c1ڍe@<($%sF~oY6DWWy-Al{? SY'\C2u3۳Qq'({BUYGc)rwO|E+-mY%P̯H.[⣶$3c"aW#W֭i<$:-Wbɮ؍or0Ut,ȿRN:- .{դA=L$͹sE`8u1 vyhpTW̌T&匆SˎI:#>@wF5OT;Zr3AlEݬH[  AU^q:5H 'ql塬ԊyIǫV$v9nHW" 6)|+D]kwFT2}35!Р {G+[ /O,3ї*RCcﴳ: TP8OhuHIxgLOl;4'>aK*@ ?CwQR('^0ʇ&fd 8tN̷w)<ॆ[Gx@0IXRKr eU=`EF0=5UNd2.&h3^-S:V04atĺuIuɣ"‰c1ȼ#b2}yb<>۞ ;KSWܹ;C]*N0ܪP<)fsC^1O0F=˹2Ai5=DKi,8W(C*~Y A#EAJu˪ oYmZzG/PS5/^ ^KL4OqYO <= 6t;7n+G5} 2?`ȷ|bw >DJm7t7\{`+e@1qe{%4ٺa!:N߂JFe:w~/4lH@8гam@~pMJ/ex^Ehz̓*ml[/G90@zYYK6c7[+b+aS<*A -wPsM>O#HhQZ/Cݤ: Tggj/qdɭ̳DV8!Ή`N5feBI_Hl7Xզ)=7QKvv%|*f1: z-Y߯SIEhp&3!xc[L!^ rԉoXR(n6QD!5oᮭƙ!—n@R4I;b;ͨS`K pY6*)xs^sG?H@I'&\v0>LGQS"^ os3. 86K7CUīiodZcyYWoxxN,:ҥ )4 x)G^=;|94Jh"rG(.&~i|,pe_A'}k-G$VOS,Zrh!NG9R)0zd儖7hΥ_ipISt׭l4SLg3I&!"'0 h6͓PnNbOl,x4&A[!-B|;MZe P?hM)\ف bh-D.EɅՂ]ށ!1,e")a70^ j^1i[|ߋFNTWt#{cÛ8)j Lׯ7~AIy!' ".a|ϪEGsKAj<CQkvis:a:ҍR1P=# G;oJ;&}@Nբ%R>k x_?"fSg2f_նjcY/D[2@ XʅE_+zMFK0>W$! &ι#*i!9%9B9kpbWR2x* J8TA=Xu-(C * 8HrSHY]_bBOZ(' _V6c{ejg"/7ڎ߷n&x%e]L6L^xG(˖1*[hpP/e/l=KP ڇ!:{myA4VZH D&Xx[J912\(~28 /U;:VhsTނ`@zowR RUKk fI@ ̓YLbƜ:r~Ԍ6JPVSG=4 lXGMJt=9; #! f_,ߔ;_K zP>a˜T0~2w6I f(Q9On9g`%}XzAHaB~%Qf$˖B!Y9l9~T;>׏6Uraa;K?c~b*/*8kڎ_4Fٔ|X J2`[[:~pqsjP8W< =>K[)#cకNP%?C*Իzm6P%s驪 ΋ĸBbZo%!a<(A7]5 *5ح!L-J;a {]O vJּ0zUxlM\Z/2iup 3011ELyQd+0צo9Ex+o+%!|Pо7FERr*> Ǥ%H>/u}@xu:\V4jCD= ɫSJK!Wrπ ~?C:^c ًb&5e(?{!Ke>բDJb}"3pu5TXp@6Y*puІ~܇\Wn0MD*%9'8P_0bYW.mv'Te>cP-~Lu:t"/z`cdV]-1+LMʴpM]NN8CgyF$ș[W keH\(ÍTU^gnڑIx`v$8W'Ա{7 G:q-Gc@5^ DG%HfttROY.8C4fR}>kՏVgG׹ L_Df!%Tk%@/HJ* ($8'1̳_M{ĜD M܇i%{ Lfų%’\qAI vv5ꚝ̢^:4@S]<_҆{S0n{mB磚7BVktļ;tT@Y\~k]4ϳJ곂d%6p%R#_z"„w!ދ!H6c*UeIO )gml'{~I~Gpe@$w6 KHWjF\}a+;ӵ^69|zq;Ꜧ.z~ W%^ܜnPD w* 7<&M]C )gJ(ߖ-@U. G8r|g Z]IFF`%h cOXqT9HZf5aZ=1ud`cc*Z^3-҃Dgc5I5 8dzּVX&2q%??P/YwU1PƣS5[Ge S6ɿ9o^JLw~{,-_[Tk}O8)ƙٲu5:ԗ  mODj@Qx%:?+R|_y)U9,wƠpħG.vAk?V >AJ@_:z3ocaƺ;Om9 TRf &XUxÍepI;}D_lT]1i9 .}? i#(>sϖ0NU87jn.춥ncad1~bȠ3G.,UFf~PU 8&$ xjI LB9 Gnk RH9[M=L@1uOF\n',1 dI=â"7zt;_ .Aܗ//Tk*M GB_ =˴29P&h׉fWE@K1 Q}YM = *Dr_'vd_i~Fao6cޣ_bduV֖~&k!z?E/QY8!Y q}z'B3y L BF vz=\mc`W¡s(%i,aW嘆Y,Y=%v3:V[]iFy+L=crAmYWp<42 (dl=`)Z? r[_VQ7膮B J,彯4W`PdaΌB8~o/Kv\X6G@z5WliV&K=J`/ 2(\:ΧrAxMB˒I h%P-{p'qlq^ˠRWĩ  KTBR-R2<*U^.>C0~ra@G;46bڝ;i7JѾː\t<^{/}iKOSzyiPt MZL[o4}8GWlh2Lέ:6`%Ii!JTARøJ-omn5+bly{ ƑgwPNoi<e;!oRtJ\d f1/ݱV!\/Eg+.@#," X˩,YNbk$C1x[PI3iE/@ʹ' @3py4q:. _~ѾK__x# Jt,f*2'TeɇvFH<:Ѩ(βJӒhK$0fbC[>t^ }n""kiĸMʝ)4#E6j)א9GǞibT߼Ig<4oV9b/"U}G4Fp?l}n @9OddɎFpsx%Q{Q'y1nvx&719A.ڰDD &97Q=q)Ѧ _VU /^r/`u9a({~v9x"n,A^V]o>& J!o#]jTb㴛>FӋƅ Y]OI4I2+Ce^=3úXXk{MC-z(ߣmn_У4[/o#6z$O=|ԱzJ:#{-F^"UM}YRsgJXSvlOr0Y1fK{Ry+1FS'wP+UM8K)NJM_HQ7YL@5z|FUH$قR 'X)}ZQB_=NJ{}ċIܾc_3FbiR>Ә:RrRӹ(.5t&'v`ʪBjx^r.P'>~zJ +'rEqx(Ycn›ֽdSE Jj <3fqSJIr\s}M:0=zZ|B7.=:Jx˩ɞ9u6>?0\~ſ UdDT1,Lц]NpPnVoHh ; OM=3\WQdߢv:;dY^$y}@6 ïhw)*F4@Ovn\Nl{PI呃b$ϣR$NAxoLS~[A#N6`a}K&HäƵ؎EMbd2 )Ry Vh]X*BrFc=R $?0i:b A -*8=^SƩ{FQlTRw @ze޸_ao; Ax K2fFbo .lP-Aެ- {iCqDL3u@]{T~R% | ߲lt2 Nw-2V$Yf (>}\zEdɭGݚت>*wWVۓk'}`:(DQzT<W{Gʹ!mٮS2RQrի-U 6=RfCw[#J+±5 ="&,LL6HXEqZ&7ma%ZݢdUC>Raob~!qbNˋpe%/QHxi6\[r,0wM:PAyhOYه0vV"p [ XfߛH[ΥF^o,ikXL 6M>A,5;*"> ߛ\aGY&M ,W$·E]Clc~ hSiJ1o1Ql8Zn/%ƔrH'ŧ]8E|4\b<;`PהpC\blRZGuAG$vm ECuQ**M)T\ry!KR0Y|'*C.q5?m>JpͫzP1 o#ZOV^0$Bj79˳vHAz?ce} 0t 6'fR?K)̆:duE;noL$U&sB]ً8u2PmɱrBGFE[ ꌼ4P/:jWMj(ݬuPD[+7Zj؁Ơ"fn)Fqy ~Xehp7.F 4ft,2[e4}o`z!s 1FiDe'- T"$V A+mFeD}A<2!nN?v]@u/KZ`2V[٦Ϩ0hZznYqhP\Kʻ.lmi<|?lk@n7+lX88Зd䕌?5~8OcOi}ieFCkP_zɗ[5g%M:ۇ݁rˀa7@W~Lʄ۲_RG6Uީ{Uf^ǯcW-𳷒8 #!vI?S i34 +gCnc#Z R`dGz)Bz©7":3 `R[L2*\Ff%HJvhwOQ4𞽇"-~5,DBLRN{i Աg2eNĨS7 hi6f{%5לk@6+dW1#WBPvtbhm!£{*\?&~6E!ֻh,"}0|c6~\`+SAY=pp W6emR Y^ #WF'aVR"?կ~ؾ=<2Y_3[9JA>t 'ZK͏8όL-0#%uMBԶU8);ez ){ɮ%k7e9MEczޮ}^YIY,?xI48W͌oe؋XOB4 v 4nb.@7|nCfc8-8Snt(^̒C\YϟR*aQl`E^dK7-fF|@% j)M*O2FżG?=#w, =R `t`i-U'5,47^7T <xoW0&OǷͣ4}gmC#O~ T۰:bـ6'LH|=}:fMTSZlCMo[&&d۟+7ya)"V{pPqF1%jQt#Oï &\u E gjHRP~N E0-7`-J?0NWĽH|ZG6~Sp ۭ#F.}tB>(1*8|gCee.o^BȁU;Si3Qz"L~M]&4 {C* 176{RRZ ;1jqB/^;HBd'-6ʉKcB8ɇj^IFX;mtsi\#/VJq˕5xMD\5#sMSGhc^daJ\8p]ހ Pώ/c /$Cz`lUdLU s@m4ܿȞ9 a<߬Q"6HUs2\oշ{䖕1 _!l9y %@$UJT5Uyڒo "1 ;¤Y?AbدuVFWzf2~Ɓ ZT?&L|KqOM ar :ˆDgDcS2)ہ[,zm3%m!eۮw F7ɅخޯG YZ