gnome-remote-desktop-45.1-150600.3.6.1<>,ip9|Gɋ~ z`|-61 m­T{a3:VHx#Dr*q^ RLj.f;/Eݠ]k1U3%Bl|%f0ߧwP9Ij߸6Aٸi-rZwyC0,2|H{s}T]d?}dV:?x<  Z4 N9fLGA h r-%ڼSFyE ™>H?d ) U  1Cw}x             % f %% 9%( {8 (9 $(:=(>i?qFyG H I XY\4 ]h ^ bcMdeflu v,wX x y+zl|Cgnome-remote-desktop45.1150600.3.6.1GNOME Remote Desktop screen sharing serviceGNOME Remote Desktop is a remote desktop and screen sharing service for the GNOME desktop environment.is390zp34 TSUSE Linux Enterprise 15SUSE LLC GPL-2.0-or-laterhttps://www.suse.com/System/Managementhttps://gitlab.gnome.org/GNOME/gnome-remote-desktoplinuxs390x if [ -x /usr/bin/systemctl ]; then for service in gnome-remote-desktop.service ; do if [ -e "/run/systemd/rpm/needs-user-preset/$service" ]; then /usr/bin/systemctl --global preset "$service" || : rm "/run/systemd/rpm/needs-user-preset/$service" || : fi done fi if [ $1 -eq 0 -a -x /usr/bin/systemctl ]; then # Package removal, not upgrade /usr/bin/systemctl --global disable gnome-remote-desktop.service || : fi@{HXF큤A큤A큤A큤iiiie53qie53qie53qe53qie53qi079f7e5599bf9b0c8fd85ea44b5691ecaa786d1fc6790d04b3b64a04474ca73fefb5c064669ba0beeaab1407351a7e9166c22de5a87f10b880378fa6a5e6efc137f05cddc7d365ab51387a7ee62fb422fcbd3f365656cee9b08353b24a4684db7b0cac82fd5de487a8891f57363e68c928e81695b9be1b94496f0a41c019c6d128f297a4fac8e1a69c57f95b0998ce388c03e558084992f88e4cfeedc57a03755ca973a36124c0fe2dfb9b6187d472fd41ee0b808d0960c8e280cefa765851bb9acf8e89e82e92dd9fa676369d63b6abcfc6d8456dc0bd6c8f4c2a62c8c03a2b9fe5fe044708165643aaf3ef4d53b9a6c613129a4b3b2a3789e44dd8f1be17408177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b88064338ae508d3aa4bcfe981d1deac27a0b208c80abc3584b4379a4fef52eef9d441erootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootgnome-remote-desktop-45.1-150600.3.6.1.src.rpmgnome-remote-desktopgnome-remote-desktop(s390-64) @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@     /bin/sh/bin/shlibc.so.6()(64bit)libc.so.6(GLIBC_2.2)(64bit)libc.so.6(GLIBC_2.28)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.33)(64bit)libc.so.6(GLIBC_2.34)(64bit)libc.so.6(GLIBC_2.4)(64bit)libcairo.so.2()(64bit)libei.so.1()(64bit)libepoxy.so.0()(64bit)libfdk-aac.so.2()(64bit)libfreerdp-server2.so.2()(64bit)libfreerdp2.so.2()(64bit)libfuse3.so.3()(64bit)libfuse3.so.3(FUSE_3.0)(64bit)libgio-2.0.so.0()(64bit)libglib-2.0.so.0()(64bit)libgobject-2.0.so.0()(64bit)libnotify.so.4()(64bit)libpipewire-0.3.so.0()(64bit)libsecret-1.so.0()(64bit)libtss2-esys.so.0()(64bit)libtss2-mu.so.0()(64bit)libtss2-rc.so.0()(64bit)libtss2-tctildr.so.0()(64bit)libvncserver.so.1()(64bit)libwinpr2.so.2()(64bit)libxkbcommon.so.0()(64bit)libxkbcommon.so.0(V_0.5.0)(64bit)libxkbcommon.so.0(V_1.0.0)(64bit)pipewirerpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)0.3.03.0.4-14.6.0-14.0-15.2-14.14.3io@gee5ejdd.@d@dsB@df@dC@d@dcl@cS@ctcV~@c'@c@bbbbbi0@bf@b9@b8hb'E@b @aa}3aHwaA@aA@`W5@_I@^wS@]@[tZnmgorse@suse.comjoan.torres@suse.comyfjiang@suse.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.comluc14n0@opensuse.orgbjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.comdimstar@opensuse.orgbjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.comluc14n0@opensuse.orgbjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.comdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgbjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.comdimstar@opensuse.orgbjorn.lie@gmail.comdimstar@opensuse.orgfcrozat@suse.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.comhpj@suse.com- Backport connection throttling (bsc#1244053 CVE-2025-5024 glgo#GNOME/gnome-desktop!321): + 0002-daemon-Use-GError-auto-pointer.patch + 0004-rdp-sam-Dup-fd-kept-in-struct.patch + 0006-utils-Add-some-time-conversion-helpers.patch + 0007-utils-Add-helper-to-close-connection-and-notify.patch + 0008-Introduce-throttler-class.patch + 0010-throttler-Introduce-limits-struct.patch + 0011-vnc-server-Hook-up-VNC-server-to-the-throttler.patch + 0013-throttler-Allow-overriding-hard-coded-parallel-conne.patch- Ensure PIE (bsc#1235929)- Explict require higher version of gcc on SLE/Leap.- Update to version 45.1: + session: - Assert region size to be greater than 0 - Add debug message to also output new EI regions - Scale absolute pointer position with respect to the EI region - Clear all EI related instances before dbus session stop call - Only notify keysym when EI keyboard is available - Add struct for absolute pointer motion events + vnc-pipewire-stream: Don't remove buffer while dequeueing it + rdp-pipewire-stream: Don't remove buffer while dequeueing it + Adapt usage of abs pointer motion events to GrdEventPointerMotionAbs + Updated translations.- Update to version 45.0: + vnc: Also include DRM format modifiers when resizing PipeWire stream. + rdp: Also include DRM format modifiers when resizing PipeWire stream. + Updated translations. - Change compression of tarball in service and spec to zst from xz. - Drop dbus-1-daemon Requires, only needed for tests, and we are not building them currently.- Update to version 45.rc: * Use default RDP and VNC ports again. * Use libei for input event plumbing. * Updated translations. - Add pkgconfig(libei-1.0) BuildRequires: New dependency.- Update to version 45.beta: * build: - Add an option to enable or disable tests - Use meson to setup tests environment * ci: Simplify test code by just running meson test * context: Add getter for runtime mode * daemon: Fix acquiring screen_cast & remote_desktop proxies * egl-thread: Properly initialize egl_image * rdp-audio-playback: Fix type of PCM samples * rdp-dsp: Fix error condition when AAC encoder could not be created * rdp-fuse-clipboard: Check data size before dereferencing pointer * rdp-gfx-surface: Stop direct usage of RDP surface attributes * rdp-graphics-pipeline: - Always reset RFX context - Remove superfluous condition check - Use surface mapping to map surface to output * rdp-layout-manager: - Add API to invalidate surfaces - Also set surface mapping - Always invalidate surfaces when changing the layout - Duplicate virtual monitor in surface context - Ensure that the correct desktop size is always used - Fix calculation of surface position - Output debug message when disposing virtual monitors - Output debug message when preparing virtual monitor * rdp-monitor-config: - Also determine layout offset - Remove superfluous size sanitization - Short a few lines a bit - Tighten up primary monitor determination * rdp: - Move surface resize handling to stream class - Simplify encode handling - Use virtual monitor size instead of surface size for layout updates * rdp-pipewire-stream: - Add signal to indicate that video size changed - Fix race condition when stream is destroyed - Remove superfluous attribute set - Remove superfluous condition * rdp-surface: - Add APIs to set and get surface mapping - Add API to invalidate surface - Remove unused output_origin_[x,y] attributes * session-rdp: - Adapt to the new invalidate_surface API - Add API to notify a new frame - Add API to notify new desktop size - Allow multimonitor configs in headless sessions - Don't advertise handling for the RefreshRect - Fix incomplete warning message - Ignore SuppressOutput PDUs when session is not ready yet - Reduce direct usage of surface attributes a bit - Remove checks that are never hit - Remove duplicated handling for resizing the desktop - Pass tests=false to meson, do not build tests (brings in a lot of dependencies we can avoid with not building it).- Update to version 45.alpha: * clipboard: Add suffix to MAX_READ_TIME indicating the time unit * clipboard-rdp: Add suffix to MAX_WAIT_TIME indicating the time unit * daemon: Make daemon an abstract class * daemon-user: Remove unnecessary includes * dbus: Add prefix Mutter to dbus names * rdp: - Adapt to layout manager - Add layout manager - Add stream owner class - Do not include monitor config header in session-rdp header - Ensure PipeWire buffers to be queued before destroying them - Fix assertion hit, when monitor layout PDU contains no monitors * rdp-audio-playback: Don't dereference RDPSND context when it is NULL * rdp-fuse-clipboard: Remove duplicate assignment * rdp-gfx-frame-controller: Use render GSource of surface * rdp-layout-manager: - Fix render sources not being triggered when wanted - Handle surface reduction in layout changes - Recreate mirror-primary streams when streams close * rdp-monitor-config: - Fix calculation of the desktop size - Fix naming of the graphics output buffer size * rdp-pipewire-stream: - Emit closed signal when source node is removed - Lock buffer mutex before removing buffer entry - Use error signal on PipeWire core errors * rdp-surface: - Add APIs to allow inhibit rendering - Add API to set surface size - Add API to trigger pending render operations - Add getter for width and height - Specify target refresh rate directly at surface creation * rdp-telemetry: Remove protocol timeout source * session: - Add debug message when remote desktop session is closed - Move stream management to backends * session-rdp: - Add APIs to acquire and release stream ids - Add error info for failed stream creations - Handle pointer cache size properly - Rename take_or_encode_frame - Stop ignoring mouse movement on mouse button presses - Zero initialize events array * session: - Silence failed message when mutter vanishes - Use stream path instead of stream for abs pointer motion events * settings: Make settings an abstract class * settings-user: Fix copyright year * stream: - Also save stream id for easier identification - Remove unused context argument - Remove unused signal * tests: - Also output return value of test client, in case of an error - Do not attempt to wait twice on test client * vnc: Ensure PipeWire buffers to be queued before destroying them * vnc-pipewire-stream: Lock buffer mutex before removing buffer entry * Updated translations.- Update to version 44.2: + vnc-pipewire-stream and rdp-pipewire-stream: Lock buffer mutex before removing buffer entry. + vnc and rdp: Ensure PipeWire buffers to be queued before destroying them. + Updated translations.- Drop %systemd_user_postun_with_restart macro from the %postun directive. It's been deprecated and emptied (expands to nil) on both Tumbleweed and Leap already.- Update to version 44.1: * daemon: Stop and clear rdp/vnc servers when start fails * session-rdp: - Prevent DVC reinitializations on session shutdown - Fix small style issue * rdp/rdpgfx: Use correct GMainContext for protocol reset source * clipboard-rdp: Make warnings more explicit on content conversion failure- Update to version 44.0: * rdp-audio-playback: - Fix typo in debug message - Also output client version, when version is too old - Add SVC fallback, when DVC is unavailable * session-rdp: Disable audio output redirection for mobile clients * build: Bump FreeRDP version requirement * rdp-dsp: Fix typo in error message * vnc-pipewire-stream: Acquire EGL slot for transfer tasks * Updated translations.- Update to version 44.rc: * build: Bump FreeRDP version requirement * clipboard: Always call g_task_return_pointer() after reading content * egl: Release current context before destroying it in error paths * egl-thread: Add ability to replace transfer tasks * hwaccel-nvidia: Replace deprecated function cuDeviceComputeCapability * pipewire-utils: Fix a few style issues * rdp: - Be more strict with invalid monitor layouts - Stop dequeuing PipeWire buffers while destroying the stream - Only invoke frame source, when previous operation was successful * rdp-audio-output-stream: Destroy the stream before clearing its pointer * rdp-audio-playback: - Add SVC fallback, when DVC is unavailable - Also output client version, when version is too old - Fix typo in debug message * rdp-display-control: Disconnect clients, that violate message order * rdp-dsp: Fix typo in error message * rdp-fuse-clipboard: Rely on include dir in pkgconfig file * rdp-pipewire-stream: - Acquire EGL slot for transfer tasks - Remove code path, that is not hit any more - Remove superfluous condition * session: Fix a small style issue * session-rdp: - Add error info for invalid monitor layouts - Also advertise RemoteFX in image mode - Disable audio output redirection for mobile clients * vnc: - Stop dequeuing PipeWire buffers while destroying the stream - Only invoke frame source, when previous operation was successful * vnc-pipewire-stream: - Acquire EGL slot for transfer tasks - Remove code path, that is not hit any more - Remove superfluous condition * Updated translations.- Update to version 44.alpha: * build: Use schemadir variable for installed enums * clipboard-rdp: Also check for / separator when preparing uri-list * egl-thread: - Remove unused callback context - Remove unused typedef * rdp: - Avoid direct usage of the attributes of RDP buffers - Deprecate the legacy graphics path * rdp-buffer: - Add API to actually unmap the CUDA resource - Add API to map CUDA resource - Add API to register read-only GL buffer - Add getters to retrieve buffer attributes - Make buffer struct private - Rename unmap_resources to queue_resource_unmap * rdp-pipewire-stream: - Assert buffer types to be either MemFds or DmaBufs - Decouple pointer updates from frame updates - Ignore frame data, when mapping memfd fails * rdp-server: Remove stray new line * vnc-pipewire-stream: - Assert buffer types to be either MemFds or DmaBufs - Decouple pointer updates from frame updates - Don't pass NULL as frame to on_frame_ready * Updated translations.- Update to version 43.3: + Updated translations.- Update to version 43.2: + vnc-pipewire-stream: - Don't pass NULL as frame to on_frame_ready - Assert buffer types to be either MemFds or DmaBufs + rdp-pipewire-stream: Assert buffer types to be either MemFds or DmaBufs + rdp-server: Remove stray new line + Updated translations.- Update to version 43.1: + clipboard: Always clear mime type tables when updating clients clipboard + hwaccel-nvidia: - Also output actual NVENC errors when API calls fail - Always output CUDA errors when API calls fail - Fix small style issue + man: Only include man page content for compiled-in backends + rdp-audio-output-stream: Set stream inactive before destroying it + rdp-monitor-config: Fix typo in verify_monitor_config + rdp/nw-auto: Fix crash when updating unchanged ping source + rdp: - Suspend PipeWire stream on exit instead of flushing it - Unlock stream lock mutex while suspending other audio streams + session-rdp: - Also check VCM handle when clearing it - Fix check when creation of virtual channel manager fails - Only print colour depth fix message when situation applies + vnc: Suspend PipeWire stream on exit instead of flushing it + Updated translations.- Update to version 43.0: + Updated translations.- Update to version 43.rc: + Many small fixes and improvements. + Updated translations. - Add explicit pkgconfig(gio-2.0) as build requirement to align with what Meson searches. It was already being pulled to the build by its siblings (gio-unix-2.0/glib-2.0) since they come from the same package. - Add explicit pkgconfig modules as build requirements: tss2-mu, tss2-rc, and tss2-tctildr. Same reason as gio-2.0 above, but this time pkgconfig(tss2-esys) was the one helping the others being pulled. - Pass 1.4 and 11.1.5.0 as minimum requirement versions for epoxy and ffnvcodec respectively to ensure the package uses the minimum that upstream recommends using.- Update to version 43.beta: + Add man page + Add TPM 2.0 helper class + Add TPM credentials using headless runtime mode + build: - Bump FreeRDP version requirement - Bump version to 43.alpha - Disable VNC support by default - List credentials dependencies separately - Sort dependencies alphabetically - Sort sources alphabetically + ci: - Add tss2 related devel packages - Build with VNC backend + context: Move out debug flags + Convert README data/README to MD + credentials: - Add TPM 2.0 backend - Do not crash when deleting non-existent credentials + credentials-libsecret: Do not crash, when deleting legacy VNC password + ctl: - Add support for TPM credentials - Fix error messages + egl-thread: Release EGL context before destroying it + hwaccel-nvidia: Don't dereference NULL pointer in assertion + Introduce GrdCredentials + pipewire-utils: - Add helper function for creating PipeWire source - Remove grd_maybe_initialize_pipewire() + rdp: - Add API to tear down channels during a session - Add classes for audio output forwarding - Add RDP DSP class - Add support for audio output forwarding - Combine buffer creation and resize operations - Don't dereference NULL pointer when parent dir cannot be found + rdp-event-queue: Correctly clean up resources + rdp-gfx-surface: Delete GFX surface before clearing its members + rdp-graphics-pipeline: - Extend comment with documentation reference - Fix uninitialized caps mutex - Measure bandwidth when sending frame updates + rdp/nw-auto: - Add APIs for bandwidth measurement - Also notify client about network characteristics results - Assert RTT consumer != NONE, when removing RTT consumer - Disallow unqueued bandwidth measure stops - Fix initial ping source not being created - Remove superfluous if condition - Turn assertion into normal conditional statement - Turn ping info condition into assertion + rdp-pipewire-stream: - Properly deinitialize PipeWire upon destruction - Remove unused SPA_DATA_MemPtr path - Use common helper for PipeWire source creation + rdp/rdpgfx: - Create RTT pause source while GFX mutex is locked - Only clear unacked frames when surface has frame controller + session-rdp: - Add API to subscribe to DVC creation statuses - Do not crash, when credentials are not set - Handle queued bandwidth measure stop operations - Stop leaking session sources when session creation fails - Stop leaking the event queue, when session creation fails - Use trivial boolean value for condition in graphics thread + session-vnc: - Add support for sessions with virtual monitors - Do not crash, when password is not set + settings: - Add new screenshare mode setting for the VNC backend - Fix title of specification in setting description - Remove a doubled 'to' + tests: Add test for the RDP backend + tests/egl: Replace tautologies with actual modifier checks + tests/rdp: - Add additional debug messages to RDP test - Add missing NULL check on stop_event + tests/tpm: Skip tests when TPM module not compatible + tests/vnc: Use mutter headless backend + tpm: - Add ability to do capability check - Make tss2 log into /dev/null + types: Sort typedefs alphabetically + vnc: - Add ability to resize virtual monitors during a session - Add VNC virtual monitor config - Allow passing virtual monitor settings to pipewire-stream instance + vnc-pipewire-stream: - Properly deinitialize PipeWire upon destruction - Remove unused SPA_DATA_MemPtr path - Use common helper for PipeWire source creation + Updated translations. - Add asciidoc, pkgconfig(fdk-aac) and pkgconfig(tss2-esys) BuildRequires: New dependencies. - Pass vnc=true to meson, build vnc support even if disabled by default upstream. We are not quite ready to drop that support yet.- Update to version 42.4: + ctl: - Do not crash, when deleting non-existent credentials - Fix error messages + rdp: Don't dereference NULL pointer when parent dir cannot be found + rdp-gfx-surface: Delete GFX surface before clearing its members + rdp-graphics-pipeline: Extend comment with documentation reference + rdp/nw-auto: Disallow unqueued bandwidth measure stops + rdp/rdpgfx: Only clear unacked frames when surface has frame controller + session-rdp: - Do not crash, when credentials are not set - Stop leaking session sources when session creation fails - Stop leaking the event queue, when session creation fails + session-vnc: Do not crash, when password is not set + settings: Do not set error twice when secret_password_lookup_sync fails + tests/egl: Replace tautologies with actual modifier checks- Update to version 42.3: + egl-thread: Release EGL context before destroying it. + rdp-graphics-pipeline: Fix uninitialized caps mutex. + session-rdp: Use trivial boolean value for condition in graphics thread. + rdp/nw-auto: Turn assertion into normal conditional statement.- Update to version 42.2: + rdp-graphics-pipeline: Measure bandwidth when sending frame updates. + session-rdp: Handle queued bandwidth measure stop operations. + rdp/nw-auto: Add APIs for bandwidth measurement. + rdp/nw-auto: Also notify client about network characteristics results. + rdp/nw-auto: Turn ping info condition into assertion. + rdp/nw-auto: Assert RTT consumer != NONE, when removing RTT consumer. + rdp/nw-auto: Remove superfluous if condition. + rdp/nw-auto: Fix initial ping source not being created. + rdp/rdpgfx: Create RTT pause source while GFX mutex is locked. + Updated translations.- Update to version 42.1.1: + session-vnc: Don't leak the socket source + hwaccel-nvidia: Degrade a warning to a normal message + context: Initialize EGL thread when daemon is ready + rdp: Perform basic error checking in SAM file creation + session-rdp: Always check return values of API calls + Updated translations.- Update to version 42.1: + vnc: Retrieve frame members before stealing frame pointer. + rdp: Retrieve frame members before stealing frame pointer. + daemon: Only start servers, when they are not started yet. + settings: Don't crash, when parsing the credentials string fails. + egl: Use Wayland platform instead of surfaceless. + session-rdp: Only show NSC disable message, when NSC is available. + session-rdp: Fix typo in warning message. + systemd: Autostart as part of gnome-session.target. + daemon: Handle SIGINT and SIGTERM signals properly. + Updated translations.- Add explicit pkgconfig(libdrm), pgkconfig(gbm), and pkgconfig(gudev-1.0) BuildRequires: meson checks for them. We should not rely on any other package pulling it in.- Update to version 42.0: * Updated translations.- Update to version 42.rc: * Add 'grdctl' * build: - Bump nv-codec-headers version requirement - Stop making the nv-codec-headers optional * Cleanup server stopping * ctl: - Add --show-credentials to status - Add 'status' command * egl-thread: - Add methods to upload data to the GPU - Also allow bound dma-bufs to be mapped - Don't require callback function for custom tasks * Explicitly enable/disable backends via a setting * hwaccel-nvidia: - Add APIs to allocate and free device memory - Add CUDA kernels for damage region detection - Add methods to get CUDA functions and damage-kernels - Add utility functions for accessing GL resources - Also return aligned size when creating NVENC session - Load extra CUDA functions for GL PBO mappings - Push and pop CUDA context to and from the EGL thread - Reduce global memory access in BGRX_TO_YUV420 kernel - Unload modules before releasing CUDA context - Use a block dim of 16x16x1 for BGRX_TO_YUV420 kernel - Use mapped CUDA pointer for AVC420 encodings * pipewire-utils: Add functions to check whether PipeWire buffer has data * rdp: - Adapt to GrdRdpBuffer - Adapt to GrdRdpDamageDetector - Adapt to RDP buffer pool - Add classes for damage region detection - Add CUDA damage detector class - Add display control class - Add RDP buffer - Add RDP buffer pool - Add RDP monitor config - Allocate and register GL resources for each RDP buffer - Allow dma-bufs again when CUDA is available - Allow passing virtual monitor settings to pipewire-stream instance - Always upload frame data to framebuffer on GPU, if possible - Avoid local copy if possible - Defer cairo region creation if possible - Disable dma-buf support for now, if CUDA is supported - Only initialize clipboard if CLIPRDR channel is joined - Split up AVC420 encoding - Stop reallocating NV12 buffer every frame - Track and use rdp_surface reference in stream class - Unref frame when success is FALSE - Use internal enum for RDP errors * rdp-buffer: Add API to unmap resources * rdp-buffer-pool: - Prefer buffers without mapped resources - Unmap buffer resources with low priority GSource * rdp-gfx-surface: Add way to override the render surface * rdp-graphics-pipeline: Create separate render surface when needed * rdp-pipewire-stream: - Add API to resize stream - Don't miss any buffer data - Don't queue chosen PipeWire buffer * rdp/rdpgfx: - Adapt to RDPGFX frame controller - Add RDPGFX frame controller - Allow GFX surfaces to have their own aligned size - Allow surfaces to be created without an hwaccel session - Forbid protocol resets without AVC support by the client - Target render surface, when encoding data with AVC * rdp-server: - Cleanup resources directly when stopping the server - Tear down NVENC after sessions * rdp-surface: Create CUDA damage detector, if CUDA is available * session: Also clear signal handler, when the session proxy is closed * session-rdp: - Add API to submit new monitor configurations - Add support for monitor layout changes during a session - Add support for sessions with virtual monitors * settings: - Add new screenshare mode setting for the RDP backend - Move Secret schemas into a separate file * utils: Add helper to calculate aligned sizes * vnc-pipewire-stream: - Don't miss any buffer data - Don't queue chosen PipeWire buffer * vnc-server: Cleanup resources directly when stopping the server * vnc: Unref frame when success is FALSE * Updated translations.- Update to version 42.beta: * Add DMA buffer downloading support to EGL thread * Add grd-utils * build: Bump FreeRDP version requirement * ci: - Build mutter from git to have the updated screen cast API - Install soon to be needed dependencies * context: Hook up the EGL thread * cuda: Fix out-of-bounds source read in BGRX_TO_YUV420 kernel * egl-thread: - Add API to query format modifiers - Add API to run external functions in EGL thread - Add fallback with EGL_PLATFORM_DEVICE_EXT - Add sync function * hwaccel-nvidia: Use compute devices retrieved from EGL thread * Introduce an EGL thread * pipewire-utils: Remove unused sync function * rdp-gfx-surface: Don't forget to set the surface serial * rdp-pipewire-stream: - Add support for explicit DMA buffer modifiers - Fetch cursor state before framebuffer content - Make buffer processing a bit more async - Make GrdRdpFrame ref counted - Move pixel copy loop to a helper - Use a helper variable for the pending frame - Use EGL thread for DMA buffer downloads * remote-desktop: Synchronize remote-desktop API with API in mutter * Remove semi colon after GType macros * Rename GrdRdpNvEnc to GrdHwAccelNvidia * screen-cast: Synchronize screencast API with API in mutter * session: - Add methods to create streams on-the-fly - Add method to notify subclasses when session is started - Port record behaviour to new API - Require stream for absolute pointer motion events * session-rdp: Move on_pipewire_stream_closed() down a bit * settings: - Fix test RDP username override - Unify code style in gsettings schema * vnc-pipewire-stream: - Add support for explicit DMA buffer modifiers - Do not allocate frame data twice - Do not leak pending frame, when destroying stream - Do not resize framebuffer when client is gone - Make buffer processing callback based - Make GrdVncFrame reference counted - Move format details helper to common area - Simplify buffer merging - Use EGL thread to download DMA buffers - Use GSource to invoke main thread * vnc-server: Make refusing VNC clients more explicit * Updated translations. - Add pkgconfig(epoxy) BuildRequires: New dependency.- Update to version 41.2: + stream: Add method to disconnect proxy signals + session: - Stop trying to stop the session, when it is already destroyed - Disconnect num/caps lock changed signals when stopping - Fix small style issue - Only handle Selection* signals when clipboard is enabled + settings: - Clear settings of type string before setting new values - Don't leak credentials, when username or password is NULL - Set error if username or password is NULL + clipboard-rdp: - Make a warning message a little bit more explicit - Make SelectionTransfer requests async - Fix error message, when runtime directory creation fails - Fix small style issues + clipboard: - Split up SelectionTransfer handling - Also clear GMutexes and GConds on destruction + context: Clear proxies before setting new proxies + daemon: Also clear context on destruction + rdp/nw-auto: - Only create ping source if required and non-existent - Also clear GMutexes on destruction + rdp-graphics-pipeline: Also clear gfx_mutex on destruction + rdp-fuse-clipboard: Also clear GMutexes on destruction + rdp-event-queue: Also clear event_mutex on destruction + rdp-pipewire-stream: Also clear frame_mutex on destruction + session-rdp: Also clear GMutexes and GConds on destruction + Updated translations.- Update to version 41.1: + vnc-pipewire-stream: Take frame data from pending frame, when needed + rdp-pipewire-stream: Take frame data from pending frame, when needed + rdp/rdpgfx: Unref surface serial after looking up surface context + rdp-graphics-pipeline: Fix small style issue + rdp-fuse-clipboard: - Fix potential race when accessing FuseFile path - Fix small style issue + clipboard-rdp: Always check return value of ConvertFromUnicode + session-rdp: Only signal GCond, when all encode jobs are complete- Update to version 41.0: + Updated translations. - Set .changes to be filled via service file, since upstream fails to provide a changelog/NEWS file.- Update to version 41.rc: + No changelog provided by upstream. - Add pkgconfig(ffnvcodec) BuildRequires: new dependency.- Update to version 40.2: + rdp-fuse-clipboard: Handle FUSE lifetime object in FUSE thread + tests: Use bash from environment instead of hardcoded path - Changes from version 40.1: + clipboard-rdp: - Also output client capabilities - Add dummy handling for the Temporary Directory PDU - Advertise clipboard data locking - Adapt to data locking changes - Add APIs to lock/unlock the clients clipboard data - Implement clipboard data locking - clipboard-rdp: Use g_idle_add() instead of g_timeout_add() + rdp: Allow submitting clipDataIds for FileContentsRequests + rdp-fuse-clipboard: - Remove the old API - Use notify_delete() instead of notify_inval_entry() - Be more verbose with file range requests - Read files until the very end - Handle all file lists via clipDataIds + rdp-sam: Remove stray trailing whitespaces + pipewire-stream: Don't leak GSource's + build: - Add missing new line - Explicitly depend on glib >= 2.68- Update to version 40.0: + rdp: Add support for FreeRDP 2.3, support 2.3, requires at least 2.2. + Manu bugfixes. - Add pkgconfig(freerdp-client2), pkgconfig(freerdp-server2), pkgconfig(fuse3), pkgconfig(libvncclient), pkgconfig(libvncserver), and pkgconfig(xkbcommon) BuildRequires: better align with what meson looks for. - Change _service file to point to the proper upstream git repo (gitlab.gnome.org/GNOME/gnome-remote-desktop). - Drop gnutls-anontls.patch, 0001-vnc-Copy-pixels-using-the-right-destination-stride.patch 0001-vnc-Drop-frames-if-client-is-gone.patch: fixed upstream: fixed upstream.- Update to version 0.1.9: + add support for RDP (requires freerdp2) + many bugfixes - Add pkgconfig(freerdp2), pkgconfig(winpr2), pkgconfig(cairo) as BuildRequires. - Bump pipewire minimum version to 0.3.0. - Update url to GNOME main project. - Add0001-vnc-Drop-frames-if-client-is-gone.patch Avoid race condition on disconnect (glgo#GNOME/gnome-remote-desktop#43) - Add gnutls-anontls.patch (Fedora), requires patched libVNCServer. - Add 0001-vnc-Copy-pixels-using-the-right-destination-stride.patch: Copy using the right destination stride (glgo#GNOME/gnome-remote-desktop!21)- Update to version 0.1.8: + Port to pipewire-0.3. - Replace pkgconfig(libpipewire-0.2) with pkgconfig(libpipewire-0.3) BuildRequires.- Update to version 0.1.7: + vnc-pipewire-stream: - Assume no bitmap offset means no bitmap change. - Close session when disconnected. + vnc: - Request cursor sprite as PipeWire metadata. - Detach source when client is gone. + session/vnc: - Set rfbScreenPtr pointer earlier. - Update server format earlier too. - Always set pixel format translate functions. - Don't requeue close session idle. + Use type safety feature of glib 2.58. + meson.build: Use default C standard. + Remove autogen.sh and Makefile. + meson.build: Bump pipewire requirement to 0.2.2. - Drop pipewire-bump.patch: Fixed upstream.- Update to version 0.1.6: + Please see https://gitlab.gnome.org/jadahl/gnome-remote-desktop - Add pkgconfig(libnotify), pkgconfig(libpipewire-0.2) and pkgconfig(libsecret-1) BuildRequires: New dependencies. - Drop gnome-remote-desktop-bad-meson-option.patch: Fixed upstream. - Add pipewire-bump.patch: Fix build with new pipewire.- Initial package./bin/sh/bin/shs390zp34 1772199088 45.1-150600.3.6.145.1-150600.3.6.1 grdctlgnome-remote-desktop-daemongnome-remote-desktop.servicegnome-remote-desktopREADME.mdorg.gnome.desktop.remote-desktop.enums.xmlorg.gnome.desktop.remote-desktop.gschema.xmlgnome-remote-desktopgrd-cuda-avc-utils_30.ptxgrd-cuda-damage-utils_30.ptxgnome-remote-desktopCOPYINGgrdctl.1.gz/usr/bin//usr/lib//usr/lib/systemd/user//usr/share/doc/packages//usr/share/doc/packages/gnome-remote-desktop//usr/share/glib-2.0/schemas//usr/share//usr/share/gnome-remote-desktop//usr/share/licenses//usr/share/licenses/gnome-remote-desktop//usr/share/man/man1/-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.suse.de/SUSE:Maintenance:42946/SUSE_SLE-15-SP6_Update/21e43a74d16352f9f8ad0bfc7c6aa605-gnome-remote-desktop.SUSE_SLE-15-SP6_Updatedrpmxz5s390x-suse-linuxELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=03fa6f30e52da060c27ba698aa577f09e2444480, for GNU/Linux 4.3.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=0dd84943e28fad4f86ed9421b60047c632473d24, for GNU/Linux 4.3.0, strippedASCII textdirectoryexported SGML document, ASCII texttroff or preprocessor input, ASCII text, with very long lines (gzip compressed data, max compression, from Unix) RRRRRRRRRRRRRRRRRRRRRRR RRRRR RR RRRRRRR RRRR RR`2cyLlsystemdsystemdsystemd-sysvcompatutf-8ac44c3267b82dcf358209a18bc14e25e1b52f7625e0f82102676924ad76729d9?7zXZ !t/]"k%!<|dg`Xh Ӛ U24lpST&Ps'Д;U$yN-\ ~(s yZS YwQUXyY'0Ԩ%%CZ}z)ٛ=3Dnm.aSǠ"# ޑ9!t<mP 1i{jt*IPo 5 #̨:(kةX~zQIb[@MF6<<^T"c~%2loN90:Uɖp Z3Ё穙Z$x2a #S q>JvF&)wf7PFv-@c$K~.1PyUII M]&m*vahhTvۋ׵f|ba "ܢesqݳz+WpٕQ#C9S|d!)LnWԦ px ǁ -ZPi?k2@Ncɿ3]6۫lO/[At_Z(:"S*ɐ+A ̬%Ǻo$7ᘫHJ77²[m9T.@&_U/nܱxʵes4&aA6AHmY۷!LKNؖ2aB؂KL-t!AOV`pJ SmhEX,,~GM ז*5`:W5Qw5,`4? 㚽Ňs e{R_Fyh~YJM$2ei[p:Q!+l~Pݴ۱b [Wg}EGYxLT6=i,G^&4B{PR%c 4%X$|[-`?6 $7 XMII 'oGNM-93iiap*)'%?AcOxk=iE5PYVmP1|FOF}_s>pZkZ_A̕j]ϵܤ6!m[A|W)Q@Y'͞OIo6C@2~Ŕ30678w\NN{;B-ϾUݓZ ?^" nOYdyLí8k^5d*>[ G5m&H΃z<Tkw (m20;Hns˖܆w\ܥOꈍnX/y <Ȅ3z\5jP~ >d>_V^REp;Y G߅^  )X3nFu /9Eܻ۲GLpKZA~ۺY>_ɮ\VQݞXS+SRU:VA%9 V5fA |poMe`G"hN\>nvIyp[<6Su,y98 rkڥ5Xc,L4u_a/inLHhWMz3Ú&|.H*qyz\9/5|:{ТO[%~tjYgQh<?/4rf{v8@䀘dU,dʿ,ñr>7i]DjL!slROm&䥰o 'fifŒ$cZXFBzhuu6WMfM_[qUU'+>bf<3{ō/#P&܈ZK 5Wnތ{I&I˛J֨|O_.T0@E)e$F_/TD/frY!5 Ww0st}оM DVl3;HF>RBou(̃ӽ;Lˀ^ggģ&ꊓӡ:ӝ# [$_P{P<ì'=ݩBQ(+Yޚ)-O0W0i!b@\_ b07&&7ݧ|&$CAIjhSMIQ#;8\okīB倌ꫧe j(gNJ!O H!eYH{RF g^?&Q /t)X%t'LР{s0R.B }VF氐e0V0AAMpu>梊 :{؟}3wؚa!e] _D#wzydŽʣ%Z5f'eh^fg<3yqh'vBkFەwuo%`<|j-MM$WeZUGGr0o^ͻH y3~.jGiY, "<:ʎ(M1"^15`0(NgS<e3{=|lzhʕA",뮡0Fu֗K@ Rd-HgDE1P#H_N@ͶcbMX 1 VY\ L>ƙ |"Oo2n YKI??%cIYxҔ#ꊺbʏw,}Xf ;4ݟwJN7{~j8llZ #f9{Ycrcؒ=#!(e{"UR[݉Us;&Yq0?Ing7rwdjH+"I6K.9["#9 _:MWlX~GH0Ȭ*ąmThoT9D0ɷ(t[-_-YV^p fBʹNGmxIq͇r OgBi{,~Yi"OĭBI$)0NUSnͳ(">/b䂑|F&ǻ@k Kwk4>dAsuhxScؗ]-DX<('d@Ӭ#/,%vKb'%cwғӦh[SzcRG]ժ\W>q+cڼj'2`eܧ+EezB,XR/xV' \`WL$Zj k{D_IL{ғ bK m5ąz؅Mq=,n%V}}=ex H5qeN:m)~&M :F]U؉v3Na4_Ն{Oz$GLsBJ,E>@j)}J;u}'"xN: R tE>#ϼ4a >&/E"Uj݃.w{9gw*n}&I_省hD[=S|{x Bd7-9] SP t脃YRXK,\A˜ݓ 9YIM ܏|8'%Tƀ=R8̘OO܈ Béj(՟X.Ylbp6uګP&zS"ԔSmqR)S`bި@ژ@߯Y4xKsHetN`| }Gm·O{ׯda+S3b+KȮwX&6pE&JKσ "X531hFI]$72,%۫ p͍3*/HB`Bbx01؅N;'-D^qBg)kE n@T}>QVNp8hz%1`ƭ~h-\6P H^l`m0\O4ڮgu,D: O5C<x_#\\,k%H e:RAQ/+cǝfjQEPHP =6pҐz >pp?s1p|lMFE^i&Et8ɺͷja(zߟN$xUa5^n[QQ[):~`ɏF{a%PʸV 6D株<*]yh2Ջ{tPA^RKn.I6tzHgsvW~8gxgkaq$&H8 3]>ţy;<5j ;ush6˯`l꾩.SZ#J*z59=S79F-KӤ 4 ßv w@}6G-z1$E|2)4Q) |)dx|lVbnW0M}kV]Kz6X&q&Am +@O\@Ua/Y6'[[xYukj(3C;6TEB$:p>k}5tf/R7nl}DBy9Thƿ:=*f..9Nssh-=^xp`uuW2{{y$5k/YϪ\.qYBF5oiVنF;y4mxOI]/K+xF@ߵۄD/ڀ;̖,K:mTZlhc}U`<˃0 h>:aKM݋rx&2[F$|gkC~"ߩ-5daXapG^9XH5+< 0QʞZz5K. ^֯!oT۪W05ʿPΟm BP7~ *}? eV-Ju^ JE!bQBX_QK!cWAߟcT_ ʋLH7M-zA ,0?S.#*.b_`KmG跇V7v+@+nu<Hv̦Z986s&j2=A%d߬:nGO_L'q\;7pJZͿ\j6E8Uz>?ȴuAHZUjf~$h>VN5Sġ$G'߅!Wj1o ߣdH+%YDcL$5$A[@[7NYq2d˰422ͧy5(GS!Άj'zƊٍ&Hc=^T^51k,f;7|3WKfss+b <܂`K%Xc E'Rve6lN:f}4%dn7 {bYH5s̀?ƶu%.@7|) j|#Kg&4lM1cU|9*}pp5_soqӚpO*VE4>EbzM:e g=fJtOˡνvlBښ-h0Ëu@s:ZX0yY dðz#ȭm]9@7dZ1g2 4 {o ݜ^u|UN4Rx.c/.o,+4T'!_:]0m#o;gQ1+H;$フ`.> )-s[5v!˯6D>qh7qmMu2)t`Æ4?+=@-O=ub-oE =W*R-cD`X,R?R7-@¯1ªKV6kS' w#.7.1smŽu7GZ]dC:̓ Ƀ%a80TC~z=~38)-'/?uA¿OY>6u:dCBx7j^ձyv?TL؋AUH cos|;bNlb+SD ͦm$Ύ:F7$Ώ Ya|z5}L2Nqc-X WhuDpee>ݨc煤`7a;%ӽtQG #KyWF*J[ش-wEm;s#{ws~O]Ο*e7ϛ)N vPέ:UY_q։ĸ0A=>dV+}!wJۈqbi͞7jpzWݯ ;/aq8$ -Qԇ2K|jFy7Ƌ:pCaӡG'^/3]z3dd' pӠ_%d ٝ8:5PgZ*.E' |ފ^?d"5Br+귉Nހ9]lk{hdx(-P)q˞#侑oQUޠCFU4[@kRg@T1T ~ކ,>6"6;lPPYF`B PI+ls&+U TX"s_M\A8, o&]FʀHNDm q4C&} .NRʀߩo  AuW-T- [ MCTE^k2=&G)ЋzZ7kO4Pb5ق5$2G*;vH\ aKW$FY-=Fb_B4kig_+s+w iW${WXW>·g!.$s8j)3Վ;.3qI+l֍r'ki8=t=K Z1Cf>k@*]2q@ll b<IZZK`׵Cs[=Щ Uo9t|/yTGÅ`R"99 G\G"(!w~/z5D5Y:5扦Q9j6JK-=KO%瞻I%%ß; q17IRXrMΔtBUօaeWތZLa<>chG@ت:\DKuCf;ON.{%"$pۓ©@Q(+f~Ѹ0Jb"|a#X{"p EJ]3JM Re^;~XIYٕfR#쟁0Z_|h'dVf nthk! SVC[={Wmou2]B! $ #H^.K%О N>U#dA㐸97RFX%Di |Cl?Ha cQt9#=4oeKk7p6Lu!43Sdhפ|.I:6 G TViH-c/~~$Xw4)r g'\+-$2TmNRw`3_nVV+gr:"7\aXCͬ\W!αsJHojg4 ΤTM@s<iv M;~ q}3-kk|&1?AowSYaэ  Kqdxjc2#FKHC?,G~iPjm'X %|*h;zRFv 9m}i6IZg'g&1c WA"b}XG0!ށ/!O 9Ȑ%ݼx0eO৿L+Γ£ |&*jrvNJ @lz)JN)-i !4;_'ľmD0yKޥ#N-'q+׆,Tx@y'R&` C/l(|@ÖLSYC*EHs.ܙZRU]R7o\x9Ιk̷QHq|Q/u)es39*<2oEdSjq6S%kd !ԳJ,,ܻ~SOk fpra6Gbxhen$!HREÌ}[_wˡ{4c}v1p{ ` UI1bS bVtdUG fq%xجΪ^B}0-)-)MԅEr;im+} Њ雓Gn@iBu_H-Yon@s̚r1=YD<7vfaopP;ntam5צ e!=p܃'H(u[J9I,πC[>z-d\Ь9ZM4^O;̽\yoDy@1-g%o8 |tV `>e ’ $] R'+K;(6;\J:/p &f!O+|O&B[Yd}R7˅{A<`kc-ZZ?d?C~PO(E.2 3vRep"mh>Pڙ_0\Tf.Tl?f1H"rLjYoXTG=yAm0v0=)`T9!pdg^,4o‘Yiǵ!dF|Blg0_[=OMc&dh6l"{M` ڵDT57FJ(\W JoSTGnt_5 ਄Uq, Hj}01T AZS"Гχ^{kt0_搯AOfN]a|u|E.ZcO͆Xq+KU+}@17Ҵ@|Ώ`?*V>h (%Y)L*كA..7rIK<  G^:G9+Pdmi.7e,rd6Fy}\)zS2$p&ݛe͏T lnv6Lryi@p!NCs-P o:'`)P,Q.3ݥQKc:I̎hH#H4\[0絙QNz_(.ا˩&p 'WL5(·8ױ>6_cB8'4R]t$-c\r@Ы0 {77₍UnzfK]'* j4!\9L+Ǐu`HeݫgNb2B[vD;0U$ߒR7cPL uClD)4W9tjk1@ 3}( #dDs.-u12_941wE sg,,*40CʌaKɦoǦ _@R+`*Cgv`-˺H?b{k$㽒ɡ͆8LX3/U㌓xo?ćH Xz :/W Nۀ,#cm3dfEnƋ-#Jn{ŒuԱ Y H62~*$u.*󳮙{0JlCv/?1qԩ@J{^ `Oޓff6 n4nj̇Qd sy#_|Ih墱.Kj'c'ůPҫO)ؑ K\1GlH`J~#!bΤikj8܄cFC|۩] VװzY98jH0xS T%D @tzތ #ndodpu`: e '0νPzmPQw*bS( 'V91et8ZFcpRd̃&h'*P2$^@=)]VY?+x(@-TwV =eKJ*rqjΜ]W ,1*g+@۳;q. 0Ƴ'm}-qH).D'0DʕBҲ(1.!k3Vuit}نcKaƧ NOxn^ *!]yI}H5kǭ CʬIp-mo֗)q 7 z3 @"?F i@~d$2^¤2>QBsߠ V-6>/;bHq>Ͳ¹ #\ns׵GnƷvӐ eRnҲZr8[sL$(dؿ@/%DY ]bH:[Rx,7ne HX{?DK+±{!((ոo{˪L#\ l]H,`GhOn-ٱN@؃&,gꈚM: Rg-ˬloT) {$3W؅K6tR4}X,U䍯!"@A{7Fn²s;RXNɚ/4%(B%Bg0AKUcZS[p.h! y)b]'56dbᶒ;; ++T/w8@zwjvXAԑE3)G_mJ,CYg\1"fF-jEucBa-V ,pGhz'M(- so.b Q5?949THn%Gh> j!Ӟ'Ra3 >t1QRxb1"W0<~$^ܠ -.0ʼnU<,#(5ߠSGxq4ADo4Fkc2  y01%Ykw'uR7Ʉů*ɯF*f1o52ځo5bTLj-sz`lXK?15d L m-4r =0di@T&>qq mO'DŽ* 3eW4K݂İk`+:|="{-V,ob{XM-AmzOӒwmվ1wP4X*_?փ`/#}]~hWw0S>cg=(\ɜ~ʔ|$y.EXx9dوqjA"g(G9o  f)D4!;{hmŭBX2HDY]Z9BN7e8p< ˼'OM:*,`|m FlG 8`.A A?m&CE_TP1hBԊBc%}_jD&Anq US>K8c?(N/%Zf 4qL۶(?ݭpg#JrB[QusB!PԛPD@jG4*HWzZF yD= O@\g/u7]x@ɢb|nWIgGF0b/Ue'[u|0^D?wUt719 b?@y!1~g, Y_`~u{ c>Hъg8琳ӈXNDDiMb*E5|1iz osjDdegGpٖMwcҁt(nFLCڕk?W {^bʈ'eYo_;µP 5- {_1A~6|''0p{\첰']Bmlƒ($B2]NsIBVLo55A`UGwj/'cKrl<OHS$Ӻ) z嫻jJ2oZ\6~IM.S#y$ٽv@-~Enѵ 6[?Uոc `F%ȂߑeFja?Y{ﻯ?-GgU B:@! Lu/B50DŽNd qQ_7 V5 M7|7 |YXmmъW!zXwP$n8WVuy`uoB7A6ˆjg٦~D),;[y~ o\6sp<ط$DK#m.ęqR5xRA#  },.p72XlKUR>nZi7O?WM>/oQ A.H;`EǏ7v,Q AP:0TAK69-DfȯVܙζj_ Q 1l5趉eEt ?2Wj5vFyEc?Fǟ0~Ež܉쩁k:*'  ů$YlӅlR@6Z![Ld66ń>wSEUl4WԶ8\O~''{NmA?V4%GR539F9&쳭K1eYu2Abe sKK414ٺ9Cj%ŧnFNuBAK:/ 2*˳⃷ˋNmf|VZbkKhAv{e ̌m8;<eW[ "&nCKc87C/gy*¼9y8D2Iv@#F~\ɮ9u'.G Ep7KWg0NRKb?sCc&Uv" +}.!-Rp;<7uYtb= *WH0yF/N=\J ~ $XhYq1/0\5N?0빝xO4 N_T,tuA#HKc r} f[]0(WVGXnd&yRqjH9P)<5ъLb۲E,@z&thk .S~!*WXG$6v^fT+FT \kI?[p(D3䄂ܭ>Nҿͨ ۝ACaW͖:A o2oׄLgR+II  :D*wܚZ۴-fhaJ⹱sؾ;j|(nﲾ&+f D)!i&Ib" N֭B1Hy ۉ)1S,M ŻcGoBW\;j7]E!ȁ @\#r>IsnFIvw6Fg\XT%qAQqo󖀅h%Փ5F|$p#qIIa G7Keh^+m+seQupFaU}opN孪ЄiV|>\S..D*#nn5eHzIF;\A)xc/m.Y)9wv"ru,:"'aFߛ~b/C|E"qh܉gd\-UYȼ>Z&6PJy p)HLUǀ[v|1v|JFVnϭ}p~ŒJ|;M7dDb3:f@I3Z*'nϹj-AK6[ guc(}[$W(e݅ŹC@\U6#"퀝b Ox #}iY} : ]Yj@Ur ,FdoEn{pvi܋U{%6 pMNDz-7kwSJnWA3癩y\(bȿ(t7aljjTN |jJ0% ހ%5$CҢyweփרbC(Pp>k%62Y<ޝЇU溘Qw `dFXx@VL yxfyKTx՘7СNKV$o?އV]vj7 VH~mĝMsC~׳eBI{:3گm18k(5O@ `m4܁:aTy(W)y]u*nq+6W ]_ᄻ?:f0,2>-@\wU !%\4m\QtVz2b,j͍%XCF@aC(l üO=d*Og=%m;F%+un PA[qܷVkY;mE5*$+"W)7 'D2Zt"L QcʮBᙘak}N|OA&C"3U:H}౟_7`#a8o,+Fpӌ8q_v듦-[rZ6H)CiH$bY- bͱ$,xBMeKt{MzO+kօ?^k^\lqFTEFIa7-M"z۴jHfoȖج0g-YwƥP@ GXt*Y3Y}+_me]zs h;4ӳct"[([o͋LJiKO>|kXEwkjg4VN.D? eڛr{-ǝE;t?6uS<] b^׳x^R#of'S:F*~̯3(GѰGn8&)L|\z,tJ7VHna"gOQ4KcBЅy- 09\akOZ2*3h| db)UoʊH!6٣6o cVF~۷Yb*K-vK2Usɬڐ\}2f4)mΆԥj{ Xa =\~C^ВVm 76bIoѢ (ɒ*k$L3_b -1X7BMJF_ڵ.#IUx>A%)?Sol{I-8CcNTy;[?Q;BtX8Ew4E^bM=x '@`S/cpj6=Z~QZ3ǁ UVOrxeހGƦ=QE;?`/9q8Ri&e9$a˱2̳@xYbxbr(\ ei;QboSi&F]Z4lB_1 ب=Pe(E"vSYEZh<EAӨLJ3a&1$'TrԼ;)3.tr%TYrr<4ڠ 7 l$Wc5w4/lXl,oGr ,o%m{ sܴՊ6r;<lYuol6ܷ>*=NOcH M`KdDpұˎ>t'7_*HQFw4q=~3D~E; o-̼-A4ʍҿ5)IW}BaN )Nh Aѷ+nB@:!%i3c. _R߄ۙJϑ˃9q! >ZEQFo[ hzhm6^i+dsZ0mc3헮_] XWy}ĽMw˼PK0YRpA N 狙̱zD,0WUFg8C8~N@ Dif]]iK7 0P옫l}D4I/dnmN Kܞpi1dpw,dxL#WO4t^TƟGKͳz[\vi:<˷V{` Пi$Qhg(c#)&yӆa#!}n4M)v'3 PȆ! }.KK@ dWn `"vjOqQSGkJSj:FDN;wyCuNW* oMW MF`v!d?(OW idȣ7S|=q#Zc46>Q.*M }3Ω 0` 8g5$U$4agOq\F >6gIۋ=ц`џ ljU+hWO">/..pfGQėxH Rǩ Ec ʽɌ^eBhH<(?޾VLA9~ F%DZb=r"~uHkPI{xdc#%[h3Ls~Φ2_z41R^uk$D b8 Lk'🈑ym|{j|z ƣf"~N^<6$dwr[oJ@.uIFFTm mOꜚ& 5wZ6J-c.I5nŞ2f*Y rb1:ZnMd< ,/F|3͋K,O^.1|K46dR{GZhjhӻiiM[ղ⃅w\]W%rƠ $o,gZPFVÎ R7H9jqHBIo~jV7QަC=yl=K+M778 #O֑o!lJ4/ /+w6,"ܿ'b@JR|E0vr'RyN8"n@\#/FY~Iʖ|s_?ߖ $NTZidRid[!.̿c%Te2:M?0c:6ЛZj3RSNVÞN'ܨSj0oEՌOOW** M.cIm7,0JPT4 uYнYlQKkK ^L%+ʘPk$u`Al\Da"@Xe=oCE,# 63zH7h*v[̗#E| J;QXii}0|11:}iU¬;/ ~ H"7-cuKjE5vG7ú2C$Ӳm#M<R[4+UPaҭ\dMiftL >aऍܝEኻUQ&6:(c;_NWڍs[6g4xLSPN>b!}))ndO/;Ci ÊWO]HM,NjKͯ7cn܇vNkw%-, M+M9{7z̜MXo0]9$#}QH"#.w`MQqBU5]T7Z? ;@E¨k8?^)eז݂0YsQmXP(P x It}]ýNǒ^eƥ[-sNRn퓬q{R4=d ơOl~SLqrS,Bz /*Oq<2ɡ>G8M=m|]FTV?yMO=nFBA<% 0k6T I+3@%c" C?nu #Ygl7;h2f9vT1}%7INΨrN4. H˵ l،vIdv"9Z]PT^֒w J$&@%"@܈1@^S(ԧUcPԶ*M,~wCV. ׭Y>T_<֧%PI Q p7WV%C T9n :I)l -zm:Si#oѻzEbWƣGqjGIN+`Q62iׯ_CY͜Ո?|6wMy\Kegp;y76GQٶM(PO虸(y@,F?.kJm"m"A$mm*ULrMA[425`J1J jdj>ϧޜgv8 } Mlq[HRk":}]ږ s+W^81J\ې+]JoYOƳ5 WOeI6HB;bZSJ7i%!'ᆪ(A/C@{V9\hQzĮ)Vy0onz;;[jb)[i%,<'k5F3ci9.N%F,$ɹԚւKh9JXCe52정bYK>pԼ&`dȋ_ۓdZw' *y k% 7JMFZ>91:42QͨrH]r'adǭ .],JEDOº+ ,W\+Lrz&(v9 r J02T2K=-`cČ@ElVcn08r`R66N@O> ,j{&S)ٲ_g.oT0s+<9R4taoM# ];# ic3QN~R{OR S+\2o״%_.B%Oou~v8-Q ᶟy&*,h2 GP)F^ӌ߮Z\2}&et $2E~pG)boKJg<=vD3v&wqM2D-/,ƀB* CzF&,{79^<ϥȂ`Oyf.1X}f{v)K'Oe"3㭣_kon $H;L0U_rngjZakj:/JжYUlTk]:%Yg/NX [:d[=&vs&%8k-ñ(>PɩcfۙZ?WWJDx%Tmf֒\b퍉O6 O6W`F7|P|]*9|6$C`>M#70U" 5lQ$۠) hkr6ѬY8ߟPd Fͽ:-u#OU@$xⅎYeV'+U>0l"DwBU*K8VI.jwwqch ,jF-pJ@}N/Tvjb9kZ$,pyݳ.5ӐBy%b,e>~Dd'EU'$up?huh<4)Ywha|f)]Zy{1ܴSjcKf KVDJ; -/%LD$bfMuf*2d#=t42|3w0Nh: A!fEh J͘׶yx01UKH$s(+aĶh9a_}_"zDùPZ0LVU Aҵ*3 V}z!ËvNKg: Ku/ DXh /5a^1xE}SD yi+^P~bI߹ G7a{#H|Ú:B8[|ai`QI{AvL$ Œ ܜ{☙ Oۜ;@6`gs+/목q˭!OxG3":}cњSgQ~|vD3`mSFP#7daPϖst5 @ 2Mc5J[=z8EN/\@T`Na_YwT¦K8Ɋ_Ow3I:g i ,*՝}EoFݣjԠCu%Tv5/:@TU,#a~u)^1M >$F터ڇ%f8LQ C!jP_;*.idLAv\Vt)^f.w[h!!ޯwyif{PE+~H `u$B!ѪÓ cmW`F;}̓-D8~g I,M6ڊ/_PjGsNvW}aDw 8e`'O<Z%YhƁˡZzҨGU Vٙ䧽c:f;=Ǯ*xO5j6vOw6zn&g"Hع\s2ʩ>R+!W]l>:Z(䉅MyPqpQX)6za ɞYXQV p}OcaJj묉o<k-̟.\Okłbh )}ӰI2F|]l4י֔ϓQ? ;w}赈dabԶ{g)n=XRwiu^ND4`G4I3 <4օ)1ZHL>'** B|jҐ0j}ET5Uzh6k:CKew &N֧+{Ӡuc?X/ 0d <)Fz0tbAvp%髮l͋ixm@T=ST *.v:s-}r׾e, Vnr+ViZPnMX &Ci@*XWI> NI|/z7̅ SpzX &gv<~zYߏX$ޞaPBX[(yBdYm|$J!6 N@;(#Y[?B۲(Pyzec,]5peZ}D蛤TOn:Ç(Q /8;F'fXX0%*\A(7jr^WQOL b;_{mcOo'srep, ~.r ej+6ўti M IY8m1 F[GވM_oO鍧<*WfWO,'3Ir4+FoלE h7d]m"דeS9Ͷ\Bw0ld2d~a @7/PPp)nMWBj\ |܂!ن?lF/0)j׷xW`BK0ZMgC x[5@Q=ޏ~ h.]Wlqk m4NPk|;j&=(2,(t[n#쩦Kں@eIhQO=w@AIq(yK@U^{[YwRN+&]m~aI:yԩ)Aٚpzejx0NM&MmTF=jDۻ,0 ǪiI@,MbBzH"/rhRg9J)=)Äŏ8qA+Kj%oRI:QռYe{R׉Y8pO{d8` 1 T>h;"W*$s$֖:v,rr'A U2U)`29h-w9lħ1jhd;̒syto'oc dmlk'v֢-î2dǠ>> 2[j:␆)2/f ݾQԳʍ͜>vo&*J$%Dֱ)m3Ih} nmnW-Ct|fǼ=\a@a GB,^ j+HUhm9!yLzFDo ̶-J6WO5M`aA G9fX`.g;"H] q_x 9B2zÊ-XIoF0G頶?Ci*3hpu\ƍ,@$%!H.Y(>[eI1eݼSj9~U˘[mO9 tP y_TJG܅wuBMRѺ5Cj{;Iio7;NT9C=@\%=! C❑ ߞk3 Y/ )/,Sݧnp&܏%Bf=P(n>Ȗë9>Pi&kK 7ooAsؕ saxsw%\XŇ5kbDCa G`^x5)/QȦ]ʩR(Ic%$(d6>pR?(W20`y)5|Q߯~VB|vQH:wc|6S zӌ bvDϑu`j "9E`nx|ioʟhh~A6,7QIFljW\@J,f})k]2aEPHޔ63w9HOVnS| 8%kKpYrӈf`v,;YϫkD*EԾDz)I|2"mjlT(]D.-BWIRmkcbǿ4(zD!H׀Ń< <*n]Uf0}#D~^cTg5gtEup0fIZ+tr$%9W*Oqh~1?J&˄TC߅7uԸCa*/w΄Vt%0C;@08*{mзܵOdHnH*F˄Z*Q&z>bWz6JzNnzz/=UUWH}sv]e̖ğhuX" i?gȪXUhTq Jv{ )fw  ݪw%;;)\\ CHL<t4S3Sow_}7SI:] Is+9&6Ϯ9F\1PII hhQiv;(e0eI# PRrIß"PPvXʒKGm)2Tʻ ڈZ](9V&9*NC\)_Q\nv7k_XhCj⛪2ܔuLCFLsߡTs4'G*Z&Л)Ͳ/af0_j% |j4lv:%o:F~tAnn~9%pbn xl|O_#W1`Sw L' xMgί=WS9H- mQ ~{[͢f.j.|y*0=6[}!xU] mx+Pue=Ea0x7utӻ dQD) Wv]ʹƒ'+FcD)n_*g;)5㧴cB=:au/Sp?e˔_~!9 (7uj=VfOLCFՀC2>[o)&k[oPEwO 3?4A 'O A"&_N03"|$;} zez*A붔)yuL&SE}ؗH7qDnU_43mq-V >BiExm}6+V{,uYFekVU8 LgiK!$4C|ZVz18,TйCNJS\!g tp֠-/OSNd$ &GOh>.Q-ks_fsTUk&4ϢbC`Ym>f勔ꦓxى}O]b35:Hc3gAmL+!4V]|Jļ`6¿v nʈ `mh&=z( _ *Yel린9.?;%3ӫWTa9ҤjӉd0)[XR8Paҫ~?v_..NHy8p L { l7Y+-f-#iS=o}_Ug9p|&nͲ~^HP$rH? 4Ԯ25*"W thEOh~]=m3ʭ'SUDžz5^}9\3Hx]RR1#%#ˬ7XЗg'B8 S K^ڬ#<n$|˥!oqR]==[}3a3{NA ~(Z{@[SLl{mT crm-X %Rxe&㻐\M_W_tA*vB#s 228rjSp.&ŵ>4|