wlroots-devel-0.14.1-bp155.3.6 >  A dk;I%z dۗ8]Tuj-Diábo%`}L}QɽLyp!?@/ZI:QF^RC1lYtW;G!ޖWʇ 9ZbLeTN(SdyoO|ieHx}L1pZUI/P-2S;Id=? >Uj QU]<%@QJm14#m ^!Prq8 [o? .b"-`D" %")a!MA E:^uF֢1EǺmnop%^}ꦿJxN?-y!5Ex*P ã\}'8ufY+΀?'0]9jcy\@ ]vEM]N{ʈS-\9'@FB}ODQ˳?Q$Kl^W 3BzXllyx_sz(֎݆6Ln@pcUwNԘ;w*wKh@@Awm.vo[p"><,'R0(kagY%zy9d 1T|OգxHhHy _G$~gaZݍ ,p>?d ! D $,ff f \f f f ff!f##f%`%& (h((8(9),:+FpGpfHrfItfXtYt\tf]vPf^| b}c~d~eflufvw fxfy<zCwlroots-devel0.14.1bp155.3.6Modular Wayland compositor libraryPluggable, composable modules for building a Wayland compositor.dk;lamb56SUSE Linux Enterprise 15 SP5openSUSEMIThttps://bugs.opensuse.orgDevelopment/Libraries/C and C++https://github.com/swaywm/wlrootslinuxx86_64 !mUH| D46@6c  +!7 <. X v\ ; S e ~\iq'7 I) :g}g11T1>} l" I0] HAA큤A큤A큤A큤A큤A큤A큤dk;dk;`)`)`)`)`)`)`)`)`)`)dk;dk;`)`)`)`)`)`)`)`)dk;`)`)`)`)`)`)`)`)dk;`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)`)dk;`)`)`)dk;`)`)dk;dk;dk;`)`)dk;`)328fbef334f254201a88acc1908b19d87d863e01c11bbd46fa60c4a537559da2567c7212023c6753f35c4dc1e906c41099c94afd5d082f9490785e9e4146219797728cbe9f9e935bc4d0d733ea46720422f0a3d7eb047f80bd7c3fb110fc2b6a40b9bef9c2c429ac5a948d6c74e480e37add7f85a7b3990fe76b6edcce1199ca4755e96ed5efd8376c4bb21fdb598e7c649882490df0d012e510fa3191ae0e75d58f219a29356d65cc212362efce824ee3c115e36a6d73c1bf9ce46c7edb7f276b5a104a80a3479da4fc856ba8d825710c4765482077ae80a56c2317ad11c7ad24f221ba3caddf8ef98348293fba11a4e1e9e68d6fd16b085613e07b90d72c5ff2c57802fb34fe62963a82bafd9c798c6a52409b55405ee5b3974660082cded163edf3303fb147ee6d0b0033eb29f92a751b48c900cfac12fc6709fab1575db39f5762d258a904eadbc3021faf3b57a9d88df506f3532f09ed21bd5053aeaee7c1c04ca1815082a2d93a52a92ffa368c85e7f5a5fbda3dc5ccf295089e1d65b9e4d69d3d82502741acf68517f30d9984c4700091d5b42e7722ee8bb17e2297fe78aede133894ee4419ca92c75fd51d6e5da6928de08aa798f083540a252de886b076e1e2f109bb14ae8f8199aed208cbfefc61e5d955e3779523a0cf7efe9ba91aa2fc0b57ada68d89230ec62341d43aa026aa882275b911fb0091244516d807f62ad6295ac095921cf68c061c8cca1a322eefd5c4eed10855667502a0fa65872d878e9f863cc8c5e3c78d5c867ea227a613670070e97680d9f1b1270465e3f7a824e92f52e7deb40c5d89657f4f3e0e21544da80038e5e2a3df6b1233fe7e7b892c5026cfeeffa669fb31011252d08207645e924c31c3b48e7b31d85f3602f597ce44145db46e6b691470c53feb43276d97ef29723d58de53a1054cd83c8276ca4932236e4e016f3638f4c3fdbf14fcbdd50a43954a009f09e8e0805c85f1cdc235850bb90b2f36f9eb26e11e78a8936eeb8c3776fc87b002bf8274a215139af7528d3096d58e2abbf0762cf3fc19461955fc790281ffbf6aece6db9411433d69ed85cbc93afa32c3282d1abdc80b81b526f6304c2a95d4cbe68c0ed112686bb1d4099635db420d9703c9e03ad5de1d97e8776dc1fcccf94221621d188637796e379fb65ff825cc762adb31ba7f17803b3f6454ec19efc5a34bc6a9f0891fdcddd998548f41f840fcef02d6939d7baddec4de8f2325e40314346976eb1428bd4397419267e1890092ea32a6c7415c400d4bca97b1145c62dfa2526f98a24852f31857ecbafa6c41f68d92eddd35cd962d630b2b5f4a7a6dee4d985a3c61c6f574b4a6dacdbec04e60dbac37aebe106116423b7737b58fa53c66a66e90da12aae087e6b17359172bc6b8f2c3587fb0b37a247cde3eace2f22cd9bf7970e0053167e579c0bc50f4fa405efc9665f19e53cc38d8d2a696d2ae747279e49a4fd5115ff2ecb8b1cd74dd49a3a339be2fd74815a7b6b05549da9634841515c52704e9045621ae95c82d3acfea293bb987354d980b76116227df7c79c1b9f8f7181311b05703d4df01170d241ab9da074d4fdbbbb6867a19c8ad9688bfaab59290303e28647aedcbd61e4a00f306fbb0859ef65bec6de10e6800db34b58071fd733d8cb027cb8a792969fef27c098d3f7da285b5559eb6c6e4e1261e204b291790751151e7152fe0036b53ebafc9eadace319c54589f5689329161b787e444fc7d564193e89dac05be74356a596fca4389467e4d1bfb3c927d74dc7bed6448048b8a9071cfcd167118475e3589aba53c1f909f7d5de4b8a6c8e9c145dffd0bf908e901041f0b2b7c217c964af330dba9de84d0043485206a07edd0536c914a5d9b6a10ad5467594f45e1b7cc14bc04d7b8cf7364b1c8ab8351287847a04c77ee0b73d0cf35a46e8dfa627a91cf7cbb21fa6b8434546fb27ef24b286c40eb528ed3139a71abe96c4d9cd99ee98763f65c46c43f1d10fc4e4712c99475ced4d0d2c24731aec19b71907eeb3ecac11cb40274bbc219738c05cbb7fe633d0673bedb029e2aa814d299c70ad548ee5a2623199f8c02b008ea435c0bcf7d74ece11b2d8c5946f371732ebf0530d26667bcf1a89b5ff1b419e278cd78b092d274122153596fd44f35792c71e76a128f61603ef587f092c16195456d4e57c01a3bbff8da4c15c8a34d827dfcb70aaf7e71f4813f9c03f0fd356dd4352d99b8586e8958e79c153aa43dfaab37222056887bfa75b9ceb5cde68747934cf9c39221d156b229b651261657dc04750db82af1316627969f3d7fccc052aac11e775759aad6b1e2db983b96f779391b42a9d08acba3e904e65047fae60360895aac796e5a2b8ae1311a1b19bb227b4a78a509b31406374a9a7a881f74d8384f743c1c87cb5e546d9554606d29b4f9df6879ed821d633a008beb66a49002e6802910087e407e0c972fb22d30fa60d436f7bfae637e76cfd06e5bcf1f496285cc1092b47d2e62f1a92e1d15aa199c94b4b4df08cffa6b8dbf3d42867987861f647e27c22bc49d5b46ce3630b0a9bb87d2141620891bf3032eaae18725e3269037e60a23fa3a9d957be9eb9e534c631f6b86a1268cac31c449829ee5ed357e3f445ae14a3c6e5d49d912119e4c16d858a5de8d0ed3ae5a69b934154baa968c9262f8f44efe9a03af7426f62e8fa332243b4898f74b81932a2f82e29371242f7aeee76aeb6881c7ede3008cdb51ff0680f35ea7fb1de784d454afadf053e9def38418ead87833f1d4b64d7c2827abe4ac9f399ab1017a30a0998863880aa9e2e58362aeedece4e2a22fd612032c3d6e4a75eda00f97a4267690d904e0eda1bcfe64983df4f70917cba0ff839e9d10ea7a4b74a625559437c0e70329c50322928847fb163111a6db02d827775c1f011aaad2883fdbbafacf6f8bf756230c8dfc182a7b068f165d0122fa0aada580b38a738e3aed3fe727080301dcb5369388df1aaf2d23ee0af2f297271d28db6f436a0be95a4b7a4f112209763293eff8fa95b3cf522c4262f35aa7ba4a8fb146579f6c25c07346fc192e6c47d2f60bc539cfdb3dfda3efe8afb46c8d1328d81ef81a61e5b0413814ce88351b4b11683b57ec8ec1dfed984330ec8334f58db14fa32bb0840f756ef1e0ff8152396bfbe1cf5295a5ff62a615d21e3a667e529a2bc69712f2f4738ed6a2969802bba9ce3311c77f6f10cb3ac33e36643e8e68c9c788709ab6502219242ee513c6eece46d67dceeae8d81918f6be00c77ebe54a5b872f5cd6b1a9e1f1de7cadac8c802527458f77a8de0c5df29b0026b058e8b0aa77fbbca48c4ade300bc97233403dce0e10c8ed85308b6307fc39a70c63f7f6990e016191e299ee1f497bc799cd6ebdc18febfaf195e8f314626e45b75628469a86acdae5e3dd5e1de36b7963dbdca978751a8312cfb5ca7cd483ee2509483a0090870b0281d2f3602cee2ee7957bcbf6a1ad312e73793399d2c4330885ef9478ee6241efd60b887beba79c4c39c4070e18f7152c350baeeaea0a7e38f078f5c64194e75cc0ac43a9710f66c96f0c4c020a254683ab9a30d9c72151f139c021ac9d0f29530b89b514d0e22a774df50051622997554319b3934ccf19565e0ab447fc99c1395b84a6ec8730d2160ebad17d8394856a2919ac542751ddf94bc9719ed41452f61784e5bf9dab299db92946e0a9e9c7c48448fd1c4e5745477389583736772b6d30f2242755dbe3caf272d12bfaeefc48760c0e0d920efb097865111b9bfccfc3f53eefdbacc701fb7e61c74cb1867d4671b3fb4ccdd1da38ac747c53098ff895737c1f35149357111739dbe77b0eaaa168a64dbf88bbb54b8c72ca5b599afd1fb68181a1b77be99bdcbbe4f999bb90be932581b0bd7d92ae7263d487966de1d2de5d37fe8101b3596f9071f039decb2697f5f998e9818746561ceddaf722a2a8116a97cb4c876262dce674538ee616d11a614c65a071c1600e014f68fd3232b51b49d522c646d9aa96dbdb359d8263ea283dce4583523f1fac7d87aaac4ae148207a9f809b3484793d489177270f3e8ecaa72bfd907147fc5d8cde68fc8c99b8173ef15f8399e581c02d3c88553fa3b06a8828cf4a04cf7b46f2308ffd3737a478b83a8b51b42757d3bf909ef36694508355879722e11fc1fa6736blibwlroots.so.9rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootwlroots-0.14.1-bp155.3.6.src.rpmpkgconfig(wlroots)wlroots-develwlroots-devel(x86-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 versionlamb56 1684749278  !"#$%&'()*+,-./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-wlrootscpioxz5x86_64-suse-linuxdirectoryC source, ASCII textC source, UTF-8 Unicode textpkgconfig fileASCII textPR RRRRRR RRR RRR RRRRRRRR RRRP2AN5utf-8c8d97734d6a5e500124f63ab249df1f9eb9fe04b5cecf374626528583bb284a6? 7zXZ !t/WWŸ] crt:bLL ؝-}!ʾHi$Ex ,Ylnu9Q&%y%?L(ط#1VK[ž9z:WY#72*SGO#LIEWuicFІ̺RfNzU5.d$ӼiE0vw;>|#AWxbN} %|dIL!Eԋo(Mp:4BiiX%k֌&jYꍵL2 \ F2cSbkj0,Et!+wI7zߩsRqeۈ '9o&(7dfdF\hfخ[By~1Tg5Qkj6匕sBuΔV_]OiNB)#Znҍ 6N4l {vTlORT t E3u}r}IefƎ1;|پN>b0z6Ҿm-;{t>"j!`4[ 4E$IdA3ƀk8XV_br#\6/•B, 6A k) &(rȉ@/ "*P"ƚZm~غ@}˓4U&GejZ'P` ?8SD{84>z#CmIqQ*[޺ҍϴ'}:v8Y[JN(C=N<o< `7#]>̈bIuئوuE:S*Lsol+qi;C(ue%.w&hOwpY ;g[ tG xMLGմPJdrhWI,s|sF' xBӀ[3yBږAe[xzͧF G'Nu LI2Hʼdjf[ -b胲^'zWQC;RY, CHX GBhg@r‘!2\\Y/Jc1aSs[ MW x8ցNo;^f~r_Ra$Pmm,)*xD[8]`fSϏ`HlYBGyJW4H N_,shm碫 's?>?xB{'C]4ƼZkHo,7Ka8/)7.FlcҐد>c=;v,rH1P@;ٌ̧$[f)R/waz:WuRA нi% 8p6zDg7DΛ|{g_ Vjizr$hayYz`:H ;sbk(JW{gDݽ_ӝAF.fqp# \ёf=W( 8ujR֔tݾEB3wH˽_& LShًȏ0P?vQ{EU,]dqxNEd30&*犯Ežw\NCGmg|-Mq:L"hT>3]Kj8 $6!K~PͰ훧#{ĭmz4C,dyvbP-ОWX/d_jj/"x&ϥ@~DjAJ隍GNbRr42l׷(5-A\ĪҘ(#{_01^C `2 ":Mwu4Y| Dd׍ dbP[.؀`0s hLo %+<GoAM,v?V@}nT =ھE$&腻|CВjES hy1jĉ C6[:#O);ȞQQ;?n+/4zn6ꇷdƋHmsj!oŐˠLD}dV3~ƩNNO#ۓ-\+ӱ!IK !''}R@LUJeFs!8D"$D='Jk3}'Jݖ5o{En3b?lg[_Øc񹭦n[Aj=UrSC'ws4lY L>ͣ`hi|,n-zbjb=_|Y6aGVD`?Hú$eJ6-.9dQWw1_Bq/9e4)E,nUsk6.?`; a![7CWI W; }I/EUwOvv P]e-73Rw a J:d&j+9XOY)[8f6!7F3#7v~#ETdLQF읾BuSP@I&{2iU~7$Gw/9Vc`UZ0dֽdO($؍`x3_7z fcljy<_eUPAv 08Rm^[8P( $VtεLF_xZyI'.]HBە A:J挮UF~f?p A4]9yP6tHf2 r|2Sv , qT7yP`[{g-6Ŭ/t@Wpl]vݥO>#M XCe_J[15@CȆt00CN}Eo%i"a=k]KEu e6W\"'6s[eq,0ˆ-swR֍kU /݁m`l3n}MFiFPUQЭ߀x|ҢpVYg.!@op7L[ıqKI߰?WGqdZq?Jv/UCI(kA9 <|@\3`-'4BRaS}i ZH: 1"'&.d*dN+͆U%pn3[W|mgmˆօ-,>$yhaS3~+{*p-[2H7W粑- 5D^vR O#=j6NZ_E"&)UʼD,! 9O;~Y[2JqҒjġ8I.-kda͌]%Q3^;gOk^1—T:B_E U"OFU0BHN* i<60 4yqS4걱%sig6a;h$Dv|IjoJM9ʸ~ѹ g"~ ̞zv~ RKiL=pY')78h Óꁉ D\T&wHtGjx8\4Awy`8y@Ob4W{!bcj`aCN{Yz¤VM5~脉\)ͪA斲;>l&=d0_ 0jDx|/R窒$N/Xӽ O5$A#OwöAwfǟIjYel>P9xV8xPs+7Zj |툓fQ :GcNϋG'.8((1 gN9 ^K=d֊sH FͥW5zs$, ܻHA`,q${Cɂ0%5"v޻;ܼ&/J2d /{~Ա۸1ʞ:XpP=#%Y MK4ҙ4[KatR" q Wem;l ЩwC /pĐy{@oeG3\TؓNZۏz;Уx2ʵ9D/ܠ$5!>RN*̉PDJc'};,e {g ,s*)Ո7F4UCc.ZCR /w.!}b}#8 a꺓4Hׄ:呛v)?Lغ꡸ջ>|3{nkfKY31#j{KݗׁEټmPKF萍ؼ PL 2#//ZySd}%'+='peO&5,CЈcYM[ig Xΐ-&eƽ|ɎcHۉq_RNu' $cTX%Lc%\pEh5ǟsmO%o/aذ9ō3DNj *êdfOt|9<7t{23X/?܄X붩ب #t 2&5kC֕ =}PC6],Z`՗vnoNrqA…kO`NlJZ [Iͩx>٨RۙAòyn29OW/-42="^ˡBw{񬜍e cP bb!֊_ WFZG,M2v/CƉH#ʦ!R]0?uVL 5&3W8QcE>潹)J#%x|1)2y%|:VM};_N:|˟YBctf͢KX =CgBԬ t*oR՘i#d_ˆCga/6kbfSU5ZX\_anË`﹓骡d9:Y6xsɷHt;SI<K=Ͽ}8Lsъ&F_ui}귱~acжnҼAϼ&8T7DJ +BYG tqD"-@<1g$Z{B7]~lo4rF0cfd<ӭk#x(ޟASZtj֣F2)Võd&zٮŞĮy>c.wOvDV]r ܨ)ߔ]ۯ!ħo2CX%ê~܏wl63Ah+ܚz߼C]:wL/Kd9m2 ۇMkM7}!((ȣWӽ=S4*kF7VҚcnɶ .zYԂU WRNMz6n;I[.<ө"4ܺy:uXs-v9lTNa\8¦ p\^ kz+%No`mH:VNE\YZ*(]?,-,&##htOD;(dVGh.' d7\wd.񳍼9(mF&JO;mcf*[ 7q߇̖@ | _L~w9 <9B$$1T#lxgIכ?aȠ)>0?{:A 1E$ԛvLn w }h5 aH=GyWZUw㐉mF\ҕL;" vO֖} bVp1_V}h%IH|9m2vF_iBYwp@P; BzX1+_ [2]toԬEutխ_:oԺK;,eX/bR.l4[W/+ COIT3A!(jEGc w.bCB}kxw0%DB3(Ji<@QcÞj#Է(;_? ;̪' :QM u:h,VŻ.S6ԓ+۶˞pPSB'^9 8p ]Rjຣ5)1u:ׁknzSR b6 gymӦ;}+judȱvgO֧Rz>;%Muřf6Sz]v2$-@"aq8܃Γ>-'gب qFT"sAk lyj ؍Zd#Ff&tQ-8>#g@p:CDv +RN{IF!Ti*Wl}Bճ~Dї 2: 5ZpХO.עƽb<l2zچUp܏+/`-CS]oWmJ\ڄHhദ$`p3_O,yWOɪ/z!+I?VHvA ;) o>|q[YQ-İ!,:!5j]#ɜrS  fOv,/[~Eu5i* UiTO^s8]}-1ȝE؃-P˲s(`:$m-?|]jH (Rpbvd/}@:SJ~71jؘqvd29Z s%KU?|T%.`b}21u~siFa88,ս 1~u-lȎoNĉwgq( ֍켯li+XR?BUyQ0F|B s -# M5E]d0(Scv(M ptÆ2BowK 7EiL"T+XpC A$/;*fp>2=<op7*^RR6і"m1wkG rZ%4j5*?/=Zmr.i;&DK ~[BFN v_[ Jl\fBqTw>ghՎ=e.O7$=2bg:g?(t`ƞawG~j"A;*I$15ȡo;*KqI>͏'(^c#[ܷØ*vBDFKĘHBrFaWyxCaȪ$ik'/e =r qơͤ2@:k>Emh6p.gޚY'Dbhi:@N怦{'cU%`@Jr뽒X;uȴb:Ŕ2B%7ZlT>Yp.x? 2JOrw۞=Wgܪ/[YOPaQ'`)22c-Q q@Uքzq+q:g#yG9K"p0Xq5zwx1QɓmWצhx"\)뾟3x;?m&WR$6IhxB?vheЋTmwj{9eIHWIm'k=1;_!;OUr8R+2ݯHQ;%2Gg-w5q.,Ll|c8U u/DɈp5&aS35-pA穏jKYl;H inmN:G.!l K\pЏg_] %,; pk\_ ǃ):e !fskRIve* %7Zm !gW)ͷxR \GLF=aIMMWC*B+qi&Hž2Ncl'ʏّ;ʦ=_О{5HF`$SYU}hM&e'rmѲޤ! I{칫y_؏ʂȭV0;H-hn(:Y[^{7W{q_OD~ Q5Έ& )W7s[7KG(^vZȤH YeM3e/0DoR-Y1{ͨCu#'Jh6Ӯ/ܚ&8,`#vLV\Bd,y4= P α4?Ay2s4Wb$־9mZeiʐXZ x"N"QTeªzrV6Dɒ{kc=,ʄ_|dvuGï+Bs˻`h-`= E]\9%HmXh#HSLD߭6@e#%CVhzN{KTf)suxgEIA'#q8(p<`xIm-qLj;Juh$1 QwsgwV '֨ 'Hz  ˠA}ƾQxFAھ+E_We2'ilxH۬jb>1d %lCN_f2ވfT?ׄLKt*+΀UhL4&za4S.cBkИRGmQQAG'è'OyT7ߎ }k\PI3s̸ s1.)ċcUG5XJ~pXRR!ÇRȸZb r:P`A *fAͱf|k(,i-M42tf`GГd0Eoo j5`Py_Gp]L[G ޶Vi^$`L@.oq On{TN9,rJV۟~5#VJe 큄0٠'T0 5dm:q |ܠH6kƞnZL7}25=z1mz P+mW#>HSU?=KW˶ECF?'ֳPЛ h""IV!=0_=tFCD2' + !|؇, h8[JXliцF:NpE'DSX5C{kbU ͮ8jSp6XKPʼD/۷vE9N"p#ݎ͐pC=V-+sd{쪼6mXp o?nEC/˷pvmV˫)\CC( s4h0VtG}5QZX}VɏSn%)3 ?W!;<:dSLc_5٥L?O"Ɠ2"I بw*g-h^vz .lc‚|L0 OSUH*+)lΆ <1}%O$ш4 CeU=vjr_1FxtN5D}v9{ʠY;,oO_̥? ) Ƥe]x=ʛ\'c19#K00F/ >9+=N/8Gn'vRL6m̑$ǼyxUP@'=:tmL 6pe.\ -O&LSx$[fF((!  <٭iQ#;N`d$*Hm{@h'meлZmt5]t ,YWt'OJbTF:Xwbf\Hժ& Qf{t>;֊.틣غUP,UL(8Q}" "&ƞjRg&L@x>9͚Xdz!Tb^ȦE` x =Q7f'VSsP@TޟJf=CDM1[:ж\]V(ϗOAGysը*{᳘qҥbcCVMrm+핽]7~eV+գ[1T>ῢ u\m Wi-_ ({;X|hf$a6Vu.Q)]٫/">?ARU'2:V(^Pzd( 77Ɋ/Hl2UHy $BGR s#o6ura[!k9H1O6@jZe5xE\L"zŸKJm?:$h~jޤz8z Ӆwr"p9qGM;/āk ek[ _{*Y3;A-#!?o62OBTˆMi7-qBܤS97l4ub1Hi@H <<0gpMP\;2)6P@yiXJ7Q_N ʒA+ȤF[)[\0+ؙR\m'L';ˌ}l`D ^~.[漀8ͰUCUWt@>4)Oҥp `쇞lEe.x0 џNkᱛ1҇lœ}E,\EFs8Ene68; \h$-gԩO\PvpDa{448&_tS >6L`D@[鵺d ԇ)o$s<JA[nn'Q"6@{{a_5 RÜHu=1*v?^q[ؽrz1Xaإm }LH3BLD4%6C4j?uY,\;^8(I}oڊtIJe0ot/[wEDZ5t9jZ%&,1] wY哥I-WձJ7]4V m%#S;4'} |8}~{۷[׳ 5a٦~@쳌G |&>]mG+du98; w\S[,8JEv!kpt jC6sX!fScКoX G_0M꿯iF*;0&ǣCr.SXۘksennK_~@-piXA`7h2TBY$*Q6'B|VʕM ˷6ζ[S\t46iܩ3bV@U e;eGDfӐdUM.ߌ22_AM4*=L9EeєV|̊zX+!tXeZ# ).ɚL3ukq{x .d6|h|3!-`6q? ]"M!-c:ذZ=ۊJ"aeCJ:\0CWp|l1}@/ q?eW=zEp!Vahpdn`L}&55 fBс/r5q.0 >ەM9knD+.ODP$=h z^๾1US#ru띺R7.{vP䲺z*dh5#eН=xkT;{kbϞ wb ri٬򸲁pؘ{~J&mkL85F.NN#jZOeJ:aMn@ @cQE]g,ÆW#AoL\8 T5@Ξ"uʛfH4qn8?&hx']M\NDGzOf2>٥dw%H:i(c0o'aqTǫ߈&1ZPcPq[(Q[JK:Fu ^uȻ%m ~qT2L ٮ WĘ]:1KnV7I;K57 ,۾Y1|s*>?xS G8(;\O'0ju%;ޔ6,ZUZ[Du|>[ ē!(i;H]]: ϻ_b`2_m V咂T՚I@{ԫmLI =c HġnrW#R:8k*WmX}eA8 -#8 Lt` E-X읦1Z)f x3\&9C4TC[!=[chARM:pe.q0hv30Tևri}2b_l4.}w~IYX}th}]-X!j~+wM8^E3:e! 2f~Wwpk ^eDTLHy38<=[PA@&rl u p-=?,bKLαemr;s9 ¹c[EϛʒVUp,rϚJ?R@ > 6'X+26=dG Y9 e`Y yÞi;4raÐ^@:H_&RLv^K LSTpR(39S5eMU-4G޸KwǑ`0@IȬ!+zEɜ >~֫ ҥM%T|ż.Sv^4-緄aaaGY[tBv(w=L (5|Uޒq3_Ca{} e9z % iν\p U~r2ܴX؏Z#&BQ-ܯKlu~+IHDX70mC4rA7!SFZ,7cw ry]XmMK%!n Eis1S%6)|H9I2qkz|;F̧9fvq2^r&rsS}LʒHz8?@2_J)S5ΠS) v) (r$~%I(HOu1(NQIj7T/ç{26WzӺsOǁpXZk98VɉhfYխʼ#Q8ky\YLTÊ{*aLUViC1Kj[>RB/f##ބM$z01$=|ǚdM":y|qG):B!)19bq `,qu ȸ\8 *'$_F4tյ#bj&57-f'WVj2f˦x[W{fKBªb$ pAY%([͗^ilt>\᜴̆ Pd6y/#Tw L?YzhsTmd_O6DELO)6σ;SGR-hmiG_ ;C~-@j93u9n:}J했Vnƾ6#W1PydMMXե⡽I>›$+]i3$ոZpzJ&qgQ٧ʈ Go9C1ku̧U*RDL%|~qR-Nt-'*h17a\ڗV6<"SJPmmh4Xj9,0U.g-I6p.2Fnt:-;s@8Ȑ Fyɑ~gDoSg<@ <6̬x^y={ wN4xG\Jk_'X2GBܟEoUq+0Nico*. J~F^uߝq~/㧉Lu !f5 +y!KAKA0.l+΃>F)Q3vc+o) "}ޢTy2͖|4@ѫak#yR 7rMh4 m< ;-Gs"n#L<0UF|%54ʫΧ/@0qKowQ7w]7xzf"Q߹/yhswE眔`eśV> m Omom"R=Y{Z~'kKV< ׫ϧvR (lfUҘ y͌~1(>R)4WxJuȈg cK L`E139VhkE{U|\!4d~S=kH ^TlG%JKPt@SK>~F~cGzdR_ζc >,s:芼l5  B(:;fqf*eagygQ]i0zEO~.5+k|mGQKt3^ⰁKh(T”;^.ˠu o($6;F/`s'o> }ҶR`PL"hXg&Gŝ:٨/eA%LA1JQWAC0ǧ <[2,>q[gwsWNݮ+i'%ǫ*!9G7:C{?DÏ{99/UKl*' <Al5%X&eԸ2FqikIܘ!8u}{ɐ e9hs+.8{}T7;0^2LBJ n4Kz1P;Tz)0$.&t.7`IZE[&Fe?7U/&nJ~j&`7\AV5609|Zod{] Pxmf\G^35y:ʘS nm^ ~NuˏL4FsYNIP_d\&)l%9#df)S症?hYfwT k<p@}R8|#IM<.`1Aq5NpQK&Ka!5LԾN V'NTLoǘ;䪰HfdÏ+WbtDvZl@ZO=-duiz F@`[3SPMy'C$w&QBf{!p1P|ф]E b,aA­6{fΑ)*q1;NB - I'-'yg&_at*DI) )zz`.}R|iP}+*W<"汃[b !OYF@«Y9x. I<EM2,㑮QX /:.]fJY 2/@#w#9)Bv%%(AM5%(I_dM֛ gv(Gi|xmk|Z Ċ)jaσlJ2fL`%&kr[%>ZF/yf0E g 7^ܬp,}搕/Ar뉫vowI(" 9(Ômj*P/ W86-^C* CCd,S|=?->﫸ȼb 袈 %.7P}R/̂(n!_CJGwQF إ85GK:&<~o*nHӆ򥴜g-j{bRִoM6n-⠵ :ֶ-H0U9>nYgjKX\U+!_4p`by둋t6A3=0>,9PJWzٓRBث5[qʅ8%l' kx9ns1j@ 2lx=ѵ*\uWeGQ^;6C3}:QULfu!9!zRnoug]ғɬB#Oat}DAeԦ%XH YR_1Z΅_]FIcc%>~E.AYW|KũF Iݗ"[cXIVyn ԉ `W+֌#NWiwmâ b=+C}@6%ulXZ+˞Ulv7~g?S%K:X3`crܧi7/~. ?${Ua|BgIZtS}0>)iH":Gj]VP.Eq& @WxM؂&;l|OG \zDj:xq>~KO;pwn \ݹ)$]?V@w.E(ON)Ys0x f|T(c [ǧ+8vlzF+Wľ~gy?ʒb殙.=|S={U6&kCn+2:PBA@#ޥ"hǑGw`Րۈzc?[d MLf.!spOD>A16x;bWF6ThR8/9˷OZ#{Do,ۗZng[xT "!¸Y 8KT!dB/ V!|+*-5}I&e1HZKk|U̬$Nj*(/Ttܿ!N{?|GTMl)qL3=Q/#BUwT.f9?3N-RylZ,igK^9q2Jy1ޘqߑoX4՝PҝAD\Fb3A$,S(S_s'YXv.!0l=e]nw34<[ _ۄv4Mr ˞rEnC]z60C!Fdo6Uѻ J=xfB%&᪚\b+uIC^wg& xɞu喢mi7&7g<퐕I`+n*96kA<:rٲP&[PTFL$|"H9$bV\T0TC#ER4+I MKG<ьZs(u&hV-\yM"tgt+teͼ9#lKkHu1D26 &ZQ Dk[?C}ai /(8':RJh _76N5.aYNmi;@f@ƇV+߿8HeMQrPޔc?[,1kR=c$ ~28A1JAzaNN>u\ktPZ cw Wr|9xBAϬCdi*Q\ҮM:7©IGUT Lً6#t.hX\;<ȸyp ؗ0H[P7'iv'pw߿I |#nГ6^>~+` ]΁Rrd(i+~ @\Wòރ!J-{TR=҈J ժ,۞5Bv֝GO_^mh kUjnOMQӑd VәTwLeWC.d_ O\ܪ5+j%{!e!ۆ499 |)3$Ha#%[tt&kGQV4O8 2^H۷-BQpK\Xfd) xC& >g4ȁ9Nޙ94}݆F7_3ق,XS'ITC\Q^kԔD?I*ՐJ'pCp8xC1Lj̊|%7i;p' Q1ͦC 1'đ@38V~{ܮ͸0lsA\]PwPAhWo*lV*q,L2]ɝ?gb)<`\5&^9wخQTsFSRb,}M\}:0SOIYL1odQ,+`a,*z|XxuRI&T 1JbC{(2KJR psI1$?#jj+n l *< N|Q1#3fmU-AHʷuP̫-ZF^c_埄C-sA]xUVȏ'&|a vK#bUq/'ˬQз^Q'ɜOCJZ'%Eq%ŹImpa !Th(U΍n ;ՕI #b+s : Tuw3헫} ZTH:ζH@ZޔA)t:} !x[PJ 􈫵u_ނ\'r@^lH-0 [}8kU6D<$Hָd{q$cGMZ{kMGkUw8nӳN&GEa2CHB):32HiO\g`4Uw#0z7Pfn,~%YB]L_Hi 3fa9UD]eØ#AHt霦4ccETέS25?*oO/#g &؄1BEǜVuqJ>Š /򧞜E;r|5"ߔ|Ri5%駱)ԒgN}*ˁiP#i2GeG+{(`aSk ||!KGq1Lv ?l:rrwl Z{}gX^ʸ&M`G *lŒESgDl4"1n|C#YR$r7<؍ o$fAl1>a0-2DeǙ Kig$)88?t68عcgH |D 6Nfk9]V,Y\=d1a:TN*?Vg+.]!gXٹ%x/!izѿ9fR:_(S 5Xr/#XdxBv~1 [H#E wa8fqEckgA5T'4pRz'V;K G?QdDy%kÉmz\m|XqdsTa\j1$1V<ȝ*V4lmPu;A{nz€M +@ew-gI?M(WGЌLB2ؔ}lX&Ϸfmk [\ύ.`MmYՎ-3Q07(`%גWu鲈'^06s%{Fj$giiiq^Ay7ݸA1J~(DEYӪlAb+&Ju^8/m{,Js wh>R.s(*`wɞ 37l ^5FWy9e,g0ϨZ$Fa8+uke417~qGza#̡vg{\C0 E=P05#Z.ov`=9jUՉiKUp y|O.cW ''D-bmefmVcm. Dt &?:~,_inf%|V=wDŽkQDP;LڿXcb@I `q~\QI „-ZFUW)-ھ]*_ԈƳ܈O>G9GlgggLl{YVN WRdzA+5ەqWƒ٩C{|H8H,ȁ95mƙLG=HZu̇ ]殴H vFK`_TPtV #CG;p?TD¨,@_4Ƙ7-:drX0fQCm>Fb\mh>r`* bC챔@O F0Y|} Cm;=,egIsr&Q&C*B7ocs*V%˶`mIZˍ'ˠĶCJV!=*"Njǖ&ӣ04.WU wQN v/R s|gT$Dqs Fmw5*ˈƬK#UZ(K `o3">o.2Fk oTsZZXDjc0ư:~>'ht] h&bd;Z go&+ m̲so`'K6]n?tXhxi+b9B%Q:vT`LT~F4Jllk(* vĘdEWVp/}uWoҸ ]<NC!IX)OA"c#ybTᕂStw)`y[`VH-n~Qְ,aLn@3<;n^D1>|\Y``̔z"Gʕn'UgĨ+ /NZv>1bwwnn]\i5QE~i, ʔ y amJtz^.+%^0۷~ 10\!B g#|/T:@>B]sm2%i:E!p@?xtt[uV1E &8G{p\l焷b-3hRN; }`R_@J$:Ƣ V3WT59=k¼-|ƤL8Gw.t) uuW Q/_7 肓WF~xIx,\|UG; ȓ֮9 _yq?1=F*.r)%5 5I7C /)S@|TMy[ޖHIkfXsۜt" G8FI5Q2b훳\AiBr- )G:@M(4Dbr9-a[ ilBa"j'c=I, B?9&Эi|L@?l6"ʼ>x }H@WeIib3]8# 5B=9^$e%&Xԍr]mfo NBV =%\dJi|!(X1#jP^=ȣ>_":A>in"h"Xpr6,DQ^r4QUִ(7O돷(6rl*nxmkXzt.%F$Jk -\BD06D4Msl#Oy6p@UvIV6]*58 &(GsE3 D\:"wUdk{G_ojF]ðdfׅyg~z3sP{|eLK굄~Kp새~_/ANx)eH9Z oCgATb8D~%J*b\²x ;V>:MˇL(f8W^spFH:<rA'f;E i.VuGT$r,Y HW%4 4֨'v~?CkOwTL/65oCWe"Sj~a%zǻuYEñq\yFf4Tlf²"U.>0s4DO3bԚqo &,Ydw`Pܢ( Ϧ^9?Kh2[XswTs=8qTWc:XĪʗ H["dZ$Cppr n'OM+i JC n_㣻ӛs'n7h$8*}m?%30ufxb CR|#%R5L毚> YA5 4QH/@{W7Y4Z(Ơdp{c Yta)d4Et.݂$LXs֯f<ѐ `%%V{bO+k$A^%H%yToK߬-oEQ٫pKDM&[YHe>5Sk=nj!$>1ͩA;Rf ɰomg.myI*Ofn;Zrwq6Gȷ %⌃5]$ q[j \;XfɓϮKC 0ђC^hmY,GB"bKp2z,9оfRpEPm S,a&%@N.IkthL3JBn fGQV9(m4+ؐ,0. $e!9pGdP0^DM~uK/t?]yk0H5W$S?x\0"7V9arYN l 6eO`3/`ig>HUBs &/7'jZ$/;(W+rMŽ.\F[$:) 0n*"h]d쿩$ƜG0TTWF>wpD%@CZԪT!k<Г%b v23rܥ~CAVE% O漤YY71cv~-z!:ג\R [hlajg=_gUtS*NZn+ح* 6≓Q`ݺ.ϗЬ>ޏo}{okP{k|*k,RiL4}|[WURnߥje*9X:}~M̃6K83Ik %x̡j*meEHeN$xf(I bmd$U2Ann> pF&l19ݧәTd㶌i"qV+u}2JeO-5e)z1?ڻ3]|' ca aO*f{ yJ ȿin*AqT.Jo`. Pp==6IAl4sC(&r&3RPTqֈ̕2{}ses;fW$}P:_OT}:Ui^ԑճI+ANoRU (x"RMVQ̅:x|pb H~0ô ;a*,Pe7ԺuJ; *f_uKT2(8f<[Sd,k%My /PZ&v3nw,.ת#YBa{T?ߓ*/ZhNJ4d:Ŵ3Y7mz#;|M -0?dyQ'52| Mgq0h*" j|'Jzşw'ֲ$fmPh$ *J5XGxq@38!y ,OȂ¨4uRyipR.rrkhhXwjzLznP`) P1(^}9 eh"=wRDgf>6bZRF6X_ͫﻤq)wѯ cҡJj{zWc2kX6T\M\힯+-@QooWշW$҉ tIT"ZI|詞0٢!̼>  X}lXtJPvcM I x;W%s}1)-ŻƭUV|H?q(hYyҹJwVvEՊjP/ϟ+Dq\pjb*)5|i!R n!f'Ǩ8Y9y  !SX#4K17>*G(<M0A[XǛ][Ј>@!Nv@wnx\|Vˮd[Z՝r9ZY'is QLuޝrLE'aNj^+AC-` WnՠFȫ} f%l{?݀nz`XTR$,(c[Y`٣]TbzM1#>Wuk PjV[͒zqp6N CTF b-,d P ]16*>iPwVjXvGamCZp9Ñ)rmwstFǴ3'7ljYյz3a!ڊVrg[x+hZu F xJ?7wA댚X#Hp/l[mc$ mD9NpO$ؾ_L*?#)i6'WP:<1//ԑS y,e}~찛=)-ˣPYV7_UK&rJ>?gjekPJ%QR u1Ī|*ZGZo j\6z)ʲ,%aNS,A lO+B :}fI0~_{65)6feL}%ֲ4Y|*v1:ܗ$atѴoJKɰS#Tn-/zq"YE://dI&biԖy|(9C#AG@Bΐ3P8a8 lX( Gr* ivԇ~/d1t!i}S8R:a*ӧ,6 %)Hì˸y٦ONʓS#I1g@5FU_ wxCʸt(7* c{':qRtېɢ/Z3_s<C~VъsK!"P,zk͉!,k BDaf|z3sr21Rx"kX &-iE ,bD< 5Bm^-8Ss݈c}cٿoY)<ֽC <6 R,jDb5d#y?B6Qo8v؁~LCnC5R7؏ޅZHRXm^*HJ{ $sn̡'ws`'Ɓue3B{\gA=Xr% 1[D"UI⨲@ 4# U8zvR_<'Ia(@k,Q؊O69\E֮zg\;6`nq|vq#$%$F_(f+S5Y;/Ep0װ?uɮ*D%LhuUoהVR4Dq~y$c6/3Pt3|jPI傜xqrNAv?&V˻&]&y(^t% Z%[~qV^GMЭT N]G[GF86p A޸',~Peo30%Qti)w߉^yI*e9d4*)Qn;S<0$J#Ko$ =Xh DlDK ՞o|7[ƐS<+ڈ.neuFXAJ~E a-D7^f9݃H\'r|Y{&70<,AVrš=;L,MH(Ñ1Q،Vy.z@],W#rk?lU3Kp/X.iOQ ]|*rP8~}u< @9+9zn`e6øS`b*p_˔Mb#~ZW3] 5А`` qt^[Siѽ5Qw@5'iߏC Q:FSsz,N[0+p26s3ȨU"),nW rGf Xޤ5.TЄ ƢASN a'X-vvE7ہس»k`RR&C¼SC3rVG< cvJlPUTjd ӟ XGK~3n"6StgWUQYlutWuyky\g:z#,isqD/QA\(_s]J y{e8yH"ft#νCD ka&mV])Q3SaQӓ0 ,ޮiR5,5MD여9D=/%PlX-Dt`lO!I9] ޕ}ԂC06 EN&A!1ӟϦCZ1o[r[)Vrjuo.^ijz9~U u0{|$l&dª5&EӒZr-|8~3@STFUC9Ց|Yf^^!yOQU|&pn%QyTjLw"ڈ5щl&36,ѿ$4"Ļ˝cq`Ic ±p|Lb%G|%WGD_~@0V[x^NPU  ?6EA:Oɰ/{+TS=ox[)(S1z0#2'?P6KJ:V2WDyi VkM~_ h =h(W$j-c 6<|,N0ۚF8lBWND[3 πA{|8w>@]u0e&Eѧ YPX31r6oƏ<( LUN*X04!4da;'aX^j Q5n\4Z/GsOR b{R`Bi6 Mȭ4}OW9UVS1sK_=NPc +).04?nTaTjx-ax!|!_2ҪF|A|WCېT >ĵ0޾s<:u<'e yjI*L۱$[M5^eEx^XOS0hLnqۧ- 14#sBYu7>u=h& A >F hxf,ھlL]qH 5)N|Mx jӴ)==y߰3y[*S3($@/rNΧNqxr1sjèKpVhF<5qՓ?YFQ2y#\cK yR#ov~iwVY= [5%&UBR՛. ,m¯Y[`?A(v DwlyH(L <cobr . ݕPF{aKX`DZsY/1LӨǼml =4f_(9 JbYr}@xSc1I\[6.6ޮ?  1mylS1$QDqiB D)R,`'oY=ceͫLR> : Z>[czs>}N'G\uC MImsKD5E}Sb9c01ܛWxZ)eq/ 99Q4(Io>Mrr=e.+hp1ZFyvS9Gc>3aE&q6 pha^.')H 87͈A9K: ݀q׀}WII\",ioT4ܽT)tYsʤ ~MGVIԄjw|#d^eޑwR /-c/4=u][ J\He_/Aܘ1Z$6")@QA=5Ƽspx%llƐ>W"iZ@ћ%}S6>A1>tűC$,_劤8tw8v%;E . }5txg&qʌn3ScD/K"K$B7 ɁJrAQ_Uaϥ#-+n'4N 6Olw=h>=)}5;L4R(7R_ML.+P8*觫'Hn,]d .KeJVffR< NtYƣp:hٵT"0f&%u3b ta exƛ1U'Ÿyp|{%&Q`jn>@\ɼzomഞ7';j/ Bl=wˇt)8VVq*MjnCXcsJjD| {$L8]& z91D Wvػ5HYp:"+]{Apq]escl?' A?~'@tZlUϹZhz(Y{\Y/s@9>[QQ>͝*BdÀp-PNۿ>ؼv14X(Nմb ҈@<1*XJӢY JA?\_* ԾqEǁ|'gT96[|zǫX7&H?@W @>._ as^oJ$VKld 63lJ/-Zrv٤]Nn68 v3 Dr)QH!g :!Vk; ȴ֚ꃆ`!2Rtknk lqQB@b,Upj-^.l,gw{n=us)S~]e)Mt|f /߀5[ J1qjѧo.q(wj{S"FU/oQg4$-"ze%sTo1*9(pP4C&0y7Ya_< e|Vdv)륊&7ޢ+n/uyٔh }bj@yq!JPC= A@[T?SIWgrrNc]cSImVN_ތHYgZsɤk-b" w/C^U^/m.ܾy.km[P]?^ޓ7OĎVJҜUJզI;BT)5Rv.XJFNԙB6<[-i&gJ7JLˬ Q 0g̀?~_-xxʍ4*j"GENli|KQIX4 h.DȄsaI2yM<x蔘)96tj\_nbO,jߗNcp >?Iү+,B++Z^zaa#4}zx'jBb¢@[ c.΃Ĩ@kbgޔego^Fڷo:WaP7&d ]*Ǜlmy) !ԡhVrz"?؏ABqMvKRND%:$/V"d(t(t{.<VPlcӀֱpMU07c"7@#[7X;XpB*HBRBivhan[~']`bs\Ǟɂv@bk::a.ʔiY 启zRa@kƻY{ӆ ىu=ZѰrA ]83DzWk7Rx"E5P#oNs}J9 R29{6:XEK[c푵C9[4x.Pو KFX:-qSbu ٺҙoUc O؞ kH'q4D2IZ&KsvL.oa!vYɫ6&BJ6@[/4\,Js֥{d魂rSEBqP: f Hhq1u>s}ʹ[pÞe!DPfE@8bA N} SS@)F=zrl"]%1 :J:&*o~3y% [JgL KJ޷"p|V۟~v';V h A~5lG;;K􊢍%F ${8A)A9E.xuRcbZxrل$ϥ(%Wy7>uێ0}pԏ=r#UKEZ*o8 ~ߐ {گ`tK/.&m k\NO-`їPh<-rD%,<¡gWLC EuZl׈OJz6uGGYBBh؄t{QK1ѷԣM[b @a7юv`q=jaG‡s nnՙDV#ߓ5ЯFѯ7=<!$^&?K5X?EAP[8`>S|(("_܄C>4"`̃']rb\hv{V2\.Lq[Z0;D w@N#ΒbLHK=LYvu8?[#148spE%ͣC miMf)A؏m"?ːØdUzQo5c ғmYF8-K¡F dzLݢ8K#]^.{ZpKl ݓ| ?!p`~o٭s40pwl.x'ca-F$9dd,lȶRfMjtxMd?h\:Ⱦ` hQBWU&٘NY9Mlf7MIJ{^~qtx,%6-6>b4B \ C6/Z_`.o 9Ro / :Q0Yf8X lC F}M'$M+v9FiwRc 0l[U'YJz<kNnk7nȜ8?B7_ª6n);Q moS .MWzײOrIe+mBOdG ؏ٛj~09 DCiff}Iʿɥv\*@X Rd mYo4Pu5iD):N|r7LEp=SsW8/*u`]oM}׎/wvz/@;03ب>N[ħY4CvE}*[;>)瓝?#U<"Pz& Na5Xjpg^ٷX/HBX>"U-ǃeg FpydjjRx"7-)w7#+tQid"T9{n:^72 Ԗ8H't@ t-=N*[KW@YIe/T3[3wrKT*oוjZc_6S+qh/~<8MV5!'sS@͍xXx(߀f@7ԻO!@?A{mI '/)7idV)r_F7G6T@ +eAOA^ids?qL*!A'd W|'u<84h\Iv)r0((B<ࣆ-mT $3gOݤWtghsE<詁mElT:YDNbszlӏ/`lw aV8_x&<WTōmPKۯp4"3 cB@ 06ou%f5BKX b6ƅZ̲׍8l|%q3:h |5eM#3Nܧ(EU9r?zeS<Ϧ&Jw;84uJ&cC"Џt1DٓtT+Teog;p?fy1R H1+0g!gW>QQ6M8WxYdZZ};hT5ooh Gmg'=ۦ ū!Z0@ܠ-Sg:q "},O_Uq,+SftT- h(Kw;dM04!p͇LBH̊f"m%"e"UjPXFy@m'0eڪܰr'Fm NNPTH90F ՌfϔrikI#;%:ﺪZ|ԅdN$+V@KB |rH__FXHhۖvͰ,dX<.:H;޲) +e6igǻf§tO1Tfb3"6{{q#ďx((%WJ;1սb;@f^$܅y5q9bc4d0n)x:SgrV@&>O먑/(ӱB7yq[UZ4*-`Z"H:/Vjh⩥K\FR!&P?t;@9Ά^` 30"`UI°b}}u? B٬C(ᕥ}LʼnT ^:sO]c.+c]8V%]^_`j)%Ɂ$R\߉2`֞(jz +vx^!1^<>.}̅/ ٿ6Gs4Q ԶE' `wb?eϱ9.P8C8NJIa΀2AkYp]}h#sb(́kFA2Z6^c˽/@vjq"%Gv֘6ig~n ZޞR;]Osg<=Yu8O3 ܇  w.^(:J^CB "0Qnpfzi9n6):ƸNV2"e]?{^Ƈ>㰊9 C, Є#MhP5LUe#ʬ~)/m0ӯyO֏+^ݱ#fSuUry>S7bZxoǠ ,ٿ%@"UolsAfDH7 8H.z*鋟.(mhx 1-W>/^CjdRvs 6"w2=ol@RT3Wl5!Ъd cX$3VGoEGl:^K_ʰ􈞫\56 fG~ ̐4mq\)" 2GؗliW0{@)RVuz2ݪ Oca'`u%IN<(J.}Ul0K*ĉ(5>ZWTS:1B6a/Pc{(:DdEkGZ$nyu';wRMOzBwI\91=kN_9@BOqu]OXЖ1Y%% *Dx!rD—̌ Ցv$i[0(.I'NḒ*_GHLSH5YB'e&uպTg}/fG JuVȘx̸ۙi_c'*߫EDjCho̾VmVSo# g8ZwX&W88[(βMtqF*s~0\xZ ZF#\R(zSfyl-=)?MbPs4`5ÍaEC6 0U=D\ߙ7eP@%G ( r)eX0 $=P[6 &!aҗbul2xolAksTPA h.ǭ"}8D)҅*-F陴ZFu@j@,kNenֈgC6;|7IbM#UJ|eO A CR+v#[J5\ۓ;`_DB[(>IN`ݽ*9)tsfu;8 [OE3u/: <#Ϩ$ eՈ/ؐY¡9:43Y-oI߶Gczt&Km@uTeM %QϜIAf7_`)'Bj0F|1 JiQxތҀb"a x=Ԝ$ U?Ygpv=ҖI?L?ـ1Hsl0yE{"I띘LgTf?fڣ=$T1R'-5QOIPN)d'9R +t y a"|#RGdh <7 k81/el>{EjmY0詽'RđBϡbdaV.3bLH2_7@b_ʇ8qmY ϻNԗr1/-Zauzlak jgt(N?<9[ȹO咶шٖ}r),_!"W{svfh LWi t!@:?ٽTzXa7[ù1NL qHΓ6A T[ٛFu)x? Q=9V?4MټzhD.賕H|I~/'4Nv"㘛 ʰT6 U*,0>d,24Eʂ'f$B2ZG 0ѮC['MOṯM!.^r%C¢ ~+?p ip8SVZ#.nߺ&tS~ȵHOhp&S:B)1 Gi 4hn@$wG6b0X@H[oiqd PP e1v06;\ۇN@Wm* /s-ru5k5 uH1$,Ġ /S6N3O>:uiLZb%0U渎KTgݶ7&3rpŸ2pUb M$o3QH̪\??Ё\[/bhIV ɛ(If+ @  zeYxvi%$%<!XF^sіߞ52ӅخM YZ