From 0196a0235421c494e445dcd0615b91dcd1ae30e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 10 Jul 2014 15:46:34 -0400 Subject: [PATCH 001/170] freerdp-shadow: start new cross-platform shadowing server --- .../freerdp/server/shadow.h | 15 +- server/.gitignore | 1 + server/CMakeLists.txt | 6 +- server/X11/CMakeLists.txt | 167 ----- server/X11/ModuleOptions.cmake | 4 - server/X11/cli/CMakeLists.txt | 36 - server/X11/cli/xfreerdp.c | 52 -- server/X11/rfx_test.pcap | Bin 994948 -> 0 bytes server/X11/server.crt | 17 - server/X11/server.key | 27 - server/X11/xf_cursor.c | 57 -- server/X11/xf_cursor.h | 27 - server/X11/xf_encode.c | 149 ---- server/X11/xf_encode.h | 31 - server/X11/xf_input.c | 155 ----- server/X11/xf_input.h | 34 - server/X11/xf_interface.c | 173 ----- server/X11/xf_interface.h | 54 -- server/X11/xf_monitors.c | 68 -- server/X11/xf_monitors.h | 28 - server/X11/xf_peer.c | 634 ------------------ server/X11/xf_peer.h | 63 -- server/X11/xf_update.c | 100 --- server/X11/xfreerdp.h | 92 --- 24 files changed, 11 insertions(+), 1979 deletions(-) rename server/X11/xf_update.h => include/freerdp/server/shadow.h (72%) delete mode 100644 server/X11/CMakeLists.txt delete mode 100644 server/X11/ModuleOptions.cmake delete mode 100644 server/X11/cli/CMakeLists.txt delete mode 100644 server/X11/cli/xfreerdp.c delete mode 100644 server/X11/rfx_test.pcap delete mode 100644 server/X11/server.crt delete mode 100644 server/X11/server.key delete mode 100644 server/X11/xf_cursor.c delete mode 100644 server/X11/xf_cursor.h delete mode 100644 server/X11/xf_encode.c delete mode 100644 server/X11/xf_encode.h delete mode 100644 server/X11/xf_input.c delete mode 100644 server/X11/xf_input.h delete mode 100644 server/X11/xf_interface.c delete mode 100644 server/X11/xf_interface.h delete mode 100644 server/X11/xf_monitors.c delete mode 100644 server/X11/xf_monitors.h delete mode 100644 server/X11/xf_peer.c delete mode 100644 server/X11/xf_peer.h delete mode 100644 server/X11/xf_update.c delete mode 100644 server/X11/xfreerdp.h diff --git a/server/X11/xf_update.h b/include/freerdp/server/shadow.h similarity index 72% rename from server/X11/xf_update.h rename to include/freerdp/server/shadow.h index 9e3c27342..98b7d6b2c 100644 --- a/server/X11/xf_update.h +++ b/include/freerdp/server/shadow.h @@ -1,8 +1,8 @@ /** * FreeRDP: A Remote Desktop Protocol Implementation - * X11 Server Graphical Updates + * Session Shadowing * - * Copyright 2013 Marc-Andre Moreau + * Copyright 2014 Marc-Andre Moreau * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,12 +17,13 @@ * limitations under the License. */ -#ifndef __XF_UPDATE_H -#define __XF_UPDATE_H +#ifndef FREERDP_SERVER_SHADOW_H +#define FREERDP_SERVER_SHADOW_H -#include "xfreerdp.h" +#include +#include -void* xf_update_thread(void* param); -#endif /* __XF_UPDATE_H */ + +#endif /* FREERDP_SERVER_SHADOW_H */ diff --git a/server/.gitignore b/server/.gitignore index b5581fbbc..dac0f57c4 100644 --- a/server/.gitignore +++ b/server/.gitignore @@ -4,4 +4,5 @@ !/Sample !/Windows !/X11 +!/Shadow !/CmakeLists.txt diff --git a/server/CMakeLists.txt b/server/CMakeLists.txt index a361a8b63..1e2ece34c 100644 --- a/server/CMakeLists.txt +++ b/server/CMakeLists.txt @@ -18,6 +18,7 @@ # Servers add_subdirectory(common) +add_subdirectory(shadow) if(FREERDP_VENDOR) if(WITH_SAMPLE) @@ -25,10 +26,6 @@ if(FREERDP_VENDOR) endif() if(NOT WIN32) - if(WITH_X11) - add_subdirectory(X11) - endif() - if(APPLE AND (NOT IOS)) add_subdirectory(Mac) endif() @@ -62,3 +59,4 @@ endforeach() foreach(FREERDP_SERVER ${FREERDP_EXTRA_SERVERS}) add_subdirectory(${FREERDP_SERVER}) endforeach() + diff --git a/server/X11/CMakeLists.txt b/server/X11/CMakeLists.txt deleted file mode 100644 index 2af6f8f2e..000000000 --- a/server/X11/CMakeLists.txt +++ /dev/null @@ -1,167 +0,0 @@ -# FreeRDP: A Remote Desktop Protocol Implementation -# FreeRDP X11 Server cmake build script -# -# Copyright 2012 Marc-Andre Moreau -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -set(MODULE_NAME "xfreerdp-server") -set(MODULE_PREFIX "FREERDP_SERVER_X11_CONTROL") - -include_directories(${X11_INCLUDE_DIRS}) -include_directories("../../winpr/tools/makecert") - -set(${MODULE_PREFIX}_SRCS - xf_peer.c - xf_peer.h - xf_input.c - xf_input.h - xf_encode.c - xf_encode.h - xf_update.c - xf_update.h - xf_cursor.c - xf_cursor.h - xf_monitors.c - xf_monitors.h - xf_interface.c - xf_interface.h - xfreerdp.h) - -if(WITH_SERVER_INTERFACE) - if(SERVER_INTERFACE_SHARED) - add_library(${MODULE_NAME} SHARED ${${MODULE_PREFIX}_SRCS}) - else() - add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) - endif() - set_target_properties(${MODULE_NAME} PROPERTIES VERSION ${FREERDP_VERSION} SOVERSION ${FREERDP_API_VERSION} PREFIX "lib") -else() - set(${MODULE_PREFIX}_SRCS ${${MODULE_PREFIX}_SRCS} cli/xfreerdp.c) - add_executable(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) - set_target_properties(${MODULE_NAME} PROPERTIES OUTPUT_NAME "xfreerdp-server") -endif() - -set(XEXT_FEATURE_TYPE "RECOMMENDED") -set(XEXT_FEATURE_PURPOSE "X11 extension") -set(XEXT_FEATURE_DESCRIPTION "X11 core extensions") - -set(XSHM_FEATURE_TYPE "RECOMMENDED") -set(XSHM_FEATURE_PURPOSE "X11 shared memory") -set(XSHM_FEATURE_DESCRIPTION "X11 shared memory extension") - -set(XINERAMA_FEATURE_TYPE "RECOMMENDED") -set(XINERAMA_FEATURE_PURPOSE "multi-monitor") -set(XINERAMA_FEATURE_DESCRIPTION "X11 multi-monitor extension") - -set(XTEST_FEATURE_TYPE "RECOMMENDED") -set(XTEST_FEATURE_PURPOSE "X11 input event injection") -set(XTEST_FEATURE_DESCRIPTION "X11 input event injection extension") - -set(XCURSOR_FEATURE_TYPE "RECOMMENDED") -set(XCURSOR_FEATURE_PURPOSE "cursor") -set(XCURSOR_FEATURE_DESCRIPTION "X11 cursor extension") - -set(XFIXES_FEATURE_TYPE "RECOMMENDED") -set(XFIXES_FEATURE_PURPOSE "X11 region") -set(XFIXES_FEATURE_DESCRIPTION "X11 region fix extension") - -set(XRANDR_FEATURE_TYPE "RECOMMENDED") -set(XRANDR_FEATURE_PURPOSE "X11 resize, rotate and reflect") -set(XRANDR_FEATURE_DESCRIPTION "X11 resize, rotate and reflect extension") - -set(XDAMAGE_FEATURE_TYPE "RECOMMENDED") -set(XDAMAGE_FEATURE_PURPOSE "X11 region damage") -set(XDAMAGE_FEATURE_DESCRIPTION "X11 region damage extension") - -find_feature(Xext ${XEXT_FEATURE_TYPE} ${XEXT_FEATURE_PURPOSE} ${XEXT_FEATURE_DESCRIPTION}) -find_feature(XShm ${XSHM_FEATURE_TYPE} ${XSHM_FEATURE_PURPOSE} ${XSHM_FEATURE_DESCRIPTION}) -find_feature(XTest ${XTEST_FEATURE_TYPE} ${XTEST_FEATURE_PURPOSE} ${XTEST_FEATURE_DESCRIPTION}) -find_feature(Xfixes ${XFIXES_FEATURE_TYPE} ${XFIXES_FEATURE_PURPOSE} ${XFIXES_FEATURE_DESCRIPTION}) -find_feature(XRandR ${XRANDR_FEATURE_TYPE} ${XRANDR_FEATURE_PURPOSE} ${XRANDR_FEATURE_DESCRIPTION}) -find_feature(Xdamage ${XDAMAGE_FEATURE_TYPE} ${XDAMAGE_FEATURE_PURPOSE} ${XDAMAGE_FEATURE_DESCRIPTION}) -find_feature(Xcursor ${XCURSOR_FEATURE_TYPE} ${XCURSOR_FEATURE_PURPOSE} ${XCURSOR_FEATURE_DESCRIPTION}) -find_feature(Xinerama ${XINERAMA_FEATURE_TYPE} ${XINERAMA_FEATURE_PURPOSE} ${XINERAMA_FEATURE_DESCRIPTION}) - -if(WITH_XSHM) - add_definitions(-DWITH_XSHM) - include_directories(${XSHM_INCLUDE_DIRS}) -endif() - -if(WITH_XEXT) - add_definitions(-DWITH_XEXT) - include_directories(${XEXT_INCLUDE_DIRS}) - set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} ${XEXT_LIBRARIES}) -endif() - -if(WITH_XINERAMA) - add_definitions(-DWITH_XINERAMA) - include_directories(${XINERAMA_INCLUDE_DIRS}) - set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} ${XINERAMA_LIBRARIES}) -endif() - -if(WITH_XCURSOR) - add_definitions(-DWITH_XCURSOR) - include_directories(${XCURSOR_INCLUDE_DIRS}) - set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} ${XCURSOR_LIBRARIES}) -endif() - -if(WITH_XDAMAGE) - add_definitions(-DWITH_XDAMAGE) - include_directories(${XDAMAGE_INCLUDE_DIRS}) - set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} ${XDAMAGE_LIBRARIES}) -endif() - -if(WITH_XFIXES) - add_definitions(-DWITH_XFIXES) - include_directories(${XFIXES_INCLUDE_DIRS}) - target_link_libraries(${MODULE_NAME} ${XFIXES_LIBRARIES}) - set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} ${XFIXES_LIBRARIES}) -endif() - -if(WITH_XTEST) - add_definitions(-DWITH_XTEST) - include_directories(${XTEST_INCLUDE_DIRS}) - set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} ${XTEST_LIBRARIES}) -endif() - -if(WITH_XRANDR) - add_definitions(-DWITH_XRANDR) - include_directories(${XRANDR_INCLUDE_DIRS}) - set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} ${XRANDR_LIBRARIES}) -endif() - -set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} ${X11_LIBRARIES}) - -set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS - MONOLITHIC ${MONOLITHIC_BUILD} - MODULE freerdp - MODULES freerdp-core freerdp-common freerdp-codec freerdp-primitives freerdp-utils freerdp-gdi freerdp-crypto freerdp-locale) - -set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS - MONOLITHIC ${MONOLITHIC_BUILD} - MODULE winpr - MODULES winpr-sspi winpr-crt winpr-utils winpr-input winpr-sysinfo) - -set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} winpr-makecert-tool) - -target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS}) - -if(WITH_SERVER_INTERFACE) - install(TARGETS ${MODULE_NAME} DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT libraries) - add_subdirectory(cli) -else() - install(TARGETS ${MODULE_NAME} DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT server) -endif() - -set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Server/X11") - diff --git a/server/X11/ModuleOptions.cmake b/server/X11/ModuleOptions.cmake deleted file mode 100644 index fcba05934..000000000 --- a/server/X11/ModuleOptions.cmake +++ /dev/null @@ -1,4 +0,0 @@ - -set(FREERDP_SERVER_NAME "xfreerdp-server") -set(FREERDP_SERVER_PLATFORM "X11") -set(FREERDP_SERVER_VENDOR "FreeRDP") diff --git a/server/X11/cli/CMakeLists.txt b/server/X11/cli/CMakeLists.txt deleted file mode 100644 index 6d0d45ff3..000000000 --- a/server/X11/cli/CMakeLists.txt +++ /dev/null @@ -1,36 +0,0 @@ -# FreeRDP: A Remote Desktop Protocol Implementation -# FreeRDP X11 cmake build script -# -# Copyright 2012 Marc-Andre Moreau -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -set(MODULE_NAME "xfreerdp-server-cli") -set(MODULE_PREFIX "FREERDP_SERVER_X11") - -include_directories(..) - -set(${MODULE_PREFIX}_SRCS - xfreerdp.c) - -add_executable(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) -set_target_properties(${MODULE_NAME} PROPERTIES OUTPUT_NAME "xfreerdp-server" RUNTIME_OUTPUT_DIRECTORY "..") - -set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} xfreerdp-server) - -target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS}) - -install(TARGETS ${MODULE_NAME} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT server) - -set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Server/X11") - diff --git a/server/X11/cli/xfreerdp.c b/server/X11/cli/xfreerdp.c deleted file mode 100644 index bd3b27729..000000000 --- a/server/X11/cli/xfreerdp.c +++ /dev/null @@ -1,52 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * FreeRDP X11 Server - * - * Copyright 2011 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include "xf_interface.h" - -int main(int argc, char* argv[]) -{ - HANDLE thread; - xfServer* server; - DWORD dwExitCode; - - freerdp_server_global_init(); - - server = freerdp_server_new(argc, argv); - - if (!server) - return 0; - - freerdp_server_start(server); - - thread = freerdp_server_get_thread(server); - - WaitForSingleObject(thread, INFINITE); - - GetExitCodeThread(thread, &dwExitCode); - - freerdp_server_free(server); - - freerdp_server_global_uninit(); - - return 0; -} diff --git a/server/X11/rfx_test.pcap b/server/X11/rfx_test.pcap deleted file mode 100644 index 768c3960fb5cd1408eb3d2d6eb9afe4bcbf9558e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 994948 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

sh#MaU@ky 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 z

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�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�H-?6OCxAS?GXfg7x{t&VqW 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 g)b7B~J&xwdWiQYcDhu$|7J(0sc& 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�XNevTWm%F*#{kzBLY}f}`=L4O` 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

K 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 O-)n>TujPM7PW=xmQ@u?9 diff --git a/server/X11/server.crt b/server/X11/server.crt deleted file mode 100644 index 7ce931c26..000000000 --- a/server/X11/server.crt +++ /dev/null @@ -1,17 +0,0 @@ ------BEGIN CERTIFICATE----- -MIICyzCCAbOgAwIBAgIJANbqtAWwlQZuMA0GCSqGSIb3DQEBBQUAMBIxEDAOBgNV -BAMTB0ZyZWVSRFAwHhcNMDkxMDI5MDA0MTQ5WhcNMDkxMTI4MDA0MTQ5WjASMRAw -DgYDVQQDEwdGcmVlUkRQMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA -q7mxFgRbS2FYJZX7BzpNd4T/n4nEVDBY6YaObLjGpaB1TptzXTcmfDrDslTGwcEY -hTFAC4ZvY6yOURExqbph4LSgvkoa6J722RjVPfshGa4mlh2SXvTiaV26VPPxddGb -o6fbs2u029lbtBlpIVbhx5RN9vstNkll26oSZ6wfEdBNHQJLd2SU4ItWHj8zjz1f -eGxjgChHihUlwcBYKDJsKFkzHZmLrMgB37KsGlXi/WV+eEsjgvz4yP7I3TL8+GsN -MjV8fRGVEKTbKSmgunO67d5u+IaqUQb0Ad1ha1jzDQ+a6hdymrulJSIhoOVfKkwi -ptTe43FgwxVRIygJP9HjHQIDAQABoyQwIjATBgNVHSUEDDAKBggrBgEFBQcDATAL -BgNVHQ8EBAMCBDAwDQYJKoZIhvcNAQEFBQADggEBAIOdEDhOX2kbl02znltd9hCr -nV4kRPKm979RKwBNkrEuwYSlcsjAHg5MZ5itH3wFOUo2s5pjt7/vMOAg+6rOBbIa -nqr22/gKBtOmuaJLG1yjxDC2vfez7f3B26pKgxa/krM8oxiFdT9n8QbdxdkN7/D9 -3RLU/aCfgrMzXxRus7eq3kR00jnSs6ggnAfE1E9gric3vFgr1wCzdcriRXmXDfUb -hRq+4VG+ZWk16TwCofV5GVU39XWCv5HNO2swAdjkNXgI5e3tQbV3wWLZLqqYzBco -iWulAXtoCGmE81+u1Ms7hLLzpXitLZSGPu1r+sDdkKPLCmOvkAaljDQ4nBz7fIA= ------END CERTIFICATE----- diff --git a/server/X11/server.key b/server/X11/server.key deleted file mode 100644 index 5c2f2c803..000000000 --- a/server/X11/server.key +++ /dev/null @@ -1,27 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -MIIEogIBAAKCAQEAq7mxFgRbS2FYJZX7BzpNd4T/n4nEVDBY6YaObLjGpaB1Tptz -XTcmfDrDslTGwcEYhTFAC4ZvY6yOURExqbph4LSgvkoa6J722RjVPfshGa4mlh2S -XvTiaV26VPPxddGbo6fbs2u029lbtBlpIVbhx5RN9vstNkll26oSZ6wfEdBNHQJL -d2SU4ItWHj8zjz1feGxjgChHihUlwcBYKDJsKFkzHZmLrMgB37KsGlXi/WV+eEsj -gvz4yP7I3TL8+GsNMjV8fRGVEKTbKSmgunO67d5u+IaqUQb0Ad1ha1jzDQ+a6hdy -mrulJSIhoOVfKkwiptTe43FgwxVRIygJP9HjHQIDAQABAoIBAAVv5K54xtc1JtBR -1lfdPbSqDlnjx8aOnVIPg5TnqMp3sR8jBt0NsPc/+RA9ZOmfjoIxFAEJaZ9zSDJC -5BqmnxC5R1mfCQkSd2haQ+4pdFvWyrv4Bblh8YU6hXrJGn0LfO0KlIcywtAvKpsi -LtTyZkWmaW2HeF/+pO32jYygw38R1wd8Tl6GwjOXwTF6lFACJXOT4YAzcfp3FKSB -AiKBIGuMzozoSND7KPFNRrhGhNumJpdS5A8Fb8D2c/ZMv6Cq5IbwOgTfKun+Bz+s -mFbnzeb1uWRqQbsVXOBBW/zHfuG3SU5qeZsaAyuu4DTy+LE1oAHF9uhBSHuT5C6i -vCJ8A8ECgYEA1iaOmiEJYBrs25iAc4SjCKqhY0mwR3wtu3I06vmgUoML5fhPMv36 -SvYQIqDyNw3p7TE6mZtw9+G+kK3PqhuJhogwSwg0a6o51RdKnhXH3/68oNWtKCLC -1AmR8q/Gd3FwAR3b49CuOIZ9uOiJrc/ejzKdFEJTDR1/TX1frWfZznECgYEAzUiz -XxFf7YrGel7JgmfRD2eZRYngOoteFlg5Tee42UjeAY2Pt2aiDLk+2TqQEdI9+Xg7 -LcFdBqcSNd8bh33xSzgNthIkX+lTDzx0SmKGfyxfFBJcY8nzsLvvnNt3YeuMeaJQ -CPszwoZ0jcD46jTCjbrKhaLyEWmUkDp1O71NTW0CgYAXKF49Xpsz8FVyvcAOPeaf -dkwzf3F3mX8ciRId4taqdY9g1AREgGCDoK5IAF2RBIkqZCtxFvUVaS0BWjpdq9Ko -YKvQQVfh2KueVoF0LOjLWTGutsydzXyCD3Lf6pAstHCnPkJcFWHxrOGFkGfrCtKH -a7K+0RlIDsuIZqllCBjukQKBgA31+MTpYJW+D1t5IMkumEgs6n6RLt+sZLyuSU9k -B+03CGogn3qAj1rAKmcJlYywuKhDpfqpoNL3/8QMJUokpYlRCZWtTC39pzltCheY -9b6mXNz3lrLupBUL4vLO9iKBq28GO90wgEelbz3ItuTuq6CJ6IYIG+BVRtY8M4bZ -i+1NAoGANXZjYnJYDnh8Je9SDxDSc5byzK7ddkQoId64RCIfNHqNKH63P81vjgnH -YBIPtagY75ZVVNxujCF7m8Rety+d8tEFwfQKDin2EVI7PD2rOJra385/izp7HuBR -vqxvLzG9Xv3cNOU2l7PttVw4Pa2i5E37atKi3V3Zp2kMW+KaKPQ= ------END RSA PRIVATE KEY----- diff --git a/server/X11/xf_cursor.c b/server/X11/xf_cursor.c deleted file mode 100644 index 00e4abb3c..000000000 --- a/server/X11/xf_cursor.c +++ /dev/null @@ -1,57 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * X11 Server Cursor - * - * Copyright 2013 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include -#include - -#ifdef WITH_XCURSOR -#include -#endif - -#ifdef WITH_XFIXES -#include -#endif - -#include - -#include "xf_cursor.h" - -int xf_cursor_init(xfInfo* xfi) -{ -#ifdef WITH_XFIXES - int event; - int error; - - if (!XFixesQueryExtension(xfi->display, &event, &error)) - { - fprintf(stderr, "XFixesQueryExtension failed\n"); - return -1; - } - - xfi->xfixes_notify_event = event + XFixesCursorNotify; - - XFixesSelectCursorInput(xfi->display, DefaultRootWindow(xfi->display), XFixesDisplayCursorNotifyMask); -#endif - - return 0; -} diff --git a/server/X11/xf_cursor.h b/server/X11/xf_cursor.h deleted file mode 100644 index 64c95c312..000000000 --- a/server/X11/xf_cursor.h +++ /dev/null @@ -1,27 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * X11 Server Cursor - * - * Copyright 2013 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef XFREERDP_SERVER_CURSOR_H -#define XFREERDP_SERVER_CURSOR_H - -#include "xfreerdp.h" - -int xf_cursor_init(xfInfo* xfi); - -#endif /* XFREERDP_SERVER_CURSOR_H */ diff --git a/server/X11/xf_encode.c b/server/X11/xf_encode.c deleted file mode 100644 index 54830f5cf..000000000 --- a/server/X11/xf_encode.c +++ /dev/null @@ -1,149 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * X11 RemoteFX Encoder - * - * Copyright 2011 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include -#include - -#include -#include - -#include - -#include "xf_encode.h" - -XImage* xf_snapshot(xfPeerContext* xfp, int x, int y, int width, int height) -{ - XImage* image; - xfInfo* xfi = xfp->info; - - if (xfi->use_xshm) - { - XCopyArea(xfi->display, xfi->root_window, xfi->fb_pixmap, xfi->xdamage_gc, x, y, width, height, x, y); - image = xfi->fb_image; - } - else - { - image = XGetImage(xfi->display, xfi->root_window, x, y, width, height, AllPlanes, ZPixmap); - } - - return image; -} - -void xf_xdamage_subtract_region(xfPeerContext* xfp, int x, int y, int width, int height) -{ - XRectangle region; - xfInfo* xfi = xfp->info; - - region.x = x; - region.y = y; - region.width = width; - region.height = height; - -#ifdef WITH_XFIXES - XFixesSetRegion(xfi->display, xfi->xdamage_region, ®ion, 1); - XDamageSubtract(xfi->display, xfi->xdamage, xfi->xdamage_region, None); -#endif -} - -int xf_update_encode(freerdp_peer* client, int x, int y, int width, int height) -{ - wStream* s; - BYTE* data; - xfInfo* xfi; - RFX_RECT rect; - XImage* image; - rdpUpdate* update; - xfPeerContext* xfp; - SURFACE_BITS_COMMAND* cmd; - - update = client->update; - xfp = (xfPeerContext*) client->context; - cmd = &update->surface_bits_command; - xfi = xfp->info; - - if (width * height <= 0) - { - cmd->bitmapDataLength = 0; - return -1; - } - - s = xfp->s; - Stream_Clear(s); - Stream_SetPosition(s, 0); - - if (xfi->use_xshm) - { - /** - * Passing an offset source rectangle to rfx_compose_message() - * leads to protocol errors, so offset the data pointer instead. - */ - - rect.x = 0; - rect.y = 0; - rect.width = width; - rect.height = height; - - image = xf_snapshot(xfp, x, y, width, height); - - data = (BYTE*) image->data; - data = &data[(y * image->bytes_per_line) + (x * image->bits_per_pixel / 8)]; - - rfx_compose_message(xfp->rfx_context, s, &rect, 1, data, - width, height, image->bytes_per_line); - - cmd->destLeft = x; - cmd->destTop = y; - cmd->destRight = x + width; - cmd->destBottom = y + height; - } - else - { - rect.x = 0; - rect.y = 0; - rect.width = width; - rect.height = height; - - image = xf_snapshot(xfp, x, y, width, height); - - data = (BYTE*) image->data; - - rfx_compose_message(xfp->rfx_context, s, &rect, 1, data, - width, height, image->bytes_per_line); - - cmd->destLeft = x; - cmd->destTop = y; - cmd->destRight = x + width; - cmd->destBottom = y + height; - - XDestroyImage(image); - } - - cmd->bpp = 32; - cmd->codecID = client->settings->RemoteFxCodecId; - cmd->width = width; - cmd->height = height; - cmd->bitmapDataLength = Stream_GetPosition(s); - cmd->bitmapData = Stream_Buffer(s); - - return 0; -} diff --git a/server/X11/xf_encode.h b/server/X11/xf_encode.h deleted file mode 100644 index fb7d98562..000000000 --- a/server/X11/xf_encode.h +++ /dev/null @@ -1,31 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * X11 RemoteFX Encoder - * - * Copyright 2011 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef __XF_ENCODE_H -#define __XF_ENCODE_H - -#include "xfreerdp.h" - -#include "xf_peer.h" - -XImage* xf_snapshot(xfPeerContext* xfp, int x, int y, int width, int height); -void xf_xdamage_subtract_region(xfPeerContext* xfp, int x, int y, int width, int height); -int xf_update_encode(freerdp_peer* client, int x, int y, int width, int height); - -#endif /* __XF_ENCODE_H */ diff --git a/server/X11/xf_input.c b/server/X11/xf_input.c deleted file mode 100644 index c47e996da..000000000 --- a/server/X11/xf_input.c +++ /dev/null @@ -1,155 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * X11 Server Input - * - * Copyright 2011 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include - -#include - -#include -#include - -#include "xf_peer.h" - -#include "xf_input.h" - -void xf_input_synchronize_event(rdpInput* input, UINT32 flags) -{ - fprintf(stderr, "Client sent a synchronize event (flags:0x%X)\n", flags); -} - -void xf_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) -{ -#ifdef WITH_XTEST - DWORD vkcode; - DWORD keycode; - BOOL extended = FALSE; - xfPeerContext* xfp = (xfPeerContext*) input->context; - xfInfo* xfi = xfp->info; - - if (flags & KBD_FLAGS_EXTENDED) - extended = TRUE; - - if (extended) - code |= KBDEXT; - - vkcode = GetVirtualKeyCodeFromVirtualScanCode(code, 4); - keycode = GetKeycodeFromVirtualKeyCode(vkcode, KEYCODE_TYPE_EVDEV); - - if (keycode != 0) - { - XTestGrabControl(xfi->display, True); - - if (flags & KBD_FLAGS_DOWN) - XTestFakeKeyEvent(xfi->display, keycode, True, 0); - else if (flags & KBD_FLAGS_RELEASE) - XTestFakeKeyEvent(xfi->display, keycode, False, 0); - - XTestGrabControl(xfi->display, False); - } -#endif -} - -void xf_input_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) -{ - fprintf(stderr, "Client sent a unicode keyboard event (flags:0x%X code:0x%X)\n", flags, code); -} - -void xf_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) -{ -#ifdef WITH_XTEST - xfPeerContext* xfp = (xfPeerContext*) input->context; - int button = 0; - BOOL down = FALSE; - xfInfo* xfi = xfp->info; - - XTestGrabControl(xfi->display, True); - - if (flags & PTR_FLAGS_WHEEL) - { - BOOL negative = FALSE; - - if (flags & PTR_FLAGS_WHEEL_NEGATIVE) - negative = TRUE; - - button = (negative) ? 5 : 4; - - XTestFakeButtonEvent(xfi->display, button, True, 0); - XTestFakeButtonEvent(xfi->display, button, False, 0); - } - else - { - if (flags & PTR_FLAGS_MOVE) - XTestFakeMotionEvent(xfi->display, 0, x, y, 0); - - if (flags & PTR_FLAGS_BUTTON1) - button = 1; - else if (flags & PTR_FLAGS_BUTTON2) - button = 3; - else if (flags & PTR_FLAGS_BUTTON3) - button = 2; - - if (flags & PTR_FLAGS_DOWN) - down = TRUE; - - if (button != 0) - XTestFakeButtonEvent(xfi->display, button, down, 0); - } - - XTestGrabControl(xfi->display, False); -#endif -} - -void xf_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) -{ -#ifdef WITH_XTEST - xfPeerContext* xfp = (xfPeerContext*) input->context; - int button = 0; - BOOL down = FALSE; - xfInfo* xfi = xfp->info; - - XTestGrabControl(xfi->display, True); - XTestFakeMotionEvent(xfi->display, 0, x, y, CurrentTime); - - if (flags & PTR_XFLAGS_BUTTON1) - button = 8; - else if (flags & PTR_XFLAGS_BUTTON2) - button = 9; - - if (flags & PTR_XFLAGS_DOWN) - down = TRUE; - - if (button != 0) - XTestFakeButtonEvent(xfi->display, button, down, 0); - - XTestGrabControl(xfi->display, False); -#endif -} - -void xf_input_register_callbacks(rdpInput* input) -{ - input->SynchronizeEvent = xf_input_synchronize_event; - input->KeyboardEvent = xf_input_keyboard_event; - input->UnicodeKeyboardEvent = xf_input_unicode_keyboard_event; - input->MouseEvent = xf_input_mouse_event; - input->ExtendedMouseEvent = xf_input_extended_mouse_event; -} diff --git a/server/X11/xf_input.h b/server/X11/xf_input.h deleted file mode 100644 index 201b21b53..000000000 --- a/server/X11/xf_input.h +++ /dev/null @@ -1,34 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * X11 Server Input - * - * Copyright 2011 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef __XF_INPUT_H -#define __XF_INPUT_H - -#include - -#include "xfreerdp.h" - -void xf_input_synchronize_event(rdpInput* input, UINT32 flags); -void xf_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code); -void xf_input_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code); -void xf_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y); -void xf_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y); -void xf_input_register_callbacks(rdpInput* input); - -#endif /* __XF_INPUT_H */ diff --git a/server/X11/xf_interface.c b/server/X11/xf_interface.c deleted file mode 100644 index c251b3297..000000000 --- a/server/X11/xf_interface.c +++ /dev/null @@ -1,173 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * FreeRDP X11 Server Interface - * - * Copyright 2013 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "xf_peer.h" -#include "xfreerdp.h" - -#include "xf_interface.h" - -void* xf_server_thread(void* param) -{ - int i; - int fds; - int max_fds; - int rcount; - void* rfds[32]; - fd_set rfds_set; - xfServer* server; - freerdp_listener* listener; - - server = (xfServer*) param; - listener = server->listener; - - while (1) - { - rcount = 0; - - ZeroMemory(rfds, sizeof(rfds)); - if (listener->GetFileDescriptor(listener, rfds, &rcount) != TRUE) - { - fprintf(stderr, "Failed to get FreeRDP file descriptor\n"); - break; - } - - max_fds = 0; - FD_ZERO(&rfds_set); - - for (i = 0; i < rcount; i++) - { - fds = (int)(long)(rfds[i]); - - if (fds > max_fds) - max_fds = fds; - - FD_SET(fds, &rfds_set); - } - - if (max_fds == 0) - break; - - if (select(max_fds + 1, &rfds_set, NULL, NULL, NULL) == -1) - { - /* these are not really errors */ - if (!((errno == EAGAIN) || - (errno == EWOULDBLOCK) || - (errno == EINPROGRESS) || - (errno == EINTR))) /* signal occurred */ - { - fprintf(stderr, "select failed\n"); - break; - } - } - - if (listener->CheckFileDescriptor(listener) != TRUE) - { - fprintf(stderr, "Failed to check FreeRDP file descriptor\n"); - break; - } - } - - ExitThread(0); - - return NULL; -} - -int freerdp_server_global_init() -{ - /* - * ignore SIGPIPE, otherwise an SSL_write failure could crash the server - */ - signal(SIGPIPE, SIG_IGN); - - return 0; -} - -int freerdp_server_global_uninit() -{ - return 0; -} - -int freerdp_server_start(xfServer* server) -{ - assert(NULL != server); - - server->thread = NULL; - if (server->listener->Open(server->listener, NULL, 3389)) - { - server->thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) - xf_server_thread, (void*) server, 0, NULL); - } - - return 0; -} - -int freerdp_server_stop(xfServer* server) -{ - if (server->thread) - { - /* ATTENTION: Terminate thread kills a thread, assure - * no resources are allocated during thread execution, - * as they will not be freed! */ - TerminateThread(server->thread, 0); - WaitForSingleObject(server->thread, INFINITE); - CloseHandle(server->thread); - - server->listener->Close(server->listener); - } - return 0; -} - -HANDLE freerdp_server_get_thread(xfServer* server) -{ - return server->thread; -} - -xfServer* freerdp_server_new(int argc, char** argv) -{ - xfServer* server; - - server = (xfServer*) malloc(sizeof(xfServer)); - - if (server) - { - server->listener = freerdp_listener_new(); - server->listener->PeerAccepted = xf_peer_accepted; - } - - return server; -} - -void freerdp_server_free(xfServer* server) -{ - if (server) - { - freerdp_listener_free(server->listener); - free(server); - } -} diff --git a/server/X11/xf_interface.h b/server/X11/xf_interface.h deleted file mode 100644 index f62d36450..000000000 --- a/server/X11/xf_interface.h +++ /dev/null @@ -1,54 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * FreeRDP X11 Server Interface - * - * Copyright 2013 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef XFREERDP_SERVER_INTERFACE_H -#define XFREERDP_SERVER_INTERFACE_H - -#include - -#include -#include - -typedef struct xf_info xfInfo; -typedef struct xf_server xfServer; - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * Server Interface - */ - -FREERDP_API int freerdp_server_global_init(); -FREERDP_API int freerdp_server_global_uninit(); - -FREERDP_API int freerdp_server_start(xfServer* server); -FREERDP_API int freerdp_server_stop(xfServer* server); - -FREERDP_API HANDLE freerdp_server_get_thread(xfServer* server); - -FREERDP_API xfServer* freerdp_server_new(int argc, char** argv); -FREERDP_API void freerdp_server_free(xfServer* server); - -#ifdef __cplusplus -} -#endif - -#endif /* XFREERDP_SERVER_INTERFACE_H */ diff --git a/server/X11/xf_monitors.c b/server/X11/xf_monitors.c deleted file mode 100644 index 2bf5d51f1..000000000 --- a/server/X11/xf_monitors.c +++ /dev/null @@ -1,68 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * X11 Server Monitors - * - * Copyright 2013 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include - -#include -#include - -#ifdef WITH_XINERAMA -#include -#endif - -#include "xf_monitors.h" - -int xf_list_monitors(xfInfo* xfi) -{ -#ifdef WITH_XINERAMAZ - int i, nmonitors = 0; - int ignored, ignored2; - XineramaScreenInfo* screen = NULL; - - if (XineramaQueryExtension(xfi->display, &ignored, &ignored2)) - { - if (XineramaIsActive(xfi->display)) - { - screen = XineramaQueryScreens(xfi->display, &nmonitors); - - for (i = 0; i < nmonitors; i++) - { - printf(" %s [%d] %dx%d\t+%d+%d\n", - (i == 0) ? "*" : " ", i, - screen[i].width, screen[i].height, - screen[i].x_org, screen[i].y_org); - } - - XFree(screen); - } - } -#else - Screen* screen; - - screen = ScreenOfDisplay(xfi->display, DefaultScreen(xfi->display)); - printf(" * [0] %dx%d\t+%d+%d\n", WidthOfScreen(screen), HeightOfScreen(screen), 0, 0); -#endif - - return 0; -} - diff --git a/server/X11/xf_monitors.h b/server/X11/xf_monitors.h deleted file mode 100644 index 8487c3327..000000000 --- a/server/X11/xf_monitors.h +++ /dev/null @@ -1,28 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * X11 Server Monitors - * - * Copyright 2013 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef XFREERDP_SERVER_MONITORS_H -#define XFREERDP_SERVER_MONITORS_H - -#include "xfreerdp.h" - -int xf_list_monitors(xfInfo* xfi); - -#endif /* XFREERDP_SERVER_MONITORS_H */ - diff --git a/server/X11/xf_peer.c b/server/X11/xf_peer.c deleted file mode 100644 index 140dcd662..000000000 --- a/server/X11/xf_peer.c +++ /dev/null @@ -1,634 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * X11 Peer - * - * Copyright 2011 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include - -#include -#include -#include - -#include "xf_input.h" -#include "xf_cursor.h" -#include "xf_encode.h" -#include "xf_update.h" -#include "xf_monitors.h" - -#include - -#include "xf_peer.h" - -#ifdef WITH_XDAMAGE - -void xf_xdamage_init(xfInfo* xfi) -{ - int damage_event; - int damage_error; - int major, minor; - XGCValues values; - - if (XDamageQueryExtension(xfi->display, &damage_event, &damage_error) == 0) - { - fprintf(stderr, "XDamageQueryExtension failed\n"); - return; - } - - XDamageQueryVersion(xfi->display, &major, &minor); - - if (XDamageQueryVersion(xfi->display, &major, &minor) == 0) - { - fprintf(stderr, "XDamageQueryVersion failed\n"); - return; - } - else if (major < 1) - { - fprintf(stderr, "XDamageQueryVersion failed: major:%d minor:%d\n", major, minor); - return; - } - - xfi->xdamage_notify_event = damage_event + XDamageNotify; - xfi->xdamage = XDamageCreate(xfi->display, xfi->root_window, XDamageReportDeltaRectangles); - - if (xfi->xdamage == None) - { - fprintf(stderr, "XDamageCreate failed\n"); - return; - } - -#ifdef WITH_XFIXES - xfi->xdamage_region = XFixesCreateRegion(xfi->display, NULL, 0); - - if (xfi->xdamage_region == None) - { - fprintf(stderr, "XFixesCreateRegion failed\n"); - XDamageDestroy(xfi->display, xfi->xdamage); - xfi->xdamage = None; - return; - } -#endif - - values.subwindow_mode = IncludeInferiors; - xfi->xdamage_gc = XCreateGC(xfi->display, xfi->root_window, GCSubwindowMode, &values); - XSetFunction(xfi->display, xfi->xdamage_gc, GXcopy); -} - -#endif - -int xf_xshm_init(xfInfo* xfi) -{ - Bool pixmaps; - int major, minor; - - if (XShmQueryExtension(xfi->display) != False) - { - XShmQueryVersion(xfi->display, &major, &minor, &pixmaps); - - if (pixmaps != True) - { - fprintf(stderr, "XShmQueryVersion failed\n"); - return -1; - } - } - else - { - fprintf(stderr, "XShmQueryExtension failed\n"); - return -1; - } - - xfi->fb_shm_info.shmid = -1; - xfi->fb_shm_info.shmaddr = (char*) -1; - - xfi->fb_image = XShmCreateImage(xfi->display, xfi->visual, xfi->depth, - ZPixmap, NULL, &(xfi->fb_shm_info), xfi->width, xfi->height); - - if (!xfi->fb_image) - { - fprintf(stderr, "XShmCreateImage failed\n"); - return -1; - } - - xfi->fb_shm_info.shmid = shmget(IPC_PRIVATE, - xfi->fb_image->bytes_per_line * xfi->fb_image->height, IPC_CREAT | 0600); - - if (xfi->fb_shm_info.shmid == -1) - { - fprintf(stderr, "shmget failed\n"); - return -1; - } - - xfi->fb_shm_info.readOnly = False; - xfi->fb_shm_info.shmaddr = shmat(xfi->fb_shm_info.shmid, 0, 0); - xfi->fb_image->data = xfi->fb_shm_info.shmaddr; - - if (xfi->fb_shm_info.shmaddr == ((char*) -1)) - { - fprintf(stderr, "shmat failed\n"); - return -1; - } - - XShmAttach(xfi->display, &(xfi->fb_shm_info)); - XSync(xfi->display, False); - - shmctl(xfi->fb_shm_info.shmid, IPC_RMID, 0); - - fprintf(stderr, "display: %p root_window: %p width: %d height: %d depth: %d\n", - xfi->display, (void*) xfi->root_window, xfi->fb_image->width, xfi->fb_image->height, xfi->fb_image->depth); - - xfi->fb_pixmap = XShmCreatePixmap(xfi->display, - xfi->root_window, xfi->fb_image->data, &(xfi->fb_shm_info), - xfi->fb_image->width, xfi->fb_image->height, xfi->fb_image->depth); - - return 0; -} - -void xf_info_free(xfInfo *info) -{ - assert(NULL != info); - - if (info->display) - XCloseDisplay(info->display); - - freerdp_clrconv_free(info->clrconv); - free(info); -} - -xfInfo* xf_info_init() -{ - int i; - xfInfo* xfi; - int pf_count; - int vi_count; - XVisualInfo* vi; - XVisualInfo* vis; - XVisualInfo template; - XPixmapFormatValues* pf; - XPixmapFormatValues* pfs; - - xfi = (xfInfo*) malloc(sizeof(xfInfo)); - ZeroMemory(xfi, sizeof(xfInfo)); - - /** - * Recent X11 servers drop support for shared pixmaps - * To see if your X11 server supports shared pixmaps, use: - * xdpyinfo -ext MIT-SHM | grep "shared pixmaps" - */ - xfi->use_xshm = TRUE; - - setenv("DISPLAY", ":0", 1); /* Set DISPLAY variable if not already set */ - - if (!XInitThreads()) - fprintf(stderr, "warning: XInitThreads() failure\n"); - - xfi->display = XOpenDisplay(NULL); - - if (!xfi->display) - { - fprintf(stderr, "failed to open display: %s\n", XDisplayName(NULL)); - exit(1); - } - - xf_list_monitors(xfi); - - xfi->xfds = ConnectionNumber(xfi->display); - xfi->number = DefaultScreen(xfi->display); - xfi->screen = ScreenOfDisplay(xfi->display, xfi->number); - xfi->depth = DefaultDepthOfScreen(xfi->screen); - xfi->width = WidthOfScreen(xfi->screen); - xfi->height = HeightOfScreen(xfi->screen); - xfi->root_window = DefaultRootWindow(xfi->display); - - pfs = XListPixmapFormats(xfi->display, &pf_count); - - if (!pfs) - { - fprintf(stderr, "XListPixmapFormats failed\n"); - exit(1); - } - - for (i = 0; i < pf_count; i++) - { - pf = pfs + i; - - if (pf->depth == xfi->depth) - { - xfi->bpp = pf->bits_per_pixel; - xfi->scanline_pad = pf->scanline_pad; - break; - } - } - XFree(pfs); - - ZeroMemory(&template, sizeof(template)); - template.class = TrueColor; - template.screen = xfi->number; - - vis = XGetVisualInfo(xfi->display, VisualClassMask | VisualScreenMask, &template, &vi_count); - - if (!vis) - { - fprintf(stderr, "XGetVisualInfo failed\n"); - exit(1); - } - - for (i = 0; i < vi_count; i++) - { - vi = vis + i; - - if (vi->depth == xfi->depth) - { - xfi->visual = vi->visual; - break; - } - } - XFree(vis); - - xfi->clrconv = freerdp_clrconv_new(CLRCONV_ALPHA | CLRCONV_INVERT); - - XSelectInput(xfi->display, xfi->root_window, SubstructureNotifyMask); - - if (xfi->use_xshm) - { - if (xf_xshm_init(xfi) < 0) - xfi->use_xshm = FALSE; - } - - if (xfi->use_xshm) - printf("Using X Shared Memory Extension (XShm)\n"); - -#ifdef WITH_XDAMAGE - xf_xdamage_init(xfi); -#endif - - xf_cursor_init(xfi); - - xfi->bytesPerPixel = 4; - xfi->activePeerCount = 0; - - freerdp_keyboard_init(0); - - return xfi; -} - -void xf_peer_context_new(freerdp_peer* client, xfPeerContext* context) -{ - context->info = xf_info_init(); - context->rfx_context = rfx_context_new(TRUE); - context->rfx_context->mode = RLGR3; - context->rfx_context->width = context->info->width; - context->rfx_context->height = context->info->height; - - rfx_context_set_pixel_format(context->rfx_context, RDP_PIXEL_FORMAT_B8G8R8A8); - - context->s = Stream_New(NULL, 65536); - Stream_Clear(context->s); - - context->updateReadyEvent = CreateEvent(NULL, TRUE, FALSE, NULL); - context->updateSentEvent = CreateEvent(NULL, TRUE, FALSE, NULL); -} - -void xf_peer_context_free(freerdp_peer* client, xfPeerContext* context) -{ - if (context) - { - xf_info_free(context->info); - - CloseHandle(context->updateReadyEvent); - CloseHandle(context->updateSentEvent); - - Stream_Free(context->s, TRUE); - rfx_context_free(context->rfx_context); - } -} - -void xf_peer_init(freerdp_peer* client) -{ - xfInfo* xfi; - xfPeerContext* xfp; - - client->ContextSize = sizeof(xfPeerContext); - client->ContextNew = (psPeerContextNew) xf_peer_context_new; - client->ContextFree = (psPeerContextFree) xf_peer_context_free; - freerdp_peer_context_new(client); - - xfp = (xfPeerContext*) client->context; - - xfp->fps = 16; - xfi = xfp->info; - - xfp->mutex = CreateMutex(NULL, FALSE, NULL); -} - -void xf_peer_send_update(freerdp_peer* client) -{ - rdpUpdate* update; - SURFACE_BITS_COMMAND* cmd; - - update = client->update; - cmd = &update->surface_bits_command; - - if (cmd->bitmapDataLength) - update->SurfaceBits(update->context, cmd); -} - -BOOL xf_peer_get_fds(freerdp_peer* client, void** rfds, int* rcount) -{ - int fds; - HANDLE event; - xfPeerContext* xfp = (xfPeerContext*) client->context; - - event = xfp->updateReadyEvent; - fds = GetEventFileDescriptor(event); - rfds[*rcount] = (void*) (long) fds; - (*rcount)++; - - return TRUE; -} - -BOOL xf_peer_check_fds(freerdp_peer* client) -{ - xfInfo* xfi; - xfPeerContext* xfp; - - xfp = (xfPeerContext*) client->context; - xfi = xfp->info; - - if (WaitForSingleObject(xfp->updateReadyEvent, 0) == WAIT_OBJECT_0) - { - if (!xfp->activated) - return TRUE; - - xf_peer_send_update(client); - - ResetEvent(xfp->updateReadyEvent); - SetEvent(xfp->updateSentEvent); - } - - return TRUE; -} - -BOOL xf_peer_capabilities(freerdp_peer* client) -{ - return TRUE; -} - -BOOL xf_peer_post_connect(freerdp_peer* client) -{ - xfInfo* xfi; - xfPeerContext* xfp; - - xfp = (xfPeerContext*) client->context; - xfi = (xfInfo*) xfp->info; - - /** - * This callback is called when the entire connection sequence is done, i.e. we've received the - * Font List PDU from the client and sent out the Font Map PDU. - * The server may start sending graphics output and receiving keyboard/mouse input after this - * callback returns. - */ - fprintf(stderr, "Client %s is activated", client->hostname); - if (client->settings->AutoLogonEnabled) - { - fprintf(stderr, " and wants to login automatically as %s\\%s", - client->settings->Domain ? client->settings->Domain : "", - client->settings->Username); - - /* A real server may perform OS login here if NLA is not executed previously. */ - } - fprintf(stderr, "\n"); - - fprintf(stderr, "Client requested desktop: %dx%dx%d\n", - client->settings->DesktopWidth, client->settings->DesktopHeight, client->settings->ColorDepth); - - if (!client->settings->RemoteFxCodec) - { - fprintf(stderr, "Client does not support RemoteFX\n"); - return FALSE; - } - - /* A real server should tag the peer as activated here and start sending updates in main loop. */ - - client->settings->DesktopWidth = xfi->width; - client->settings->DesktopHeight = xfi->height; - - client->update->DesktopResize(client->update->context); - - /* Return FALSE here would stop the execution of the peer main loop. */ - return TRUE; -} - -BOOL xf_peer_activate(freerdp_peer* client) -{ - xfPeerContext* xfp = (xfPeerContext*) client->context; - - rfx_context_reset(xfp->rfx_context); - xfp->activated = TRUE; - - xfp->info->activePeerCount++; - - xfp->monitorThread = CreateThread(NULL, 0, - (LPTHREAD_START_ROUTINE) xf_update_thread, (void*) client, 0, NULL); - - return TRUE; -} - -const char* makecert_argv[4] = -{ - "makecert", - "-rdp", - "-live", - "-silent" -}; - -int makecert_argc = (sizeof(makecert_argv) / sizeof(char*)); - -int xf_generate_certificate(rdpSettings* settings) -{ - char* server_file_path; - MAKECERT_CONTEXT* context; - - server_file_path = GetCombinedPath(settings->ConfigPath, "server"); - - if (!PathFileExistsA(server_file_path)) - CreateDirectoryA(server_file_path, 0); - - settings->CertificateFile = GetCombinedPath(server_file_path, "server.crt"); - settings->PrivateKeyFile = GetCombinedPath(server_file_path, "server.key"); - - if ((!PathFileExistsA(settings->CertificateFile)) || - (!PathFileExistsA(settings->PrivateKeyFile))) - { - context = makecert_context_new(); - - makecert_context_process(context, makecert_argc, (char**) makecert_argv); - - makecert_context_set_output_file_name(context, "server"); - - if (!PathFileExistsA(settings->CertificateFile)) - makecert_context_output_certificate_file(context, server_file_path); - - if (!PathFileExistsA(settings->PrivateKeyFile)) - makecert_context_output_private_key_file(context, server_file_path); - - makecert_context_free(context); - } - - free(server_file_path); - - return 0; -} - -static void* xf_peer_main_loop(void* arg) -{ - int i; - int fds; - int max_fds; - int rcount; - void* rfds[32]; - fd_set rfds_set; - rdpSettings* settings; - xfPeerContext* xfp; - struct timeval timeout; - freerdp_peer* client = (freerdp_peer*) arg; - - assert(NULL != client); - - ZeroMemory(rfds, sizeof(rfds)); - ZeroMemory(&timeout, sizeof(struct timeval)); - - fprintf(stderr, "We've got a client %s\n", client->hostname); - - xf_peer_init(client); - xfp = (xfPeerContext*) client->context; - settings = client->settings; - - xf_generate_certificate(settings); - - settings->RemoteFxCodec = TRUE; - settings->ColorDepth = 32; - - settings->NlaSecurity = FALSE; - settings->TlsSecurity = TRUE; - settings->RdpSecurity = FALSE; - - client->Capabilities = xf_peer_capabilities; - client->PostConnect = xf_peer_post_connect; - client->Activate = xf_peer_activate; - - xf_input_register_callbacks(client->input); - - client->Initialize(client); - - while (1) - { - rcount = 0; - - if (client->GetFileDescriptor(client, rfds, &rcount) != TRUE) - { - fprintf(stderr, "Failed to get FreeRDP file descriptor\n"); - break; - } - - if (xf_peer_get_fds(client, rfds, &rcount) != TRUE) - { - fprintf(stderr, "Failed to get xfreerdp file descriptor\n"); - break; - } - - max_fds = 0; - FD_ZERO(&rfds_set); - - for (i = 0; i < rcount; i++) - { - fds = (int)(long)(rfds[i]); - - if (fds > max_fds) - max_fds = fds; - - FD_SET(fds, &rfds_set); - } - - if (max_fds == 0) - break; - - timeout.tv_sec = 0; - timeout.tv_usec = 100; - - if (select(max_fds + 1, &rfds_set, NULL, NULL, &timeout) == -1) - { - /* these are not really errors */ - if (!((errno == EAGAIN) || - (errno == EWOULDBLOCK) || - (errno == EINPROGRESS) || - (errno == EINTR))) /* signal occurred */ - { - fprintf(stderr, "select failed\n"); - break; - } - } - - if (client->CheckFileDescriptor(client) != TRUE) - { - fprintf(stderr, "Failed to check freerdp file descriptor\n"); - break; - } - - if ((xf_peer_check_fds(client)) != TRUE) - { - fprintf(stderr, "Failed to check xfreerdp file descriptor\n"); - break; - } - } - - fprintf(stderr, "Client %s disconnected.\n", client->hostname); - - client->Disconnect(client); - - freerdp_peer_context_free(client); - freerdp_peer_free(client); - - ExitThread(0); - - return NULL; -} - -void xf_peer_accepted(freerdp_listener* instance, freerdp_peer* client) -{ - HANDLE thread; - - thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) xf_peer_main_loop, client, 0, NULL); -} diff --git a/server/X11/xf_peer.h b/server/X11/xf_peer.h deleted file mode 100644 index e6febd68d..000000000 --- a/server/X11/xf_peer.h +++ /dev/null @@ -1,63 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * X11 Peer - * - * Copyright 2011 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef __XF_PEER_H -#define __XF_PEER_H - -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include - -typedef struct xf_peer_context xfPeerContext; - -#include "xfreerdp.h" - -#define PeerEvent_Base 0 - -#define PeerEvent_Class (PeerEvent_Base + 1) - -#define PeerEvent_EncodeRegion 1 - -struct xf_peer_context -{ - rdpContext _p; - - int fps; - wStream* s; - xfInfo* info; - HANDLE mutex; - BOOL activated; - HANDLE monitorThread; - HANDLE updateReadyEvent; - HANDLE updateSentEvent; - RFX_CONTEXT* rfx_context; -}; - -void xf_peer_accepted(freerdp_listener* instance, freerdp_peer* client); - -#endif /* __XF_PEER_H */ diff --git a/server/X11/xf_update.c b/server/X11/xf_update.c deleted file mode 100644 index 67addb550..000000000 --- a/server/X11/xf_update.c +++ /dev/null @@ -1,100 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * X11 Server Graphical Updates - * - * Copyright 2013 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include - -#include -#include -#include - -#include "xf_peer.h" -#include "xf_encode.h" - -#include "xf_update.h" - -void* xf_update_thread(void* param) -{ - xfInfo* xfi; - HANDLE event; - XEvent xevent; - DWORD beg, end; - DWORD diff, rate; - xfPeerContext* xfp; - freerdp_peer* client; - int x, y, width, height; - XDamageNotifyEvent* notify; - - client = (freerdp_peer*) param; - xfp = (xfPeerContext*) client->context; - xfi = xfp->info; - - rate = 1000 / xfp->fps; - - event = CreateFileDescriptorEvent(NULL, FALSE, FALSE, xfi->xfds); - - while (WaitForSingleObject(event, INFINITE) == WAIT_OBJECT_0) - { - beg = GetTickCount(); - - while (XPending(xfi->display) > 0) - { - ZeroMemory(&xevent, sizeof(xevent)); - XNextEvent(xfi->display, &xevent); - - if (xevent.type == xfi->xdamage_notify_event) - { - notify = (XDamageNotifyEvent*) &xevent; - - x = notify->area.x; - y = notify->area.y; - width = notify->area.width; - height = notify->area.height; - - if (xf_update_encode(client, x, y, width, height) >= 0) - { - xf_xdamage_subtract_region(xfp, x, y, width, height); - - SetEvent(xfp->updateReadyEvent); - - WaitForSingleObject(xfp->updateSentEvent, INFINITE); - ResetEvent(xfp->updateSentEvent); - } - } -#ifdef WITH_XFIXES - else if (xevent.type == xfi->xfixes_notify_event) - { - XFixesCursorImage* ci = XFixesGetCursorImage(xfi->display); - XFree(ci); - } -#endif - } - - end = GetTickCount(); - diff = end - beg; - - if (diff < rate) - Sleep(rate - diff); - } - - return NULL; -} diff --git a/server/X11/xfreerdp.h b/server/X11/xfreerdp.h deleted file mode 100644 index db6231893..000000000 --- a/server/X11/xfreerdp.h +++ /dev/null @@ -1,92 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * FreeRDP X11 Server - * - * Copyright 2011 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef __XFREERDP_H -#define __XFREERDP_H - -#include "xf_interface.h" - -#include -#include -#include -#include - -#include - -#ifdef WITH_XSHM -#include -#endif - -#ifdef WITH_XFIXES -#include -#endif - -#ifdef WITH_XTEST -#include -#endif - -#ifdef WITH_XDAMAGE -#include -#endif - -struct xf_info -{ - int bpp; - int xfds; - int depth; - int width; - int height; - int number; - XImage* image; - Screen* screen; - Visual* visual; - Display* display; - int scanline_pad; - int bytesPerPixel; - HCLRCONV clrconv; - BOOL use_xshm; - int activePeerCount; - - XImage* fb_image; - Pixmap fb_pixmap; - Window root_window; - XShmSegmentInfo fb_shm_info; - -#ifdef WITH_XDAMAGE - GC xdamage_gc; - Damage xdamage; - int xdamage_notify_event; - XserverRegion xdamage_region; -#endif - -#ifdef WITH_XFIXES - int xfixes_notify_event; -#endif -}; - -struct xf_server -{ - DWORD port; - HANDLE thread; - freerdp_listener* listener; -}; - -void* xf_server_thread(void* param); - -#endif /* __XFREERDP_H */ From 369fb876c920f56b8056bacc464b0c2e34eb3f7e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 10 Jul 2014 16:32:46 -0400 Subject: [PATCH 002/170] shadow: start simplifying X11 shadow server --- server/.gitignore | 2 +- server/shadow/.gitignore | 2 + server/shadow/CMakeLists.txt | 154 +++++++++ server/shadow/X11/x11_input.c | 173 ++++++++++ server/shadow/X11/x11_peer.c | 612 +++++++++++++++++++++++++++++++++ server/shadow/X11/x11_shadow.c | 153 +++++++++ server/shadow/X11/x11_shadow.h | 173 ++++++++++ server/shadow/X11/x11_update.c | 214 ++++++++++++ server/shadow/shadow.c | 113 ++++++ server/shadow/shadow.h | 41 +++ 10 files changed, 1636 insertions(+), 1 deletion(-) create mode 100644 server/shadow/.gitignore create mode 100644 server/shadow/CMakeLists.txt create mode 100644 server/shadow/X11/x11_input.c create mode 100644 server/shadow/X11/x11_peer.c create mode 100644 server/shadow/X11/x11_shadow.c create mode 100644 server/shadow/X11/x11_shadow.h create mode 100644 server/shadow/X11/x11_update.c create mode 100644 server/shadow/shadow.c create mode 100644 server/shadow/shadow.h diff --git a/server/.gitignore b/server/.gitignore index dac0f57c4..ef902f781 100644 --- a/server/.gitignore +++ b/server/.gitignore @@ -4,5 +4,5 @@ !/Sample !/Windows !/X11 -!/Shadow +!/shadow !/CmakeLists.txt diff --git a/server/shadow/.gitignore b/server/shadow/.gitignore new file mode 100644 index 000000000..662d7d541 --- /dev/null +++ b/server/shadow/.gitignore @@ -0,0 +1,2 @@ +freerdp-shadow + diff --git a/server/shadow/CMakeLists.txt b/server/shadow/CMakeLists.txt new file mode 100644 index 000000000..2fd6220d6 --- /dev/null +++ b/server/shadow/CMakeLists.txt @@ -0,0 +1,154 @@ +# FreeRDP: A Remote Desktop Protocol Implementation +# FreeRDP Shadow Server cmake build script +# +# Copyright 2014 Marc-Andre Moreau +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +set(MODULE_NAME "freerdp-shadow") +set(MODULE_PREFIX "FREERDP_SERVER_SHADOW") + +if(WITH_X11) + set(XEXT_FEATURE_TYPE "RECOMMENDED") + set(XEXT_FEATURE_PURPOSE "X11 extension") + set(XEXT_FEATURE_DESCRIPTION "X11 core extensions") + + set(XSHM_FEATURE_TYPE "RECOMMENDED") + set(XSHM_FEATURE_PURPOSE "X11 shared memory") + set(XSHM_FEATURE_DESCRIPTION "X11 shared memory extension") + + set(XINERAMA_FEATURE_TYPE "RECOMMENDED") + set(XINERAMA_FEATURE_PURPOSE "multi-monitor") + set(XINERAMA_FEATURE_DESCRIPTION "X11 multi-monitor extension") + + set(XTEST_FEATURE_TYPE "RECOMMENDED") + set(XTEST_FEATURE_PURPOSE "X11 input event injection") + set(XTEST_FEATURE_DESCRIPTION "X11 input event injection extension") + + set(XCURSOR_FEATURE_TYPE "RECOMMENDED") + set(XCURSOR_FEATURE_PURPOSE "cursor") + set(XCURSOR_FEATURE_DESCRIPTION "X11 cursor extension") + + set(XFIXES_FEATURE_TYPE "RECOMMENDED") + set(XFIXES_FEATURE_PURPOSE "X11 region") + set(XFIXES_FEATURE_DESCRIPTION "X11 region fix extension") + + set(XRANDR_FEATURE_TYPE "RECOMMENDED") + set(XRANDR_FEATURE_PURPOSE "X11 resize, rotate and reflect") + set(XRANDR_FEATURE_DESCRIPTION "X11 resize, rotate and reflect extension") + + set(XDAMAGE_FEATURE_TYPE "RECOMMENDED") + set(XDAMAGE_FEATURE_PURPOSE "X11 region damage") + set(XDAMAGE_FEATURE_DESCRIPTION "X11 region damage extension") + + find_feature(Xext ${XEXT_FEATURE_TYPE} ${XEXT_FEATURE_PURPOSE} ${XEXT_FEATURE_DESCRIPTION}) + find_feature(XShm ${XSHM_FEATURE_TYPE} ${XSHM_FEATURE_PURPOSE} ${XSHM_FEATURE_DESCRIPTION}) + find_feature(XTest ${XTEST_FEATURE_TYPE} ${XTEST_FEATURE_PURPOSE} ${XTEST_FEATURE_DESCRIPTION}) + find_feature(Xfixes ${XFIXES_FEATURE_TYPE} ${XFIXES_FEATURE_PURPOSE} ${XFIXES_FEATURE_DESCRIPTION}) + find_feature(XRandR ${XRANDR_FEATURE_TYPE} ${XRANDR_FEATURE_PURPOSE} ${XRANDR_FEATURE_DESCRIPTION}) + find_feature(Xdamage ${XDAMAGE_FEATURE_TYPE} ${XDAMAGE_FEATURE_PURPOSE} ${XDAMAGE_FEATURE_DESCRIPTION}) + find_feature(Xcursor ${XCURSOR_FEATURE_TYPE} ${XCURSOR_FEATURE_PURPOSE} ${XCURSOR_FEATURE_DESCRIPTION}) + find_feature(Xinerama ${XINERAMA_FEATURE_TYPE} ${XINERAMA_FEATURE_PURPOSE} ${XINERAMA_FEATURE_DESCRIPTION}) + + if(WITH_X11) + add_definitions(-DWITH_X11) + include_directories(${X11_INCLUDE_DIRS}) + list(APPEND ${MODULE_PREFIX}_X11_LIBS ${X11_LIBRARIES}) + endif() + + if(WITH_XSHM) + add_definitions(-DWITH_XSHM) + include_directories(${XSHM_INCLUDE_DIRS}) + list(APPEND ${MODULE_PREFIX}_X11_LIBS ${XSHM_LIBRARIES}) + endif() + + if(WITH_XEXT) + add_definitions(-DWITH_XEXT) + include_directories(${XEXT_INCLUDE_DIRS}) + list(APPEND ${MODULE_PREFIX}_X11_LIBS ${XEXT_LIBRARIES}) + endif() + + if(WITH_XINERAMA) + add_definitions(-DWITH_XINERAMA) + include_directories(${XINERAMA_INCLUDE_DIRS}) + list(APPEND ${MODULE_PREFIX}_X11_LIBS ${XINERAMA_LIBRARIES}) + endif() + + if(WITH_XCURSOR) + add_definitions(-DWITH_XCURSOR) + include_directories(${XCURSOR_INCLUDE_DIRS}) + list(APPEND ${MODULE_PREFIX}_X11_LIBS ${XCURSOR_LIBRARIES}) + endif() + + if(WITH_XDAMAGE) + add_definitions(-DWITH_XDAMAGE) + include_directories(${XDAMAGE_INCLUDE_DIRS}) + list(APPEND ${MODULE_PREFIX}_X11_LIBS ${XDAMAGE_LIBRARIES}) + endif() + + if(WITH_XFIXES) + add_definitions(-DWITH_XFIXES) + include_directories(${XFIXES_INCLUDE_DIRS}) + list(APPEND ${MODULE_PREFIX}_X11_LIBS ${XFIXES_LIBRARIES}) + endif() + + if(WITH_XTEST) + add_definitions(-DWITH_XTEST) + include_directories(${XTEST_INCLUDE_DIRS}) + list(APPEND ${MODULE_PREFIX}_X11_LIBS ${XTEST_LIBRARIES}) + endif() + + if(WITH_XRANDR) + add_definitions(-DWITH_XRANDR) + include_directories(${XRANDR_INCLUDE_DIRS}) + list(APPEND ${MODULE_PREFIX}_X11_LIBS ${XRANDR_LIBRARIES}) + endif() +endif() + +set(${MODULE_PREFIX}_SRCS + shadow.c + shadow.h) + +set(${MODULE_PREFIX}_X11_SRCS + X11/x11_input.c + X11/x11_peer.c + X11/x11_update.c + X11/x11_shadow.c + X11/x11_shadow.h) + +if(X11_FOUND) + list(APPEND ${MODULE_PREFIX}_SRCS ${${MODULE_PREFIX}_X11_SRCS}) + list(APPEND ${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_X11_LIBS}) +endif() + +add_executable(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) +set_target_properties(${MODULE_NAME} PROPERTIES OUTPUT_NAME "freerdp-shadow") + +set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS + MONOLITHIC ${MONOLITHIC_BUILD} + MODULE freerdp + MODULES freerdp-core freerdp-common freerdp-codec freerdp-primitives freerdp-utils freerdp-gdi freerdp-crypto freerdp-locale) + +set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS + MONOLITHIC ${MONOLITHIC_BUILD} + MODULE winpr + MODULES winpr-sspi winpr-crt winpr-utils winpr-input winpr-sysinfo) + +set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} winpr-makecert-tool) + +target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS}) + +install(TARGETS ${MODULE_NAME} DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT server) + +set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Server/shadow") + diff --git a/server/shadow/X11/x11_input.c b/server/shadow/X11/x11_input.c new file mode 100644 index 000000000..314886b21 --- /dev/null +++ b/server/shadow/X11/x11_input.c @@ -0,0 +1,173 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * X11 Server Input + * + * Copyright 2011 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include + +#include + +#include +#include + +#include "x11_shadow.h" + +int xf_cursor_init(xfInfo* xfi) +{ +#ifdef WITH_XFIXES + int event; + int error; + + if (!XFixesQueryExtension(xfi->display, &event, &error)) + { + fprintf(stderr, "XFixesQueryExtension failed\n"); + return -1; + } + + xfi->xfixes_notify_event = event + XFixesCursorNotify; + + XFixesSelectCursorInput(xfi->display, DefaultRootWindow(xfi->display), XFixesDisplayCursorNotifyMask); +#endif + + return 0; +} + +void xf_input_synchronize_event(rdpInput* input, UINT32 flags) +{ + fprintf(stderr, "Client sent a synchronize event (flags:0x%X)\n", flags); +} + +void xf_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) +{ +#ifdef WITH_XTEST + DWORD vkcode; + DWORD keycode; + BOOL extended = FALSE; + xfPeerContext* xfp = (xfPeerContext*) input->context; + xfInfo* xfi = xfp->info; + + if (flags & KBD_FLAGS_EXTENDED) + extended = TRUE; + + if (extended) + code |= KBDEXT; + + vkcode = GetVirtualKeyCodeFromVirtualScanCode(code, 4); + keycode = GetKeycodeFromVirtualKeyCode(vkcode, KEYCODE_TYPE_EVDEV); + + if (keycode != 0) + { + XTestGrabControl(xfi->display, True); + + if (flags & KBD_FLAGS_DOWN) + XTestFakeKeyEvent(xfi->display, keycode, True, 0); + else if (flags & KBD_FLAGS_RELEASE) + XTestFakeKeyEvent(xfi->display, keycode, False, 0); + + XTestGrabControl(xfi->display, False); + } +#endif +} + +void xf_input_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) +{ + fprintf(stderr, "Client sent a unicode keyboard event (flags:0x%X code:0x%X)\n", flags, code); +} + +void xf_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) +{ +#ifdef WITH_XTEST + xfPeerContext* xfp = (xfPeerContext*) input->context; + int button = 0; + BOOL down = FALSE; + xfInfo* xfi = xfp->info; + + XTestGrabControl(xfi->display, True); + + if (flags & PTR_FLAGS_WHEEL) + { + BOOL negative = FALSE; + + if (flags & PTR_FLAGS_WHEEL_NEGATIVE) + negative = TRUE; + + button = (negative) ? 5 : 4; + + XTestFakeButtonEvent(xfi->display, button, True, 0); + XTestFakeButtonEvent(xfi->display, button, False, 0); + } + else + { + if (flags & PTR_FLAGS_MOVE) + XTestFakeMotionEvent(xfi->display, 0, x, y, 0); + + if (flags & PTR_FLAGS_BUTTON1) + button = 1; + else if (flags & PTR_FLAGS_BUTTON2) + button = 3; + else if (flags & PTR_FLAGS_BUTTON3) + button = 2; + + if (flags & PTR_FLAGS_DOWN) + down = TRUE; + + if (button != 0) + XTestFakeButtonEvent(xfi->display, button, down, 0); + } + + XTestGrabControl(xfi->display, False); +#endif +} + +void xf_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) +{ +#ifdef WITH_XTEST + xfPeerContext* xfp = (xfPeerContext*) input->context; + int button = 0; + BOOL down = FALSE; + xfInfo* xfi = xfp->info; + + XTestGrabControl(xfi->display, True); + XTestFakeMotionEvent(xfi->display, 0, x, y, CurrentTime); + + if (flags & PTR_XFLAGS_BUTTON1) + button = 8; + else if (flags & PTR_XFLAGS_BUTTON2) + button = 9; + + if (flags & PTR_XFLAGS_DOWN) + down = TRUE; + + if (button != 0) + XTestFakeButtonEvent(xfi->display, button, down, 0); + + XTestGrabControl(xfi->display, False); +#endif +} + +void xf_input_register_callbacks(rdpInput* input) +{ + input->SynchronizeEvent = xf_input_synchronize_event; + input->KeyboardEvent = xf_input_keyboard_event; + input->UnicodeKeyboardEvent = xf_input_unicode_keyboard_event; + input->MouseEvent = xf_input_mouse_event; + input->ExtendedMouseEvent = xf_input_extended_mouse_event; +} diff --git a/server/shadow/X11/x11_peer.c b/server/shadow/X11/x11_peer.c new file mode 100644 index 000000000..ef161a5ba --- /dev/null +++ b/server/shadow/X11/x11_peer.c @@ -0,0 +1,612 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2011-2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +#include +#include +#include + +#include + +#include "x11_shadow.h" + +#ifdef WITH_XDAMAGE + +void xf_xdamage_init(xfInfo* xfi) +{ + int damage_event; + int damage_error; + int major, minor; + XGCValues values; + + if (XDamageQueryExtension(xfi->display, &damage_event, &damage_error) == 0) + { + fprintf(stderr, "XDamageQueryExtension failed\n"); + return; + } + + XDamageQueryVersion(xfi->display, &major, &minor); + + if (XDamageQueryVersion(xfi->display, &major, &minor) == 0) + { + fprintf(stderr, "XDamageQueryVersion failed\n"); + return; + } + else if (major < 1) + { + fprintf(stderr, "XDamageQueryVersion failed: major:%d minor:%d\n", major, minor); + return; + } + + xfi->xdamage_notify_event = damage_event + XDamageNotify; + xfi->xdamage = XDamageCreate(xfi->display, xfi->root_window, XDamageReportDeltaRectangles); + + if (xfi->xdamage == None) + { + fprintf(stderr, "XDamageCreate failed\n"); + return; + } + +#ifdef WITH_XFIXES + xfi->xdamage_region = XFixesCreateRegion(xfi->display, NULL, 0); + + if (xfi->xdamage_region == None) + { + fprintf(stderr, "XFixesCreateRegion failed\n"); + XDamageDestroy(xfi->display, xfi->xdamage); + xfi->xdamage = None; + return; + } +#endif + + values.subwindow_mode = IncludeInferiors; + xfi->xdamage_gc = XCreateGC(xfi->display, xfi->root_window, GCSubwindowMode, &values); + XSetFunction(xfi->display, xfi->xdamage_gc, GXcopy); +} + +#endif + +int xf_xshm_init(xfInfo* xfi) +{ + Bool pixmaps; + int major, minor; + + if (XShmQueryExtension(xfi->display) != False) + { + XShmQueryVersion(xfi->display, &major, &minor, &pixmaps); + + if (pixmaps != True) + { + fprintf(stderr, "XShmQueryVersion failed\n"); + return -1; + } + } + else + { + fprintf(stderr, "XShmQueryExtension failed\n"); + return -1; + } + + xfi->fb_shm_info.shmid = -1; + xfi->fb_shm_info.shmaddr = (char*) -1; + + xfi->fb_image = XShmCreateImage(xfi->display, xfi->visual, xfi->depth, + ZPixmap, NULL, &(xfi->fb_shm_info), xfi->width, xfi->height); + + if (!xfi->fb_image) + { + fprintf(stderr, "XShmCreateImage failed\n"); + return -1; + } + + xfi->fb_shm_info.shmid = shmget(IPC_PRIVATE, + xfi->fb_image->bytes_per_line * xfi->fb_image->height, IPC_CREAT | 0600); + + if (xfi->fb_shm_info.shmid == -1) + { + fprintf(stderr, "shmget failed\n"); + return -1; + } + + xfi->fb_shm_info.readOnly = False; + xfi->fb_shm_info.shmaddr = shmat(xfi->fb_shm_info.shmid, 0, 0); + xfi->fb_image->data = xfi->fb_shm_info.shmaddr; + + if (xfi->fb_shm_info.shmaddr == ((char*) -1)) + { + fprintf(stderr, "shmat failed\n"); + return -1; + } + + XShmAttach(xfi->display, &(xfi->fb_shm_info)); + XSync(xfi->display, False); + + shmctl(xfi->fb_shm_info.shmid, IPC_RMID, 0); + + fprintf(stderr, "display: %p root_window: %p width: %d height: %d depth: %d\n", + xfi->display, (void*) xfi->root_window, xfi->fb_image->width, xfi->fb_image->height, xfi->fb_image->depth); + + xfi->fb_pixmap = XShmCreatePixmap(xfi->display, + xfi->root_window, xfi->fb_image->data, &(xfi->fb_shm_info), + xfi->fb_image->width, xfi->fb_image->height, xfi->fb_image->depth); + + return 0; +} + +void xf_info_free(xfInfo *info) +{ + if (info->display) + XCloseDisplay(info->display); + + freerdp_clrconv_free(info->clrconv); + free(info); +} + +xfInfo* xf_info_init() +{ + int i; + xfInfo* xfi; + int pf_count; + int vi_count; + XVisualInfo* vi; + XVisualInfo* vis; + XVisualInfo template; + XPixmapFormatValues* pf; + XPixmapFormatValues* pfs; + + xfi = (xfInfo*) calloc(1, sizeof(xfInfo)); + + /** + * Recent X11 servers drop support for shared pixmaps + * To see if your X11 server supports shared pixmaps, use: + * xdpyinfo -ext MIT-SHM | grep "shared pixmaps" + */ + xfi->use_xshm = TRUE; + + setenv("DISPLAY", ":0", 1); /* Set DISPLAY variable if not already set */ + + if (!XInitThreads()) + fprintf(stderr, "warning: XInitThreads() failure\n"); + + xfi->display = XOpenDisplay(NULL); + + if (!xfi->display) + { + fprintf(stderr, "failed to open display: %s\n", XDisplayName(NULL)); + exit(1); + } + + xfi->xfds = ConnectionNumber(xfi->display); + xfi->number = DefaultScreen(xfi->display); + xfi->screen = ScreenOfDisplay(xfi->display, xfi->number); + xfi->depth = DefaultDepthOfScreen(xfi->screen); + xfi->width = WidthOfScreen(xfi->screen); + xfi->height = HeightOfScreen(xfi->screen); + xfi->root_window = DefaultRootWindow(xfi->display); + + pfs = XListPixmapFormats(xfi->display, &pf_count); + + if (!pfs) + { + fprintf(stderr, "XListPixmapFormats failed\n"); + exit(1); + } + + for (i = 0; i < pf_count; i++) + { + pf = pfs + i; + + if (pf->depth == xfi->depth) + { + xfi->bpp = pf->bits_per_pixel; + xfi->scanline_pad = pf->scanline_pad; + break; + } + } + XFree(pfs); + + ZeroMemory(&template, sizeof(template)); + template.class = TrueColor; + template.screen = xfi->number; + + vis = XGetVisualInfo(xfi->display, VisualClassMask | VisualScreenMask, &template, &vi_count); + + if (!vis) + { + fprintf(stderr, "XGetVisualInfo failed\n"); + exit(1); + } + + for (i = 0; i < vi_count; i++) + { + vi = vis + i; + + if (vi->depth == xfi->depth) + { + xfi->visual = vi->visual; + break; + } + } + XFree(vis); + + xfi->clrconv = freerdp_clrconv_new(CLRCONV_ALPHA | CLRCONV_INVERT); + + XSelectInput(xfi->display, xfi->root_window, SubstructureNotifyMask); + + if (xfi->use_xshm) + { + if (xf_xshm_init(xfi) < 0) + xfi->use_xshm = FALSE; + } + + if (xfi->use_xshm) + printf("Using X Shared Memory Extension (XShm)\n"); + +#ifdef WITH_XDAMAGE + xf_xdamage_init(xfi); +#endif + + xf_cursor_init(xfi); + + xfi->bytesPerPixel = 4; + xfi->activePeerCount = 0; + + freerdp_keyboard_init(0); + + return xfi; +} + +void xf_peer_context_new(freerdp_peer* client, xfPeerContext* context) +{ + context->info = xf_info_init(); + context->rfx_context = rfx_context_new(TRUE); + context->rfx_context->mode = RLGR3; + context->rfx_context->width = context->info->width; + context->rfx_context->height = context->info->height; + + rfx_context_set_pixel_format(context->rfx_context, RDP_PIXEL_FORMAT_B8G8R8A8); + + context->s = Stream_New(NULL, 65536); + Stream_Clear(context->s); + + context->updateReadyEvent = CreateEvent(NULL, TRUE, FALSE, NULL); + context->updateSentEvent = CreateEvent(NULL, TRUE, FALSE, NULL); +} + +void xf_peer_context_free(freerdp_peer* client, xfPeerContext* context) +{ + if (context) + { + xf_info_free(context->info); + + CloseHandle(context->updateReadyEvent); + CloseHandle(context->updateSentEvent); + + Stream_Free(context->s, TRUE); + rfx_context_free(context->rfx_context); + } +} + +void xf_peer_init(freerdp_peer* client) +{ + xfInfo* xfi; + xfPeerContext* xfp; + + client->ContextSize = sizeof(xfPeerContext); + client->ContextNew = (psPeerContextNew) xf_peer_context_new; + client->ContextFree = (psPeerContextFree) xf_peer_context_free; + freerdp_peer_context_new(client); + + xfp = (xfPeerContext*) client->context; + + xfp->fps = 16; + xfi = xfp->info; + + xfp->mutex = CreateMutex(NULL, FALSE, NULL); +} + +void xf_peer_send_update(freerdp_peer* client) +{ + rdpUpdate* update; + SURFACE_BITS_COMMAND* cmd; + + update = client->update; + cmd = &update->surface_bits_command; + + if (cmd->bitmapDataLength) + update->SurfaceBits(update->context, cmd); +} + +BOOL xf_peer_get_fds(freerdp_peer* client, void** rfds, int* rcount) +{ + int fds; + HANDLE event; + xfPeerContext* xfp = (xfPeerContext*) client->context; + + event = xfp->updateReadyEvent; + fds = GetEventFileDescriptor(event); + rfds[*rcount] = (void*) (long) fds; + (*rcount)++; + + return TRUE; +} + +BOOL xf_peer_check_fds(freerdp_peer* client) +{ + xfInfo* xfi; + xfPeerContext* xfp; + + xfp = (xfPeerContext*) client->context; + xfi = xfp->info; + + if (WaitForSingleObject(xfp->updateReadyEvent, 0) == WAIT_OBJECT_0) + { + if (!xfp->activated) + return TRUE; + + xf_peer_send_update(client); + + ResetEvent(xfp->updateReadyEvent); + SetEvent(xfp->updateSentEvent); + } + + return TRUE; +} + +BOOL xf_peer_capabilities(freerdp_peer* client) +{ + return TRUE; +} + +BOOL xf_peer_post_connect(freerdp_peer* client) +{ + xfInfo* xfi; + xfPeerContext* xfp; + + xfp = (xfPeerContext*) client->context; + xfi = (xfInfo*) xfp->info; + + fprintf(stderr, "Client %s is activated", client->hostname); + if (client->settings->AutoLogonEnabled) + { + fprintf(stderr, " and wants to login automatically as %s\\%s", + client->settings->Domain ? client->settings->Domain : "", + client->settings->Username); + } + fprintf(stderr, "\n"); + + fprintf(stderr, "Client requested desktop: %dx%dx%d\n", + client->settings->DesktopWidth, client->settings->DesktopHeight, client->settings->ColorDepth); + + if (!client->settings->RemoteFxCodec) + { + fprintf(stderr, "Client does not support RemoteFX\n"); + return FALSE; + } + + /* A real server should tag the peer as activated here and start sending updates in main loop. */ + + client->settings->DesktopWidth = xfi->width; + client->settings->DesktopHeight = xfi->height; + + client->update->DesktopResize(client->update->context); + + /* Return FALSE here would stop the execution of the peer main loop. */ + return TRUE; +} + +BOOL xf_peer_activate(freerdp_peer* client) +{ + xfPeerContext* xfp = (xfPeerContext*) client->context; + + rfx_context_reset(xfp->rfx_context); + xfp->activated = TRUE; + + xfp->info->activePeerCount++; + + xfp->monitorThread = CreateThread(NULL, 0, + (LPTHREAD_START_ROUTINE) xf_update_thread, (void*) client, 0, NULL); + + return TRUE; +} + +const char* makecert_argv[4] = +{ + "makecert", + "-rdp", + "-live", + "-silent" +}; + +int makecert_argc = (sizeof(makecert_argv) / sizeof(char*)); + +int xf_generate_certificate(rdpSettings* settings) +{ + char* server_file_path; + MAKECERT_CONTEXT* context; + + server_file_path = GetCombinedPath(settings->ConfigPath, "server"); + + if (!PathFileExistsA(server_file_path)) + CreateDirectoryA(server_file_path, 0); + + settings->CertificateFile = GetCombinedPath(server_file_path, "server.crt"); + settings->PrivateKeyFile = GetCombinedPath(server_file_path, "server.key"); + + if ((!PathFileExistsA(settings->CertificateFile)) || + (!PathFileExistsA(settings->PrivateKeyFile))) + { + context = makecert_context_new(); + + makecert_context_process(context, makecert_argc, (char**) makecert_argv); + + makecert_context_set_output_file_name(context, "server"); + + if (!PathFileExistsA(settings->CertificateFile)) + makecert_context_output_certificate_file(context, server_file_path); + + if (!PathFileExistsA(settings->PrivateKeyFile)) + makecert_context_output_private_key_file(context, server_file_path); + + makecert_context_free(context); + } + + free(server_file_path); + + return 0; +} + +static void* xf_peer_main_loop(void* arg) +{ + int i; + int fds; + int max_fds; + int rcount; + void* rfds[32]; + fd_set rfds_set; + rdpSettings* settings; + xfPeerContext* xfp; + struct timeval timeout; + freerdp_peer* client = (freerdp_peer*) arg; + + ZeroMemory(rfds, sizeof(rfds)); + ZeroMemory(&timeout, sizeof(struct timeval)); + + fprintf(stderr, "We've got a client %s\n", client->hostname); + + xf_peer_init(client); + xfp = (xfPeerContext*) client->context; + settings = client->settings; + + xf_generate_certificate(settings); + + settings->RemoteFxCodec = TRUE; + settings->ColorDepth = 32; + + settings->NlaSecurity = FALSE; + settings->TlsSecurity = TRUE; + settings->RdpSecurity = FALSE; + + client->Capabilities = xf_peer_capabilities; + client->PostConnect = xf_peer_post_connect; + client->Activate = xf_peer_activate; + + xf_input_register_callbacks(client->input); + + client->Initialize(client); + + while (1) + { + rcount = 0; + + if (client->GetFileDescriptor(client, rfds, &rcount) != TRUE) + { + fprintf(stderr, "Failed to get FreeRDP file descriptor\n"); + break; + } + + if (xf_peer_get_fds(client, rfds, &rcount) != TRUE) + { + fprintf(stderr, "Failed to get xfreerdp file descriptor\n"); + break; + } + + max_fds = 0; + FD_ZERO(&rfds_set); + + for (i = 0; i < rcount; i++) + { + fds = (int)(long)(rfds[i]); + + if (fds > max_fds) + max_fds = fds; + + FD_SET(fds, &rfds_set); + } + + if (max_fds == 0) + break; + + timeout.tv_sec = 0; + timeout.tv_usec = 100; + + if (select(max_fds + 1, &rfds_set, NULL, NULL, &timeout) == -1) + { + /* these are not really errors */ + if (!((errno == EAGAIN) || + (errno == EWOULDBLOCK) || + (errno == EINPROGRESS) || + (errno == EINTR))) /* signal occurred */ + { + fprintf(stderr, "select failed\n"); + break; + } + } + + if (client->CheckFileDescriptor(client) != TRUE) + { + fprintf(stderr, "Failed to check freerdp file descriptor\n"); + break; + } + + if ((xf_peer_check_fds(client)) != TRUE) + { + fprintf(stderr, "Failed to check xfreerdp file descriptor\n"); + break; + } + } + + fprintf(stderr, "Client %s disconnected.\n", client->hostname); + + client->Disconnect(client); + + freerdp_peer_context_free(client); + freerdp_peer_free(client); + + ExitThread(0); + + return NULL; +} + +void xf_peer_accepted(freerdp_listener* instance, freerdp_peer* client) +{ + HANDLE thread; + + thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) xf_peer_main_loop, client, 0, NULL); +} diff --git a/server/shadow/X11/x11_shadow.c b/server/shadow/X11/x11_shadow.c new file mode 100644 index 000000000..749b0759f --- /dev/null +++ b/server/shadow/X11/x11_shadow.c @@ -0,0 +1,153 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2011-2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include +#include +#include +#include + +#include +#include + +#include +#include + +#include "x11_shadow.h" + +void* x11_shadow_server_thread(void* param) +{ + int i; + int fds; + int max_fds; + int rcount; + void* rfds[32]; + fd_set rfds_set; + xfServer* server; + freerdp_listener* listener; + + server = (xfServer*) param; + listener = server->listener; + + while (1) + { + rcount = 0; + + ZeroMemory(rfds, sizeof(rfds)); + if (listener->GetFileDescriptor(listener, rfds, &rcount) != TRUE) + { + fprintf(stderr, "Failed to get FreeRDP file descriptor\n"); + break; + } + + max_fds = 0; + FD_ZERO(&rfds_set); + + for (i = 0; i < rcount; i++) + { + fds = (int)(long)(rfds[i]); + + if (fds > max_fds) + max_fds = fds; + + FD_SET(fds, &rfds_set); + } + + if (max_fds == 0) + break; + + if (select(max_fds + 1, &rfds_set, NULL, NULL, NULL) == -1) + { + /* these are not really errors */ + if (!((errno == EAGAIN) || + (errno == EWOULDBLOCK) || + (errno == EINPROGRESS) || + (errno == EINTR))) /* signal occurred */ + { + fprintf(stderr, "select failed\n"); + break; + } + } + + if (listener->CheckFileDescriptor(listener) != TRUE) + { + fprintf(stderr, "Failed to check FreeRDP file descriptor\n"); + break; + } + } + + ExitThread(0); + + return NULL; +} + +int x11_shadow_server_start(xfServer* server) +{ + server->thread = NULL; + + if (server->listener->Open(server->listener, NULL, 3389)) + { + server->thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) + x11_shadow_server_thread, (void*) server, 0, NULL); + } + + return 0; +} + +int x11_shadow_server_stop(xfServer* server) +{ + if (server->thread) + { + TerminateThread(server->thread, 0); + WaitForSingleObject(server->thread, INFINITE); + CloseHandle(server->thread); + + server->listener->Close(server->listener); + } + return 0; +} + +HANDLE x11_shadow_server_get_thread(xfServer* server) +{ + return server->thread; +} + +xfServer* x11_shadow_server_new(int argc, char** argv) +{ + xfServer* server; + + server = (xfServer*) malloc(sizeof(xfServer)); + + if (server) + { + server->listener = freerdp_listener_new(); + server->listener->PeerAccepted = xf_peer_accepted; + } + + signal(SIGPIPE, SIG_IGN); + + return server; +} + +void x11_shadow_server_free(xfServer* server) +{ + if (server) + { + freerdp_listener_free(server->listener); + free(server); + } +} diff --git a/server/shadow/X11/x11_shadow.h b/server/shadow/X11/x11_shadow.h new file mode 100644 index 000000000..2f45ec7a4 --- /dev/null +++ b/server/shadow/X11/x11_shadow.h @@ -0,0 +1,173 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2011-2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FREERDP_SHADOW_SERVER_X11_H +#define FREERDP_SHADOW_SERVER_X11_H + +#include + +#include +#include + +typedef struct xf_info xfInfo; +typedef struct xf_server xfServer; + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * Server Interface + */ + +FREERDP_API int x11_shadow_server_global_init(); +FREERDP_API int x11_shadow_server_global_uninit(); + +FREERDP_API int x11_shadow_server_start(xfServer* server); +FREERDP_API int x11_shadow_server_stop(xfServer* server); + +FREERDP_API HANDLE x11_shadow_server_get_thread(xfServer* server); + +FREERDP_API xfServer* x11_shadow_server_new(int argc, char** argv); +FREERDP_API void x11_shadow_server_free(xfServer* server); + +#ifdef __cplusplus +} +#endif + +#include +#include +#include +#include + +#include + +#ifdef WITH_XSHM +#include +#endif + +#ifdef WITH_XFIXES +#include +#endif + +#ifdef WITH_XTEST +#include +#endif + +#ifdef WITH_XDAMAGE +#include +#endif + +struct xf_info +{ + int bpp; + int xfds; + int depth; + int width; + int height; + int number; + XImage* image; + Screen* screen; + Visual* visual; + Display* display; + int scanline_pad; + int bytesPerPixel; + HCLRCONV clrconv; + BOOL use_xshm; + int activePeerCount; + + XImage* fb_image; + Pixmap fb_pixmap; + Window root_window; + XShmSegmentInfo fb_shm_info; + +#ifdef WITH_XDAMAGE + GC xdamage_gc; + Damage xdamage; + int xdamage_notify_event; + XserverRegion xdamage_region; +#endif + +#ifdef WITH_XFIXES + int xfixes_notify_event; +#endif +}; + +struct xf_server +{ + DWORD port; + HANDLE thread; + freerdp_listener* listener; +}; + +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include + +typedef struct xf_peer_context xfPeerContext; + +#define PeerEvent_Base 0 + +#define PeerEvent_Class (PeerEvent_Base + 1) + +#define PeerEvent_EncodeRegion 1 + +struct xf_peer_context +{ + rdpContext _p; + + int fps; + wStream* s; + xfInfo* info; + HANDLE mutex; + BOOL activated; + HANDLE monitorThread; + HANDLE updateReadyEvent; + HANDLE updateSentEvent; + RFX_CONTEXT* rfx_context; +}; + +void xf_peer_accepted(freerdp_listener* instance, freerdp_peer* client); + +void* x11_shadow_server_thread(void* param); + +void* xf_update_thread(void* param); + +int xf_cursor_init(xfInfo* xfi); + +XImage* xf_snapshot(xfPeerContext* xfp, int x, int y, int width, int height); +void xf_xdamage_subtract_region(xfPeerContext* xfp, int x, int y, int width, int height); +int xf_update_encode(freerdp_peer* client, int x, int y, int width, int height); + +void xf_input_synchronize_event(rdpInput* input, UINT32 flags); +void xf_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code); +void xf_input_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code); +void xf_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y); +void xf_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y); +void xf_input_register_callbacks(rdpInput* input); + +#endif /* FREERDP_SHADOW_SERVER_X11_H */ diff --git a/server/shadow/X11/x11_update.c b/server/shadow/X11/x11_update.c new file mode 100644 index 000000000..c6b499cdd --- /dev/null +++ b/server/shadow/X11/x11_update.c @@ -0,0 +1,214 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2011-2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include +#include + +#include +#include + +#include "x11_shadow.h" + +XImage* xf_snapshot(xfPeerContext* xfp, int x, int y, int width, int height) +{ + XImage* image; + xfInfo* xfi = xfp->info; + + if (xfi->use_xshm) + { + XCopyArea(xfi->display, xfi->root_window, xfi->fb_pixmap, xfi->xdamage_gc, x, y, width, height, x, y); + image = xfi->fb_image; + } + else + { + image = XGetImage(xfi->display, xfi->root_window, x, y, width, height, AllPlanes, ZPixmap); + } + + return image; +} + +void xf_xdamage_subtract_region(xfPeerContext* xfp, int x, int y, int width, int height) +{ + XRectangle region; + xfInfo* xfi = xfp->info; + + region.x = x; + region.y = y; + region.width = width; + region.height = height; + +#ifdef WITH_XFIXES + XFixesSetRegion(xfi->display, xfi->xdamage_region, ®ion, 1); + XDamageSubtract(xfi->display, xfi->xdamage, xfi->xdamage_region, None); +#endif +} + +int xf_update_encode(freerdp_peer* client, int x, int y, int width, int height) +{ + wStream* s; + BYTE* data; + xfInfo* xfi; + RFX_RECT rect; + XImage* image; + rdpUpdate* update; + xfPeerContext* xfp; + SURFACE_BITS_COMMAND* cmd; + + update = client->update; + xfp = (xfPeerContext*) client->context; + cmd = &update->surface_bits_command; + xfi = xfp->info; + + if (width * height <= 0) + { + cmd->bitmapDataLength = 0; + return -1; + } + + s = xfp->s; + Stream_Clear(s); + Stream_SetPosition(s, 0); + + if (xfi->use_xshm) + { + /** + * Passing an offset source rectangle to rfx_compose_message() + * leads to protocol errors, so offset the data pointer instead. + */ + + rect.x = 0; + rect.y = 0; + rect.width = width; + rect.height = height; + + image = xf_snapshot(xfp, x, y, width, height); + + data = (BYTE*) image->data; + data = &data[(y * image->bytes_per_line) + (x * image->bits_per_pixel / 8)]; + + rfx_compose_message(xfp->rfx_context, s, &rect, 1, data, + width, height, image->bytes_per_line); + + cmd->destLeft = x; + cmd->destTop = y; + cmd->destRight = x + width; + cmd->destBottom = y + height; + } + else + { + rect.x = 0; + rect.y = 0; + rect.width = width; + rect.height = height; + + image = xf_snapshot(xfp, x, y, width, height); + + data = (BYTE*) image->data; + + rfx_compose_message(xfp->rfx_context, s, &rect, 1, data, + width, height, image->bytes_per_line); + + cmd->destLeft = x; + cmd->destTop = y; + cmd->destRight = x + width; + cmd->destBottom = y + height; + + XDestroyImage(image); + } + + cmd->bpp = 32; + cmd->codecID = client->settings->RemoteFxCodecId; + cmd->width = width; + cmd->height = height; + cmd->bitmapDataLength = Stream_GetPosition(s); + cmd->bitmapData = Stream_Buffer(s); + + return 0; +} + +void* xf_update_thread(void* param) +{ + xfInfo* xfi; + HANDLE event; + XEvent xevent; + DWORD beg, end; + DWORD diff, rate; + xfPeerContext* xfp; + freerdp_peer* client; + int x, y, width, height; + XDamageNotifyEvent* notify; + + client = (freerdp_peer*) param; + xfp = (xfPeerContext*) client->context; + xfi = xfp->info; + + rate = 1000 / xfp->fps; + + event = CreateFileDescriptorEvent(NULL, FALSE, FALSE, xfi->xfds); + + while (WaitForSingleObject(event, INFINITE) == WAIT_OBJECT_0) + { + beg = GetTickCount(); + + while (XPending(xfi->display) > 0) + { + ZeroMemory(&xevent, sizeof(xevent)); + XNextEvent(xfi->display, &xevent); + + if (xevent.type == xfi->xdamage_notify_event) + { + notify = (XDamageNotifyEvent*) &xevent; + + x = notify->area.x; + y = notify->area.y; + width = notify->area.width; + height = notify->area.height; + + if (xf_update_encode(client, x, y, width, height) >= 0) + { + xf_xdamage_subtract_region(xfp, x, y, width, height); + + SetEvent(xfp->updateReadyEvent); + + WaitForSingleObject(xfp->updateSentEvent, INFINITE); + ResetEvent(xfp->updateSentEvent); + } + } +#ifdef WITH_XFIXES + else if (xevent.type == xfi->xfixes_notify_event) + { + XFixesCursorImage* ci = XFixesGetCursorImage(xfi->display); + XFree(ci); + } +#endif + } + + end = GetTickCount(); + diff = end - beg; + + if (diff < rate) + Sleep(rate - diff); + } + + return NULL; +} diff --git a/server/shadow/shadow.c b/server/shadow/shadow.c new file mode 100644 index 000000000..cc1e9af4d --- /dev/null +++ b/server/shadow/shadow.c @@ -0,0 +1,113 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * FreeRDP Shadow Server + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include "shadow.h" + +#include "X11/x11_shadow.h" + +void* shadow_server_thread(void* param) +{ + ExitThread(0); + + return NULL; +} + +int shadow_server_start(xfServer* server) +{ + server->thread = NULL; + + if (server->listener->Open(server->listener, NULL, 3389)) + { + server->thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) + shadow_server_thread, (void*) server, 0, NULL); + } + + return 0; +} + +int shadow_server_stop(xfServer* server) +{ + if (server->thread) + { + TerminateThread(server->thread, 0); + WaitForSingleObject(server->thread, INFINITE); + CloseHandle(server->thread); + + server->listener->Close(server->listener); + } + + return 0; +} + +HANDLE shadow_server_get_thread(xfServer* server) +{ + return server->thread; +} + +xfServer* shadow_server_new(int argc, char** argv) +{ + xfServer* server; + + server = (xfServer*) malloc(sizeof(xfServer)); + + if (server) + { + server->listener = freerdp_listener_new(); + server->listener->PeerAccepted = NULL; + } + + return server; +} + +void shadow_server_free(xfServer* server) +{ + if (server) + { + freerdp_listener_free(server->listener); + free(server); + } +} + +int main(int argc, char* argv[]) +{ + HANDLE thread; + xfServer* server; + DWORD dwExitCode; + + server = x11_shadow_server_new(argc, argv); + + if (!server) + return 0; + + x11_shadow_server_start(server); + + thread = x11_shadow_server_get_thread(server); + + WaitForSingleObject(thread, INFINITE); + + GetExitCodeThread(thread, &dwExitCode); + + x11_shadow_server_free(server); + + return 0; +} diff --git a/server/shadow/shadow.h b/server/shadow/shadow.h new file mode 100644 index 000000000..ef0f13638 --- /dev/null +++ b/server/shadow/shadow.h @@ -0,0 +1,41 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * FreeRDP Shadow Server + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FREERDP_SHADOW_SERVER_H +#define FREERDP_SHADOW_SERVER_H + +#include + +#include +#include + +#include + +#ifdef __cplusplus +extern "C" { +#endif + + + +#ifdef __cplusplus +} +#endif + +#endif /* FREERDP_SHADOW_SERVER_H */ + From 01c557d1c30d61324fbc8cdcbef7474de32f67db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 10 Jul 2014 17:20:41 -0400 Subject: [PATCH 003/170] shadow: start making generic core --- server/shadow/CMakeLists.txt | 5 +- .../shadow/X11/{x11_peer.c => x11_client.c} | 68 +++--- server/shadow/X11/x11_input.c | 24 +- server/shadow/X11/x11_shadow.c | 2 +- server/shadow/X11/x11_shadow.h | 36 +-- server/shadow/X11/x11_update.c | 16 +- server/shadow/shadow.c | 75 ++++-- server/shadow/shadow.h | 19 +- server/shadow/shadow_client.c | 213 ++++++++++++++++++ server/shadow/shadow_input.c | 54 +++++ server/shadow/shadow_update.c | 0 11 files changed, 424 insertions(+), 88 deletions(-) rename server/shadow/X11/{x11_peer.c => x11_client.c} (87%) create mode 100644 server/shadow/shadow_client.c create mode 100644 server/shadow/shadow_input.c create mode 100644 server/shadow/shadow_update.c diff --git a/server/shadow/CMakeLists.txt b/server/shadow/CMakeLists.txt index 2fd6220d6..3ef9e46fe 100644 --- a/server/shadow/CMakeLists.txt +++ b/server/shadow/CMakeLists.txt @@ -116,12 +116,15 @@ if(WITH_X11) endif() set(${MODULE_PREFIX}_SRCS + shadow_client.c + shadow_input.c + shadow_update.c shadow.c shadow.h) set(${MODULE_PREFIX}_X11_SRCS X11/x11_input.c - X11/x11_peer.c + X11/x11_client.c X11/x11_update.c X11/x11_shadow.c X11/x11_shadow.h) diff --git a/server/shadow/X11/x11_peer.c b/server/shadow/X11/x11_client.c similarity index 87% rename from server/shadow/X11/x11_peer.c rename to server/shadow/X11/x11_client.c index ef161a5ba..3ccecf0a1 100644 --- a/server/shadow/X11/x11_peer.c +++ b/server/shadow/X11/x11_client.c @@ -48,7 +48,7 @@ #ifdef WITH_XDAMAGE -void xf_xdamage_init(xfInfo* xfi) +void x11_shadow_xdamage_init(xfInfo* xfi) { int damage_event; int damage_error; @@ -102,7 +102,7 @@ void xf_xdamage_init(xfInfo* xfi) #endif -int xf_xshm_init(xfInfo* xfi) +int x11_shadow_xshm_init(xfInfo* xfi) { Bool pixmaps; int major, minor; @@ -169,7 +169,7 @@ int xf_xshm_init(xfInfo* xfi) return 0; } -void xf_info_free(xfInfo *info) +void x11_shadow_info_free(xfInfo *info) { if (info->display) XCloseDisplay(info->display); @@ -178,7 +178,7 @@ void xf_info_free(xfInfo *info) free(info); } -xfInfo* xf_info_init() +xfInfo* x11_shadow_info_init() { int i; xfInfo* xfi; @@ -271,7 +271,7 @@ xfInfo* xf_info_init() if (xfi->use_xshm) { - if (xf_xshm_init(xfi) < 0) + if (x11_shadow_xshm_init(xfi) < 0) xfi->use_xshm = FALSE; } @@ -279,10 +279,10 @@ xfInfo* xf_info_init() printf("Using X Shared Memory Extension (XShm)\n"); #ifdef WITH_XDAMAGE - xf_xdamage_init(xfi); + x11_shadow_xdamage_init(xfi); #endif - xf_cursor_init(xfi); + x11_shadow_cursor_init(xfi); xfi->bytesPerPixel = 4; xfi->activePeerCount = 0; @@ -292,9 +292,9 @@ xfInfo* xf_info_init() return xfi; } -void xf_peer_context_new(freerdp_peer* client, xfPeerContext* context) +void x11_shadow_peer_context_new(freerdp_peer* client, xfPeerContext* context) { - context->info = xf_info_init(); + context->info = x11_shadow_info_init(); context->rfx_context = rfx_context_new(TRUE); context->rfx_context->mode = RLGR3; context->rfx_context->width = context->info->width; @@ -309,11 +309,11 @@ void xf_peer_context_new(freerdp_peer* client, xfPeerContext* context) context->updateSentEvent = CreateEvent(NULL, TRUE, FALSE, NULL); } -void xf_peer_context_free(freerdp_peer* client, xfPeerContext* context) +void x11_shadow_peer_context_free(freerdp_peer* client, xfPeerContext* context) { if (context) { - xf_info_free(context->info); + x11_shadow_info_free(context->info); CloseHandle(context->updateReadyEvent); CloseHandle(context->updateSentEvent); @@ -323,14 +323,14 @@ void xf_peer_context_free(freerdp_peer* client, xfPeerContext* context) } } -void xf_peer_init(freerdp_peer* client) +void x11_shadow_peer_init(freerdp_peer* client) { xfInfo* xfi; xfPeerContext* xfp; client->ContextSize = sizeof(xfPeerContext); - client->ContextNew = (psPeerContextNew) xf_peer_context_new; - client->ContextFree = (psPeerContextFree) xf_peer_context_free; + client->ContextNew = (psPeerContextNew) x11_shadow_peer_context_new; + client->ContextFree = (psPeerContextFree) x11_shadow_peer_context_free; freerdp_peer_context_new(client); xfp = (xfPeerContext*) client->context; @@ -341,7 +341,7 @@ void xf_peer_init(freerdp_peer* client) xfp->mutex = CreateMutex(NULL, FALSE, NULL); } -void xf_peer_send_update(freerdp_peer* client) +void x11_shadow_peer_send_update(freerdp_peer* client) { rdpUpdate* update; SURFACE_BITS_COMMAND* cmd; @@ -353,7 +353,7 @@ void xf_peer_send_update(freerdp_peer* client) update->SurfaceBits(update->context, cmd); } -BOOL xf_peer_get_fds(freerdp_peer* client, void** rfds, int* rcount) +BOOL x11_shadow_peer_get_fds(freerdp_peer* client, void** rfds, int* rcount) { int fds; HANDLE event; @@ -367,7 +367,7 @@ BOOL xf_peer_get_fds(freerdp_peer* client, void** rfds, int* rcount) return TRUE; } -BOOL xf_peer_check_fds(freerdp_peer* client) +BOOL x11_shadow_peer_check_fds(freerdp_peer* client) { xfInfo* xfi; xfPeerContext* xfp; @@ -380,7 +380,7 @@ BOOL xf_peer_check_fds(freerdp_peer* client) if (!xfp->activated) return TRUE; - xf_peer_send_update(client); + x11_shadow_peer_send_update(client); ResetEvent(xfp->updateReadyEvent); SetEvent(xfp->updateSentEvent); @@ -389,12 +389,12 @@ BOOL xf_peer_check_fds(freerdp_peer* client) return TRUE; } -BOOL xf_peer_capabilities(freerdp_peer* client) +BOOL x11_shadow_peer_capabilities(freerdp_peer* client) { return TRUE; } -BOOL xf_peer_post_connect(freerdp_peer* client) +BOOL x11_shadow_peer_post_connect(freerdp_peer* client) { xfInfo* xfi; xfPeerContext* xfp; @@ -431,7 +431,7 @@ BOOL xf_peer_post_connect(freerdp_peer* client) return TRUE; } -BOOL xf_peer_activate(freerdp_peer* client) +BOOL x11_shadow_peer_activate(freerdp_peer* client) { xfPeerContext* xfp = (xfPeerContext*) client->context; @@ -441,7 +441,7 @@ BOOL xf_peer_activate(freerdp_peer* client) xfp->info->activePeerCount++; xfp->monitorThread = CreateThread(NULL, 0, - (LPTHREAD_START_ROUTINE) xf_update_thread, (void*) client, 0, NULL); + (LPTHREAD_START_ROUTINE) x11_shadow_update_thread, (void*) client, 0, NULL); return TRUE; } @@ -456,7 +456,7 @@ const char* makecert_argv[4] = int makecert_argc = (sizeof(makecert_argv) / sizeof(char*)); -int xf_generate_certificate(rdpSettings* settings) +int x11_shadow_generate_certificate(rdpSettings* settings) { char* server_file_path; MAKECERT_CONTEXT* context; @@ -492,7 +492,7 @@ int xf_generate_certificate(rdpSettings* settings) return 0; } -static void* xf_peer_main_loop(void* arg) +static void* x11_shadow_peer_main_loop(void* arg) { int i; int fds; @@ -510,11 +510,11 @@ static void* xf_peer_main_loop(void* arg) fprintf(stderr, "We've got a client %s\n", client->hostname); - xf_peer_init(client); + x11_shadow_peer_init(client); xfp = (xfPeerContext*) client->context; settings = client->settings; - xf_generate_certificate(settings); + x11_shadow_generate_certificate(settings); settings->RemoteFxCodec = TRUE; settings->ColorDepth = 32; @@ -523,11 +523,11 @@ static void* xf_peer_main_loop(void* arg) settings->TlsSecurity = TRUE; settings->RdpSecurity = FALSE; - client->Capabilities = xf_peer_capabilities; - client->PostConnect = xf_peer_post_connect; - client->Activate = xf_peer_activate; + client->Capabilities = x11_shadow_peer_capabilities; + client->PostConnect = x11_shadow_peer_post_connect; + client->Activate = x11_shadow_peer_activate; - xf_input_register_callbacks(client->input); + x11_shadow_input_register_callbacks(client->input); client->Initialize(client); @@ -541,7 +541,7 @@ static void* xf_peer_main_loop(void* arg) break; } - if (xf_peer_get_fds(client, rfds, &rcount) != TRUE) + if (x11_shadow_peer_get_fds(client, rfds, &rcount) != TRUE) { fprintf(stderr, "Failed to get xfreerdp file descriptor\n"); break; @@ -585,7 +585,7 @@ static void* xf_peer_main_loop(void* arg) break; } - if ((xf_peer_check_fds(client)) != TRUE) + if ((x11_shadow_peer_check_fds(client)) != TRUE) { fprintf(stderr, "Failed to check xfreerdp file descriptor\n"); break; @@ -604,9 +604,9 @@ static void* xf_peer_main_loop(void* arg) return NULL; } -void xf_peer_accepted(freerdp_listener* instance, freerdp_peer* client) +void x11_shadow_peer_accepted(freerdp_listener* instance, freerdp_peer* client) { HANDLE thread; - thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) xf_peer_main_loop, client, 0, NULL); + thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) x11_shadow_peer_main_loop, client, 0, NULL); } diff --git a/server/shadow/X11/x11_input.c b/server/shadow/X11/x11_input.c index 314886b21..2fab1124e 100644 --- a/server/shadow/X11/x11_input.c +++ b/server/shadow/X11/x11_input.c @@ -30,7 +30,7 @@ #include "x11_shadow.h" -int xf_cursor_init(xfInfo* xfi) +int x11_shadow_cursor_init(xfInfo* xfi) { #ifdef WITH_XFIXES int event; @@ -50,12 +50,12 @@ int xf_cursor_init(xfInfo* xfi) return 0; } -void xf_input_synchronize_event(rdpInput* input, UINT32 flags) +void x11_shadow_input_synchronize_event(rdpInput* input, UINT32 flags) { fprintf(stderr, "Client sent a synchronize event (flags:0x%X)\n", flags); } -void xf_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) +void x11_shadow_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) { #ifdef WITH_XTEST DWORD vkcode; @@ -87,12 +87,12 @@ void xf_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) #endif } -void xf_input_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) +void x11_shadow_input_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) { fprintf(stderr, "Client sent a unicode keyboard event (flags:0x%X code:0x%X)\n", flags, code); } -void xf_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) +void x11_shadow_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) { #ifdef WITH_XTEST xfPeerContext* xfp = (xfPeerContext*) input->context; @@ -137,7 +137,7 @@ void xf_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) #endif } -void xf_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) +void x11_shadow_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) { #ifdef WITH_XTEST xfPeerContext* xfp = (xfPeerContext*) input->context; @@ -163,11 +163,11 @@ void xf_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT #endif } -void xf_input_register_callbacks(rdpInput* input) +void x11_shadow_input_register_callbacks(rdpInput* input) { - input->SynchronizeEvent = xf_input_synchronize_event; - input->KeyboardEvent = xf_input_keyboard_event; - input->UnicodeKeyboardEvent = xf_input_unicode_keyboard_event; - input->MouseEvent = xf_input_mouse_event; - input->ExtendedMouseEvent = xf_input_extended_mouse_event; + input->SynchronizeEvent = x11_shadow_input_synchronize_event; + input->KeyboardEvent = x11_shadow_input_keyboard_event; + input->UnicodeKeyboardEvent = x11_shadow_input_unicode_keyboard_event; + input->MouseEvent = x11_shadow_input_mouse_event; + input->ExtendedMouseEvent = x11_shadow_input_extended_mouse_event; } diff --git a/server/shadow/X11/x11_shadow.c b/server/shadow/X11/x11_shadow.c index 749b0759f..d0987cc01 100644 --- a/server/shadow/X11/x11_shadow.c +++ b/server/shadow/X11/x11_shadow.c @@ -135,7 +135,7 @@ xfServer* x11_shadow_server_new(int argc, char** argv) if (server) { server->listener = freerdp_listener_new(); - server->listener->PeerAccepted = xf_peer_accepted; + server->listener->PeerAccepted = x11_shadow_peer_accepted; } signal(SIGPIPE, SIG_IGN); diff --git a/server/shadow/X11/x11_shadow.h b/server/shadow/X11/x11_shadow.h index 2f45ec7a4..a3db03488 100644 --- a/server/shadow/X11/x11_shadow.h +++ b/server/shadow/X11/x11_shadow.h @@ -24,8 +24,8 @@ #include #include -typedef struct xf_info xfInfo; -typedef struct xf_server xfServer; +typedef struct x11_shadow_info xfInfo; +typedef struct x11_shadow_server xfServer; #ifdef __cplusplus extern "C" { @@ -73,7 +73,7 @@ FREERDP_API void x11_shadow_server_free(xfServer* server); #include #endif -struct xf_info +struct x11_shadow_info { int bpp; int xfds; @@ -108,7 +108,7 @@ struct xf_info #endif }; -struct xf_server +struct x11_shadow_server { DWORD port; HANDLE thread; @@ -128,7 +128,7 @@ struct xf_server #include #include -typedef struct xf_peer_context xfPeerContext; +typedef struct x11_shadow_peer_context xfPeerContext; #define PeerEvent_Base 0 @@ -136,7 +136,7 @@ typedef struct xf_peer_context xfPeerContext; #define PeerEvent_EncodeRegion 1 -struct xf_peer_context +struct x11_shadow_peer_context { rdpContext _p; @@ -151,23 +151,23 @@ struct xf_peer_context RFX_CONTEXT* rfx_context; }; -void xf_peer_accepted(freerdp_listener* instance, freerdp_peer* client); +void x11_shadow_peer_accepted(freerdp_listener* instance, freerdp_peer* client); void* x11_shadow_server_thread(void* param); -void* xf_update_thread(void* param); +void* x11_shadow_update_thread(void* param); -int xf_cursor_init(xfInfo* xfi); +int x11_shadow_cursor_init(xfInfo* xfi); -XImage* xf_snapshot(xfPeerContext* xfp, int x, int y, int width, int height); -void xf_xdamage_subtract_region(xfPeerContext* xfp, int x, int y, int width, int height); -int xf_update_encode(freerdp_peer* client, int x, int y, int width, int height); +XImage* x11_shadow_snapshot(xfPeerContext* xfp, int x, int y, int width, int height); +void x11_shadow_xdamage_subtract_region(xfPeerContext* xfp, int x, int y, int width, int height); +int x11_shadow_update_encode(freerdp_peer* client, int x, int y, int width, int height); -void xf_input_synchronize_event(rdpInput* input, UINT32 flags); -void xf_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code); -void xf_input_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code); -void xf_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y); -void xf_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y); -void xf_input_register_callbacks(rdpInput* input); +void x11_shadow_input_synchronize_event(rdpInput* input, UINT32 flags); +void x11_shadow_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code); +void x11_shadow_input_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code); +void x11_shadow_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y); +void x11_shadow_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y); +void x11_shadow_input_register_callbacks(rdpInput* input); #endif /* FREERDP_SHADOW_SERVER_X11_H */ diff --git a/server/shadow/X11/x11_update.c b/server/shadow/X11/x11_update.c index c6b499cdd..95da598cb 100644 --- a/server/shadow/X11/x11_update.c +++ b/server/shadow/X11/x11_update.c @@ -29,7 +29,7 @@ #include "x11_shadow.h" -XImage* xf_snapshot(xfPeerContext* xfp, int x, int y, int width, int height) +XImage* x11_shadow_snapshot(xfPeerContext* xfp, int x, int y, int width, int height) { XImage* image; xfInfo* xfi = xfp->info; @@ -47,7 +47,7 @@ XImage* xf_snapshot(xfPeerContext* xfp, int x, int y, int width, int height) return image; } -void xf_xdamage_subtract_region(xfPeerContext* xfp, int x, int y, int width, int height) +void x11_shadow_xdamage_subtract_region(xfPeerContext* xfp, int x, int y, int width, int height) { XRectangle region; xfInfo* xfi = xfp->info; @@ -63,7 +63,7 @@ void xf_xdamage_subtract_region(xfPeerContext* xfp, int x, int y, int width, int #endif } -int xf_update_encode(freerdp_peer* client, int x, int y, int width, int height) +int x11_shadow_update_encode(freerdp_peer* client, int x, int y, int width, int height) { wStream* s; BYTE* data; @@ -101,7 +101,7 @@ int xf_update_encode(freerdp_peer* client, int x, int y, int width, int height) rect.width = width; rect.height = height; - image = xf_snapshot(xfp, x, y, width, height); + image = x11_shadow_snapshot(xfp, x, y, width, height); data = (BYTE*) image->data; data = &data[(y * image->bytes_per_line) + (x * image->bits_per_pixel / 8)]; @@ -121,7 +121,7 @@ int xf_update_encode(freerdp_peer* client, int x, int y, int width, int height) rect.width = width; rect.height = height; - image = xf_snapshot(xfp, x, y, width, height); + image = x11_shadow_snapshot(xfp, x, y, width, height); data = (BYTE*) image->data; @@ -146,7 +146,7 @@ int xf_update_encode(freerdp_peer* client, int x, int y, int width, int height) return 0; } -void* xf_update_thread(void* param) +void* x11_shadow_update_thread(void* param) { xfInfo* xfi; HANDLE event; @@ -184,9 +184,9 @@ void* xf_update_thread(void* param) width = notify->area.width; height = notify->area.height; - if (xf_update_encode(client, x, y, width, height) >= 0) + if (x11_shadow_update_encode(client, x, y, width, height) >= 0) { - xf_xdamage_subtract_region(xfp, x, y, width, height); + x11_shadow_xdamage_subtract_region(xfp, x, y, width, height); SetEvent(xfp->updateReadyEvent); diff --git a/server/shadow/shadow.c b/server/shadow/shadow.c index cc1e9af4d..66d3be4cb 100644 --- a/server/shadow/shadow.c +++ b/server/shadow/shadow.c @@ -1,6 +1,5 @@ /** * FreeRDP: A Remote Desktop Protocol Implementation - * FreeRDP Shadow Server * * Copyright 2014 Marc-Andre Moreau * @@ -27,16 +26,44 @@ void* shadow_server_thread(void* param) { + DWORD status; + DWORD nCount; + HANDLE events[32]; + rdpShadowServer* server; + freerdp_listener* listener; + + server = (rdpShadowServer*) param; + listener = (freerdp_listener*) server->listener; + + while (1) + { + nCount = 0; + + if (listener->GetEventHandles(listener, events, &nCount) < 0) + { + fprintf(stderr, "Failed to get FreeRDP file descriptor\n"); + break; + } + + status = WaitForMultipleObjects(nCount, events, FALSE, INFINITE); + + if (!listener->CheckFileDescriptor(listener)) + { + fprintf(stderr, "Failed to check FreeRDP file descriptor\n"); + break; + } + } + + listener->Close(listener); + ExitThread(0); return NULL; } -int shadow_server_start(xfServer* server) +int shadow_server_start(rdpShadowServer* server) { - server->thread = NULL; - - if (server->listener->Open(server->listener, NULL, 3389)) + if (server->listener->Open(server->listener, NULL, server->port)) { server->thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) shadow_server_thread, (void*) server, 0, NULL); @@ -45,7 +72,7 @@ int shadow_server_start(xfServer* server) return 0; } -int shadow_server_stop(xfServer* server) +int shadow_server_stop(rdpShadowServer* server) { if (server->thread) { @@ -59,27 +86,29 @@ int shadow_server_stop(xfServer* server) return 0; } -HANDLE shadow_server_get_thread(xfServer* server) +HANDLE shadow_server_get_thread(rdpShadowServer* server) { return server->thread; } -xfServer* shadow_server_new(int argc, char** argv) +rdpShadowServer* shadow_server_new(int argc, char** argv) { - xfServer* server; + rdpShadowServer* server; - server = (xfServer*) malloc(sizeof(xfServer)); + server = (rdpShadowServer*) malloc(sizeof(rdpShadowServer)); if (server) { + server->port = 3389; + server->listener = freerdp_listener_new(); - server->listener->PeerAccepted = NULL; + server->listener->PeerAccepted = shadow_client_accepted; } return server; } -void shadow_server_free(xfServer* server) +void shadow_server_free(rdpShadowServer* server) { if (server) { @@ -91,9 +120,11 @@ void shadow_server_free(xfServer* server) int main(int argc, char* argv[]) { HANDLE thread; - xfServer* server; DWORD dwExitCode; +#if 0 + xfServer* server; + server = x11_shadow_server_new(argc, argv); if (!server) @@ -108,6 +139,24 @@ int main(int argc, char* argv[]) GetExitCodeThread(thread, &dwExitCode); x11_shadow_server_free(server); +#else + rdpShadowServer* server; + + server = shadow_server_new(argc, argv); + + if (!server) + return 0; + + shadow_server_start(server); + + thread = shadow_server_get_thread(server); + + WaitForSingleObject(thread, INFINITE); + + GetExitCodeThread(thread, &dwExitCode); + + shadow_server_free(server); +#endif return 0; } diff --git a/server/shadow/shadow.h b/server/shadow/shadow.h index ef0f13638..56c0d57f4 100644 --- a/server/shadow/shadow.h +++ b/server/shadow/shadow.h @@ -24,14 +24,31 @@ #include #include +#include #include +typedef struct rdp_shadow_client rdpShadowClient; +typedef struct rdp_shadow_server rdpShadowServer; + +struct rdp_shadow_client +{ + rdpContext context; +}; + +struct rdp_shadow_server +{ + DWORD port; + HANDLE thread; + freerdp_listener* listener; +}; + #ifdef __cplusplus extern "C" { #endif - +void shadow_input_register_callbacks(rdpInput* input); +void shadow_client_accepted(freerdp_listener* instance, freerdp_peer* client); #ifdef __cplusplus } diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c new file mode 100644 index 000000000..df1415d70 --- /dev/null +++ b/server/shadow/shadow_client.c @@ -0,0 +1,213 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include +#include +#include +#include + +#include + +#include "shadow.h" + +void shadow_client_context_new(freerdp_peer* client, rdpShadowClient* context) +{ + +} + +void shadow_client_context_free(freerdp_peer* client, rdpShadowClient* context) +{ + +} + +void shadow_client_init(freerdp_peer* client) +{ + client->ContextSize = sizeof(rdpShadowClient); + client->ContextNew = (psPeerContextNew) shadow_client_context_new; + client->ContextFree = (psPeerContextFree) shadow_client_context_free; + freerdp_peer_context_new(client); +} + +BOOL shadow_client_get_fds(freerdp_peer* client, void** rfds, int* rcount) +{ + return TRUE; +} + +BOOL shadow_client_check_fds(freerdp_peer* client) +{ + return TRUE; +} + +BOOL shadow_client_capabilities(freerdp_peer* client) +{ + return TRUE; +} + +BOOL shadow_client_post_connect(freerdp_peer* client) +{ + fprintf(stderr, "Client %s is activated", client->hostname); + + if (client->settings->AutoLogonEnabled) + { + fprintf(stderr, " and wants to login automatically as %s\\%s", + client->settings->Domain ? client->settings->Domain : "", + client->settings->Username); + } + fprintf(stderr, "\n"); + + fprintf(stderr, "Client requested desktop: %dx%dx%d\n", + client->settings->DesktopWidth, client->settings->DesktopHeight, client->settings->ColorDepth); + + if (!client->settings->RemoteFxCodec) + { + fprintf(stderr, "Client does not support RemoteFX\n"); + return FALSE; + } + + //client->settings->DesktopWidth = 1024; + //client->settings->DesktopHeight = 768; + + client->update->DesktopResize(client->update->context); + + return TRUE; +} + +BOOL shadow_client_activate(freerdp_peer* client) +{ + return TRUE; +} + +static const char* makecert_argv[4] = +{ + "makecert", + "-rdp", + "-live", + "-silent" +}; + +static int makecert_argc = (sizeof(makecert_argv) / sizeof(char*)); + +int shadow_generate_certificate(rdpSettings* settings) +{ + char* serverFilePath; + MAKECERT_CONTEXT* context; + + serverFilePath = GetCombinedPath(settings->ConfigPath, "server"); + + if (!PathFileExistsA(serverFilePath)) + CreateDirectoryA(serverFilePath, 0); + + settings->CertificateFile = GetCombinedPath(serverFilePath, "server.crt"); + settings->PrivateKeyFile = GetCombinedPath(serverFilePath, "server.key"); + + if ((!PathFileExistsA(settings->CertificateFile)) || + (!PathFileExistsA(settings->PrivateKeyFile))) + { + context = makecert_context_new(); + + makecert_context_process(context, makecert_argc, (char**) makecert_argv); + + makecert_context_set_output_file_name(context, "server"); + + if (!PathFileExistsA(settings->CertificateFile)) + makecert_context_output_certificate_file(context, serverFilePath); + + if (!PathFileExistsA(settings->PrivateKeyFile)) + makecert_context_output_private_key_file(context, serverFilePath); + + makecert_context_free(context); + } + + free(serverFilePath); + + return 0; +} + +void* shadow_client_thread(void* param) +{ + DWORD status; + DWORD nCount; + HANDLE events[32]; + HANDLE ClientEvent; + rdpSettings* settings; + rdpShadowClient* context; + freerdp_peer* client = (freerdp_peer*) param; + + shadow_client_init(client); + + settings = client->settings; + context = (rdpShadowClient*) client->context; + + shadow_generate_certificate(settings); + + settings->RemoteFxCodec = TRUE; + settings->ColorDepth = 32; + + settings->NlaSecurity = FALSE; + settings->TlsSecurity = TRUE; + settings->RdpSecurity = FALSE; + + client->Capabilities = shadow_client_capabilities; + client->PostConnect = shadow_client_post_connect; + client->Activate = shadow_client_activate; + + shadow_input_register_callbacks(client->input); + + client->Initialize(client); + + ClientEvent = client->GetEventHandle(client); + + while (1) + { + nCount = 0; + events[nCount++] = ClientEvent; + + status = WaitForMultipleObjects(nCount, events, FALSE, INFINITE); + + if (WaitForSingleObject(ClientEvent, 0) == WAIT_OBJECT_0) + { + if (!client->CheckFileDescriptor(client)) + { + fprintf(stderr, "Failed to check FreeRDP file descriptor\n"); + break; + } + } + } + + client->Disconnect(client); + + freerdp_peer_context_free(client); + freerdp_peer_free(client); + + ExitThread(0); + + return NULL; +} + +void shadow_client_accepted(freerdp_listener* instance, freerdp_peer* client) +{ + HANDLE thread; + + thread = CreateThread(NULL, 0, + (LPTHREAD_START_ROUTINE) shadow_client_thread, client, 0, NULL); +} diff --git a/server/shadow/shadow_input.c b/server/shadow/shadow_input.c new file mode 100644 index 000000000..7f7ee00ff --- /dev/null +++ b/server/shadow/shadow_input.c @@ -0,0 +1,54 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include "shadow.h" + +void shadow_input_synchronize_event(rdpInput* input, UINT32 flags) +{ + +} + +void shadow_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) +{ + +} + +void shadow_input_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) +{ + +} + +void shadow_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) +{ + +} + +void shadow_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) +{ + +} + +void shadow_input_register_callbacks(rdpInput* input) +{ + input->SynchronizeEvent = shadow_input_synchronize_event; + input->KeyboardEvent = shadow_input_keyboard_event; + input->UnicodeKeyboardEvent = shadow_input_unicode_keyboard_event; + input->MouseEvent = shadow_input_mouse_event; + input->ExtendedMouseEvent = shadow_input_extended_mouse_event; +} + diff --git a/server/shadow/shadow_update.c b/server/shadow/shadow_update.c new file mode 100644 index 000000000..e69de29bb From 63f94ef15070cf49d6c9489c18a710f104dc5210 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 11 Jul 2014 18:00:33 -0400 Subject: [PATCH 004/170] shadow: further consolidate old X11 server code --- server/shadow/X11/x11_client.c | 181 ++++++++++++++++----------------- server/shadow/X11/x11_input.c | 46 ++++----- server/shadow/X11/x11_shadow.c | 18 ++-- server/shadow/X11/x11_shadow.h | 48 +++------ server/shadow/X11/x11_update.c | 41 ++++---- server/shadow/shadow.c | 4 +- server/shadow/shadow_input.c | 4 + server/shadow/shadow_update.c | 24 +++++ 8 files changed, 184 insertions(+), 182 deletions(-) diff --git a/server/shadow/X11/x11_client.c b/server/shadow/X11/x11_client.c index 3ccecf0a1..2e5781d31 100644 --- a/server/shadow/X11/x11_client.c +++ b/server/shadow/X11/x11_client.c @@ -48,22 +48,22 @@ #ifdef WITH_XDAMAGE -void x11_shadow_xdamage_init(xfInfo* xfi) +void x11_shadow_xdamage_init(x11ShadowServer* server) { int damage_event; int damage_error; int major, minor; XGCValues values; - if (XDamageQueryExtension(xfi->display, &damage_event, &damage_error) == 0) + if (XDamageQueryExtension(server->display, &damage_event, &damage_error) == 0) { fprintf(stderr, "XDamageQueryExtension failed\n"); return; } - XDamageQueryVersion(xfi->display, &major, &minor); + XDamageQueryVersion(server->display, &major, &minor); - if (XDamageQueryVersion(xfi->display, &major, &minor) == 0) + if (XDamageQueryVersion(server->display, &major, &minor) == 0) { fprintf(stderr, "XDamageQueryVersion failed\n"); return; @@ -74,42 +74,42 @@ void x11_shadow_xdamage_init(xfInfo* xfi) return; } - xfi->xdamage_notify_event = damage_event + XDamageNotify; - xfi->xdamage = XDamageCreate(xfi->display, xfi->root_window, XDamageReportDeltaRectangles); + server->xdamage_notify_event = damage_event + XDamageNotify; + server->xdamage = XDamageCreate(server->display, server->root_window, XDamageReportDeltaRectangles); - if (xfi->xdamage == None) + if (server->xdamage == None) { fprintf(stderr, "XDamageCreate failed\n"); return; } #ifdef WITH_XFIXES - xfi->xdamage_region = XFixesCreateRegion(xfi->display, NULL, 0); + server->xdamage_region = XFixesCreateRegion(server->display, NULL, 0); - if (xfi->xdamage_region == None) + if (server->xdamage_region == None) { fprintf(stderr, "XFixesCreateRegion failed\n"); - XDamageDestroy(xfi->display, xfi->xdamage); - xfi->xdamage = None; + XDamageDestroy(server->display, server->xdamage); + server->xdamage = None; return; } #endif values.subwindow_mode = IncludeInferiors; - xfi->xdamage_gc = XCreateGC(xfi->display, xfi->root_window, GCSubwindowMode, &values); - XSetFunction(xfi->display, xfi->xdamage_gc, GXcopy); + server->xdamage_gc = XCreateGC(server->display, server->root_window, GCSubwindowMode, &values); + XSetFunction(server->display, server->xdamage_gc, GXcopy); } #endif -int x11_shadow_xshm_init(xfInfo* xfi) +int x11_shadow_xshm_init(x11ShadowServer* server) { Bool pixmaps; int major, minor; - if (XShmQueryExtension(xfi->display) != False) + if (XShmQueryExtension(server->display) != False) { - XShmQueryVersion(xfi->display, &major, &minor, &pixmaps); + XShmQueryVersion(server->display, &major, &minor, &pixmaps); if (pixmaps != True) { @@ -123,65 +123,55 @@ int x11_shadow_xshm_init(xfInfo* xfi) return -1; } - xfi->fb_shm_info.shmid = -1; - xfi->fb_shm_info.shmaddr = (char*) -1; + server->fb_shm_info.shmid = -1; + server->fb_shm_info.shmaddr = (char*) -1; - xfi->fb_image = XShmCreateImage(xfi->display, xfi->visual, xfi->depth, - ZPixmap, NULL, &(xfi->fb_shm_info), xfi->width, xfi->height); + server->fb_image = XShmCreateImage(server->display, server->visual, server->depth, + ZPixmap, NULL, &(server->fb_shm_info), server->width, server->height); - if (!xfi->fb_image) + if (!server->fb_image) { fprintf(stderr, "XShmCreateImage failed\n"); return -1; } - xfi->fb_shm_info.shmid = shmget(IPC_PRIVATE, - xfi->fb_image->bytes_per_line * xfi->fb_image->height, IPC_CREAT | 0600); + server->fb_shm_info.shmid = shmget(IPC_PRIVATE, + server->fb_image->bytes_per_line * server->fb_image->height, IPC_CREAT | 0600); - if (xfi->fb_shm_info.shmid == -1) + if (server->fb_shm_info.shmid == -1) { fprintf(stderr, "shmget failed\n"); return -1; } - xfi->fb_shm_info.readOnly = False; - xfi->fb_shm_info.shmaddr = shmat(xfi->fb_shm_info.shmid, 0, 0); - xfi->fb_image->data = xfi->fb_shm_info.shmaddr; + server->fb_shm_info.readOnly = False; + server->fb_shm_info.shmaddr = shmat(server->fb_shm_info.shmid, 0, 0); + server->fb_image->data = server->fb_shm_info.shmaddr; - if (xfi->fb_shm_info.shmaddr == ((char*) -1)) + if (server->fb_shm_info.shmaddr == ((char*) -1)) { fprintf(stderr, "shmat failed\n"); return -1; } - XShmAttach(xfi->display, &(xfi->fb_shm_info)); - XSync(xfi->display, False); + XShmAttach(server->display, &(server->fb_shm_info)); + XSync(server->display, False); - shmctl(xfi->fb_shm_info.shmid, IPC_RMID, 0); + shmctl(server->fb_shm_info.shmid, IPC_RMID, 0); fprintf(stderr, "display: %p root_window: %p width: %d height: %d depth: %d\n", - xfi->display, (void*) xfi->root_window, xfi->fb_image->width, xfi->fb_image->height, xfi->fb_image->depth); + server->display, (void*) server->root_window, server->fb_image->width, server->fb_image->height, server->fb_image->depth); - xfi->fb_pixmap = XShmCreatePixmap(xfi->display, - xfi->root_window, xfi->fb_image->data, &(xfi->fb_shm_info), - xfi->fb_image->width, xfi->fb_image->height, xfi->fb_image->depth); + server->fb_pixmap = XShmCreatePixmap(server->display, + server->root_window, server->fb_image->data, &(server->fb_shm_info), + server->fb_image->width, server->fb_image->height, server->fb_image->depth); return 0; } -void x11_shadow_info_free(xfInfo *info) -{ - if (info->display) - XCloseDisplay(info->display); - - freerdp_clrconv_free(info->clrconv); - free(info); -} - -xfInfo* x11_shadow_info_init() +void x11_shadow_peer_context_new(freerdp_peer* client, xfPeerContext* context) { int i; - xfInfo* xfi; int pf_count; int vi_count; XVisualInfo* vi; @@ -189,38 +179,40 @@ xfInfo* x11_shadow_info_init() XVisualInfo template; XPixmapFormatValues* pf; XPixmapFormatValues* pfs; + x11ShadowServer* server; - xfi = (xfInfo*) calloc(1, sizeof(xfInfo)); + server = (x11ShadowServer*) client->context; + context->server = server; /** * Recent X11 servers drop support for shared pixmaps * To see if your X11 server supports shared pixmaps, use: * xdpyinfo -ext MIT-SHM | grep "shared pixmaps" */ - xfi->use_xshm = TRUE; + server->use_xshm = TRUE; setenv("DISPLAY", ":0", 1); /* Set DISPLAY variable if not already set */ if (!XInitThreads()) fprintf(stderr, "warning: XInitThreads() failure\n"); - xfi->display = XOpenDisplay(NULL); + server->display = XOpenDisplay(NULL); - if (!xfi->display) + if (!server->display) { fprintf(stderr, "failed to open display: %s\n", XDisplayName(NULL)); exit(1); } - xfi->xfds = ConnectionNumber(xfi->display); - xfi->number = DefaultScreen(xfi->display); - xfi->screen = ScreenOfDisplay(xfi->display, xfi->number); - xfi->depth = DefaultDepthOfScreen(xfi->screen); - xfi->width = WidthOfScreen(xfi->screen); - xfi->height = HeightOfScreen(xfi->screen); - xfi->root_window = DefaultRootWindow(xfi->display); + server->xfds = ConnectionNumber(server->display); + server->number = DefaultScreen(server->display); + server->screen = ScreenOfDisplay(server->display, server->number); + server->depth = DefaultDepthOfScreen(server->screen); + server->width = WidthOfScreen(server->screen); + server->height = HeightOfScreen(server->screen); + server->root_window = DefaultRootWindow(server->display); - pfs = XListPixmapFormats(xfi->display, &pf_count); + pfs = XListPixmapFormats(server->display, &pf_count); if (!pfs) { @@ -232,10 +224,10 @@ xfInfo* x11_shadow_info_init() { pf = pfs + i; - if (pf->depth == xfi->depth) + if (pf->depth == server->depth) { - xfi->bpp = pf->bits_per_pixel; - xfi->scanline_pad = pf->scanline_pad; + server->bpp = pf->bits_per_pixel; + server->scanline_pad = pf->scanline_pad; break; } } @@ -243,9 +235,9 @@ xfInfo* x11_shadow_info_init() ZeroMemory(&template, sizeof(template)); template.class = TrueColor; - template.screen = xfi->number; + template.screen = server->number; - vis = XGetVisualInfo(xfi->display, VisualClassMask | VisualScreenMask, &template, &vi_count); + vis = XGetVisualInfo(server->display, VisualClassMask | VisualScreenMask, &template, &vi_count); if (!vis) { @@ -257,48 +249,42 @@ xfInfo* x11_shadow_info_init() { vi = vis + i; - if (vi->depth == xfi->depth) + if (vi->depth == server->depth) { - xfi->visual = vi->visual; + server->visual = vi->visual; break; } } XFree(vis); - xfi->clrconv = freerdp_clrconv_new(CLRCONV_ALPHA | CLRCONV_INVERT); + server->clrconv = freerdp_clrconv_new(CLRCONV_ALPHA | CLRCONV_INVERT); - XSelectInput(xfi->display, xfi->root_window, SubstructureNotifyMask); + XSelectInput(server->display, server->root_window, SubstructureNotifyMask); - if (xfi->use_xshm) + if (server->use_xshm) { - if (x11_shadow_xshm_init(xfi) < 0) - xfi->use_xshm = FALSE; + if (x11_shadow_xshm_init(server) < 0) + server->use_xshm = FALSE; } - if (xfi->use_xshm) + if (server->use_xshm) printf("Using X Shared Memory Extension (XShm)\n"); #ifdef WITH_XDAMAGE - x11_shadow_xdamage_init(xfi); + x11_shadow_xdamage_init(server); #endif - x11_shadow_cursor_init(xfi); + x11_shadow_cursor_init(server); - xfi->bytesPerPixel = 4; - xfi->activePeerCount = 0; + server->bytesPerPixel = 4; + server->activePeerCount = 0; freerdp_keyboard_init(0); - return xfi; -} - -void x11_shadow_peer_context_new(freerdp_peer* client, xfPeerContext* context) -{ - context->info = x11_shadow_info_init(); context->rfx_context = rfx_context_new(TRUE); context->rfx_context->mode = RLGR3; - context->rfx_context->width = context->info->width; - context->rfx_context->height = context->info->height; + context->rfx_context->width = server->width; + context->rfx_context->height = server->height; rfx_context_set_pixel_format(context->rfx_context, RDP_PIXEL_FORMAT_B8G8R8A8); @@ -311,9 +297,16 @@ void x11_shadow_peer_context_new(freerdp_peer* client, xfPeerContext* context) void x11_shadow_peer_context_free(freerdp_peer* client, xfPeerContext* context) { + x11ShadowServer* server; + if (context) { - x11_shadow_info_free(context->info); + server = context->server; + + if (server->display) + XCloseDisplay(server->display); + + freerdp_clrconv_free(server->clrconv); CloseHandle(context->updateReadyEvent); CloseHandle(context->updateSentEvent); @@ -325,7 +318,6 @@ void x11_shadow_peer_context_free(freerdp_peer* client, xfPeerContext* context) void x11_shadow_peer_init(freerdp_peer* client) { - xfInfo* xfi; xfPeerContext* xfp; client->ContextSize = sizeof(xfPeerContext); @@ -336,8 +328,6 @@ void x11_shadow_peer_init(freerdp_peer* client) xfp = (xfPeerContext*) client->context; xfp->fps = 16; - xfi = xfp->info; - xfp->mutex = CreateMutex(NULL, FALSE, NULL); } @@ -369,11 +359,9 @@ BOOL x11_shadow_peer_get_fds(freerdp_peer* client, void** rfds, int* rcount) BOOL x11_shadow_peer_check_fds(freerdp_peer* client) { - xfInfo* xfi; xfPeerContext* xfp; xfp = (xfPeerContext*) client->context; - xfi = xfp->info; if (WaitForSingleObject(xfp->updateReadyEvent, 0) == WAIT_OBJECT_0) { @@ -396,11 +384,11 @@ BOOL x11_shadow_peer_capabilities(freerdp_peer* client) BOOL x11_shadow_peer_post_connect(freerdp_peer* client) { - xfInfo* xfi; xfPeerContext* xfp; + x11ShadowServer* server; xfp = (xfPeerContext*) client->context; - xfi = (xfInfo*) xfp->info; + server = xfp->server; fprintf(stderr, "Client %s is activated", client->hostname); if (client->settings->AutoLogonEnabled) @@ -422,8 +410,8 @@ BOOL x11_shadow_peer_post_connect(freerdp_peer* client) /* A real server should tag the peer as activated here and start sending updates in main loop. */ - client->settings->DesktopWidth = xfi->width; - client->settings->DesktopHeight = xfi->height; + client->settings->DesktopWidth = server->width; + client->settings->DesktopHeight = server->height; client->update->DesktopResize(client->update->context); @@ -434,11 +422,12 @@ BOOL x11_shadow_peer_post_connect(freerdp_peer* client) BOOL x11_shadow_peer_activate(freerdp_peer* client) { xfPeerContext* xfp = (xfPeerContext*) client->context; + x11ShadowServer* server = xfp->server; rfx_context_reset(xfp->rfx_context); xfp->activated = TRUE; - xfp->info->activePeerCount++; + server->activePeerCount++; xfp->monitorThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) x11_shadow_update_thread, (void*) client, 0, NULL); @@ -511,6 +500,7 @@ static void* x11_shadow_peer_main_loop(void* arg) fprintf(stderr, "We've got a client %s\n", client->hostname); x11_shadow_peer_init(client); + xfp = (xfPeerContext*) client->context; settings = client->settings; @@ -608,5 +598,6 @@ void x11_shadow_peer_accepted(freerdp_listener* instance, freerdp_peer* client) { HANDLE thread; - thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) x11_shadow_peer_main_loop, client, 0, NULL); + thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) + x11_shadow_peer_main_loop, client, 0, NULL); } diff --git a/server/shadow/X11/x11_input.c b/server/shadow/X11/x11_input.c index 2fab1124e..a7ac4fb28 100644 --- a/server/shadow/X11/x11_input.c +++ b/server/shadow/X11/x11_input.c @@ -30,21 +30,21 @@ #include "x11_shadow.h" -int x11_shadow_cursor_init(xfInfo* xfi) +int x11_shadow_cursor_init(x11ShadowServer* server) { #ifdef WITH_XFIXES int event; int error; - if (!XFixesQueryExtension(xfi->display, &event, &error)) + if (!XFixesQueryExtension(server->display, &event, &error)) { fprintf(stderr, "XFixesQueryExtension failed\n"); return -1; } - xfi->xfixes_notify_event = event + XFixesCursorNotify; + server->xfixes_notify_event = event + XFixesCursorNotify; - XFixesSelectCursorInput(xfi->display, DefaultRootWindow(xfi->display), XFixesDisplayCursorNotifyMask); + XFixesSelectCursorInput(server->display, DefaultRootWindow(server->display), XFixesDisplayCursorNotifyMask); #endif return 0; @@ -62,7 +62,7 @@ void x11_shadow_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) DWORD keycode; BOOL extended = FALSE; xfPeerContext* xfp = (xfPeerContext*) input->context; - xfInfo* xfi = xfp->info; + x11ShadowServer* server = xfp->server; if (flags & KBD_FLAGS_EXTENDED) extended = TRUE; @@ -75,14 +75,14 @@ void x11_shadow_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) if (keycode != 0) { - XTestGrabControl(xfi->display, True); + XTestGrabControl(server->display, True); if (flags & KBD_FLAGS_DOWN) - XTestFakeKeyEvent(xfi->display, keycode, True, 0); + XTestFakeKeyEvent(server->display, keycode, True, 0); else if (flags & KBD_FLAGS_RELEASE) - XTestFakeKeyEvent(xfi->display, keycode, False, 0); + XTestFakeKeyEvent(server->display, keycode, False, 0); - XTestGrabControl(xfi->display, False); + XTestGrabControl(server->display, False); } #endif } @@ -95,12 +95,12 @@ void x11_shadow_input_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT void x11_shadow_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) { #ifdef WITH_XTEST - xfPeerContext* xfp = (xfPeerContext*) input->context; int button = 0; BOOL down = FALSE; - xfInfo* xfi = xfp->info; + xfPeerContext* xfp = (xfPeerContext*) input->context; + x11ShadowServer* server = xfp->server; - XTestGrabControl(xfi->display, True); + XTestGrabControl(server->display, True); if (flags & PTR_FLAGS_WHEEL) { @@ -111,13 +111,13 @@ void x11_shadow_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT1 button = (negative) ? 5 : 4; - XTestFakeButtonEvent(xfi->display, button, True, 0); - XTestFakeButtonEvent(xfi->display, button, False, 0); + XTestFakeButtonEvent(server->display, button, True, 0); + XTestFakeButtonEvent(server->display, button, False, 0); } else { if (flags & PTR_FLAGS_MOVE) - XTestFakeMotionEvent(xfi->display, 0, x, y, 0); + XTestFakeMotionEvent(server->display, 0, x, y, 0); if (flags & PTR_FLAGS_BUTTON1) button = 1; @@ -130,23 +130,23 @@ void x11_shadow_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT1 down = TRUE; if (button != 0) - XTestFakeButtonEvent(xfi->display, button, down, 0); + XTestFakeButtonEvent(server->display, button, down, 0); } - XTestGrabControl(xfi->display, False); + XTestGrabControl(server->display, False); #endif } void x11_shadow_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) { #ifdef WITH_XTEST - xfPeerContext* xfp = (xfPeerContext*) input->context; int button = 0; BOOL down = FALSE; - xfInfo* xfi = xfp->info; + xfPeerContext* xfp = (xfPeerContext*) input->context; + x11ShadowServer* server = xfp->server; - XTestGrabControl(xfi->display, True); - XTestFakeMotionEvent(xfi->display, 0, x, y, CurrentTime); + XTestGrabControl(server->display, True); + XTestFakeMotionEvent(server->display, 0, x, y, CurrentTime); if (flags & PTR_XFLAGS_BUTTON1) button = 8; @@ -157,9 +157,9 @@ void x11_shadow_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 down = TRUE; if (button != 0) - XTestFakeButtonEvent(xfi->display, button, down, 0); + XTestFakeButtonEvent(server->display, button, down, 0); - XTestGrabControl(xfi->display, False); + XTestGrabControl(server->display, False); #endif } diff --git a/server/shadow/X11/x11_shadow.c b/server/shadow/X11/x11_shadow.c index d0987cc01..80fb00d83 100644 --- a/server/shadow/X11/x11_shadow.c +++ b/server/shadow/X11/x11_shadow.c @@ -37,10 +37,10 @@ void* x11_shadow_server_thread(void* param) int rcount; void* rfds[32]; fd_set rfds_set; - xfServer* server; + x11ShadowServer* server; freerdp_listener* listener; - server = (xfServer*) param; + server = (x11ShadowServer*) param; listener = server->listener; while (1) @@ -95,7 +95,7 @@ void* x11_shadow_server_thread(void* param) return NULL; } -int x11_shadow_server_start(xfServer* server) +int x11_shadow_server_start(x11ShadowServer* server) { server->thread = NULL; @@ -108,7 +108,7 @@ int x11_shadow_server_start(xfServer* server) return 0; } -int x11_shadow_server_stop(xfServer* server) +int x11_shadow_server_stop(x11ShadowServer* server) { if (server->thread) { @@ -121,16 +121,16 @@ int x11_shadow_server_stop(xfServer* server) return 0; } -HANDLE x11_shadow_server_get_thread(xfServer* server) +HANDLE x11_shadow_server_get_thread(x11ShadowServer* server) { return server->thread; } -xfServer* x11_shadow_server_new(int argc, char** argv) +x11ShadowServer* x11_shadow_server_new(int argc, char** argv) { - xfServer* server; + x11ShadowServer* server; - server = (xfServer*) malloc(sizeof(xfServer)); + server = (x11ShadowServer*) malloc(sizeof(x11ShadowServer)); if (server) { @@ -143,7 +143,7 @@ xfServer* x11_shadow_server_new(int argc, char** argv) return server; } -void x11_shadow_server_free(xfServer* server) +void x11_shadow_server_free(x11ShadowServer* server) { if (server) { diff --git a/server/shadow/X11/x11_shadow.h b/server/shadow/X11/x11_shadow.h index a3db03488..83d650d77 100644 --- a/server/shadow/X11/x11_shadow.h +++ b/server/shadow/X11/x11_shadow.h @@ -24,27 +24,19 @@ #include #include -typedef struct x11_shadow_info xfInfo; -typedef struct x11_shadow_server xfServer; +typedef struct x11_shadow_server x11ShadowServer; #ifdef __cplusplus extern "C" { #endif -/** - * Server Interface - */ +FREERDP_API int x11_shadow_server_start(x11ShadowServer* server); +FREERDP_API int x11_shadow_server_stop(x11ShadowServer* server); -FREERDP_API int x11_shadow_server_global_init(); -FREERDP_API int x11_shadow_server_global_uninit(); +FREERDP_API HANDLE x11_shadow_server_get_thread(x11ShadowServer* server); -FREERDP_API int x11_shadow_server_start(xfServer* server); -FREERDP_API int x11_shadow_server_stop(xfServer* server); - -FREERDP_API HANDLE x11_shadow_server_get_thread(xfServer* server); - -FREERDP_API xfServer* x11_shadow_server_new(int argc, char** argv); -FREERDP_API void x11_shadow_server_free(xfServer* server); +FREERDP_API x11ShadowServer* x11_shadow_server_new(int argc, char** argv); +FREERDP_API void x11_shadow_server_free(x11ShadowServer* server); #ifdef __cplusplus } @@ -73,8 +65,12 @@ FREERDP_API void x11_shadow_server_free(xfServer* server); #include #endif -struct x11_shadow_info +struct x11_shadow_server { + DWORD port; + HANDLE thread; + freerdp_listener* listener; + int bpp; int xfds; int depth; @@ -108,13 +104,6 @@ struct x11_shadow_info #endif }; -struct x11_shadow_server -{ - DWORD port; - HANDLE thread; - freerdp_listener* listener; -}; - #include #include #include @@ -142,13 +131,13 @@ struct x11_shadow_peer_context int fps; wStream* s; - xfInfo* info; HANDLE mutex; BOOL activated; HANDLE monitorThread; HANDLE updateReadyEvent; HANDLE updateSentEvent; RFX_CONTEXT* rfx_context; + x11ShadowServer* server; }; void x11_shadow_peer_accepted(freerdp_listener* instance, freerdp_peer* client); @@ -157,17 +146,10 @@ void* x11_shadow_server_thread(void* param); void* x11_shadow_update_thread(void* param); -int x11_shadow_cursor_init(xfInfo* xfi); +int x11_shadow_cursor_init(x11ShadowServer* server); -XImage* x11_shadow_snapshot(xfPeerContext* xfp, int x, int y, int width, int height); -void x11_shadow_xdamage_subtract_region(xfPeerContext* xfp, int x, int y, int width, int height); -int x11_shadow_update_encode(freerdp_peer* client, int x, int y, int width, int height); - -void x11_shadow_input_synchronize_event(rdpInput* input, UINT32 flags); -void x11_shadow_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code); -void x11_shadow_input_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code); -void x11_shadow_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y); -void x11_shadow_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y); void x11_shadow_input_register_callbacks(rdpInput* input); +int x11_shadow_update_encode(freerdp_peer* client, int x, int y, int width, int height); + #endif /* FREERDP_SHADOW_SERVER_X11_H */ diff --git a/server/shadow/X11/x11_update.c b/server/shadow/X11/x11_update.c index 95da598cb..c2a561cd9 100644 --- a/server/shadow/X11/x11_update.c +++ b/server/shadow/X11/x11_update.c @@ -32,16 +32,16 @@ XImage* x11_shadow_snapshot(xfPeerContext* xfp, int x, int y, int width, int height) { XImage* image; - xfInfo* xfi = xfp->info; + x11ShadowServer* server = xfp->server; - if (xfi->use_xshm) + if (server->use_xshm) { - XCopyArea(xfi->display, xfi->root_window, xfi->fb_pixmap, xfi->xdamage_gc, x, y, width, height, x, y); - image = xfi->fb_image; + XCopyArea(server->display, server->root_window, server->fb_pixmap, server->xdamage_gc, x, y, width, height, x, y); + image = server->fb_image; } else { - image = XGetImage(xfi->display, xfi->root_window, x, y, width, height, AllPlanes, ZPixmap); + image = XGetImage(server->display, server->root_window, x, y, width, height, AllPlanes, ZPixmap); } return image; @@ -50,7 +50,7 @@ XImage* x11_shadow_snapshot(xfPeerContext* xfp, int x, int y, int width, int hei void x11_shadow_xdamage_subtract_region(xfPeerContext* xfp, int x, int y, int width, int height) { XRectangle region; - xfInfo* xfi = xfp->info; + x11ShadowServer* server = xfp->server; region.x = x; region.y = y; @@ -58,8 +58,8 @@ void x11_shadow_xdamage_subtract_region(xfPeerContext* xfp, int x, int y, int wi region.height = height; #ifdef WITH_XFIXES - XFixesSetRegion(xfi->display, xfi->xdamage_region, ®ion, 1); - XDamageSubtract(xfi->display, xfi->xdamage, xfi->xdamage_region, None); + XFixesSetRegion(server->display, server->xdamage_region, ®ion, 1); + XDamageSubtract(server->display, server->xdamage, server->xdamage_region, None); #endif } @@ -67,17 +67,18 @@ int x11_shadow_update_encode(freerdp_peer* client, int x, int y, int width, int { wStream* s; BYTE* data; - xfInfo* xfi; RFX_RECT rect; XImage* image; rdpUpdate* update; xfPeerContext* xfp; + x11ShadowServer* server; SURFACE_BITS_COMMAND* cmd; - update = client->update; xfp = (xfPeerContext*) client->context; + server = xfp->server; + + update = client->update; cmd = &update->surface_bits_command; - xfi = xfp->info; if (width * height <= 0) { @@ -89,7 +90,7 @@ int x11_shadow_update_encode(freerdp_peer* client, int x, int y, int width, int Stream_Clear(s); Stream_SetPosition(s, 0); - if (xfi->use_xshm) + if (server->use_xshm) { /** * Passing an offset source rectangle to rfx_compose_message() @@ -148,34 +149,34 @@ int x11_shadow_update_encode(freerdp_peer* client, int x, int y, int width, int void* x11_shadow_update_thread(void* param) { - xfInfo* xfi; HANDLE event; XEvent xevent; DWORD beg, end; DWORD diff, rate; xfPeerContext* xfp; + x11ShadowServer* server; freerdp_peer* client; int x, y, width, height; XDamageNotifyEvent* notify; client = (freerdp_peer*) param; xfp = (xfPeerContext*) client->context; - xfi = xfp->info; + server = xfp->server; rate = 1000 / xfp->fps; - event = CreateFileDescriptorEvent(NULL, FALSE, FALSE, xfi->xfds); + event = CreateFileDescriptorEvent(NULL, FALSE, FALSE, server->xfds); while (WaitForSingleObject(event, INFINITE) == WAIT_OBJECT_0) { beg = GetTickCount(); - while (XPending(xfi->display) > 0) + while (XPending(server->display) > 0) { ZeroMemory(&xevent, sizeof(xevent)); - XNextEvent(xfi->display, &xevent); + XNextEvent(server->display, &xevent); - if (xevent.type == xfi->xdamage_notify_event) + if (xevent.type == server->xdamage_notify_event) { notify = (XDamageNotifyEvent*) &xevent; @@ -195,9 +196,9 @@ void* x11_shadow_update_thread(void* param) } } #ifdef WITH_XFIXES - else if (xevent.type == xfi->xfixes_notify_event) + else if (xevent.type == server->xfixes_notify_event) { - XFixesCursorImage* ci = XFixesGetCursorImage(xfi->display); + XFixesCursorImage* ci = XFixesGetCursorImage(server->display); XFree(ci); } #endif diff --git a/server/shadow/shadow.c b/server/shadow/shadow.c index 66d3be4cb..9c81d881c 100644 --- a/server/shadow/shadow.c +++ b/server/shadow/shadow.c @@ -122,8 +122,8 @@ int main(int argc, char* argv[]) HANDLE thread; DWORD dwExitCode; -#if 0 - xfServer* server; +#if 1 + x11ShadowServer* server; server = x11_shadow_server_new(argc, argv); diff --git a/server/shadow/shadow_input.c b/server/shadow/shadow_input.c index 7f7ee00ff..08c36a6c3 100644 --- a/server/shadow/shadow_input.c +++ b/server/shadow/shadow_input.c @@ -16,6 +16,10 @@ * limitations under the License. */ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + #include "shadow.h" void shadow_input_synchronize_event(rdpInput* input, UINT32 flags) diff --git a/server/shadow/shadow_update.c b/server/shadow/shadow_update.c index e69de29bb..17db5a339 100644 --- a/server/shadow/shadow_update.c +++ b/server/shadow/shadow_update.c @@ -0,0 +1,24 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include "shadow.h" + From 7caf48bcf40b60193f856bed064241fc61106e62 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 11 Jul 2014 18:30:56 -0400 Subject: [PATCH 005/170] shadow: reduce X11 code --- server/shadow/X11/x11_client.c | 112 +++++---------------------------- server/shadow/X11/x11_input.c | 12 ++-- server/shadow/X11/x11_shadow.h | 17 +---- server/shadow/X11/x11_update.c | 52 ++++++++------- 4 files changed, 57 insertions(+), 136 deletions(-) diff --git a/server/shadow/X11/x11_client.c b/server/shadow/X11/x11_client.c index 2e5781d31..33f7aaf68 100644 --- a/server/shadow/X11/x11_client.c +++ b/server/shadow/X11/x11_client.c @@ -169,7 +169,7 @@ int x11_shadow_xshm_init(x11ShadowServer* server) return 0; } -void x11_shadow_peer_context_new(freerdp_peer* client, xfPeerContext* context) +void x11_shadow_peer_context_new(freerdp_peer* client, x11ShadowClient* context) { int i; int pf_count; @@ -257,8 +257,6 @@ void x11_shadow_peer_context_new(freerdp_peer* client, xfPeerContext* context) } XFree(vis); - server->clrconv = freerdp_clrconv_new(CLRCONV_ALPHA | CLRCONV_INVERT); - XSelectInput(server->display, server->root_window, SubstructureNotifyMask); if (server->use_xshm) @@ -290,12 +288,9 @@ void x11_shadow_peer_context_new(freerdp_peer* client, xfPeerContext* context) context->s = Stream_New(NULL, 65536); Stream_Clear(context->s); - - context->updateReadyEvent = CreateEvent(NULL, TRUE, FALSE, NULL); - context->updateSentEvent = CreateEvent(NULL, TRUE, FALSE, NULL); } -void x11_shadow_peer_context_free(freerdp_peer* client, xfPeerContext* context) +void x11_shadow_peer_context_free(freerdp_peer* client, x11ShadowClient* context) { x11ShadowServer* server; @@ -306,11 +301,6 @@ void x11_shadow_peer_context_free(freerdp_peer* client, xfPeerContext* context) if (server->display) XCloseDisplay(server->display); - freerdp_clrconv_free(server->clrconv); - - CloseHandle(context->updateReadyEvent); - CloseHandle(context->updateSentEvent); - Stream_Free(context->s, TRUE); rfx_context_free(context->rfx_context); } @@ -318,63 +308,10 @@ void x11_shadow_peer_context_free(freerdp_peer* client, xfPeerContext* context) void x11_shadow_peer_init(freerdp_peer* client) { - xfPeerContext* xfp; - - client->ContextSize = sizeof(xfPeerContext); + client->ContextSize = sizeof(x11ShadowClient); client->ContextNew = (psPeerContextNew) x11_shadow_peer_context_new; client->ContextFree = (psPeerContextFree) x11_shadow_peer_context_free; freerdp_peer_context_new(client); - - xfp = (xfPeerContext*) client->context; - - xfp->fps = 16; - xfp->mutex = CreateMutex(NULL, FALSE, NULL); -} - -void x11_shadow_peer_send_update(freerdp_peer* client) -{ - rdpUpdate* update; - SURFACE_BITS_COMMAND* cmd; - - update = client->update; - cmd = &update->surface_bits_command; - - if (cmd->bitmapDataLength) - update->SurfaceBits(update->context, cmd); -} - -BOOL x11_shadow_peer_get_fds(freerdp_peer* client, void** rfds, int* rcount) -{ - int fds; - HANDLE event; - xfPeerContext* xfp = (xfPeerContext*) client->context; - - event = xfp->updateReadyEvent; - fds = GetEventFileDescriptor(event); - rfds[*rcount] = (void*) (long) fds; - (*rcount)++; - - return TRUE; -} - -BOOL x11_shadow_peer_check_fds(freerdp_peer* client) -{ - xfPeerContext* xfp; - - xfp = (xfPeerContext*) client->context; - - if (WaitForSingleObject(xfp->updateReadyEvent, 0) == WAIT_OBJECT_0) - { - if (!xfp->activated) - return TRUE; - - x11_shadow_peer_send_update(client); - - ResetEvent(xfp->updateReadyEvent); - SetEvent(xfp->updateSentEvent); - } - - return TRUE; } BOOL x11_shadow_peer_capabilities(freerdp_peer* client) @@ -384,11 +321,11 @@ BOOL x11_shadow_peer_capabilities(freerdp_peer* client) BOOL x11_shadow_peer_post_connect(freerdp_peer* client) { - xfPeerContext* xfp; + x11ShadowClient* context; x11ShadowServer* server; - xfp = (xfPeerContext*) client->context; - server = xfp->server; + context = (x11ShadowClient*) client->context; + server = context->server; fprintf(stderr, "Client %s is activated", client->hostname); if (client->settings->AutoLogonEnabled) @@ -408,28 +345,25 @@ BOOL x11_shadow_peer_post_connect(freerdp_peer* client) return FALSE; } - /* A real server should tag the peer as activated here and start sending updates in main loop. */ - client->settings->DesktopWidth = server->width; client->settings->DesktopHeight = server->height; client->update->DesktopResize(client->update->context); - /* Return FALSE here would stop the execution of the peer main loop. */ return TRUE; } BOOL x11_shadow_peer_activate(freerdp_peer* client) { - xfPeerContext* xfp = (xfPeerContext*) client->context; - x11ShadowServer* server = xfp->server; + x11ShadowClient* context = (x11ShadowClient*) client->context; + x11ShadowServer* server = context->server; - rfx_context_reset(xfp->rfx_context); - xfp->activated = TRUE; + rfx_context_reset(context->rfx_context); + context->activated = TRUE; server->activePeerCount++; - xfp->monitorThread = CreateThread(NULL, 0, + context->monitorThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) x11_shadow_update_thread, (void*) client, 0, NULL); return TRUE; @@ -481,7 +415,7 @@ int x11_shadow_generate_certificate(rdpSettings* settings) return 0; } -static void* x11_shadow_peer_main_loop(void* arg) +static void* x11_shadow_client_thread(void* arg) { int i; int fds; @@ -490,7 +424,7 @@ static void* x11_shadow_peer_main_loop(void* arg) void* rfds[32]; fd_set rfds_set; rdpSettings* settings; - xfPeerContext* xfp; + x11ShadowClient* xfp; struct timeval timeout; freerdp_peer* client = (freerdp_peer*) arg; @@ -501,7 +435,7 @@ static void* x11_shadow_peer_main_loop(void* arg) x11_shadow_peer_init(client); - xfp = (xfPeerContext*) client->context; + xfp = (x11ShadowClient*) client->context; settings = client->settings; x11_shadow_generate_certificate(settings); @@ -531,12 +465,6 @@ static void* x11_shadow_peer_main_loop(void* arg) break; } - if (x11_shadow_peer_get_fds(client, rfds, &rcount) != TRUE) - { - fprintf(stderr, "Failed to get xfreerdp file descriptor\n"); - break; - } - max_fds = 0; FD_ZERO(&rfds_set); @@ -571,14 +499,8 @@ static void* x11_shadow_peer_main_loop(void* arg) if (client->CheckFileDescriptor(client) != TRUE) { - fprintf(stderr, "Failed to check freerdp file descriptor\n"); - break; - } - - if ((x11_shadow_peer_check_fds(client)) != TRUE) - { - fprintf(stderr, "Failed to check xfreerdp file descriptor\n"); - break; + //fprintf(stderr, "Failed to check freerdp file descriptor\n"); + //break; } } @@ -599,5 +521,5 @@ void x11_shadow_peer_accepted(freerdp_listener* instance, freerdp_peer* client) HANDLE thread; thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) - x11_shadow_peer_main_loop, client, 0, NULL); + x11_shadow_client_thread, client, 0, NULL); } diff --git a/server/shadow/X11/x11_input.c b/server/shadow/X11/x11_input.c index a7ac4fb28..f614abf3f 100644 --- a/server/shadow/X11/x11_input.c +++ b/server/shadow/X11/x11_input.c @@ -61,8 +61,8 @@ void x11_shadow_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) DWORD vkcode; DWORD keycode; BOOL extended = FALSE; - xfPeerContext* xfp = (xfPeerContext*) input->context; - x11ShadowServer* server = xfp->server; + x11ShadowClient* context = (x11ShadowClient*) input->context; + x11ShadowServer* server = context->server; if (flags & KBD_FLAGS_EXTENDED) extended = TRUE; @@ -97,8 +97,8 @@ void x11_shadow_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT1 #ifdef WITH_XTEST int button = 0; BOOL down = FALSE; - xfPeerContext* xfp = (xfPeerContext*) input->context; - x11ShadowServer* server = xfp->server; + x11ShadowClient* context = (x11ShadowClient*) input->context; + x11ShadowServer* server = context->server; XTestGrabControl(server->display, True); @@ -142,8 +142,8 @@ void x11_shadow_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 #ifdef WITH_XTEST int button = 0; BOOL down = FALSE; - xfPeerContext* xfp = (xfPeerContext*) input->context; - x11ShadowServer* server = xfp->server; + x11ShadowClient* context = (x11ShadowClient*) input->context; + x11ShadowServer* server = context->server; XTestGrabControl(server->display, True); XTestFakeMotionEvent(server->display, 0, x, y, CurrentTime); diff --git a/server/shadow/X11/x11_shadow.h b/server/shadow/X11/x11_shadow.h index 83d650d77..f74f3e40d 100644 --- a/server/shadow/X11/x11_shadow.h +++ b/server/shadow/X11/x11_shadow.h @@ -83,10 +83,9 @@ struct x11_shadow_server Display* display; int scanline_pad; int bytesPerPixel; - HCLRCONV clrconv; - BOOL use_xshm; int activePeerCount; + BOOL use_xshm; XImage* fb_image; Pixmap fb_pixmap; Window root_window; @@ -117,25 +116,15 @@ struct x11_shadow_server #include #include -typedef struct x11_shadow_peer_context xfPeerContext; +typedef struct x11_shadow_client x11ShadowClient; -#define PeerEvent_Base 0 - -#define PeerEvent_Class (PeerEvent_Base + 1) - -#define PeerEvent_EncodeRegion 1 - -struct x11_shadow_peer_context +struct x11_shadow_client { rdpContext _p; - int fps; wStream* s; - HANDLE mutex; BOOL activated; HANDLE monitorThread; - HANDLE updateReadyEvent; - HANDLE updateSentEvent; RFX_CONTEXT* rfx_context; x11ShadowServer* server; }; diff --git a/server/shadow/X11/x11_update.c b/server/shadow/X11/x11_update.c index c2a561cd9..bbdcee37b 100644 --- a/server/shadow/X11/x11_update.c +++ b/server/shadow/X11/x11_update.c @@ -29,10 +29,10 @@ #include "x11_shadow.h" -XImage* x11_shadow_snapshot(xfPeerContext* xfp, int x, int y, int width, int height) +XImage* x11_shadow_snapshot(x11ShadowClient* context, int x, int y, int width, int height) { XImage* image; - x11ShadowServer* server = xfp->server; + x11ShadowServer* server = context->server; if (server->use_xshm) { @@ -47,10 +47,10 @@ XImage* x11_shadow_snapshot(xfPeerContext* xfp, int x, int y, int width, int hei return image; } -void x11_shadow_xdamage_subtract_region(xfPeerContext* xfp, int x, int y, int width, int height) +void x11_shadow_xdamage_subtract_region(x11ShadowClient* context, int x, int y, int width, int height) { XRectangle region; - x11ShadowServer* server = xfp->server; + x11ShadowServer* server = context->server; region.x = x; region.y = y; @@ -70,12 +70,12 @@ int x11_shadow_update_encode(freerdp_peer* client, int x, int y, int width, int RFX_RECT rect; XImage* image; rdpUpdate* update; - xfPeerContext* xfp; + x11ShadowClient* context; x11ShadowServer* server; SURFACE_BITS_COMMAND* cmd; - xfp = (xfPeerContext*) client->context; - server = xfp->server; + context = (x11ShadowClient*) client->context; + server = context->server; update = client->update; cmd = &update->surface_bits_command; @@ -86,7 +86,7 @@ int x11_shadow_update_encode(freerdp_peer* client, int x, int y, int width, int return -1; } - s = xfp->s; + s = context->s; Stream_Clear(s); Stream_SetPosition(s, 0); @@ -102,12 +102,12 @@ int x11_shadow_update_encode(freerdp_peer* client, int x, int y, int width, int rect.width = width; rect.height = height; - image = x11_shadow_snapshot(xfp, x, y, width, height); + image = x11_shadow_snapshot(context, x, y, width, height); data = (BYTE*) image->data; data = &data[(y * image->bytes_per_line) + (x * image->bits_per_pixel / 8)]; - rfx_compose_message(xfp->rfx_context, s, &rect, 1, data, + rfx_compose_message(context->rfx_context, s, &rect, 1, data, width, height, image->bytes_per_line); cmd->destLeft = x; @@ -122,11 +122,11 @@ int x11_shadow_update_encode(freerdp_peer* client, int x, int y, int width, int rect.width = width; rect.height = height; - image = x11_shadow_snapshot(xfp, x, y, width, height); + image = x11_shadow_snapshot(context, x, y, width, height); data = (BYTE*) image->data; - rfx_compose_message(xfp->rfx_context, s, &rect, 1, data, + rfx_compose_message(context->rfx_context, s, &rect, 1, data, width, height, image->bytes_per_line); cmd->destLeft = x; @@ -147,23 +147,35 @@ int x11_shadow_update_encode(freerdp_peer* client, int x, int y, int width, int return 0; } +void x11_shadow_client_send_update(freerdp_peer* client) +{ + rdpUpdate* update; + SURFACE_BITS_COMMAND* cmd; + + update = client->update; + cmd = &update->surface_bits_command; + + if (cmd->bitmapDataLength) + update->SurfaceBits(update->context, cmd); +} + void* x11_shadow_update_thread(void* param) { HANDLE event; XEvent xevent; DWORD beg, end; DWORD diff, rate; - xfPeerContext* xfp; + x11ShadowClient* context; x11ShadowServer* server; freerdp_peer* client; int x, y, width, height; XDamageNotifyEvent* notify; client = (freerdp_peer*) param; - xfp = (xfPeerContext*) client->context; - server = xfp->server; + context = (x11ShadowClient*) client->context; + server = context->server; - rate = 1000 / xfp->fps; + rate = 1000 / 10; event = CreateFileDescriptorEvent(NULL, FALSE, FALSE, server->xfds); @@ -187,12 +199,10 @@ void* x11_shadow_update_thread(void* param) if (x11_shadow_update_encode(client, x, y, width, height) >= 0) { - x11_shadow_xdamage_subtract_region(xfp, x, y, width, height); + x11_shadow_xdamage_subtract_region(context, x, y, width, height); - SetEvent(xfp->updateReadyEvent); - - WaitForSingleObject(xfp->updateSentEvent, INFINITE); - ResetEvent(xfp->updateSentEvent); + if (context->activated) + x11_shadow_client_send_update(client); } } #ifdef WITH_XFIXES From 8ae00f73853997f90fba3e5c4c738dc3db4380de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 11 Jul 2014 19:30:40 -0400 Subject: [PATCH 006/170] shadow: start hooking X11 code as subsystem --- include/freerdp/peer.h | 1 + include/freerdp/server/shadow.h | 20 +++ libfreerdp/core/listener.c | 12 +- libfreerdp/core/peer.c | 2 +- server/shadow/X11/x11_client.c | 252 ++++---------------------------- server/shadow/X11/x11_shadow.c | 117 +-------------- server/shadow/X11/x11_shadow.h | 65 +++----- server/shadow/shadow.c | 65 ++++---- server/shadow/shadow.h | 21 +-- server/shadow/shadow_client.c | 92 ++++++------ 10 files changed, 168 insertions(+), 479 deletions(-) diff --git a/include/freerdp/peer.h b/include/freerdp/peer.h index 4fbe75bfc..1fba9906e 100644 --- a/include/freerdp/peer.h +++ b/include/freerdp/peer.h @@ -58,6 +58,7 @@ struct rdp_freerdp_peer rdpUpdate* update; rdpSettings* settings; + void* ContextExtra; size_t ContextSize; psPeerContextNew ContextNew; psPeerContextFree ContextFree; diff --git a/include/freerdp/server/shadow.h b/include/freerdp/server/shadow.h index 98b7d6b2c..08a0a8048 100644 --- a/include/freerdp/server/shadow.h +++ b/include/freerdp/server/shadow.h @@ -23,7 +23,27 @@ #include #include +#include +typedef struct rdp_shadow_client rdpShadowClient; +typedef struct rdp_shadow_server rdpShadowServer; + +struct rdp_shadow_client +{ + rdpContext context; + rdpShadowServer* server; + + void* ext; +}; + +struct rdp_shadow_server +{ + DWORD port; + HANDLE thread; + freerdp_listener* listener; + + void* ext; +}; #endif /* FREERDP_SERVER_SHADOW_H */ diff --git a/libfreerdp/core/listener.c b/libfreerdp/core/listener.c index e37c4c89f..216426722 100644 --- a/libfreerdp/core/listener.c +++ b/libfreerdp/core/listener.c @@ -346,8 +346,10 @@ freerdp_listener* freerdp_listener_new(void) freerdp_listener* instance; rdpListener* listener; - instance = (freerdp_listener*) malloc(sizeof(freerdp_listener)); - ZeroMemory(instance, sizeof(freerdp_listener)); + instance = (freerdp_listener*) calloc(1, sizeof(freerdp_listener)); + + if (!instance) + return NULL; instance->Open = freerdp_listener_open; instance->OpenLocal = freerdp_listener_open_local; @@ -356,8 +358,10 @@ freerdp_listener* freerdp_listener_new(void) instance->CheckFileDescriptor = freerdp_listener_check_fds; instance->Close = freerdp_listener_close; - listener = (rdpListener*) malloc(sizeof(rdpListener)); - ZeroMemory(listener, sizeof(rdpListener)); + listener = (rdpListener*) calloc(1, sizeof(rdpListener)); + + if (!listener) + return NULL; listener->instance = instance; diff --git a/libfreerdp/core/peer.c b/libfreerdp/core/peer.c index 8b5ac3ce9..10b10ff72 100644 --- a/libfreerdp/core/peer.c +++ b/libfreerdp/core/peer.c @@ -431,7 +431,7 @@ void freerdp_peer_context_new(freerdp_peer* client) { rdpRdp* rdp; - client->context = (rdpContext *)calloc(1, client->ContextSize); + client->context = (rdpContext*) calloc(1, client->ContextSize); client->context->ServerMode = TRUE; diff --git a/server/shadow/X11/x11_client.c b/server/shadow/X11/x11_client.c index 33f7aaf68..2796ab076 100644 --- a/server/shadow/X11/x11_client.c +++ b/server/shadow/X11/x11_client.c @@ -20,7 +20,6 @@ #include "config.h" #endif -#include #include #include #include @@ -28,6 +27,7 @@ #include #include #include + #include #include #include @@ -169,7 +169,7 @@ int x11_shadow_xshm_init(x11ShadowServer* server) return 0; } -void x11_shadow_peer_context_new(freerdp_peer* client, x11ShadowClient* context) +x11ShadowClient* x11_shadow_client_new(rdpShadowClient* rdp) { int i; int pf_count; @@ -180,9 +180,15 @@ void x11_shadow_peer_context_new(freerdp_peer* client, x11ShadowClient* context) XPixmapFormatValues* pf; XPixmapFormatValues* pfs; x11ShadowServer* server; + x11ShadowClient* client; - server = (x11ShadowServer*) client->context; - context->server = server; + client = (x11ShadowClient*) calloc(1, sizeof(x11ShadowClient)); + + if (!client) + return NULL; + + server = (x11ShadowServer*) rdp->server->ext; + client->server = server; /** * Recent X11 servers drop support for shared pixmaps @@ -279,78 +285,33 @@ void x11_shadow_peer_context_new(freerdp_peer* client, x11ShadowClient* context) freerdp_keyboard_init(0); - context->rfx_context = rfx_context_new(TRUE); - context->rfx_context->mode = RLGR3; - context->rfx_context->width = server->width; - context->rfx_context->height = server->height; + client->rfx_context = rfx_context_new(TRUE); + client->rfx_context->mode = RLGR3; + client->rfx_context->width = server->width; + client->rfx_context->height = server->height; - rfx_context_set_pixel_format(context->rfx_context, RDP_PIXEL_FORMAT_B8G8R8A8); + rfx_context_set_pixel_format(client->rfx_context, RDP_PIXEL_FORMAT_B8G8R8A8); - context->s = Stream_New(NULL, 65536); - Stream_Clear(context->s); + client->s = Stream_New(NULL, 65536); + Stream_Clear(client->s); + + return client; } -void x11_shadow_peer_context_free(freerdp_peer* client, x11ShadowClient* context) +void x11_shadow_client_free(x11ShadowClient* client) { x11ShadowServer* server; - if (context) - { - server = context->server; + if (!client) + return; - if (server->display) - XCloseDisplay(server->display); + server = client->server; - Stream_Free(context->s, TRUE); - rfx_context_free(context->rfx_context); - } -} + if (server->display) + XCloseDisplay(server->display); -void x11_shadow_peer_init(freerdp_peer* client) -{ - client->ContextSize = sizeof(x11ShadowClient); - client->ContextNew = (psPeerContextNew) x11_shadow_peer_context_new; - client->ContextFree = (psPeerContextFree) x11_shadow_peer_context_free; - freerdp_peer_context_new(client); -} - -BOOL x11_shadow_peer_capabilities(freerdp_peer* client) -{ - return TRUE; -} - -BOOL x11_shadow_peer_post_connect(freerdp_peer* client) -{ - x11ShadowClient* context; - x11ShadowServer* server; - - context = (x11ShadowClient*) client->context; - server = context->server; - - fprintf(stderr, "Client %s is activated", client->hostname); - if (client->settings->AutoLogonEnabled) - { - fprintf(stderr, " and wants to login automatically as %s\\%s", - client->settings->Domain ? client->settings->Domain : "", - client->settings->Username); - } - fprintf(stderr, "\n"); - - fprintf(stderr, "Client requested desktop: %dx%dx%d\n", - client->settings->DesktopWidth, client->settings->DesktopHeight, client->settings->ColorDepth); - - if (!client->settings->RemoteFxCodec) - { - fprintf(stderr, "Client does not support RemoteFX\n"); - return FALSE; - } - - client->settings->DesktopWidth = server->width; - client->settings->DesktopHeight = server->height; - - client->update->DesktopResize(client->update->context); - - return TRUE; + Stream_Free(client->s, TRUE); + rfx_context_free(client->rfx_context); } BOOL x11_shadow_peer_activate(freerdp_peer* client) @@ -363,163 +324,8 @@ BOOL x11_shadow_peer_activate(freerdp_peer* client) server->activePeerCount++; - context->monitorThread = CreateThread(NULL, 0, - (LPTHREAD_START_ROUTINE) x11_shadow_update_thread, (void*) client, 0, NULL); + context->monitorThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) + x11_shadow_update_thread, (void*) client, 0, NULL); return TRUE; } - -const char* makecert_argv[4] = -{ - "makecert", - "-rdp", - "-live", - "-silent" -}; - -int makecert_argc = (sizeof(makecert_argv) / sizeof(char*)); - -int x11_shadow_generate_certificate(rdpSettings* settings) -{ - char* server_file_path; - MAKECERT_CONTEXT* context; - - server_file_path = GetCombinedPath(settings->ConfigPath, "server"); - - if (!PathFileExistsA(server_file_path)) - CreateDirectoryA(server_file_path, 0); - - settings->CertificateFile = GetCombinedPath(server_file_path, "server.crt"); - settings->PrivateKeyFile = GetCombinedPath(server_file_path, "server.key"); - - if ((!PathFileExistsA(settings->CertificateFile)) || - (!PathFileExistsA(settings->PrivateKeyFile))) - { - context = makecert_context_new(); - - makecert_context_process(context, makecert_argc, (char**) makecert_argv); - - makecert_context_set_output_file_name(context, "server"); - - if (!PathFileExistsA(settings->CertificateFile)) - makecert_context_output_certificate_file(context, server_file_path); - - if (!PathFileExistsA(settings->PrivateKeyFile)) - makecert_context_output_private_key_file(context, server_file_path); - - makecert_context_free(context); - } - - free(server_file_path); - - return 0; -} - -static void* x11_shadow_client_thread(void* arg) -{ - int i; - int fds; - int max_fds; - int rcount; - void* rfds[32]; - fd_set rfds_set; - rdpSettings* settings; - x11ShadowClient* xfp; - struct timeval timeout; - freerdp_peer* client = (freerdp_peer*) arg; - - ZeroMemory(rfds, sizeof(rfds)); - ZeroMemory(&timeout, sizeof(struct timeval)); - - fprintf(stderr, "We've got a client %s\n", client->hostname); - - x11_shadow_peer_init(client); - - xfp = (x11ShadowClient*) client->context; - settings = client->settings; - - x11_shadow_generate_certificate(settings); - - settings->RemoteFxCodec = TRUE; - settings->ColorDepth = 32; - - settings->NlaSecurity = FALSE; - settings->TlsSecurity = TRUE; - settings->RdpSecurity = FALSE; - - client->Capabilities = x11_shadow_peer_capabilities; - client->PostConnect = x11_shadow_peer_post_connect; - client->Activate = x11_shadow_peer_activate; - - x11_shadow_input_register_callbacks(client->input); - - client->Initialize(client); - - while (1) - { - rcount = 0; - - if (client->GetFileDescriptor(client, rfds, &rcount) != TRUE) - { - fprintf(stderr, "Failed to get FreeRDP file descriptor\n"); - break; - } - - max_fds = 0; - FD_ZERO(&rfds_set); - - for (i = 0; i < rcount; i++) - { - fds = (int)(long)(rfds[i]); - - if (fds > max_fds) - max_fds = fds; - - FD_SET(fds, &rfds_set); - } - - if (max_fds == 0) - break; - - timeout.tv_sec = 0; - timeout.tv_usec = 100; - - if (select(max_fds + 1, &rfds_set, NULL, NULL, &timeout) == -1) - { - /* these are not really errors */ - if (!((errno == EAGAIN) || - (errno == EWOULDBLOCK) || - (errno == EINPROGRESS) || - (errno == EINTR))) /* signal occurred */ - { - fprintf(stderr, "select failed\n"); - break; - } - } - - if (client->CheckFileDescriptor(client) != TRUE) - { - //fprintf(stderr, "Failed to check freerdp file descriptor\n"); - //break; - } - } - - fprintf(stderr, "Client %s disconnected.\n", client->hostname); - - client->Disconnect(client); - - freerdp_peer_context_free(client); - freerdp_peer_free(client); - - ExitThread(0); - - return NULL; -} - -void x11_shadow_peer_accepted(freerdp_listener* instance, freerdp_peer* client) -{ - HANDLE thread; - - thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) - x11_shadow_client_thread, client, 0, NULL); -} diff --git a/server/shadow/X11/x11_shadow.c b/server/shadow/X11/x11_shadow.c index 80fb00d83..d599f42e9 100644 --- a/server/shadow/X11/x11_shadow.c +++ b/server/shadow/X11/x11_shadow.c @@ -29,114 +29,14 @@ #include "x11_shadow.h" -void* x11_shadow_server_thread(void* param) -{ - int i; - int fds; - int max_fds; - int rcount; - void* rfds[32]; - fd_set rfds_set; - x11ShadowServer* server; - freerdp_listener* listener; - - server = (x11ShadowServer*) param; - listener = server->listener; - - while (1) - { - rcount = 0; - - ZeroMemory(rfds, sizeof(rfds)); - if (listener->GetFileDescriptor(listener, rfds, &rcount) != TRUE) - { - fprintf(stderr, "Failed to get FreeRDP file descriptor\n"); - break; - } - - max_fds = 0; - FD_ZERO(&rfds_set); - - for (i = 0; i < rcount; i++) - { - fds = (int)(long)(rfds[i]); - - if (fds > max_fds) - max_fds = fds; - - FD_SET(fds, &rfds_set); - } - - if (max_fds == 0) - break; - - if (select(max_fds + 1, &rfds_set, NULL, NULL, NULL) == -1) - { - /* these are not really errors */ - if (!((errno == EAGAIN) || - (errno == EWOULDBLOCK) || - (errno == EINPROGRESS) || - (errno == EINTR))) /* signal occurred */ - { - fprintf(stderr, "select failed\n"); - break; - } - } - - if (listener->CheckFileDescriptor(listener) != TRUE) - { - fprintf(stderr, "Failed to check FreeRDP file descriptor\n"); - break; - } - } - - ExitThread(0); - - return NULL; -} - -int x11_shadow_server_start(x11ShadowServer* server) -{ - server->thread = NULL; - - if (server->listener->Open(server->listener, NULL, 3389)) - { - server->thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) - x11_shadow_server_thread, (void*) server, 0, NULL); - } - - return 0; -} - -int x11_shadow_server_stop(x11ShadowServer* server) -{ - if (server->thread) - { - TerminateThread(server->thread, 0); - WaitForSingleObject(server->thread, INFINITE); - CloseHandle(server->thread); - - server->listener->Close(server->listener); - } - return 0; -} - -HANDLE x11_shadow_server_get_thread(x11ShadowServer* server) -{ - return server->thread; -} - -x11ShadowServer* x11_shadow_server_new(int argc, char** argv) +x11ShadowServer* x11_shadow_server_new(rdpShadowServer* rdp) { x11ShadowServer* server; - server = (x11ShadowServer*) malloc(sizeof(x11ShadowServer)); + server = (x11ShadowServer*) calloc(1, sizeof(x11ShadowServer)); - if (server) - { - server->listener = freerdp_listener_new(); - server->listener->PeerAccepted = x11_shadow_peer_accepted; - } + if (!server) + return NULL; signal(SIGPIPE, SIG_IGN); @@ -145,9 +45,8 @@ x11ShadowServer* x11_shadow_server_new(int argc, char** argv) void x11_shadow_server_free(x11ShadowServer* server) { - if (server) - { - freerdp_listener_free(server->listener); - free(server); - } + if (!server) + return; + + free(server); } diff --git a/server/shadow/X11/x11_shadow.h b/server/shadow/X11/x11_shadow.h index f74f3e40d..59783a068 100644 --- a/server/shadow/X11/x11_shadow.h +++ b/server/shadow/X11/x11_shadow.h @@ -19,33 +19,23 @@ #ifndef FREERDP_SHADOW_SERVER_X11_H #define FREERDP_SHADOW_SERVER_X11_H -#include - -#include -#include +#include +typedef struct x11_shadow_client x11ShadowClient; typedef struct x11_shadow_server x11ShadowServer; -#ifdef __cplusplus -extern "C" { -#endif +#include +#include +#include +#include +#include -FREERDP_API int x11_shadow_server_start(x11ShadowServer* server); -FREERDP_API int x11_shadow_server_stop(x11ShadowServer* server); - -FREERDP_API HANDLE x11_shadow_server_get_thread(x11ShadowServer* server); - -FREERDP_API x11ShadowServer* x11_shadow_server_new(int argc, char** argv); -FREERDP_API void x11_shadow_server_free(x11ShadowServer* server); - -#ifdef __cplusplus -} -#endif - -#include -#include +#include +#include +#include +#include #include -#include +#include #include @@ -103,21 +93,6 @@ struct x11_shadow_server #endif }; -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include - -typedef struct x11_shadow_client x11ShadowClient; - struct x11_shadow_client { rdpContext _p; @@ -129,16 +104,24 @@ struct x11_shadow_client x11ShadowServer* server; }; -void x11_shadow_peer_accepted(freerdp_listener* instance, freerdp_peer* client); +#ifdef __cplusplus +extern "C" { +#endif -void* x11_shadow_server_thread(void* param); +FREERDP_API x11ShadowServer* x11_shadow_server_new(rdpShadowServer* rdp); +FREERDP_API void x11_shadow_server_free(x11ShadowServer* server); + +x11ShadowClient* x11_shadow_client_new(rdpShadowClient* rdp); +void x11_shadow_client_free(x11ShadowClient* client); void* x11_shadow_update_thread(void* param); int x11_shadow_cursor_init(x11ShadowServer* server); - void x11_shadow_input_register_callbacks(rdpInput* input); - int x11_shadow_update_encode(freerdp_peer* client, int x, int y, int width, int height); +#ifdef __cplusplus +} +#endif + #endif /* FREERDP_SHADOW_SERVER_X11_H */ diff --git a/server/shadow/shadow.c b/server/shadow/shadow.c index 9c81d881c..42698cc1b 100644 --- a/server/shadow/shadow.c +++ b/server/shadow/shadow.c @@ -22,18 +22,14 @@ #include "shadow.h" -#include "X11/x11_shadow.h" - -void* shadow_server_thread(void* param) +void* shadow_server_thread(rdpShadowServer* server) { DWORD status; DWORD nCount; HANDLE events[32]; - rdpShadowServer* server; freerdp_listener* listener; - server = (rdpShadowServer*) param; - listener = (freerdp_listener*) server->listener; + listener = server->listener; while (1) { @@ -95,51 +91,45 @@ rdpShadowServer* shadow_server_new(int argc, char** argv) { rdpShadowServer* server; - server = (rdpShadowServer*) malloc(sizeof(rdpShadowServer)); + server = (rdpShadowServer*) calloc(1, sizeof(rdpShadowServer)); - if (server) - { - server->port = 3389; + if (!server) + return NULL; - server->listener = freerdp_listener_new(); - server->listener->PeerAccepted = shadow_client_accepted; - } + server->port = 3389; + + server->listener = freerdp_listener_new(); + + if (!server->listener) + return NULL; + + server->listener->info = (void*) server; + server->listener->PeerAccepted = shadow_client_accepted; + + server->ext = x11_shadow_server_new(server); + + if (!server->ext) + return NULL; return server; } void shadow_server_free(rdpShadowServer* server) { - if (server) - { - freerdp_listener_free(server->listener); - free(server); - } + if (!server) + return; + + freerdp_listener_free(server->listener); + + x11_shadow_server_free(server->ext); + + free(server); } int main(int argc, char* argv[]) { HANDLE thread; DWORD dwExitCode; - -#if 1 - x11ShadowServer* server; - - server = x11_shadow_server_new(argc, argv); - - if (!server) - return 0; - - x11_shadow_server_start(server); - - thread = x11_shadow_server_get_thread(server); - - WaitForSingleObject(thread, INFINITE); - - GetExitCodeThread(thread, &dwExitCode); - - x11_shadow_server_free(server); -#else rdpShadowServer* server; server = shadow_server_new(argc, argv); @@ -156,7 +146,6 @@ int main(int argc, char* argv[]) GetExitCodeThread(thread, &dwExitCode); shadow_server_free(server); -#endif return 0; } diff --git a/server/shadow/shadow.h b/server/shadow/shadow.h index 56c0d57f4..033e79fdb 100644 --- a/server/shadow/shadow.h +++ b/server/shadow/shadow.h @@ -20,28 +20,9 @@ #ifndef FREERDP_SHADOW_SERVER_H #define FREERDP_SHADOW_SERVER_H -#include - -#include -#include -#include - #include -typedef struct rdp_shadow_client rdpShadowClient; -typedef struct rdp_shadow_server rdpShadowServer; - -struct rdp_shadow_client -{ - rdpContext context; -}; - -struct rdp_shadow_server -{ - DWORD port; - HANDLE thread; - freerdp_listener* listener; -}; +#include "X11/x11_shadow.h" #ifdef __cplusplus extern "C" { diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index df1415d70..1947477ad 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -30,55 +30,52 @@ #include "shadow.h" -void shadow_client_context_new(freerdp_peer* client, rdpShadowClient* context) +void shadow_client_context_new(freerdp_peer* peer, rdpShadowClient* client) { + rdpShadowServer* server; + server = (rdpShadowServer*) peer->ContextExtra; + client->server = server; + + client->ext = x11_shadow_client_new(client); } -void shadow_client_context_free(freerdp_peer* client, rdpShadowClient* context) +void shadow_client_context_free(freerdp_peer* peer, rdpShadowClient* client) { - + x11_shadow_client_free(client->ext); } -void shadow_client_init(freerdp_peer* client) -{ - client->ContextSize = sizeof(rdpShadowClient); - client->ContextNew = (psPeerContextNew) shadow_client_context_new; - client->ContextFree = (psPeerContextFree) shadow_client_context_free; - freerdp_peer_context_new(client); -} - -BOOL shadow_client_get_fds(freerdp_peer* client, void** rfds, int* rcount) +BOOL shadow_client_get_fds(freerdp_peer* peer, void** rfds, int* rcount) { return TRUE; } -BOOL shadow_client_check_fds(freerdp_peer* client) +BOOL shadow_client_check_fds(freerdp_peer* peer) { return TRUE; } -BOOL shadow_client_capabilities(freerdp_peer* client) +BOOL shadow_client_capabilities(freerdp_peer* peer) { return TRUE; } -BOOL shadow_client_post_connect(freerdp_peer* client) +BOOL shadow_client_post_connect(freerdp_peer* peer) { - fprintf(stderr, "Client %s is activated", client->hostname); + fprintf(stderr, "Client %s is activated", peer->hostname); - if (client->settings->AutoLogonEnabled) + if (peer->settings->AutoLogonEnabled) { fprintf(stderr, " and wants to login automatically as %s\\%s", - client->settings->Domain ? client->settings->Domain : "", - client->settings->Username); + peer->settings->Domain ? peer->settings->Domain : "", + peer->settings->Username); } fprintf(stderr, "\n"); fprintf(stderr, "Client requested desktop: %dx%dx%d\n", - client->settings->DesktopWidth, client->settings->DesktopHeight, client->settings->ColorDepth); + peer->settings->DesktopWidth, peer->settings->DesktopHeight, peer->settings->ColorDepth); - if (!client->settings->RemoteFxCodec) + if (!peer->settings->RemoteFxCodec) { fprintf(stderr, "Client does not support RemoteFX\n"); return FALSE; @@ -87,12 +84,12 @@ BOOL shadow_client_post_connect(freerdp_peer* client) //client->settings->DesktopWidth = 1024; //client->settings->DesktopHeight = 768; - client->update->DesktopResize(client->update->context); + peer->update->DesktopResize(peer->update->context); return TRUE; } -BOOL shadow_client_activate(freerdp_peer* client) +BOOL shadow_client_activate(freerdp_peer* peer) { return TRUE; } @@ -143,20 +140,17 @@ int shadow_generate_certificate(rdpSettings* settings) return 0; } -void* shadow_client_thread(void* param) +void* shadow_client_thread(rdpShadowClient* client) { DWORD status; DWORD nCount; HANDLE events[32]; HANDLE ClientEvent; + freerdp_peer* peer; rdpSettings* settings; - rdpShadowClient* context; - freerdp_peer* client = (freerdp_peer*) param; - shadow_client_init(client); - - settings = client->settings; - context = (rdpShadowClient*) client->context; + peer = ((rdpContext*) client)->peer; + settings = peer->settings; shadow_generate_certificate(settings); @@ -167,15 +161,15 @@ void* shadow_client_thread(void* param) settings->TlsSecurity = TRUE; settings->RdpSecurity = FALSE; - client->Capabilities = shadow_client_capabilities; - client->PostConnect = shadow_client_post_connect; - client->Activate = shadow_client_activate; + peer->Capabilities = shadow_client_capabilities; + peer->PostConnect = shadow_client_post_connect; + peer->Activate = shadow_client_activate; - shadow_input_register_callbacks(client->input); + shadow_input_register_callbacks(peer->input); - client->Initialize(client); + peer->Initialize(peer); - ClientEvent = client->GetEventHandle(client); + ClientEvent = peer->GetEventHandle(peer); while (1) { @@ -186,7 +180,7 @@ void* shadow_client_thread(void* param) if (WaitForSingleObject(ClientEvent, 0) == WAIT_OBJECT_0) { - if (!client->CheckFileDescriptor(client)) + if (!peer->CheckFileDescriptor(peer)) { fprintf(stderr, "Failed to check FreeRDP file descriptor\n"); break; @@ -194,20 +188,32 @@ void* shadow_client_thread(void* param) } } - client->Disconnect(client); + peer->Disconnect(peer); - freerdp_peer_context_free(client); - freerdp_peer_free(client); + freerdp_peer_context_free(peer); + freerdp_peer_free(peer); ExitThread(0); return NULL; } -void shadow_client_accepted(freerdp_listener* instance, freerdp_peer* client) +void shadow_client_accepted(freerdp_listener* listener, freerdp_peer* peer) { HANDLE thread; + rdpShadowClient* client; + rdpShadowServer* server; - thread = CreateThread(NULL, 0, - (LPTHREAD_START_ROUTINE) shadow_client_thread, client, 0, NULL); + server = (rdpShadowServer*) listener->info; + + peer->ContextExtra = (void*) server; + peer->ContextSize = sizeof(rdpShadowClient); + peer->ContextNew = (psPeerContextNew) shadow_client_context_new; + peer->ContextFree = (psPeerContextFree) shadow_client_context_free; + freerdp_peer_context_new(peer); + + client = (rdpShadowClient*) peer->context; + + thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) + shadow_client_thread, client, 0, NULL); } From 51354670375e92b65bf9a2f9fe4201672f4b27ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 11 Jul 2014 20:49:56 -0400 Subject: [PATCH 007/170] shadow: stub more components --- include/freerdp/server/shadow.h | 17 +- server/shadow/CMakeLists.txt | 9 +- server/shadow/shadow.c | 12 ++ server/shadow/shadow.h | 5 +- server/shadow/shadow_client.h | 34 ++++ server/shadow/shadow_encoder.c | 152 ++++++++++++++++++ server/shadow/shadow_encoder.h | 73 +++++++++ server/shadow/shadow_input.c | 1 - .../{shadow_update.c => shadow_input.h} | 16 +- server/shadow/shadow_screen.c | 44 +++++ server/shadow/shadow_screen.h | 42 +++++ server/shadow/shadow_surface.c | 43 +++++ server/shadow/shadow_surface.h | 45 ++++++ 13 files changed, 482 insertions(+), 11 deletions(-) create mode 100644 server/shadow/shadow_client.h create mode 100644 server/shadow/shadow_encoder.c create mode 100644 server/shadow/shadow_encoder.h rename server/shadow/{shadow_update.c => shadow_input.h} (76%) create mode 100644 server/shadow/shadow_screen.c create mode 100644 server/shadow/shadow_screen.h create mode 100644 server/shadow/shadow_surface.c create mode 100644 server/shadow/shadow_surface.h diff --git a/include/freerdp/server/shadow.h b/include/freerdp/server/shadow.h index 08a0a8048..a759b769b 100644 --- a/include/freerdp/server/shadow.h +++ b/include/freerdp/server/shadow.h @@ -27,22 +27,29 @@ typedef struct rdp_shadow_client rdpShadowClient; typedef struct rdp_shadow_server rdpShadowServer; +typedef struct rdp_shadow_screen rdpShadowScreen; +typedef struct rdp_shadow_surface rdpShadowSurface; +typedef struct rdp_shadow_encoder rdpShadowEncoder; struct rdp_shadow_client { rdpContext context; - rdpShadowServer* server; void* ext; + HANDLE thread; + rdpShadowServer* server; }; struct rdp_shadow_server { - DWORD port; - HANDLE thread; - freerdp_listener* listener; - void* ext; + HANDLE thread; + rdpShadowScreen* screen; + rdpShadowSurface* surface; + rdpShadowEncoder* encoder; + + DWORD port; + freerdp_listener* listener; }; #endif /* FREERDP_SERVER_SHADOW_H */ diff --git a/server/shadow/CMakeLists.txt b/server/shadow/CMakeLists.txt index 3ef9e46fe..af7258a30 100644 --- a/server/shadow/CMakeLists.txt +++ b/server/shadow/CMakeLists.txt @@ -117,8 +117,15 @@ endif() set(${MODULE_PREFIX}_SRCS shadow_client.c + shadow_client.h shadow_input.c - shadow_update.c + shadow_input.h + shadow_screen.c + shadow_screen.h + shadow_surface.c + shadow_surface.h + shadow_encoder.c + shadow_encoder.h shadow.c shadow.h) diff --git a/server/shadow/shadow.c b/server/shadow/shadow.c index 42698cc1b..bb75d5ba0 100644 --- a/server/shadow/shadow.c +++ b/server/shadow/shadow.c @@ -106,6 +106,16 @@ rdpShadowServer* shadow_server_new(int argc, char** argv) server->listener->info = (void*) server; server->listener->PeerAccepted = shadow_client_accepted; + server->screen = shadow_screen_new(server); + + if (!server->screen) + return NULL; + + server->encoder = shadow_encoder_new(server); + + if (!server->encoder) + return NULL; + server->ext = x11_shadow_server_new(server); if (!server->ext) @@ -121,6 +131,8 @@ void shadow_server_free(rdpShadowServer* server) freerdp_listener_free(server->listener); + shadow_encoder_free(server->encoder); + x11_shadow_server_free(server->ext); free(server); diff --git a/server/shadow/shadow.h b/server/shadow/shadow.h index 033e79fdb..c3a4021be 100644 --- a/server/shadow/shadow.h +++ b/server/shadow/shadow.h @@ -1,6 +1,5 @@ /** * FreeRDP: A Remote Desktop Protocol Implementation - * FreeRDP Shadow Server * * Copyright 2014 Marc-Andre Moreau * @@ -24,6 +23,10 @@ #include "X11/x11_shadow.h" +#include "shadow_screen.h" +#include "shadow_surface.h" +#include "shadow_encoder.h" + #ifdef __cplusplus extern "C" { #endif diff --git a/server/shadow/shadow_client.h b/server/shadow/shadow_client.h new file mode 100644 index 000000000..ce2861387 --- /dev/null +++ b/server/shadow/shadow_client.h @@ -0,0 +1,34 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FREERDP_SHADOW_SERVER_CLIENT_H +#define FREERDP_SHADOW_SERVER_CLIENT_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + + + +#ifdef __cplusplus +} +#endif + +#endif /* FREERDP_SHADOW_SERVER_CLIENT_H */ diff --git a/server/shadow/shadow_encoder.c b/server/shadow/shadow_encoder.c new file mode 100644 index 000000000..e7189c384 --- /dev/null +++ b/server/shadow/shadow_encoder.c @@ -0,0 +1,152 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include "shadow_encoder.h" + +int shadow_encoder_grid_init(rdpShadowEncoder* encoder) +{ + int i, j, k; + int tileSize; + int tileCount; + + encoder->gridWidth = ((encoder->width + (encoder->maxTileWidth - 1)) / encoder->maxTileWidth); + encoder->gridHeight = ((encoder->height + (encoder->maxTileHeight - 1)) / encoder->maxTileHeight); + + tileSize = encoder->maxTileWidth * encoder->maxTileHeight * 4; + tileCount = encoder->gridWidth * encoder->gridHeight; + + encoder->gridBuffer = (BYTE*) malloc(tileSize * tileCount); + + if (!encoder->gridBuffer) + return -1; + + encoder->grid = (BYTE**) malloc(tileCount * sizeof(BYTE*)); + + if (!encoder->grid) + return -1; + + for (i = 0; i < encoder->gridHeight; i++) + { + for (j = 0; j < encoder->gridWidth; j++) + { + k = (i * encoder->gridHeight) + j; + encoder->grid[k] = &(encoder->gridBuffer[k * tileSize]); + } + } + + return 0; +} + +int shadow_encoder_grid_uninit(rdpShadowEncoder* encoder) +{ + if (encoder->gridBuffer) + { + free(encoder->gridBuffer); + encoder->gridBuffer = NULL; + } + + if (encoder->grid) + { + free(encoder->grid); + encoder->grid = NULL; + } + + encoder->gridWidth = 0; + encoder->gridHeight = 0; + + return 0; +} + +rdpShadowEncoder* shadow_encoder_new(rdpShadowServer* server) +{ + DWORD planarFlags; + rdpShadowEncoder* encoder; + + encoder = (rdpShadowEncoder*) calloc(1, sizeof(rdpShadowEncoder)); + + if (!encoder) + return NULL; + + encoder->server = server; + + encoder->width = 1024; + encoder->height = 768; + + encoder->bitsPerPixel = 32; + encoder->bytesPerPixel = 4; + encoder->scanline = (encoder->width + (encoder->width % 4)) * 4; + + encoder->data = (BYTE*) malloc(encoder->scanline * encoder->height); + + if (!encoder->data) + return NULL; + + encoder->maxTileWidth = 64; + encoder->maxTileHeight = 64; + + encoder->bs = Stream_New(NULL, encoder->maxTileWidth * encoder->maxTileHeight * 4); + encoder->bts = Stream_New(NULL, encoder->maxTileWidth * encoder->maxTileHeight * 4); + + planarFlags = PLANAR_FORMAT_HEADER_NA; + planarFlags |= PLANAR_FORMAT_HEADER_RLE; + + encoder->planar = freerdp_bitmap_planar_context_new(planarFlags, + encoder->maxTileWidth, encoder->maxTileHeight); + + encoder->rfx = rfx_context_new(TRUE); + encoder->rfx_s = Stream_New(NULL, encoder->maxTileWidth * encoder->maxTileHeight * 4); + + encoder->rfx->mode = RLGR3; + encoder->rfx->width = encoder->width; + encoder->rfx->height = encoder->height; + + encoder->nsc = nsc_context_new(); + encoder->nsc_s = Stream_New(NULL, encoder->maxTileWidth * encoder->maxTileHeight * 4); + + rfx_context_set_pixel_format(encoder->rfx, RDP_PIXEL_FORMAT_B8G8R8A8); + nsc_context_set_pixel_format(encoder->nsc, RDP_PIXEL_FORMAT_B8G8R8A8); + + shadow_encoder_grid_init(encoder); + + return encoder; +} + +void shadow_encoder_free(rdpShadowEncoder* encoder) +{ + if (!encoder) + return; + + Stream_Free(encoder->bs, TRUE); + Stream_Free(encoder->bts, TRUE); + + Stream_Free(encoder->rfx_s, TRUE); + rfx_context_free(encoder->rfx); + + Stream_Free(encoder->nsc_s, TRUE); + nsc_context_free(encoder->nsc); + + freerdp_bitmap_planar_context_free(encoder->planar); + + shadow_encoder_grid_uninit(encoder); + + free(encoder); +} diff --git a/server/shadow/shadow_encoder.h b/server/shadow/shadow_encoder.h new file mode 100644 index 000000000..ddda3de0d --- /dev/null +++ b/server/shadow/shadow_encoder.h @@ -0,0 +1,73 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FREERDP_SHADOW_SERVER_ENCODER_H +#define FREERDP_SHADOW_SERVER_ENCODER_H + +#include +#include + +#include +#include +#include +#include + +#include + +struct rdp_shadow_encoder +{ + rdpShadowServer* server; + + BYTE* data; + int width; + int height; + int scanline; + + UINT32 bitsPerPixel; + UINT32 bytesPerPixel; + + BYTE** grid; + int gridWidth; + int gridHeight; + BYTE* gridBuffer; + int maxTileWidth; + int maxTileHeight; + + wStream* rfx_s; + RFX_CONTEXT* rfx; + + wStream* nsc_s; + NSC_CONTEXT* nsc; + + wStream* bs; + wStream* bts; + BITMAP_PLANAR_CONTEXT* planar; +}; + +#ifdef __cplusplus +extern "C" { +#endif + +rdpShadowEncoder* shadow_encoder_new(rdpShadowServer* server); +void shadow_encoder_free(rdpShadowEncoder* encoder); + +#ifdef __cplusplus +} +#endif + +#endif /* FREERDP_SHADOW_SERVER_ENCODER_H */ diff --git a/server/shadow/shadow_input.c b/server/shadow/shadow_input.c index 08c36a6c3..26f26eaac 100644 --- a/server/shadow/shadow_input.c +++ b/server/shadow/shadow_input.c @@ -55,4 +55,3 @@ void shadow_input_register_callbacks(rdpInput* input) input->MouseEvent = shadow_input_mouse_event; input->ExtendedMouseEvent = shadow_input_extended_mouse_event; } - diff --git a/server/shadow/shadow_update.c b/server/shadow/shadow_input.h similarity index 76% rename from server/shadow/shadow_update.c rename to server/shadow/shadow_input.h index 17db5a339..2e785259d 100644 --- a/server/shadow/shadow_update.c +++ b/server/shadow/shadow_input.h @@ -16,9 +16,19 @@ * limitations under the License. */ -#ifdef HAVE_CONFIG_H -#include "config.h" +#ifndef FREERDP_SHADOW_SERVER_INPUT_H +#define FREERDP_SHADOW_SERVER_INPUT_H + +#include + +#ifdef __cplusplus +extern "C" { #endif -#include "shadow.h" + +#ifdef __cplusplus +} +#endif + +#endif /* FREERDP_SHADOW_SERVER_INPUT_H */ diff --git a/server/shadow/shadow_screen.c b/server/shadow/shadow_screen.c new file mode 100644 index 000000000..81dfa8fca --- /dev/null +++ b/server/shadow/shadow_screen.c @@ -0,0 +1,44 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include "shadow_screen.h" + +rdpShadowScreen* shadow_screen_new(rdpShadowServer* server) +{ + rdpShadowScreen* screen; + + screen = (rdpShadowScreen*) calloc(1, sizeof(rdpShadowScreen)); + + if (!screen) + return NULL; + + screen->server = server; + + return screen; +} + +void shadow_screen_free(rdpShadowScreen* screen) +{ + if (!screen) + return; +} + diff --git a/server/shadow/shadow_screen.h b/server/shadow/shadow_screen.h new file mode 100644 index 000000000..b5a0db0eb --- /dev/null +++ b/server/shadow/shadow_screen.h @@ -0,0 +1,42 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FREERDP_SHADOW_SERVER_SCREEN_H +#define FREERDP_SHADOW_SERVER_SCREEN_H + +#include + +struct rdp_shadow_screen +{ + rdpShadowServer* server; + + rdpShadowSurface* primary; +}; + +#ifdef __cplusplus +extern "C" { +#endif + +rdpShadowScreen* shadow_screen_new(rdpShadowServer* server); +void shadow_screen_free(rdpShadowScreen* screen); + +#ifdef __cplusplus +} +#endif + +#endif /* FREERDP_SHADOW_SERVER_SCREEN_H */ diff --git a/server/shadow/shadow_surface.c b/server/shadow/shadow_surface.c new file mode 100644 index 000000000..97f060f59 --- /dev/null +++ b/server/shadow/shadow_surface.c @@ -0,0 +1,43 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include "shadow_surface.h" + +rdpShadowSurface* shadow_surface_new(rdpShadowServer* server) +{ + rdpShadowSurface* surface; + + surface = (rdpShadowSurface*) calloc(1, sizeof(rdpShadowSurface)); + + if (!surface) + return NULL; + + surface->server = server; + + return surface; +} + +void shadow_surface_free(rdpShadowSurface* surface) +{ + if (!surface) + return; +} diff --git a/server/shadow/shadow_surface.h b/server/shadow/shadow_surface.h new file mode 100644 index 000000000..b0dc71c2b --- /dev/null +++ b/server/shadow/shadow_surface.h @@ -0,0 +1,45 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FREERDP_SHADOW_SERVER_SURFACE_H +#define FREERDP_SHADOW_SERVER_SURFACE_H + +#include + +struct rdp_shadow_surface +{ + rdpShadowServer* server; + + int width; + int height; + int scanline; + BYTE* data; +}; + +#ifdef __cplusplus +extern "C" { +#endif + +rdpShadowSurface* shadow_surface_new(rdpShadowServer* server); +void shadow_surface_free(rdpShadowSurface* surface); + +#ifdef __cplusplus +} +#endif + +#endif /* FREERDP_SHADOW_SERVER_SURFACE_H */ From 3d57659efb51c7b288aa4d413b5db991de7302cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 11 Jul 2014 23:01:34 -0400 Subject: [PATCH 008/170] shadow: start structuring X11 code as shadow subsystem --- include/freerdp/server/shadow.h | 10 ++ server/shadow/X11/x11_client.c | 289 -------------------------------- server/shadow/X11/x11_input.c | 74 +++----- server/shadow/X11/x11_shadow.c | 289 +++++++++++++++++++++++++++++++- server/shadow/X11/x11_shadow.h | 34 +--- server/shadow/X11/x11_update.c | 113 +++---------- server/shadow/shadow.c | 15 +- server/shadow/shadow_client.c | 4 +- 8 files changed, 352 insertions(+), 476 deletions(-) diff --git a/include/freerdp/server/shadow.h b/include/freerdp/server/shadow.h index a759b769b..f49fa15b4 100644 --- a/include/freerdp/server/shadow.h +++ b/include/freerdp/server/shadow.h @@ -30,6 +30,7 @@ typedef struct rdp_shadow_server rdpShadowServer; typedef struct rdp_shadow_screen rdpShadowScreen; typedef struct rdp_shadow_surface rdpShadowSurface; typedef struct rdp_shadow_encoder rdpShadowEncoder; +typedef struct rdp_shadow_subsystem rdpShadowSubsystem; struct rdp_shadow_client { @@ -47,10 +48,19 @@ struct rdp_shadow_server rdpShadowScreen* screen; rdpShadowSurface* surface; rdpShadowEncoder* encoder; + rdpShadowSubsystem* subsystem; DWORD port; freerdp_listener* listener; }; +#define RDP_SHADOW_SUBSYSTEM_COMMON() \ + rdpShadowServer* server + +struct rdp_shadow_subsystem +{ + RDP_SHADOW_SUBSYSTEM_COMMON(); +}; + #endif /* FREERDP_SERVER_SHADOW_H */ diff --git a/server/shadow/X11/x11_client.c b/server/shadow/X11/x11_client.c index 2796ab076..79d254b6f 100644 --- a/server/shadow/X11/x11_client.c +++ b/server/shadow/X11/x11_client.c @@ -38,294 +38,5 @@ #include #include -#include -#include -#include - -#include - #include "x11_shadow.h" -#ifdef WITH_XDAMAGE - -void x11_shadow_xdamage_init(x11ShadowServer* server) -{ - int damage_event; - int damage_error; - int major, minor; - XGCValues values; - - if (XDamageQueryExtension(server->display, &damage_event, &damage_error) == 0) - { - fprintf(stderr, "XDamageQueryExtension failed\n"); - return; - } - - XDamageQueryVersion(server->display, &major, &minor); - - if (XDamageQueryVersion(server->display, &major, &minor) == 0) - { - fprintf(stderr, "XDamageQueryVersion failed\n"); - return; - } - else if (major < 1) - { - fprintf(stderr, "XDamageQueryVersion failed: major:%d minor:%d\n", major, minor); - return; - } - - server->xdamage_notify_event = damage_event + XDamageNotify; - server->xdamage = XDamageCreate(server->display, server->root_window, XDamageReportDeltaRectangles); - - if (server->xdamage == None) - { - fprintf(stderr, "XDamageCreate failed\n"); - return; - } - -#ifdef WITH_XFIXES - server->xdamage_region = XFixesCreateRegion(server->display, NULL, 0); - - if (server->xdamage_region == None) - { - fprintf(stderr, "XFixesCreateRegion failed\n"); - XDamageDestroy(server->display, server->xdamage); - server->xdamage = None; - return; - } -#endif - - values.subwindow_mode = IncludeInferiors; - server->xdamage_gc = XCreateGC(server->display, server->root_window, GCSubwindowMode, &values); - XSetFunction(server->display, server->xdamage_gc, GXcopy); -} - -#endif - -int x11_shadow_xshm_init(x11ShadowServer* server) -{ - Bool pixmaps; - int major, minor; - - if (XShmQueryExtension(server->display) != False) - { - XShmQueryVersion(server->display, &major, &minor, &pixmaps); - - if (pixmaps != True) - { - fprintf(stderr, "XShmQueryVersion failed\n"); - return -1; - } - } - else - { - fprintf(stderr, "XShmQueryExtension failed\n"); - return -1; - } - - server->fb_shm_info.shmid = -1; - server->fb_shm_info.shmaddr = (char*) -1; - - server->fb_image = XShmCreateImage(server->display, server->visual, server->depth, - ZPixmap, NULL, &(server->fb_shm_info), server->width, server->height); - - if (!server->fb_image) - { - fprintf(stderr, "XShmCreateImage failed\n"); - return -1; - } - - server->fb_shm_info.shmid = shmget(IPC_PRIVATE, - server->fb_image->bytes_per_line * server->fb_image->height, IPC_CREAT | 0600); - - if (server->fb_shm_info.shmid == -1) - { - fprintf(stderr, "shmget failed\n"); - return -1; - } - - server->fb_shm_info.readOnly = False; - server->fb_shm_info.shmaddr = shmat(server->fb_shm_info.shmid, 0, 0); - server->fb_image->data = server->fb_shm_info.shmaddr; - - if (server->fb_shm_info.shmaddr == ((char*) -1)) - { - fprintf(stderr, "shmat failed\n"); - return -1; - } - - XShmAttach(server->display, &(server->fb_shm_info)); - XSync(server->display, False); - - shmctl(server->fb_shm_info.shmid, IPC_RMID, 0); - - fprintf(stderr, "display: %p root_window: %p width: %d height: %d depth: %d\n", - server->display, (void*) server->root_window, server->fb_image->width, server->fb_image->height, server->fb_image->depth); - - server->fb_pixmap = XShmCreatePixmap(server->display, - server->root_window, server->fb_image->data, &(server->fb_shm_info), - server->fb_image->width, server->fb_image->height, server->fb_image->depth); - - return 0; -} - -x11ShadowClient* x11_shadow_client_new(rdpShadowClient* rdp) -{ - int i; - int pf_count; - int vi_count; - XVisualInfo* vi; - XVisualInfo* vis; - XVisualInfo template; - XPixmapFormatValues* pf; - XPixmapFormatValues* pfs; - x11ShadowServer* server; - x11ShadowClient* client; - - client = (x11ShadowClient*) calloc(1, sizeof(x11ShadowClient)); - - if (!client) - return NULL; - - server = (x11ShadowServer*) rdp->server->ext; - client->server = server; - - /** - * Recent X11 servers drop support for shared pixmaps - * To see if your X11 server supports shared pixmaps, use: - * xdpyinfo -ext MIT-SHM | grep "shared pixmaps" - */ - server->use_xshm = TRUE; - - setenv("DISPLAY", ":0", 1); /* Set DISPLAY variable if not already set */ - - if (!XInitThreads()) - fprintf(stderr, "warning: XInitThreads() failure\n"); - - server->display = XOpenDisplay(NULL); - - if (!server->display) - { - fprintf(stderr, "failed to open display: %s\n", XDisplayName(NULL)); - exit(1); - } - - server->xfds = ConnectionNumber(server->display); - server->number = DefaultScreen(server->display); - server->screen = ScreenOfDisplay(server->display, server->number); - server->depth = DefaultDepthOfScreen(server->screen); - server->width = WidthOfScreen(server->screen); - server->height = HeightOfScreen(server->screen); - server->root_window = DefaultRootWindow(server->display); - - pfs = XListPixmapFormats(server->display, &pf_count); - - if (!pfs) - { - fprintf(stderr, "XListPixmapFormats failed\n"); - exit(1); - } - - for (i = 0; i < pf_count; i++) - { - pf = pfs + i; - - if (pf->depth == server->depth) - { - server->bpp = pf->bits_per_pixel; - server->scanline_pad = pf->scanline_pad; - break; - } - } - XFree(pfs); - - ZeroMemory(&template, sizeof(template)); - template.class = TrueColor; - template.screen = server->number; - - vis = XGetVisualInfo(server->display, VisualClassMask | VisualScreenMask, &template, &vi_count); - - if (!vis) - { - fprintf(stderr, "XGetVisualInfo failed\n"); - exit(1); - } - - for (i = 0; i < vi_count; i++) - { - vi = vis + i; - - if (vi->depth == server->depth) - { - server->visual = vi->visual; - break; - } - } - XFree(vis); - - XSelectInput(server->display, server->root_window, SubstructureNotifyMask); - - if (server->use_xshm) - { - if (x11_shadow_xshm_init(server) < 0) - server->use_xshm = FALSE; - } - - if (server->use_xshm) - printf("Using X Shared Memory Extension (XShm)\n"); - -#ifdef WITH_XDAMAGE - x11_shadow_xdamage_init(server); -#endif - - x11_shadow_cursor_init(server); - - server->bytesPerPixel = 4; - server->activePeerCount = 0; - - freerdp_keyboard_init(0); - - client->rfx_context = rfx_context_new(TRUE); - client->rfx_context->mode = RLGR3; - client->rfx_context->width = server->width; - client->rfx_context->height = server->height; - - rfx_context_set_pixel_format(client->rfx_context, RDP_PIXEL_FORMAT_B8G8R8A8); - - client->s = Stream_New(NULL, 65536); - Stream_Clear(client->s); - - return client; -} - -void x11_shadow_client_free(x11ShadowClient* client) -{ - x11ShadowServer* server; - - if (!client) - return; - - server = client->server; - - if (server->display) - XCloseDisplay(server->display); - - Stream_Free(client->s, TRUE); - rfx_context_free(client->rfx_context); -} - -BOOL x11_shadow_peer_activate(freerdp_peer* client) -{ - x11ShadowClient* context = (x11ShadowClient*) client->context; - x11ShadowServer* server = context->server; - - rfx_context_reset(context->rfx_context); - context->activated = TRUE; - - server->activePeerCount++; - - context->monitorThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) - x11_shadow_update_thread, (void*) client, 0, NULL); - - return TRUE; -} diff --git a/server/shadow/X11/x11_input.c b/server/shadow/X11/x11_input.c index f614abf3f..6601def85 100644 --- a/server/shadow/X11/x11_input.c +++ b/server/shadow/X11/x11_input.c @@ -23,46 +23,22 @@ #include -#include - #include #include #include "x11_shadow.h" -int x11_shadow_cursor_init(x11ShadowServer* server) -{ -#ifdef WITH_XFIXES - int event; - int error; - - if (!XFixesQueryExtension(server->display, &event, &error)) - { - fprintf(stderr, "XFixesQueryExtension failed\n"); - return -1; - } - - server->xfixes_notify_event = event + XFixesCursorNotify; - - XFixesSelectCursorInput(server->display, DefaultRootWindow(server->display), XFixesDisplayCursorNotifyMask); -#endif - - return 0; -} - -void x11_shadow_input_synchronize_event(rdpInput* input, UINT32 flags) +void x11_shadow_input_synchronize_event(x11ShadowSubsystem* subsystem, UINT32 flags) { fprintf(stderr, "Client sent a synchronize event (flags:0x%X)\n", flags); } -void x11_shadow_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) +void x11_shadow_input_keyboard_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 code) { #ifdef WITH_XTEST DWORD vkcode; DWORD keycode; BOOL extended = FALSE; - x11ShadowClient* context = (x11ShadowClient*) input->context; - x11ShadowServer* server = context->server; if (flags & KBD_FLAGS_EXTENDED) extended = TRUE; @@ -75,32 +51,30 @@ void x11_shadow_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) if (keycode != 0) { - XTestGrabControl(server->display, True); + XTestGrabControl(subsystem->display, True); if (flags & KBD_FLAGS_DOWN) - XTestFakeKeyEvent(server->display, keycode, True, 0); + XTestFakeKeyEvent(subsystem->display, keycode, True, 0); else if (flags & KBD_FLAGS_RELEASE) - XTestFakeKeyEvent(server->display, keycode, False, 0); + XTestFakeKeyEvent(subsystem->display, keycode, False, 0); - XTestGrabControl(server->display, False); + XTestGrabControl(subsystem->display, False); } #endif } -void x11_shadow_input_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) +void x11_shadow_input_unicode_keyboard_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 code) { fprintf(stderr, "Client sent a unicode keyboard event (flags:0x%X code:0x%X)\n", flags, code); } -void x11_shadow_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) +void x11_shadow_input_mouse_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 x, UINT16 y) { #ifdef WITH_XTEST int button = 0; BOOL down = FALSE; - x11ShadowClient* context = (x11ShadowClient*) input->context; - x11ShadowServer* server = context->server; - XTestGrabControl(server->display, True); + XTestGrabControl(subsystem->display, True); if (flags & PTR_FLAGS_WHEEL) { @@ -111,13 +85,13 @@ void x11_shadow_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT1 button = (negative) ? 5 : 4; - XTestFakeButtonEvent(server->display, button, True, 0); - XTestFakeButtonEvent(server->display, button, False, 0); + XTestFakeButtonEvent(subsystem->display, button, True, 0); + XTestFakeButtonEvent(subsystem->display, button, False, 0); } else { if (flags & PTR_FLAGS_MOVE) - XTestFakeMotionEvent(server->display, 0, x, y, 0); + XTestFakeMotionEvent(subsystem->display, 0, x, y, 0); if (flags & PTR_FLAGS_BUTTON1) button = 1; @@ -130,23 +104,21 @@ void x11_shadow_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT1 down = TRUE; if (button != 0) - XTestFakeButtonEvent(server->display, button, down, 0); + XTestFakeButtonEvent(subsystem->display, button, down, 0); } - XTestGrabControl(server->display, False); + XTestGrabControl(subsystem->display, False); #endif } -void x11_shadow_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) +void x11_shadow_input_extended_mouse_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 x, UINT16 y) { #ifdef WITH_XTEST int button = 0; BOOL down = FALSE; - x11ShadowClient* context = (x11ShadowClient*) input->context; - x11ShadowServer* server = context->server; - XTestGrabControl(server->display, True); - XTestFakeMotionEvent(server->display, 0, x, y, CurrentTime); + XTestGrabControl(subsystem->display, True); + XTestFakeMotionEvent(subsystem->display, 0, x, y, CurrentTime); if (flags & PTR_XFLAGS_BUTTON1) button = 8; @@ -157,17 +129,9 @@ void x11_shadow_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 down = TRUE; if (button != 0) - XTestFakeButtonEvent(server->display, button, down, 0); + XTestFakeButtonEvent(subsystem->display, button, down, 0); - XTestGrabControl(server->display, False); + XTestGrabControl(subsystem->display, False); #endif } -void x11_shadow_input_register_callbacks(rdpInput* input) -{ - input->SynchronizeEvent = x11_shadow_input_synchronize_event; - input->KeyboardEvent = x11_shadow_input_keyboard_event; - input->UnicodeKeyboardEvent = x11_shadow_input_unicode_keyboard_event; - input->MouseEvent = x11_shadow_input_mouse_event; - input->ExtendedMouseEvent = x11_shadow_input_extended_mouse_event; -} diff --git a/server/shadow/X11/x11_shadow.c b/server/shadow/X11/x11_shadow.c index d599f42e9..da77f4266 100644 --- a/server/shadow/X11/x11_shadow.c +++ b/server/shadow/X11/x11_shadow.c @@ -20,7 +20,10 @@ #include #include #include +#include +#include +#include #include #include @@ -29,24 +32,292 @@ #include "x11_shadow.h" -x11ShadowServer* x11_shadow_server_new(rdpShadowServer* rdp) +int x11_shadow_cursor_init(x11ShadowSubsystem* subsystem) { - x11ShadowServer* server; +#ifdef WITH_XFIXES + int event; + int error; - server = (x11ShadowServer*) calloc(1, sizeof(x11ShadowServer)); + if (!XFixesQueryExtension(subsystem->display, &event, &error)) + { + fprintf(stderr, "XFixesQueryExtension failed\n"); + return -1; + } - if (!server) + subsystem->xfixes_notify_event = event + XFixesCursorNotify; + + XFixesSelectCursorInput(subsystem->display, DefaultRootWindow(subsystem->display), XFixesDisplayCursorNotifyMask); +#endif + + return 0; +} + +#ifdef WITH_XDAMAGE + +void x11_shadow_xdamage_init(x11ShadowSubsystem* subsystem) +{ + int damage_event; + int damage_error; + int major, minor; + XGCValues values; + + if (XDamageQueryExtension(subsystem->display, &damage_event, &damage_error) == 0) + { + fprintf(stderr, "XDamageQueryExtension failed\n"); + return; + } + + XDamageQueryVersion(subsystem->display, &major, &minor); + + if (XDamageQueryVersion(subsystem->display, &major, &minor) == 0) + { + fprintf(stderr, "XDamageQueryVersion failed\n"); + return; + } + else if (major < 1) + { + fprintf(stderr, "XDamageQueryVersion failed: major:%d minor:%d\n", major, minor); + return; + } + + subsystem->xdamage_notify_event = damage_event + XDamageNotify; + subsystem->xdamage = XDamageCreate(subsystem->display, subsystem->root_window, XDamageReportDeltaRectangles); + + if (subsystem->xdamage == None) + { + fprintf(stderr, "XDamageCreate failed\n"); + return; + } + +#ifdef WITH_XFIXES + subsystem->xdamage_region = XFixesCreateRegion(subsystem->display, NULL, 0); + + if (subsystem->xdamage_region == None) + { + fprintf(stderr, "XFixesCreateRegion failed\n"); + XDamageDestroy(subsystem->display, subsystem->xdamage); + subsystem->xdamage = None; + return; + } +#endif + + values.subwindow_mode = IncludeInferiors; + subsystem->xdamage_gc = XCreateGC(subsystem->display, subsystem->root_window, GCSubwindowMode, &values); + XSetFunction(subsystem->display, subsystem->xdamage_gc, GXcopy); +} + +#endif + +int x11_shadow_xshm_init(x11ShadowSubsystem* server) +{ + Bool pixmaps; + int major, minor; + + if (XShmQueryExtension(server->display) != False) + { + XShmQueryVersion(server->display, &major, &minor, &pixmaps); + + if (pixmaps != True) + { + fprintf(stderr, "XShmQueryVersion failed\n"); + return -1; + } + } + else + { + fprintf(stderr, "XShmQueryExtension failed\n"); + return -1; + } + + server->fb_shm_info.shmid = -1; + server->fb_shm_info.shmaddr = (char*) -1; + + server->fb_image = XShmCreateImage(server->display, server->visual, server->depth, + ZPixmap, NULL, &(server->fb_shm_info), server->width, server->height); + + if (!server->fb_image) + { + fprintf(stderr, "XShmCreateImage failed\n"); + return -1; + } + + server->fb_shm_info.shmid = shmget(IPC_PRIVATE, + server->fb_image->bytes_per_line * server->fb_image->height, IPC_CREAT | 0600); + + if (server->fb_shm_info.shmid == -1) + { + fprintf(stderr, "shmget failed\n"); + return -1; + } + + server->fb_shm_info.readOnly = False; + server->fb_shm_info.shmaddr = shmat(server->fb_shm_info.shmid, 0, 0); + server->fb_image->data = server->fb_shm_info.shmaddr; + + if (server->fb_shm_info.shmaddr == ((char*) -1)) + { + fprintf(stderr, "shmat failed\n"); + return -1; + } + + XShmAttach(server->display, &(server->fb_shm_info)); + XSync(server->display, False); + + shmctl(server->fb_shm_info.shmid, IPC_RMID, 0); + + fprintf(stderr, "display: %p root_window: %p width: %d height: %d depth: %d\n", + server->display, (void*) server->root_window, server->fb_image->width, server->fb_image->height, server->fb_image->depth); + + server->fb_pixmap = XShmCreatePixmap(server->display, + server->root_window, server->fb_image->data, &(server->fb_shm_info), + server->fb_image->width, server->fb_image->height, server->fb_image->depth); + + return 0; +} + +int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) +{ + int i; + int pf_count; + int vi_count; + XVisualInfo* vi; + XVisualInfo* vis; + XVisualInfo template; + XPixmapFormatValues* pf; + XPixmapFormatValues* pfs; + + /** + * Recent X11 servers drop support for shared pixmaps + * To see if your X11 server supports shared pixmaps, use: + * xdpyinfo -ext MIT-SHM | grep "shared pixmaps" + */ + subsystem->use_xshm = TRUE; + + setenv("DISPLAY", ":0", 1); /* Set DISPLAY variable if not already set */ + + if (!XInitThreads()) + fprintf(stderr, "warning: XInitThreads() failure\n"); + + subsystem->display = XOpenDisplay(NULL); + + if (!subsystem->display) + { + fprintf(stderr, "failed to open display: %s\n", XDisplayName(NULL)); + exit(1); + } + + subsystem->xfds = ConnectionNumber(subsystem->display); + subsystem->number = DefaultScreen(subsystem->display); + subsystem->screen = ScreenOfDisplay(subsystem->display, subsystem->number); + subsystem->depth = DefaultDepthOfScreen(subsystem->screen); + subsystem->width = WidthOfScreen(subsystem->screen); + subsystem->height = HeightOfScreen(subsystem->screen); + subsystem->root_window = DefaultRootWindow(subsystem->display); + + pfs = XListPixmapFormats(subsystem->display, &pf_count); + + if (!pfs) + { + fprintf(stderr, "XListPixmapFormats failed\n"); + exit(1); + } + + for (i = 0; i < pf_count; i++) + { + pf = pfs + i; + + if (pf->depth == subsystem->depth) + { + subsystem->bpp = pf->bits_per_pixel; + subsystem->scanline_pad = pf->scanline_pad; + break; + } + } + XFree(pfs); + + ZeroMemory(&template, sizeof(template)); + template.class = TrueColor; + template.screen = subsystem->number; + + vis = XGetVisualInfo(subsystem->display, VisualClassMask | VisualScreenMask, &template, &vi_count); + + if (!vis) + { + fprintf(stderr, "XGetVisualInfo failed\n"); + exit(1); + } + + for (i = 0; i < vi_count; i++) + { + vi = vis + i; + + if (vi->depth == subsystem->depth) + { + subsystem->visual = vi->visual; + break; + } + } + XFree(vis); + + XSelectInput(subsystem->display, subsystem->root_window, SubstructureNotifyMask); + + if (subsystem->use_xshm) + { + if (x11_shadow_xshm_init(subsystem) < 0) + subsystem->use_xshm = FALSE; + } + + if (subsystem->use_xshm) + printf("Using X Shared Memory Extension (XShm)\n"); + +#ifdef WITH_XDAMAGE + x11_shadow_xdamage_init(subsystem); +#endif + + x11_shadow_cursor_init(subsystem); + + subsystem->bytesPerPixel = 4; + + return 1; +} + +int x11_shadow_subsystem_uninit(x11ShadowSubsystem* subsystem) +{ + if (!subsystem) + return -1; + + if (subsystem->display) + { + XCloseDisplay(subsystem->display); + subsystem->display = NULL; + } + + return 1; +} + +rdpShadowSubsystem* x11_shadow_subsystem_new(rdpShadowServer* server) +{ + x11ShadowSubsystem* subsystem; + + subsystem = (x11ShadowSubsystem*) calloc(1, sizeof(x11ShadowSubsystem)); + + if (!subsystem) return NULL; - signal(SIGPIPE, SIG_IGN); + subsystem->server = server; - return server; + x11_shadow_subsystem_init(subsystem); + + return (rdpShadowSubsystem*) subsystem; } -void x11_shadow_server_free(x11ShadowServer* server) +void x11_shadow_subsystem_free(rdpShadowSubsystem* subsystem) { - if (!server) + if (!subsystem) return; - free(server); + x11_shadow_subsystem_uninit((x11ShadowSubsystem*) subsystem); + + free(subsystem); } + diff --git a/server/shadow/X11/x11_shadow.h b/server/shadow/X11/x11_shadow.h index 59783a068..ea5e77fcc 100644 --- a/server/shadow/X11/x11_shadow.h +++ b/server/shadow/X11/x11_shadow.h @@ -21,8 +21,7 @@ #include -typedef struct x11_shadow_client x11ShadowClient; -typedef struct x11_shadow_server x11ShadowServer; +typedef struct x11_shadow_subsystem x11ShadowSubsystem; #include #include @@ -55,11 +54,11 @@ typedef struct x11_shadow_server x11ShadowServer; #include #endif -struct x11_shadow_server +struct x11_shadow_subsystem { - DWORD port; + RDP_SHADOW_SUBSYSTEM_COMMON(); + HANDLE thread; - freerdp_listener* listener; int bpp; int xfds; @@ -73,7 +72,6 @@ struct x11_shadow_server Display* display; int scanline_pad; int bytesPerPixel; - int activePeerCount; BOOL use_xshm; XImage* fb_image; @@ -93,32 +91,12 @@ struct x11_shadow_server #endif }; -struct x11_shadow_client -{ - rdpContext _p; - - wStream* s; - BOOL activated; - HANDLE monitorThread; - RFX_CONTEXT* rfx_context; - x11ShadowServer* server; -}; - #ifdef __cplusplus extern "C" { #endif -FREERDP_API x11ShadowServer* x11_shadow_server_new(rdpShadowServer* rdp); -FREERDP_API void x11_shadow_server_free(x11ShadowServer* server); - -x11ShadowClient* x11_shadow_client_new(rdpShadowClient* rdp); -void x11_shadow_client_free(x11ShadowClient* client); - -void* x11_shadow_update_thread(void* param); - -int x11_shadow_cursor_init(x11ShadowServer* server); -void x11_shadow_input_register_callbacks(rdpInput* input); -int x11_shadow_update_encode(freerdp_peer* client, int x, int y, int width, int height); +rdpShadowSubsystem* x11_shadow_subsystem_new(rdpShadowServer* server); +void x11_shadow_subsystem_free(rdpShadowSubsystem* subsystem); #ifdef __cplusplus } diff --git a/server/shadow/X11/x11_update.c b/server/shadow/X11/x11_update.c index bbdcee37b..94160f965 100644 --- a/server/shadow/X11/x11_update.c +++ b/server/shadow/X11/x11_update.c @@ -29,28 +29,26 @@ #include "x11_shadow.h" -XImage* x11_shadow_snapshot(x11ShadowClient* context, int x, int y, int width, int height) +XImage* x11_shadow_snapshot(x11ShadowSubsystem* subsystem, int x, int y, int width, int height) { XImage* image; - x11ShadowServer* server = context->server; - if (server->use_xshm) + if (subsystem->use_xshm) { - XCopyArea(server->display, server->root_window, server->fb_pixmap, server->xdamage_gc, x, y, width, height, x, y); - image = server->fb_image; + XCopyArea(subsystem->display, subsystem->root_window, subsystem->fb_pixmap, subsystem->xdamage_gc, x, y, width, height, x, y); + image = subsystem->fb_image; } else { - image = XGetImage(server->display, server->root_window, x, y, width, height, AllPlanes, ZPixmap); + image = XGetImage(subsystem->display, subsystem->root_window, x, y, width, height, AllPlanes, ZPixmap); } return image; } -void x11_shadow_xdamage_subtract_region(x11ShadowClient* context, int x, int y, int width, int height) +void x11_shadow_xdamage_subtract_region(x11ShadowSubsystem* subsystem, int x, int y, int width, int height) { XRectangle region; - x11ShadowServer* server = context->server; region.x = x; region.y = y; @@ -58,39 +56,18 @@ void x11_shadow_xdamage_subtract_region(x11ShadowClient* context, int x, int y, region.height = height; #ifdef WITH_XFIXES - XFixesSetRegion(server->display, server->xdamage_region, ®ion, 1); - XDamageSubtract(server->display, server->xdamage, server->xdamage_region, None); + XFixesSetRegion(subsystem->display, subsystem->xdamage_region, ®ion, 1); + XDamageSubtract(subsystem->display, subsystem->xdamage, subsystem->xdamage_region, None); #endif } -int x11_shadow_update_encode(freerdp_peer* client, int x, int y, int width, int height) +int x11_shadow_update_encode(x11ShadowSubsystem* subsystem, int x, int y, int width, int height) { - wStream* s; BYTE* data; - RFX_RECT rect; XImage* image; - rdpUpdate* update; - x11ShadowClient* context; - x11ShadowServer* server; - SURFACE_BITS_COMMAND* cmd; + RFX_RECT rect; - context = (x11ShadowClient*) client->context; - server = context->server; - - update = client->update; - cmd = &update->surface_bits_command; - - if (width * height <= 0) - { - cmd->bitmapDataLength = 0; - return -1; - } - - s = context->s; - Stream_Clear(s); - Stream_SetPosition(s, 0); - - if (server->use_xshm) + if (subsystem->use_xshm) { /** * Passing an offset source rectangle to rfx_compose_message() @@ -102,18 +79,10 @@ int x11_shadow_update_encode(freerdp_peer* client, int x, int y, int width, int rect.width = width; rect.height = height; - image = x11_shadow_snapshot(context, x, y, width, height); + image = x11_shadow_snapshot(subsystem, x, y, width, height); data = (BYTE*) image->data; data = &data[(y * image->bytes_per_line) + (x * image->bits_per_pixel / 8)]; - - rfx_compose_message(context->rfx_context, s, &rect, 1, data, - width, height, image->bytes_per_line); - - cmd->destLeft = x; - cmd->destTop = y; - cmd->destRight = x + width; - cmd->destBottom = y + height; } else { @@ -122,73 +91,40 @@ int x11_shadow_update_encode(freerdp_peer* client, int x, int y, int width, int rect.width = width; rect.height = height; - image = x11_shadow_snapshot(context, x, y, width, height); + image = x11_shadow_snapshot(subsystem, x, y, width, height); data = (BYTE*) image->data; - rfx_compose_message(context->rfx_context, s, &rect, 1, data, - width, height, image->bytes_per_line); - - cmd->destLeft = x; - cmd->destTop = y; - cmd->destRight = x + width; - cmd->destBottom = y + height; - XDestroyImage(image); } - cmd->bpp = 32; - cmd->codecID = client->settings->RemoteFxCodecId; - cmd->width = width; - cmd->height = height; - cmd->bitmapDataLength = Stream_GetPosition(s); - cmd->bitmapData = Stream_Buffer(s); - return 0; } -void x11_shadow_client_send_update(freerdp_peer* client) -{ - rdpUpdate* update; - SURFACE_BITS_COMMAND* cmd; - - update = client->update; - cmd = &update->surface_bits_command; - - if (cmd->bitmapDataLength) - update->SurfaceBits(update->context, cmd); -} - -void* x11_shadow_update_thread(void* param) +void* x11_shadow_update_thread(x11ShadowSubsystem* subsystem) { HANDLE event; XEvent xevent; DWORD beg, end; DWORD diff, rate; - x11ShadowClient* context; - x11ShadowServer* server; - freerdp_peer* client; + XFixesCursorImage* ci; int x, y, width, height; XDamageNotifyEvent* notify; - client = (freerdp_peer*) param; - context = (x11ShadowClient*) client->context; - server = context->server; - rate = 1000 / 10; - event = CreateFileDescriptorEvent(NULL, FALSE, FALSE, server->xfds); + event = CreateFileDescriptorEvent(NULL, FALSE, FALSE, subsystem->xfds); while (WaitForSingleObject(event, INFINITE) == WAIT_OBJECT_0) { beg = GetTickCount(); - while (XPending(server->display) > 0) + while (XPending(subsystem->display) > 0) { ZeroMemory(&xevent, sizeof(xevent)); - XNextEvent(server->display, &xevent); + XNextEvent(subsystem->display, &xevent); - if (xevent.type == server->xdamage_notify_event) + if (xevent.type == subsystem->xdamage_notify_event) { notify = (XDamageNotifyEvent*) &xevent; @@ -197,18 +133,17 @@ void* x11_shadow_update_thread(void* param) width = notify->area.width; height = notify->area.height; - if (x11_shadow_update_encode(client, x, y, width, height) >= 0) + if (x11_shadow_update_encode(subsystem, x, y, width, height) >= 0) { - x11_shadow_xdamage_subtract_region(context, x, y, width, height); + x11_shadow_xdamage_subtract_region(subsystem, x, y, width, height); - if (context->activated) - x11_shadow_client_send_update(client); + /* send update */ } } #ifdef WITH_XFIXES - else if (xevent.type == server->xfixes_notify_event) + else if (xevent.type == subsystem->xfixes_notify_event) { - XFixesCursorImage* ci = XFixesGetCursorImage(server->display); + ci = XFixesGetCursorImage(subsystem->display); XFree(ci); } #endif diff --git a/server/shadow/shadow.c b/server/shadow/shadow.c index bb75d5ba0..e8d04a76c 100644 --- a/server/shadow/shadow.c +++ b/server/shadow/shadow.c @@ -20,6 +20,11 @@ #include "config.h" #endif +#ifndef _WIN32 +#include +#include +#endif + #include "shadow.h" void* shadow_server_thread(rdpShadowServer* server) @@ -59,6 +64,10 @@ void* shadow_server_thread(rdpShadowServer* server) int shadow_server_start(rdpShadowServer* server) { +#ifndef _WIN32 + signal(SIGPIPE, SIG_IGN); +#endif + if (server->listener->Open(server->listener, NULL, server->port)) { server->thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) @@ -116,9 +125,9 @@ rdpShadowServer* shadow_server_new(int argc, char** argv) if (!server->encoder) return NULL; - server->ext = x11_shadow_server_new(server); + server->subsystem = x11_shadow_subsystem_new(server); - if (!server->ext) + if (!server->subsystem) return NULL; return server; @@ -133,7 +142,7 @@ void shadow_server_free(rdpShadowServer* server) shadow_encoder_free(server->encoder); - x11_shadow_server_free(server->ext); + x11_shadow_subsystem_free(server->subsystem); free(server); } diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index 1947477ad..564701fb2 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -36,13 +36,11 @@ void shadow_client_context_new(freerdp_peer* peer, rdpShadowClient* client) server = (rdpShadowServer*) peer->ContextExtra; client->server = server; - - client->ext = x11_shadow_client_new(client); } void shadow_client_context_free(freerdp_peer* peer, rdpShadowClient* client) { - x11_shadow_client_free(client->ext); + } BOOL shadow_client_get_fds(freerdp_peer* peer, void** rfds, int* rcount) From c865fed29900801118e79e0818c51b058b493719 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Sat, 12 Jul 2014 00:01:29 -0400 Subject: [PATCH 009/170] shadow: start hooking X11 subsystem with shadow server core --- include/freerdp/server/shadow.h | 7 +- server/shadow/X11/x11_shadow.c | 7 +- server/shadow/X11/x11_shadow.h | 6 -- server/shadow/shadow.c | 10 +-- server/shadow/shadow_client.c | 151 +++++++++++++++++++++++++++++--- server/shadow/shadow_encoder.c | 6 +- server/shadow/shadow_screen.c | 16 ++++ server/shadow/shadow_screen.h | 3 + server/shadow/shadow_surface.c | 13 ++- server/shadow/shadow_surface.h | 2 +- 10 files changed, 189 insertions(+), 32 deletions(-) diff --git a/include/freerdp/server/shadow.h b/include/freerdp/server/shadow.h index f49fa15b4..c8f557d36 100644 --- a/include/freerdp/server/shadow.h +++ b/include/freerdp/server/shadow.h @@ -23,6 +23,7 @@ #include #include +#include #include typedef struct rdp_shadow_client rdpShadowClient; @@ -36,8 +37,8 @@ struct rdp_shadow_client { rdpContext context; - void* ext; HANDLE thread; + BOOL activated; rdpShadowServer* server; }; @@ -55,7 +56,9 @@ struct rdp_shadow_server }; #define RDP_SHADOW_SUBSYSTEM_COMMON() \ - rdpShadowServer* server + rdpShadowServer* server; \ + int monitorCount; \ + MONITOR_DEF monitors[16] struct rdp_shadow_subsystem { diff --git a/server/shadow/X11/x11_shadow.c b/server/shadow/X11/x11_shadow.c index da77f4266..71e690dfd 100644 --- a/server/shadow/X11/x11_shadow.c +++ b/server/shadow/X11/x11_shadow.c @@ -276,7 +276,12 @@ int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) x11_shadow_cursor_init(subsystem); - subsystem->bytesPerPixel = 4; + subsystem->monitorCount = 1; + subsystem->monitors[0].left = 0; + subsystem->monitors[0].top = 0; + subsystem->monitors[0].right = subsystem->width; + subsystem->monitors[0].bottom = subsystem->height; + subsystem->monitors[0].flags = 1; return 1; } diff --git a/server/shadow/X11/x11_shadow.h b/server/shadow/X11/x11_shadow.h index ea5e77fcc..0b486739b 100644 --- a/server/shadow/X11/x11_shadow.h +++ b/server/shadow/X11/x11_shadow.h @@ -29,12 +29,7 @@ typedef struct x11_shadow_subsystem x11ShadowSubsystem; #include #include -#include -#include -#include #include -#include -#include #include @@ -71,7 +66,6 @@ struct x11_shadow_subsystem Visual* visual; Display* display; int scanline_pad; - int bytesPerPixel; BOOL use_xshm; XImage* fb_image; diff --git a/server/shadow/shadow.c b/server/shadow/shadow.c index e8d04a76c..fd554c36b 100644 --- a/server/shadow/shadow.c +++ b/server/shadow/shadow.c @@ -115,6 +115,11 @@ rdpShadowServer* shadow_server_new(int argc, char** argv) server->listener->info = (void*) server; server->listener->PeerAccepted = shadow_client_accepted; + server->subsystem = x11_shadow_subsystem_new(server); + + if (!server->subsystem) + return NULL; + server->screen = shadow_screen_new(server); if (!server->screen) @@ -125,11 +130,6 @@ rdpShadowServer* shadow_server_new(int argc, char** argv) if (!server->encoder) return NULL; - server->subsystem = x11_shadow_subsystem_new(server); - - if (!server->subsystem) - return NULL; - return server; } diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index 564701fb2..ae5412990 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -43,16 +43,6 @@ void shadow_client_context_free(freerdp_peer* peer, rdpShadowClient* client) } -BOOL shadow_client_get_fds(freerdp_peer* peer, void** rfds, int* rcount) -{ - return TRUE; -} - -BOOL shadow_client_check_fds(freerdp_peer* peer) -{ - return TRUE; -} - BOOL shadow_client_capabilities(freerdp_peer* peer) { return TRUE; @@ -60,6 +50,10 @@ BOOL shadow_client_capabilities(freerdp_peer* peer) BOOL shadow_client_post_connect(freerdp_peer* peer) { + rdpShadowClient* client; + + client = (rdpShadowClient*) peer->context; + fprintf(stderr, "Client %s is activated", peer->hostname); if (peer->settings->AutoLogonEnabled) @@ -70,7 +64,7 @@ BOOL shadow_client_post_connect(freerdp_peer* peer) } fprintf(stderr, "\n"); - fprintf(stderr, "Client requested desktop: %dx%dx%d\n", + fprintf(stderr, "Client requested desktop: %dx%d@%d\n", peer->settings->DesktopWidth, peer->settings->DesktopHeight, peer->settings->ColorDepth); if (!peer->settings->RemoteFxCodec) @@ -79,8 +73,9 @@ BOOL shadow_client_post_connect(freerdp_peer* peer) return FALSE; } - //client->settings->DesktopWidth = 1024; - //client->settings->DesktopHeight = 768; + peer->settings->DesktopWidth = client->server->screen->width; + peer->settings->DesktopHeight = client->server->screen->height; + peer->settings->ColorDepth = 32; peer->update->DesktopResize(peer->update->context); @@ -89,9 +84,134 @@ BOOL shadow_client_post_connect(freerdp_peer* peer) BOOL shadow_client_activate(freerdp_peer* peer) { + rdpShadowClient* client; + + client = (rdpShadowClient*) peer->context; + + client->activated = TRUE; + return TRUE; } +int shadow_client_send_surface_bits(rdpShadowClient* client) +{ + int i; + wStream* s; + int numMessages; + rdpUpdate* update; + rdpContext* context; + rdpSettings* settings; + rdpShadowServer* server; + rdpShadowSurface* surface; + rdpShadowEncoder* encoder; + SURFACE_BITS_COMMAND cmd; + + BYTE* pSrcData; + int nSrcStep; + int nXSrc; + int nYSrc; + int nWidth; + int nHeight; + + context = (rdpContext*) client; + update = context->update; + settings = context->settings; + + server = client->server; + encoder = server->encoder; + surface = server->surface; + + pSrcData = surface->data; + nSrcStep = surface->scanline; + nWidth = surface->width; + nHeight = surface->height; + nXSrc = 0; + nYSrc = 0; + + if (settings->RemoteFxCodec) + { + RFX_RECT rect; + RFX_MESSAGE* messages; + + s = encoder->rfx_s; + + rect.x = nXSrc; + rect.y = nYSrc; + rect.width = nWidth; + rect.height = nHeight; + + messages = rfx_encode_messages(encoder->rfx, &rect, 1, pSrcData, + surface->width, surface->height, nSrcStep, &numMessages, + settings->MultifragMaxRequestSize); + + cmd.codecID = settings->RemoteFxCodecId; + + cmd.destLeft = 0; + cmd.destTop = 0; + cmd.destRight = surface->width; + cmd.destBottom = surface->height; + + cmd.bpp = 32; + cmd.width = surface->width; + cmd.height = surface->height; + + for (i = 0; i < numMessages; i++) + { + Stream_SetPosition(s, 0); + rfx_write_message(encoder->rfx, s, &messages[i]); + rfx_message_free(encoder->rfx, &messages[i]); + + cmd.bitmapDataLength = Stream_GetPosition(s); + cmd.bitmapData = Stream_Buffer(s); + + IFCALL(update->SurfaceBits, update->context, &cmd); + } + + free(messages); + + return 0; + } + else if (settings->NSCodec) + { + NSC_MESSAGE* messages; + + s = encoder->nsc_s; + + messages = nsc_encode_messages(encoder->nsc, pSrcData, + nXSrc, nYSrc, nWidth, nHeight, nSrcStep, + &numMessages, settings->MultifragMaxRequestSize); + + cmd.bpp = 32; + cmd.codecID = settings->NSCodecId; + + for (i = 0; i < numMessages; i++) + { + Stream_SetPosition(s, 0); + + nsc_write_message(encoder->nsc, s, &messages[i]); + nsc_message_free(encoder->nsc, &messages[i]); + + cmd.destLeft = messages[i].x; + cmd.destTop = messages[i].y; + cmd.destRight = messages[i].x + messages[i].width; + cmd.destBottom = messages[i].y + messages[i].height; + cmd.width = messages[i].width; + cmd.height = messages[i].height; + + cmd.bitmapDataLength = Stream_GetPosition(s); + cmd.bitmapData = Stream_Buffer(s); + + IFCALL(update->SurfaceBits, update->context, &cmd); + } + + free(messages); + + return 0; + } + + return 0; +} + static const char* makecert_argv[4] = { "makecert", @@ -174,7 +294,7 @@ void* shadow_client_thread(rdpShadowClient* client) nCount = 0; events[nCount++] = ClientEvent; - status = WaitForMultipleObjects(nCount, events, FALSE, INFINITE); + status = WaitForMultipleObjects(nCount, events, FALSE, 100); if (WaitForSingleObject(ClientEvent, 0) == WAIT_OBJECT_0) { @@ -184,6 +304,9 @@ void* shadow_client_thread(rdpShadowClient* client) break; } } + + if (client->activated) + shadow_client_send_surface_bits(client); } peer->Disconnect(peer); diff --git a/server/shadow/shadow_encoder.c b/server/shadow/shadow_encoder.c index e7189c384..70aa4e54a 100644 --- a/server/shadow/shadow_encoder.c +++ b/server/shadow/shadow_encoder.c @@ -20,6 +20,8 @@ #include "config.h" #endif +#include "shadow.h" + #include "shadow_encoder.h" int shadow_encoder_grid_init(rdpShadowEncoder* encoder) @@ -88,8 +90,8 @@ rdpShadowEncoder* shadow_encoder_new(rdpShadowServer* server) encoder->server = server; - encoder->width = 1024; - encoder->height = 768; + encoder->width = server->screen->width; + encoder->height = server->screen->height; encoder->bitsPerPixel = 32; encoder->bytesPerPixel = 4; diff --git a/server/shadow/shadow_screen.c b/server/shadow/shadow_screen.c index 81dfa8fca..0197838c9 100644 --- a/server/shadow/shadow_screen.c +++ b/server/shadow/shadow_screen.c @@ -20,11 +20,15 @@ #include "config.h" #endif +#include "shadow_surface.h" + #include "shadow_screen.h" rdpShadowScreen* shadow_screen_new(rdpShadowServer* server) { + MONITOR_DEF* primary; rdpShadowScreen* screen; + rdpShadowSubsystem* subsystem; screen = (rdpShadowScreen*) calloc(1, sizeof(rdpShadowScreen)); @@ -32,6 +36,18 @@ rdpShadowScreen* shadow_screen_new(rdpShadowServer* server) return NULL; screen->server = server; + subsystem = server->subsystem; + + primary = &(subsystem->monitors[0]); + screen->width = primary->right; + screen->height = primary->bottom; + + screen->primary = shadow_surface_new(server, screen->width, screen->height); + + if (!screen->primary) + return NULL; + + server->surface = screen->primary; return screen; } diff --git a/server/shadow/shadow_screen.h b/server/shadow/shadow_screen.h index b5a0db0eb..f8bbdd27a 100644 --- a/server/shadow/shadow_screen.h +++ b/server/shadow/shadow_screen.h @@ -25,6 +25,9 @@ struct rdp_shadow_screen { rdpShadowServer* server; + int width; + int height; + rdpShadowSurface* primary; }; diff --git a/server/shadow/shadow_surface.c b/server/shadow/shadow_surface.c index 97f060f59..389d02308 100644 --- a/server/shadow/shadow_surface.c +++ b/server/shadow/shadow_surface.c @@ -22,7 +22,7 @@ #include "shadow_surface.h" -rdpShadowSurface* shadow_surface_new(rdpShadowServer* server) +rdpShadowSurface* shadow_surface_new(rdpShadowServer* server, int width, int height) { rdpShadowSurface* surface; @@ -33,6 +33,17 @@ rdpShadowSurface* shadow_surface_new(rdpShadowServer* server) surface->server = server; + surface->width = width; + surface->height = height; + surface->scanline = (surface->width + (surface->width % 4)) * 4; + + surface->data = (BYTE*) malloc(surface->scanline * surface->height); + + if (!surface->data) + return NULL; + + ZeroMemory(surface->data, surface->scanline * surface->height); + return surface; } diff --git a/server/shadow/shadow_surface.h b/server/shadow/shadow_surface.h index b0dc71c2b..da182b36a 100644 --- a/server/shadow/shadow_surface.h +++ b/server/shadow/shadow_surface.h @@ -35,7 +35,7 @@ struct rdp_shadow_surface extern "C" { #endif -rdpShadowSurface* shadow_surface_new(rdpShadowServer* server); +rdpShadowSurface* shadow_surface_new(rdpShadowServer* server, int width, int height); void shadow_surface_free(rdpShadowSurface* surface); #ifdef __cplusplus From e9818e95ac9ff010293771d9355cc28b28a2e68b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Sat, 12 Jul 2014 01:18:08 -0400 Subject: [PATCH 010/170] shadow: hook X11 input --- include/freerdp/server/shadow.h | 6 ++ server/shadow/X11/x11_input.c | 4 +- server/shadow/X11/x11_shadow.c | 10 ++- server/shadow/X11/x11_shadow.h | 11 ++- server/shadow/X11/x11_update.c | 114 ++++++++++++++------------------ server/shadow/shadow.c | 28 +++++--- server/shadow/shadow_client.c | 98 ++++++++++++++++----------- server/shadow/shadow_input.c | 15 +++++ server/shadow/shadow_screen.c | 8 +++ server/shadow/shadow_surface.c | 10 +++ server/shadow/shadow_surface.h | 2 + 11 files changed, 185 insertions(+), 121 deletions(-) diff --git a/include/freerdp/server/shadow.h b/include/freerdp/server/shadow.h index c8f557d36..08753ce42 100644 --- a/include/freerdp/server/shadow.h +++ b/include/freerdp/server/shadow.h @@ -26,6 +26,9 @@ #include #include +#include +#include + typedef struct rdp_shadow_client rdpShadowClient; typedef struct rdp_shadow_server rdpShadowServer; typedef struct rdp_shadow_screen rdpShadowScreen; @@ -39,6 +42,7 @@ struct rdp_shadow_client HANDLE thread; BOOL activated; + HANDLE StopEvent; rdpShadowServer* server; }; @@ -46,6 +50,7 @@ struct rdp_shadow_server { void* ext; HANDLE thread; + HANDLE StopEvent; rdpShadowScreen* screen; rdpShadowSurface* surface; rdpShadowEncoder* encoder; @@ -57,6 +62,7 @@ struct rdp_shadow_server #define RDP_SHADOW_SUBSYSTEM_COMMON() \ rdpShadowServer* server; \ + HANDLE event; \ int monitorCount; \ MONITOR_DEF monitors[16] diff --git a/server/shadow/X11/x11_input.c b/server/shadow/X11/x11_input.c index 6601def85..42cfc5b3b 100644 --- a/server/shadow/X11/x11_input.c +++ b/server/shadow/X11/x11_input.c @@ -30,7 +30,7 @@ void x11_shadow_input_synchronize_event(x11ShadowSubsystem* subsystem, UINT32 flags) { - fprintf(stderr, "Client sent a synchronize event (flags:0x%X)\n", flags); + } void x11_shadow_input_keyboard_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 code) @@ -65,7 +65,7 @@ void x11_shadow_input_keyboard_event(x11ShadowSubsystem* subsystem, UINT16 flags void x11_shadow_input_unicode_keyboard_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 code) { - fprintf(stderr, "Client sent a unicode keyboard event (flags:0x%X code:0x%X)\n", flags, code); + } void x11_shadow_input_mouse_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 x, UINT16 y) diff --git a/server/shadow/X11/x11_shadow.c b/server/shadow/X11/x11_shadow.c index 71e690dfd..a362e5574 100644 --- a/server/shadow/X11/x11_shadow.c +++ b/server/shadow/X11/x11_shadow.c @@ -191,7 +191,7 @@ int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) * To see if your X11 server supports shared pixmaps, use: * xdpyinfo -ext MIT-SHM | grep "shared pixmaps" */ - subsystem->use_xshm = TRUE; + subsystem->use_xshm = FALSE; setenv("DISPLAY", ":0", 1); /* Set DISPLAY variable if not already set */ @@ -276,6 +276,8 @@ int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) x11_shadow_cursor_init(subsystem); + subsystem->event = CreateFileDescriptorEvent(NULL, FALSE, FALSE, subsystem->xfds); + subsystem->monitorCount = 1; subsystem->monitors[0].left = 0; subsystem->monitors[0].top = 0; @@ -297,6 +299,12 @@ int x11_shadow_subsystem_uninit(x11ShadowSubsystem* subsystem) subsystem->display = NULL; } + if (subsystem->event) + { + CloseHandle(subsystem->event); + subsystem->event = NULL; + } + return 1; } diff --git a/server/shadow/X11/x11_shadow.h b/server/shadow/X11/x11_shadow.h index 0b486739b..d8cba2a05 100644 --- a/server/shadow/X11/x11_shadow.h +++ b/server/shadow/X11/x11_shadow.h @@ -29,8 +29,6 @@ typedef struct x11_shadow_subsystem x11ShadowSubsystem; #include #include -#include - #include #ifdef WITH_XSHM @@ -89,6 +87,15 @@ struct x11_shadow_subsystem extern "C" { #endif +int x11_shadow_check_event(x11ShadowSubsystem* subsystem); +int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem, int x, int y, int width, int height); + +void x11_shadow_input_synchronize_event(x11ShadowSubsystem* subsystem, UINT32 flags); +void x11_shadow_input_keyboard_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 code); +void x11_shadow_input_unicode_keyboard_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 code); +void x11_shadow_input_mouse_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 x, UINT16 y); +void x11_shadow_input_extended_mouse_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 x, UINT16 y); + rdpShadowSubsystem* x11_shadow_subsystem_new(rdpShadowServer* server); void x11_shadow_subsystem_free(rdpShadowSubsystem* subsystem); diff --git a/server/shadow/X11/x11_update.c b/server/shadow/X11/x11_update.c index 94160f965..c3f0cb912 100644 --- a/server/shadow/X11/x11_update.c +++ b/server/shadow/X11/x11_update.c @@ -24,9 +24,13 @@ #include #include +#include + #include #include +#include "../shadow_surface.h" + #include "x11_shadow.h" XImage* x11_shadow_snapshot(x11ShadowSubsystem* subsystem, int x, int y, int width, int height) @@ -35,12 +39,14 @@ XImage* x11_shadow_snapshot(x11ShadowSubsystem* subsystem, int x, int y, int wid if (subsystem->use_xshm) { - XCopyArea(subsystem->display, subsystem->root_window, subsystem->fb_pixmap, subsystem->xdamage_gc, x, y, width, height, x, y); + XCopyArea(subsystem->display, subsystem->root_window, subsystem->fb_pixmap, + subsystem->xdamage_gc, x, y, width, height, x, y); image = subsystem->fb_image; } else { - image = XGetImage(subsystem->display, subsystem->root_window, x, y, width, height, AllPlanes, ZPixmap); + image = XGetImage(subsystem->display, subsystem->root_window, + x, y, width, height, AllPlanes, ZPixmap); } return image; @@ -61,100 +67,76 @@ void x11_shadow_xdamage_subtract_region(x11ShadowSubsystem* subsystem, int x, in #endif } -int x11_shadow_update_encode(x11ShadowSubsystem* subsystem, int x, int y, int width, int height) +int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem, int x, int y, int width, int height) { - BYTE* data; XImage* image; - RFX_RECT rect; + rdpShadowServer* server; + rdpShadowSurface* surface; + RECTANGLE_16 invalidRect; + + server = subsystem->server; + surface = server->surface; + + printf("x11_shadow_surface_copy: x: %d y: %d width: %d height: %d\n", + x, y, width, height); if (subsystem->use_xshm) { - /** - * Passing an offset source rectangle to rfx_compose_message() - * leads to protocol errors, so offset the data pointer instead. - */ - - rect.x = 0; - rect.y = 0; - rect.width = width; - rect.height = height; - image = x11_shadow_snapshot(subsystem, x, y, width, height); - data = (BYTE*) image->data; - data = &data[(y * image->bytes_per_line) + (x * image->bits_per_pixel / 8)]; + freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, + surface->scanline, x, y, width, height, + (BYTE*) image->data, PIXEL_FORMAT_XRGB32, + image->bytes_per_line, x, y); } else { - rect.x = 0; - rect.y = 0; - rect.width = width; - rect.height = height; - image = x11_shadow_snapshot(subsystem, x, y, width, height); - data = (BYTE*) image->data; + freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, + surface->scanline, x, y, width, height, + (BYTE*) image->data, PIXEL_FORMAT_XRGB32, + image->bytes_per_line, x, y); XDestroyImage(image); } - return 0; + invalidRect.left = x; + invalidRect.top = y; + invalidRect.right = width; + invalidRect.bottom = height; + + region16_union_rect(&(surface->invalidRegion), &(surface->invalidRegion), &invalidRect); + + return 1; } -void* x11_shadow_update_thread(x11ShadowSubsystem* subsystem) +int x11_shadow_check_event(x11ShadowSubsystem* subsystem) { - HANDLE event; XEvent xevent; - DWORD beg, end; - DWORD diff, rate; - XFixesCursorImage* ci; int x, y, width, height; XDamageNotifyEvent* notify; - rate = 1000 / 10; - - event = CreateFileDescriptorEvent(NULL, FALSE, FALSE, subsystem->xfds); - - while (WaitForSingleObject(event, INFINITE) == WAIT_OBJECT_0) + while (XPending(subsystem->display) > 0) { - beg = GetTickCount(); + ZeroMemory(&xevent, sizeof(xevent)); + XNextEvent(subsystem->display, &xevent); - while (XPending(subsystem->display) > 0) + if (xevent.type == subsystem->xdamage_notify_event) { - ZeroMemory(&xevent, sizeof(xevent)); - XNextEvent(subsystem->display, &xevent); + notify = (XDamageNotifyEvent*) &xevent; - if (xevent.type == subsystem->xdamage_notify_event) + x = notify->area.x; + y = notify->area.y; + width = notify->area.width; + height = notify->area.height; + + if (x11_shadow_surface_copy(subsystem, x, y, width, height) > 0) { - notify = (XDamageNotifyEvent*) &xevent; - - x = notify->area.x; - y = notify->area.y; - width = notify->area.width; - height = notify->area.height; - - if (x11_shadow_update_encode(subsystem, x, y, width, height) >= 0) - { - x11_shadow_xdamage_subtract_region(subsystem, x, y, width, height); - - /* send update */ - } + x11_shadow_xdamage_subtract_region(subsystem, x, y, width, height); } -#ifdef WITH_XFIXES - else if (xevent.type == subsystem->xfixes_notify_event) - { - ci = XFixesGetCursorImage(subsystem->display); - XFree(ci); - } -#endif } - - end = GetTickCount(); - diff = end - beg; - - if (diff < rate) - Sleep(rate - diff); } - return NULL; + return 1; } diff --git a/server/shadow/shadow.c b/server/shadow/shadow.c index fd554c36b..400d18ce0 100644 --- a/server/shadow/shadow.c +++ b/server/shadow/shadow.c @@ -32,9 +32,11 @@ void* shadow_server_thread(rdpShadowServer* server) DWORD status; DWORD nCount; HANDLE events[32]; + HANDLE StopEvent; freerdp_listener* listener; listener = server->listener; + StopEvent = server->StopEvent; while (1) { @@ -46,8 +48,15 @@ void* shadow_server_thread(rdpShadowServer* server) break; } + events[nCount++] = server->StopEvent; + status = WaitForMultipleObjects(nCount, events, FALSE, INFINITE); + if (WaitForSingleObject(server->StopEvent, 0) == WAIT_OBJECT_0) + { + break; + } + if (!listener->CheckFileDescriptor(listener)) { fprintf(stderr, "Failed to check FreeRDP file descriptor\n"); @@ -81,9 +90,10 @@ int shadow_server_stop(rdpShadowServer* server) { if (server->thread) { - TerminateThread(server->thread, 0); + SetEvent(server->StopEvent); WaitForSingleObject(server->thread, INFINITE); CloseHandle(server->thread); + server->thread = NULL; server->listener->Close(server->listener); } @@ -91,11 +101,6 @@ int shadow_server_stop(rdpShadowServer* server) return 0; } -HANDLE shadow_server_get_thread(rdpShadowServer* server) -{ - return server->thread; -} - rdpShadowServer* shadow_server_new(int argc, char** argv) { rdpShadowServer* server; @@ -107,6 +112,8 @@ rdpShadowServer* shadow_server_new(int argc, char** argv) server->port = 3389; + server->StopEvent = CreateEvent(NULL, TRUE, FALSE, NULL); + server->listener = freerdp_listener_new(); if (!server->listener) @@ -138,6 +145,8 @@ void shadow_server_free(rdpShadowServer* server) if (!server) return; + shadow_server_stop(server); + freerdp_listener_free(server->listener); shadow_encoder_free(server->encoder); @@ -149,7 +158,6 @@ void shadow_server_free(rdpShadowServer* server) int main(int argc, char* argv[]) { - HANDLE thread; DWORD dwExitCode; rdpShadowServer* server; @@ -160,11 +168,9 @@ int main(int argc, char* argv[]) shadow_server_start(server); - thread = shadow_server_get_thread(server); + WaitForSingleObject(server->thread, INFINITE); - WaitForSingleObject(thread, INFINITE); - - GetExitCodeThread(thread, &dwExitCode); + GetExitCodeThread(server->thread, &dwExitCode); shadow_server_free(server); diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index ae5412990..ec53d1990 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -36,11 +36,13 @@ void shadow_client_context_new(freerdp_peer* peer, rdpShadowClient* client) server = (rdpShadowServer*) peer->ContextExtra; client->server = server; + + client->StopEvent = CreateEvent(NULL, TRUE, FALSE, NULL); } void shadow_client_context_free(freerdp_peer* peer, rdpShadowClient* client) { - + CloseHandle(client->StopEvent); } BOOL shadow_client_capabilities(freerdp_peer* peer) @@ -54,24 +56,7 @@ BOOL shadow_client_post_connect(freerdp_peer* peer) client = (rdpShadowClient*) peer->context; - fprintf(stderr, "Client %s is activated", peer->hostname); - - if (peer->settings->AutoLogonEnabled) - { - fprintf(stderr, " and wants to login automatically as %s\\%s", - peer->settings->Domain ? peer->settings->Domain : "", - peer->settings->Username); - } - fprintf(stderr, "\n"); - - fprintf(stderr, "Client requested desktop: %dx%d@%d\n", - peer->settings->DesktopWidth, peer->settings->DesktopHeight, peer->settings->ColorDepth); - - if (!peer->settings->RemoteFxCodec) - { - fprintf(stderr, "Client does not support RemoteFX\n"); - return FALSE; - } + fprintf(stderr, "Client from %s is activated\n", peer->hostname); peer->settings->DesktopWidth = client->server->screen->width; peer->settings->DesktopHeight = client->server->screen->height; @@ -97,6 +82,12 @@ int shadow_client_send_surface_bits(rdpShadowClient* client) { int i; wStream* s; + int nXSrc; + int nYSrc; + int nWidth; + int nHeight; + int nSrcStep; + BYTE* pSrcData; int numMessages; rdpUpdate* update; rdpContext* context; @@ -104,14 +95,9 @@ int shadow_client_send_surface_bits(rdpShadowClient* client) rdpShadowServer* server; rdpShadowSurface* surface; rdpShadowEncoder* encoder; + RECTANGLE_16 surfaceRect; SURFACE_BITS_COMMAND cmd; - - BYTE* pSrcData; - int nSrcStep; - int nXSrc; - int nYSrc; - int nWidth; - int nHeight; + const RECTANGLE_16* extents; context = (rdpContext*) client; update = context->update; @@ -121,12 +107,24 @@ int shadow_client_send_surface_bits(rdpShadowClient* client) encoder = server->encoder; surface = server->surface; + surfaceRect.left = 0; + surfaceRect.top = 0; + surfaceRect.right = surface->width; + surfaceRect.bottom = surface->height; + + region16_intersect_rect(&(surface->invalidRegion), &(surface->invalidRegion), &surfaceRect); + + if (region16_is_empty(&(surface->invalidRegion))) + return 1; + + extents = region16_extents(&(surface->invalidRegion)); + + nXSrc = extents->left; + nYSrc = extents->top; + nWidth = extents->right - extents->left; + nHeight = extents->bottom - extents->top; pSrcData = surface->data; nSrcStep = surface->scanline; - nWidth = surface->width; - nHeight = surface->height; - nXSrc = 0; - nYSrc = 0; if (settings->RemoteFxCodec) { @@ -168,8 +166,6 @@ int shadow_client_send_surface_bits(rdpShadowClient* client) } free(messages); - - return 0; } else if (settings->NSCodec) { @@ -205,10 +201,10 @@ int shadow_client_send_surface_bits(rdpShadowClient* client) } free(messages); - - return 0; } + region16_clear(&(surface->invalidRegion)); + return 0; } @@ -263,9 +259,18 @@ void* shadow_client_thread(rdpShadowClient* client) DWORD status; DWORD nCount; HANDLE events[32]; + HANDLE StopEvent; HANDLE ClientEvent; + HANDLE SubsystemEvent; freerdp_peer* peer; rdpSettings* settings; + rdpShadowServer* server; + rdpShadowSurface* surface; + rdpShadowSubsystem* subsystem; + + server = client->server; + surface = server->surface; + subsystem = server->subsystem; peer = ((rdpContext*) client)->peer; settings = peer->settings; @@ -287,14 +292,23 @@ void* shadow_client_thread(rdpShadowClient* client) peer->Initialize(peer); + StopEvent = client->StopEvent; ClientEvent = peer->GetEventHandle(peer); + SubsystemEvent = subsystem->event; while (1) { nCount = 0; + events[nCount++] = StopEvent; events[nCount++] = ClientEvent; + events[nCount++] = SubsystemEvent; - status = WaitForMultipleObjects(nCount, events, FALSE, 100); + status = WaitForMultipleObjects(nCount, events, FALSE, INFINITE); + + if (WaitForSingleObject(client->StopEvent, 0) == WAIT_OBJECT_0) + { + break; + } if (WaitForSingleObject(ClientEvent, 0) == WAIT_OBJECT_0) { @@ -305,8 +319,15 @@ void* shadow_client_thread(rdpShadowClient* client) } } - if (client->activated) - shadow_client_send_surface_bits(client); + if (WaitForSingleObject(SubsystemEvent, 0) == WAIT_OBJECT_0) + { + x11_shadow_check_event((x11ShadowSubsystem*) subsystem); + + if (client->activated) + { + shadow_client_send_surface_bits(client); + } + } } peer->Disconnect(peer); @@ -321,7 +342,6 @@ void* shadow_client_thread(rdpShadowClient* client) void shadow_client_accepted(freerdp_listener* listener, freerdp_peer* peer) { - HANDLE thread; rdpShadowClient* client; rdpShadowServer* server; @@ -335,6 +355,6 @@ void shadow_client_accepted(freerdp_listener* listener, freerdp_peer* peer) client = (rdpShadowClient*) peer->context; - thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) + client->thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) shadow_client_thread, client, 0, NULL); } diff --git a/server/shadow/shadow_input.c b/server/shadow/shadow_input.c index 26f26eaac..f3110cd0b 100644 --- a/server/shadow/shadow_input.c +++ b/server/shadow/shadow_input.c @@ -24,27 +24,42 @@ void shadow_input_synchronize_event(rdpInput* input, UINT32 flags) { + rdpShadowClient* client = (rdpShadowClient*) input->context; + rdpShadowSubsystem* subsystem = client->server->subsystem; + x11_shadow_input_synchronize_event((x11ShadowSubsystem*) subsystem, flags); } void shadow_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) { + rdpShadowClient* client = (rdpShadowClient*) input->context; + rdpShadowSubsystem* subsystem = client->server->subsystem; + x11_shadow_input_keyboard_event((x11ShadowSubsystem*) subsystem, flags, code); } void shadow_input_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) { + rdpShadowClient* client = (rdpShadowClient*) input->context; + rdpShadowSubsystem* subsystem = client->server->subsystem; + x11_shadow_input_unicode_keyboard_event((x11ShadowSubsystem*) subsystem, flags, code); } void shadow_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) { + rdpShadowClient* client = (rdpShadowClient*) input->context; + rdpShadowSubsystem* subsystem = client->server->subsystem; + x11_shadow_input_mouse_event((x11ShadowSubsystem*) subsystem, flags, x, y); } void shadow_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) { + rdpShadowClient* client = (rdpShadowClient*) input->context; + rdpShadowSubsystem* subsystem = client->server->subsystem; + x11_shadow_input_extended_mouse_event((x11ShadowSubsystem*) subsystem, flags, x, y); } void shadow_input_register_callbacks(rdpInput* input) diff --git a/server/shadow/shadow_screen.c b/server/shadow/shadow_screen.c index 0197838c9..c5dbe1ae7 100644 --- a/server/shadow/shadow_screen.c +++ b/server/shadow/shadow_screen.c @@ -56,5 +56,13 @@ void shadow_screen_free(rdpShadowScreen* screen) { if (!screen) return; + + if (screen->primary) + { + shadow_surface_free(screen->primary); + screen->primary = NULL; + } + + free(screen); } diff --git a/server/shadow/shadow_surface.c b/server/shadow/shadow_surface.c index 389d02308..e9a3f2341 100644 --- a/server/shadow/shadow_surface.c +++ b/server/shadow/shadow_surface.c @@ -20,6 +20,8 @@ #include "config.h" #endif +#include "shadow.h" + #include "shadow_surface.h" rdpShadowSurface* shadow_surface_new(rdpShadowServer* server, int width, int height) @@ -44,6 +46,8 @@ rdpShadowSurface* shadow_surface_new(rdpShadowServer* server, int width, int hei ZeroMemory(surface->data, surface->scanline * surface->height); + region16_init(&(surface->invalidRegion)); + return surface; } @@ -51,4 +55,10 @@ void shadow_surface_free(rdpShadowSurface* surface) { if (!surface) return; + + free(surface->data); + + region16_uninit(&(surface->invalidRegion)); + + free(surface); } diff --git a/server/shadow/shadow_surface.h b/server/shadow/shadow_surface.h index da182b36a..0e8a64953 100644 --- a/server/shadow/shadow_surface.h +++ b/server/shadow/shadow_surface.h @@ -29,6 +29,8 @@ struct rdp_shadow_surface int height; int scanline; BYTE* data; + + REGION16 invalidRegion; }; #ifdef __cplusplus From 1ee4061eb4324580bd50d577af0cf149ba2b571b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Sun, 13 Jul 2014 15:58:31 -0400 Subject: [PATCH 011/170] shadow: consolidate X11 subsystem code --- server/shadow/CMakeLists.txt | 3 - server/shadow/X11/x11_client.c | 42 ------ server/shadow/X11/x11_input.c | 137 ------------------ server/shadow/X11/x11_shadow.c | 246 +++++++++++++++++++++++++++++++-- server/shadow/X11/x11_update.c | 142 ------------------- 5 files changed, 231 insertions(+), 339 deletions(-) delete mode 100644 server/shadow/X11/x11_client.c delete mode 100644 server/shadow/X11/x11_input.c delete mode 100644 server/shadow/X11/x11_update.c diff --git a/server/shadow/CMakeLists.txt b/server/shadow/CMakeLists.txt index af7258a30..27b2aa94f 100644 --- a/server/shadow/CMakeLists.txt +++ b/server/shadow/CMakeLists.txt @@ -130,9 +130,6 @@ set(${MODULE_PREFIX}_SRCS shadow.h) set(${MODULE_PREFIX}_X11_SRCS - X11/x11_input.c - X11/x11_client.c - X11/x11_update.c X11/x11_shadow.c X11/x11_shadow.h) diff --git a/server/shadow/X11/x11_client.c b/server/shadow/X11/x11_client.c deleted file mode 100644 index 79d254b6f..000000000 --- a/server/shadow/X11/x11_client.c +++ /dev/null @@ -1,42 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * - * Copyright 2011-2014 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -#include -#include -#include -#include -#include - -#include "x11_shadow.h" - diff --git a/server/shadow/X11/x11_input.c b/server/shadow/X11/x11_input.c deleted file mode 100644 index 42cfc5b3b..000000000 --- a/server/shadow/X11/x11_input.c +++ /dev/null @@ -1,137 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * X11 Server Input - * - * Copyright 2011 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include - -#include -#include - -#include "x11_shadow.h" - -void x11_shadow_input_synchronize_event(x11ShadowSubsystem* subsystem, UINT32 flags) -{ - -} - -void x11_shadow_input_keyboard_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 code) -{ -#ifdef WITH_XTEST - DWORD vkcode; - DWORD keycode; - BOOL extended = FALSE; - - if (flags & KBD_FLAGS_EXTENDED) - extended = TRUE; - - if (extended) - code |= KBDEXT; - - vkcode = GetVirtualKeyCodeFromVirtualScanCode(code, 4); - keycode = GetKeycodeFromVirtualKeyCode(vkcode, KEYCODE_TYPE_EVDEV); - - if (keycode != 0) - { - XTestGrabControl(subsystem->display, True); - - if (flags & KBD_FLAGS_DOWN) - XTestFakeKeyEvent(subsystem->display, keycode, True, 0); - else if (flags & KBD_FLAGS_RELEASE) - XTestFakeKeyEvent(subsystem->display, keycode, False, 0); - - XTestGrabControl(subsystem->display, False); - } -#endif -} - -void x11_shadow_input_unicode_keyboard_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 code) -{ - -} - -void x11_shadow_input_mouse_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 x, UINT16 y) -{ -#ifdef WITH_XTEST - int button = 0; - BOOL down = FALSE; - - XTestGrabControl(subsystem->display, True); - - if (flags & PTR_FLAGS_WHEEL) - { - BOOL negative = FALSE; - - if (flags & PTR_FLAGS_WHEEL_NEGATIVE) - negative = TRUE; - - button = (negative) ? 5 : 4; - - XTestFakeButtonEvent(subsystem->display, button, True, 0); - XTestFakeButtonEvent(subsystem->display, button, False, 0); - } - else - { - if (flags & PTR_FLAGS_MOVE) - XTestFakeMotionEvent(subsystem->display, 0, x, y, 0); - - if (flags & PTR_FLAGS_BUTTON1) - button = 1; - else if (flags & PTR_FLAGS_BUTTON2) - button = 3; - else if (flags & PTR_FLAGS_BUTTON3) - button = 2; - - if (flags & PTR_FLAGS_DOWN) - down = TRUE; - - if (button != 0) - XTestFakeButtonEvent(subsystem->display, button, down, 0); - } - - XTestGrabControl(subsystem->display, False); -#endif -} - -void x11_shadow_input_extended_mouse_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 x, UINT16 y) -{ -#ifdef WITH_XTEST - int button = 0; - BOOL down = FALSE; - - XTestGrabControl(subsystem->display, True); - XTestFakeMotionEvent(subsystem->display, 0, x, y, CurrentTime); - - if (flags & PTR_XFLAGS_BUTTON1) - button = 8; - else if (flags & PTR_XFLAGS_BUTTON2) - button = 9; - - if (flags & PTR_XFLAGS_DOWN) - down = TRUE; - - if (button != 0) - XTestFakeButtonEvent(subsystem->display, button, down, 0); - - XTestGrabControl(subsystem->display, False); -#endif -} - diff --git a/server/shadow/X11/x11_shadow.c b/server/shadow/X11/x11_shadow.c index a362e5574..01e049eeb 100644 --- a/server/shadow/X11/x11_shadow.c +++ b/server/shadow/X11/x11_shadow.c @@ -30,8 +30,217 @@ #include #include +#include +#include +#include + +#include +#include + +#include "../shadow_surface.h" + #include "x11_shadow.h" +void x11_shadow_input_synchronize_event(x11ShadowSubsystem* subsystem, UINT32 flags) +{ + +} + +void x11_shadow_input_keyboard_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 code) +{ +#ifdef WITH_XTEST + DWORD vkcode; + DWORD keycode; + BOOL extended = FALSE; + + if (flags & KBD_FLAGS_EXTENDED) + extended = TRUE; + + if (extended) + code |= KBDEXT; + + vkcode = GetVirtualKeyCodeFromVirtualScanCode(code, 4); + keycode = GetKeycodeFromVirtualKeyCode(vkcode, KEYCODE_TYPE_EVDEV); + + if (keycode != 0) + { + XTestGrabControl(subsystem->display, True); + + if (flags & KBD_FLAGS_DOWN) + XTestFakeKeyEvent(subsystem->display, keycode, True, 0); + else if (flags & KBD_FLAGS_RELEASE) + XTestFakeKeyEvent(subsystem->display, keycode, False, 0); + + XTestGrabControl(subsystem->display, False); + } +#endif +} + +void x11_shadow_input_unicode_keyboard_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 code) +{ + +} + +void x11_shadow_input_mouse_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 x, UINT16 y) +{ +#ifdef WITH_XTEST + int button = 0; + BOOL down = FALSE; + + XTestGrabControl(subsystem->display, True); + + if (flags & PTR_FLAGS_WHEEL) + { + BOOL negative = FALSE; + + if (flags & PTR_FLAGS_WHEEL_NEGATIVE) + negative = TRUE; + + button = (negative) ? 5 : 4; + + XTestFakeButtonEvent(subsystem->display, button, True, 0); + XTestFakeButtonEvent(subsystem->display, button, False, 0); + } + else + { + if (flags & PTR_FLAGS_MOVE) + XTestFakeMotionEvent(subsystem->display, 0, x, y, 0); + + if (flags & PTR_FLAGS_BUTTON1) + button = 1; + else if (flags & PTR_FLAGS_BUTTON2) + button = 3; + else if (flags & PTR_FLAGS_BUTTON3) + button = 2; + + if (flags & PTR_FLAGS_DOWN) + down = TRUE; + + if (button != 0) + XTestFakeButtonEvent(subsystem->display, button, down, 0); + } + + XTestGrabControl(subsystem->display, False); +#endif +} + +void x11_shadow_input_extended_mouse_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 x, UINT16 y) +{ +#ifdef WITH_XTEST + int button = 0; + BOOL down = FALSE; + + XTestGrabControl(subsystem->display, True); + XTestFakeMotionEvent(subsystem->display, 0, x, y, CurrentTime); + + if (flags & PTR_XFLAGS_BUTTON1) + button = 8; + else if (flags & PTR_XFLAGS_BUTTON2) + button = 9; + + if (flags & PTR_XFLAGS_DOWN) + down = TRUE; + + if (button != 0) + XTestFakeButtonEvent(subsystem->display, button, down, 0); + + XTestGrabControl(subsystem->display, False); +#endif +} + +void x11_shadow_xdamage_subtract_region(x11ShadowSubsystem* subsystem, int x, int y, int width, int height) +{ + XRectangle region; + + region.x = x; + region.y = y; + region.width = width; + region.height = height; + +#ifdef WITH_XFIXES + XFixesSetRegion(subsystem->display, subsystem->xdamage_region, ®ion, 1); + XDamageSubtract(subsystem->display, subsystem->xdamage, subsystem->xdamage_region, None); +#endif +} + +int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem, int x, int y, int width, int height) +{ + XImage* image; + rdpShadowServer* server; + rdpShadowSurface* surface; + RECTANGLE_16 invalidRect; + + server = subsystem->server; + surface = server->surface; + + printf("x11_shadow_surface_copy: x: %d y: %d width: %d height: %d\n", + x, y, width, height); + + if (subsystem->use_xshm) + { + XCopyArea(subsystem->display, subsystem->root_window, subsystem->fb_pixmap, + subsystem->xdamage_gc, x, y, width, height, x, y); + + image = subsystem->fb_image; + + freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, + surface->scanline, x, y, width, height, + (BYTE*) image->data, PIXEL_FORMAT_XRGB32, + image->bytes_per_line, x, y); + } + else + { + image = XGetImage(subsystem->display, subsystem->root_window, + x, y, width, height, AllPlanes, ZPixmap); + + freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, + surface->scanline, x, y, width, height, + (BYTE*) image->data, PIXEL_FORMAT_XRGB32, + image->bytes_per_line, x, y); + + XDestroyImage(image); + } + + invalidRect.left = x; + invalidRect.top = y; + invalidRect.right = width; + invalidRect.bottom = height; + + region16_union_rect(&(surface->invalidRegion), &(surface->invalidRegion), &invalidRect); + + return 1; +} + +int x11_shadow_check_event(x11ShadowSubsystem* subsystem) +{ + XEvent xevent; + int x, y, width, height; + XDamageNotifyEvent* notify; + + while (XPending(subsystem->display) > 0) + { + ZeroMemory(&xevent, sizeof(xevent)); + XNextEvent(subsystem->display, &xevent); + + if (xevent.type == subsystem->xdamage_notify_event) + { + notify = (XDamageNotifyEvent*) &xevent; + + x = notify->area.x; + y = notify->area.y; + width = notify->area.width; + height = notify->area.height; + + if (x11_shadow_surface_copy(subsystem, x, y, width, height) > 0) + { + x11_shadow_xdamage_subtract_region(subsystem, x, y, width, height); + } + } + } + + return 1; +} + int x11_shadow_cursor_init(x11ShadowSubsystem* subsystem) { #ifdef WITH_XFIXES @@ -113,19 +322,15 @@ int x11_shadow_xshm_init(x11ShadowSubsystem* server) Bool pixmaps; int major, minor; - if (XShmQueryExtension(server->display) != False) - { - XShmQueryVersion(server->display, &major, &minor, &pixmaps); + if (!XShmQueryExtension(server->display)) + return -1; - if (pixmaps != True) - { - fprintf(stderr, "XShmQueryVersion failed\n"); - return -1; - } - } - else + if (!XShmQueryVersion(server->display, &major, &minor, &pixmaps)) + return -1; + + if (!pixmaps) { - fprintf(stderr, "XShmQueryExtension failed\n"); + fprintf(stderr, "XShmQueryVersion failed\n"); return -1; } @@ -160,7 +365,9 @@ int x11_shadow_xshm_init(x11ShadowSubsystem* server) return -1; } - XShmAttach(server->display, &(server->fb_shm_info)); + if (!XShmAttach(server->display, &(server->fb_shm_info))) + return -1; + XSync(server->display, False); shmctl(server->fb_shm_info.shmid, IPC_RMID, 0); @@ -172,7 +379,10 @@ int x11_shadow_xshm_init(x11ShadowSubsystem* server) server->root_window, server->fb_image->data, &(server->fb_shm_info), server->fb_image->width, server->fb_image->height, server->fb_image->depth); - return 0; + if (!server->fb_pixmap) + return -1; + + return 1; } int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) @@ -191,12 +401,18 @@ int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) * To see if your X11 server supports shared pixmaps, use: * xdpyinfo -ext MIT-SHM | grep "shared pixmaps" */ - subsystem->use_xshm = FALSE; + subsystem->use_xshm = TRUE; - setenv("DISPLAY", ":0", 1); /* Set DISPLAY variable if not already set */ + if (!getenv("DISPLAY")) + { + /* Set DISPLAY variable if not already set */ + setenv("DISPLAY", ":0", 1); + } if (!XInitThreads()) + { fprintf(stderr, "warning: XInitThreads() failure\n"); + } subsystem->display = XOpenDisplay(NULL); diff --git a/server/shadow/X11/x11_update.c b/server/shadow/X11/x11_update.c deleted file mode 100644 index c3f0cb912..000000000 --- a/server/shadow/X11/x11_update.c +++ /dev/null @@ -1,142 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * - * Copyright 2011-2014 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include -#include -#include - -#include - -#include -#include - -#include "../shadow_surface.h" - -#include "x11_shadow.h" - -XImage* x11_shadow_snapshot(x11ShadowSubsystem* subsystem, int x, int y, int width, int height) -{ - XImage* image; - - if (subsystem->use_xshm) - { - XCopyArea(subsystem->display, subsystem->root_window, subsystem->fb_pixmap, - subsystem->xdamage_gc, x, y, width, height, x, y); - image = subsystem->fb_image; - } - else - { - image = XGetImage(subsystem->display, subsystem->root_window, - x, y, width, height, AllPlanes, ZPixmap); - } - - return image; -} - -void x11_shadow_xdamage_subtract_region(x11ShadowSubsystem* subsystem, int x, int y, int width, int height) -{ - XRectangle region; - - region.x = x; - region.y = y; - region.width = width; - region.height = height; - -#ifdef WITH_XFIXES - XFixesSetRegion(subsystem->display, subsystem->xdamage_region, ®ion, 1); - XDamageSubtract(subsystem->display, subsystem->xdamage, subsystem->xdamage_region, None); -#endif -} - -int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem, int x, int y, int width, int height) -{ - XImage* image; - rdpShadowServer* server; - rdpShadowSurface* surface; - RECTANGLE_16 invalidRect; - - server = subsystem->server; - surface = server->surface; - - printf("x11_shadow_surface_copy: x: %d y: %d width: %d height: %d\n", - x, y, width, height); - - if (subsystem->use_xshm) - { - image = x11_shadow_snapshot(subsystem, x, y, width, height); - - freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, - surface->scanline, x, y, width, height, - (BYTE*) image->data, PIXEL_FORMAT_XRGB32, - image->bytes_per_line, x, y); - } - else - { - image = x11_shadow_snapshot(subsystem, x, y, width, height); - - freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, - surface->scanline, x, y, width, height, - (BYTE*) image->data, PIXEL_FORMAT_XRGB32, - image->bytes_per_line, x, y); - - XDestroyImage(image); - } - - invalidRect.left = x; - invalidRect.top = y; - invalidRect.right = width; - invalidRect.bottom = height; - - region16_union_rect(&(surface->invalidRegion), &(surface->invalidRegion), &invalidRect); - - return 1; -} - -int x11_shadow_check_event(x11ShadowSubsystem* subsystem) -{ - XEvent xevent; - int x, y, width, height; - XDamageNotifyEvent* notify; - - while (XPending(subsystem->display) > 0) - { - ZeroMemory(&xevent, sizeof(xevent)); - XNextEvent(subsystem->display, &xevent); - - if (xevent.type == subsystem->xdamage_notify_event) - { - notify = (XDamageNotifyEvent*) &xevent; - - x = notify->area.x; - y = notify->area.y; - width = notify->area.width; - height = notify->area.height; - - if (x11_shadow_surface_copy(subsystem, x, y, width, height) > 0) - { - x11_shadow_xdamage_subtract_region(subsystem, x, y, width, height); - } - } - } - - return 1; -} From fb45c779965acac35c1828d28bcc6a0283536acd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Sun, 13 Jul 2014 17:30:39 -0400 Subject: [PATCH 012/170] shadow: improve X11 event handling --- server/shadow/X11/x11_shadow.c | 100 ++++++++++++++++++++------------- server/shadow/X11/x11_shadow.h | 2 +- server/shadow/shadow_client.c | 12 ++-- 3 files changed, 68 insertions(+), 46 deletions(-) diff --git a/server/shadow/X11/x11_shadow.c b/server/shadow/X11/x11_shadow.c index 01e049eeb..a81bbf2c6 100644 --- a/server/shadow/X11/x11_shadow.c +++ b/server/shadow/X11/x11_shadow.c @@ -148,7 +148,7 @@ void x11_shadow_input_extended_mouse_event(x11ShadowSubsystem* subsystem, UINT16 #endif } -void x11_shadow_xdamage_subtract_region(x11ShadowSubsystem* subsystem, int x, int y, int width, int height) +void x11_shadow_validate_region(x11ShadowSubsystem* subsystem, int x, int y, int width, int height) { XRectangle region; @@ -163,9 +163,8 @@ void x11_shadow_xdamage_subtract_region(x11ShadowSubsystem* subsystem, int x, in #endif } -int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem, int x, int y, int width, int height) +int x11_shadow_invalidate_region(x11ShadowSubsystem* subsystem, int x, int y, int width, int height) { - XImage* image; rdpShadowServer* server; rdpShadowSurface* surface; RECTANGLE_16 invalidRect; @@ -173,6 +172,42 @@ int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem, int x, int y, int wid server = subsystem->server; surface = server->surface; + invalidRect.left = x; + invalidRect.top = y; + invalidRect.right = x + width; + invalidRect.bottom = y + height; + + printf("x11_shadow_invalidate_region: x: %d y: %d width: %d height: %d\n", + x, y, width, height); + + region16_union_rect(&(surface->invalidRegion), &(surface->invalidRegion), &invalidRect); + + return 1; +} + +int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem) +{ + int x, y; + int width; + int height; + XImage* image; + rdpShadowServer* server; + rdpShadowSurface* surface; + const RECTANGLE_16* extents; + + server = subsystem->server; + surface = server->surface; + + if (region16_is_empty(&(surface->invalidRegion))) + return 1; + + extents = region16_extents(&(surface->invalidRegion)); + + x = extents->left; + y = extents->top; + width = extents->right - extents->left; + height = extents->bottom - extents->top; + printf("x11_shadow_surface_copy: x: %d y: %d width: %d height: %d\n", x, y, width, height); @@ -196,17 +231,12 @@ int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem, int x, int y, int wid freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, surface->scanline, x, y, width, height, (BYTE*) image->data, PIXEL_FORMAT_XRGB32, - image->bytes_per_line, x, y); + image->bytes_per_line, 0, 0); XDestroyImage(image); } - invalidRect.left = x; - invalidRect.top = y; - invalidRect.right = width; - invalidRect.bottom = height; - - region16_union_rect(&(surface->invalidRegion), &(surface->invalidRegion), &invalidRect); + x11_shadow_validate_region(subsystem, x, y, width, height); return 1; } @@ -231,10 +261,7 @@ int x11_shadow_check_event(x11ShadowSubsystem* subsystem) width = notify->area.width; height = notify->area.height; - if (x11_shadow_surface_copy(subsystem, x, y, width, height) > 0) - { - x11_shadow_xdamage_subtract_region(subsystem, x, y, width, height); - } + x11_shadow_invalidate_region(subsystem, x, y, width, height); } } @@ -263,56 +290,49 @@ int x11_shadow_cursor_init(x11ShadowSubsystem* subsystem) #ifdef WITH_XDAMAGE -void x11_shadow_xdamage_init(x11ShadowSubsystem* subsystem) +int x11_shadow_xdamage_init(x11ShadowSubsystem* subsystem) { int damage_event; int damage_error; int major, minor; XGCValues values; - if (XDamageQueryExtension(subsystem->display, &damage_event, &damage_error) == 0) - { - fprintf(stderr, "XDamageQueryExtension failed\n"); - return; - } + if (!XDamageQueryExtension(subsystem->display, &damage_event, &damage_error)) + return -1; - XDamageQueryVersion(subsystem->display, &major, &minor); + if (!XDamageQueryVersion(subsystem->display, &major, &minor)) + return -1; - if (XDamageQueryVersion(subsystem->display, &major, &minor) == 0) - { - fprintf(stderr, "XDamageQueryVersion failed\n"); - return; - } - else if (major < 1) + if (major < 1) { fprintf(stderr, "XDamageQueryVersion failed: major:%d minor:%d\n", major, minor); - return; + return -1; } subsystem->xdamage_notify_event = damage_event + XDamageNotify; subsystem->xdamage = XDamageCreate(subsystem->display, subsystem->root_window, XDamageReportDeltaRectangles); - if (subsystem->xdamage == None) - { - fprintf(stderr, "XDamageCreate failed\n"); - return; - } + if (!subsystem->xdamage) + return -1; #ifdef WITH_XFIXES subsystem->xdamage_region = XFixesCreateRegion(subsystem->display, NULL, 0); - if (subsystem->xdamage_region == None) + if (!subsystem->xdamage_region) { fprintf(stderr, "XFixesCreateRegion failed\n"); XDamageDestroy(subsystem->display, subsystem->xdamage); subsystem->xdamage = None; - return; + return -1; } #endif values.subwindow_mode = IncludeInferiors; - subsystem->xdamage_gc = XCreateGC(subsystem->display, subsystem->root_window, GCSubwindowMode, &values); + subsystem->xdamage_gc = XCreateGC(subsystem->display, + subsystem->root_window, GCSubwindowMode, &values); XSetFunction(subsystem->display, subsystem->xdamage_gc, GXcopy); + + return 1; } #endif @@ -401,7 +421,7 @@ int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) * To see if your X11 server supports shared pixmaps, use: * xdpyinfo -ext MIT-SHM | grep "shared pixmaps" */ - subsystem->use_xshm = TRUE; + subsystem->use_xshm = FALSE; if (!getenv("DISPLAY")) { @@ -419,7 +439,7 @@ int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) if (!subsystem->display) { fprintf(stderr, "failed to open display: %s\n", XDisplayName(NULL)); - exit(1); + return -1; } subsystem->xfds = ConnectionNumber(subsystem->display); @@ -435,7 +455,7 @@ int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) if (!pfs) { fprintf(stderr, "XListPixmapFormats failed\n"); - exit(1); + return -1; } for (i = 0; i < pf_count; i++) @@ -460,7 +480,7 @@ int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) if (!vis) { fprintf(stderr, "XGetVisualInfo failed\n"); - exit(1); + return -1; } for (i = 0; i < vi_count; i++) diff --git a/server/shadow/X11/x11_shadow.h b/server/shadow/X11/x11_shadow.h index d8cba2a05..1a13838a1 100644 --- a/server/shadow/X11/x11_shadow.h +++ b/server/shadow/X11/x11_shadow.h @@ -88,7 +88,7 @@ extern "C" { #endif int x11_shadow_check_event(x11ShadowSubsystem* subsystem); -int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem, int x, int y, int width, int height); +int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem); void x11_shadow_input_synchronize_event(x11ShadowSubsystem* subsystem, UINT32 flags); void x11_shadow_input_keyboard_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 code); diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index ec53d1990..7e8ad1690 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -303,7 +303,7 @@ void* shadow_client_thread(rdpShadowClient* client) events[nCount++] = ClientEvent; events[nCount++] = SubsystemEvent; - status = WaitForMultipleObjects(nCount, events, FALSE, INFINITE); + status = WaitForMultipleObjects(nCount, events, FALSE, 250); if (WaitForSingleObject(client->StopEvent, 0) == WAIT_OBJECT_0) { @@ -322,11 +322,13 @@ void* shadow_client_thread(rdpShadowClient* client) if (WaitForSingleObject(SubsystemEvent, 0) == WAIT_OBJECT_0) { x11_shadow_check_event((x11ShadowSubsystem*) subsystem); + } - if (client->activated) - { - shadow_client_send_surface_bits(client); - } + if (client->activated) + { + x11_shadow_surface_copy((x11ShadowSubsystem*) subsystem); + shadow_client_send_surface_bits(client); + region16_clear(&(surface->invalidRegion)); } } From 04aaf5d59d8924b5e6bcbae42f948352ecbb3d2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Sun, 13 Jul 2014 19:42:57 -0400 Subject: [PATCH 013/170] shadow: add support for frame acks --- include/freerdp/server/shadow.h | 4 ++ server/shadow/X11/x11_shadow.c | 71 +++++++++++++----------- server/shadow/X11/x11_shadow.h | 2 +- server/shadow/shadow.c | 5 ++ server/shadow/shadow_client.c | 98 +++++++++++++++++++++++++++++---- server/shadow/shadow_encoder.c | 42 ++++++++++++++ server/shadow/shadow_encoder.h | 8 +++ server/shadow/shadow_surface.c | 5 ++ server/shadow/shadow_surface.h | 4 ++ 9 files changed, 195 insertions(+), 44 deletions(-) diff --git a/include/freerdp/server/shadow.h b/include/freerdp/server/shadow.h index 08753ce42..0c4c44352 100644 --- a/include/freerdp/server/shadow.h +++ b/include/freerdp/server/shadow.h @@ -29,6 +29,10 @@ #include #include +#include +#include +#include + typedef struct rdp_shadow_client rdpShadowClient; typedef struct rdp_shadow_server rdpShadowServer; typedef struct rdp_shadow_screen rdpShadowScreen; diff --git a/server/shadow/X11/x11_shadow.c b/server/shadow/X11/x11_shadow.c index a81bbf2c6..cb044a57e 100644 --- a/server/shadow/X11/x11_shadow.c +++ b/server/shadow/X11/x11_shadow.c @@ -177,10 +177,9 @@ int x11_shadow_invalidate_region(x11ShadowSubsystem* subsystem, int x, int y, in invalidRect.right = x + width; invalidRect.bottom = y + height; - printf("x11_shadow_invalidate_region: x: %d y: %d width: %d height: %d\n", - x, y, width, height); - + EnterCriticalSection(&(surface->lock)); region16_union_rect(&(surface->invalidRegion), &(surface->invalidRegion), &invalidRect); + LeaveCriticalSection(&(surface->lock)); return 1; } @@ -208,8 +207,7 @@ int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem) width = extents->right - extents->left; height = extents->bottom - extents->top; - printf("x11_shadow_surface_copy: x: %d y: %d width: %d height: %d\n", - x, y, width, height); + XLockDisplay(subsystem->display); if (subsystem->use_xshm) { @@ -226,7 +224,7 @@ int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem) else { image = XGetImage(subsystem->display, subsystem->root_window, - x, y, width, height, AllPlanes, ZPixmap); + x, y, width, height, AllPlanes, ZPixmap); freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, surface->scanline, x, y, width, height, @@ -238,34 +236,57 @@ int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem) x11_shadow_validate_region(subsystem, x, y, width, height); + XUnlockDisplay(subsystem->display); + return 1; } -int x11_shadow_check_event(x11ShadowSubsystem* subsystem) +void* x11_shadow_subsystem_thread(x11ShadowSubsystem* subsystem) { + DWORD status; + DWORD nCount; XEvent xevent; + HANDLE events[32]; + HANDLE StopEvent; int x, y, width, height; XDamageNotifyEvent* notify; - while (XPending(subsystem->display) > 0) + StopEvent = subsystem->server->StopEvent; + + nCount = 0; + events[nCount++] = StopEvent; + events[nCount++] = subsystem->event; + + while (1) { - ZeroMemory(&xevent, sizeof(xevent)); - XNextEvent(subsystem->display, &xevent); + status = WaitForMultipleObjects(nCount, events, FALSE, INFINITE); - if (xevent.type == subsystem->xdamage_notify_event) + if (WaitForSingleObject(StopEvent, 0) == WAIT_OBJECT_0) { - notify = (XDamageNotifyEvent*) &xevent; + break; + } - x = notify->area.x; - y = notify->area.y; - width = notify->area.width; - height = notify->area.height; + while (XPending(subsystem->display)) + { + ZeroMemory(&xevent, sizeof(xevent)); + XNextEvent(subsystem->display, &xevent); - x11_shadow_invalidate_region(subsystem, x, y, width, height); + if (xevent.type == subsystem->xdamage_notify_event) + { + notify = (XDamageNotifyEvent*) &xevent; + + x = notify->area.x; + y = notify->area.y; + width = notify->area.width; + height = notify->area.height; + + x11_shadow_invalidate_region(subsystem, x, y, width, height); + } } } - return 1; + ExitThread(0); + return NULL; } int x11_shadow_cursor_init(x11ShadowSubsystem* subsystem) @@ -275,10 +296,7 @@ int x11_shadow_cursor_init(x11ShadowSubsystem* subsystem) int error; if (!XFixesQueryExtension(subsystem->display, &event, &error)) - { - fprintf(stderr, "XFixesQueryExtension failed\n"); return -1; - } subsystem->xfixes_notify_event = event + XFixesCursorNotify; @@ -304,10 +322,7 @@ int x11_shadow_xdamage_init(x11ShadowSubsystem* subsystem) return -1; if (major < 1) - { - fprintf(stderr, "XDamageQueryVersion failed: major:%d minor:%d\n", major, minor); return -1; - } subsystem->xdamage_notify_event = damage_event + XDamageNotify; subsystem->xdamage = XDamageCreate(subsystem->display, subsystem->root_window, XDamageReportDeltaRectangles); @@ -349,10 +364,7 @@ int x11_shadow_xshm_init(x11ShadowSubsystem* server) return -1; if (!pixmaps) - { - fprintf(stderr, "XShmQueryVersion failed\n"); return -1; - } server->fb_shm_info.shmid = -1; server->fb_shm_info.shmaddr = (char*) -1; @@ -417,7 +429,6 @@ int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) XPixmapFormatValues* pfs; /** - * Recent X11 servers drop support for shared pixmaps * To see if your X11 server supports shared pixmaps, use: * xdpyinfo -ext MIT-SHM | grep "shared pixmaps" */ @@ -430,9 +441,7 @@ int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) } if (!XInitThreads()) - { - fprintf(stderr, "warning: XInitThreads() failure\n"); - } + return -1; subsystem->display = XOpenDisplay(NULL); diff --git a/server/shadow/X11/x11_shadow.h b/server/shadow/X11/x11_shadow.h index 1a13838a1..623264a9e 100644 --- a/server/shadow/X11/x11_shadow.h +++ b/server/shadow/X11/x11_shadow.h @@ -87,8 +87,8 @@ struct x11_shadow_subsystem extern "C" { #endif -int x11_shadow_check_event(x11ShadowSubsystem* subsystem); int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem); +void* x11_shadow_subsystem_thread(x11ShadowSubsystem* subsystem); void x11_shadow_input_synchronize_event(x11ShadowSubsystem* subsystem, UINT32 flags); void x11_shadow_input_keyboard_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 code); diff --git a/server/shadow/shadow.c b/server/shadow/shadow.c index 400d18ce0..260aee765 100644 --- a/server/shadow/shadow.c +++ b/server/shadow/shadow.c @@ -31,6 +31,7 @@ void* shadow_server_thread(rdpShadowServer* server) { DWORD status; DWORD nCount; + HANDLE thread; HANDLE events[32]; HANDLE StopEvent; freerdp_listener* listener; @@ -38,6 +39,10 @@ void* shadow_server_thread(rdpShadowServer* server) listener = server->listener; StopEvent = server->StopEvent; + thread = CreateThread(NULL, 0, + (LPTHREAD_START_ROUTINE) x11_shadow_subsystem_thread, + (void*) server->subsystem, 0, NULL); + while (1) { nCount = 0; diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index 7e8ad1690..6ff922e25 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -25,6 +25,7 @@ #include #include #include +#include #include @@ -32,11 +33,19 @@ void shadow_client_context_new(freerdp_peer* peer, rdpShadowClient* client) { + rdpSettings* settings; rdpShadowServer* server; server = (rdpShadowServer*) peer->ContextExtra; client->server = server; + settings = peer->settings; + settings->ColorDepth = 32; + settings->RemoteFxCodec = TRUE; + settings->BitmapCacheV3Enabled = TRUE; + settings->FrameMarkerCommandEnabled = TRUE; + settings->SurfaceFrameMarkerEnabled = TRUE; + client->StopEvent = CreateEvent(NULL, TRUE, FALSE, NULL); } @@ -78,6 +87,40 @@ BOOL shadow_client_activate(freerdp_peer* peer) return TRUE; } +void shadow_client_surface_frame_acknowledge(rdpShadowClient* client, UINT32 frameId) +{ + SURFACE_FRAME* frame; + wListDictionary* frameList; + + frameList = client->server->encoder->frameList; + frame = (SURFACE_FRAME*) ListDictionary_GetItemValue(frameList, (void*) (size_t) frameId); + + if (frame) + { + ListDictionary_Remove(frameList, (void*) (size_t) frameId); + free(frame); + } +} + +void shadow_client_suppress_output(rdpShadowClient* client, BYTE allow, RECTANGLE_16* area) +{ + +} + +int shadow_client_send_surface_frame_marker(rdpShadowClient* client, UINT32 action, UINT32 id) +{ + SURFACE_FRAME_MARKER surfaceFrameMarker; + rdpContext* context = (rdpContext*) client; + rdpUpdate* update = context->update; + + surfaceFrameMarker.frameAction = action; + surfaceFrameMarker.frameId = id; + + IFCALL(update->SurfaceFrameMarker, context, &surfaceFrameMarker); + + return 1; +} + int shadow_client_send_surface_bits(rdpShadowClient* client) { int i; @@ -89,6 +132,7 @@ int shadow_client_send_surface_bits(rdpShadowClient* client) int nSrcStep; BYTE* pSrcData; int numMessages; + UINT32 frameId = 0; rdpUpdate* update; rdpContext* context; rdpSettings* settings; @@ -126,6 +170,12 @@ int shadow_client_send_surface_bits(rdpShadowClient* client) pSrcData = surface->data; nSrcStep = surface->scanline; + if (encoder->frameAck) + { + frameId = (UINT32) shadow_encoder_create_frame_id(encoder); + shadow_client_send_surface_frame_marker(client, SURFACECMD_FRAMEACTION_BEGIN, frameId); + } + if (settings->RemoteFxCodec) { RFX_RECT rect; @@ -205,6 +255,11 @@ int shadow_client_send_surface_bits(rdpShadowClient* client) region16_clear(&(surface->invalidRegion)); + if (encoder->frameAck) + { + shadow_client_send_surface_frame_marker(client, SURFACECMD_FRAMEACTION_END, frameId); + } + return 0; } @@ -256,19 +311,25 @@ int shadow_generate_certificate(rdpSettings* settings) void* shadow_client_thread(rdpShadowClient* client) { + int fps; DWORD status; DWORD nCount; + UINT64 cTime; + DWORD dwTimeout; + DWORD dwInterval; + UINT64 frameTime; HANDLE events[32]; HANDLE StopEvent; HANDLE ClientEvent; - HANDLE SubsystemEvent; freerdp_peer* peer; rdpSettings* settings; rdpShadowServer* server; rdpShadowSurface* surface; + rdpShadowEncoder* encoder; rdpShadowSubsystem* subsystem; server = client->server; + encoder = server->encoder; surface = server->surface; subsystem = server->subsystem; @@ -292,18 +353,27 @@ void* shadow_client_thread(rdpShadowClient* client) peer->Initialize(peer); + peer->update->SurfaceFrameAcknowledge = (pSurfaceFrameAcknowledge) + shadow_client_surface_frame_acknowledge; + peer->update->SuppressOutput = (pSuppressOutput) shadow_client_suppress_output; + + fps = 16; + dwInterval = 1000 / fps; + frameTime = GetTickCount64() + dwInterval; + StopEvent = client->StopEvent; ClientEvent = peer->GetEventHandle(peer); - SubsystemEvent = subsystem->event; while (1) { nCount = 0; events[nCount++] = StopEvent; events[nCount++] = ClientEvent; - events[nCount++] = SubsystemEvent; - status = WaitForMultipleObjects(nCount, events, FALSE, 250); + cTime = GetTickCount64(); + dwTimeout = (cTime > frameTime) ? 0 : frameTime - cTime; + + status = WaitForMultipleObjects(nCount, events, FALSE, dwTimeout); if (WaitForSingleObject(client->StopEvent, 0) == WAIT_OBJECT_0) { @@ -319,16 +389,20 @@ void* shadow_client_thread(rdpShadowClient* client) } } - if (WaitForSingleObject(SubsystemEvent, 0) == WAIT_OBJECT_0) + if ((status == WAIT_TIMEOUT) || (GetTickCount64() > frameTime)) { - x11_shadow_check_event((x11ShadowSubsystem*) subsystem); - } + if (client->activated) + { + EnterCriticalSection(&(surface->lock)); + x11_shadow_surface_copy((x11ShadowSubsystem*) subsystem); + shadow_client_send_surface_bits(client); + region16_clear(&(surface->invalidRegion)); + LeaveCriticalSection(&(surface->lock)); + } - if (client->activated) - { - x11_shadow_surface_copy((x11ShadowSubsystem*) subsystem); - shadow_client_send_surface_bits(client); - region16_clear(&(surface->invalidRegion)); + fps = encoder->fps; + dwInterval = 1000 / fps; + frameTime += dwInterval; } } diff --git a/server/shadow/shadow_encoder.c b/server/shadow/shadow_encoder.c index 70aa4e54a..82c5aab56 100644 --- a/server/shadow/shadow_encoder.c +++ b/server/shadow/shadow_encoder.c @@ -24,6 +24,40 @@ #include "shadow_encoder.h" +int shadow_encoder_create_frame_id(rdpShadowEncoder* encoder) +{ + UINT32 frameId; + int inFlightFrames; + SURFACE_FRAME* frame; + + inFlightFrames = ListDictionary_Count(encoder->frameList); + + if (inFlightFrames > encoder->frameAck) + { + encoder->fps = (100 / (inFlightFrames + 1) * encoder->maxFps) / 100; + } + else + { + encoder->fps += 2; + + if (encoder->fps > encoder->maxFps) + encoder->fps = encoder->maxFps; + } + + if (encoder->fps < 1) + encoder->fps = 1; + + frame = (SURFACE_FRAME*) malloc(sizeof(SURFACE_FRAME)); + + if (!frame) + return -1; + + frameId = frame->frameId = ++encoder->frameId; + ListDictionary_Add(encoder->frameList, (void*) (size_t) frame->frameId, frame); + + return (int) frame->frameId; +} + int shadow_encoder_grid_init(rdpShadowEncoder* encoder) { int i, j, k; @@ -129,6 +163,12 @@ rdpShadowEncoder* shadow_encoder_new(rdpShadowServer* server) shadow_encoder_grid_init(encoder); + encoder->fps = 10; + encoder->maxFps = 32; + encoder->frameId = 0; + encoder->frameAck = TRUE; + encoder->frameList = ListDictionary_New(TRUE); + return encoder; } @@ -150,5 +190,7 @@ void shadow_encoder_free(rdpShadowEncoder* encoder) shadow_encoder_grid_uninit(encoder); + ListDictionary_Free(encoder->frameList); + free(encoder); } diff --git a/server/shadow/shadow_encoder.h b/server/shadow/shadow_encoder.h index ddda3de0d..5170ed6c3 100644 --- a/server/shadow/shadow_encoder.h +++ b/server/shadow/shadow_encoder.h @@ -57,12 +57,20 @@ struct rdp_shadow_encoder wStream* bs; wStream* bts; BITMAP_PLANAR_CONTEXT* planar; + + int fps; + int maxFps; + BOOL frameAck; + UINT32 frameId; + wListDictionary* frameList; }; #ifdef __cplusplus extern "C" { #endif +int shadow_encoder_create_frame_id(rdpShadowEncoder* encoder); + rdpShadowEncoder* shadow_encoder_new(rdpShadowServer* server); void shadow_encoder_free(rdpShadowEncoder* encoder); diff --git a/server/shadow/shadow_surface.c b/server/shadow/shadow_surface.c index e9a3f2341..e9c22cf66 100644 --- a/server/shadow/shadow_surface.c +++ b/server/shadow/shadow_surface.c @@ -46,6 +46,9 @@ rdpShadowSurface* shadow_surface_new(rdpShadowServer* server, int width, int hei ZeroMemory(surface->data, surface->scanline * surface->height); + if (!InitializeCriticalSectionAndSpinCount(&(surface->lock), 4000)) + return NULL; + region16_init(&(surface->invalidRegion)); return surface; @@ -58,6 +61,8 @@ void shadow_surface_free(rdpShadowSurface* surface) free(surface->data); + DeleteCriticalSection(&(surface->lock)); + region16_uninit(&(surface->invalidRegion)); free(surface); diff --git a/server/shadow/shadow_surface.h b/server/shadow/shadow_surface.h index 0e8a64953..8d86f4b01 100644 --- a/server/shadow/shadow_surface.h +++ b/server/shadow/shadow_surface.h @@ -21,6 +21,9 @@ #include +#include +#include + struct rdp_shadow_surface { rdpShadowServer* server; @@ -30,6 +33,7 @@ struct rdp_shadow_surface int scanline; BYTE* data; + CRITICAL_SECTION lock; REGION16 invalidRegion; }; From 8c9434f0dc12776f009ac76121f40a91205f68c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Sun, 13 Jul 2014 21:20:36 -0400 Subject: [PATCH 014/170] shadow: remove header include dependency on subsystem --- include/freerdp/server/shadow.h | 36 +++++++- server/shadow/X11/x11_shadow.c | 159 ++++++++++++++++++++------------ server/shadow/X11/x11_shadow.h | 13 +-- server/shadow/shadow.c | 32 +++++-- server/shadow/shadow.h | 7 +- server/shadow/shadow_client.c | 5 +- server/shadow/shadow_client.h | 2 +- server/shadow/shadow_input.c | 25 ++++- server/shadow/shadow_input.h | 2 +- 9 files changed, 193 insertions(+), 88 deletions(-) diff --git a/include/freerdp/server/shadow.h b/include/freerdp/server/shadow.h index 0c4c44352..4917b3947 100644 --- a/include/freerdp/server/shadow.h +++ b/include/freerdp/server/shadow.h @@ -40,6 +40,22 @@ typedef struct rdp_shadow_surface rdpShadowSurface; typedef struct rdp_shadow_encoder rdpShadowEncoder; typedef struct rdp_shadow_subsystem rdpShadowSubsystem; +typedef rdpShadowSubsystem* (*pfnShadowCreateSubsystem)(rdpShadowServer* server); + +typedef int (*pfnShadowSubsystemInit)(rdpShadowSubsystem* subsystem); +typedef int (*pfnShadowSubsystemUninit)(rdpShadowSubsystem* subsystem); +typedef int (*pfnShadowSubsystemStart)(rdpShadowSubsystem* subsystem); +typedef int (*pfnShadowSubsystemStop)(rdpShadowSubsystem* subsystem); +typedef void (*pfnShadowSubsystemFree)(rdpShadowSubsystem* subsystem); + +typedef int (*pfnShadowSurfaceCopy)(rdpShadowSubsystem* subsystem); + +typedef int (*pfnShadowSynchronizeEvent)(rdpShadowSubsystem* subsystem, UINT32 flags); +typedef int (*pfnShadowKeyboardEvent)(rdpShadowSubsystem* subsystem, UINT16 flags, UINT16 code); +typedef int (*pfnShadowUnicodeKeyboardEvent)(rdpShadowSubsystem* subsystem, UINT16 flags, UINT16 code); +typedef int (*pfnShadowMouseEvent)(rdpShadowSubsystem* subsystem, UINT16 flags, UINT16 x, UINT16 y); +typedef int (*pfnShadowExtendedMouseEvent)(rdpShadowSubsystem* subsystem, UINT16 flags, UINT16 x, UINT16 y); + struct rdp_shadow_client { rdpContext context; @@ -62,13 +78,29 @@ struct rdp_shadow_server DWORD port; freerdp_listener* listener; + pfnShadowCreateSubsystem CreateSubsystem; }; #define RDP_SHADOW_SUBSYSTEM_COMMON() \ - rdpShadowServer* server; \ HANDLE event; \ int monitorCount; \ - MONITOR_DEF monitors[16] + MONITOR_DEF monitors[16]; \ + \ + pfnShadowSubsystemInit Init; \ + pfnShadowSubsystemUninit Uninit; \ + pfnShadowSubsystemStart Start; \ + pfnShadowSubsystemStop Stop; \ + pfnShadowSubsystemFree Free; \ + \ + pfnShadowSurfaceCopy SurfaceCopy; \ + \ + pfnShadowSynchronizeEvent SynchronizeEvent; \ + pfnShadowKeyboardEvent KeyboardEvent; \ + pfnShadowUnicodeKeyboardEvent UnicodeKeyboardEvent; \ + pfnShadowMouseEvent MouseEvent; \ + pfnShadowExtendedMouseEvent ExtendedMouseEvent; \ + \ + rdpShadowServer* server struct rdp_shadow_subsystem { diff --git a/server/shadow/X11/x11_shadow.c b/server/shadow/X11/x11_shadow.c index cb044a57e..c44e4183b 100644 --- a/server/shadow/X11/x11_shadow.c +++ b/server/shadow/X11/x11_shadow.c @@ -212,7 +212,9 @@ int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem) if (subsystem->use_xshm) { XCopyArea(subsystem->display, subsystem->root_window, subsystem->fb_pixmap, - subsystem->xdamage_gc, x, y, width, height, x, y); + subsystem->xshm_gc, x, y, width, height, x, y); + + XSync(subsystem->display, False); image = subsystem->fb_image; @@ -306,14 +308,12 @@ int x11_shadow_cursor_init(x11ShadowSubsystem* subsystem) return 0; } -#ifdef WITH_XDAMAGE - int x11_shadow_xdamage_init(x11ShadowSubsystem* subsystem) { +#ifdef WITH_XDAMAGE int damage_event; int damage_error; int major, minor; - XGCValues values; if (!XDamageQueryExtension(subsystem->display, &damage_event, &damage_error)) return -1; @@ -334,86 +334,89 @@ int x11_shadow_xdamage_init(x11ShadowSubsystem* subsystem) subsystem->xdamage_region = XFixesCreateRegion(subsystem->display, NULL, 0); if (!subsystem->xdamage_region) - { - fprintf(stderr, "XFixesCreateRegion failed\n"); - XDamageDestroy(subsystem->display, subsystem->xdamage); - subsystem->xdamage = None; return -1; - } #endif - values.subwindow_mode = IncludeInferiors; - subsystem->xdamage_gc = XCreateGC(subsystem->display, - subsystem->root_window, GCSubwindowMode, &values); - XSetFunction(subsystem->display, subsystem->xdamage_gc, GXcopy); - return 1; +#else + return -1; +#endif } -#endif - -int x11_shadow_xshm_init(x11ShadowSubsystem* server) +int x11_shadow_xshm_init(x11ShadowSubsystem* subsystem) { Bool pixmaps; int major, minor; + XGCValues values; - if (!XShmQueryExtension(server->display)) + if (!XShmQueryExtension(subsystem->display)) return -1; - if (!XShmQueryVersion(server->display, &major, &minor, &pixmaps)) + if (!XShmQueryVersion(subsystem->display, &major, &minor, &pixmaps)) return -1; if (!pixmaps) return -1; - server->fb_shm_info.shmid = -1; - server->fb_shm_info.shmaddr = (char*) -1; + subsystem->fb_shm_info.shmid = -1; + subsystem->fb_shm_info.shmaddr = (char*) -1; + subsystem->fb_shm_info.readOnly = False; - server->fb_image = XShmCreateImage(server->display, server->visual, server->depth, - ZPixmap, NULL, &(server->fb_shm_info), server->width, server->height); + subsystem->fb_image = XShmCreateImage(subsystem->display, subsystem->visual, subsystem->depth, + ZPixmap, NULL, &(subsystem->fb_shm_info), subsystem->width, subsystem->height); - if (!server->fb_image) + if (!subsystem->fb_image) { fprintf(stderr, "XShmCreateImage failed\n"); return -1; } - server->fb_shm_info.shmid = shmget(IPC_PRIVATE, - server->fb_image->bytes_per_line * server->fb_image->height, IPC_CREAT | 0600); + subsystem->fb_shm_info.shmid = shmget(IPC_PRIVATE, + subsystem->fb_image->bytes_per_line * subsystem->fb_image->height, IPC_CREAT | 0600); - if (server->fb_shm_info.shmid == -1) + if (subsystem->fb_shm_info.shmid == -1) { fprintf(stderr, "shmget failed\n"); return -1; } - server->fb_shm_info.readOnly = False; - server->fb_shm_info.shmaddr = shmat(server->fb_shm_info.shmid, 0, 0); - server->fb_image->data = server->fb_shm_info.shmaddr; + subsystem->fb_shm_info.shmaddr = shmat(subsystem->fb_shm_info.shmid, 0, 0); + subsystem->fb_image->data = subsystem->fb_shm_info.shmaddr; - if (server->fb_shm_info.shmaddr == ((char*) -1)) + if (subsystem->fb_shm_info.shmaddr == ((char*) -1)) { fprintf(stderr, "shmat failed\n"); return -1; } - if (!XShmAttach(server->display, &(server->fb_shm_info))) + if (!XShmAttach(subsystem->display, &(subsystem->fb_shm_info))) return -1; - XSync(server->display, False); + XSync(subsystem->display, False); - shmctl(server->fb_shm_info.shmid, IPC_RMID, 0); + shmctl(subsystem->fb_shm_info.shmid, IPC_RMID, 0); fprintf(stderr, "display: %p root_window: %p width: %d height: %d depth: %d\n", - server->display, (void*) server->root_window, server->fb_image->width, server->fb_image->height, server->fb_image->depth); + subsystem->display, (void*) subsystem->root_window, subsystem->fb_image->width, subsystem->fb_image->height, subsystem->fb_image->depth); - server->fb_pixmap = XShmCreatePixmap(server->display, - server->root_window, server->fb_image->data, &(server->fb_shm_info), - server->fb_image->width, server->fb_image->height, server->fb_image->depth); + subsystem->fb_pixmap = XShmCreatePixmap(subsystem->display, + subsystem->root_window, subsystem->fb_image->data, &(subsystem->fb_shm_info), + subsystem->fb_image->width, subsystem->fb_image->height, subsystem->fb_image->depth); - if (!server->fb_pixmap) + XSync(subsystem->display, False); + + if (!subsystem->fb_pixmap) return -1; + values.subwindow_mode = IncludeInferiors; + values.graphics_exposures = False; + + subsystem->xshm_gc = XCreateGC(subsystem->display, subsystem->root_window, + GCSubwindowMode | GCGraphicsExposures, &values); + + XSetFunction(subsystem->display, subsystem->xshm_gc, GXcopy); + XSync(subsystem->display, False); + return 1; } @@ -432,7 +435,9 @@ int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) * To see if your X11 server supports shared pixmaps, use: * xdpyinfo -ext MIT-SHM | grep "shared pixmaps" */ - subsystem->use_xshm = FALSE; + + subsystem->use_xshm = TRUE; + subsystem->use_xdamage = TRUE; if (!getenv("DISPLAY")) { @@ -512,12 +517,11 @@ int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) subsystem->use_xshm = FALSE; } - if (subsystem->use_xshm) - printf("Using X Shared Memory Extension (XShm)\n"); - -#ifdef WITH_XDAMAGE - x11_shadow_xdamage_init(subsystem); -#endif + if (subsystem->use_xdamage) + { + if (x11_shadow_xdamage_init(subsystem) < 0) + subsystem->use_xdamage = FALSE; + } x11_shadow_cursor_init(subsystem); @@ -530,6 +534,9 @@ int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) subsystem->monitors[0].bottom = subsystem->height; subsystem->monitors[0].flags = 1; + if (subsystem->use_xshm) + printf("Using X Shared Memory Extension (XShm)\n"); + return 1; } @@ -553,7 +560,39 @@ int x11_shadow_subsystem_uninit(x11ShadowSubsystem* subsystem) return 1; } -rdpShadowSubsystem* x11_shadow_subsystem_new(rdpShadowServer* server) +int x11_shadow_subsystem_start(x11ShadowSubsystem* subsystem) +{ + HANDLE thread; + + if (!subsystem) + return -1; + + thread = CreateThread(NULL, 0, + (LPTHREAD_START_ROUTINE) x11_shadow_subsystem_thread, + (void*) subsystem, 0, NULL); + + return 1; +} + +int x11_shadow_subsystem_stop(x11ShadowSubsystem* subsystem) +{ + if (!subsystem) + return -1; + + return 1; +} + +void x11_shadow_subsystem_free(x11ShadowSubsystem* subsystem) +{ + if (!subsystem) + return; + + x11_shadow_subsystem_uninit(subsystem); + + free(subsystem); +} + +x11ShadowSubsystem* x11_shadow_subsystem_new(rdpShadowServer* server) { x11ShadowSubsystem* subsystem; @@ -564,18 +603,24 @@ rdpShadowSubsystem* x11_shadow_subsystem_new(rdpShadowServer* server) subsystem->server = server; - x11_shadow_subsystem_init(subsystem); + subsystem->Init = (pfnShadowSubsystemInit) x11_shadow_subsystem_init; + subsystem->Uninit = (pfnShadowSubsystemInit) x11_shadow_subsystem_uninit; + subsystem->Start = (pfnShadowSubsystemStart) x11_shadow_subsystem_start; + subsystem->Stop = (pfnShadowSubsystemStop) x11_shadow_subsystem_stop; + subsystem->Free = (pfnShadowSubsystemFree) x11_shadow_subsystem_free; - return (rdpShadowSubsystem*) subsystem; + subsystem->SurfaceCopy = (pfnShadowSurfaceCopy) x11_shadow_surface_copy; + + subsystem->SynchronizeEvent = (pfnShadowSynchronizeEvent) x11_shadow_input_synchronize_event; + subsystem->KeyboardEvent = (pfnShadowKeyboardEvent) x11_shadow_input_keyboard_event; + subsystem->UnicodeKeyboardEvent = (pfnShadowUnicodeKeyboardEvent) x11_shadow_input_unicode_keyboard_event; + subsystem->MouseEvent = (pfnShadowMouseEvent) x11_shadow_input_mouse_event; + subsystem->ExtendedMouseEvent = (pfnShadowExtendedMouseEvent) x11_shadow_input_extended_mouse_event; + + return subsystem; } -void x11_shadow_subsystem_free(rdpShadowSubsystem* subsystem) +rdpShadowSubsystem* X11_ShadowCreateSubsystem(rdpShadowServer* server) { - if (!subsystem) - return; - - x11_shadow_subsystem_uninit((x11ShadowSubsystem*) subsystem); - - free(subsystem); + return (rdpShadowSubsystem*) x11_shadow_subsystem_new(server); } - diff --git a/server/shadow/X11/x11_shadow.h b/server/shadow/X11/x11_shadow.h index 623264a9e..346f0ea4c 100644 --- a/server/shadow/X11/x11_shadow.h +++ b/server/shadow/X11/x11_shadow.h @@ -66,13 +66,14 @@ struct x11_shadow_subsystem int scanline_pad; BOOL use_xshm; + BOOL use_xdamage; XImage* fb_image; Pixmap fb_pixmap; Window root_window; XShmSegmentInfo fb_shm_info; #ifdef WITH_XDAMAGE - GC xdamage_gc; + GC xshm_gc; Damage xdamage; int xdamage_notify_event; XserverRegion xdamage_region; @@ -87,17 +88,7 @@ struct x11_shadow_subsystem extern "C" { #endif -int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem); -void* x11_shadow_subsystem_thread(x11ShadowSubsystem* subsystem); -void x11_shadow_input_synchronize_event(x11ShadowSubsystem* subsystem, UINT32 flags); -void x11_shadow_input_keyboard_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 code); -void x11_shadow_input_unicode_keyboard_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 code); -void x11_shadow_input_mouse_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 x, UINT16 y); -void x11_shadow_input_extended_mouse_event(x11ShadowSubsystem* subsystem, UINT16 flags, UINT16 x, UINT16 y); - -rdpShadowSubsystem* x11_shadow_subsystem_new(rdpShadowServer* server); -void x11_shadow_subsystem_free(rdpShadowSubsystem* subsystem); #ifdef __cplusplus } diff --git a/server/shadow/shadow.c b/server/shadow/shadow.c index 260aee765..b566a236b 100644 --- a/server/shadow/shadow.c +++ b/server/shadow/shadow.c @@ -27,21 +27,31 @@ #include "shadow.h" +#ifdef WITH_X11 +#define WITH_SHADOW_X11 +#endif + +#ifdef WITH_SHADOW_X11 +extern rdpShadowSubsystem* X11_ShadowCreateSubsystem(rdpShadowServer* server); +#endif + void* shadow_server_thread(rdpShadowServer* server) { DWORD status; DWORD nCount; - HANDLE thread; HANDLE events[32]; HANDLE StopEvent; freerdp_listener* listener; + rdpShadowSubsystem* subsystem; listener = server->listener; StopEvent = server->StopEvent; + subsystem = server->subsystem; - thread = CreateThread(NULL, 0, - (LPTHREAD_START_ROUTINE) x11_shadow_subsystem_thread, - (void*) server->subsystem, 0, NULL); + if (subsystem->Start) + { + subsystem->Start(subsystem); + } while (1) { @@ -71,6 +81,11 @@ void* shadow_server_thread(rdpShadowServer* server) listener->Close(listener); + if (subsystem->Stop) + { + subsystem->Stop(subsystem); + } + ExitThread(0); return NULL; @@ -127,7 +142,12 @@ rdpShadowServer* shadow_server_new(int argc, char** argv) server->listener->info = (void*) server; server->listener->PeerAccepted = shadow_client_accepted; - server->subsystem = x11_shadow_subsystem_new(server); +#ifdef WITH_SHADOW_X11 + server->CreateSubsystem = X11_ShadowCreateSubsystem; +#endif + + if (server->CreateSubsystem) + server->subsystem = server->CreateSubsystem(server); if (!server->subsystem) return NULL; @@ -156,7 +176,7 @@ void shadow_server_free(rdpShadowServer* server) shadow_encoder_free(server->encoder); - x11_shadow_subsystem_free(server->subsystem); + server->subsystem->Free(server->subsystem); free(server); } diff --git a/server/shadow/shadow.h b/server/shadow/shadow.h index c3a4021be..65f20f332 100644 --- a/server/shadow/shadow.h +++ b/server/shadow/shadow.h @@ -21,8 +21,8 @@ #include -#include "X11/x11_shadow.h" - +#include "shadow_client.h" +#include "shadow_input.h" #include "shadow_screen.h" #include "shadow_surface.h" #include "shadow_encoder.h" @@ -31,8 +31,7 @@ extern "C" { #endif -void shadow_input_register_callbacks(rdpInput* input); -void shadow_client_accepted(freerdp_listener* instance, freerdp_peer* client); + #ifdef __cplusplus } diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index 6ff922e25..a5bf77916 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -394,7 +394,10 @@ void* shadow_client_thread(rdpShadowClient* client) if (client->activated) { EnterCriticalSection(&(surface->lock)); - x11_shadow_surface_copy((x11ShadowSubsystem*) subsystem); + + if (subsystem->SurfaceCopy) + subsystem->SurfaceCopy(subsystem); + shadow_client_send_surface_bits(client); region16_clear(&(surface->invalidRegion)); LeaveCriticalSection(&(surface->lock)); diff --git a/server/shadow/shadow_client.h b/server/shadow/shadow_client.h index ce2861387..f80f047f6 100644 --- a/server/shadow/shadow_client.h +++ b/server/shadow/shadow_client.h @@ -25,7 +25,7 @@ extern "C" { #endif - +void shadow_client_accepted(freerdp_listener* instance, freerdp_peer* client); #ifdef __cplusplus } diff --git a/server/shadow/shadow_input.c b/server/shadow/shadow_input.c index f3110cd0b..5e8c1acd6 100644 --- a/server/shadow/shadow_input.c +++ b/server/shadow/shadow_input.c @@ -27,7 +27,10 @@ void shadow_input_synchronize_event(rdpInput* input, UINT32 flags) rdpShadowClient* client = (rdpShadowClient*) input->context; rdpShadowSubsystem* subsystem = client->server->subsystem; - x11_shadow_input_synchronize_event((x11ShadowSubsystem*) subsystem, flags); + if (subsystem->SynchronizeEvent) + { + subsystem->SynchronizeEvent(subsystem, flags); + } } void shadow_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) @@ -35,7 +38,10 @@ void shadow_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) rdpShadowClient* client = (rdpShadowClient*) input->context; rdpShadowSubsystem* subsystem = client->server->subsystem; - x11_shadow_input_keyboard_event((x11ShadowSubsystem*) subsystem, flags, code); + if (subsystem->KeyboardEvent) + { + subsystem->KeyboardEvent(subsystem, flags, code); + } } void shadow_input_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) @@ -43,7 +49,10 @@ void shadow_input_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT16 c rdpShadowClient* client = (rdpShadowClient*) input->context; rdpShadowSubsystem* subsystem = client->server->subsystem; - x11_shadow_input_unicode_keyboard_event((x11ShadowSubsystem*) subsystem, flags, code); + if (subsystem->UnicodeKeyboardEvent) + { + subsystem->UnicodeKeyboardEvent(subsystem, flags, code); + } } void shadow_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) @@ -51,7 +60,10 @@ void shadow_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) rdpShadowClient* client = (rdpShadowClient*) input->context; rdpShadowSubsystem* subsystem = client->server->subsystem; - x11_shadow_input_mouse_event((x11ShadowSubsystem*) subsystem, flags, x, y); + if (subsystem->MouseEvent) + { + subsystem->MouseEvent(subsystem, flags, x, y); + } } void shadow_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) @@ -59,7 +71,10 @@ void shadow_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, rdpShadowClient* client = (rdpShadowClient*) input->context; rdpShadowSubsystem* subsystem = client->server->subsystem; - x11_shadow_input_extended_mouse_event((x11ShadowSubsystem*) subsystem, flags, x, y); + if (subsystem->ExtendedMouseEvent) + { + subsystem->ExtendedMouseEvent(subsystem, flags, x, y); + } } void shadow_input_register_callbacks(rdpInput* input) diff --git a/server/shadow/shadow_input.h b/server/shadow/shadow_input.h index 2e785259d..cc87ffc6e 100644 --- a/server/shadow/shadow_input.h +++ b/server/shadow/shadow_input.h @@ -25,7 +25,7 @@ extern "C" { #endif - +void shadow_input_register_callbacks(rdpInput* input); #ifdef __cplusplus } From 689902c995a0a5c3938d2911411a03e480cf0f8b Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Mon, 14 Jul 2014 19:27:50 +0200 Subject: [PATCH 015/170] Moved update thread from client to library. --- .../Android/FreeRDPCore/jni/android_freerdp.c | 52 +----------------- client/Sample/freerdp.c | 1 + client/Windows/wf_interface.c | 54 ------------------- client/X11/xf_client.c | 40 +------------- libfreerdp/core/freerdp.c | 1 + libfreerdp/core/message.c | 36 +++++++++++-- libfreerdp/core/message.h | 2 + libfreerdp/core/update.c | 11 ++-- libfreerdp/core/update.h | 1 + 9 files changed, 49 insertions(+), 149 deletions(-) diff --git a/client/Android/FreeRDPCore/jni/android_freerdp.c b/client/Android/FreeRDPCore/jni/android_freerdp.c index 5f75ce40e..f203a8ae2 100644 --- a/client/Android/FreeRDPCore/jni/android_freerdp.c +++ b/client/Android/FreeRDPCore/jni/android_freerdp.c @@ -270,40 +270,6 @@ static void android_process_channel_event(rdpChannels* channels, freerdp* instan } } -static void *jni_update_thread(void *arg) -{ - int status; - wMessage message; - wMessageQueue* queue; - freerdp* instance = (freerdp*) arg; - - assert( NULL != instance); - - DEBUG_ANDROID("Start."); - - status = 1; - queue = freerdp_get_message_queue(instance, FREERDP_UPDATE_MESSAGE_QUEUE); - - while (MessageQueue_Wait(queue)) - { - while (MessageQueue_Peek(queue, &message, TRUE)) - { - status = freerdp_message_queue_process_message(instance, FREERDP_UPDATE_MESSAGE_QUEUE, &message); - - if (!status) - break; - } - - if (!status) - break; - } - - DEBUG_ANDROID("Quit."); - - ExitThread(0); - return NULL; -} - static void* jni_input_thread(void* arg) { HANDLE event[3]; @@ -394,11 +360,9 @@ static int android_freerdp_run(freerdp* instance) const rdpSettings* settings = instance->context->settings; - HANDLE update_thread; HANDLE input_thread; HANDLE channels_thread; - BOOL async_update = settings->AsyncUpdate; BOOL async_input = settings->AsyncInput; BOOL async_channels = settings->AsyncChannels; BOOL async_transport = settings->AsyncTransport; @@ -417,12 +381,6 @@ static int android_freerdp_run(freerdp* instance) return 0; } - if (async_update) - { - update_thread = CreateThread(NULL, 0, - (LPTHREAD_START_ROUTINE) jni_update_thread, instance, 0, NULL); - } - if (async_input) { input_thread = CreateThread(NULL, 0, @@ -571,15 +529,7 @@ static int android_freerdp_run(freerdp* instance) WaitForSingleObject(channels_thread, INFINITE); CloseHandle(channels_thread); } - - if (async_update) - { - wMessageQueue* update_queue = freerdp_get_message_queue(instance, FREERDP_UPDATE_MESSAGE_QUEUE); - MessageQueue_PostQuit(update_queue, 0); - WaitForSingleObject(update_thread, INFINITE); - CloseHandle(update_thread); - } - + if (async_input) { wMessageQueue* input_queue = freerdp_get_message_queue(instance, FREERDP_INPUT_MESSAGE_QUEUE); diff --git a/client/Sample/freerdp.c b/client/Sample/freerdp.c index 4495bf9a9..cedc3dc98 100644 --- a/client/Sample/freerdp.c +++ b/client/Sample/freerdp.c @@ -294,6 +294,7 @@ void* thread_func(void* param) if (g_thread_count < 1) ReleaseSemaphore(g_sem, 1, NULL); + ExitThread(0); return NULL; } diff --git a/client/Windows/wf_interface.c b/client/Windows/wf_interface.c index ec7c70db2..12e924605 100644 --- a/client/Windows/wf_interface.c +++ b/client/Windows/wf_interface.c @@ -652,39 +652,6 @@ void* wf_input_thread(void* arg) return NULL; } -void* wf_update_thread(void* arg) -{ - int status; - wMessage message; - wMessageQueue* queue; - freerdp* instance = (freerdp*) arg; - - assert( NULL != instance); - - status = 1; - queue = freerdp_get_message_queue(instance, - FREERDP_UPDATE_MESSAGE_QUEUE); - - while (MessageQueue_Wait(queue)) - { - while (MessageQueue_Peek(queue, &message, TRUE)) - { - status = freerdp_message_queue_process_message(instance, - FREERDP_UPDATE_MESSAGE_QUEUE, &message); - - if (!status) - break; - } - - if (!status) - break; - } - - ExitThread(0); - - return NULL; -} - void* wf_channels_thread(void* arg) { int status; @@ -728,11 +695,9 @@ DWORD WINAPI wf_client_thread(LPVOID lpParam) rdpChannels* channels; rdpSettings* settings; - BOOL async_update; BOOL async_input; BOOL async_channels; BOOL async_transport; - HANDLE update_thread; HANDLE input_thread; HANDLE channels_thread; @@ -751,18 +716,10 @@ DWORD WINAPI wf_client_thread(LPVOID lpParam) channels = instance->context->channels; settings = instance->context->settings; - async_update = settings->AsyncUpdate; async_input = settings->AsyncInput; async_channels = settings->AsyncChannels; async_transport = settings->AsyncTransport; - if (async_update) - { - update_thread = CreateThread(NULL, 0, - (LPTHREAD_START_ROUTINE) wf_update_thread, - instance, 0, NULL); - } - if (async_input) { input_thread = CreateThread(NULL, 0, @@ -905,17 +862,6 @@ DWORD WINAPI wf_client_thread(LPVOID lpParam) /* cleanup */ freerdp_channels_close(channels, instance); - if (async_update) - { - wMessageQueue* update_queue; - - update_queue = freerdp_get_message_queue(instance, - FREERDP_UPDATE_MESSAGE_QUEUE); - MessageQueue_PostQuit(update_queue, 0); - WaitForSingleObject(update_thread, INFINITE); - CloseHandle(update_thread); - } - if (async_input) { wMessageQueue* input_queue; diff --git a/client/X11/xf_client.c b/client/X11/xf_client.c index 56de3fcf9..8b4cc4797 100644 --- a/client/X11/xf_client.c +++ b/client/X11/xf_client.c @@ -1128,30 +1128,6 @@ void xf_window_free(xfContext *xfc) } } -void* xf_update_thread(void *arg) -{ - int status; - wMessage message; - wMessageQueue *queue; - freerdp *instance = (freerdp *) arg; - assert(NULL != instance); - status = 1; - queue = freerdp_get_message_queue(instance, FREERDP_UPDATE_MESSAGE_QUEUE); - while(MessageQueue_Wait(queue)) - { - while(MessageQueue_Peek(queue, &message, TRUE)) - { - status = freerdp_message_queue_process_message(instance, FREERDP_UPDATE_MESSAGE_QUEUE, &message); - if(!status) - break; - } - if(!status) - break; - } - ExitThread(0); - return NULL; -} - void *xf_input_thread(void *arg) { xfContext *xfc; @@ -1277,11 +1253,9 @@ void *xf_thread(void *param) int fd_input_event; HANDLE input_event; int select_status; - BOOL async_update; BOOL async_input; BOOL async_channels; BOOL async_transport; - HANDLE update_thread; HANDLE input_thread; HANDLE channels_thread; rdpChannels *channels; @@ -1318,14 +1292,10 @@ void *xf_thread(void *param) } channels = instance->context->channels; settings = instance->context->settings; - async_update = settings->AsyncUpdate; async_input = settings->AsyncInput; async_channels = settings->AsyncChannels; async_transport = settings->AsyncTransport; - if(async_update) - { - update_thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) xf_update_thread, instance, 0, NULL); - } + if(async_input) { input_thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) xf_input_thread, instance, 0, NULL); @@ -1454,13 +1424,7 @@ void *xf_thread(void *param) /* Close the channels first. This will signal the internal message pipes * that the threads should quit. */ freerdp_channels_close(channels, instance); - if(async_update) - { - wMessageQueue *update_queue = freerdp_get_message_queue(instance, FREERDP_UPDATE_MESSAGE_QUEUE); - MessageQueue_PostQuit(update_queue, 0); - WaitForSingleObject(update_thread, INFINITE); - CloseHandle(update_thread); - } + if(async_input) { wMessageQueue *input_queue = freerdp_get_message_queue(instance, FREERDP_INPUT_MESSAGE_QUEUE); diff --git a/libfreerdp/core/freerdp.c b/libfreerdp/core/freerdp.c index f40bd6a28..0432ef19c 100644 --- a/libfreerdp/core/freerdp.c +++ b/libfreerdp/core/freerdp.c @@ -317,6 +317,7 @@ BOOL freerdp_disconnect(freerdp* instance) rdp = instance->context->rdp; transport_disconnect(rdp->transport); + update_post_disconnect(instance->update); IFCALL(instance->PostDisconnect, instance); if (instance->update->pcap_rfx) diff --git a/libfreerdp/core/message.c b/libfreerdp/core/message.c index 10e2bd637..42bc240c9 100644 --- a/libfreerdp/core/message.c +++ b/libfreerdp/core/message.c @@ -2159,11 +2159,37 @@ void update_message_register_interface(rdpUpdateProxy* message, rdpUpdate* updat pointer->PointerCached = update_message_PointerCached; } -rdpUpdateProxy* update_message_proxy_new(rdpUpdate* update) +static void *update_message_proxy_thread(void *arg) { - rdpUpdateProxy* message; + rdpUpdate *update = (rdpUpdate *)arg; + wMessage message; - message = (rdpUpdateProxy*) malloc(sizeof(rdpUpdateProxy)); + if (!update || !update->queue) + { + DEBUG_WARN("update=%p, update->queue=%p", update, update ? update->queue : NULL); + ExitThread(-1); + return NULL; + } + + while (MessageQueue_Wait(update->queue)) + { + int status = 0; + + if (MessageQueue_Peek(update->queue, &message, TRUE)) + status = update_message_queue_process_message(update, &message); + + if (!status) + break; + } + + ExitThread(0); + return NULL; +} + +rdpUpdateProxy *update_message_proxy_new(rdpUpdate *update) +{ + rdpUpdateProxy *message; + message = (rdpUpdateProxy *) malloc(sizeof(rdpUpdateProxy)); if (message) { @@ -2171,6 +2197,7 @@ rdpUpdateProxy* update_message_proxy_new(rdpUpdate* update) message->update = update; update_message_register_interface(message, update); + message->thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) update_message_proxy_thread, update, 0, NULL); } return message; @@ -2180,6 +2207,9 @@ void update_message_proxy_free(rdpUpdateProxy* message) { if (message) { + MessageQueue_PostQuit(message->update->queue, 0); + WaitForSingleObject(message->thread, INFINITE); + CloseHandle(message->thread); free(message); } } diff --git a/libfreerdp/core/message.h b/libfreerdp/core/message.h index fad0e15ce..c303382df 100644 --- a/libfreerdp/core/message.h +++ b/libfreerdp/core/message.h @@ -120,6 +120,8 @@ struct rdp_update_proxy pPointerColor PointerColor; pPointerNew PointerNew; pPointerCached PointerCached; + + HANDLE thread; }; int update_message_queue_process_message(rdpUpdate* update, wMessage* message); diff --git a/libfreerdp/core/update.c b/libfreerdp/core/update.c index 6a243aad0..4b4142b78 100644 --- a/libfreerdp/core/update.c +++ b/libfreerdp/core/update.c @@ -568,6 +568,14 @@ void update_post_connect(rdpUpdate* update) update->initialState = FALSE; } +void update_post_disconnect(rdpUpdate* update) +{ + update->asynchronous = update->context->settings->AsyncUpdate; + + if (update->asynchronous) + update_message_proxy_free(update->proxy); +} + static void update_begin_paint(rdpContext* context) { wStream* s; @@ -1688,9 +1696,6 @@ void update_free(rdpUpdate* update) free(update->altsec); free(update->window); - if (update->asynchronous) - update_message_proxy_free(update->proxy); - MessageQueue_Free(update->queue); free(update); diff --git a/libfreerdp/core/update.h b/libfreerdp/core/update.h index c67d04fc3..c0b266f64 100644 --- a/libfreerdp/core/update.h +++ b/libfreerdp/core/update.h @@ -44,6 +44,7 @@ void update_free_bitmap(BITMAP_UPDATE* bitmap_update); void update_reset_state(rdpUpdate* update); void update_post_connect(rdpUpdate* update); +void update_post_disconnect(rdpUpdate* update); BOOL update_read_bitmap_update(rdpUpdate* update, wStream* s, BITMAP_UPDATE* bitmapUpdate); BOOL update_read_palette(rdpUpdate* update, wStream* s, PALETTE_UPDATE* palette_update); From f0ce0b814848bb200decd0415a55e3b1eb0f5d28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Mon, 14 Jul 2014 13:33:20 -0400 Subject: [PATCH 016/170] shadow: initial X11 multi-monitor support --- include/freerdp/server/shadow.h | 1 + server/shadow/X11/x11_shadow.c | 154 +++++++++++++++---- server/shadow/X11/x11_shadow.h | 7 + server/shadow/shadow.c | 257 +++++++++++++++++++++++++++++--- server/shadow/shadow_client.c | 34 +++-- server/shadow/shadow_screen.c | 25 +++- server/shadow/shadow_screen.h | 6 + server/shadow/shadow_surface.c | 4 +- server/shadow/shadow_surface.h | 4 +- 9 files changed, 419 insertions(+), 73 deletions(-) diff --git a/include/freerdp/server/shadow.h b/include/freerdp/server/shadow.h index 4917b3947..ed2483788 100644 --- a/include/freerdp/server/shadow.h +++ b/include/freerdp/server/shadow.h @@ -85,6 +85,7 @@ struct rdp_shadow_server HANDLE event; \ int monitorCount; \ MONITOR_DEF monitors[16]; \ + MONITOR_DEF virtualScreen; \ \ pfnShadowSubsystemInit Init; \ pfnShadowSubsystemUninit Uninit; \ diff --git a/server/shadow/X11/x11_shadow.c b/server/shadow/X11/x11_shadow.c index c44e4183b..57e62f54a 100644 --- a/server/shadow/X11/x11_shadow.c +++ b/server/shadow/X11/x11_shadow.c @@ -37,6 +37,7 @@ #include #include +#include "../shadow_screen.h" #include "../shadow_surface.h" #include "x11_shadow.h" @@ -152,6 +153,9 @@ void x11_shadow_validate_region(x11ShadowSubsystem* subsystem, int x, int y, int { XRectangle region; + if (!subsystem->use_xfixes) + return; + region.x = x; region.y = y; region.width = width; @@ -166,20 +170,20 @@ void x11_shadow_validate_region(x11ShadowSubsystem* subsystem, int x, int y, int int x11_shadow_invalidate_region(x11ShadowSubsystem* subsystem, int x, int y, int width, int height) { rdpShadowServer* server; - rdpShadowSurface* surface; + rdpShadowScreen* screen; RECTANGLE_16 invalidRect; server = subsystem->server; - surface = server->surface; + screen = server->screen; invalidRect.left = x; invalidRect.top = y; invalidRect.right = x + width; invalidRect.bottom = y + height; - EnterCriticalSection(&(surface->lock)); - region16_union_rect(&(surface->invalidRegion), &(surface->invalidRegion), &invalidRect); - LeaveCriticalSection(&(surface->lock)); + EnterCriticalSection(&(screen->lock)); + region16_union_rect(&(screen->invalidRegion), &(screen->invalidRegion), &invalidRect); + LeaveCriticalSection(&(screen->lock)); return 1; } @@ -190,12 +194,23 @@ int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem) int width; int height; XImage* image; + rdpShadowScreen* screen; rdpShadowServer* server; rdpShadowSurface* surface; + RECTANGLE_16 surfaceRect; const RECTANGLE_16* extents; server = subsystem->server; surface = server->surface; + screen = server->screen; + + surfaceRect.left = surface->x; + surfaceRect.top = surface->y; + surfaceRect.right = surface->x + surface->width; + surfaceRect.bottom = surface->y + surface->height; + + region16_clear(&(surface->invalidRegion)); + region16_intersect_rect(&(surface->invalidRegion), &(screen->invalidRegion), &surfaceRect); if (region16_is_empty(&(surface->invalidRegion))) return 1; @@ -219,7 +234,7 @@ int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem) image = subsystem->fb_image; freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, - surface->scanline, x, y, width, height, + surface->scanline, x - surface->x, y - surface->y, width, height, (BYTE*) image->data, PIXEL_FORMAT_XRGB32, image->bytes_per_line, x, y); } @@ -229,7 +244,7 @@ int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem) x, y, width, height, AllPlanes, ZPixmap); freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, - surface->scanline, x, y, width, height, + surface->scanline, x - surface->x, y - surface->y, width, height, (BYTE*) image->data, PIXEL_FORMAT_XRGB32, image->bytes_per_line, 0, 0); @@ -291,29 +306,87 @@ void* x11_shadow_subsystem_thread(x11ShadowSubsystem* subsystem) return NULL; } -int x11_shadow_cursor_init(x11ShadowSubsystem* subsystem) +int x11_shadow_xfixes_init(x11ShadowSubsystem* subsystem) { #ifdef WITH_XFIXES - int event; - int error; + int xfixes_event; + int xfixes_error; + int major, minor; - if (!XFixesQueryExtension(subsystem->display, &event, &error)) + if (!XFixesQueryExtension(subsystem->display, &xfixes_event, &xfixes_error)) return -1; - subsystem->xfixes_notify_event = event + XFixesCursorNotify; + if (!XFixesQueryVersion(subsystem->display, &major, &minor)) + return -1; + + subsystem->xfixes_notify_event = xfixes_event + XFixesCursorNotify; XFixesSelectCursorInput(subsystem->display, DefaultRootWindow(subsystem->display), XFixesDisplayCursorNotifyMask); + + return 1; +#else + return -1; +#endif +} + +int x11_shadow_xinerama_init(x11ShadowSubsystem* subsystem) +{ +#ifdef WITH_XINERAMA + int index; + int numMonitors; + int major, minor; + int xinerama_event; + int xinerama_error; + MONITOR_DEF* monitor; + XineramaScreenInfo* screen; + XineramaScreenInfo* screens; + + if (!XineramaQueryExtension(subsystem->display, &xinerama_event, &xinerama_error)) + return -1; + + if (!XDamageQueryVersion(subsystem->display, &major, &minor)) + return -1; + + if (!XineramaIsActive(subsystem->display)) + return -1; + + screens = XineramaQueryScreens(subsystem->display, &numMonitors); + + if (numMonitors > 16) + numMonitors = 16; + + if (!screens || (numMonitors < 1)) + return -1; + + subsystem->monitorCount = numMonitors; + + for (index = 0; index < numMonitors; index++) + { + screen = &screens[index]; + monitor = &(subsystem->monitors[index]); + + monitor->left = screen->x_org; + monitor->top = screen->y_org; + monitor->right = monitor->left + screen->width; + monitor->bottom = monitor->top + screen->height; + monitor->flags = (index == 0) ? 1 : 0; + } + + XFree(screens); #endif - return 0; + return 1; } int x11_shadow_xdamage_init(x11ShadowSubsystem* subsystem) { #ifdef WITH_XDAMAGE + int major, minor; int damage_event; int damage_error; - int major, minor; + + if (!subsystem->use_xfixes) + return -1; if (!XDamageQueryExtension(subsystem->display, &damage_event, &damage_error)) return -1; @@ -396,9 +469,6 @@ int x11_shadow_xshm_init(x11ShadowSubsystem* subsystem) shmctl(subsystem->fb_shm_info.shmid, IPC_RMID, 0); - fprintf(stderr, "display: %p root_window: %p width: %d height: %d depth: %d\n", - subsystem->display, (void*) subsystem->root_window, subsystem->fb_image->width, subsystem->fb_image->height, subsystem->fb_image->depth); - subsystem->fb_pixmap = XShmCreatePixmap(subsystem->display, subsystem->root_window, subsystem->fb_image->data, &(subsystem->fb_shm_info), subsystem->fb_image->width, subsystem->fb_image->height, subsystem->fb_image->depth); @@ -430,15 +500,13 @@ int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) XVisualInfo template; XPixmapFormatValues* pf; XPixmapFormatValues* pfs; + MONITOR_DEF* virtualScreen; /** * To see if your X11 server supports shared pixmaps, use: * xdpyinfo -ext MIT-SHM | grep "shared pixmaps" */ - subsystem->use_xshm = TRUE; - subsystem->use_xdamage = TRUE; - if (!getenv("DISPLAY")) { /* Set DISPLAY variable if not already set */ @@ -511,6 +579,18 @@ int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) XSelectInput(subsystem->display, subsystem->root_window, SubstructureNotifyMask); + if (subsystem->use_xfixes) + { + if (x11_shadow_xfixes_init(subsystem) < 0) + subsystem->use_xfixes = FALSE; + } + + if (subsystem->use_xinerama) + { + if (x11_shadow_xinerama_init(subsystem) < 0) + subsystem->use_xinerama = FALSE; + } + if (subsystem->use_xshm) { if (x11_shadow_xshm_init(subsystem) < 0) @@ -523,19 +603,28 @@ int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) subsystem->use_xdamage = FALSE; } - x11_shadow_cursor_init(subsystem); - subsystem->event = CreateFileDescriptorEvent(NULL, FALSE, FALSE, subsystem->xfds); - subsystem->monitorCount = 1; - subsystem->monitors[0].left = 0; - subsystem->monitors[0].top = 0; - subsystem->monitors[0].right = subsystem->width; - subsystem->monitors[0].bottom = subsystem->height; - subsystem->monitors[0].flags = 1; + virtualScreen = &(subsystem->virtualScreen); - if (subsystem->use_xshm) - printf("Using X Shared Memory Extension (XShm)\n"); + virtualScreen->left = 0; + virtualScreen->top = 0; + virtualScreen->right = subsystem->width; + virtualScreen->bottom = subsystem->height; + virtualScreen->flags = 1; + + if (subsystem->monitorCount < 1) + { + subsystem->monitorCount = 1; + subsystem->monitors[0].left = virtualScreen->left; + subsystem->monitors[0].top = virtualScreen->top; + subsystem->monitors[0].right = virtualScreen->right; + subsystem->monitors[0].bottom = virtualScreen->bottom; + subsystem->monitors[0].flags = 1; + } + + printf("X11 Extensions: XFixes: %d Xinerama: %d XDamage: %d XShm: %d\n", + subsystem->use_xfixes, subsystem->use_xinerama, subsystem->use_xdamage, subsystem->use_xshm); return 1; } @@ -617,6 +706,11 @@ x11ShadowSubsystem* x11_shadow_subsystem_new(rdpShadowServer* server) subsystem->MouseEvent = (pfnShadowMouseEvent) x11_shadow_input_mouse_event; subsystem->ExtendedMouseEvent = (pfnShadowExtendedMouseEvent) x11_shadow_input_extended_mouse_event; + subsystem->use_xshm = TRUE; + subsystem->use_xfixes = TRUE; + subsystem->use_xdamage = TRUE; + subsystem->use_xinerama = TRUE; + return subsystem; } diff --git a/server/shadow/X11/x11_shadow.h b/server/shadow/X11/x11_shadow.h index 346f0ea4c..f9a1cbf00 100644 --- a/server/shadow/X11/x11_shadow.h +++ b/server/shadow/X11/x11_shadow.h @@ -47,6 +47,10 @@ typedef struct x11_shadow_subsystem x11ShadowSubsystem; #include #endif +#ifdef WITH_XINERAMA +#include +#endif + struct x11_shadow_subsystem { RDP_SHADOW_SUBSYSTEM_COMMON(); @@ -66,7 +70,10 @@ struct x11_shadow_subsystem int scanline_pad; BOOL use_xshm; + BOOL use_xfixes; BOOL use_xdamage; + BOOL use_xinerama; + XImage* fb_image; Pixmap fb_pixmap; Window root_window; diff --git a/server/shadow/shadow.c b/server/shadow/shadow.c index b566a236b..a1406cf5a 100644 --- a/server/shadow/shadow.c +++ b/server/shadow/shadow.c @@ -20,6 +20,11 @@ #include "config.h" #endif +#include +#include + +#include + #ifndef _WIN32 #include #include @@ -35,6 +40,175 @@ extern rdpShadowSubsystem* X11_ShadowCreateSubsystem(rdpShadowServer* server); #endif +static COMMAND_LINE_ARGUMENT_A shadow_args[] = +{ + { "port", COMMAND_LINE_VALUE_REQUIRED, "", NULL, NULL, -1, NULL, "Server port" }, + { "monitors", COMMAND_LINE_VALUE_OPTIONAL, "<0,1,2...>", NULL, NULL, -1, NULL, "Select or list monitors" }, + { "version", COMMAND_LINE_VALUE_FLAG | COMMAND_LINE_PRINT_VERSION, NULL, NULL, NULL, -1, NULL, "Print version" }, + { "help", COMMAND_LINE_VALUE_FLAG | COMMAND_LINE_PRINT_HELP, NULL, NULL, NULL, -1, "?", "Print help" }, + { NULL, 0, NULL, NULL, NULL, -1, NULL, NULL } +}; + +int shadow_server_print_command_line_help(int argc, char** argv) +{ + char* str; + int length; + COMMAND_LINE_ARGUMENT_A* arg; + + printf("Usage: %s [options]\n", argv[0]); + printf("\n"); + + printf("Syntax:\n"); + printf(" /flag (enables flag)\n"); + printf(" /option: (specifies option with value)\n"); + printf(" +toggle -toggle (enables or disables toggle, where '/' is a synonym of '+')\n"); + printf("\n"); + + arg = shadow_args; + + do + { + if (arg->Flags & COMMAND_LINE_VALUE_FLAG) + { + printf(" %s", "/"); + printf("%-20s", arg->Name); + printf("\t%s\n", arg->Text); + } + else if ((arg->Flags & COMMAND_LINE_VALUE_REQUIRED) || (arg->Flags & COMMAND_LINE_VALUE_OPTIONAL)) + { + printf(" %s", "/"); + + if (arg->Format) + { + length = (int) (strlen(arg->Name) + strlen(arg->Format) + 2); + str = (char*) malloc(length + 1); + sprintf_s(str, length + 1, "%s:%s", arg->Name, arg->Format); + printf("%-20s", str); + free(str); + } + else + { + printf("%-20s", arg->Name); + } + + printf("\t%s\n", arg->Text); + } + else if (arg->Flags & COMMAND_LINE_VALUE_BOOL) + { + length = (int) strlen(arg->Name) + 32; + str = (char*) malloc(length + 1); + sprintf_s(str, length + 1, "%s (default:%s)", arg->Name, + arg->Default ? "on" : "off"); + + printf(" %s", arg->Default ? "-" : "+"); + + printf("%-20s", str); + free(str); + + printf("\t%s\n", arg->Text); + } + } + while ((arg = CommandLineFindNextArgumentA(arg)) != NULL); + + return 1; +} + +int shadow_server_command_line_status_print(rdpShadowServer* server, int argc, char** argv, int status) +{ + if (status == COMMAND_LINE_STATUS_PRINT_VERSION) + { + printf("FreeRDP version %s (git %s)\n", FREERDP_VERSION_FULL, GIT_REVISION); + return COMMAND_LINE_STATUS_PRINT_VERSION; + } + else if (status == COMMAND_LINE_STATUS_PRINT) + { + return COMMAND_LINE_STATUS_PRINT; + } + else if (status < 0) + { + shadow_server_print_command_line_help(argc, argv); + return COMMAND_LINE_STATUS_PRINT_HELP; + } + + return 1; +} + +int shadow_server_parse_command_line(rdpShadowServer* server, int argc, char** argv) +{ + int status; + DWORD flags; + COMMAND_LINE_ARGUMENT_A* arg; + + if (argc < 2) + return 1; + + CommandLineClearArgumentsA(shadow_args); + + flags = COMMAND_LINE_SEPARATOR_COLON; + flags |= COMMAND_LINE_SIGIL_SLASH | COMMAND_LINE_SIGIL_PLUS_MINUS; + + status = CommandLineParseArgumentsA(argc, (const char**) argv, shadow_args, flags, server, NULL, NULL); + + if (status < 0) + return status; + + arg = shadow_args; + + do + { + if (!(arg->Flags & COMMAND_LINE_ARGUMENT_PRESENT)) + continue; + + CommandLineSwitchStart(arg) + + CommandLineSwitchCase(arg, "port") + { + server->port = (DWORD) atoi(arg->Value); + } + CommandLineSwitchDefault(arg) + { + } + + CommandLineSwitchEnd(arg) + } + while ((arg = CommandLineFindNextArgumentA(arg)) != NULL); + + arg = CommandLineFindArgumentA(shadow_args, "monitors"); + + if (arg) + { + if (arg->Flags & COMMAND_LINE_VALUE_PRESENT) + { + /* Select monitors */ + } + else + { + int index; + int width, height; + MONITOR_DEF* monitor; + rdpShadowSubsystem* subsystem = server->subsystem; + + /* List monitors */ + + for (index = 0; index < subsystem->monitorCount; index++) + { + monitor = &(subsystem->monitors[index]); + + width = monitor->right - monitor->left; + height = monitor->bottom - monitor->top; + + printf(" %s [%d] %dx%d\t+%d+%d\n", + (monitor->flags == 1) ? "*" : " ", index, + width, height, monitor->left, monitor->top); + } + + status = COMMAND_LINE_STATUS_PRINT; + } + } + + return status; +} + void* shadow_server_thread(rdpShadowServer* server) { DWORD status; @@ -121,23 +295,14 @@ int shadow_server_stop(rdpShadowServer* server) return 0; } -rdpShadowServer* shadow_server_new(int argc, char** argv) +int shadow_server_init(rdpShadowServer* server) { - rdpShadowServer* server; - - server = (rdpShadowServer*) calloc(1, sizeof(rdpShadowServer)); - - if (!server) - return NULL; - - server->port = 3389; - server->StopEvent = CreateEvent(NULL, TRUE, FALSE, NULL); server->listener = freerdp_listener_new(); if (!server->listener) - return NULL; + return -1; server->listener->info = (void*) server; server->listener->PeerAccepted = shadow_client_accepted; @@ -150,18 +315,60 @@ rdpShadowServer* shadow_server_new(int argc, char** argv) server->subsystem = server->CreateSubsystem(server); if (!server->subsystem) - return NULL; + return -1; + + if (server->subsystem->Init) + server->subsystem->Init(server->subsystem); server->screen = shadow_screen_new(server); if (!server->screen) - return NULL; + return -1; server->encoder = shadow_encoder_new(server); if (!server->encoder) + return -1; + + return 1; +} + +int shadow_server_uninit(rdpShadowServer* server) +{ + shadow_server_stop(server); + + if (server->listener) + { + freerdp_listener_free(server->listener); + server->listener = NULL; + } + + if (server->encoder) + { + shadow_encoder_free(server->encoder); + server->encoder = NULL; + } + + if (server->subsystem) + { + server->subsystem->Free(server->subsystem); + server->subsystem = NULL; + } + + return 1; +} + +rdpShadowServer* shadow_server_new() +{ + rdpShadowServer* server; + + server = (rdpShadowServer*) calloc(1, sizeof(rdpShadowServer)); + + if (!server) return NULL; + server->port = 3389; + return server; } @@ -170,28 +377,34 @@ void shadow_server_free(rdpShadowServer* server) if (!server) return; - shadow_server_stop(server); - - freerdp_listener_free(server->listener); - - shadow_encoder_free(server->encoder); - - server->subsystem->Free(server->subsystem); + shadow_server_uninit(server); free(server); } int main(int argc, char* argv[]) { + int status; DWORD dwExitCode; rdpShadowServer* server; - server = shadow_server_new(argc, argv); + server = shadow_server_new(); if (!server) return 0; - shadow_server_start(server); + if (shadow_server_init(server) < 0) + return 0; + + status = shadow_server_parse_command_line(server, argc, argv); + + status = shadow_server_command_line_status_print(server, argc, argv, status); + + if (status < 0) + return 0; + + if (shadow_server_start(server) < 0) + return 0; WaitForSingleObject(server->thread, INFINITE); diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index a5bf77916..acf3eff1e 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -61,15 +61,18 @@ BOOL shadow_client_capabilities(freerdp_peer* peer) BOOL shadow_client_post_connect(freerdp_peer* peer) { + rdpSettings* settings; rdpShadowClient* client; client = (rdpShadowClient*) peer->context; + settings = peer->settings; - fprintf(stderr, "Client from %s is activated\n", peer->hostname); + settings->DesktopWidth = client->server->screen->width; + settings->DesktopHeight = client->server->screen->height; + settings->ColorDepth = 32; - peer->settings->DesktopWidth = client->server->screen->width; - peer->settings->DesktopHeight = client->server->screen->height; - peer->settings->ColorDepth = 32; + fprintf(stderr, "Client from %s is activated (%dx%d@%d)\n", + peer->hostname, settings->DesktopWidth, settings->DesktopHeight, settings->ColorDepth); peer->update->DesktopResize(peer->update->context); @@ -151,10 +154,10 @@ int shadow_client_send_surface_bits(rdpShadowClient* client) encoder = server->encoder; surface = server->surface; - surfaceRect.left = 0; - surfaceRect.top = 0; - surfaceRect.right = surface->width; - surfaceRect.bottom = surface->height; + surfaceRect.left = surface->x; + surfaceRect.top = surface->y; + surfaceRect.right = surface->x + surface->width; + surfaceRect.bottom = surface->y + surface->height; region16_intersect_rect(&(surface->invalidRegion), &(surface->invalidRegion), &surfaceRect); @@ -163,8 +166,8 @@ int shadow_client_send_surface_bits(rdpShadowClient* client) extents = region16_extents(&(surface->invalidRegion)); - nXSrc = extents->left; - nYSrc = extents->top; + nXSrc = extents->left - surface->x; + nYSrc = extents->top - surface->y; nWidth = extents->right - extents->left; nHeight = extents->bottom - extents->top; pSrcData = surface->data; @@ -324,13 +327,13 @@ void* shadow_client_thread(rdpShadowClient* client) freerdp_peer* peer; rdpSettings* settings; rdpShadowServer* server; - rdpShadowSurface* surface; + rdpShadowScreen* screen; rdpShadowEncoder* encoder; rdpShadowSubsystem* subsystem; server = client->server; + screen = server->screen; encoder = server->encoder; - surface = server->surface; subsystem = server->subsystem; peer = ((rdpContext*) client)->peer; @@ -393,14 +396,15 @@ void* shadow_client_thread(rdpShadowClient* client) { if (client->activated) { - EnterCriticalSection(&(surface->lock)); + EnterCriticalSection(&(screen->lock)); if (subsystem->SurfaceCopy) subsystem->SurfaceCopy(subsystem); shadow_client_send_surface_bits(client); - region16_clear(&(surface->invalidRegion)); - LeaveCriticalSection(&(surface->lock)); + region16_clear(&(screen->invalidRegion)); + + LeaveCriticalSection(&(screen->lock)); } fps = encoder->fps; diff --git a/server/shadow/shadow_screen.c b/server/shadow/shadow_screen.c index c5dbe1ae7..0b4c87f93 100644 --- a/server/shadow/shadow_screen.c +++ b/server/shadow/shadow_screen.c @@ -26,6 +26,8 @@ rdpShadowScreen* shadow_screen_new(rdpShadowServer* server) { + int x, y; + int width, height; MONITOR_DEF* primary; rdpShadowScreen* screen; rdpShadowSubsystem* subsystem; @@ -38,11 +40,22 @@ rdpShadowScreen* shadow_screen_new(rdpShadowServer* server) screen->server = server; subsystem = server->subsystem; - primary = &(subsystem->monitors[0]); - screen->width = primary->right; - screen->height = primary->bottom; + if (!InitializeCriticalSectionAndSpinCount(&(screen->lock), 4000)) + return NULL; - screen->primary = shadow_surface_new(server, screen->width, screen->height); + region16_init(&(screen->invalidRegion)); + + primary = &(subsystem->monitors[0]); + + x = primary->left; + y = primary->top; + width = primary->right - primary->left; + height = primary->bottom - primary->top; + + screen->width = width; + screen->height = height; + + screen->primary = shadow_surface_new(server, x, y, width, height); if (!screen->primary) return NULL; @@ -57,6 +70,10 @@ void shadow_screen_free(rdpShadowScreen* screen) if (!screen) return; + DeleteCriticalSection(&(screen->lock)); + + region16_uninit(&(screen->invalidRegion)); + if (screen->primary) { shadow_surface_free(screen->primary); diff --git a/server/shadow/shadow_screen.h b/server/shadow/shadow_screen.h index f8bbdd27a..2b305e336 100644 --- a/server/shadow/shadow_screen.h +++ b/server/shadow/shadow_screen.h @@ -21,6 +21,9 @@ #include +#include +#include + struct rdp_shadow_screen { rdpShadowServer* server; @@ -28,6 +31,9 @@ struct rdp_shadow_screen int width; int height; + CRITICAL_SECTION lock; + REGION16 invalidRegion; + rdpShadowSurface* primary; }; diff --git a/server/shadow/shadow_surface.c b/server/shadow/shadow_surface.c index e9c22cf66..9c581422b 100644 --- a/server/shadow/shadow_surface.c +++ b/server/shadow/shadow_surface.c @@ -24,7 +24,7 @@ #include "shadow_surface.h" -rdpShadowSurface* shadow_surface_new(rdpShadowServer* server, int width, int height) +rdpShadowSurface* shadow_surface_new(rdpShadowServer* server, int x, int y, int width, int height) { rdpShadowSurface* surface; @@ -35,6 +35,8 @@ rdpShadowSurface* shadow_surface_new(rdpShadowServer* server, int width, int hei surface->server = server; + surface->x = x; + surface->y = y; surface->width = width; surface->height = height; surface->scanline = (surface->width + (surface->width % 4)) * 4; diff --git a/server/shadow/shadow_surface.h b/server/shadow/shadow_surface.h index 8d86f4b01..2f6bc8300 100644 --- a/server/shadow/shadow_surface.h +++ b/server/shadow/shadow_surface.h @@ -28,6 +28,8 @@ struct rdp_shadow_surface { rdpShadowServer* server; + int x; + int y; int width; int height; int scanline; @@ -41,7 +43,7 @@ struct rdp_shadow_surface extern "C" { #endif -rdpShadowSurface* shadow_surface_new(rdpShadowServer* server, int width, int height); +rdpShadowSurface* shadow_surface_new(rdpShadowServer* server, int x, int y, int width, int height); void shadow_surface_free(rdpShadowSurface* surface); #ifdef __cplusplus From e7fb6e67f5774324af372f478e4f3215e8d664ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Mon, 14 Jul 2014 18:01:29 -0400 Subject: [PATCH 017/170] shadow: add basic lobby functionality --- channels/encomsp/client/CMakeLists.txt | 6 +- channels/encomsp/client/encomsp_main.c | 41 +------------- channels/encomsp/encomsp_common.c | 66 ++++++++++++++++++++++ channels/encomsp/encomsp_common.h | 33 +++++++++++ channels/encomsp/server/CMakeLists.txt | 6 +- channels/encomsp/server/encomsp_main.c | 78 ++++++++++++++++++++++++-- client/X11/xf_client.c | 4 +- include/freerdp/server/shadow.h | 16 ++++++ server/shadow/CMakeLists.txt | 6 +- server/shadow/shadow.c | 17 +++++- server/shadow/shadow.h | 1 + server/shadow/shadow_channels.c | 46 +++++++++++++++ server/shadow/shadow_channels.h | 37 ++++++++++++ server/shadow/shadow_client.c | 37 +++++++++++- server/shadow/shadow_input.c | 15 +++++ 15 files changed, 358 insertions(+), 51 deletions(-) create mode 100644 channels/encomsp/encomsp_common.c create mode 100644 channels/encomsp/encomsp_common.h create mode 100644 server/shadow/shadow_channels.c create mode 100644 server/shadow/shadow_channels.h diff --git a/channels/encomsp/client/CMakeLists.txt b/channels/encomsp/client/CMakeLists.txt index 7e96cbd0c..89b2e1ed0 100644 --- a/channels/encomsp/client/CMakeLists.txt +++ b/channels/encomsp/client/CMakeLists.txt @@ -17,9 +17,13 @@ define_channel_client("encomsp") +include_directories(..) + set(${MODULE_PREFIX}_SRCS encomsp_main.c - encomsp_main.h) + encomsp_main.h + ../encomsp_common.c + ../encomsp_common.h) add_channel_client_library(${MODULE_PREFIX} ${MODULE_NAME} ${CHANNEL_NAME} FALSE "VirtualChannelEntry") diff --git a/channels/encomsp/client/encomsp_main.c b/channels/encomsp/client/encomsp_main.c index 1ed31296f..3e2be2182 100644 --- a/channels/encomsp/client/encomsp_main.c +++ b/channels/encomsp/client/encomsp_main.c @@ -26,6 +26,8 @@ #include +#include "encomsp_common.h" + #include "encomsp_main.h" EncomspClientContext* encomsp_get_client_interface(encomspPlugin* encomsp) @@ -59,45 +61,6 @@ int encomsp_virtual_channel_write(encomspPlugin* encomsp, wStream* s) return 1; } -int encomsp_read_header(wStream* s, ENCOMSP_ORDER_HEADER* header) -{ - if (Stream_GetRemainingLength(s) < ENCOMSP_ORDER_HEADER_SIZE) - return -1; - - Stream_Read_UINT16(s, header->Type); /* Type (2 bytes) */ - Stream_Read_UINT16(s, header->Length); /* Length (2 bytes) */ - - return 1; -} - -int encomsp_write_header(wStream* s, ENCOMSP_ORDER_HEADER* header) -{ - Stream_Write_UINT16(s, header->Type); /* Type (2 bytes) */ - Stream_Write_UINT16(s, header->Length); /* Length (2 bytes) */ - - return 1; -} - -int encomsp_read_unicode_string(wStream* s, ENCOMSP_UNICODE_STRING* str) -{ - ZeroMemory(str, sizeof(ENCOMSP_UNICODE_STRING)); - - if (Stream_GetRemainingLength(s) < 2) - return -1; - - Stream_Read_UINT16(s, str->cchString); /* cchString (2 bytes) */ - - if (str->cchString > 1024) - return -1; - - if (Stream_GetRemainingLength(s) < (str->cchString * 2)) - return -1; - - Stream_Read(s, &(str->wString), (str->cchString * 2)); /* String (variable) */ - - return 1; -} - int encomsp_recv_filter_updated_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) { int beg, end; diff --git a/channels/encomsp/encomsp_common.c b/channels/encomsp/encomsp_common.c new file mode 100644 index 000000000..6f3d61cad --- /dev/null +++ b/channels/encomsp/encomsp_common.c @@ -0,0 +1,66 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * Multiparty Virtual Channel + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include + +#include "encomsp_common.h" + +int encomsp_read_header(wStream* s, ENCOMSP_ORDER_HEADER* header) +{ + if (Stream_GetRemainingLength(s) < ENCOMSP_ORDER_HEADER_SIZE) + return -1; + + Stream_Read_UINT16(s, header->Type); /* Type (2 bytes) */ + Stream_Read_UINT16(s, header->Length); /* Length (2 bytes) */ + + return 1; +} + +int encomsp_write_header(wStream* s, ENCOMSP_ORDER_HEADER* header) +{ + Stream_Write_UINT16(s, header->Type); /* Type (2 bytes) */ + Stream_Write_UINT16(s, header->Length); /* Length (2 bytes) */ + + return 1; +} + +int encomsp_read_unicode_string(wStream* s, ENCOMSP_UNICODE_STRING* str) +{ + ZeroMemory(str, sizeof(ENCOMSP_UNICODE_STRING)); + + if (Stream_GetRemainingLength(s) < 2) + return -1; + + Stream_Read_UINT16(s, str->cchString); /* cchString (2 bytes) */ + + if (str->cchString > 1024) + return -1; + + if (Stream_GetRemainingLength(s) < (str->cchString * 2)) + return -1; + + Stream_Read(s, &(str->wString), (str->cchString * 2)); /* String (variable) */ + + return 1; +} diff --git a/channels/encomsp/encomsp_common.h b/channels/encomsp/encomsp_common.h new file mode 100644 index 000000000..8ce493ab7 --- /dev/null +++ b/channels/encomsp/encomsp_common.h @@ -0,0 +1,33 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * Multiparty Virtual Channel + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FREERDP_CHANNEL_ENCOMSP_COMMON_H +#define FREERDP_CHANNEL_ENCOMSP_COMMON_H + +#include +#include + +#include + +int encomsp_read_header(wStream* s, ENCOMSP_ORDER_HEADER* header); +int encomsp_write_header(wStream* s, ENCOMSP_ORDER_HEADER* header); + +int encomsp_read_unicode_string(wStream* s, ENCOMSP_UNICODE_STRING* str); + +#endif /* FREERDP_CHANNEL_ENCOMSP_COMMON_H */ diff --git a/channels/encomsp/server/CMakeLists.txt b/channels/encomsp/server/CMakeLists.txt index 90c4e8f31..1fe84d63e 100644 --- a/channels/encomsp/server/CMakeLists.txt +++ b/channels/encomsp/server/CMakeLists.txt @@ -17,9 +17,13 @@ define_channel_server("encomsp") +include_directories(..) + set(${MODULE_PREFIX}_SRCS encomsp_main.c - encomsp_main.h) + encomsp_main.h + ../encomsp_common.c + ../encomsp_common.h) add_channel_server_library(${MODULE_PREFIX} ${MODULE_NAME} ${CHANNEL_NAME} FALSE "VirtualChannelEntry") diff --git a/channels/encomsp/server/encomsp_main.c b/channels/encomsp/server/encomsp_main.c index 9d7fc5ae5..bab08d351 100644 --- a/channels/encomsp/server/encomsp_main.c +++ b/channels/encomsp/server/encomsp_main.c @@ -25,11 +25,82 @@ #include #include +#include "encomsp_common.h" + #include "encomsp_main.h" static int encomsp_server_receive_pdu(EncomspServerContext* context, wStream* s) { - return 0; + int status = 1; + ENCOMSP_ORDER_HEADER header; + + while (Stream_GetRemainingLength(s) > 0) + { + if (encomsp_read_header(s, &header) < 0) + return -1; + + printf("EncomspReceive: Type: %d Length: %d\n", header.Type, header.Length); + + return 1; + +#if 0 + switch (header.Type) + { + case ODTYPE_FILTER_STATE_UPDATED: + status = encomsp_recv_filter_updated_pdu(context, s, &header); + break; + + case ODTYPE_APP_REMOVED: + status = encomsp_recv_application_removed_pdu(context, s, &header); + break; + + case ODTYPE_APP_CREATED: + status = encomsp_recv_application_created_pdu(context, s, &header); + break; + + case ODTYPE_WND_REMOVED: + status = encomsp_recv_window_removed_pdu(context, s, &header); + break; + + case ODTYPE_WND_CREATED: + status = encomsp_recv_window_created_pdu(context, s, &header); + break; + + case ODTYPE_WND_SHOW: + status = encomsp_recv_show_window_pdu(context, s, &header); + break; + + case ODTYPE_PARTICIPANT_REMOVED: + status = encomsp_recv_participant_removed_pdu(context, s, &header); + break; + + case ODTYPE_PARTICIPANT_CREATED: + status = encomsp_recv_participant_created_pdu(context, s, &header); + break; + + case ODTYPE_PARTICIPANT_CTRL_CHANGED: + status = encomsp_recv_change_participant_control_level_pdu(context, s, &header); + break; + + case ODTYPE_GRAPHICS_STREAM_PAUSED: + status = encomsp_recv_graphics_stream_paused_pdu(context, s, &header); + break; + + case ODTYPE_GRAPHICS_STREAM_RESUMED: + status = encomsp_recv_graphics_stream_resumed_pdu(context, s, &header); + break; + + default: + status = -1; + break; + } + + if (status < 0) + return -1; +#endif + } + + return status; } static void* encomsp_server_thread(void* arg) @@ -83,10 +154,7 @@ static void* encomsp_server_thread(void* arg) Stream_EnsureRemainingCapacity(s, BytesReturned); } - if (0) - { - encomsp_server_receive_pdu(context, s); - } + encomsp_server_receive_pdu(context, s); } Stream_Free(s, TRUE); diff --git a/client/X11/xf_client.c b/client/X11/xf_client.c index 56de3fcf9..cd66d3bb5 100644 --- a/client/X11/xf_client.c +++ b/client/X11/xf_client.c @@ -885,9 +885,9 @@ BOOL xf_post_connect(freerdp *instance) XFillRectangle(xfc->display, xfc->primary, xfc->gc, 0, 0, xfc->width, xfc->height); XFlush(xfc->display); xfc->image = XCreateImage(xfc->display, xfc->visual, xfc->depth, ZPixmap, 0, - (char *) xfc->primary_buffer, xfc->width, xfc->height, xfc->scanline_pad, 0); + (char*) xfc->primary_buffer, xfc->width, xfc->height, xfc->scanline_pad, 0); xfc->bmp_codec_none = (BYTE *) malloc(64 * 64 * 4); - + if (xfc->settings->SoftwareGdi) { instance->update->BeginPaint = xf_sw_begin_paint; diff --git a/include/freerdp/server/shadow.h b/include/freerdp/server/shadow.h index ed2483788..2092275c2 100644 --- a/include/freerdp/server/shadow.h +++ b/include/freerdp/server/shadow.h @@ -26,6 +26,12 @@ #include #include +#include +#include + +#include +#include + #include #include @@ -62,8 +68,16 @@ struct rdp_shadow_client HANDLE thread; BOOL activated; + BOOL inLobby; + BOOL mayView; + BOOL mayInteract; HANDLE StopEvent; rdpShadowServer* server; + rdpShadowSurface* lobby; + + HANDLE vcm; + EncomspServerContext* encomsp; + RemdeskServerContext* remdesk; }; struct rdp_shadow_server @@ -77,6 +91,8 @@ struct rdp_shadow_server rdpShadowSubsystem* subsystem; DWORD port; + BOOL mayView; + BOOL mayInteract; freerdp_listener* listener; pfnShadowCreateSubsystem CreateSubsystem; }; diff --git a/server/shadow/CMakeLists.txt b/server/shadow/CMakeLists.txt index 27b2aa94f..9bec3b117 100644 --- a/server/shadow/CMakeLists.txt +++ b/server/shadow/CMakeLists.txt @@ -126,6 +126,8 @@ set(${MODULE_PREFIX}_SRCS shadow_surface.h shadow_encoder.c shadow_encoder.h + shadow_channels.c + shadow_channels.h shadow.c shadow.h) @@ -141,6 +143,8 @@ endif() add_executable(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) set_target_properties(${MODULE_NAME} PROPERTIES OUTPUT_NAME "freerdp-shadow") +list(APPEND ${MODULE_PREFIX}_LIBS freerdp-server) + set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS MONOLITHIC ${MONOLITHIC_BUILD} MODULE freerdp @@ -151,7 +155,7 @@ set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS MODULE winpr MODULES winpr-sspi winpr-crt winpr-utils winpr-input winpr-sysinfo) -set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} winpr-makecert-tool) +list(APPEND ${MODULE_PREFIX}_LIBS winpr-makecert-tool) target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS}) diff --git a/server/shadow/shadow.c b/server/shadow/shadow.c index a1406cf5a..4ae7cf0c3 100644 --- a/server/shadow/shadow.c +++ b/server/shadow/shadow.c @@ -44,6 +44,8 @@ static COMMAND_LINE_ARGUMENT_A shadow_args[] = { { "port", COMMAND_LINE_VALUE_REQUIRED, "", NULL, NULL, -1, NULL, "Server port" }, { "monitors", COMMAND_LINE_VALUE_OPTIONAL, "<0,1,2...>", NULL, NULL, -1, NULL, "Select or list monitors" }, + { "may-view", COMMAND_LINE_VALUE_BOOL, NULL, BoolValueTrue, NULL, -1, NULL, "Clients may view without prompt" }, + { "may-interact", COMMAND_LINE_VALUE_BOOL, NULL, BoolValueTrue, NULL, -1, NULL, "Clients may interact without prompt" }, { "version", COMMAND_LINE_VALUE_FLAG | COMMAND_LINE_PRINT_VERSION, NULL, NULL, NULL, -1, NULL, "Print version" }, { "help", COMMAND_LINE_VALUE_FLAG | COMMAND_LINE_PRINT_HELP, NULL, NULL, NULL, -1, "?", "Print help" }, { NULL, 0, NULL, NULL, NULL, -1, NULL, NULL } @@ -165,8 +167,17 @@ int shadow_server_parse_command_line(rdpShadowServer* server, int argc, char** a { server->port = (DWORD) atoi(arg->Value); } + CommandLineSwitchCase(arg, "may-view") + { + server->mayView = arg->Value ? TRUE : FALSE; + } + CommandLineSwitchCase(arg, "may-interact") + { + server->mayInteract = arg->Value ? TRUE : FALSE; + } CommandLineSwitchDefault(arg) { + } CommandLineSwitchEnd(arg) @@ -175,7 +186,7 @@ int shadow_server_parse_command_line(rdpShadowServer* server, int argc, char** a arg = CommandLineFindArgumentA(shadow_args, "monitors"); - if (arg) + if (arg && (arg->Flags & COMMAND_LINE_ARGUMENT_PRESENT)) { if (arg->Flags & COMMAND_LINE_VALUE_PRESENT) { @@ -297,6 +308,8 @@ int shadow_server_stop(rdpShadowServer* server) int shadow_server_init(rdpShadowServer* server) { + WTSRegisterWtsApiFunctionTable(FreeRDP_InitWtsApi()); + server->StopEvent = CreateEvent(NULL, TRUE, FALSE, NULL); server->listener = freerdp_listener_new(); @@ -368,6 +381,8 @@ rdpShadowServer* shadow_server_new() return NULL; server->port = 3389; + server->mayView = TRUE; + server->mayInteract = TRUE; return server; } diff --git a/server/shadow/shadow.h b/server/shadow/shadow.h index 65f20f332..b474c68c6 100644 --- a/server/shadow/shadow.h +++ b/server/shadow/shadow.h @@ -26,6 +26,7 @@ #include "shadow_screen.h" #include "shadow_surface.h" #include "shadow_encoder.h" +#include "shadow_channels.h" #ifdef __cplusplus extern "C" { diff --git a/server/shadow/shadow_channels.c b/server/shadow/shadow_channels.c new file mode 100644 index 000000000..eeb4e7e0e --- /dev/null +++ b/server/shadow/shadow_channels.c @@ -0,0 +1,46 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include "shadow.h" + +#include "shadow_channels.h" + +int shadow_client_channels_post_connect(rdpShadowClient* client) +{ + if (WTSVirtualChannelManagerIsChannelJoined(client->vcm, ENCOMSP_SVC_CHANNEL_NAME)) + { + client->encomsp = encomsp_server_context_new(client->vcm); + + if (client->encomsp) + client->encomsp->Start(client->encomsp); + } + + if (WTSVirtualChannelManagerIsChannelJoined(client->vcm, REMDESK_SVC_CHANNEL_NAME)) + { + client->remdesk = remdesk_server_context_new(client->vcm); + + if (client->remdesk) + client->remdesk->Start(client->remdesk); + } + + return 0; +} diff --git a/server/shadow/shadow_channels.h b/server/shadow/shadow_channels.h new file mode 100644 index 000000000..fab849ded --- /dev/null +++ b/server/shadow/shadow_channels.h @@ -0,0 +1,37 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FREERDP_SHADOW_SERVER_CHANNELS_H +#define FREERDP_SHADOW_SERVER_CHANNELS_H + +#include + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +int shadow_client_channels_post_connect(rdpShadowClient* client); + +#ifdef __cplusplus +} +#endif + +#endif /* FREERDP_SHADOW_SERVER_CHANNELS_H */ diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index acf3eff1e..a6a641993 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -46,12 +46,26 @@ void shadow_client_context_new(freerdp_peer* peer, rdpShadowClient* client) settings->FrameMarkerCommandEnabled = TRUE; settings->SurfaceFrameMarkerEnabled = TRUE; + client->inLobby = TRUE; + client->mayView = server->mayView; + client->mayInteract = server->mayInteract; + + client->vcm = WTSOpenServerA((LPSTR) peer->context); + client->StopEvent = CreateEvent(NULL, TRUE, FALSE, NULL); } void shadow_client_context_free(freerdp_peer* peer, rdpShadowClient* client) { + WTSCloseServer((HANDLE) client->vcm); + CloseHandle(client->StopEvent); + + if (client->lobby) + { + shadow_surface_free(client->lobby); + client->lobby = NULL; + } } BOOL shadow_client_capabilities(freerdp_peer* peer) @@ -63,6 +77,8 @@ BOOL shadow_client_post_connect(freerdp_peer* peer) { rdpSettings* settings; rdpShadowClient* client; + rdpShadowSurface* lobby; + RECTANGLE_16 invalidRect; client = (rdpShadowClient*) peer->context; settings = peer->settings; @@ -76,6 +92,23 @@ BOOL shadow_client_post_connect(freerdp_peer* peer) peer->update->DesktopResize(peer->update->context); + shadow_client_channels_post_connect(client); + + lobby = client->lobby = shadow_surface_new(client->server, 0, 0, settings->DesktopWidth, settings->DesktopHeight); + + if (!client->lobby) + return FALSE; + + freerdp_image_fill(lobby->data, PIXEL_FORMAT_XRGB32, lobby->scanline, + 0, 0, lobby->width, lobby->height, 0x3BB9FF); + + invalidRect.left = 0; + invalidRect.top = 0; + invalidRect.right = lobby->width; + invalidRect.bottom = lobby->height; + + region16_union_rect(&(lobby->invalidRegion), &(lobby->invalidRegion), &invalidRect); + return TRUE; } @@ -86,6 +119,7 @@ BOOL shadow_client_activate(freerdp_peer* peer) client = (rdpShadowClient*) peer->context; client->activated = TRUE; + client->inLobby = client->mayView ? FALSE : TRUE; return TRUE; } @@ -152,7 +186,8 @@ int shadow_client_send_surface_bits(rdpShadowClient* client) server = client->server; encoder = server->encoder; - surface = server->surface; + + surface = client->inLobby ? client->lobby : server->surface; surfaceRect.left = surface->x; surfaceRect.top = surface->y; diff --git a/server/shadow/shadow_input.c b/server/shadow/shadow_input.c index 5e8c1acd6..4f28b0bc5 100644 --- a/server/shadow/shadow_input.c +++ b/server/shadow/shadow_input.c @@ -27,6 +27,9 @@ void shadow_input_synchronize_event(rdpInput* input, UINT32 flags) rdpShadowClient* client = (rdpShadowClient*) input->context; rdpShadowSubsystem* subsystem = client->server->subsystem; + if (!client->mayInteract) + return; + if (subsystem->SynchronizeEvent) { subsystem->SynchronizeEvent(subsystem, flags); @@ -38,6 +41,9 @@ void shadow_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) rdpShadowClient* client = (rdpShadowClient*) input->context; rdpShadowSubsystem* subsystem = client->server->subsystem; + if (!client->mayInteract) + return; + if (subsystem->KeyboardEvent) { subsystem->KeyboardEvent(subsystem, flags, code); @@ -49,6 +55,9 @@ void shadow_input_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT16 c rdpShadowClient* client = (rdpShadowClient*) input->context; rdpShadowSubsystem* subsystem = client->server->subsystem; + if (!client->mayInteract) + return; + if (subsystem->UnicodeKeyboardEvent) { subsystem->UnicodeKeyboardEvent(subsystem, flags, code); @@ -60,6 +69,9 @@ void shadow_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) rdpShadowClient* client = (rdpShadowClient*) input->context; rdpShadowSubsystem* subsystem = client->server->subsystem; + if (!client->mayInteract) + return; + if (subsystem->MouseEvent) { subsystem->MouseEvent(subsystem, flags, x, y); @@ -71,6 +83,9 @@ void shadow_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, rdpShadowClient* client = (rdpShadowClient*) input->context; rdpShadowSubsystem* subsystem = client->server->subsystem; + if (!client->mayInteract) + return; + if (subsystem->ExtendedMouseEvent) { subsystem->ExtendedMouseEvent(subsystem, flags, x, y); From 99ad992709adec3b489763a680bb3de3b559228f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Mon, 14 Jul 2014 18:44:15 -0400 Subject: [PATCH 018/170] shadow: add support for older bitmap codecs --- server/shadow/shadow_client.c | 374 +++++++++++++++++++++++++++------- 1 file changed, 302 insertions(+), 72 deletions(-) diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index a6a641993..debff8a47 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -31,6 +31,52 @@ #include "shadow.h" +static const char* makecert_argv[4] = +{ + "makecert", + "-rdp", + "-live", + "-silent" +}; + +static int makecert_argc = (sizeof(makecert_argv) / sizeof(char*)); + +int shadow_generate_certificate(rdpSettings* settings) +{ + char* serverFilePath; + MAKECERT_CONTEXT* context; + + serverFilePath = GetCombinedPath(settings->ConfigPath, "server"); + + if (!PathFileExistsA(serverFilePath)) + CreateDirectoryA(serverFilePath, 0); + + settings->CertificateFile = GetCombinedPath(serverFilePath, "server.crt"); + settings->PrivateKeyFile = GetCombinedPath(serverFilePath, "server.key"); + + if ((!PathFileExistsA(settings->CertificateFile)) || + (!PathFileExistsA(settings->PrivateKeyFile))) + { + context = makecert_context_new(); + + makecert_context_process(context, makecert_argc, (char**) makecert_argv); + + makecert_context_set_output_file_name(context, "server"); + + if (!PathFileExistsA(settings->CertificateFile)) + makecert_context_output_certificate_file(context, serverFilePath); + + if (!PathFileExistsA(settings->PrivateKeyFile)) + makecert_context_output_private_key_file(context, serverFilePath); + + makecert_context_free(context); + } + + free(serverFilePath); + + return 1; +} + void shadow_client_context_new(freerdp_peer* peer, rdpShadowClient* client) { rdpSettings* settings; @@ -41,11 +87,18 @@ void shadow_client_context_new(freerdp_peer* peer, rdpShadowClient* client) settings = peer->settings; settings->ColorDepth = 32; + settings->NSCodec = TRUE; settings->RemoteFxCodec = TRUE; settings->BitmapCacheV3Enabled = TRUE; settings->FrameMarkerCommandEnabled = TRUE; settings->SurfaceFrameMarkerEnabled = TRUE; + settings->RdpSecurity = FALSE; + settings->TlsSecurity = TRUE; + settings->NlaSecurity = FALSE; + + shadow_generate_certificate(settings); + client->inLobby = TRUE; client->mayView = server->mayView; client->mayInteract = server->mayInteract; @@ -85,7 +138,6 @@ BOOL shadow_client_post_connect(freerdp_peer* peer) settings->DesktopWidth = client->server->screen->width; settings->DesktopHeight = client->server->screen->height; - settings->ColorDepth = 32; fprintf(stderr, "Client from %s is activated (%dx%d@%d)\n", peer->hostname, settings->DesktopWidth, settings->DesktopHeight, settings->ColorDepth); @@ -158,14 +210,10 @@ int shadow_client_send_surface_frame_marker(rdpShadowClient* client, UINT32 acti return 1; } -int shadow_client_send_surface_bits(rdpShadowClient* client) +int shadow_client_send_surface_bits(rdpShadowClient* client, rdpShadowSurface* surface, int nXSrc, int nYSrc, int nWidth, int nHeight) { int i; wStream* s; - int nXSrc; - int nYSrc; - int nWidth; - int nHeight; int nSrcStep; BYTE* pSrcData; int numMessages; @@ -174,11 +222,8 @@ int shadow_client_send_surface_bits(rdpShadowClient* client) rdpContext* context; rdpSettings* settings; rdpShadowServer* server; - rdpShadowSurface* surface; rdpShadowEncoder* encoder; - RECTANGLE_16 surfaceRect; SURFACE_BITS_COMMAND cmd; - const RECTANGLE_16* extents; context = (rdpContext*) client; update = context->update; @@ -187,24 +232,6 @@ int shadow_client_send_surface_bits(rdpShadowClient* client) server = client->server; encoder = server->encoder; - surface = client->inLobby ? client->lobby : server->surface; - - surfaceRect.left = surface->x; - surfaceRect.top = surface->y; - surfaceRect.right = surface->x + surface->width; - surfaceRect.bottom = surface->y + surface->height; - - region16_intersect_rect(&(surface->invalidRegion), &(surface->invalidRegion), &surfaceRect); - - if (region16_is_empty(&(surface->invalidRegion))) - return 1; - - extents = region16_extents(&(surface->invalidRegion)); - - nXSrc = extents->left - surface->x; - nYSrc = extents->top - surface->y; - nWidth = extents->right - extents->left; - nHeight = extents->bottom - extents->top; pSrcData = surface->data; nSrcStep = surface->scanline; @@ -298,53 +325,265 @@ int shadow_client_send_surface_bits(rdpShadowClient* client) shadow_client_send_surface_frame_marker(client, SURFACECMD_FRAMEACTION_END, frameId); } - return 0; + return 1; } -static const char* makecert_argv[4] = +int shadow_client_send_bitmap_update(rdpShadowClient* client, rdpShadowSurface* surface, int nXSrc, int nYSrc, int nWidth, int nHeight) { - "makecert", - "-rdp", - "-live", - "-silent" -}; + BYTE* data; + BYTE* tile; + BYTE* buffer; + int i, j, k; + wStream* s; + wStream* ts; + int e, lines; + int rows, cols; + int nSrcStep; + BYTE* pSrcData; + rdpUpdate* update; + rdpContext* context; + rdpSettings* settings; + int MaxRegionWidth; + int MaxRegionHeight; + BITMAP_DATA* bitmapData; + BITMAP_UPDATE bitmapUpdate; + rdpShadowServer* server; + rdpShadowEncoder* encoder; -static int makecert_argc = (sizeof(makecert_argv) / sizeof(char*)); + context = (rdpContext*) client; + update = context->update; + settings = context->settings; -int shadow_generate_certificate(rdpSettings* settings) -{ - char* serverFilePath; - MAKECERT_CONTEXT* context; + server = client->server; + encoder = server->encoder; - serverFilePath = GetCombinedPath(settings->ConfigPath, "server"); + pSrcData = surface->data; + nSrcStep = surface->scanline; - if (!PathFileExistsA(serverFilePath)) - CreateDirectoryA(serverFilePath, 0); + MaxRegionWidth = 64 * 4; + MaxRegionHeight = 64 * 1; - settings->CertificateFile = GetCombinedPath(serverFilePath, "server.crt"); - settings->PrivateKeyFile = GetCombinedPath(serverFilePath, "server.key"); - - if ((!PathFileExistsA(settings->CertificateFile)) || - (!PathFileExistsA(settings->PrivateKeyFile))) + if ((nXSrc % 4) != 0) { - context = makecert_context_new(); - - makecert_context_process(context, makecert_argc, (char**) makecert_argv); - - makecert_context_set_output_file_name(context, "server"); - - if (!PathFileExistsA(settings->CertificateFile)) - makecert_context_output_certificate_file(context, serverFilePath); - - if (!PathFileExistsA(settings->PrivateKeyFile)) - makecert_context_output_private_key_file(context, serverFilePath); - - makecert_context_free(context); + nWidth += (nXSrc % 4); + nXSrc -= (nXSrc % 4); } - free(serverFilePath); + if ((nYSrc % 4) != 0) + { + nHeight += (nYSrc % 4); + nYSrc -= (nYSrc % 4); + } - return 0; + if ((nWidth * nHeight) > (MaxRegionWidth * MaxRegionHeight)) + { + int nXSrcSub; + int nYSrcSub; + int nWidthSub; + int nHeightSub; + rows = (nWidth + (MaxRegionWidth - (nWidth % MaxRegionWidth))) / MaxRegionWidth; + cols = (nHeight + (MaxRegionHeight - (nHeight % MaxRegionHeight))) / MaxRegionHeight; + + for (i = 0; i < rows; i++) + { + for (j = 0; j < cols; j++) + { + nXSrcSub = nXSrc + (i * MaxRegionWidth); + nYSrcSub = nYSrc + (j * MaxRegionHeight); + + nWidthSub = (i < (rows - 1)) ? MaxRegionWidth : nWidth - (i * MaxRegionWidth); + nHeightSub = (j < (cols - 1)) ? MaxRegionHeight : nHeight - (j * MaxRegionHeight); + + if ((nWidthSub * nHeightSub) > 0) + { + shadow_client_send_bitmap_update(client, surface, nXSrcSub, nYSrcSub, nWidthSub, nHeightSub); + } + } + } + + return 1; + } + + tile = (BYTE*) malloc(64 * 64 * 4); + + if (!tile) + return -1; + + rows = (nWidth + (64 - (nWidth % 64))) / 64; + cols = (nHeight + (64 - (nHeight % 64))) / 64; + + k = 0; + bitmapUpdate.count = bitmapUpdate.number = rows * cols; + bitmapData = (BITMAP_DATA*) malloc(sizeof(BITMAP_DATA) * bitmapUpdate.number); + bitmapUpdate.rectangles = bitmapData; + + if (!bitmapData) + return -1; + + if ((nWidth % 4) != 0) + { + nXSrc -= (nWidth % 4); + nWidth += (nWidth % 4); + } + + if ((nHeight % 4) != 0) + { + nYSrc -= (nHeight % 4); + nHeight += (nHeight % 4); + } + + for (i = 0; i < rows; i++) + { + for (j = 0; j < cols; j++) + { + nWidth = (i < (rows - 1)) ? 64 : nWidth - (i * 64); + nHeight = (j < (cols - 1)) ? 64 : nHeight - (j * 64); + + bitmapData[k].bitsPerPixel = 16; + bitmapData[k].width = nWidth; + bitmapData[k].height = nHeight; + bitmapData[k].destLeft = nXSrc + (i * 64); + bitmapData[k].destTop = nYSrc + (j * 64); + bitmapData[k].destRight = bitmapData[k].destLeft + nWidth - 1; + bitmapData[k].destBottom = bitmapData[k].destTop + nHeight - 1; + bitmapData[k].compressed = TRUE; + + if (((nWidth * nHeight) > 0) && (nWidth >= 4) && (nHeight >= 4)) + { + UINT32 srcFormat = PIXEL_FORMAT_RGB32; + + e = nWidth % 4; + + if (e != 0) + e = 4 - e; + + s = encoder->bs; + ts = encoder->bts; + + Stream_SetPosition(s, 0); + Stream_SetPosition(ts, 0); + + data = surface->data; + data = &data[(bitmapData[k].destTop * nSrcStep) + + (bitmapData[k].destLeft * 4)]; + + srcFormat = PIXEL_FORMAT_RGB32; + + if (settings->ColorDepth > 24) + { + int dstSize; + + buffer = encoder->grid[k]; + + buffer = freerdp_bitmap_compress_planar(encoder->planar, + data, srcFormat, nWidth, nHeight, nSrcStep, buffer, &dstSize); + + bitmapData[k].bitmapDataStream = buffer; + bitmapData[k].bitmapLength = dstSize; + + bitmapData[k].bitsPerPixel = 32; + bitmapData[k].cbScanWidth = nWidth * 4; + bitmapData[k].cbUncompressedSize = nWidth * nHeight * 4; + } + else + { + int bytesPerPixel = 2; + UINT32 dstFormat = PIXEL_FORMAT_RGB16; + + if (settings->ColorDepth == 15) + { + bytesPerPixel = 2; + dstFormat = PIXEL_FORMAT_RGB15; + } + else if (settings->ColorDepth == 24) + { + bytesPerPixel = 3; + dstFormat = PIXEL_FORMAT_RGB32; + } + + freerdp_image_copy(tile, dstFormat, -1, 0, 0, nWidth, nHeight, + data, srcFormat, nSrcStep, 0, 0); + + lines = freerdp_bitmap_compress((char*) tile, nWidth, nHeight, s, + settings->ColorDepth, 16384, nHeight - 1, ts, e); + + Stream_SealLength(s); + + bitmapData[k].bitmapDataStream = Stream_Buffer(s); + bitmapData[k].bitmapLength = Stream_Length(s); + + buffer = encoder->grid[k]; + CopyMemory(buffer, bitmapData[k].bitmapDataStream, bitmapData[k].bitmapLength); + bitmapData[k].bitmapDataStream = buffer; + + bitmapData[k].bitsPerPixel = settings->ColorDepth; + bitmapData[k].cbScanWidth = nWidth * bytesPerPixel; + bitmapData[k].cbUncompressedSize = nWidth * nHeight * bytesPerPixel; + } + + bitmapData[k].cbCompFirstRowSize = 0; + bitmapData[k].cbCompMainBodySize = bitmapData[k].bitmapLength; + + k++; + } + } + } + + bitmapUpdate.count = bitmapUpdate.number = k; + + IFCALL(update->BitmapUpdate, context, &bitmapUpdate); + + free(bitmapData); + free(tile); + + return 1; +} + +int shadow_client_send_surface_update(rdpShadowClient* client) +{ + int status = -1; + int nXSrc, nYSrc; + int nWidth, nHeight; + rdpContext* context; + rdpSettings* settings; + rdpShadowServer* server; + rdpShadowSurface* surface; + RECTANGLE_16 surfaceRect; + const RECTANGLE_16* extents; + + context = (rdpContext*) client; + settings = context->settings; + server = client->server; + + surface = client->inLobby ? client->lobby : server->surface; + + surfaceRect.left = surface->x; + surfaceRect.top = surface->y; + surfaceRect.right = surface->x + surface->width; + surfaceRect.bottom = surface->y + surface->height; + + region16_intersect_rect(&(surface->invalidRegion), &(surface->invalidRegion), &surfaceRect); + + if (region16_is_empty(&(surface->invalidRegion))) + return 1; + + extents = region16_extents(&(surface->invalidRegion)); + + nXSrc = extents->left - surface->x; + nYSrc = extents->top - surface->y; + nWidth = extents->right - extents->left; + nHeight = extents->bottom - extents->top; + + if (settings->RemoteFxCodec || settings->NSCodec) + { + status = shadow_client_send_surface_bits(client, surface, nXSrc, nYSrc, nWidth, nHeight); + } + else + { + status = shadow_client_send_bitmap_update(client, surface, nXSrc, nYSrc, nWidth, nHeight); + } + + return status; } void* shadow_client_thread(rdpShadowClient* client) @@ -374,15 +613,6 @@ void* shadow_client_thread(rdpShadowClient* client) peer = ((rdpContext*) client)->peer; settings = peer->settings; - shadow_generate_certificate(settings); - - settings->RemoteFxCodec = TRUE; - settings->ColorDepth = 32; - - settings->NlaSecurity = FALSE; - settings->TlsSecurity = TRUE; - settings->RdpSecurity = FALSE; - peer->Capabilities = shadow_client_capabilities; peer->PostConnect = shadow_client_post_connect; peer->Activate = shadow_client_activate; @@ -436,7 +666,7 @@ void* shadow_client_thread(rdpShadowClient* client) if (subsystem->SurfaceCopy) subsystem->SurfaceCopy(subsystem); - shadow_client_send_surface_bits(client); + shadow_client_send_surface_update(client); region16_clear(&(screen->invalidRegion)); LeaveCriticalSection(&(screen->lock)); From 8c791907ab4940973b84f96863f399436012bd53 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Tue, 15 Jul 2014 12:50:47 -0400 Subject: [PATCH 019/170] shadow: reset encoder on reconnection --- server/shadow/shadow_client.c | 2 + server/shadow/shadow_encoder.c | 118 +++++++++++++++++++++++++-------- server/shadow/shadow_encoder.h | 1 + 3 files changed, 92 insertions(+), 29 deletions(-) diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index debff8a47..743cb5d4e 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -173,6 +173,8 @@ BOOL shadow_client_activate(freerdp_peer* peer) client->activated = TRUE; client->inLobby = client->mayView ? FALSE : TRUE; + shadow_encoder_reset(client->server->encoder); + return TRUE; } diff --git a/server/shadow/shadow_encoder.c b/server/shadow/shadow_encoder.c index 82c5aab56..87ce42b1a 100644 --- a/server/shadow/shadow_encoder.c +++ b/server/shadow/shadow_encoder.c @@ -112,29 +112,16 @@ int shadow_encoder_grid_uninit(rdpShadowEncoder* encoder) return 0; } -rdpShadowEncoder* shadow_encoder_new(rdpShadowServer* server) +int shadow_encoder_init(rdpShadowEncoder* encoder) { DWORD planarFlags; - rdpShadowEncoder* encoder; - encoder = (rdpShadowEncoder*) calloc(1, sizeof(rdpShadowEncoder)); - - if (!encoder) - return NULL; - - encoder->server = server; - - encoder->width = server->screen->width; - encoder->height = server->screen->height; - - encoder->bitsPerPixel = 32; - encoder->bytesPerPixel = 4; encoder->scanline = (encoder->width + (encoder->width % 4)) * 4; encoder->data = (BYTE*) malloc(encoder->scanline * encoder->height); if (!encoder->data) - return NULL; + return -1; encoder->maxTileWidth = 64; encoder->maxTileHeight = 64; @@ -169,6 +156,92 @@ rdpShadowEncoder* shadow_encoder_new(rdpShadowServer* server) encoder->frameAck = TRUE; encoder->frameList = ListDictionary_New(TRUE); + return 1; +} + +int shadow_encoder_uninit(rdpShadowEncoder* encoder) +{ + if (encoder->bs) + { + Stream_Free(encoder->bs, TRUE); + encoder->bs = NULL; + } + + if (encoder->bts) + { + Stream_Free(encoder->bts, TRUE); + encoder->bts = NULL; + } + + if (encoder->rfx_s) + { + Stream_Free(encoder->rfx_s, TRUE); + encoder->rfx_s = NULL; + } + + if (encoder->rfx) + { + rfx_context_free(encoder->rfx); + encoder->rfx = NULL; + } + + if (encoder->nsc_s) + { + Stream_Free(encoder->nsc_s, TRUE); + encoder->nsc_s = NULL; + } + + if (encoder->nsc) + { + nsc_context_free(encoder->nsc); + encoder->nsc = NULL; + } + + if (encoder->planar) + { + freerdp_bitmap_planar_context_free(encoder->planar); + encoder->planar = NULL; + } + + shadow_encoder_grid_uninit(encoder); + + if (encoder->frameList) + { + ListDictionary_Free(encoder->frameList); + encoder->frameList = NULL; + } + + return 1; +} + +int shadow_encoder_reset(rdpShadowEncoder* encoder) +{ + if (shadow_encoder_uninit(encoder) < 0) + return -1; + + return shadow_encoder_init(encoder); +} + +rdpShadowEncoder* shadow_encoder_new(rdpShadowServer* server) +{ + rdpShadowEncoder* encoder; + + encoder = (rdpShadowEncoder*) calloc(1, sizeof(rdpShadowEncoder)); + + if (!encoder) + return NULL; + + encoder->server = server; + + encoder->width = server->screen->width; + encoder->height = server->screen->height; + + encoder->bitsPerPixel = 32; + encoder->bytesPerPixel = 4; + + if (shadow_encoder_init(encoder) < 0) + return NULL; + return encoder; } @@ -177,20 +250,7 @@ void shadow_encoder_free(rdpShadowEncoder* encoder) if (!encoder) return; - Stream_Free(encoder->bs, TRUE); - Stream_Free(encoder->bts, TRUE); - - Stream_Free(encoder->rfx_s, TRUE); - rfx_context_free(encoder->rfx); - - Stream_Free(encoder->nsc_s, TRUE); - nsc_context_free(encoder->nsc); - - freerdp_bitmap_planar_context_free(encoder->planar); - - shadow_encoder_grid_uninit(encoder); - - ListDictionary_Free(encoder->frameList); + shadow_encoder_uninit(encoder); free(encoder); } diff --git a/server/shadow/shadow_encoder.h b/server/shadow/shadow_encoder.h index 5170ed6c3..6895c80b9 100644 --- a/server/shadow/shadow_encoder.h +++ b/server/shadow/shadow_encoder.h @@ -69,6 +69,7 @@ struct rdp_shadow_encoder extern "C" { #endif +int shadow_encoder_reset(rdpShadowEncoder* encoder); int shadow_encoder_create_frame_id(rdpShadowEncoder* encoder); rdpShadowEncoder* shadow_encoder_new(rdpShadowServer* server); From 78520d51414344a1bc8e21176ce5c2e8efec9821 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Tue, 15 Jul 2014 16:34:15 -0400 Subject: [PATCH 020/170] shadow: add basic server-side encomsp server --- channels/encomsp/client/CMakeLists.txt | 4 +- channels/encomsp/client/encomsp_main.c | 65 +++++++-- channels/encomsp/encomsp_common.c | 66 --------- channels/encomsp/server/CMakeLists.txt | 4 +- channels/encomsp/server/encomsp_main.c | 135 ++++++++++++------ include/freerdp/server/encomsp.h | 27 +++- include/freerdp/server/remdesk.h | 1 + server/shadow/CMakeLists.txt | 6 +- server/shadow/shadow_channels.c | 12 +- server/shadow/shadow_channels.h | 3 + server/shadow/shadow_encomsp.c | 108 ++++++++++++++ .../shadow/shadow_encomsp.h | 22 +-- server/shadow/shadow_remdesk.c | 35 +++++ server/shadow/shadow_remdesk.h | 37 +++++ server/shadow/{shadow.c => shadow_server.c} | 0 15 files changed, 372 insertions(+), 153 deletions(-) delete mode 100644 channels/encomsp/encomsp_common.c create mode 100644 server/shadow/shadow_encomsp.c rename channels/encomsp/encomsp_common.h => server/shadow/shadow_encomsp.h (62%) create mode 100644 server/shadow/shadow_remdesk.c create mode 100644 server/shadow/shadow_remdesk.h rename server/shadow/{shadow.c => shadow_server.c} (100%) diff --git a/channels/encomsp/client/CMakeLists.txt b/channels/encomsp/client/CMakeLists.txt index 89b2e1ed0..8842e5969 100644 --- a/channels/encomsp/client/CMakeLists.txt +++ b/channels/encomsp/client/CMakeLists.txt @@ -21,9 +21,7 @@ include_directories(..) set(${MODULE_PREFIX}_SRCS encomsp_main.c - encomsp_main.h - ../encomsp_common.c - ../encomsp_common.h) + encomsp_main.h) add_channel_client_library(${MODULE_PREFIX} ${MODULE_NAME} ${CHANNEL_NAME} FALSE "VirtualChannelEntry") diff --git a/channels/encomsp/client/encomsp_main.c b/channels/encomsp/client/encomsp_main.c index 3e2be2182..81bfbf111 100644 --- a/channels/encomsp/client/encomsp_main.c +++ b/channels/encomsp/client/encomsp_main.c @@ -26,10 +26,47 @@ #include -#include "encomsp_common.h" - #include "encomsp_main.h" +static int encomsp_read_header(wStream* s, ENCOMSP_ORDER_HEADER* header) +{ + if (Stream_GetRemainingLength(s) < ENCOMSP_ORDER_HEADER_SIZE) + return -1; + + Stream_Read_UINT16(s, header->Type); /* Type (2 bytes) */ + Stream_Read_UINT16(s, header->Length); /* Length (2 bytes) */ + + return 1; +} + +static int encomsp_write_header(wStream* s, ENCOMSP_ORDER_HEADER* header) +{ + Stream_Write_UINT16(s, header->Type); /* Type (2 bytes) */ + Stream_Write_UINT16(s, header->Length); /* Length (2 bytes) */ + + return 1; +} + +static int encomsp_read_unicode_string(wStream* s, ENCOMSP_UNICODE_STRING* str) +{ + ZeroMemory(str, sizeof(ENCOMSP_UNICODE_STRING)); + + if (Stream_GetRemainingLength(s) < 2) + return -1; + + Stream_Read_UINT16(s, str->cchString); /* cchString (2 bytes) */ + + if (str->cchString > 1024) + return -1; + + if (Stream_GetRemainingLength(s) < (str->cchString * 2)) + return -1; + + Stream_Read(s, &(str->wString), (str->cchString * 2)); /* String (variable) */ + + return 1; +} + EncomspClientContext* encomsp_get_client_interface(encomspPlugin* encomsp) { EncomspClientContext* pInterface; @@ -61,7 +98,7 @@ int encomsp_virtual_channel_write(encomspPlugin* encomsp, wStream* s) return 1; } -int encomsp_recv_filter_updated_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) +static int encomsp_recv_filter_updated_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) { int beg, end; EncomspClientContext* context; @@ -102,7 +139,7 @@ int encomsp_recv_filter_updated_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ return 1; } -int encomsp_recv_application_created_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) +static int encomsp_recv_application_created_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) { int beg, end; EncomspClientContext* context; @@ -147,7 +184,7 @@ int encomsp_recv_application_created_pdu(encomspPlugin* encomsp, wStream* s, ENC return 1; } -int encomsp_recv_application_removed_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) +static int encomsp_recv_application_removed_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) { int beg, end; EncomspClientContext* context; @@ -188,7 +225,7 @@ int encomsp_recv_application_removed_pdu(encomspPlugin* encomsp, wStream* s, ENC return 1; } -int encomsp_recv_window_created_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) +static int encomsp_recv_window_created_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) { int beg, end; EncomspClientContext* context; @@ -234,7 +271,7 @@ int encomsp_recv_window_created_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ return 1; } -int encomsp_recv_window_removed_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) +static int encomsp_recv_window_removed_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) { int beg, end; EncomspClientContext* context; @@ -275,7 +312,7 @@ int encomsp_recv_window_removed_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ return 1; } -int encomsp_recv_show_window_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) +static int encomsp_recv_show_window_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) { int beg, end; EncomspClientContext* context; @@ -316,7 +353,7 @@ int encomsp_recv_show_window_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORD return 1; } -int encomsp_recv_participant_created_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) +static int encomsp_recv_participant_created_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) { int beg, end; EncomspClientContext* context; @@ -362,7 +399,7 @@ int encomsp_recv_participant_created_pdu(encomspPlugin* encomsp, wStream* s, ENC return 1; } -int encomsp_recv_participant_removed_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) +static int encomsp_recv_participant_removed_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) { int beg, end; EncomspClientContext* context; @@ -405,7 +442,7 @@ int encomsp_recv_participant_removed_pdu(encomspPlugin* encomsp, wStream* s, ENC return 1; } -int encomsp_recv_change_participant_control_level_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) +static int encomsp_recv_change_participant_control_level_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) { int beg, end; EncomspClientContext* context; @@ -447,7 +484,7 @@ int encomsp_recv_change_participant_control_level_pdu(encomspPlugin* encomsp, wS return 1; } -int encomsp_send_change_participant_control_level_pdu(EncomspClientContext* context, ENCOMSP_CHANGE_PARTICIPANT_CONTROL_LEVEL_PDU* pdu) +static int encomsp_send_change_participant_control_level_pdu(EncomspClientContext* context, ENCOMSP_CHANGE_PARTICIPANT_CONTROL_LEVEL_PDU* pdu) { wStream* s; encomspPlugin* encomsp; @@ -471,7 +508,7 @@ int encomsp_send_change_participant_control_level_pdu(EncomspClientContext* cont return 1; } -int encomsp_recv_graphics_stream_paused_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) +static int encomsp_recv_graphics_stream_paused_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) { int beg, end; EncomspClientContext* context; @@ -507,7 +544,7 @@ int encomsp_recv_graphics_stream_paused_pdu(encomspPlugin* encomsp, wStream* s, return 1; } -int encomsp_recv_graphics_stream_resumed_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) +static int encomsp_recv_graphics_stream_resumed_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORDER_HEADER* header) { int beg, end; EncomspClientContext* context; diff --git a/channels/encomsp/encomsp_common.c b/channels/encomsp/encomsp_common.c deleted file mode 100644 index 6f3d61cad..000000000 --- a/channels/encomsp/encomsp_common.c +++ /dev/null @@ -1,66 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * Multiparty Virtual Channel - * - * Copyright 2014 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include -#include - -#include "encomsp_common.h" - -int encomsp_read_header(wStream* s, ENCOMSP_ORDER_HEADER* header) -{ - if (Stream_GetRemainingLength(s) < ENCOMSP_ORDER_HEADER_SIZE) - return -1; - - Stream_Read_UINT16(s, header->Type); /* Type (2 bytes) */ - Stream_Read_UINT16(s, header->Length); /* Length (2 bytes) */ - - return 1; -} - -int encomsp_write_header(wStream* s, ENCOMSP_ORDER_HEADER* header) -{ - Stream_Write_UINT16(s, header->Type); /* Type (2 bytes) */ - Stream_Write_UINT16(s, header->Length); /* Length (2 bytes) */ - - return 1; -} - -int encomsp_read_unicode_string(wStream* s, ENCOMSP_UNICODE_STRING* str) -{ - ZeroMemory(str, sizeof(ENCOMSP_UNICODE_STRING)); - - if (Stream_GetRemainingLength(s) < 2) - return -1; - - Stream_Read_UINT16(s, str->cchString); /* cchString (2 bytes) */ - - if (str->cchString > 1024) - return -1; - - if (Stream_GetRemainingLength(s) < (str->cchString * 2)) - return -1; - - Stream_Read(s, &(str->wString), (str->cchString * 2)); /* String (variable) */ - - return 1; -} diff --git a/channels/encomsp/server/CMakeLists.txt b/channels/encomsp/server/CMakeLists.txt index 1fe84d63e..4cb47966e 100644 --- a/channels/encomsp/server/CMakeLists.txt +++ b/channels/encomsp/server/CMakeLists.txt @@ -21,9 +21,7 @@ include_directories(..) set(${MODULE_PREFIX}_SRCS encomsp_main.c - encomsp_main.h - ../encomsp_common.c - ../encomsp_common.h) + encomsp_main.h) add_channel_server_library(${MODULE_PREFIX} ${MODULE_NAME} ${CHANNEL_NAME} FALSE "VirtualChannelEntry") diff --git a/channels/encomsp/server/encomsp_main.c b/channels/encomsp/server/encomsp_main.c index bab08d351..4e826cb21 100644 --- a/channels/encomsp/server/encomsp_main.c +++ b/channels/encomsp/server/encomsp_main.c @@ -25,10 +25,83 @@ #include #include -#include "encomsp_common.h" - #include "encomsp_main.h" +static int encomsp_read_header(wStream* s, ENCOMSP_ORDER_HEADER* header) +{ + if (Stream_GetRemainingLength(s) < ENCOMSP_ORDER_HEADER_SIZE) + return -1; + + Stream_Read_UINT16(s, header->Type); /* Type (2 bytes) */ + Stream_Read_UINT16(s, header->Length); /* Length (2 bytes) */ + + return 1; +} + +static int encomsp_write_header(wStream* s, ENCOMSP_ORDER_HEADER* header) +{ + Stream_Write_UINT16(s, header->Type); /* Type (2 bytes) */ + Stream_Write_UINT16(s, header->Length); /* Length (2 bytes) */ + + return 1; +} + +static int encomsp_read_unicode_string(wStream* s, ENCOMSP_UNICODE_STRING* str) +{ + ZeroMemory(str, sizeof(ENCOMSP_UNICODE_STRING)); + + if (Stream_GetRemainingLength(s) < 2) + return -1; + + Stream_Read_UINT16(s, str->cchString); /* cchString (2 bytes) */ + + if (str->cchString > 1024) + return -1; + + if (Stream_GetRemainingLength(s) < (str->cchString * 2)) + return -1; + + Stream_Read(s, &(str->wString), (str->cchString * 2)); /* String (variable) */ + + return 1; +} + +static int encomsp_recv_change_participant_control_level_pdu(EncomspServerContext* context, wStream* s, ENCOMSP_ORDER_HEADER* header) +{ + int beg, end; + ENCOMSP_CHANGE_PARTICIPANT_CONTROL_LEVEL_PDU pdu; + + beg = ((int) Stream_GetPosition(s)) - ENCOMSP_ORDER_HEADER_SIZE; + + CopyMemory(&pdu, header, sizeof(ENCOMSP_ORDER_HEADER)); + + if (Stream_GetRemainingLength(s) < 6) + return -1; + + Stream_Read_UINT16(s, pdu.Flags); /* Flags (2 bytes) */ + Stream_Read_UINT32(s, pdu.ParticipantId); /* ParticipantId (4 bytes) */ + + end = (int) Stream_GetPosition(s); + + if ((beg + header->Length) < end) + return -1; + + if ((beg + header->Length) > end) + { + if (Stream_GetRemainingLength(s) < ((beg + header->Length) - end)) + return -1; + + Stream_SetPosition(s, (beg + header->Length)); + } + + if (context->ChangeParticipantControlLevel) + { + return context->ChangeParticipantControlLevel(context, &pdu); + } + + return 1; +} + static int encomsp_server_receive_pdu(EncomspServerContext* context, wStream* s) { int status = 1; @@ -41,55 +114,12 @@ static int encomsp_server_receive_pdu(EncomspServerContext* context, wStream* s) printf("EncomspReceive: Type: %d Length: %d\n", header.Type, header.Length); - return 1; - -#if 0 switch (header.Type) { - case ODTYPE_FILTER_STATE_UPDATED: - status = encomsp_recv_filter_updated_pdu(context, s, &header); - break; - - case ODTYPE_APP_REMOVED: - status = encomsp_recv_application_removed_pdu(context, s, &header); - break; - - case ODTYPE_APP_CREATED: - status = encomsp_recv_application_created_pdu(context, s, &header); - break; - - case ODTYPE_WND_REMOVED: - status = encomsp_recv_window_removed_pdu(context, s, &header); - break; - - case ODTYPE_WND_CREATED: - status = encomsp_recv_window_created_pdu(context, s, &header); - break; - - case ODTYPE_WND_SHOW: - status = encomsp_recv_show_window_pdu(context, s, &header); - break; - - case ODTYPE_PARTICIPANT_REMOVED: - status = encomsp_recv_participant_removed_pdu(context, s, &header); - break; - - case ODTYPE_PARTICIPANT_CREATED: - status = encomsp_recv_participant_created_pdu(context, s, &header); - break; - case ODTYPE_PARTICIPANT_CTRL_CHANGED: status = encomsp_recv_change_participant_control_level_pdu(context, s, &header); break; - case ODTYPE_GRAPHICS_STREAM_PAUSED: - status = encomsp_recv_graphics_stream_paused_pdu(context, s, &header); - break; - - case ODTYPE_GRAPHICS_STREAM_RESUMED: - status = encomsp_recv_graphics_stream_resumed_pdu(context, s, &header); - break; - default: status = -1; break; @@ -97,7 +127,6 @@ static int encomsp_server_receive_pdu(EncomspServerContext* context, wStream* s) if (status < 0) return -1; -#endif } return status; @@ -112,6 +141,7 @@ static void* encomsp_server_thread(void* arg) HANDLE events[8]; HANDLE ChannelEvent; DWORD BytesReturned; + ENCOMSP_ORDER_HEADER* header; EncomspServerContext* context; context = (EncomspServerContext*) arg; @@ -154,7 +184,18 @@ static void* encomsp_server_thread(void* arg) Stream_EnsureRemainingCapacity(s, BytesReturned); } - encomsp_server_receive_pdu(context, s); + if (Stream_GetPosition(s) >= ENCOMSP_ORDER_HEADER_SIZE) + { + header = (ENCOMSP_ORDER_HEADER*) Stream_Buffer(s); + + if (header->Length >= Stream_GetPosition(s)) + { + Stream_SealLength(s); + Stream_SetPosition(s, 0); + encomsp_server_receive_pdu(context, s); + Stream_SetPosition(s, 0); + } + } } Stream_Free(s, TRUE); diff --git a/include/freerdp/server/encomsp.h b/include/freerdp/server/encomsp.h index f692073b8..dd1f9eba9 100644 --- a/include/freerdp/server/encomsp.h +++ b/include/freerdp/server/encomsp.h @@ -24,7 +24,7 @@ #include #include -#include +#include /** * Server Interface @@ -36,13 +36,38 @@ typedef struct _encomsp_server_private EncomspServerPrivate; typedef int (*psEncomspStart)(EncomspServerContext* context); typedef int (*psEncomspStop)(EncomspServerContext* context); +typedef int (*psEncomspFilterUpdated)(EncomspServerContext* context, ENCOMSP_FILTER_UPDATED_PDU* filterUpdated); +typedef int (*psEncomspApplicationCreated)(EncomspServerContext* context, ENCOMSP_APPLICATION_CREATED_PDU* applicationCreated); +typedef int (*psEncomspApplicationRemoved)(EncomspServerContext* context, ENCOMSP_APPLICATION_REMOVED_PDU* applicationRemoved); +typedef int (*psEncomspWindowCreated)(EncomspServerContext* context, ENCOMSP_WINDOW_CREATED_PDU* windowCreated); +typedef int (*psEncomspWindowRemoved)(EncomspServerContext* context, ENCOMSP_WINDOW_REMOVED_PDU* windowRemoved); +typedef int (*psEncomspShowWindow)(EncomspServerContext* context, ENCOMSP_SHOW_WINDOW_PDU* showWindow); +typedef int (*psEncomspParticipantCreated)(EncomspServerContext* context, ENCOMSP_PARTICIPANT_CREATED_PDU* participantCreated); +typedef int (*psEncomspParticipantRemoved)(EncomspServerContext* context, ENCOMSP_PARTICIPANT_REMOVED_PDU* participantRemoved); +typedef int (*psEncomspChangeParticipantControlLevel)(EncomspServerContext* context, ENCOMSP_CHANGE_PARTICIPANT_CONTROL_LEVEL_PDU* changeParticipantControlLevel); +typedef int (*psEncomspGraphicsStreamPaused)(EncomspServerContext* context, ENCOMSP_GRAPHICS_STREAM_PAUSED_PDU* graphicsStreamPaused); +typedef int (*psEncomspGraphicsStreamResumed)(EncomspServerContext* context, ENCOMSP_GRAPHICS_STREAM_RESUMED_PDU* graphicsStreamResumed); + struct _encomsp_server_context { HANDLE vcm; + void* custom; psEncomspStart Start; psEncomspStop Stop; + psEncomspFilterUpdated FilterUpdated; + psEncomspApplicationCreated ApplicationCreated; + psEncomspApplicationRemoved ApplicationRemoved; + psEncomspWindowCreated WindowCreated; + psEncomspWindowRemoved WindowRemoved; + psEncomspShowWindow ShowWindow; + psEncomspParticipantCreated ParticipantCreated; + psEncomspParticipantRemoved ParticipantRemoved; + psEncomspChangeParticipantControlLevel ChangeParticipantControlLevel; + psEncomspGraphicsStreamPaused GraphicsStreamPaused; + psEncomspGraphicsStreamResumed GraphicsStreamResumed; + EncomspServerPrivate* priv; }; diff --git a/include/freerdp/server/remdesk.h b/include/freerdp/server/remdesk.h index 75b1e0a93..b2c3f118c 100644 --- a/include/freerdp/server/remdesk.h +++ b/include/freerdp/server/remdesk.h @@ -39,6 +39,7 @@ typedef int (*psRemdeskStop)(RemdeskServerContext* context); struct _remdesk_server_context { HANDLE vcm; + void* custom; psRemdeskStart Start; psRemdeskStop Stop; diff --git a/server/shadow/CMakeLists.txt b/server/shadow/CMakeLists.txt index 9bec3b117..cf843ade4 100644 --- a/server/shadow/CMakeLists.txt +++ b/server/shadow/CMakeLists.txt @@ -128,7 +128,11 @@ set(${MODULE_PREFIX}_SRCS shadow_encoder.h shadow_channels.c shadow_channels.h - shadow.c + shadow_encomsp.c + shadow_encomsp.h + shadow_remdesk.c + shadow_remdesk.h + shadow_server.c shadow.h) set(${MODULE_PREFIX}_X11_SRCS diff --git a/server/shadow/shadow_channels.c b/server/shadow/shadow_channels.c index eeb4e7e0e..5a2e4bb03 100644 --- a/server/shadow/shadow_channels.c +++ b/server/shadow/shadow_channels.c @@ -28,19 +28,13 @@ int shadow_client_channels_post_connect(rdpShadowClient* client) { if (WTSVirtualChannelManagerIsChannelJoined(client->vcm, ENCOMSP_SVC_CHANNEL_NAME)) { - client->encomsp = encomsp_server_context_new(client->vcm); - - if (client->encomsp) - client->encomsp->Start(client->encomsp); + shadow_client_encomsp_init(client); } if (WTSVirtualChannelManagerIsChannelJoined(client->vcm, REMDESK_SVC_CHANNEL_NAME)) { - client->remdesk = remdesk_server_context_new(client->vcm); - - if (client->remdesk) - client->remdesk->Start(client->remdesk); + shadow_client_remdesk_init(client); } - return 0; + return 1; } diff --git a/server/shadow/shadow_channels.h b/server/shadow/shadow_channels.h index fab849ded..7c11eb84e 100644 --- a/server/shadow/shadow_channels.h +++ b/server/shadow/shadow_channels.h @@ -24,6 +24,9 @@ #include #include +#include "shadow_encomsp.h" +#include "shadow_remdesk.h" + #ifdef __cplusplus extern "C" { #endif diff --git a/server/shadow/shadow_encomsp.c b/server/shadow/shadow_encomsp.c new file mode 100644 index 000000000..3bca7e7d6 --- /dev/null +++ b/server/shadow/shadow_encomsp.c @@ -0,0 +1,108 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include "shadow.h" + +#include "shadow_encomsp.h" + +static int encomsp_change_participant_control_level(EncomspServerContext* context, + ENCOMSP_CHANGE_PARTICIPANT_CONTROL_LEVEL_PDU* pdu) +{ + BOOL inLobby; + BOOL mayView; + BOOL mayInteract; + rdpShadowClient* client = (rdpShadowClient*) context->custom; + + printf("ChangeParticipantControlLevel: ParticipantId: %d Flags: 0x%04X\n", + pdu->ParticipantId, pdu->Flags); + + mayView = (pdu->Flags & ENCOMSP_MAY_VIEW) ? TRUE : FALSE; + mayInteract = (pdu->Flags & ENCOMSP_MAY_INTERACT) ? TRUE : FALSE; + + if (mayInteract && !mayView) + mayView = TRUE; /* may interact implies may view */ + + if (mayInteract) + { + if (!client->mayInteract) + { + /* request interact + view */ + client->mayInteract = TRUE; + client->mayView = TRUE; + } + } + else if (mayView) + { + if (client->mayInteract) + { + /* release interact */ + client->mayInteract = FALSE; + } + else if (!client->mayView) + { + /* request view */ + client->mayView = TRUE; + } + } + else + { + if (client->mayInteract) + { + /* release interact + view */ + client->mayView = FALSE; + client->mayInteract = FALSE; + } + else if (client->mayView) + { + /* release view */ + client->mayView = FALSE; + client->mayInteract = FALSE; + } + } + + inLobby = client->mayView ? FALSE : TRUE; + + if (inLobby != client->inLobby) + { + shadow_encoder_reset(client->server->encoder); + client->inLobby = inLobby; + } + + return 1; +} + +int shadow_client_encomsp_init(rdpShadowClient* client) +{ + EncomspServerContext* encomsp; + + encomsp = client->encomsp = encomsp_server_context_new(client->vcm); + + encomsp->custom = (void*) client; + + encomsp->ChangeParticipantControlLevel = encomsp_change_participant_control_level; + + if (client->encomsp) + client->encomsp->Start(client->encomsp); + + return 1; +} + diff --git a/channels/encomsp/encomsp_common.h b/server/shadow/shadow_encomsp.h similarity index 62% rename from channels/encomsp/encomsp_common.h rename to server/shadow/shadow_encomsp.h index 8ce493ab7..d7187b5cb 100644 --- a/channels/encomsp/encomsp_common.h +++ b/server/shadow/shadow_encomsp.h @@ -1,6 +1,5 @@ /** * FreeRDP: A Remote Desktop Protocol Implementation - * Multiparty Virtual Channel * * Copyright 2014 Marc-Andre Moreau * @@ -17,17 +16,22 @@ * limitations under the License. */ -#ifndef FREERDP_CHANNEL_ENCOMSP_COMMON_H -#define FREERDP_CHANNEL_ENCOMSP_COMMON_H +#ifndef FREERDP_SHADOW_SERVER_ENCOMSP_H +#define FREERDP_SHADOW_SERVER_ENCOMSP_H + +#include #include -#include +#include -#include +#ifdef __cplusplus +extern "C" { +#endif -int encomsp_read_header(wStream* s, ENCOMSP_ORDER_HEADER* header); -int encomsp_write_header(wStream* s, ENCOMSP_ORDER_HEADER* header); +int shadow_client_encomsp_init(rdpShadowClient* client); -int encomsp_read_unicode_string(wStream* s, ENCOMSP_UNICODE_STRING* str); +#ifdef __cplusplus +} +#endif -#endif /* FREERDP_CHANNEL_ENCOMSP_COMMON_H */ +#endif /* FREERDP_SHADOW_SERVER_ENCOMSP_H */ diff --git a/server/shadow/shadow_remdesk.c b/server/shadow/shadow_remdesk.c new file mode 100644 index 000000000..c88681352 --- /dev/null +++ b/server/shadow/shadow_remdesk.c @@ -0,0 +1,35 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include "shadow.h" + +#include "shadow_remdesk.h" + +int shadow_client_remdesk_init(rdpShadowClient* client) +{ + client->remdesk = remdesk_server_context_new(client->vcm); + + if (client->remdesk) + client->remdesk->Start(client->remdesk); + + return 1; +} diff --git a/server/shadow/shadow_remdesk.h b/server/shadow/shadow_remdesk.h new file mode 100644 index 000000000..f99a42d24 --- /dev/null +++ b/server/shadow/shadow_remdesk.h @@ -0,0 +1,37 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FREERDP_SHADOW_SERVER_REMDESK_H +#define FREERDP_SHADOW_SERVER_REMDESK_H + +#include + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +int shadow_client_remdesk_init(rdpShadowClient* client); + +#ifdef __cplusplus +} +#endif + +#endif /* FREERDP_SHADOW_SERVER_REMDESK_H */ diff --git a/server/shadow/shadow.c b/server/shadow/shadow_server.c similarity index 100% rename from server/shadow/shadow.c rename to server/shadow/shadow_server.c From f6d1d083e99cfdd1d0e2cf806bf84cefd4e280e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Tue, 15 Jul 2014 18:38:32 -0400 Subject: [PATCH 021/170] channels/remdesk: initial dummy server-side remote assistance message parsing --- channels/remdesk/client/remdesk_main.c | 30 +- channels/remdesk/server/remdesk_main.c | 407 ++++++++++++++++++++++++- channels/remdesk/server/remdesk_main.h | 2 + include/freerdp/channels/remdesk.h | 8 + server/shadow/shadow_client.c | 12 + server/shadow/shadow_remdesk.c | 6 +- 6 files changed, 443 insertions(+), 22 deletions(-) diff --git a/channels/remdesk/client/remdesk_main.c b/channels/remdesk/client/remdesk_main.c index 8527b59c8..66b7ed16a 100644 --- a/channels/remdesk/client/remdesk_main.c +++ b/channels/remdesk/client/remdesk_main.c @@ -98,7 +98,7 @@ int remdesk_generate_expert_blob(remdeskPlugin* remdesk) return 1; } -int remdesk_read_channel_header(wStream* s, REMDESK_CHANNEL_HEADER* header) +static int remdesk_read_channel_header(wStream* s, REMDESK_CHANNEL_HEADER* header) { int status; UINT32 ChannelNameLen; @@ -133,7 +133,7 @@ int remdesk_read_channel_header(wStream* s, REMDESK_CHANNEL_HEADER* header) return 1; } -int remdesk_write_channel_header(wStream* s, REMDESK_CHANNEL_HEADER* header) +static int remdesk_write_channel_header(wStream* s, REMDESK_CHANNEL_HEADER* header) { int index; UINT32 ChannelNameLen; @@ -156,14 +156,14 @@ int remdesk_write_channel_header(wStream* s, REMDESK_CHANNEL_HEADER* header) return 1; } -int remdesk_write_ctl_header(wStream* s, REMDESK_CTL_HEADER* ctlHeader) +static int remdesk_write_ctl_header(wStream* s, REMDESK_CTL_HEADER* ctlHeader) { remdesk_write_channel_header(s, (REMDESK_CHANNEL_HEADER*) ctlHeader); Stream_Write_UINT32(s, ctlHeader->msgType); /* msgType (4 bytes) */ return 1; } -int remdesk_prepare_ctl_header(REMDESK_CTL_HEADER* ctlHeader, UINT32 msgType, UINT32 msgSize) +static int remdesk_prepare_ctl_header(REMDESK_CTL_HEADER* ctlHeader, UINT32 msgType, UINT32 msgSize) { ctlHeader->msgType = msgType; strcpy(ctlHeader->ChannelName, REMDESK_CHANNEL_CTL_NAME); @@ -171,12 +171,12 @@ int remdesk_prepare_ctl_header(REMDESK_CTL_HEADER* ctlHeader, UINT32 msgType, UI return 1; } -int remdesk_recv_ctl_server_announce_pdu(remdeskPlugin* remdesk, wStream* s, REMDESK_CHANNEL_HEADER* header) +static int remdesk_recv_ctl_server_announce_pdu(remdeskPlugin* remdesk, wStream* s, REMDESK_CHANNEL_HEADER* header) { return 1; } -int remdesk_recv_ctl_version_info_pdu(remdeskPlugin* remdesk, wStream* s, REMDESK_CHANNEL_HEADER* header) +static int remdesk_recv_ctl_version_info_pdu(remdeskPlugin* remdesk, wStream* s, REMDESK_CHANNEL_HEADER* header) { UINT32 versionMajor; UINT32 versionMinor; @@ -190,7 +190,7 @@ int remdesk_recv_ctl_version_info_pdu(remdeskPlugin* remdesk, wStream* s, REMDES return 1; } -int remdesk_send_ctl_version_info_pdu(remdeskPlugin* remdesk) +static int remdesk_send_ctl_version_info_pdu(remdeskPlugin* remdesk) { wStream* s; REMDESK_CTL_VERSION_INFO_PDU pdu; @@ -214,7 +214,7 @@ int remdesk_send_ctl_version_info_pdu(remdeskPlugin* remdesk) return 1; } -int remdesk_recv_result_pdu(remdeskPlugin* remdesk, wStream* s, REMDESK_CHANNEL_HEADER* header, UINT32 *pResult) +static int remdesk_recv_ctl_result_pdu(remdeskPlugin* remdesk, wStream* s, REMDESK_CHANNEL_HEADER* header, UINT32 *pResult) { UINT32 result; @@ -230,7 +230,7 @@ int remdesk_recv_result_pdu(remdeskPlugin* remdesk, wStream* s, REMDESK_CHANNEL_ return 1; } -int remdesk_send_ctl_authenticate_pdu(remdeskPlugin* remdesk) +static int remdesk_send_ctl_authenticate_pdu(remdeskPlugin* remdesk) { int status; wStream* s; @@ -282,7 +282,7 @@ int remdesk_send_ctl_authenticate_pdu(remdeskPlugin* remdesk) return 1; } -int remdesk_send_ctl_remote_control_desktop_pdu(remdeskPlugin* remdesk) +static int remdesk_send_ctl_remote_control_desktop_pdu(remdeskPlugin* remdesk) { int status; wStream* s; @@ -316,7 +316,7 @@ int remdesk_send_ctl_remote_control_desktop_pdu(remdeskPlugin* remdesk) return 1; } -int remdesk_send_ctl_verify_password_pdu(remdeskPlugin* remdesk) +static int remdesk_send_ctl_verify_password_pdu(remdeskPlugin* remdesk) { int status; wStream* s; @@ -355,7 +355,7 @@ int remdesk_send_ctl_verify_password_pdu(remdeskPlugin* remdesk) return 1; } -int remdesk_send_ctl_expert_on_vista_pdu(remdeskPlugin* remdesk) +static int remdesk_send_ctl_expert_on_vista_pdu(remdeskPlugin* remdesk) { int status; wStream* s; @@ -385,7 +385,7 @@ int remdesk_send_ctl_expert_on_vista_pdu(remdeskPlugin* remdesk) return 1; } -int remdesk_recv_ctl_pdu(remdeskPlugin* remdesk, wStream* s, REMDESK_CHANNEL_HEADER* header) +static int remdesk_recv_ctl_pdu(remdeskPlugin* remdesk, wStream* s, REMDESK_CHANNEL_HEADER* header) { int status = 1; UINT32 msgType = 0; @@ -404,7 +404,7 @@ int remdesk_recv_ctl_pdu(remdeskPlugin* remdesk, wStream* s, REMDESK_CHANNEL_HEA break; case REMDESK_CTL_RESULT: - status = remdesk_recv_result_pdu(remdesk, s, header, &result); + status = remdesk_recv_ctl_result_pdu(remdesk, s, header, &result); break; case REMDESK_CTL_AUTHENTICATE: @@ -469,7 +469,7 @@ int remdesk_recv_ctl_pdu(remdeskPlugin* remdesk, wStream* s, REMDESK_CHANNEL_HEA return status; } -int remdesk_process_receive(remdeskPlugin* remdesk, wStream* s) +static int remdesk_process_receive(remdeskPlugin* remdesk, wStream* s) { int status = 1; REMDESK_CHANNEL_HEADER header; diff --git a/channels/remdesk/server/remdesk_main.c b/channels/remdesk/server/remdesk_main.c index 3cd00ad63..8c193e0fc 100644 --- a/channels/remdesk/server/remdesk_main.c +++ b/channels/remdesk/server/remdesk_main.c @@ -27,9 +27,391 @@ #include "remdesk_main.h" +int remdesk_virtual_channel_write(RemdeskServerContext* context, wStream* s) +{ + BOOL status; + ULONG BytesWritten = 0; + + status = WTSVirtualChannelWrite(context->priv->ChannelHandle, + (PCHAR) Stream_Buffer(s), Stream_Length(s), &BytesWritten); + + return (status) ? 1 : -1; +} + +static int remdesk_read_channel_header(wStream* s, REMDESK_CHANNEL_HEADER* header) +{ + int status; + UINT32 ChannelNameLen; + char* pChannelName = NULL; + + if (Stream_GetRemainingLength(s) < 8) + return -1; + + Stream_Read_UINT32(s, ChannelNameLen); /* ChannelNameLen (4 bytes) */ + Stream_Read_UINT32(s, header->DataLength); /* DataLen (4 bytes) */ + + if (ChannelNameLen > 64) + return -1; + + if ((ChannelNameLen % 2) != 0) + return -1; + + if (Stream_GetRemainingLength(s) < ChannelNameLen) + return -1; + + ZeroMemory(header->ChannelName, sizeof(header->ChannelName)); + + pChannelName = (char*) header->ChannelName; + status = ConvertFromUnicode(CP_UTF8, 0, (WCHAR*) Stream_Pointer(s), + ChannelNameLen / 2, &pChannelName, 32, NULL, NULL); + + Stream_Seek(s, ChannelNameLen); + + if (status <= 0) + return -1; + + return 1; +} + +static int remdesk_write_channel_header(wStream* s, REMDESK_CHANNEL_HEADER* header) +{ + int index; + UINT32 ChannelNameLen; + WCHAR ChannelNameW[32]; + + ZeroMemory(ChannelNameW, sizeof(ChannelNameW)); + + for (index = 0; index < 32; index++) + { + ChannelNameW[index] = (WCHAR) header->ChannelName[index]; + } + + ChannelNameLen = (strlen(header->ChannelName) + 1) * 2; + + Stream_Write_UINT32(s, ChannelNameLen); /* ChannelNameLen (4 bytes) */ + Stream_Write_UINT32(s, header->DataLength); /* DataLen (4 bytes) */ + + Stream_Write(s, ChannelNameW, ChannelNameLen); /* ChannelName (variable) */ + + return 1; +} + +static int remdesk_write_ctl_header(wStream* s, REMDESK_CTL_HEADER* ctlHeader) +{ + remdesk_write_channel_header(s, (REMDESK_CHANNEL_HEADER*) ctlHeader); + Stream_Write_UINT32(s, ctlHeader->msgType); /* msgType (4 bytes) */ + return 1; +} + +static int remdesk_prepare_ctl_header(REMDESK_CTL_HEADER* ctlHeader, UINT32 msgType, UINT32 msgSize) +{ + ctlHeader->msgType = msgType; + strcpy(ctlHeader->ChannelName, REMDESK_CHANNEL_CTL_NAME); + ctlHeader->DataLength = 4 + msgSize; + return 1; +} + +static int remdesk_send_ctl_result_pdu(RemdeskServerContext* context, UINT32 result) +{ + wStream* s; + REMDESK_CTL_RESULT_PDU pdu; + + pdu.result = result; + + remdesk_prepare_ctl_header(&(pdu.ctlHeader), REMDESK_CTL_RESULT, 4); + + s = Stream_New(NULL, REMDESK_CHANNEL_CTL_SIZE + pdu.ctlHeader.DataLength); + + remdesk_write_ctl_header(s, &(pdu.ctlHeader)); + + Stream_Write_UINT32(s, pdu.result); /* result (4 bytes) */ + + Stream_SealLength(s); + + remdesk_virtual_channel_write(context, s); + + Stream_Free(s, TRUE); + + return 1; +} + +static int remdesk_send_ctl_version_info_pdu(RemdeskServerContext* context) +{ + wStream* s; + REMDESK_CTL_VERSION_INFO_PDU pdu; + + remdesk_prepare_ctl_header(&(pdu.ctlHeader), REMDESK_CTL_VERSIONINFO, 8); + + pdu.versionMajor = 1; + pdu.versionMinor = 2; + + s = Stream_New(NULL, REMDESK_CHANNEL_CTL_SIZE + pdu.ctlHeader.DataLength); + + remdesk_write_ctl_header(s, &(pdu.ctlHeader)); + + Stream_Write_UINT32(s, pdu.versionMajor); /* versionMajor (4 bytes) */ + Stream_Write_UINT32(s, pdu.versionMinor); /* versionMinor (4 bytes) */ + + Stream_SealLength(s); + + remdesk_virtual_channel_write(context, s); + + return 1; +} + +static int remdesk_recv_ctl_version_info_pdu(RemdeskServerContext* context, wStream* s, REMDESK_CHANNEL_HEADER* header) +{ + UINT32 versionMajor; + UINT32 versionMinor; + + if (Stream_GetRemainingLength(s) < 8) + return -1; + + Stream_Read_UINT32(s, versionMajor); /* versionMajor (4 bytes) */ + Stream_Read_UINT32(s, versionMinor); /* versionMinor (4 bytes) */ + + return 1; +} + +static int remdesk_recv_ctl_remote_control_desktop_pdu(RemdeskServerContext* context, wStream* s, REMDESK_CHANNEL_HEADER* header) +{ + int status; + int cchStringW; + WCHAR* pStringW; + UINT32 msgLength; + int cbRaConnectionStringW = 0; + WCHAR* raConnectionStringW = NULL; + REMDESK_CTL_REMOTE_CONTROL_DESKTOP_PDU pdu; + + msgLength = header->DataLength - 4; + + pStringW = (WCHAR*) Stream_Pointer(s); + raConnectionStringW = pStringW; + cchStringW = 0; + + while ((msgLength > 0) && pStringW[cchStringW]) + { + msgLength -= 2; + cchStringW++; + } + + if (pStringW[cchStringW] || !cchStringW) + return -1; + + cchStringW++; + cbRaConnectionStringW = cchStringW * 2; + + pdu.raConnectionString = NULL; + + status = ConvertFromUnicode(CP_UTF8, 0, raConnectionStringW, + cbRaConnectionStringW / 2, &pdu.raConnectionString, 0, NULL, NULL); + + if (status <= 0) + return -1; + + printf("RaConnectionString: %s\n", + pdu.raConnectionString); + + free(pdu.raConnectionString); + + remdesk_send_ctl_result_pdu(context, 0); + + return 1; +} + +static int remdesk_recv_ctl_authenticate_pdu(RemdeskServerContext* context, wStream* s, REMDESK_CHANNEL_HEADER* header) +{ + int status; + int cchStringW; + WCHAR* pStringW; + UINT32 msgLength; + int cbExpertBlobW = 0; + WCHAR* expertBlobW = NULL; + int cbRaConnectionStringW = 0; + WCHAR* raConnectionStringW = NULL; + REMDESK_CTL_AUTHENTICATE_PDU pdu; + + msgLength = header->DataLength - 4; + + pStringW = (WCHAR*) Stream_Pointer(s); + raConnectionStringW = pStringW; + cchStringW = 0; + + while ((msgLength > 0) && pStringW[cchStringW]) + { + msgLength -= 2; + cchStringW++; + } + + if (pStringW[cchStringW] || !cchStringW) + return -1; + + cchStringW++; + cbRaConnectionStringW = cchStringW * 2; + + pStringW += cchStringW; + expertBlobW = pStringW; + cchStringW = 0; + + while ((msgLength > 0) && pStringW[cchStringW]) + { + msgLength -= 2; + cchStringW++; + } + + if (pStringW[cchStringW] || !cchStringW) + return -1; + + cchStringW++; + cbExpertBlobW = cchStringW * 2; + + pdu.raConnectionString = NULL; + + status = ConvertFromUnicode(CP_UTF8, 0, raConnectionStringW, + cbRaConnectionStringW / 2, &pdu.raConnectionString, 0, NULL, NULL); + + if (status <= 0) + return -1; + + pdu.expertBlob = NULL; + + status = ConvertFromUnicode(CP_UTF8, 0, expertBlobW, + cbExpertBlobW / 2, &pdu.expertBlob, 0, NULL, NULL); + + if (status <= 0) + return -1; + + printf("RaConnectionString: %s ExpertBlob: %s\n", + pdu.raConnectionString, pdu.expertBlob); + + free(pdu.raConnectionString); + free(pdu.expertBlob); + + return 1; +} + +static int remdesk_recv_ctl_verify_password_pdu(RemdeskServerContext* context, wStream* s, REMDESK_CHANNEL_HEADER* header) +{ + int status; + int cbExpertBlobW = 0; + WCHAR* expertBlobW = NULL; + REMDESK_CTL_VERIFY_PASSWORD_PDU pdu; + + if (Stream_GetRemainingLength(s) < 8) + return -1; + + pdu.expertBlob = NULL; + expertBlobW = (WCHAR*) Stream_Pointer(s); + cbExpertBlobW = header->DataLength - 4; + + status = ConvertFromUnicode(CP_UTF8, 0, expertBlobW, cbExpertBlobW / 2, &pdu.expertBlob, 0, NULL, NULL); + + printf("ExpertBlob: %s\n", pdu.expertBlob); + + remdesk_send_ctl_result_pdu(context, 0); + + return 1; +} + +static int remdesk_recv_ctl_pdu(RemdeskServerContext* context, wStream* s, REMDESK_CHANNEL_HEADER* header) +{ + int status = 1; + UINT32 msgType = 0; + + if (Stream_GetRemainingLength(s) < 4) + return -1; + + Stream_Read_UINT32(s, msgType); /* msgType (4 bytes) */ + + printf("msgType: %d\n", msgType); + + switch (msgType) + { + case REMDESK_CTL_REMOTE_CONTROL_DESKTOP: + status = remdesk_recv_ctl_remote_control_desktop_pdu(context, s, header); + break; + + case REMDESK_CTL_AUTHENTICATE: + status = remdesk_recv_ctl_authenticate_pdu(context, s, header); + break; + + case REMDESK_CTL_DISCONNECT: + break; + + case REMDESK_CTL_VERSIONINFO: + status = remdesk_recv_ctl_version_info_pdu(context, s, header); + break; + + case REMDESK_CTL_ISCONNECTED: + break; + + case REMDESK_CTL_VERIFY_PASSWORD: + status = remdesk_recv_ctl_verify_password_pdu(context, s, header); + break; + + case REMDESK_CTL_EXPERT_ON_VISTA: + break; + + case REMDESK_CTL_RANOVICE_NAME: + break; + + case REMDESK_CTL_RAEXPERT_NAME: + break; + + case REMDESK_CTL_TOKEN: + break; + + default: + fprintf(stderr, "remdesk_recv_control_pdu: unknown msgType: %d\n", msgType); + status = -1; + break; + } + + return status; +} + static int remdesk_server_receive_pdu(RemdeskServerContext* context, wStream* s) { - return 0; + int status = 1; + REMDESK_CHANNEL_HEADER header; + +#if 0 + printf("RemdeskReceive: %d\n", Stream_GetRemainingLength(s)); + winpr_HexDump(Stream_Pointer(s), Stream_GetRemainingLength(s)); +#endif + + remdesk_read_channel_header(s, &header); + + if (strcmp(header.ChannelName, "RC_CTL") == 0) + { + status = remdesk_recv_ctl_pdu(context, s, &header); + } + else if (strcmp(header.ChannelName, "70") == 0) + { + + } + else if (strcmp(header.ChannelName, "71") == 0) + { + + } + else if (strcmp(header.ChannelName, ".") == 0) + { + + } + else if (strcmp(header.ChannelName, "1000.") == 0) + { + + } + else if (strcmp(header.ChannelName, "RA_FX") == 0) + { + + } + else + { + + } + + return 1; } static void* remdesk_server_thread(void* arg) @@ -38,6 +420,8 @@ static void* remdesk_server_thread(void* arg) DWORD status; DWORD nCount; void* buffer; + UINT32* pHeader; + UINT32 PduLength; HANDLE events[8]; HANDLE ChannelEvent; DWORD BytesReturned; @@ -63,6 +447,8 @@ static void* remdesk_server_thread(void* arg) events[nCount++] = ChannelEvent; events[nCount++] = context->priv->StopEvent; + remdesk_send_ctl_version_info_pdu(context); + while (1) { status = WaitForMultipleObjects(nCount, events, FALSE, INFINITE); @@ -83,9 +469,18 @@ static void* remdesk_server_thread(void* arg) Stream_EnsureRemainingCapacity(s, BytesReturned); } - if (0) + if (Stream_GetPosition(s) >= 8) { - remdesk_server_receive_pdu(context, s); + pHeader = (UINT32*) Stream_Buffer(s); + PduLength = pHeader[0] + pHeader[1] + 8; + + if (PduLength >= Stream_GetPosition(s)) + { + Stream_SealLength(s); + Stream_SetPosition(s, 0); + remdesk_server_receive_pdu(context, s); + Stream_SetPosition(s, 0); + } } } @@ -106,7 +501,7 @@ static int remdesk_server_start(RemdeskServerContext* context) context->priv->Thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) remdesk_server_thread, (void*) context, 0, NULL); - return 0; + return 1; } static int remdesk_server_stop(RemdeskServerContext* context) @@ -116,7 +511,7 @@ static int remdesk_server_stop(RemdeskServerContext* context) WaitForSingleObject(context->priv->Thread, INFINITE); CloseHandle(context->priv->Thread); - return 0; + return 1; } RemdeskServerContext* remdesk_server_context_new(HANDLE vcm) @@ -136,7 +531,7 @@ RemdeskServerContext* remdesk_server_context_new(HANDLE vcm) if (context->priv) { - + context->priv->Version = 1; } } diff --git a/channels/remdesk/server/remdesk_main.h b/channels/remdesk/server/remdesk_main.h index 42b504c1a..94184aeb9 100644 --- a/channels/remdesk/server/remdesk_main.h +++ b/channels/remdesk/server/remdesk_main.h @@ -31,6 +31,8 @@ struct _remdesk_server_private HANDLE Thread; HANDLE StopEvent; void* ChannelHandle; + + UINT32 Version; }; #endif /* FREERDP_CHANNEL_SERVER_REMDESK_MAIN_H */ diff --git a/include/freerdp/channels/remdesk.h b/include/freerdp/channels/remdesk.h index a3fa55ac2..0400bb9fd 100644 --- a/include/freerdp/channels/remdesk.h +++ b/include/freerdp/channels/remdesk.h @@ -57,6 +57,14 @@ typedef struct _REMDESK_CTL_HEADER REMDESK_CTL_HEADER; #define REMDESK_CTL_RAEXPERT_NAME 11 #define REMDESK_CTL_TOKEN 12 +struct _REMDESK_CTL_RESULT_PDU +{ + REMDESK_CTL_HEADER ctlHeader; + + UINT32 result; +}; +typedef struct _REMDESK_CTL_RESULT_PDU REMDESK_CTL_RESULT_PDU; + struct _REMDESK_CTL_VERSION_INFO_PDU { REMDESK_CTL_HEADER ctlHeader; diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index 743cb5d4e..7ee3f8d4a 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -600,6 +600,7 @@ void* shadow_client_thread(rdpShadowClient* client) HANDLE events[32]; HANDLE StopEvent; HANDLE ClientEvent; + HANDLE ChannelEvent; freerdp_peer* peer; rdpSettings* settings; rdpShadowServer* server; @@ -633,12 +634,14 @@ void* shadow_client_thread(rdpShadowClient* client) StopEvent = client->StopEvent; ClientEvent = peer->GetEventHandle(peer); + ChannelEvent = WTSVirtualChannelManagerGetEventHandle(client->vcm); while (1) { nCount = 0; events[nCount++] = StopEvent; events[nCount++] = ClientEvent; + events[nCount++] = ChannelEvent; cTime = GetTickCount64(); dwTimeout = (cTime > frameTime) ? 0 : frameTime - cTime; @@ -659,6 +662,15 @@ void* shadow_client_thread(rdpShadowClient* client) } } + if (WaitForSingleObject(ChannelEvent, 0) == WAIT_OBJECT_0) + { + if (WTSVirtualChannelManagerCheckFileDescriptor(client->vcm) != TRUE) + { + fprintf(stderr, "WTSVirtualChannelManagerCheckFileDescriptor failure\n"); + break; + } + } + if ((status == WAIT_TIMEOUT) || (GetTickCount64() > frameTime)) { if (client->activated) diff --git a/server/shadow/shadow_remdesk.c b/server/shadow/shadow_remdesk.c index c88681352..62af21729 100644 --- a/server/shadow/shadow_remdesk.c +++ b/server/shadow/shadow_remdesk.c @@ -26,7 +26,11 @@ int shadow_client_remdesk_init(rdpShadowClient* client) { - client->remdesk = remdesk_server_context_new(client->vcm); + RemdeskServerContext* remdesk; + + remdesk = client->remdesk = remdesk_server_context_new(client->vcm); + + remdesk->custom = (void*) client; if (client->remdesk) client->remdesk->Start(client->remdesk); From 21571eea88de661f49f17becc489f169ad25b881 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Tue, 15 Jul 2014 20:09:19 -0400 Subject: [PATCH 022/170] channels/remdesk: add PassStub generation --- include/freerdp/assistance.h | 1 + include/freerdp/channels/remdesk.h | 49 ++++++++++++++++++++++++++++++ libfreerdp/common/assistance.c | 48 +++++++++++++++++++++++++++++ 3 files changed, 98 insertions(+) diff --git a/include/freerdp/assistance.h b/include/freerdp/assistance.h index a2fe426d6..20b183b3b 100644 --- a/include/freerdp/assistance.h +++ b/include/freerdp/assistance.h @@ -59,6 +59,7 @@ extern "C" { FREERDP_API BYTE* freerdp_assistance_hex_string_to_bin(const char* str, int* size); FREERDP_API char* freerdp_assistance_bin_to_hex_string(const BYTE* data, int size); +FREERDP_API char* freerdp_assistance_generate_pass_stub(DWORD flags); FREERDP_API char* freerdp_assistance_construct_expert_blob(const char* name, const char* pass); FREERDP_API BYTE* freerdp_assistance_encrypt_pass_stub(const char* password, const char* passStub, int* pEncryptedSize); diff --git a/include/freerdp/channels/remdesk.h b/include/freerdp/channels/remdesk.h index 0400bb9fd..22b6f6db4 100644 --- a/include/freerdp/channels/remdesk.h +++ b/include/freerdp/channels/remdesk.h @@ -25,6 +25,55 @@ #define REMDESK_SVC_CHANNEL_NAME "remdesk" +#define REMDESK_ERROR_NOERROR 0 +#define REMDESK_ERROR_NOINFO 1 +#define REMDESK_ERROR_LOCALNOTERROR 3 +#define REMDESK_ERROR_REMOTEBYUSER 4 +#define REMDESK_ERROR_BYSERVER 5 +#define REMDESK_ERROR_DNSLOOKUPFAILED 6 +#define REMDESK_ERROR_OUTOFMEMORY 7 +#define REMDESK_ERROR_CONNECTIONTIMEDOUT 8 +#define REMDESK_ERROR_SOCKETCONNECTFAILED 9 +#define REMDESK_ERROR_HOSTNOTFOUND 11 +#define REMDESK_ERROR_WINSOCKSENDFAILED 12 +#define REMDESK_ERROR_INVALIDIPADDR 14 +#define REMDESK_ERROR_SOCKETRECVFAILED 15 +#define REMDESK_ERROR_INVALIDENCRYPTION 18 +#define REMDESK_ERROR_GETHOSTBYNAMEFAILED 20 +#define REMDESK_ERROR_LICENSINGFAILED 21 +#define REMDESK_ERROR_ENCRYPTIONERROR 22 +#define REMDESK_ERROR_DECRYPTIONERROR 23 +#define REMDESK_ERROR_INVALIDPARAMETERSTRING 24 +#define REMDESK_ERROR_HELPSESSIONNOTFOUND 25 +#define REMDESK_ERROR_INVALIDPASSWORD 26 +#define REMDESK_ERROR_HELPSESSIONEXPIRED 27 +#define REMDESK_ERROR_CANTOPENRESOLVER 28 +#define REMDESK_ERROR_UNKNOWNSESSMGRERROR 29 +#define REMDESK_ERROR_CANTFORMLINKTOUSERSESSION 30 +#define REMDESK_ERROR_RCPROTOCOLERROR 32 +#define REMDESK_ERROR_RCUNKNOWNERROR 33 +#define REMDESK_ERROR_INTERNALERROR 34 +#define REMDESK_ERROR_HELPEERESPONSEPENDING 35 +#define REMDESK_ERROR_HELPEESAIDYES 36 +#define REMDESK_ERROR_HELPEEALREADYBEINGHELPED 37 +#define REMDESK_ERROR_HELPEECONSIDERINGHELP 38 +#define REMDESK_ERROR_HELPEENEVERRESPONDED 40 +#define REMDESK_ERROR_HELPEESAIDNO 41 +#define REMDESK_ERROR_HELPSESSIONACCESSDENIED 42 +#define REMDESK_ERROR_USERNOTFOUND 43 +#define REMDESK_ERROR_SESSMGRERRORNOTINIT 44 +#define REMDESK_ERROR_SELFHELPNOTSUPPORTED 45 +#define REMDESK_ERROR_INCOMPATIBLEVERSION 47 +#define REMDESK_ERROR_SESSIONNOTCONNECTED 48 +#define REMDESK_ERROR_SYSTEMSHUTDOWN 50 +#define REMDESK_ERROR_STOPLISTENBYUSER 51 +#define REMDESK_ERROR_WINSOCK_FAILED 52 +#define REMDESK_ERROR_MISMATCHPARMS 53 +#define REMDESK_ERROR_PASSWORDS_DONT_MATCH 61 +#define REMDESK_ERROR_SHADOWEND_BASE 300 +#define REMDESK_ERROR_SHADOWEND_CONFIGCHANGE 301 +#define REMDESK_ERROR_SHADOWEND_UNKNOWN 302 + struct _REMDESK_CHANNEL_HEADER { UINT32 DataLength; diff --git a/libfreerdp/common/assistance.c b/libfreerdp/common/assistance.c index efeadaf08..e0da60bf5 100644 --- a/libfreerdp/common/assistance.c +++ b/libfreerdp/common/assistance.c @@ -374,6 +374,54 @@ char* freerdp_assistance_construct_expert_blob(const char* name, const char* pas return ExpertBlob; } +char* freerdp_assistance_generate_pass_stub(DWORD flags) +{ + UINT32 nums[14]; + char* passStub = NULL; + char set1[64] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789*_"; + char set2[12] = "!@#$&^*()-+="; + char set3[10] = "0123456789"; + char set4[26] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; + char set5[26] = "abcdefghijklmnopqrstuvwxyz"; + + passStub = (char*) malloc(15); + + if (!passStub) + return -1; + + /** + * PassStub generation: + * + * Characters 0 and 5-13 are from the set A-Z a-z 0-9 * _ + * Character 1 is from the set !@#$&^*()-+= + * Character 2 is from the set 0-9 + * Character 3 is from the set A-Z + * Character 4 is from the set a-z + * + * Example: WB^6HsrIaFmEpi + */ + + RAND_bytes((BYTE*) nums, sizeof(nums)); + + passStub[0] = set1[nums[0] % sizeof(set1)]; /* character 0 */ + passStub[1] = set2[nums[1] % sizeof(set2)]; /* character 1 */ + passStub[2] = set3[nums[2] % sizeof(set3)]; /* character 2 */ + passStub[3] = set4[nums[3] % sizeof(set4)]; /* character 3 */ + passStub[4] = set5[nums[4] % sizeof(set5)]; /* character 4 */ + passStub[5] = set1[nums[5] % sizeof(set1)]; /* character 5 */ + passStub[6] = set1[nums[6] % sizeof(set1)]; /* character 6 */ + passStub[7] = set1[nums[7] % sizeof(set1)]; /* character 7 */ + passStub[8] = set1[nums[8] % sizeof(set1)]; /* character 8 */ + passStub[9] = set1[nums[9] % sizeof(set1)]; /* character 9 */ + passStub[10] = set1[nums[10] % sizeof(set1)]; /* character 10 */ + passStub[11] = set1[nums[11] % sizeof(set1)]; /* character 11 */ + passStub[12] = set1[nums[12] % sizeof(set1)]; /* character 12 */ + passStub[13] = set1[nums[13] % sizeof(set1)]; /* character 13 */ + passStub[14] = '\0'; + + return passStub; +} + BYTE* freerdp_assistance_encrypt_pass_stub(const char* password, const char* passStub, int* pEncryptedSize) { int status; From 58d83c9c1e02983e524cb6809612c3ec4bd0e003 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andre=CC=81=20Moreau?= Date: Tue, 15 Jul 2014 23:01:56 -0400 Subject: [PATCH 023/170] shadow: stub Mac subsystem --- server/Mac/mf_event.h | 2 +- server/Mac/mf_rdpsnd.c | 9 +- server/shadow/CMakeLists.txt | 17 +++- server/shadow/Mac/mac_shadow.c | 163 +++++++++++++++++++++++++++++++++ server/shadow/Mac/mac_shadow.h | 49 ++++++++++ server/shadow/shadow_server.c | 12 ++- 6 files changed, 243 insertions(+), 9 deletions(-) create mode 100644 server/shadow/Mac/mac_shadow.c create mode 100644 server/shadow/Mac/mac_shadow.h diff --git a/server/Mac/mf_event.h b/server/Mac/mf_event.h index edf648332..a9111a67f 100644 --- a/server/Mac/mf_event.h +++ b/server/Mac/mf_event.h @@ -18,7 +18,7 @@ */ #ifndef __MF_EVENT_H -#define __XMF_EVENT_H +#define __MF_EVENT_H typedef struct mf_event mfEvent; typedef struct mf_event_queue mfEventQueue; diff --git a/server/Mac/mf_rdpsnd.c b/server/Mac/mf_rdpsnd.c index 3333795af..f3fe8dcb5 100644 --- a/server/Mac/mf_rdpsnd.c +++ b/server/Mac/mf_rdpsnd.c @@ -21,6 +21,9 @@ #include "config.h" #endif +#include +#include + #include #include "mf_info.h" @@ -30,8 +33,8 @@ AQRecorderState recorderState; static const AUDIO_FORMAT supported_audio_formats[] = { - { WAVE_FORMAT_PCM, 2, 44100, 176400, 4, 16, NULL }, - { WAVE_FORMAT_ALAW, 2, 22050, 44100, 2, 8, NULL } + { WAVE_FORMAT_PCM, 2, 44100, 176400, 4, 16, 0, NULL }, + { WAVE_FORMAT_ALAW, 2, 22050, 44100, 2, 8, 0, NULL } }; static void mf_peer_rdpsnd_activated(RdpsndServerContext* context) @@ -161,7 +164,7 @@ BOOL mf_peer_rdpsnd_init(mfPeerContext* context) context->rdpsnd->Activated = mf_peer_rdpsnd_activated; - context->rdpsnd->Initialize(context->rdpsnd); + context->rdpsnd->Initialize(context->rdpsnd, TRUE); return TRUE; } diff --git a/server/shadow/CMakeLists.txt b/server/shadow/CMakeLists.txt index cf843ade4..aa737e35e 100644 --- a/server/shadow/CMakeLists.txt +++ b/server/shadow/CMakeLists.txt @@ -139,9 +139,24 @@ set(${MODULE_PREFIX}_X11_SRCS X11/x11_shadow.c X11/x11_shadow.h) -if(X11_FOUND) +set(${MODULE_PREFIX}_MAC_SRCS + Mac/mac_shadow.c + Mac/mac_shadow.h) + +if(X11_FOUND AND NOT APPLE) + set(WITH_SHADOW_X11 1) +elseif(APPLE AND NOT IOS) + set(WITH_SHADOW_MAC 1) +endif() + +if(WITH_SHADOW_X11) + add_definitions(-DWITH_SHADOW_X11) list(APPEND ${MODULE_PREFIX}_SRCS ${${MODULE_PREFIX}_X11_SRCS}) list(APPEND ${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_X11_LIBS}) +elseif(WITH_SHADOW_MAC) + add_definitions(-DWITH_SHADOW_MAC) + list(APPEND ${MODULE_PREFIX}_SRCS ${${MODULE_PREFIX}_MAC_SRCS}) + list(APPEND ${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_MAC_LIBS}) endif() add_executable(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) diff --git a/server/shadow/Mac/mac_shadow.c b/server/shadow/Mac/mac_shadow.c new file mode 100644 index 000000000..a303277b2 --- /dev/null +++ b/server/shadow/Mac/mac_shadow.c @@ -0,0 +1,163 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2011-2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include +#include +#include + +#include +#include + +#include "../shadow_screen.h" +#include "../shadow_surface.h" + +#include "mac_shadow.h" + +void mac_shadow_input_synchronize_event(macShadowSubsystem* subsystem, UINT32 flags) +{ + +} + +void mac_shadow_input_keyboard_event(macShadowSubsystem* subsystem, UINT16 flags, UINT16 code) +{ + +} + +void mac_shadow_input_unicode_keyboard_event(macShadowSubsystem* subsystem, UINT16 flags, UINT16 code) +{ + +} + +void mac_shadow_input_mouse_event(macShadowSubsystem* subsystem, UINT16 flags, UINT16 x, UINT16 y) +{ + +} + +void mac_shadow_input_extended_mouse_event(macShadowSubsystem* subsystem, UINT16 flags, UINT16 x, UINT16 y) +{ + +} + +int mac_shadow_surface_copy(macShadowSubsystem* subsystem) +{ + return 1; +} + +void* mac_shadow_subsystem_thread(macShadowSubsystem* subsystem) +{ + DWORD status; + DWORD nCount; + HANDLE events[32]; + HANDLE StopEvent; + + StopEvent = subsystem->server->StopEvent; + + nCount = 0; + events[nCount++] = StopEvent; + + while (1) + { + status = WaitForMultipleObjects(nCount, events, FALSE, INFINITE); + + if (WaitForSingleObject(StopEvent, 0) == WAIT_OBJECT_0) + { + break; + } + } + + ExitThread(0); + return NULL; +} + +int mac_shadow_subsystem_init(macShadowSubsystem* subsystem) +{ + return 1; +} + +int mac_shadow_subsystem_uninit(macShadowSubsystem* subsystem) +{ + if (!subsystem) + return -1; + + return 1; +} + +int mac_shadow_subsystem_start(macShadowSubsystem* subsystem) +{ + HANDLE thread; + + if (!subsystem) + return -1; + + thread = CreateThread(NULL, 0, + (LPTHREAD_START_ROUTINE) mac_shadow_subsystem_thread, + (void*) subsystem, 0, NULL); + + return 1; +} + +int mac_shadow_subsystem_stop(macShadowSubsystem* subsystem) +{ + if (!subsystem) + return -1; + + return 1; +} + +void mac_shadow_subsystem_free(macShadowSubsystem* subsystem) +{ + if (!subsystem) + return; + + mac_shadow_subsystem_uninit(subsystem); + + free(subsystem); +} + +macShadowSubsystem* mac_shadow_subsystem_new(rdpShadowServer* server) +{ + macShadowSubsystem* subsystem; + + subsystem = (macShadowSubsystem*) calloc(1, sizeof(macShadowSubsystem)); + + if (!subsystem) + return NULL; + + subsystem->server = server; + + subsystem->Init = (pfnShadowSubsystemInit) mac_shadow_subsystem_init; + subsystem->Uninit = (pfnShadowSubsystemInit) mac_shadow_subsystem_uninit; + subsystem->Start = (pfnShadowSubsystemStart) mac_shadow_subsystem_start; + subsystem->Stop = (pfnShadowSubsystemStop) mac_shadow_subsystem_stop; + subsystem->Free = (pfnShadowSubsystemFree) mac_shadow_subsystem_free; + + subsystem->SurfaceCopy = (pfnShadowSurfaceCopy) mac_shadow_surface_copy; + + subsystem->SynchronizeEvent = (pfnShadowSynchronizeEvent) mac_shadow_input_synchronize_event; + subsystem->KeyboardEvent = (pfnShadowKeyboardEvent) mac_shadow_input_keyboard_event; + subsystem->UnicodeKeyboardEvent = (pfnShadowUnicodeKeyboardEvent) mac_shadow_input_unicode_keyboard_event; + subsystem->MouseEvent = (pfnShadowMouseEvent) mac_shadow_input_mouse_event; + subsystem->ExtendedMouseEvent = (pfnShadowExtendedMouseEvent) mac_shadow_input_extended_mouse_event; + + return subsystem; +} + +rdpShadowSubsystem* Mac_ShadowCreateSubsystem(rdpShadowServer* server) +{ + return (rdpShadowSubsystem*) mac_shadow_subsystem_new(server); +} diff --git a/server/shadow/Mac/mac_shadow.h b/server/shadow/Mac/mac_shadow.h new file mode 100644 index 000000000..88dbf2593 --- /dev/null +++ b/server/shadow/Mac/mac_shadow.h @@ -0,0 +1,49 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2011-2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FREERDP_SHADOW_SERVER_MAC_H +#define FREERDP_SHADOW_SERVER_MAC_H + +#include + +typedef struct mac_shadow_subsystem macShadowSubsystem; + +#include +#include +#include +#include +#include + +struct mac_shadow_subsystem +{ + RDP_SHADOW_SUBSYSTEM_COMMON(); + + +}; + +#ifdef __cplusplus +extern "C" { +#endif + + + +#ifdef __cplusplus +} +#endif + +#endif /* FREERDP_SHADOW_SERVER_MAC_H */ diff --git a/server/shadow/shadow_server.c b/server/shadow/shadow_server.c index 4ae7cf0c3..4601d4dd8 100644 --- a/server/shadow/shadow_server.c +++ b/server/shadow/shadow_server.c @@ -32,14 +32,14 @@ #include "shadow.h" -#ifdef WITH_X11 -#define WITH_SHADOW_X11 -#endif - #ifdef WITH_SHADOW_X11 extern rdpShadowSubsystem* X11_ShadowCreateSubsystem(rdpShadowServer* server); #endif +#ifdef WITH_SHADOW_MAC +extern rdpShadowSubsystem* Mac_ShadowCreateSubsystem(rdpShadowServer* server); +#endif + static COMMAND_LINE_ARGUMENT_A shadow_args[] = { { "port", COMMAND_LINE_VALUE_REQUIRED, "", NULL, NULL, -1, NULL, "Server port" }, @@ -324,6 +324,10 @@ int shadow_server_init(rdpShadowServer* server) server->CreateSubsystem = X11_ShadowCreateSubsystem; #endif +#ifdef WITH_SHADOW_MAC + server->CreateSubsystem = Mac_ShadowCreateSubsystem; +#endif + if (server->CreateSubsystem) server->subsystem = server->CreateSubsystem(server); From 5e33c4899e6b68ddc0588510d395063b701777a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Wed, 16 Jul 2014 14:11:37 -0400 Subject: [PATCH 024/170] shadow: reduce resource usage in encoder --- server/shadow/X11/x11_shadow.c | 56 ++++++- server/shadow/X11/x11_shadow.h | 1 + server/shadow/shadow_client.c | 13 +- server/shadow/shadow_encoder.c | 259 ++++++++++++++++++++++++--------- server/shadow/shadow_encoder.h | 20 ++- 5 files changed, 264 insertions(+), 85 deletions(-) diff --git a/server/shadow/X11/x11_shadow.c b/server/shadow/X11/x11_shadow.c index 57e62f54a..2b3e77f02 100644 --- a/server/shadow/X11/x11_shadow.c +++ b/server/shadow/X11/x11_shadow.c @@ -153,7 +153,7 @@ void x11_shadow_validate_region(x11ShadowSubsystem* subsystem, int x, int y, int { XRectangle region; - if (!subsystem->use_xfixes) + if (!subsystem->use_xfixes || !subsystem->use_xdamage) return; region.x = x; @@ -260,9 +260,14 @@ int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem) void* x11_shadow_subsystem_thread(x11ShadowSubsystem* subsystem) { + int fps; DWORD status; DWORD nCount; XEvent xevent; + UINT64 cTime; + DWORD dwTimeout; + DWORD dwInterval; + UINT64 frameTime; HANDLE events[32]; HANDLE StopEvent; int x, y, width, height; @@ -274,9 +279,21 @@ void* x11_shadow_subsystem_thread(x11ShadowSubsystem* subsystem) events[nCount++] = StopEvent; events[nCount++] = subsystem->event; + fps = 16; + dwInterval = 1000 / fps; + frameTime = GetTickCount64() + dwInterval; + while (1) { - status = WaitForMultipleObjects(nCount, events, FALSE, INFINITE); + dwTimeout = INFINITE; + + if (!subsystem->use_xdamage) + { + cTime = GetTickCount64(); + dwTimeout = (cTime > frameTime) ? 0 : frameTime - cTime; + } + + status = WaitForMultipleObjects(nCount, events, FALSE, dwTimeout); if (WaitForSingleObject(StopEvent, 0) == WAIT_OBJECT_0) { @@ -300,6 +317,17 @@ void* x11_shadow_subsystem_thread(x11ShadowSubsystem* subsystem) x11_shadow_invalidate_region(subsystem, x, y, width, height); } } + + if (!subsystem->use_xdamage) + { + if ((status == WAIT_TIMEOUT) || (GetTickCount64() > frameTime)) + { + x11_shadow_invalidate_region(subsystem, 0, 0, subsystem->width, subsystem->height); + + dwInterval = 1000 / fps; + frameTime += dwInterval; + } + } } ExitThread(0); @@ -495,6 +523,8 @@ int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) int i; int pf_count; int vi_count; + int nextensions; + char** extensions; XVisualInfo* vi; XVisualInfo* vis; XVisualInfo template; @@ -524,6 +554,25 @@ int x11_shadow_subsystem_init(x11ShadowSubsystem* subsystem) return -1; } + extensions = XListExtensions(subsystem->display, &nextensions); + + if (!extensions || (nextensions < 0)) + return -1; + + for (i = 0; i < nextensions; i++) + { + if (strcmp(extensions[i], "Composite") == 0) + subsystem->composite = TRUE; + } + + XFreeExtensionList(extensions); + + if (subsystem->composite) + subsystem->use_xdamage = FALSE; + + if (!subsystem->use_xdamage) + subsystem->use_xfixes = FALSE; + subsystem->xfds = ConnectionNumber(subsystem->display); subsystem->number = DefaultScreen(subsystem->display); subsystem->screen = ScreenOfDisplay(subsystem->display, subsystem->number); @@ -706,9 +755,10 @@ x11ShadowSubsystem* x11_shadow_subsystem_new(rdpShadowServer* server) subsystem->MouseEvent = (pfnShadowMouseEvent) x11_shadow_input_mouse_event; subsystem->ExtendedMouseEvent = (pfnShadowExtendedMouseEvent) x11_shadow_input_extended_mouse_event; + subsystem->composite = FALSE; subsystem->use_xshm = TRUE; subsystem->use_xfixes = TRUE; - subsystem->use_xdamage = TRUE; + subsystem->use_xdamage = FALSE; subsystem->use_xinerama = TRUE; return subsystem; diff --git a/server/shadow/X11/x11_shadow.h b/server/shadow/X11/x11_shadow.h index f9a1cbf00..1a6f6fa4d 100644 --- a/server/shadow/X11/x11_shadow.h +++ b/server/shadow/X11/x11_shadow.h @@ -68,6 +68,7 @@ struct x11_shadow_subsystem Visual* visual; Display* display; int scanline_pad; + BOOL composite; BOOL use_xshm; BOOL use_xfixes; diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index 7ee3f8d4a..ea3a2f7c7 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -248,7 +248,7 @@ int shadow_client_send_surface_bits(rdpShadowClient* client, rdpShadowSurface* s RFX_RECT rect; RFX_MESSAGE* messages; - s = encoder->rfx_s; + s = encoder->bs; rect.x = nXSrc; rect.y = nYSrc; @@ -288,7 +288,7 @@ int shadow_client_send_surface_bits(rdpShadowClient* client, rdpShadowSurface* s { NSC_MESSAGE* messages; - s = encoder->nsc_s; + s = encoder->bs; messages = nsc_encode_messages(encoder->nsc, pSrcData, nXSrc, nYSrc, nWidth, nHeight, nSrcStep, @@ -550,12 +550,14 @@ int shadow_client_send_surface_update(rdpShadowClient* client) rdpSettings* settings; rdpShadowServer* server; rdpShadowSurface* surface; + rdpShadowEncoder* encoder; RECTANGLE_16 surfaceRect; const RECTANGLE_16* extents; context = (rdpContext*) client; settings = context->settings; server = client->server; + encoder = server->encoder; surface = client->inLobby ? client->lobby : server->surface; @@ -578,10 +580,17 @@ int shadow_client_send_surface_update(rdpShadowClient* client) if (settings->RemoteFxCodec || settings->NSCodec) { + if (settings->RemoteFxCodec) + shadow_encoder_prepare(encoder, SHADOW_CODEC_REMOTEFX); + else if (settings->NSCodec) + shadow_encoder_prepare(encoder, SHADOW_CODEC_NSCODEC); + status = shadow_client_send_surface_bits(client, surface, nXSrc, nYSrc, nWidth, nHeight); } else { + shadow_encoder_prepare(encoder, SHADOW_CODEC_BITMAP); + status = shadow_client_send_bitmap_update(client, surface, nXSrc, nYSrc, nWidth, nHeight); } diff --git a/server/shadow/shadow_encoder.c b/server/shadow/shadow_encoder.c index 87ce42b1a..1ce07dde8 100644 --- a/server/shadow/shadow_encoder.c +++ b/server/shadow/shadow_encoder.c @@ -58,7 +58,7 @@ int shadow_encoder_create_frame_id(rdpShadowEncoder* encoder) return (int) frame->frameId; } -int shadow_encoder_grid_init(rdpShadowEncoder* encoder) +int shadow_encoder_init_grid(rdpShadowEncoder* encoder) { int i, j, k; int tileSize; @@ -92,7 +92,7 @@ int shadow_encoder_grid_init(rdpShadowEncoder* encoder) return 0; } -int shadow_encoder_grid_uninit(rdpShadowEncoder* encoder) +int shadow_encoder_uninit_grid(rdpShadowEncoder* encoder) { if (encoder->gridBuffer) { @@ -112,59 +112,145 @@ int shadow_encoder_grid_uninit(rdpShadowEncoder* encoder) return 0; } -int shadow_encoder_init(rdpShadowEncoder* encoder) +int shadow_encoder_init_rfx(rdpShadowEncoder* encoder) { - DWORD planarFlags; + if (!encoder->rfx) + encoder->rfx = rfx_context_new(TRUE); - encoder->scanline = (encoder->width + (encoder->width % 4)) * 4; - - encoder->data = (BYTE*) malloc(encoder->scanline * encoder->height); - - if (!encoder->data) + if (!encoder->rfx) return -1; - encoder->maxTileWidth = 64; - encoder->maxTileHeight = 64; - - encoder->bs = Stream_New(NULL, encoder->maxTileWidth * encoder->maxTileHeight * 4); - encoder->bts = Stream_New(NULL, encoder->maxTileWidth * encoder->maxTileHeight * 4); - - planarFlags = PLANAR_FORMAT_HEADER_NA; - planarFlags |= PLANAR_FORMAT_HEADER_RLE; - - encoder->planar = freerdp_bitmap_planar_context_new(planarFlags, - encoder->maxTileWidth, encoder->maxTileHeight); - - encoder->rfx = rfx_context_new(TRUE); - encoder->rfx_s = Stream_New(NULL, encoder->maxTileWidth * encoder->maxTileHeight * 4); - encoder->rfx->mode = RLGR3; encoder->rfx->width = encoder->width; encoder->rfx->height = encoder->height; - encoder->nsc = nsc_context_new(); - encoder->nsc_s = Stream_New(NULL, encoder->maxTileWidth * encoder->maxTileHeight * 4); - rfx_context_set_pixel_format(encoder->rfx, RDP_PIXEL_FORMAT_B8G8R8A8); - nsc_context_set_pixel_format(encoder->nsc, RDP_PIXEL_FORMAT_B8G8R8A8); - shadow_encoder_grid_init(encoder); + if (!encoder->frameList) + { + encoder->fps = 16; + encoder->maxFps = 32; + encoder->frameId = 0; + encoder->frameAck = TRUE; + encoder->frameList = ListDictionary_New(TRUE); + } - encoder->fps = 10; - encoder->maxFps = 32; - encoder->frameId = 0; - encoder->frameAck = TRUE; - encoder->frameList = ListDictionary_New(TRUE); + encoder->codecs |= SHADOW_CODEC_REMOTEFX; return 1; } -int shadow_encoder_uninit(rdpShadowEncoder* encoder) +int shadow_encoder_init_nsc(rdpShadowEncoder* encoder) { - if (encoder->bs) + if (!encoder->nsc) + encoder->nsc = nsc_context_new(); + + if (!encoder->nsc) + return -1; + + nsc_context_set_pixel_format(encoder->nsc, RDP_PIXEL_FORMAT_B8G8R8A8); + + if (!encoder->frameList) { - Stream_Free(encoder->bs, TRUE); - encoder->bs = NULL; + encoder->fps = 16; + encoder->maxFps = 32; + encoder->frameId = 0; + encoder->frameAck = TRUE; + encoder->frameList = ListDictionary_New(TRUE); + } + + encoder->codecs |= SHADOW_CODEC_NSCODEC; + + return 1; +} + +int shadow_encoder_init_bitmap(rdpShadowEncoder* encoder) +{ + DWORD planarFlags; + + planarFlags = PLANAR_FORMAT_HEADER_NA; + planarFlags |= PLANAR_FORMAT_HEADER_RLE; + + if (!encoder->planar) + { + encoder->planar = freerdp_bitmap_planar_context_new(planarFlags, + encoder->maxTileWidth, encoder->maxTileHeight); + } + + if (!encoder->planar) + return -1; + + if (!encoder->bts) + encoder->bts = Stream_New(NULL, encoder->maxTileWidth * encoder->maxTileHeight * 4); + + if (!encoder->bts) + return -1; + + encoder->codecs |= SHADOW_CODEC_BITMAP; + + return 1; +} + +int shadow_encoder_init(rdpShadowEncoder* encoder) +{ + encoder->maxTileWidth = 64; + encoder->maxTileHeight = 64; + + shadow_encoder_init_grid(encoder); + + if (!encoder->bs) + encoder->bs = Stream_New(NULL, encoder->maxTileWidth * encoder->maxTileHeight * 4); + + if (!encoder->bs) + return -1; + + return 1; +} + +int shadow_encoder_uninit_rfx(rdpShadowEncoder* encoder) +{ + if (encoder->rfx) + { + rfx_context_free(encoder->rfx); + encoder->rfx = NULL; + } + + if (encoder->frameList) + { + ListDictionary_Free(encoder->frameList); + encoder->frameList = NULL; + } + + encoder->codecs &= ~SHADOW_CODEC_REMOTEFX; + + return 1; +} + +int shadow_encoder_uninit_nsc(rdpShadowEncoder* encoder) +{ + if (encoder->nsc) + { + nsc_context_free(encoder->nsc); + encoder->nsc = NULL; + } + + if (encoder->frameList) + { + ListDictionary_Free(encoder->frameList); + encoder->frameList = NULL; + } + + encoder->codecs &= ~SHADOW_CODEC_NSCODEC; + + return 1; +} + +int shadow_encoder_uninit_bitmap(rdpShadowEncoder* encoder) +{ + if (encoder->planar) + { + freerdp_bitmap_planar_context_free(encoder->planar); + encoder->planar = NULL; } if (encoder->bts) @@ -173,42 +259,34 @@ int shadow_encoder_uninit(rdpShadowEncoder* encoder) encoder->bts = NULL; } - if (encoder->rfx_s) + encoder->codecs &= ~SHADOW_CODEC_BITMAP; + + return 1; +} + +int shadow_encoder_uninit(rdpShadowEncoder* encoder) +{ + shadow_encoder_uninit_grid(encoder); + + if (encoder->bs) { - Stream_Free(encoder->rfx_s, TRUE); - encoder->rfx_s = NULL; + Stream_Free(encoder->bs, TRUE); + encoder->bs = NULL; } - if (encoder->rfx) + if (encoder->codecs & SHADOW_CODEC_REMOTEFX) { - rfx_context_free(encoder->rfx); - encoder->rfx = NULL; + shadow_encoder_uninit_rfx(encoder); } - if (encoder->nsc_s) + if (encoder->codecs & SHADOW_CODEC_NSCODEC) { - Stream_Free(encoder->nsc_s, TRUE); - encoder->nsc_s = NULL; + shadow_encoder_uninit_nsc(encoder); } - if (encoder->nsc) + if (encoder->codecs & SHADOW_CODEC_BITMAP) { - nsc_context_free(encoder->nsc); - encoder->nsc = NULL; - } - - if (encoder->planar) - { - freerdp_bitmap_planar_context_free(encoder->planar); - encoder->planar = NULL; - } - - shadow_encoder_grid_uninit(encoder); - - if (encoder->frameList) - { - ListDictionary_Free(encoder->frameList); - encoder->frameList = NULL; + shadow_encoder_uninit_bitmap(encoder); } return 1; @@ -216,10 +294,56 @@ int shadow_encoder_uninit(rdpShadowEncoder* encoder) int shadow_encoder_reset(rdpShadowEncoder* encoder) { - if (shadow_encoder_uninit(encoder) < 0) + int status; + UINT32 codecs = encoder->codecs; + + status = shadow_encoder_uninit(encoder); + + if (status < 0) return -1; - return shadow_encoder_init(encoder); + status = shadow_encoder_init(encoder); + + if (status < 0) + return -1; + + status = shadow_encoder_prepare(encoder, codecs); + + if (status < 0) + return -1; + + return 1; +} + +int shadow_encoder_prepare(rdpShadowEncoder* encoder, UINT32 codecs) +{ + int status; + + if ((codecs & SHADOW_CODEC_REMOTEFX) && !(encoder->codecs & SHADOW_CODEC_REMOTEFX)) + { + status = shadow_encoder_init_rfx(encoder); + + if (status < 0) + return -1; + } + + if ((codecs & SHADOW_CODEC_NSCODEC) && !(encoder->codecs & SHADOW_CODEC_NSCODEC)) + { + status = shadow_encoder_init_nsc(encoder); + + if (status < 0) + return -1; + } + + if ((codecs & SHADOW_CODEC_BITMAP) && !(encoder->codecs & SHADOW_CODEC_BITMAP)) + { + status = shadow_encoder_init_bitmap(encoder); + + if (status < 0) + return -1; + } + + return 1; } rdpShadowEncoder* shadow_encoder_new(rdpShadowServer* server) @@ -236,9 +360,6 @@ rdpShadowEncoder* shadow_encoder_new(rdpShadowServer* server) encoder->width = server->screen->width; encoder->height = server->screen->height; - encoder->bitsPerPixel = 32; - encoder->bytesPerPixel = 4; - if (shadow_encoder_init(encoder) < 0) return NULL; diff --git a/server/shadow/shadow_encoder.h b/server/shadow/shadow_encoder.h index 6895c80b9..d1ae552d7 100644 --- a/server/shadow/shadow_encoder.h +++ b/server/shadow/shadow_encoder.h @@ -29,17 +29,17 @@ #include +#define SHADOW_CODEC_REMOTEFX 1 +#define SHADOW_CODEC_NSCODEC 2 +#define SHADOW_CODEC_BITMAP 4 + struct rdp_shadow_encoder { rdpShadowServer* server; - BYTE* data; int width; int height; - int scanline; - - UINT32 bitsPerPixel; - UINT32 bytesPerPixel; + UINT32 codecs; BYTE** grid; int gridWidth; @@ -48,14 +48,11 @@ struct rdp_shadow_encoder int maxTileWidth; int maxTileHeight; - wStream* rfx_s; - RFX_CONTEXT* rfx; - - wStream* nsc_s; - NSC_CONTEXT* nsc; - wStream* bs; wStream* bts; + + RFX_CONTEXT* rfx; + NSC_CONTEXT* nsc; BITMAP_PLANAR_CONTEXT* planar; int fps; @@ -70,6 +67,7 @@ extern "C" { #endif int shadow_encoder_reset(rdpShadowEncoder* encoder); +int shadow_encoder_prepare(rdpShadowEncoder* encoder, UINT32 codecs); int shadow_encoder_create_frame_id(rdpShadowEncoder* encoder); rdpShadowEncoder* shadow_encoder_new(rdpShadowServer* server); From 1f0e05c2b870942231a11fc696c7e2a995b0634d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Wed, 16 Jul 2014 15:12:20 -0400 Subject: [PATCH 025/170] shadow: disable 24bpp --- server/shadow/shadow_client.c | 20 +++++++++----------- server/shadow/shadow_encoder.c | 3 +++ 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index ea3a2f7c7..a38977fc7 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -139,6 +139,9 @@ BOOL shadow_client_post_connect(freerdp_peer* peer) settings->DesktopWidth = client->server->screen->width; settings->DesktopHeight = client->server->screen->height; + if (settings->ColorDepth == 24) + settings->ColorDepth = 16; /* disable 24bpp */ + fprintf(stderr, "Client from %s is activated (%dx%d@%d)\n", peer->hostname, settings->DesktopWidth, settings->DesktopHeight, settings->ColorDepth); @@ -333,7 +336,6 @@ int shadow_client_send_surface_bits(rdpShadowClient* client, rdpShadowSurface* s int shadow_client_send_bitmap_update(rdpShadowClient* client, rdpShadowSurface* surface, int nXSrc, int nYSrc, int nWidth, int nHeight) { BYTE* data; - BYTE* tile; BYTE* buffer; int i, j, k; wStream* s; @@ -406,11 +408,6 @@ int shadow_client_send_bitmap_update(rdpShadowClient* client, rdpShadowSurface* return 1; } - tile = (BYTE*) malloc(64 * 64 * 4); - - if (!tile) - return -1; - rows = (nWidth + (64 - (nWidth % 64))) / 64; cols = (nHeight + (64 - (nHeight % 64))) / 64; @@ -500,14 +497,16 @@ int shadow_client_send_bitmap_update(rdpShadowClient* client, rdpShadowSurface* else if (settings->ColorDepth == 24) { bytesPerPixel = 3; - dstFormat = PIXEL_FORMAT_RGB32; + dstFormat = PIXEL_FORMAT_XRGB32; } - freerdp_image_copy(tile, dstFormat, -1, 0, 0, nWidth, nHeight, + buffer = encoder->grid[k]; + + freerdp_image_copy(buffer, dstFormat, -1, 0, 0, nWidth, nHeight, data, srcFormat, nSrcStep, 0, 0); - lines = freerdp_bitmap_compress((char*) tile, nWidth, nHeight, s, - settings->ColorDepth, 16384, nHeight - 1, ts, e); + lines = freerdp_bitmap_compress((char*) buffer, nWidth, nHeight, s, + settings->ColorDepth, 64 * 64 * 4, nHeight - 1, ts, e); Stream_SealLength(s); @@ -536,7 +535,6 @@ int shadow_client_send_bitmap_update(rdpShadowClient* client, rdpShadowSurface* IFCALL(update->BitmapUpdate, context, &bitmapUpdate); free(bitmapData); - free(tile); return 1; } diff --git a/server/shadow/shadow_encoder.c b/server/shadow/shadow_encoder.c index 1ce07dde8..8388267a6 100644 --- a/server/shadow/shadow_encoder.c +++ b/server/shadow/shadow_encoder.c @@ -357,6 +357,9 @@ rdpShadowEncoder* shadow_encoder_new(rdpShadowServer* server) encoder->server = server; + encoder->fps = 16; + encoder->maxFps = 32; + encoder->width = server->screen->width; encoder->height = server->screen->height; From a732045c91d59d89e7fd8efb3be3f5ee67c22d39 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 17 Jul 2014 18:27:40 -0400 Subject: [PATCH 026/170] wfreerdp-server: restore Win8 DXGI 1.2 support --- server/Windows/CMakeLists.txt | 2 +- server/Windows/wf_dxgi.c | 6 +- server/Windows/wf_info.c | 12 +- server/Windows/wf_input.c | 2 - server/Windows/wf_interface.h | 6 +- server/Windows/wf_peer.c | 8 - server/Windows/wf_update.c | 2 +- server/shadow/CMakeLists.txt | 14 +- server/shadow/Win/win_shadow.c | 287 +++++++++++++++++++++++++++++++++ server/shadow/Win/win_shadow.h | 49 ++++++ server/shadow/shadow_server.c | 8 + 11 files changed, 371 insertions(+), 25 deletions(-) create mode 100644 server/shadow/Win/win_shadow.c create mode 100644 server/shadow/Win/win_shadow.h diff --git a/server/Windows/CMakeLists.txt b/server/Windows/CMakeLists.txt index ae9ed7c92..3dc924651 100644 --- a/server/Windows/CMakeLists.txt +++ b/server/Windows/CMakeLists.txt @@ -70,7 +70,7 @@ else() endif() -if(WITH_WIN8) +if(CMAKE_WINDOWS_VERSION STREQUAL "WIN8") set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} d3d11 dxgi dxguid) endif() diff --git a/server/Windows/wf_dxgi.c b/server/Windows/wf_dxgi.c index dd5ac3421..43dd8af9e 100644 --- a/server/Windows/wf_dxgi.c +++ b/server/Windows/wf_dxgi.c @@ -23,7 +23,7 @@ #include "wf_interface.h" -#ifdef WITH_WIN8 +#ifdef WITH_DXGI_1_2 #define CINTERFACE @@ -67,9 +67,10 @@ DXGI_OUTDUPL_FRAME_INFO FrameInfo; int wf_dxgi_init(wfInfo* wfi) { - //not sure if needed gAcquiredDesktopImage = NULL; + printf("wf_dxgi_init\n"); + if (wf_dxgi_createDevice(wfi) != 0) { return 1; @@ -81,7 +82,6 @@ int wf_dxgi_init(wfInfo* wfi) } return 0; - } int wf_dxgi_createDevice(wfInfo* wfi) diff --git a/server/Windows/wf_info.c b/server/Windows/wf_info.c index c49d352df..7b972a9d2 100644 --- a/server/Windows/wf_info.c +++ b/server/Windows/wf_info.c @@ -188,7 +188,7 @@ void wf_info_peer_register(wfInfo* wfi, wfPeerContext* context) EnumDisplayMonitors(NULL, NULL, wf_info_monEnumCB, 0); _IDcount = 0; -#ifdef WITH_WIN8 +#ifdef WITH_DXGI_1_2 if (wfi->peerCount == 0) wf_dxgi_init(wfi); #else @@ -234,7 +234,7 @@ void wf_info_peer_unregister(wfInfo* wfi, wfPeerContext* context) printf("Unregistering Peer: id=%d, #=%d\n", peerId, wfi->peerCount); -#ifdef WITH_WIN8 +#ifdef WITH_DXGI_1_2 if (wfi->peerCount == 0) wf_dxgi_cleanup(wfi); #endif @@ -247,7 +247,7 @@ void wf_info_peer_unregister(wfInfo* wfi, wfPeerContext* context) BOOL wf_info_have_updates(wfInfo* wfi) { -#ifdef WITH_WIN8 +#ifdef WITH_DXGI_1_2 if(wfi->framesWaiting == 0) return FALSE; #else @@ -259,7 +259,7 @@ BOOL wf_info_have_updates(wfInfo* wfi) void wf_info_update_changes(wfInfo* wfi) { -#ifdef WITH_WIN8 +#ifdef WITH_DXGI_1_2 wf_dxgi_nextFrame(wfi, wfi->framesPerSecond * 1000); #else GETCHANGESBUF* buf; @@ -271,7 +271,7 @@ void wf_info_update_changes(wfInfo* wfi) void wf_info_find_invalid_region(wfInfo* wfi) { -#ifdef WITH_WIN8 +#ifdef WITH_DXGI_1_2 wf_dxgi_getInvalidRegion(&wfi->invalid); #else int i; @@ -334,7 +334,7 @@ void wf_info_getScreenData(wfInfo* wfi, long* width, long* height, BYTE** pBits, *width = (wfi->invalid.right - wfi->invalid.left); *height = (wfi->invalid.bottom - wfi->invalid.top); -#ifdef WITH_WIN8 +#ifdef WITH_DXGI_1_2 wf_dxgi_getPixelData(wfi, pBits, pitch, &wfi->invalid); #else { diff --git a/server/Windows/wf_input.c b/server/Windows/wf_input.c index 06b9f5350..7c70748fa 100644 --- a/server/Windows/wf_input.c +++ b/server/Windows/wf_input.c @@ -158,8 +158,6 @@ void wf_peer_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT1 x += wfi->servscreen_xoffset; y += wfi->servscreen_yoffset; - //mouse_event.mi.dx = x * (0xFFFF / width); - //mouse_event.mi.dy = y * (0xFFFF / height); mouse_event.mi.dx = (LONG) ((float) x * (65535.0f / width)); mouse_event.mi.dy = (LONG) ((float) y * (65535.0f / height)); mouse_event.mi.dwFlags = MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_MOVE; diff --git a/server/Windows/wf_interface.h b/server/Windows/wf_interface.h index dc3af1c7f..6ab6b6f3e 100644 --- a/server/Windows/wf_interface.h +++ b/server/Windows/wf_interface.h @@ -32,6 +32,10 @@ #include +#if _WIN32_WINNT >= 0x0602 +#define WITH_DXGI_1_2 1 +#endif + #define WF_SRV_CALLBACK_EVENT_CONNECT 1 #define WF_SRV_CALLBACK_EVENT_DISCONNECT 2 #define WF_SRV_CALLBACK_EVENT_ACTIVATE 4 @@ -52,8 +56,6 @@ struct wf_info int servscreen_height; int servscreen_xoffset; int servscreen_yoffset; - //int width; - //int height; int frame_idx; int bitsPerPixel; diff --git a/server/Windows/wf_peer.c b/server/Windows/wf_peer.c index e214a007d..8d82391ba 100644 --- a/server/Windows/wf_peer.c +++ b/server/Windows/wf_peer.c @@ -127,14 +127,6 @@ BOOL wf_peer_activate(freerdp_peer* client) BOOL wf_peer_logon(freerdp_peer* client, SEC_WINNT_AUTH_IDENTITY* identity, BOOL automatic) { - /* - if (automatic) - { - _tprintf(_T("Logon: User:%s Domain:%s Password:%s\n"), - identity->User, identity->Domain, identity->Password); - } - */ - wfreerdp_server_peer_callback_event(((rdpContext*) client->context)->peer->pId, WF_SRV_CALLBACK_EVENT_AUTH); return TRUE; } diff --git a/server/Windows/wf_update.c b/server/Windows/wf_update.c index a8488557f..61d71181f 100644 --- a/server/Windows/wf_update.c +++ b/server/Windows/wf_update.c @@ -217,7 +217,7 @@ void wf_update_peer_activate(wfInfo* wfi, wfPeerContext* context) { if (wfi->activePeerCount < 1) { -#ifndef WITH_WIN8 +#ifndef WITH_DXGI_1_2 wf_mirror_driver_activate(wfi); #endif ResumeThread(wfi->updateThread); diff --git a/server/shadow/CMakeLists.txt b/server/shadow/CMakeLists.txt index aa737e35e..d37067216 100644 --- a/server/shadow/CMakeLists.txt +++ b/server/shadow/CMakeLists.txt @@ -135,6 +135,10 @@ set(${MODULE_PREFIX}_SRCS shadow_server.c shadow.h) +set(${MODULE_PREFIX}_WIN_SRCS + Win/win_shadow.c + Win/win_shadow.h) + set(${MODULE_PREFIX}_X11_SRCS X11/x11_shadow.c X11/x11_shadow.h) @@ -143,13 +147,19 @@ set(${MODULE_PREFIX}_MAC_SRCS Mac/mac_shadow.c Mac/mac_shadow.h) -if(X11_FOUND AND NOT APPLE) +if(WIN32) + set(WITH_SHADOW_WIN 1) +elseif(X11_FOUND AND NOT APPLE) set(WITH_SHADOW_X11 1) elseif(APPLE AND NOT IOS) set(WITH_SHADOW_MAC 1) endif() -if(WITH_SHADOW_X11) +if(WITH_SHADOW_WIN) + add_definitions(-DWITH_SHADOW_WIN) + list(APPEND ${MODULE_PREFIX}_SRCS ${${MODULE_PREFIX}_WIN_SRCS}) + list(APPEND ${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_WIN_LIBS}) +elseif(WITH_SHADOW_X11) add_definitions(-DWITH_SHADOW_X11) list(APPEND ${MODULE_PREFIX}_SRCS ${${MODULE_PREFIX}_X11_SRCS}) list(APPEND ${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_X11_LIBS}) diff --git a/server/shadow/Win/win_shadow.c b/server/shadow/Win/win_shadow.c new file mode 100644 index 000000000..2089bece9 --- /dev/null +++ b/server/shadow/Win/win_shadow.c @@ -0,0 +1,287 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2011-2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include +#include +#include + +#include +#include + +#include "../shadow_screen.h" +#include "../shadow_surface.h" + +#include "win_shadow.h" + +void win_shadow_input_synchronize_event(winShadowSubsystem* subsystem, UINT32 flags) +{ + +} + +void win_shadow_input_keyboard_event(winShadowSubsystem* subsystem, UINT16 flags, UINT16 code) +{ + INPUT event; + + event.type = INPUT_KEYBOARD; + event.ki.wVk = 0; + event.ki.wScan = code; + event.ki.dwFlags = KEYEVENTF_SCANCODE; + event.ki.dwExtraInfo = 0; + event.ki.time = 0; + + if (flags & KBD_FLAGS_RELEASE) + event.ki.dwFlags |= KEYEVENTF_KEYUP; + + if (flags & KBD_FLAGS_EXTENDED) + event.ki.dwFlags |= KEYEVENTF_EXTENDEDKEY; + + SendInput(1, &event, sizeof(INPUT)); +} + +void win_shadow_input_unicode_keyboard_event(winShadowSubsystem* subsystem, UINT16 flags, UINT16 code) +{ + INPUT event; + + event.type = INPUT_KEYBOARD; + event.ki.wVk = 0; + event.ki.wScan = code; + event.ki.dwFlags = KEYEVENTF_UNICODE; + event.ki.dwExtraInfo = 0; + event.ki.time = 0; + + if (flags & KBD_FLAGS_RELEASE) + event.ki.dwFlags |= KEYEVENTF_KEYUP; + + SendInput(1, &event, sizeof(INPUT)); +} + +void win_shadow_input_mouse_event(winShadowSubsystem* subsystem, UINT16 flags, UINT16 x, UINT16 y) +{ + INPUT event; + float width; + float height; + + ZeroMemory(&event, sizeof(INPUT)); + + event.type = INPUT_MOUSE; + + if (flags & PTR_FLAGS_WHEEL) + { + event.mi.dwFlags = MOUSEEVENTF_WHEEL; + event.mi.mouseData = flags & WheelRotationMask; + + if (flags & PTR_FLAGS_WHEEL_NEGATIVE) + event.mi.mouseData *= -1; + + SendInput(1, &event, sizeof(INPUT)); + } + else + { + width = (float) GetSystemMetrics(SM_CXSCREEN); + height = (float) GetSystemMetrics(SM_CYSCREEN); + + event.mi.dx = (LONG) ((float) x * (65535.0f / width)); + event.mi.dy = (LONG) ((float) y * (65535.0f / height)); + event.mi.dwFlags = MOUSEEVENTF_ABSOLUTE; + + if (flags & PTR_FLAGS_MOVE) + { + event.mi.dwFlags |= MOUSEEVENTF_MOVE; + SendInput(1, &event, sizeof(INPUT)); + } + + event.mi.dwFlags = MOUSEEVENTF_ABSOLUTE; + + if (flags & PTR_FLAGS_BUTTON1) + { + if (flags & PTR_FLAGS_DOWN) + event.mi.dwFlags |= MOUSEEVENTF_LEFTDOWN; + else + event.mi.dwFlags |= MOUSEEVENTF_LEFTUP; + + SendInput(1, &event, sizeof(INPUT)); + } + else if (flags & PTR_FLAGS_BUTTON2) + { + if (flags & PTR_FLAGS_DOWN) + event.mi.dwFlags |= MOUSEEVENTF_RIGHTDOWN; + else + event.mi.dwFlags |= MOUSEEVENTF_RIGHTUP; + + SendInput(1, &event, sizeof(INPUT)); + } + else if (flags & PTR_FLAGS_BUTTON3) + { + if (flags & PTR_FLAGS_DOWN) + event.mi.dwFlags |= MOUSEEVENTF_MIDDLEDOWN; + else + event.mi.dwFlags |= MOUSEEVENTF_MIDDLEUP; + + SendInput(1, &event, sizeof(INPUT)); + } + } +} + +void win_shadow_input_extended_mouse_event(winShadowSubsystem* subsystem, UINT16 flags, UINT16 x, UINT16 y) +{ + INPUT event; + float width; + float height; + + ZeroMemory(&event, sizeof(INPUT)); + + if ((flags & PTR_XFLAGS_BUTTON1) || (flags & PTR_XFLAGS_BUTTON2)) + { + event.type = INPUT_MOUSE; + + if (flags & PTR_FLAGS_MOVE) + { + width = (float) GetSystemMetrics(SM_CXSCREEN); + height = (float) GetSystemMetrics(SM_CYSCREEN); + + event.mi.dx = (LONG)((float) x * (65535.0f / width)); + event.mi.dy = (LONG)((float) y * (65535.0f / height)); + event.mi.dwFlags = MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_MOVE; + + SendInput(1, &event, sizeof(INPUT)); + } + + event.mi.dx = event.mi.dy = event.mi.dwFlags = 0; + + if (flags & PTR_XFLAGS_DOWN) + event.mi.dwFlags |= MOUSEEVENTF_XDOWN; + else + event.mi.dwFlags |= MOUSEEVENTF_XUP; + + if (flags & PTR_XFLAGS_BUTTON1) + event.mi.mouseData = XBUTTON1; + else if (flags & PTR_XFLAGS_BUTTON2) + event.mi.mouseData = XBUTTON2; + + SendInput(1, &event, sizeof(INPUT)); + } +} + +int win_shadow_surface_copy(winShadowSubsystem* subsystem) +{ + return 1; +} + +void* win_shadow_subsystem_thread(winShadowSubsystem* subsystem) +{ + DWORD status; + DWORD nCount; + HANDLE events[32]; + HANDLE StopEvent; + + StopEvent = subsystem->server->StopEvent; + + nCount = 0; + events[nCount++] = StopEvent; + + while (1) + { + status = WaitForMultipleObjects(nCount, events, FALSE, INFINITE); + + if (WaitForSingleObject(StopEvent, 0) == WAIT_OBJECT_0) + { + break; + } + } + + ExitThread(0); + return NULL; +} + +int win_shadow_subsystem_init(winShadowSubsystem* subsystem) +{ + return 1; +} + +int win_shadow_subsystem_uninit(winShadowSubsystem* subsystem) +{ + if (!subsystem) + return -1; + + return 1; +} + +int win_shadow_subsystem_start(winShadowSubsystem* subsystem) +{ + HANDLE thread; + + if (!subsystem) + return -1; + + thread = CreateThread(NULL, 0, + (LPTHREAD_START_ROUTINE) win_shadow_subsystem_thread, + (void*) subsystem, 0, NULL); + + return 1; +} + +int win_shadow_subsystem_stop(winShadowSubsystem* subsystem) +{ + if (!subsystem) + return -1; + + return 1; +} + +void win_shadow_subsystem_free(winShadowSubsystem* subsystem) +{ + if (!subsystem) + return; + + win_shadow_subsystem_uninit(subsystem); + + free(subsystem); +} + +winShadowSubsystem* win_shadow_subsystem_new(rdpShadowServer* server) +{ + winShadowSubsystem* subsystem; + + subsystem = (winShadowSubsystem*) calloc(1, sizeof(winShadowSubsystem)); + + if (!subsystem) + return NULL; + + subsystem->server = server; + + subsystem->Init = (pfnShadowSubsystemInit) win_shadow_subsystem_init; + subsystem->Uninit = (pfnShadowSubsystemInit) win_shadow_subsystem_uninit; + subsystem->Start = (pfnShadowSubsystemStart) win_shadow_subsystem_start; + subsystem->Stop = (pfnShadowSubsystemStop) win_shadow_subsystem_stop; + subsystem->Free = (pfnShadowSubsystemFree) win_shadow_subsystem_free; + + subsystem->SurfaceCopy = (pfnShadowSurfaceCopy) win_shadow_surface_copy; + + subsystem->SynchronizeEvent = (pfnShadowSynchronizeEvent) win_shadow_input_synchronize_event; + subsystem->KeyboardEvent = (pfnShadowKeyboardEvent) win_shadow_input_keyboard_event; + subsystem->UnicodeKeyboardEvent = (pfnShadowUnicodeKeyboardEvent) win_shadow_input_unicode_keyboard_event; + subsystem->MouseEvent = (pfnShadowMouseEvent) win_shadow_input_mouse_event; + subsystem->ExtendedMouseEvent = (pfnShadowExtendedMouseEvent) win_shadow_input_extended_mouse_event; + + return subsystem; +} + +rdpShadowSubsystem* Win_ShadowCreateSubsystem(rdpShadowServer* server) +{ + return (rdpShadowSubsystem*) win_shadow_subsystem_new(server); +} diff --git a/server/shadow/Win/win_shadow.h b/server/shadow/Win/win_shadow.h new file mode 100644 index 000000000..1c27d4f86 --- /dev/null +++ b/server/shadow/Win/win_shadow.h @@ -0,0 +1,49 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2011-2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FREERDP_SHADOW_SERVER_WIN_H +#define FREERDP_SHADOW_SERVER_WIN_H + +#include + +typedef struct win_shadow_subsystem winShadowSubsystem; + +#include +#include +#include +#include +#include + +struct win_shadow_subsystem +{ + RDP_SHADOW_SUBSYSTEM_COMMON(); + + +}; + +#ifdef __cplusplus +extern "C" { +#endif + + + +#ifdef __cplusplus +} +#endif + +#endif /* FREERDP_SHADOW_SERVER_WIN_H */ diff --git a/server/shadow/shadow_server.c b/server/shadow/shadow_server.c index 4601d4dd8..0cc757373 100644 --- a/server/shadow/shadow_server.c +++ b/server/shadow/shadow_server.c @@ -40,6 +40,10 @@ extern rdpShadowSubsystem* X11_ShadowCreateSubsystem(rdpShadowServer* server); extern rdpShadowSubsystem* Mac_ShadowCreateSubsystem(rdpShadowServer* server); #endif +#ifdef WITH_SHADOW_WIN +extern rdpShadowSubsystem* Win_ShadowCreateSubsystem(rdpShadowServer* server); +#endif + static COMMAND_LINE_ARGUMENT_A shadow_args[] = { { "port", COMMAND_LINE_VALUE_REQUIRED, "", NULL, NULL, -1, NULL, "Server port" }, @@ -327,6 +331,10 @@ int shadow_server_init(rdpShadowServer* server) #ifdef WITH_SHADOW_MAC server->CreateSubsystem = Mac_ShadowCreateSubsystem; #endif + +#ifdef WITH_SHADOW_WIN + server->CreateSubsystem = Win_ShadowCreateSubsystem; +#endif if (server->CreateSubsystem) server->subsystem = server->CreateSubsystem(server); From d8b858811f3c5dcb76f28611e41209e74f11a280 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 17 Jul 2014 21:15:22 -0400 Subject: [PATCH 027/170] shadow: initial windows server-side connectivity --- include/freerdp/server/shadow.h | 1 + libfreerdp/core/peer.c | 8 +- libfreerdp/core/tcp.c | 36 +++-- libfreerdp/core/tcp.h | 3 - libfreerdp/core/transport.c | 6 +- libfreerdp/crypto/certificate.c | 21 ++- libfreerdp/crypto/tls.c | 17 +- server/Windows/wf_dxgi.c | 2 - server/shadow/Win/win_shadow.c | 274 +++++++++++++++++++++++++++++++- server/shadow/Win/win_shadow.h | 8 +- server/shadow/shadow_client.c | 51 +++--- server/shadow/shadow_server.c | 25 ++- winpr/include/winpr/path.h | 6 +- winpr/libwinpr/path/shell.c | 36 ++++- 14 files changed, 429 insertions(+), 65 deletions(-) diff --git a/include/freerdp/server/shadow.h b/include/freerdp/server/shadow.h index 2092275c2..c5b7e2036 100644 --- a/include/freerdp/server/shadow.h +++ b/include/freerdp/server/shadow.h @@ -93,6 +93,7 @@ struct rdp_shadow_server DWORD port; BOOL mayView; BOOL mayInteract; + char* ConfigPath; freerdp_listener* listener; pfnShadowCreateSubsystem CreateSubsystem; }; diff --git a/libfreerdp/core/peer.c b/libfreerdp/core/peer.c index 10b10ff72..3821a9174 100644 --- a/libfreerdp/core/peer.c +++ b/libfreerdp/core/peer.c @@ -36,17 +36,18 @@ extern const char* DATA_PDU_TYPE_STRINGS[80]; static BOOL freerdp_peer_initialize(freerdp_peer* client) { - rdpRdp *rdp = client->context->rdp; - rdpSettings *settings = rdp->settings; + rdpRdp* rdp = client->context->rdp; + rdpSettings* settings = rdp->settings; settings->ServerMode = TRUE; settings->FrameAcknowledge = 0; settings->LocalConnection = client->local; rdp->state = CONNECTION_STATE_INITIAL; - if (settings->RdpKeyFile != NULL) + if (settings->RdpKeyFile) { settings->RdpServerRsaKey = key_new(settings->RdpKeyFile); + if (!settings->RdpServerRsaKey) { fprintf(stderr, "%s: inavlid RDP key file %s\n", __FUNCTION__, settings->RdpKeyFile); @@ -77,7 +78,6 @@ static HANDLE freerdp_peer_get_event_handle(freerdp_peer* client) return client->context->rdp->transport->TcpIn->event; } - static BOOL freerdp_peer_check_fds(freerdp_peer* peer) { int status; diff --git a/libfreerdp/core/tcp.c b/libfreerdp/core/tcp.c index 21a875150..699f20b69 100644 --- a/libfreerdp/core/tcp.c +++ b/libfreerdp/core/tcp.c @@ -640,16 +640,31 @@ BOOL tcp_set_blocking_mode(rdpTcp* tcp, BOOL blocking) else fcntl(tcp->sockfd, F_SETFL, flags | O_NONBLOCK); #else - int status; - u_long arg = blocking; + /** + * ioctlsocket function: + * msdn.microsoft.com/en-ca/library/windows/desktop/ms738573/ + * + * The WSAAsyncSelect and WSAEventSelect functions automatically set a socket to nonblocking mode. + * If WSAAsyncSelect or WSAEventSelect has been issued on a socket, then any attempt to use + * ioctlsocket to set the socket back to blocking mode will fail with WSAEINVAL. + * + * To set the socket back to blocking mode, an application must first disable WSAAsyncSelect + * by calling WSAAsyncSelect with the lEvent parameter equal to zero, or disable WSAEventSelect + * by calling WSAEventSelect with the lNetworkEvents parameter equal to zero. + */ - status = ioctlsocket(tcp->sockfd, FIONBIO, &arg); + if (blocking == TRUE) + { + if (tcp->event) + WSAEventSelect(tcp->sockfd, tcp->event, 0); + } + else + { + if (!tcp->event) + tcp->event = WSACreateEvent(); - if (status != NO_ERROR) - fprintf(stderr, "ioctlsocket() failed with error: %ld\n", status); - - tcp->wsa_event = WSACreateEvent(); - WSAEventSelect(tcp->sockfd, tcp->wsa_event, FD_READ); + WSAEventSelect(tcp->sockfd, tcp->event, FD_READ); + } #endif return TRUE; @@ -757,14 +772,9 @@ HANDLE tcp_get_event_handle(rdpTcp* tcp) if (!tcp) return NULL; -#ifndef _WIN32 return tcp->event; -#else - return (HANDLE) tcp->wsa_event; -#endif } - int tcp_wait_read(rdpTcp* tcp, DWORD dwMilliSeconds) { int status; diff --git a/libfreerdp/core/tcp.h b/libfreerdp/core/tcp.h index 4d87e3b01..9f65522f3 100644 --- a/libfreerdp/core/tcp.h +++ b/libfreerdp/core/tcp.h @@ -49,9 +49,6 @@ struct rdp_tcp char ip_address[32]; BYTE mac_address[6]; rdpSettings* settings; -#ifdef _WIN32 - WSAEVENT wsa_event; -#endif BIO* socketBio; BIO* bufferedBio; RingBuffer xmitBuffer; diff --git a/libfreerdp/core/transport.c b/libfreerdp/core/transport.c index 3f214e5ad..fc84d8fb0 100644 --- a/libfreerdp/core/transport.c +++ b/libfreerdp/core/transport.c @@ -951,12 +951,12 @@ void transport_get_fds(rdpTransport* transport, void** rfds, int* rcount) void* pfd; #ifdef _WIN32 - rfds[*rcount] = transport->TcpIn->wsa_event; + rfds[*rcount] = transport->TcpIn->event; (*rcount)++; if (transport->SplitInputOutput) { - rfds[*rcount] = transport->TcpOut->wsa_event; + rfds[*rcount] = transport->TcpOut->event; (*rcount)++; } #else @@ -1058,7 +1058,7 @@ int transport_check_fds(rdpTransport* transport) return -1; #ifdef _WIN32 - WSAResetEvent(transport->TcpIn->wsa_event); + WSAResetEvent(transport->TcpIn->event); #endif ResetEvent(transport->ReceiveEvent); diff --git a/libfreerdp/crypto/certificate.c b/libfreerdp/crypto/certificate.c index d65796ace..8a0b9c00f 100644 --- a/libfreerdp/crypto/certificate.c +++ b/libfreerdp/crypto/certificate.c @@ -39,7 +39,7 @@ static const char certificate_known_hosts_file[] = "known_hosts"; #include -void certificate_store_init(rdpCertificateStore* certificate_store) +int certificate_store_init(rdpCertificateStore* certificate_store) { char* server_path; rdpSettings* settings; @@ -54,6 +54,9 @@ void certificate_store_init(rdpCertificateStore* certificate_store) certificate_store->path = GetCombinedPath(settings->ConfigPath, (char*) certificate_store_dir); + if (!certificate_store->path) + return -1; + if (!PathFileExistsA(certificate_store->path)) { CreateDirectoryA(certificate_store->path, 0); @@ -62,6 +65,9 @@ void certificate_store_init(rdpCertificateStore* certificate_store) server_path = GetCombinedPath(settings->ConfigPath, (char*) certificate_server_dir); + if (!server_path) + return -1; + if (!PathFileExistsA(server_path)) { CreateDirectoryA(server_path, 0); @@ -72,14 +78,17 @@ void certificate_store_init(rdpCertificateStore* certificate_store) certificate_store->file = GetCombinedPath(settings->ConfigPath, (char*) certificate_known_hosts_file); + if (!certificate_store->file) + return -1; + if (PathFileExistsA(certificate_store->file) == FALSE) { certificate_store->fp = fopen((char*) certificate_store->file, "w+"); - if (certificate_store->fp == NULL) + if (!certificate_store->fp) { fprintf(stderr, "certificate_store_open: error opening [%s] for writing\n", certificate_store->file); - return; + return -1; } fflush(certificate_store->fp); @@ -88,6 +97,8 @@ void certificate_store_init(rdpCertificateStore* certificate_store) { certificate_store->fp = fopen((char*) certificate_store->file, "r+"); } + + return 1; } int certificate_data_match(rdpCertificateStore* certificate_store, rdpCertificateData* certificate_data) @@ -264,14 +275,14 @@ rdpCertificateStore* certificate_store_new(rdpSettings* settings) { rdpCertificateStore* certificate_store; - certificate_store = (rdpCertificateStore *)calloc(1, sizeof(rdpCertificateStore)); + certificate_store = (rdpCertificateStore*) calloc(1, sizeof(rdpCertificateStore)); if (!certificate_store) return NULL; certificate_store->settings = settings; + certificate_store_init(certificate_store); - /* TODO: certificate_store_init should not fail silently */ return certificate_store; } diff --git a/libfreerdp/crypto/tls.c b/libfreerdp/crypto/tls.c index 967bf1586..453ec5dcc 100644 --- a/libfreerdp/crypto/tls.c +++ b/libfreerdp/crypto/tls.c @@ -1340,10 +1340,14 @@ rdpTls* tls_new(rdpSettings* settings) SSL_library_init(); tls->settings = settings; - tls->certificate_store = certificate_store_new(settings); - if (!tls->certificate_store) - goto out_free; + if (!settings->ServerMode) + { + tls->certificate_store = certificate_store_new(settings); + + if (!tls->certificate_store) + goto out_free; + } tls->alertLevel = TLS_ALERT_LEVEL_WARNING; tls->alertDescription = TLS_ALERT_DESCRIPTION_CLOSE_NOTIFY; @@ -1379,8 +1383,11 @@ void tls_free(rdpTls* tls) tls->Bindings = NULL; } - certificate_store_free(tls->certificate_store); - tls->certificate_store = NULL; + if (tls->certificate_store) + { + certificate_store_free(tls->certificate_store); + tls->certificate_store = NULL; + } free(tls); } diff --git a/server/Windows/wf_dxgi.c b/server/Windows/wf_dxgi.c index 43dd8af9e..fdaacca2d 100644 --- a/server/Windows/wf_dxgi.c +++ b/server/Windows/wf_dxgi.c @@ -69,8 +69,6 @@ int wf_dxgi_init(wfInfo* wfi) { gAcquiredDesktopImage = NULL; - printf("wf_dxgi_init\n"); - if (wf_dxgi_createDevice(wfi) != 0) { return 1; diff --git a/server/shadow/Win/win_shadow.c b/server/shadow/Win/win_shadow.c index 2089bece9..5a3318c29 100644 --- a/server/shadow/Win/win_shadow.c +++ b/server/shadow/Win/win_shadow.c @@ -28,6 +28,190 @@ #include "win_shadow.h" +#ifdef WITH_DXGI_1_2 + +#ifndef CINTERFACE +#define CINTERFACE +#endif + +#include +#include + +static D3D_DRIVER_TYPE DriverTypes[] = +{ + D3D_DRIVER_TYPE_HARDWARE, + D3D_DRIVER_TYPE_WARP, + D3D_DRIVER_TYPE_REFERENCE, +}; + +static UINT NumDriverTypes = ARRAYSIZE(DriverTypes); + +static D3D_FEATURE_LEVEL FeatureLevels[] = +{ + D3D_FEATURE_LEVEL_11_0, + D3D_FEATURE_LEVEL_10_1, + D3D_FEATURE_LEVEL_10_0, + D3D_FEATURE_LEVEL_9_1 +}; + +static UINT NumFeatureLevels = ARRAYSIZE(FeatureLevels); + +static D3D_FEATURE_LEVEL FeatureLevel; + +static ID3D11Device* gDevice = NULL; +static ID3D11DeviceContext* gContext = NULL; +static IDXGIOutputDuplication* gOutputDuplication = NULL; +static ID3D11Texture2D* gAcquiredDesktopImage = NULL; + +static IDXGISurface* surf; +static ID3D11Texture2D* sStage; + +static DXGI_OUTDUPL_FRAME_INFO FrameInfo; + +static HMODULE d3d11_module = NULL; + +typedef HRESULT (WINAPI * fnD3D11CreateDevice)( + IDXGIAdapter* pAdapter, D3D_DRIVER_TYPE DriverType, HMODULE Software, UINT Flags, + CONST D3D_FEATURE_LEVEL* pFeatureLevels, UINT FeatureLevels, UINT SDKVersion, + ID3D11Device** ppDevice, D3D_FEATURE_LEVEL* pFeatureLevel, ID3D11DeviceContext** ppImmediateContext); + +static fnD3D11CreateDevice pfnD3D11CreateDevice = NULL; + +#undef DEFINE_GUID +#define INITGUID + +#include + +/* dxgi.h GUIDs */ + +DEFINE_GUID(IID_IDXGIObject, 0xaec22fb8, 0x76f3, 0x4639, 0x9b, 0xe0, 0x28, 0xeb, 0x43, 0xa6, 0x7a, 0x2e); +DEFINE_GUID(IID_IDXGIDeviceSubObject, 0x3d3e0379, 0xf9de, 0x4d58, 0xbb, 0x6c, 0x18, 0xd6, 0x29, 0x92, 0xf1, 0xa6); +DEFINE_GUID(IID_IDXGIResource, 0x035f3ab4, 0x482e, 0x4e50, 0xb4, 0x1f, 0x8a, 0x7f, 0x8b, 0xd8, 0x96, 0x0b); +DEFINE_GUID(IID_IDXGIKeyedMutex, 0x9d8e1289, 0xd7b3, 0x465f, 0x81, 0x26, 0x25, 0x0e, 0x34, 0x9a, 0xf8, 0x5d); +DEFINE_GUID(IID_IDXGISurface, 0xcafcb56c, 0x6ac3, 0x4889, 0xbf, 0x47, 0x9e, 0x23, 0xbb, 0xd2, 0x60, 0xec); +DEFINE_GUID(IID_IDXGISurface1, 0x4AE63092, 0x6327, 0x4c1b, 0x80, 0xAE, 0xBF, 0xE1, 0x2E, 0xA3, 0x2B, 0x86); +DEFINE_GUID(IID_IDXGIAdapter, 0x2411e7e1, 0x12ac, 0x4ccf, 0xbd, 0x14, 0x97, 0x98, 0xe8, 0x53, 0x4d, 0xc0); +DEFINE_GUID(IID_IDXGIOutput, 0xae02eedb, 0xc735, 0x4690, 0x8d, 0x52, 0x5a, 0x8d, 0xc2, 0x02, 0x13, 0xaa); +DEFINE_GUID(IID_IDXGISwapChain, 0x310d36a0, 0xd2e7, 0x4c0a, 0xaa, 0x04, 0x6a, 0x9d, 0x23, 0xb8, 0x88, 0x6a); +DEFINE_GUID(IID_IDXGIFactory, 0x7b7166ec, 0x21c7, 0x44ae, 0xb2, 0x1a, 0xc9, 0xae, 0x32, 0x1a, 0xe3, 0x69); +DEFINE_GUID(IID_IDXGIDevice, 0x54ec77fa, 0x1377, 0x44e6, 0x8c, 0x32, 0x88, 0xfd, 0x5f, 0x44, 0xc8, 0x4c); +DEFINE_GUID(IID_IDXGIFactory1, 0x770aae78, 0xf26f, 0x4dba, 0xa8, 0x29, 0x25, 0x3c, 0x83, 0xd1, 0xb3, 0x87); +DEFINE_GUID(IID_IDXGIAdapter1, 0x29038f61, 0x3839, 0x4626, 0x91, 0xfd, 0x08, 0x68, 0x79, 0x01, 0x1a, 0x05); +DEFINE_GUID(IID_IDXGIDevice1, 0x77db970f, 0x6276, 0x48ba, 0xba, 0x28, 0x07, 0x01, 0x43, 0xb4, 0x39, 0x2c); + +/* dxgi1_2.h GUIDs */ + +DEFINE_GUID(IID_IDXGIDisplayControl, 0xea9dbf1a, 0xc88e, 0x4486, 0x85, 0x4a, 0x98, 0xaa, 0x01, 0x38, 0xf3, 0x0c); +DEFINE_GUID(IID_IDXGIOutputDuplication, 0x191cfac3, 0xa341, 0x470d, 0xb2, 0x6e, 0xa8, 0x64, 0xf4, 0x28, 0x31, 0x9c); +DEFINE_GUID(IID_IDXGISurface2, 0xaba496dd, 0xb617, 0x4cb8, 0xa8, 0x66, 0xbc, 0x44, 0xd7, 0xeb, 0x1f, 0xa2); +DEFINE_GUID(IID_IDXGIResource1, 0x30961379, 0x4609, 0x4a41, 0x99, 0x8e, 0x54, 0xfe, 0x56, 0x7e, 0xe0, 0xc1); +DEFINE_GUID(IID_IDXGIDevice2, 0x05008617, 0xfbfd, 0x4051, 0xa7, 0x90, 0x14, 0x48, 0x84, 0xb4, 0xf6, 0xa9); +DEFINE_GUID(IID_IDXGISwapChain1, 0x790a45f7, 0x0d42, 0x4876, 0x98, 0x3a, 0x0a, 0x55, 0xcf, 0xe6, 0xf4, 0xaa); +DEFINE_GUID(IID_IDXGIFactory2, 0x50c83a1c, 0xe072, 0x4c48, 0x87, 0xb0, 0x36, 0x30, 0xfa, 0x36, 0xa6, 0xd0); +DEFINE_GUID(IID_IDXGIAdapter2, 0x0AA1AE0A, 0xFA0E, 0x4B84, 0x86, 0x44, 0xE0, 0x5F, 0xF8, 0xE5, 0xAC, 0xB5); +DEFINE_GUID(IID_IDXGIOutput1, 0x00cddea8, 0x939b, 0x4b83, 0xa3, 0x40, 0xa6, 0x85, 0x22, 0x66, 0x66, 0xcc); + +static void win_shadow_d3d11_module_init() +{ + if (d3d11_module) + return; + + d3d11_module = LoadLibraryA("d3d11.dll"); + + if (!d3d11_module) + return; + + pfnD3D11CreateDevice = (fnD3D11CreateDevice) GetProcAddress(d3d11_module, "D3D11CreateDevice"); +} + +int win_shadow_dxgi_init(winShadowSubsystem* subsystem) +{ + HRESULT status; + UINT dTop, i = 0; + UINT DriverTypeIndex; + DXGI_OUTPUT_DESC desc; + IDXGIOutput* pOutput; + IDXGIDevice* DxgiDevice = NULL; + IDXGIAdapter* DxgiAdapter = NULL; + IDXGIOutput* DxgiOutput = NULL; + IDXGIOutput1* DxgiOutput1 = NULL; + + win_shadow_d3d11_module_init(); + + if (!pfnD3D11CreateDevice) + return -1; + + for (DriverTypeIndex = 0; DriverTypeIndex < NumDriverTypes; ++DriverTypeIndex) + { + status = pfnD3D11CreateDevice(NULL, DriverTypes[DriverTypeIndex], NULL, 0, FeatureLevels, + NumFeatureLevels, D3D11_SDK_VERSION, &gDevice, &FeatureLevel, &gContext); + + if (SUCCEEDED(status)) + break; + } + + if (FAILED(status)) + return -1; + + status = gDevice->lpVtbl->QueryInterface(gDevice, &IID_IDXGIDevice, (void**) &DxgiDevice); + + if (FAILED(status)) + return -1; + + status = DxgiDevice->lpVtbl->GetParent(DxgiDevice, &IID_IDXGIAdapter, (void**) &DxgiAdapter); + DxgiDevice->lpVtbl->Release(DxgiDevice); + DxgiDevice = NULL; + + if (FAILED(status)) + return -1; + + ZeroMemory(&desc, sizeof(desc)); + pOutput = NULL; + + while (DxgiAdapter->lpVtbl->EnumOutputs(DxgiAdapter, i, &pOutput) != DXGI_ERROR_NOT_FOUND) + { + DXGI_OUTPUT_DESC* pDesc = &desc; + + status = pOutput->lpVtbl->GetDesc(pOutput, pDesc); + + if (FAILED(status)) + return -1; + + if (pDesc->AttachedToDesktop) + dTop = i; + + pOutput->lpVtbl->Release(pOutput); + ++i; + } + + dTop = 0; /* screen id */ + + status = DxgiAdapter->lpVtbl->EnumOutputs(DxgiAdapter, dTop, &DxgiOutput); + DxgiAdapter->lpVtbl->Release(DxgiAdapter); + DxgiAdapter = NULL; + + if (FAILED(status)) + return -1; + + status = DxgiOutput->lpVtbl->QueryInterface(DxgiOutput, &IID_IDXGIOutput1, (void**) &DxgiOutput1); + DxgiOutput->lpVtbl->Release(DxgiOutput); + DxgiOutput = NULL; + + if (FAILED(status)) + return -1; + + status = DxgiOutput1->lpVtbl->DuplicateOutput(DxgiOutput1, (IUnknown*) gDevice, &gOutputDuplication); + DxgiOutput1->lpVtbl->Release(DxgiOutput1); + DxgiOutput1 = NULL; + + if (FAILED(status)) + return -1; + + return 1; +} + +#endif + void win_shadow_input_synchronize_event(winShadowSubsystem* subsystem, UINT32 flags) { @@ -177,6 +361,28 @@ void win_shadow_input_extended_mouse_event(winShadowSubsystem* subsystem, UINT16 } } + +int win_shadow_invalidate_region(winShadowSubsystem* subsystem, int x, int y, int width, int height) +{ + rdpShadowServer* server; + rdpShadowScreen* screen; + RECTANGLE_16 invalidRect; + + server = subsystem->server; + screen = server->screen; + + invalidRect.left = x; + invalidRect.top = y; + invalidRect.right = x + width; + invalidRect.bottom = y + height; + + EnterCriticalSection(&(screen->lock)); + region16_union_rect(&(screen->invalidRegion), &(screen->invalidRegion), &invalidRect); + LeaveCriticalSection(&(screen->lock)); + + return 1; +} + int win_shadow_surface_copy(winShadowSubsystem* subsystem) { return 1; @@ -184,8 +390,13 @@ int win_shadow_surface_copy(winShadowSubsystem* subsystem) void* win_shadow_subsystem_thread(winShadowSubsystem* subsystem) { + int fps; DWORD status; DWORD nCount; + UINT64 cTime; + DWORD dwTimeout; + DWORD dwInterval; + UINT64 frameTime; HANDLE events[32]; HANDLE StopEvent; @@ -194,14 +405,31 @@ void* win_shadow_subsystem_thread(winShadowSubsystem* subsystem) nCount = 0; events[nCount++] = StopEvent; + fps = 16; + dwInterval = 1000 / fps; + frameTime = GetTickCount64() + dwInterval; + while (1) { - status = WaitForMultipleObjects(nCount, events, FALSE, INFINITE); + dwTimeout = INFINITE; + + cTime = GetTickCount64(); + dwTimeout = (DWORD) ((cTime > frameTime) ? 0 : frameTime - cTime); + + status = WaitForMultipleObjects(nCount, events, FALSE, dwTimeout); if (WaitForSingleObject(StopEvent, 0) == WAIT_OBJECT_0) { break; } + + if ((status == WAIT_TIMEOUT) || (GetTickCount64() > frameTime)) + { + win_shadow_invalidate_region(subsystem, 0, 0, subsystem->width, subsystem->height); + + dwInterval = 1000 / fps; + frameTime += dwInterval; + } } ExitThread(0); @@ -210,6 +438,50 @@ void* win_shadow_subsystem_thread(winShadowSubsystem* subsystem) int win_shadow_subsystem_init(winShadowSubsystem* subsystem) { + HDC hdc; + int status; + DWORD iDevNum = 0; + MONITOR_DEF* virtualScreen; + DISPLAY_DEVICE DisplayDevice; + + ZeroMemory(&DisplayDevice, sizeof(DISPLAY_DEVICE)); + DisplayDevice.cb = sizeof(DISPLAY_DEVICE); + + if (!EnumDisplayDevices(NULL, iDevNum, &DisplayDevice, 0)) + return -1; + + hdc = CreateDC(DisplayDevice.DeviceName, NULL, NULL, NULL); + + subsystem->width = GetDeviceCaps(hdc, HORZRES); + subsystem->height = GetDeviceCaps(hdc, VERTRES); + subsystem->bpp = GetDeviceCaps(hdc, BITSPIXEL); + + DeleteDC(hdc); + +#ifdef WITH_DXGI_1_2 + status = win_shadow_dxgi_init(subsystem); +#endif + + virtualScreen = &(subsystem->virtualScreen); + + virtualScreen->left = 0; + virtualScreen->top = 0; + virtualScreen->right = subsystem->width; + virtualScreen->bottom = subsystem->height; + virtualScreen->flags = 1; + + if (subsystem->monitorCount < 1) + { + subsystem->monitorCount = 1; + subsystem->monitors[0].left = virtualScreen->left; + subsystem->monitors[0].top = virtualScreen->top; + subsystem->monitors[0].right = virtualScreen->right; + subsystem->monitors[0].bottom = virtualScreen->bottom; + subsystem->monitors[0].flags = 1; + } + + printf("width: %d height: %d\n", subsystem->width, subsystem->height); + return 1; } diff --git a/server/shadow/Win/win_shadow.h b/server/shadow/Win/win_shadow.h index 1c27d4f86..9da11e371 100644 --- a/server/shadow/Win/win_shadow.h +++ b/server/shadow/Win/win_shadow.h @@ -29,11 +29,17 @@ typedef struct win_shadow_subsystem winShadowSubsystem; #include #include +#if _WIN32_WINNT >= 0x0602 +#define WITH_DXGI_1_2 1 +#endif + struct win_shadow_subsystem { RDP_SHADOW_SUBSYSTEM_COMMON(); - + int bpp; + int width; + int height; }; #ifdef __cplusplus diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index a38977fc7..180b6be5c 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -31,48 +31,61 @@ #include "shadow.h" -static const char* makecert_argv[4] = +static const char* makecert_argv[6] = { "makecert", "-rdp", "-live", - "-silent" + "-silent", + "-y", "5" }; static int makecert_argc = (sizeof(makecert_argv) / sizeof(char*)); -int shadow_generate_certificate(rdpSettings* settings) +int shadow_generate_certificate(rdpShadowClient* client) { - char* serverFilePath; - MAKECERT_CONTEXT* context; + char* filepath; + rdpContext* context; + rdpSettings* settings; + MAKECERT_CONTEXT* makecert; + rdpShadowServer* server = client->server; - serverFilePath = GetCombinedPath(settings->ConfigPath, "server"); + context = (rdpContext*) client; + settings = context->settings; - if (!PathFileExistsA(serverFilePath)) - CreateDirectoryA(serverFilePath, 0); + if (!PathFileExistsA(server->ConfigPath)) + CreateDirectoryA(server->ConfigPath, 0); - settings->CertificateFile = GetCombinedPath(serverFilePath, "server.crt"); - settings->PrivateKeyFile = GetCombinedPath(serverFilePath, "server.key"); + filepath = GetCombinedPath(server->ConfigPath, "shadow"); + + if (!filepath) + return -1; + + if (!PathFileExistsA(filepath)) + CreateDirectoryA(filepath, 0); + + settings->CertificateFile = GetCombinedPath(filepath, "shadow.crt"); + settings->PrivateKeyFile = GetCombinedPath(filepath, "shadow.key"); if ((!PathFileExistsA(settings->CertificateFile)) || (!PathFileExistsA(settings->PrivateKeyFile))) { - context = makecert_context_new(); + makecert = makecert_context_new(); - makecert_context_process(context, makecert_argc, (char**) makecert_argv); + makecert_context_process(makecert, makecert_argc, (char**) makecert_argv); - makecert_context_set_output_file_name(context, "server"); + makecert_context_set_output_file_name(makecert, "shadow"); if (!PathFileExistsA(settings->CertificateFile)) - makecert_context_output_certificate_file(context, serverFilePath); + makecert_context_output_certificate_file(makecert, filepath); if (!PathFileExistsA(settings->PrivateKeyFile)) - makecert_context_output_private_key_file(context, serverFilePath); + makecert_context_output_private_key_file(makecert, filepath); - makecert_context_free(context); + makecert_context_free(makecert); } - free(serverFilePath); + free(filepath); return 1; } @@ -97,7 +110,7 @@ void shadow_client_context_new(freerdp_peer* peer, rdpShadowClient* client) settings->TlsSecurity = TRUE; settings->NlaSecurity = FALSE; - shadow_generate_certificate(settings); + shadow_generate_certificate(client); client->inLobby = TRUE; client->mayView = server->mayView; @@ -651,7 +664,7 @@ void* shadow_client_thread(rdpShadowClient* client) events[nCount++] = ChannelEvent; cTime = GetTickCount64(); - dwTimeout = (cTime > frameTime) ? 0 : frameTime - cTime; + dwTimeout = (DWORD) ((cTime > frameTime) ? 0 : frameTime - cTime); status = WaitForMultipleObjects(nCount, events, FALSE, dwTimeout); diff --git a/server/shadow/shadow_server.c b/server/shadow/shadow_server.c index 0cc757373..945189c34 100644 --- a/server/shadow/shadow_server.c +++ b/server/shadow/shadow_server.c @@ -21,7 +21,9 @@ #endif #include +#include #include +#include #include @@ -282,11 +284,16 @@ void* shadow_server_thread(rdpShadowServer* server) int shadow_server_start(rdpShadowServer* server) { + WSADATA wsaData; + + if (WSAStartup(MAKEWORD(2, 2), &wsaData) != 0) + return -1; + #ifndef _WIN32 signal(SIGPIPE, SIG_IGN); #endif - if (server->listener->Open(server->listener, NULL, server->port)) + if (server->listener->Open(server->listener, NULL, (UINT16) server->port)) { server->thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) shadow_server_thread, (void*) server, 0, NULL); @@ -312,6 +319,8 @@ int shadow_server_stop(rdpShadowServer* server) int shadow_server_init(rdpShadowServer* server) { + int status; + WTSRegisterWtsApiFunctionTable(FreeRDP_InitWtsApi()); server->StopEvent = CreateEvent(NULL, TRUE, FALSE, NULL); @@ -343,7 +352,12 @@ int shadow_server_init(rdpShadowServer* server) return -1; if (server->subsystem->Init) - server->subsystem->Init(server->subsystem); + { + status = server->subsystem->Init(server->subsystem); + + if (status < 0) + fprintf(stderr, "subsystem init failure: %d\n", status); + } server->screen = shadow_screen_new(server); @@ -396,6 +410,13 @@ rdpShadowServer* shadow_server_new() server->mayView = TRUE; server->mayInteract = TRUE; +#ifdef _WIN32 + server->ConfigPath = GetEnvironmentSubPath("LOCALAPPDATA", "freerdp"); +#endif + + if (!server->ConfigPath) + server->ConfigPath = GetKnownSubPath(KNOWN_PATH_XDG_CONFIG_HOME, "freerdp"); + return server; } diff --git a/winpr/include/winpr/path.h b/winpr/include/winpr/path.h index a69867d02..36333e9b6 100644 --- a/winpr/include/winpr/path.h +++ b/winpr/include/winpr/path.h @@ -281,10 +281,10 @@ extern "C" { WINPR_API char* GetKnownPath(int id); WINPR_API char* GetKnownSubPath(int id, const char* path); +WINPR_API char* GetEnvironmentPath(char* name); +WINPR_API char* GetEnvironmentSubPath(char* name, const char* path); WINPR_API char* GetCombinedPath(const char* basePath, const char* subPath); -//#ifndef _WIN32 - WINPR_API BOOL PathFileExistsA(LPCSTR pszPath); WINPR_API BOOL PathFileExistsW(LPCWSTR pszPath); @@ -298,6 +298,4 @@ WINPR_API BOOL PathFileExistsW(LPCWSTR pszPath); #define PathFileExists PathFileExistsA #endif -//#endif - #endif /* WINPR_PATH_H */ diff --git a/winpr/libwinpr/path/shell.c b/winpr/libwinpr/path/shell.c index 10f7b7d9d..eae9a6539 100644 --- a/winpr/libwinpr/path/shell.c +++ b/winpr/libwinpr/path/shell.c @@ -271,6 +271,39 @@ char* GetKnownSubPath(int id, const char* path) return subPath; } +char* GetEnvironmentPath(char* name) +{ + char* env; + DWORD nSize; + + nSize = GetEnvironmentVariableA(name, NULL, 0); + + if (nSize) + { + env = (LPSTR) malloc(nSize); + nSize = GetEnvironmentVariableA(name, env, nSize); + } + + return env; +} + +char* GetEnvironmentSubPath(char* name, const char* path) +{ + char* env; + char* subpath; + + env = GetEnvironmentPath(name); + + if (!env) + return NULL; + + subpath = GetCombinedPath(env, path); + + free(env); + + return subpath; +} + char* GetCombinedPath(const char* basePath, const char* subPath) { int length; @@ -309,8 +342,6 @@ char* GetCombinedPath(const char* basePath, const char* subPath) return path; } -//#ifndef _WIN32 - BOOL PathFileExistsA(LPCSTR pszPath) { struct stat stat_info; @@ -326,4 +357,3 @@ BOOL PathFileExistsW(LPCWSTR pszPath) return FALSE; } -//#endif From 67f0d18add5ea7e9338267bc4156f2fe5a0f343f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 17 Jul 2014 22:38:10 -0400 Subject: [PATCH 028/170] shadow: initial Win8 DXGI 1.2 support --- server/shadow/Win/win_shadow.c | 505 ++++++++++++++++++++++++++++----- server/shadow/Win/win_shadow.h | 23 ++ 2 files changed, 462 insertions(+), 66 deletions(-) diff --git a/server/shadow/Win/win_shadow.c b/server/shadow/Win/win_shadow.c index 5a3318c29..68695fe80 100644 --- a/server/shadow/Win/win_shadow.c +++ b/server/shadow/Win/win_shadow.c @@ -30,13 +30,6 @@ #ifdef WITH_DXGI_1_2 -#ifndef CINTERFACE -#define CINTERFACE -#endif - -#include -#include - static D3D_DRIVER_TYPE DriverTypes[] = { D3D_DRIVER_TYPE_HARDWARE, @@ -56,18 +49,6 @@ static D3D_FEATURE_LEVEL FeatureLevels[] = static UINT NumFeatureLevels = ARRAYSIZE(FeatureLevels); -static D3D_FEATURE_LEVEL FeatureLevel; - -static ID3D11Device* gDevice = NULL; -static ID3D11DeviceContext* gContext = NULL; -static IDXGIOutputDuplication* gOutputDuplication = NULL; -static ID3D11Texture2D* gAcquiredDesktopImage = NULL; - -static IDXGISurface* surf; -static ID3D11Texture2D* sStage; - -static DXGI_OUTDUPL_FRAME_INFO FrameInfo; - static HMODULE d3d11_module = NULL; typedef HRESULT (WINAPI * fnD3D11CreateDevice)( @@ -82,6 +63,50 @@ static fnD3D11CreateDevice pfnD3D11CreateDevice = NULL; #include +/* d3d11.h GUIDs */ + +DEFINE_GUID(IID_ID3D11DeviceChild,0x1841e5c8,0x16b0,0x489b,0xbc,0xc8,0x44,0xcf,0xb0,0xd5,0xde,0xae); +DEFINE_GUID(IID_ID3D11DepthStencilState,0x03823efb,0x8d8f,0x4e1c,0x9a,0xa2,0xf6,0x4b,0xb2,0xcb,0xfd,0xf1); +DEFINE_GUID(IID_ID3D11BlendState,0x75b68faa,0x347d,0x4159,0x8f,0x45,0xa0,0x64,0x0f,0x01,0xcd,0x9a); +DEFINE_GUID(IID_ID3D11RasterizerState,0x9bb4ab81,0xab1a,0x4d8f,0xb5,0x06,0xfc,0x04,0x20,0x0b,0x6e,0xe7); +DEFINE_GUID(IID_ID3D11Resource,0xdc8e63f3,0xd12b,0x4952,0xb4,0x7b,0x5e,0x45,0x02,0x6a,0x86,0x2d); +DEFINE_GUID(IID_ID3D11Buffer,0x48570b85,0xd1ee,0x4fcd,0xa2,0x50,0xeb,0x35,0x07,0x22,0xb0,0x37); +DEFINE_GUID(IID_ID3D11Texture1D,0xf8fb5c27,0xc6b3,0x4f75,0xa4,0xc8,0x43,0x9a,0xf2,0xef,0x56,0x4c); +DEFINE_GUID(IID_ID3D11Texture2D,0x6f15aaf2,0xd208,0x4e89,0x9a,0xb4,0x48,0x95,0x35,0xd3,0x4f,0x9c); +DEFINE_GUID(IID_ID3D11Texture3D,0x037e866e,0xf56d,0x4357,0xa8,0xaf,0x9d,0xab,0xbe,0x6e,0x25,0x0e); +DEFINE_GUID(IID_ID3D11View,0x839d1216,0xbb2e,0x412b,0xb7,0xf4,0xa9,0xdb,0xeb,0xe0,0x8e,0xd1); +DEFINE_GUID(IID_ID3D11ShaderResourceView,0xb0e06fe0,0x8192,0x4e1a,0xb1,0xca,0x36,0xd7,0x41,0x47,0x10,0xb2); +DEFINE_GUID(IID_ID3D11RenderTargetView,0xdfdba067,0x0b8d,0x4865,0x87,0x5b,0xd7,0xb4,0x51,0x6c,0xc1,0x64); +DEFINE_GUID(IID_ID3D11DepthStencilView,0x9fdac92a,0x1876,0x48c3,0xaf,0xad,0x25,0xb9,0x4f,0x84,0xa9,0xb6); +DEFINE_GUID(IID_ID3D11UnorderedAccessView,0x28acf509,0x7f5c,0x48f6,0x86,0x11,0xf3,0x16,0x01,0x0a,0x63,0x80); +DEFINE_GUID(IID_ID3D11VertexShader,0x3b301d64,0xd678,0x4289,0x88,0x97,0x22,0xf8,0x92,0x8b,0x72,0xf3); +DEFINE_GUID(IID_ID3D11HullShader,0x8e5c6061,0x628a,0x4c8e,0x82,0x64,0xbb,0xe4,0x5c,0xb3,0xd5,0xdd); +DEFINE_GUID(IID_ID3D11DomainShader,0xf582c508,0x0f36,0x490c,0x99,0x77,0x31,0xee,0xce,0x26,0x8c,0xfa); +DEFINE_GUID(IID_ID3D11GeometryShader,0x38325b96,0xeffb,0x4022,0xba,0x02,0x2e,0x79,0x5b,0x70,0x27,0x5c); +DEFINE_GUID(IID_ID3D11PixelShader,0xea82e40d,0x51dc,0x4f33,0x93,0xd4,0xdb,0x7c,0x91,0x25,0xae,0x8c); +DEFINE_GUID(IID_ID3D11ComputeShader,0x4f5b196e,0xc2bd,0x495e,0xbd,0x01,0x1f,0xde,0xd3,0x8e,0x49,0x69); +DEFINE_GUID(IID_ID3D11InputLayout,0xe4819ddc,0x4cf0,0x4025,0xbd,0x26,0x5d,0xe8,0x2a,0x3e,0x07,0xb7); +DEFINE_GUID(IID_ID3D11SamplerState,0xda6fea51,0x564c,0x4487,0x98,0x10,0xf0,0xd0,0xf9,0xb4,0xe3,0xa5); +DEFINE_GUID(IID_ID3D11Asynchronous,0x4b35d0cd,0x1e15,0x4258,0x9c,0x98,0x1b,0x13,0x33,0xf6,0xdd,0x3b); +DEFINE_GUID(IID_ID3D11Query,0xd6c00747,0x87b7,0x425e,0xb8,0x4d,0x44,0xd1,0x08,0x56,0x0a,0xfd); +DEFINE_GUID(IID_ID3D11Predicate,0x9eb576dd,0x9f77,0x4d86,0x81,0xaa,0x8b,0xab,0x5f,0xe4,0x90,0xe2); +DEFINE_GUID(IID_ID3D11Counter,0x6e8c49fb,0xa371,0x4770,0xb4,0x40,0x29,0x08,0x60,0x22,0xb7,0x41); +DEFINE_GUID(IID_ID3D11ClassInstance,0xa6cd7faa,0xb0b7,0x4a2f,0x94,0x36,0x86,0x62,0xa6,0x57,0x97,0xcb); +DEFINE_GUID(IID_ID3D11ClassLinkage,0xddf57cba,0x9543,0x46e4,0xa1,0x2b,0xf2,0x07,0xa0,0xfe,0x7f,0xed); +DEFINE_GUID(IID_ID3D11CommandList,0xa24bc4d1,0x769e,0x43f7,0x80,0x13,0x98,0xff,0x56,0x6c,0x18,0xe2); +DEFINE_GUID(IID_ID3D11DeviceContext,0xc0bfa96c,0xe089,0x44fb,0x8e,0xaf,0x26,0xf8,0x79,0x61,0x90,0xda); +DEFINE_GUID(IID_ID3D11VideoDecoder,0x3C9C5B51,0x995D,0x48d1,0x9B,0x8D,0xFA,0x5C,0xAE,0xDE,0xD6,0x5C); +DEFINE_GUID(IID_ID3D11VideoProcessorEnumerator,0x31627037,0x53AB,0x4200,0x90,0x61,0x05,0xFA,0xA9,0xAB,0x45,0xF9); +DEFINE_GUID(IID_ID3D11VideoProcessor,0x1D7B0652,0x185F,0x41c6,0x85,0xCE,0x0C,0x5B,0xE3,0xD4,0xAE,0x6C); +DEFINE_GUID(IID_ID3D11AuthenticatedChannel,0x3015A308,0xDCBD,0x47aa,0xA7,0x47,0x19,0x24,0x86,0xD1,0x4D,0x4A); +DEFINE_GUID(IID_ID3D11CryptoSession,0x9B32F9AD,0xBDCC,0x40a6,0xA3,0x9D,0xD5,0xC8,0x65,0x84,0x57,0x20); +DEFINE_GUID(IID_ID3D11VideoDecoderOutputView,0xC2931AEA,0x2A85,0x4f20,0x86,0x0F,0xFB,0xA1,0xFD,0x25,0x6E,0x18); +DEFINE_GUID(IID_ID3D11VideoProcessorInputView,0x11EC5A5F,0x51DC,0x4945,0xAB,0x34,0x6E,0x8C,0x21,0x30,0x0E,0xA5); +DEFINE_GUID(IID_ID3D11VideoProcessorOutputView,0xA048285E,0x25A9,0x4527,0xBD,0x93,0xD6,0x8B,0x68,0xC4,0x42,0x54); +DEFINE_GUID(IID_ID3D11VideoContext,0x61F21C45,0x3C0E,0x4a74,0x9C,0xEA,0x67,0x10,0x0D,0x9A,0xD5,0xE4); +DEFINE_GUID(IID_ID3D11VideoDevice,0x10EC4D5B,0x975A,0x4689,0xB9,0xE4,0xD0,0xAA,0xC3,0x0F,0xE3,0x33); +DEFINE_GUID(IID_ID3D11Device,0xdb6f6ddb,0xac77,0x4e88,0x82,0x53,0x81,0x9d,0xf9,0xbb,0xf1,0x40); + /* dxgi.h GUIDs */ DEFINE_GUID(IID_IDXGIObject, 0xaec22fb8, 0x76f3, 0x4639, 0x9b, 0xe0, 0x28, 0xeb, 0x43, 0xa6, 0x7a, 0x2e); @@ -124,11 +149,10 @@ static void win_shadow_d3d11_module_init() pfnD3D11CreateDevice = (fnD3D11CreateDevice) GetProcAddress(d3d11_module, "D3D11CreateDevice"); } -int win_shadow_dxgi_init(winShadowSubsystem* subsystem) +int win_shadow_dxgi_init_duplication(winShadowSubsystem* subsystem) { - HRESULT status; + HRESULT hr; UINT dTop, i = 0; - UINT DriverTypeIndex; DXGI_OUTPUT_DESC desc; IDXGIOutput* pOutput; IDXGIDevice* DxgiDevice = NULL; @@ -136,6 +160,75 @@ int win_shadow_dxgi_init(winShadowSubsystem* subsystem) IDXGIOutput* DxgiOutput = NULL; IDXGIOutput1* DxgiOutput1 = NULL; + hr = subsystem->dxgiDevice->lpVtbl->QueryInterface(subsystem->dxgiDevice, &IID_IDXGIDevice, (void**) &DxgiDevice); + + if (FAILED(hr)) + return -1; + + hr = DxgiDevice->lpVtbl->GetParent(DxgiDevice, &IID_IDXGIAdapter, (void**) &DxgiAdapter); + DxgiDevice->lpVtbl->Release(DxgiDevice); + DxgiDevice = NULL; + + if (FAILED(hr)) + return -1; + + ZeroMemory(&desc, sizeof(desc)); + pOutput = NULL; + + while (DxgiAdapter->lpVtbl->EnumOutputs(DxgiAdapter, i, &pOutput) != DXGI_ERROR_NOT_FOUND) + { + DXGI_OUTPUT_DESC* pDesc = &desc; + + hr = pOutput->lpVtbl->GetDesc(pOutput, pDesc); + + if (FAILED(hr)) + return -1; + + if (pDesc->AttachedToDesktop) + dTop = i; + + pOutput->lpVtbl->Release(pOutput); + ++i; + } + + dTop = 0; /* screen id */ + + hr = DxgiAdapter->lpVtbl->EnumOutputs(DxgiAdapter, dTop, &DxgiOutput); + DxgiAdapter->lpVtbl->Release(DxgiAdapter); + DxgiAdapter = NULL; + + if (FAILED(hr)) + return -1; + + hr = DxgiOutput->lpVtbl->QueryInterface(DxgiOutput, &IID_IDXGIOutput1, (void**) &DxgiOutput1); + DxgiOutput->lpVtbl->Release(DxgiOutput); + DxgiOutput = NULL; + + if (FAILED(hr)) + return -1; + + hr = DxgiOutput1->lpVtbl->DuplicateOutput(DxgiOutput1, (IUnknown*) subsystem->dxgiDevice, + &(subsystem->dxgiOutputDuplication)); + + DxgiOutput1->lpVtbl->Release(DxgiOutput1); + DxgiOutput1 = NULL; + + if (FAILED(hr)) + return -1; + + return 1; +} + +int win_shadow_dxgi_init(winShadowSubsystem* subsystem) +{ + UINT i = 0; + HRESULT hr; + UINT DriverTypeIndex; + IDXGIDevice* DxgiDevice = NULL; + IDXGIAdapter* DxgiAdapter = NULL; + IDXGIOutput* DxgiOutput = NULL; + IDXGIOutput1* DxgiOutput1 = NULL; + win_shadow_d3d11_module_init(); if (!pfnD3D11CreateDevice) @@ -143,69 +236,287 @@ int win_shadow_dxgi_init(winShadowSubsystem* subsystem) for (DriverTypeIndex = 0; DriverTypeIndex < NumDriverTypes; ++DriverTypeIndex) { - status = pfnD3D11CreateDevice(NULL, DriverTypes[DriverTypeIndex], NULL, 0, FeatureLevels, - NumFeatureLevels, D3D11_SDK_VERSION, &gDevice, &FeatureLevel, &gContext); + hr = pfnD3D11CreateDevice(NULL, DriverTypes[DriverTypeIndex], NULL, 0, FeatureLevels, + NumFeatureLevels, D3D11_SDK_VERSION, &(subsystem->dxgiDevice), &(subsystem->featureLevel), + &(subsystem->dxgiDeviceContext)); - if (SUCCEEDED(status)) + if (SUCCEEDED(hr)) break; } - if (FAILED(status)) + if (FAILED(hr)) return -1; - status = gDevice->lpVtbl->QueryInterface(gDevice, &IID_IDXGIDevice, (void**) &DxgiDevice); + win_shadow_dxgi_init_duplication(subsystem); - if (FAILED(status)) - return -1; + return 1; +} - status = DxgiDevice->lpVtbl->GetParent(DxgiDevice, &IID_IDXGIAdapter, (void**) &DxgiAdapter); - DxgiDevice->lpVtbl->Release(DxgiDevice); - DxgiDevice = NULL; - - if (FAILED(status)) - return -1; - - ZeroMemory(&desc, sizeof(desc)); - pOutput = NULL; - - while (DxgiAdapter->lpVtbl->EnumOutputs(DxgiAdapter, i, &pOutput) != DXGI_ERROR_NOT_FOUND) +int win_shadow_dxgi_uninit(winShadowSubsystem* subsystem) +{ + if (subsystem->dxgiDesktopImage) { - DXGI_OUTPUT_DESC* pDesc = &desc; - - status = pOutput->lpVtbl->GetDesc(pOutput, pDesc); - - if (FAILED(status)) - return -1; - - if (pDesc->AttachedToDesktop) - dTop = i; - - pOutput->lpVtbl->Release(pOutput); - ++i; + subsystem->dxgiDesktopImage->lpVtbl->Release(subsystem->dxgiDesktopImage); + subsystem->dxgiDesktopImage = NULL; } - dTop = 0; /* screen id */ + if (subsystem->dxgiOutputDuplication) + { + subsystem->dxgiOutputDuplication->lpVtbl->Release(subsystem->dxgiOutputDuplication); + subsystem->dxgiOutputDuplication = NULL; + } - status = DxgiAdapter->lpVtbl->EnumOutputs(DxgiAdapter, dTop, &DxgiOutput); - DxgiAdapter->lpVtbl->Release(DxgiAdapter); - DxgiAdapter = NULL; + if (subsystem->dxgiDeviceContext) + { + subsystem->dxgiDeviceContext->lpVtbl->Release(subsystem->dxgiDeviceContext); + subsystem->dxgiDeviceContext = NULL; + } - if (FAILED(status)) + if (subsystem->dxgiDevice) + { + subsystem->dxgiDevice->lpVtbl->Release(subsystem->dxgiDevice); + subsystem->dxgiDevice = NULL; + } + + return 1; +} + +int win_shadow_dxgi_fetch_frame_data(winShadowSubsystem* subsystem, + BYTE** ppDstData, int* pnDstStep, int x, int y, int width, int height) +{ + HRESULT hr; + D3D11_BOX Box; + DXGI_MAPPED_RECT mappedRect; + D3D11_TEXTURE2D_DESC tDesc; + + tDesc.Width = width; + tDesc.Height = height; + tDesc.MipLevels = 1; + tDesc.ArraySize = 1; + tDesc.Format = DXGI_FORMAT_B8G8R8A8_UNORM; + tDesc.SampleDesc.Count = 1; + tDesc.SampleDesc.Quality = 0; + tDesc.Usage = D3D11_USAGE_STAGING; + tDesc.BindFlags = 0; + tDesc.CPUAccessFlags = D3D11_CPU_ACCESS_READ; + tDesc.MiscFlags = 0; + + Box.top = x; + Box.left = y; + Box.right = x + width; + Box.bottom = y + height; + Box.front = 0; + Box.back = 1; + + hr = subsystem->dxgiDevice->lpVtbl->CreateTexture2D(subsystem->dxgiDevice, &tDesc, NULL, &(subsystem->dxgiStage)); + + if (FAILED(hr)) return -1; - status = DxgiOutput->lpVtbl->QueryInterface(DxgiOutput, &IID_IDXGIOutput1, (void**) &DxgiOutput1); - DxgiOutput->lpVtbl->Release(DxgiOutput); - DxgiOutput = NULL; + subsystem->dxgiDeviceContext->lpVtbl->CopySubresourceRegion(subsystem->dxgiDeviceContext, + (ID3D11Resource*) subsystem->dxgiStage, 0, 0, 0, 0, (ID3D11Resource*) subsystem->dxgiDesktopImage, 0, &Box); - if (FAILED(status)) + hr = subsystem->dxgiStage->lpVtbl->QueryInterface(subsystem->dxgiStage, + &IID_IDXGISurface, (void**) &(subsystem->dxgiSurface)); + + if (FAILED(hr)) return -1; - status = DxgiOutput1->lpVtbl->DuplicateOutput(DxgiOutput1, (IUnknown*) gDevice, &gOutputDuplication); - DxgiOutput1->lpVtbl->Release(DxgiOutput1); - DxgiOutput1 = NULL; + hr = subsystem->dxgiSurface->lpVtbl->Map(subsystem->dxgiSurface, &mappedRect, DXGI_MAP_READ); - if (FAILED(status)) + if (FAILED(hr)) return -1; + + *ppDstData = mappedRect.pBits; + *pnDstStep = mappedRect.Pitch; + + return 1; +} + +int win_shadow_dxgi_release_frame_data(winShadowSubsystem* subsystem) +{ + HRESULT hr; + + if (subsystem->dxgiSurface) + { + subsystem->dxgiSurface->lpVtbl->Unmap(subsystem->dxgiSurface); + subsystem->dxgiSurface->lpVtbl->Release(subsystem->dxgiSurface); + subsystem->dxgiSurface = NULL; + } + + if (subsystem->dxgiStage) + { + subsystem->dxgiStage->lpVtbl->Release(subsystem->dxgiStage); + subsystem->dxgiStage = NULL; + } + + hr = subsystem->dxgiOutputDuplication->lpVtbl->ReleaseFrame(subsystem->dxgiOutputDuplication); + + if (FAILED(hr)) + return -1; + + subsystem->pendingFrames = 0; + + return 1; +} + +int win_shadow_dxgi_get_next_frame(winShadowSubsystem* subsystem) +{ + UINT i = 0; + int status; + HRESULT hr = 0; + UINT DataBufferSize = 0; + BYTE* DataBuffer = NULL; + IDXGIResource* DesktopResource = NULL; + + if (subsystem->pendingFrames > 0) + { + win_shadow_dxgi_release_frame_data(subsystem); + } + + if (subsystem->dxgiDesktopImage) + { + subsystem->dxgiDesktopImage->lpVtbl->Release(subsystem->dxgiDesktopImage); + subsystem->dxgiDesktopImage = NULL; + } + + hr = subsystem->dxgiOutputDuplication->lpVtbl->AcquireNextFrame(subsystem->dxgiOutputDuplication, + 0, &(subsystem->dxgiFrameInfo), &DesktopResource); + + if (hr == DXGI_ERROR_WAIT_TIMEOUT) + return 0; + + if (FAILED(hr)) + { + if (hr == DXGI_ERROR_ACCESS_LOST) + { + if (subsystem->dxgiDesktopImage) + { + subsystem->dxgiDesktopImage->lpVtbl->Release(subsystem->dxgiDesktopImage); + subsystem->dxgiDesktopImage = NULL; + } + + if (subsystem->dxgiOutputDuplication) + { + subsystem->dxgiOutputDuplication->lpVtbl->Release(subsystem->dxgiOutputDuplication); + subsystem->dxgiOutputDuplication = NULL; + } + + status = win_shadow_dxgi_init_duplication(subsystem); + + if (status < 0) + return -1; + + return 0; + } + else + { + hr = subsystem->dxgiOutputDuplication->lpVtbl->ReleaseFrame(subsystem->dxgiOutputDuplication); + + if (FAILED(hr)) + return -1; + + return -1; + } + } + + hr = DesktopResource->lpVtbl->QueryInterface(DesktopResource, + &IID_ID3D11Texture2D, (void**) &(subsystem->dxgiDesktopImage)); + + DesktopResource->lpVtbl->Release(DesktopResource); + DesktopResource = NULL; + + if (FAILED(hr)) + return -1; + + subsystem->pendingFrames = subsystem->dxgiFrameInfo.AccumulatedFrames; + + if (subsystem->dxgiFrameInfo.AccumulatedFrames == 0) + { + hr = subsystem->dxgiOutputDuplication->lpVtbl->ReleaseFrame(subsystem->dxgiOutputDuplication); + + if (FAILED(hr)) + return -1; + } + + return 1; +} + +int win_shadow_dxgi_get_invalid_region(winShadowSubsystem* subsystem) +{ + UINT i; + HRESULT hr; + UINT BufSize; + RECT* pRect; + UINT numRects; + BYTE* DirtyRects; + rdpShadowServer* server; + rdpShadowScreen* screen; + UINT DataBufferSize = 0; + BYTE* DataBuffer = NULL; + RECTANGLE_16 invalidRect; + + server = subsystem->server; + screen = server->screen; + + if (subsystem->dxgiFrameInfo.AccumulatedFrames == 0) + return 0; + + if (subsystem->dxgiFrameInfo.TotalMetadataBufferSize) + { + if (subsystem->dxgiFrameInfo.TotalMetadataBufferSize > DataBufferSize) + { + if (DataBuffer) + { + free(DataBuffer); + DataBuffer = NULL; + } + + DataBuffer = (BYTE*) malloc(subsystem->dxgiFrameInfo.TotalMetadataBufferSize); + + if (!DataBuffer) + return -1; + + DataBufferSize = subsystem->dxgiFrameInfo.TotalMetadataBufferSize; + } + + BufSize = subsystem->dxgiFrameInfo.TotalMetadataBufferSize; + + hr = subsystem->dxgiOutputDuplication->lpVtbl->GetFrameMoveRects(subsystem->dxgiOutputDuplication, + BufSize, (DXGI_OUTDUPL_MOVE_RECT*) DataBuffer, &BufSize); + + if (FAILED(hr)) + return -1; + + DirtyRects = DataBuffer + BufSize; + BufSize = subsystem->dxgiFrameInfo.TotalMetadataBufferSize - BufSize; + + hr = subsystem->dxgiOutputDuplication->lpVtbl->GetFrameDirtyRects(subsystem->dxgiOutputDuplication, + BufSize, (RECT*) DirtyRects, &BufSize); + + if (FAILED(hr)) + return -1; + + numRects = BufSize / sizeof(RECT); + + pRect = (RECT*) DirtyRects; + + EnterCriticalSection(&(screen->lock)); + + for (i = 0; i < numRects; i++) + { + invalidRect.left = (UINT16) pRect->left; + invalidRect.top = (UINT16) pRect->top; + invalidRect.right = (UINT16) pRect->right; + invalidRect.bottom = (UINT16) pRect->bottom; + + region16_union_rect(&(screen->invalidRegion), &(screen->invalidRegion), &invalidRect); + + pRect++; + } + + LeaveCriticalSection(&(screen->lock)); + } return 1; } @@ -385,6 +696,51 @@ int win_shadow_invalidate_region(winShadowSubsystem* subsystem, int x, int y, in int win_shadow_surface_copy(winShadowSubsystem* subsystem) { + int x, y; + int width; + int height; + int status; + int nDstStep = 0; + BYTE* pDstData = NULL; + rdpShadowScreen* screen; + rdpShadowServer* server; + rdpShadowSurface* surface; + RECTANGLE_16 surfaceRect; + const RECTANGLE_16* extents; + + server = subsystem->server; + surface = server->surface; + screen = server->screen; + + surfaceRect.left = surface->x; + surfaceRect.top = surface->y; + surfaceRect.right = surface->x + surface->width; + surfaceRect.bottom = surface->y + surface->height; + + region16_clear(&(surface->invalidRegion)); + region16_intersect_rect(&(surface->invalidRegion), &(screen->invalidRegion), &surfaceRect); + + if (region16_is_empty(&(surface->invalidRegion))) + return 1; + + extents = region16_extents(&(surface->invalidRegion)); + + x = extents->left; + y = extents->top; + width = extents->right - extents->left; + height = extents->bottom - extents->top; + + printf("x: %d y: %d width: %d height: %d\n", x, y, width, height); + + status = win_shadow_dxgi_fetch_frame_data(subsystem, &pDstData, &nDstStep, x, y, width, height); + + if (status < 0) + return -1; + + freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, + surface->scanline, x - surface->x, y - surface->y, width, height, + pDstData, PIXEL_FORMAT_XRGB32, nDstStep, 0, 0); + return 1; } @@ -409,6 +765,8 @@ void* win_shadow_subsystem_thread(winShadowSubsystem* subsystem) dwInterval = 1000 / fps; frameTime = GetTickCount64() + dwInterval; + win_shadow_invalidate_region(subsystem, 0, 0, subsystem->width, subsystem->height); + while (1) { dwTimeout = INFINITE; @@ -425,7 +783,18 @@ void* win_shadow_subsystem_thread(winShadowSubsystem* subsystem) if ((status == WAIT_TIMEOUT) || (GetTickCount64() > frameTime)) { - win_shadow_invalidate_region(subsystem, 0, 0, subsystem->width, subsystem->height); +#ifdef WITH_DXGI_1_2 + int dxgi_status; + + dxgi_status = win_shadow_dxgi_get_next_frame(subsystem); + + if (subsystem->pendingFrames > 0) + { + dxgi_status = win_shadow_dxgi_get_invalid_region(subsystem); + + win_shadow_invalidate_region(subsystem, 0, 0, subsystem->width, subsystem->height); + } +#endif dwInterval = 1000 / fps; frameTime += dwInterval; @@ -490,6 +859,10 @@ int win_shadow_subsystem_uninit(winShadowSubsystem* subsystem) if (!subsystem) return -1; +#ifdef WITH_DXGI_1_2 + win_shadow_dxgi_uninit(subsystem); +#endif + return 1; } diff --git a/server/shadow/Win/win_shadow.h b/server/shadow/Win/win_shadow.h index 9da11e371..a84a8d540 100644 --- a/server/shadow/Win/win_shadow.h +++ b/server/shadow/Win/win_shadow.h @@ -33,6 +33,17 @@ typedef struct win_shadow_subsystem winShadowSubsystem; #define WITH_DXGI_1_2 1 #endif +#ifdef WITH_DXGI_1_2 + +#ifndef CINTERFACE +#define CINTERFACE +#endif + +#include +#include + +#endif + struct win_shadow_subsystem { RDP_SHADOW_SUBSYSTEM_COMMON(); @@ -40,6 +51,18 @@ struct win_shadow_subsystem int bpp; int width; int height; + +#ifdef WITH_DXGI_1_2 + UINT pendingFrames; + ID3D11Device* dxgiDevice; + IDXGISurface* dxgiSurface; + ID3D11Texture2D* dxgiStage; + D3D_FEATURE_LEVEL featureLevel; + ID3D11Texture2D* dxgiDesktopImage; + DXGI_OUTDUPL_FRAME_INFO dxgiFrameInfo; + ID3D11DeviceContext* dxgiDeviceContext; + IDXGIOutputDuplication* dxgiOutputDuplication; +#endif }; #ifdef __cplusplus From cfe722ec39a0528fd39491ed3886c6355bb56580 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 18 Jul 2014 00:20:55 -0400 Subject: [PATCH 029/170] shadow: improve DXGI frame info management --- server/shadow/Win/win_shadow.c | 216 ++++++++++++++++++--------------- server/shadow/Win/win_shadow.h | 3 + server/shadow/shadow_client.c | 3 + 3 files changed, 127 insertions(+), 95 deletions(-) diff --git a/server/shadow/Win/win_shadow.c b/server/shadow/Win/win_shadow.c index 68695fe80..199f48304 100644 --- a/server/shadow/Win/win_shadow.c +++ b/server/shadow/Win/win_shadow.c @@ -153,31 +153,34 @@ int win_shadow_dxgi_init_duplication(winShadowSubsystem* subsystem) { HRESULT hr; UINT dTop, i = 0; - DXGI_OUTPUT_DESC desc; IDXGIOutput* pOutput; + DXGI_OUTPUT_DESC outputDesc; + D3D11_TEXTURE2D_DESC textureDesc; IDXGIDevice* DxgiDevice = NULL; IDXGIAdapter* DxgiAdapter = NULL; IDXGIOutput* DxgiOutput = NULL; IDXGIOutput1* DxgiOutput1 = NULL; - hr = subsystem->dxgiDevice->lpVtbl->QueryInterface(subsystem->dxgiDevice, &IID_IDXGIDevice, (void**) &DxgiDevice); + hr = subsystem->dxgiDevice->lpVtbl->QueryInterface(subsystem->dxgiDevice, + &IID_IDXGIDevice, (void**) &DxgiDevice); if (FAILED(hr)) return -1; hr = DxgiDevice->lpVtbl->GetParent(DxgiDevice, &IID_IDXGIAdapter, (void**) &DxgiAdapter); + DxgiDevice->lpVtbl->Release(DxgiDevice); DxgiDevice = NULL; if (FAILED(hr)) return -1; - ZeroMemory(&desc, sizeof(desc)); pOutput = NULL; + ZeroMemory(&outputDesc, sizeof(outputDesc)); while (DxgiAdapter->lpVtbl->EnumOutputs(DxgiAdapter, i, &pOutput) != DXGI_ERROR_NOT_FOUND) { - DXGI_OUTPUT_DESC* pDesc = &desc; + DXGI_OUTPUT_DESC* pDesc = &outputDesc; hr = pOutput->lpVtbl->GetDesc(pOutput, pDesc); @@ -188,12 +191,13 @@ int win_shadow_dxgi_init_duplication(winShadowSubsystem* subsystem) dTop = i; pOutput->lpVtbl->Release(pOutput); - ++i; + i++; } dTop = 0; /* screen id */ hr = DxgiAdapter->lpVtbl->EnumOutputs(DxgiAdapter, dTop, &DxgiOutput); + DxgiAdapter->lpVtbl->Release(DxgiAdapter); DxgiAdapter = NULL; @@ -201,6 +205,7 @@ int win_shadow_dxgi_init_duplication(winShadowSubsystem* subsystem) return -1; hr = DxgiOutput->lpVtbl->QueryInterface(DxgiOutput, &IID_IDXGIOutput1, (void**) &DxgiOutput1); + DxgiOutput->lpVtbl->Release(DxgiOutput); DxgiOutput = NULL; @@ -213,6 +218,24 @@ int win_shadow_dxgi_init_duplication(winShadowSubsystem* subsystem) DxgiOutput1->lpVtbl->Release(DxgiOutput1); DxgiOutput1 = NULL; + if (FAILED(hr)) + return -1; + + textureDesc.Width = subsystem->width; + textureDesc.Height = subsystem->height; + textureDesc.MipLevels = 1; + textureDesc.ArraySize = 1; + textureDesc.Format = DXGI_FORMAT_B8G8R8A8_UNORM; + textureDesc.SampleDesc.Count = 1; + textureDesc.SampleDesc.Quality = 0; + textureDesc.Usage = D3D11_USAGE_STAGING; + textureDesc.BindFlags = 0; + textureDesc.CPUAccessFlags = D3D11_CPU_ACCESS_READ; + textureDesc.MiscFlags = 0; + + hr = subsystem->dxgiDevice->lpVtbl->CreateTexture2D(subsystem->dxgiDevice, + &textureDesc, NULL, &(subsystem->dxgiStage)); + if (FAILED(hr)) return -1; @@ -254,6 +277,12 @@ int win_shadow_dxgi_init(winShadowSubsystem* subsystem) int win_shadow_dxgi_uninit(winShadowSubsystem* subsystem) { + if (subsystem->dxgiStage) + { + subsystem->dxgiStage->lpVtbl->Release(subsystem->dxgiStage); + subsystem->dxgiStage = NULL; + } + if (subsystem->dxgiDesktopImage) { subsystem->dxgiDesktopImage->lpVtbl->Release(subsystem->dxgiDesktopImage); @@ -287,19 +316,6 @@ int win_shadow_dxgi_fetch_frame_data(winShadowSubsystem* subsystem, HRESULT hr; D3D11_BOX Box; DXGI_MAPPED_RECT mappedRect; - D3D11_TEXTURE2D_DESC tDesc; - - tDesc.Width = width; - tDesc.Height = height; - tDesc.MipLevels = 1; - tDesc.ArraySize = 1; - tDesc.Format = DXGI_FORMAT_B8G8R8A8_UNORM; - tDesc.SampleDesc.Count = 1; - tDesc.SampleDesc.Quality = 0; - tDesc.Usage = D3D11_USAGE_STAGING; - tDesc.BindFlags = 0; - tDesc.CPUAccessFlags = D3D11_CPU_ACCESS_READ; - tDesc.MiscFlags = 0; Box.top = x; Box.left = y; @@ -308,13 +324,8 @@ int win_shadow_dxgi_fetch_frame_data(winShadowSubsystem* subsystem, Box.front = 0; Box.back = 1; - hr = subsystem->dxgiDevice->lpVtbl->CreateTexture2D(subsystem->dxgiDevice, &tDesc, NULL, &(subsystem->dxgiStage)); - - if (FAILED(hr)) - return -1; - subsystem->dxgiDeviceContext->lpVtbl->CopySubresourceRegion(subsystem->dxgiDeviceContext, - (ID3D11Resource*) subsystem->dxgiStage, 0, 0, 0, 0, (ID3D11Resource*) subsystem->dxgiDesktopImage, 0, &Box); + (ID3D11Resource*) subsystem->dxgiStage, 0, x, y, 0, (ID3D11Resource*) subsystem->dxgiDesktopImage, 0, &Box); hr = subsystem->dxgiStage->lpVtbl->QueryInterface(subsystem->dxgiStage, &IID_IDXGISurface, (void**) &(subsystem->dxgiSurface)); @@ -344,19 +355,13 @@ int win_shadow_dxgi_release_frame_data(winShadowSubsystem* subsystem) subsystem->dxgiSurface = NULL; } - if (subsystem->dxgiStage) - { - subsystem->dxgiStage->lpVtbl->Release(subsystem->dxgiStage); - subsystem->dxgiStage = NULL; - } - hr = subsystem->dxgiOutputDuplication->lpVtbl->ReleaseFrame(subsystem->dxgiOutputDuplication); + subsystem->pendingFrames = 0; + if (FAILED(hr)) return -1; - subsystem->pendingFrames = 0; - return 1; } @@ -367,7 +372,6 @@ int win_shadow_dxgi_get_next_frame(winShadowSubsystem* subsystem) HRESULT hr = 0; UINT DataBufferSize = 0; BYTE* DataBuffer = NULL; - IDXGIResource* DesktopResource = NULL; if (subsystem->pendingFrames > 0) { @@ -381,7 +385,7 @@ int win_shadow_dxgi_get_next_frame(winShadowSubsystem* subsystem) } hr = subsystem->dxgiOutputDuplication->lpVtbl->AcquireNextFrame(subsystem->dxgiOutputDuplication, - 0, &(subsystem->dxgiFrameInfo), &DesktopResource); + 0, &(subsystem->dxgiFrameInfo), &(subsystem->dxgiResource)); if (hr == DXGI_ERROR_WAIT_TIMEOUT) return 0; @@ -420,18 +424,18 @@ int win_shadow_dxgi_get_next_frame(winShadowSubsystem* subsystem) } } - hr = DesktopResource->lpVtbl->QueryInterface(DesktopResource, + hr = subsystem->dxgiResource->lpVtbl->QueryInterface(subsystem->dxgiResource, &IID_ID3D11Texture2D, (void**) &(subsystem->dxgiDesktopImage)); - DesktopResource->lpVtbl->Release(DesktopResource); - DesktopResource = NULL; + subsystem->dxgiResource->lpVtbl->Release(subsystem->dxgiResource); + subsystem->dxgiResource = NULL; if (FAILED(hr)) return -1; subsystem->pendingFrames = subsystem->dxgiFrameInfo.AccumulatedFrames; - if (subsystem->dxgiFrameInfo.AccumulatedFrames == 0) + if (subsystem->pendingFrames == 0) { hr = subsystem->dxgiOutputDuplication->lpVtbl->ReleaseFrame(subsystem->dxgiOutputDuplication); @@ -446,15 +450,20 @@ int win_shadow_dxgi_get_invalid_region(winShadowSubsystem* subsystem) { UINT i; HRESULT hr; - UINT BufSize; RECT* pRect; - UINT numRects; - BYTE* DirtyRects; + UINT numDirtyRects; + UINT UsedBufferSize; rdpShadowServer* server; rdpShadowScreen* screen; - UINT DataBufferSize = 0; - BYTE* DataBuffer = NULL; RECTANGLE_16 invalidRect; + UINT MetadataBufferSize; + UINT DirtyRectsBufferSize; + UINT MoveRectsBufferSize; + UINT PointerShapeBufferSize; + RECT* pDirtyRectsBuffer; + void* pPointerShapeBuffer; + DXGI_OUTDUPL_MOVE_RECT* pMoveRectBuffer; + DXGI_OUTDUPL_POINTER_SHAPE_INFO PointerShapeInfo; server = subsystem->server; screen = server->screen; @@ -462,62 +471,78 @@ int win_shadow_dxgi_get_invalid_region(winShadowSubsystem* subsystem) if (subsystem->dxgiFrameInfo.AccumulatedFrames == 0) return 0; - if (subsystem->dxgiFrameInfo.TotalMetadataBufferSize) + if (subsystem->dxgiFrameInfo.TotalMetadataBufferSize == 0) + return 0; + + MetadataBufferSize = subsystem->dxgiFrameInfo.TotalMetadataBufferSize; + + if (MetadataBufferSize > subsystem->MetadataBufferSize) { - if (subsystem->dxgiFrameInfo.TotalMetadataBufferSize > DataBufferSize) - { - if (DataBuffer) - { - free(DataBuffer); - DataBuffer = NULL; - } - - DataBuffer = (BYTE*) malloc(subsystem->dxgiFrameInfo.TotalMetadataBufferSize); + subsystem->MetadataBuffer = (BYTE*) realloc(subsystem->MetadataBuffer, MetadataBufferSize); - if (!DataBuffer) - return -1; - - DataBufferSize = subsystem->dxgiFrameInfo.TotalMetadataBufferSize; - } - - BufSize = subsystem->dxgiFrameInfo.TotalMetadataBufferSize; - - hr = subsystem->dxgiOutputDuplication->lpVtbl->GetFrameMoveRects(subsystem->dxgiOutputDuplication, - BufSize, (DXGI_OUTDUPL_MOVE_RECT*) DataBuffer, &BufSize); - - if (FAILED(hr)) + if (!subsystem->MetadataBuffer) return -1; - DirtyRects = DataBuffer + BufSize; - BufSize = subsystem->dxgiFrameInfo.TotalMetadataBufferSize - BufSize; - - hr = subsystem->dxgiOutputDuplication->lpVtbl->GetFrameDirtyRects(subsystem->dxgiOutputDuplication, - BufSize, (RECT*) DirtyRects, &BufSize); - - if (FAILED(hr)) - return -1; - - numRects = BufSize / sizeof(RECT); - - pRect = (RECT*) DirtyRects; - - EnterCriticalSection(&(screen->lock)); - - for (i = 0; i < numRects; i++) - { - invalidRect.left = (UINT16) pRect->left; - invalidRect.top = (UINT16) pRect->top; - invalidRect.right = (UINT16) pRect->right; - invalidRect.bottom = (UINT16) pRect->bottom; - - region16_union_rect(&(screen->invalidRegion), &(screen->invalidRegion), &invalidRect); - - pRect++; - } - - LeaveCriticalSection(&(screen->lock)); + subsystem->MetadataBufferSize = MetadataBufferSize; } + /* GetFrameDirtyRects */ + + UsedBufferSize = 0; + + DirtyRectsBufferSize = MetadataBufferSize - UsedBufferSize; + pDirtyRectsBuffer = (RECT*) &(subsystem->MetadataBuffer[UsedBufferSize]); + + hr = subsystem->dxgiOutputDuplication->lpVtbl->GetFrameDirtyRects(subsystem->dxgiOutputDuplication, + DirtyRectsBufferSize, pDirtyRectsBuffer, &DirtyRectsBufferSize); + + if (FAILED(hr)) + return -1; + + /* GetFrameMoveRects */ + + UsedBufferSize += DirtyRectsBufferSize; + + MoveRectsBufferSize = MetadataBufferSize - UsedBufferSize; + pMoveRectBuffer = (DXGI_OUTDUPL_MOVE_RECT*) &(subsystem->MetadataBuffer[UsedBufferSize]); + + hr = subsystem->dxgiOutputDuplication->lpVtbl->GetFrameMoveRects(subsystem->dxgiOutputDuplication, + MoveRectsBufferSize, pMoveRectBuffer, &MoveRectsBufferSize); + + if (FAILED(hr)) + return -1; + + /* GetFramePointerShape */ + + UsedBufferSize += MoveRectsBufferSize; + + PointerShapeBufferSize = MetadataBufferSize - UsedBufferSize; + pPointerShapeBuffer = (void*) &(subsystem->MetadataBuffer[UsedBufferSize]); + + hr = subsystem->dxgiOutputDuplication->lpVtbl->GetFramePointerShape(subsystem->dxgiOutputDuplication, + PointerShapeBufferSize, pPointerShapeBuffer, &PointerShapeBufferSize, &PointerShapeInfo); + + if (FAILED(hr)) + return -1; + + EnterCriticalSection(&(screen->lock)); + + numDirtyRects = DirtyRectsBufferSize / sizeof(RECT); + + for (i = 0; i < numDirtyRects; i++) + { + pRect = &pDirtyRectsBuffer[i]; + + invalidRect.left = (UINT16) pRect->left; + invalidRect.top = (UINT16) pRect->top; + invalidRect.right = (UINT16) pRect->right; + invalidRect.bottom = (UINT16) pRect->bottom; + + region16_union_rect(&(screen->invalidRegion), &(screen->invalidRegion), &invalidRect); + } + + LeaveCriticalSection(&(screen->lock)); + return 1; } @@ -730,7 +755,8 @@ int win_shadow_surface_copy(winShadowSubsystem* subsystem) width = extents->right - extents->left; height = extents->bottom - extents->top; - printf("x: %d y: %d width: %d height: %d\n", x, y, width, height); + printf("x: %d y: %d width: %d height: %d right: %d bottom: %d\n", + x, y, width, height, x + width, y + height); status = win_shadow_dxgi_fetch_frame_data(subsystem, &pDstData, &nDstStep, x, y, width, height); @@ -739,7 +765,7 @@ int win_shadow_surface_copy(winShadowSubsystem* subsystem) freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, surface->scanline, x - surface->x, y - surface->y, width, height, - pDstData, PIXEL_FORMAT_XRGB32, nDstStep, 0, 0); + pDstData, PIXEL_FORMAT_XRGB32, nDstStep, x, y); return 1; } diff --git a/server/shadow/Win/win_shadow.h b/server/shadow/Win/win_shadow.h index a84a8d540..97f3ceccb 100644 --- a/server/shadow/Win/win_shadow.h +++ b/server/shadow/Win/win_shadow.h @@ -54,9 +54,12 @@ struct win_shadow_subsystem #ifdef WITH_DXGI_1_2 UINT pendingFrames; + BYTE* MetadataBuffer; + UINT MetadataBufferSize; ID3D11Device* dxgiDevice; IDXGISurface* dxgiSurface; ID3D11Texture2D* dxgiStage; + IDXGIResource* dxgiResource; D3D_FEATURE_LEVEL featureLevel; ID3D11Texture2D* dxgiDesktopImage; DXGI_OUTDUPL_FRAME_INFO dxgiFrameInfo; diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index 180b6be5c..372a5cac7 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -589,6 +589,9 @@ int shadow_client_send_surface_update(rdpShadowClient* client) nWidth = extents->right - extents->left; nHeight = extents->bottom - extents->top; + printf("shadow_client_send_surface_update: x: %d y: %d width: %d height: %d right: %d bottom: %d\n", + nXSrc, nYSrc, nWidth, nHeight, nXSrc + nWidth, nYSrc + nHeight); + if (settings->RemoteFxCodec || settings->NSCodec) { if (settings->RemoteFxCodec) From eae6efd23f3fb3d27acdd2d726e57ace4396e3f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 18 Jul 2014 00:33:55 -0400 Subject: [PATCH 030/170] shadow: make use of DXGI move rects --- server/shadow/Win/win_shadow.c | 62 ++++++++++++++++++++++------------ 1 file changed, 41 insertions(+), 21 deletions(-) diff --git a/server/shadow/Win/win_shadow.c b/server/shadow/Win/win_shadow.c index 199f48304..e49243cc6 100644 --- a/server/shadow/Win/win_shadow.c +++ b/server/shadow/Win/win_shadow.c @@ -450,18 +450,22 @@ int win_shadow_dxgi_get_invalid_region(winShadowSubsystem* subsystem) { UINT i; HRESULT hr; - RECT* pRect; + POINT* pSrcPt; + RECT* pDstRect; + RECT* pDirtyRect; + UINT numMoveRects; UINT numDirtyRects; UINT UsedBufferSize; rdpShadowServer* server; rdpShadowScreen* screen; RECTANGLE_16 invalidRect; UINT MetadataBufferSize; - UINT DirtyRectsBufferSize; UINT MoveRectsBufferSize; + UINT DirtyRectsBufferSize; UINT PointerShapeBufferSize; RECT* pDirtyRectsBuffer; void* pPointerShapeBuffer; + DXGI_OUTDUPL_MOVE_RECT* pMoveRect; DXGI_OUTDUPL_MOVE_RECT* pMoveRectBuffer; DXGI_OUTDUPL_POINTER_SHAPE_INFO PointerShapeInfo; @@ -486,22 +490,9 @@ int win_shadow_dxgi_get_invalid_region(winShadowSubsystem* subsystem) subsystem->MetadataBufferSize = MetadataBufferSize; } - /* GetFrameDirtyRects */ - - UsedBufferSize = 0; - - DirtyRectsBufferSize = MetadataBufferSize - UsedBufferSize; - pDirtyRectsBuffer = (RECT*) &(subsystem->MetadataBuffer[UsedBufferSize]); - - hr = subsystem->dxgiOutputDuplication->lpVtbl->GetFrameDirtyRects(subsystem->dxgiOutputDuplication, - DirtyRectsBufferSize, pDirtyRectsBuffer, &DirtyRectsBufferSize); - - if (FAILED(hr)) - return -1; - /* GetFrameMoveRects */ - UsedBufferSize += DirtyRectsBufferSize; + UsedBufferSize = 0; MoveRectsBufferSize = MetadataBufferSize - UsedBufferSize; pMoveRectBuffer = (DXGI_OUTDUPL_MOVE_RECT*) &(subsystem->MetadataBuffer[UsedBufferSize]); @@ -512,6 +503,19 @@ int win_shadow_dxgi_get_invalid_region(winShadowSubsystem* subsystem) if (FAILED(hr)) return -1; + /* GetFrameDirtyRects */ + + UsedBufferSize += MoveRectsBufferSize; + + DirtyRectsBufferSize = MetadataBufferSize - UsedBufferSize; + pDirtyRectsBuffer = (RECT*) &(subsystem->MetadataBuffer[UsedBufferSize]); + + hr = subsystem->dxgiOutputDuplication->lpVtbl->GetFrameDirtyRects(subsystem->dxgiOutputDuplication, + DirtyRectsBufferSize, pDirtyRectsBuffer, &DirtyRectsBufferSize); + + if (FAILED(hr)) + return -1; + /* GetFramePointerShape */ UsedBufferSize += MoveRectsBufferSize; @@ -527,16 +531,32 @@ int win_shadow_dxgi_get_invalid_region(winShadowSubsystem* subsystem) EnterCriticalSection(&(screen->lock)); + numMoveRects = MoveRectsBufferSize / sizeof(DXGI_OUTDUPL_MOVE_RECT); + + for (i = 0; i < numMoveRects; i++) + { + pMoveRect = &pMoveRectBuffer[i]; + pSrcPt = &(pMoveRect->SourcePoint); + pDstRect = &(pMoveRect->DestinationRect); + + invalidRect.left = (UINT16) pDstRect->left; + invalidRect.top = (UINT16) pDstRect->top; + invalidRect.right = (UINT16) pDstRect->right; + invalidRect.bottom = (UINT16) pDstRect->bottom; + + region16_union_rect(&(screen->invalidRegion), &(screen->invalidRegion), &invalidRect); + } + numDirtyRects = DirtyRectsBufferSize / sizeof(RECT); for (i = 0; i < numDirtyRects; i++) { - pRect = &pDirtyRectsBuffer[i]; + pDirtyRect = &pDirtyRectsBuffer[i]; - invalidRect.left = (UINT16) pRect->left; - invalidRect.top = (UINT16) pRect->top; - invalidRect.right = (UINT16) pRect->right; - invalidRect.bottom = (UINT16) pRect->bottom; + invalidRect.left = (UINT16) pDirtyRect->left; + invalidRect.top = (UINT16) pDirtyRect->top; + invalidRect.right = (UINT16) pDirtyRect->right; + invalidRect.bottom = (UINT16) pDirtyRect->bottom; region16_union_rect(&(screen->invalidRegion), &(screen->invalidRegion), &invalidRect); } From c45ddc783e18603b7a6b99df72d146e01615ab1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 18 Jul 2014 17:26:21 -0400 Subject: [PATCH 031/170] shadow: improve DXGI 1.2 error checking --- include/freerdp/server/shadow.h | 11 +- server/shadow/Win/win_shadow.c | 301 +++++++++++++++++++++++--------- server/shadow/Win/win_shadow.h | 2 + server/shadow/shadow_client.c | 140 +++++++-------- server/shadow/shadow_client.h | 1 + server/shadow/shadow_encomsp.c | 2 +- server/shadow/shadow_server.c | 123 +++++++++++-- 7 files changed, 410 insertions(+), 170 deletions(-) diff --git a/include/freerdp/server/shadow.h b/include/freerdp/server/shadow.h index c5b7e2036..17820b996 100644 --- a/include/freerdp/server/shadow.h +++ b/include/freerdp/server/shadow.h @@ -55,6 +55,7 @@ typedef int (*pfnShadowSubsystemStop)(rdpShadowSubsystem* subsystem); typedef void (*pfnShadowSubsystemFree)(rdpShadowSubsystem* subsystem); typedef int (*pfnShadowSurfaceCopy)(rdpShadowSubsystem* subsystem); +typedef int (*pfnShadowSurfaceUpdate)(rdpShadowSubsystem* subsystem, REGION16* region); typedef int (*pfnShadowSynchronizeEvent)(rdpShadowSubsystem* subsystem, UINT32 flags); typedef int (*pfnShadowKeyboardEvent)(rdpShadowSubsystem* subsystem, UINT16 flags, UINT16 code); @@ -72,8 +73,11 @@ struct rdp_shadow_client BOOL mayView; BOOL mayInteract; HANDLE StopEvent; + CRITICAL_SECTION lock; + REGION16 invalidRegion; rdpShadowServer* server; rdpShadowSurface* lobby; + rdpShadowEncoder* encoder; HANDLE vcm; EncomspServerContext* encomsp; @@ -85,15 +89,18 @@ struct rdp_shadow_server void* ext; HANDLE thread; HANDLE StopEvent; + wArrayList* clients; rdpShadowScreen* screen; rdpShadowSurface* surface; - rdpShadowEncoder* encoder; rdpShadowSubsystem* subsystem; DWORD port; BOOL mayView; BOOL mayInteract; char* ConfigPath; + char* CertificateFile; + char* PrivateKeyFile; + CRITICAL_SECTION lock; freerdp_listener* listener; pfnShadowCreateSubsystem CreateSubsystem; }; @@ -103,6 +110,7 @@ struct rdp_shadow_server int monitorCount; \ MONITOR_DEF monitors[16]; \ MONITOR_DEF virtualScreen; \ + REGION16 invalidRegion; \ \ pfnShadowSubsystemInit Init; \ pfnShadowSubsystemUninit Uninit; \ @@ -111,6 +119,7 @@ struct rdp_shadow_server pfnShadowSubsystemFree Free; \ \ pfnShadowSurfaceCopy SurfaceCopy; \ + pfnShadowSurfaceUpdate SurfaceUpdate; \ \ pfnShadowSynchronizeEvent SynchronizeEvent; \ pfnShadowKeyboardEvent KeyboardEvent; \ diff --git a/server/shadow/Win/win_shadow.c b/server/shadow/Win/win_shadow.c index e49243cc6..e9e746675 100644 --- a/server/shadow/Win/win_shadow.c +++ b/server/shadow/Win/win_shadow.c @@ -136,6 +136,87 @@ DEFINE_GUID(IID_IDXGIFactory2, 0x50c83a1c, 0xe072, 0x4c48, 0x87, 0xb0, 0x36, 0x3 DEFINE_GUID(IID_IDXGIAdapter2, 0x0AA1AE0A, 0xFA0E, 0x4B84, 0x86, 0x44, 0xE0, 0x5F, 0xF8, 0xE5, 0xAC, 0xB5); DEFINE_GUID(IID_IDXGIOutput1, 0x00cddea8, 0x939b, 0x4b83, 0xa3, 0x40, 0xa6, 0x85, 0x22, 0x66, 0x66, 0xcc); +const char* GetDxgiErrorString(HRESULT hr) +{ + switch (hr) + { + case DXGI_STATUS_OCCLUDED: + return "DXGI_STATUS_OCCLUDED"; + case DXGI_STATUS_CLIPPED: + return "DXGI_STATUS_CLIPPED"; + case DXGI_STATUS_NO_REDIRECTION: + return "DXGI_STATUS_NO_REDIRECTION"; + case DXGI_STATUS_NO_DESKTOP_ACCESS: + return "DXGI_STATUS_NO_DESKTOP_ACCESS"; + case DXGI_STATUS_GRAPHICS_VIDPN_SOURCE_IN_USE: + return "DXGI_STATUS_GRAPHICS_VIDPN_SOURCE_IN_USE"; + case DXGI_STATUS_MODE_CHANGED: + return "DXGI_STATUS_MODE_CHANGED"; + case DXGI_STATUS_MODE_CHANGE_IN_PROGRESS: + return "DXGI_STATUS_MODE_CHANGE_IN_PROGRESS"; + case DXGI_ERROR_INVALID_CALL: + return "DXGI_ERROR_INVALID_CALL"; + case DXGI_ERROR_NOT_FOUND: + return "DXGI_ERROR_NOT_FOUND"; + case DXGI_ERROR_MORE_DATA: + return "DXGI_ERROR_MORE_DATA"; + case DXGI_ERROR_UNSUPPORTED: + return "DXGI_ERROR_UNSUPPORTED"; + case DXGI_ERROR_DEVICE_REMOVED: + return "DXGI_ERROR_DEVICE_REMOVED"; + case DXGI_ERROR_DEVICE_HUNG: + return "DXGI_ERROR_DEVICE_HUNG"; + case DXGI_ERROR_DEVICE_RESET: + return "DXGI_ERROR_DEVICE_RESET"; + case DXGI_ERROR_WAS_STILL_DRAWING: + return "DXGI_ERROR_WAS_STILL_DRAWING"; + case DXGI_ERROR_FRAME_STATISTICS_DISJOINT: + return "DXGI_ERROR_FRAME_STATISTICS_DISJOINT"; + case DXGI_ERROR_GRAPHICS_VIDPN_SOURCE_IN_USE: + return "DXGI_ERROR_GRAPHICS_VIDPN_SOURCE_IN_USE"; + case DXGI_ERROR_DRIVER_INTERNAL_ERROR: + return "DXGI_ERROR_DRIVER_INTERNAL_ERROR"; + case DXGI_ERROR_NONEXCLUSIVE: + return "DXGI_ERROR_NONEXCLUSIVE"; + case DXGI_ERROR_NOT_CURRENTLY_AVAILABLE: + return "DXGI_ERROR_NOT_CURRENTLY_AVAILABLE"; + case DXGI_ERROR_REMOTE_CLIENT_DISCONNECTED: + return "DXGI_ERROR_REMOTE_CLIENT_DISCONNECTED"; + case DXGI_ERROR_REMOTE_OUTOFMEMORY: + return "DXGI_ERROR_REMOTE_OUTOFMEMORY"; + case DXGI_ERROR_ACCESS_LOST: + return "DXGI_ERROR_ACCESS_LOST"; + case DXGI_ERROR_WAIT_TIMEOUT: + return "DXGI_ERROR_WAIT_TIMEOUT"; + case DXGI_ERROR_SESSION_DISCONNECTED: + return "DXGI_ERROR_SESSION_DISCONNECTED"; + case DXGI_ERROR_RESTRICT_TO_OUTPUT_STALE: + return "DXGI_ERROR_RESTRICT_TO_OUTPUT_STALE"; + case DXGI_ERROR_CANNOT_PROTECT_CONTENT: + return "DXGI_ERROR_CANNOT_PROTECT_CONTENT"; + case DXGI_ERROR_ACCESS_DENIED: + return "DXGI_ERROR_ACCESS_DENIED"; + case DXGI_ERROR_NAME_ALREADY_EXISTS: + return "DXGI_ERROR_NAME_ALREADY_EXISTS"; + case DXGI_ERROR_SDK_COMPONENT_MISSING: + return "DXGI_ERROR_SDK_COMPONENT_MISSING"; + case DXGI_STATUS_UNOCCLUDED: + return "DXGI_STATUS_UNOCCLUDED"; + case DXGI_STATUS_DDA_WAS_STILL_DRAWING: + return "DXGI_STATUS_DDA_WAS_STILL_DRAWING"; + case DXGI_ERROR_MODE_CHANGE_IN_PROGRESS: + return "DXGI_ERROR_MODE_CHANGE_IN_PROGRESS"; + case DXGI_DDI_ERR_WASSTILLDRAWING: + return "DXGI_DDI_ERR_WASSTILLDRAWING"; + case DXGI_DDI_ERR_UNSUPPORTED: + return "DXGI_DDI_ERR_UNSUPPORTED"; + case DXGI_DDI_ERR_NONEXCLUSIVE: + return "DXGI_DDI_ERR_NONEXCLUSIVE"; + } + + return "DXGI_ERROR_UNKNOWN"; +} + static void win_shadow_d3d11_module_init() { if (d3d11_module) @@ -155,39 +236,55 @@ int win_shadow_dxgi_init_duplication(winShadowSubsystem* subsystem) UINT dTop, i = 0; IDXGIOutput* pOutput; DXGI_OUTPUT_DESC outputDesc; + DXGI_OUTPUT_DESC* pOutputDesc; D3D11_TEXTURE2D_DESC textureDesc; - IDXGIDevice* DxgiDevice = NULL; - IDXGIAdapter* DxgiAdapter = NULL; - IDXGIOutput* DxgiOutput = NULL; - IDXGIOutput1* DxgiOutput1 = NULL; + IDXGIDevice* dxgiDevice = NULL; + IDXGIAdapter* dxgiAdapter = NULL; + IDXGIOutput* dxgiOutput = NULL; + IDXGIOutput1* dxgiOutput1 = NULL; hr = subsystem->dxgiDevice->lpVtbl->QueryInterface(subsystem->dxgiDevice, - &IID_IDXGIDevice, (void**) &DxgiDevice); + &IID_IDXGIDevice, (void**) &dxgiDevice); if (FAILED(hr)) + { + fprintf(stderr, "ID3D11Device::QueryInterface(IDXGIDevice) failure: %s (0x%04X)\n", + GetDxgiErrorString(hr), hr); return -1; + } - hr = DxgiDevice->lpVtbl->GetParent(DxgiDevice, &IID_IDXGIAdapter, (void**) &DxgiAdapter); + hr = dxgiDevice->lpVtbl->GetParent(dxgiDevice, &IID_IDXGIAdapter, (void**) &dxgiAdapter); - DxgiDevice->lpVtbl->Release(DxgiDevice); - DxgiDevice = NULL; + if (dxgiDevice) + { + dxgiDevice->lpVtbl->Release(dxgiDevice); + dxgiDevice = NULL; + } if (FAILED(hr)) + { + fprintf(stderr, "IDXGIDevice::GetParent(IDXGIAdapter) failure: %s (0x%04X)\n", + GetDxgiErrorString(hr), hr); return -1; + } pOutput = NULL; ZeroMemory(&outputDesc, sizeof(outputDesc)); - while (DxgiAdapter->lpVtbl->EnumOutputs(DxgiAdapter, i, &pOutput) != DXGI_ERROR_NOT_FOUND) + while (dxgiAdapter->lpVtbl->EnumOutputs(dxgiAdapter, i, &pOutput) != DXGI_ERROR_NOT_FOUND) { - DXGI_OUTPUT_DESC* pDesc = &outputDesc; + pOutputDesc = &outputDesc; - hr = pOutput->lpVtbl->GetDesc(pOutput, pDesc); + hr = pOutput->lpVtbl->GetDesc(pOutput, pOutputDesc); if (FAILED(hr)) + { + fprintf(stderr, "IDXGIOutput::GetDesc failure: %s (0x%04X)\n", + GetDxgiErrorString(hr), hr); return -1; + } - if (pDesc->AttachedToDesktop) + if (pOutputDesc->AttachedToDesktop) dTop = i; pOutput->lpVtbl->Release(pOutput); @@ -196,30 +293,51 @@ int win_shadow_dxgi_init_duplication(winShadowSubsystem* subsystem) dTop = 0; /* screen id */ - hr = DxgiAdapter->lpVtbl->EnumOutputs(DxgiAdapter, dTop, &DxgiOutput); + hr = dxgiAdapter->lpVtbl->EnumOutputs(dxgiAdapter, dTop, &dxgiOutput); - DxgiAdapter->lpVtbl->Release(DxgiAdapter); - DxgiAdapter = NULL; + if (dxgiAdapter) + { + dxgiAdapter->lpVtbl->Release(dxgiAdapter); + dxgiAdapter = NULL; + } if (FAILED(hr)) + { + fprintf(stderr, "IDXGIAdapter::EnumOutputs failure: %s (0x%04X)\n", + GetDxgiErrorString(hr), hr); return -1; + } - hr = DxgiOutput->lpVtbl->QueryInterface(DxgiOutput, &IID_IDXGIOutput1, (void**) &DxgiOutput1); + hr = dxgiOutput->lpVtbl->QueryInterface(dxgiOutput, &IID_IDXGIOutput1, (void**) &dxgiOutput1); - DxgiOutput->lpVtbl->Release(DxgiOutput); - DxgiOutput = NULL; + if (dxgiOutput) + { + dxgiOutput->lpVtbl->Release(dxgiOutput); + dxgiOutput = NULL; + } if (FAILED(hr)) + { + fprintf(stderr, "IDXGIOutput::QueryInterface(IDXGIOutput1) failure: %s (0x%04X)\n", + GetDxgiErrorString(hr), hr); return -1; + } - hr = DxgiOutput1->lpVtbl->DuplicateOutput(DxgiOutput1, (IUnknown*) subsystem->dxgiDevice, + hr = dxgiOutput1->lpVtbl->DuplicateOutput(dxgiOutput1, (IUnknown*) subsystem->dxgiDevice, &(subsystem->dxgiOutputDuplication)); - DxgiOutput1->lpVtbl->Release(DxgiOutput1); - DxgiOutput1 = NULL; + if (dxgiOutput1) + { + dxgiOutput1->lpVtbl->Release(dxgiOutput1); + dxgiOutput1 = NULL; + } if (FAILED(hr)) + { + fprintf(stderr, "IDXGIOutput1::DuplicateOutput failure: %s (0x%04X)\n", + GetDxgiErrorString(hr), hr); return -1; + } textureDesc.Width = subsystem->width; textureDesc.Height = subsystem->height; @@ -237,7 +355,11 @@ int win_shadow_dxgi_init_duplication(winShadowSubsystem* subsystem) &textureDesc, NULL, &(subsystem->dxgiStage)); if (FAILED(hr)) + { + fprintf(stderr, "ID3D11Device::CreateTexture2D failure: %s (0x%04X)\n", + GetDxgiErrorString(hr), hr); return -1; + } return 1; } @@ -268,7 +390,10 @@ int win_shadow_dxgi_init(winShadowSubsystem* subsystem) } if (FAILED(hr)) + { + fprintf(stderr, "D3D11CreateDevice failure: 0x%04X\n", hr); return -1; + } win_shadow_dxgi_init_duplication(subsystem); @@ -317,6 +442,9 @@ int win_shadow_dxgi_fetch_frame_data(winShadowSubsystem* subsystem, D3D11_BOX Box; DXGI_MAPPED_RECT mappedRect; + if ((width * height) < 1) + return 1; + Box.top = x; Box.left = y; Box.right = x + width; @@ -331,12 +459,22 @@ int win_shadow_dxgi_fetch_frame_data(winShadowSubsystem* subsystem, &IID_IDXGISurface, (void**) &(subsystem->dxgiSurface)); if (FAILED(hr)) + { + fprintf(stderr, "ID3D11Texture2D::QueryInterface(IDXGISurface) failure: %s 0x%04X\n", + GetDxgiErrorString(hr), hr); return -1; + } hr = subsystem->dxgiSurface->lpVtbl->Map(subsystem->dxgiSurface, &mappedRect, DXGI_MAP_READ); if (FAILED(hr)) + { + fprintf(stderr, "IDXGISurface::Map failure: %s 0x%04X\n", + GetDxgiErrorString(hr), hr); return -1; + } + + subsystem->dxgiSurfaceMapped = TRUE; *ppDstData = mappedRect.pBits; *pnDstStep = mappedRect.Pitch; @@ -346,22 +484,26 @@ int win_shadow_dxgi_fetch_frame_data(winShadowSubsystem* subsystem, int win_shadow_dxgi_release_frame_data(winShadowSubsystem* subsystem) { - HRESULT hr; - if (subsystem->dxgiSurface) { - subsystem->dxgiSurface->lpVtbl->Unmap(subsystem->dxgiSurface); + if (subsystem->dxgiSurfaceMapped) + { + subsystem->dxgiSurface->lpVtbl->Unmap(subsystem->dxgiSurface); + subsystem->dxgiSurfaceMapped = FALSE; + } + subsystem->dxgiSurface->lpVtbl->Release(subsystem->dxgiSurface); subsystem->dxgiSurface = NULL; } - hr = subsystem->dxgiOutputDuplication->lpVtbl->ReleaseFrame(subsystem->dxgiOutputDuplication); + if (subsystem->dxgiFrameAcquired) + { + subsystem->dxgiOutputDuplication->lpVtbl->ReleaseFrame(subsystem->dxgiOutputDuplication); + subsystem->dxgiFrameAcquired = FALSE; + } subsystem->pendingFrames = 0; - if (FAILED(hr)) - return -1; - return 1; } @@ -373,7 +515,7 @@ int win_shadow_dxgi_get_next_frame(winShadowSubsystem* subsystem) UINT DataBufferSize = 0; BYTE* DataBuffer = NULL; - if (subsystem->pendingFrames > 0) + if (subsystem->dxgiFrameAcquired) { win_shadow_dxgi_release_frame_data(subsystem); } @@ -387,11 +529,20 @@ int win_shadow_dxgi_get_next_frame(winShadowSubsystem* subsystem) hr = subsystem->dxgiOutputDuplication->lpVtbl->AcquireNextFrame(subsystem->dxgiOutputDuplication, 0, &(subsystem->dxgiFrameInfo), &(subsystem->dxgiResource)); + if (SUCCEEDED(hr)) + { + subsystem->dxgiFrameAcquired = TRUE; + subsystem->pendingFrames = subsystem->dxgiFrameInfo.AccumulatedFrames; + } + if (hr == DXGI_ERROR_WAIT_TIMEOUT) return 0; if (FAILED(hr)) { + fprintf(stderr, "IDXGIOutputDuplication::AcquireNextFrame failure: %s (0x%04X)\n", + GetDxgiErrorString(hr), hr); + if (hr == DXGI_ERROR_ACCESS_LOST) { if (subsystem->dxgiDesktopImage) @@ -413,34 +564,24 @@ int win_shadow_dxgi_get_next_frame(winShadowSubsystem* subsystem) return 0; } - else - { - hr = subsystem->dxgiOutputDuplication->lpVtbl->ReleaseFrame(subsystem->dxgiOutputDuplication); - if (FAILED(hr)) - return -1; - - return -1; - } + return -1; } hr = subsystem->dxgiResource->lpVtbl->QueryInterface(subsystem->dxgiResource, &IID_ID3D11Texture2D, (void**) &(subsystem->dxgiDesktopImage)); - subsystem->dxgiResource->lpVtbl->Release(subsystem->dxgiResource); - subsystem->dxgiResource = NULL; + if (subsystem->dxgiResource) + { + subsystem->dxgiResource->lpVtbl->Release(subsystem->dxgiResource); + subsystem->dxgiResource = NULL; + } if (FAILED(hr)) - return -1; - - subsystem->pendingFrames = subsystem->dxgiFrameInfo.AccumulatedFrames; - - if (subsystem->pendingFrames == 0) { - hr = subsystem->dxgiOutputDuplication->lpVtbl->ReleaseFrame(subsystem->dxgiOutputDuplication); - - if (FAILED(hr)) - return -1; + fprintf(stderr, "IDXGIResource::QueryInterface(ID3D11Texture2D) failure: %s (0x%04X)\n", + GetDxgiErrorString(hr), hr); + return -1; } return 1; @@ -456,21 +597,13 @@ int win_shadow_dxgi_get_invalid_region(winShadowSubsystem* subsystem) UINT numMoveRects; UINT numDirtyRects; UINT UsedBufferSize; - rdpShadowServer* server; - rdpShadowScreen* screen; RECTANGLE_16 invalidRect; UINT MetadataBufferSize; UINT MoveRectsBufferSize; UINT DirtyRectsBufferSize; - UINT PointerShapeBufferSize; RECT* pDirtyRectsBuffer; - void* pPointerShapeBuffer; DXGI_OUTDUPL_MOVE_RECT* pMoveRect; DXGI_OUTDUPL_MOVE_RECT* pMoveRectBuffer; - DXGI_OUTDUPL_POINTER_SHAPE_INFO PointerShapeInfo; - - server = subsystem->server; - screen = server->screen; if (subsystem->dxgiFrameInfo.AccumulatedFrames == 0) return 0; @@ -501,7 +634,11 @@ int win_shadow_dxgi_get_invalid_region(winShadowSubsystem* subsystem) MoveRectsBufferSize, pMoveRectBuffer, &MoveRectsBufferSize); if (FAILED(hr)) + { + fprintf(stderr, "IDXGIOutputDuplication::GetFrameMoveRects failure: %s (0x%04X) Size: %d Total %d Used: %d\n", + GetDxgiErrorString(hr), hr, MoveRectsBufferSize, MetadataBufferSize, UsedBufferSize); return -1; + } /* GetFrameDirtyRects */ @@ -514,22 +651,11 @@ int win_shadow_dxgi_get_invalid_region(winShadowSubsystem* subsystem) DirtyRectsBufferSize, pDirtyRectsBuffer, &DirtyRectsBufferSize); if (FAILED(hr)) + { + fprintf(stderr, "IDXGIOutputDuplication::GetFrameDirtyRects failure: %s (0x%04X) Size: %d Total %d Used: %d\n", + GetDxgiErrorString(hr), hr, DirtyRectsBufferSize, MetadataBufferSize, UsedBufferSize); return -1; - - /* GetFramePointerShape */ - - UsedBufferSize += MoveRectsBufferSize; - - PointerShapeBufferSize = MetadataBufferSize - UsedBufferSize; - pPointerShapeBuffer = (void*) &(subsystem->MetadataBuffer[UsedBufferSize]); - - hr = subsystem->dxgiOutputDuplication->lpVtbl->GetFramePointerShape(subsystem->dxgiOutputDuplication, - PointerShapeBufferSize, pPointerShapeBuffer, &PointerShapeBufferSize, &PointerShapeInfo); - - if (FAILED(hr)) - return -1; - - EnterCriticalSection(&(screen->lock)); + } numMoveRects = MoveRectsBufferSize / sizeof(DXGI_OUTDUPL_MOVE_RECT); @@ -544,7 +670,7 @@ int win_shadow_dxgi_get_invalid_region(winShadowSubsystem* subsystem) invalidRect.right = (UINT16) pDstRect->right; invalidRect.bottom = (UINT16) pDstRect->bottom; - region16_union_rect(&(screen->invalidRegion), &(screen->invalidRegion), &invalidRect); + region16_union_rect(&(subsystem->invalidRegion), &(subsystem->invalidRegion), &invalidRect); } numDirtyRects = DirtyRectsBufferSize / sizeof(RECT); @@ -558,11 +684,9 @@ int win_shadow_dxgi_get_invalid_region(winShadowSubsystem* subsystem) invalidRect.right = (UINT16) pDirtyRect->right; invalidRect.bottom = (UINT16) pDirtyRect->bottom; - region16_union_rect(&(screen->invalidRegion), &(screen->invalidRegion), &invalidRect); + region16_union_rect(&(subsystem->invalidRegion), &(subsystem->invalidRegion), &invalidRect); } - LeaveCriticalSection(&(screen->lock)); - return 1; } @@ -747,7 +871,6 @@ int win_shadow_surface_copy(winShadowSubsystem* subsystem) int status; int nDstStep = 0; BYTE* pDstData = NULL; - rdpShadowScreen* screen; rdpShadowServer* server; rdpShadowSurface* surface; RECTANGLE_16 surfaceRect; @@ -755,7 +878,6 @@ int win_shadow_surface_copy(winShadowSubsystem* subsystem) server = subsystem->server; surface = server->surface; - screen = server->screen; surfaceRect.left = surface->x; surfaceRect.top = surface->y; @@ -763,7 +885,8 @@ int win_shadow_surface_copy(winShadowSubsystem* subsystem) surfaceRect.bottom = surface->y + surface->height; region16_clear(&(surface->invalidRegion)); - region16_intersect_rect(&(surface->invalidRegion), &(screen->invalidRegion), &surfaceRect); + region16_copy(&(surface->invalidRegion), &(subsystem->invalidRegion)); + region16_intersect_rect(&(surface->invalidRegion), &(surface->invalidRegion), &surfaceRect); if (region16_is_empty(&(surface->invalidRegion))) return 1; @@ -775,7 +898,7 @@ int win_shadow_surface_copy(winShadowSubsystem* subsystem) width = extents->right - extents->left; height = extents->bottom - extents->top; - printf("x: %d y: %d width: %d height: %d right: %d bottom: %d\n", + printf("SurfaceCopy x: %d y: %d width: %d height: %d right: %d bottom: %d\n", x, y, width, height, x + width, y + height); status = win_shadow_dxgi_fetch_frame_data(subsystem, &pDstData, &nDstStep, x, y, width, height); @@ -783,10 +906,14 @@ int win_shadow_surface_copy(winShadowSubsystem* subsystem) if (status < 0) return -1; + EnterCriticalSection(&(surface->lock)); + freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, surface->scanline, x - surface->x, y - surface->y, width, height, pDstData, PIXEL_FORMAT_XRGB32, nDstStep, x, y); + LeaveCriticalSection(&(surface->lock)); + return 1; } @@ -832,14 +959,16 @@ void* win_shadow_subsystem_thread(winShadowSubsystem* subsystem) #ifdef WITH_DXGI_1_2 int dxgi_status; + //win_shadow_invalidate_region(subsystem, 0, 0, subsystem->width, subsystem->height); + dxgi_status = win_shadow_dxgi_get_next_frame(subsystem); + dxgi_status = win_shadow_dxgi_get_invalid_region(subsystem); + win_shadow_surface_copy(subsystem); - if (subsystem->pendingFrames > 0) - { - dxgi_status = win_shadow_dxgi_get_invalid_region(subsystem); + if (subsystem->SurfaceUpdate) + subsystem->SurfaceUpdate((rdpShadowSubsystem*) subsystem, &(subsystem->invalidRegion)); - win_shadow_invalidate_region(subsystem, 0, 0, subsystem->width, subsystem->height); - } + region16_clear(&(subsystem->invalidRegion)); #endif dwInterval = 1000 / fps; @@ -941,6 +1070,8 @@ void win_shadow_subsystem_free(winShadowSubsystem* subsystem) win_shadow_subsystem_uninit(subsystem); + region16_uninit(&(subsystem->invalidRegion)); + free(subsystem); } @@ -955,6 +1086,8 @@ winShadowSubsystem* win_shadow_subsystem_new(rdpShadowServer* server) subsystem->server = server; + region16_init(&(subsystem->invalidRegion)); + subsystem->Init = (pfnShadowSubsystemInit) win_shadow_subsystem_init; subsystem->Uninit = (pfnShadowSubsystemInit) win_shadow_subsystem_uninit; subsystem->Start = (pfnShadowSubsystemStart) win_shadow_subsystem_start; diff --git a/server/shadow/Win/win_shadow.h b/server/shadow/Win/win_shadow.h index 97f3ceccb..65196c642 100644 --- a/server/shadow/Win/win_shadow.h +++ b/server/shadow/Win/win_shadow.h @@ -56,6 +56,8 @@ struct win_shadow_subsystem UINT pendingFrames; BYTE* MetadataBuffer; UINT MetadataBufferSize; + BOOL dxgiSurfaceMapped; + BOOL dxgiFrameAcquired; ID3D11Device* dxgiDevice; IDXGISurface* dxgiSurface; ID3D11Texture2D* dxgiStage; diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index 372a5cac7..3d80ec08f 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -27,69 +27,8 @@ #include #include -#include - #include "shadow.h" -static const char* makecert_argv[6] = -{ - "makecert", - "-rdp", - "-live", - "-silent", - "-y", "5" -}; - -static int makecert_argc = (sizeof(makecert_argv) / sizeof(char*)); - -int shadow_generate_certificate(rdpShadowClient* client) -{ - char* filepath; - rdpContext* context; - rdpSettings* settings; - MAKECERT_CONTEXT* makecert; - rdpShadowServer* server = client->server; - - context = (rdpContext*) client; - settings = context->settings; - - if (!PathFileExistsA(server->ConfigPath)) - CreateDirectoryA(server->ConfigPath, 0); - - filepath = GetCombinedPath(server->ConfigPath, "shadow"); - - if (!filepath) - return -1; - - if (!PathFileExistsA(filepath)) - CreateDirectoryA(filepath, 0); - - settings->CertificateFile = GetCombinedPath(filepath, "shadow.crt"); - settings->PrivateKeyFile = GetCombinedPath(filepath, "shadow.key"); - - if ((!PathFileExistsA(settings->CertificateFile)) || - (!PathFileExistsA(settings->PrivateKeyFile))) - { - makecert = makecert_context_new(); - - makecert_context_process(makecert, makecert_argc, (char**) makecert_argv); - - makecert_context_set_output_file_name(makecert, "shadow"); - - if (!PathFileExistsA(settings->CertificateFile)) - makecert_context_output_certificate_file(makecert, filepath); - - if (!PathFileExistsA(settings->PrivateKeyFile)) - makecert_context_output_private_key_file(makecert, filepath); - - makecert_context_free(makecert); - } - - free(filepath); - - return 1; -} - void shadow_client_context_new(freerdp_peer* peer, rdpShadowClient* client) { rdpSettings* settings; @@ -110,19 +49,36 @@ void shadow_client_context_new(freerdp_peer* peer, rdpShadowClient* client) settings->TlsSecurity = TRUE; settings->NlaSecurity = FALSE; - shadow_generate_certificate(client); + settings->CertificateFile = _strdup(server->CertificateFile); + settings->PrivateKeyFile = _strdup(server->PrivateKeyFile); client->inLobby = TRUE; client->mayView = server->mayView; client->mayInteract = server->mayInteract; + InitializeCriticalSectionAndSpinCount(&(client->lock), 4000); + + region16_init(&(client->invalidRegion)); + client->vcm = WTSOpenServerA((LPSTR) peer->context); client->StopEvent = CreateEvent(NULL, TRUE, FALSE, NULL); + + client->encoder = shadow_encoder_new(server); + + ArrayList_Add(server->clients, (void*) client); } void shadow_client_context_free(freerdp_peer* peer, rdpShadowClient* client) { + rdpShadowServer* server = client->server; + + ArrayList_Remove(server->clients, (void*) client); + + DeleteCriticalSection(&(client->lock)); + + region16_uninit(&(client->invalidRegion)); + WTSCloseServer((HANDLE) client->vcm); CloseHandle(client->StopEvent); @@ -132,6 +88,12 @@ void shadow_client_context_free(freerdp_peer* peer, rdpShadowClient* client) shadow_surface_free(client->lobby); client->lobby = NULL; } + + if (client->encoder) + { + shadow_encoder_free(client->encoder); + client->encoder = NULL; + } } BOOL shadow_client_capabilities(freerdp_peer* peer) @@ -189,7 +151,7 @@ BOOL shadow_client_activate(freerdp_peer* peer) client->activated = TRUE; client->inLobby = client->mayView ? FALSE : TRUE; - shadow_encoder_reset(client->server->encoder); + shadow_encoder_reset(client->encoder); return TRUE; } @@ -199,7 +161,7 @@ void shadow_client_surface_frame_acknowledge(rdpShadowClient* client, UINT32 fra SURFACE_FRAME* frame; wListDictionary* frameList; - frameList = client->server->encoder->frameList; + frameList = client->encoder->frameList; frame = (SURFACE_FRAME*) ListDictionary_GetItemValue(frameList, (void*) (size_t) frameId); if (frame) @@ -248,7 +210,7 @@ int shadow_client_send_surface_bits(rdpShadowClient* client, rdpShadowSurface* s settings = context->settings; server = client->server; - encoder = server->encoder; + encoder = client->encoder; pSrcData = surface->data; nSrcStep = surface->scanline; @@ -336,8 +298,6 @@ int shadow_client_send_surface_bits(rdpShadowClient* client, rdpShadowSurface* s free(messages); } - region16_clear(&(surface->invalidRegion)); - if (encoder->frameAck) { shadow_client_send_surface_frame_marker(client, SURFACECMD_FRAMEACTION_END, frameId); @@ -372,7 +332,7 @@ int shadow_client_send_bitmap_update(rdpShadowClient* client, rdpShadowSurface* settings = context->settings; server = client->server; - encoder = server->encoder; + encoder = client->encoder; pSrcData = surface->data; nSrcStep = surface->scanline; @@ -562,27 +522,39 @@ int shadow_client_send_surface_update(rdpShadowClient* client) rdpShadowServer* server; rdpShadowSurface* surface; rdpShadowEncoder* encoder; + REGION16 invalidRegion; RECTANGLE_16 surfaceRect; const RECTANGLE_16* extents; context = (rdpContext*) client; settings = context->settings; server = client->server; - encoder = server->encoder; + encoder = client->encoder; surface = client->inLobby ? client->lobby : server->surface; + EnterCriticalSection(&(client->lock)); + + region16_init(&invalidRegion); + region16_copy(&invalidRegion, &(client->invalidRegion)); + region16_clear(&(client->invalidRegion)); + + LeaveCriticalSection(&(client->lock)); + surfaceRect.left = surface->x; surfaceRect.top = surface->y; surfaceRect.right = surface->x + surface->width; surfaceRect.bottom = surface->y + surface->height; - region16_intersect_rect(&(surface->invalidRegion), &(surface->invalidRegion), &surfaceRect); + region16_intersect_rect(&invalidRegion, &invalidRegion, &surfaceRect); - if (region16_is_empty(&(surface->invalidRegion))) + if (region16_is_empty(&invalidRegion)) + { + region16_uninit(&invalidRegion); return 1; + } - extents = region16_extents(&(surface->invalidRegion)); + extents = region16_extents(&invalidRegion); nXSrc = extents->left - surface->x; nYSrc = extents->top - surface->y; @@ -608,9 +580,31 @@ int shadow_client_send_surface_update(rdpShadowClient* client) status = shadow_client_send_bitmap_update(client, surface, nXSrc, nYSrc, nWidth, nHeight); } + region16_uninit(&invalidRegion); + return status; } +int shadow_client_surface_update(rdpShadowClient* client, REGION16* region) +{ + int index; + int numRects = 0; + const RECTANGLE_16* rects; + + EnterCriticalSection(&(client->lock)); + + rects = region16_rects(region, &numRects); + + for (index = 0; index < numRects; index++) + { + region16_union_rect(&(client->invalidRegion), &(client->invalidRegion), &rects[index]); + } + + LeaveCriticalSection(&(client->lock)); + + return 1; +} + void* shadow_client_thread(rdpShadowClient* client) { int fps; @@ -633,7 +627,7 @@ void* shadow_client_thread(rdpShadowClient* client) server = client->server; screen = server->screen; - encoder = server->encoder; + encoder = client->encoder; subsystem = server->subsystem; peer = ((rdpContext*) client)->peer; diff --git a/server/shadow/shadow_client.h b/server/shadow/shadow_client.h index f80f047f6..d067554f0 100644 --- a/server/shadow/shadow_client.h +++ b/server/shadow/shadow_client.h @@ -25,6 +25,7 @@ extern "C" { #endif +int shadow_client_surface_update(rdpShadowClient* client, REGION16* region); void shadow_client_accepted(freerdp_listener* instance, freerdp_peer* client); #ifdef __cplusplus diff --git a/server/shadow/shadow_encomsp.c b/server/shadow/shadow_encomsp.c index 3bca7e7d6..f0b1d48e3 100644 --- a/server/shadow/shadow_encomsp.c +++ b/server/shadow/shadow_encomsp.c @@ -83,7 +83,7 @@ static int encomsp_change_participant_control_level(EncomspServerContext* contex if (inLobby != client->inLobby) { - shadow_encoder_reset(client->server->encoder); + shadow_encoder_reset(client->encoder); client->inLobby = inLobby; } diff --git a/server/shadow/shadow_server.c b/server/shadow/shadow_server.c index 945189c34..d4faaa6b6 100644 --- a/server/shadow/shadow_server.c +++ b/server/shadow/shadow_server.c @@ -27,6 +27,8 @@ #include +#include + #ifndef _WIN32 #include #include @@ -226,6 +228,32 @@ int shadow_server_parse_command_line(rdpShadowServer* server, int argc, char** a return status; } +int shadow_server_surface_update(rdpShadowSubsystem* subsystem, REGION16* region) +{ + int index; + int count; + wArrayList* clients; + rdpShadowServer* server; + rdpShadowClient* client; + + server = subsystem->server; + clients = server->clients; + + ArrayList_Lock(clients); + + count = ArrayList_Count(clients); + + for (index = 0; index < count; index++) + { + client = ArrayList_GetItem(clients, index); + shadow_client_surface_update(client, region); + } + + ArrayList_Unlock(clients); + + return 1; +} + void* shadow_server_thread(rdpShadowServer* server) { DWORD status; @@ -317,6 +345,59 @@ int shadow_server_stop(rdpShadowServer* server) return 0; } +int shadow_server_init_certificate(rdpShadowServer* server) +{ + char* filepath; + MAKECERT_CONTEXT* makecert; + + const char* makecert_argv[6] = + { + "makecert", + "-rdp", + "-live", + "-silent", + "-y", "5" + }; + + int makecert_argc = (sizeof(makecert_argv) / sizeof(char*)); + + if (!PathFileExistsA(server->ConfigPath)) + CreateDirectoryA(server->ConfigPath, 0); + + filepath = GetCombinedPath(server->ConfigPath, "shadow"); + + if (!filepath) + return -1; + + if (!PathFileExistsA(filepath)) + CreateDirectoryA(filepath, 0); + + server->CertificateFile = GetCombinedPath(filepath, "shadow.crt"); + server->PrivateKeyFile = GetCombinedPath(filepath, "shadow.key"); + + if ((!PathFileExistsA(server->CertificateFile)) || + (!PathFileExistsA(server->PrivateKeyFile))) + { + makecert = makecert_context_new(); + + makecert_context_process(makecert, makecert_argc, (char**) makecert_argv); + + makecert_context_set_output_file_name(makecert, "shadow"); + + if (!PathFileExistsA(server->CertificateFile)) + makecert_context_output_certificate_file(makecert, filepath); + + if (!PathFileExistsA(server->PrivateKeyFile)) + makecert_context_output_private_key_file(makecert, filepath); + + makecert_context_free(makecert); + } + + free(filepath); + + return 1; +} + int shadow_server_init(rdpShadowServer* server) { int status; @@ -325,6 +406,11 @@ int shadow_server_init(rdpShadowServer* server) server->StopEvent = CreateEvent(NULL, TRUE, FALSE, NULL); + status = shadow_server_init_certificate(server); + + if (status < 0) + return -1; + server->listener = freerdp_listener_new(); if (!server->listener) @@ -351,6 +437,8 @@ int shadow_server_init(rdpShadowServer* server) if (!server->subsystem) return -1; + server->subsystem->SurfaceUpdate = shadow_server_surface_update; + if (server->subsystem->Init) { status = server->subsystem->Init(server->subsystem); @@ -364,11 +452,6 @@ int shadow_server_init(rdpShadowServer* server) if (!server->screen) return -1; - server->encoder = shadow_encoder_new(server); - - if (!server->encoder) - return -1; - return 1; } @@ -382,18 +465,24 @@ int shadow_server_uninit(rdpShadowServer* server) server->listener = NULL; } - if (server->encoder) - { - shadow_encoder_free(server->encoder); - server->encoder = NULL; - } - if (server->subsystem) { server->subsystem->Free(server->subsystem); server->subsystem = NULL; } + if (server->CertificateFile) + { + free(server->CertificateFile); + server->CertificateFile = NULL; + } + + if (server->PrivateKeyFile) + { + free(server->PrivateKeyFile); + server->PrivateKeyFile = NULL; + } + return 1; } @@ -417,6 +506,10 @@ rdpShadowServer* shadow_server_new() if (!server->ConfigPath) server->ConfigPath = GetKnownSubPath(KNOWN_PATH_XDG_CONFIG_HOME, "freerdp"); + InitializeCriticalSectionAndSpinCount(&(server->lock), 4000); + + server->clients = ArrayList_New(TRUE); + return server; } @@ -425,6 +518,14 @@ void shadow_server_free(rdpShadowServer* server) if (!server) return; + DeleteCriticalSection(&(server->lock)); + + if (server->clients) + { + ArrayList_Free(server->clients); + server->clients = NULL; + } + shadow_server_uninit(server); free(server); From 53b86829b07ce86a33d2389a0d0463e1a2b91499 Mon Sep 17 00:00:00 2001 From: Nicholas Twerdochlib Date: Wed, 23 Jul 2014 09:35:42 -0400 Subject: [PATCH 032/170] clipboard: Update to file clipping to remove use of old style clipboard chain. --- client/Windows/wf_cliprdr.c | 36 ++++++++++++++---------------------- client/Windows/wf_cliprdr.h | 1 - 2 files changed, 14 insertions(+), 23 deletions(-) diff --git a/client/Windows/wf_cliprdr.c b/client/Windows/wf_cliprdr.c index d319c83de..5a464f53f 100644 --- a/client/Windows/wf_cliprdr.c +++ b/client/Windows/wf_cliprdr.c @@ -20,7 +20,6 @@ #ifdef HAVE_CONFIG_H #include "config.h" #endif - #include #include @@ -32,6 +31,9 @@ #include "wf_cliprdr.h" +extern BOOL WINAPI AddClipboardFormatListener(_In_ HWND hwnd); +extern BOOL WINAPI RemoveClipboardFormatListener(_In_ HWND hwnd); + #define WM_CLIPRDR_MESSAGE (WM_USER + 156) #define OLE_SETCLIPBOARD 1 @@ -367,32 +369,21 @@ static LRESULT CALLBACK cliprdr_proc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM switch (Msg) { case WM_CREATE: + DEBUG_CLIPRDR("info: %s - WM_CREATE", __FUNCTION__); cliprdr = (cliprdrContext *)((CREATESTRUCT *)lParam)->lpCreateParams; - cliprdr->hwndNextViewer = SetClipboardViewer(hWnd); - - if (cliprdr->hwndNextViewer == NULL && GetLastError() != 0) - { - DEBUG_CLIPRDR("error: SetClipboardViewer failed with 0x%0x.", GetLastError()); + if (!AddClipboardFormatListener(hWnd)) { + DEBUG_CLIPRDR("error: AddClipboardFormatListener failed with %#x.", GetLastError()); } cliprdr->hwndClipboard = hWnd; break; case WM_CLOSE: - ChangeClipboardChain(hWnd, cliprdr->hwndNextViewer); + DEBUG_CLIPRDR("info: %s - WM_CLOSE", __FUNCTION__); + RemoveClipboardFormatListener(hWnd); break; - case WM_CHANGECBCHAIN: - if (cliprdr->hwndNextViewer == (HWND)wParam) - { - cliprdr->hwndNextViewer = (HWND)lParam; - } - else if (cliprdr->hwndNextViewer != NULL) - { - SendMessage(cliprdr->hwndNextViewer, Msg, wParam, lParam); - } - break; - - case WM_DRAWCLIPBOARD: + case WM_CLIPBOARDUPDATE: + DEBUG_CLIPRDR("info: %s - WM_CLIPBOARDUPDATE", __FUNCTION__); if (cliprdr->channel_initialized) { if ((GetClipboardOwner() != cliprdr->hwndClipboard) && (S_FALSE == OleIsCurrentClipboard(cliprdr->data_obj))) @@ -404,11 +395,10 @@ static LRESULT CALLBACK cliprdr_proc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM cliprdr_send_format_list(cliprdr); } } - if (cliprdr->hwndNextViewer != NULL && cliprdr->hwndNextViewer != hWnd) - SendMessage(cliprdr->hwndNextViewer, Msg, wParam, lParam); break; case WM_RENDERALLFORMATS: + DEBUG_CLIPRDR("info: %s - WM_RENDERALLFORMATS", __FUNCTION__); /* discard all contexts in clipboard */ if (!OpenClipboard(cliprdr->hwndClipboard)) { @@ -420,6 +410,7 @@ static LRESULT CALLBACK cliprdr_proc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM break; case WM_RENDERFORMAT: + DEBUG_CLIPRDR("info: %s - WM_RENDERFORMAT", __FUNCTION__); if (cliprdr_send_data_request(cliprdr, (UINT32)wParam) != 0) { DEBUG_CLIPRDR("error: cliprdr_send_data_request failed."); @@ -435,9 +426,11 @@ static LRESULT CALLBACK cliprdr_proc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM break; case WM_CLIPRDR_MESSAGE: + DEBUG_CLIPRDR("info: %s - WM_CLIPRDR_MESSAGE", __FUNCTION__); switch (wParam) { case OLE_SETCLIPBOARD: + DEBUG_CLIPRDR("info: %s - OLE_SETCLIPBOARD", __FUNCTION__); if (wf_create_file_obj(cliprdr, &cliprdr->data_obj)) if (OleSetClipboard(cliprdr->data_obj) != S_OK) wf_destroy_file_obj(cliprdr->data_obj); @@ -448,7 +441,6 @@ static LRESULT CALLBACK cliprdr_proc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM } break; - case WM_CLIPBOARDUPDATE: case WM_DESTROYCLIPBOARD: case WM_ASKCBFORMATNAME: case WM_HSCROLLCLIPBOARD: diff --git a/client/Windows/wf_cliprdr.h b/client/Windows/wf_cliprdr.h index c286bcce1..e967b02e3 100644 --- a/client/Windows/wf_cliprdr.h +++ b/client/Windows/wf_cliprdr.h @@ -53,7 +53,6 @@ struct cliprdr_context { BOOL channel_initialized; HWND hwndClipboard; - HWND hwndNextViewer; HANDLE cliprdr_thread; HANDLE hmem; From 15ddbb088191d6bd002e7bc5e7b39c1bd3022fe5 Mon Sep 17 00:00:00 2001 From: Nicholas Twerdochlib Date: Wed, 23 Jul 2014 09:37:24 -0400 Subject: [PATCH 033/170] clipboard: Update disabling call of cliprdr_send_tempdir() since there is now guarantee the TEMP path on the client will be accessible by the server. Perhaps this should be a command line option? --- client/Windows/wf_cliprdr.c | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/client/Windows/wf_cliprdr.c b/client/Windows/wf_cliprdr.c index 5a464f53f..f27bf10d7 100644 --- a/client/Windows/wf_cliprdr.c +++ b/client/Windows/wf_cliprdr.c @@ -131,7 +131,14 @@ static void clear_format_map(cliprdrContext *cliprdr) cliprdr->map_size= 0; } - +/* +2.2.2.3 Client Temporary Directory PDU (CLIPRDR_TEMP_DIRECTORY) + The Temporary Directory PDU is an optional PDU sent from the client to the server. + This PDU informs the server of a location on the client file system that MUST be + used to deposit files being copied to the client. The location MUST be accessible + by the server to be useful. Section 3.1.1.3 specifies how direct file access + impacts file copy and paste. +*/ int cliprdr_send_tempdir(cliprdrContext *cliprdr) { RDP_CB_TEMPDIR_EVENT *cliprdr_event; @@ -142,6 +149,9 @@ int cliprdr_send_tempdir(cliprdrContext *cliprdr) if (!cliprdr_event) return -1; + /* Sending the TEMP path would only be valid iff the path is accessible from the server. + This should perhaps to change to a command line parameter value + */ GetEnvironmentVariableW(L"TEMP", (LPWSTR)cliprdr_event->dirname, 260); return freerdp_channels_send_event(cliprdr->channels, (wMessage *)cliprdr_event); @@ -635,9 +645,12 @@ static void wf_cliprdr_process_cb_clip_caps_event(wfContext *wfc, RDP_CB_CLIP_CA static void wf_cliprdr_process_cb_monitor_ready_event(wfContext *wfc, RDP_CB_MONITOR_READY_EVENT *ready_event) { cliprdrContext *cliprdr = (cliprdrContext *)wfc->cliprdr_context; - +#if 0 + /*Disabled since the current function only sends the temp directory which is not + guaranteed to be accessible to the server + */ cliprdr_send_tempdir(cliprdr); - +#endif cliprdr->channel_initialized = TRUE; cliprdr_send_format_list(wfc->cliprdr_context); From 3794720455e40339bd35e76f0db5c29d629521d2 Mon Sep 17 00:00:00 2001 From: Daryl Poe Date: Wed, 4 Jun 2014 15:41:17 -0600 Subject: [PATCH 034/170] correct Pause key sequence (cherry picked from commit 46a00b5c9e23163600b83b2bafa7e20eda387393) --- client/X11/xf_keyboard.c | 10 +++---- include/freerdp/input.h | 5 +++- libfreerdp/core/fastpath.h | 3 +- libfreerdp/core/input.c | 61 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 72 insertions(+), 7 deletions(-) diff --git a/client/X11/xf_keyboard.c b/client/X11/xf_keyboard.c index 175e83643..cda758d49 100644 --- a/client/X11/xf_keyboard.c +++ b/client/X11/xf_keyboard.c @@ -196,13 +196,13 @@ void xf_keyboard_send_key(xfContext* xfc, BOOL down, BYTE keycode) else if (rdp_scancode == RDP_SCANCODE_PAUSE && !xf_keyboard_key_pressed(xfc, XK_Control_L) && !xf_keyboard_key_pressed(xfc, XK_Control_R)) { - /* Pause without Ctrl has to be sent as Ctrl + NumLock. */ + /* Pause without Ctrl has to be sent as a series of keycodes + * in a single input PDU. Pause only happens on "press"; + * no code is sent on "release". + */ if (down) { - freerdp_input_send_keyboard_event_ex(input, TRUE, RDP_SCANCODE_LCONTROL); - freerdp_input_send_keyboard_event_ex(input, TRUE, RDP_SCANCODE_NUMLOCK); - freerdp_input_send_keyboard_event_ex(input, FALSE, RDP_SCANCODE_LCONTROL); - freerdp_input_send_keyboard_event_ex(input, FALSE, RDP_SCANCODE_NUMLOCK); + freerdp_input_send_keyboard_pause_event(input); } } else diff --git a/include/freerdp/input.h b/include/freerdp/input.h index 87324f0ab..0ee3ee188 100644 --- a/include/freerdp/input.h +++ b/include/freerdp/input.h @@ -64,6 +64,7 @@ typedef struct rdp_input_proxy rdpInputProxy; typedef void (*pSynchronizeEvent)(rdpInput* input, UINT32 flags); typedef void (*pKeyboardEvent)(rdpInput* input, UINT16 flags, UINT16 code); +typedef void (*pKeyboardPauseEvent)(rdpInput* input); typedef void (*pUnicodeKeyboardEvent)(rdpInput* input, UINT16 flags, UINT16 code); typedef void (*pMouseEvent)(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y); typedef void (*pExtendedMouseEvent)(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y); @@ -81,8 +82,9 @@ struct rdp_input pMouseEvent MouseEvent; /* 19 */ pExtendedMouseEvent ExtendedMouseEvent; /* 20 */ pFocusInEvent FocusInEvent; /*21 */ + pKeyboardPauseEvent KeyboardPauseEvent; /* 22 */ - UINT32 paddingB[32 - 22]; /* 22 */ + UINT32 paddingB[32 - 23]; /* 23 */ /* Internal */ @@ -98,6 +100,7 @@ extern "C" { FREERDP_API void freerdp_input_send_synchronize_event(rdpInput* input, UINT32 flags); FREERDP_API void freerdp_input_send_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code); FREERDP_API void freerdp_input_send_keyboard_event_ex(rdpInput* input, BOOL down, UINT32 rdp_scancode); +FREERDP_API void freerdp_input_send_keyboard_pause_event(rdpInput* input); FREERDP_API void freerdp_input_send_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code); FREERDP_API void freerdp_input_send_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y); FREERDP_API void freerdp_input_send_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y); diff --git a/libfreerdp/core/fastpath.h b/libfreerdp/core/fastpath.h index 7f1c59cab..05e96422f 100644 --- a/libfreerdp/core/fastpath.h +++ b/libfreerdp/core/fastpath.h @@ -108,7 +108,8 @@ enum FASTPATH_INPUT_EVENT_CODE enum FASTPATH_INPUT_KBDFLAGS { FASTPATH_INPUT_KBDFLAGS_RELEASE = 0x01, - FASTPATH_INPUT_KBDFLAGS_EXTENDED = 0x02 + FASTPATH_INPUT_KBDFLAGS_EXTENDED = 0x02, + FASTPATH_INPUT_KBDFLAGS_PREFIX_E1 = 0x04 /* for pause sequence */ }; struct _FASTPATH_UPDATE_PDU_HEADER diff --git a/libfreerdp/core/input.c b/libfreerdp/core/input.c index a929b0d96..c7a880f8b 100644 --- a/libfreerdp/core/input.c +++ b/libfreerdp/core/input.c @@ -166,6 +166,27 @@ void input_send_focus_in_event(rdpInput* input, UINT16 toggleStates, UINT16 x, U input_send_mouse_event(input, PTR_FLAGS_MOVE, x, y); } +static void input_send_keyboard_pause_event(rdpInput* input) +{ + /* In ancient days, pause-down without control sent E1 1D 45 E1 9D C5, + * and pause-up sent nothing. However, reverse engineering mstsc shows + * it sending the following sequence: + */ + + /* Control down (0x1D) */ + input_send_keyboard_event(input, 0, + RDP_SCANCODE_CODE(RDP_SCANCODE_LCONTROL)); + /* Numlock down (0x45) */ + input_send_keyboard_event(input, 0, + RDP_SCANCODE_CODE(RDP_SCANCODE_NUMLOCK)); + /* Control up (0x1D) */ + input_send_keyboard_event(input, KBD_FLAGS_RELEASE, + RDP_SCANCODE_CODE(RDP_SCANCODE_LCONTROL)); + /* Numlock up (0x45) */ + input_send_keyboard_event(input, KBD_FLAGS_RELEASE, + RDP_SCANCODE_CODE(RDP_SCANCODE_NUMLOCK)); +} + void input_send_fastpath_synchronize_event(rdpInput* input, UINT32 flags) { wStream* s; @@ -250,6 +271,39 @@ void input_send_fastpath_focus_in_event(rdpInput* input, UINT16 toggleStates, UI fastpath_send_multiple_input_pdu(rdp->fastpath, s, 4); } +static void input_send_fastpath_keyboard_pause_event(rdpInput* input) +{ + /* In ancient days, pause-down without control sent E1 1D 45 E1 9D C5, + * and pause-up sent nothing. However, reverse engineering mstsc shows + * it sending the following sequence: + */ + wStream* s; + rdpRdp* rdp = input->context->rdp; + const BYTE keyDownEvent = FASTPATH_INPUT_EVENT_SCANCODE << 5; + const BYTE keyUpEvent = (FASTPATH_INPUT_EVENT_SCANCODE << 5) + | FASTPATH_INPUT_KBDFLAGS_RELEASE; + + s = fastpath_input_pdu_init_header(rdp->fastpath); + + /* Control down (0x1D) */ + Stream_Write_UINT8(s, keyDownEvent | FASTPATH_INPUT_KBDFLAGS_PREFIX_E1); + Stream_Write_UINT8(s, RDP_SCANCODE_CODE(RDP_SCANCODE_LCONTROL)); + + /* Numlock down (0x45) */ + Stream_Write_UINT8(s, keyDownEvent); + Stream_Write_UINT8(s, RDP_SCANCODE_CODE(RDP_SCANCODE_NUMLOCK)); + + /* Control up (0x1D) */ + Stream_Write_UINT8(s, keyUpEvent | FASTPATH_INPUT_KBDFLAGS_PREFIX_E1); + Stream_Write_UINT8(s, RDP_SCANCODE_CODE(RDP_SCANCODE_LCONTROL)); + + /* Numlock down (0x45) */ + Stream_Write_UINT8(s, keyUpEvent); + Stream_Write_UINT8(s, RDP_SCANCODE_CODE(RDP_SCANCODE_NUMLOCK)); + + fastpath_send_multiple_input_pdu(rdp->fastpath, s, 4); +} + static BOOL input_recv_sync_event(rdpInput* input, wStream* s) { UINT32 toggleFlags; @@ -420,6 +474,7 @@ void input_register_client_callbacks(rdpInput* input) { input->SynchronizeEvent = input_send_fastpath_synchronize_event; input->KeyboardEvent = input_send_fastpath_keyboard_event; + input->KeyboardPauseEvent = input_send_fastpath_keyboard_pause_event; input->UnicodeKeyboardEvent = input_send_fastpath_unicode_keyboard_event; input->MouseEvent = input_send_fastpath_mouse_event; input->ExtendedMouseEvent = input_send_fastpath_extended_mouse_event; @@ -429,6 +484,7 @@ void input_register_client_callbacks(rdpInput* input) { input->SynchronizeEvent = input_send_synchronize_event; input->KeyboardEvent = input_send_keyboard_event; + input->KeyboardPauseEvent = input_send_keyboard_pause_event; input->UnicodeKeyboardEvent = input_send_unicode_keyboard_event; input->MouseEvent = input_send_mouse_event; input->ExtendedMouseEvent = input_send_extended_mouse_event; @@ -481,6 +537,11 @@ void freerdp_input_send_focus_in_event(rdpInput* input, UINT16 toggleStates, UIN IFCALL(input->FocusInEvent, input, toggleStates, x, y); } +void freerdp_input_send_keyboard_pause_event(rdpInput* input) +{ + IFCALL(input->KeyboardPauseEvent, input); +} + int input_process_events(rdpInput* input) { return input_message_queue_process_pending_messages(input); From 3be316d66ab26ef1fe8b5ab607549bd5a10a981f Mon Sep 17 00:00:00 2001 From: Daryl Poe Date: Fri, 4 Apr 2014 14:09:48 -0600 Subject: [PATCH 035/170] /kbd: option should be unsigned (cherry picked from commit fc6b72017f61bebca0108432d0483a45f92d7fc4) --- client/common/cmdline.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/client/common/cmdline.c b/client/common/cmdline.c index 44c153779..eb856b3ee 100644 --- a/client/common/cmdline.c +++ b/client/common/cmdline.c @@ -1364,17 +1364,17 @@ int freerdp_client_settings_parse_command_line_arguments(rdpSettings* settings, } CommandLineSwitchCase(arg, "kbd") { - int id; + unsigned long int id; char* pEnd; - id = strtol(arg->Value, &pEnd, 16); + id = strtoul(arg->Value, &pEnd, 16); if (pEnd != (arg->Value + strlen(arg->Value))) id = 0; if (id == 0) { - id = freerdp_map_keyboard_layout_name_to_id(arg->Value); + id = (unsigned long int) freerdp_map_keyboard_layout_name_to_id(arg->Value); if (!id) { @@ -1382,7 +1382,7 @@ int freerdp_client_settings_parse_command_line_arguments(rdpSettings* settings, } } - settings->KeyboardLayout = id; + settings->KeyboardLayout = (UINT32) id; } CommandLineSwitchCase(arg, "kbd-type") { From b8415af0d8eaf323be49e698a088c320ed47920d Mon Sep 17 00:00:00 2001 From: Bernhard Miklautz Date: Wed, 23 Jul 2014 17:26:49 +0200 Subject: [PATCH 036/170] Fix compiler warnings. This commit is based on pull request #1493 --- libfreerdp/common/settings.c | 271 ------------------ winpr/libwinpr/crt/string.c | 2 +- winpr/libwinpr/interlocked/interlocked.c | 2 +- winpr/libwinpr/synch/critical.c | 4 +- winpr/libwinpr/sysinfo/sysinfo.c | 1 - winpr/libwinpr/utils/collections/BufferPool.c | 4 +- winpr/libwinpr/utils/sam.c | 6 +- winpr/libwinpr/utils/trio/triodef.h | 6 +- 8 files changed, 12 insertions(+), 284 deletions(-) diff --git a/libfreerdp/common/settings.c b/libfreerdp/common/settings.c index 776a55757..05f672da5 100644 --- a/libfreerdp/common/settings.c +++ b/libfreerdp/common/settings.c @@ -657,507 +657,380 @@ BOOL freerdp_get_param_bool(rdpSettings* settings, int id) { case FreeRDP_ServerMode: return settings->ServerMode; - break; case FreeRDP_NetworkAutoDetect: return settings->NetworkAutoDetect; - break; case FreeRDP_SupportAsymetricKeys: return settings->SupportAsymetricKeys; - break; case FreeRDP_SupportErrorInfoPdu: return settings->SupportErrorInfoPdu; - break; case FreeRDP_SupportStatusInfoPdu: return settings->SupportStatusInfoPdu; - break; case FreeRDP_SupportMonitorLayoutPdu: return settings->SupportMonitorLayoutPdu; - break; case FreeRDP_SupportGraphicsPipeline: return settings->SupportGraphicsPipeline; - break; case FreeRDP_SupportDynamicTimeZone: return settings->SupportDynamicTimeZone; - break; case FreeRDP_DisableEncryption: return settings->DisableEncryption; - break; case FreeRDP_ConsoleSession: return settings->ConsoleSession; - break; case FreeRDP_SpanMonitors: return settings->SpanMonitors; - break; case FreeRDP_UseMultimon: return settings->UseMultimon; - break; case FreeRDP_ForceMultimon: return settings->ForceMultimon; - break; case FreeRDP_AutoLogonEnabled: return settings->AutoLogonEnabled; - break; case FreeRDP_CompressionEnabled: return settings->CompressionEnabled; - break; case FreeRDP_DisableCtrlAltDel: return settings->DisableCtrlAltDel; - break; case FreeRDP_EnableWindowsKey: return settings->EnableWindowsKey; - break; case FreeRDP_MaximizeShell: return settings->MaximizeShell; - break; case FreeRDP_LogonNotify: return settings->LogonNotify; - break; case FreeRDP_LogonErrors: return settings->LogonErrors; - break; case FreeRDP_MouseAttached: return settings->MouseAttached; - break; case FreeRDP_MouseHasWheel: return settings->MouseHasWheel; - break; case FreeRDP_RemoteConsoleAudio: return settings->RemoteConsoleAudio; - break; case FreeRDP_AudioPlayback: return settings->AudioPlayback; - break; case FreeRDP_AudioCapture: return settings->AudioCapture; - break; case FreeRDP_VideoDisable: return settings->VideoDisable; - break; case FreeRDP_PasswordIsSmartcardPin: return settings->PasswordIsSmartcardPin; - break; case FreeRDP_UsingSavedCredentials: return settings->UsingSavedCredentials; - break; case FreeRDP_ForceEncryptedCsPdu: return settings->ForceEncryptedCsPdu; - break; case FreeRDP_HiDefRemoteApp: return settings->HiDefRemoteApp; - break; case FreeRDP_IPv6Enabled: return settings->IPv6Enabled; - break; case FreeRDP_AutoReconnectionEnabled: return settings->AutoReconnectionEnabled; - break; case FreeRDP_DynamicDaylightTimeDisabled: return settings->DynamicDaylightTimeDisabled; - break; case FreeRDP_AllowFontSmoothing: return settings->AllowFontSmoothing; - break; case FreeRDP_DisableWallpaper: return settings->DisableWallpaper; - break; case FreeRDP_DisableFullWindowDrag: return settings->DisableFullWindowDrag; - break; case FreeRDP_DisableMenuAnims: return settings->DisableMenuAnims; - break; case FreeRDP_DisableThemes: return settings->DisableThemes; - break; case FreeRDP_DisableCursorShadow: return settings->DisableCursorShadow; - break; case FreeRDP_DisableCursorBlinking: return settings->DisableCursorBlinking; - break; case FreeRDP_AllowDesktopComposition: return settings->AllowDesktopComposition; - break; case FreeRDP_RemoteAssistanceMode: return settings->RemoteAssistanceMode; - break; case FreeRDP_TlsSecurity: return settings->TlsSecurity; - break; case FreeRDP_NlaSecurity: return settings->NlaSecurity; - break; case FreeRDP_RdpSecurity: return settings->RdpSecurity; - break; case FreeRDP_ExtSecurity: return settings->ExtSecurity; - break; case FreeRDP_Authentication: return settings->Authentication; - break; case FreeRDP_NegotiateSecurityLayer: return settings->NegotiateSecurityLayer; - break; case FreeRDP_RestrictedAdminModeRequired: return settings->RestrictedAdminModeRequired; - break; case FreeRDP_DisableCredentialsDelegation: return settings->DisableCredentialsDelegation; - break; case FreeRDP_AuthenticationLevel: return settings->AuthenticationLevel; - break; case FreeRDP_MstscCookieMode: return settings->MstscCookieMode; - break; case FreeRDP_SendPreconnectionPdu: return settings->SendPreconnectionPdu; - break; case FreeRDP_IgnoreCertificate: return settings->IgnoreCertificate; - break; case FreeRDP_ExternalCertificateManagement: return settings->ExternalCertificateManagement; - break; case FreeRDP_Workarea: return settings->Workarea; - break; case FreeRDP_Fullscreen: return settings->Fullscreen; - break; case FreeRDP_GrabKeyboard: return settings->GrabKeyboard; - break; case FreeRDP_Decorations: return settings->Decorations; - break; case FreeRDP_SmartSizing: return settings->SmartSizing; - break; case FreeRDP_MouseMotion: return settings->MouseMotion; - break; case FreeRDP_AsyncInput: return settings->AsyncInput; - break; case FreeRDP_AsyncUpdate: return settings->AsyncUpdate; - break; case FreeRDP_AsyncChannels: return settings->AsyncChannels; - break; case FreeRDP_AsyncTransport: return settings->AsyncTransport; - break; case FreeRDP_ToggleFullscreen: return settings->ToggleFullscreen; - break; case FreeRDP_SoftwareGdi: return settings->SoftwareGdi; - break; case FreeRDP_LocalConnection: return settings->LocalConnection; - break; case FreeRDP_AuthenticationOnly: return settings->AuthenticationOnly; - break; case FreeRDP_CredentialsFromStdin: return settings->CredentialsFromStdin; - break; case FreeRDP_DumpRemoteFx: return settings->DumpRemoteFx; - break; case FreeRDP_PlayRemoteFx: return settings->PlayRemoteFx; - break; case FreeRDP_GatewayUseSameCredentials: return settings->GatewayUseSameCredentials; - break; case FreeRDP_GatewayEnabled: return settings->GatewayEnabled; - break; case FreeRDP_GatewayBypassLocal: return settings->GatewayBypassLocal; - break; case FreeRDP_RemoteApplicationMode: return settings->RemoteApplicationMode; - break; case FreeRDP_DisableRemoteAppCapsCheck: return settings->DisableRemoteAppCapsCheck; - break; case FreeRDP_RemoteAppLanguageBarSupported: return settings->RemoteAppLanguageBarSupported; - break; case FreeRDP_RefreshRect: return settings->RefreshRect; - break; case FreeRDP_SuppressOutput: return settings->SuppressOutput; - break; case FreeRDP_FastPathOutput: return settings->FastPathOutput; - break; case FreeRDP_SaltedChecksum: return settings->SaltedChecksum; - break; case FreeRDP_LongCredentialsSupported: return settings->LongCredentialsSupported; - break; case FreeRDP_NoBitmapCompressionHeader: return settings->NoBitmapCompressionHeader; - break; case FreeRDP_BitmapCompressionDisabled: return settings->BitmapCompressionDisabled; - break; case FreeRDP_DesktopResize: return settings->DesktopResize; - break; case FreeRDP_DrawAllowDynamicColorFidelity: return settings->DrawAllowDynamicColorFidelity; - break; case FreeRDP_DrawAllowColorSubsampling: return settings->DrawAllowColorSubsampling; - break; case FreeRDP_DrawAllowSkipAlpha: return settings->DrawAllowSkipAlpha; - break; case FreeRDP_BitmapCacheV3Enabled: return settings->BitmapCacheV3Enabled; - break; case FreeRDP_AltSecFrameMarkerSupport: return settings->AltSecFrameMarkerSupport; - break; case FreeRDP_BitmapCacheEnabled: return settings->BitmapCacheEnabled; - break; case FreeRDP_AllowCacheWaitingList: return settings->AllowCacheWaitingList; - break; case FreeRDP_BitmapCachePersistEnabled: return settings->BitmapCachePersistEnabled; - break; case FreeRDP_ColorPointerFlag: return settings->ColorPointerFlag; - break; case FreeRDP_UnicodeInput: return settings->UnicodeInput; - break; case FreeRDP_FastPathInput: return settings->FastPathInput; - break; case FreeRDP_MultiTouchInput: return settings->MultiTouchInput; - break; case FreeRDP_MultiTouchGestures: return settings->MultiTouchGestures; - break; case FreeRDP_SoundBeepsEnabled: return settings->SoundBeepsEnabled; - break; case FreeRDP_SurfaceCommandsEnabled: return settings->SurfaceCommandsEnabled; - break; case FreeRDP_FrameMarkerCommandEnabled: return settings->FrameMarkerCommandEnabled; - break; case FreeRDP_RemoteFxOnly: return settings->RemoteFxOnly; - break; case FreeRDP_RemoteFxCodec: return settings->RemoteFxCodec; - break; case FreeRDP_RemoteFxImageCodec: return settings->RemoteFxImageCodec; - break; case FreeRDP_NSCodec: return settings->NSCodec; - break; case FreeRDP_FrameAcknowledge: return settings->FrameAcknowledge; - break; case FreeRDP_JpegCodec: return settings->JpegCodec; - break; case FreeRDP_GfxThinClient: return settings->GfxThinClient; - break; case FreeRDP_GfxSmallCache: return settings->GfxSmallCache; - break; case FreeRDP_GfxProgressive: return settings->GfxProgressive; - break; case FreeRDP_GfxProgressiveV2: return settings->GfxProgressiveV2; - break; case FreeRDP_GfxH264: return settings->GfxH264; - break; case FreeRDP_DrawNineGridEnabled: return settings->DrawNineGridEnabled; - break; case FreeRDP_DrawGdiPlusEnabled: return settings->DrawGdiPlusEnabled; - break; case FreeRDP_DrawGdiPlusCacheEnabled: return settings->DrawGdiPlusCacheEnabled; - break; case FreeRDP_DeviceRedirection: return settings->DeviceRedirection; - break; case FreeRDP_RedirectDrives: return settings->RedirectDrives; - break; case FreeRDP_RedirectHomeDrive: return settings->RedirectHomeDrive; - break; case FreeRDP_RedirectSmartCards: return settings->RedirectSmartCards; - break; case FreeRDP_RedirectPrinters: return settings->RedirectPrinters; - break; case FreeRDP_RedirectSerialPorts: return settings->RedirectSerialPorts; - break; case FreeRDP_RedirectParallelPorts: return settings->RedirectParallelPorts; - break; case FreeRDP_RedirectClipboard: return settings->RedirectClipboard; - break; default: fprintf(stderr, "freerdp_get_param_bool: unknown id: %d\n", id); return -1; - break; } - - return -1; } int freerdp_set_param_bool(rdpSettings* settings, int id, BOOL param) @@ -1663,7 +1536,6 @@ int freerdp_set_param_bool(rdpSettings* settings, int id, BOOL param) default: fprintf(stderr, "freerdp_set_param_bool: unknown id %d (param = %d)\n", id, param); return -1; - break; } /* Mark field as modified */ @@ -1678,19 +1550,14 @@ int freerdp_get_param_int(rdpSettings* settings, int id) { case FreeRDP_XPan: return settings->XPan; - break; case FreeRDP_YPan: return settings->YPan; - break; default: fprintf(stderr, "freerdp_get_param_int: unknown id: %d\n", id); return 0; - break; } - - return 0; } int freerdp_set_param_int(rdpSettings* settings, int id, int param) @@ -1708,7 +1575,6 @@ int freerdp_set_param_int(rdpSettings* settings, int id, int param) default: fprintf(stderr, "freerdp_set_param_int: unknown id %d (param = %d)\n", id, param); return -1; - break; } settings->SettingsModified[id] = 1; @@ -1722,307 +1588,230 @@ UINT32 freerdp_get_param_uint32(rdpSettings* settings, int id) { case FreeRDP_ShareId: return settings->ShareId; - break; case FreeRDP_PduSource: return settings->PduSource; - break; case FreeRDP_ServerPort: return settings->ServerPort; - break; case FreeRDP_RdpVersion: return settings->RdpVersion; - break; case FreeRDP_DesktopWidth: return settings->DesktopWidth; - break; case FreeRDP_DesktopHeight: return settings->DesktopHeight; - break; case FreeRDP_ColorDepth: return settings->ColorDepth; - break; case FreeRDP_ConnectionType: return settings->ConnectionType; - break; case FreeRDP_ClientBuild: return settings->ClientBuild; - break; case FreeRDP_EarlyCapabilityFlags: return settings->EarlyCapabilityFlags; - break; case FreeRDP_EncryptionMethods: return settings->EncryptionMethods; - break; case FreeRDP_ExtEncryptionMethods: return settings->ExtEncryptionMethods; - break; case FreeRDP_EncryptionLevel: return settings->EncryptionLevel; - break; case FreeRDP_ChannelCount: return settings->ChannelCount; - break; case FreeRDP_ChannelDefArraySize: return settings->ChannelDefArraySize; - break; case FreeRDP_ClusterInfoFlags: return settings->ClusterInfoFlags; - break; case FreeRDP_RedirectedSessionId: return settings->RedirectedSessionId; - break; case FreeRDP_MonitorDefArraySize: return settings->MonitorDefArraySize; - break; case FreeRDP_DesktopPosX: return settings->DesktopPosX; - break; case FreeRDP_DesktopPosY: return settings->DesktopPosY; - break; case FreeRDP_MultitransportFlags: return settings->MultitransportFlags; - break; case FreeRDP_CompressionLevel: return settings->CompressionLevel; - break; case FreeRDP_AutoReconnectMaxRetries: return settings->AutoReconnectMaxRetries; - break; case FreeRDP_PerformanceFlags: return settings->PerformanceFlags; - break; case FreeRDP_RequestedProtocols: return settings->RequestedProtocols; - break; case FreeRDP_SelectedProtocol: return settings->SelectedProtocol; - break; case FreeRDP_NegotiationFlags: return settings->NegotiationFlags; - break; case FreeRDP_CookieMaxLength: return settings->CookieMaxLength; - break; case FreeRDP_PreconnectionId: return settings->PreconnectionId; - break; case FreeRDP_RedirectionFlags: return settings->RedirectionFlags; - break; case FreeRDP_LoadBalanceInfoLength: return settings->LoadBalanceInfoLength; - break; case FreeRDP_RedirectionPasswordLength: return settings->RedirectionPasswordLength; - break; case FreeRDP_RedirectionTsvUrlLength: return settings->RedirectionTsvUrlLength; - break; case FreeRDP_TargetNetAddressCount: return settings->TargetNetAddressCount; - break; case FreeRDP_PercentScreen: return settings->PercentScreen; - break; case FreeRDP_GatewayUsageMethod: return settings->GatewayUsageMethod; - break; case FreeRDP_GatewayPort: return settings->GatewayPort; - break; case FreeRDP_GatewayCredentialsSource: return settings->GatewayCredentialsSource; - break; case FreeRDP_RemoteAppNumIconCaches: return settings->RemoteAppNumIconCaches; - break; case FreeRDP_RemoteAppNumIconCacheEntries: return settings->RemoteAppNumIconCacheEntries; - break; case FreeRDP_ReceivedCapabilitiesSize: return settings->ReceivedCapabilitiesSize; - break; case FreeRDP_OsMajorType: return settings->OsMajorType; - break; case FreeRDP_OsMinorType: return settings->OsMinorType; - break; case FreeRDP_BitmapCacheVersion: return settings->BitmapCacheVersion; - break; case FreeRDP_BitmapCacheV2NumCells: return settings->BitmapCacheV2NumCells; - break; case FreeRDP_PointerCacheSize: return settings->PointerCacheSize; - break; case FreeRDP_KeyboardLayout: return settings->KeyboardLayout; - break; case FreeRDP_KeyboardType: return settings->KeyboardType; - break; case FreeRDP_KeyboardSubType: return settings->KeyboardSubType; - break; case FreeRDP_KeyboardFunctionKey: return settings->KeyboardFunctionKey; - break; case FreeRDP_BrushSupportLevel: return settings->BrushSupportLevel; - break; case FreeRDP_GlyphSupportLevel: return settings->GlyphSupportLevel; - break; case FreeRDP_OffscreenSupportLevel: return settings->OffscreenSupportLevel; - break; case FreeRDP_OffscreenCacheSize: return settings->OffscreenCacheSize; - break; case FreeRDP_OffscreenCacheEntries: return settings->OffscreenCacheEntries; - break; case FreeRDP_VirtualChannelCompressionFlags: return settings->VirtualChannelCompressionFlags; - break; case FreeRDP_VirtualChannelChunkSize: return settings->VirtualChannelChunkSize; - break; case FreeRDP_MultifragMaxRequestSize: return settings->MultifragMaxRequestSize; - break; case FreeRDP_LargePointerFlag: return settings->LargePointerFlag; - break; case FreeRDP_CompDeskSupportLevel: return settings->CompDeskSupportLevel; - break; case FreeRDP_RemoteFxCodecId: return settings->RemoteFxCodecId; - break; case FreeRDP_RemoteFxCodecMode: return settings->RemoteFxCodecMode; - break; case FreeRDP_NSCodecId: return settings->NSCodecId; - break; case FreeRDP_JpegCodecId: return settings->JpegCodecId; - break; case FreeRDP_JpegQuality: return settings->JpegQuality; - break; case FreeRDP_BitmapCacheV3CodecId: return settings->BitmapCacheV3CodecId; - break; case FreeRDP_DrawNineGridCacheSize: return settings->DrawNineGridCacheSize; - break; case FreeRDP_DrawNineGridCacheEntries: return settings->DrawNineGridCacheEntries; - break; case FreeRDP_DeviceCount: return settings->DeviceCount; - break; case FreeRDP_DeviceArraySize: return settings->DeviceArraySize; - break; case FreeRDP_StaticChannelCount: return settings->StaticChannelCount; - break; case FreeRDP_StaticChannelArraySize: return settings->StaticChannelArraySize; - break; case FreeRDP_DynamicChannelCount: return settings->DynamicChannelCount; - break; case FreeRDP_DynamicChannelArraySize: return settings->DynamicChannelArraySize; - break; default: fprintf(stderr, "freerdp_get_param_uint32: unknown id: %d\n", id); return 0; - break; } - - return 0; } int freerdp_set_param_uint32(rdpSettings* settings, int id, UINT32 param) @@ -2328,7 +2117,6 @@ int freerdp_set_param_uint32(rdpSettings* settings, int id, UINT32 param) default: fprintf(stderr, "freerdp_set_param_uint32: unknown id %d (param = %u)\n", id, param); return -1; - break; } /* Mark field as modified */ @@ -2343,15 +2131,11 @@ UINT64 freerdp_get_param_uint64(rdpSettings* settings, int id) { case FreeRDP_ParentWindowId: return settings->ParentWindowId; - break; default: fprintf(stderr, "freerdp_get_param_uint64: unknown id: %d\n", id); return -1; - break; } - - return 0; } int freerdp_set_param_uint64(rdpSettings* settings, int id, UINT64 param) @@ -2365,7 +2149,6 @@ int freerdp_set_param_uint64(rdpSettings* settings, int id, UINT64 param) default: fprintf(stderr, "freerdp_set_param_uint64: unknown id %d (param = %u)\n", id, (UINT32) param); return -1; - break; } /* Mark field as modified */ @@ -2380,191 +2163,143 @@ char* freerdp_get_param_string(rdpSettings* settings, int id) { case FreeRDP_ServerHostname: return settings->ServerHostname; - break; case FreeRDP_Username: return settings->Username; - break; case FreeRDP_Password: return settings->Password; - break; case FreeRDP_Domain: return settings->Domain; - break; case FreeRDP_PasswordHash: return settings->PasswordHash; - break; case FreeRDP_ClientHostname: return settings->ClientHostname; - break; case FreeRDP_ClientProductId: return settings->ClientProductId; - break; case FreeRDP_AlternateShell: return settings->AlternateShell; - break; case FreeRDP_ShellWorkingDirectory: return settings->ShellWorkingDirectory; - break; case FreeRDP_ClientAddress: return settings->ClientAddress; - break; case FreeRDP_ClientDir: return settings->ClientDir; - break; case FreeRDP_DynamicDSTTimeZoneKeyName: return settings->DynamicDSTTimeZoneKeyName; - break; case FreeRDP_RemoteAssistanceSessionId: return settings->RemoteAssistanceSessionId; - break; case FreeRDP_RemoteAssistancePassStub: return settings->RemoteAssistancePassStub; - break; case FreeRDP_RemoteAssistancePassword: return settings->RemoteAssistancePassword; - break; case FreeRDP_RemoteAssistanceRCTicket: return settings->RemoteAssistanceRCTicket; - break; case FreeRDP_AuthenticationServiceClass: return settings->AuthenticationServiceClass; - break; case FreeRDP_PreconnectionBlob: return settings->PreconnectionBlob; - break; case FreeRDP_KerberosKdc: return settings->KerberosKdc; - break; case FreeRDP_KerberosRealm: return settings->KerberosRealm; - break; case FreeRDP_CertificateName: return settings->CertificateName; - break; case FreeRDP_CertificateFile: return settings->CertificateFile; - break; case FreeRDP_PrivateKeyFile: return settings->PrivateKeyFile; - break; case FreeRDP_RdpKeyFile: return settings->RdpKeyFile; - break; case FreeRDP_WindowTitle: return settings->WindowTitle; - break; case FreeRDP_ComputerName: return settings->ComputerName; - break; case FreeRDP_ConnectionFile: return settings->ConnectionFile; - break; case FreeRDP_AssistanceFile: return settings->AssistanceFile; - break; case FreeRDP_HomePath: return settings->HomePath; - break; case FreeRDP_ConfigPath: return settings->ConfigPath; - break; case FreeRDP_CurrentPath: return settings->CurrentPath; - break; case FreeRDP_DumpRemoteFxFile: return settings->DumpRemoteFxFile; - break; case FreeRDP_PlayRemoteFxFile: return settings->PlayRemoteFxFile; - break; case FreeRDP_GatewayHostname: return settings->GatewayHostname; - break; case FreeRDP_GatewayUsername: return settings->GatewayUsername; - break; case FreeRDP_GatewayPassword: return settings->GatewayPassword; - break; case FreeRDP_GatewayDomain: return settings->GatewayDomain; - break; case FreeRDP_RemoteApplicationName: return settings->RemoteApplicationName; - break; case FreeRDP_RemoteApplicationIcon: return settings->RemoteApplicationIcon; - break; case FreeRDP_RemoteApplicationProgram: return settings->RemoteApplicationProgram; - break; case FreeRDP_RemoteApplicationFile: return settings->RemoteApplicationFile; - break; case FreeRDP_RemoteApplicationGuid: return settings->RemoteApplicationGuid; - break; case FreeRDP_RemoteApplicationCmdLine: return settings->RemoteApplicationCmdLine; - break; case FreeRDP_ImeFileName: return settings->ImeFileName; - break; case FreeRDP_DrivesToRedirect: return settings->DrivesToRedirect; - break; default: fprintf(stderr, "freerdp_get_param_string: unknown id: %d\n", id); return NULL; - break; } - - return NULL; } int freerdp_set_param_string(rdpSettings* settings, int id, const char* param) @@ -2799,7 +2534,6 @@ int freerdp_set_param_string(rdpSettings* settings, int id, const char* param) default: fprintf(stderr, "freerdp_set_param_string: unknown id %d (param = %s)\n", id, param); return -1; - break; } /* Mark field as modified */ @@ -2814,15 +2548,11 @@ double freerdp_get_param_double(rdpSettings* settings, int id) { case FreeRDP_ScalingFactor: return settings->ScalingFactor; - break; default: fprintf(stderr, "freerdp_get_param_double: unknown id: %d\n", id); return 0; - break; } - - return 0; } int freerdp_set_param_double(rdpSettings* settings, int id, double param) @@ -2835,7 +2565,6 @@ int freerdp_set_param_double(rdpSettings* settings, int id, double param) default: return -1; - break; } /* Mark field as modified */ diff --git a/winpr/libwinpr/crt/string.c b/winpr/libwinpr/crt/string.c index 0ecdc6a42..37bd6ebec 100644 --- a/winpr/libwinpr/crt/string.c +++ b/winpr/libwinpr/crt/string.c @@ -54,7 +54,7 @@ WCHAR* _wcsdup(const WCHAR* strSource) if (strSource == NULL) return NULL; -#if sun +#if defined(sun) && sun strDestination = wsdup(strSource); #elif defined(__APPLE__) && defined(__MACH__) || defined(ANDROID) strDestination = malloc(wcslen((wchar_t*)strSource)); diff --git a/winpr/libwinpr/interlocked/interlocked.c b/winpr/libwinpr/interlocked/interlocked.c index 0b8c0d45a..6490bb6f1 100644 --- a/winpr/libwinpr/interlocked/interlocked.c +++ b/winpr/libwinpr/interlocked/interlocked.c @@ -282,7 +282,7 @@ LONGLONG InterlockedCompareExchange64(LONGLONG volatile *Destination, LONGLONG E return previousValue; } -#elif ANDROID || (defined(__GNUC__) && !defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8)) +#elif (defined(ANDROID) && ANDROID) || (defined(__GNUC__) && !defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8)) #include diff --git a/winpr/libwinpr/synch/critical.c b/winpr/libwinpr/synch/critical.c index f67c373a3..0ea0def34 100644 --- a/winpr/libwinpr/synch/critical.c +++ b/winpr/libwinpr/synch/critical.c @@ -101,7 +101,7 @@ DWORD SetCriticalSectionSpinCount(LPCRITICAL_SECTION lpCriticalSection, DWORD dw #endif } -VOID _WaitForCriticalSection(LPCRITICAL_SECTION lpCriticalSection) +static VOID _WaitForCriticalSection(LPCRITICAL_SECTION lpCriticalSection) { #if defined(__APPLE__) semaphore_wait(*((winpr_sem_t*) lpCriticalSection->LockSemaphore)); @@ -110,7 +110,7 @@ VOID _WaitForCriticalSection(LPCRITICAL_SECTION lpCriticalSection) #endif } -VOID _UnWaitCriticalSection(LPCRITICAL_SECTION lpCriticalSection) +static VOID _UnWaitCriticalSection(LPCRITICAL_SECTION lpCriticalSection) { #if defined __APPLE__ semaphore_signal(*((winpr_sem_t*) lpCriticalSection->LockSemaphore)); diff --git a/winpr/libwinpr/sysinfo/sysinfo.c b/winpr/libwinpr/sysinfo/sysinfo.c index 572916ca3..fcef5b4cb 100644 --- a/winpr/libwinpr/sysinfo/sysinfo.c +++ b/winpr/libwinpr/sysinfo/sysinfo.c @@ -222,7 +222,6 @@ BOOL GetComputerNameExA(COMPUTER_NAME_FORMAT NameType, LPSTR lpBuffer, LPDWORD l default: return FALSE; - break; } return TRUE; diff --git a/winpr/libwinpr/utils/collections/BufferPool.c b/winpr/libwinpr/utils/collections/BufferPool.c index 3a0fda5b4..2b05263c6 100644 --- a/winpr/libwinpr/utils/collections/BufferPool.c +++ b/winpr/libwinpr/utils/collections/BufferPool.c @@ -34,7 +34,7 @@ * Methods */ -BOOL BufferPool_ShiftAvailable(wBufferPool* pool, int index, int count) +static BOOL BufferPool_ShiftAvailable(wBufferPool* pool, int index, int count) { if (count > 0) { @@ -61,7 +61,7 @@ BOOL BufferPool_ShiftAvailable(wBufferPool* pool, int index, int count) return TRUE; } -BOOL BufferPool_ShiftUsed(wBufferPool* pool, int index, int count) +static BOOL BufferPool_ShiftUsed(wBufferPool* pool, int index, int count) { if (count > 0) { diff --git a/winpr/libwinpr/utils/sam.c b/winpr/libwinpr/utils/sam.c index 8c3b91764..cf28fa243 100644 --- a/winpr/libwinpr/utils/sam.c +++ b/winpr/libwinpr/utils/sam.c @@ -68,7 +68,7 @@ WINPR_SAM* SamOpen(BOOL read_only) return sam; } -BOOL SamLookupStart(WINPR_SAM* sam) +static BOOL SamLookupStart(WINPR_SAM* sam) { size_t read_size; long int file_size; @@ -105,7 +105,7 @@ BOOL SamLookupStart(WINPR_SAM* sam) return TRUE; } -void SamLookupFinish(WINPR_SAM* sam) +static void SamLookupFinish(WINPR_SAM* sam) { free(sam->buffer); @@ -113,7 +113,7 @@ void SamLookupFinish(WINPR_SAM* sam) sam->line = NULL; } -void HexStrToBin(char* str, BYTE* bin, int length) +static void HexStrToBin(char* str, BYTE* bin, int length) { int i; diff --git a/winpr/libwinpr/utils/trio/triodef.h b/winpr/libwinpr/utils/trio/triodef.h index 11c14b9c4..ce2667b0a 100644 --- a/winpr/libwinpr/utils/trio/triodef.h +++ b/winpr/libwinpr/utils/trio/triodef.h @@ -168,9 +168,9 @@ #if defined(__cplusplus) # define PREDEF_STANDARD_CXX -#endif -#if __cplusplus - 0 >= 199711L -# define PREDEF_STANDARD_CXX89 +# if __cplusplus - 0 >= 199711L +# define PREDEF_STANDARD_CXX89 +# endif #endif #if defined(TRIO_PLATFORM_UNIX) From 8c318da7b1932dc3069c85b247388caee667c51c Mon Sep 17 00:00:00 2001 From: Bernhard Miklautz Date: Wed, 23 Jul 2014 19:08:06 +0200 Subject: [PATCH 037/170] fix compiler warnings --- channels/echo/server/echo_main.c | 3 ++- libfreerdp/codec/h264.c | 4 +++- libfreerdp/core/tcp.c | 2 +- libfreerdp/utils/test/TestRingBuffer.c | 8 ++++---- winpr/libwinpr/comm/test/TestCommConfig.c | 2 +- winpr/libwinpr/crt/alignment.c | 1 - 6 files changed, 11 insertions(+), 9 deletions(-) diff --git a/channels/echo/server/echo_main.c b/channels/echo/server/echo_main.c index 37d42cb61..979294d28 100644 --- a/channels/echo/server/echo_main.c +++ b/channels/echo/server/echo_main.c @@ -29,6 +29,7 @@ #include #include #include +#include #include @@ -166,7 +167,7 @@ static void* echo_server_thread_func(void* arg) break; } - IFCALL(echo->context.Response, &echo->context, (PCHAR) Stream_Buffer(s), BytesReturned); + IFCALL(echo->context.Response, &echo->context, (BYTE *) Stream_Buffer(s), BytesReturned); } Stream_Free(s, TRUE); diff --git a/libfreerdp/codec/h264.c b/libfreerdp/codec/h264.c index f690b3f23..2546d9289 100644 --- a/libfreerdp/codec/h264.c +++ b/libfreerdp/codec/h264.c @@ -31,6 +31,7 @@ #define USE_GRAY_SCALE 0 #define USE_UPCONVERT 0 +#ifdef WITH_OPENH264 static BYTE clip(int x) { if (x < 0) return 0; @@ -100,6 +101,7 @@ static UINT32 YUV_to_RGB(BYTE Y, BYTE U, BYTE V) return RGB32(R, G, B); } +#endif //WITH_OPENH264 #if USE_UPCONVERT static BYTE* convert_420_to_444(BYTE* chroma420, int chroma420Width, int chroma420Height, int chroma420Stride) @@ -335,8 +337,8 @@ H264_CONTEXT* h264_context_new(BOOL Compressor) return h264; -EXCEPTION: #ifdef WITH_OPENH264 +EXCEPTION: if (h264->pDecoder) { WelsDestroyDecoder(h264->pDecoder); diff --git a/libfreerdp/core/tcp.c b/libfreerdp/core/tcp.c index 21a875150..4ed62e1ba 100644 --- a/libfreerdp/core/tcp.c +++ b/libfreerdp/core/tcp.c @@ -562,7 +562,7 @@ BOOL tcp_connect(rdpTcp* tcp, const char* hostname, int port, int timeout) } } - BIO_set_close(tcp->socketBio, BIO_NOCLOSE); + (void)BIO_set_close(tcp->socketBio, BIO_NOCLOSE); BIO_free(tcp->socketBio); tcp->socketBio = BIO_new(BIO_s_simple_socket()); diff --git a/libfreerdp/utils/test/TestRingBuffer.c b/libfreerdp/utils/test/TestRingBuffer.c index 1f4e3f504..dd128f44e 100644 --- a/libfreerdp/utils/test/TestRingBuffer.c +++ b/libfreerdp/utils/test/TestRingBuffer.c @@ -111,7 +111,7 @@ int TestRingBuffer(int argc, char* argv[]) if (ringbuffer_used(&ringBuffer) != 15) { - fprintf(stderr, "invalid used size got %d when i would expect 15\n", ringbuffer_used(&ringBuffer)); + fprintf(stderr, "invalid used size got %ld when i would expect 15\n", ringbuffer_used(&ringBuffer)); return -1; } @@ -134,7 +134,7 @@ int TestRingBuffer(int argc, char* argv[]) if (ringbuffer_used(&ringBuffer) != 5) { - fprintf(stderr, "invalid used size after read got %d when i would expect 5\n", ringbuffer_used(&ringBuffer)); + fprintf(stderr, "invalid used size after read got %ld when i would expect 5\n", ringbuffer_used(&ringBuffer)); return -1; } @@ -189,7 +189,7 @@ int TestRingBuffer(int argc, char* argv[]) if (ringbuffer_capacity(&ringBuffer) != 10) { - fprintf(stderr, "not the expected capacity, have %d and expects 10\n", ringbuffer_capacity(&ringBuffer)); + fprintf(stderr, "not the expected capacity, have %ld and expects 10\n", ringbuffer_capacity(&ringBuffer)); return -1; } fprintf(stderr, "ok\n"); @@ -213,7 +213,7 @@ int TestRingBuffer(int argc, char* argv[]) fprintf(stderr, "%d: specific overlaps test...", ++testNo); if (!test_overlaps()) { - fprintf(stderr, "ko\n", i); + fprintf(stderr, "ko\n"); return -1; } fprintf(stderr, "ok\n"); diff --git a/winpr/libwinpr/comm/test/TestCommConfig.c b/winpr/libwinpr/comm/test/TestCommConfig.c index 093c44e24..b60abd885 100644 --- a/winpr/libwinpr/comm/test/TestCommConfig.c +++ b/winpr/libwinpr/comm/test/TestCommConfig.c @@ -100,7 +100,7 @@ int TestCommConfig(int argc, char* argv[]) ZeroMemory(&commProp, sizeof(COMMPROP)); if (!GetCommProperties(hComm, &commProp)) { - fprintf(stderr, "GetCommProperties failure: GetLastError(): 0x0.8x\n", GetLastError()); + fprintf(stderr, "GetCommProperties failure: GetLastError(): 0x%0.8x\n", GetLastError()); return EXIT_FAILURE; } diff --git a/winpr/libwinpr/crt/alignment.c b/winpr/libwinpr/crt/alignment.c index 47bb88e89..a4b870f94 100644 --- a/winpr/libwinpr/crt/alignment.c +++ b/winpr/libwinpr/crt/alignment.c @@ -139,7 +139,6 @@ void* _aligned_offset_realloc(void* memblock, size_t size, size_t alignment, siz void* _aligned_offset_recalloc(void* memblock, size_t num, size_t size, size_t alignment, size_t offset) { - size_t copySize; void* newMemblock; WINPR_ALIGNED_MEM* pMem; WINPR_ALIGNED_MEM* pNewMem; From 352dbd52e2d34ddae4052254189e76f022846a38 Mon Sep 17 00:00:00 2001 From: Bernhard Miklautz Date: Wed, 23 Jul 2014 19:08:30 +0200 Subject: [PATCH 038/170] winpr/comm: don't build on apple Since code is only defined on linux building comm causes /usr/bin/ranlib to warn about empty objects and the test doesn't build at all on apple. --- winpr/libwinpr/comm/CMakeLists.txt | 32 ++++++++++++++++-------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/winpr/libwinpr/comm/CMakeLists.txt b/winpr/libwinpr/comm/CMakeLists.txt index 58ff2fe1d..0fe9f566f 100644 --- a/winpr/libwinpr/comm/CMakeLists.txt +++ b/winpr/libwinpr/comm/CMakeLists.txt @@ -18,21 +18,23 @@ set(MODULE_NAME "winpr-comm") set(MODULE_PREFIX "WINPR_COMM") -set(${MODULE_PREFIX}_SRCS - comm.c - comm.h - comm_io.c - comm_ioctl.c - comm_ioctl.h - comm_serial_sys.c - comm_serial_sys.h - comm_sercx_sys.c - comm_sercx_sys.h - comm_sercx2_sys.c - comm_sercx2_sys.h) +if(UNIX AND NOT WIN32 AND NOT APPLE) + set(${MODULE_PREFIX}_SRCS + comm.c + comm.h + comm_io.c + comm_ioctl.c + comm_ioctl.h + comm_serial_sys.c + comm_serial_sys.h + comm_sercx_sys.c + comm_sercx_sys.h + comm_sercx2_sys.c + comm_sercx2_sys.h) -winpr_module_add(${${MODULE_PREFIX}_SRCS}) + winpr_module_add(${${MODULE_PREFIX}_SRCS}) -if(BUILD_TESTING AND UNIX AND NOT WIN32) - add_subdirectory(test) + if(BUILD_TESTING) + add_subdirectory(test) + endif() endif() From a9eed46e38940ede5ad17b6e832557e60f6c6af2 Mon Sep 17 00:00:00 2001 From: Bernhard Miklautz Date: Wed, 23 Jul 2014 20:22:30 +0200 Subject: [PATCH 039/170] Fix warnings found in Xcode --- channels/cliprdr/client/cliprdr_main.c | 2 ++ libfreerdp/core/nego.c | 2 ++ winpr/libwinpr/synch/timer.c | 8 ++++++-- winpr/libwinpr/utils/trio/trio.c | 4 ++-- winpr/libwinpr/utils/trio/trionan.c | 3 ++- winpr/libwinpr/utils/trio/triostr.c | 3 ++- 6 files changed, 16 insertions(+), 6 deletions(-) diff --git a/channels/cliprdr/client/cliprdr_main.c b/channels/cliprdr/client/cliprdr_main.c index 7a7907021..7eeaad6a9 100644 --- a/channels/cliprdr/client/cliprdr_main.c +++ b/channels/cliprdr/client/cliprdr_main.c @@ -36,6 +36,7 @@ #include "cliprdr_main.h" #include "cliprdr_format.h" +#ifdef WITH_DEBUG_CLIPRDR static const char* const CB_MSG_TYPE_STRINGS[] = { "", @@ -51,6 +52,7 @@ static const char* const CB_MSG_TYPE_STRINGS[] = "CB_LOCK_CLIPDATA" "CB_UNLOCK_CLIPDATA" }; +#endif CliprdrClientContext* cliprdr_get_client_interface(cliprdrPlugin* cliprdr) { diff --git a/libfreerdp/core/nego.c b/libfreerdp/core/nego.c index 09d63065a..c10cd274f 100644 --- a/libfreerdp/core/nego.c +++ b/libfreerdp/core/nego.c @@ -32,6 +32,7 @@ #include "transport.h" +#ifdef WITH_DEBUG_NEGO static const char* const NEGO_STATE_STRINGS[] = { "NEGO_STATE_INITIAL", @@ -55,6 +56,7 @@ static const char PROTOCOL_SECURITY_STRINGS[9][4] = "UNK", "EXT" }; +#endif // WITH_DEBUG_NEGO BOOL nego_security_connect(rdpNego* nego); diff --git a/winpr/libwinpr/synch/timer.c b/winpr/libwinpr/synch/timer.c index 0f0c41572..f19f1366e 100644 --- a/winpr/libwinpr/synch/timer.c +++ b/winpr/libwinpr/synch/timer.c @@ -190,10 +190,14 @@ BOOL SetWaitableTimer(HANDLE hTimer, const LARGE_INTEGER* lpDueTime, LONG lPerio { ULONG Type; PVOID Object; - int status = 0; WINPR_TIMER* timer; - LONGLONG seconds = 0; +#ifdef WITH_POSIX_TIMER + LONGLONG seconds = 0; LONGLONG nanoseconds = 0; +#ifdef HAVE_TIMERFD_H + int status = 0; +#endif // HAVE_TIMERFD_H +#endif // WITH_POSIX_TIMER if (!winpr_Handle_GetInfo(hTimer, &Type, &Object)) return FALSE; diff --git a/winpr/libwinpr/utils/trio/trio.c b/winpr/libwinpr/utils/trio/trio.c index 08b02240a..19cfdadd0 100644 --- a/winpr/libwinpr/utils/trio/trio.c +++ b/winpr/libwinpr/utils/trio/trio.c @@ -901,8 +901,8 @@ typedef struct _trio_userdef_t { * Internal Variables * *************************************************************************/ - -static TRIO_CONST char rcsid[] = "@(#)$Id: trio.c,v 1.131 2010/09/12 11:08:08 breese Exp $"; +/* Unused but kept for reference */ +/* static TRIO_CONST char rcsid[] = "@(#)$Id: trio.c,v 1.131 2010/09/12 11:08:08 breese Exp $"; */ #if TRIO_FEATURE_FLOAT /* diff --git a/winpr/libwinpr/utils/trio/trionan.c b/winpr/libwinpr/utils/trio/trionan.c index 301632257..d58246881 100644 --- a/winpr/libwinpr/utils/trio/trionan.c +++ b/winpr/libwinpr/utils/trio/trionan.c @@ -227,7 +227,8 @@ */ #if !defined(TRIO_EMBED_NAN) -static TRIO_CONST char rcsid[] = "@(#)$Id: trionan.c,v 1.33 2005/05/29 11:57:25 breese Exp $"; +/* Unused but kept for reference */ +/* static TRIO_CONST char rcsid[] = "@(#)$Id: trionan.c,v 1.33 2005/05/29 11:57:25 breese Exp $"; */ #endif #if defined(TRIO_FUNC_INTERNAL_MAKE_DOUBLE) \ diff --git a/winpr/libwinpr/utils/trio/triostr.c b/winpr/libwinpr/utils/trio/triostr.c index c471b4a1d..4425bcd21 100644 --- a/winpr/libwinpr/utils/trio/triostr.c +++ b/winpr/libwinpr/utils/trio/triostr.c @@ -160,7 +160,8 @@ struct _trio_string_t */ #if !defined(TRIO_EMBED_STRING) -static TRIO_CONST char rcsid[] = "@(#)$Id: triostr.c,v 1.36 2010/01/26 13:02:02 breese Exp $"; +/* Unused but kept for reference */ +/* static TRIO_CONST char rcsid[] = "@(#)$Id: triostr.c,v 1.36 2010/01/26 13:02:02 breese Exp $"; */ #endif /************************************************************************* From a124f6a7c6aea9186fe36b3e7e9803ee5a811336 Mon Sep 17 00:00:00 2001 From: Bernhard Miklautz Date: Wed, 23 Jul 2014 23:53:43 +0200 Subject: [PATCH 040/170] fix comment style // to /* */ --- libfreerdp/codec/h264.c | 2 +- libfreerdp/core/nego.c | 2 +- winpr/libwinpr/synch/timer.c | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/libfreerdp/codec/h264.c b/libfreerdp/codec/h264.c index 2546d9289..3ec637ebe 100644 --- a/libfreerdp/codec/h264.c +++ b/libfreerdp/codec/h264.c @@ -101,7 +101,7 @@ static UINT32 YUV_to_RGB(BYTE Y, BYTE U, BYTE V) return RGB32(R, G, B); } -#endif //WITH_OPENH264 +#endif /* WITH_OPENH264 */ #if USE_UPCONVERT static BYTE* convert_420_to_444(BYTE* chroma420, int chroma420Width, int chroma420Height, int chroma420Stride) diff --git a/libfreerdp/core/nego.c b/libfreerdp/core/nego.c index c10cd274f..8d385bf6d 100644 --- a/libfreerdp/core/nego.c +++ b/libfreerdp/core/nego.c @@ -56,7 +56,7 @@ static const char PROTOCOL_SECURITY_STRINGS[9][4] = "UNK", "EXT" }; -#endif // WITH_DEBUG_NEGO +#endif /* WITH_DEBUG_NEGO */ BOOL nego_security_connect(rdpNego* nego); diff --git a/winpr/libwinpr/synch/timer.c b/winpr/libwinpr/synch/timer.c index f19f1366e..3b715a74a 100644 --- a/winpr/libwinpr/synch/timer.c +++ b/winpr/libwinpr/synch/timer.c @@ -196,8 +196,8 @@ BOOL SetWaitableTimer(HANDLE hTimer, const LARGE_INTEGER* lpDueTime, LONG lPerio LONGLONG nanoseconds = 0; #ifdef HAVE_TIMERFD_H int status = 0; -#endif // HAVE_TIMERFD_H -#endif // WITH_POSIX_TIMER +#endif /* HAVE_TIMERFD_H */ +#endif /* WITH_POSIX_TIMER */ if (!winpr_Handle_GetInfo(hTimer, &Type, &Object)) return FALSE; From 8c3080f34539258f64c934b530a800b5c18fa1ca Mon Sep 17 00:00:00 2001 From: Pavel Tsekov Date: Tue, 29 Jul 2014 11:19:25 +0300 Subject: [PATCH 041/170] Fix 1bpp to 32bpp conversion with CLRCONV_ALPHA on * libfreerdp/codec/color.c (freerdp_mono_image_convert): Use ARGB32/ABGR32 when using 32bpp framebuffer and CLRCONV_ALPHA is set. --- libfreerdp/codec/color.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/libfreerdp/codec/color.c b/libfreerdp/codec/color.c index 8b2578a8b..e7883036d 100644 --- a/libfreerdp/codec/color.c +++ b/libfreerdp/codec/color.c @@ -1092,11 +1092,25 @@ BYTE* freerdp_mono_image_convert(BYTE* srcData, int width, int height, int srcBp { if ((bitMask >> bitIndex) & 0x01) { - *dst32 = (clrconv->invert) ? BGR32(redBg, greenBg, blueBg) : RGB32(redBg, greenBg, blueBg); + if (clrconv->alpha) + { + *dst32 = (clrconv->invert) ? ABGR32(0xFF, redBg, greenBg, blueBg) : ARGB32(0xFF, redBg, greenBg, blueBg); + } + else + { + *dst32 = (clrconv->invert) ? BGR32(redBg, greenBg, blueBg) : RGB32(redBg, greenBg, blueBg); + } } else { - *dst32 = (clrconv->invert) ? BGR32(redFg, greenFg, blueFg) : RGB32(redFg, greenFg, blueFg); + if (clrconv->alpha) + { + *dst32 = (clrconv->invert) ? ABGR32(0xFF, redFg, greenFg, blueFg) : ARGB32(0xFF, redFg, greenFg, blueFg); + } + else + { + *dst32 = (clrconv->invert) ? BGR32(redFg, greenFg, blueFg) : RGB32(redFg, greenFg, blueFg); + } } dst32++; } From b05c43c6020f3237d943df0a5584da19fb767c4e Mon Sep 17 00:00:00 2001 From: Robert Lockwood Date: Tue, 29 Jul 2014 23:30:47 +0100 Subject: [PATCH 042/170] rdpsnd->Initialize requires two arguments Fixes rdpsnd->Initialize() to have two arguments. Fixes compilation on XCode 5. To be tested. --- server/Mac/mf_rdpsnd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/Mac/mf_rdpsnd.c b/server/Mac/mf_rdpsnd.c index 3333795af..e99d3eb38 100644 --- a/server/Mac/mf_rdpsnd.c +++ b/server/Mac/mf_rdpsnd.c @@ -161,7 +161,7 @@ BOOL mf_peer_rdpsnd_init(mfPeerContext* context) context->rdpsnd->Activated = mf_peer_rdpsnd_activated; - context->rdpsnd->Initialize(context->rdpsnd); + context->rdpsnd->Initialize(context->rdpsnd, TRUE); return TRUE; } From ff95b9aafa6c44b18c38beacd9d329f41df41a95 Mon Sep 17 00:00:00 2001 From: Hardening Date: Thu, 31 Jul 2014 10:38:59 +0200 Subject: [PATCH 043/170] Make LinkedList return errors when something fails --- winpr/include/winpr/collections.h | 6 +++--- winpr/libwinpr/utils/collections/LinkedList.c | 16 +++++++++++----- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/winpr/include/winpr/collections.h b/winpr/include/winpr/collections.h index f56a556d8..a18f1b5a4 100644 --- a/winpr/include/winpr/collections.h +++ b/winpr/include/winpr/collections.h @@ -247,10 +247,10 @@ WINPR_API void* LinkedList_Last(wLinkedList* list); WINPR_API BOOL LinkedList_Contains(wLinkedList* list, void* value); WINPR_API void LinkedList_Clear(wLinkedList* list); -WINPR_API void LinkedList_AddFirst(wLinkedList* list, void* value); -WINPR_API void LinkedList_AddLast(wLinkedList* list, void* value); +WINPR_API BOOL LinkedList_AddFirst(wLinkedList* list, void* value); +WINPR_API BOOL LinkedList_AddLast(wLinkedList* list, void* value); -WINPR_API void LinkedList_Remove(wLinkedList* list, void* value); +WINPR_API BOOL LinkedList_Remove(wLinkedList* list, void* value); WINPR_API void LinkedList_RemoveFirst(wLinkedList* list); WINPR_API void LinkedList_RemoveLast(wLinkedList* list); diff --git a/winpr/libwinpr/utils/collections/LinkedList.c b/winpr/libwinpr/utils/collections/LinkedList.c index 5cac91bed..adb2af42f 100644 --- a/winpr/libwinpr/utils/collections/LinkedList.c +++ b/winpr/libwinpr/utils/collections/LinkedList.c @@ -124,11 +124,13 @@ void LinkedList_Clear(wLinkedList* list) * Adds a new node containing the specified value at the start of the LinkedList. */ -void LinkedList_AddFirst(wLinkedList* list, void* value) +BOOL LinkedList_AddFirst(wLinkedList* list, void* value) { wLinkedListNode* node; node = (wLinkedListNode*) malloc(sizeof(wLinkedListNode)); + if (!node) + return FALSE; node->prev = node->next = NULL; node->value = value; @@ -144,17 +146,20 @@ void LinkedList_AddFirst(wLinkedList* list, void* value) } list->count++; + return TRUE; } /** * Adds a new node containing the specified value at the end of the LinkedList. */ -void LinkedList_AddLast(wLinkedList* list, void* value) +BOOL LinkedList_AddLast(wLinkedList* list, void* value) { wLinkedListNode* node; node = (wLinkedListNode*) malloc(sizeof(wLinkedListNode)); + if (!node) + return FALSE; node->prev = node->next = NULL; node->value = value; @@ -170,13 +175,14 @@ void LinkedList_AddLast(wLinkedList* list, void* value) } list->count++; + return TRUE; } /** * Removes the first occurrence of the specified value from the LinkedList. */ -void LinkedList_Remove(wLinkedList* list, void* value) +BOOL LinkedList_Remove(wLinkedList* list, void* value) { wLinkedListNode* node; @@ -201,12 +207,12 @@ void LinkedList_Remove(wLinkedList* list, void* value) free(node); list->count--; - - break; + return TRUE; } node = node->next; } + return FALSE; } /** From 9bde12f26a218cb18398da2b33ff6563d0465183 Mon Sep 17 00:00:00 2001 From: Norbert Federa Date: Thu, 31 Jul 2014 11:22:46 +0200 Subject: [PATCH 044/170] winpr/utils/ssl: fix comp warning and wrong param --- winpr/libwinpr/utils/ssl.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/winpr/libwinpr/utils/ssl.c b/winpr/libwinpr/utils/ssl.c index 2a0463977..add22b12b 100644 --- a/winpr/libwinpr/utils/ssl.c +++ b/winpr/libwinpr/utils/ssl.c @@ -21,6 +21,7 @@ #include #include #include +#include #include #include @@ -36,7 +37,7 @@ struct CRYPTO_dynlock_value #if (OPENSSL_VERSION_NUMBER < 0x10000000L) -static unsigned long _winpr_openssl_id() +static unsigned long _winpr_openssl_id(void) { return (unsigned long)GetCurrentThreadId(); } @@ -84,7 +85,7 @@ static void _winpr_openssl_dynlock_destroy(struct CRYPTO_dynlock_value *dynlock, free(dynlock); } -static BOOL _winpr_openssl_initialize_locking() +static BOOL _winpr_openssl_initialize_locking(void) { int i, count; @@ -159,7 +160,7 @@ static BOOL _winpr_openssl_initialize_locking() return TRUE; } -static BOOL _winpr_openssl_cleanup_locking() +static BOOL _winpr_openssl_cleanup_locking(void) { /* undo our static locking modifications */ @@ -219,7 +220,7 @@ static BOOL CALLBACK _winpr_openssl_initialize(PINIT_ONCE once, PVOID param, PVO if (flags & WINPR_SSL_INIT_ENABLE_LOCKING) { - if (!_winpr_openssl_initialize_locking(FALSE)) + if (!_winpr_openssl_initialize_locking()) { return FALSE; } From 12c0bd64f051f6bcc6e27989f98832c0db6eeedd Mon Sep 17 00:00:00 2001 From: Mike McDonald Date: Fri, 1 Aug 2014 15:48:54 -0400 Subject: [PATCH 045/170] Removed loop which was retrying the select after being interrupted by a signal. This was leading to threads blocking forever. --- winpr/libwinpr/synch/wait.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/winpr/libwinpr/synch/wait.c b/winpr/libwinpr/synch/wait.c index f3a6a9510..76657fefa 100644 --- a/winpr/libwinpr/synch/wait.c +++ b/winpr/libwinpr/synch/wait.c @@ -267,12 +267,8 @@ DWORD WaitForSingleObject(HANDLE hHandle, DWORD dwMilliseconds) timeout.tv_usec = (dwMilliseconds % 1000) * 1000; } - do - { - status = select(event->pipe_fd[0] + 1, &rfds, NULL, NULL, - (dwMilliseconds == INFINITE) ? NULL : &timeout); - } - while (status < 0 && (errno == EINTR)); + status = select(event->pipe_fd[0] + 1, &rfds, NULL, NULL, + (dwMilliseconds == INFINITE) ? NULL : &timeout); if (status < 0) { From e13f93aa1bc8e0e5f124e9856d7ce6c5345a42a7 Mon Sep 17 00:00:00 2001 From: Pavel Tsekov Date: Mon, 4 Aug 2014 18:14:08 +0300 Subject: [PATCH 046/170] Allow the user to enable/disable performance features regardless of their default values. --- .../Android/FreeRDPCore/jni/android_freerdp.c | 43 +++---------------- 1 file changed, 7 insertions(+), 36 deletions(-) diff --git a/client/Android/FreeRDPCore/jni/android_freerdp.c b/client/Android/FreeRDPCore/jni/android_freerdp.c index 5f75ce40e..87b4d7f5f 100644 --- a/client/Android/FreeRDPCore/jni/android_freerdp.c +++ b/client/Android/FreeRDPCore/jni/android_freerdp.c @@ -836,44 +836,15 @@ JNIEXPORT void JNICALL jni_freerdp_set_performance_flags( } /* store performance settings */ - if (disableWallpaper == JNI_TRUE) - settings->DisableWallpaper = TRUE; - - if (disableFullWindowDrag == JNI_TRUE) - settings->DisableFullWindowDrag = TRUE; - - if (disableMenuAnimations == JNI_TRUE) - settings->DisableMenuAnims = TRUE; - - if (disableTheming == JNI_TRUE) - settings->DisableThemes = TRUE; - - if (enableFontSmoothing == JNI_TRUE) - settings->AllowFontSmoothing = TRUE; - - if(enableDesktopComposition == JNI_TRUE) - settings->AllowDesktopComposition = TRUE; - + settings->DisableWallpaper = (disableWallpaper == JNI_TRUE) ? TRUE : FALSE; + settings->DisableFullWindowDrag = (disableFullWindowDrag == JNI_TRUE) ? TRUE : FALSE; + settings->DisableMenuAnims = (disableMenuAnimations == JNI_TRUE) ? TRUE : FALSE; + settings->DisableThemes = (disableTheming == JNI_TRUE) ? TRUE : FALSE; + settings->AllowFontSmoothing = (enableFontSmoothing == JNI_TRUE) ? TRUE : FALSE; + settings->AllowDesktopComposition = (enableDesktopComposition == JNI_TRUE) ? TRUE : FALSE; /* Create performance flags from settings */ - settings->PerformanceFlags = PERF_FLAG_NONE; - if (settings->AllowFontSmoothing) - settings->PerformanceFlags |= PERF_ENABLE_FONT_SMOOTHING; - - if (settings->AllowDesktopComposition) - settings->PerformanceFlags |= PERF_ENABLE_DESKTOP_COMPOSITION; - - if (settings->DisableWallpaper) - settings->PerformanceFlags |= PERF_DISABLE_WALLPAPER; - - if (settings->DisableFullWindowDrag) - settings->PerformanceFlags |= PERF_DISABLE_FULLWINDOWDRAG; - - if (settings->DisableMenuAnims) - settings->PerformanceFlags |= PERF_DISABLE_MENUANIMATIONS; - - if (settings->DisableThemes) - settings->PerformanceFlags |= PERF_DISABLE_THEMING; + freerdp_performance_flags_make(settings); DEBUG_ANDROID("performance_flags: %04X", settings->PerformanceFlags); } From 9a470632f6ba0e00619f582cf4d42652ef1ba5ad Mon Sep 17 00:00:00 2001 From: Pavel Tsekov Date: Tue, 5 Aug 2014 00:49:13 +0300 Subject: [PATCH 047/170] Honour user performance preferences. * client/Android/FreeRDPCore/jni/android_freerdp.c: (jni_freerdp_set_performance_flags): Always pass the user specified performance settings to FreeRDP. --- .../Android/FreeRDPCore/jni/android_freerdp.c | 43 +++---------------- 1 file changed, 7 insertions(+), 36 deletions(-) diff --git a/client/Android/FreeRDPCore/jni/android_freerdp.c b/client/Android/FreeRDPCore/jni/android_freerdp.c index 5f75ce40e..87b4d7f5f 100644 --- a/client/Android/FreeRDPCore/jni/android_freerdp.c +++ b/client/Android/FreeRDPCore/jni/android_freerdp.c @@ -836,44 +836,15 @@ JNIEXPORT void JNICALL jni_freerdp_set_performance_flags( } /* store performance settings */ - if (disableWallpaper == JNI_TRUE) - settings->DisableWallpaper = TRUE; - - if (disableFullWindowDrag == JNI_TRUE) - settings->DisableFullWindowDrag = TRUE; - - if (disableMenuAnimations == JNI_TRUE) - settings->DisableMenuAnims = TRUE; - - if (disableTheming == JNI_TRUE) - settings->DisableThemes = TRUE; - - if (enableFontSmoothing == JNI_TRUE) - settings->AllowFontSmoothing = TRUE; - - if(enableDesktopComposition == JNI_TRUE) - settings->AllowDesktopComposition = TRUE; - + settings->DisableWallpaper = (disableWallpaper == JNI_TRUE) ? TRUE : FALSE; + settings->DisableFullWindowDrag = (disableFullWindowDrag == JNI_TRUE) ? TRUE : FALSE; + settings->DisableMenuAnims = (disableMenuAnimations == JNI_TRUE) ? TRUE : FALSE; + settings->DisableThemes = (disableTheming == JNI_TRUE) ? TRUE : FALSE; + settings->AllowFontSmoothing = (enableFontSmoothing == JNI_TRUE) ? TRUE : FALSE; + settings->AllowDesktopComposition = (enableDesktopComposition == JNI_TRUE) ? TRUE : FALSE; /* Create performance flags from settings */ - settings->PerformanceFlags = PERF_FLAG_NONE; - if (settings->AllowFontSmoothing) - settings->PerformanceFlags |= PERF_ENABLE_FONT_SMOOTHING; - - if (settings->AllowDesktopComposition) - settings->PerformanceFlags |= PERF_ENABLE_DESKTOP_COMPOSITION; - - if (settings->DisableWallpaper) - settings->PerformanceFlags |= PERF_DISABLE_WALLPAPER; - - if (settings->DisableFullWindowDrag) - settings->PerformanceFlags |= PERF_DISABLE_FULLWINDOWDRAG; - - if (settings->DisableMenuAnims) - settings->PerformanceFlags |= PERF_DISABLE_MENUANIMATIONS; - - if (settings->DisableThemes) - settings->PerformanceFlags |= PERF_DISABLE_THEMING; + freerdp_performance_flags_make(settings); DEBUG_ANDROID("performance_flags: %04X", settings->PerformanceFlags); } From 8a4f134fab1989c222caacb32fd0702ce2059ec3 Mon Sep 17 00:00:00 2001 From: "U-PAVEL\\Pavel Tsekov" Date: Tue, 5 Aug 2014 14:35:31 +0300 Subject: [PATCH 048/170] Revert to 15d2b35574d7eac8d465029854cc3c4bd64ae2cc --- .../Android/FreeRDPCore/jni/android_freerdp.c | 43 ++++++++++++++++--- libfreerdp/codec/color.c | 18 +------- 2 files changed, 38 insertions(+), 23 deletions(-) diff --git a/client/Android/FreeRDPCore/jni/android_freerdp.c b/client/Android/FreeRDPCore/jni/android_freerdp.c index 87b4d7f5f..5f75ce40e 100644 --- a/client/Android/FreeRDPCore/jni/android_freerdp.c +++ b/client/Android/FreeRDPCore/jni/android_freerdp.c @@ -836,15 +836,44 @@ JNIEXPORT void JNICALL jni_freerdp_set_performance_flags( } /* store performance settings */ - settings->DisableWallpaper = (disableWallpaper == JNI_TRUE) ? TRUE : FALSE; - settings->DisableFullWindowDrag = (disableFullWindowDrag == JNI_TRUE) ? TRUE : FALSE; - settings->DisableMenuAnims = (disableMenuAnimations == JNI_TRUE) ? TRUE : FALSE; - settings->DisableThemes = (disableTheming == JNI_TRUE) ? TRUE : FALSE; - settings->AllowFontSmoothing = (enableFontSmoothing == JNI_TRUE) ? TRUE : FALSE; - settings->AllowDesktopComposition = (enableDesktopComposition == JNI_TRUE) ? TRUE : FALSE; + if (disableWallpaper == JNI_TRUE) + settings->DisableWallpaper = TRUE; + + if (disableFullWindowDrag == JNI_TRUE) + settings->DisableFullWindowDrag = TRUE; + + if (disableMenuAnimations == JNI_TRUE) + settings->DisableMenuAnims = TRUE; + + if (disableTheming == JNI_TRUE) + settings->DisableThemes = TRUE; + + if (enableFontSmoothing == JNI_TRUE) + settings->AllowFontSmoothing = TRUE; + + if(enableDesktopComposition == JNI_TRUE) + settings->AllowDesktopComposition = TRUE; + /* Create performance flags from settings */ - freerdp_performance_flags_make(settings); + settings->PerformanceFlags = PERF_FLAG_NONE; + if (settings->AllowFontSmoothing) + settings->PerformanceFlags |= PERF_ENABLE_FONT_SMOOTHING; + + if (settings->AllowDesktopComposition) + settings->PerformanceFlags |= PERF_ENABLE_DESKTOP_COMPOSITION; + + if (settings->DisableWallpaper) + settings->PerformanceFlags |= PERF_DISABLE_WALLPAPER; + + if (settings->DisableFullWindowDrag) + settings->PerformanceFlags |= PERF_DISABLE_FULLWINDOWDRAG; + + if (settings->DisableMenuAnims) + settings->PerformanceFlags |= PERF_DISABLE_MENUANIMATIONS; + + if (settings->DisableThemes) + settings->PerformanceFlags |= PERF_DISABLE_THEMING; DEBUG_ANDROID("performance_flags: %04X", settings->PerformanceFlags); } diff --git a/libfreerdp/codec/color.c b/libfreerdp/codec/color.c index e7883036d..8b2578a8b 100644 --- a/libfreerdp/codec/color.c +++ b/libfreerdp/codec/color.c @@ -1092,25 +1092,11 @@ BYTE* freerdp_mono_image_convert(BYTE* srcData, int width, int height, int srcBp { if ((bitMask >> bitIndex) & 0x01) { - if (clrconv->alpha) - { - *dst32 = (clrconv->invert) ? ABGR32(0xFF, redBg, greenBg, blueBg) : ARGB32(0xFF, redBg, greenBg, blueBg); - } - else - { - *dst32 = (clrconv->invert) ? BGR32(redBg, greenBg, blueBg) : RGB32(redBg, greenBg, blueBg); - } + *dst32 = (clrconv->invert) ? BGR32(redBg, greenBg, blueBg) : RGB32(redBg, greenBg, blueBg); } else { - if (clrconv->alpha) - { - *dst32 = (clrconv->invert) ? ABGR32(0xFF, redFg, greenFg, blueFg) : ARGB32(0xFF, redFg, greenFg, blueFg); - } - else - { - *dst32 = (clrconv->invert) ? BGR32(redFg, greenFg, blueFg) : RGB32(redFg, greenFg, blueFg); - } + *dst32 = (clrconv->invert) ? BGR32(redFg, greenFg, blueFg) : RGB32(redFg, greenFg, blueFg); } dst32++; } From a8c31a286bb101fec6b728c035fc183a2ff941e2 Mon Sep 17 00:00:00 2001 From: Daniel Bungert Date: Wed, 6 Aug 2014 04:19:50 -0600 Subject: [PATCH 049/170] Restore window size by percent 1.0 had the ability to specifiy window geometry by a percentage. The support is still there, just needed command line support. Example in 1.1 syntax: /size:85% --- client/common/cmdline.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/client/common/cmdline.c b/client/common/cmdline.c index 480f9f21b..f7cafaab7 100644 --- a/client/common/cmdline.c +++ b/client/common/cmdline.c @@ -43,7 +43,7 @@ COMMAND_LINE_ARGUMENT_A args[] = { "port", COMMAND_LINE_VALUE_REQUIRED, "", NULL, NULL, -1, NULL, "Server port" }, { "w", COMMAND_LINE_VALUE_REQUIRED, "", "1024", NULL, -1, NULL, "Width" }, { "h", COMMAND_LINE_VALUE_REQUIRED, "", "768", NULL, -1, NULL, "Height" }, - { "size", COMMAND_LINE_VALUE_REQUIRED, "x", "1024x768", NULL, -1, NULL, "Screen size" }, + { "size", COMMAND_LINE_VALUE_REQUIRED, "x or %", "1024x768", NULL, -1, NULL, "Screen size" }, { "f", COMMAND_LINE_VALUE_FLAG, NULL, NULL, NULL, -1, NULL, "Fullscreen mode" }, { "bpp", COMMAND_LINE_VALUE_REQUIRED, "", "16", NULL, -1, NULL, "Session bpp (color depth)" }, { "kbd", COMMAND_LINE_VALUE_REQUIRED, "0x or ", NULL, NULL, -1, NULL, "Keyboard layout" }, @@ -1271,6 +1271,14 @@ int freerdp_client_settings_parse_command_line_arguments(rdpSettings* settings, settings->DesktopWidth = atoi(str); settings->DesktopHeight = atoi(&p[1]); } + else + { + p = strchr(str, '%'); + if(p) + { + settings->PercentScreen = atoi(str); + } + } free(str); } From 983820006889d329d03ad1d5312dbbd6e6ca2ec1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Wed, 6 Aug 2014 12:08:00 -0400 Subject: [PATCH 050/170] libfreerdp-core: fix unix domain socket support --- include/freerdp/server/shadow.h | 1 + libfreerdp/core/tcp.c | 23 +++++++++++++++++------ libfreerdp/core/tcp.h | 1 + server/shadow/shadow_server.c | 19 ++++++++++++++++++- 4 files changed, 37 insertions(+), 7 deletions(-) diff --git a/include/freerdp/server/shadow.h b/include/freerdp/server/shadow.h index 17820b996..3124bdac3 100644 --- a/include/freerdp/server/shadow.h +++ b/include/freerdp/server/shadow.h @@ -97,6 +97,7 @@ struct rdp_shadow_server DWORD port; BOOL mayView; BOOL mayInteract; + char* ipcSocket; char* ConfigPath; char* CertificateFile; char* PrivateKeyFile; diff --git a/libfreerdp/core/tcp.c b/libfreerdp/core/tcp.c index ce76d569e..6cecdca71 100644 --- a/libfreerdp/core/tcp.c +++ b/libfreerdp/core/tcp.c @@ -496,16 +496,21 @@ BOOL tcp_connect(rdpTcp* tcp, const char* hostname, int port, int timeout) return FALSE; if (hostname[0] == '/') + tcp->ipcSocket = TRUE; + + if (tcp->ipcSocket) { tcp->sockfd = freerdp_uds_connect(hostname); if (tcp->sockfd < 0) return FALSE; - tcp->socketBio = BIO_new_fd(tcp->sockfd, 1); + tcp->socketBio = BIO_new(BIO_s_simple_socket()); if (!tcp->socketBio) return FALSE; + + BIO_set_fd(tcp->socketBio, tcp->sockfd, BIO_CLOSE); } else { @@ -568,7 +573,7 @@ BOOL tcp_connect(rdpTcp* tcp, const char* hostname, int port, int timeout) tcp->socketBio = BIO_new(BIO_s_simple_socket()); if (!tcp->socketBio) - return -1; + return FALSE; BIO_set_fd(tcp->socketBio, tcp->sockfd, BIO_CLOSE); } @@ -581,8 +586,11 @@ BOOL tcp_connect(rdpTcp* tcp, const char* hostname, int port, int timeout) option_value = 1; option_len = sizeof(option_value); - if (setsockopt(tcp->sockfd, IPPROTO_TCP, TCP_NODELAY, (void*) &option_value, option_len) < 0) - fprintf(stderr, "%s: unable to set TCP_NODELAY\n", __FUNCTION__); + if (!tcp->ipcSocket) + { + if (setsockopt(tcp->sockfd, IPPROTO_TCP, TCP_NODELAY, (void*) &option_value, option_len) < 0) + fprintf(stderr, "%s: unable to set TCP_NODELAY\n", __FUNCTION__); + } /* receive buffer must be a least 32 K */ if (getsockopt(tcp->sockfd, SOL_SOCKET, SO_RCVBUF, (void*) &option_value, &option_len) == 0) @@ -600,8 +608,11 @@ BOOL tcp_connect(rdpTcp* tcp, const char* hostname, int port, int timeout) } } - if (!tcp_set_keep_alive_mode(tcp)) - return FALSE; + if (!tcp->ipcSocket) + { + if (!tcp_set_keep_alive_mode(tcp)) + return FALSE; + } tcp->bufferedBio = BIO_new(BIO_s_buffered_socket()); diff --git a/libfreerdp/core/tcp.h b/libfreerdp/core/tcp.h index 9f65522f3..bfb0f8d00 100644 --- a/libfreerdp/core/tcp.h +++ b/libfreerdp/core/tcp.h @@ -46,6 +46,7 @@ typedef struct rdp_tcp rdpTcp; struct rdp_tcp { int sockfd; + BOOL ipcSocket; char ip_address[32]; BYTE mac_address[6]; rdpSettings* settings; diff --git a/server/shadow/shadow_server.c b/server/shadow/shadow_server.c index d4faaa6b6..cdb290701 100644 --- a/server/shadow/shadow_server.c +++ b/server/shadow/shadow_server.c @@ -51,6 +51,7 @@ extern rdpShadowSubsystem* Win_ShadowCreateSubsystem(rdpShadowServer* server); static COMMAND_LINE_ARGUMENT_A shadow_args[] = { { "port", COMMAND_LINE_VALUE_REQUIRED, "", NULL, NULL, -1, NULL, "Server port" }, + { "ipc-socket", COMMAND_LINE_VALUE_REQUIRED, "", NULL, NULL, -1, NULL, "Server IPC socket" }, { "monitors", COMMAND_LINE_VALUE_OPTIONAL, "<0,1,2...>", NULL, NULL, -1, NULL, "Select or list monitors" }, { "may-view", COMMAND_LINE_VALUE_BOOL, NULL, BoolValueTrue, NULL, -1, NULL, "Clients may view without prompt" }, { "may-interact", COMMAND_LINE_VALUE_BOOL, NULL, BoolValueTrue, NULL, -1, NULL, "Clients may interact without prompt" }, @@ -175,6 +176,10 @@ int shadow_server_parse_command_line(rdpShadowServer* server, int argc, char** a { server->port = (DWORD) atoi(arg->Value); } + CommandLineSwitchCase(arg, "ipc-socket") + { + server->ipcSocket = _strdup(arg->Value); + } CommandLineSwitchCase(arg, "may-view") { server->mayView = arg->Value ? TRUE : FALSE; @@ -312,6 +317,7 @@ void* shadow_server_thread(rdpShadowServer* server) int shadow_server_start(rdpShadowServer* server) { + BOOL status; WSADATA wsaData; if (WSAStartup(MAKEWORD(2, 2), &wsaData) != 0) @@ -321,7 +327,12 @@ int shadow_server_start(rdpShadowServer* server) signal(SIGPIPE, SIG_IGN); #endif - if (server->listener->Open(server->listener, NULL, (UINT16) server->port)) + if (!server->ipcSocket) + status = server->listener->Open(server->listener, NULL, (UINT16) server->port); + else + status = server->listener->OpenLocal(server->listener, server->ipcSocket); + + if (status) { server->thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) shadow_server_thread, (void*) server, 0, NULL); @@ -483,6 +494,12 @@ int shadow_server_uninit(rdpShadowServer* server) server->PrivateKeyFile = NULL; } + if (server->ipcSocket) + { + free(server->ipcSocket); + server->ipcSocket = NULL; + } + return 1; } From 4f41f03ad746e079db9c760a7a678fab2576676a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Wed, 6 Aug 2014 14:18:34 -0400 Subject: [PATCH 051/170] shadow: fix X11 non-XShm support --- server/shadow/X11/x11_shadow.c | 27 +++++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/server/shadow/X11/x11_shadow.c b/server/shadow/X11/x11_shadow.c index 2b3e77f02..62103bde2 100644 --- a/server/shadow/X11/x11_shadow.c +++ b/server/shadow/X11/x11_shadow.c @@ -170,20 +170,16 @@ void x11_shadow_validate_region(x11ShadowSubsystem* subsystem, int x, int y, int int x11_shadow_invalidate_region(x11ShadowSubsystem* subsystem, int x, int y, int width, int height) { rdpShadowServer* server; - rdpShadowScreen* screen; RECTANGLE_16 invalidRect; server = subsystem->server; - screen = server->screen; invalidRect.left = x; invalidRect.top = y; invalidRect.right = x + width; invalidRect.bottom = y + height; - EnterCriticalSection(&(screen->lock)); - region16_union_rect(&(screen->invalidRegion), &(screen->invalidRegion), &invalidRect); - LeaveCriticalSection(&(screen->lock)); + region16_union_rect(&(subsystem->invalidRegion), &(subsystem->invalidRegion), &invalidRect); return 1; } @@ -210,7 +206,8 @@ int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem) surfaceRect.bottom = surface->y + surface->height; region16_clear(&(surface->invalidRegion)); - region16_intersect_rect(&(surface->invalidRegion), &(screen->invalidRegion), &surfaceRect); + region16_copy(&(surface->invalidRegion), &(subsystem->invalidRegion)); + region16_intersect_rect(&(surface->invalidRegion), &(surface->invalidRegion), &surfaceRect); if (region16_is_empty(&(surface->invalidRegion))) return 1; @@ -233,21 +230,29 @@ int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem) image = subsystem->fb_image; + EnterCriticalSection(&(surface->lock)); + freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, surface->scanline, x - surface->x, y - surface->y, width, height, (BYTE*) image->data, PIXEL_FORMAT_XRGB32, image->bytes_per_line, x, y); + + LeaveCriticalSection(&(surface->lock)); } else { image = XGetImage(subsystem->display, subsystem->root_window, x, y, width, height, AllPlanes, ZPixmap); + EnterCriticalSection(&(surface->lock)); + freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, surface->scanline, x - surface->x, y - surface->y, width, height, (BYTE*) image->data, PIXEL_FORMAT_XRGB32, image->bytes_per_line, 0, 0); + LeaveCriticalSection(&(surface->lock)); + XDestroyImage(image); } @@ -323,6 +328,12 @@ void* x11_shadow_subsystem_thread(x11ShadowSubsystem* subsystem) if ((status == WAIT_TIMEOUT) || (GetTickCount64() > frameTime)) { x11_shadow_invalidate_region(subsystem, 0, 0, subsystem->width, subsystem->height); + x11_shadow_surface_copy(subsystem); + + if (subsystem->SurfaceUpdate) + subsystem->SurfaceUpdate((rdpShadowSubsystem*) subsystem, &(subsystem->invalidRegion)); + + region16_clear(&(subsystem->invalidRegion)); dwInterval = 1000 / fps; frameTime += dwInterval; @@ -727,6 +738,8 @@ void x11_shadow_subsystem_free(x11ShadowSubsystem* subsystem) x11_shadow_subsystem_uninit(subsystem); + region16_uninit(&(subsystem->invalidRegion)); + free(subsystem); } @@ -741,6 +754,8 @@ x11ShadowSubsystem* x11_shadow_subsystem_new(rdpShadowServer* server) subsystem->server = server; + region16_init(&(subsystem->invalidRegion)); + subsystem->Init = (pfnShadowSubsystemInit) x11_shadow_subsystem_init; subsystem->Uninit = (pfnShadowSubsystemInit) x11_shadow_subsystem_uninit; subsystem->Start = (pfnShadowSubsystemStart) x11_shadow_subsystem_start; From 1f2f9dfbdcfad03c9035c844861d7bac6fdbc497 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benoi=CC=82t=20LeBlanc?= Date: Wed, 6 Aug 2014 17:02:21 -0400 Subject: [PATCH 052/170] fix gdi_resize: set primary_buffer to NULL to avoid use after free --- libfreerdp/gdi/gdi.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libfreerdp/gdi/gdi.c b/libfreerdp/gdi/gdi.c index 86fbb7e7b..4fa6559e5 100644 --- a/libfreerdp/gdi/gdi.c +++ b/libfreerdp/gdi/gdi.c @@ -981,6 +981,7 @@ void gdi_resize(rdpGdi* gdi, int width, int height) gdi->width = width; gdi->height = height; gdi_bitmap_free_ex(gdi->primary); + gdi->primary_buffer = NULL; gdi_init_primary(gdi); } } From d9d9bf36094ba41e0d52defa18b8b424ef3d0e83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Wed, 6 Aug 2014 17:51:38 -0400 Subject: [PATCH 053/170] shadow: start detecting invalid regions manually --- include/freerdp/server/shadow.h | 2 + server/shadow/CMakeLists.txt | 2 + server/shadow/X11/x11_shadow.c | 108 +++++++++++++++++++- server/shadow/shadow.h | 1 + server/shadow/shadow_capture.c | 172 ++++++++++++++++++++++++++++++++ server/shadow/shadow_capture.h | 50 ++++++++++ server/shadow/shadow_server.c | 5 + 7 files changed, 338 insertions(+), 2 deletions(-) create mode 100644 server/shadow/shadow_capture.c create mode 100644 server/shadow/shadow_capture.h diff --git a/include/freerdp/server/shadow.h b/include/freerdp/server/shadow.h index 3124bdac3..baaac3e5c 100644 --- a/include/freerdp/server/shadow.h +++ b/include/freerdp/server/shadow.h @@ -44,6 +44,7 @@ typedef struct rdp_shadow_server rdpShadowServer; typedef struct rdp_shadow_screen rdpShadowScreen; typedef struct rdp_shadow_surface rdpShadowSurface; typedef struct rdp_shadow_encoder rdpShadowEncoder; +typedef struct rdp_shadow_capture rdpShadowCapture; typedef struct rdp_shadow_subsystem rdpShadowSubsystem; typedef rdpShadowSubsystem* (*pfnShadowCreateSubsystem)(rdpShadowServer* server); @@ -92,6 +93,7 @@ struct rdp_shadow_server wArrayList* clients; rdpShadowScreen* screen; rdpShadowSurface* surface; + rdpShadowCapture* capture; rdpShadowSubsystem* subsystem; DWORD port; diff --git a/server/shadow/CMakeLists.txt b/server/shadow/CMakeLists.txt index d37067216..620e1b979 100644 --- a/server/shadow/CMakeLists.txt +++ b/server/shadow/CMakeLists.txt @@ -126,6 +126,8 @@ set(${MODULE_PREFIX}_SRCS shadow_surface.h shadow_encoder.c shadow_encoder.h + shadow_capture.c + shadow_capture.h shadow_channels.c shadow_channels.h shadow_encomsp.c diff --git a/server/shadow/X11/x11_shadow.c b/server/shadow/X11/x11_shadow.c index 62103bde2..430c5b482 100644 --- a/server/shadow/X11/x11_shadow.c +++ b/server/shadow/X11/x11_shadow.c @@ -38,6 +38,7 @@ #include #include "../shadow_screen.h" +#include "../shadow_capture.h" #include "../shadow_surface.h" #include "x11_shadow.h" @@ -263,6 +264,101 @@ int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem) return 1; } +int x11_shadow_screen_grab(x11ShadowSubsystem* subsystem) +{ + int status; + int x, y; + int width, height; + XImage* image; + rdpShadowScreen* screen; + rdpShadowServer* server; + rdpShadowSurface* surface; + RECTANGLE_16 invalidRect; + + server = subsystem->server; + surface = server->surface; + screen = server->screen; + + XLockDisplay(subsystem->display); + + if (subsystem->use_xshm) + { + XCopyArea(subsystem->display, subsystem->root_window, subsystem->fb_pixmap, + subsystem->xshm_gc, 0, 0, subsystem->width, subsystem->height, 0, 0); + + XSync(subsystem->display, False); + + image = subsystem->fb_image; + + EnterCriticalSection(&(surface->lock)); + + status = shadow_capture_compare(surface->data, surface->scanline, surface->width, surface->height, + (BYTE*) image->data, image->bytes_per_line, &invalidRect); + + if (status > 0) + { + x = invalidRect.left; + y = invalidRect.top; + width = invalidRect.right - invalidRect.left; + height = invalidRect.bottom - invalidRect.top; + + if (width > subsystem->width) + width = subsystem->width; + + if (height > subsystem->height) + height = subsystem->height; + + freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, + surface->scanline, x - surface->x, y - surface->y, width, height, + (BYTE*) image->data, PIXEL_FORMAT_XRGB32, + image->bytes_per_line, x, y); + + x11_shadow_invalidate_region(subsystem, x, y, width, height); + } + + LeaveCriticalSection(&(surface->lock)); + } + else + { + image = XGetImage(subsystem->display, subsystem->root_window, + 0, 0, subsystem->width, subsystem->height, AllPlanes, ZPixmap); + + EnterCriticalSection(&(surface->lock)); + + status = shadow_capture_compare(surface->data, surface->scanline, surface->width, surface->height, + (BYTE*) image->data, image->bytes_per_line, &invalidRect); + + if (status > 0) + { + x = invalidRect.left; + y = invalidRect.top; + width = invalidRect.right - invalidRect.left; + height = invalidRect.bottom - invalidRect.top; + + if (width > subsystem->width) + width = subsystem->width; + + if (height > subsystem->height) + height = subsystem->height; + + freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, + surface->scanline, x, y, width, height, + (BYTE*) image->data, PIXEL_FORMAT_XRGB32, + image->bytes_per_line, x, y); + + x11_shadow_invalidate_region(subsystem, x, y, width, height); + } + + LeaveCriticalSection(&(surface->lock)); + + XDestroyImage(image); + } + + XUnlockDisplay(subsystem->display); + + return 1; +} + void* x11_shadow_subsystem_thread(x11ShadowSubsystem* subsystem) { int fps; @@ -288,6 +384,9 @@ void* x11_shadow_subsystem_thread(x11ShadowSubsystem* subsystem) dwInterval = 1000 / fps; frameTime = GetTickCount64() + dwInterval; + //x11_shadow_invalidate_region(subsystem, 0, 0, subsystem->width, subsystem->height); + //x11_shadow_surface_copy(subsystem); + while (1) { dwTimeout = INFINITE; @@ -327,8 +426,13 @@ void* x11_shadow_subsystem_thread(x11ShadowSubsystem* subsystem) { if ((status == WAIT_TIMEOUT) || (GetTickCount64() > frameTime)) { - x11_shadow_invalidate_region(subsystem, 0, 0, subsystem->width, subsystem->height); - x11_shadow_surface_copy(subsystem); + x11_shadow_screen_grab(subsystem); + + if (0) + { + x11_shadow_invalidate_region(subsystem, 0, 0, subsystem->width, subsystem->height); + x11_shadow_surface_copy(subsystem); + } if (subsystem->SurfaceUpdate) subsystem->SurfaceUpdate((rdpShadowSubsystem*) subsystem, &(subsystem->invalidRegion)); diff --git a/server/shadow/shadow.h b/server/shadow/shadow.h index b474c68c6..c6f3109bc 100644 --- a/server/shadow/shadow.h +++ b/server/shadow/shadow.h @@ -26,6 +26,7 @@ #include "shadow_screen.h" #include "shadow_surface.h" #include "shadow_encoder.h" +#include "shadow_capture.h" #include "shadow_channels.h" #ifdef __cplusplus diff --git a/server/shadow/shadow_capture.c b/server/shadow/shadow_capture.c new file mode 100644 index 000000000..5b8d0eac1 --- /dev/null +++ b/server/shadow/shadow_capture.c @@ -0,0 +1,172 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include + +#include "shadow_surface.h" + +#include "shadow_capture.h" + +int shadow_capture_compare(BYTE* pData1, int nStep1, int nWidth, int nHeight, BYTE* pData2, int nStep2, RECTANGLE_16* rect) +{ + BOOL equal; + BOOL allEqual; + int tw, th; + int tx, ty, k; + int nrow, ncol; + int l, t, r, b; + BYTE *p1, *p2; + BOOL rows[1024]; + BOOL cols[1024]; + BOOL grid[1024][1024]; + + allEqual = TRUE; + FillMemory(rows, sizeof(rows), 0xFF); + FillMemory(cols, sizeof(cols), 0xFF); + FillMemory(grid, sizeof(grid), 0xFF); + ZeroMemory(rect, sizeof(RECTANGLE_16)); + + nrow = (nHeight + 15) / 16; + ncol = (nWidth + 15) / 16; + + l = ncol + 1; + r = -1; + + t = nrow + 1; + b = -1; + + for (ty = 0; ty < nrow; ty++) + { + th = ((ty + 1) == nrow) ? nHeight % 16 : 16; + + for (tx = 0; tx < ncol; tx++) + { + equal = TRUE; + tw = ((tx + 1) == ncol) ? nWidth % 16 : 16; + + p1 = &pData1[(ty * 16 * nStep1) + (tx * 16 * 4)]; + p2 = &pData2[(ty * 16 * nStep2) + (tx * 16 * 4)]; + + for (k = 0; k < th; k++) + { + if (memcmp(p1, p2, tw) != 0) + { + equal = FALSE; + break; + } + + p1 += nStep1; + p2 += nStep2; + } + + if (!equal) + { + grid[ty][tx] = FALSE; + rows[ty] = FALSE; + cols[tx] = FALSE; + + if (l > tx) + l = tx; + + if (r < tx) + r = tx; + } + } + + if (!rows[ty]) + { + allEqual = FALSE; + + if (t > ty) + t = ty; + + if (b < ty) + b = ty; + } + } + + if (allEqual) + return 0; + + rect->left = l * 16; + rect->top = t * 16; + rect->right = (r + 1) * 16; + rect->bottom = (b + 1) * 16; + + if (0) + { + printf("\n"); + + for (tx = 0; tx < ncol; tx++) + printf("-"); + printf("\n"); + + for (tx = 0; tx < ncol; tx++) + printf("%s", cols[tx] ? "O" : "X"); + printf("\n"); + + for (tx = 0; tx < ncol; tx++) + printf("-"); + printf("\n"); + + for (ty = 0; ty < nrow; ty++) + { + for (tx = 0; tx < ncol; tx++) + { + printf("%s", grid[ty][tx] ? "O" : "X"); + } + + printf("|%s|\n", rows[ty] ? "O" : "X"); + } + } + + return 1; +} + +rdpShadowCapture* shadow_capture_new(rdpShadowServer* server) +{ + rdpShadowCapture* capture; + + capture = (rdpShadowCapture*) calloc(1, sizeof(rdpShadowCapture)); + + if (!capture) + return NULL; + + capture->server = server; + + if (!InitializeCriticalSectionAndSpinCount(&(capture->lock), 4000)) + return NULL; + + return capture; +} + +void shadow_capture_free(rdpShadowCapture* capture) +{ + if (!capture) + return; + + DeleteCriticalSection(&(capture->lock)); + + free(capture); +} + diff --git a/server/shadow/shadow_capture.h b/server/shadow/shadow_capture.h new file mode 100644 index 000000000..efac76c18 --- /dev/null +++ b/server/shadow/shadow_capture.h @@ -0,0 +1,50 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FREERDP_SHADOW_SERVER_CAPTURE_H +#define FREERDP_SHADOW_SERVER_CAPTURE_H + +#include + +#include +#include + +struct rdp_shadow_capture +{ + rdpShadowServer* server; + + int width; + int height; + + CRITICAL_SECTION lock; +}; + +#ifdef __cplusplus +extern "C" { +#endif + +int shadow_capture_compare(BYTE* pData1, int nStep1, int nWidth, int nHeight, BYTE* pData2, int nStep2, RECTANGLE_16* rect); + +rdpShadowCapture* shadow_capture_new(rdpShadowServer* server); +void shadow_capture_free(rdpShadowCapture* capture); + +#ifdef __cplusplus +} +#endif + +#endif /* FREERDP_SHADOW_SERVER_CAPTURE_H */ diff --git a/server/shadow/shadow_server.c b/server/shadow/shadow_server.c index cdb290701..ab9772951 100644 --- a/server/shadow/shadow_server.c +++ b/server/shadow/shadow_server.c @@ -463,6 +463,11 @@ int shadow_server_init(rdpShadowServer* server) if (!server->screen) return -1; + server->capture = shadow_capture_new(server); + + if (!server->capture) + return -1; + return 1; } From c51c5df2ff7e7cd79464155fbb9189a17fa03852 Mon Sep 17 00:00:00 2001 From: Pavel Tsekov Date: Thu, 7 Aug 2014 00:58:58 +0300 Subject: [PATCH 054/170] * include/freerdp/codec/color.h: (freerdp_color_convert_drawing_order_color_to_gdi_color): Declare new function. * libfreerdp/codec/color.c: (freerdp_color_convert_drawing_order_color_to_gdi_color): Implement. (freerdp_image_convert_8bpp): Properly use the ARGB32/ABGR32/RGB32/BGR32 macros when converting 8bpp data to 32bpp. (freerdp_image_convert_32bpp): Fix CLRCONV_ALPHA and CLRCONV_INVERT processing for 32bpp destination. (freerdp_mono_image_convert): Use ARGB32/ABGR32 when converting to 32bpp and CLRCONV_ALPHA is set. * libfreerdp/core/orders.c: Color data from drawing orders is interpreted in big endian mode. * libfreerdp/core/update.c (update_read_palette): Likewise. * libfreerdp/gdi/16bpp.c (gdi_get_color_16bpp): GDI colors are stored as RGB now. * libfreerdp/gdi/32bpp.c (gdi_get_color_32bpp): Likewise. * libfreerdp/gdi/gdi.c: Use freerdp_color_convert_drawing_order_color_to_gdi_color() to convert from drawing order color representation to GDI color representation troughout. * libfreerdp/gdi/graphics.c (gdi_Glyph_BeginDraw): Likewise. (gdi_Glyph_EndDraw): Likewise. --- include/freerdp/codec/color.h | 1 + libfreerdp/codec/color.c | 136 ++++++++++++++++++++++------------ libfreerdp/core/orders.c | 18 ++--- libfreerdp/core/update.c | 4 +- libfreerdp/gdi/16bpp.c | 2 +- libfreerdp/gdi/32bpp.c | 2 +- libfreerdp/gdi/gdi.c | 24 +++--- libfreerdp/gdi/graphics.c | 9 ++- 8 files changed, 121 insertions(+), 75 deletions(-) diff --git a/include/freerdp/codec/color.h b/include/freerdp/codec/color.h index 4fdaf8aa9..c0c6f1b67 100644 --- a/include/freerdp/codec/color.h +++ b/include/freerdp/codec/color.h @@ -392,6 +392,7 @@ FREERDP_API UINT32 freerdp_color_convert_rgb_bgr(UINT32 srcColor, int srcBpp, in FREERDP_API UINT32 freerdp_color_convert_bgr_rgb(UINT32 srcColor, int srcBpp, int dstBpp, HCLRCONV clrconv); FREERDP_API UINT32 freerdp_color_convert_var_rgb(UINT32 srcColor, int srcBpp, int dstBpp, HCLRCONV clrconv); FREERDP_API UINT32 freerdp_color_convert_var_bgr(UINT32 srcColor, int srcBpp, int dstBpp, HCLRCONV clrconv); +FREERDP_API UINT32 freerdp_color_convert_drawing_order_color_to_gdi_color(UINT32 color, int bpp, HCLRCONV clrconv); FREERDP_API HCLRCONV freerdp_clrconv_new(UINT32 flags); FREERDP_API void freerdp_clrconv_free(HCLRCONV clrconv); diff --git a/libfreerdp/codec/color.c b/libfreerdp/codec/color.c index 8b2578a8b..305801de7 100644 --- a/libfreerdp/codec/color.c +++ b/libfreerdp/codec/color.c @@ -379,6 +379,43 @@ UINT32 freerdp_color_convert_var_bgr(UINT32 srcColor, int srcBpp, int dstBpp, HC return freerdp_color_convert_rgb_bgr(srcColor, srcBpp, dstBpp, clrconv); } +UINT32 freerdp_color_convert_drawing_order_color_to_gdi_color(UINT32 color, int bpp, HCLRCONV clrconv) +{ + UINT32 r, g, b; + + switch (bpp) + { + case 16: + color = (color & (UINT32) 0xFF00) | ((color >> 16) & (UINT32) 0xFF); + GetRGB16(r, g, b, color); + break; + + case 15: + color = (color & (UINT32) 0xFF00) | ((color >> 16) & (UINT32) 0xFF); + GetRGB15(r, g, b, color); + break; + + case 8: + color = (color >> 16) & (UINT32) 0xFF; + r = clrconv->palette->entries[color].red; + g = clrconv->palette->entries[color].green; + b = clrconv->palette->entries[color].blue; + break; + + case 1: + r = g = b = 0; + if (color != 0) + r = g = b = 0xFF; + break; + + default: + return color; + break; + } + + return RGB32(r, g, b); +} + BYTE* freerdp_image_convert_8bpp(BYTE* srcData, BYTE* dstData, int width, int height, int srcBpp, int dstBpp, HCLRCONV clrconv) { int i; @@ -470,11 +507,11 @@ BYTE* freerdp_image_convert_8bpp(BYTE* srcData, BYTE* dstData, int width, int he blue = clrconv->palette->entries[pixel].blue; if (clrconv->alpha) { - pixel = (clrconv->invert) ? ARGB32(0xFF, red, green, blue) : ABGR32(0xFF, red, green, blue); + pixel = (clrconv->invert) ? ABGR32(0xFF, red, green, blue) : ARGB32(0xFF, red, green, blue); } else { - pixel = (clrconv->invert) ? RGB32(red, green, blue) : BGR32(red, green, blue); + pixel = (clrconv->invert) ? BGR32(red, green, blue) : RGB32(red, green, blue); } *dst32 = pixel; dst32++; @@ -760,33 +797,47 @@ BYTE* freerdp_image_convert_32bpp(BYTE* srcData, BYTE* dstData, int width, int h } else if (dstBpp == 32) { + int i; + UINT32 pixel; + UINT32 alpha_mask; + UINT32* srcp; + UINT32* dstp; + BYTE red, green, blue; + if (!dstData) dstData = (BYTE*) _aligned_malloc(width * height * 4, 16); if (!dstData) return NULL; - if (clrconv->alpha) + alpha_mask = clrconv->alpha ? 0xFF000000 : 0; + + srcp = (UINT32*) srcData; + dstp = (UINT32*) dstData; + + if (clrconv->invert) { - int x, y; - BYTE* dstp; - - CopyMemory(dstData, srcData, width * height * 4); - - dstp = dstData; - for (y = 0; y < height; y++) + for (i = width * height; i > 0; i--) { - for (x = 0; x < width * 4; x += 4) - { - dstp += 3; - *dstp = 0xFF; - dstp++; - } + pixel = *srcp; + srcp++; + GetRGB32(red, green, blue, pixel); + pixel = alpha_mask | BGR32(red, green, blue); + *dstp = pixel; + dstp++; } } else { - CopyMemory(dstData, srcData, width * height * 4); + for (i = width * height; i > 0; i--) + { + pixel = *srcp; + srcp++; + GetRGB32(red, green, blue, pixel); + pixel = alpha_mask | RGB32(red, green, blue); + *dstp = pixel; + dstp++; + } } return dstData; @@ -995,36 +1046,9 @@ BYTE* freerdp_mono_image_convert(BYTE* srcData, int width, int height, int srcBp int bitIndex; BYTE redBg, greenBg, blueBg; BYTE redFg, greenFg, blueFg; - - switch (srcBpp) - { - case 8: - bgcolor &= 0xFF; - redBg = clrconv->palette->entries[bgcolor].red; - greenBg = clrconv->palette->entries[bgcolor].green; - blueBg = clrconv->palette->entries[bgcolor].blue; - - fgcolor &= 0xFF; - redFg = clrconv->palette->entries[fgcolor].red; - greenFg = clrconv->palette->entries[fgcolor].green; - blueFg = clrconv->palette->entries[fgcolor].blue; - break; - - case 16: - GetRGB16(redBg, greenBg, blueBg, bgcolor); - GetRGB16(redFg, greenFg, blueFg, fgcolor); - break; - - case 15: - GetRGB15(redBg, greenBg, blueBg, bgcolor); - GetRGB15(redFg, greenFg, blueFg, fgcolor); - break; - - default: - GetRGB32(redBg, greenBg, blueBg, bgcolor); - GetRGB32(redFg, greenFg, blueFg, fgcolor); - break; - } + + GetRGB32(redBg, greenBg, blueBg, bgcolor); + GetRGB32(redFg, greenFg, blueFg, fgcolor); if (dstBpp == 16) { @@ -1092,11 +1116,25 @@ BYTE* freerdp_mono_image_convert(BYTE* srcData, int width, int height, int srcBp { if ((bitMask >> bitIndex) & 0x01) { - *dst32 = (clrconv->invert) ? BGR32(redBg, greenBg, blueBg) : RGB32(redBg, greenBg, blueBg); + if (clrconv->alpha) + { + *dst32 = (clrconv->invert) ? ABGR32(0xFF, redBg, greenBg, blueBg) : ARGB32(0xFF, redBg, greenBg, blueBg); + } + else + { + *dst32 = (clrconv->invert) ? BGR32(redBg, greenBg, blueBg) : RGB32(redBg, greenBg, blueBg); + } } else { - *dst32 = (clrconv->invert) ? BGR32(redFg, greenFg, blueFg) : RGB32(redFg, greenFg, blueFg); + if (clrconv->alpha) + { + *dst32 = (clrconv->invert) ? ABGR32(0xFF, redFg, greenFg, blueFg) : ARGB32(0xFF, redFg, greenFg, blueFg); + } + else + { + *dst32 = (clrconv->invert) ? BGR32(redFg, greenFg, blueFg) : RGB32(redFg, greenFg, blueFg); + } } dst32++; } diff --git a/libfreerdp/core/orders.c b/libfreerdp/core/orders.c index 98b177f67..b5f7461c4 100644 --- a/libfreerdp/core/orders.c +++ b/libfreerdp/core/orders.c @@ -223,11 +223,11 @@ static INLINE BOOL update_read_color(wStream* s, UINT32* color) return FALSE; Stream_Read_UINT8(s, byte); - *color = byte; + *color = (UINT32) byte << 16; Stream_Read_UINT8(s, byte); - *color |= (byte << 8); + *color |= ((UINT32) byte << 8); Stream_Read_UINT8(s, byte); - *color |= (byte << 16); + *color |= (UINT32) byte; return TRUE; } @@ -979,7 +979,7 @@ BOOL update_read_opaque_rect_order(wStream* s, ORDER_INFO* orderInfo, OPAQUE_REC return FALSE; Stream_Read_UINT8(s, byte); - opaque_rect->color = (opaque_rect->color & 0xFFFFFF00) | byte; + opaque_rect->color = (opaque_rect->color & 0xFF00FFFF) | ((UINT32) byte << 16); } if (orderInfo->fieldFlags & ORDER_FIELD_06) @@ -988,7 +988,7 @@ BOOL update_read_opaque_rect_order(wStream* s, ORDER_INFO* orderInfo, OPAQUE_REC return FALSE; Stream_Read_UINT8(s, byte); - opaque_rect->color = (opaque_rect->color & 0xFFFF00FF) | (byte << 8); + opaque_rect->color = (opaque_rect->color & 0xFFFF00FF) | ((UINT32) byte << 8); } if (orderInfo->fieldFlags & ORDER_FIELD_07) @@ -997,7 +997,7 @@ BOOL update_read_opaque_rect_order(wStream* s, ORDER_INFO* orderInfo, OPAQUE_REC return FALSE; Stream_Read_UINT8(s, byte); - opaque_rect->color = (opaque_rect->color & 0xFF00FFFF) | (byte << 16); + opaque_rect->color = (opaque_rect->color & 0xFFFFFF00) | (UINT32) byte; } return TRUE; @@ -1178,7 +1178,7 @@ BOOL update_read_multi_opaque_rect_order(wStream* s, ORDER_INFO* orderInfo, MULT return FALSE; Stream_Read_UINT8(s, byte); - multi_opaque_rect->color = (multi_opaque_rect->color & 0xFFFFFF00) | byte; + multi_opaque_rect->color = (multi_opaque_rect->color & 0xFF00FFFF) | ((UINT32) byte << 16); } if (orderInfo->fieldFlags & ORDER_FIELD_06) @@ -1187,7 +1187,7 @@ BOOL update_read_multi_opaque_rect_order(wStream* s, ORDER_INFO* orderInfo, MULT return FALSE; Stream_Read_UINT8(s, byte); - multi_opaque_rect->color = (multi_opaque_rect->color & 0xFFFF00FF) | (byte << 8); + multi_opaque_rect->color = (multi_opaque_rect->color & 0xFFFF00FF) | ((UINT32) byte << 8); } if (orderInfo->fieldFlags & ORDER_FIELD_07) @@ -1196,7 +1196,7 @@ BOOL update_read_multi_opaque_rect_order(wStream* s, ORDER_INFO* orderInfo, MULT return FALSE; Stream_Read_UINT8(s, byte); - multi_opaque_rect->color = (multi_opaque_rect->color & 0xFF00FFFF) | (byte << 16); + multi_opaque_rect->color = (multi_opaque_rect->color & 0xFFFFFF00) | (UINT32) byte; } ORDER_FIELD_BYTE(8, multi_opaque_rect->numRectangles); diff --git a/libfreerdp/core/update.c b/libfreerdp/core/update.c index 9f8343d56..7b3897d46 100644 --- a/libfreerdp/core/update.c +++ b/libfreerdp/core/update.c @@ -230,9 +230,9 @@ BOOL update_read_palette(rdpUpdate* update, wStream* s, PALETTE_UPDATE* palette_ { entry = &palette_update->entries[i]; - Stream_Read_UINT8(s, entry->blue); - Stream_Read_UINT8(s, entry->green); Stream_Read_UINT8(s, entry->red); + Stream_Read_UINT8(s, entry->green); + Stream_Read_UINT8(s, entry->blue); } return TRUE; } diff --git a/libfreerdp/gdi/16bpp.c b/libfreerdp/gdi/16bpp.c index 3f96425e6..c595976fe 100644 --- a/libfreerdp/gdi/16bpp.c +++ b/libfreerdp/gdi/16bpp.c @@ -43,7 +43,7 @@ UINT16 gdi_get_color_16bpp(HGDI_DC hdc, GDI_COLOR color) BYTE r, g, b; UINT16 color16; - GetBGR32(r, g, b, color); + GetRGB32(r, g, b, color); if (hdc->rgb555) { diff --git a/libfreerdp/gdi/32bpp.c b/libfreerdp/gdi/32bpp.c index 33e1d19d9..c9df0f16a 100644 --- a/libfreerdp/gdi/32bpp.c +++ b/libfreerdp/gdi/32bpp.c @@ -44,7 +44,7 @@ UINT32 gdi_get_color_32bpp(HGDI_DC hdc, GDI_COLOR color) BYTE a, r, g, b; a = 0xFF; - GetBGR32(r, g, b, color); + GetRGB32(r, g, b, color); if (hdc->invert) { diff --git a/libfreerdp/gdi/gdi.c b/libfreerdp/gdi/gdi.c index 86fbb7e7b..e40656417 100644 --- a/libfreerdp/gdi/gdi.c +++ b/libfreerdp/gdi/gdi.c @@ -495,8 +495,8 @@ void gdi_patblt(rdpContext* context, PATBLT_ORDER* patblt) brush = &patblt->brush; - foreColor = freerdp_color_convert_rgb(patblt->foreColor, gdi->srcBpp, 24, gdi->clrconv); - backColor = freerdp_color_convert_rgb(patblt->backColor, gdi->srcBpp, 24, gdi->clrconv); + foreColor = freerdp_color_convert_drawing_order_color_to_gdi_color(patblt->foreColor, gdi->srcBpp, gdi->clrconv); + backColor = freerdp_color_convert_drawing_order_color_to_gdi_color(patblt->backColor, gdi->srcBpp, gdi->clrconv); originalColor = gdi_SetTextColor(gdi->drawing->hdc, foreColor); @@ -541,7 +541,7 @@ void gdi_patblt(rdpContext* context, PATBLT_ORDER* patblt) else { data = freerdp_mono_image_convert(brush->data, 8, 8, gdi->srcBpp, gdi->dstBpp, - patblt->backColor, patblt->foreColor, gdi->clrconv); + backColor, foreColor, gdi->clrconv); } hBmp = gdi_CreateBitmap(8, 8, gdi->drawing->hdc->bitsPerPixel, data); @@ -582,7 +582,8 @@ void gdi_opaque_rect(rdpContext* context, OPAQUE_RECT_ORDER* opaque_rect) gdi_CRgnToRect(opaque_rect->nLeftRect, opaque_rect->nTopRect, opaque_rect->nWidth, opaque_rect->nHeight, &rect); - brush_color = freerdp_color_convert_var_bgr(opaque_rect->color, gdi->srcBpp, 32, gdi->clrconv); + brush_color = freerdp_color_convert_drawing_order_color_to_gdi_color( + opaque_rect->color, gdi->srcBpp, gdi->clrconv); hBrush = gdi_CreateSolidBrush(brush_color); gdi_FillRect(gdi->drawing->hdc, &rect, hBrush); @@ -606,7 +607,8 @@ void gdi_multi_opaque_rect(rdpContext* context, MULTI_OPAQUE_RECT_ORDER* multi_o gdi_CRgnToRect(rectangle->left, rectangle->top, rectangle->width, rectangle->height, &rect); - brush_color = freerdp_color_convert_var_bgr(multi_opaque_rect->color, gdi->srcBpp, 32, gdi->clrconv); + brush_color = freerdp_color_convert_drawing_order_color_to_gdi_color( + multi_opaque_rect->color, gdi->srcBpp, gdi->clrconv); hBrush = gdi_CreateSolidBrush(brush_color); gdi_FillRect(gdi->drawing->hdc, &rect, hBrush); @@ -621,7 +623,8 @@ void gdi_line_to(rdpContext* context, LINE_TO_ORDER* lineTo) HGDI_PEN hPen; rdpGdi* gdi = context->gdi; - color = freerdp_color_convert_rgb(lineTo->penColor, gdi->srcBpp, 32, gdi->clrconv); + color = freerdp_color_convert_drawing_order_color_to_gdi_color( + lineTo->penColor, gdi->srcBpp, gdi->clrconv); hPen = gdi_CreatePen(lineTo->penStyle, lineTo->penWidth, (GDI_COLOR) color); gdi_SelectObject(gdi->drawing->hdc, (HGDIOBJECT) hPen); gdi_SetROP2(gdi->drawing->hdc, lineTo->bRop2); @@ -642,7 +645,8 @@ void gdi_polyline(rdpContext* context, POLYLINE_ORDER* polyline) DELTA_POINT* points; rdpGdi* gdi = context->gdi; - color = freerdp_color_convert_rgb(polyline->penColor, gdi->srcBpp, 32, gdi->clrconv); + color = freerdp_color_convert_drawing_order_color_to_gdi_color( + polyline->penColor, gdi->srcBpp, gdi->clrconv); hPen = gdi_CreatePen(GDI_PS_SOLID, 1, (GDI_COLOR) color); gdi_SelectObject(gdi->drawing->hdc, (HGDIOBJECT) hPen); gdi_SetROP2(gdi->drawing->hdc, polyline->bRop2); @@ -689,8 +693,8 @@ void gdi_mem3blt(rdpContext* context, MEM3BLT_ORDER* mem3blt) brush = &mem3blt->brush; bitmap = (gdiBitmap*) mem3blt->bitmap; - foreColor = freerdp_color_convert_rgb(mem3blt->foreColor, gdi->srcBpp, 24, gdi->clrconv); - backColor = freerdp_color_convert_rgb(mem3blt->backColor, gdi->srcBpp, 24, gdi->clrconv); + foreColor = freerdp_color_convert_drawing_order_color_to_gdi_color(mem3blt->foreColor, gdi->srcBpp, gdi->clrconv); + backColor = freerdp_color_convert_drawing_order_color_to_gdi_color(mem3blt->backColor, gdi->srcBpp, gdi->clrconv); originalColor = gdi_SetTextColor(gdi->drawing->hdc, foreColor); @@ -717,7 +721,7 @@ void gdi_mem3blt(rdpContext* context, MEM3BLT_ORDER* mem3blt) else { data = freerdp_mono_image_convert(brush->data, 8, 8, gdi->srcBpp, gdi->dstBpp, - mem3blt->backColor, mem3blt->foreColor, gdi->clrconv); + backColor, foreColor, gdi->clrconv); } hBmp = gdi_CreateBitmap(8, 8, gdi->drawing->hdc->bitsPerPixel, data); diff --git a/libfreerdp/gdi/graphics.c b/libfreerdp/gdi/graphics.c index 9f502fae8..2a546abd6 100644 --- a/libfreerdp/gdi/graphics.c +++ b/libfreerdp/gdi/graphics.c @@ -242,8 +242,10 @@ void gdi_Glyph_BeginDraw(rdpContext* context, int x, int y, int width, int heigh HGDI_BRUSH brush; rdpGdi* gdi = context->gdi; - bgcolor = freerdp_color_convert_var_bgr(bgcolor, gdi->srcBpp, 32, gdi->clrconv); - fgcolor = freerdp_color_convert_var_bgr(fgcolor, gdi->srcBpp, 32, gdi->clrconv); + bgcolor = freerdp_color_convert_drawing_order_color_to_gdi_color( + bgcolor, gdi->srcBpp, gdi->clrconv); + fgcolor = freerdp_color_convert_drawing_order_color_to_gdi_color( + fgcolor, gdi->srcBpp, gdi->clrconv); gdi_CRgnToRect(x, y, width, height, &rect); @@ -258,7 +260,8 @@ void gdi_Glyph_EndDraw(rdpContext* context, int x, int y, int width, int height, { rdpGdi* gdi = context->gdi; - bgcolor = freerdp_color_convert_var_bgr(bgcolor, gdi->srcBpp, 32, gdi->clrconv); + bgcolor = freerdp_color_convert_drawing_order_color_to_gdi_color( + bgcolor, gdi->srcBpp, gdi->clrconv); gdi->textColor = gdi_SetTextColor(gdi->drawing->hdc, bgcolor); } From 98cf129a11ade4c05abb31c5faa1f5e4bb8aea6b Mon Sep 17 00:00:00 2001 From: Pavel Tsekov Date: Thu, 7 Aug 2014 01:12:39 +0300 Subject: [PATCH 055/170] Do not invert fb contents when in 32bpp mode * client/Android/FreeRDPCore/jni/android_freerdp.c: (android_post_connect): Pass the proper flags to gdi_init(). (copy_pixel_buffer): Do not invert the framebuffer data when using 32bpp framebuffer. --- .../Android/FreeRDPCore/jni/android_freerdp.c | 40 ++++++------------- 1 file changed, 12 insertions(+), 28 deletions(-) diff --git a/client/Android/FreeRDPCore/jni/android_freerdp.c b/client/Android/FreeRDPCore/jni/android_freerdp.c index 5f75ce40e..544771902 100644 --- a/client/Android/FreeRDPCore/jni/android_freerdp.c +++ b/client/Android/FreeRDPCore/jni/android_freerdp.c @@ -141,6 +141,7 @@ BOOL android_pre_connect(freerdp* instance) static BOOL android_post_connect(freerdp* instance) { + UINT32 gdi_flags; rdpSettings *settings = instance->settings; DEBUG_ANDROID("android_post_connect"); @@ -154,9 +155,12 @@ static BOOL android_post_connect(freerdp* instance) instance->context->cache = cache_new(settings); - gdi_init(instance, CLRCONV_ALPHA | CLRCONV_INVERT | - ((instance->settings->ColorDepth > 16) ? CLRBUF_32BPP : CLRBUF_16BPP), - NULL); + if (instance->settings->ColorDepth > 16) + gdi_flags = CLRBUF_32BPP | CLRCONV_ALPHA | CLRCONV_INVERT; + else + gdi_flags = CLRBUF_16BPP; + + gdi_init(instance, gdi_flags, NULL); instance->update->BeginPaint = android_begin_paint; instance->update->EndPaint = android_end_paint; @@ -1014,7 +1018,7 @@ JNIEXPORT void JNICALL jni_freerdp_set_gateway_info(JNIEnv *env, jclass cls, jin static void copy_pixel_buffer(UINT8* dstBuf, UINT8* srcBuf, int x, int y, int width, int height, int wBuf, int hBuf, int bpp) { - int i, j; + int i; int length; int scanline; UINT8 *dstp, *srcp; @@ -1025,31 +1029,11 @@ static void copy_pixel_buffer(UINT8* dstBuf, UINT8* srcBuf, int x, int y, int wi srcp = (UINT8*) &srcBuf[(scanline * y) + (x * bpp)]; dstp = (UINT8*) &dstBuf[(scanline * y) + (x * bpp)]; - if (bpp == 4) + for (i = 0; i < height; i++) { - for (i = 0; i < height; i++) - { - for (j = 0; j < width * 4; j += 4) - { - // ARGB <-> ABGR - dstp[j + 0] = srcp[j + 2]; - dstp[j + 1] = srcp[j + 1]; - dstp[j + 2] = srcp[j + 0]; - dstp[j + 3] = srcp[j + 3]; - } - - srcp += scanline; - dstp += scanline; - } - } - else - { - for (i = 0; i < height; i++) - { - memcpy(dstp, srcp, length); - srcp += scanline; - dstp += scanline; - } + memcpy(dstp, srcp, length); + srcp += scanline; + dstp += scanline; } } From 5f9c36da5d5cd3c5dce49f7b32fe011cb293f9ec Mon Sep 17 00:00:00 2001 From: Rene Rheaume Date: Wed, 6 Aug 2014 22:06:01 -0400 Subject: [PATCH 056/170] * Use futimens that is POSIX-compliant and compatible with uclibc instead of futimes. * Borrowed eventfd_read and eventfd_write from bionic for uclibc compatibility (uclibc headers are broken unfortunately). Bionic and FreeRDP are both under the Apache 2.0 license. --- channels/drive/client/drive_file.c | 12 +++++++++--- winpr/libwinpr/comm/comm.c | 11 +++++++++++ winpr/libwinpr/comm/comm.h | 5 +++++ winpr/libwinpr/comm/comm_serial_sys.c | 3 +++ winpr/libwinpr/synch/event.c | 14 ++++++++++++++ 5 files changed, 42 insertions(+), 3 deletions(-) diff --git a/channels/drive/client/drive_file.c b/channels/drive/client/drive_file.c index d7b3852fc..9f38b228b 100644 --- a/channels/drive/client/drive_file.c +++ b/channels/drive/client/drive_file.c @@ -433,7 +433,11 @@ BOOL drive_file_set_information(DRIVE_FILE* file, UINT32 FsInformationClass, UIN int status; char* fullpath; struct STAT st; +#if defined(ANDROID) struct timeval tv[2]; +#else + struct timespec tv[2]; +#endif UINT64 LastWriteTime; UINT32 FileAttributes; UINT32 FileNameLength; @@ -454,15 +458,17 @@ BOOL drive_file_set_information(DRIVE_FILE* file, UINT32 FsInformationClass, UIN return FALSE; tv[0].tv_sec = st.st_atime; - tv[0].tv_usec = 0; tv[1].tv_sec = (LastWriteTime > 0 ? FILE_TIME_RDP_TO_SYSTEM(LastWriteTime) : st.st_mtime); - tv[1].tv_usec = 0; #ifndef WIN32 /* TODO on win32 */ #ifdef ANDROID + tv[0].tv_usec = 0; + tv[1].tv_usec = 0; utimes(file->fullpath, tv); #else - futimes(file->fd, tv); + tv[0].tv_nsec = 0; + tv[1].tv_nsec = 0; + futimens(file->fd, tv); #endif if (FileAttributes > 0) diff --git a/winpr/libwinpr/comm/comm.c b/winpr/libwinpr/comm/comm.c index 93ea80ea4..5aa213894 100644 --- a/winpr/libwinpr/comm/comm.c +++ b/winpr/libwinpr/comm/comm.c @@ -1495,5 +1495,16 @@ BOOL CommCloseHandle(HANDLE handle) return TRUE; } +#ifdef __UCLIBC__ +int eventfd_read(int fd, eventfd_t* value) +{ + return (read(fd, value, sizeof(*value)) == sizeof(*value)) ? 0 : -1; +} + +int eventfd_write(int fd, eventfd_t value) +{ + return (write(fd, &value, sizeof(value)) == sizeof(value)) ? 0 : -1; +} +#endif #endif /* __linux__ */ diff --git a/winpr/libwinpr/comm/comm.h b/winpr/libwinpr/comm/comm.h index 5531f2d7c..7714f3b55 100644 --- a/winpr/libwinpr/comm/comm.h +++ b/winpr/libwinpr/comm/comm.h @@ -92,6 +92,11 @@ void CommLog_Print(int wlog_level, char *fmt, ...); BOOL CommIsHandled(HANDLE handle); BOOL CommCloseHandle(HANDLE handle); +#ifdef __UCLIBC__ +int eventfd_read(int fd, eventfd_t* value); +int eventfd_write(int fd, eventfd_t value); +#endif + #endif /* __linux__ */ #endif /* WINPR_COMM_PRIVATE_H */ diff --git a/winpr/libwinpr/comm/comm_serial_sys.c b/winpr/libwinpr/comm/comm_serial_sys.c index 5ed2b89a5..d32a22a73 100644 --- a/winpr/libwinpr/comm/comm_serial_sys.c +++ b/winpr/libwinpr/comm/comm_serial_sys.c @@ -30,6 +30,9 @@ #include #include "comm_serial_sys.h" +#ifdef __UCLIBC__ +#include "comm.h" +#endif #include #include diff --git a/winpr/libwinpr/synch/event.c b/winpr/libwinpr/synch/event.c index 0bae21fa3..47c250952 100644 --- a/winpr/libwinpr/synch/event.c +++ b/winpr/libwinpr/synch/event.c @@ -121,6 +121,20 @@ HANDLE OpenEventA(DWORD dwDesiredAccess, BOOL bInheritHandle, LPCSTR lpName) return NULL; } +#ifdef HAVE_EVENTFD_H +#if defined(__UCLIBC__) +static int eventfd_read(int fd, eventfd_t* value) +{ + return (read(fd, value, sizeof(*value)) == sizeof(*value)) ? 0 : -1; +} + +static int eventfd_write(int fd, eventfd_t value) +{ + return (write(fd, &value, sizeof(value)) == sizeof(value)) ? 0 : -1; +} +#endif +#endif + BOOL SetEvent(HANDLE hEvent) { ULONG Type; From 281ab7848188d47e9dba93dd33dc4a03f90351e0 Mon Sep 17 00:00:00 2001 From: Rene Rheaume Date: Wed, 6 Aug 2014 22:37:14 -0400 Subject: [PATCH 057/170] Recompressed losslessy PNG and JPEG images --- .../res/drawable-hdpi/icon_button_add.png | Bin 1575 -> 1141 bytes .../res/drawable-hdpi/icon_edittext_clear.png | Bin 1540 -> 410 bytes .../drawable-hdpi/icon_edittext_search.png | Bin 2365 -> 1299 bytes .../drawable-hdpi/icon_launcher_freerdp.png | Bin 8832 -> 2971 bytes .../res/drawable-hdpi/icon_menu_about.png | Bin 2602 -> 2490 bytes .../res/drawable-hdpi/icon_menu_add.png | Bin 2891 -> 2796 bytes .../res/drawable-hdpi/icon_menu_close.png | Bin 3698 -> 3378 bytes .../drawable-hdpi/icon_menu_disconnect.png | Bin 7565 -> 4573 bytes .../drawable-hdpi/icon_menu_ext_keyboard.png | Bin 4048 -> 1230 bytes .../res/drawable-hdpi/icon_menu_help.png | Bin 2977 -> 2849 bytes .../drawable-hdpi/icon_menu_preferences.png | Bin 3106 -> 2981 bytes .../res/drawable-hdpi/icon_menu_settings.png | Bin 2701 -> 2632 bytes .../drawable-hdpi/icon_menu_sys_keyboard.png | Bin 4225 -> 1431 bytes .../drawable-hdpi/icon_menu_touch_pointer.png | Bin 5198 -> 2105 bytes .../res/drawable-hdpi/icon_star_off.png | Bin 2208 -> 1420 bytes .../res/drawable-hdpi/icon_star_on.png | Bin 2615 -> 2346 bytes .../res/drawable-hdpi/search_plate.9.png | Bin 301 -> 290 bytes .../res/drawable-hdpi/sym_keyboard_delete.png | Bin 2282 -> 1525 bytes .../sym_keyboard_feedback_delete.png | Bin 1278 -> 1021 bytes .../sym_keyboard_feedback_return.png | Bin 838 -> 642 bytes .../res/drawable-hdpi/sym_keyboard_return.png | Bin 1123 -> 774 bytes .../res/drawable-ldpi/icon_button_add.png | Bin 707 -> 659 bytes .../drawable-ldpi/icon_launcher_freerdp.png | Bin 6946 -> 1284 bytes .../res/drawable-ldpi/icon_menu_about.png | Bin 1499 -> 1463 bytes .../res/drawable-ldpi/icon_menu_add.png | Bin 1580 -> 1562 bytes .../drawable-ldpi/icon_menu_disconnect.png | Bin 5071 -> 2025 bytes .../res/drawable-ldpi/icon_menu_exit.png | Bin 1851 -> 1746 bytes .../drawable-ldpi/icon_menu_ext_keyboard.png | Bin 3611 -> 781 bytes .../res/drawable-ldpi/icon_menu_help.png | Bin 1624 -> 1559 bytes .../drawable-ldpi/icon_menu_preferences.png | Bin 1601 -> 1588 bytes .../res/drawable-ldpi/icon_menu_settings.png | Bin 1377 -> 1364 bytes .../drawable-ldpi/icon_menu_sys_keyboard.png | Bin 3851 -> 1064 bytes .../drawable-ldpi/icon_menu_touch_pointer.png | Bin 4153 -> 1296 bytes .../res/drawable-ldpi/icon_star_off.png | Bin 771 -> 747 bytes .../res/drawable-ldpi/icon_star_on.png | Bin 1176 -> 936 bytes .../res/drawable-ldpi/search_plate.9.png | Bin 237 -> 222 bytes .../res/drawable-ldpi/sym_keyboard_delete.png | Bin 892 -> 866 bytes .../sym_keyboard_feedback_delete.png | Bin 704 -> 645 bytes .../sym_keyboard_feedback_return.png | Bin 506 -> 459 bytes .../res/drawable-ldpi/sym_keyboard_return.png | Bin 572 -> 524 bytes .../res/drawable-mdpi/icon_button_add.png | Bin 930 -> 721 bytes .../res/drawable-mdpi/icon_edittext_clear.png | Bin 1540 -> 410 bytes .../drawable-mdpi/icon_edittext_search.png | Bin 1390 -> 931 bytes .../drawable-mdpi/icon_launcher_freerdp.png | Bin 7653 -> 1865 bytes .../res/drawable-mdpi/icon_menu_about.png | Bin 1842 -> 1781 bytes .../res/drawable-mdpi/icon_menu_add.png | Bin 2011 -> 1955 bytes .../drawable-mdpi/icon_menu_disconnect.png | Bin 5585 -> 2596 bytes .../res/drawable-mdpi/icon_menu_exit.png | Bin 2425 -> 2199 bytes .../drawable-mdpi/icon_menu_ext_keyboard.png | Bin 3835 -> 1064 bytes .../res/drawable-mdpi/icon_menu_help.png | Bin 1986 -> 1878 bytes .../drawable-mdpi/icon_menu_preferences.png | Bin 2096 -> 1978 bytes .../res/drawable-mdpi/icon_menu_settings.png | Bin 1767 -> 1721 bytes .../drawable-mdpi/icon_menu_sys_keyboard.png | Bin 3964 -> 1191 bytes .../drawable-mdpi/icon_menu_touch_pointer.png | Bin 4533 -> 1523 bytes .../res/drawable-mdpi/icon_star_off.png | Bin 1316 -> 1160 bytes .../res/drawable-mdpi/icon_star_on.png | Bin 1521 -> 1258 bytes .../res/drawable-mdpi/search_plate.9.png | Bin 293 -> 285 bytes .../res/drawable-mdpi/sym_keyboard_delete.png | Bin 829 -> 643 bytes .../sym_keyboard_feedback_delete.png | Bin 374 -> 268 bytes .../sym_keyboard_feedback_return.png | Bin 381 -> 266 bytes .../res/drawable-mdpi/sym_keyboard_return.png | Bin 866 -> 669 bytes .../res/drawable/icon_button_cancel.png | Bin 5071 -> 2025 bytes .../res/drawable/icon_launcher_freerdp.png | Bin 10166 -> 4198 bytes .../res/drawable/sym_keyboard_arrows.png | Bin 827 -> 605 bytes .../drawable/sym_keyboard_arrows_black.png | Bin 810 -> 574 bytes .../res/drawable/sym_keyboard_down_arrow.png | Bin 492 -> 327 bytes .../sym_keyboard_down_arrow_black.png | Bin 488 -> 312 bytes .../res/drawable/sym_keyboard_left_arrow.png | Bin 473 -> 319 bytes .../sym_keyboard_left_arrow_black.png | Bin 456 -> 311 bytes .../res/drawable/sym_keyboard_menu.png | Bin 1187 -> 955 bytes .../res/drawable/sym_keyboard_menu_black.png | Bin 1322 -> 1046 bytes .../res/drawable/sym_keyboard_right_arrow.png | Bin 492 -> 331 bytes .../sym_keyboard_right_arrow_black.png | Bin 474 -> 303 bytes .../res/drawable/sym_keyboard_up_arrow.png | Bin 504 -> 336 bytes .../drawable/sym_keyboard_up_arrow_black.png | Bin 493 -> 323 bytes .../res/drawable/sym_keyboard_winkey.png | Bin 937 -> 703 bytes .../drawable/sym_keyboard_winkey_black.png | Bin 917 -> 676 bytes .../res/drawable/touch_pointer_active.png | Bin 11248 -> 10050 bytes .../res/drawable/touch_pointer_default.png | Bin 10556 -> 9353 bytes .../drawable/touch_pointer_extkeyboard.png | Bin 10709 -> 9595 bytes .../res/drawable/touch_pointer_keyboard.png | Bin 10725 -> 9635 bytes .../res/drawable/touch_pointer_lclick.png | Bin 11052 -> 9661 bytes .../res/drawable/touch_pointer_rclick.png | Bin 10695 -> 9520 bytes .../res/drawable/touch_pointer_reset.png | Bin 10852 -> 9594 bytes .../res/drawable/touch_pointer_scroll.png | Bin 12723 -> 11847 bytes .../Android/aFreeRDP/assets/FreeRDP_Logo.png | Bin 40572 -> 32463 bytes .../about_page/background_transparent.png | Bin 1129 -> 75 bytes client/Android/aFreeRDP/assets/background.jpg | Bin 143173 -> 141907 bytes .../de_about_page/background_transparent.png | Bin 1129 -> 75 bytes .../aFreeRDP/assets/de_help_page/gestures.png | Bin 63377 -> 45123 bytes .../assets/de_help_page/gestures_phone.png | Bin 40104 -> 28173 bytes .../assets/de_help_page/nav_gestures.png | Bin 3747 -> 2394 bytes .../assets/de_help_page/nav_toolbar.png | Bin 3096 -> 2023 bytes .../assets/de_help_page/nav_touch_pointer.png | Bin 3540 -> 2306 bytes .../aFreeRDP/assets/de_help_page/toolbar.png | Bin 10926 -> 7261 bytes .../assets/de_help_page/toolbar_phone.png | Bin 8780 -> 5692 bytes .../assets/de_help_page/touch_pointer.png | Bin 128248 -> 111043 bytes .../de_help_page/touch_pointer_phone.png | Bin 102192 -> 88598 bytes .../aFreeRDP/assets/help_page/gestures.png | Bin 63377 -> 45123 bytes .../assets/help_page/gestures_phone.png | Bin 40104 -> 28173 bytes .../assets/help_page/nav_gestures.png | Bin 3747 -> 2394 bytes .../aFreeRDP/assets/help_page/nav_toolbar.png | Bin 3096 -> 2023 bytes .../assets/help_page/nav_touch_pointer.png | Bin 3540 -> 2306 bytes .../aFreeRDP/assets/help_page/toolbar.png | Bin 10926 -> 7261 bytes .../assets/help_page/toolbar_phone.png | Bin 8780 -> 5692 bytes .../assets/help_page/touch_pointer.png | Bin 128248 -> 111043 bytes .../assets/help_page/touch_pointer_phone.png | Bin 102192 -> 88598 bytes .../drawable-hdpi/icon_launcher_freerdp.png | Bin 8832 -> 2971 bytes .../drawable-ldpi/icon_launcher_freerdp.png | Bin 6946 -> 1284 bytes .../drawable-mdpi/icon_launcher_freerdp.png | Bin 7653 -> 1865 bytes .../res/drawable/icon_launcher_freerdp.png | Bin 10166 -> 4198 bytes client/iOS/Resources/Default-568h@2x.png | Bin 22681 -> 9188 bytes .../Resources/Default-Landscape@2x~ipad.png | Bin 43289 -> 17522 bytes .../iOS/Resources/Default-Landscape~ipad.png | Bin 17059 -> 6996 bytes .../Resources/Default-Portrait@2x~ipad.png | Bin 51234 -> 20494 bytes .../iOS/Resources/Default-Portrait~ipad.png | Bin 22374 -> 9352 bytes client/iOS/Resources/Default.png | Bin 9846 -> 4181 bytes client/iOS/Resources/Default@2x.png | Bin 21096 -> 9166 bytes client/iOS/Resources/Icon-72.png | Bin 3203 -> 1077 bytes client/iOS/Resources/Icon-72@2x.png | Bin 4940 -> 1860 bytes client/iOS/Resources/Icon.png | Bin 2864 -> 913 bytes client/iOS/Resources/Icon@2x.png | Bin 4240 -> 1521 bytes .../iOS/Resources/about_page/FreeRDP_Logo.png | Bin 40572 -> 32463 bytes client/iOS/Resources/about_page/back.jpg | Bin 143173 -> 141907 bytes .../about_page/background_transparent.png | Bin 1129 -> 75 bytes client/iOS/Resources/alert-black-button.png | Bin 1591 -> 638 bytes .../iOS/Resources/alert-black-button@2x.png | Bin 2168 -> 1142 bytes client/iOS/Resources/alert-gray-button.png | Bin 1622 -> 677 bytes client/iOS/Resources/alert-gray-button@2x.png | Bin 2363 -> 1353 bytes client/iOS/Resources/alert-red-button.png | Bin 1512 -> 529 bytes client/iOS/Resources/alert-red-button@2x.png | Bin 2062 -> 1091 bytes .../iOS/Resources/alert-window-landscape.png | Bin 3518 -> 2535 bytes .../Resources/alert-window-landscape@2x.png | Bin 5904 -> 4428 bytes client/iOS/Resources/alert-window.png | Bin 4886 -> 1871 bytes client/iOS/Resources/alert-window@2x.png | Bin 7537 -> 4202 bytes .../Resources/cancel_button_background.png | Bin 3150 -> 317 bytes client/iOS/Resources/help_page/back.jpg | Bin 143173 -> 141907 bytes client/iOS/Resources/help_page/gestures.png | Bin 63377 -> 45123 bytes .../Resources/help_page/gestures_phone.png | Bin 40104 -> 28173 bytes .../iOS/Resources/help_page/nav_gestures.png | Bin 3747 -> 2394 bytes .../iOS/Resources/help_page/nav_toolbar.png | Bin 3096 -> 2023 bytes .../Resources/help_page/nav_touch_pointer.png | Bin 3540 -> 2306 bytes client/iOS/Resources/help_page/toolbar.png | Bin 10926 -> 7261 bytes .../iOS/Resources/help_page/toolbar_phone.png | Bin 8780 -> 5692 bytes .../iOS/Resources/help_page/touch_pointer.png | Bin 128248 -> 111043 bytes .../help_page/touch_pointer_phone.png | Bin 102192 -> 88598 bytes .../iOS/Resources/icon_accessory_star_off.png | Bin 771 -> 747 bytes .../iOS/Resources/icon_accessory_star_on.png | Bin 1176 -> 936 bytes client/iOS/Resources/icon_key_arrow_down.png | Bin 237 -> 124 bytes client/iOS/Resources/icon_key_arrow_left.png | Bin 246 -> 127 bytes client/iOS/Resources/icon_key_arrow_right.png | Bin 249 -> 128 bytes client/iOS/Resources/icon_key_arrow_up.png | Bin 232 -> 126 bytes client/iOS/Resources/icon_key_arrows.png | Bin 317 -> 185 bytes client/iOS/Resources/icon_key_backspace.png | Bin 583 -> 444 bytes client/iOS/Resources/icon_key_menu.png | Bin 606 -> 454 bytes client/iOS/Resources/icon_key_return.png | Bin 265 -> 137 bytes client/iOS/Resources/icon_key_win.png | Bin 588 -> 430 bytes .../Resources/keyboard_button_background.png | Bin 3064 -> 243 bytes client/iOS/Resources/tabbar_icon_about.png | Bin 390 -> 238 bytes client/iOS/Resources/tabbar_icon_help.png | Bin 471 -> 288 bytes client/iOS/Resources/tabbar_icon_settings.png | Bin 541 -> 330 bytes .../iOS/Resources/toolbar_icon_disconnect.png | Bin 3501 -> 623 bytes .../iOS/Resources/toolbar_icon_extkeyboad.png | Bin 3292 -> 349 bytes client/iOS/Resources/toolbar_icon_home.png | Bin 3130 -> 393 bytes .../iOS/Resources/toolbar_icon_keyboard.png | Bin 3378 -> 596 bytes .../Resources/toolbar_icon_touchpointer.png | Bin 3244 -> 443 bytes client/iOS/Resources/toolbar_icon_win.png | Bin 584 -> 421 bytes client/iOS/Resources/touch_pointer_active.png | Bin 14571 -> 10041 bytes .../iOS/Resources/touch_pointer_default.png | Bin 14447 -> 9346 bytes .../Resources/touch_pointer_extkeyboard.png | Bin 14550 -> 9625 bytes .../iOS/Resources/touch_pointer_keyboard.png | Bin 14569 -> 9634 bytes client/iOS/Resources/touch_pointer_lclick.png | Bin 14647 -> 9729 bytes client/iOS/Resources/touch_pointer_rclick.png | Bin 14506 -> 9507 bytes client/iOS/Resources/touch_pointer_reset.png | Bin 14632 -> 9600 bytes client/iOS/Resources/touch_pointer_scroll.png | Bin 16307 -> 11849 bytes resources/FreeRDP_Icon.png | Bin 36551 -> 29029 bytes resources/FreeRDP_Icon_256px.png | Bin 6586 -> 3106 bytes resources/FreeRDP_Logo.png | Bin 40572 -> 32463 bytes 178 files changed, 0 insertions(+), 0 deletions(-) diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_button_add.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_button_add.png index 6e028b20b3ec898485bcf6bc55b39b6f1c7733cd..efc0707252046bcced144916d9cf4060204fb4bb 100644 GIT binary patch delta 1096 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 diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_edittext_clear.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_edittext_clear.png index 90db01b5bcf1246d6a94e83930cac63c93a6cf83..01b602280c7c3c5aca205b06306a053b53aabe43 100644 GIT binary patch delta 384 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 diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_launcher_freerdp.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_launcher_freerdp.png index 45ed8612398e90c7e7e481b0bb5853353fa0fe51..c6a8ade048d410d9831a3b5e3a48a8f98743fd46 100644 GIT binary patch delta 2966 zcmV;H3u*L#MVl9pBYz8GNkl zq*+ifQBej^N}_ArXzYlJD8>S!AXqRWM0qM;MXZP=iMvTW@vJ4$b=7F1QU3dXH;zjp zJ1{uI8JxUxe&JAl7Fsb9?2$aNjDw7cdZv> zO;X5J0&6ZcKvQ$ZahIeM}@{5!8m9(?ZS_ z(%o1Dy-2naXn(;bVrndcq6xHQJdun+kUhDfrJR40p2i@kDcMV)CB?+T7z9lx&=%(f z>ylj-rb>h3H|QFJ64aA?udN)4!Qe$3!u(TqNMSpRrHQ#ky2M}vH6Wi6Xv@HP$z`L` z@)l3dKh=8D&LfhJF&II^$pfvUXF)2@sd)dh{bdomkAIi)hB`ivf|`-yYUUoeE>6dU zoI?ngkAXLoL`&L0))X1Vs^47q8`;(Ooqg7LFqjnsX3L)R_3Wko5lZAm}x6{#gWh zCT@mZ)PEwFSoVhvMa3LAi?ChAilFnPb!`_kk>J?`ZNl4;3m|nI1k0T9_n`UfYjazZw#4)FedAWJ;xP6x5+!TRge?;Stk+nSWvz0UXcFk z49CAGBAQXen^PzxjccQz1OlB2>goycdysPpXGnRBaQ~l$_J4 zplPD_qr>#10L5heLr@6^IuM^EO*Z4GeEXzb|9~I0y4Tf2FPndKX1nDmWA-&lT z_ObDpQdm-6kcFWO>PK!?S;~ANL^Q_SmTrXi$}9w?<{~IV#@H?ScrR-o#$_MCn14(e zeyg^@n|0B^Ics1SIUlXuC%}33YDDBe$w9kFeM1-IN`9igiywW z+`~}qDi$+S`0it(gQ!x-KFA5>XHW}l~@|8pkVUow^5VA#(SEmSr{QtqJA9syc4ny zGOuV5qaSXNkp?NqW#Kw8tO8SVAd;?nIZ*T5B)$eEi1o`uC2~fk?Gl|o4S#v2ruY}J zuTepqsw;$16HGaeMyBO~JE7_!We60JKi8Nb&PY$;G%r~pVEDS+2NAL&M_ia8F_Rrg ziS3c{=tt1#%so$&u}2EoTreSw7h^z?BcK?CtK7owJ~pdBDu;dqQ9uP8wPJ1apM&T~-uE(E0Pz~~J5 zx=qB~u1y?AO0PJL7Sxm=U-C$+u+L@K^Qj;3RxkWufDksd&pf4DE(T-*Wn7wPV2AY{~c2ZF(1EPBN>K zXZU=fvaimNm(hMyEPrpU1XzA6MwUyR7OH5fBv zDQx{CVcNwFQrmY?hr6gfqvJ##;q3VAiJZ}>B4MOlgJ180LVv3=)lOlP%a23qMH??h zj6J&hh9PV3VO+m;2W9x*ar5>~Wak&6_oyf#NoqF$4u4BP%)zq=(|u)aQ4@mJ5NLv- zEr!@@ZsQ=eu!F~>k8$nBe^CDT`qEXTWPOew@7)!jpZVw482H{aF$C*VYCv+f=pyQB zh9j3qJADgkLVperXh7VU%ls4(IX2!C@!i$yD1Y4j={{V?PD5i3sl1|NxP1K@MogZG z@iP+O9P%NgSNp&!WE#X?yzUmhcgZ{Y6jYz|BHwDb2r=fv8A0ubM=|g8$A;Vj{Qk(@ zcNBFyxkBQuMN4}>bQ&BCsm%abdxc`<);u)jE=B|HtbYb)6_kGjPZx~Vr=X4`jNH;V zyttwt$2!EqJ^)ruLAZAF)>DF#x5{AQhPrm%oWYo&I}V1#UDW1%1F*m33po0zIK%Z7 zeQYLrT?(3}PeIOP3He#`^mM5dnBGBN*OwrVst5|-&5Pq-ym`M7aDN&Rh5HXHR`jT>4EaY(F=J^eX0OaZ z$yeV%Iqp691#ZC~in__4i_NIQ(?Wp8^%tY|gTv<$&a+Q)4!k%tN3G9+&+5+*vaL`V z_UhLkC;jv#s4tmA?p3my7R!pxA=B}y-B4Wk?h3RyzPa)}+VmQR#(e@fM2f}DQG&)9 zbAQ5)L#&;ap`}X*Mt&5JqBG}k@#ukp&m=|bY;31*DG1ie9qlk1gF^QYmv zW;^OxI$};zx>kbX)^35++!noK<3+Kk;rFl@Ex|CZxta|Og4F(9k=XsG%)YRD$2mV~FKI@*aLVd>zHz05b7j)LQ7(Y9|OOsxhXa9xgQi)a{HqIKf7D1Q|u z?cQOT-~#bHqpi1iRHhCm2&wG=bQlpM|q>Lo#d#RCFwKhkQ()JXQ@TQLnO>BlB za=~gGJaryFur~VX{sVC?Vsu5vr{LvYK4|O^AQCfcpUOLjkNZb1bJwB`7rYJo_`{UH z!<>1~go|QJ|HS}HVgLXD literal 8832 zcmd5?2|SeR_je1~LJ2GKI+eP^EuHLE52o+x8XOqLllW8X?6TZ_0z%dEc3H&U3!cIp=wv^ZiVsjg`rCnK?3IVq(+H zOlfw|r|I}hN)mc^d|YM%eW(fPE<$_m8es^N&lV$laXr~EGk>Nx+m6lj3JW~PHWU+^ zRmE{|5xQ7fkXT%Q1LnAlL8w0u(iRglTpG$_vV7S>m?ztt6JP`%uC9Z_I9^6@XRIY) z$)mD;IHuuzwtcvj11sE@Mf8F%HHI06k{|>AY#|dC>hBjIAcY#iKiVZh*W+I!;joV) zLSG~JC#PI2ZD3R`pAEwr00+e4)EfCU!A&(}oeNkHA5XNI8?brft z5TC`S2SX!je|AhDv}6A|HUB^z5}#D&`EZ3?fe-g9lQ8-7B~wf&+*nq0l4@bPL5D_#|ox<&YOs z$ea{LBLENqVjWN@5*km!5*GpBufkj}&YG~l74>3~)^Pd$OlXEV;}wGB1$ciP&C-%& z79bEZ16XV`nh_jw)qunCBGIrY6q<@dVHsEo2+~mm8Wu;U5pWm^3VJdypLJT1M7WaeTpi%G`DjL88#INM;SK~n-VNt(X4E~?v!64!pzpX(61BaqfK{AcbAQ0&w z_H!lusTxqw@oW*AK+7x&!h!iwa1ef9 z9~1%xpbKsj{08|E<3{XGS$G70X z5=q}&=idtl2JtbxtGF04xy?g5bB-2b5QM64YD%80!^-@P~5= z9%N7`80b_&XW%gOKkw(0b&euI{TB9H_w(<+6pm0%DDuK z$B>koB#5XVIN63_5Y zkd5nleSuy1V>k0BW@NkppJc2^pUD+6MDUCgC4vc>fx`5jBpi&#S)Y&04ehTxSHq7J z;KzY9KVE$@g8b{zK1%+EfBdWrk(%R|lWZz`4 zg^gr?P0gnKxySN-5Tdmb$qmiynN;{ZP)D)Za)(aD>Zt6Hy0fr()tQ6$?y#fN?)D7# ze0cfFxM?`7FT`0Uj#3F+URoe4-jJ9xkUiGJ>$@IVkCYZj`HK#TQbTKAzcd-%^w#Z? zepY#$C|=rG2_gElgwgDz4IYTXKpxxW=1t>mH-Kp>y-9#AWhZl|;pf48^9bol@6L0*A=;BZ)M{ zy5Vc0mHCEaOGQ^{@CUZKXga!9J97PutaJTy2km0E^uM=GpN*L(b>7}>(Sq~OGL>V2 z8B(Yj+4C-L?$0=^teUAP9(b`zx6wCPDN<>D&MeW=#!$;?xxxa+L7rl|c_+m*dE~@e z32oBG{I*V-i_!r7w8s&<)B@agS8R#2D^5j>ZRfdF z15JKzUDzR&+T1QPOLcprI=T0`J8Ive{W|UY+OKks#V&q(JbO#YTx)Umj3LdzhEglW zN_(Y82YhqeAL_&A#mSG&?e7?(FeYA#h+GUn!Oaz4k-kfD=M1@x?&egr<&nZd)dKi+zL3b4mNxwIvQDbZfOT>aNF^TsG)j+0)`+KP^pHdc9Ue+ez5?g4HvXFECe1Em)W#+vbpo@N=xU(Ajo+it*C-*?otSwu`^= z(M!0!?ro&Cr2a;pD^5>uTTj6$4_sGEEU zg1zz1nNxekmcQRJ+9i6Wc)!E1S4F;Rv4{LY+@e;rKO9!3JN?;BwXpR!=e>_=YxB&i zsPa4Cd~qEjqV$MPMaGOdCuQm*N}S~uk&Vn>73Fl+%SNUmd{M1_59`-5_y~8k-6HSp zb!Vt4Ql(3OS}FY@sL;D$8o^#-O7x~Yt^z{WP=ClI^)dtQX|u*ExUPTqqrJ-cT`<9; zxt2E$+RcB2$E??S*E>X&R%kUl_u+AMx{PU$p@x?`+O@O)#1^kOtHZa?UC1fD)0dI7 zk(#QbyCWysEnZppV8lkOOj1`)F{!IJzja5iOm2j~uiwU%fB+Q#+03Ti07s@0R0__2=*GTbEoM)0I;u8Clz8 zD1TovTxoUv;(b3mgvXSVYvaZCw4Ca3tv{XRh}FC{=d7eeXm0?y!zS^T*;Ta{p79C8 z!fBE3-=;XVMqVt$>#G~YzV2DK(`3LhoE6GyJlB1D-{Io<&$u)Ew=-e z&1dCq9NAX<>fT0%@^EjQmVAstjEU;aXV1c|Dho}~?v%3@*~YV$ca)qRd?WEB#rO4x zQS!>PE05_N7uA}xwoR?O(sa5zuVwB1eQm|=XPD%Zi5_8h9_q}ulx$0PzEu`dkvrg} zgu#?0tEhVR9aJ;TKj<^ezsYmdG+%h2<#p6_<3mf=?>OMZdV}>9-3_b`I|MfLE<{uS@BvqZ zp}gwoasO!=dRG07nH`=@7p(j5VJ~<%Ht+ZMY0T_NklUr2|N=6zTus;W+oej`0rS#jvi8G&h0r^718t#NT>ysI@Hypcgl}O8I)Ey6ToE zlvS&vi@dcF4}0UT&{gkipYbH;l&PcGB*eB2R@0uE6)9iLl3B?hEih4N0QI)ZCxivA zIEx5qdOoHmOoW@Nw_n}2nMBvjSsU^)Oop}}<=>Mqjxf=C zUyyX{LyGW*=5m8P`dY-6f@?gpYR(XEaSi(eFSXqAF$ zL-Fl9-O*dsRnq2KZPhy0p{%p}5+xLVQd?AWlLnV6)qbyg{HLBca&eiQrEBtNq)4@|p6*<-EV|z>)M(X#y!cuRQL-lWwW>>2i}GH<4)>&c74ngl ztPqP4*2Eot5@OiebG3AnDp(BoiZ*D4KoE*;F=h^JvQ9eAh0Ht>zD z;fH$lU6>G+dxzc5qoezr5-djUwkb3ny?rdC<(J3nEDDp;^XlLIJltebt&mW8mt(ZK zKIlM7%!r%0hVlG!`+TZI(hcFX5v3V<&Xz~LULZ^27y6=xx}WO=YwBw~$v`SN-W;;D zK5bX4_=~Cu>I`DE6YsV>gMc`TWuN}|LA0wvq4kF3w+9R z8`+k`CkuHN;`@*LbpwfUm)5s$5i8K9=Q}dtK;GVxZuQ|0KRTr z=b$2NHz*i2JoxSf0)F7=ppE2>u@c{>rFEvF*j5JEpkYJzx{<9eZYDcmIf7vwg{PY}MKj%5m z{rlYG`)09XE4E@QwqpO^hB*AUrNoauc`*-So65^3OWLmVU1pMQNqgBO6hV9Nq(nuy zt0{3Px^0-IO!0E2Ohz<*h?x(USI!jy@pH~flYk0Mh-+)hx9={?ZM2-o8p;~7oXBn5 zT~@yR+FBu?L2Y8@e-AifY`Nr|r*Ba^pfVL<#Jqgj;#YzGJz* z^OQB`^g5U!HmjR>2!FpEa{fdQXi%WEug|w--*}t5cfkuk0JaM zBl||at$jW7g|2aKmr@Gof2Y@_LHYdI!o8NudC)1OUN%ZYe}>SC12MQ2g28A#h3UwH z<#OS^KduqN!8LU=T4{;wI=#aLt$V%Yx9`A;ns6fw?!FD3=pu(^;Wi^}>@m>DEGu%5 zb++~=(2o3j#VzFwol&9HZL)m13so~s5rebQ!CfDkqnpfqVowJ%C@SK8xEq%7$}LdO zsY^6NQ}iMYe`?w5mYapBooPZVI_Av_k@J{0R~^xrs+%c-<=fJ2P~X#{)gI42pdaAD z@@>tUDn@-c1Rf^RHAiQpGt5X7Zbjzxkb?-JAzT8>RP|P92Tak5soNNRw+7L@F>8E3 z8lrM|s20$JUL23~p^t4ZdKUF|a6|}=;r+-O@7@Sje`D3hSv@Z)PpgelU*eDe18954lz1EryZ2U(fP29G_HACeMv#;ax#Rj!dzg@Mc`pn z&SJRh-;^_x-#ga!lu?3QnAHIuI9A9-ffZ(5%}8}|-=+5`tuJIxmdj9tKk~)MHZ)74 zWH9a0f2y--XW4$3W|TC`SkFRuhKiKS?8(*_dK6YpZGKLONr8-gwfX${hHwA}7sFVC ztk;F8Foi{!tq}EkgN&aUVwHUCt3}47=od&u5M4dJA@5d&Y(@(X#Gw`Svc}FuZx*zk zvR?C%@o7Rms$ho|#l(tIehM;bBtq7qW}~~QJ?gebZ8e=^_lui7glv>{t};z^~8nMyl_%bFnK{_Auv!&dL#&?sA@i6a+`V1|!ZirQfl<0!R#MPjN{O|Vx?8db3CD1T z++5V2Bn6RT6TgSY$0Ghm;F4}#h@F%IwnDgdmwZ${FE#Lb1gj%iL3|(-MrQRrAAFJ? zmufhrYk?q_?v&N=B|>t{cTE-{e}1MS$#XURmUixW?}QiC+(mr6D3eYKvQQA%3gOht zBu6AdvTtJeN4K?j#M=*~c7yiu2H!2OtVAM8f2D(hGARgb zg>dMlkI42)->r{RxN0b?HV$d?G#=b;!8M z$`C2oefqF6_+ntvD_s#czK;twX{VswloD(0x=p$eH#g#yfyu!a&nc{&>SNGm(W}DT zX$_#_p)0N+UE1vshMDPXe<{eW%ea}W5I|=M%*WKt;xV4g_9|KGu{Fj8Kb&DF%R1-b zl1>!ER`is5cJ=Y}Z&SVO%`2HcQ>B;PGC=9Mm8#Y&6Ds&Iy-e zA^N)hWV7sBE0e7 z)vK?Jy>f+&y?XVH2Sto7%yNW1Xqq~;71|Ibe?lT|+&4?1EM~+p zM`^^tr;ygao!J8Qf6wX?zS5hdf5Zd#hYek4f^fqgwxe_w9VK&59VO7`;&x`a5k%MU z@K2$Asfgf5EjiLJV;2+>TaS zLi>vTp#}x&XB+zMZ8w6bgoCndu*s5e44bqu;$Tk@Z8uKXe?Q}80-`TEJIi2~>2-=X z`r`cZy1`vX2RpADcLS)V02is`RshD`&g(}92X|dw2eS}fHK;_t%<|ZTfN+a#N^thC zg*(p;zj@NtZ}bhkKm7i1-$1`{(lz|%o#$eIEd-hA7T~C5wXnFyvlETW{I)4x#%ov96bU1Aw{h0Zfc_968TC?djm0|XR{4f21xAGU~imlj+t=Nh^ SDf<^&Y__g~#1v?gVhPB*7F@9a delta 2355 zcmV-33C#Ao6RH%DBntv!OGiWi0IH26GLa!He+d0aL_t(&-tAd^Y*W`2|DAi^^Rr)^ z4{!qEBMkvY!v>?Y6H}oDq%@52HCCoKq)up^C{(CJ9hz9xsjEP=pp|y06>O|4 zXs`~}4G2pRUv1YG1R78XWemtdaYCG6JGS4wXMfm0?D&}&m{d(USF+^y&OPUMfA`#T zf6jXk=#xI_lRoK_FSpR$P3L=V@{VV7RukE;{?7q1fH*7wpsBKwd;$!BqWS_iDlia( z=dQWxl_x?!dn@*dt&H#Y7(S~^59*lgH&q81_KBU)}1&EwElov7MXu;?*K6fmoOBo&85!KvdwkZp0P#+e^3IG zB?JVCn?@KKnl%&>)Q(of&h%UV#MWA?LBWAWOa)~d;(NaS{IcU)@RYiM%6rGqE-{nVOgR3gZ%l<#C`gzv zKoDtWZsi~ihJysO4y#LM`25Hpf4xv&k6PUuhUD!O+F)au{4rL}J@fm1!-hGwVUm>& zr+d1l}#KfA@IF}#@;aBiA*PcH5i_ZtiNA(W8d*^`8;1MjAE7hiPAN_W~f1shtBTa}5 z+70pvpZ1UiuQnu;PPCF zkqL(lDm-2MdO?&W02TGMKi%EJ>sS2#B33U1+g2Vq1} z%^Rvi%LlP71qhrzn5m0HvA>uH?cL^X^Pv5{*%9wzCg$#X8Uz7b4&u=A4b{~gMK}jT zu7DVSLlE=5C+8Oh0u0du4wy6?B*e@_L$oGQlW2&}NF;;<4W>+8e*#2+ivlO-&-Vtg zJ8K_xTZX=efY>=Wwy>0?pj0$u4h@GG_Xz_ADyfAW(pmKYf)u43TlnX}0WmLsh8Qu- zr7Ji*%PuLRBpjUqg_+@yihoU3`u}9TXH^uIlZqvX!Q4X^0HKKNk|VR4@m=b2<;XRt zz4(nB$enflSOUbUf3lDUnn;I5aP&zvwF3%(!?bvO849%)J#+y8lKr?=H+cPQ;d9&o zxr94|5R`{U{C$6Uxy{1$P;}y4EP5%fleNQR6bv11`dzm}bA(#1OrA2isZ_b0w5$v< zfHG04UYy`5GC{8NGAvYC;So-1OHA0Xpj{6&!Gu+Ka>C=Ee+>|Dscf!6Jy!tNt4&*E zIWyf)kD;yDjp2zI8gSQU5-{xW{YmTD#pMQ}Ofd9F38-XHY8OC$G1#iIhFim}Dr>Oi z&z2r=%L0^y8p#N_MuBTkdq8-;!~j?WSwcD)6ox1|Hh8s%1OSaVH!o{{z|ov#nJEiw zK$H-E?&j7Ve~_P9{LGNZS$Kql&Og@tjw#u~690Ob^8n|_Z6FE5V6oaYGr9tjK&l^f zoy(v&#}gZ6gS|BhH25|~S`*ABx%aBcPAOND;kueAktT!8t~7%3i!;t(~yH%|mN3@Y1Yr;9nxmgLo2EO5G4XBy0TI~P zBA?_Pb6egBl}4O&P8FhvKq2+y1slGMf7XH>pHUJTxM<$?E%cO%z`l*YUcRvURE($k z3FqIuHm1|jLfqUEjRX>`QvW1OGP{K(Yf^r*_+J%I&#XU=alLwB)vH%}L6oA=n8F8! zHN6^|*@2jXyfN`c-bprJ;wBshlqHK$ym#nNYma?^hgA@zz3|mbhFTH89<$bIe=hyt z$@ZVL5AQ%6sqU6~sDlCWpa>=BO4fbj50zK88;?676yu&T1OVqS0`JRjYtScE7rx)R zBwThKv1Ifxr2*@#|T%Z5| diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_add.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_add.png index 7b0dfc5e163e8aea196acbf59c06521de57437bc..f5b5fa55b8d743345b69bf763eaf4de38c0ee6ff 100644 GIT binary patch delta 2573 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 delta 2646 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 delta 3481 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 HlYk7eGD)fG diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_disconnect.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_disconnect.png index 172ae5f3d6063579eaee70e6c85f5b91612f7c7e..8e3e38cc77ad0ed76abb438d4c9b17586291ef8f 100644 GIT binary patch literal 4573 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 Hu0mjf-zZYg literal 7565 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 Z(m!31!rF`mDCYnG002ovPDHLkV1h{SOF#es literal 4048 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 Q7w8wec=`SlGn3g0$VTq~;s5{u delta 2733 zcmV;e3R3l<7NHlABntv!OGiWi0IH26GLa!He+qO-L_t(&-tAd?aFo>*|DAj9x3BEx zoe*MzK!8Z00xIAG1VumuL=aJ@0*)_=S`i<#73{PQGFosHN9dGF87l2q5fyXCe_k2L7bV{dm ze@dtPw1qBAoiDn{4r_B%6Vbo@(E%}l06YL7Mv5Ft69Hoh%>gduPc#^?Aul*qZ4?`| zkN`j{Etb(%d}1w-08oNzRQ5uca46DftrH8YTz+vHcl)0=e{<~ZNI5<6y~fS zyZ!3p&;vxVX~KuNs!CEc;K3*6$2#r6=@m3$*e!gvdB%WKX2DJ8Eb_3Iu=5|(hn0R;hpNPNzG z3J6Fj2$CX6ySVo1ZC9GY>9ua$f6S$L-JOb@C?u)l*fkWM<^rZp%RtFsD+* zY+#IG!v;(M5eNhc0TM3qnZ~?*V~*{ZQ;|)hcnkh^VSrvhH{@B1dG74mKjyfyv_mBO=q7G#qxL$uey(&}O$pu&)*JE4`?MFTqf2#TR!igoT zbCNTSB_ok(MnmirF5CTIXN3p>timZxmjrW~5VoP{RJt|72ebyMpHHnC|AA`EOa z>Jn*|FPis8@Oiru4ABule+GM5LNc9g9#g`XN9|ZYcgRPbN!AE$+%l z;W?4|(3tm*x*Le>ULgn&>9DnjNDkECcV20DIH;SSbqoWoe~^`5e~g=YN12Q2*ox^@ z#fy(2@|Da>btW*VJd)AX{e|`6eYrNRRdTojKh_ffSi~~dop-fB8YJsOvH2$RhrmkjaIe3f1(GI(zC;srBu4fR#u-! z;KL{E67G|MkU6ar(R0DW2d9u(D7bwQVgO3?vNsNQWx9cu=>mgEs79wHO;%0l9HLv%8Uojv^V=s+Y=K{ ztdzZpH0lP^#{r=k=UkMI9JhCT%82fi1_>~<$Kl(W^YpMIjkHWw^U5xjcUh9m*_r}Y z!lAy>b1(6p>ZrNzt0>}YCKmv$epa8%&lql%EvO<=IYcWMFx^CAp zSAGt>EMmA65Qx)lVsog9dNj%qw<_FoFOWuX^Puult4d5U&y3l*HYvZm@j#IPqO3P0 zAnSn!ZfB=f{DJIwk{WP^kS)zNf6FZDancV8f4j2PitIxRQd4rm4q-t=(K|(J<2=!X z8q>}Q9mi2YAzh8r##&y@aWh1AJ&s(-Vpwo^n{xcMn7}d~hqQ8=W51X#(l^fNf9#>I%5A7sWu3!0a6`8uBZP_dG^6NhK)%>- ze^yMXS#7-Wj#CVST2vqeiBzPrgW_(|8Kl3RKVTD&3&%1VH9`bNu{o?pe)`S{c;i+X z*d&Q8wi@^R{3yPBK>>bIM*3@qbfhqc0 z17R2$uL?i$40K?FM)(0~TwkBFl)_R+hXjOi+-gvjrbw0nsBqQ+F~A!wrSps2e=Qz+ zIQin7En@d@Tw^lSz59zB^k`e!I?An)#ct#D_$X03WYluj9_cH-^6pWkrI>DZ zp-0@DoM-xxjxDG)hsC5F-v#Je+iBZpM~Ofrgwr^nggO^5lkv%vZ}Vpif8VniQDF{TDd=fC^*3_Ukk6T>@t zmd>o6Q=3!=8;G27sO5|?fAYaZa3K*%+tZg%SYH;{hnsa7axUJ`6JUhk#5#4m&CdVi zfB!(ugAJ|*1S2O>!zNPOBtQfO7rgBIK7CQ|&3%u2C6Dl}rWk$N=BPb`^F!#4*F-Yz zG3@!e#}DKD6PkKAqy}9!G&Bej5)O9NxvM(xRz zvM?DHv<-?tq`&XAe?+jSou;!n0b${nM`UHv?vdNzhlC-%kH+y-R3f82PTDIPO_&2< z6cx63`NA#gy~uiB0zf4i(9mxC9ezC(h6BJn(OYp|1Z*N ns)3nNzwLi;psxr`OlUWMLm}V|Q diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_preferences.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_preferences.png index 039c721747882452db959326b5a965cc586f7692..0a59c6e5e76e927844d2706cdfa44ee741edcc1f 100644 GIT binary patch delta 2739 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 delta 2863 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 NF4+J~bSRVE3dkPIX$t@V diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_settings.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_settings.png index c08e64f9151a58b7dc43dcf58ab29fafe5597c92..83d3e323f6f7246cdb3f4a111ace05f9b01cc72d 100644 GIT binary patch delta 2387 zcmV-Z39R;w7048jB#|;He*gkvOGiWi0IH26G5`Px8%ab#RCwC$n0s(k)g8ybzjN;0 z_an(BEFlj9Qzj%42a6Bz!C1tq16mwM1xAZ76i}!NRn#hW1W~J2)MsW=! zNI@l15SW4p7%GxrOu#_io9t%qJ?GcDBxG6!DY(JuOg?AsKYQo=fA%xK^F4RZU3Ak; zH{Ep8&ACB13!H@FNt?sxTefp((U}s0IIXvYRzzo( zzuvFzE-)w=9U6vre+e>`ylm)G-^d`=Y#UAoB&c1@f@J~ppOx4{5uu1dSe2Y5+XRCE z7kkJQpi?WQP3e-ZD)%mD6-9{I6VHfV63dSvuCyeaf^5V=0D+T~q3f_MaoYj2z3I#X zZsFY@SQy-yU+$1PEU%%c@y^K2QP>RXFc67(=Z=Bzf2E^518k5-`(MbJ-@h6J z115U_C|LauVt>sCWxuF;K^DGU~F$>8T;`Slf(B2t8UsCT}(l#3ro^@?xX)_cwzS;lL+XL53 zK2(u5bZf~3e`~D@*-Vs}nQS3GB?N5`t%z=UjL~5CuM3TV(9Zy65lVR!O&U|SLD9>PmFJiq6O1A#+S#goSXW5su`4F z)yE1JeZ6eX)v3+Zp%JU}CxSZqiew6PYLU|9crAP+e@O3hn0(lX2YEK_ui?cFWVjXM@@c zr|hM@g^Q>9>W{l`+-dD2FehE8GeZjekA4+we35ql!%GWhs8@^;*o$F2PdDqE=ek~W z#wELTe+KBf?J1@bT9nucA>CC%7VN4^YDq*~bx&+uz9?@jEtVIk^P_GslL>dA zHl!4R>f!)&*DM*pP>90-$f1MW*LDqATf8}If1I&1I9#mkw|R}HFvPY11e|a}0*J%v zx?RQqY_xd?I)PBsUFnv2wrB8?;`LdVHNKHw@|L$CtkAxvTqk-|X$PYzY%9$S?y3wi zqP_NqK=~&E9~Wrdnb_fXqgUQy1^Jm^Nu%W`ZVqLHK0hpw11z>Kn zJEY*Wb$az+4k8m4w3OXtOVX(t&cb)bYvDS1^ZrcKOiyY%SoGke~ZTImlO z41OTlKOGtnK5m@0A_vw_`HJ8AH~Xc7e z?0=+5AM1I;j`Ux<+axg)1Pr)kf3EE>EL(m5?KdbkLICz9_4tt(0+P~omNWL~ZJ*pX zev2<)`4k8gu);C;Zh0@|5jP3aKtjnhGF2$Eddc{ikZev87vXp^GPKDYCLTNB>uWHG zaWWw>sz)R27V|^*XU&(Bd3sYdcHaq zk`jqg`lv^&n6kiczjsaLnn+3;69FA*ire2B4Gp13mM+~U7g;NKe;+P7cOif~?gv0P zJG@N~i5@iatv7#pd~vh1iO{KJs}u6L_Rn4R`;GQi>lytCu0D4mAQMO1i=HKo45D`b zBQlqk&#HeiVr!#QDQ;V6z_*5X$-Ew$EE2I!ohLkXS3Cr628vTs|v`w7+>S#})L0E&buKpL6+OxG%7&Yih|e2&3#F%WmR;}3GhsE0xsKSrLanu0VMPmYovp>rRSdw}02mz*y6L8yZo2t@=U=zWKyz|+d7P8Q F3CL5>jwk>C delta 2438 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 TXh}Uz00000NkvXXu0mjfIS-_W literal 4225 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 V7MlewFn=8nsHM;NS diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_touch_pointer.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_touch_pointer.png index 3f514201218d4c0cff9e3eb5096ad09fba9dba9b..2d5e381f7afa462758def18d5466ca8bb5db0a1f 100644 GIT binary patch delta 2093 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

d$?`ew#s|=?zPfT zJ}0>3>r{SSSqD!bc@5jm*f%7^DLek`?9V&6`bo_wKz_UteF1 zp${%yx@1CYp0;7bhNOgq1W|r*j@D+(m?7q%QgH9@>>P-UiGPXlR>w-US*hdY{rmUL z$BrGli{8BoKmQK>LvDaq@oYXclR!3Z+?WU;L8_ARFX!ZSW@cs}<})I~_09m0o}HZ? zq7ECXMBce`$9&|-kvg21YNX*;Wgo+{Yrou}n8DWpA{+V!8n!plF2^IE45XooA{^v( z>!c2|LWc2;^Mf72b66?uspghWmyAioUolb~g|)6z(1 z8Gh@M?^&b+n&kn?Eb~Tl7JxRn=zv^kKpVg4fpkg$ob#o#0NCUL{o2IJfTNTdHV3Av hO!QC}_;)yo_zeEUOw-hRklZR&lH@V5lrxo2{#qZY>HZd@TY36A=MX_z)O!M?eeekc*(>epBS; z?YHMS9?hF?G-$#nEb$~y-pl!&=RD83zaJPP@_&uT2F5r&Hh(aF3^*Wt1^6!TV||@4 zE)5I}3=9jTXY=#(lW{LLn=Ka4^M{EWdjtLb{r>|b=XLAWZNa?|SFc{ZK5yQ~Gc6Ro; zxw&m-FN}8sFMpgu!myE^o*wD$?p9YmA3;L?qDO7uVU|=Ei^bwg!ChTlGB`LWOuX{B zt*xzZ?%cWFhDu2>YqJ(_722PV!5$5 zU^57&)fpKXMHnW+3EXndD#a0obe=S%DBO^qD_LqTw70iQbaZqY;-44Wcrb86g-lW*14v&7+yHlA z9q=-+1Aps$35JJSZCa|(`eB9)<)TQbA-!4Xg;4au0BwY9YaEKeTtk(d0ehky0ydRJ;4(;mja4>xSsurDMeBr`EF z@pMj3PF;0%^#ChwXlPIZ6!i0@OP8d+zFw^||EWOhe}dMxQ8-WnL|7F?BtNf$3}4t_`lMt79c>C8?>YxepE#j$;l5PF9|E zZhzmtEll-QS#taXw0<-wbIb;SZ1jTFkjxN^)Kz8)6U(tYdB~^d$NjokH$ffLvvA?U zK%j;43*@8ql9vvVtA9+gfPK)e(WwQ9c zWJuK8hE#^2^^enl7GA8ccS7P|u7R zGycj=a3ljy0zX~3a%I@rvu6j+pFc0>&Ye@@D`Pz*#>bFI2uRt5A+g(#y8W1(@rK+= z0S$$p05VMmihw*ITfav>;~39!EKeTtS+^My^E*TSeZ-ST5LGYhrw;0YuAcx;jDKW+ z0j_}8iWMvNmzS3hR9051u9X_ANCLu>fHXo2O4qPaq!ycNXCT*P!e%OS!o)>h@;4@` z`N4WCDk=u319~ z&i8|5Wo2q8$px5*(iJ8GDRx6Amj>)%>IIugc!K5uA9=}-UKi}@t<$DWIFa!AVgYU#6n|KQ*;!;yn+i61e#95fwGmME0 zJEZIPhk+Oh2SOmerCfLbB!3@yU0hr^VSi~B|8NFIHsOUzBGS{-uc0@%5ka^`WUn3$ z@xW0%#?ydf=2b@Le+IzxofJ>Cdy^+ADXD|J;Q!S<@uPW|Gn@DZ@NQgOTvI_ofjav% z1WcCRK!io;UO23g!1=+e={e@^(CPe(Ax*&+H5ADc92{H?-anYdkAJ2Cvxy17-rU^W zA&%MGecjTy0~=G29v0EsM3io6tG-5?RvXNl-uDfu!KTGT1F^BO&EVZd@s2)DPnt4i zN-V{5qv=1NB@Nq=wHw&0CuS({3GjCyNMH9*I1r)lKQQD9$_+J?t2G~dB#(R)-vjg3 ztXX5jlB&)}UGV|Z@_#0>{tSEw{7v5n0KUNQft~vKU7a5Y{Lzq>&4%<9C92~B`S7#L z5%9Y>+Q5t6-ri-LcsxCJ;vjZ)6SDj?-UhY+n`p!$k{l$meU`{?@Vr&$BaY@;J#oB_ z3Q$LA@~vOLJ{SDoceH`6K|w+Fd3ky2z}4hqkp84`~tp7hlJPfpXJBIc~9Z|y{8jG3lX;m_%*Nyn9qp`yaj|apK*+5xqs8APm@R8lNVourw}*CQ3hV~ z_4Td6w*im5Y)M|Z33cL&sTlcIEp(CIvA+sT0-S-l+Q?SM;n#=HZ8lrKnTNa{9v)@L zcXyNlPk(>^TCCgrUS-SmuUfUL1n)luwo#xK`V8X@9_+<}Y5nxM=t8-Hn?zZK|RGV3$d_vl6O>n_*{UD)4Q#G!OtJl8>v9v$J!y z={KNJH}EvD3V2^1yq*WXX%_x~JWpsYSKvD|qWOX}|3pU_cuH6LEiK&T3%`~g-iRA{ zb?-dsC<9J3p(~xB1dL81&qU4pB?tV8Y22pA{~7Et=J+qt7l(fK%Rh$z0000Hc6q9)t4O&U#1 z_D{96{xDIOHvVvpYbDujwy_u28*Z~Iv#p}gT`#SeMG!|o#D5tWhWp%@)8{?&4W80* z7u1p6#4mYr&Ybg|_q@;hy|?dxN|Ge{CXXQchL4b^6`)e7UaY_i7YdLoL;?mN6EFd{ z0mn0Ez**>NGSSG$h+kk7*45RW!nt(r+_^vDcfn)kO)Y`p;o<)ShHllWRX@kM#OUkm z8_dtoufTPUpMSYiOThQM5*SMw8X7(w8XA%Y2L~lS*3{Jel~={j+^-h_4E^%u%eM~< z3`qU`{bT6q=^4t+&HX8_!q=TZ@kI={jbyXgq~6|M`N+RN!odCc&z*ojH+hWf#Fv$o zz0C?+tyalyw@W&j{xQp!fEmx09zj=$K zhj(jzZX_K$cI-6fEgF07DG5A%A@g{lDxt)0W6YjCdkMcdEG&#{O_fwsNM!y`C22Go zS)tITZp4Ks2BQro;N*W#u9xBdNOy)_0gFDUKf?O2*7v zw~aJnt|N8iTy~}K%F4=;ii(PU$TMSBAJ7l*Ie$lf`-JuJ1&W_uC|y7+zzS2#Wcf`XKUgoK#5xVTtY(;$Zfte>2mOgBErrT8clrKbrKxrmzYq7hP;QO@eKWU*K% zC@6>=4u}2W!-t&+?p|alTVrEmC$g2jy1KfRi3mauMGw_1&L>1*<%SI#)*|2xiHV6Z zP=7cUiX|fuhZl!NGFS@-@>fBQ@1jP=1QAzWNaXa({YPq1{nNS;f03tDsDlja882!sT+2)9I9t zd`+nn%Vr(cty}lb)vH&3i%YgIivb6g(}hma4kcxa^NU#Vn3x#qY5SZ825i*XdY!D6 zd(>+-(fzyEDad1^nTU?U9P;|UY)%0Zv4HDC?M5=bXQV$ofXfBNP-<2o#U^BuE`L6Q zQVfL@pOi^a`Yb{Pmx=h4XLsxB>T->5$^ETBFtBFn(xt1bs;b_Em1PoXX=&6}^Aq}a z!$;&s{?;LU;~6pD^J&N@!69BnWwS6sg*3NVg;8;iSB~O1h-TCZ*RsH#7I6&2{Q0Gu zD5129;6bupSQY!WZQI^IfBrld!GF`D`aG5Zr&c|aC@(L6W&i&DZ!ih1R!eD)b3`{P zyvnH+vsL5HgU7)wUO6ftDO6CNJH^}u$LXGD9-)&Zx7%&szJ2>2FI>2A33pBbJ&JYp zTL<{&0DxyM)Pwnlh$ja!1q~*yBbt2_yBORZdSuNpMT5jqrGQ64P~~TyB!A?vJeCXj z{n~Ou^GC=~=9Mc~zRP;xPAxE~RQ}7dkV@qGBw$5pY3VC__wM~6Drs0wP7XzNqP71_ ztVEb_l~9H2C|6~?X+{;*TLia!Sbmz_;>hA6~BNHA2i3Z&Hr%0jpi4qu3 zVkO#~B9K^ztP?h4#te$S|9>~4`Ux5 zfYMJRIX^HnkXu)vTwjwlEKR3386e3cmn4`wE-WDSzYqhd`G=)(j ziYBc5q}yphBA7c+^gn8DFC1;xNrFoR`!bAbT;=r<2vt;O+<%*fYkgQ(C!S|H27`eU zMb2cDf6}kh8T04Q*K>a)cb`}OOkuvD3=$>KAxJm`5oN7V3leax5Ui)W%S7tvnetb< z+}zw~7$_bjEP>pS8S?Yvg?~{??zcaoo+WRR z^bYnXYmsj4ncn+d-u+i7R>;+KL*B))Jgk83c@RiK3{2w}a(f+m!$>;LQEXus6nx_- zNrzggD{&^(*Vhx*i@Lfx>V9dBe4X!8e~e5bmP6*gNq;s3%VWccFWLc(fmyJW9$g}L zilh&NGH#$^7fG*fByReeuUwJ)co1kmefo6!=FOXDppVjXvC3QgebN=bM)cwDh)({V z;`^|I8jUPiuh;V?KRI9o5MT+&7SnvK2lwmK&-BXHW5sV@zAS$_xq0(u*PcClZnd_y z-oVs*wSTp>v(TCsFcA=o(^Kfn=FS%YHF%>vMw~)6-ds=$cW_p&!fG) zoePjmM&44IOx7bujx?kFy^7nP1J^|Xyo_rLfq6`1%a$#<*rbdl0<`OLL1P*7=FN+R zJOhl<8VCY&7A;z&m$Q%9$g}eBbL-*5hwos=)PE=xzbtZ%O(ar{*oZWM#3JA&v<)w# zUC!2MG~xWc$hWzNfg-M5yT)$R8i*hchKr~;==i0`-6Lr3K3l(j{V6E_0q!3J&We|F zzUc=^PO!Z|2hhSzA@FW>b@j1j%a(n7;J|@Kmc#N`?yOm}*o|@m^?AKu!GZ<#`}XZ? z+kd)sD_a|z0@?{I1hV-rGooy%9`m7ACGPWI(0go5x*0k#fL3_ zBV4?6xp0Y#qBL1W+vfDQ>3Gb_Gm$7kI!?%C*Eu8P+5-A$B)tmfw3cy zJK$fS+<~zpz=6MTfCz|y2mqi10MG#dC?OF5KnVe$ghW6Gh-H8d5CIVo0S-{Yu_N%? zc5Y57;p9bd2NaL%SUkp<6}w;8H60x&r7Y4C?%LD<4>iDTcz}x<;7SM70QcbmwqXJ6 m(_!T7&&hAjerNBV0t^7jISyXxOkjrq0000pC1C*_-B_IM}k+qI*b~oGc^3s_f0eRJ3Z;s@1A?ly)Eh?`hPzMYXkWN3&4b#P{QOZ zm>_v}Nk>B@8ZHi%aiBzk2o{@V6yP7sL>L`OB}1G>JW+x$i9?AYSz_5_(V0#}NL~~P z*y$)ElYcNX9ZM$EmR4-6*!bFV=Tqd8fJLIw3y0OMt}NfWsd{bw%FRy;B04Q|&x-n$ zB@<+9_74_HYJY8+GSt*`@<`Hf9JIqxx=gj`QXTOm<`w91Z5gSA`UeXqb8CeXtvYz@ zOhbcG7tcowAc>4O-qz8#b{8!xnO8i77#vv>b!2M=nS}cXvyf9>twi<`W=(ptsY$7I zW%MNX^;J4Lr;HJ#Vw?W*#~89nz}lv; zjHzVPul}e~f81acP8Y1^^R?BrrCa7>BegAIQ^=(6?n8P^Ap-=~qVEpipmW>4Sq{$K z#~#X?b)F}c8h_!cQkO52&topw%yPz&OA=9cYqownj}lEVfdu%!8kaG5$-3Kjl-j(( zy&C@sdw*w-M0zwY8MEK}Z0*sH&ohve{!+v+4y?=WBHe(u-UHk0FH*0EY*3=af zPv`@6kcNh1dvTJ8)#xDZ1(Jk4ufQGo?J_A?{OpaDkrUA<9v%q^R% zHtcv;-mDWbX_>oLRc+X^xw5>rv=wjmH@Ulh3V-S16l_=t{+F(AGrGQmbcuAQt5Gvg zd4ajlGmAL9`Ajo6JA`lnSZODY)ZfvkTT8@>#mEiPr(0`bNOCY%VzHA#Drr7BnRwdk z6R>qK6XC>3rH0H{yr6jgtG;=`%L|_+msr7hhY8Ap!!r2z!5e=lKXv99J&7W~3(Pa-H=|Fp+q#xsV|+VWY*SZyOR=H924oLOVmE76E~*a^HJ z%oBB(;bdVa4x2bmMqQhPKllCb`m^!Y($`2Qf`Hb;%*5h!p?^L) zML}~FO#J;y9!fles`jcDH8d@Hi#%d5`vMCgSfw^%B z4BWj(C!aeXT_`xK{=3ttt2C(M>C5MkNsOSwh@;om;=y|RTkffuJ$+hhV3I1hMDq9U z*Xdt;9X5_$B$Gg#(TKZ{CGMh|vp9*abSHxpk4BuA`kZ%|`>G?j1I@ec#JN{i+on-? z_xKPOisjSu*?q*w)9j*3C1)C0Y(87=$;P$T3#?7`-+=x9|Hd})U#Fv- U$BwmYx&QzG07*qoM6N<$f*o!EBme*a delta 2281 zcmVeSaefwW^{L9a%BKPWN%_+AW3auXJt}l zVPtu6$z?nM00@jpL_t(|+U!{gOq5p;W)F_t#iJq$ieQ0?ARb&w)BGo2MQQ|+!MHovVb$ zyC4q;?BG?aR)xpM$G?TT27^KDJ=H8qtjTej>30`vFx_t>^=+j4xbQmK^b z>FFgjMwd0fx|Mn>)LcOP4j(@Jvr*7=&`L{7OMHBM=6`_BSdbxj-LYfGmqs(Ks;cS; zydMoRCL$stiS^^y_zn7&RdbeF;k#%mF0HMt3f7U4kx>*H8aiz1)Tx0m!KlK*!V!}v zPhJT+xEk`7mX<+Gck|}W`8RId_{+n?qYl=gippOnSmMx1{tXPqWlLG*z?_9rry>{o$ouzR5FUUg% z3{23ZLt{%hqOofA``uhzT|Nl9VTrhiQv?C$Q~1SWbpIXO9(06u@fxVWQ- z9q9(5P$=YF{4%wL3m1mK1;ydkty^c|QeZ2~u?H{_XI|Z70<~+n0BmZ94jn3c@ZiBs zwqxXD&*zSTv!lrkLkS27K$>@GY;0_R3xd<}y2pQrDvj7ts>s0%5;_Swud8VxR#7X^3(|45L{*aaA_n$FSD z(e#lG8#crS2L}%e4-XFzi^ZZ#moEJY8ATSnx`$K_M8T6uC6`< z?|neL`OJfF4=W|1(Ami2t}QjmzM#%=!yYdB9Z9ja(O%Cr?sS`w|}}G z>t(&gXZNn0<9Bk|eFsMxJ!SW;l*O~`ekkcUlF4gnyk7a(V_2*JCalLKobMUTuvcH| zF^NFO6dyS~qu}0Vz}RG^nlmqyk4(8arefxG5Jl^J#=zk~cG&8LCG*HM+V*y9JQmHHiLTEJ(a07xmPifgu z-a;P3(g$EXsHBU~jL)zwSg>FT%*BIG0IZ>VW`6DfYJ72V@i!2R!|=tKGiOw5*RIWh zRlH3$Z!|+Ryp8kZA`)aKmeMBF8$NH|yy>~Qxy!Kw3R49!uE^TVgMk`h27gpZLPElK zaH}Rt)(IvpC32B*hcwLT*|>6|cSZ^wW?~llu17^hg+h=|ihGrLSO6tw=BHArN|`AD zs3Pc(qs#$y#DZ}obmkGbb?es8Pn|l2)pR6fB!kF5#?P5EXCb6uhohpR-k@_5xzKND z9%F)nf|juFLtXbV=}Y?RV}BMw6&4nj5GZf98)nAAUGUtrY11c={cG`eCr_R{1$_x1 z!60EXXU_bvp`oD>-@&zJ_UzfS2(Z`!u=n~4%pxer+Lh2BPdoJlC;_n1M~@!;k$3uI z$Bq?4|NCKKVQKaC_4immf?v08-C`<#>;lXL3MA1CsDz$C2}}_u8GiwJ;!z$P6q^;b zwYAOcS*z7{rKP2Pg=S0Xm&hK#aHU6LhR%b!aN)v5JhI^YKx`?~=E%c^&JE-C@84fw zj<%s7(5+s*`UhM9WIp=7U4UVF+C37w1WFL(+$;nB|l*2oWQqqoZGa z>?IVX5Sw13aiumrjx)2;QZk9iJ$v@#uoY@-Y`h;E8@rPHU@%*$r}!A^1wzIAk$@=l z{Lba)=i@O#ESasdy-ZO=gO37v9n9x9HrSmzckV_;My6o=VSnIy0M^ZliHV7e7^O3! zNKQ`vb@%Sw=Xh|ZPoKuhJIvm6&x4D~$;tVh4OmlCqn_06t zCcX3V+O}!Sj&R)YNohKg>SR-(nyXbT3+6U0v1m>C@31-RupF2Zu*tv-0xt zPOyQ2T&}sfxxG!`2D3s_;H%wf)B5%6lL6oda6f_k*NNgFT14pHy?fWkL!smQrc4QjZ2xOWlZtlj+NA<>dL%f~ z774CK!PVS*qlLvC4&R){SJUSH#TYM3 diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/sym_keyboard_feedback_delete.png b/client/Android/FreeRDPCore/res/drawable-hdpi/sym_keyboard_feedback_delete.png index ca7637552b5e256f445fc8dd497811ab7518f489..7531c7afeafd269942623d960b640583de1eb68f 100644 GIT binary patch delta 1000 zcmV3Ldl)EK-WKC?X<65JM?xNNi|SsE4+fdeRN~ zH+~NzS$=UC-^-Z1tTXVT(9FKcH=VqHbe~eHF8MGY=EHoL4}bGv|C=y9@(2)W74)MU zZOA|l`8lbCykTw;EiesdVF8qI5A&En87)X*bBNCg>nIuK{(<67goRKrxrHOhVRP6& z7Z~PNQQ7IRWt_#En1#|7Fn|n9pL-sm79gLbuqqCsUH^Fl zJVHE#r|=_`b`I@(HEbEjFp3!{?H7c|I=Dbv=DH3uTf$M~9o$lx1Uq#TdF9- z;lB;b;ShcjQRfjLhqU#FqeYryA89;|YSgf13}a42y@xJjU>gl+M;ZH(g&d7|3}rpH zAwpawYJXU>e4VC!fNo@A8)z${{T){m^)-~Xg0slE4r{^yrbW~giq@#D$2x@-$YYgJ5m5^3c-d8$+!o)8#V#R` zQ4zM{YmjkQ@SXU(4NT&3ms_zBPvDwZ?6Nh=et+_K6yq|^5On|1-KYFj9>vun8S$py>j+1b^srX1;57tnqtPtZT=OM z!KdO<;Osh>tka6cxa1|!w`XR4ppG5p=w&EQbrGqjxXG delta 1259 zcmVjt4JzrO-h`rupqGM#pvQWv=%L$V4;A%L z5kVIUx*$nNWmZT;U=UaYNjJKp4;4j4safi7-)H}UVVZOH%zxRld9pL`XW6qeXXZEa z&G*fGY9*7&tl?O)vxaF2!9uVQECdU|{tK`ilggH5@yAHg1kwmRPLTRZy`*oXZhTjZ z+DZFKq=$Gmi*$@s>|pBLZUt#J zR8IQf>n8JHiq(>td?(E%jm77E={GjZ(Nb4xyGn;)nbh^o6xGs4`a*g|Ix0P1selF7 zE2bzsvu$t$5ygq9Zp(s$5EI)2Q|t~RSOR;e4`A#(Mt|AV%_Ch?o|XFvmWcozh?}dQ zE0&Fw5bx}DSOH$yRiqBZ6axvCkN6eE_YUm4q|K_nAw3Q9ie+Ojl_I8z(nR|DubLuz zx9Oziq&m_fJbz6(>0pW`UeTKeO*262^nz52gREW9)v3&5UF}%CteEbU-H9N5g>)AC ztH(tuz_oD*;;pW#pvURIaA)lyPD;#D#rdP`cz6RyNuBdCr50mVVL5Kori zsFVz_s@$GDEbJpb;+$5FGJMEwB;B(K$bZA5FMlKLlboPyXDF^BPn4NC49I*J&cl+F zP90qgo+Dk2Sk-P!kymOysa=8Mgv}I}9yNjtRt1hoQB9p(bZ#bCZ1x+aMWsgPi;s&L|n{X((X+kw?%&%YLEluHEc}0Fx& zI>8md0gbn5!*Jtp%qqx)^RPSR&m%ps*(WiVcPPun@4nv0Qq4MFC7zSkV~G`(6#BtSw0mkBs~jw&Say~OO}cgI*Um!0}90{xDrz^IR#gPK-w7~sQ08b za$eCi#Vu!o7yt&s VuSUaZsagO4002ovPDHLkV1hmvR;>U4 diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/sym_keyboard_feedback_return.png b/client/Android/FreeRDPCore/res/drawable-hdpi/sym_keyboard_feedback_return.png index ae57299e4fea5eb99b89d9e983e95bf70cbd7e74..3157c76996c56a374df620a19b8d465742e4b776 100644 GIT binary patch delta 618 zcmX@c*2FqNxt__>)5S5Q;?~<+`?G};B@TStH+|X9!ed@NCSJnbxu(1#f=3;@x|{h# zV`8>EP!Kt|)?!yj^8@<_DvLCl`2I3maVYu4a(NYM=!s2L5)pJ-`s;@*-@60emkw7v zoA|u(e9_^9<(BilKV@@yvOm#KEEx%1wl~!5uRknsO2U=5dSY|)ED3h`;~!Y^H+H34 zFv|OR`^YW-$SEXhGuzS8`wYi4h1@+(q26aK%&d>(Jp7PvSZn2ep{eA;6`{)>#%kS0 zt27Q?mYVF!%m0C~SR=FNo!Zg% zUSO>u-{JZlJ^3Jp>X{_rNkKh_MYdImK7R0+$4o)Je80SSCrjy z;fAM=ocl&DPs3x1{hoVTNuu5|iw@TgrecjFM|qM&_@}n)IV`bfhlKq0DJ_2v*wlMTbaZPbG2Z4%l1sMVQ)Va` zQn>xR^Si};Ix}X>NMKw1e2U%Xw#pDk4~x5YXG?9`|2WUz*yO&WW#f#+mD6V!ybzeC zzn6iQ2T)F$DRhCrp zqVAWuI*(;)<{Casvg+aLDmYmDoBu$P&M_49Z(ID+qkI#e)g3;<00f?{elF{r5}E+z C+70sn delta 816 zcmV-01JC?|1;z%DBYyxHbVXQnQ*UN;cVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU! z=t)FDRCwC#nmdRSK^Vs~o5XmY=K}i+zQ-gc z48zi}jG#0`LuFJ(WmHCGR7Pb~MrGU?l|lZ<7?bB5<)2l-a>uQ-0Q z4F$G?b6^*rrsrS^yr9@08?j1Dj$+;%)j(-4<^P)}@plUr{UlMf)JO}{)HZ(_ugv>GCp)aK6W6~6nI=BL!f+JwG z(D!k`2vr8_z_mzZSpXX|p58e4+9R3?6N`yvBC-aY1*ap&>r8Oo)Mj%2YH$Lak6ECB zFEVoODsU8B<~!tN)od8G4uNSdelJ@9!%Vy%T+K0J8GjOFC1b1Bz2GKTne&adIV=+y zsakh}8;oFiSIj#S&S^%IbS2?p(nrjI%{iAaHRiF&gma~r`I#gm7u!OS@e~u;nt@E2 z*O}xx?KKwIZFa2ys=V04gv{##cjWQ!XwD)co4|b!M18{wcNvD6{gNa{OJHVXIN?aA*qvm6$%o6<+bt zs<+pM-DGS;6Z3loPyQ{K1Gm93F7~mws>M1OE7G<*BSIU%b#O4nvwRr5&R|WnnAyKE z%QyIQt6R66)HX|jw+%c_aW^LlZT%DW0BS7u=6{AkM#c!(%>~%E%plvoi>05&r^(%R zDg5SLPCos}gxv0V22O%^KFe4k$+l0x8Su$x87m|bv)nUl`YdCGKC&*7PqKc*}jLN8t%BYOW{7*8!1sDKXa^sn&+CH%W0000|~Hc1L@YSQ;?kuwa}7`h%_@qXFKg6u|c%c)G0gUB|L==gl})*LyFJlrajYr z$M+2{gy-|{JkLwNzn-sMjIkq$5EEiTOo$0FAtuCl73)AGpnn4WKtuEc71g*DlSo1j zOkjdAfl)93x({0H|C@|Fy(BQXwzd{rSy_ozSY2HW&Ck!@#&H8s^C+eP=QlSuldLZ3 zbox7Lm%tE@V#mPb*4EZWy;!MKDxx+6bnOzW?eH2fM4!DtYVz8{z>>@5(rkyIHVgD^ z5hJNS>hNd5Wq*CPbUN)gJ_b~rh{>g5vDhb87q8d*47D>r-Kr(_o#Iqs!5lvp1a_xXHJJ0(>t7XM65P2HjCMWvM3 zAehKxGCw*chUWi@`k)p_M?x%_OfFUWHqZkV=;FF5ZXKaBJbT?%i2uigm=F_U hLQIGWF(Gz{_zPH5C=M>eQ_lbZ002ovPDHLkV1kucXnFtu delta 1103 zcmV-V1hD&t2IB~jBYyxHbVXQnQ*UN;cVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU$ z1xZ9fRCwC#S=~!hVHo%99QWb0S}ctw>P0~x)Qz=n0tKC-OJhiM-GzTaUv@XTX>_TD zNJha5VFWQ73qLq2k~IW3z`PafC_4i zi7Ua)CZJ59)u8)8&G`N|XdLtxXcB?$9I#@!W)5p0YpMaQUtC=DCK8EFU}m#9>GgVt z#>dB(;PD%1N`G}>YFh00Jm;&R8rK6>1S9sm7_PsoO0rEf=L7EEY>G0yh+} z;YFRYp-50gwuK8nCgkL0E(x$!m&YesW5V;o;${Mi6<2cs%|CbE9U!#NFHk1$^zA+wH!rHpp(b zH}&`TyR24g9GFB}sV_;$$z;;(@pxQqZEdZ&`hTpgt$juUoYpGbvuJ*2g2CWZVUGm9 z{e{#*K}Q@iQ|suW7aj*0?OBXTqT2tIIca&q#8 zl6hg^A?1ObDz-~&hO|UiYj!UM7whco^i5As2Ni&oRf+qblXJOTcXNS*fRT|qeL2+b zMR25e86)84=H^1u4nTvx&{S}QwOF4(}C&0bYMEL5|qCJ3;=$z Vwbq_D7@hzC002ovPDHLkV1iuO6cPXc diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_button_add.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_button_add.png index 7afaeded11616e11f6d7d0b23492cb561d3b8d8a..aea96822bdea5f816f667f6c6ce6b86abda6aaf8 100644 GIT binary patch delta 452 zcmV;#0XzP~1(OAkB#|;He*gkvOGiWi|A&vvzW@LMn@L1LRCwCmkvUHS0T6}91WRIP zYeE7Qv9_?VFebJZ{)DY8O)UKhHXelr#0xc2ARbu-g}^Sy;sOhDxZVa6!zPeui9RQ5 zwV>9<_llV}`7+65=ugYj>l@vg+Me}Kt&Ohs{)%qcwx&Zy0tJ*%e?$tR5t#PdetB57P5^A_&-=Z->^gN=Q zsRk8ilU=x&)KEdyblFKHJM(5=K?!oQ13v7JeP}4-scqC>>biqSaXi$G`eVC{BC;Rx ze(UZb8F}7wJ4O~&f5!?uSCJmFj8BJUTp*3;V8=y+aa^!7!96?82bc1@0_sYIWSWk>YFw|-BKnp?@^o~f@AFCHV|R%qsX?46ZF0Ep< delta 497 zcmV6rLc%bu~4+NGT8VhSlVc*B3g(!twarJM8(3!LLo*FEpo<7 zqIV{@aJxG*7I%@{C0dJ5Gt9$>fq9-E{6i%=8#f*6fU{HfndNj=KR=)Th2OR1rSM9= ze=o$sP^Y%MdNsLrCfk(X3;jpi4@TInra|$OZ!`7rlPeqelyII76nhX@=uiU~orY^f#T|e>#R7q0ywr2B({y!Y2k`wwOLMNZ}4qS;wUf ziUvyy?Q{OH&`TE}?6%iM6*MW8%hz8C!uw}yx4Prgh9CR4qLGMd+aPD`EsIu0(_K!Ot=Ji7(kQ?S;v}Q?r`2Gfd(3USiSxI zwZCuhLI_BLy1jevmkl9!Gj1NlQe#L+vG9;ca>_fk=i#OidwbN}iK7IKK_GF-ExG4* nJ^5pR--Y%?bwZ8MEo#=BQ{u+(3jay{0-2klX$RK8l#&9IvpMfo diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_launcher_freerdp.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_launcher_freerdp.png index b57651bed5c41fc4cc4a2a9764a1864c179ba2e8..420bab31bf88287d192c22208de13764168a697f 100644 GIT binary patch delta 1265 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 X2D#I+^HTCR9rw;ma8 delta 1243 zcmV<11SI>n3)>5jBntv!OGiWi0IH26GLa!He*~^cL_t(Y$K94$Y*tkefWJBC-k-L# z{reY+EflDti3$iBA{r8lghdjAxWp}La9(ibiM^v52KBNZbFO86Voe@Iz6aoq4#)%stIluaX+ zf6>LA&r!rmj!@53y6I*r^&DX(MHdcw8Tg$Abkifx`L%wUY+wV^WUYVB_sB`E;sC~) z|4Qv$(tOSsE|J~t%Wx%)AO$h>XR(`TVV<9>e_JP2OyIurgH}&(Xp5$5jxyHS2jeg@@g=ZKd%A4r~-AGCm1d7HOJ11-hV%QQDv50>@3J?`#{te8mATs0GSf@5;LA@%6^ zj#hU_OHdj|1Fa^*Uvk2V#t$}3npc@PH`EFNZ0HqL{WChUJ6d+Kqf{!aiax46K_xuPRHVP7TKHDX%ZDAG^m;Ge=aJoqYY^y7lbDXy&VPBRa)KHv5yI`mxG& zQxc5;#7ty~Za4fQ+b(7@l;dyF(Z>(h75nAkPU8HCW^sUDWolSlTKY@{!6}BC$^gAd zGyCZa1E{DON^ljFKC`5BN@$Y$rZ* zR02xkVohK1^P(<}xjp+?Lo8)v3Ae+iRXmZ##h z5eO)X63i%HyZHa&+b|$h4vsn4Z5B{PL)7HNOjUlNF~FToVuQagZEQto%x{6%;G~gMdRjx zYHo=VNHk5FB+sTAi1$_Le@AX6Tk=8s7^Frf;&wt9YCei$XK1cMN^szIOr%C&Z$4-V zmr|{BnZLug1gCmBg+x-MNaT!^H8|fgf5&x9)`=|52W{grs;$X4_LjWn37U(+h(jx_ z#KA`53+gF(t+BVsS6j`<{~zV{#!qbL+OS-#?#(5gwZVkfA-A&7_ylvyr~G9 zjpEWxPt*yU!ZylB8zb*hNuNx&KgSo_O4SsP?)aD#Ac=%MdNl~xomt# zixgM~kB+SNr$N{72S*rix1UUX*nM&KszCxS6cvrll$Mni_z;{)k*{c&dGD-_&)k0N zpqE{vf$rf}n)$;zf865!j~m*5;c}Z01o3#BI4P1$%am0sUZ^=S%Qb5u579o-{IiDt zdrW5w2@@oi`RYo(pWnUc)QltpQCDGe*^aB5v~QAO4g)LG0K2tzxX98>5~Jk~@GE z^wGv48u@?^Xyg!W^s!>td#?P;CE_uTGr%pB0o`n74CAP~ut@%2@(+ITGH(Z|Vj`38 F1jvA%WJ>@5 diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_add.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_add.png index 89620af8c03d187d47c7630e9c2a257b88e9e176..ad85fd9b01a9b2ab9eaabcc63ef7955a2ab38071 100644 GIT binary patch delta 1309 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 diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_disconnect.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_disconnect.png index 606cce4a78f81f2ea4e63d41a6fc44ac8e53997c..a9cb40071897329c0983e251158432b01debea3d 100644 GIT binary patch delta 2012 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 diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_exit.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_exit.png index 760b9254d7a05fb214c077e959d09c60a8e193b1..8ccc0dc34810be8cc4ca7071a70805ce85038422 100644 GIT binary patch delta 1494 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 diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_ext_keyboard.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_ext_keyboard.png index 425d904cad23dd152cb83a96faf2b1306cb5fa97..da4ddb2ab1478ed85c954909198dc52798995337 100644 GIT binary patch delta 758 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 diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_help.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_help.png index f93a4e6402c2bcdf28b930d0513ec77d8ffec52d..c807ea42c00e8b01e40342688b00ae9912a34c54 100644 GIT binary patch delta 1306 zcmV+#1?BqK43`X$B#|;He*gkvOGiWi0IH26G5`Ps>PbXFRCwCulx=KNWfaH%&%H1T zfkZJ#f+iTFMB@h%jq`(pU;-f|8aA0QF%H<)br$!U!Pd1~yKY_AZC%@S?YgerI*1G? z3=nx4M&>q%%48xCM8k_;L`gJ6O+eRs@9_*3vN7I1^ZVyK&wb9hf6qBN_qq4tkz@|Q ztVBMHNClW@@Q}RBmWFEdB8~#AK?X{(2SXsFustAVBx5&HaTPYPUS1@%3xH56mdSd# zPVC?UN8sbc_aT5Fval9bu}V(HuSi0Ym@#c?5|}rTEY`}~& zDFgP$v);}NZtO2Se^qeOc*M}4U)nUi4(U>scm=Ox=(I7)7**79F)yPAHR0ny?yo zFa<+sM!LKld1ZD^6Q;1*K|NoddbS%u@r@u*(jHGId&63XVkSdcI^LImz-yQQu~~%? zqvB&H>!oDHz96L_`GLa~zjF)U2_MNo!Wz z2|sPC0bWFQO3q~mdDXFqM|G2J;0fs~Zntz|Yca6{@j1>*P2|?x^qhC%kK z|9fkw@fgX3h#15IjAH?Y(F==gMZjE3wnR0tcuOT2J&(aSEB^~#t86SAw;oPwg-ag6 zV%$L&^w=i|mvp`X8&xH&R7F;nA(6g4qrZr3+Re3A$scWNM>f_;1C#%72_Ejnw4q_?Eiiy;eY^+Vi6{x5bbD0w{#w#%?%u^p$g5! z8_kMk)RGvRO`2JAP&jmbIw3B62q7Dj5=RVH6eA)Le$jno^jxYTi)Ny7mWe7kiGO%! zDv2c`CdyEav+&?9^y4^cQI0m@myYAyf8+60kv9M5-c#O@)=#62dzbw_;~K(JNK|ma z?{FCRV1UD0@G%aHIyn^pfdoyXB%Uz~3q_;+BQ79@i+tyO*bNu1pdMq7Ga|ny0R%=A z%3I_kg5bvu1h~`#k%`%`A&e9FmbdI+9l|-B0l^3$3lE7MMfi{#-G!ZqVhP^j4Ampa QKd|4r#0 zyF>=18YwFvbr7;a%S(Zhg0zL_@#%fewGU70XbU9!x?LZy`&_^KI{*L4bq@T`hFtv9 ze>hG8-((VwZr%ber}Mu9T}L~Mxt6POv~U7p0&_`I$BndH%ttf2uC*b-R4?)Ye?4-4y9=jkA(}j6j_ST0xdJ za$ISa`uF2K_s5?|T~Vkpi2ymW+AsY(27j^o?MfE&iKh4-ukiYXKy}QZmy}8RY^AI% zzpYXWu%RjfC=vz(9GBBCO#Q(_nWv;rOWDHqv0{6+5Rx!wysM6FnlyJp7!$!;e-i}O zSgg0AaV=G59hz};s%MQ0HBiMQPn5n`w5DJ~a;Fr9 zRZc{TL#FR9-_+D+Zq+t+kM1boXB4x;ZdLQc%N`sbxs7FD^nFIHJqkjSSc^LlshtLgs{@x&^- zdue>nw%ql2(X8!kU2@Y}mzFwxkRwB_3^mry@61^jxuc@WxX_A6P9NOAcOMnMs#pw} z)T+Bu*{T+Iy{MWf#dBYot6OujM~}eypxbCAqEpaY6F5AGrLVT<$K{3Tf5qdoCTqq67(jsDUh>7nmrDW!{P9Re^Qy9(RIzgQiSF| zSr0_wg4qY@iUF?ti8oO#{SV`DCx+yf}8S!4r6T=+dmYdtlP~PmfWne`QX*@zxuRm86vaebOWM zJ+mMb`B)tb8Q{GOjat}Dl+6rKEumcJOG`ib+L`*ybXS58dK0_Ko9DOsbFUk(hcv=H zbg}Tf+ELfh7BciuLR8w#cJ~$vLKGzjMO-2Gns2#~ZQRHaZsL-$o?p_uj?qKhKh(kqu+&E_nZbhbA7Siff6{MFuFM8pl;U!t*R+?FDKs@rY>P6d|)n b;_2sQQdILC|A+B!kU2YFxFLqslTQW6zg56D diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_preferences.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_preferences.png index efc2f3e4597e6f8aab0ac8e4156e83e999a55d01..3fbc88b2f8f74475b7b4bd0c960840ba4cfabfc3 100644 GIT binary patch delta 1335 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 E$T;Y*=Kufz diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_settings.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_settings.png index b137b8c6e4f4fd09af512ccba87b49d48f86c2ac..c97c38e6a011cea705c9ad56e18f61ab03f44645 100644 GIT binary patch delta 1109 zcmV-b1giVt3e*aaB#|;He*gkvOGiWi0IH26G5`PsCrLy>RCwC$ly6McRT#&==bYc~ za^c<)_Y(3?NFqa+NK16)i}FRpD&XadsM{=+C*6aE_JKH(moqhM5f1T%f@IMh@2ta{t zIi7+93vqD_Ut=GVkR0A97X=Vd%qx6g2u%#tsGF!qMc9mj#Qt=kz> zP|*Gr-iV<5p*8rgS^L*Qm`ks(UcaO-GuKk*e!2KC&JwgHe^6v2f`%pnYZ#CR@_wFa zG(>k!QOe~-T$BT>p6)+Aaz_5M4^tg|38T$1MICZntnBOVk3vFLbyjqT4$P9eB3dn6YW`5Vv~edmN@y*+DDCA#i^PW*Pb_6$V8;%)DI(J&C3`vH@IJ}qv*FNrf zt?c6EAII%XDY(T*-QrTK_dGwXfqIyDX}-~0NDxfv;^;$c0)AD4lmKaCV9HjQx#C8{ z1aXiae-!;KQ=8Q7DbcKeCRCwi{)D30v;9GhQIGMHzU4{WHTa=VaiOKha9_6+pT8K- z+jSXQ(e>c3dBDKnB<5wKbHPVTyghg0Jr{UcRorJn%qY{yZpa;EO{>mCVY9V+e+i60l7p=!iaK;+$Yp8lbsdh~f79)r$jy)P46sJ(3?9COP$+x^i3NO_ z9!~tD?Ft_&(rM09kKT!1VI7jJiJIp38o)xv=XeHj7}Ont^=Gb25xB%pCHk^UVu!qZ zJLO>(frxyCLZo8^J;a4|AoWbtnq;|Xv-`U-UZRiTG;Yj2Ei%939J+8DYx!0^X`3{h zN1lVcMaLr_*RT)&if_@0%>Z`t)vOYGH~~0<*5JyHOb3SG#Q{_>4Hwnn35=m2j8Paq b!R%m@fg!j9{|WvA{Px==SikYflbHm_dvPSE delta 1120 zcmV-m1fToV3gHTnBntv!OGiWi0IH26GLa!He*`p1L_t(Y$L*AFOx0x+$G^|>{C<}U z_m1Eaf*=HuAq=D?I^#w8B4ThiH?f*cn_FYPkmhPKNzF@I~S~!e%&28abp1 z6{NKkbVTT2I)N*H?Q;2ZxjfHvdcprc0`;z~@3Y@_cJ`dl&iOs(9N>Q~CpKl!q?w0j ze;{Yvvn~$dTO30;Rxb@oMmhu(^9bJ}m#q}h4gBwniTzd0i@t7Y2=Nue-QP3=}h6X`{nbv~N4?dNS(6tq7?x^2#Uu*i@ zx}Pxx1q}tgG>D*}ptJ`6J-#>-!c4lCwryQ|T(YIi^=kGhTqbBupyfdX4NU}Af6*h4 zr~EozWr&uo6z|{Y0|`a6 z9B67tBnDW#FV- zq=MUf!58YXcahD<##ZvP$KV6Uf6(@$X84D}1F_MuX~B?&Ry@kMTqSlq8+_g>LJ$aG z&(a_X$vFa2+YXlXttXebaVe{hP>yx{Gv z;+(j_&0+KPo#Qowu~r%7*LhmTe)nz=GWgfp#7z|80A}JRRgbfVl8%FxLPL_FF$@pJ z!L^UO-^jgw>*rxRQwlCIP_}lj)pM0sYM>k@UYQSi2cd!~o$Y^;jer5rASFQB=<(Vz z;x^u|7$FYQy`sC;yHj;}e?^S~s!@pAxuD68Ww6inF={n_(VgzFL%kpS6c<{$4c9$O z_SNelyg}!p4$X64%?$S#C?tD76yGG#JDnzgo@-|R=s(H)-Umr z=?y+>XBUEF6pyiq-ktgc1|TVzWfJ+FJm2TERJA!z1s-W}jU=b~f4O^D6*bK-?NQ^X z@ChVV@%6et?9ck!d?-stIW9i_z<;B)PqJ#No;@HX%Q~DlF*ahGqPh$l*!U@1>)Gh4n<<*EjcyJu~Ov6cK mcnU*E|2H7uGfXTtIk^N6{FC7SuKou6_S+>H^LCn(j0DKkN))F6 diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_sys_keyboard.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_sys_keyboard.png index 49837f2905ce6b998ce62eb937d6644312f39ec1..24cac10534d4d20a30c039a1628a388f6f530303 100644 GIT binary patch delta 1044 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 diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_touch_pointer.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_touch_pointer.png index 4e3b7d7a6e76315f1c765ccfbd1ea9786f0ed1a4..45dd3e4ac735427595cbd9f52f30c7f9d4e2f14a 100644 GIT binary patch delta 1277 zcmVBYyAi0FUCQ=xo?bl?yu1%HRxv;Ij6=|KfJ2HpWD z!Ex{s6V(6LLM5Pbet!P@xw*N{TrO9K>u;!YeFgYr=JxG$ zBod+aR68XSaSB7s>-AEr!$A&*odS^UyndYq1_o$+d|X&wUe4q+$Q2?~0^SBcM59qL z*`B0p*HV;BCMXt*Q5aG3`Ml(GI>~CalGS2C1l{ug^ndsD)7aRUu(Y(4+1c5VPM?q-;MXgTT^z?K( z7z{{7otMzY#zq$roo9XRFwhk!q)uBf7!+f%sDD-=ycVI&&CM>>0#1OkB8AjVG877G z7K%k<)Y;i7Zf$Kvi0CYM1C$q0L+Z5o{XUAvDsa0)w+!N_s<|G0C9!}S^PI;aF6VfCotd7FR~Nky#?l0=Mb#+l6)@}c%H z-v(JrI0j1d6)FKo*y8^Ic$XFXv+T839!l|o;i^HBQ3#oE>NukjBc)lEvqKu2K!22o z-UH?N3h6*8i_{CCoQbfLqLi{&EJ6!Xgt}1(Ng@WUC=D3ARaMngUtj+x5q$_M6hg(o z9x5sHAwfzJ literal 4153 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 delta 563 zcmV-30?hsE1%n2VBntv!OGiWi|A&vvzmXvYVMG@?(LL9;_ib@oOLI@$y2)YqlYtUfQ ze(JV#J7+s@7pCQ4rBbop{)v%xA@h*c4yHr<@x8^IB@{9#p(nM@ENx zM=xG(DguQJ1H6B?xt>n0B|l^+l0j<$p^4e3-|tl|vJ7aX8APIp#4#iU2K#&Y-15rp zn>4HdW$elkf0Yysz`=29Ko@yZNPv$%e^*bi0s<@mJ_@ElFbs7BZd7FU$RVgP;NyfjU<;fU1n^MP7Ct7@ z*C$V^Wn^3mK{m{Q!6C(hOMjJk8qd6>xP11?wHs4GMY4{E)}NbxsieJ4&BnK%u|*ld z_R`wYrRnKN*yc3vsf8)d;W<=k83#i|==)o>EvEgq9?1FM=LeZW$WPoDLBo?+0+Ufk B5sLr- diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_star_on.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_star_on.png index cf5ed353b8c651b268d77eaaa01b1d117b8dc90b..3aaf09d34ef83c998266754ad8da96be54ebc230 100644 GIT binary patch delta 915 zcmV;E18n@538)86#VC)Whvx`2BZ1x(#gBODHci-*tWgUjWD z)oOicG#c;L)zzJ)Qu0DTW@hHj!NEbd&1Qq|jtN7`{eRH6?tuR5jTkv4V6m6--w7v( z4G3_w3+Ou`L0?NY^liIg9XN^U>1nWknG-z?NFXnil;8Js3-x(w?!gvE{k0YCJhZ;d!DUa&nIRC?Ir1fPdF%M{RBG@QPea6&4mA6%}=Nbac$R7!SR z^Y=v;SL}#c_nq&T=&gkd7jjSZa7o%YLq}i#{?@3qPuZ8fE3sPrr>@>&gMrTdoqk>x zGWFBu&71d`{VP{&ef|FI+S=GX@4SB2ig4bOn%vsjy5MNi%0JsrXV%|-&M0=^&W#%p zF+o9(w%p87-MV#a`lhlp-^_0P+73$=gys&%{Ox{zWyq;HmrM*M*W*3$!mJ92M7KT&a~ptIs8}I z`H4*BL>DDTrHKxqp=Rdh$qNHCUVN-LcI(!ysK%B}>>VyjFG{R})6&xN+U}(Oo6UcN zOW!GHVvchMm->>Wj7(w1cV^YL%G+=)vA*e9{^`iZ=brYrW=xzuJzSvI?WXO|gbp6Q z_QfmLuYdo>*k88(-1*u0Ejz@&oD9)wFx%P3%$Zp|CM*|-fiBycklCt z`0uAXPv&jk|E_HJdzR_-Vn5e}JPCHO>4=NaeKh%{Ww+8TD`ap9)d_Z7c-mv2@Rd<@9W#UB*>A${r2tK)2*$or@txtz577ngN^$`I`v+D z%szYe?ESu;o;9K2;q$#iWy3IZ_@1iM3i>R<8;{}S*$3oC-hX>k`Jhv0$} za0pwFYf(L?KoY*7=5>*TOcJFO;gG(FZve>5@GB`L=1-D`gaM2w(Izpozn4Ul#JR~? z(k+=uGTBYy%$cm@oD);RVI{1!-drizxi}oxjGeo4&c-rA@+J&ZvW}2E;DC}q5)HyJ bY=6`*k8*rd=S(`H00000NkvXXu0mjfguYG& delta 188 zcmV;t07L)Y0qp^hIe(u?L_t(YiS3p_3d1lA1b2;o+Q0Z0{fnXRDYO)N^!89E1R6p> zDu|E;V;}5cBzzDgVIx|s^$QY=Bxz8v zrnyj6Lr8H0wt%tfe;iKaf(uqO#=IN*G(Ybi>4BuKoRFy*dRv-ZyRi6nT(1B-8sjt_ zR8{XSh7jx$@s%odZR;WM&lg-&Ts~2k6MYCQBp?aN*nstPWgr4Ws}LfZLfT72TqMRj zci8s8ZX6wqly>7w4VVb1zS849lm3v?gt^nrZc?e_@D_!lLjW6VJ{X8CaOB zQDP@@Awwbd&@~SwkV8s4(rh}CUHicbL$CVXbBZJ2!XJtK>fyV{7E7JaZl1(y0IUo- zA$bQ@vUpJRW&X@Dih{v4wG;B#I63L_bvGd)G85Q)-QJ3`;H@}lbB}@0xOxjIh>Ohl zhW772TAPvdf4j*R%ltPHGVm0cQ5bEf={uH|TIwPA)lPB^FZ-^w_w^EDZo}Ge7J})6 zU0!d)DewauyxvA#Gg2UValNfN__p-Il`QlciK*wSN7c9{KQI6}O6<>(aA|uXq~4 zlo^{rG&8}8a%jt{B#jl_oOU1G=QBWZ+?GUSA*oW>Fkv)6qu^Qena!#UhwS->(XTem z3Yy!reP^O|z@c4&6Zbb?#0yJW5-^7=fBuDaq<3<5*40(d`qKqM3=BEyNb9Mc^EmsO zi_t||$=sv!BI)C3>o=yqEL}V1)kjU>s;xA&YL&?z)JVQb7>GuLKp-O{AyAQ!0Tl%= zo&Y&i&3wk5e^4JUR-Hl;Zf9;e6X9wxr3WtG9&ye(WffEjWC5xqAqfCal07dcf499I z5v-=sB@`Aa%B`BJZWLsU$as)hgC8#fDI?pF=MS?(qqB83xn_zBF#}*~D(`qqMryX> zP1SJ>fRw&lh+X#J{xsM+o7}S}ictZIYmrRp^f#g zg%F~$h7{y*THs2=)Krvin-$%ke_C>C?4}eUz-Gk|={jW6nxFW56{T2~iSff7ih8H| zMS~FS_lOQx3v5zleD8%;eQAZubM+Z>2>f4P^|h4TMgRW$V0Yk&2D|y&0G07QXWO)w zZs^xuf9LTb@BaWKL*7$VG7(6Y9U!YKTh*|kZ&y-*Ll(QdAb#*WqZG*G0Kp-1WIeorkf{}8AHj^? zv_X`B-FOtEpra2oe->p2!8}3zIKe54gov=t2{n2?j>aNvAy{(!8cEI&EVC)|l3F(w zWEH`R0|J9a&Jof%S~1*Mk{dZ3z=u;2b``cw7~Gga2Y1}ljp4X2YY48mkSX`*!W7uU z1GlsnfWxZ2Hkwqc>F+S`(aR&(q%;_0jAjh!2F3}xFb$@8C?ZE6)mR=*@o8fk9MV_I g+fz8?r%O&{fABO3{#7=80eell&^cP%jFT+_ljWMuDgXcg delta 495 zcmVooI2Ey)! z7?Z4(SlGl56j88HLA209f@u8cti;Mn@+U;W4}uoa!l-DYXyrc;Od(n%5RC{+u#gzh z;AWR>@>+Pax!2q*0jQVR(G;y%xU?ilOc982(God+nl+KyX8^!!=E7Ctz9X7 zpA0n2Y9s??&sF0sR{!eGCGXblvBO?^eL4THvoTI+`WKUCAaLG=Q$QFYMhhtgP6dv=)j0;}3JohG}Zo9Y~$Qf9} l(+Yws>8G5xUw>ktY}8ygq7n%hc^3tgR55k+c^e^lf|sFU&>Ol{+^ zw5M5iQhb*(=1Bitd29$x0@0#bus72_Af#Cl#>|y6AT)WzmPYSiOfiWi+!*3wa9Kz1 zWMxc`5=kO>Y^~ReL5{s%f&xdq1SQUT$)QR>2eew61b=>wCmb1}D>xl>3;+NCC3Hnt TbYx+4WjbSWWnpw>lX?Mw!4Gwu delta 296 zcmV+@0oVS^1NsAyBntv!OGiWi|A&vvzmXv6cBXOuE#AfJ>ZM9y_pn_cxs< zJi+xt!G~)62}2LtDdy-10ZZ;N{MP~)JaQXUFku*Lgv*>aK3Ih>OhXdNSe8C+9 uk-F5t0VW0k1}O$X z24>Q<30+_P{LYOH3?ldxF*2|+u%L)2etP@=|KGn1YWN%^wZFR8je!kGO!?!x|3JW? zg?`?bAox+JMeGyy!m|f803DpbE4P0!8DZ z|NZ^{|JN^Ueq&@1JG9_G6ufvDlSp`SHbnJmC5c1|dvs ztUK%QY5Mvu!v!r`2-)`I+l}2xP7Ivb!;v%9>*Fh^gRc36M!Q2`ybCZWgt6HK*O=k` z=`~2(?UM}Rz>tMOE`oqF+ZUwq?s5F-4-;_Z`+k0YW;z28so8{sK@u3rOrzxmNdN$X Oq}HRRjKF}CsR5H11)T)| delta 362 zcmV-w0hRuY1iS>0Bntv!OGiWi|A&vvzmXvzA|NYCLhOi#fL6ZB+dYu^9kj4Hp zGB7YPp&5pvN&5J*|NrkDWDrCWRsQ(y|NsC08MLt5#>60bw96urf#DxJipk83XhFw< zf1*j^aJy9$0|NuYA7%ythCeVhai%;x3=F@2!$pv^F*1l8YO{%ja72~Q&tUrnVgF%P zG-YIBV0ib4;VTwjC0c%b@gEPkzJoysQyc5fI((YGzRPgI7Ls^u`|<6@?j$D$PUNUX z0M1m$o&|iO3=9kmH?Eh~^M8VR|L?*_Pz-MwJ|Y4H9dKrNe|r7@|NsBDPcn!zFu@@~ zz?tp)>Gl8rcaP&wf0%$P-}m$LGt(J(@F`-%BF4cW$nb;VBf~$^>>J?#0CN$nHSZ3~ ISd)1HlS8<%hX4Qo diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/icon_button_add.png b/client/Android/FreeRDPCore/res/drawable-mdpi/icon_button_add.png index af637b3be9d552e5d594057a115b773bf4b4f4c9..05b3501d18bf64b0a1cfca39f90d29a0713f55ce 100644 GIT binary patch delta 698 zcmV;r0!96z2hjzPBYy&zNklfjH*gHWBQlU;& zQfH+@oX0wpwo-cIBdqQ(u!DF?jiu$Bi(dS&SoJKkM`iv}$o zM+avznb`I9wajKSSu7SV2zq&Wk+-)u3sBSB<)A@}$5FwBLcv!mm893}v4dUc9h;g< zO>duv77x5U2Y+8(UBw!WhD@i^zc3sQ<>uzb4W_2|5f=}Eh z3>S^oL#BYyxHbVXQnQ*UN;cVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU# zL`g(JRCwC#R=rLtK@=Vk5yj|&{~fj(<91f&?zR?�LNqdvl*aeF9^zx%dDi#=^z| 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 diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/icon_launcher_freerdp.png b/client/Android/FreeRDPCore/res/drawable-mdpi/icon_launcher_freerdp.png index 55335c869b013ec171746f11aaac93fedbbbad11..c00b0f8620c7088967f6ddbc787d35a397079dda 100644 GIT binary patch delta 1851 zcmV-B2gLa0JIM}^BYy`FNkl=l|_~X zU7>^$Nf1%MU089{8SI!m05i{Iq(lT>1H{Aw7FbX~AP(g)(~jw$vZnq(M9b7~Uthz) zZROY%Sa;?#FFU*Y^8Gx=?|GhA0Psljzz^KsPkLBbkuV|>g?|yh?^1yQ z*iv}c*hI|Vm4CW#m9|0%Iaz899VXC+SEJ3%)o|43j^*az*SPKTrCsv&;;6`o}v~dm)5l_kjU}5h8!A=1i*;0g_EQ4BC zb(`V5I)7VWm0rkJ%c#fBLm1?-0^JzC$J7PrVXwf#y=ho|x&{oF+}Q%#+biI?D-}b% zR8s3d_L4V*32u00{r09|R7tElQy{HPt1tIIvgiX63iiM#-_;OCIWxQ*!bm6B1w=t} zw+AkeCp$~Pl4u_kS{8EvF3}0n`}w<5@oM~0ynm5+5^sK@gEv>=nd^37ntBU{d4|A2 zwHe|0XYUA(K?V#%RgZVjZCZVF{AzmwNHT3{flmBl1LxhEYfkC%X3WWC@fah)uCXaby= z`q;3l)Oy8b+#4>u`NO7xxIPpC*R6^7;S!Tz&6cm?4W)6;Ylpz?b~X1)w%jiX5e4TY zj1jp1T$)uXtTs{Zew!dxATXGj;dE*HWZ6_x)2Bu7rEgdN}%o!&m(ttbe8|5q!MF zn8h!KbT?LDA_*ba^luzlSO=Gl@fhdgkNT^P_XG;cYG5&L9)uU<5Jt?wv$Oqh@R$zP z-|;&Oj1?G8d`W}8fSMI0gh2+gUT10x(b7v5wGD$@1Ah_0p!zF0_c>60 zmPBH$hZ@`V4H}S(SzhhH;Dr{%?O2|yTr8=% zDAqSLiXR`%6Rqvs#UUOm#5JWCL_W|J*=x;zFTK~Csu8)8i!>vBH6ouIiNZv==($rA p*Pi)YWN)SZ_uOcHYXXln{{s5S6v9V46vO}k002ovPDHLkV1f}ubvFP2 literal 7653 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 delta 1589 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 delta 1759 zcmV<51|a#P58DrrBntv!OGiWi0IH26GLa!He+I5eL_t(o!|j)Aj8)YY$Ny{ZeeOB; zo*Cxd*T6g&pw&ukWJW55)?z^kP@z`TMk6{VKH5mM2{j=Nv9__0l0m8>RU$35HbqfH zDy`Cjg^Hq;&_aL&hRRHE6z&Z3ym!vtYxTpuGtBEwCiu;`PI5o&wa@yU_1yacpUJ0Q ze`xGm<)U62!%l~85x#-^_`CKZ5hmb*&!QIe{lf8ay08dI$%T1!FfCjl~QVo z0egBU54vigQ;N zyR-{C^S8WEFy~9wQ=ammKp=p#Ta-ZHU=eX7O}gXNyMK6P=QpuehMQAE7q(*}8kOi5 z))vf}V0{xP9~uOJ!7BRzAQ;3DC|_6D`~^?17P4vzwhjXf>6Fd55tph%eD){a@(Sze z7^!Sf1U?s>$~zN&?02~WO9BBhe_^B0bzHgg+}8b7YOO59@zFvgsH6|%mzV!<@5C?^ zPxbR1bg=u@`49-q=D((9kn8(6hlo2>V{7Hi6-O%R)Q~U@3Q-!*;X{aOdax`nWTPni z?E(>tWHWW|R{t>6+1kPo>C+Lk%CjX!P0K{J((|yn0S>>WUfJ*!?*~O7e+39Q`v_S? z-ceeg+R}4~BG2|~7y<(6Vt6+{Thq>KD3u!!2P@#%qP#?miL&M$Tei+R8@Vq_88l6m z$U2)@XO~5g&*8Yk3jtAKE`VSYC0UG~kq~0Z*1KpJ81i8xpJ2&?z~jV_4+A5b`vS!Y zQ8Pt#%by1gb~BK+2Tii=e{*J1j6`K>CvZi3V@WdPdiD7?1*;h(*!1^;F3*V;+gsW? zBc%y|D4)!vH%gCw^ad>%K%jvhETDt3{IZs}ixZxJz)H&920sIP9vy zP>_g{$?-E@JXSUE4i<<-qQ^sIty2-rfA51xPqK%0ke*uB;GhIv}H0u1M zZto2;KqBaZbYd44(!dxE0vG@a8UpU?U05{Y_vk?n6o732fLFjsAV4X~!QlQGWyl*^ zH-iBIsu83*QW8Lf07koC6;<~P3z5s_%u3K6i)EEUx+6$^3x$#sFisjVzAf3zH6$P? zK~#C$>r2{{h7+ydf5M|v6$tK@6+E3B3`e(>lvM~=WdN$Vs`X9O<@TT!H8i*7@JUyr zC6nbsqpyy@AUH@!kIq&A;ojLaTSK4_LtZAsAau9Oy+yEapAx>n!*bqxIU6_{wA;I~w{r>fC zk=qq-D`N;Q7-SEwzT-2n6b7me^3A+#sLTHbEe%g2a&VBDf(w! z{UxaqUN1w<5Az_?4e!dOH2uu6MSGq-du=Dkkpcl4r25Zc2q5BM@=WRWYwIgM-b71f zq^s8m*W)wTfv50-1+%ccPuMBzfs*OH{+EN z068vRe=G4YUZZ!gQeMBR>HfCGoqie)0v13KLBmIWPvMIb)?IVpI$DN#(trm>w3PGK z`aNvJW7MmbJD~$#Ke@Q8HZ?ISwq*qUQ7jpp3=d4&I_(h9pv(AH`ThtuqA|#E0BclT z=4>z@mLHk2zxM6gBa>UoGu2FTl{ BMm+!k diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_disconnect.png b/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_disconnect.png index c1aa860dab9f0e4a4eecaf4d20110fb77011495c..bf5927311afe63670962ebd5be06bf4bba2b36c5 100644 GIT binary patch delta 2588 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 diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_exit.png b/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_exit.png index 04a76b5890be2084e9626754d949954e5a8ad011..1a8b1a1ae0eea035e8c4b45f93ffb3f9b7d198e4 100644 GIT binary patch delta 1951 zcmV;Q2VnU55|B#|;He*gkvOGiWi0IH26G5`PvYDq*vRCwC$R^3ljXBvObIhw_d zS7jR5w5Ex;{s}eNo8ENe2a3q(mSS`qCN1*mv>+(+!3@JN%nZZgaF{Y>K0qKU$bd9K zo0VnP)Kn^+QDPIq!M)=NT_H%dpaqnr=JZ|NG6wbQYlwTl|%9&xfG+5ic4an`;+hoI!JcOs=TY@>%Oa4 z6}xm0tRIC2WH;45w|2i&xz}3rj>{Ia#olpQYby7;UoskCbQ|m+h*QXR=}n1<AEjl*v*~Xh3Lene}(J5v`$waW|`GIP+d0gz)-H-s9{H~r<%^h2i!j^SI{v=N zP(Zl}Sddj9H;l(SN5og+PT-GPe+F5(}rav~Kjk3b5^gZFf!yhmDa$)=F>4b%nP3u+PE>7Dnx2K<8!a@l>DN+m$m{{U|UEv#Ytpu0>_HB3Gm4p2~+~w zQ5Q-kR}x@>iL>Xqk;gTP>sUDIu^ASC+#UO}@q_|Rs_ab`>EYmey z{b^e<0d2+ApVqKt+EXwI{*|(%hzYPcu0`}S^8}aMlow9Wn|C-K5AvWuYD1j55tqA^ zrtQZwf2}<9t&1(o-9_C+mSq>7TKRb9%=RuNE~jn`ft^!19yjkWoYv!eYTD9B_CuW@ z4zS7tdW=U763}?k!RmJ^$22Efm#j-pj8x1xxbY+bBL`z(Ljh$c+YdFu>3dp-6g4SC z?lVDFvr&%f0~~##nkFeJjlMGWS&aKJJ0N`Qe?yJpDaK=WM_x@xlcbuWPr%lrPzKq3 zhTxQ_ z3$rIea0<{m_$VNwCVKhLS|2jPy^}yf{8*qz_R~7_kxNFaFUVogdbJ*QEVe6T*q<#vzTC>aBFtfdzzE;a^4a2Cw_R~8 z_CSHI7UZ5jq7IyF9j?%M*o7Jc9Kx##f9XMPd15!6rnjV%uU6h^=3dMOvG)*a5Kqlq zdB^g~TheK=n_8Y23Miqr6PzX}4?4C4$XEKzriXhtthaJqDFOACb`E_PTc?8 z1fw8k+PU6BKwW7o*w7eD`ws=kvqhskxPaph?g&5b=78wtAijFbjY;`+dS z`!>vp)#c*VqQq(#PklU+`Rn%Al}Xuh!wL2?Re;0)PaM-Eue?46I_;Q1N16Hs=0@K#)a|= zCs#gtdnX$5gMt~`P1w)KGcdhbe>7A5wPFAE&dNtlFu{kaht;EoOMawjKsqg{+amXT zx>xIDFL#Oe_~=Sy37QfCL3uCjLpA8Al_f`4-UG|aU~4`-a!>tjjWi&oXhZa1^`VLo zdo(W=@NlPSV)I(Xk$hZpnR%@V3=bPz+?=5b!(n6WqGjXXi8}6QchR{M!C?>Bepbf`>Sg*pZHRefTskFB6-MuOvMcLm1bc*2 zujdnd>}ka(=2`P>#V5y}p5Qum>KecY})a36Bv(p|!> z!C1hWbK%h1bsrC|W_ION{hR&an*w>kl$hwn4$q16nnO7Fe*&}Tgo}GQF|lAW6i{vo zUr;q_LMCAPKzuRCZa&X#qAlB&J*S=1+Oi079`Ie>aUJa!#r;e!fp1 zNoLfqg51U4+;@dhkkzk}ndu`8<0@%RG88`ym+1g~OcM$jSS!rzyIOPEH5wm{Uv^!s z$?RJzG#X%hOb5XJQHW5SGEzbbkt=~f!$M!6fKG3C0% lM)zmKzi5g6LNhdj5xRt@U-8Sqe*lD4!njtU?^~0x2*^Ac&awai delta 2176 zcmV-`2!HpN5&063Bntv!OGiWi0IH26GLa!He+W!TL_t(o!|j)QaMaZm$G_*?-#)T= zYf)x<*APfEFF(uSu>i+_`24M`QGwi|d zZO_&pn6EuQym`<+4EQn0L(Sl z*f&vyRsY=#W?=&sQv?2}%9S_kjI^S_f1m&yFaUvzcC;VvI6xb#x08&aQTV0K!iLKQ zG+-(|!AyQmfLT8@4`z>!A`5Ba2tWj=0xoxO8=7$XHT&xge*k9kbJ8ER7$6ysw!Qxls1+gPQkwuLy-Bbxc@kC}K46=tKYe;Rad zTfw*?nk6v8AONZgfdT}Ok}y%GjSz-6jk$K$GtCv|&pHzaEQ>HMppc>pB2I zMadx_d@<*s6N9?ZYE)iKrj@A026|lvuk2Tp z=O!EiAeK!!GPVb+d%bbx8A<}``7qpcUEB0?liJBzGC;z~a}!0Mu6+GR8C+t(Fh0ATwM(>!I}*6C)`e+7q<|MR&V z^XZ^erll>-SAjqw!kn=$JbFz1LI!}x*@ea93;>I{Y+HDA#y(~dg+P$6X-g~94$6F5 zo*J+KN#3pA@=$R=U8Ar9_8<36D?4mSNpBWvWL-1hpM zb=zy6^KRxzhdpy0>FTW-Qg0;yeIxZAEa4|)L4p76K2Zo5))?bA%LC$z+TwX= z<9JV*)&TlDJW}X`in1z^8$0*bW}GEw7wc>NAY!5Koo$^4Lo<){pP0GNaYQT!B`B6f94B*M z|B16cb7&gQw(5HpA_7Yc?gs?)^PT{UAOI62bV<}A*|f-xrDmz&>rW0HA7~I3aoJ@N z;XuRC@zXb9YC9MJIqZe-z^{09NQb>Y`gMaPf|= zP~fj9MjL=m*lw?`+mpU@hyEMjM<)Q&)-`^Gpd-52?ABUdD-Yyir?-?vSVTma#aoJ< z59F?qTHdXTO-J+#AAvaobim&ekPnvtJ}OWZ2ovJN+C%rCRcG{Vtj{g!?OGO5Ru-|` z+s!R$te=_Rf2#MOJro~C5bpBiPk{vG_5|DpFD*m-2t!#R#LAIG=~}#~nPr8gIdSWV zbvUv&ve#j;*2#$%mS&83QP(0-$`Mu}g)$>~co}?jTdI>BmPH7^!%db|1R`FXpSPJu znWU0A-LZ$iB88iq;ATVQD!rrf1l@th(JY{PX+(J2qAG&0j`rr z`6rFKmsC{Ynso7xt)I|fN4F2J$gT_dvl|ALUwv}K=Yz_#8$$l)0gb(Fh$3lRmXflRtO^ze_6#~Jg5b{;Dbq5B#V+Ru|g@`re$~D zR#-Z`vwzFa5-$m`-jj%q7=OjGw4WDbg}PrpalKAv&Aq>PoX5$Z(2{zIfE_5uGxRsQ zDRg4j>7t}d4gj#Y)JkpWY_T6w4A6-Au0NcKusSLX0P1?2>;rjaFSq_c@75hCzZjq^ zf3H~0_e#x>=2uz=BwTg?1%a$^f;wRV82I5;7G)*s9)0NJUgPdOxSH>k3v-GTncWJ^ z$0}20w+=qBx#g-3C86$RB!!X!N+9j_Q>&at;r)5jCLda5s_Y8P|4O_RspBkcz&bO> z?ur~;dAi~Zl0wS#WkCY~L{!PcL1aHafAIdY*g7-Erb>WQ06xG|Schl%E&;Zb#~wI6 z`aF^l!IzR>FtZ2g$bK#In<+bhXZbFfgN3;AasXfK#Ws2Y&#Us*NvEfG6rC?j!ggQj z1|FmzNjs3eY4S@X6?8i$>Q~qPYXHCt*ogZPGk015XzaCTr1W=t$NK`l&zw{IX35As z1QHm03nTaASO?nOsE)nBvi@^Q33W}W+<2IbZ z2?g>fh%7{8yb|`~s;}|C>@v0;@1hOo0AwHw-$&qb9ly12-2MgfZtYjhlL~2*&j-lk ClnQzP diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_ext_keyboard.png b/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_ext_keyboard.png index 9ae25ff2eaf21ff1038ee7aca88c8564f94b9216..f80e5b9e32500d478176d0f3e192056668d5a35d 100644 GIT binary patch delta 1044 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 diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_preferences.png b/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_preferences.png index 2f34c76953badda7b5cff0ad38d906bddf374ef0..a8eb4b706b3734b58a05164f83a13cecea4d51c4 100644 GIT binary patch delta 1728 zcmV;x20!_*5V{YLB#|;He*gkvOGiWi0IH26G5`PujY&j7RCwC$lWA;RXBCFud#|me z#fYM|sz6jNAa#Kj1&K=eQ5pnFn?e@HyT^9D6UViac)ZWz8GFXFkH?! z+~og313pn2xnVsFQj`2tMO$T~1hiGOSGFhysTno+pK0c3L5uRSjD!+|Zoclr4O7oi zC-Iq?dn)(rXc}wrbbOi(Z7rVans0s%Me_!^u26d;g8|`%NCQ{8f7*4Qf06A6<-#FauYWZ43h>yrE;bqa^E3rSSPiKY9}Hf!Xkj&}N6D2R z`yx>D5STi)=)jgSl-lom!0?+U_d|CdeK({h^)%(gaaz*CA}O+BS@-{=v!S`S{i8+) z3hgllouk{cNW)C~fKS zj$)v)zQVX>C%+n{B}$1DuW2<$t5Gn~{flDh-x*35_BfXGWj*#z-<`m?4D_Nb{T#bd z;8K{6x@mywG5s7;AH1cCn>@6KK0`1FQLf&w}2t(hlf_Le=Jf`Bq_-z^W@??TC2~ZN5ST_ zqg4hD?&ufJyjKL+AWm@}(uottD}a`VTQjY{G`!XPQnm5nZNLw9Xa5=3gv|}gCGB%@=y?1Z#f74EL{NPw3OyNt8s&1w8%m~e>ewr_2d5z>v)L{T- zY<^nE7i-zbN8_~~*cEI>uk>xy-G1Z`Gi(qdf0i~+{uh9b`}!|ig;#Ks3j*8{}Td}RI!Fz~gBtFyu{0<#rTUPvuNee)8sn6zDPGsnH>FpID#JE&MI+~obx z_65MXxj`?6dGp9u%$kE{OY-PLbZ{C>_Pe<=sSC+JrQchLocuiS$_3`{*~zZXP(jm$Rezdlf4iq|*8||)uYP9l-s+5j4%4u1Ci{9756XMa zSDBGqm_`|b=zvSElO4~^kX@Umb=kSWDD_a|-|K(haK7$h3-!{V7|~5+Tdxpy)l0zx zKuEFUn#{@s$Cq7~?82tmXhXVHe;X$w9c2xP5x%yRcI-5jcTp(E?PV*j$r#q(Mc-bx zm?En_MZEr3!mOM0N!=vO{B5cvOWr}DHzT*rDIp1P;+iBmLTs_ny25^KTBvpj86Nfw$W zFD<;Cw)~h!W0O-75XW^B=SavS5||h7S>3-BTYM$wQqmf-GRWY@VGD4BWjUb)6qhn856c$CtAv!aydpK=W#0RQST00K W;JC?6Huw(?Fgj*QilXa~p*EL}VR delta 1845 zcmV-52g>-m53mrBBntv!OGiWi0IH26GLa!He+L6eL_t(o!|j)QkXL0H$G^|>o^yWZ zciSJZ+%cAw%ZhlZnI)YH%nFGq5Lhm;%gSYiki;Mp2ql~W#v+126cI>P#0Zu_m`Iy2 z2a3X>LJbU*F(r{)Ko;5k?eBKp=jo4Kh|B&~sXzK7p7+1^yyx?MZs*MN0@v)C{SR!+ ze^s5PPdYFb3WZBT9xG*o&06U&1)`#w!M6X_+i?IYP+>0Gx!{tbihybVc?6?TgHdF# zS%D(AZ@)HonRf2t>iUWW2q*V{wD0%-1S*hYk*yewnmiOIe`2;^3~v#IiP|ZVdn0|K zZVty^!5`brFEA-w*VyMbI;YLiWio@uf9hr(kBwIo!8mNfXj5YchI-|mk=Y+ayGGTs z7PV)R=|s1V>T$s5a%W4HygTxyZHItSv{fgfx&@MH318lfA9_QFo!Mf%-My?+`zS&t zLY-rUu@HOgQApE`$Ntjy3z4ligx}o#H=Rh;n2A?Ebp*UgM&4fVLg&tkOePlUe}pK= zvhmjid$P}oFcSitLK0z|L+y_0vB*rOXY^B~Xe73wj6FSD+VRDr_60%MfGk{iO6ulv zpPPJm{Tp%%2^b(vBM0A}bWZ#_S00>;$;vAv`0@=G521?*Oy8Ns?c;&(c;u=N2Wp9R z-Q>eSa(eAKdh1yoVv!pFe_eu(U-he}9)4;2?o^ z@IX)rarC9o{lotb043qKQh?Idsi|eDh$;vmq|k_yI6Y$8_G+`v=1tKASl%cjKHKF$ z*T8iQxo`n-IsCj%tPCn{rkUs?VLg@F_0E$AGd~}c-jNQ0Kmdtklir7$mW`ihPT95j zQuGG;J4KRsAn~Py`s@-ze}&jRn7X?vGk${qLgD8NyBBtC*UKMVFsS#-iw=A}i@U56 z0YYGxa|Oj4S0?YIefhem5^e2v_`Skpzyv4+KIv@=cKgVu3&u9GtHEe`S>kKimd>;5)u? zjWOhQ%ys=@eAtR~{qq@!6$k_h1Fz?BxUC4_D@a70_6$HE5D{ed&u_3j!=+&j83)>o z5^kgI$NYrqkEUUpoPkw>DVcj&V_qV_G!YIPhagZW6c*W&b12*;6!*lC;{38?sG#>l z+Hg7rYg82q0m1Epf7S$`_aK!+qc(dguxL#DSWR6h!>lT}uoN0Pem61&X;=|z+6CNn zs{#t(Yy+JVG{aaC^e+$9A9i08ReK(|!TVpUXBf*iZvkzo5fY|9v8&dUnXktI;ge=G1b8mJulrovKF6|DH= z%>@?JMCQeqjAhG~J-6VPTR!)6YNU5tNR$-{Rbe`teQ!1{`H(M7*cA9!qy5i#(~Ln= zIoXro`YwEA_e*<6|0&khXFnOQjc=;Qh8}O%BcWk(01#AMM&;a%kC`9j z{}%xxaFbbRAO42B69GF-g(pC2`NP+eYf`)S9EI(dC?4R9h)hl(B0jrd04mJh5xS)? zsMQ=6=7`OQ$L2|wuuAVh%IiHb*m(i}6DrRG$ zhRh=$4L;1{a;ySsE;oUVI_j#cE;;O6Xh56u+~|I1{Gc4^JS@U1t$fJ1D5}h_Dkwd_(8^Mm0Xc_seq3x`NfBz*2aK<6~!Lu)arXas9YP%0h+o--neH zhJD0pO7Fc-(ua%eqV5OO1e}N5mB&RkGO~*3`F67mP5C5;xnzn1p zY8P-fovN!ay+u+h)AcG$$5Z@{E>+;gqSLo#2Fr~>NY$vR<3GfA_dHbE06byBwhB+< z+j%IhUO?8uLl(;Q^q_6&`5Ff{su?J%@-ja0hVv{Y;Ab$Lq9n4YQ$d*G@DNv5f2CD8 j8{P{1s;nA7b@M`tgZef5zqNk>6WBB(Hb#!#lkx`0k7|ZT diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_settings.png b/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_settings.png index a96bb0c4ce63b80b1b750b31ab3995f6894ea774..c06352759ff4dc298975fb69ca91ebcbe697280d 100644 GIT binary patch delta 1469 zcmV;u1w#7g4Y>`FB#|;He*gkvOGiWi0IH26G5`Ptj7da6RCwC$*LiG{bsPrp=k11o zAR}^xn1BZGA2C5WlqiBAG2swVwlc~%3l6rijKLVk+ODi?*R9>gfOYG(Ztcd+#x;&0 z6P#fp#9#mo5af_cCUP^&+qaLuZUkduv<>4gd7kuo-{$?i-@I>=e_!!D&+{z8kQ!oM z2QWq&96sLt?PNMNASvw!1(s zYI4X9x$qAMU0nZLfA!IAhql#kJzmvRN{7$kb;zQR9J2LBZ8sn#c;GUo2_V0sm=&^% zF2%#@U+b2i9LP=pRqSzi)V{pU-U_j&oaKHO^BQ*xASrm@7fctxDt9r<W!`dbf2q6tGT;escxh2h!rj6of)_-K_cveXn3>gbRlhz68VMoVcY8+JbO#%q^)t6 z02YJ-s0CoFe^|qkJ2mg#YFpg{fXaznvGve^4QHHwyPWXAJ`kwTI{n4W5fg+2TtZ~v zHg&CH;ScA#v*YxgakGIDVw?E|VEwoPzr!c){{%O-3|V{6LFZsS^Je>DU1LjfiVAj@T^xq&a`Cnw9v^Mn!Oe|Te11={#@FXWNJ<= z9t@@*8tspkvrXlh~{G#WM0-!h67nVL>cnd|0Rgil&#H68*8I zrJ~MLEp?pKon18+@GP@&rJTW)Ocz8vf1_^BoeV$~B{8^V2s^R!KQ@99)t&aVVR%Wg zg$AFoWkO#9C(7zY0U{NA`gKlkKx*t*xZfns-ax&W!YrOOjJ8mMH09rqPz&H&d@0rZ zt<{gaN!ln?gV0OBu~!OC7?~y;n0ICStUYS$DGeuQQs8+KpJsL1l5`cYe?ab4f4x7A zYmy-1`fRaZ&H119Lmw6Kl$iu#nIJZdvo$3%b~!{A%wC`@;*wNg*wX{RQJlvNLAd9c z7=1U=5S0>nBb7O4xAcjY(j=l4Leybi7*L+7;}oiyNc)A_L4aB!S}BAZ(*i_tR#Q52 z&utk37*v1`Xg%U5#HxV3Be%~zFa9c!C*GUTsv&C7Q9^U9Dqta6J?C)@8LAZ38j0{c X+y8XW^S{lXi!N@rc{JZ7lOG1iLwUqH delta 1513 zcmVPy4LpOzovEmE^>=*Uj66J$NM`08pK!)FK|}-sfQX1r6OyoU zm5*2+D<5D?v;s$9D`-si6~=&D$RQvQ2!OPHqZT!2G!Cy_*LdPEiBNO`Hhch*;R;(} zF#*x!bi#GQ`Il;d(wP2I$>!_*>(FU zAPT;nxphMWlN&5%QV=1F2!P$09uNQ`Kp<=>&(^F-z4nRqReW*Irsko?Zuwfi*|DK| zMSTxu(CHCX(F*_!KpF@JDwS(HeZ(Z`<|}c4=c*f6-_i z=JrQALcXPq3ymG>u2Yvl2JVgpjjF#bQUm(H( z{p&!Ku_EvHT1sFMKMgM5IqX1*=c+{e(C9@+8s-E_w`|5e(kjsYO*kt+1|TAkK+MLI z&aEjBQXYBD$lIM!khsrlW`(V(f6H_IK`v>z933r+wj*K<`(UpF3672LP8|;}Hj4Bj ztAB+&8A2>|iLJe5HQc}1K?Y055w+z2jK*Mg;G~&!Q^T@p1>5vo*R1CCY2OwFiNq~t zb|I2$nnK(f&IJiH5tKvxN4s0~E2oZJ5PBzV!@7h4acnCGdFzMKF;}Bve~xBvwGok! zpfRa5H7@8W_aHkaxN3CKcg0D!`LtF*6Owjpk|vKk21;uppt-XSm;k%Nb^B5lGZ%zyY zELv<8Cy9f<{PLL_hpo-If5-QcCg7${3m}ZRusL-4gJ>G~wttL&PqGzndX<+P#LOy1 z`>(Cq^u+yndkUvGYXm)oq7{&Tn@pTawM(ZBNN5~V+$;Z@{G4ey<9qZ@C^402GJHBC z_4vo*rm4^no*nTRL8A?k? zDphdZy;B}O@t{$ngNW`0XC~av4MTWyjL>e+38J>*zY`FVYEHBuR_;@S} zM2JiyT_@lA^XBQd*6Uj1sW#VMgoAWk$D5J+m_~!DqfQnUf2*O zlc0=LZFWEU*~F?kqc*YljUpzN*_CE9jp4>$4+SW)t;=NC!nqJ5LMdD_~2n*Q#FN zIr3H!0KEUef74tbQ|{}5E7gCS-DcL*&I16$F_&knffZ>Jy-f|+9SZ=zBsNJVJXh~S z*Y%K^VKR|J^ApmJ$2zF)F3mi^mW;vJ?N7IIatt9MA1O76_X8M)y%mvN($r& zS#q%SW}tu~Z-aS({2&M_bd&~?i%AM78?bR= zMKzhv=fnj^bULWNuuaNT09i7H(@@yPiA&((l2Kj8{}cZJ P<`|YJlm<8olko+}iOQoST0kQE$nuM-wdTUH84G z(Q3EG4lB|`Y4<~)X5RC7_kA<(&5VWAXf)tshKzItxB^@Ou73bmfGfZi;0pM^3h=h@ zOX4#>QlUQk-amBY5mH6gk;VxHu>VtJ5At(l5b1&Uiw3fae1rTGSwz-OD!@;{$K&x^ zhGAUwcs%kyuia?dTf+eEp-pY8@uJ^kvt{!EYj{&Ay#D6q&0DkzP6Q}4^T|~5s-YWS zpa^~m{~1UQfPZ|J0K^!R!hZ~{BAJH8FM?+q=M8eXTm%L5qI(ArPEsg{50O<>1xc3S z%H_*ISXo(tP$&fBg6(873Hf{;CMPG!&vrJOg{i42 zwx2zF&NDqSGK&5TJbd_*DU2pg({(^}QcO;Z*rO;4$bXW|0tN>Mfv~>5&H{#phS*N0 z)BLjG;bFE@sTA52&6IlS(fyHODDd2WCv8|0Dn<+^W(5mC)Wszz}prZf)8BqgG zX!V;ojDNfkosZtv>RJQ^aE==d!(Iah=dY~>3~o)o@QLx3v6j!ReST)8Qh~d7@B9D& zo5&P$7g=yn#LbwQnK27?e}5lyJr37qXU()pVQznQ{W{yZToz)npDB%)gvG^0N*g92 z8jZsA^fZLSVY6@(iA~ttOn}$RVZB09f&3u?uYWsCAv=0|dz*ZHeSO^S?(A^e-`{WB zGP}CEAQFiHL)ZfY1J-9+ZLEP8)NuYIisB3?fxxK*?CtH@R)7QF-R1V6T;_I12+8Mj zX2EW6Zv#WvTU%S!XIjn^v!I2qEu7atxTnXumvfM6P5n1(;9CG#<5aTXv^8L2d3l*% zIDboZAaMWQJ^1>@4N4{ROdyCefoFeVVFA9seH)HLEEa=Dk7ECs+vsQFF4m3gK+30D zfkYxco{6@7j%^%F(GsjeNIxy;De(Lj*e8ZjXGa}nyNw@@Ie*` z1iflpD`<+KJgWVu?cYKP@R076sq7V{EB7{ zdF13E^NKrox5&T12lz>8AZy}Eu`gDkeo_IF$T=U0u?GJEL}( oZDD`!6O}fGfZi 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 W*r7GgBT6y=00007-53z18VQG-4Z6JCu( z6CokSCwx)|7}>pDdwScAuD5MnyIZRZAsY_1wc9erj=-~$5Mc1)%UD9-0OQT)uisz& zpUjXQN{%}O;!g5Sn{I7?pZ>nT%fDR*;HlOcz#70Bz{-EvK!0tdwoorpo2d%Q^|Sy; z@UKz3s6EtfYNvXv(u8@E0k%l+!^6XWUAS=J_Vw%6XP1_iGywakPgjCjXYX=Mz;a;*a0?+ZDwX>W;;4MkVqsDPsEWZrr$`b$558zrP=u-VD0Bx;A)Cu$U|;~fy}d}Kx!fT&X5d`{POu}<#i9J1Lg1_uY3k$*n)W-0_^ z8FAK3E|T^-??+ggxO7PRUNOKT5lJiq>UK3!5UZ*Ad^ljh!nbL zC1ykd7k?0DBn+R=Clb3ApEEK%0yYQZ(xpo?i;Iij1K3VI?*PEEjp%DV)srd-(9I$* zLL?JnB>|DZi`EMG1Mqk}X!10nwY3#-)=+?1nw_0J2;e2kDZ2`!1 zHg_gz2zd(#X8@Fq78Vw?L?SNBoUJ*~*4ll046)-xK5qlU9)OE_mHLW-8w}PK zKyf0|O2J?dL4p(^CMK*Q>;qVz)XtwjSAUQI{|zA9sC=q^O_Oa@R%}ZE*@eVLe(pj6 zf+P|a5Dox5Lv6c%|Nc=~)@02V0QuC#+bnPiA}Yfw;P-O}I%WwVSqKqWH>ftj%w z#>U6x^}eQds_s{|ngHe0o40P=I^gwsWik6*ov_Tbm#N!#s4u6dr>6)Z7PABh217*~ zH8pu98)7@oiOG3d^*aFXDTocL1%KdD#rzhvi~2}_OwX!=x{G>FJ^uOB)KtOU=;kUN zvIJlj2;ql^2Ock%z6i4`CqbU4532X7SS74S0ZK#E)zyhzECD=CP59|(H5wWljhi=bersCjF#}jb6nNFv*21T04+0ds(b4K^ zv5&#)2!Qv^B6bSEHbhNLjo8HmD0ZNlnp$}N3I0a_A5vS)HtH0BZHRn6U#KR8v`?{4 zZEc<0w+P-*0Q(SQW8-6o4qF|D$nADZ@P{pecNoAv#GcX7Q%UYmBP`f&WN?|mKj}a6 ztylBoWooOMKLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z000KyNkl+g39-Emlwh1p|Oa$(3RiI(3HcIvose3{~k&2Njb^m~r zRkDgisMJa;<*-ZIt@hHr@;BtrJ@6*wuxOW;99C5;b%CrBA{>&Cg24%P4EDTuo;@%S zlHdkx*lZ*oX)d4qyT{;Jyg} z0iYI$0YT63bsz)efWrR^Oep{rh+V&aeIgc%Jv9vD$7nQqv$nQ&7Dxe)Uxbk)sVtaE z!+0qG2?#F#^wZNvj~+!&o;=wV3&jG1UOI{6}u5Tat3a+XwL2g1OwZrr%> zr`g%rE=5rg2-GT-NF+jab&zl0wDyhTf{B8IK?84ZDZRurfGo$x~5Tc;soJPh;Ss5YHV!W6Xvj@+0OxN$>_m@ zPez7^uc?}fgoF?RAzXwjaD~7v7I9q{$0_1CHjd+9S|$hxRtKr6IYB5CA`*$DVzJmv zEEbz=XlR%PmOY@f2jc+Zuq5^J+cE$B_!kybNl7cMBC_+I|{5Xz7Az$ELb`c4QV0F+?RrP!}n>~N-+_?)~U0owy=svIq zUR4VffXA(^t&^_n;=22n>NC%59eh<)3FUu*Ow*(#-ZFRj^5t(l;~xQ=m4wm#033>p08~}w z(xpo`fK}j$w>cFhwEY0=$mp%NDw9!tLj$9uqvwGJ;DlH8%0~@wXfk@5&GPWU!;aC> z(Jz4afF?k%1Y*B8dNPX7>bhRGj7-zy$&)7}lgW;ek&!o;l4Tj! zb;)M4B$LUG;X{Bp$PE?CNRlLcKHoElg@ulx;o*uP4)S3eSdYi!Gn%GXl+?B%GTAKm zlF5#tp`o%N4g#<(qm{O{)_*yU^HP#p&tyoa(_}IkUVOh4#Cj$}GI_6Th=Xdb0Hoi4 z|AT)BA$E*(9EV&kM>HCp8@P7uuhD4Z+{VVn{vp=aSy(8~6TX3gfddT@07cU@ZGL|K z*ZF+DRtP~Zmm?Nyn(O^t?>E5Q*|TSVoWFDDowan@@cDemvg{QK!ut~O97wTP#57Gd zH}l5IO6pX5d;4uKLz}NE^vVH{0CjbB^_NRaOC5zmfyP*D?!u=Rz65>%7J#)gXU@ze zlgYQ2mzSGlS;pt{y#ye3Mj%@dmSwWJxoNDVR!+U!-ahYnd>g_&41n$5_365vnVOpV zZGCgnnELw$Yygje{PhXJtN$prwvw<{K4?VdCUAtVo? z0XQ`_I(B(_dMcsoK@`7I0$}U1Yzx;F_}r=QmH5- zgb)R<^1Ss?_eX;Q!SvL0Len+;{?h%aq9|CF&HDN}nyN~#ZM-f?lJE}VDsZd2yL<4% z-+VZ-v9W<=S)~(>>tb0J;cz(B+uJ+njbZGAHuZ-FvD*{f-Q9yi2qq^d6Pm8S;NEnwt8ozyHsMVSMkMG3T`a>;;iXBnAN{CMLEZ6#w(at7@vhzyE8)Fs6YAz=jt} zUk^Yj2q6R$lamQe)$sXzOcrHFk&CUwr%R-#$*K*BTRv#Bftn({@69rSXRX zPzk#?e+_wqWZBEO884GN`}&gC{G?uD>w%(gSIJ&H$fQC#{;R<;z%js^z5Y7@EBUU> TSrZ7E00000NkvXXu0mjfp|*}( diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/icon_star_off.png b/client/Android/FreeRDPCore/res/drawable-mdpi/icon_star_off.png index 7e9342b5c33e98925c55367a12088c98a345459c..5d3f04e4cc6d5ac2d9414b2427923e70a579fee7 100644 GIT binary patch delta 1140 zcmV-)1dIEm3Wy1iBYy->NklhWqoSh)Ll}A?lwZ&D z@dt0FNoUb+5`OUdeb4(o-}yfe2_gOyj)If@1%YtzGI;m|d4CUV{L0|qVDs46*w2j5 z%J}ir)YQ-S_xAK#yd7%(p2iDW<%lC#4=#PsyEa5|lYG27Tj4YkaXxu`+S0c+OQ){esCZBNG6%FD|w zYinyft#TF+i-LjzQB+hUN=r*cOG}Fw9viVJ>UPTC7=9Q)7k4 z4Nu0G{D1xZZM$GOK8UJncmG+}?X@HUIKwl>k#)#VjxsBLa;{xv8ls2DZg z1&{sPJ@#b&DNd=wVzKa4iuU$)uTVp6NlA$lxt|@Gp6tn_`PUe|yT89*VA(knuTVoR z9)FPE{rvpOk$>KoxB3EJu^+K-`<F@7m7E^d(b zlFP@X?C9v=J(bU-$zuAsP#rU1%5u?Bnq?tl+jTrtss0B}y>JkTl!$pDg-oD^SAHH$w9E-OW~H1YVm z>SzFuDB2gnQ>@{Ou?hqN%|97>8GuH~Re3W$Oa3=Ld;SJx^3uD9Bq6T=0000)^ii-*}l(uwL@P=9h7e&N{?z$Md z?V^8x)r}VrceSPM6cs_x&a_bxuV|d{Zq-;r4fGm1yzRj2h4SMLtF{ae4}bsi<;&;%4rJgp?+)OE zy1KfrPEJl-R8v#a*QiVWFTfv;kB|Rxe0=PpW@culQ1|q{!RCgBhHnlI4xG!&%PxxF z&CSiFFhnM$+9DB_??iD@UW$&FmMn=YaJv}{N#KgpyZ8n=oN=lNQ*VfiV zYHF%DJUrYgD=YgBtDi>oKC}zjl~6l^E@eIXStH`WNUvj`^CMj?h=ejjZUXC61cIkA(obw1ZFP{hK7a;qtPg^ za)CLC^Ye2#h~KQY+wB6Y5~ru9a)Pn3u_7fUMa0L)KcG$64q|s-XPgYcmu+orPfJQl z@>svSyDNe4<~P&bO%9{@iPPzn6W}B{7LhPrRex30cXoEx3LCGz!D0Bxfr@*3d+RM0 zOBS~go#m=-o6BjByAcu+B9CKgYHFdny7~tkQ6HLrN4vut%&mxm@^MBVx3{-{l%JoU z!L4?~Z&Tb*ZZ$HTt-ikgCoJGsH2nts1>Tjfa3Y-ET>$u}t*xz308iWA-j)WDB>X}z zFMluP1moi3#KgqJD?p#av3^F=D531)E1W#znD7s9zMpk)2cbS#Kc6g zva+&WSy|bK@cPjM`bHf4%3PO9#}{yr1vr?4Ta5%Ez15%ChkfDQ4nSXdLp{q)d*_Bn znM@`lja^+`N#p(s`>-$0H!3J7C<}k@`+tJ^1IxHZ7Rv|^4-cg=9tF>kTSWjvM!7fy zAhMleU&O5zW3||=V4gsrU;|bg5f&B}!m}fgMhVBIAd?0QlLl@m>3HnJWCLk%ndks! zu0IJBY(&;!>I@=`DUe~pq(I|%_H1F*uEN4X6ILfP7bm9dfErE~X|-Bol{Z;HV1E-5 zKW`|RhY9405Su$49UZp*{{C?~X=!PxrJ|zZVL?GbJb)^~c?{ewK9g=T?hl-jnVG5Q z>R`|{Iy(AicX#*l(9qB%+QuOMiowA_E0kAMRAi~Csd*Q_2>`3o)6;ddaToB)!otEa zwsaG>)+%0=gjp5fuE&#hlXW8_BY##Xzqq*gacynwJ9Be$yn}6bc~@(p&!IftqtKLc zu^%W7h*Rmf0@f&LX_7B&-v5?$hh>rrc}xVv`W4YQ(hgs z^v?nXtCjmxtt1p*Kykwac!W-6SDb#qZ|#4l|H1cN{uW>WkizU&v#9q`01E&B07*qo IM6N<$g6%`~d+9d3z6axY zSf|tFudlDug550Ob#`{P0lmlWNH8D%{{A|f&Gxf<sqwYV5x$x zbqK^7H9qTwsHiACv~RFSdiMi02-q@MhP@aT7M2?yA77A`mS!{<3~gOqU6-v^>#W1! zaILPc(zN9iP1eCOAmFvAaSs|dE`_7JyZbVGGcqzN5`PjB&ZyPuT)qLp9&f=1tE;Q~ zMn^}NW@cvoTwY!#kH~A?s z^q>)1c=$}O;!Mx;bp?BXa@*gr6l#Nlf{d-Lt%|#<-cT=b%*xzL0+lB%5liVQpVu-|yJhYvB(BJKL-IF2^p`JT^9V!-bDE=a1?Y_ z6W#PMyhcs-pn;ZyH=?7XJNb9(OYoD4iHW^}62T=Rv!#`De-np&2+RMSi9{>mB&~O>z=SAx$dtp)= z2_EDbzPwlagCL;VGH~k;ppstyZGv}=|ATj*zX3r&+s4h?DBA!4002ovPDHLkV1mz5 BYs&xt delta 1504 zcmV<61t0qA3GoY%BYyxHbVXQnQ*UN;cVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU% zlSxEDRCwCtR$WZfR}??}`14uX!jQHgRLewk2vJw8OVAlimMumzCo_sa@n%P|O%83&vs_^eF6y8~R%%9^i52aFBZ?oA( z0`5D}t7msV1_5=FI>1#x6TmF8-Mtzgw_|t6x4*LO{f@!G!D$?WdthL|Ju@?N9pX2^ z=UhzuPJdHV(@79*(&=;>7?1=a@;L92XLgbv&5Tpn|A4%MUr~v9oD7B-@zfNN&5=tP zn~sx|o=3W@T+(J5Nw;P_8$uqBC+v2+y)fd=fddClg0JOooeM+4q8fx*Wgr3OQ0QCm-6x?YK3w5&_#(Peb9Z<5(3BUN^N$b(@aM5mtdN0Z z#(%^S5wg4ods#{=cP~> z79Nt!BaMo7V3k3ghI|&tB2EAy7s>6p5ODdI0y=Twy_32^! z`u$W)A}SD(g*7NVodY(XB!BU7YPoX70e{k~AZ^9!b)oyo^XiyO>$Q}Wl=sh{KmXnb zZ@+F-e21*!q)G!)Wap_6gn^j1(b@_6rK8umfB*iAxI})&YBw+|;<8Z3iF)>gL>k7^ zBw17^!p|~M=OpQ~%Tv+m(p)YV_l8g+j-@V%Oq0o^L4rvsl8(|n;*sM3b~h1y9g2bH zj@UnzVOfqtK|z65^!laWTnR>&!GB=TAY@8Xq!N{XOk}bURaKJ*`S;_Qvy&W|ef#zq zb+6(+X!)LK;x1fCJ~sxC(WgiMQQex_0UEB!5U8?d|Qi z@UIWxFIlbDUZ8x(jvZTTYHHT)+_}@p9&gyNfkSOs4e{9M=%^2UcH-Q*bARAf$z;8P z&?S4)PVib+S645vy`rLG8w@BI8XDq0HoEMGfb4z6t>Pn~obOSS7LxV2#KiygP|^z;|3BhC1sDKRs}dXv>8;8D0000<(7% zz4@dXyg9~*;38!d1pfxCs*O1o5ezuz40Ftk8Abi_=(vDc$IQ5PMa(8tz9wE?dtl3q zPhcw|3UTb5ix6;1sYmsS83mqD;1LBLnsYogR~5_K3Dw(C*$SlPYP=FDF@FF6002ov JPDHLkV1m^8SNi|} delta 213 zcmV;`04o2T0;K|wF%Je}OGiWi{{a60|De66laVeff2B!8K~z}7?U=m^0x=MTXXM^4 zZb>EVk)Rb5zS&M3}PmV7C~Up z4AqN*@&hElApAn{1C46Y3{yry5xJ~g%S_GIB8pMES8G<%CJYyquIzu{Jcvi5)EnYL z@4ye=ectoV&-?DZ@3~%cKE19kwtQfQdWG&t(>`GSQ);dM5feUr=O@_!5EXEK?$`FuWCEEZql z+Oxo*6dEQo?{GM7{y+@YKdA6&uv00tri|Tgzaz_(N~L-*7DQ-R|e@cKb66ErLBtp^-A> za`^+!T>&S-5pW31fpaF4DPptP?&A0wwSfe#r_<>d_`J%aVC0-rz}09pR$1r**sBy8 zDpRRc-t#Y+0o%Y7*aUXDTrR2K?|k>=ZtAEw%JIbxqY8lQm06iC9Y&M&p zSm^v(LOP!DbH9;U00(&4kISRUMU3@&y+nN}N0Ov8-CAmsByQ0SE;z|`roq`(tMze| z&=eK*cs#LR=M2tW1_u=~6mrf!a8Z_^kmbx~^9qeNZyOVTB*X;|ce~v$)Ung)d`0^f zIK!(z2V|6?qwl!SZOV~_QmND{x^-ZduRSLI2#G(3)UUGLPN(ydyvi&V%d)yvrhXrq z2Mg3s?LH*jPA%NCOt`1Li0?y!zcC6B+P@A>NE7-e`~+;Iy10Je!{7h_002ovPDHLk FV1g2cEg1j+ delta 807 zcmV+?1K9k71-%B4BYyxHbVXQnQ*UN;cVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU! z-$_J4RCwC#m)~oWQ5eU4-@UrcvdyA3tczk4(GPZ27ZEZF9Jp083d$cKsR%KzBzF@T zQ4x46=#3ZMdr{DTkUAEnT~BLQ-9#DU+Vu5T-zUx)u3mGQmVbl?KKQ=J^PKZN-}jv7 zysyw`G*tamL{*=afuMn)fuLR&iC+kU(5j8Vgi8#O)%|Iq1Xu$V_FJc%D76Wqfz@Ca z7zca6NSB!7^Np>2#XI;qcN3N-~*z8;{3d z;&MY2#d@t)8>&<)8n~wUZnq@Kpn{G?S(b=^aep`*4{?2y?tul|ibkVP@q2^0 zFwJ7l1JCN}>Kb$C3OK~IGz)4eW_fw}HR|TUF}ApAVUL0X9*@UTE|tpw5I+efoj5Hkm+*lrV>+@wLKGnq_++ER?g zVu>aaiGK{;lSsecf13@cVdKz*XLGsSyLN(T)>B@ucZrLkj!}0F9Q{EIFBEeaEN~IL zP#;#S^$EER^kC?B1<`<~3WdTaYM9UGzu^8JxX5;a)FQD?ur@)8;etY;&@*~;-~{Vi z*omO#8B@003<9VgR% zUPGPivPrkweU=Sqwsq zZFANRAPR%^59iJ}5RVBp*{MzKJP{zkTpnipfR5ooh>1grk7+sp^BKs;Fetzfpx7V` z2z#c-NRWf#F&Cf+5QjpHIgL($I8=D4H>amg4#cBk$3UZ}wzD7~weIWiQOAVjF$ht4 q!Ee8QK+{YukU#xsB!3xnMObuGZ)S9NVRB^vL1b@YWgtmyVP|DhWnpA_ami&o0003P zNklQgGXz2)1VSJLLZD2m5@H(Z?ZF(g{K?NG5r1ZoE)Moi-8z)l5t#l2 zb&_hxhI#7r?(MG>AQ#L#qU6K#jX@Q&YbLfKl|Ff5xt`~N^bFmI6_Cs1|7i>93dk(f+KW< z^nM(EltV%^^eg2KUhq%k0gb^>YyF8F;t+>8gbukdQA&DEgDg_jb}2F-j{|`U1Cjwi z4!H%9nWUnNGXaFkamfEe-fmH4-PV$J4*&oF07*qoM6N<$g3UZ%xc~qF delta 354 zcmV-o0iFJe0{sGzB!3xnMObuGZ)S9NVRB^vL1b@YWgtmyVP|DhWnpA_ami&o0003W zNkl07h^GM_?0i6P&;iI)WqA4R8b9KsTt@5;wVS&01Q_s(s9=aP6;G8YqLL zfN+8!L_y}(5no7KJp(;bxniYDG6C=89stJd$B`00tr?lhL6#8%z`!L(6B zT-p^`t1PN-4O?oDys*O#Jeu|%p76vq)j!S)I>jANWpAH8q9XJW=lrubx>Z1?U`Rn+ zFytU#K97WfSYWO(Km`9WVh{#l5C-{IkdFWZ0IZLqPIN&D#Q*>R07*qoM6N<$g8wIy A&;S4c diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/sym_keyboard_return.png b/client/Android/FreeRDPCore/res/drawable-mdpi/sym_keyboard_return.png index 17f2574398163a10896ea6b0b61dc632d18681b2..946a943feca86690ca3fb2cd12ab43c6e37b3c0b 100644 GIT binary patch delta 645 zcmV;00($-82Au_vBYy&9Nkl<|(_BLp}uf?#Vn9R4!LqF%4R#QHTbbrK-~ zykHhA&=a1gpXI2y1Rk3#%H{GN)|Y@+RY(9oeZlQSBB7^Jscn3|K~mZg_bq}aT&P$q z?qfX+d@4c$_M>~5(n{k+@N*OF+$sR2=SlkBDmLTwZ4pRT&-4jDNEkd z6yiN31U7TI+y}mKp-^by+A5dyU;325+ z`%0zKJL*l=gh=KBSjPc=O)`H(r_=c=rSkdwd->Gk$banN+Q)9U`;FgMsZ`!#@0(W3 zUQnwKqmp(=#@2{LBG0h@6)mm?yR$vme@ z+yGapvwlxbP$-qXtTctPU!iPVr*1w6e0NPL?dAntkWT#2Ab1C{DnOL=D}IYj%v97 f%UmH>$Z>uH*uenY5}1VP00000NkvXXu0mjf{(mpb delta 844 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 diff --git a/client/Android/FreeRDPCore/res/drawable/icon_launcher_freerdp.png b/client/Android/FreeRDPCore/res/drawable/icon_launcher_freerdp.png index ad325d46eb704f0b57cce96812e2280c6e608c4d..69f23fd3665999fe502a6190e333ba32c5b18446 100644 GIT binary patch literal 4198 zcmV-s5Sj0ZP)>oa6$yXI?VH@ zJb~{>Z=C?@M~`@t{}4Qd`(&a{0QJ(G%po@ksv&@vP5|{9KZ=wQRD(Z=t4;v*U__z_ zl;AtkS0{jaGMz=_o{|D&kr#9V)SQ`$u%jdkbo+psGeNQ7D#=wcLMK4YFeg6|s6Yxa z(FveBok=Nyiue#oCxB|SA_oan

>BCxB|`lTXP50u^{b77%@%0ID&TTqjVG%cMV% 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 literal 10166 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 VsH4#jqt|~)XG}CFTsClx`9Cz+a25an diff --git a/client/Android/FreeRDPCore/res/drawable/sym_keyboard_arrows.png b/client/Android/FreeRDPCore/res/drawable/sym_keyboard_arrows.png index 3ad31caba9bed96fe87bf2fe2a24f4cb42ed1062..56423d84c8c50a958deb329f2079b5c8c04450eb 100644 GIT binary patch delta 581 zcmV-L0=oUX2HgaZBYy%UNklt1j{m?N!sWf& zmzR(C;0G_{+;Dgwx%YN7dX!3~waDQr(j8GBlsJd)5FVp9%6~FvQGsea!j34)97P%O za2K1}Stf%e$l(s+?I?2)pP&G4BHrpN^8u>EZES2snG~KuAzVXeGfE`UZO*sh2EIW7 ztzZ_H(T!g04_hXSB1V0_@4`4_8OJ)GF%x);Q(?;dgRtPpU4$%`9Qg$Ze~}GZ<}`jm zM#YiMLzcWFUw?s&Wt?2C%yBH+&w(R93|WR9`4ubs6USV)={Mvd;dmxwnefRbAP;4n zs13$3gfiq~5l=9M7bsxfk)KDwWT(v7MMwSz2GCh8bRJ7k#NHuWEi?%Mk-J_kbOEoR zh&{)dYN0haf+7@=X&kWMf;6Um1`HyJ6n3Kz85AH(0e=~j=|Kuf3_>1WqTlb;PkUXd zCjJk}GPCNEm%u)}hKxUsY!0&I9QiV2%%Ugg^wEzw2ya46u3bK3<{%WYr``#6FYaT+ zeBO#Ne1!t4UP7xXD1b@C z+O-Y(96n$h6l>?+>@dFgm1*`)Bh>2Bc!(`g?(YX`Zr=lIUmsbiA&g*WqrdeZ0qB>O T1#ndD00000NkvXXu0mjf+A#%; delta 805 zcmV+=1KRxE1iJ>1BYyw{XF*Lt006O%3;baP00009a7bBm000ib000ib0l1NC?EnA( z8FWQhbW?9;ba!ELWdKlNX>N2bPDNB8b~7$DE;u(kfL#Cp0=P*;K~z{r&6i7vPf;Al zr%@I|Os1r!Y~;N$!!TJWqAbWWN-0UUL!)Lf>)9w}g@q}Fg@01mSjfTxQOf%f#d!TK zNaRt*h|jmq(Q%z~?mhSZuS|WK`#<;h_}qKX|DN-2X{q?vXf(z{AMA(Tish=OBe4_S z!%w&f-PNm>tU&W^FluBZBrd?5k|oQh(R2-b%E(x$(~M6kUp+CCW-H-!K*ma);(SM9 z>GW`#EQc34GJjU;c&$?A&O9q9W2H_KKRNxZN?lEjkk}@(sOtX>=Aa5B66>8@A6Fnsf9gCPZvtf~12PL!{Zv6*R z*KpV(p?`6(8uSt@aus#N+@|-kKfVkM^ny!+T=ekD5X`Py*3%= zQR+SOGDk{3gX))Yq*l@JO+ZRA&Hts5cdKcd-Cb%TpNHvrxwW0Ax%M&k@tx!N-~X=n jOdfP?@CIRS)hqu60qB>O%zP5H00000NkvXXu0mjfo`Qa6 diff --git a/client/Android/FreeRDPCore/res/drawable/sym_keyboard_arrows_black.png b/client/Android/FreeRDPCore/res/drawable/sym_keyboard_arrows_black.png index 3e91682400378568ce2a7908623491a9623e7d6b..7b94892018ba546ebf64620d46926991e3cc3428 100644 GIT binary patch delta 550 zcmV+>0@?kl2EGK4BYy$~NklAPx>%6av;ZYEjT?TO1ToqJpvV_Zwb79`7BO zOLFH2Ke*&xjz{viyi2v9RVd;D@<_ZB_yXYpdXZSiQG@<*AAjA5y#uI14!5u#u~onl z6yPR0(f0P>0~Erwc2BB+cTfXvpaU&0hsRI^7qJ3Om&FEiyct*V8476`vp8$6(~I4R z)DSAT3|Ff$4q3*r2CgRX8iP?L^9RB_e4U0YXW(ld!fy;AR7ddxGHUQuf-EKYszJtg z96?}*z(8vq_9KOu)qz?zU{0j3A2~wxbUPlp#wQ1v91xIb<;cIXpu@oaH^=RDY}PL$b_-+4Anf3&{8dUq#4L zgs&=O%%TUO>c>k6uOj@pa?V-(nicFoL+!*JjG5P6xPnhmNHxr$ge^Fa+vr22GFWSl zx8YF}8?-bw0#2dvJwxX&20v?mX2&qT?nE(I)07*qoM6N<$g7FLT)c^nh delta 788 zcmV+v1MB?01gZv*BYyw{XF*Lt006O%3;baP00009a7bBm000ic000ic0Tn1pfB*mh z8FWQhbW?9;ba!ELWdKlNX>N2bPDNB8b~7$DE;u(kfL#Cp0;fqtK~z{r&6i84Pf--c zZx#D72r28dGLkM1pR8IZ0# z$}7I#zrAaB+Uvj1KIeb1>g$}d_FCWi_M^S`>FTO)BSg_F92Az+r>oDfLlhr`-@;{K zetpX74BM3Y-HAaExFpQ1PFX#3jZ!}q#CTC>~lP92}{#u;}M(Wejpq%2u8|(JR%O?C?n^D`~$+qTv3Sm<%&ITle{}3XiuAX zxR}Nt0yRq6W<`Ao3bFB7wl^XOpJm}D`dL96Qi|3ofPX;07sls z46)>p3x~x&q_(X>Yirmkq>cfLsFVId>1ZwV{x-@xS+ES(VFc|G?)(R$Zb-ux1PvEf z3v7aAdVkSG%w5%9hM3T}e$o&txLtmZ5ze!@!UBPVmW5l4$4476^IQ(OaKyN8%fGNF z#(yI!Hd0o6?mko$bWg;|EAL_jJq&vD%~B(OZ=~1wEDLX#9J-8PDPss9xnhrvjCO}B zZ87tl%tCi5B|*?4y`L8jINww~j|%T1qhc*|&VMeZh4XE?&?lS|SYMTl?S8b&oUP~8 z3^AcdE@Q^SF`H&{0|tRt)!rgTNj9=KJ$~H(aOnrzi>q5Bdfl z%4Sf2C#;eEk>UeGYf;r@N0hfzQNFF9808%)w5^~~jiAg0xql!RR!D z7+_K(XoEiVFCLU6#=`(JERiC^0cFjo3@KJvUDZ6@Msgh^k9skPIw3K5H^NED*Cda!uqOHXQlC+ z=A$05#n0KvVN2bPDNB8b~7$DE;u(kfL#Cp0clA@K~z{r?U=C&!Y~v? zRggjj5ft1V`~pEo2N4up6hv@varGM<#2*k`{R6>Wa1xvaCw~{W?tX#Z3lXH+G)-ec zNa0eXO>%nQ>&vUD)W08|=cS=66DukP+b9tp|n7<9I_6{+~GCrkaZ}qrXfFU9grmK+XdQZY=u3CV z=B%l(+i!4B*?-qjvdh%(Br%v1RG>aI7d;NQgo6SQ3n!s?KYODEG!f06UW<#td1wS( z6am7j_Z{<0p%Rn{%hiwT!tNH%dqY5cFuGmP3Z2Lw4(>vym{2#2A41Hl=v1CQOE)%!Ww;N*2D~giJ{Rif`Z1_xAlZObSqK0Bs>2 zJ0q`lKZ$JZxpV-A%bw(G)R}#445`=%x=odXP=@TrJs^K!P%GAXk%S!{N%;CyGobw52y&r_fM+yDOz|J*-32QIu93UEvY`RHJY_(6mj zLX%M;j!52^pWV%7;cD58sl7<0i8 zmFMZ0k2+)g9HU3|GDKZ47XFPeDQ!)9lz}zr>(keyPin8N>HAS_tZ~IgkI|z7G%!F7 jB|S!u@=<~ZITq#)J`N+UFER}D00000NkvXXu0mjfWz&0- delta 462 zcmV;<0Wto#0_X#fB!2{FK}|sb0I`n?{9y$E000SaNLh0L01mt<9Wl2OqR9Hvtm$7OBK@>$b z5Cj7fh>+eQUl7pJLIMfcLkV{VT(et%L~Qe_sZB$=Qkp2g%?<8URca|j}FB8u_UMpH2s6nEYwZbL5*#ZOKF zR`%X&o>$Qn7k>#;G8U_QViiabABNl4zM&)Dy!<4-3X0n5{TIQ$@^U9}DTJtvCL4ti zlNQzYa0+J-b%707*qoM6N<$ Ef}MlHf&c&j diff --git a/client/Android/FreeRDPCore/res/drawable/sym_keyboard_left_arrow.png b/client/Android/FreeRDPCore/res/drawable/sym_keyboard_left_arrow.png index 471e4217198958b5a6e751c601037ebad4ddb0be..1825a4f13ae6d049161403a807ed725576db9f52 100644 GIT binary patch delta 293 zcmV+=0owlA1HS^0BYyz~NkltX&yt^eI{O0e2<8le=)VVf!o(o6_ zALSAq^bz?e?;^zxV+fb!Jv>95JwduGPoXqxNLS@APz4)E7k}j$l))Ae!U`G?f0f@| z%1a#Z_D`=^V+c`JzJRhQg*1I++DM@++n5GOjPc=fzy$BU1_;EM;m7p=eMk$5N2bPDNB8b~7$DE;u(kfL#Cp0ai&wK~zXfV_+Bsqai?K z2t0fCj1h>LKs1qBsHY5Su{e-c0%C6JnM{O9P|GEObRH1T27h96x`hJNav3092*m%P zI140Bgxe`of@C?!=P=7bbOX&DfMj_wn<|w9?c8NS2plu^i-pK2SmgVsEWN){ux-LZeR&t0RysFT>$;d#oM6>(|x3HBP7|rq=wxNX4D!+q8(-uafynuChM1KH(fCETZ`Ejef?G3Lz zy`aPj@?ZG|c0{@B2n7-HaZ0=YA%g@TQx3Sm`&0u23#9ndA5iBI*~laAyWWuy>ybu$ z;<9}W-N%vP*YS~OoZ)1E7(O~92$AB)d4?*fM|{Ip9$=u9`gVN5;#zxvV1X+XIEO$r if&dYGZ_b=OW)%l(VC1eaMxF5h0000}f9B!2{FK}|sb0I`n?{9y$E000SaNLh0L01mt<9MM*?KR7gu>U>F6XAwYZx zFanh_0WpZCI{;ZM4#Y}8%uR3GL6%DbaUKxQ24Zu1h62cP8Gj%y1mgctoCS>vng;~T za*)qqmV@X9dN=@Pc`=&hAP2P4+5s@j%duDvazGz6A+iH$QZXx`^aHY77Km|K4vUJl zKs9Sf#4DlEr-sWBFw4tu_#8PMP{IbKDUe+#093e$05N)kqr@Uydax~Syg+h9J)t-x z=sgk@z;eeUs3T(N?EqMs@CRB9sv|TBB_a|%NR)DrBPT#jF;H<$R3akE)KNvFApi^k Y0Bd06u8k!YHUIzs07*qoM6N<$g2z#r$^ZZW diff --git a/client/Android/FreeRDPCore/res/drawable/sym_keyboard_menu.png b/client/Android/FreeRDPCore/res/drawable/sym_keyboard_menu.png index c92d6f225248eb1481584bc8eac5c2d0ef644dbd..c2cd87f93e267a0d86c61b7994901265593472e2 100644 GIT binary patch delta 934 zcmV;X16ll|3A+c7BYy*eNkl{R>8^Wob#-&S?CCqp2@Z#; z-DoW64?N7#W zRHFuWrTciIsm4l^Yu|%F*`Ea2hPMzg2;z_xL0m}E_K!pkicyB6(lJ!xlynkBm}+wE zyT3a%y;yE>kAFSLZF_tBjepW3#(zizgF#``z`%g$>gp06k0(FY zAa-2AVW}KtI4G5&Tpl}u5s&{o+jDwoT3eQTi z;|&_6huEY9na4DQ1Qjg|e|wv!Z1s;Iek5DfBV0V5=4_4@gs_pvn;_5CW}R!Zu(;dW zXhG-|LFgL<$@~!{j8rRwba!`G|0)E>jSy94>wiePl|gt+&(g5bg5;P5$<&%P9y!=4 zZO1n3Kq2;{1f?jz1oeF8zQ`DQ9^;5mD5O8e#)^B}EJ&6XWGforg9ELw%dHy$gwTi2 zC{WL5na}2qMMpeV2|lo7N2bPDNB8b~7$DE;u(kfL#Cp1RzO7K~z{r-Iqyd6hRb* zb5g+-SCF_TMnuImCW5#iiUc%@#Dj{s>p?xZBqrj%Bd8Zqlz&_Tf{2L-qA0GQxE@?k zFD{5?pJcL)+1u|AHKEcOr!yof*zobDd#bAcdiCnn>!{q^T<0%vD9Y<{iTKL>b9iZZ zi~SC|@}LO(P!1Kp;b(}69rV%>Wp&Er_gLrzouLN|h2anjqhK72hsls&h{sMeebryg zg45R68Eq9(MSrImo{b}Dz<2}Uu@RHz+0``6*Uat4+{eLwxCB?>n&Afat_!u9?S2{0 zuAA}G+aqKZgS@uf8!o5=wA+S$h~Y4H3k(h+L|)Vc z+PpN?G@j|{z6csH-T-)DglzZhYPtR)zc<1HSP03m#D92Y8Fo3WgmtjVu)*Bxx&9Yw zt2S4xv3Euy%wh>=cll3W+e?Fas-=!Xs-b+}>@MM=qO}^}+Un-iChI z{-A^v4TC^gR=K8GKwe&+lb@gO$nv~hLNtKRmv^9iBHn<`pZD+qKEY=wc8l=&d`?+e znIl_JP=Ap1Phv!#2m}I-uKN0Vr@Xw}DK0Kv8CHxn6P>*0V7DOyt3 z{{c7x$KW`egd9B3B*4C^tE-)ol9Jz_!bXS^+8j^!wXs2AVd2GwhK3eGbW>YftL3^{ zR8$n*YA7Q_bw+H66y1~OBS8nCj&~jRlR#xaJb!2hO@j$`UtY8^ln{w&Y;1HYDk{Da zJM&w-&j|6kg>at)H$h8g7ey+FDj@(Wf@(~g&B1{Yl2lh$*UBUI1H}+x4mXQ2LP|pj zQ2}%YZo_?0o_GRJ;TgPuSB6{I#g>pUEJICLCHyHdh|Xq<&ka^+D*xiz7y_Qn7`z9; z`G3hvh+;L*P17`csO9-(dk7OYvAt1K`Nwy>XLqTf7X7B zT(4~`YHC`>uC_55H#?M&M3;~i46g5+5`WP4{Q=s_vdTN!#@f2I@I_+m{-pV2T-2?F z(1jF#z@6x-s;c}5UT=S3C3j?uAVS$#r?V#7oa|VRXSP?gWC-!uLUQOZ4`N^h41WW8 zWeBJq>Ec?tt~~1weL-J@LVbk32vzNC=_I6i*;t|l_Q|X`;*fk|3sDDcW7QV=ywFFN zVndf^raD9!RYkVG;FMKWpL_(>B#Iqf>Z7=_tF%q_B(y{-4g7w8F2d4SwivgNKUF}x i134NmWWu7Lz+WsjYkfCQTebiI00{s|MNUMnLSTZ$=N#Dp diff --git a/client/Android/FreeRDPCore/res/drawable/sym_keyboard_menu_black.png b/client/Android/FreeRDPCore/res/drawable/sym_keyboard_menu_black.png index a24081b1c0615fdabbfcfde0842ae0fbe1a785f3..f34d02031b4d3240f3837831b2626d17d1065b9c 100644 GIT binary patch delta 1025 zcmV+c1pfP~3YG|vBYy+kNkleoxdXH+|1dToU0Hc zhs#D>f{Ww&HTOpgv8LUmoY!qLf~9{%S%@%EWVnqW7fCh`HnetsIHf|kDbY^Z-KJ)4 z8Q8lg@;UhMNN3Ny0s1a@F23SdzRk&j%>bNCFR9F4TdBK9Df*@8lny<1HLg4ytQA4k*=X>b&2Q2)OuGKgvvVz>Hy8bz=wdz4qw>FVkdA(NAn($v%>rKP3zNQ+G23p6T6;l%rjQ;jv^LmWdhj^iX+@F~uj z&E}N?diwkO#b&d)B011X5tZcS<$XOnJ1fR`y%jo`1nEsPLuy{F<4W83~v9`FU}FsBjyL%!Vnl6Rr3jKf;5{7{&;GhFAFx`?Vt5nT91X4cen?hHOG}GT`n1VpvV@BK zi(QCXT3cJYvyCQ(M%3}5dE;@0XQOB zJRXm*R&MG=&fx`QA_LoC#^XrBCg@4PLwa}wTa|6f4m4p2qEDOEYTeh{+bcqRKA&*h zOLlhlWxYsf8wYU%Gnj@SK8#@mL%0MluHrXb!*%UH@+}Ay7PpqFs;XwE(OP58ps-Ln+00000NkvXXu0mjfn5*o( delta 1304 zcmV+z1?T#f2&xK@BYyw{XF*Lt006O%3;baP00009a7bBm000ic000ic0Tn1pfB*mh z8FWQhbW?9;ba!ELWdKlNX>N2bPDNB8b~7$DE;u(kfL#Cp1gA+vK~z{ry_aoBWK|f) zRj?K<9kLQ*txeM+w%p9h672;sa&dDbOsEihoj$Z7_OhAOq<>jW1e<<{vRH(b6^Y%A zU@ektS18=d50+F2lM*#aT54srft`N;;oRZQI6AY;v=96^bI&~I-v2%KInQ}cT3T9~ zISstPGvbt8Eq~Y2mfNu!FK&j{T=#w^Q6Z~1-k6BS_R*WmLA$YaA6D~nnk@p!k^}EoNr2G`cA^IL=H5jllokT zDk>@zTkA|hRA*?bkG5PoN|QLzu#{VeIO?%M+q@B zBmY7~z$GiHx3~A;W2aB= zcsV{`xsO)mJw0Y&VZkgeE}F5iF|)R|78bU;x@tN* zI}gVaqMYEid%4j0=2y`2{SoGDtGuIStfl)8%vv$w@r8wjjU+D9($ZpDTU(XlM}PTT z5i>L~F`;06%o*fl)@UI*&*+U`hgaYwP)b*;>wWMhyah_}5y763k+EI7aCUaKAsF|u zM7NOQyMn=BgqZ&R{$&I|Br#5mG)7KH(pO3c+MRX(aI#|qJmFR{K0dCXRYDC5Il}K- zLDhUQTnw6(i@*b0qNHVWeKwp6+kY$?BXlD4fj*stD275-U0uCvcz8IZB@hTG-J8{D26gKI O0000N}EaD^LW6+Ek$GV7C=CER~1y*@b^=Yd*Z;qE=!;|>>Sng@v)uIm)EKw6ieEha@P z8+nZRz~gC*4(em)Ddqv)(-<8T;~sOYDtN0Fqc2wN3Sx{4*Ca89|7H4Q46Yy6G5W{x z35R#JCWD{^FDh97oQ(CI`V2h`(W%qxP}B$$#`Amu?2V2`BabHF00000NkvXXu0mjf Dm+XfC delta 467 zcmV;^0WAK@0_+2jBYyw{XF*Lt006O%3;baP00009a7bBm000ic000ic0Tn1pfB*mh z8FWQhbW?9;ba!ELWdKlNX>N2bPDNB8b~7$DE;u(kfL#Cp0clA@K~z{rV_+BsqaiRF z0)#{0*|TSiK+Fon>_E&!SO<+&KpmqBq)mWWe83$Abwmx2UVjV3(LgLRppF7st_j4q zfcQU@203crLJDZP5!5jt2Z8W?APyTaM?upL%rVH08kpz;O?gkX*WMI-Ui2TFKA zED6N=P(wimlY=vGIEb|9gF2=Uk74N1KrSDYrU*wLG-SxNgj9WmqYqEqlWG~U>aPIp zbOT~OAZElUuYU)?K_G`W0I|Yga!?1*F`#N@P=wHaphFz-MH#3vBsTsjRd*a{moHAo zfD#l?QVobN(!o(6$9Ms;0M@92rEZ`kHxPRQaVro{r2y~4<0;}C0}UZq!-@-NAh{Ui zDF+-5f<+VlkfC;a4M*`oe8|wiLFmnofpZK}<~RY3woD_?+(h4KLJno113*pITp*qf z%T3gd1(M7II)Vj=<$zcVi1|sfP)}|cNsbDjv{8cR3$;N%p3g@aEq{atCeK4m&R50?>Yq%` z*Mj;tlk1}#yG%b-2F?@kt29CO6*<(Q~C&X&duP=JS*Wzok1 zYXdv8G5U{H#y}RG_h*X6SS acL!gVB(?WUrVW<>0000t<9S4l)cR9Hu2U>F6XAut*O zM1=q&P!%f>vjZ^`Q95X>2;>-5AT|MF@xkCIkRxh5{2xk# z95tXJWdwB$$Uz`{ABe*S(ovwa19J?rqXsPc%&|C#tmp$}QAr@y2V#(+~Jw zfLH)mRKZd=H;~~8#H~O)l>)pEkEe)s49HQih7}i(O)ds`$^nOiV9`V{WMCmgEgD<# zK~l(2%ONmx(3>9v>KIt&I022eBhcJL_h>>6Wl)nf7deQhBjqM)#{x;_u>e)e0kIYk q^OK~L#)=0;7l_7w95sHBg#Z9wmL#?0m~sRF0000g9r*P7K+fp z#noqUD1CuIR^OoDE;tF!f|H9|cAvoh3m+0{(IY1pEcd~04E(w82v;$gEXzEEXdr;9 zlr<7lLmRJXNth}trj9PY@G}d%A%ZF+rjIpFIfs0d&6oi;=YNpPsCP7>?3|3mT(Os^ z2&&{5^Yxjp2|DYue=_FlGmo*hKKb)@u*B&Ob{L`#uSif0Bkb-Jbi}04eUcy_PZ(l` z1SwXU0du5C@PRR6RNH-Y*E6qG~HBL=T@xe@P@JHh7Ggy&^Bk6ZOB$Hz*XU=3AuzL;wH)07*qo IM6N<$f~?7hxBvhE delta 479 zcmV<50U-X+0{8=vBYyw{XF*Lt006O%3;baP00009a7bBm000ic000ic0Tn1pfB*mh z8FWQhbW?9;ba!ELWdKlNX>N2bPDNB8b~7$DE;u(kfL#Cp0d+}4K~z{r?Uy}D1VIpm zcLfnv5JAD*z!L}>8i=4^q9B5SiK%BW5HBE@dIP~+FcORfBYzXK$vuI74{D$pW~lk8 z9T0lp(arXB?KiJ_YicKx0asBJQ?!iM&%qrsndP2IM z(HYtp)u{yLi1{1(P4qn~R04C%{JjEGf(hyZtDU7{_t)XO1RYUfB`N}r?`>0S#U!Ken6 z`!p&}_f&bgCFo8IAUQenVuh?{AkW6^PIpD45GxQ%F(qCq;VN(w@ z+S^`D)`tUitwzjqJ7nFOv_r-_>j>5Rl#(-o5p;YrR`&!oU1Zu7YTmy^4Y4dZ$R8*a Vs^%Y_A_xEg002ovPDHLkV1g-;&y)ZF diff --git a/client/Android/FreeRDPCore/res/drawable/sym_keyboard_up_arrow_black.png b/client/Android/FreeRDPCore/res/drawable/sym_keyboard_up_arrow_black.png index 4240b59287b993666a8ec99de7474aa608df390f..7c5745d86d108952100b4770f8fe8373eca56982 100644 GIT binary patch delta 297 zcmV+^0oMNQ1H%H4BYy!3Nklq{N2bPDNB8b~7$DE;u(kfL#Cp0cuG^K~z{r?U%7?0x=xM ztsn&j5iGbn_yj^7JBXmr#exV9F0MXrKHR&2HqxQq!^`U;Hl`O)MT<`q|`x36*he~GHOzVtSOUeQrA&( zO?jQZJjo>Gynjuf4;io1$DOwielvbeS<{sD{T}^{#s0;IwLZ8DPXRl!9X##+Gx}M$ zYzGxIZi}Z{;rt1{z@MSux456}-oYGnz$3_&5F=$nigEe~U!*SvLX_biB-`=KesYUk zo8M;xAtp(QAV(C^#T*lg3F#8hU5{%hCZtP1cRjA5yG=`of0=a!8*89oZ+jM5JB`#5 z*I9@KIas6(!3SX7qrzk;L+L__v9u>lR*`B|$j?qCYLG~62KfgK8Y8YgFh~^u0000< KMNUMnLSTaZJ;T%h diff --git a/client/Android/FreeRDPCore/res/drawable/sym_keyboard_winkey.png b/client/Android/FreeRDPCore/res/drawable/sym_keyboard_winkey.png index 6196b7246bed9beb3c14961410ad727002b0a85f..39abeaac5ea82ed4c34a2717db1749c859a41355 100644 GIT binary patch delta 680 zcmV;Z0$2U12fqc7BYy&hNkl}*3B>xqRScvNl^MA3#ljtwPqxy4-RQ|5i(LrW--Z3cbN+GD-G+yUXQLF)pbUa=##w#iAd69hE`NlfqIiL0uvr<>2o-p>CS3a%*}9Nx!eL(Q z#Z@Sw^SX!xbbkv5ji3-k=z$Wl>q6`p7Yyn}Iu2q|81WJ|U5Eqk(1rV`LOF_20WX43 z5k4%#X(%C=+0S+rytsig*oVBx;~7{FC$7MQ5@exX7!k%Avygb4L>oR}2m!R<4vMhI zux2eF{&(&PL+Z>zJc2>hQGY(tN^~FuW$+uH;fEUu+7RJM zE{L=!GqO>NI<%k{el+1a3a2{(laqjw8`5cQGLhX)p`fj2xtxyk;g2!-rZpA$>Q#VgJ9px?g~m zXcvZbV1^ajjdOxu%oN;K?gV$@Hik3-V`xUn{~_2Pr{JdMGVx)oyT8BOD{!5#41l-* O0000<{9 z8FWQhbW?9;ba!ELWdKlNX>N2bPDNB8b~7$DE;u(kfL#Cp113pCK~z{rwU=p#PEi=g zr-VdILsOGNNukNkNJ#R@WC>p^gT@%kC|jY%ma&b7lb^_$W>7d^$t_K5Q8mt*KhpsRVD&Ra^hw4Zn zG-SbZgAffm3i`prP(O)$4Nu@1)P~ycb6*}OM2e#VGVa+`>_@|Rcw_8)9Q(XDA)AfP zc49vnHW~Zr#a6|M$fQwk=sP1?!U8A`*4wvV(k?ovaetN%9}GfnVA} zg^-3x@Bmaz_bZTKE=+^@pk+{LPrlJ1{&$3BMiJ^?>Pp)l!C+gtE{7>F81%dw41_{h z58I&xdV?yfWm&Xk^l=Gkios$~J$MXCyIW8VyP+7`raIuhFQ~Fwgxq$CXo0h}aMR)R z9&PKORe#bE|5bPP8HH53glMXL->M=sD_Xjxa28a+!hXK->;+taGRSlZv21b**xax) zp5=kgFO|V^DyuZO%Ka87aPC1EC?Mm`98t5RS~DElLn*8Y?%QxxoMnU3dJv3-S)i<2 z2wAS#SdD@2vdB)$I1-k?+o11Vt{XwAt|B)Tlz;jJzygwLTi1*Gc5BDiRH0ljFAD@c!Fpf%Up z?SFuY&+s49T5UgX=uI7ix_{s$4>b;Y>l75T!x`gjsPs4R9>~`arz^oXV|0Ly&KBPRU3NGh1G_*+g{Z94L0X?BCG|00 qx;-j~fwrXtbE=@DJoozg`vu%9aGhZfN)0Oj0000< z>c*EjS-vaG7tmlj#aXsc5kzf`1&QFxg-k@HCipfZ@#SJeoK`}U5S3X>G{yAi=c21W z=cEs8U-(=deh&}l&;OkB#%uHzm7F6LXrqE|?>%;Kkxo*EpMP0P5#82d(remBPrAGz zTnj96ifMFtEBPm|NG+3C&1On@RYi%USS-hWr;(v-Bn4HG z+i2?9%O*Z&3ZogtM^vz#I+inzeWZX+J|MSVtmia;&`v8&{JMhS(Dr;-MmxJole z*h3lr+Y~y3PtzF;ri!i1;9Yt#fDue)7Asi8I{J~@SEPVCK4t@dk+{K57E{JTR#X4K)%iSOgzpsUfD|`RxEHuUu^dP0000<{9 z8FWQhbW?9;ba!ELWdKlNX>N2bPDNB8b~7$DE;u(kfL#Cp0}@F@K~z{rwU=qAO;Hrb zUkQnLA@x!yDI^}AAtA{pGK4Q?@yyCYp^TXcy^=YKl;MM}gntZW78yQ}%nC`!5ScRm z{yMj=-P!x@)$8v1b?!N9?Y;kJ@3q$1x2Pz8tA)!9I1hgu?r}dZ{}5I8XvPp5;3|Af z5h7uiVGh)&`gHyg4tgecS4Q`Hpk^V&v|!LX1|g^M?OO;T6%6{-AY=``Jzy3rg?^{@@5K_^gUwQP$% z8J$ByYGYggss~R&X?Gix>$^d*(9{{AEBC6b79n>-BI;pW4YvY=KESpX8s-e7y0gzH zWM@c-mVY|-tyCFvo3?ZjoC6gwcbuO*dj%I^85DgTP}a=_ZKb!Z#1gwL^3ygB zf`#xt>3g4RB`DSP<`Y1vufx>=I0+}9V@QaWFMn2u3ZCjsAIKQ`Y5XUUwx$2H=^PO& zLVil;*3dl}*wR-SnVWI{EslcAGMH9RMNF&m+t^nbliC{aR1qF4Rt*+Ex0i zStpC}Uyf63#^?a;&6b$S^7#zKVHfDAkhVHHNb7Hj&MXCQimk1Xc1%3V^QeD+e*q#^ VEN~48a`*rM002ovPDHLkV1h*kn;ZZD diff --git a/client/Android/FreeRDPCore/res/drawable/touch_pointer_active.png b/client/Android/FreeRDPCore/res/drawable/touch_pointer_active.png index 9f91b24654a1921494674f663e5e5f9528ff5cd8..afe970b9452c685a6f3f74ccdff1366057c91519 100644 GIT binary patch literal 10050 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 Y1t)c{twn)&A^-pY07*qoM6N<$f_8-7j{pDw literal 11248 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 literal 10556 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 D$muy4 diff --git a/client/Android/FreeRDPCore/res/drawable/touch_pointer_extkeyboard.png b/client/Android/FreeRDPCore/res/drawable/touch_pointer_extkeyboard.png index c82bdea37e776591fbd39e0eeb211095d7f68016..6b78b618eb1336e5c7c228bdb5ecec0d52023cb0 100644 GIT binary patch literal 9595 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 Ny&HG5-)iEc{|7n^ud)CD literal 10709 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 z�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 Hu0mjfN0Dkn diff --git a/client/Android/FreeRDPCore/res/drawable/touch_pointer_keyboard.png b/client/Android/FreeRDPCore/res/drawable/touch_pointer_keyboard.png index cd58c87eeafcf7a044d07ce3a6dcc8538d98fc18..8e9d1fff68b91b974bb23ac6c28bf8c597e732ac 100644 GIT binary patch literal 9635 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 Q)_etMYZ$0ksuIKg59iYANB{r; literal 10725 zcmWk!byQSe7k$IPfHJ_)4MT^7bT^1JA_&q*|LATQx|D7yrIhXvq`SLYkZ$Sv=KJHm zyVhIp-Mj92_w0A}-ZxTRRUYdl*-HQbuoT|PY9M>W{~HDbdF>K68A5h19N&I)0RT+= z|2Ghjkx7EQN$M)6?7H0)nDNWDC zLq9K9g1KZ5Esv7W5Xt6HNxXXtqUfGaRp3q-O4|IHnP?TI55$stl>SfmK&H@|z%#?e zSf+#O-^?nWozFb!+i}C2q!q@Nr`!nK?uZ`5JgT!!?F63mtHpxj@{=dSnIms41NOT7 z4@zPAOLD<(jG*q0-J{_&Vkzxr{K#c!wEqfV`f z4@8h}T#s)sO3u66$(-OB&kRbE}h+lT&MJ)Dhb! zDmmgSUz3xQb=B45;&XCxHqJbkd)uzwugOSSsR3~RZchIBGgsKtVDhV0rBn{So`dVe z#Ke`M6!sy#7Eh;Er+v{&4N}w>z~__UK7?AE&$azYm1$r3gp)DtF#{75lN<8UXsEq0 zND2k`gAOno;RN2G<4~1G@s&{1VO-$@xe=`8s6Tr{Z`7}-P?q|JbF4P=_yh#5eed>) zj7S`EcuV6^f!?2wZ!wlHb`BV$j^t6Kw6wH>&#tr{&giZ9IR38wTU}iZ%aM2n;i1)h%Vz{& z_l!CRbvASMv0L96lv1{ch>3|;n_T37dtDT62Q)P`y&Oe`=;NrvYKxH9{ngO|At9mL zKOc|px0DfiVPRocot>SwX`wHG?$+c@HB(d5xwjVL5o$FbFK>NKp2voVH8DsO&CLt8 zMOWWz8~L8~bQTsC##jkS`T2=~a|OSFyITutTE1KbX_b5+H2Eun8_)fu zW{bMYn4SI5+Ax9~|HG5z=Sf*5a;!6RSlq`{vZEby)p$VCR`1M;Ls3D&siCg!%bh&U z%k%T|gf}jBC_vjE_HU@YmAK^M(w~eq=gL3UFmlI>QdvE`9JoaVj^~KJV5D)IE203` zHqB0ddeh2t1RPd>lq>E2|4k4g1W%CT>NNZ5>FHr>YYQiQNI|LgJ_+2YU*2|g|CrNI zTU#r@%j=7(PNIMpc_m^Dp;Ay()L8ZWgXLjiVQ~k>5j`dR7ZikYQ|lKfx!ynh^Zi=q z&Y{qMk?zz0B0_g%adGjD?3nF;|KTyJYH20kP-lHrko4r>sfz;8*@D4fYP|RyFt8PN-7C~EcYp>bs?e$W#I?}4MuS^r z!X_+JiXpyyy{d*F5ugOvvMs!gN#d9R5UwA>HS8TOb@v9<23_&A!8_NPS-K~SATTr! z9nllq4tJ&B=~=9^L0`7N{uPfWfdZPwkS`jO{ZBXK`YLam>R7A%wLO4vo?BklmuG9O zY;6^1?2ZlE{Vyb)`UOz@WnHyjvMan*8Oe>cms)8f?zYPnAFD9Nag!|soz*crbT-` z7#J3w1fk@^bmyOj(|HcUz=2(*+LQ!*Uha!8ESR{xtB;s-Qky9$s9vBd$T)>e3_o36 zT~U!GzKi84XK-5L%dqJaBb%R_^T;0Vz-zHcSNok|e}@v73xl`gp6t=R`X&P9Itc&t zIE;)^%~YL9S8veaVWu=~f?_V)Th%L~bxb7esQxG}{uXfB@r3Wn$~<-)7 z*$KuM4N=(0?Z;xeVE=Bs(HTnm>O(30l=EF!etv$zG#W-^|I3wdI5vKSYUmna!2zi~OLIjLm(@#N5Udb$LDUZdpmbP|<|J`1N$NYR_qD3}uz*7+0r<1h|VZO@)j#M8D zMa7o{>hyZL079Gs=;y|z>@K>;10+xO_Hcifl-L-VZ*Oa3!4WsX+)RRgcgpA%VgQ2f z8RE~V8xM;m(gvV&5n!{)Ls1-6bwfiALC_x7WszEr?)~FQ+cK$jeelhg`2BLj)D(}u zWboHFDpKK-FMwPgV7vn~eni`j4g3Y5z+@%bS#xu<921P0l9Cb{@)eH>BPlhL!LWvv@Tc&lJz(w4D#WA~*6ms^b{Q z$0zf$-b*3GB<8py&zOjgY;NBKFtI=YB?Y1h!02#Z{jbDkGeCzgD{1T791D$OKM)rg ztJ-$Kx4+b1eS80WS0V5e+5`eZP8eVR#5>~)#+NN4?k-UwL3iXndpcTs5=)HmPU)5c zMS~N<>+~AzKQevw922{Kc(u2;x7Jl!`26ahE-WXo9UiwWjKB60VE=cKixZJwTn+?u zPXG(TjQ$ZDdOjV;20SDtl<75O(QYOVq)r=hBCZ*H3R`- z*I_r*2uNp58kgYk;!1Olpzo7!Pj+CS6xuwklC(QziL&QkfQ}3QWX4#1TL10U?&FNn zV}7)2AgA9S@-d3C^48nCY_WiUIgX+813h{cf?J!xCvk4F?3{p*gNCp63 z8H1pi;(oslu8x*IhAHe9WMj$25%L0Pq)ouUOo?`n2W-OU{KE3eZn2gHbMzIAdTv)t z;i0h9l;ov_uEu1SPgPVZLh%}=9tqOX@3wyofq~<25~V1*4N&JT+7jJ4o1J=wk$5?{ z(CXJ`m|+)mvn+)HfNBU7$s^{LedQM#90K}~Nk1uNJPVS{w<7NisSEI4xt}+UZKC$S zF+udbW=Pz<&sF!9tHu7q}o?owgyV zAf!sQ0dDXOxH=-Q5kZ@&%QzYVcm$|8I# zoO=Fs?ct4(?~UV03VUpmg3u)+0~&M!kKnuf6(=H%kB_fYPA$he5kWQGraK4DU#Jk4 zr8!ZBH$>%F3C+`puff_B&o)74BB!rDnhbMAA!Og zo)WG(Llc;b6G(&$OBh4R-S_^RZaL}f>@3rY=ITi82rB)9PTYP_pp^PD4h60n!wmUc z?pxfod?JR8Fwtr2qw(a~#(8!eGfJ$kBM*_cgh?)#Za$x<`ZSjm7Z*yiba@p?)#Ch^ z0+yuUvC$7?cXIObeeEaDPgARCm_)F709YAAJcEE`5Go#}w6<|>`}B0O;_o3~{r=Yp z@LE<=EoN&V{?`_zi2G5Rh{v%S&7X_&a{>s+LR^`fHt75!r)^aZoCPsJSpLS}7;%YT zXv>=Ch7Y@B9JXmw`Td&+Oh|AuL`Zt@tKeoLE~pf4HTxHLX?kkOegRI1+;8|+VUZYI zxmcED-`DB9*)UaAl1Q0r{Dtxl;+xt_Kh{($#NTmQ@Y&n}C|kl20oV57=ZiKK?)XZo z!Gi6|&a{pGymk*(u7EGLE2Ef7{7#tv=mUkUikFuVpaf?=JNHmaPhguD_aXRMG&?u9 zGk$NOgsL?KPC4oqIH6A8&7GGIH{z z$VUHtDH&XXcp0E0?J?#hjY^oc8JhWp%_ehJRetQN(HbMSv_~S!+*;S6yV_do=J~F0 zI$;PV_^y}S!8Pc}G-aT>!GmlqPG0TmIDN(LfMahLZ|;xq@!h?n5EhI=!e9SqMFplD zY~r>R%Q88dElP9~g!kTrav2^QgKk8(YjD7>mO9#h(F%vBn9=U0S9EDz6Jk(o zpfcdORh5j|WGCF_J}UHvy9C`h+wV#!v|SGM2!B<0es}lANJ`3t**neRpFEY9tk+&a zYSP1luR_QV6UMJA`ZiWpZ^53>Z8cXR$YNx{T+Ea?sw2mzJ#?fJG>+L;N@ z>>sBJ!{6S2^LK#y1?s;S4L*~~x@zwv zZ@GavowU%iE#PW_QzRf^7MXIPd{)`3gI9-{@~zlxY)L1R&$?KAI}n*~?-;l5~8`0iz3jKU8MxVRe*a5p_PR=kVpOx1`)q z>o2E{aTVjRy#UW8q@BjSy<0x@{j`;Pm+3aYGXYddG9)IHPhDO8^_NDCJI8B?le9jo zskAJxzmbS{&bOyYK5$&*Stc?6yih|JjtlFM>3Av_d;W8G$>1Oh15tg7Cx6|w-LZdk z^p2I46=D_F;>kJ2F9I?v%aH;;wKIq;LdrqcW%hYCL}DpcmIEwX_nkJLpiAR;i6o2O z4hGjd)k!oIyFke}0x2C7jxSk~3=9lt6RT^*S|u;7oom%XuuoZ64srGm4tP3P2Y3U0 z?+GuNPRGV1B${)0cR90!TzbDe<1UqmIB!ki&^jTITg>&##yNp4RTjRGYL@VfLU76v z#cXz-D*7*Bavm9+zdGfKp6qS^W3cjk{?dHXX zbOs+9q743N_K+~Nfvq|5;VcaC2$~I2b~{*G_pWN88Z#p z3qTT;FE4>R+c|o)IM9#g7@-b=92;BP*UossG$&LNOaJ!vSnBHBUWx>}hQ}!-j!1ch zPI%UHr3WH)gl9*jdLYL;WGL>s8+VTcQiV*h`>jMZNW_f1V7Ejxu~NDgOu?)n6GHcX%v?=&+p;^p zoaq<_t-dFo@6_Abp={%~kV;QYy_QLs=zG0nA|b;x|I5t=VEBZbO*_nR)x7j{LX&4_ z)D&*?zPPxY|H8*c)TnBt-7yRPxA1eZFeK&1)xh4P$~}Y%X$P{$ZJqk2y@OXSW%~TZ166*5hk&G9@nJ4HAZJC zWwGbX2$P`3U#4Lla6)m@0Oul^{4;KeK>$+fFu&ZN>7#s4& zWZEnmJl5l}G{T(vn+4Gq7kEl!)Y!{Cb>RkdQY*{ezFc^wAlY=e4#8+&bqV>`1`leE zFO$)Ac%Cd!LO;z&lAcCiyj`%|UW!?HwfmP4J}`9LT?F z)+Q)nz^zcEE9Zi>rP$)0`hrO@Vrrr8`R#2)A_VA-TD?{{xc&}I7piK)4OK=c=2r1az)kF(x=>LP&o!O zt%H~ehA_VS{GV+LyW-C;{3IbZ@v_A(0Q=S)jy6Ua1!%)^<)nf*wH*oK@eeo&D1vdB zhgc*2Q%gTt<>ch7&l9*vp*kd=+T;)4QC#~XxCR57Za!haw97S92nh%dw}O;+`=On1 z`}skSm1TkLiP)QA=u)WHScF z%v?!ni*KTZJP$rKjd@HqlIe1!L#ky`4mJkU2JWy#zFPQ~1TCX>GyhYhp4gx)iNjqf zEieDT$~yYd6-WmQjy%al6R|j3k!Q(ld2-~8d8Asj78X^qq|5`O$*HMpQSOpsSt8m3 z>2ipyQ&k4-?ZK~$U&!ay7#42vwEt{oisoxSub%jcJ&p)G>y_45g(<3tP}EFqzYLQF zMuQPB5N}NqQY`;rPh#6vdWeDL7)pO1oRF|Lj23tI#W;=XLO`bNf$hh;>7}K)*nL{> zOqsNBGERb?_(np-E!XxJ{L^CfwY9D>eAKTEg%ODy>lk6k|3|iNqvHlg^l2r=W+@ZU_a zI=ggIdC)O$ zJfkxk3=V)c$-^QBE0q_1~ zfT9dFHJTkar1AHlCbEn+%#K%wAB{>e2-M``49;8*kB;mN@?lTt_|(A|q@xOXW{fOI zvN`?whbr7yEqBJtbkstGq_n#pU#xmA)<`W&SZk@??rRh`mjx+F#p_$glU*bt9q#S# zAM!<>{Qb!J)hD9~kPGc%mdt%Y$2;2dpNUnAAmTSVJ?zHL0I_~^Hl`}Tdoy|lpaA2! zmmt-!(yVGP7i)>H?yAQ+q)@iLBc4SCO&uf-^Z=!jh{*=iK5Q*c<$^VGVT=f$-rx8K zICvrsJS{aJ3|r=T_rwBac0p1vP*nkA7%C3MO^y*S z-->;85JDuyILb+}LyokVQ(FiY?$)q`dzd=k^FQy0nQNge$86EKkV8I6Vbz|-FM*GbC0 zhTbvvznu%J6Wf*P?`xxkZEM2vgZuEQE3wZ zziIT8tg`EMz1&a!dV72OtPp(PSKWmgLk1Ou{MY+gbbCA1C_82o+RZKY^XJd^hc=gQ z@Nz%LeIrk}CKs^RtjgCn?Cvz*l=LixzG13g^ZC;|@*(S}`O7gEYj}o!JBGJ)0xgNV z8k1UfX%}9l4?7Wzs=XnogA>=My^+{!Bch-5;onr3j?VX_q|$p+FD$BJzxJa+Oev4! z<>asoU(^tyO|pfX9Oagc4j3sa^U2kEFitU2f!5qeH0Dv0*#D~jdZP*7^Q)VR5lqwy zZ;fs=J=f7jwZ>>PENqfksYlJeYxV^_Ddsil2NdG>Yoe2azg7%WM>shOX4fj_wgmD5 z@7`531k*<$919VA!KZO;`a;mCv}~Ezu&4$ZAyK#eB%Se5j?y$#08>)Sf01^6 z6i#Z@5h!PYPE*wDd_*DpZm73u3EXlNO^*33(F&r`Z{DB+8m)V$tkO%SDutC9*43uH zoCG2OB674Y;Iai^EHxs~-#tFYMK#}a>2Y+&;Q{`Y(ozbFud(Aor6=C#-~r)N=dWO? zHh3dxTrwS0+-67#@1`@I2a72Tq9n%gjQ-#<7}S96ZdpC zfBLbnjzcVmex(tRK#7Beg>`g!d3p2?A!d3eX>t~vWK2UOldB66#$A@{?y{kfsfdhY zWwl98Nf`wj`` zEYt8O-2M4qSjp97>d}m0=jgAD*=M+g^rJxB5#LFp8LRYX1zBHeD_bAF{P#R%*&5bI zeK=sq*CwI0I{w1mw4A+rAk{k_vM^w(vOA8x@);+M@J(Y|y zZ-x*w=|?x}W=(O7)C{MqwcnHRde%jmhj_(N#<`i3p}Uk}Y$|y8|28rRr8UHpe9oi7BcI=>VF8~ zSCNjqaZ-DcDAaDq_;i2L7U0xUt6Gn-wTXV$sSx|A(9b5rl|aNzI%WSKlPWGWVr;e+ z>+0#y@u)1hCS$6eeMo6+Y~WPTj?8?8k8R=IRO{p^Jg#qpi9}26VbhBeg(Lra~SA$oU1%-C{abkAvhG7De^-gpPf*KIX z`;~HIFD;pChvE#8C2tIdH*aE5Ho>T_MxG=7pneZTyP&R4o9&fCa%b`jFyh-0X1at% zee4Q{6yp@HkiSaQJ5KA>7zIrJcd*4#t*XB-&m(dhs|P?tX|*&y1Nq(gPK z+hG^XRyrCQc#^jFNEc6>93%Je%wG5JlU>4+BtKkIR*JVlyP}K?`h!fca#KE#NNYm+ zUZ~`#J3~#=V^vN&N!Z-|!+FxfKQjk+-D)NY9zKQgYbJ1RS;^Ykpz^R zbSgYt4)%PmO}B{4;G5ofUVlf5m5*k}SnIVCfJ=*~^`ndv@a`C^(6F{NU?hW&2U$F4 zP|x7RK|;pxjJXGghDuJBo2LHc(XDnMk?M4=3*4NOWpvsSHwjHlv?kbZ1R{y8| z8}r`z>=(P#M#k)u_&+N@B2{vg-JU@G&9~Kt=z(x?P=c9+Ail5*8B)O-Zs>Vr%DjOB zo;L*Zw-fr6)>DN-`fb_dA3&zbuZxU)tbz5nEX-_B>yx(^i%4tkyG%H?UkAMM0IZr( zS^QENa{2m|6C&SibEexKoYrZ7YO3`DTC6*crvF1S5aJO$h~^Un3781Biy}%t&@B## z0@rw(UaLuYYB7o88lWTM9;F;XS`i2{A|8|ORGBt>mg^$`c5EQ%^*#NT`)nz4-EuTr zE5klq2^;8CdX_0`*?#pQq!A=}y6SThS_*}LPV$(rl&vmM=`T93vC-loAE)o1Mn^YG zi>M7USvdRfsBzed)o3`uq4j& zVuBc(A~i5EKaY_p^7oy1#*cR=i6m~kjz^1iXy?P!F*nXK>Wq>07`L}p>$LQEzTCUe z0`-0r1>TU^nVPXo0`}?!c=QTcCYN}QS~|hVA1rCM)8nm#hB1yErkTGJ??6CdcIi>@ zk-UU(4Vip zGcG3Yb3E7fbQ!@Us|g^oILG{%(y7^zRwKPeq1+xb9y5mApbj{-#fk)g!XsXwNS(x? zM?H_B?nv!CBfX0gl6^mVfccGWm-q!!aJ>X0U}j-aI5@as_0_j*%ASN9<8yA@Crxqz zN`diKz5$LLHWk6}_K9Y)Bh}*>$m)?ho>hO$G0-nxZelxv|NRpCV%F` zeBy;ddP6xSC7Tc3tL?vw5xW3!w}f$2pQeQYvI79}=|1nbDxb{{t6yafD1ibN39Z^t z4voGWG2tXBDo>bHtE$?z2HRZ!T89c_k|X4!FRBS{Yh~D49lj5*BK(!F(>s)<#YJz+ z;WQe8j^WP}CmOU`gr?G;MfZOcTSUIjlgirxZGphiA$}Y<@V36^c80Bk*PgahB7WgK zOc*OeA<_BoN;oEbf7I9WZ!uC6VaR&D;s81N-`{jXBW^HIbLs`%t%K)?>A3u7=BbY@_4Cw#%t}{PgZu<7ywgWBB z-F(e;!uoIU4QaxIypR_!b0V@@&91WdHFHou%v|oix-O-_zD)m?Ts&Xt{gK$j4~ z&|#|bSlyafmGo_%hu4f7eE2Y%N58m*4v^7$QU^RZ5%Rx&Gng7Y_xg|wu^D3b7jtuG zn`UWNB3t3dwREBzE|EfCEVZ_01814eag4bl^3+Vi-EzP~H{@7Z4d?HTjkguG?g{R8sw zRtA!%Yrqx@ofI>W>KGZQ-EE9HZ~{P~d`XErU+1<|e^^|itu;yA>9jm*u>-)m{jP%=y~#^PaIQI;&aEVsYt%_|*voc%td^<7LrA6#Y*7;DFleEj(F zXBDK~jC@*lirmVsg$)c;u8mnFjF8UE%p6@$20MCQ8`|ZwHRsJxzgY}B9}k-C9eN2E zQ(tPowH}P9Q*swwD$=41^WyUBJSjNey~K_EXlG}~#FF4-`7W0WIpWGe2SnXWdM3`A zo1EW|Z743rQpE9R6IiTcTz*#4v@6+2rnX|;7eT!_hCE1fv5~3 zkOWBB7YUGrECdol_Jk!Y0YwPgx$p0IUi*2@ESZ5YnKC@j|6wwdIXQFw|9Ab~@6110 zmKDQE#J+v|{v!BDutZ=r5;*n*L91ZrbIKEP5{Z9APzFIK8D)qrCV{a4d zu3T9GNhb>kZ0*{$HHHY*BZ8O!PLky-`Bha_Ut^h&5(&(jHLCytnj(k^ppn6aR`NZr zKJp?+hzX!^$seI^-(~p`7l9ED{t^>FBSBsN;>C+gn+o{~BPS?}383-HJ!|{+?e*bg z@OgQ8wUw2X2L<(tl9G}mMMXu2H*VZmZ{T2NW@at#2{kb^LP4ujp0E=Qr`)na&G?rt zU0S|(@7`m@#l_aLWy`(;A=^qxNwMPM;!N1j?b@~L*usSi%R~8Fl!%T1CY6Eu$r;M5R6 zbLS#h)2C0jmMmFf6%-U$Jhx-Vj_R#jw|?eK$DS1vz&~gXARb_Me0;nu0uww(-C9vm z!IC63?k2$mnkXmw9GW%z=|7(c!~_rqu<})_R&i2(@!^LbTFJ@Dh{39>t2;o>5P8Cb zBPM_bZh*kbAvzG!($cIwd-l{rej}0oF9!a#0r(dafsP#$K=73@th`ak4??z*`ENe( z?}6a{eLYq%LBs^$15yfB;Nrs|KRnXCME{52doG-2;QQv!-rwc@9LFmNe`1IUzyQe| z37-!EFu-6T5IjZr#48zI!VQA|)4}P2GaUTD4db=b^*t&O|AO!eK_+`FK}-O;JSxMH zhh3Hr`3)990OCzcSAvxA(+y&OC^*Z(*@AN%{79kC@w)N5XS&3pqBzYh1{FfM0uVzv zqyr)0fcG*~(j;5K;^q&2`st_Nar=<&O9WvOe;UN7WkVbU8YG`9__2fka_|#B;I;Fe z-#t&o;TD8?2Ni?N0>$$PYriTDcOgWdFC| zXM$#e3-7t-Z`XI}(&fI+ojc$E^wUrGA3S)_tAL+*zH8U6_wsxEzVp7HA`C=f2;yu* z45zz=AfM4f1aH6n_PQ{KLPG-Y;k_KANeX~90qT5r!skN-bO|e}tEN%|9bZghyp?Q5W`sr!3+(wz!AY)Z@ra?2*Mu=4-S5p z_wZhh(If=`>Fy?vKM}~bXNUC3`0lcJh{w{g+U9-x_8l;M`0#Wk9D?6` z^G)mh_uscR*=efF6(dGciIgAYEyf~{9yebpAl=+UD$ z4j9n?*}Lz)>qeIt&Qp(|d4hZ%;;}6NM+BMSZVU;6gZ!>qev=gd@RIKp0p!2)&O3;J z_Hf1O)vM3N>Rrj*4_w4U!UgTyw`(cyrBY6L|`jel*|L*_OX1($MUkWvMhP7G9e-Ue8b&iW#<^gbMb$U zWy-%VaqW;q;|bCs5He{;%N8mtKR@3pEG%Sv+A1$Ex5R?@8^E5sBTSW+mRg%PZ)V}j z7Gg$5hAo(R^X6HzXV11i`Q#HsO878^Z~-2O^Fo*$OY$DhB?}RV_c28f6M(-mPcHm9 zSU%+Ave&L%15uUZ$G_0bv99wR;`zBn$BrHD7&U6tCM+J}aqp0X^z%Y6zaJi72L3i~Zgt%I3%12gT(B*Eai+CwZH{clEU+LFQIwXJAO<{y zcm~^pAOyroX^Z$sFl}$}zytT+Er}U5x%@mX$A<{A3=zZx0JO}5d`)W=La;}hA|K5A=apCQxj*x-X;<6zJviN!ZhE3M{bJx`0^ZeZEU-pgP z(Y)*Qie_D=l?B5^J!jQi7dN}Q)5|GaXD`aMWG5|RKu996GQ0vI0)g40TfTfbVS$Ys zR2*OOI5#)flDs5$+_H~rbO;R_ou`(!=su&W&ESM>Z^f^y&(FuQH#$NnCtpBxgb%y{ zRR$i3(vk2$Sjd<1F;4`W>q7*QP7GB55qJGs?k_Ir$3$sP-iS4F_gEa4HHw$=5pnbcg(N$@GA_xhHz$Q04I~z}+;Q()i z2vjh5E8Xvh2V-(tMGzqYMBeqELELvry$c-juXy5#C;CA?^)`c~WcpZkng6YLyWG#G7Q#E;O*o1>-eS6e$69obYE9*Z8*Y7lWej)gkEYT(t z_vz*1PARL%^eMqgO19XR?;^hhDDfWBA-Q|}#=j$>z=Zjlioz6wFOT3AK_1~iJCArP zDis!+2n9!Ft)ftR7#lPxlyNLF(s!k_c)Q^G zSIrJ}g^eB$+g>pOOoU5)qVJQ_?dJUM!6ohjw@!$oJs|+{?$z2$Vv+0g}p!C=ftU>p#P> z{vQ+jv3^{ChYk;R!}^JvOcPUElUU*UN%|=De35Tjy_;QM*zXC|L2bNUn>@ps@AU)FT{S5DqKGo+86nz z)w_vrIdEQnMt;eG@`}o1w2x`oDk#w)DP#3&6XL?Fk5zBqdE`&ymll~`!Sn{cJi#SB zXKr7x+%6C47$RI7I_f0^A004YK#`QU1=8-;1`%FB6GF(hA&X8m5bguyMBAIZ0Q@ZW zsP${Rw;5$0)_?WYzrIb&KDvEs{lwFZoQ>9{z2mo<>OkOcjJdPWSq=~b8Pu;N_MlIZ=p~CbA{zUNLOQ}-#XJh$P1?mN83fZ}U zgn%8gnz<1#Kv_sGKv`&d0r3`jSUP0;17%_K2*7Lo=Q{1)7Ha)ZJ@w@CEc9@ZaGAJK zwSHQ>!N_+L51yH_wz5n}P{KnI06>KE*KOIyF;xVJERYDU8=Pp(U$)w!WlW<=m!s)m zGGQbZe^3TeH@UrlQ5I&3=c|L{Kp;7c3IUi)y&C&n)_iSt@(HX z9Y`U2w@X<(5&4Y>U^BS@6@hvI%>`tks|bP{04j{)hzNlD;Y*pb-oRpJ`%LnAj@QHm z=Ew!elvwzrtL|?uxJ>ZBf*ZB;Bl%-URNf;ZsIVrctgBb+H?w_>`H1R6b|EEsZ?+U>+_uY4I z9|R!TEwR#Y|E1QwFQiljbNwFjLGP5z6DI(U=@kKg-yI5C4^FZW!RM(fEjomJeiA`E z8lH{Dkd%RYGz`!praP!%K*rjNBw;L)JjjN-5#$CHK}13TlfKOQW3epLiXe`PwRZ(P z<~iLABBc>!-svv)&vRD^+H~vI^=-KTBsNU!68BkeCx+twYuwiFb^TuQL2hBmAw&q# zzQDlecCk)6cK*PH=UAo)G$-&C3fep~*A_tByD5hW1GI=CpJb4ng7)xBFOC1YZ{I$J zg9Z&O7(Uz^251kPJpmO!lWPS-HunLNDO@}OWFO+7{0!tV>i-?tKknaH^tn*mzJlL~ zHN=biBT1rhLhQG*|JCaYtQI|HRrs=gBjeA}n6Kn3Dr>eM)k-2fg>4&niGFijWYJl>P31d4C=+&!NA=Q8p20V*IjtH8r0CWd1?jDP$uEy$lj4*`! z?yiB4AGxystBL<|5ptRFqgKXBXrmJUr!QV_HQf4@d`0TIjioj9y6G}pr~rJ6!0QFt z4oS9Jix;@M-;6`+)~#h0fG|TyvqM{Ydb%CzdiU;K+`oVSjk-vr)j-q<0Fdyp-mN=; z5rhaM$xr#Gt9~s7*9qDW9XcdW6F{IGW# zj4!!At*iT^Q0Zm!}lJJew z5J1b5FyQh6-*Y8^7YHtO;(uGg?<5Om*psDSVy0FAB7lW8Zujpm^Eb(FOaTCYVE_UA zW>~647`UwG)Pqw}R)|N-VZ0mxa7`F&VIQI`0NKY_C<551%fvb?LLwLy0^mkangrs$ zxfg(-o`jHkm)GP&_cYqS=erX?!S5XbkU!8iMF7N2LO@M0_pjtPwg5nI0VI~&0vMWX z{n8}>rxZj047rE^`c_LG@SQ}^M_ah*3cxG_m23ndR^N@scm#wXj}OU+6qbGt6@bwI z`nBK&1mN-jK?R_VAOF_h_yPd#p1@^KCszGtc&bGnaCxt3^=<)}9zd+Wno59%5Q(6y z6lz1rod`BP0qBli)7?wlo}^tsZ3OWeNe{P+efHTgKQ~tYen|!32;f$Ufu#(7%C}iD zJgGT=EdX`@UIAeJkr9B3z+Dbr6_;Fl!|-{w0IrlIFe76%NiEGFXMDY!K8M}!=+mc< zEdZ?qbX_1S1RxWv$?|4C&>m6tmn3}dH2?%6uYDy%);YI`UFSmpHwtc(3y{xl9|kF@ zl@WjpS+cX|ps)BJIRSXXfGL1hrU3fdRRB{#cJ{9mO`H$20dn(-N)bSj2w>BYA44T?l|m;O4>8>e=DUm>7E(bUlETPF6ghdg`g-=n_EqtAM9z6Ud(j=-$2i zG^u^b8Q6X6%mGxgGuXPc&z!1g5kTvq^Y*I;cxc?rLo5gp(gvjlNjsLEokdlnOTzR=>}qM; zxN-Yc0Ab_+Q7M2k0#yN5UDdJ!!yr@>B#jV{7r=E6o4m9(j4B`^N#G45<{zaBpbSi1 zyb{7071!-x^hs)HrB!Iku=s8p$O~$GM)6AOJo0d<#Q!Z428v}ZpitvK+r&r! z%?dyg&7lX?Sz4rEw6Y&T;fhyO(Yl4n@Br1Z7jAHtXgliic2aty+AM# zfN+TSlJB+ti+ax~ePDd*F?IdqE4nWbuSM)<`L|oQZrgDGPd@pi#Q$!aznKcw`0p78 z$&_4(ar>y-8yGwf@V10$2(@$afV%|u-+S*puQDXcg=2D8cL);-h^>=T*BrRG&zw^A z0u2=b2u6HE$wz#x2By^B^?d5FB`dzb(kc5GWYOEzG2qG+u-*BS{HB!hj|NcBo;~gO zukPR70@gVIX^KVJ?%?2gfQEtd2?NGx`1MX0xPxjy&_Oz6S$dBEwp9@dxcdf)Ay)QI z;_3sJ_Dw7gM+Cv4#Cyqa-YZEKeNwmoX2gO+a-$0C8}hS>`^0;eeF<53F8co5+={xt zO02(>?4R;aCxSih-@8jV3hxgPd}pw^IYg_0>zpv~e}cOO543D~dFRoiN9`mbB!*H) zYfBX|;1yDrXIWRp%`Nq{DbySlSA8 z-!x{S_1n?u){P_QTf;wIc#KxBEO|4*YaTOX&R*`>}p@1nHJAKa;>9%I^{u+zaU9P&3!sz|C|9oltPU z;2}gnX^2bJn=jI2VRn$jkm>+ST(UaLdg{&en#=mltuTdPis2XiQ;Wf64la+IS9;CR zv|70jz=4~eTV&a!JH)pioqnwC(3B&$j7U8E>h#5Yrw=Zl(RGA}7eb7B4*$Cm6{tNeJgt(XdW{fH@8VB6R32=_7H|$iO4tg0kcM10DfzdsIFw zADR!(Mc`uK+9{i`qV)7M*-M|y1(gokG%lpv(&Zyt1cU?T2H0y)b)Y+mIiB7yn)(|d zupl#c>00aMnJcVr?=H6Pe`S#fBF$<)%8Of{OS3w?zR-H+qb1g)q!re(RT=d3iSvXQ zyM!d!4?UZ%;;^U1&xHo{S!{t%--~w@lxJ1e#vSVsw*2;04xKFxgkd6qXky0bS zf0#xQ7Z&NvQH;Z)N8_4~QA`uAzO8$C%k#?kZ zolXS!aQZ<>c=+&K1TF^65Sk*ajng8Py>pw$n5BcZnE}eFQ$M#YpSUVnb%k8a{oGH8 zynv8_b?LW-AOyX;7+pEUfb|k0@E9~~DBU0t@EEcY3zY@J!ILnV%xof}QsQ|(xd2wr zSJW`yC%3iT3i*<<Dh{O2Y>M>zY4{KCauvM)c0%%CU!hwR$OI3c@&WSYCjA@vMb& zaj+091rcC5ESeyKS+i!^7nXJ^B9P3mOfK>^$)XQSvxQsBFinII2q!v=ui-|woRc(S z&5(;&6g-DZhH&SrVrS-+8`$KU(C_=xT!I)4>BMYGI}%Sq4#W$QUkTaO zSUrEA^FWxKTYUU%d%T?xMko`Ju;8QL8{ldBm|ed}2|yD*3xsX?;fI1uLID?ri-U#G z9(9X=ESd|8Yo)0|XRTAGN4^z-3PI}cdNOemN0Law16B)(2m(U!5QGcLIlyD$KKTLT zXvB5|L@O8Ju_p1s2NRD9k^3Hf^wH`EAAGP}$w!C?l5-;FCnwLf#bS`J{eEixKz9m{ zr~t||=7)M95WNC+RcEckllPk^9CF>ilqAKYeLks0aj>FS+YwDEWXUg{BCI?N}vo zl?zQNWJudK=RaKqmdQWX%Qs@&PQu zB?3HwCWiTxYSjHCRdm$I3-AUS67U8p1R=-~1B4+0|A1Hp$sEw1m2{55@o@M24Xj>W zK4PR=VZM)WMVKL!Xv|mgjW3dHTHhL`9X{&(U~kfe2{*Yq^G>`3^VsB>mq$~>;|+X? zKodeN!yOK^Iv|-NesgOzE;JWhy#ekQZ=gaTCKDP=F{pP4A_{#SOE*a;&SUX5@rVu& zgw-QPL`i=iPepz~Ug3{?Z`_Z(04zW(57qLktEwQ}?>+V=fBZ2wUk*0WqMkrSkm*YV zbmC~}Xh=v*oU>Iz&_N&>z6~kYK)tku>qV44P-3H`#4mW==X*J(92mAzyNiLaXuqk<`|NB!FP#W4SJ?hhR79es8>Nz85dzKOgXl04w6} zQO;?vKr;0`G-XKKA`SlG@`?A9kMtNgZ!_k*zeHLR&q4`{_B|9%FsNisyZ}h}49i#Y z8wx^1(5Y4p2WDcZ-9nl;)bhAh+^c*i&u%`byf5P5A3Y4LUcYl#UB0W$t8qWN1OQnE zdFu8<238!v3#bTudIRm|VOcbdq-0eAV1@dn&iu^(_Rp@@0eyR*Kl7SiG(AS3pLwrO z0cfn(#T~=y-3gyZ0328U={fURLwt_U(l`R3&Nr+dGQ$GNVc_{TZ*`yvqJA4VVSx)R zA5sON7m$nLxhSp+tZv(VA$h3B2=p`W^(g?(3vZ=gJ+I^&Rv)zjFf)IWI>-zg93%K{ zS8qsQ8JP=GLaTWb?-%fUx(s>6DCm1VaEQ-z>}cS-)u|4acW>887negOn;0%;E*WFQ_rM(vIroP2!qh z{1QVtaK~x=bO*@?j>*Yx4WW14lmx*4Cqw`|7jDAW_(`DmYfP2E29uA+FtdMZWu7OY zl=}W~xB`ek4$v3^;BUFlm2(XA9OvfixyBQKSq+5J6TtEz-(M$DbAb~m041t1p#nH{ zLI8j$*Ed>X&3FT>+(W#^`~aSVFmQx&@Pvf`Z~gD?5d?Je`a6F9o!SD>bpeJuOj2Ef z(8oc^H$6a108t_U^#siPxd{#+3U>p^lLJJF08X_WAhw_g09+Ger7_wB5L^(%b2)+SkV_sAs3)L(fa4SZ@K;)eg9Zu6{jVVckb%)k&KpQ~ zb*~uC(I^N3;X!8OYNaoJj7k9^XgNq8KuCamLP=u@fY-wP7vdU2FadBeC>1~i5ZwZRYt9kwT^mE9 zO8~e(K5T>$t^gu777o{(BiwtohDC`0xPbrP-nrWV3<5E9B}QkI^l50bMe-z0LeVKe zDh|1DM`8K#YcMC1UN7cyLt{(;`TQpsSC0ku?(=X3yQfdsnm?Gs z-Ytk=pn~1YCrq2IKO6VYiWmhO+@}x!Xg~TKDv46CF@3_$&U_C(ny!gcuxtB-5v*X= zta_B+@X=6Fq!e1kE_|Nms$vyp6u}B+smJ#Qi+)x$_|^L000000NkvXXu0mjfk(Dv_ literal 11052 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

__lS5VQ!P6Fj~O!%D6#mo)-;DZmYKK}UQ z#e7pktnxvv|A9b&Adeg#hTviIWwnoXoP;lX5zWobeq!1wW7+p+CxJ}XWOmKO&(5yx zL=T^n-(zo1?%-r@BLVHhuuFO-&+F2wr25hN1YV4bAi`6iF{2I1Sy2Dydqva+%s zCDA560MM|4_uhN&UB(TJk@DpbH4OO-Kyl1A^M&wpbCGT9i)9k(WN0!MVUu+9=uw65 zmgaPhIg8V|m`4I3u=4WqI^+=EefQnDSlD5WzzxZjH*VZes%XZCTR$N6tku-iv_x|N zhl>E(ql8Xs-RV8iwD)XYc%^YtX#l%601)^&mW_#kB_n7=KQf27ff}w#Cx{`rb%SH| z0K$v zIufvJ>$YuKmoHsXIbRU&AY4e0N74`j@4x^4g;*h5UIHFz<0ayunyfYK3qwP=(xwe8 zEG$f0xpL)#Nyh;qZDjLn>gwul6%`fDA|PPTfNI#Oz6%#FG+(}a`KFR+6NdyseMhVI z95-l!Sd=xn(^{llCDL=lHON{90PgCsdB%(xDbWVNL>tsZ(;H-MJS+nMaKE3;WScXp ztE<~5(+}b0-O1XBEW0D+4Y@Bc?9gi%2Vg$FiM0 zdv?TQR$E)!8Hwi*?FJb`*2dF49^3$mT&Nlv$hq+8qgjSDmW>9m13jV8N7f)?Ba~l5 zvajUz%OtknAKFAQVl!RYu$l8np zC^86)f)RVDKL&e&6~AbeiA%KDHw1a$=fl+l+vnU3!^H2Bg^w2VLXn9!?yUxdk8Qra t#k5pxqK#WabQb}>J#h7gdgK2WU;x3YROG+XbkqO<002ovPDHLkV1kS3k);3t diff --git a/client/Android/FreeRDPCore/res/drawable/touch_pointer_reset.png b/client/Android/FreeRDPCore/res/drawable/touch_pointer_reset.png index 3c12894743279c650d3fe15b6f7be68aa128bdd3..dcd870c430b18799c3528f0f716b4d08f69a692a 100644 GIT binary patch literal 9594 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 Sk1h@3fT6Cb&Sx$Ai2ngCR@c=4 literal 12723 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 diff --git a/client/Android/aFreeRDP/assets/FreeRDP_Logo.png b/client/Android/aFreeRDP/assets/FreeRDP_Logo.png index 3b2d02f1dab56e40dfbff64df228504e45ee7d13..0006001b74cff1ce49503d55a587f64b4f976bd5 100644 GIT binary patch literal 32463 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 Np@zPC^#cg}{{YUD5<36@ literal 40572 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

X#(PKE(>#Nsc`%tH=i=k%Rv;DRd;xI@pP5$ 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 diff --git a/client/Android/aFreeRDP/assets/background.jpg b/client/Android/aFreeRDP/assets/background.jpg index 3bf3455bfeed0955b243e98b361b0dbee472ec6c..d75344cf89d1e89d5c9f4653abfc2cae7b47e3a3 100644 GIT binary patch literal 141907 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 literal 128248 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 diff --git a/client/Android/aFreeRDP/assets/de_help_page/touch_pointer_phone.png b/client/Android/aFreeRDP/assets/de_help_page/touch_pointer_phone.png index 168749fd065e39c990cbb2e4b8c1673424bb5bd6..f325509bed3844e476ddeac40231ad82cc8e379f 100644 GIT binary patch literal 88598 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 M07*qoM6N<$f~m?OYybcN literal 102192 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 NXX?6Ya22b_{{x6Z7Ks1= literal 63377 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 diff --git a/client/Android/aFreeRDP/assets/help_page/gestures_phone.png b/client/Android/aFreeRDP/assets/help_page/gestures_phone.png index 1b90a1f65ab124907828e2af525bf7b2105f88f4..31f99f13e591859d2164fe89e307f8886bfddd22 100644 GIT binary patch literal 28173 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 literal 40104 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 GgZ>AEqZg?F diff --git a/client/Android/aFreeRDP/assets/help_page/nav_gestures.png b/client/Android/aFreeRDP/assets/help_page/nav_gestures.png index ab1b36fbab3381961c70741ffc084df1d20dad7a..50bfaa232f82698e2801f616fd290c3517b4cc80 100644 GIT binary patch delta 2384 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 diff --git a/client/Android/aFreeRDP/assets/help_page/nav_toolbar.png b/client/Android/aFreeRDP/assets/help_page/nav_toolbar.png index 703c0013a865d2850598e34bbe36613d816b5743..a3102ee33a2c6d0fc0e3264a39b5eeeac8783d09 100644 GIT binary patch delta 2010 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 LC8kQ>?aKcFh>A-A diff --git a/client/Android/aFreeRDP/assets/help_page/toolbar.png b/client/Android/aFreeRDP/assets/help_page/toolbar.png index 10c23b62b78c4f39cff927a99b5fa5c7ddb12a84..964cd59f4c9ab9cf9da7dbcfd9a245e727b1384d 100644 GIT binary patch literal 7261 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 XJYQt2bsUZY9-rrm8Vbd7ra}J)joiaL literal 10926 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 literal 8780 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 @9t4PQ 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%0A6td#NFxHGaoR|w9Bt!990uNLk9b# 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 literal 128248 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 diff --git a/client/Android/aFreeRDP/assets/help_page/touch_pointer_phone.png b/client/Android/aFreeRDP/assets/help_page/touch_pointer_phone.png index 168749fd065e39c990cbb2e4b8c1673424bb5bd6..f325509bed3844e476ddeac40231ad82cc8e379f 100644 GIT binary patch literal 88598 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 M07*qoM6N<$f~m?OYybcN literal 102192 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 literal 8832 zcmd5?2|SeR_je1~LJ2GKI+eP^EuHLE52o+x8XOqLllW8X?6TZ_0z%dEc3H&U3!cIp=wv^ZiVsjg`rCnK?3IVq(+H zOlfw|r|I}hN)mc^d|YM%eW(fPE<$_m8es^N&lV$laXr~EGk>Nx+m6lj3JW~PHWU+^ zRmE{|5xQ7fkXT%Q1LnAlL8w0u(iRglTpG$_vV7S>m?ztt6JP`%uC9Z_I9^6@XRIY) z$)mD;IHuuzwtcvj11sE@Mf8F%HHI06k{|>AY#|dC>hBjIAcY#iKiVZh*W+I!;joV) zLSG~JC#PI2ZD3R`pAEwr00+e4)EfCU!A&(}oeNkHA5XNI8?brft z5TC`S2SX!je|AhDv}6A|HUB^z5}#D&`EZ3?fe-g9lQ8-7B~wf&+*nq0l4@bPL5D_#|ox<&YOs z$ea{LBLENqVjWN@5*km!5*GpBufkj}&YG~l74>3~)^Pd$OlXEV;}wGB1$ciP&C-%& z79bEZ16XV`nh_jw)qunCBGIrY6q<@dVHsEo2+~mm8Wu;U5pWm^3VJdypLJT1M7WaeTpi%G`DjL88#INM;SK~n-VNt(X4E~?v!64!pzpX(61BaqfK{AcbAQ0&w z_H!lusTxqw@oW*AK+7x&!h!iwa1ef9 z9~1%xpbKsj{08|E<3{XGS$G70X z5=q}&=idtl2JtbxtGF04xy?g5bB-2b5QM64YD%80!^-@P~5= z9%N7`80b_&XW%gOKkw(0b&euI{TB9H_w(<+6pm0%DDuK z$B>koB#5XVIN63_5Y zkd5nleSuy1V>k0BW@NkppJc2^pUD+6MDUCgC4vc>fx`5jBpi&#S)Y&04ehTxSHq7J z;KzY9KVE$@g8b{zK1%+EfBdWrk(%R|lWZz`4 zg^gr?P0gnKxySN-5Tdmb$qmiynN;{ZP)D)Za)(aD>Zt6Hy0fr()tQ6$?y#fN?)D7# ze0cfFxM?`7FT`0Uj#3F+URoe4-jJ9xkUiGJ>$@IVkCYZj`HK#TQbTKAzcd-%^w#Z? zepY#$C|=rG2_gElgwgDz4IYTXKpxxW=1t>mH-Kp>y-9#AWhZl|;pf48^9bol@6L0*A=;BZ)M{ zy5Vc0mHCEaOGQ^{@CUZKXga!9J97PutaJTy2km0E^uM=GpN*L(b>7}>(Sq~OGL>V2 z8B(Yj+4C-L?$0=^teUAP9(b`zx6wCPDN<>D&MeW=#!$;?xxxa+L7rl|c_+m*dE~@e z32oBG{I*V-i_!r7w8s&<)B@agS8R#2D^5j>ZRfdF z15JKzUDzR&+T1QPOLcprI=T0`J8Ive{W|UY+OKks#V&q(JbO#YTx)Umj3LdzhEglW zN_(Y82YhqeAL_&A#mSG&?e7?(FeYA#h+GUn!Oaz4k-kfD=M1@x?&egr<&nZd)dKi+zL3b4mNxwIvQDbZfOT>aNF^TsG)j+0)`+KP^pHdc9Ue+ez5?g4HvXFECe1Em)W#+vbpo@N=xU(Ajo+it*C-*?otSwu`^= z(M!0!?ro&Cr2a;pD^5>uTTj6$4_sGEEU zg1zz1nNxekmcQRJ+9i6Wc)!E1S4F;Rv4{LY+@e;rKO9!3JN?;BwXpR!=e>_=YxB&i zsPa4Cd~qEjqV$MPMaGOdCuQm*N}S~uk&Vn>73Fl+%SNUmd{M1_59`-5_y~8k-6HSp zb!Vt4Ql(3OS}FY@sL;D$8o^#-O7x~Yt^z{WP=ClI^)dtQX|u*ExUPTqqrJ-cT`<9; zxt2E$+RcB2$E??S*E>X&R%kUl_u+AMx{PU$p@x?`+O@O)#1^kOtHZa?UC1fD)0dI7 zk(#QbyCWysEnZppV8lkOOj1`)F{!IJzja5iOm2j~uiwU%fB+Q#+03Ti07s@0R0__2=*GTbEoM)0I;u8Clz8 zD1TovTxoUv;(b3mgvXSVYvaZCw4Ca3tv{XRh}FC{=d7eeXm0?y!zS^T*;Ta{p79C8 z!fBE3-=;XVMqVt$>#G~YzV2DK(`3LhoE6GyJlB1D-{Io<&$u)Ew=-e z&1dCq9NAX<>fT0%@^EjQmVAstjEU;aXV1c|Dho}~?v%3@*~YV$ca)qRd?WEB#rO4x zQS!>PE05_N7uA}xwoR?O(sa5zuVwB1eQm|=XPD%Zi5_8h9_q}ulx$0PzEu`dkvrg} zgu#?0tEhVR9aJ;TKj<^ezsYmdG+%h2<#p6_<3mf=?>OMZdV}>9-3_b`I|MfLE<{uS@BvqZ zp}gwoasO!=dRG07nH`=@7p(j5VJ~<%Ht+ZMY0T_NklUr2|N=6zTus;W+oej`0rS#jvi8G&h0r^718t#NT>ysI@Hypcgl}O8I)Ey6ToE zlvS&vi@dcF4}0UT&{gkipYbH;l&PcGB*eB2R@0uE6)9iLl3B?hEih4N0QI)ZCxivA zIEx5qdOoHmOoW@Nw_n}2nMBvjSsU^)Oop}}<=>Mqjxf=C zUyyX{LyGW*=5m8P`dY-6f@?gpYR(XEaSi(eFSXqAF$ zL-Fl9-O*dsRnq2KZPhy0p{%p}5+xLVQd?AWlLnV6)qbyg{HLBca&eiQrEBtNq)4@|p6*<-EV|z>)M(X#y!cuRQL-lWwW>>2i}GH<4)>&c74ngl ztPqP4*2Eot5@OiebG3AnDp(BoiZ*D4KoE*;F=h^JvQ9eAh0Ht>zD z;fH$lU6>G+dxzc5qoezr5-djUwkb3ny?rdC<(J3nEDDp;^XlLIJltebt&mW8mt(ZK zKIlM7%!r%0hVlG!`+TZI(hcFX5v3V<&Xz~LULZ^27y6=xx}WO=YwBw~$v`SN-W;;D zK5bX4_=~Cu>I`DE6YsV>gMc`TWuN}|LA0wvq4kF3w+9R z8`+k`CkuHN;`@*LbpwfUm)5s$5i8K9=Q}dtK;GVxZuQ|0KRTr z=b$2NHz*i2JoxSf0)F7=ppE2>u@c{>rFEvFAEzIq6K(MJuLeESW54953l~;gW#? z%e7^3FoeWgi*nsvSiEs73&iE-z)~K{O&~5pX+Xj*mjzK+7EnOUoU)o}`om^Ajg=#y z$glTXT*7UUMUXS|%)mKkzTb1+_x;Wu4!~V_XBAJCl|(M#WPi*3mU+_^m`9`#zY__> zoY@qxBdQ79p`8iMmcUblp1?Tx*=oUjqS7LKnDCh`fe#5-&_O&h8v@?M(EkK7i&DHY zi#QvYmVh16XBke54)|t&>Fjs7l(T_p31nFbXI$HPvehF-YviI%87AYt1=bS(SPF<# z#~{hCgrcGQM}L{txHwwd!9~~Illu~wOOz0>#3#E1Z-2yNdwByCjotZCwT3wlLcoEz zZcRX}uE5%uG`t+5L|jYn0JXvOK?tY`SQj{sH{!FvEfc{ns|fL@FSJn=7R;o;lf;#K z2{`P@0k_->Pm6Ydh79tCF2zg=xDX=~3gjJ!^Zq={U4P?mlJLzeM11Ro%M@fcQv%y2 z3TIo;?{FE`CFhfX7~D&4SP_;CWlP^p3R*u?0{g9PJ<*{rOakKEaynOpXT7DEzse8x z0nuzXj8KsGObMvW!Jeu@6aF;$n~UopJ<)>5nl{kTA)@*$wv_4+tf>OM3vN)**lwWf z3LPOX5)!jOuZ? z(2TpRzVk23MXA^9jfc4A9yS9LhBI+CoSp}dVo9J(zE~2;y%?mJRKUDl<`IqmJ#`1Q z;T#nD9*FZR;FOdHPa4ihx~6RIrD|9gpz`B|fG8|-+uHWJJpEzExD1;G-Xd zoPVCiexm{_{K60{{}_%NWAL0$7($9`5vxCMy#+cW6JhPT8dGOnLg#E2NE};)P*A|q zpjbrg%fQt?{>1k`{fbLJ|AO$uEIhF;7~wT%+18w34vdVEXsywMc*quk$BCNpJ>O7p z66-^i7#tb`J6uBJvCMso>6~kj46Z4kLVtO>Z?d7>MJ%*MKulaQmp`th4{irF*q8Ac z*fBhO8}hUx;1<0GN#qB}=F6}q`~dqN7+-q!ql5@5|E@YCn;&*Qi&$-ofQYy})_vY*3d&)_>5| zOxL#BBCvp{Bw#|@K?`=lG4cSkdIQEEy%&GLEAJ{G{ic-y*vo44X;(>;!P&cDwPYt; zg5{9pmaE z(4-3_AkYV@AWAI|9({9@z%6wXoNANQ!tOKu*Jz!7BGFa>Poj|E8MH9J$8d>%K2XMQ z->c%U4-WAuxrO{=&YSq?#%`WoSf=}^WjqP+(yyEOXMDnV`bgn}G*$fW*8Za;m`eBf bTIT%=UEY3s_Xu7M>7OF_kbbVo1j!6%}UAb7szw5$16QrW`~>Av5hTbAW+)IdhPQDdLR^ ze4`~MJ})R&#S6Z=Bo*LI)Idee2U>xeRG)!~rbOP_!(%c<4ZVC9z7OUcSZnR|@AcSw z{bYuP1`l!>?!x2o2B|}o;ouXpfA@bD{IsQ}-UJ_>9390?HOFvCjFsidbmnLlQX83A zHk@U2DRYjn0X&|2i9RBVi_%P@v}U7#vC9aOjTWHI;{^mJTNrHu%R$j>tllK$Hy!wl z59xJMek7rRH5LUMrw>WBvQtw-BebarT2jXkoCpOZQ^0_cU6mIF7SWLSa%;k{}5an60rwgd|BJj0#cIA4vGyQcN6^>~FI9 zbXridHmy}};q+z`WVgsfn-e)HA9&gh!Dw-qHQ74032c}!nXw2F0c?lVCaBXo?0Rm;+I z!HPbej@h_y_K&Uk3+h1Jp=^mWb7otd`5~L&__JdxER@2^GMw2OVKy5&qa4<01yW2U zAPu9{o9tHY9(KsHN`_;le0#+GVZtAlL?9vx#V8!Sg1E!&q8gAxI)-B$!k9md_#;FF zic*+_!ie!O@`tclr;kZ_tf)>)#h9%|2JEojULit@DYk7jjfPU2Y#d|KvTCK24_p=K z^*V}{iNs=s0wq+096@MQLgKIjLuim_uo#!OdkS=wW^JN9@}0W6KXkFj=}xxlLDeya zu57@V1V#`s4vSG(BtZ}vPQyw}iHej2ibybpJ+IsHiwe=(Kpav!DrG7=r{l?>huTt# zVzlu61~Sg=D~WeI*ymIxo_w~d+m z7_afi?A4>Z#wlFfnS4*+b%$wf9Ak=QLE{wip8^N*R5%DxFTtUdi*W@8i(&F1x%<#~ zNGJlmry2a81tL?@DhWv=L}w*EPz@+(PZA12dPzL)uWE@(K}&EY zNlFMME|Fth-~jy@fg?bhMF9@Hx8RWcxjy6)99EKu3MUjKEW$(&!6A-7Bot0k2-!^> ze>%h3bMb#t=NK)A6)KqwRQNb-UD01b-tN5}{S zp+H{2Xm7!RJt+|Unf^@e& zKwgO{FkAMHex;J!cP|kmD!Cj7w-Q<bw}avb0&#CyxVgb?F0RD{5t_jXA)^2$D%_m;c@1M{C|XA*%)xdIj`Xk4riVGlV6 zQ7i%>D8NA3xrttJFF`Owjsh&Gs-s_Z2M690{Yq%3&e|yk;r;AG`@530>cP0KvYL%x z$^#q|)fLb1SCH9tbzQJ4_fInqFeCN>+`(8m2pSn6cjL^UCo{%Yrw@Mv_EvVW;M z+3(V3%1Upk9Mhi{X*H|OU(htBMbYcj~Sr;BJkv!yQAQ` z#_~-EF2t|QODYf;cBr9MMaF!On?HCY=l)XMr}^uW>MiP>vo%gTe-O`X9!sP{@41F# z{8aPVoL%M>W5dmRuWfhr{q&4W<%|{kMhI`nM(_9A`qOjG?;Hscy%_FWK&Tg;*Et2Z2(8Al+@!&~ zkN2aeJ5jC@5pK;o!&D5{vR*uBqxfzpk!sc)|7eRxCY+`z}~py+By+ zUy)Q3vNOl&m$1CNicmKX${b{k&)Q)6U=c50?lUGY_tZX@^G&hk%;`yMi)SZ~YJ9;r z%itXQ)#u|&mIdTpz-~eDK})wC%yHA;nazuQ|64ZjErYYwt7Wls)o5g?`&$0^`rXjW zzLka7N^eF@Iuerb>)q39XA73i%yIiCTfEQ8I(fe4x%pH-byYAwQgZbz+~*U4E;~1$ zIe#%*c4XiJE-`oKFv+RAc>a&`_k8a4MtYDX=;x~fdHi8ZPSdG^VT~_VTsaqbdcgOV z4@#id3a?kU7Ud4xsrV&LIQSAQO`2&$~@d)u{fi2B%~)?HQqC`<{=zSp0wGx#2ZC=t%4M=}xyZ_Mc1LpuZZp z&#O!n>;3hDyM2>mN>51K=LJd^3Ik25ua2!@Mvjs{yDv&`dgO_~hCSa`(Hw|sD zs$wsvy}HZOCv8a?bG7F5opFBL8)u99X+0`eu1N@{H;lNuURrQ*cgr{@#=FcjA!{A% zUfs_dy6Bd@aj5hD`m#ee*4?Tb=g!iZL+{46uJ|B(N$n4s9M6qW(IP{`!6j-oBczyK zB^W)H7wo6HGH^|%XK4I%YP5Rp{CUcZTa5|FH-BnZL`Gw$(_1Di9O774JMNmrm3nyk4zfkX9p_dPmsZKmU zW%|^m;)&;%PkE(s&xCl(m4;L2KDljMedY}GepP(>j42zX`TT7KytJzgTXrN3yB)sf z-;KT=aeFQen4PyJQMSBz#dm3=l|_~X zU7>^$Nf1%MU089{8SI!m05i{Iq(lT>1H{Aw7FbX~AP(g)(~jw$vZnq(M9b7~Uthz) zZROY%Sa;?#FFU*Y^8Gx=?|GhA0Psljzz^KsPkLBbkuV|>g?|yh?^1yQ z*iv}c*hI|Vm4CW#m9|0%Iaz899VXC+SEJ3%)o|43j^*az*SPKTrCsv&;;6`o}v~dm)5l_kjU}5h8!A=1i*;0g_EQ4BC zb(`V5I)7VWm0rkJ%c#fBLm1?-0^JzC$J7PrVXwf#y=ho|x&{oF+}Q%#+biI?D-}b% zR8s3d_L4V*32u00{r09|R7tElQy{HPt1tIIvgiX63iiM#-_;OCIWxQ*!bm6B1w=t} zw+AkeCp$~Pl4u_kS{8EvF3}0n`}w<5@oM~0ynm5+5^sK@gEv>=nd^37ntBU{d4|A2 zwHe|0XYUA(K?V#%RgZVjZCZVF{AzmwNHT3{flmBl1LxhEYfkC%X3WWC@fah)uCXaby= z`q;3l)Oy8b+#4>u`NO7xxIPpC*R6^7;S!Tz&6cm?4W)6;Ylpz?b~X1)w%jiX5e4TY zj1jp1T$)uXtTs{Zew!dxATXGj;dE*HWZ6_x)2Bu7rEgdN}%o!&m(ttbe8|5q!MF zn8h!KbT?LDA_*ba^luzlSO=Gl@fhdgkNT^P_XG;cYG5&L9)uU<5Jt?wv$Oqh@R$zP z-|;&Oj1?G8d`W}8fSMI0gh2+gUT10x(b7v5wGD$@1Ah_0p!zF0_c>60 zmPBH$hZ@`V4H}S(SzhhH;Dr{%?O2|yTr8=% zDAqSLiXR`%6Rqvs#UUOm#5JWCL_W|J*=x;zFTK~Csu8)8i!>vBH6ouIiNZv==($rA p*Pi)YWN)SZ_uOcHYXXln{{s5S6v9V46vO}k002ovPDHLkV1f}ubvFP2 literal 7653 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

>BCxB|`lTXP50u^{b77%@%0ID&TTqjVG%cMV% zbOI<(7jllE1{@+SbOI>P^CW?w2HYpJh@=xhd4fn;4F$MHY;*!BPhavqK@BM(Z|Ve4 zj+Tm)Qw=1M<~jkCBSa0MM_{#V>nD~=;v~x@TQo_%7N8gTmY~Kg+xo|-<=b2xKTDGA zSMAay^;Q65vXwv`j9eW1v&XiS;WP3|rGWH8DIiT_)LQ|@D4OXtg<$|T(K~KVJCt`c zDC1Pnhsgym5J^MSO95UY$J93am&C#GvqaDs2uM2#zRo3jIsvLCfIxlWCk~_6?SX&F zNd%+{0lp`_bpkw@_T;?U1Xv~yLF2X@Mo>l(MK~cmfvhD)IsqOhf0OSa1sS}`_ zc?9Z&*$?bi?ZnI0lkuv}6a=OhA~gH7!VB&ZKb-*OvHwzS2w=M^0k1oK2n) zX6BzoK+40#Scq_*wATp`we2GUbz>V74{M6>nsWf8_CwKP@Hk9}Peu6gQiT_QtRV)C zS%6o_xmpu|3-POtevrCaL+WUb&XZ;#mGt1A|`n z(C=o;uWiHh+!FW;4-n*%R*g}BW+auMmIV+V(6pZmq)wJ-ZRL&0`?AG?Od~0n-WUZK zK(1*@0HZ$6Xkz9B>1_-2o4ynwImL?IF~~2ZXJZp!K7r;07!9NMoEeU+@m&A0aEm)s z*$Wa$lg1)IGg6=p0SFgl3v}_GgTU0nie7M=xHc96`j9KNDS+4qtcYhC>Q4bi$ps)y zDS&=YI~cv|2-i&q5S%Hi=mjUqi;Y15A5vE90>tdZ8)JeXbrBv=E<#@yt_9{W^IwGE z^izsLor0;2L4X*7+7`fWWdho}he7K0r~vc=5tdAbdt&nL90X>ZswhA{F>c5LG$n^> zTL8v?Awb7TbD-DV7EKs(DvDsp&kZSzUG(!-Sn_2+Dk99Y`T98>#?q z1ey_G7Y2W{2F(Y&5B=Wuq8z~tNCE3Zc6f$6zOykRd-MeIhGNwe`Pi*Rj5O~wmD+|ks`NyLAt!wB{YhQWp+ z24_DaKsqsPhyv)5XqAl~r7-$tSn}1HeP1UU*fsVb#wVn~drua8_8-HvLtnu6a6Ww5 z1NKiTVC_F2Qx4=Z=g(%mPsJDtW3?n!Y{c5R1TX~cue=x7MT{Dv07hh^O0#`2XL)2C zo9*!;W^>`BQIEqf`AgAe&n654@7H;78-g4Nl|+t4(f^6f&}*3DDxNE?qE_5jd_* zg4gaWVQf({mK$BuTqRMYO+yi&6-j$?xRD>GwP79KGd@)qfc1LCY}Yoq#H@h`P`M9W zp2NGW-zzT*q?a4M4sn6lHaG#SXn59b;ITbfgc?PMs*dstdB4F3z*#T4R$hsjA{$W{ zzm9X6Sk-p{M7+0W31G^;V+bxU2iF(Qk)HKd02&{5F$vtY9!HRT2U;IVBQMoC0T|P( zgdwLDYc}Z&JDmBs2ud&H2B}^eU%@AJP5{pCDzR7``#cxi1CyEG^L%D~HoSr#$p9iT zgjPm70!&CquafccY0t7CmK>NW;(bFQkq3Q^Spbx#9exDu2*7ed)ua|qVh!hdLohsz zF2X1IbJ~%7YwtbT5=$l$ckc?cBfwK)Vh?hWpk716GraJgK?!DlafX*ZzQ*hm=l9vI zj5q4;yFfAvTB4v%3Gf_=C#dfP(D?p*b?5EN(X3ZFvme2aulEaIKBBeF6zOH#sZtv| zL7fu7joeX_>puxig&lFXz++o7Oon;Fs23ak>?s=$7>j28#$@Srw|S9=z$B@gji9aw zU`n!U>h`|!ris`$gdSr<<=9t(knGcS-^Iy6aN}o~~en z-w{0iK300iN>Wf)1ei!}*Wf=bdH|ex;(k{^`bm7SHwWHHnea}`5)GQ*%pzf!(ClLI zo?7$>id}?2mQA{P&!GV3;-t0I*-Bjgkh+Zeghw7F1$9AyRwPw5!}B%egfM(4+lTM- zBy*qO#XM{q2vbWhn3zw5iN!>;W~05mYX}C;iV>Ia!tzQHOs}X-5qO4(!slYd{PpND zB?2AC&p?l<^Ds1G?MjP9n9vyP;RWr=kHrBkv4<)`?mZf?mL$@@Yi@QT)B^Ip^`Xdov;t ztqWjCVw8{f!p%kF+?+G4dH*r;TaMjrWa<01WRAO=kc$4|ds#goQ`OPBHH$Vrge4n^ysZdkoz53&l1;2OSA zyw@jU6&Ay=jgP<3hngp!`B!?R&vR(ovfNm=H_yP4#1cfiR9OuM6pQ9EoST z+G6v;3{*8X?MX$GZcIJjbric$!%kK(VK&5&BeJBaYiQ9MnL{(!qC*p@+en&!b4h-KI!nMFc>{`Q) zmujl{AEZqITu3arRc!&%PKp@adBRNL0n-+)!@aUHR5gCTdIN(Q*QM8oz<@j8CKP~x zmoLP+;J;`cz_CC31dJc1q-}>_NW>a0#1x>W-8e<{_32gEr9@v_0yvXR$_OBKlNp8R z?h_#d@Ljxt0^G;bMnTDW^cnr3Fu257PBEa*Mfd&SMY#O?6@cTwu|hoC)mmg#=8HZ@ zxC$OnvD{5B702885I}LCAc(Iaq8w3JS&SXzm3rd=e6FWByFYMdv1Pbqb8-If^&3!(?MHK9)NUB`=mm~zb_oGgt;EhMILFfWS8z+n zgj3uRjNP6hUdJV6iGSzcUr~e%(pOsoIFJqGCP6h3mnEE5?-DcmAFe_8<;rzbb5N|i zxO?xhkj0(xc1W$?Lkng>lM*vT|G-ZPwU7W6;a*6LDcg(U%}a#93Pc^d}MIsuFQk98L7$jTcki;cCG$LUKVdYBGMib_0VR zrlF>0c*lD#LNZT_OpCv(I$4=mu%{l(!+Rl1&~iBUCVwA{UiOo5?!pB;D7z~*ez<=R zar=%!pBDi8&xodn$P^*&-y~350<#e(uf}q((Po%CW~}%e2`L%aaWowfYqp@bi?6us zXC1W#!R3!U_<=-dOMs@NHz^@d1}<)*!}aoriD=HuWiySa$~gPoC3Lc$45>|jbY*HQ zZ(9~srxqkyo*wK$v>NUyx?P55PKt}&@^UxV6Jy>vHa2sVS887ygf8?jJ_=LufN+qX z$Rcglf=pEEggtcq+)~!^_rZYeJ`*-z4&)X>neojJKV#^mS&&{d6Wy{8_8*hS{v*{2 zJz^3Jdgz7ihsd8V(YO3|JrVbc^|=3#dJ+~4-|`59@6mkGpsDb){vcJ^eqG walIf#mET`VGKf!21<+ALbOPuE(4i{-167AsYus6OJOBUy07*qoM6N<$f|IMeMF0Q* literal 10166 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 VsH4#jqt|~)XG}CFTsClx`9Cz+a25an diff --git a/client/iOS/Resources/Default-568h@2x.png b/client/iOS/Resources/Default-568h@2x.png index bc2676bd8be3e83863b7923f64021627a0749dca..46aad604b03745433cfcaf6d829fe8a59848e9d6 100644 GIT binary patch literal 9188 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 J{Q8}^{{VZLeGLEr diff --git a/client/iOS/Resources/Default-Landscape@2x~ipad.png b/client/iOS/Resources/Default-Landscape@2x~ipad.png index fe643b1bbf0dd97337c3bede093b300d0e005daf..e899a09b26bbbb923ff93f136182a2ee686eee2c 100644 GIT binary patch literal 17522 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 LYM8f|a{m7TpG@eP literal 43289 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 Zl|iWQ?!h7dr=gRM+vXrdu{XZwP%d7wZ diff --git a/client/iOS/Resources/Default-Landscape~ipad.png b/client/iOS/Resources/Default-Landscape~ipad.png index fe4be748b63ef147425b7ff9aa668a17379d3a80..268afaef66d03aeee68f11f5c4df0c1da705b337 100644 GIT binary patch literal 6996 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 SJs z$4fya$q)Nc!$5-4vPSGNEIu3TEywrEXOn7B>#|ybQ`m#O#v3Jb&4mniH*HDFNu+l* zm-1;U37xy7{i&*-GL2n_q9Q?g0k_8qI@z>?%zK$Td?|rjKMn}{G$CsB= zx;qi@^j(5~A zo!hs&xZAhayacD4S=Zhh&3E+x9`_$?&}{I1wI>?<#lXrQfH8% zOekRc2sWSy*rh51S@dUFLixA%4+3q0_UN97LZ7L6em*^N?ClvP_hI7)3c(gO9XgHc z{X-Yb8R!kaURykoH^vI$^_$mJ=#md6+K4?I-&od_W|Q;9cr8+7p-0U!ht-=*Nf4o%`;^Npzwf`r+$m zMS-jNMKp642-_c}#WK^jqf*%hKGc`tDFwj^skLm8-x`*60l&E5@B*hUsBw z=C*?_mHm27N&a_r{X>B+JCEoOQs2+&T&5ZFV)#Rdvkmmb1R;q>em$5U3`oyCR)$-C zK!0G{#Lz8b(rJ)4n&jC-2PhU`mBjyW5|oU@QY3(wu@}x4mTeXk!d1D0LgB8BW+hmo zjb6o$0H@Iwrw|zUb#=`|9>*l#GLw+t9u0~$JBp_n2qY9 z=|?RTjz_fooX_}?^4{kTOQqZb*pWO01h3X9bTRGaWUpc|*5LDqvvlJ^TtB@Ll?^qM zWbP6y?&o4u;HKKhQ82V_e%HbItH^u)&z_SW=G? Td+&V{7D_PIca!h}Z0i!IS+c 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 literal 22374 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 diff --git a/client/iOS/Resources/Default@2x.png b/client/iOS/Resources/Default@2x.png index ba63bf054a4df6f9d0615397bd019c3376dfacd9..fa65de3e721fe422a982361c39fdd9b0bc34a64c 100644 GIT binary patch literal 9166 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 b-gxi?YGu{m5*@Dn{vWHQuCG?5f(iXUg3O3g literal 21096 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 diff --git a/client/iOS/Resources/Icon-72.png b/client/iOS/Resources/Icon-72.png index 94951e16705b2b446f4d5be063aeb9def2c24956..de65be2af91edd77217f999dba76a52f4c6474bd 100644 GIT binary patch delta 1067 zcmV+`1l0S38MO$I8Gi!+003e$Lv;WE0XtAkR7LCS>$uL;a;3FOjiZsa!{O!TeX6?6 z+1*r=sKe9Q*Wcn^nXInJ(4@l4n!LxW%F^TL>20^jb-Kz-kfp5A*@v*cQ<$vVcaC7Exqpqs(I8fEyw~1MkE5i{ z*Jz)yId_jOW`7JmT0no5PLilsov~b^wqmNhWUaqgoUk))h8a$2RhqA0r@Cpf!)vt0 z)8XV;c!Ot~YaDthjRCI$> zb&0{v)MJ5^;O6Rso2f~Imw2eOS&yOb@ZyrEv~!J?(AnQx>HlH?00Om1L_t(|+O5@l zR}w)O$8lvbQOo!#Wf=7g3oKfInn9+eUC3R*t!%SQ^M6v7_5NQ$FmarLvm>)Re*fj1 z&zYUe!-!U+3CpsQBc_eruz2H!&UniD--NMqEzpE@*`)b;cvIKn7@peL6er9NEg?Ax z11D)o-Hh*ya=?76$5JwsG~FQc+jz_BE4DM4>T?oiA10bMJ2BCy*@=m6r{h7>)S_x(i?~{xB2W%L4Q9k6v^?2jGGEf~<$cfP6as4hhK40-5+nCLk(A z-tS~ML`9$!37S$s4uEp}trie1AkzI#Dj^%dqCWIU2@#95-&RV6i6m(hUMpwre+=#>tmF)NoL zGTEjLO=j4vOy|KfUQ$L^DKf@htDQOMRv@A`YG_j%s!^x6nhR>yolf;;7?iC$#mbSpAoi5|= zeF}olEwT}s0-Bdkcb_|L`Vs_R4~X0lM)^nZ4VT%}_Pe#{@aQ`od(=RL`7M1J?Q`dZ zc-|gSl&K_d^(lwWdXP`VA{?6x{qT7nhkx2CsH6?;cBKQq0~I5jKSXrw_c}Y-?RZp$ zRMGu;e*UWlU?`Mp`EqTlNN*=chrfd$Af^E^x{x7{SpVDkb98h_MHN))Thd?QT*wQe zUi^*@pGMh+kS?f^6+g%hRBug|96IIHo=3SXM6A;Nw%!`G{y|)us5?a(E(Tht^duZy lIgdn5w@`3HFOb6qp?~CG#I?rF8g~Ey002ovPDHLkV1knrC(-}_ literal 3203 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 diff --git a/client/iOS/Resources/Icon.png b/client/iOS/Resources/Icon.png index 0d09cdd14856d04baa991e05dd738afd3088c5d2..52a0aff7f78f41d6ec321dc3e01b90c6fb7bd0df 100644 GIT binary patch delta 901 zcmV;01A6?h7Lf;#8Gi!+006tjbGHBh0W45VR7LCS>zcgBRFkMmjiZOKzRlU)XrHlt zs=DFj=B~)lxX#qq-{NwmwWPw!!_(PJkfqb%WXMb9svLIG)q|Vo1r@26X zl{IpTmB-ULcaIrPX-<-;Pm-rsov~o2x@NDzMu(i7%hh74ykxDveZI`g-r{St#&M0E zI(LrU;Nd1-c)!lnwA9=sPic~;w872P!OhcijhYrhT`gvRV}X?a|Nrmu^xx#({`~CU zY}v2L}+?z4tVdV`*b%yw zWWHU*l7HADB^MAh!@v2T-LZ%OnMXMau9bRs;r3aOIxBaaaq=$2gvDRa!pr zr77@31MaEzjOINmCA0g_U%QZ4)y zv=1zqQPZI?^rD8tkc+AUOK!foIz+W(&~gN`D1Uv;h1(F(8$^7|lQm$Kij>k~DIkpo zrSEuhWBLgk*DxU15eM!tXrkS0wcdX?MstBy!`8>aw(Gi`k0+;HEC%H#jx4~q3ZD7U zK0o=~wy_eV964RV3s3eCzZ_!^_kvPgE*o9ftBHOcYy{=ua!LEXytwpW-$fdfo6Ds$ zl78;hS-;(J(UFjr?Xs@WVvo(QgTXgFOd7);lkK6w_87kp&VN|E4Xv|pzwG>jEjFZs zqa5y=w+fRSyETH%=|QlDJ~R!kJOY-U@BaMNw(~l$4Bhb{|2?J_X1c!leRExy@6YG~ b`)BnRg8P5cQPjXI00000NkvXXu0mjfh@{no literal 2864 zcmbVO2~ZPh76x5BKn@iFQ6UCUxspyGK(fRLIRs<4%#~_-(>AQV+#75y1}#sea%-e!xd{_fg%}{Lpol3I2OYAO29ZM z2m<-a#74+dM@KJQ6dbMy=d7miUR=$bHx!{0kSLE2}1-30G>d^1MbcQfI@Po z00hj$g+-&u`2tE1gEbKg-BGbZg+fNb~lJ5QM-< zavsE7k4CilObk&3L4TI!e=tYkW5zNHT@HZ?SRM?+;?E5W5W)%=5yCPIeGLgmz=VmU zd^j1=2AjY`3{U}4v1s#LoB@I}(Ic2Zq7YpvB)}0MPyk>Y%7OVJf%30V7a*A6rtPzf z%U__Va`>PE{3@8wqX=NR1VoD^(uy4~lg5oj<8UaxQbYktd5|xIibbj7L?S+gPIMuA zlUPJIFBXYFU=lrC8LnhEB9r9GU^2Yv<4jRo2Fy#+Hu1A9|4&<&ui5&`Md$$n#b5G4 zAiKH~SpbWLdSMa?1P=y-O!pu%iQcXxI^Ek#E738jP<%uP+6U!?=+{7r6DzR@Go}s- z$kPg#isflL2Jx{IpG9BD`m0eVY?Fl$>hQm`aXd0IF=f2s&}3QlRin=e_-4Y6p5P}=KN_f_oAo3}Qv+PU^V`>=quWXY|)kj2Ls zvz+;PRmQB{5yX!%MDrZGB}lzR(vnr)ZkNQuDIk$J$N5~Z*=q~Orzf_^YT~(tD~<-V zml8+26esE)-s$Mzwo_G$i}LFJrCHvs{M4;9;tB+U?1DM$3^lS~dP4_mm)~vru5}Ls zM?SH;)U-9W9$i~h*UK&^yBlWC4Y*&Dv1yL_tj@>NCA1axXEF-R0v1Qu7f#RJ@wZq# z?Dg+Ita>){+A7_fKJ2YVw)zQ@JS*KRzjxTwu;8^R~R8-JC;Y$b7$JA zxcz0eGq1j9R~D28eAw4#`*;_v=jLp|UCPSu%D7nzHicG|iDcN<7qcTpBN4Mtf`dx~ zF9_8&mT{p@)E3%n*Tm|f?#Gv>OEOa~xIJ9dJs=FcfIq`=Yr9lcS2Nnjzn^vT>4!#nUEH85N_gk6IKW0IG*XT2pV;hmKl;(sdoxBl? zTUp>gO;FFsJ_E;JeWhqPJg?ZAV{<~I9yV`qU4Vo>O%3iaj%3%G`_^}qM@HCWJD927 z8T4DM^Lo@oq0CEM>r)2#pUdoAy2ZX|Y2dA>dwYC?)@-3wM}0ccT@rctWBiew+k>+0 zv&_v+f5_F<%-OelbpGsBt*b@*ZRy$jaV-0)=!As3x&a-$(0mWO)5ZiQ@4d; zU}V{gYiQX&H-WV_e%FeOL?;RP{IT}!iTOsqH>sPje$_(KY9*UO&^c8LEivOJVb9|54zj3pc?-(7M%t3Bp))WOs4#dkLE zu*jTtG|g-A)2CrKtn@Cb-Z*qdtX(!bG^E}U7m`qEO{yHcTiID_;M(SV_pqmxeX07q zH#ko{n%%;hI&e+xK)+*mF7(YN=^j?du^S`rb1L7L9-d0s$o3;(i|2Yq7pSh^6Bjnq z`|d4V9{%Ba`X`Od$=dVn%XgU@cWEpSP%TL#C7RZ(jeBd<9V|=7x+h_EN4^QX?{dqmyi*f!xE$TGZ-`rdj>D?Z?k8My{a`s5w<)g_D-R|e5 zRwHNnl^2Q1wQ=P!M%Kx^y=hn1)(kEiGD_`S|FXHi z+)xH!-#vLb=w0z3@r9v5Yg1$NgKdYl?^uUVt%yEgX+g}nQ2y#0g=Qg+7OFD0-clZq*bmd9q_B8v>931!kzNAxoy(r-d@FD9 z>QAWfu;aH**-mdgTQFQ%e4QnzDz$xsdvogKL8G2eg^;m diff --git a/client/iOS/Resources/Icon@2x.png b/client/iOS/Resources/Icon@2x.png index 9b7fae26ce292f48739c4416f0dbd8a22a05bef3..757319fc3a77c9dc5433957fbb866e46a67dd512 100644 GIT binary patch delta 1514 zcmV`A@K{48Gi!+006iHbx!~Q0ZmX$R7LCS>*3|*q{7Q+pRr1fqld7*RFkN3 zrM1`J;?3FJxX#qW)7h@b(0!`9UYV?sw!@md$6cMVjl|Kc(b-(0wr#h_q|Vo1r@GVO z1UId_i}Mq-u6(|fg~87~eU!u7;1^71BwThVVtX}micyuSRhq9}rMOIxrB|J? zVye7rw8osv)l- zLtb-@mXfBbqO`x@=ISL+X7BLgV}X=4TX3PWvqWflbB>-SUU-tHw6VUt-{aY1fQ-P) z#+_*q)WDm%aBhy1}WC2f~u-`Zz@XQetfN+b<%=wKg z1YxBLkAI8~>81=XD3q&I3n>W`EF@ugmKY=M>kMB=+D-X@DIsqw3z4^#t&z8tEd^#= zW@A_ktgS1I5vOO3G2-+rvT=M8i3Xz#ja5DbSSQJjWCH*;15mDvSH^nE2+g@Hl|AAF z8$^=e$|S)Ck)(hVr5UaQbhvVBo36-5nC`cBhkvF>p+pxrahkXaC1&~w$`b5JPq`}+ zL{p?tVh%Xg5){%<<`ZCX1}!oTB^H3QXGgiJr5tR|EJ1iYWf3^*c3#YSN-SC1oU6LZ zG;sDUDCcyQShAHMrlpjtnGEa#BKZ`DWbBl=#wOw^Q($Et%xfxTfFK*}w3ABN+0TMX zkALKI&w-dLkJdD9)j<@Y8zj+2)Y(*{I2@YbQ z&Axe|BcVBhyRc<^o@n&cc5vl~mb(+3Mt}ME37BwVu6+J2n6YQ7Ja`JGY?>&|ji%2c zVKisQK>1u6iI(#_ksQj_em{-Q==6-j^xSRQZh{4l@1)!Z8)Qk_>XcpA`9a^fy*0HF z`~0Y_JO)e3pR|jF>B$S{)I}zGE0l9GI?9qz{;X%rj`8J+D99I_$G4D%IUDsgpSj63^>B~OHJ_WZ^Ef{J20Dd zbzWnmIS~H-$JyDRE#2PkndNntmv}xfp8s{$@Fh*# z$xl>OWP4cSWgB1o*HgY|U$haiJbzJ{)KKpDRuU0AwE!?+uigpYt>RVJ!N}D+0@Ex)J$3P=z7LVzvOc8 z$_r1~>?=zeyTnW>>7bw^7S;(wdCirQiwf^*v!<&|8Ypwa_()`vm6p2Wa(~Jq&IZa1 z;v1#%4dS)J=ce)HO>aQGeTS~064KaGDqD*5BwXzA_Kb5QJ`9`O2}W;-XW&+uIv$2nT>Ow@w|apQXQ<4d|hw+tb=MbyFO(XMc+nAeQ3;pp7KO}Ded}= z>4a|!`;1!3IH;Ycmo>@dsbl<;Bb0H3vhiG(SG=psq426LE_livB9QAGH+@>xdDB|m zYPH&J@vgb!Z|Oy8)I6itL5*{bL(;A+QDrTnD}S5r%`OI6DKq)0=iH+FA8fDziHa@~ QbpQYW07*qoM6N<$f}z$AhX4Qo literal 4240 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 ZfNVkJKkGv>mzgTU!Qnm70;1 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 Np@zPC^#cg}{{YUD5<36@ literal 40572 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

X#(PKE(>#Nsc`%tH=i=k%Rv;DRd;xI@pP5$ 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

~)opCzvih)Sm{~LY9Gx<0|V_2+PCNQjg zCHIlR=ai zD{q6Aj5Tka{`>wv_KERWVeJ2_FRD{NeR})2oynPF`t$q#$(sx7O@1m*k)NN$lRjTM zMnd6cRC+I={cgYKr>%i*s{*jvVM%t>qp6GWf1r=kKGh`Ri&W z4VxkqYyTy?hAnG<6r8i(V3MD@{=U@SGpEguf0J2!Q|#z@Ze^3cHLT39`xk_^sqgFJ zIU8l?yiUbr=Yb0qS_`K%sqnLj*t9U!s1$H81~@pdw0F!^^IOUpoWT?Q*d)t3zB4NQ#9s{DvhvI`OCW_M#r#i)yEy{ zHeObUp60RD>VQF(5#QTmewC{Cl|TDDm2h)kwlwYox2C71sDxq2bWpkB>FVdQ&MBb@ E0KV^dW&i*H literal 2168 zcmbVOdsGuw8qZeRVyYG*+K9Fc0W6>-GYRAcK|>}3D1i{7q6KRb1_+Q$NCF8|UBL$l zu(-Td1ziM+^$D$jS|Kg2_(E7zD3P+eR6xp#h*0Ya741aD-LuEjKRV~k-22`8{eIv3 zoH2{TgXa^Si39>+erO0R!B+%-qwU|pzaf)Z7``mg3#0W>SiIgK)1m}^941GBP?anJ zm7ub?jMQsr0D&+kUMY>%M~lL^3QR?n*>tEzl?F!>2mz~%8kr&))dO-gL8<0Z#+$yS z0LnNXWrLpx6lnx#qB0~?i$-OJOBI>P3QinlRUi;xR4)UJsuZ=3YvfU0@N)6J z?U+UZUa07kd6bt(>E)mlJ zf+#;gBvUBWHrZC5m(jwgR+)~*AzDlYyvQ$C`3Cz4`~TwRGhrdf7BUe(h{I+IDX*|` zzb9uj+!>m!IsT_vW{>a=v~6FvJ}$f-9#oA_j20h_=?E}^K(IR+3iGAL@9)QSBrl9~ zsMxA1ZxD5L*Hv}bF@tX+Fj4406N;T^#30K^{|`c1_Q%h6WRjd<2Vterkxvx1E}n=M zHi(m!mivmzmY3hJW%O+;7nL>qb2{rpjt^MuIXE8&-mtT#+F+uZO<)&(T z7vCdF(_WLZl|A4^k&*X|x;P8TqJl`uk;MUi_MEJ9dF-(XQUG=7ubf0(mn_zS%lO{L7|)0qTJ#mY=4RXq~Q`Z|pFUKMI_~<26+-QK{7* zZMI~pNN8_{`;VxPJVi1vQ4O+%Eu$s?gRGI{-bAWEy16QspcztvyLwY$~%IV7pvO9sz2%}g*yrg(i1U^ zwe7DJ5#k5tfhz_FYY1d9jR#hIfFQNmRZm1UD}8GC@8rQ;(cK|!hVjt|lvo!2#ecdE z4iN`ZR`$F*GxKhx_^QCW(e5#=Qc*nUKM<|y3NEDU7aFpzd0Lf+b*aL}BVosYDRWNvhNrd3%}9uGCNRSg11COu=p zbyH&iQpau!4vW1+UKBiKg4iW7yGf-<2Nt%R^V_FMgKwWHyL`=1KXgJ_)?MlT z^wZ$5jLR!V+xJ~>?9-~G%g`9OXRe23SiWXj=pOOVcxtFNMppoxi)r$<))c8l`XP7Z zNoQ{FwB6of+QPv-jpB~KNZj0P}6a|=yp}flqGq6{?bdDN%Ydg_I)QvG|F?8r;pp;%GT3A zyLvVHv@&PMs{%{5V}po?_#9F2LGO)uMe{!Ix;{{pXMFJW62Eo*HR-plR(U6uPD)Wm zmPw#TCHFcjyxLEs!~Y1DsBe2TUp9ohs$IjoTvRH4{U*oA+*`NZBUg3EBQM@7z6d98 zIDFRB7t+>u>e&KTRDa9k)nCs%lflgw+!9F>9c4{C{?ntZgkL;b2q6>V?|)eOsL1v& N5Go9ZYlF6A{|aRxZfpPm diff --git a/client/iOS/Resources/alert-gray-button.png b/client/iOS/Resources/alert-gray-button.png index 06548df511cbe012e7c59ff4b696baa05a107691..5a78444831382042b13d392bcc72ed9212a0fb3a 100644 GIT binary patch literal 677 zcmeAS@N?(olHy`uVBq!ia0vp^%0R5c!3-pC1b*Ddz`z(8;1lBd|Nnmheoi8hq=b-^ zq_DJsQxMWKGu1aU(=#{IvoJTXv@o=^FtW5Xva&R`1|lmUGPSWbwzV;_wK27` zHM6%fceJ-~a^$MfZ@D#7Dxd0f8NGUOZkAiA z{9Bz#e`hKDHY=UIEOFAtN9S(+eJJ)SHh1yQ^?K(!jjl>-r3;?+*xr88c|t?_lB^Sx z9-duXFR83@Y>y3FwbXRU<*849d{Jmg=)YbwYg&B283WVq-FxR;*8BEO!tSN7HD6jI S-*%wK89ZJ6T-G@yGywpAi|e@n literal 1622 zcmbVMdrT8|9IuaniVAZtzQ5o1`}usI zw<#@k-jqo*CviBODe7b_gIy!oH+Dh*`|aC4W-GhA!zeQuEoEdJI8AV51}c{T)Ff^q zG6>wTvhXsI$l;7Lnsu2>re=XePmx^Qr^9uUHrATMNlbFuaD4&60J((8Y?Xq2XX`=0 zY>kBm+~8aPzGVAifBDs4`YPin9bdP6ZsTbZzKz8Gg}ngf>HV+lCUyrObW6$T!YylQHg~r z1QEu=LLMv-A&3YTp%^Mxq5>F36!9`Y#+z*UN)?O=Q5fOzcnG3IWGEs~#mj_pxdKy( zVZPs1ZM8GFRZsYN%`7ipsZ{ZJnBqTeB?_9r8H(0Xl*QixX?YYw+4CqHpwRLG4X!s^ zeX_4SucE~W+Ps1=sA!4=M)E5$zky#R`d8dC0j7jSN`Z=xh(!V=IBIM7KRJU~XCPm5 z{G(a?M{EcBwy#^C6NVe)t~LOOfMZQ z3>i13`g~By9i?0r?VNVaJuCydLyMmUAH6X=_qU{wN%Bq0KapQuRqaYU)NaXLaX-r2 zZI62Nxav+Jnt%)3P341dpSRonZc|ukOXaqdXOF5<*0|4Y8?wx;TUduqzJIcFUn4v| z{fKu)Z?Evoo-50a-z2Z~p712A4k7`iV_y6jEJ_^uPN8U1qX zDQQRKF;7lR=zAx+2wl}jzx-O)*u8wMJ7;h4_@@T)N%8g^+v>yyi$Kvmy{Th^w=TGB z71MuWUU*-MEN#s|&)w33vY-V~Z%OkP{XG9r^y#Tt)m0+VbLQf~tL_2SI9yb6J)o)< z7pabQKDe1ZSqq*1pyi=Gx#IfF@Grz+0rT6;X|iU~9QVmDwL$U^f1LL1I<;1lTV8ti z`Pv*^bF+Z%aLo)d?%#DBs7(L9GQHO5I%;&)qMvW(l4T#av_#{r(b?!w#H^5w2s5`U z^!C@SdHRB=(AEX{L8o#mcP!I9zL#Hq%jA-3(&H~OFH$C7`aSXN-X&+2N=xfuSM==i zgX_TG{IdpP$ diff --git a/client/iOS/Resources/alert-gray-button@2x.png b/client/iOS/Resources/alert-gray-button@2x.png index 8333e6cfbeece177ff0d3b685a5d18c008b82793..b1393c0995ca63be36a63734136a7c8209aa5abe 100644 GIT binary patch literal 1353 zcmeAS@N?(olHy`uVBq!ia0vp^Za^Ht!3-qpbqZq{7?>6Z_=LC$@N>F2+q$^e&Y0Fc zb4K5+8GZl%{|5@v0tpIm2?=rw3-O4F^2u9U#=&0)GsObWcu9}{%x}L6vz8(;18t4O&mVtqmp@F6$kTldbGSoCO)G`7xjC72R zbWDtOO-yu6jde|dq=}xXsh*jMu9=CR8IWPBZ)T=v4nhXz=6V+91{UUq78XX97KWA< zMpl+UWNd9|WDO*(fXKw!+SuCK#Kzj##@fWz#@N;dNSfN(n%UW!+S!`f+nGDs1CfQJ zqlJ^BrL&W@i!%_}07KHv#m3Fm*4+(=>^$6o$lk-OqXMF%f?}eBW1|D& zVuRyiL*nCrC@dj9EGZ#8DKR1`F)BGJA~`8CB{?cJ1&E^4Qh_KYBP})~JvJjFJ~JaO zGb27L6NnPBv*L5IlX9|?bF&lja#QkhQ}c6^^Yc>j^HTHk(hBlZ3k%W;3(|`V(~65S zN{TZ}inB^fGD}OcE6RWyL)c8E# zlI<;v1?GrL9!sd!+%5NjVa_q88CO0mj#R##&C}J~wWsFm8_k0fXZ}2UH2dbdw!LoQ z?i%)U4z-{Du3Puj+PAR9Jbz}`*;@%bDM7}o>}t#8mM?7o`7>L4z3#Eeb3eR!eLQiY z=G!Rc0E!vl81iDQPH1Qws_uMUJ@j(IQvMc-CmQfQXAtB?Gl`4O``9g zxBfBtwyDU=iwRu}%ls}Fb7mGxPdTQkF;^mJn)HuP9VWcfOg1m7cj#%6FW0{FBGr4P z*o`ZX5*~-%*mxk-{LZZ&XBj7%=MvX+j|KYO3BGTwV`b61E4=w`C5L?7|IiGx8<_#V zT2J<@Fzj>t#(Zn)5kF&w6?^MXnxFVC#n~>vDlFl?{P#9yi-!8i-8)ykkle}&N@1R^ KelF{r5}E*X2JO@U literal 2363 zcmbVOc~BEs8jpzJaEY!*&_Q~_h_DFh4o65JFgYbk9OV!cG=`*s2sum|!Zm0BMFC+E z6~TjJM#NFW3@V~58eI?+5Dg3wkY!(iry2z>*P0FD=#FA>@EW_0YMMN$-v!MJ%uOL_co7y*LeP@$ND8>_s51B3z! z&fkdxa-?)POz0UagMDH*`0``J`6L0(!yRyoCZhx*7~uiYq6o2^98JM}7vNNF>q>2Z3ORYS_tR#0W3iPAs>a zWnjQ^zDy`Zgc30@!^jJkL?RR%>glHtL{bjt3$a-KIZ;ge9po;^;fyQ)j20@7KNS)>Q8kWXjFI{CSIsU6zW{=PgoY{V9eN^}|Jg^v@7#TVm%1fD*7|gtIHiPOL-SI4l z8x{yJ_8?v*vYWT&RospgUms=^n-?(!+x*Js=_P9K8^>$(M=#=Ap=0<|>(orm8{A~S zg_S`Pbrbfad)Sg)WCpkT;SFK7Bd4>!r)wZ*A^;J3Qsa^NR zPD~8E#-19Q!`=yeBNCXtifMsb-fpsB9i%Bz)85!V;g&d*aEk`38)>^Pj_~N1iShmv z4sm;a1$dzToT)fBcC7nKt#IP*Wca8u_k}X|SjC@M`>}#k`x!WCf8AWrZQ9hxy-JOuJ)N> zXz%^Pq(bD#apH%hrW+O2$`=D$bcc?ctASeGf^R(%jLIHn@7S`mLS>lI_rqD=#DfPp zrcH|D*nM-Vs@TJ0V?$BQpErryUcS5{9qm})s(!2ntQCFli7hWjnzvwAtQf$wM=co~ zT2{FDq`8#wAiuJ9Ag=_*CuuSx$e%DeN*Coh-rRXv>^Rytoy>VBZOP; z&DHxmn3tCq|B+zauwBVh)s3VcDz&wI1f@xd8}y@OWF;RO($75; zX5I%0t!=i~f+tn3>)Y}Kg2;3WzSpJ<9wCF5nzAT6F1@3_{+Isx#jCkil#*cdsCnet z#phecw;y1~t!jig`IZHzFF3wjr_$D%sH`4k)cISudIsuTj`JK@ASNG1N?U}b)r*I) z#c`*rUaq^Q?!2JxY;V^-ZQab|0A4;vkF=PqYHIeVVDHIFUWBzfw==kI&jb6PFM6-t z!gftxb2zb$^y=w(J3FO&N5rE=lb4>^mGDAj7w{~a28YPWxIUc9R%_oRxdXfuy$d!tWeZ`K$!pNeO$^e?}~C)mS!(=T@BDF?OvXKQ+wS|DC1_OSt;juZJ+_;t%SUohH@6 zkZvtThrQ~oYqEZ_5-&#vmUZ}@^Gm2H^BPF>Y+nNcUh}cb9~(R!AT+MfvGn$6^d2b{ zJM>{E33PSPp!#s@O%?e>Qml6TwhuHG7@n8+9RaR=nZdj|yNU73H%&FSf4|)H zSa#s`2(tV+V@Y4ru-Tc-^wy}#x4!q%6X85g)C26Dcz66tQc^*DjZX!}>iADOA-nU8 zZ}WVf-0M1`WZ)Lw_3}OIyCX(u7SXvhr`YuHctN>Pcc1Rfm_<2hC98+!T&{(`Z3y+m z{$JDfY9M2xeQ8eNKTj%EMb{4$1RXii`$tYz*237{{$~;0al?kouYVsw*!w!;%7uLj zvl~D9kZLC1#ci?}l>rH?ceSP6?(}U&^DE%#_aAhOFbkp|(30H(<7R$m*vt(K6>Uf2 FzX8(H>$U&@ diff --git a/client/iOS/Resources/alert-red-button.png b/client/iOS/Resources/alert-red-button.png index 896742f9c645c90daf785cff15ad467ba69e4701..1809811089ba4a9f956becea8f0361b55efa3145 100644 GIT binary patch delta 504 zcmV(R{%TuLw^PAG7eFzK>*5N?`zxZ>S@Gn#bNtLTs@7rP#b2i_0Iq4V|RaYTQ#o6 zTigD>x4kU6Q%L#u!U=^m7S6@PID~3ian~2lR?VMz>~+Oc*Z7$o^c8bE@yemKNGS0J-^=Vss9X?#>Z7}2xgaF5&k6!xOVek8&%)MmkLi0{1 u1IEF2(0`RM+u;=S(M$h&B)TN0W)JU~N$b$!-i^Kh0000-*aP literal 1512 zcmeAS@N?(olHy`uVBq!ia0vp^@<6P^!3HGfIwV^GDajJoh?3y^w370~qErUQl>DSr z1<%~X^wgl##FWaylc_cg49sbnArU1JzCKpT`MG+DAT@dwxdlMo3=B5*6$OdO*{LN8 zNvY|XdA3ULckfqH$V{%1*XSQL?vFu&J;D8jzb> zlBiITo0C^;Rbi_HHrEQs1_|pcDS(xfWZNo192Makpx~Tel&WB=XP}#GU}m6TW~gUq zY+`P1uA^XNU}&IkV5Dzoq-$tyWo%?+V4wg6Nh+i#(Mch>H3D2mX;thjEr=FDs+o0^GXscbn}XpVJ5hw7AF^F7L;V>=P7_pOiaoz zEwNPsx)kDt+yY-;xWReF(0~F4nSMoLfxe-hfqrf-$X{U9#U(+h2xnkbT^v$bkg6Y) zTAW{6lnjiIG-a4(VA$ce2&53`8Y};zOkkuW=D6f1m*%GCm3X??DgkBmQZiGl+$_!A z3=Pdq49txT%q$EIEetG-U5uSvjm-=U44q9JVP;^{YwGG|;9_oUVQ6GzWN7GW=xA(c z=4Rq(?&Rd`;$~@J3e)SES6q^qmz)Z-HxpvEej%F^d1{SVn zZl;Eo7G|zWP`xSSgqc3jG5Vmyfs|NaLckOVV#1R?kOR*=sd>O0Qv}Q!#WqKi85o!( zJY5_^DsH`*ao+omgUIpyn`a*>EuEXN^~S9r8+?z3Eq3SCxB&a&q2jxIMh|GJ>#;iNA~VY{wAoxQyHe`)bCEpP8#4|83k~SMvJYJ;>b-!cl4hQ^)wE8VMhZt5leC9>&9W~#^?0*Qx3(f~-h4}6(L(JvdqwrL*4ibA`ggUy^3gx=RiSD1 zq|FKL95T_YHH$u7nmW57+eYu-#eZ|ueN|?BT)#xt@9XN;qid(``1{klfsx_JYX#3@ So#4};ve(nq&t;ucLK6TOojf}L diff --git a/client/iOS/Resources/alert-red-button@2x.png b/client/iOS/Resources/alert-red-button@2x.png index 852bd3f4b7d48bfa6bbc3b4b660fd3fca21d3790..9d5d1ab2d09acdc546438c5ba8d5a8b5cf8bb48f 100644 GIT binary patch delta 1071 zcmV+~1kn4A5W@(NBYy-6Nkl`Kd9hT~5h)xpmZs|{0PNTm$Klk)=XFwj9nb}>O!cVfi&z$g-!ZX7oc>eBDjAyc# z$_>F>>qR1ZEY`PB-VSl$<~n|=Y{b{d56oG%_*}PmBK;!EcT6mLZt5XCJd{U2^2b&U z?=CLH55n>i<$u5L6z`IL?cV$G=J*8CN}+ZAI&QD6A*|Q2U8}*|--{@vkjdwf&E+sK zHiqE90W`J7$K?{f`1{W;`B8v+=NDdp^QkOfZUNI z@c1A;U%iHpt}cUAm`5nT>Vc3CnBnP>B3`F-V`T*!7k@8egVGTI-Dimye)iabF0qqw zGmgxAAgZu0bBMJZC=XvhehfpU6@;Y{YH))*lbx8r&BNn3IX{P%jzGp!gM-0I0543B z7BSrh!i5Fgf;%)Bzgk71upfW<9+ty8$dYGYPViJ=IF_b6v|}+&;gu_~qvf~{;3&xC zb^}qPfq&56>=Je6t}w)djV3I|jQBkuxk?ogYYSj?iNq;SN6US_9sfvkjcx;sduZ5j zrbhrn;KLF%oAxGm;ZUY>8U_y*y|V-7iIPF=!_rQwgLHd&*rWKc=%hM{{y*`^RdH!? z5w}>hOm2Im#iOJ;NhB>UV_dqrbah$IWI5}9B7fPI%I*xZJCn&xCO4VfWQ>crysOK* zx-4h1AD1yMW4!lTyqZ)e$;d0Kh>N)VMTCoJX>mwbm;Jbm@xAzKVlCgY%H$@Kn~2M- zE@Qms(XyOD#<+}eSh_}VaJSx43YJwPJ`ZwZAV9>LW3)@LPLXj8d|2j<_$)|yz_;DPH4>+CI)G)? zh|hp5DUDm6f?))%khs+7W*jXu9?w0x2H?{+fL{g!XjaAK9O>f9{`@oD+KBngIC~)E zZKkpmq;M(i!;oc)j6#1>v<@V8GH#^8oPYiAv1Tu`d}Bn9Hh1tuqXn;S5sg5^A=&+K+|;j=97 zFeem%iB>z#zDQ%V#~;EvWor~&X16Xe*6c^-9Hm+J&|#Gy+QTYO?Rr>cxBOVg@hGH| p%wyAD{lQGtbQTe&4*m-+Mok z;qU8VVzkZ(hr^k8Zs!JIt1I>hKU{^qE8@6%*kXzDglHflL6bx(80Qv^M8SAZxhMt> zfJM>C@$E1RhtreDf`q70;KLLnazLch0W@+YhQ{Go+cZj%I2K0nQE-e*!6r;yY#`ue z(QHD9ivScTIj~f=Jw*ivruYVlQ)0!8Xu>vEJWIpG2;?v-!fWJl3N=&1CcNQgVzTa- zNWi~QL1Wp3w@wKK{&)_eg7Gc@=qv`QAf5^V5Sc=w(VXxk5CVxHi3pLLAsUlRVuB!k z=^|j(RM8S<0GGdH3)`^?QWRA(iNvI&Bp`_lAgUN5#9%OV93+x6rs1qkR-ht{vqHUb znSl$d#VVN+l_3hej!_haB%o{p=IPrIFSC8QMn9AAp{wDZ(F4!Re{pvx zD@|u@(d_r~I$+@i4z_;Y9hP*@ZtKNDfn?#eZ)Zf<5!b}I@hJmsQSRS%9`9NJ9(H`Q z;G~^9UsRFlVMejGo7nI?*L6cpF(l7HPg1<?-v|7 zC#SYH=VluiXia<@x5{d__adPdvx(?n<0Ji)E2c9ZeNAoaZn6f~-nb!RO%1k=QxvBq zcc7}mk`JEE|57!e|Ju%^VYp9YzKPwEZd#U}&sWUsP%%FGzY+8J}O5;3pKD&G9 z@rj6o*DjW}dv^HwG~O6F+9i2H)HrlxH=Jpz^0aNK@lU@nQa$fMe+_yDLV|`QJ7kT@@{EHWXUo8$pC%tkm zm@TM7ckRxoWdGWeZmu7`)~dPVw~NO&NV9$C1)J+*>XRgq7Lq8cWK+2R8vAmg2G0;Ie2yaxyG^q*tprLSCzM7U(=)l8uv<&L%$KE-qP55@U(#xL#}h&Y?}YQ=rR z0B9YS8OpAW(Zo+*9r|X-?2*}{s-kw4BqHm2Z26_X8`ge8b5I2IZ)#f^Hv6b50!CY_pjEZOU-n2GxaHFx+r{hrR<`6wrxjZ)U;GxIHb(d>XyNpVI zo;ZMmsg#8;5cD4bRzq}B&*J%a2l~W-5b~c zwSLY8M`(BYcU|A^OAdW}g(#(a_jcKiIXiEuC^5*9J~<2u{uy?4eW1|ZvtZm}%-T(R z=5qJEBu_gg$vb`j-VaqD)mz=2E!k7zXJtKu+%msRdyz-k;krY6VkQr#hkIi5^ZCEb S{&raRhxX+8a?iO(ru`d(-&KPE diff --git a/client/iOS/Resources/alert-window-landscape.png b/client/iOS/Resources/alert-window-landscape.png index 1149b28cd130099788d7ae3a4ae35c6e6d24ed4f..fba4b7ddf2f53a86bf472d9b770e58ed541d3e44 100644 GIT binary patch delta 2526 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 literal 3518 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 diff --git a/client/iOS/Resources/alert-window.png b/client/iOS/Resources/alert-window.png index e4907cf53b5f8edc6c2025e8c0a46eb29d5812a9..e28d3a505479301df5fcf4438cc3094d198888fc 100644 GIT binary patch literal 1871 zcmd7Sc~Fyg9>?(~!4M$?A~ytbKTn?A{wxk0XS zSccVz_mB1m003_`C1(KuDiYb^%|1vEq|I#r0NR$3W>4AJKql%pL7~uSv=0I~3je2C9y3iyz~TUfwn2?TJQ zfEnj4OBe?WVZ+nHY1L{O=!gpB+|M07GYkg8Hb(Rn2-<_j2fqy|*^<*CI?}%iE+xhqyz=|7z(?W66-?`VY-3RoZ^$^t$@tL}<>4 z-Z!tZh3)7(*R)N`3d?15X8j*TPSFPL`;{#>?1~qP>~2ocoQ@eg*Tz<>htd-IGT9*c*R4 zwS6k3v4a`PFt!Yr-KL!*$HKQ7dmfz#U)WVt62f2v)eXzh#4J;}gHXM1NAtD%sr+wt zoW`cqZO#k4Pbee>;!3%@`60_Wa`|#mNyBCe*ab`~p!}3nz=l3tf?w}szw^7+hHch` z!iB+RfQCZf-TDpTi4w2$ypO?#2>O}PYxY^Q4lLKqVCI3L%4K_H`_S=r*T$>yo6dUl zp|G$Z^zlLBM(Zr;_7{Vmmt<_it=`4;1GX(c`=(!Ao%vVcm0s6A1!<`d_MDNuvcC20 z!Cu|Svg%^uF-Pv8HGb#)w(Q*N3HwdDZ6_}}^Lw{A_DI@hFP>Q7Q!?(vd;eV{La-y{`At%*ntDPX5TkuQb_KprmfG!(@URA_6)AF@EbQ3V;lKD XJvjN(kv%Vv-xy#{u_j;8yKLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z000O5 z7O;%6LfIrj0+b&BLabl|$~HULu*pOj6wpAV44DiFP21IWx$2(7qN?n&+uz-u>5unO zw=GqdE%$Z#@q2FFdrQm=gb=a~A^;F^0>A$=_EZ~Oh^ zjS%z!fEYkxro&P&Z2+x$y|!1YML)Q46k zQ9{Uw5Hf_20RS3}I)=l5mtOpw)$2RA@811~B}w`d02zRhV4CfA^GDaN?!NlmwW~H9 zW(Yx%rYT#K5Hgp3KS8ZlgIR{>u3feLN8MLHzW?A~aom3s0L0ATeYE$~Qy1R*>Q}z3 zA_6l*k__2;gpie}*LNTy2qEClfBCE1-#^$3A$vc{W6sVucXzLth=ZA7FrZurA*(YO z4AE%R;eCYN-77X6{`*@1a>01-zV^(ei$#a7frIY|A?u>55D`3c=_2mmfADnxKPv{! z$roF#rU5{jW^5@!$l8?dXt!JDoV)^zM)Kk_-uuy57bX}&$l3`e1eisLA`bvpMuGv* z@?JDAk2si)5VAg2xh>rijq9gkCx#b7$flB+^2bOpriFiK7(&RVf>E0-m~phBUO_he38vrg!vJJifD;ezJ-p}IQiPD@ zgrEo^AZR+VtV`uAQf{4)1q1|?^BkS?@IGJr!8y;CB!oaU_y#%AKH44N%i1F~Xr-Nmr)!Twxr{v~VW>uBK2` zWZ8KCJmHMRLkKy!lp@LR6|;t_*pw3{m*%$7+2^_AV6>Pbu+Bic@vb%%rxexIHQlJJ z%KLG+Za5)NDxHk`PgHe@9;QKdvW`bb`zyjf6I$tc}8=iwZUL&!Ez zwMse(P_rfFj+8$W;bB!RO#9f@v^k6QVmcI$TEylj!0EHj@M)&r1C*l)salhbhUJHsNC5uTTd{XmQ`v7An(hm zu038R9g(qk2sztjPA(ENUD|JA$5`&1iUhMX;Y{8vlup^$Wdo<_blMr0S`-gCjUpNU z+KQ=Uo=i>#Pdve_pLAxtF=hb5#F?vHJb;KW@sLv>lKFD5`93+ezLPVXVAfAM)Bn)i za0oL@T=KR|JOY7pGL}!#zeD+u-E`VP|#BGdD75=K^wYZhS3Xb~2OdH+A{trHZ0|!~odRvc}dF$!Ypb&Rx;&tSvY-_syF4 z7iXoOV$x@r{a9B#aaB4Zu5!;0-|3e}E{t-G>Z(l2l3Z5)s+-z6v!CQFEs!nk3R#q?qqsM-m3m5T1+~bW2ilo#W1P-D zn8#aS%_zAJ9aXmQK+dO3U||{(U?iGSLRI-p_X}|%X|;{@P=7~NB4c?J+pxwN7F*#c z5w0V!ULVZpq61vfZq4kw;NY~SPqnBdTU6pnWqQS|&S^J8Mym`~JdTd;W%FCA<;G+> z)P>Jw#i}+SYusOa0Y2H~RWve|dBh5bLzFxyuXRQW3Y^Q*5!~p0@Ddx9z;flPYOBX|ItiEs@lCT_ncalPD;gyNO5Y z2@EiE2HM4{*38F#@X{qL=m^>1_$dycBBb<3f-%E?gX;6*JPg8)UP8!5Ur`1i3kowl ztRxuwAWhTjk$2{uAj_0(MF?37?;T)J>Hu1`TJ%D_Uip=+OQ!vFvP07*qo IM6N<$g6rlaSpWb4 diff --git a/client/iOS/Resources/alert-window@2x.png b/client/iOS/Resources/alert-window@2x.png index 2ecd138557734dc3842f83a66dfc051c22e963d3..f23a4ca5eb6befcee68254372ce6300292ba7388 100644 GIT binary patch literal 4202 zcmXw6c|4R~7k}(~h?p!XJ6R^vAhIS5L-s6TN|CYevWM&{gh7;SgDit#>?2DlLl_BT zNxv*9vaj(ze((GK^L(Dqx%b?2&i8xHJ?AEx80)by^DzSez=qJ*F#`ZS~TBk!cqs;L)~Pq`AqvefXYYx8&&l<^_m1+sI;W@pzEIMbzZH*aHV8 z*9`b0*gbJduQMrt{{!!Y`+_R}SFdXkq5$xR8cmOn;nSAA>uhg_Bz*bMx})F9gV;}C zVn8Z8_%5WMhnYL~J^8e#7^PQ5!zUOnVnYZQaj>&X

  • %KbdjZ>i-)K0G~_9)adB# z?J?`r*H+4$uxDg$x%oz?R%9DS7A_$s=8BRn4_(u@z>Sm=m5qdi%x1 zkFbMb)ImB*q7H@Q(IaW5z z1$&Kr!9@odDT$&-ez~LYUERUmc99|9J2+U<#=#+Fny#vtuj{dgmt|2%6}N}QI7m#8 zITw~Kn)EvBk9}dEiQDN3vYfEhNl`a?ZL06HihQt9=b53lf8-a^@A-(S=Wa|e4-(ux z|Aqtq|(MVcB=)MhuLtZOi60Z?W zz+WQ<0659b6^2|vbKnzlbv)*?)3vE!t_$uh3oAulZFi7clcUEDslikLAeaon$Mflc zo|xugO$Y8vqDo0@m-8JP>I>-AuVbeYrQf6TRssuE!5TObgX`M)VYSG@=(G4lzFuTJ zweuJC#lw<7f%8(L42Pt}a}8r}1zauO80?>BO0$XE-l|Cq_U5Ut@FZI?Zs?|!vIe@W zB*?3`k-mgWxd+5VImqL8A&+SW)`%>L&NQbQ9UX0*bIjXe2qEbuLFK2P+j-;Fwd3$`p5yDn8o94#}3SwzsCJ_ zl&b>s%)h5Ek>?a2vUC}BpW=0RVnvy$yr4N#W>O`HOaAMfhi;swh+Jo*8-Qi(<+uB$ z{d;biyYW^6JI19j3Q;`qnRVcb>M(ejX-eSn36niR22j+|S+mOdgHxFvewXpo+2dDK z^%wB98DYR2d*Et>k`a`(dk^=kh;E-=t7=egB`g1gsl7jh7soCt$n~q$q(&nG(RBY| z{-hAc#U&P!Z~aFSmbx28F@!rL^^^M+dl|nlr1lUZ5n*ECzD89yOuCy&8<2 z-hH2XOx)D^IY{cnfKXh%0D6#(9VB!Azof2~`=7>Qln?HHSAZO` zGS%_47n2rI+tUOC^ER_ZGr(hQwT*@q+K1QD_Ng|lJ}}wF`1kxCL6| zv}kp;D(+L=VRCVQz?O!$a&MMa8(0lKw++S3jq1_0J6^T@nvkMX|6iHp`FQq;F^BMgmvU5WYybS^o? zU#5G_5Vk6%9TOo&;PJJ^sPb|9TH492tj37+xv}zVacT+?Oyx=W>$~-r)BRV)5u%>U zn48r@!#ynlcJiM!K?G*(JzX>Kq{)XKc*WKd*;l_hwsoCYL+(cq_tzKq05D=4^p;Fk$vln+bWYlR&Wwc$E5<|EQ?}z8e*tXZ1nrF(J z(trtJp83}rX9v;qV}18NM(f$Y8O#s*R7_`2aeHd(;c}PKNht#$leAyn_*k*(z8gIU*C!0#Wj!66*(cvLdb<(}07qVvq8=HF26iQ+kwAQdYdw-t zh@D<-{t_yS@9Mp1-T4G86>v0bJ$+4QWdHZDiz9EU~9c$Il32g+gVs!UwTQba)Mkx8EQj`~ zvby6k%Xb8 zP;_SFG(L1ah5?Ako_=sGVneSU|N8v(7g^t(U%k;|#H<&UcH~@Czws5&^um&_k;qe* ztQawm&_!Br`k2jPQ~wfnJ$cU@hKKGQ1h4?lko8CyDdM^f%!{axbH{RAre(eBS5}Mj z;o9xc7do6-Q=Ie^1jO%l)+>dY7rz`T<&dUDhH28dEeWxRFef(s)C%^wrWPN(@)M$D z`&ekrt%yh!HIs20gZKxia;H4|4%`A8|7YUa_Mp~W21o2-}x6uz*JhAC0rGG=4mx9k1leVWBh zmq>1T)9?uz%oG0|(Z0mu>Gbb+q!(iz2C`NU(tT52mrS~F3B@C%)L{rWo3jXUScEH2 zdHC7h|Me_E03|%aM)`G+QN%5w;-p~pTHpSn84o{H+U4>dA8c{fVmkYBKD~u)vJ(%# z+v}vbm29;r!xE^}cbzr-+-y=tXr*JL6lNR&7=>IbVPLmea4; zUZDo)t|U{Lq|frUm)zpZ@&0ACQKL1yDVdJ?!7?L+_2Vr`Z<%o})tQpHYinv|eS@xA zzAP!mHN6T3BQx$@hGCuU=fvjqEP0iaqw^RBK6Np7P#8B4od&S|8`&vOYiUmNgfVnnZvlMbL&y1ei~0Gv*f9 zO@j(g*A-2{^}49Eva+C)pIx0A$J;l?bKfrf;EHGrQc^Y2@qzToel|OxYA`YA#Jp>u z^Zy2i)Wkl?h3v|;vDVyhq7W{LdQyTJcW0Ei8T3d+dnZR5{xL4o|%SJPR*2e=8+G(wG;w; zBUd|-px!P;V1nK!BUas~5=obG9Q;D{v-@%~`;vcdO4{jA8hJ2cnektJYa;8`!v#Eh z#h8^uQJUi%$%M1Sl^yK<#sqlX?{7Rl;68(rOeN1uYoh3e^^?tMhQQXT@8S8FA15T^ z-4GC!rjMytrUgAYl@h0VQiTyRC=~^ZZ*ALMD=TCD`}g|AV#vHd!Fi0r+|=vuMbM%M zd!B7dFKa&6f2c*TgnBX>o8s(zzg1AqfzMbMds(Nv@<$lSObQy##E&S}N6gs4qK^@;rJQF8ZK~F4iXaKAObeHJpV;;*JNFt>rW;eQjsCZG#!GaO9Dd4=q z@MGhns%#jauEB3Br|Vl;31fsov+{-SYTuiM7sPPB|Jxu`F9T zLX1Z~J(+&MqDKaym1H)U@*;O6O~-5^TcRbc$hUdR0UjW%vGDiwDVUjXY}HiE_j3)nK9=~M@W0OF>xPPH~F`ag7q Br)B^E literal 7537 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 diff --git a/client/iOS/Resources/cancel_button_background.png b/client/iOS/Resources/cancel_button_background.png index ae12d407df178c0b79660d514f87507eca7cd505..5061279c023c26d9ef766d266f2bf6712f9143ac 100644 GIT binary patch delta 301 zcmX>nv6pFrWIZzj14CqNGaHcd4)6(a{r~?zkO>4^gyk<*)a$cyn9D0dMD~g(-mYtf zkU){WA__qE32V0#*6t^4+)miIpR{&6Y3+W}#_gnyJ5c4Ws{MC?>Uc|n{DK)cE4FXn zwd=u?_wPS`oW6O-BcQ|-PZ!7fkcwMxuX^*fDDX5q{N%>i8rJfAeo0lEk#PFM{R~2% zTHi4QScydjYCk)8+eS6@bu-i3@0z*ar54Tol+!XvyhbnJnb-RIzlZlJUe8qc7#E#g zQhMZ~cB1O8XxBZR6)%sl?^E3K<3R818}qgI{xkpgOz@Z0f2-7z;ux~O9+4z06=<WDR*FRcSTFz- zW=q650N5=6FiBTtNC2?60Km==3$g$R3;-}uh=nNt1bYBr$Ri_o0EC$U6h`t_Jn<{8 z5a%iY0C<_QJh>z}MS)ugEpZ1|S1ukX&Pf+56gFW3VVXcL!g-k)GJ!M?;PcD?0HBc- z5#WRK{dmp}uFlRjj{U%*%WZ25jX z{P*?XzTzZ-GF^d31o+^>%=Ap99M6&ogks$0k4OBs3;+Bb(;~!4V!2o<6ys46agIcq zjPo+3B8fthDa9qy|77CdEc*jK-!%ZRYCZvbku9iQV*~a}ClFY4z~c7+0P?$U!PF=S z1Au6Q;m>#f??3%Vpd|o+W=WE9003S@Bra6Svp>fO002awfhw>;8}z{#EWidF!3EsG z3;bXU&9EIRU@z1_9W=mEXoiz;4lcq~xDGvV5BgyU zp1~-*fe8db$Osc*A=-!mVv1NJjtCc-h4>-CNCXm#Bp}I%6j35eku^v$Qi@a{RY)E3 zJ#qp$hg?Rwkvqr$GJ^buyhkyVfwECO)C{#lxu`c9ghrwZ&}4KmnvWKso6vH!8a<3Q zq36)6Xb;+tK10Vaz~~qUGsJ8#F2=(`u{bOVlVi)VBCHIn#u~6ztOL7=^<&SmcLWlF zMZgI*1b0FpVIDz9SWH+>*hr`#93(Um+6gxa1B6k+CnA%mOSC4s5&6UzVlpv@SV$}* z))J2sFA#f(L&P^E5{W}HC%KRUNwK6<(h|}}(r!{C=`5+6G)NjFlgZj-YqAG9lq?`C z$c5yc>d>VnA`E_*3F2Qp##d8RZb=H01_mm@+|Cqnc9PsG(F5HIG_C zt)aG3uTh7n6Et<2In9F>NlT@zqLtGcXcuVrX|L#Xx)I%#9!{6gSJKPrN9dR61N3(c z4Tcqi$B1Vr8Jidf7-t!G7_XR2rWwr)$3XQ?}=hpK0&Z&W{| zep&sA23f;Q!%st`QJ}G3cbou<7-yIK2z4nfCCCtN2-XOGSWo##{8Q{ATurxr~;I`ytDs%xbip}RzP zziy}Qn4Z2~fSycmr`~zJ=lUFdFa1>gZThG6M+{g7vkW8#+YHVaJjFF}Z#*3@$J_By zLtVo_L#1JrVVB{Ak-5=4qt!-@Mh}c>#$4kh<88)m#-k<%CLtzEP3leVno>={htGUuD;o7bD)w_sX$S}eAxwzy?UvgBH(S?;#HZiQMoS*2K2 zT3xe7t(~nU*1N5{rxB;QPLocnp4Ml>u<^FZwyC!nu;thW+pe~4wtZn|Vi#w(#jeBd zlf9FDx_yoPJqHbk*$%56S{;6Kv~mM9!g3B(KJ}#RZ#@)!hR|78Dq|Iq-afF%KE1Brn_fm;Im z_u$xr8UFki1L{Ox>G0o)(&RAZ;=|I=wN2l97;cLaHH6leTB-XXa*h%dBOEvi`+x zi?=Txl?TadvyiL>SuF~-LZ;|cS}4~l2eM~nS7yJ>iOM;atDY;(?aZ^v+mJV$@1Ote z62cPUlD4IWOIIx&SmwQ~YB{nzae3Pc;}r!fhE@iwJh+OsDs9zItL;~pu715HdQEGA zUct(O!LkCy1<%NCg+}G`0PgpNm-?d@-hMgNe6^V+j6x$b<6@S<$+<4_1hi}Ti zncS4LsjI}fWY1>OX6feMEuLErma3QLmkw?X+1j)X-&VBk_4Y;EFPF_I+q;9dL%E~B zJh;4Nr^(LEJ3myURP{Rblsw%57T)g973R8o)DE9*xN#~;4_o$q%o z4K@u`jhx2fBXC4{U8Qn{*%*B$Ge=nny$HAYq{=vy|sI0 z_vss+H_qMky?OB#|JK!>IX&II^LlUh#rO5!7TtbwC;iULyV-Xq?ybB}ykGP{?LpZ? z-G|jbTmIbG@7#ZCz;~eY(cDM(28Dyq{*m>M4?_iynUBkc4TkHUI6gT!;y-fz>HMcd z&t%Ugo)`Y2{>!cx7B7DI)$7;J(U{Spm-3gBzioV_{p!H$8L!*M!p0uH$#^p{Ui4P` z?ZJ24cOCDe-w#jZd?0@)|7iKK^;6KN`;!@ylm7$*nDhK&GcDTy000JJOGiWiy#N#d zAx2VcC;$Ke32;bRa{vGf6951U69E94oEQKA00(qQO+^RU1Og8W7+t83tN;K3fJsC_ zRA}DqnXyU(K@dRSWb-7q- z)YdEgG2dSS0+L7g*6r4}jt;!DyXGt~=K*j&zd-aL>cnPfAbH?y|5G;x00 zyllNZPo{usZN1V53fMux_*T=v)R^y&V-eBQPML9lT?7CrEXK(@c_;7WoxGEG@=iXH zqye5zPC;~JLR3%z0Td;QVic2$3PALGotnJ_0X6kv>J<}%ps1R>#M_|pz8dE+=ZR)@ z=sbd$ND*b|+%oE9)CQR^L-YW!{+|{7lDxM8%**|XaE2J07*qoM6N<$g6&)0K>z>% diff --git a/client/iOS/Resources/help_page/back.jpg b/client/iOS/Resources/help_page/back.jpg index 3bf3455bfeed0955b243e98b361b0dbee472ec6c..d75344cf89d1e89d5c9f4653abfc2cae7b47e3a3 100644 GIT binary patch literal 141907 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 literal 128248 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 diff --git a/client/iOS/Resources/help_page/touch_pointer_phone.png b/client/iOS/Resources/help_page/touch_pointer_phone.png index 168749fd065e39c990cbb2e4b8c1673424bb5bd6..f325509bed3844e476ddeac40231ad82cc8e379f 100644 GIT binary patch literal 88598 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 M07*qoM6N<$f~m?OYybcN literal 102192 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 delta 563 zcmV-30?hsE1%n2VBntv!OGiWi|A&vvzmXvYVMG@?(LL9;_ib@oOLI@$y2)YqlYtUfQ ze(JV#J7+s@7pCQ4rBbop{)v%xA@h*c4yHr<@x8^IB@{9#p(nM@ENx zM=xG(DguQJ1H6B?xt>n0B|l^+l0j<$p^4e3-|tl|vJ7aX8APIp#4#iU2K#&Y-15rp zn>4HdW$elkf0Yysz`=29Ko@yZNPv$%e^*bi0s<@mJ_@ElFbs7BZd7FU$RVgP;NyfjU<;fU1n^MP7Ct7@ z*C$V^Wn^3mK{m{Q!6C(hOMjJk8qd6>xP11?wHs4GMY4{E)}NbxsieJ4&BnK%u|*ld z_R`wYrRnKN*yc3vsf8)d;W<=k83#i|==)o>EvEgq9?1FM=LeZW$WPoDLBo?+0+Ufk B5sLr- diff --git a/client/iOS/Resources/icon_accessory_star_on.png b/client/iOS/Resources/icon_accessory_star_on.png index cf5ed353b8c651b268d77eaaa01b1d117b8dc90b..3aaf09d34ef83c998266754ad8da96be54ebc230 100644 GIT binary patch delta 915 zcmV;E18n@538)86#VC)Whvx`2BZ1x(#gBODHci-*tWgUjWD z)oOicG#c;L)zzJ)Qu0DTW@hHj!NEbd&1Qq|jtN7`{eRH6?tuR5jTkv4V6m6--w7v( z4G3_w3+Ou`L0?NY^liIg9XN^U>1nWknG-z?NFXnil;8Js3-x(w?!gvE{k0YCJhZ;d!DUa&nIRC?Ir1fPdF%M{RBG@QPea6&4mA6%}=Nbac$R7!SR z^Y=v;SL}#c_nq&T=&gkd7jjSZa7o%YLq}i#{?@3qPuZ8fE3sPrr>@>&gMrTdoqk>x zGWFBu&71d`{VP{&ef|FI+S=GX@4SB2ig4bOn%vsjy5MNi%0JsrXV%|-&M0=^&W#%p zF+o9(w%p87-MV#a`lhlp-^_0P+73$=gys&%{Ox{zWyq;HmrM*M*W*3$!mJ92M7KT&a~ptIs8}I z`H4*BL>DDTrHKxqp=Rdh$qNHCUVN-LcI(!ysK%B}>>VyjFG{R})6&xN+U}(Oo6UcN zOW!GHVvchMm->>Wj7(w1cV^YL%G+=)vA*e9{^`iZ=brYrW=xzuJzSvI?WXO|gbp6Q z_QfmLuYdo>*k88(-1*u0Ejz@&oD9)wFx%P3%$Zp|CM*|-fiBycklCt z`0uAXPv&jk|E_HJdzR_-Vn5e}JPCHO>4=NaeKh%{Ww+8TD`ap9)d_Z7c-mv2@Rd<@9W#UB*>A${r2tK)2*$or@txtz577ngN^$`I`v+D z%szYe?ESu;o;9K2;q$#iWyKx+%iaTtmVp9Nw`T3JGt z;lx@(k>P|ap^D+SETO95=$6pLa2SZErQu`&03a@CM?=q4cK`qY07*qoM6N<$f(Upf A5C8xG delta 208 zcmb<<%Q!)$p0PN{-HBn{IhmIX3=Aykj=qiz3>*8o|0J>k`J4qFk;M!Qe1}1p@p%4< z6riAFiEBhjaDG}zd16s2LqK9?UWuNcYluRbv7V`(g}HS@EKpIbr;B5Vhj(&GMZt&-}?aZbTOXgQEx}@ftI#wG4Cd1xF5e;IgbGdJYD@<);T3K0RT&B BD(e6M delta 217 zcmb>b#yCNxp0PN{-HBn{IhmIX3=Aykj=qiz3>*8o|0J>k`J4qFk;M!Qe1}1p@p%4< z6riAFiEBhjaDG}zd16s2LqK9?UWuNcYluRbv7V`(g}HS@EKpIJr;B5Vhj(&<1goL||GbWvAvMWYPsiD?rS&)2Xu@a_omS*J8Xb#VemI|IYJ2^sDMJ1&<1 Ptz__Y^>bP0l+XkKJqb&a diff --git a/client/iOS/Resources/icon_key_arrow_right.png b/client/iOS/Resources/icon_key_arrow_right.png index 10c7d8e27fca2914443cb419e03d28d3e7c57583..9a5815730203625cf123ce8583450ab04cfd10fe 100644 GIT binary patch delta 99 zcmey#*uXeJCC1&;#WAGf*4qmgIT;jqm@lq*SkiY5jgR3=A9lx&I`x0{NT;9+AZi419+{nDKc2 ziWH!rWQl7;NpOBzNqJ&XDnmeGW?qS&pKFLhnX#U!o`tz}Lo85Hrl*Tzh=+G_f&{Cx zEsIL#+s4ff+!ld(^Y-LGd^wn*Qbl9SLB24N;qA-tM5s&Nj=IcUP5e!Dka^atr zwy{3_@riAz*aOo!b9_4AD6Ep^D-t-vG)sbSb3%GJ}wF~p-YIYA;tL9RnJGqu7};6MAL&099Gq*?F;Ull4jyfTYZ@9@eb zPQ}BTn_40cuM~^9!Lw9LVr#;cra*2tU5QH!3?+{<-0Mm&n=$}_r>mdKI;Vst0PrLv A0RR91 delta 203 zcmb<>!8k#sp0PN{-HBn{IhmIX3=Aykj=qiz3>*8o|0J>k`J4qFk;M!Qe1}1p@p%4< z6riAFiEBhjaDG}zd16s2LqK9?UWuNcYluRbv7V`(g}HS@EKpH|r;B5Vhj(&UCYfM}4Q6Zw*mP@O wl!JkVdvk_K2S*!&BdfE$sNk1J4VnxLC66=QA9mkt16so1>FVdQ&MBb@07Vi)bN~PV diff --git a/client/iOS/Resources/icon_key_arrows.png b/client/iOS/Resources/icon_key_arrows.png index 56c91536920dee4a529f410411d22642dcf82736..e92ef461a7556278bb5409b5f74e04f419ecb0a5 100644 GIT binary patch delta 157 zcmV;O0Al~W0=WT@B!7TOL_t(|+Qrtf4Zt7_L{ZjYI>uni%;Z=~@fEqi!kn;lCAy$Nf2%<}+g024s~A_zbP0py@O*1tuu{u{>v%K^5D7|;T!AwUbDiU0-Re1L`o zAcL!_0cLm;XU_y6Koukb0M!tHCA8UA=7k2SX!ZJ`b$|ToKNb=%U*)`P00}}A00000 LNkvXXu0mjfmN`Fx delta 290 zcmV+-0p0$&0lfl{B!2;OQb$4nuFf3k00004XF*Lt006O%3;baP00009a7bBm000id z000id0mpBsWB>pF8FWQhbW?9;ba!ELWdKlNX>N2bPDNB8b~7$DE;u(kfL#Cp0If+x zK~zXfwblU&fG`LEzT45Kt0jpNLxUNy6jG^DA oD4W36iONo(K^w~e1j9cPH(%wvY(ttbD*ylh07*qoM6N<$f>5n(qW}N^ diff --git a/client/iOS/Resources/icon_key_backspace.png b/client/iOS/Resources/icon_key_backspace.png index 7e9d29541ccea870a51d2b0c36e65120612d0782..552a0a0d9c776379034fea38c2902f383cb67e5f 100644 GIT binary patch delta 419 zcmV;U0bKsa1iS-~BYy#dNklS6a`?D&^AfCNJ$G#o38qoWaD!b#OT_+ zYu8FqRH|-#2p8f)kk*zKt>BaR6fSgQJQprlgqabhP#icgw3&R<+uS4@su9PrTPl^N zp66w{X*3$|QmotUx)?8*X2=-1)yNy6Lag0x6ZXW|A)-5OgnwYG)go+;=@&B4K-3_9 znFDOb*s%tn2K)WKT`U%-T*gz$;=OvkK1|cp`29t%*K-}mxx;i*3Sx1gQmITBJCkh{ z6}UGHBMZauYWeddNvJvt(=@Xn2o8iGV~>oTt7;QPQ67~TF?z|E4eXh)X0v%DEGe)& zun}WJ#6Xmz(|_p{fQ|_Tw2#ag8&Ii*V6|F(APfgz3ou#h*!aIDgwi>D-#_`m1R!>) z4bpnfuJS5H?ejpjN?NPcF1T+$ksW1Q0Hwt%xo8;OmVwLYpW32aE(_Ztm&+|M{Xn*) zAU7@TQrYPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi z!vFvd!vV){sAK>D02y>eSaefwW^{L9a%BKeVQFr3E>1;MAa*k@H7+l<05Ep{9wp6r& zPvTR!(2emwW`ecNBmVrBd;dMzh&`kHqzQJq6DT zl03u&ag!k4Xu({dX_^FkVz7faB?QK=xxh}RL$F5_`9cf@iixCz1FG%7JEX%j}e`96rFA$T9x~@+d>@;fCP~c9I zB(K$KT`uR@woU3Rve~Rxuh;jvKn8nYu(LRc27^HXN{kuwg7N_?0rpI=cDsETQp4XN zU znqYuIg=|r+R=Kvw=kp8H{6K7SZ4nH>wA9+M#)rp7JmUkX>aR_BHACg67i|;~P;2$v5`@zbya&002ovPDHLkV1ggT`CkA4 diff --git a/client/iOS/Resources/icon_key_menu.png b/client/iOS/Resources/icon_key_menu.png index 0b444526369335d666af5e2832a7b400ea8b3060..9b9dd3f999937bcc30d44a67dddb7a5671945742 100644 GIT binary patch delta 429 zcmV;e0aE_n1jYl9BYy#nNklgiel}P$DJlPz)NnU*87`L$ZfX=?kC3-rnAq zZI8`|&=kDG$PlP-Fd>a!z$Q)}W!!>ec;ndiQm_Lj9BV@b|9}68Uf_O0O>V)E4m3Ev zT=To*7UY4KD=!6)aLv&K5=D_DNn+Q0@Ctg+9hV>oPP^TvbUID_y9!Qw7v1T)PLAV{ zqA29|`=2qk!YkN-EQbUvmzt*0Ak}J>LZQ$n#&`cJxB%kV1D3;5sYLFyS}jT@lWfi@ z%>P!f2+JHIuz%zWg#r!7wrz^VVr*T_>pR%Y<#OastyZIWJWl=Hw&b-yP9zePx#1ZP1_K>z@;j|==^1poj532;bRa{vGi z!vFvd!vV){sAK>D02y>eSaefwW^{L9a%BKeVQFr3E>1;MAa*k@H7+8Jh?`aE(tp1|_fqH*!O1~Eu!|r# z)n*k!K?K1`3QjFrK}*p>1|?vydA?T?Nu%vGNe@0qa`(R9y?2*8j^j9(fZot!Xd{4( z+Vdy{Nsm99S5nXRQ>Uo?suy55a20StJ zY1`W0ZUOl*YJYU@2XKeM7YtEZKoA6oL?V>^`>09LfF6ocbtRtXjZUWnnM{T}D6853 zK-B5=N4st|n_w6QNRkABK;Qwr7M&0$U=;`KFcdLO&J;xftJP{X2!%o)*tcbeI02`& z1srw|Zkqh5~@}-0D z4`9@WaQ3a`a=8IOyrU;ah8Y{_?V#; zGk7W-4)==1A_RlMZaSUr!ze54-yH_n#}3v}v2Lr?3qGqT`UkFLSq4>A0l^x+$NZLv z;!jZ4jXxHPMx$Svra`4rp)77Kz$C9sDVxoLD2h6omn?wai{E}H&!FigYKhE$0GN1O UbjxDoHUIzs07*qoM6N<$f-^z)HUIzs diff --git a/client/iOS/Resources/icon_key_return.png b/client/iOS/Resources/icon_key_return.png index 9311ad17146da5ce7e5d6336c9154406e3be51e6..bf6a7da2097358f8a79f10105493cef0061a66c8 100644 GIT binary patch delta 108 zcmV-y0F(cT0*L{TBxO)ZL_t(|+U?D;2>>7rMA59_bdHfJohg|~mtQqNc%M1 zMG8<*vcxr_Bsf2 z%yx!z9(wW~{`hm6qMY|O^{ZbibQvnw&f%ISpwq3fwPgY8jT)yZYC)okzgt4~x~y)G kblSpJB+{fKxrc#4?!^T8-3wdJ0$su2>FVdQ&MBb@08Ir^&j0`b diff --git a/client/iOS/Resources/icon_key_win.png b/client/iOS/Resources/icon_key_win.png index 1ab7b2b46596e477def36166b29e9a74f7dfe7c7..85db6dbecef217a549282d735659083a2e7167de 100644 GIT binary patch delta 405 zcmV;G0c!rt1g-;+BYy#PNkl}E$75XX- zrg_0zvU=GlEdR+#Hc16DWK9N!UUHTcFiO_rz|b|8g9mmasfYE#z+VPv1(rV}tDi5- zGR+vnj5E&$Yn&zpOpsOQ0pAqf^4;(~N7pvPm{D*UNGsV}!@>RO1a*b5* znSBgV=LXN)-ham%7C1wltgC?oPuo7@cT6zIFk{@}KJVE})y4NAA*~k5L}A4PNJ0;J^yX>!rrlY8+#h zDN?{iI_far3(LRJL&tT~V3AbWq{$@vQQkiy<285TB@TR~00000NkvXXu0mjf9VEKs delta 564 zcmV-40?Ylb1Iz@FBYyw{XF*Lt006O%3;baP00009a7bBm000ib000ib0l1NC?EnA( z8FWQhbW?9;ba!ELWdKlNX>N2bPDNB8b~7$DE;u(kfL#Cp0m(^3K~zXfos~~0ZBZ1) zFPShfWAH-Bz(i8&l~*!Qj0_Y5VMJ!adwC@i#lS!*Nivd&5r2weWI!UJL=3#%L`wOW zFc9MR)ww!%-@{(n^=qHA_qW%#&s}@38;d2kREEl66t>|l;E{d?N+Bg;oq6b2C}=#m z+fSIIMF@ut1}kX(LZ!zjKWcu{_I*J&I?FNMN0(3xGYq@GLsJC4W2{Z80w*+mrf>IWXgUo##i?)&R4;r6 zQ)m_pIwd^YHPGex596RpsH&(MG8+mw$n%52K$SSDse&pGZqryf=w|Ee`@T~1zoQH+ zVU)%qNpM03V^!0lCH{p%??OU7j+1?qSO;4ZjZQAS&QQ=M>|JSQ?mHBK8@?8wH Oj=|H_&t;ucLK6V0W^K#> literal 3064 zcmV004&%004{+008|`004nN004b?008NW002DY000@xb3BE2000U( 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 diff --git a/client/iOS/Resources/tabbar_icon_about.png b/client/iOS/Resources/tabbar_icon_about.png index 8d03924a810bc5a6edc3a0c3c80721cbb5f411db..0af383da4290d2ce4dd9090025718bdc6e3ed669 100644 GIT binary patch delta 210 zcmV;@04@K91MUHkB!9I@L_t(|+Rc{12}3amhTW(mWCZugB_m`6=g8@e;waWa3qcTl zDV83-oPP4XXNU%R@37YLK!p@m#J~!@GvMI~n%Ojhm6jDuMGl!(U^gd4zJ!b*{pDlJ zj_jZ8HJ1P|NI=^KTp-|&0G&Wwq8Qu`wgfsY4vwKAeUAcr2qf` M07*qoM6N<$g6JGrDgXcg delta 363 zcmV-x0hIpk0fqyRB!3xnMObuGZ)S9NVRB^vL1b@YWgtmyVP|DhWnpA_ami&o0003f zNklaGVyNDu%r!^;Rv!j8rH>TO?H_;Fg@zI6Byxq3P zv^l7&3ea-a!99{m3f1E2zsB!A~gL_t(|+O?KJ4Z|=DMZ;ha1|bjvArK0o_g)5}5DKB^o(iE5 z0-+E#AFOGzl&3gT4)4;~|657yG#tl4WMLDE@HP}(OSSxESpoAQL1^kamKk6O;{-5z0^g;SItBArmy2pgl*= z60+>Gp-*~(g!8+z?*o#q>jZ<6SP=_iYCRi?J@G_TuEk0zA%7X+3-Oz{b%+c6w}lgJ zo4bTu4vr8`MLbeC`U*KXBC4f$hlbO^f5i>7#@=>NGU7dwoLJ0olr9`hPK<-bW2gn* zh&SR7SmN10T%(G7PDDawS~8L7O6?Y$vyv n`4x6FdPL2*SouC({sb5RX?It{jL5bE00000NkvXXu0mjfnoq^v diff --git a/client/iOS/Resources/tabbar_icon_settings.png b/client/iOS/Resources/tabbar_icon_settings.png index 04578f02c43d1c3f7ad436e7d7bf34af4f6ba32c..a38ffb231da0225331b9ad7aef21a88b5c6487c2 100644 GIT binary patch literal 330 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM3?#3wJbMaAnFaWSxK>qF?Ia!S`^)zmXo6r# zkY6wZ1HZh!y?=auegFLR`_JEhum1Y-ZlL5QPZ!6Kid(rC0{IRr@Gu8BH*5*e*!Ms6 z`lbx6#qW)$H8J~~U{cLKa3uVbgQDa_7XG# zMHUF|6KI)XIY(=e`q?(O*}n@XsNQTocIx$aK?aki^y8BhcCj!wlwOSxd;O*2zwFFR zzuv&yeXfoVx*NQ0PYIQ*zBKK?eSaefwW^{L9a%BKPWN%_+AW3auXJt}l zVPtu6$z?nM00F;AL_t(|+N@T=RfI4Q4Lt7B!P0?r09%1;1!4u_m5Y>M2eKXDk<&s2 zVh31(O9eWEKfahH1cZ5SUJ?j@GBZCjI9ZknlSEN;O+!NZ+zQsU?5Y`Gv4*E`d({@TOAGs3q04y|lIq z(pO{4RE%(#Vz{Y;F|GF+A(+PEr*F;ptI+-qIxx(~Nn52KOZN4q*nJBy0Mw7M0cfA1 RbN~PV00>D%PDHLkV1oVM@ml}@ diff --git a/client/iOS/Resources/toolbar_icon_disconnect.png b/client/iOS/Resources/toolbar_icon_disconnect.png index cb823d4ece4dbc93ca9de079547f6e2164d24eff..ba8908d205c4757141925294e822358d35fb9826 100644 GIT binary patch delta 599 zcmV-d0;v718}9^=BYy%mNkl^IGCB<=q92>^cdyZ@S2zTNh-Y$Mb6_v-CU zz0Kmd{?QKLBa zIswPy(JzXF+3)v20F8h^fFr;W5Hmah0bn$WO~m=&AyAg3j{p=!0TxgQG+qG${nznW zSpX1#FpLJZfRwUVo=Wo_$mLUq6(MI-O2H0eeNA5EO(3U^onJ z-+;^I(nkO+pnvcUr1J)ykSOBX0`Ti)*!u#m*Q@*l%JO)>bF3oiR8cDuMp6GS@FFNs zSwK5|Ae}O8MS>u#ETAa>cR-$myCK_bq|*m-xm>abz|8_s2k^R0*vZmqG(DfsSp&d3 z19S-?q|?cII-Ror1s>ko6}L9P zhMi9U_=<`k;B{fgFzhtRBE8FVuMNR8L&DBrC-Y63dNo(%;Ryr+h5#Dl znzaoa4^YESTYzR!g?*r~OchpKLZ*U+< zLqi~Na&Km7Y-Iodc-oy)XH-+^7Crag^g>IBfRsybQWXdwQbLP>6pAqfylh#{fb z6;Z(vMMVS~$e@S=j*ftg6;Uh>2n?1;Gf_2w45>mM5#WQz#Kz&|EGkvK~TfD`~gdX7S-06<0ofSs5oQvjd@0AR~w zV&ec%EdXFAe}CrF0DztNnR@{MTa+Oc0iclpAQNSXL;z?z0IbheibVieFaQ*0OT;+< z*ew7sNmph_0I;_Jz|Ig0vH%DS05DOAg((08djMd_BO`bKgqZ*oM)FrY@hh$n=PCdI zc$u<1xgb(Nf#>=Hemu`nm{hXd4HK1GJ!M?;PcD?0HBc-5#WRK z{dmp}uFlRjj{U%*%WZ25jX{P*?X zzTzZ-GJjoxM+Erb!p!tcr5w+a34~(Y=8s4Gw+sLL9n&JjNn*KJDiq^U5^;`1nvC-@ zr6P$!k}1U{(*I=Q-z@tBKHoI}uxdU5dyy@uU1J0GOD7Ombim^G008p4Z^6_k2m^p< zgW=D2|L;HjN1!DDfM!XOaR2~bL?kX$%CkSm2!8+oM4*8xut6L2!5A#S1{}c!+`$X{ zU^aw8B*el(5JC!MfE;pQDXfA*D2C0j9V%ci)Ic3Hz)@(1lW-0$!d18qJ#Y{DVF;eV zD7=9Q1VP9M6Ja6Rhyh}XSR;-I7nz0lA;Cxl5{o1t$%qtDB1@4qNHJ21R3KGI9r8VL z0)IJ&Tt>Q)JIDYsg8YWOM=_LvvQa(M47EeKs5csfMxqPQWOOl_j~1Yt&~mgIJ&ZP? z=g_NY5897DL&q?{=okkx#B4Aw#=}CfI4lX1W6QB3tPHEh8n9NZ1G|a!W6!a71QLNo zzzH@4cS0ax9zjT0Oju6XNT?tjBs3A)34b>U1B6k+CnA%mOSC4s5&6UzVlpv@SV$}* z))J2sFA#f(L&P^E5{W}HC%KRUNwK6<(h|}}(r!{C=`5+6G)NjFlgZj-YqAG9lq?`C z$c5yc>d>VnA`E_*3F2Qp##d8RZb=H01_mm@+|Cqnc9PsG(F5HGhv< zLam{;Qm;{ms1r1GnmNsb7D-E`t)i9F8fX`2_i3-_bh;7Ul^#x)&{xvS=|||7=mYe3 z3=M`AgU5(xC>fg=2N-7=cNnjjOr{yriy6mMFgG#lnCF=fnQv8CDz++o6_Lscl}eQ+ zl^ZHARH>?_s@|##Rr6KLRFA1%Q-6J~MpZLYTc&xiMv2Yk#VimzG$o zNUKq+N9(;duI;CtroBbGS^I$wLB~obTqj3okIn_1=Tq5J-KPqt7EL`m^{y_eYo!~Z zyF_=tZl~^;p1xjyo=k72-g&*}`W$^P{Z##J`lt0r3|I!U3?v5I49*xl#WitnJRL8` z+woCDUBf^_rD2s}m*Iqwxqs0-qt!-@Mh}c>#$4kh<88)m#-k<%CLtzEP3leVno>=< zrYWX7Ogl`+&CJcB&DNPUn>{htGUuD;o7bD)w_sX$S}eAxwzy?UvgBH(S?;#HZiQMo zS*2K2T3xe7t(~nU*1N5{rxB;QPLocnp4Ml>u<^FZwyC!nu;thW+kdXMZMJ=3XJQv; zx5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C^>JO{deZfso3oq3?Wo(Y z?l$ge?uXo;%ru`Vo_|?0bI`-cL*P;6(LW2Hl`w1HtbR{JPl0E(=OZs;FOgTR*RZ#x zcdGYc?-xGyK60PqKI1$$-ZI`u$xr8UFki1L{Ox>G0o)(&RAZ;=|I=wN2l97;cLaHH6leTB-XXa*h z%dBOEvi`+xi?=Txl?TadvyiL>SuF~-LZ;|cS}4~l2Y<3>Wmjgu&56o6maCpC&F##y z%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47EtUS1iwkmDaPpj=$ zm#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kwJ{5_It`yrBmlc25 zDBO7E8-Isy%D(e4|2y!JHg)!SRV_x(P} zzS~s+RZZ1q)n)rh`?L2yu8FGY_?G)^U9C=SaewW{1JVQi2O|!)*SXZy9nw8iQjgXv z>qid9AHM#b?{_T?HVsvcoW|lKa720J>GuiW_Z|&8+IEb4tl4MXfXY$XCot2$^elGdkVB4a$ zdw=I+&fjVeZ|}Mgbm7uP|BL54ygSZZ^0;*JvfJeoSGZT2uR33C>U8Qn{*%*B$Ge=n zny$HAYq{=vy|sI0_vss+H_qMky?OB#|JK!>IX&II^LlUh#rO5!7TtbwC;iULyV-Xq z?ybB}ykGP{?LpZ?-G|jbTmIbG@7#ZCz<+n3^U>T#_XdT7&;F71j}JoykC~6lh7E@6 zo;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|zrTyx_>lv@x z#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot(_`g8%^e{{R4h=>PzAFaQARU;qF*m;eA5Z<1fdMgRZ;*hxe| zRCwC7mEBR>Koo_Kn7l_F#3hId;&cEN*cviPFks^RGB8H6Z1XcP7$y)xg2x&f2&uqM z1yMRs38ny@lZUKq*woJHreJSx zuSm%gStJFD5VafxjoW*GUa#j+?2EF;0EU%H#m&3OpxN|Ac@#l%C~2|PY{rtXkZ!Up zt7E~kr>?1daem&*1MJr8zMxaHv>|jx=SsrO%}r5K-*`PBlbBRFa|dCyTFs5b^ZZ{F z9Z{gP*lsnW1>=2b90_VKUVprFA%z*+^669 zvw+ByL2;fpZ{EE1A-EHf0R3jOWdp#j=h?8v1(OA&ms{v|ugmiw@7}))??coNg1`o_ zH2!S;7y%@mjRgwcw{KtP=JvzK51}v#k2PS*7{B)GHM3F;w-s#j3yaHO@^Y* zNQN8L>ICTE;GjTqlTulvZ2*y|XF<>y&TBXYGWkx*$%q|{0LCUdN2HzUXdpF^xa|A> zFt=p_z?aL**CaP36>?f;OtMk0*TaAA$=Pv!{%MH`pHg(D03|;YGTPqWzMZMADd2yO aKLY?^>yKwvc}lGS0000`iL diff --git a/client/iOS/Resources/toolbar_icon_extkeyboad.png b/client/iOS/Resources/toolbar_icon_extkeyboad.png index 9436c07c3b711055472d5ce0833628a901bc1367..053ab8c50f1e8efefb0779e1d4bf8d39d2897917 100644 GIT binary patch delta 323 zcmV-J0lfa)8QlVqBYy!TNklb;@5JhKizzyOf_y)000u5~t6-AJ2WKt1{ zCUg`*@{I&yuoBfX)Ec`WsvVy0GZB0FIvTaqj`C!+~Rm7$}Pt zHPN~hsTb=9AUu(j+!t^Qi`pHuTeN9;1}It|w9Z$>mCNpW1zoS}x+OsVK!0+V@e5Dp VdJTbn(%Aq2002ovPDHLkV1jsjhqwR$ delta 3289 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 XX@jlu!*LC{00000NkvXXu0mjfNXH_A diff --git a/client/iOS/Resources/toolbar_icon_home.png b/client/iOS/Resources/toolbar_icon_home.png index afcd9e4a9ae38e3ae54dc1695f99a793c25b3a93..7d99dd4a42284b02c3c359d2c29001a52566d548 100644 GIT binary patch delta 367 zcmV-#0g(Q>7>NUrBYy!S=^3M9^vEFg|!nnw};0dTk1Q?-EQatTS2&?1hx6432(yVFsXfc1I}tJR7G;95Yt z!-%MU1=2Ky&1ORa@HIdSksYU{&H{O!Lz<-|05<__$6?F1)d{fMZlNd&%Cd}a0$4U{ ztl&0C@?#X-%gWYzx0Ut0_?K(3a(EZNZO6{tXC>$pt_GPyoCP z9I6%&8uM~I_W&Ni{{l(?6aWQ40Z;%G;Q1SX0-yjW01AMu3%}`I^9k^X_u-_aAlLu^ N002ovPDHLkV1g)epqc;x delta 3126 zcmV-649W9}1G*THBYyx1a7bBm000XU000XU0RWnu7ytkYPiaF#P*7-ZbZ>KLZ*U+< zLqi~Na&Km7Y-Iodc-oy)XH-+^7Crag^g>IBfRsybQWXdwQbLP>6pAqfylh#{fb z6;Z(vMMVS~$e@S=j*ftg6;Uh>2n?1;Gf_2w45>mM5#WQz#Kz&|EGkvK~TfD`~gdX7S-06<0ofSs5oQvjd@0AR~w zV&ec%EdXFAe}CrF0DztNnR@{MTa+Oc0iclpAQNSXL;z?z0IbheibVieFaQ*0OT;+< z*ew7sNmph_0I;_Jz|Ig0vH%DS05DOAg((08djMd_BO`bKgqZ*oM)FrY@hh$n=PCdI zc$u<1xgb(Nf#>=Hemu`nm{hXd4HK1GJ!M?;PcD?0HBc-5#WRK z{dmp}uFlRjj{U%*%WZ25jX{P*?X zzTzZ-GJjoxM+Erb!p!tcr5w+a34~(Y=8s4Gw+sLL9n&JjNn*KJDiq^U5^;`1nvC-@ zr6P$!k}1U{(*I=Q-z@tBKHoI}uxdU5dyy@uU1J0GOD7Ombim^G008p4Z^6_k2m^p< zgW=D2|L;HjN1!DDfM!XOaR2~bL?kX$%CkSm2!8+oM4*8xut6L2!5A#S1{}c!+`$X{ zU^aw8B*el(5JC!MfE;pQDXfA*D2C0j9V%ci)Ic3Hz)@(1lW-0$!d18qJ#Y{DVF;eV zD7=9Q1VP9M6Ja6Rhyh}XSR;-I7nz0lA;Cxl5{o1t$%qtDB1@4qNHJ21R3KGI9r8VL z0)IJ&Tt>Q)JIDYsg8YWOM=_LvvQa(M47EeKs5csfMxqPQWOOl_j~1Yt&~mgIJ&ZP? z=g_NY5897DL&q?{=okkx#B4Aw#=}CfI4lX1W6QB3tPHEh8n9NZ1G|a!W6!a71QLNo zzzH@4cS0ax9zjT0Oju6XNT?tjBs3A)34b>U1B6k+CnA%mOSC4s5&6UzVlpv@SV$}* z))J2sFA#f(L&P^E5{W}HC%KRUNwK6<(h|}}(r!{C=`5+6G)NjFlgZj-YqAG9lq?`C z$c5yc>d>VnA`E_*3F2Qp##d8RZb=H01_mm@+|Cqnc9PsG(F5HGhv< zLam{;Qm;{ms1r1GnmNsb7D-E`t)i9F8fX`2_i3-_bh;7Ul^#x)&{xvS=|||7=mYe3 z3=M`AgU5(xC>fg=2N-7=cNnjjOr{yriy6mMFgG#lnCF=fnQv8CDz++o6_Lscl}eQ+ zl^ZHARH>?_s@|##Rr6KLRFA1%Q-6J~MpZLYTc&xiMv2Yk#VimzG$o zNUKq+N9(;duI;CtroBbGS^I$wLB~obTqj3okIn_1=Tq5J-KPqt7EL`m^{y_eYo!~Z zyF_=tZl~^;p1xjyo=k72-g&*}`W$^P{Z##J`lt0r3|I!U3?v5I49*xl#WitnJRL8` z+woCDUBf^_rD2s}m*Iqwxqs0-qt!-@Mh}c>#$4kh<88)m#-k<%CLtzEP3leVno>=< zrYWX7Ogl`+&CJcB&DNPUn>{htGUuD;o7bD)w_sX$S}eAxwzy?UvgBH(S?;#HZiQMo zS*2K2T3xe7t(~nU*1N5{rxB;QPLocnp4Ml>u<^FZwyC!nu;thW+kdXMZMJ=3XJQv; zx5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C^>JO{deZfso3oq3?Wo(Y z?l$ge?uXo;%ru`Vo_|?0bI`-cL*P;6(LW2Hl`w1HtbR{JPl0E(=OZs;FOgTR*RZ#x zcdGYc?-xGyK60PqKI1$$-ZI`u$xr8UFki1L{Ox>G0o)(&RAZ;=|I=wN2l97;cLaHH6leTB-XXa*h z%dBOEvi`+xi?=Txl?TadvyiL>SuF~-LZ;|cS}4~l2Y<3>Wmjgu&56o6maCpC&F##y z%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47EtUS1iwkmDaPpj=$ zm#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kwJ{5_It`yrBmlc25 zDBO7E8-Isy%D(e4|2y!JHg)!SRV_x(P} zzS~s+RZZ1q)n)rh`?L2yu8FGY_?G)^U9C=SaewW{1JVQi2O|!)*SXZy9nw8iQjgXv z>qid9AHM#b?{_T?HVsvcoW|lKa720J>GuiW_Z|&8+IEb4tl4MXfXY$XCot2$^elGdkVB4a$ zdw=I+&fjVeZ|}Mgbm7uP|BL54ygSZZ^0;*JvfJeoSGZT2uR33C>U8Qn{*%*B$Ge=n zny$HAYq{=vy|sI0_vss+H_qMky?OB#|JK!>IX&II^LlUh#rO5!7TtbwC;iULyV-Xq z?ybB}ykGP{?LpZ?-G|jbTmIbG@7#ZCz<+n3^U>T#_XdT7&;F71j}JoykC~6lh7E@6 zo;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|zrTyx_>lv@x z#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot(_`g8%^e{{R4h=>PzAFaQARU;qF*m;eA5Z<1fdMgRZ-Wl2Oq zRCwC#l;3T_Kn%t|R~;au+z4fZc7wnOyiyiGBqF$~w~j z>~3u{BOtC;tGn_A{eJUepD$ez`v?31K-QSX06sGOpC|j4MNIn8u4&%`0LRy(vHK>I QKmY&$07*qoM6N<$f*V-UmjD0& diff --git a/client/iOS/Resources/toolbar_icon_keyboard.png b/client/iOS/Resources/toolbar_icon_keyboard.png index c2a068531840adc60eb97d307bce18718577dd0a..95a57c4d007143524fcf68105025ae375792217e 100644 GIT binary patch delta 572 zcmdlab%kYuay^r@r;B4q#jUs3Jo6qU2(Tu|ukD+pTp`W&S;9xcNhXcsLVdf;6Z@wA z2a7}I%{A(c@;bgq{Oz=$N#a`_etlWRWgT$!md*Vc_DT2doh!1N|MAx^;d6fvyev8N zvEszkxKp!E-gRQg(H0-Kb&~|ul#eW#)?*;4sAlSOBBf=<6$8b| zf=QQ@W?Jyg>=Bq8W#r^j(dyahnYGdQY}#s%cdO?fa;rY!myp<;#IA zkr@vK8n3Rko?PTJFZq+qB_6e guYODa*ne;j^OArs#uhox4ln?Lr>mdKI;Vst0PK(nmH+?% delta 3376 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 delta 3241 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 diff --git a/client/iOS/Resources/toolbar_icon_win.png b/client/iOS/Resources/toolbar_icon_win.png index 73328db1a06cd428c3b8594267487e7ff0bf1b11..673a7ab4dc3758d19e563a177d221abc976fe3af 100644 GIT binary patch delta 396 zcmV;70dxMy1f>IzBYy#GNklI=EfEA=NmPSmJPpTjFGt<`=bk4z zVFyNW3w3S3Fpq=ii(cW7yt~mW+>p0|OE?-`U|)2?n!Itm*MGEx%c!7&DrWHu zZ0YU?j$vEgT%=Hw_X1}WGZ`r?%DalEirE=07{sRT{$LahdCQT)2tH#0vzWpJPGJRG z*uV+JOh*c3oX0C|4LredjNl}0D`q%a(2sTh_Zw$1fEj$z-8%ZC1;g?_VGqVp#&tYH zL(^-l;xx*U!haQck5JR}7SkBR1g3Bk_wWw8BZXCY7qKYsCHkTTC3)YmADi;(k;0g~ zk2t58BayzD%!TL$4&a;a qzG5(Xg#lFYSlc%0s9|sX!(Ts_t~R-2l)(T1002ovP6b4+LSTX)K(D3% delta 560 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 P00000NkvXXu0mjfr!TOA literal 14571 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 KiApi!p#K5I-s?&L diff --git a/client/iOS/Resources/touch_pointer_default.png b/client/iOS/Resources/touch_pointer_default.png index ba16a47c884b84297aa6f039a8c9c359419a8493..d0fc33417db6ff6c943e54dbb203af1d86b46796 100644 GIT binary patch literal 9346 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 z zZL~%^=K4Peh)p_V+Z?q|IDfS&oweTuha9;Lh-nmYU*kquZ%SD@t@NuoUK%-A)yefNlfj8)a5|B}ET^ce*LZ*BUxMU+FB zg4Y`J!WpuE=>3k&%(+d1J46$J&n`U#6gRXB PiEcnqR#m1($}H?ZUMt$e diff --git a/client/iOS/Resources/touch_pointer_extkeyboard.png b/client/iOS/Resources/touch_pointer_extkeyboard.png index 6f0c8cd105a9636236cba636c0cd90e45211144f..e85610892ae0ca0e7122002179a70a522683c61c 100644 GIT binary patch literal 9625 zcmW-ncQ_T^|G>{3xb_vU%}rK9H)O{(%AQHa$0kH($iDU}l$nuhMRtfXZ^+6ftBgYS z-uu_@`#fj-^FHtAJ@rEbW_DZK6Tr71;FDKJVtpqYOt;S4gX=(4@7r^avqBWKD z)5&NWIAbWK@5dNMSut2LT3A?+VUlvsC+dljpt{ zLqVtb8_hcEiROT_;KlE$sZE!sYu^U$9sL?sX7{nNR7^9aHZQE6^sHSKv9na1_;TZ~ z;D+qY!WXNZjy+#2zXpt`Hh4Sk&DUhw9|gsyq!jb^@R~WjYRbJHC=s5 zW?@4LP=%uZ_{W~!eE5Fh=j~)7>=P(qJ=bk(sg3wLQVC%0t)B}3VLGsbPIC_QCd!U{ zyH^b)>VXBia;7#H7lm zJ4FKmS_f5$3Sqb%f5i`}q_1sftG8Lio%c~f|4qzww5&qsR!Pap8>P;VmK*P~BwjeF zDV5XA26apMkDk0G279*bhgjH5>?ZHpi^YeJQ!}pEnRpL8C%1wpu{D=M4w1akQou_-kAETxIc^?C?%-2^v zAtq|->eO%NX(y{1WjNrTaDd8tpWBZTE|9z`roi19*&CC)GP7hl^qPstT2m9}=(PuP zt`|S697f(Z4K_GRdvETOk&!iy|Ls*JgJN@Ir}a&M%-MSN`EL1-*zFQ$4!nI^E!kK* z?(p!Zi*k8(h0nSzk#=z>k7jz(^2bvM7=1P0H|a*aIFNSd1{ARWtbO*A;S<0L*Hg=B z#GK{xjhc0F?55dLn> zFpR@T76o@4E0x4KcR|rGQ0Y8fZ(1&*d)&R-Kpr+s$?_i(dqG3og`{*{ht6er&ln|Q z-po^a0l1K3yFJbrg4^nj{LT7wHc`B7YyQBnY5*hcbr)-7WE3umip@6_2@AZk_mI9wq zvUWqc_p_yLqK(Qpv=4^%6L$S#tG4A}&~XI9_~2a=h9bm>e9VaiZn#prJ20N=ETykV z(`9|Y3w>N_sEaDQaLk4l|9g(*+Hx1854rzLd(Q^MR%T{q62q}cl%IJZiEB2E{f<8z z4X98Mg$-}m#>Z22NN$D9j{C%FrT#lz&_c=uf*!%(4heN z15%0g^n>VAf27ChHcN7J(moPcC%(|or1kNh@mYE^l&5?277+kR36a==i@;Nx{0jRbx+fK;-6p~K~V1$mv_d!qD%&HJU1o=)ZP_W|=wN)B27 z$-x}O)Pb~}9-jL@12uZ*OjK1#4RrOY-Yei#ElL7RnxsDL__rSIzCCp+-Cdd-FmDOG zXtr#N5F|;1);-qOU-Iv6;HVji0GCEMekRWUtO+QlP~>0(Ym<~7MK6-yx7M3<31RvY<}EM_kQ8- z5UZ7#TC;rKNDb9fV1!?{G^}_6iiTcY?|}cf6QSZ7c za=Zx=z+R%Z?9OQZZo0Y1oeG~wUU-PzwNNxa1q&S9ZNB@GCyumD|G_AXaVC*-OF1)s zkmZh*(mP#QHqmFQey9T_wC?TB3gJ$Zq{u9R1gFjMidnCKexW-(vH_RPZu1>I9VhRL zTg4Z5rb9`ng~pd$9<`^|I(jb}R|5)&2!LnPv=e82Bc2Wr8yqk^xjftQ+gl1+zuT~y zW7}6AC|YsiNrlLKj>9;qAQ{2a01v*YU|Gl+5omq+_N(};|H!b~qpWPl*IQCSgLwH{ ze4R5d<~`$!9xvQnt*9%CmoTHLmlybGik>>+GhX;m*tnD(^iDdv>9Lv5w~Tv!wc^SS ztDnZr+RiJ?0}dXU4{BzJ_4)05V`#E_=MxbSdE2>RqjtdeaQ)+53gSR^d?=-qcXJ@U z1Hz&|OM2YzXxh8!ed=uD?0PXtDlY``Bls2>3k9Hb_xrpUkQb=dWYZsM5G{~-du-?B zuJrTI<-)6dJ29Fk>kf1Q# z9AXd-`H66KIZpo@&S199?&tJJp0vqy+|=82CHXNic5r}85Kk?@-TUs|ciQbHp42$g zl@Q!>i*(%ToNKg1_4R!$9q_^`1^nV({~Hh+xayxSJvzK_Ub)wOAkwY zGGa-r);!QIQ$P$YZ_{h7ad;Sj7dx5mg2EsxKof__m%=NF-UEo2M9ffd@LWm5e@1!3 z#e2Oj_f@{dv^?-hVx_V<=9S+pvZ6|Wbbna` zq2?te`67E94_AjB$40t_{KOy>^}aIHjDXHbfq5qwXEx|rsx0AtFaJil+v@1e8C3@A z+fUuQ?Xi`)EA&T;;*M99*lk0zy*O<_8bpY`MTqN@rfM7ne@PV`qZeeGI-r!j`;7fS zw0~>1MXvug;UwxFD&;;kd_pSNW}uB)PQy9!ubYg1T(!U(xBSfd6yZlSrlqHigB*4y zU);mfbx$PdN5&_}?ltQ<>7uvkd{#-pH6Tv}V?36b8K{2|r01dj=v4)+l;>&a^un}2+r59)bFiKleuj?u)}wYZT`-^x~KsKY84g%7+pSfuq8bO1W+IVNg1}@ zG6=W(TpFDwy5dHS6m52$EAC*J{?C8d#pRaMZseU?8MRF;NEK=gEZrM2g^&cD{qxMGRU%tj0*82~N(Wx`t_1?@do|p{g41&lHMrXo=vu8%WqrY){6GG(+u^x%Qx3v=)(THq!r#-~> zlt6HqQ2;BK(PQOr>3eNpj$x7E35^jzLG5V5jq%hqXNRby{??DUnDXu3Vnu<)|aVuld|kaIXByKM{db4(oJ>OO5$Vjy_QU)hopaQ{%e zswMFvbp3@9t|{Z!@5$wKX|V&jFT)m=9K^PNtr*JluD!3~SHV1TQ^76&&0A+%0%6;+c$Hcs?` zR9>j6ZD<$w;_FixI6pu>f-_uw7Txl6sL>`mr>8UAk(lO2qbx`;24K z#rB!)_kE%35acx0Y!vE7K^R3qV3ekJ&l6$yvN`jC3XYg<`uzl@w#JG#dl_+FIU+%gts2amBO11#-r-#dF5avwjNJU*-kOUU}jc*!CBhOLt(32m}q%-qAM-yB!A$ z`GKL!rK;UE>3*umX5+%y3$=&zm`%;RC*q5JMFd4oaHWVSzug2;g;y>;>D|qOXWoS$h zJ7a1)FSrMg^g)8QSFBMj+3@|K*Xz_}CfQS}qlWJvP)mC%y}4_yb9ODnLwDkgRzhz5 z7+v4D61ohVt0Y8(IaR*vB!&=^Aa>Aa zt7C6A=_xTILyxTzP%l&{{>mIqSjQIJ{Cr*fNiKgAWbSWJ-c=(03coL%HGCU?6{~wW zUGJGuOoUY$atJ-m(SI6P|3V_jn?B1WPCQaX^Izf6nBmgl?B&E4|4?C<*^Hc#6Pqxi za;s8<5zb7`q1}QrgPb9w6tF-9Z@FykPoocaVq*{)$9|VKV%F(?`+PZ~>~J53^}iH9 zpuWf!IIF{6TM9mZsNLQtk-PnZKqg(QY>MN+;A!LsPx9@2V14GeLyLU>V|4xHn!CsqlX zLeFspkUD0adB?Zu@+5B{g!jcGv|#6?0HUXbJSS+eTe;{&@RY`X;UVhvb*g*j z^h+kA^GcZ?4%d~Ed>(a<+Y5g@ptuFl*0AB|JMs#aU5^|41kHNu&G=ivn8WAI_B{hV=L_WCrfE@Yh z-EvFPQ(QmVBP=PjoNBPvOZQQ5Px~Vt2w^wq*5pyh?p7)O;B1Xt=y(yUi;iu#qB)S? zH1FG-3S1oE8gh}G^}N){?%!%Yb4K+XZkJf&h>!q192ra)hTzo^P^?Nz_A9=QwiVND zzroHqkK{jIBTV_MN{DnS0D6^F);G)e0Ux;t5$OB^#f+X^NglM+J6EWk52^F+8j7Og z?{ht^b^MySd_}(6d0mOO#^trPGw&N38v*}U8VVH5${cVsMiWEW#|opc z6QSJLs+=kUz>AQX51Q z6eaIy*~aHY_f=2Y9x+5Sy2MoskCOt1q|07l00CTsIsIQIXn%k|Q*3zpAq5I=pVeBH z3*P;oPO69T7f}%G3DW~oz2G)z90~!!y~Qa;ju6!7q)(W!c)|02d~!%J912*=;c;d_ z$%J44y;O@iCQ4ROicGv3Kl{`&)f&A#d-F`-i2A_6m^`{Ijtd-@V#q%m6NbT5I~JQ1 zl=IBmU9L}H1t;j=cZrizwg)OYWbfrb+BGtxJPfFLbgFrCD!T+;k9{b`P^^CF2#}i) z0CZRV1<5!g`hIB-*uLB(qshJ+}8Gg*(n5lF^j!smi7`t*Yur7BMn;(|K0BR zwyWU0=a&DSjE$9*e+bIA!?-T=R4I6#mQgzFk^Aqa+BypkdTrHb?25bSK2AFL*v zNt=P?8s9oOhOc!^U8I?e@LPiAfC>qZy1+p@S@`zVk78C}jKDq#pB`@jbfy8QjXYsf zE2G8_s85k3h^cMyV?8dd@qV1|q{cPLtwP^ET7mOe0peS9H0$ra72uG78BNpw~u87K)^{8D8)C7cYJPA>$bevJIllCw`EgpMIiheLTn;DEx9s`Fk1*!})Royt|Y{83e5yUq=Tn5<5@Q&np_o^Z56G`;6YA zG%C}i&=6lHm$@Wiz#0Mc}c?>xPY(yde2kEYjSUKXbQb0VImr`-;6 zXF_~!=UONU1l}<&L(H`A0eO8V8HU**^+CM7Z~aMgO%#=U^gBTxHns`*Tv(b_+74uQ3DY1{X;C9pL8P!!CHoQ;kNGm zguMHoWxrW0e*uIrG@;5311aQ8C%#sN%Og71cg+VD8CXDp=l)453NVB}Y%_@6y_OA_ zYh6N?K$Q^)xx7&qdGlGpiIUC+i6S#MAIZ-yAC8zyiPdnG>sDRAo!%ciU_GAS{0niZ zc{8X72^r*Q8*UwA1Op%bdq|eJ_v%#es4y;Y0(u(R?R1L~yppYo zr+7#DGMlo-9ivZqu9R5itwLJ;up{nmBC(q5Q=i=r=v$;NHM*`D6bezCgr^k1{ZQd< zUGK?|TV?yu0E8ha$es~Pk@lsD^7XCaS(km6i=gFM!K)-O;ivo(>|kgGKd&gT-6qn1 zJXE0q%RI~b)%hnQh$N!=7Re*z)M+Zu-_b2QnQiWN` zDDRI9iyaJ%+p`cT(`u(!(L>oq7bVlJGMgZ#;Wj#PfaEwr8f_(j?(7?~ny|t2i=gn| z8q_}!Y=d2m7@@%xq-m`M=dDcn3~YDz@|gn2S=)oh$|t#Qdz{PnA7y2`Gc&^Qzv?>% z^3EcU+w5PDJWTMQ<`1BY$jknd>F920tBa zMQfu1hbhN(Sf5{}gdbf-2i6^SjuxuSH-tJ4K*t!Lu8T%!jYu|{mT}qqHpC{?XpSb3 z!J)=wG|2YZ>n|yVv0)U2ky{kCLtBPRk9*(l@zaw##L_8jg*u>iiOWz1f+(;f)#1;3Q2StDRNESsx|JhB#nC<4B7G)eyvt*O&(iCD^!<_fm&< z@7ue_MBg?(5PxNVmTR}H>hw{Q*B9?~(QH+#juBHOeXH8W_!HpbCqDJU0HhuDbs9 zq;@f5-~O}xzTLu2%N=wSL)a`CcF?%hi3e?Akz}8%Sfm2rzr+dSHTH5axR^{j6rqc? z(2cZKjgJX+(=XF6vL->~1aQv!qFAlurxXqpFQUXAOfz}i=KyrKM7mcf-6gnCP;6)+ zls1f4>I_~8phHh`awFPOx`LmNI)z3*lt}wxH(#J|FJ#~mPb={w8LnYZF_fPL7dmgG zE<+@^H)p{=)}Qs&a$X3{r=K|~y>NnAK5?c?q;_@as?^m4!1h9}8PJQ0BWoNyp0Hr? zjSfM58AZ7=Tp=NDYuD)NW`$8K$Q%QHp335EIA>-AD!A^yt6*_;jTX8DXr% z8TX2vAHH^!M_EeVi6xCwETGNVr{{kV&;IEBlU^?fo&tuJqHm-~>=?9b(iW#K6zSJ| zOsx~`;Chad&7i}MCT>A;%~w?m*HehUgy}1tr9O!FfEKO!i|@vBgZ8yxpS>C9QbgOy zf-dTDOdI^tyP^NyL6 zh8EOU7l-0Fnipe1gq=f@f*hasev5|7fsi?PK8VbIO*oOvX$%s8p~>Kqzu|(1Qo2$@ zeJG5UiJaGZRvFZEP@)KVd@0@2*P`p^$&DqDj{agUgd#A|RhCF2yM7=KhmmEnOb}o4 zwsx;Iw{2(>_9Xh@`l4PFqrrdPt`*A3kCp_Bl68`ND3+Xqxa!F6T{vfq7hDJc))57c ziu>k~BNL(!IOgj=bes;apIejf+=jzBv6u%sYhGNYiZu`{Ue5xl^xQe9Ahd%*OZ0%M z()CR+Zkd=519!qkli*yXLi03sp+cPOog%jFgzg%3p_6H!d|p-9GoSPX$${sOnBcb#>#W6d^Gi`n&D9{tRcQX|OljmI8yBD8< z(a`5^2VWV#5(ep>AXvxAc+GrQIQloIJ~^6X4SIg@I(Hte-Mhy)yXHn!-28HU$9IM# ztyRnWUluu(egF7c+$O^umo;O^HY`FL;MLw!pL9`UQRl) zMRrQCeTSlrFEwjnd2g83u`zgUq%-OV9fjw!^7(3@VwuT7z}QW!$V6bm*ggZ&Z^=>j z`6F%wP_#+=)gLJt7pXs?+6sl1_q0GfJItpP8>57H}AseeI-MV>m3DR*Zzgh z)sGb>w)o?%d@mHg33Pe!h=>-}}h%Gu;NVYuR8rj)14!3w)_pku|t8%>NscG0Al%;I@nk@(K zmzLQh|1#Ce17HE}@_&|)Vk!)Y0M+H8;1Vi{3D{M~OoGT3rvld2a6Ox~wUo%;(`8)_-i3ZBZ#FW1;ivLM5 z;BkLBs{ZFs8@}||U_z&g-j`vVR^H#M{a&|x`KE|cjTs7(Yt0*rN;G9G5-rU;czYHSS@BucthflO#l#(Mz#IyE9#L#sGsl+?S>VW93yQrLT_p2 z{oKaaMWG);O^Tp(w{)FzYYh@9)z$dVpJ}r-to{7R^0i1;-JtPOPr(CVXyd8VVm93M zY6->K8`*)y z@k10g84RRYJT8ZA61w!uBHE0}2^kQp%T~0yDBcgURXyCCg0-!kbTvlLf*<8cQ*thF z;YhKgCOPxwGsd=)o^xF$jjVV7__1mXF>5Vt3OhCU$i(%O&dZ)thc_)UY*#_OTUXGf zt)RR9V%VhpJ6QX^sMj6+NN@X7TJ7?6#~vj~Ra2z7z@>SFcvl-D4K7K^Yh*nf00f`v zop*b~ou1E+IFd;k#Rhu02NMemv2MZ$1B3y$!{+vXZ2r#HtoN5DF=_JSCw8(K%v?%8 zt%&as_KYo|(V~O&IM-v4(no&5teZ?v|2#0zzCd|?%!b#n#ft^I)6=ELvm8p$ zFMY_1L?`z; zf7_v&Vfg9Y|-PL3*Xw>Vzy>C9^EcapmC#!1NXU97oUK@%l5Aa`Esb#&wWgir=6hK zJGY`6p?QzgG|_47_dN3pr6eC6kQTo`SY~u-bMJ?P7dLHhZwGsmw23+2-1q}eWPnuQ zo!3^?^IdD_bwAhB)eIy+{qN5|G{5PsZAe9$Y7MH)utu9lMKnkLY$5w&A&JE%V~B!w z0`aOPX(aW0c23T~#sbBLAW;KbmUb;~!K7Euw_v(`HhnP& zjaWEh{Jzsuev5H)H^uh6M@9BQy#y8#A_FSuS^xMCS58h&z6IW2S%UoOovSPLLg(`# z{P|$)>CeeQc=SW}e=+=U>2W~L{HBMblP>&bX3nXhn>#jo{fz@9d9i)Q41pH0;};(n zyj*t|i>XpeA{sEe%%48pD?MEtHeP3=Bh^wg-_NMu{4u-~2oLriYy-NuV@=jiZ@NX} z1$JA4-hnS|uw_Zmc|IH&gE&hf@b2O+__FG0Q!lxkx%hy0PaM=MgKGkAv7}~y+Mi4L zP~7uHT6+DCR0Cs#u7sDV)Nyl2Ex!a5D76(YN(_}Eh%&pY!L+w%Ns*l5zNxIpAN_bD zvh9!6JFAC<(94|x8k1||_wnwojGf)K5xikq;%e5e2!TrWB<-G%=Ntdu*FJ*sn_1+s;Y zm6iMN%%Fmmu-$yHdKWjieh+rr>W0!V2aK)ADJcya4cAUzUN~i8Ld6V~@qeZn60vau zzj1<2e3ns9dOiy+&Hl6?{LbO=|Ixl(}=c5tDVJ;NziYXz!1~X z;%a^@ExmKOM2cH>NId%Sz?|XmcuFx8;0{#ZJI1(U#UNRg#6jSl&S^3KY^bmI zuKg|grQEz0qOX7-_R=;w;OM`KZ#=cs6F!W3=-GMxXER%}gAv&IX~;fJguZJEfEA1h z)uS4YwZc@hg9;VHQxOda?EW;uv2Ubx4}gB`-3J+?&0KQO{bA#AowNVWe#GnLeEb`dWA{aVWEyMZ0pP7LZ_7KUEpg+$aA&9xNh2o+(Ibeb5Mg?#f4P5o1&_Q0{6A{@>D=Pix-_sAX zASTbxN#Nw)k=!nl6ENHjMLw?ZK-k8O!|Hav7JhM*&HdW@Lw9p4M8_?39hZ>Y0v*i- z!;1B`eS3S>X)hW=lR7LRC@fs^=ZeB~2CNrj_Kt&1iX#>i3bnEl5VMrL`+kfLhbjNi zYfU^)cKn9^CQ};A)U;~#GD)2r&*8w>(ojA{HEmL9is(HSDBUspnn+DI5hAQ|ALnyy z?4O%pu;&A8;soniN1)8lavShO3QK)qEyk&LvrV8zDgCFe%Z{X@b&V1~?v)!m{_6>% zYJIDo2GSp^hop`76W4|1ps?pKl0a5e<6#XQ9!BZY#JQUS!q zCMKC&H&!*m2g0LAhU`~}Kr0*$XR0EEa^BeVp*)hQjsfTsDccS(z7D z!G_p0w=%#Yvu{K^36C2$1cEJWr?qIU{Ohv=+L!i7TSzykDfxqR(mGyZ%Wbr-$o@)@ zpT7;T@Nsn9w|{8C?#xdR7aetva3xBwR*f}5W>onQk@+_Qjfk3W&_+-IkVb$YQ2V{nWu+F#VoDkX~ zISO{Rhp$|?cHSo?26W>Wz0IHApyC!LDY?#)9l~FppGd95%WT1hIokjGW!N-J!X5uD_rr4izfYt&5BoC%=tY6r6(hCCF;chfLVq`} z>YPSH^7er=1Iz^S;p9sMHTUv}g^IPc=lf+>4g0-_^tTyhYr%)N{XZAH_6|j_y1bw6 zdiQ~*w$ph3Efl1xkJU5G(S+&=-(qH#L=sgs$wuFJzLJ;r`|D;l8)%d9FM&oOnZr&V zdA5?TtG*EB7ufb)1T8t5=F#!O)+c$M@p*E$I{IW5`FyuPzWzN@m?yclHG#;L3n6n| z>p|Ei#Qz^p|gFe`P~|a@+a+6A`ics(~5suIBvbC%ag;0JneQUaYzd9DV7; z#1_VR%L(kST1SC%L0dMbQVU3A+XTGOeImp>c;VY##dKh^e2>w>?+eS#ju@o?W?I~xUY_9X)eq5)T1NuUGCusXru>gA;8Ia=^r;!JdDSH zh+Dl&A2sVD>b!#Fy(SrQd69`BxARj4b(?_3|2rJ>_ssTR^cOyz8$Q8b3kbbR_ND|< zgAV}Ma+|fx{Q{3xj32F!X2iCrzLPi7S8iDAEG-KGVzM7 zDPNe+)XhvxIN|Nm9+Lor$%qwaZ`ASTRqKXorkGe;>vEF| zl9>qc4I@lW+f@7MA*S3#Sy5m!fL;1~7Z!SH=+6WTWFmD-)rqiwi&iE58aE-K1^q&LCR12?aDbN%p_ z!xa~AAtkxTWjC!;Bzz(0W+R(tB}dhe_TeoDUf@WNuNS;*t7t@sU*JPI6<~&R;_F?# zCkkxgK;scX`@Ou(A#l=TA-6=u>7t_xR&8Ba!`92KmbA`-oM4rn+cE#Qt$k>mP^&4A zQkp6*rM0l2Xt0&(I-`dCb~GWb(?7QkywA@N!2D-V^DBb+G4QD<;FW@ge5I^K=>GsC CENH&~ diff --git a/resources/FreeRDP_Icon.png b/resources/FreeRDP_Icon.png index 40792cc1a8d47a97fb5ffa86c89d933add2c6cb1..3fe30d17649d86dd5a5e3153f7514c89187bbbf0 100644 GIT binary patch literal 29029 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

    F{fHgXwY}n_`caD1CxAS5yv-y|E}5@&hFn~# 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 AZU6uP literal 36551 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 literal 6586 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 Np@zPC^#cg}{{YUD5<36@ literal 40572 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

    X#(PKE(>#Nsc`%tH=i=k%Rv;DRd;xI@pP5$ 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 Date: Wed, 6 Aug 2014 23:10:23 -0400 Subject: [PATCH 058/170] Recompressed PNG images again --- .../drawable-hdpi/icon_edittext_search.png | Bin 1299 -> 1299 bytes .../res/drawable-ldpi/icon_menu_about.png | Bin 1463 -> 1463 bytes .../res/drawable-ldpi/icon_star_off.png | Bin 747 -> 747 bytes .../res/drawable-ldpi/sym_keyboard_delete.png | Bin 866 -> 866 bytes .../drawable-mdpi/icon_edittext_search.png | Bin 931 -> 931 bytes .../res/drawable/sym_keyboard_down_arrow.png | Bin 327 -> 327 bytes .../res/drawable/sym_keyboard_up_arrow.png | Bin 336 -> 336 bytes .../res/drawable/sym_keyboard_winkey.png | Bin 703 -> 703 bytes .../iOS/Resources/icon_accessory_star_off.png | Bin 747 -> 747 bytes .../Resources/toolbar_icon_touchpointer.png | Bin 443 -> 443 bytes 10 files changed, 0 insertions(+), 0 deletions(-) diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_edittext_search.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_edittext_search.png index 5a704fe1fe042a3dd7a8bc1aec81d06972952f43..31765478aa2a819feb1983a41960953ac1601d70 100644 GIT binary patch delta 41 wcmbQtHJNKeFC%ke*7nI07pR~Uf6)78&qol`;+07a_~$^ZZW delta 41 wcmbQtHJNKeFC+6s&CQc1Fz#Z$;C*VdFVi+Afjyr$L^1$@r>mdKI;Vst08o_=V*mgE diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_about.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_about.png index ddef08f5f02ce4e8fc41122b3553ac89772d5487..a2594621c647a56ce2e25546352fc26a92e47e86 100644 GIT binary patch delta 1107 zcmV-Z1g!hF3%3i9j0u2PQd&yCzl0W%l_!6&er&h?p1jHXf8O``=j7xx#Y@SX$Wo8P ztol{wfAA`z_zmaKhP|vdoa0lJ-4~{p>sM4_1s-uw-X_Ncfe;hhBpy6R`ockM)eCj69INfJvP zrtuq7<5T0~H&T4!;z@uE6TsWThgwcO!JinxZux!a^>%)m&nc@Rm8)hD2@F-|Pb{9= zNw2Tv?NMZ~j&jVyCrpTxn3iHRs3d5R66#>~HCGzZg1*Yws>2f{My91m$uWOUEMN=P zkwU9{2+dj#C6rS%kQE0*WYlgcDl0PX?&VY7J;fUyYStd&#A&Rf7++$K+yF~FM5i(_ z%84UkYJJeO+_c>GsE zwz)SXf{l}F2*N5VV9>bIebj%iaOKpeMrg#8F8`@~#1!FE-py|~(*{iirvg|*2oA9q zof>aCOkstK6;i`=oIKmzaKp3x_^QLoZFtk2n!TI~VGULU@h$2l|6C9CC|p^oJ>(;2 zO&i+atnsZntlWlwZnrdzASc)G7G_|OTG1O1P%y(q0Sc%=a+9sf0SA9?&(7*Z2~b!Yq;8)kAhNS9{@wx!O)1cG%5LdzNmN%wkl`Kl#I5!7QAz7jZqmmyC;8s*AeG zR;hyyw#x3D!^Kk{#r1z)-oA=Qc!C93@f9Elu?fCl#X)v*s%AQ%-CDG@=z!MDCp$TK z;-c6E0x$_HrwWk7H#jTOxKtXu=A^Dnw_;Z<)cA1E@}A|!hZeG{-AY%+LDB2qmEPvf zNerPNPF5#|CBpos_?VZhszvR}nALV_Co^{z)v9`FVDf6|10;VXGaRgf4B{8qVZx{c zK^w;QpIG#gji0HLW#P_Ck;Sq7R0Q5I@#cLD;3096KsXV^56}J|;ST_3FoQYKC+`G6AVIIN1Occ)zdR?t$2czWMbBZH z>o52~m=-BnCqp|Ri_pm_d0G%G_#K3Ecp*OGYQ!J7k9(NGIBSNx`|LF4rvDK=w5Y=n Z&a;NN)3WnY@;4p#&P+~(2Md$$1jvyb8>RpN delta 1107 zcmV-Z1g!hF3%3i9j0qI6r1XP+e+d+kl_!4?Kek(cPu}GHKkxheb8>Q;;-%zGn`&haV6?hDh+^(!i|44*hCZ8S|*ZJ7|$0rZ+S-81L99s75Hxig0Hm0MM~o)ha*i#k-`pp-=WCjD6}Mb(sg`tj-I6+KR=QNHZ631g`TjZy_Z;KaJL zBZ#BoQ@FU+JK$!px<3UOt(C-Y*op5hH3HER!X;xyJ!j4!cAZh$q>L#MKF z%8MfrGCgQoYFcW2)JrGnA3xhe)bydY>x7&;1)LA8H1*RQz5LP2QIM} z9U6ZoLJ@_F)uTq}IQh1F;e~Je@fC-a-|%NTGc2R)b zHLYlcyC$&Wu<{$h+1=6LVvvs{Qc8Qtc!kJM8ACU5htMW-ub=p8Vl1V+L;7kA$AzOV&dy)kB@+ zsMJ9RM`dT;;o@n45_*3>Z(qeDJi$C{_zDn&_&8s%?Bb_!s}?$--CDG@=z!M3Cnvdh z;-UBj0x$s^r`92bZ*W#*aH%wY%}w@fr{Ywt)cA1E(w?QphgNc`or*o{qS*ECN^kS# z1O~A#ZdM0|B*NUL#HgQas#UdTEovLJk%c>}YE%8xKXJA60aAaG1uoXQ4B!_yVaA9A zK^sQ*pIGpdgP*B`W#!IK(S_0dR0Q5I^X7f@<0*{bHUjV2WnU$_y*56}J|;ST_3FpXK!EAIqAAVIIN1Occ)pFAtR#~3d0MbBZ1 z>n{XAm=bAOCqp|RhtSDsc}fth_#K3Ecp*OGYQ!J7k9(NL7;Bol`|LF4r~eT>w5Y=% Z&a(!&)3WnY@;4p#&P?Osd1aID1jsqc9Y6p8 diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_star_off.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_star_off.png index 10dc14ff8a88995cbeaf86e34fd4287ffb3fde91..4f246793e7955e2f819b918fc80fa53d709381f8 100644 GIT binary patch delta 522 zcmV+l0`>jt1?vTnY=5;iMqmX(w!{+3O1#lXF9zOp6GdGJLO~Z1B~(aVbx}!PL{NfV zBth!rkBrmYJn($*@;>-) ztiu+phGp!&rsTW)B3Pxkbaws=+izH%vBq_zwr6s2g5ykZgfr~ZuHURZS9TD)Q3wZCD5+E;;bbg5 zO+%cb${6D^|F-DEjReubNA%-)NE@yPPrVTss3puWu-kFzFIrN7?YSdFzE!dUm|FdM%sg6X5 zPx*}fD@yd7TIx_Mim(cQk>flaSPJk775YU*^it;;KXypE8EdPx^keq2?}raL!t;ZY zZqB~?VM*x}J?!EmxgT(VjZ?^lIVXFDc~6pj)TFa2Wqj@*ga(%Tmx_G{#-mP=WQ|pXopW zP8=QRnR8!-DK_kd8ykLGX(tL%4HvRtGu?l?%=>q~0gsA5eZ0^_4*&oFC3HntbYx+4 MWjbSWWs_(EgCh0z9{>OV delta 522 zcmV+l0`>jt1?vTnY=7k%Bd`LYT4D)hCEjRc7Xxp)iJ~q9p`eS15-Oywy6A(vh@b+y zD3Vaf5G!1MOj|od&NGELdbW&^=`gqK48vxb8D2OUe;;D@c@7-9>G$L1<$>pem-oSc zV+}TAC2ZsH-${MQFM?f)OQ*klW6LeOGgf);&vKT=#|ro8P;bT{>)_ce1MmfSH2RX@Z?Z)kzb7cpy3x#lEnUV@68cD@7 z6Ewtes*E!sQ(o~s4LR>PGT%ROp#hF;K|w{(i17`5Y!m$)VpJTaDp9+rGR9b@rU5y~ z;>tg+B!{U{x_^ohG0aFd(&Y>-R5xP>ej(Rg-8K1|D*OL1M2&j7vJpG8{ePBhJk^>E z^EqFzXIY6}QcE9dLJ?NrFLGU{gY!W?qr!lwh(78(6To&!H)C~`mU+r9cK`4(2YJ5F zA|2RQJ0K}-qL=M_BKITqvThuCFz00F03S$_pPF=5rGM-p18kkaZi}V6^j4!H$?C${ z@cxeGPda;KLTC|{FlB4wl+M2N#ptG5lwk{w9Po9_$$zl?vPHp7qb}jTjy+iW{h3Y_ z;Kb41&Kb`&n399N@L=6h($C3HntbYx+4 MWjbSWWs_(Eg8(l5fB*mh diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/sym_keyboard_delete.png b/client/Android/FreeRDPCore/res/drawable-ldpi/sym_keyboard_delete.png index 43aee13e1b0bea2cec9d622bba6767a17f107e6e..40a46043588f293d193ec74af996138f3d4b13ed 100644 GIT binary patch delta 650 zcmV;50(Jf32I2;gWq(^p(@`7;@b5NOuH4wN+<(ofGee33$t}xU+6BUg9t?yocqwNW zUz7+0Lzj`{dl!*b5$PhEYf|Y})7q3R$tgKun#*3IhXQpimz18)Hfb@o)m!xY!TJ69 z9X|iVIY0cv;6MZk)?pP`;6V&&;F}L2II)<>erI}g>`8qognu;!Gq2r_NiCS?>fzfE z#bQZQ<5ow9&gU&DR+SS{)p9f!jQ!!%IFe#9naer&2n8QL_S`6|CZw_LQVBNNbS@`k ze_%Ep6f^G!?j1i(h|BHjM(STNlX1Ih;al5#+rlP3LqW3w*GmG3MRqr@1-L zupaW-QbH!D>3?a-4(=QG`4wXh)GjN3v@_SYhZ@ zuV+?u1bp}-zE?eT7a1~z>)FkdSPg)cnny_X0m?!M6n&XHb8H0xe2a#V$L5KN<>l@s z#6@Nzhr#13I}5>YKiaG}5gJ!-K?-(cCNycj|7dMS!mlP*ru3ggNZ(VWMPqCv8#@*k zTk0TMX@4iUhnAMFX?hHVSlh8SoP}UYf0xf!e+t6DhQQFEYlal^7uVY>gLg~G4`;#K z$SwM>-o}PCIe`J>(NqR%PH+I3HH7Tm7h)lpHq^DWM52cGbNbdG3x|o=hO8*L1Dn9Z k{}Vp}TN@_mgiz3F0000bbVXQnWMOn=I%9HWVUyqjf+6xW%>V!Z delta 650 zcmV;50(Jf32I2;gWq(~rlTjE4@c)#RD>t?*_b#0}Go&bx+_H3<_5tBV7Y0Hf_)*S2 zcB4cf7;_m(-uE#iD#zzea3DlV;F}9R-H8zb+nt%Q@h1)C;D0NNW?#GPQ(7?3)g!kd zh{aN;C(QN^o!3)Vs;DHSrsZe>7~8|?38cniVyDCM2t^-0_T8wcB}ApURECXKoznsF zADC4K>FoQVd&f@`;&eH?k?~i|px>@o{HD23RYOQ|1Ga#%>Ksnwf(uqO#=IN*G(Ybi z>4BuKoRFy*dVgD*UAwUOc3iIjI~wCO9aL5CErt;667iKPb#3b*@Xr@qR9rq$mlJ&m zEF>Ta$=HDPbY&m{L#q%XnnK!3L|i1sJ9pUjz-}BJjFficOAVL^sJ_zUelu#iZ|Ssj znzSZuu$pQ0r(uYY!lLjW6VJ{X8CaOBQDP@@Awwbd(0?@#C6Gf(JJM`Al3n}33PZ2@ z-E)c~;KCn?{p#Vn$QDbT&u*T?Y5=SZIU#umRTN@_mxX51m0000bbVXQnWMOn=I%9HWVUyqjg7LaNqyPW_ diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/icon_edittext_search.png b/client/Android/FreeRDPCore/res/drawable-mdpi/icon_edittext_search.png index 4589d7e7bdef61813f5a778992b423c03d00c383..36d9074fdf6b15da9b1539acad6986b462e987fe 100644 GIT binary patch delta 898 zcmV-|1AY9X2crj&E`Ll@XB@}ze}-9{F7D1{FYIDj;$jv;92aJZCe959c3R?EUP{X; zJ+;gXCoVxdWftsngvHfTJ-xAWefQz`q_Os}R3%W;jw^i@0 zgF1-cF3gHJg9%JN`Yt`?yllNJPTjr$8D2D@_L}P5e<35af8)xW#u(B!(#nx{lADqn z(_1FXE^=QlCV$Zj4k}0e<|1U?<9yJM6ozjMd=w%NxyVgEO3)~ctI~6WutED<-R>gP zC5y`gh|dRVM6#2ab(m}n9w(V(ck+QBCNx`$kT~bhL?KSN->{MJB*wm?C`ns~?uO9` zKE#(4pgsg4!s4`U63Fx<#=6K$5sG{pUhRb8yuP#m1%DZGz-aw)V>{(%ArBoT@2SAD z2d0~C6$R+nN&o_MqIOFwwdG|d2g@~c1V><V@nRyLctv<(NXJKMz%C1`h@V%3-@Dl6Q}@1DiVJNz(cvHP%EgOcxoX7 zX-G}l8h?Jlg+6%hICmAH*oOX;wA=#@2j{ALs$Z)n1s$M6Z#5(g3pTJhFmpml5%ST% z*5Mx|^nk~qzm#_mPSwcj8SQ<;LpK8Opc#tbIgPK%JWbwS;g0Cb0%FjDHkH@0{ag|MB_G?A1{G`;#1T&d zc_{jF^5e8+Jb3Q>*v+wtk$8$5+9grw)!;8axX}hBs;*RixP}@@$6yPYsGEEgekoDf zUlA?!ztT-svXe-@kqC~W8%8#5-}I-sX{5=S$d$!@7(v>*8aG({R zqkHn|C*=&)=hd)QeJ%}gY(6NyV_-U#=|vY~3RGU-TSj%yj2*%lSg~^H`{=63SWA}8 zQtk6%5V@isBz_35^uP`)42#c4EUXpT9-BF~>P7GG&i$nRkMOi;*{Ru+i@yD!|Ln_GX5h+D`A%X+vtZU6QMU%dyNl%)z zS=*eLmo{m#)YF)xG3K?Wt=5yMZB41@irb3TsT348*-eFk=!I;fmt|cig6(MIZ%;y% zB))+cBrmV%nO01{Wys*I@8*P`oEM(#fDd)Mry2Yy=(hdL<$#i8Q-(_IrPE_&6AotiqBp| zY>s{lKP})a#xVZm$JB)5isgzhapxi=c+i0A8;Va~Kn804&Y3=g5u|RVgM3VZF^0%Y3lc+`s|25mUz>Df~ldxgEL-+TuJEV1LLCgXNpmt(2RYo$nZVPWu<# zFy3w{%R|SP{NSMx)a#n5B_|WvS>H;rHpDxPfesF z6)8zwrGKAuq6hAKj$H*Px~exRE_Q*#!I{dg$`2|@MhEE7M|E-CoE2;iOdMZSfV|YV ze()C&U2NK+f8_TMPE<+CDfL6$V;B5zqY<*eOKy1&4Qx7lZ4g1Yz%!~}Fe0-p5vLGC zJLI#nUn@qxD$PO7WFa4&+Ol0+A5PwMw-#gDqz7wbb_D$~1P9s$&M%7uYBLl068nTNS*tHGq5UK}lcD_Po)W5gWo!|~z>1cNKSh=W#+ov0 znyOzHgUA-y8owS|>Vgdx=;mLKSXe2%B|3F{*@Nys9s5c7hVZ;d$?54+^WOcS|L diff --git a/client/Android/FreeRDPCore/res/drawable/sym_keyboard_down_arrow.png b/client/Android/FreeRDPCore/res/drawable/sym_keyboard_down_arrow.png index b23693376dae92b27e5571e7b753cc3541b3f841..f28f2728e17dbe8f309ac0fc2611d9b1587dc6d9 100644 GIT binary patch delta 291 zcmV+;0o?w_0>=W7Eq^g;!!Q(p;i_N^G6aJQ**oL}fo9AQ0xfiLArvxn>Dn`7D7k>Z zYi^5PT=3MzoA;hT{f7>rCe-K&K|z9V*3WwyboK8~+qMb`^aUwY$e;}OSfl#I z;0>c-Q9qY`z+OZY(ojKT*gqKPP(gP+f~pu4gJMt&ia{|b27d(!^8Y)`Fzpev!4UdP z0wsw_aElTv7*sgG_Kd1v@QxRZkV3fx4e*Q_)`Ks+;s)0)K^imcJq6V$k-JVvA;$ww z!k7jN47<|_AN7f4H%1=y=n&Ol>F{oZlajAV9u;6s^7YBrB%jn#wkH2kb8OLacJdf` p)BqDaVT?i^BOH&)P(b^L`35YMs^%{+?vVfh002ovPDHLkV1mc?fVltw delta 291 zcmV+;0o?w_0>=W7Eq}3U!ax|naZd<=3xt3LcL$#!preBnTIgb-2pL?u_8A<+7YJna z4Fq?=snA)-)Wt2kPZ0lw45d~K_l1MN9sK6|^L;m5r}d{O3Iz}P1|Q01P=F__k^Pb4 z14C<3)n!MNw^UKSt)Lj?9VxV}pizyW%muk17vzFmkPC7_ZGQ;*=XV%jQX^=CKJ+gh zlqAN(05dF+BEtb?&8Q41R#;#NAIc;s#2h)w2AuJZ2Xsw>G^W@$6qI9z$aF#q5uWiS zj5*;A{p;!2kNQS(9V3r=F^D=LF?ct^Ny*nFkFu~P`TFE*l27VWwx;Hz9jt){#=%P>x4qaS*1_$v40$KY8f_tG;!MWh% z;+EYfh=1W5LJ4~0F--_Z{I{CX?s6hX@Y{p;}Fi#I*5@3Az%dnu_V*1#6sV zgEz!bO~j1wgQDb6jgdtYQ p{zxSzF?fs_yc{B{1rqZ=<^(7ds^+PA4e$T}002ovPDHLkV1m};gNpzF delta 291 zcmV+;0o?x30?-1GHh+W!L{P}yAx|LGv4aQ-E*6T=!Nt{Qa43C&Kvv(N;4U}`&VrMR zTXvto{tF)xYSAMn7cBR|Zw&mo?+8~hnJmjZglHgus+2VnQ$riCXi1nVE2fSvzVI^( zydi=rBc_ivPC18sl+Bm{Hs_GbsCP7>?3|3mT(Os^2&&{5^MCc3uL(Nqvwt$?>obqB zwm$jucCf_h4t5x#4zEa14I}LC6m-O-(0!61A5R!!h6E{AngMg9NbrF%VpQRo+#?@> z2=SsB6Cud)H9`tSK5GP}2>$xs1-T#>x1Pr5Cc0ic(N(Mq+xgAdMhl=1ij=~blkbh>VC^ceEEFzX;KoHW7 z&9Mlnz;{7NEpkzXGsutP92R6^tJy)Vf{1DCh7}!97)1-JkcoMik5wo_9iE{NZMuj= zj0i$Tu^sF2E<$7&!}y3v!~Qp@)rAy63G`wIc417o_7SpmAytwArRaka%752| zY%}1-b)3dNc?28ev8@?C_us z{qUg$*I=9J0hEVv;oY+);uAznpctFrg%TKoRTq&f92P(-axf%Z>qn9<#4a4>Ll%nhTe#M# zi&zMcV1Lk0G@}sGr|mbS>OvfNX;=`(2Ykj4!@fb(;5fR4Ap>SV(uWAZkDJ(ol}JW9 z4&gqgpwNv9+`*(Uq{%E~3v!TRa?ETTh8GPef%Mb(iv9oc-~A%2MyD{O3$tSJx^Y%; z#Z1E)%QwNDxP@U&z!+Ll{y*N2Q*cA`H}OHVZx?@m0Ng8ZoqH>TY5)KL07*qoM6N<$ Ef;8AIOaK4? delta 670 zcmV;P0%85X1-}K5Eq_}`Q*j)?aUoiSQDP!UP(cJGVpf_F8X-M3x=_7n*=+je>P0#ZVp16K5;k3k1Mkp<`=~-WictYCf>04YEW>FiA(z?D zb``w1fiu{LyvXAjSPv(zz=INGpNc%tAbZLDf+{(n@q71ZD6WpMT+p8wuJF;Ylutv?w#OQHnaW zpcj5L;W`SZI|1b(Ec`d!f+cX_V&wip#3LE$*noT-K?RN@(JbTwlz<1@a0*|cFo0SV zqYwvBjv6%JDV|`pS%_Z{F%Abd!UrWVh%{Y9u5efYsmQ^gaBUxwbRng}VSZ%6fj`2v zZe7HD)PD&E{X!%1AwAoEN2)Hwg;$0JA$-Ia{4_i_fJ&S|r!b`7>`VFx0rcS(_Fy@Z zk%2>afJrEHq6~L2Aq;6S3)zeuq?o*BCJw`gS~wwnH@;#2zr4C%fR$($hIC+t72Az- zf?v!O+*a-ccj7jNGy!91M#=x!AE)4^<}&eNtQWh#zuYTuov;jmxBvhE07*qoM6N<$ Eg3gH}i2wiq diff --git a/client/iOS/Resources/icon_accessory_star_off.png b/client/iOS/Resources/icon_accessory_star_off.png index 10dc14ff8a88995cbeaf86e34fd4287ffb3fde91..4f246793e7955e2f819b918fc80fa53d709381f8 100644 GIT binary patch delta 522 zcmV+l0`>jt1?vTnY=5;iMqmX(w!{+3O1#lXF9zOp6GdGJLO~Z1B~(aVbx}!PL{NfV zBth!rkBrmYJn($*@;>-) ztiu+phGp!&rsTW)B3Pxkbaws=+izH%vBq_zwr6s2g5ykZgfr~ZuHURZS9TD)Q3wZCD5+E;;bbg5 zO+%cb${6D^|F-DEjReubNA%-)NE@yPPrVTss3puWu-kFzFIrN7?YSdFzE!dUm|FdM%sg6X5 zPx*}fD@yd7TIx_Mim(cQk>flaSPJk775YU*^it;;KXypE8EdPx^keq2?}raL!t;ZY zZqB~?VM*x}J?!EmxgT(VjZ?^lIVXFDc~6pj)TFa2Wqj@*ga(%Tmx_G{#-mP=WQ|pXopW zP8=QRnR8!-DK_kd8ykLGX(tL%4HvRtGu?l?%=>q~0gsA5eZ0^_4*&oFC3HntbYx+4 MWjbSWWs_(EgCh0z9{>OV delta 522 zcmV+l0`>jt1?vTnY=7k%Bd`LYT4D)hCEjRc7Xxp)iJ~q9p`eS15-Oywy6A(vh@b+y zD3Vaf5G!1MOj|od&NGELdbW&^=`gqK48vxb8D2OUe;;D@c@7-9>G$L1<$>pem-oSc zV+}TAC2ZsH-${MQFM?f)OQ*klW6LeOGgf);&vKT=#|ro8P;bT{>)_ce1MmfSH2RX@Z?Z)kzb7cpy3x#lEnUV@68cD@7 z6Ewtes*E!sQ(o~s4LR>PGT%ROp#hF;K|w{(i17`5Y!m$)VpJTaDp9+rGR9b@rU5y~ z;>tg+B!{U{x_^ohG0aFd(&Y>-R5xP>ej(Rg-8K1|D*OL1M2&j7vJpG8{ePBhJk^>E z^EqFzXIY6}QcE9dLJ?NrFLGU{gY!W?qr!lwh(78(6To&!H)C~`mU+r9cK`4(2YJ5F zA|2RQJ0K}-qL=M_BKITqvThuCFz00F03S$_pPF=5rGM-p18kkaZi}V6^j4!H$?C${ z@cxeGPda;KLTC|{FlB4wl+M2N#ptG5lwk{w9Po9_$$zl?vPHp7qb}jTjy+iW{h3Y_ z;Kb41&Kb`&n399N@L=6h($C3HntbYx+4 MWjbSWWs_(Eg8(l5fB*mh diff --git a/client/iOS/Resources/toolbar_icon_touchpointer.png b/client/iOS/Resources/toolbar_icon_touchpointer.png index 71ab2390e3815988e16e4543d8372704d8e72e23..a080bf58a1c3322f46bd4d4ad14a32ebbe7e29ff 100644 GIT binary patch delta 100 zcmV-q0Gt221G@vTUjbZ}0P=*Z5CuWd{{!#=pcVljN@@QD;IsKc8vyF@C`GR4^#g#5 z8EBFjsD-#LatP^v0WMmkNm?{5jzf@T+h_3(v`6pYt?L_#vVF8A|HXR%0000jwZA zGtdSzm>%M~$RVWv1-NLDCTY>MI1WLUZJ)(E&>p>mx2|uBvVF9i2xjmA0000 Date: Thu, 7 Aug 2014 06:47:33 -0400 Subject: [PATCH 059/170] futimens, while being POSIX-compliant, does not exist on Mac OS X. Added futimes back to address this. --- channels/drive/client/drive_file.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/channels/drive/client/drive_file.c b/channels/drive/client/drive_file.c index 9f38b228b..87d091739 100644 --- a/channels/drive/client/drive_file.c +++ b/channels/drive/client/drive_file.c @@ -433,10 +433,10 @@ BOOL drive_file_set_information(DRIVE_FILE* file, UINT32 FsInformationClass, UIN int status; char* fullpath; struct STAT st; -#if defined(ANDROID) - struct timeval tv[2]; -#else +#if defined(__linux__) && !defined(ANDROID) struct timespec tv[2]; +#else + struct timeval tv[2]; #endif UINT64 LastWriteTime; UINT32 FileAttributes; @@ -461,14 +461,18 @@ BOOL drive_file_set_information(DRIVE_FILE* file, UINT32 FsInformationClass, UIN tv[1].tv_sec = (LastWriteTime > 0 ? FILE_TIME_RDP_TO_SYSTEM(LastWriteTime) : st.st_mtime); #ifndef WIN32 /* TODO on win32 */ -#ifdef ANDROID +#if ANDROID tv[0].tv_usec = 0; tv[1].tv_usec = 0; utimes(file->fullpath, tv); -#else +#elif defined (__linux__) tv[0].tv_nsec = 0; tv[1].tv_nsec = 0; futimens(file->fd, tv); +#else + tv[0].tv_usec = 0; + tv[1].tv_usec = 0; + futimes(file->fd, tv); #endif if (FileAttributes > 0) From 0d2a3d2e2f651cb766b7c50dd65aace139795ec5 Mon Sep 17 00:00:00 2001 From: Rene Rheaume Date: Thu, 7 Aug 2014 07:11:04 -0400 Subject: [PATCH 060/170] Fixed a typo for conditional compilation --- channels/drive/client/drive_file.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/channels/drive/client/drive_file.c b/channels/drive/client/drive_file.c index 87d091739..8daf4c6f4 100644 --- a/channels/drive/client/drive_file.c +++ b/channels/drive/client/drive_file.c @@ -461,7 +461,7 @@ BOOL drive_file_set_information(DRIVE_FILE* file, UINT32 FsInformationClass, UIN tv[1].tv_sec = (LastWriteTime > 0 ? FILE_TIME_RDP_TO_SYSTEM(LastWriteTime) : st.st_mtime); #ifndef WIN32 /* TODO on win32 */ -#if ANDROID +#ifdef ANDROID tv[0].tv_usec = 0; tv[1].tv_usec = 0; utimes(file->fullpath, tv); From f4c133eaf8a82d7a86dde242defb1ff7adfbf3e9 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Thu, 7 Aug 2014 16:51:24 +0200 Subject: [PATCH 061/170] Replaced custom logging mechanism with WLog wrapper. --- include/freerdp/utils/debug.h | 46 +-- libfreerdp/cache/bitmap.c | 9 +- libfreerdp/cache/brush.c | 11 +- libfreerdp/cache/glyph.c | 17 +- libfreerdp/cache/nine_grid.c | 7 +- libfreerdp/cache/offscreen.c | 9 +- libfreerdp/cache/palette.c | 7 +- libfreerdp/cache/pointer.c | 7 +- libfreerdp/codec/audio.c | 13 +- libfreerdp/codec/clear.c | 4 +- libfreerdp/codec/h264.c | 10 +- libfreerdp/codec/mppc.c | 10 +- libfreerdp/codec/ncrush.c | 7 +- libfreerdp/codec/planar.c | 9 +- libfreerdp/codec/region.c | 9 +- libfreerdp/codec/rfx.c | 4 +- libfreerdp/codec/xcrush.c | 2 +- libfreerdp/common/assistance.c | 15 +- libfreerdp/common/settings.c | 25 +- libfreerdp/core/bulk.c | 16 +- libfreerdp/core/capabilities.c | 398 ++++++++++++------------ libfreerdp/core/certificate.c | 38 +-- libfreerdp/core/channels.c | 2 +- libfreerdp/core/client.c | 4 +- libfreerdp/core/connection.c | 52 ++-- libfreerdp/core/errinfo.c | 6 +- libfreerdp/core/fastpath.c | 22 +- libfreerdp/core/freerdp.c | 8 +- libfreerdp/core/gateway/http.c | 8 +- libfreerdp/core/gateway/ntlm.c | 8 +- libfreerdp/core/gateway/rpc.c | 62 ++-- libfreerdp/core/gateway/rpc_bind.c | 10 +- libfreerdp/core/gateway/rpc_client.c | 34 +- libfreerdp/core/gateway/rpc_fault.c | 8 +- libfreerdp/core/gateway/rts.c | 28 +- libfreerdp/core/gateway/rts_signature.c | 4 +- libfreerdp/core/gateway/tsg.c | 86 ++--- libfreerdp/core/gcc.c | 30 +- libfreerdp/core/info.c | 12 +- libfreerdp/core/input.c | 2 +- libfreerdp/core/license.c | 126 ++++---- libfreerdp/core/listener.c | 4 +- libfreerdp/core/mcs.c | 22 +- libfreerdp/core/message.c | 10 +- libfreerdp/core/nego.c | 8 +- libfreerdp/core/nla.c | 64 ++-- libfreerdp/core/orders.c | 40 +-- libfreerdp/core/peer.c | 20 +- libfreerdp/core/rdp.c | 26 +- libfreerdp/core/redirection.c | 34 +- libfreerdp/core/security.c | 36 +-- libfreerdp/core/server.c | 8 +- libfreerdp/core/surface.c | 2 +- libfreerdp/core/tcp.c | 15 +- libfreerdp/core/tpdu.c | 6 +- libfreerdp/core/transport.c | 24 +- libfreerdp/core/update.c | 10 +- libfreerdp/core/window.c | 2 +- libfreerdp/crypto/ber.c | 5 +- libfreerdp/crypto/certificate.c | 9 +- libfreerdp/crypto/crypto.c | 19 +- libfreerdp/crypto/test/TestBase64.c | 22 +- libfreerdp/crypto/tls.c | 87 +++--- libfreerdp/gdi/16bpp.c | 6 +- libfreerdp/gdi/32bpp.c | 4 +- libfreerdp/gdi/8bpp.c | 4 +- libfreerdp/gdi/gdi.c | 16 +- libfreerdp/gdi/graphics.c | 6 +- libfreerdp/locale/timezone.c | 8 +- libfreerdp/rail/icon.c | 9 +- libfreerdp/rail/window.c | 12 +- libfreerdp/utils/CMakeLists.txt | 1 + libfreerdp/utils/bitmap.c | 3 +- libfreerdp/utils/debug.c | 63 ++++ libfreerdp/utils/msusb.c | 54 ++-- libfreerdp/utils/profiler.c | 17 +- libfreerdp/utils/rail.c | 4 +- libfreerdp/utils/signal.c | 3 +- libfreerdp/utils/svc_plugin.c | 12 +- libfreerdp/utils/tcp.c | 13 +- 80 files changed, 981 insertions(+), 912 deletions(-) create mode 100644 libfreerdp/utils/debug.c diff --git a/include/freerdp/utils/debug.h b/include/freerdp/utils/debug.h index ba79ed6d1..50764c0a1 100644 --- a/include/freerdp/utils/debug.h +++ b/include/freerdp/utils/debug.h @@ -20,41 +20,17 @@ #ifndef FREERDP_UTILS_DEBUG_H #define FREERDP_UTILS_DEBUG_H +#include + +void debug_print(int level, const char *file, const char *fkt, int line, + const char *dbg_str, const char *fmt, ...); + #define DEBUG_NULL(fmt, ...) do { } while (0) - -/* When building for android redirect all debug messages - * to logcat. */ -#if defined(ANDROID) -#include - -#define APP_NAME "freerdp-debug" - -#define ANDROID_DEBUG_PRINT(_dbg_str, fmt, ...) do { \ - __android_log_print(_dbg_str, fmt, ##__VA_ARGS__); \ - } while( 0 ) - -#define DEBUG_CLASS(_dbg_class, fmt, ...) \ - ANDROID_DEBUG_PRINT(ANDROID_LOG_DEBUG, APP_NAME, \ - "DBG_" #_dbg_class " %s (%s:%d): " \ - fmt, __FUNCTION__, __FILE__, __LINE__, ## __VA_ARGS__) - -#define DEBUG_WARN(fmt, ...) \ - ANDROID_DEBUG_PRINT(ANDROID_LOG_WARN, APP_NAME, "Warning %s (%s:%d): " \ - fmt, __FUNCTION__, __FILE__, __LINE__, ## __VA_ARGS__) - -#else -/* By default all log messages are written to stdout */ -#include - -#define DEBUG_PRINT(_dbg_str, fmt, ...) do { \ - fprintf(stderr, _dbg_str, __FUNCTION__, __FILE__, __LINE__); \ - fprintf(stderr, fmt, ## __VA_ARGS__); \ - fprintf(stderr, "\n"); \ - } while( 0 ) - - -#define DEBUG_CLASS(_dbg_class, fmt, ...) DEBUG_PRINT("DBG_" #_dbg_class " %s (%s:%d): ", fmt, ## __VA_ARGS__) -#define DEBUG_WARN(fmt, ...) DEBUG_PRINT("Warning %s (%s:%d): ", fmt, ## __VA_ARGS__) -#endif +#define DEBUG_CLASS(_dbg_class, fmt, ...) debug_print(WLOG_ERROR, __FILE__, \ + __FUNCTION__, __LINE__, #_dbg_class, fmt, ## __VA_ARGS__) +#define DEBUG_MSG(fmt, ...) debug_print(WLOG_DEBUG, __FILE__, __FUNCTION__, \ + __LINE__, "freerdp", fmt, ## __VA_ARGS__) +#define DEBUG_WARN(fmt, ...) debug_print(WLOG_ERROR, __FILE__, __FUNCTION__, \ + __LINE__, "freerdp", fmt, ## __VA_ARGS__) #endif /* FREERDP_UTILS_DEBUG_H */ diff --git a/libfreerdp/cache/bitmap.c b/libfreerdp/cache/bitmap.c index ec78af491..480ead2f6 100644 --- a/libfreerdp/cache/bitmap.c +++ b/libfreerdp/cache/bitmap.c @@ -29,6 +29,7 @@ #include #include +#include #include void update_gdi_memblt(rdpContext* context, MEMBLT_ORDER* memblt) @@ -222,7 +223,7 @@ rdpBitmap* bitmap_cache_get(rdpBitmapCache* bitmapCache, UINT32 id, UINT32 index if (id > bitmapCache->maxCells) { - fprintf(stderr, "get invalid bitmap cell id: %d\n", id); + DEBUG_WARN( "get invalid bitmap cell id: %d\n", id); return NULL; } @@ -232,7 +233,7 @@ rdpBitmap* bitmap_cache_get(rdpBitmapCache* bitmapCache, UINT32 id, UINT32 index } else if (index > bitmapCache->cells[id].number) { - fprintf(stderr, "get invalid bitmap index %d in cell id: %d\n", index, id); + DEBUG_WARN( "get invalid bitmap index %d in cell id: %d\n", index, id); return NULL; } @@ -245,7 +246,7 @@ void bitmap_cache_put(rdpBitmapCache* bitmapCache, UINT32 id, UINT32 index, rdpB { if (id > bitmapCache->maxCells) { - fprintf(stderr, "put invalid bitmap cell id: %d\n", id); + DEBUG_WARN( "put invalid bitmap cell id: %d\n", id); return; } @@ -255,7 +256,7 @@ void bitmap_cache_put(rdpBitmapCache* bitmapCache, UINT32 id, UINT32 index, rdpB } else if (index > bitmapCache->cells[id].number) { - fprintf(stderr, "put invalid bitmap index %d in cell id: %d\n", index, id); + DEBUG_WARN( "put invalid bitmap index %d in cell id: %d\n", index, id); return; } diff --git a/libfreerdp/cache/brush.c b/libfreerdp/cache/brush.c index 6c3fa81d0..13342cecf 100644 --- a/libfreerdp/cache/brush.c +++ b/libfreerdp/cache/brush.c @@ -28,6 +28,7 @@ #include #include +#include #include void update_gdi_patblt(rdpContext* context, PATBLT_ORDER* patblt) @@ -100,7 +101,7 @@ void* brush_cache_get(rdpBrushCache* brushCache, UINT32 index, UINT32* bpp) { if (index >= brushCache->maxMonoEntries) { - fprintf(stderr, "invalid brush (%d bpp) index: 0x%04X\n", *bpp, index); + DEBUG_WARN( "invalid brush (%d bpp) index: 0x%04X\n", *bpp, index); return NULL; } @@ -111,7 +112,7 @@ void* brush_cache_get(rdpBrushCache* brushCache, UINT32 index, UINT32* bpp) { if (index >= brushCache->maxEntries) { - fprintf(stderr, "invalid brush (%d bpp) index: 0x%04X\n", *bpp, index); + DEBUG_WARN( "invalid brush (%d bpp) index: 0x%04X\n", *bpp, index); return NULL; } @@ -121,7 +122,7 @@ void* brush_cache_get(rdpBrushCache* brushCache, UINT32 index, UINT32* bpp) if (entry == NULL) { - fprintf(stderr, "invalid brush (%d bpp) at index: 0x%04X\n", *bpp, index); + DEBUG_WARN( "invalid brush (%d bpp) at index: 0x%04X\n", *bpp, index); return NULL; } @@ -136,7 +137,7 @@ void brush_cache_put(rdpBrushCache* brushCache, UINT32 index, void* entry, UINT3 { if (index >= brushCache->maxMonoEntries) { - fprintf(stderr, "invalid brush (%d bpp) index: 0x%04X\n", bpp, index); + DEBUG_WARN( "invalid brush (%d bpp) index: 0x%04X\n", bpp, index); if (entry) free(entry); @@ -156,7 +157,7 @@ void brush_cache_put(rdpBrushCache* brushCache, UINT32 index, void* entry, UINT3 { if (index >= brushCache->maxEntries) { - fprintf(stderr, "invalid brush (%d bpp) index: 0x%04X\n", bpp, index); + DEBUG_WARN( "invalid brush (%d bpp) index: 0x%04X\n", bpp, index); if (entry) free(entry); diff --git a/libfreerdp/cache/glyph.c b/libfreerdp/cache/glyph.c index ac4303228..8bbd0b017 100644 --- a/libfreerdp/cache/glyph.c +++ b/libfreerdp/cache/glyph.c @@ -28,6 +28,7 @@ #include #include +#include #include void update_process_glyph(rdpContext* context, BYTE* data, int* index, @@ -367,20 +368,20 @@ rdpGlyph* glyph_cache_get(rdpGlyphCache* glyphCache, UINT32 id, UINT32 index) if (id > 9) { - fprintf(stderr, "invalid glyph cache id: %d\n", id); + DEBUG_WARN( "invalid glyph cache id: %d\n", id); return NULL; } if (index > glyphCache->glyphCache[id].number) { - fprintf(stderr, "index %d out of range for cache id: %d\n", index, id); + DEBUG_WARN( "index %d out of range for cache id: %d\n", index, id); return NULL; } glyph = glyphCache->glyphCache[id].entries[index]; if (!glyph) - fprintf(stderr, "no glyph found at cache index: %d in cache id: %d\n", index, id); + DEBUG_WARN( "no glyph found at cache index: %d in cache id: %d\n", index, id); return glyph; } @@ -391,13 +392,13 @@ void glyph_cache_put(rdpGlyphCache* glyphCache, UINT32 id, UINT32 index, rdpGlyp if (id > 9) { - fprintf(stderr, "invalid glyph cache id: %d\n", id); + DEBUG_WARN( "invalid glyph cache id: %d\n", id); return; } if (index > glyphCache->glyphCache[id].number) { - fprintf(stderr, "invalid glyph cache index: %d in cache id: %d\n", index, id); + DEBUG_WARN( "invalid glyph cache index: %d in cache id: %d\n", index, id); return; } @@ -423,7 +424,7 @@ void* glyph_cache_fragment_get(rdpGlyphCache* glyphCache, UINT32 index, UINT32* if (index > 255) { - fprintf(stderr, "invalid glyph cache fragment index: %d\n", index); + DEBUG_WARN( "invalid glyph cache fragment index: %d\n", index); return NULL; } @@ -433,7 +434,7 @@ void* glyph_cache_fragment_get(rdpGlyphCache* glyphCache, UINT32 index, UINT32* WLog_Print(glyphCache->log, WLOG_DEBUG, "GlyphCacheFragmentGet: index: %d size: %d", index, *size); if (!fragment) - fprintf(stderr, "invalid glyph fragment at index:%d\n", index); + DEBUG_WARN( "invalid glyph fragment at index:%d\n", index); return fragment; } @@ -444,7 +445,7 @@ void glyph_cache_fragment_put(rdpGlyphCache* glyphCache, UINT32 index, UINT32 si if (index > 255) { - fprintf(stderr, "invalid glyph cache fragment index: %d\n", index); + DEBUG_WARN( "invalid glyph cache fragment index: %d\n", index); return; } diff --git a/libfreerdp/cache/nine_grid.c b/libfreerdp/cache/nine_grid.c index 47245c8a8..ed2502f7a 100644 --- a/libfreerdp/cache/nine_grid.c +++ b/libfreerdp/cache/nine_grid.c @@ -29,6 +29,7 @@ #include #include +#include #include void update_gdi_draw_nine_grid(rdpContext* context, DRAW_NINE_GRID_ORDER* draw_nine_grid) @@ -60,7 +61,7 @@ void* nine_grid_cache_get(rdpNineGridCache* nine_grid, UINT32 index) if (index >= nine_grid->maxEntries) { - fprintf(stderr, "invalid NineGrid index: 0x%04X\n", index); + DEBUG_WARN( "invalid NineGrid index: 0x%04X\n", index); return NULL; } @@ -68,7 +69,7 @@ void* nine_grid_cache_get(rdpNineGridCache* nine_grid, UINT32 index) if (entry == NULL) { - fprintf(stderr, "invalid NineGrid at index: 0x%04X\n", index); + DEBUG_WARN( "invalid NineGrid at index: 0x%04X\n", index); return NULL; } @@ -81,7 +82,7 @@ void nine_grid_cache_put(rdpNineGridCache* nine_grid, UINT32 index, void* entry) if (index >= nine_grid->maxEntries) { - fprintf(stderr, "invalid NineGrid index: 0x%04X\n", index); + DEBUG_WARN( "invalid NineGrid index: 0x%04X\n", index); return; } diff --git a/libfreerdp/cache/offscreen.c b/libfreerdp/cache/offscreen.c index c735f96d3..3a2b18bb4 100644 --- a/libfreerdp/cache/offscreen.c +++ b/libfreerdp/cache/offscreen.c @@ -27,6 +27,7 @@ #include +#include #include void update_gdi_create_offscreen_bitmap(rdpContext* context, CREATE_OFFSCREEN_BITMAP_ORDER* createOffscreenBitmap) @@ -80,7 +81,7 @@ rdpBitmap* offscreen_cache_get(rdpOffscreenCache* offscreenCache, UINT32 index) if (index >= offscreenCache->maxEntries) { - fprintf(stderr, "invalid offscreen bitmap index: 0x%04X\n", index); + DEBUG_WARN( "invalid offscreen bitmap index: 0x%04X\n", index); return NULL; } @@ -88,7 +89,7 @@ rdpBitmap* offscreen_cache_get(rdpOffscreenCache* offscreenCache, UINT32 index) if (!bitmap) { - fprintf(stderr, "invalid offscreen bitmap at index: 0x%04X\n", index); + DEBUG_WARN( "invalid offscreen bitmap at index: 0x%04X\n", index); return NULL; } @@ -99,7 +100,7 @@ void offscreen_cache_put(rdpOffscreenCache* offscreenCache, UINT32 index, rdpBit { if (index >= offscreenCache->maxEntries) { - fprintf(stderr, "invalid offscreen bitmap index: 0x%04X\n", index); + DEBUG_WARN( "invalid offscreen bitmap index: 0x%04X\n", index); return; } @@ -113,7 +114,7 @@ void offscreen_cache_delete(rdpOffscreenCache* offscreenCache, UINT32 index) if (index >= offscreenCache->maxEntries) { - fprintf(stderr, "invalid offscreen bitmap index (delete): 0x%04X\n", index); + DEBUG_WARN( "invalid offscreen bitmap index (delete): 0x%04X\n", index); return; } diff --git a/libfreerdp/cache/palette.c b/libfreerdp/cache/palette.c index 3436a686d..e472aee1e 100644 --- a/libfreerdp/cache/palette.c +++ b/libfreerdp/cache/palette.c @@ -25,6 +25,7 @@ #include +#include #include static void update_gdi_cache_color_table(rdpContext* context, CACHE_COLOR_TABLE_ORDER* cacheColorTable) @@ -44,7 +45,7 @@ void* palette_cache_get(rdpPaletteCache* paletteCache, UINT32 index) if (index >= paletteCache->maxEntries) { - fprintf(stderr, "invalid color table index: 0x%04X\n", index); + DEBUG_WARN( "invalid color table index: 0x%04X\n", index); return NULL; } @@ -52,7 +53,7 @@ void* palette_cache_get(rdpPaletteCache* paletteCache, UINT32 index) if (!entry) { - fprintf(stderr, "invalid color table at index: 0x%04X\n", index); + DEBUG_WARN( "invalid color table at index: 0x%04X\n", index); return NULL; } @@ -63,7 +64,7 @@ void palette_cache_put(rdpPaletteCache* paletteCache, UINT32 index, void* entry) { if (index >= paletteCache->maxEntries) { - fprintf(stderr, "invalid color table index: 0x%04X\n", index); + DEBUG_WARN( "invalid color table index: 0x%04X\n", index); if (entry) free(entry); diff --git a/libfreerdp/cache/pointer.c b/libfreerdp/cache/pointer.c index 57bc3a4ef..227322d25 100644 --- a/libfreerdp/cache/pointer.c +++ b/libfreerdp/cache/pointer.c @@ -28,6 +28,7 @@ #include #include +#include void update_pointer_position(rdpContext* context, POINTER_POSITION_UPDATE* pointer_position) { @@ -47,7 +48,7 @@ void update_pointer_system(rdpContext* context, POINTER_SYSTEM_UPDATE* pointer_s break; default: - fprintf(stderr, "Unknown system pointer type (0x%08X)\n", pointer_system->type); + DEBUG_WARN( "Unknown system pointer type (0x%08X)\n", pointer_system->type); break; } } @@ -140,7 +141,7 @@ rdpPointer* pointer_cache_get(rdpPointerCache* pointer_cache, UINT32 index) if (index >= pointer_cache->cacheSize) { - fprintf(stderr, "invalid pointer index:%d\n", index); + DEBUG_WARN( "invalid pointer index:%d\n", index); return NULL; } @@ -155,7 +156,7 @@ void pointer_cache_put(rdpPointerCache* pointer_cache, UINT32 index, rdpPointer* if (index >= pointer_cache->cacheSize) { - fprintf(stderr, "invalid pointer index:%d\n", index); + DEBUG_WARN( "invalid pointer index:%d\n", index); return; } diff --git a/libfreerdp/codec/audio.c b/libfreerdp/codec/audio.c index 751885e78..06f96ae0d 100644 --- a/libfreerdp/codec/audio.c +++ b/libfreerdp/codec/audio.c @@ -23,6 +23,7 @@ #include +#include #include UINT32 rdpsnd_compute_audio_time_length(AUDIO_FORMAT* format, int size) @@ -57,12 +58,12 @@ UINT32 rdpsnd_compute_audio_time_length(AUDIO_FORMAT* format, int size) } else { - fprintf(stderr, "rdpsnd_compute_audio_time_length: invalid WAVE_FORMAT_GSM610 format\n"); + DEBUG_WARN( "rdpsnd_compute_audio_time_length: invalid WAVE_FORMAT_GSM610 format\n"); } } else { - fprintf(stderr, "rdpsnd_compute_audio_time_length: unknown format %d\n", format->wFormatTag); + DEBUG_WARN( "rdpsnd_compute_audio_time_length: unknown format %d\n", format->wFormatTag); } } @@ -109,7 +110,7 @@ char* rdpsnd_get_audio_tag_string(UINT16 wFormatTag) void rdpsnd_print_audio_format(AUDIO_FORMAT* format) { - fprintf(stderr, "%s:\t wFormatTag: 0x%04X nChannels: %d nSamplesPerSec: %d nAvgBytesPerSec: %d " + DEBUG_WARN( "%s:\t wFormatTag: 0x%04X nChannels: %d nSamplesPerSec: %d nAvgBytesPerSec: %d " "nBlockAlign: %d wBitsPerSample: %d cbSize: %d\n", rdpsnd_get_audio_tag_string(format->wFormatTag), format->wFormatTag, format->nChannels, format->nSamplesPerSec, format->nAvgBytesPerSec, @@ -123,17 +124,17 @@ void rdpsnd_print_audio_formats(AUDIO_FORMAT* formats, UINT16 count) if (formats) { - fprintf(stderr, "AUDIO_FORMATS (%d) =\n{\n", count); + DEBUG_WARN( "AUDIO_FORMATS (%d) =\n{\n", count); for (index = 0; index < (int) count; index++) { format = &formats[index]; - fprintf(stderr, "\t"); + DEBUG_WARN( "\t"); rdpsnd_print_audio_format(format); } - fprintf(stderr, "}\n"); + DEBUG_WARN( "}\n"); } } diff --git a/libfreerdp/codec/clear.c b/libfreerdp/codec/clear.c index ed7ada5d7..4b93e4241 100644 --- a/libfreerdp/codec/clear.c +++ b/libfreerdp/codec/clear.c @@ -163,7 +163,7 @@ int clear_decompress(CLEAR_CONTEXT* clear, BYTE* pSrcData, UINT32 SrcSize, subcodecByteCount = *((UINT32*) &pSrcData[offset + 8]); offset += 12; - //printf("residualByteCount: %d bandsByteCount: %d subcodecByteCount: %d\n", + //DEBUG_MSG("residualByteCount: %d bandsByteCount: %d subcodecByteCount: %d\n", // residualByteCount, bandsByteCount, subcodecByteCount); if (residualByteCount > 0) @@ -528,7 +528,7 @@ int clear_decompress(CLEAR_CONTEXT* clear, BYTE* pSrcData, UINT32 SrcSize, subcodecId = subcodecs[suboffset + 12]; suboffset += 13; - //printf("bitmapDataByteCount: %d subcodecByteCount: %d suboffset: %d subCodecId: %d\n", + //DEBUG_MSG("bitmapDataByteCount: %d subcodecByteCount: %d suboffset: %d subCodecId: %d\n", // bitmapDataByteCount, subcodecByteCount, suboffset, subcodecId); if ((subcodecByteCount - suboffset) < bitmapDataByteCount) diff --git a/libfreerdp/codec/h264.c b/libfreerdp/codec/h264.c index 3ec637ebe..48f6aaf83 100644 --- a/libfreerdp/codec/h264.c +++ b/libfreerdp/codec/h264.c @@ -174,7 +174,7 @@ int h264_decompress(H264_CONTEXT* h264, BYTE* pSrcData, UINT32 SrcSize, return -1; #if 0 - printf("h264_decompress: pSrcData=%p, SrcSize=%u, pDstData=%p, DstFormat=%lx, nDstStep=%d, nXDst=%d, nYDst=%d, nWidth=%d, nHeight=%d)\n", + DEBUG_MSG("h264_decompress: pSrcData=%p, SrcSize=%u, pDstData=%p, DstFormat=%lx, nDstStep=%d, nXDst=%d, nYDst=%d, nWidth=%d, nHeight=%d)\n", pSrcData, SrcSize, *ppDstData, DstFormat, nDstStep, nXDst, nYDst, nWidth, nHeight); #endif @@ -217,7 +217,7 @@ int h264_decompress(H264_CONTEXT* h264, BYTE* pSrcData, UINT32 SrcSize, pSystemBuffer = &sBufferInfo.UsrData.sSystemBuffer; #if 0 - printf("h264_decompress: state=%u, pYUVData=[%p,%p,%p], bufferStatus=%d, width=%d, height=%d, format=%d, stride=[%d,%d]\n", + DEBUG_MSG("h264_decompress: state=%u, pYUVData=[%p,%p,%p], bufferStatus=%d, width=%d, height=%d, format=%d, stride=[%d,%d]\n", state, pYUVData[0], pYUVData[1], pYUVData[2], sBufferInfo.iBufferStatus, pSystemBuffer->iWidth, pSystemBuffer->iHeight, pSystemBuffer->iFormat, pSystemBuffer->iStride[0], pSystemBuffer->iStride[1]); @@ -311,7 +311,7 @@ H264_CONTEXT* h264_context_new(BOOL Compressor) if (!h264->pDecoder) { - printf("Failed to create OpenH264 decoder\n"); + DEBUG_MSG("Failed to create OpenH264 decoder\n"); goto EXCEPTION; } @@ -320,14 +320,14 @@ H264_CONTEXT* h264_context_new(BOOL Compressor) status = (*h264->pDecoder)->Initialize(h264->pDecoder, &sDecParam); if (status != 0) { - printf("Failed to initialize OpenH264 decoder (status=%ld)\n", status); + DEBUG_MSG("Failed to initialize OpenH264 decoder (status=%ld)\n", status); goto EXCEPTION; } status = (*h264->pDecoder)->SetOption(h264->pDecoder, DECODER_OPTION_DATAFORMAT, &videoFormat); if (status != 0) { - printf("Failed to set data format option on OpenH264 decoder (status=%ld)\n", status); + DEBUG_MSG("Failed to set data format option on OpenH264 decoder (status=%ld)\n", status); } } #endif diff --git a/libfreerdp/codec/mppc.c b/libfreerdp/codec/mppc.c index 410277f0e..89c18db42 100644 --- a/libfreerdp/codec/mppc.c +++ b/libfreerdp/codec/mppc.c @@ -413,7 +413,7 @@ int mppc_decompress(MPPC_CONTEXT* mppc, BYTE* pSrcData, UINT32 SrcSize, BYTE** p } #ifdef DEBUG_MPPC - printf("<%d,%d>\n", (int) CopyOffset, (int) LengthOfMatch); + DEBUG_MSG("<%d,%d>\n", (int) CopyOffset, (int) LengthOfMatch); #endif SrcPtr = HistoryPtr - CopyOffset; @@ -555,7 +555,7 @@ int mppc_compress(MPPC_CONTEXT* mppc, BYTE* pSrcData, UINT32 SrcSize, BYTE** ppD accumulator = Sym1; #ifdef DEBUG_MPPC - printf("%c", accumulator); + DEBUG_MSG("%c", accumulator); #endif if (accumulator < 0x80) @@ -589,7 +589,7 @@ int mppc_compress(MPPC_CONTEXT* mppc, BYTE* pSrcData, UINT32 SrcSize, BYTE** ppD } #ifdef DEBUG_MPPC - printf("<%d,%d>", (int) CopyOffset, (int) LengthOfMatch); + DEBUG_MSG("<%d,%d>", (int) CopyOffset, (int) LengthOfMatch); #endif /* Encode CopyOffset */ @@ -764,7 +764,7 @@ int mppc_compress(MPPC_CONTEXT* mppc, BYTE* pSrcData, UINT32 SrcSize, BYTE** ppD accumulator = *pSrcPtr; #ifdef DEBUG_MPPC - printf("%c", accumulator); + DEBUG_MSG("%c", accumulator); #endif if (accumulator < 0x80) @@ -799,7 +799,7 @@ int mppc_compress(MPPC_CONTEXT* mppc, BYTE* pSrcData, UINT32 SrcSize, BYTE** ppD mppc->HistoryOffset = HistoryPtr - HistoryBuffer; #ifdef DEBUG_MPPC - printf("\n"); + DEBUG_MSG("\n"); #endif return 1; diff --git a/libfreerdp/codec/ncrush.c b/libfreerdp/codec/ncrush.c index e57ecf259..f8faab292 100644 --- a/libfreerdp/codec/ncrush.c +++ b/libfreerdp/codec/ncrush.c @@ -25,6 +25,7 @@ #include #include +#include #include UINT16 HuffTableLEC[8192] = @@ -1847,7 +1848,7 @@ int ncrush_decompress(NCRUSH_CONTEXT* ncrush, BYTE* pSrcData, UINT32 SrcSize, BY if (HistoryPtr >= HistoryBufferEnd) { - fprintf(stderr, "ncrush_decompress error: HistoryPtr (%p) >= HistoryBufferEnd (%p)\n", + DEBUG_WARN( "ncrush_decompress error: HistoryPtr (%p) >= HistoryBufferEnd (%p)\n", HistoryPtr, HistoryBufferEnd); return -1003; } @@ -2021,7 +2022,7 @@ int ncrush_decompress(NCRUSH_CONTEXT* ncrush, BYTE* pSrcData, UINT32 SrcSize, BY if (ncrush->HistoryBufferFence != 0xABABABAB) { - fprintf(stderr, "NCrushDecompress: history buffer fence was overwritten, potential buffer overflow detected!\n"); + DEBUG_WARN( "NCrushDecompress: history buffer fence was overwritten, potential buffer overflow detected!\n"); return -1007; } @@ -2695,7 +2696,7 @@ NCRUSH_CONTEXT* ncrush_context_new(BOOL Compressor) ncrush->HistoryPtr = &(ncrush->HistoryBuffer[ncrush->HistoryOffset]); if (ncrush_generate_tables(ncrush) < 0) - printf("ncrush_context_new: failed to initialize tables\n"); + DEBUG_MSG("ncrush_context_new: failed to initialize tables\n"); ncrush_context_reset(ncrush, FALSE); } diff --git a/libfreerdp/codec/planar.c b/libfreerdp/codec/planar.c index 2777460b7..a48795a21 100644 --- a/libfreerdp/codec/planar.c +++ b/libfreerdp/codec/planar.c @@ -24,6 +24,7 @@ #include #include +#include #include #include @@ -75,7 +76,7 @@ static int planar_decompress_plane_rle(BYTE* pSrcData, UINT32 SrcSize, BYTE* pDs if ((srcp - pSrcData) > SrcSize) { - fprintf(stderr, "planar_decompress_plane_rle: error reading input buffer\n"); + DEBUG_WARN( "planar_decompress_plane_rle: error reading input buffer\n"); return -1; } @@ -95,7 +96,7 @@ static int planar_decompress_plane_rle(BYTE* pSrcData, UINT32 SrcSize, BYTE* pDs if (((dstp + (cRawBytes + nRunLength)) - currentScanline) > nWidth * 4) { - fprintf(stderr, "planar_decompress_plane_rle: too many pixels in scanline\n"); + DEBUG_WARN( "planar_decompress_plane_rle: too many pixels in scanline\n"); return -1; } @@ -335,7 +336,7 @@ int planar_decompress(BITMAP_PLANAR_CONTEXT* planar, BYTE* pSrcData, UINT32 SrcS { static BOOL been_warned = FALSE; if (!been_warned) - fprintf(stderr, "Chroma-Subsampling is not implemented.\n"); + DEBUG_WARN( "Chroma-Subsampling is not implemented.\n"); been_warned = TRUE; } else @@ -781,7 +782,7 @@ BYTE* freerdp_bitmap_compress_planar(BITMAP_PLANAR_CONTEXT* context, BYTE* data, context->rlePlanes[3] = &context->rlePlanesBuffer[offset]; offset += dstSizes[3]; - //printf("R: [%d/%d] G: [%d/%d] B: [%d/%d]\n", + //DEBUG_MSG("R: [%d/%d] G: [%d/%d] B: [%d/%d]\n", // dstSizes[1], planeSize, dstSizes[2], planeSize, dstSizes[3], planeSize); } } diff --git a/libfreerdp/codec/region.c b/libfreerdp/codec/region.c index b8a24e136..b2afb0de5 100644 --- a/libfreerdp/codec/region.c +++ b/libfreerdp/codec/region.c @@ -19,6 +19,7 @@ #include #include +#include #include /* @@ -219,20 +220,20 @@ void region16_print(const REGION16 *region) int currentBandY = -1; rects = region16_rects(region, &nbRects); - fprintf(stderr, "nrects=%d", nbRects); + DEBUG_WARN( "nrects=%d", nbRects); for (i = 0; i < nbRects; i++, rects++) { if (rects->top != currentBandY) { currentBandY = rects->top; - fprintf(stderr, "\nband %d: ", currentBandY); + DEBUG_WARN( "\nband %d: ", currentBandY); } - fprintf(stderr, "(%d,%d-%d,%d)", rects->left, rects->top, rects->right, rects->bottom); + DEBUG_WARN( "(%d,%d-%d,%d)", rects->left, rects->top, rects->right, rects->bottom); } - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); } void region16_copy_band_with_union(RECTANGLE_16 *dst, diff --git a/libfreerdp/codec/rfx.c b/libfreerdp/codec/rfx.c index 9d8403510..ecfd09f8e 100644 --- a/libfreerdp/codec/rfx.c +++ b/libfreerdp/codec/rfx.c @@ -378,7 +378,7 @@ void rfx_context_free(RFX_CONTEXT* context) free(priv->tileWorkParams); #ifdef WITH_PROFILER - fprintf(stderr, "\nWARNING: Profiling results probably unusable with multithreaded RemoteFX codec!\n"); + DEBUG_WARN( "\nWARNING: Profiling results probably unusable with multithreaded RemoteFX codec!\n"); #endif } @@ -1428,7 +1428,7 @@ out_clean_tiles: free(message->tiles); region16_uninit(&tilesRegion); out_free_message: - fprintf(stderr, "remoteFx error\n"); + DEBUG_WARN( "remoteFx error\n"); region16_uninit(&rectsRegion); free(message); return 0; diff --git a/libfreerdp/codec/xcrush.c b/libfreerdp/codec/xcrush.c index e32285d71..cc7142d24 100644 --- a/libfreerdp/codec/xcrush.c +++ b/libfreerdp/codec/xcrush.c @@ -990,7 +990,7 @@ int xcrush_compress(XCRUSH_CONTEXT* xcrush, BYTE* pSrcData, UINT32 SrcSize, BYTE OriginalData[1] = (BYTE) Level2ComprFlags; #if 0 - printf("XCrushCompress: Level1ComprFlags: %s Level2ComprFlags: %s\n", + DEBUG_MSG("XCrushCompress: Level1ComprFlags: %s Level2ComprFlags: %s\n", xcrush_get_level_1_compression_flags_string(Level1ComprFlags), xcrush_get_level_2_compression_flags_string(Level2ComprFlags)); #endif diff --git a/libfreerdp/common/assistance.c b/libfreerdp/common/assistance.c index efeadaf08..cff584f1b 100644 --- a/libfreerdp/common/assistance.c +++ b/libfreerdp/common/assistance.c @@ -34,6 +34,7 @@ #include #include +#include #include #include @@ -426,7 +427,7 @@ BYTE* freerdp_assistance_encrypt_pass_stub(const char* password, const char* pas if (!status) { - fprintf(stderr, "EVP_CipherInit_ex failure\n"); + DEBUG_WARN( "EVP_CipherInit_ex failure\n"); return NULL; } @@ -434,7 +435,7 @@ BYTE* freerdp_assistance_encrypt_pass_stub(const char* password, const char* pas if (!status) { - fprintf(stderr, "EVP_CipherInit_ex failure\n"); + DEBUG_WARN( "EVP_CipherInit_ex failure\n"); return NULL; } @@ -445,7 +446,7 @@ BYTE* freerdp_assistance_encrypt_pass_stub(const char* password, const char* pas if (!status) { - fprintf(stderr, "EVP_CipherUpdate failure\n"); + DEBUG_WARN( "EVP_CipherUpdate failure\n"); return NULL; } @@ -453,7 +454,7 @@ BYTE* freerdp_assistance_encrypt_pass_stub(const char* password, const char* pas if (!status) { - fprintf(stderr, "EVP_CipherFinal_ex failure\n"); + DEBUG_WARN( "EVP_CipherFinal_ex failure\n"); return NULL; } @@ -534,7 +535,7 @@ int freerdp_assistance_decrypt2(rdpAssistanceFile* file, const char* password) if (status != 1) { - fprintf(stderr, "EVP_DecryptFinal_ex failure\n"); + DEBUG_WARN( "EVP_DecryptFinal_ex failure\n"); return -1; } @@ -557,7 +558,7 @@ int freerdp_assistance_decrypt2(rdpAssistanceFile* file, const char* password) status = freerdp_assistance_parse_connection_string2(file); - printf("freerdp_assistance_parse_connection_string2: %d\n", status); + DEBUG_MSG("freerdp_assistance_parse_connection_string2: %d\n", status); return 1; } @@ -873,7 +874,7 @@ int freerdp_assistance_parse_file_buffer(rdpAssistanceFile* file, const char* bu if (status < 0) { - fprintf(stderr, "freerdp_assistance_parse_connection_string1 failure: %d\n", status); + DEBUG_WARN( "freerdp_assistance_parse_connection_string1 failure: %d\n", status); return -1; } diff --git a/libfreerdp/common/settings.c b/libfreerdp/common/settings.c index 05f672da5..d7b54b40f 100644 --- a/libfreerdp/common/settings.c +++ b/libfreerdp/common/settings.c @@ -29,6 +29,7 @@ #include #include +#include int freerdp_addin_set_argument(ADDIN_ARGV* args, char* argument) { @@ -339,7 +340,7 @@ out_parallel_name_error: } - fprintf(stderr, "%s: unknown device type %d\n", __FUNCTION__, device->Type); + DEBUG_WARN( "%s: unknown device type %d\n", __FUNCTION__, device->Type); return NULL; } @@ -1028,7 +1029,7 @@ BOOL freerdp_get_param_bool(rdpSettings* settings, int id) return settings->RedirectClipboard; default: - fprintf(stderr, "freerdp_get_param_bool: unknown id: %d\n", id); + DEBUG_WARN( "freerdp_get_param_bool: unknown id: %d\n", id); return -1; } } @@ -1534,7 +1535,7 @@ int freerdp_set_param_bool(rdpSettings* settings, int id, BOOL param) break; default: - fprintf(stderr, "freerdp_set_param_bool: unknown id %d (param = %d)\n", id, param); + DEBUG_WARN( "freerdp_set_param_bool: unknown id %d (param = %d)\n", id, param); return -1; } @@ -1555,7 +1556,7 @@ int freerdp_get_param_int(rdpSettings* settings, int id) return settings->YPan; default: - fprintf(stderr, "freerdp_get_param_int: unknown id: %d\n", id); + DEBUG_WARN( "freerdp_get_param_int: unknown id: %d\n", id); return 0; } } @@ -1573,7 +1574,7 @@ int freerdp_set_param_int(rdpSettings* settings, int id, int param) break; default: - fprintf(stderr, "freerdp_set_param_int: unknown id %d (param = %d)\n", id, param); + DEBUG_WARN( "freerdp_set_param_int: unknown id %d (param = %d)\n", id, param); return -1; } @@ -1809,7 +1810,7 @@ UINT32 freerdp_get_param_uint32(rdpSettings* settings, int id) return settings->DynamicChannelArraySize; default: - fprintf(stderr, "freerdp_get_param_uint32: unknown id: %d\n", id); + DEBUG_WARN( "freerdp_get_param_uint32: unknown id: %d\n", id); return 0; } } @@ -2115,7 +2116,7 @@ int freerdp_set_param_uint32(rdpSettings* settings, int id, UINT32 param) break; default: - fprintf(stderr, "freerdp_set_param_uint32: unknown id %d (param = %u)\n", id, param); + DEBUG_WARN( "freerdp_set_param_uint32: unknown id %d (param = %u)\n", id, param); return -1; } @@ -2133,7 +2134,7 @@ UINT64 freerdp_get_param_uint64(rdpSettings* settings, int id) return settings->ParentWindowId; default: - fprintf(stderr, "freerdp_get_param_uint64: unknown id: %d\n", id); + DEBUG_WARN( "freerdp_get_param_uint64: unknown id: %d\n", id); return -1; } } @@ -2147,7 +2148,7 @@ int freerdp_set_param_uint64(rdpSettings* settings, int id, UINT64 param) break; default: - fprintf(stderr, "freerdp_set_param_uint64: unknown id %d (param = %u)\n", id, (UINT32) param); + DEBUG_WARN( "freerdp_set_param_uint64: unknown id %d (param = %u)\n", id, (UINT32) param); return -1; } @@ -2297,7 +2298,7 @@ char* freerdp_get_param_string(rdpSettings* settings, int id) return settings->DrivesToRedirect; default: - fprintf(stderr, "freerdp_get_param_string: unknown id: %d\n", id); + DEBUG_WARN( "freerdp_get_param_string: unknown id: %d\n", id); return NULL; } } @@ -2532,7 +2533,7 @@ int freerdp_set_param_string(rdpSettings* settings, int id, const char* param) break; default: - fprintf(stderr, "freerdp_set_param_string: unknown id %d (param = %s)\n", id, param); + DEBUG_WARN( "freerdp_set_param_string: unknown id %d (param = %s)\n", id, param); return -1; } @@ -2550,7 +2551,7 @@ double freerdp_get_param_double(rdpSettings* settings, int id) return settings->ScalingFactor; default: - fprintf(stderr, "freerdp_get_param_double: unknown id: %d\n", id); + DEBUG_WARN( "freerdp_get_param_double: unknown id: %d\n", id); return 0; } } diff --git a/libfreerdp/core/bulk.c b/libfreerdp/core/bulk.c index c79fbc4d9..7569d94ed 100644 --- a/libfreerdp/core/bulk.c +++ b/libfreerdp/core/bulk.c @@ -85,25 +85,25 @@ int bulk_compress_validate(rdpBulk* bulk, BYTE* pSrcData, UINT32 SrcSize, BYTE** if (status < 0) { - printf("compression/decompression failure\n"); + DEBUG_MSG("compression/decompression failure\n"); return status; } if (_DstSize != SrcSize) { - printf("compression/decompression size mismatch: Actual: %d, Expected: %d\n", _DstSize, SrcSize); + DEBUG_MSG("compression/decompression size mismatch: Actual: %d, Expected: %d\n", _DstSize, SrcSize); return -1; } if (memcmp(_pDstData, pSrcData, SrcSize) != 0) { - printf("compression/decompression input/output mismatch! flags: 0x%04X\n", _Flags); + DEBUG_MSG("compression/decompression input/output mismatch! flags: 0x%04X\n", _Flags); #if 1 - printf("Actual:\n"); + DEBUG_MSG("Actual:\n"); winpr_HexDump(_pDstData, SrcSize); - printf("Expected:\n"); + DEBUG_MSG("Expected:\n"); winpr_HexDump(pSrcData, SrcSize); #endif @@ -170,7 +170,7 @@ int bulk_decompress(rdpBulk* bulk, BYTE* pSrcData, UINT32 SrcSize, BYTE** ppDstD #ifdef WITH_BULK_DEBUG { - printf("Decompress Type: %d Flags: %s (0x%04X) Compression Ratio: %f (%d / %d), Total: %f (%u / %u)\n", + DEBUG_MSG("Decompress Type: %d Flags: %s (0x%04X) Compression Ratio: %f (%d / %d), Total: %f (%u / %u)\n", type, bulk_get_compression_flags_string(flags), flags, CompressionRatio, CompressedBytes, UncompressedBytes, metrics->TotalCompressionRatio, (UINT32) metrics->TotalCompressedBytes, @@ -180,7 +180,7 @@ int bulk_decompress(rdpBulk* bulk, BYTE* pSrcData, UINT32 SrcSize, BYTE** ppDstD } else { - fprintf(stderr, "Decompression failure!\n"); + DEBUG_WARN( "Decompression failure!\n"); } return status; @@ -237,7 +237,7 @@ int bulk_compress(rdpBulk* bulk, BYTE* pSrcData, UINT32 SrcSize, BYTE** ppDstDat #ifdef WITH_BULK_DEBUG { - printf("Compress Type: %d Flags: %s (0x%04X) Compression Ratio: %f (%d / %d), Total: %f (%u / %u)\n", + DEBUG_MSG("Compress Type: %d Flags: %s (0x%04X) Compression Ratio: %f (%d / %d), Total: %f (%u / %u)\n", bulk->CompressionLevel, bulk_get_compression_flags_string(*pFlags), *pFlags, CompressionRatio, CompressedBytes, UncompressedBytes, metrics->TotalCompressionRatio, (UINT32) metrics->TotalCompressedBytes, diff --git a/libfreerdp/core/capabilities.c b/libfreerdp/core/capabilities.c index c3725353d..168f05d8e 100644 --- a/libfreerdp/core/capabilities.c +++ b/libfreerdp/core/capabilities.c @@ -262,7 +262,7 @@ BOOL rdp_print_general_capability_set(wStream* s, UINT16 length) if (length < 24) return FALSE; - fprintf(stderr, "GeneralCapabilitySet (length %d):\n", length); + DEBUG_WARN( "GeneralCapabilitySet (length %d):\n", length); Stream_Read_UINT16(s, osMajorType); /* osMajorType (2 bytes) */ Stream_Read_UINT16(s, osMinorType); /* osMinorType (2 bytes) */ @@ -276,17 +276,17 @@ BOOL rdp_print_general_capability_set(wStream* s, UINT16 length) Stream_Read_UINT8(s, refreshRectSupport); /* refreshRectSupport (1 byte) */ Stream_Read_UINT8(s, suppressOutputSupport); /* suppressOutputSupport (1 byte) */ - fprintf(stderr, "\tosMajorType: 0x%04X\n", osMajorType); - fprintf(stderr, "\tosMinorType: 0x%04X\n", osMinorType); - fprintf(stderr, "\tprotocolVersion: 0x%04X\n", protocolVersion); - fprintf(stderr, "\tpad2OctetsA: 0x%04X\n", pad2OctetsA); - fprintf(stderr, "\tgeneralCompressionTypes: 0x%04X\n", generalCompressionTypes); - fprintf(stderr, "\textraFlags: 0x%04X\n", extraFlags); - fprintf(stderr, "\tupdateCapabilityFlag: 0x%04X\n", updateCapabilityFlag); - fprintf(stderr, "\tremoteUnshareFlag: 0x%04X\n", remoteUnshareFlag); - fprintf(stderr, "\tgeneralCompressionLevel: 0x%04X\n", generalCompressionLevel); - fprintf(stderr, "\trefreshRectSupport: 0x%02X\n", refreshRectSupport); - fprintf(stderr, "\tsuppressOutputSupport: 0x%02X\n", suppressOutputSupport); + DEBUG_WARN( "\tosMajorType: 0x%04X\n", osMajorType); + DEBUG_WARN( "\tosMinorType: 0x%04X\n", osMinorType); + DEBUG_WARN( "\tprotocolVersion: 0x%04X\n", protocolVersion); + DEBUG_WARN( "\tpad2OctetsA: 0x%04X\n", pad2OctetsA); + DEBUG_WARN( "\tgeneralCompressionTypes: 0x%04X\n", generalCompressionTypes); + DEBUG_WARN( "\textraFlags: 0x%04X\n", extraFlags); + DEBUG_WARN( "\tupdateCapabilityFlag: 0x%04X\n", updateCapabilityFlag); + DEBUG_WARN( "\tremoteUnshareFlag: 0x%04X\n", remoteUnshareFlag); + DEBUG_WARN( "\tgeneralCompressionLevel: 0x%04X\n", generalCompressionLevel); + DEBUG_WARN( "\trefreshRectSupport: 0x%02X\n", refreshRectSupport); + DEBUG_WARN( "\tsuppressOutputSupport: 0x%02X\n", suppressOutputSupport); return TRUE; } @@ -414,7 +414,7 @@ BOOL rdp_print_bitmap_capability_set(wStream* s, UINT16 length) UINT16 multipleRectangleSupport; UINT16 pad2OctetsB; - fprintf(stderr, "BitmapCapabilitySet (length %d):\n", length); + DEBUG_WARN( "BitmapCapabilitySet (length %d):\n", length); if (length < 28) return FALSE; @@ -433,19 +433,19 @@ BOOL rdp_print_bitmap_capability_set(wStream* s, UINT16 length) Stream_Read_UINT16(s, multipleRectangleSupport); /* multipleRectangleSupport (2 bytes) */ Stream_Read_UINT16(s, pad2OctetsB); /* pad2OctetsB (2 bytes) */ - fprintf(stderr, "\tpreferredBitsPerPixel: 0x%04X\n", preferredBitsPerPixel); - fprintf(stderr, "\treceive1BitPerPixel: 0x%04X\n", receive1BitPerPixel); - fprintf(stderr, "\treceive4BitsPerPixel: 0x%04X\n", receive4BitsPerPixel); - fprintf(stderr, "\treceive8BitsPerPixel: 0x%04X\n", receive8BitsPerPixel); - fprintf(stderr, "\tdesktopWidth: 0x%04X\n", desktopWidth); - fprintf(stderr, "\tdesktopHeight: 0x%04X\n", desktopHeight); - fprintf(stderr, "\tpad2Octets: 0x%04X\n", pad2Octets); - fprintf(stderr, "\tdesktopResizeFlag: 0x%04X\n", desktopResizeFlag); - fprintf(stderr, "\tbitmapCompressionFlag: 0x%04X\n", bitmapCompressionFlag); - fprintf(stderr, "\thighColorFlags: 0x%02X\n", highColorFlags); - fprintf(stderr, "\tdrawingFlags: 0x%02X\n", drawingFlags); - fprintf(stderr, "\tmultipleRectangleSupport: 0x%04X\n", multipleRectangleSupport); - fprintf(stderr, "\tpad2OctetsB: 0x%04X\n", pad2OctetsB); + DEBUG_WARN( "\tpreferredBitsPerPixel: 0x%04X\n", preferredBitsPerPixel); + DEBUG_WARN( "\treceive1BitPerPixel: 0x%04X\n", receive1BitPerPixel); + DEBUG_WARN( "\treceive4BitsPerPixel: 0x%04X\n", receive4BitsPerPixel); + DEBUG_WARN( "\treceive8BitsPerPixel: 0x%04X\n", receive8BitsPerPixel); + DEBUG_WARN( "\tdesktopWidth: 0x%04X\n", desktopWidth); + DEBUG_WARN( "\tdesktopHeight: 0x%04X\n", desktopHeight); + DEBUG_WARN( "\tpad2Octets: 0x%04X\n", pad2Octets); + DEBUG_WARN( "\tdesktopResizeFlag: 0x%04X\n", desktopResizeFlag); + DEBUG_WARN( "\tbitmapCompressionFlag: 0x%04X\n", bitmapCompressionFlag); + DEBUG_WARN( "\thighColorFlags: 0x%02X\n", highColorFlags); + DEBUG_WARN( "\tdrawingFlags: 0x%02X\n", drawingFlags); + DEBUG_WARN( "\tmultipleRectangleSupport: 0x%04X\n", multipleRectangleSupport); + DEBUG_WARN( "\tpad2OctetsB: 0x%04X\n", pad2OctetsB); return TRUE; } @@ -591,7 +591,7 @@ BOOL rdp_print_order_capability_set(wStream* s, UINT16 length) UINT16 textANSICodePage; UINT16 pad2OctetsE; - fprintf(stderr, "OrderCapabilitySet (length %d):\n", length); + DEBUG_WARN( "OrderCapabilitySet (length %d):\n", length); if (length < 88) return FALSE; @@ -614,56 +614,56 @@ BOOL rdp_print_order_capability_set(wStream* s, UINT16 length) Stream_Read_UINT16(s, textANSICodePage); /* textANSICodePage (2 bytes) */ Stream_Read_UINT16(s, pad2OctetsE); /* pad2OctetsE (2 bytes) */ - fprintf(stderr, "\tpad4OctetsA: 0x%08X\n", pad4OctetsA); - fprintf(stderr, "\tdesktopSaveXGranularity: 0x%04X\n", desktopSaveXGranularity); - fprintf(stderr, "\tdesktopSaveYGranularity: 0x%04X\n", desktopSaveYGranularity); - fprintf(stderr, "\tpad2OctetsA: 0x%04X\n", pad2OctetsA); - fprintf(stderr, "\tmaximumOrderLevel: 0x%04X\n", maximumOrderLevel); - fprintf(stderr, "\tnumberFonts: 0x%04X\n", numberFonts); - fprintf(stderr, "\torderFlags: 0x%04X\n", orderFlags); + DEBUG_WARN( "\tpad4OctetsA: 0x%08X\n", pad4OctetsA); + DEBUG_WARN( "\tdesktopSaveXGranularity: 0x%04X\n", desktopSaveXGranularity); + DEBUG_WARN( "\tdesktopSaveYGranularity: 0x%04X\n", desktopSaveYGranularity); + DEBUG_WARN( "\tpad2OctetsA: 0x%04X\n", pad2OctetsA); + DEBUG_WARN( "\tmaximumOrderLevel: 0x%04X\n", maximumOrderLevel); + DEBUG_WARN( "\tnumberFonts: 0x%04X\n", numberFonts); + DEBUG_WARN( "\torderFlags: 0x%04X\n", orderFlags); - fprintf(stderr, "\torderSupport:\n"); - fprintf(stderr, "\t\tDSTBLT: %d\n", orderSupport[NEG_DSTBLT_INDEX]); - fprintf(stderr, "\t\tPATBLT: %d\n", orderSupport[NEG_PATBLT_INDEX]); - fprintf(stderr, "\t\tSCRBLT: %d\n", orderSupport[NEG_SCRBLT_INDEX]); - fprintf(stderr, "\t\tMEMBLT: %d\n", orderSupport[NEG_MEMBLT_INDEX]); - fprintf(stderr, "\t\tMEM3BLT: %d\n", orderSupport[NEG_MEM3BLT_INDEX]); - fprintf(stderr, "\t\tATEXTOUT: %d\n", orderSupport[NEG_ATEXTOUT_INDEX]); - fprintf(stderr, "\t\tAEXTTEXTOUT: %d\n", orderSupport[NEG_AEXTTEXTOUT_INDEX]); - fprintf(stderr, "\t\tDRAWNINEGRID: %d\n", orderSupport[NEG_DRAWNINEGRID_INDEX]); - fprintf(stderr, "\t\tLINETO: %d\n", orderSupport[NEG_LINETO_INDEX]); - fprintf(stderr, "\t\tMULTI_DRAWNINEGRID: %d\n", orderSupport[NEG_MULTI_DRAWNINEGRID_INDEX]); - fprintf(stderr, "\t\tOPAQUE_RECT: %d\n", orderSupport[NEG_OPAQUE_RECT_INDEX]); - fprintf(stderr, "\t\tSAVEBITMAP: %d\n", orderSupport[NEG_SAVEBITMAP_INDEX]); - fprintf(stderr, "\t\tWTEXTOUT: %d\n", orderSupport[NEG_WTEXTOUT_INDEX]); - fprintf(stderr, "\t\tMEMBLT_V2: %d\n", orderSupport[NEG_MEMBLT_V2_INDEX]); - fprintf(stderr, "\t\tMEM3BLT_V2: %d\n", orderSupport[NEG_MEM3BLT_V2_INDEX]); - fprintf(stderr, "\t\tMULTIDSTBLT: %d\n", orderSupport[NEG_MULTIDSTBLT_INDEX]); - fprintf(stderr, "\t\tMULTIPATBLT: %d\n", orderSupport[NEG_MULTIPATBLT_INDEX]); - fprintf(stderr, "\t\tMULTISCRBLT: %d\n", orderSupport[NEG_MULTISCRBLT_INDEX]); - fprintf(stderr, "\t\tMULTIOPAQUERECT: %d\n", orderSupport[NEG_MULTIOPAQUERECT_INDEX]); - fprintf(stderr, "\t\tFAST_INDEX: %d\n", orderSupport[NEG_FAST_INDEX_INDEX]); - fprintf(stderr, "\t\tPOLYGON_SC: %d\n", orderSupport[NEG_POLYGON_SC_INDEX]); - fprintf(stderr, "\t\tPOLYGON_CB: %d\n", orderSupport[NEG_POLYGON_CB_INDEX]); - fprintf(stderr, "\t\tPOLYLINE: %d\n", orderSupport[NEG_POLYLINE_INDEX]); - fprintf(stderr, "\t\tUNUSED23: %d\n", orderSupport[NEG_UNUSED23_INDEX]); - fprintf(stderr, "\t\tFAST_GLYPH: %d\n", orderSupport[NEG_FAST_GLYPH_INDEX]); - fprintf(stderr, "\t\tELLIPSE_SC: %d\n", orderSupport[NEG_ELLIPSE_SC_INDEX]); - fprintf(stderr, "\t\tELLIPSE_CB: %d\n", orderSupport[NEG_ELLIPSE_CB_INDEX]); - fprintf(stderr, "\t\tGLYPH_INDEX: %d\n", orderSupport[NEG_GLYPH_INDEX_INDEX]); - fprintf(stderr, "\t\tGLYPH_WEXTTEXTOUT: %d\n", orderSupport[NEG_GLYPH_WEXTTEXTOUT_INDEX]); - fprintf(stderr, "\t\tGLYPH_WLONGTEXTOUT: %d\n", orderSupport[NEG_GLYPH_WLONGTEXTOUT_INDEX]); - fprintf(stderr, "\t\tGLYPH_WLONGEXTTEXTOUT: %d\n", orderSupport[NEG_GLYPH_WLONGEXTTEXTOUT_INDEX]); - fprintf(stderr, "\t\tUNUSED31: %d\n", orderSupport[NEG_UNUSED31_INDEX]); + DEBUG_WARN( "\torderSupport:\n"); + DEBUG_WARN( "\t\tDSTBLT: %d\n", orderSupport[NEG_DSTBLT_INDEX]); + DEBUG_WARN( "\t\tPATBLT: %d\n", orderSupport[NEG_PATBLT_INDEX]); + DEBUG_WARN( "\t\tSCRBLT: %d\n", orderSupport[NEG_SCRBLT_INDEX]); + DEBUG_WARN( "\t\tMEMBLT: %d\n", orderSupport[NEG_MEMBLT_INDEX]); + DEBUG_WARN( "\t\tMEM3BLT: %d\n", orderSupport[NEG_MEM3BLT_INDEX]); + DEBUG_WARN( "\t\tATEXTOUT: %d\n", orderSupport[NEG_ATEXTOUT_INDEX]); + DEBUG_WARN( "\t\tAEXTTEXTOUT: %d\n", orderSupport[NEG_AEXTTEXTOUT_INDEX]); + DEBUG_WARN( "\t\tDRAWNINEGRID: %d\n", orderSupport[NEG_DRAWNINEGRID_INDEX]); + DEBUG_WARN( "\t\tLINETO: %d\n", orderSupport[NEG_LINETO_INDEX]); + DEBUG_WARN( "\t\tMULTI_DRAWNINEGRID: %d\n", orderSupport[NEG_MULTI_DRAWNINEGRID_INDEX]); + DEBUG_WARN( "\t\tOPAQUE_RECT: %d\n", orderSupport[NEG_OPAQUE_RECT_INDEX]); + DEBUG_WARN( "\t\tSAVEBITMAP: %d\n", orderSupport[NEG_SAVEBITMAP_INDEX]); + DEBUG_WARN( "\t\tWTEXTOUT: %d\n", orderSupport[NEG_WTEXTOUT_INDEX]); + DEBUG_WARN( "\t\tMEMBLT_V2: %d\n", orderSupport[NEG_MEMBLT_V2_INDEX]); + DEBUG_WARN( "\t\tMEM3BLT_V2: %d\n", orderSupport[NEG_MEM3BLT_V2_INDEX]); + DEBUG_WARN( "\t\tMULTIDSTBLT: %d\n", orderSupport[NEG_MULTIDSTBLT_INDEX]); + DEBUG_WARN( "\t\tMULTIPATBLT: %d\n", orderSupport[NEG_MULTIPATBLT_INDEX]); + DEBUG_WARN( "\t\tMULTISCRBLT: %d\n", orderSupport[NEG_MULTISCRBLT_INDEX]); + DEBUG_WARN( "\t\tMULTIOPAQUERECT: %d\n", orderSupport[NEG_MULTIOPAQUERECT_INDEX]); + DEBUG_WARN( "\t\tFAST_INDEX: %d\n", orderSupport[NEG_FAST_INDEX_INDEX]); + DEBUG_WARN( "\t\tPOLYGON_SC: %d\n", orderSupport[NEG_POLYGON_SC_INDEX]); + DEBUG_WARN( "\t\tPOLYGON_CB: %d\n", orderSupport[NEG_POLYGON_CB_INDEX]); + DEBUG_WARN( "\t\tPOLYLINE: %d\n", orderSupport[NEG_POLYLINE_INDEX]); + DEBUG_WARN( "\t\tUNUSED23: %d\n", orderSupport[NEG_UNUSED23_INDEX]); + DEBUG_WARN( "\t\tFAST_GLYPH: %d\n", orderSupport[NEG_FAST_GLYPH_INDEX]); + DEBUG_WARN( "\t\tELLIPSE_SC: %d\n", orderSupport[NEG_ELLIPSE_SC_INDEX]); + DEBUG_WARN( "\t\tELLIPSE_CB: %d\n", orderSupport[NEG_ELLIPSE_CB_INDEX]); + DEBUG_WARN( "\t\tGLYPH_INDEX: %d\n", orderSupport[NEG_GLYPH_INDEX_INDEX]); + DEBUG_WARN( "\t\tGLYPH_WEXTTEXTOUT: %d\n", orderSupport[NEG_GLYPH_WEXTTEXTOUT_INDEX]); + DEBUG_WARN( "\t\tGLYPH_WLONGTEXTOUT: %d\n", orderSupport[NEG_GLYPH_WLONGTEXTOUT_INDEX]); + DEBUG_WARN( "\t\tGLYPH_WLONGEXTTEXTOUT: %d\n", orderSupport[NEG_GLYPH_WLONGEXTTEXTOUT_INDEX]); + DEBUG_WARN( "\t\tUNUSED31: %d\n", orderSupport[NEG_UNUSED31_INDEX]); - fprintf(stderr, "\ttextFlags: 0x%04X\n", textFlags); - fprintf(stderr, "\torderSupportExFlags: 0x%04X\n", orderSupportExFlags); - fprintf(stderr, "\tpad4OctetsB: 0x%08X\n", pad4OctetsB); - fprintf(stderr, "\tdesktopSaveSize: 0x%08X\n", desktopSaveSize); - fprintf(stderr, "\tpad2OctetsC: 0x%04X\n", pad2OctetsC); - fprintf(stderr, "\tpad2OctetsD: 0x%04X\n", pad2OctetsD); - fprintf(stderr, "\ttextANSICodePage: 0x%04X\n", textANSICodePage); - fprintf(stderr, "\tpad2OctetsE: 0x%04X\n", pad2OctetsE); + DEBUG_WARN( "\ttextFlags: 0x%04X\n", textFlags); + DEBUG_WARN( "\torderSupportExFlags: 0x%04X\n", orderSupportExFlags); + DEBUG_WARN( "\tpad4OctetsB: 0x%08X\n", pad4OctetsB); + DEBUG_WARN( "\tdesktopSaveSize: 0x%08X\n", desktopSaveSize); + DEBUG_WARN( "\tpad2OctetsC: 0x%04X\n", pad2OctetsC); + DEBUG_WARN( "\tpad2OctetsD: 0x%04X\n", pad2OctetsD); + DEBUG_WARN( "\ttextANSICodePage: 0x%04X\n", textANSICodePage); + DEBUG_WARN( "\tpad2OctetsE: 0x%04X\n", pad2OctetsE); return TRUE; } @@ -749,7 +749,7 @@ BOOL rdp_print_bitmap_cache_capability_set(wStream* s, UINT16 length) UINT16 Cache2Entries; UINT16 Cache2MaximumCellSize; - fprintf(stderr, "BitmapCacheCapabilitySet (length %d):\n", length); + DEBUG_WARN( "BitmapCacheCapabilitySet (length %d):\n", length); if (length < 40) return FALSE; @@ -767,18 +767,18 @@ BOOL rdp_print_bitmap_cache_capability_set(wStream* s, UINT16 length) Stream_Read_UINT16(s, Cache2Entries); /* Cache2Entries (2 bytes) */ Stream_Read_UINT16(s, Cache2MaximumCellSize); /* Cache2MaximumCellSize (2 bytes) */ - fprintf(stderr, "\tpad1: 0x%08X\n", pad1); - fprintf(stderr, "\tpad2: 0x%08X\n", pad2); - fprintf(stderr, "\tpad3: 0x%08X\n", pad3); - fprintf(stderr, "\tpad4: 0x%08X\n", pad4); - fprintf(stderr, "\tpad5: 0x%08X\n", pad5); - fprintf(stderr, "\tpad6: 0x%08X\n", pad6); - fprintf(stderr, "\tCache0Entries: 0x%04X\n", Cache0Entries); - fprintf(stderr, "\tCache0MaximumCellSize: 0x%04X\n", Cache0MaximumCellSize); - fprintf(stderr, "\tCache1Entries: 0x%04X\n", Cache1Entries); - fprintf(stderr, "\tCache1MaximumCellSize: 0x%04X\n", Cache1MaximumCellSize); - fprintf(stderr, "\tCache2Entries: 0x%04X\n", Cache2Entries); - fprintf(stderr, "\tCache2MaximumCellSize: 0x%04X\n", Cache2MaximumCellSize); + DEBUG_WARN( "\tpad1: 0x%08X\n", pad1); + DEBUG_WARN( "\tpad2: 0x%08X\n", pad2); + DEBUG_WARN( "\tpad3: 0x%08X\n", pad3); + DEBUG_WARN( "\tpad4: 0x%08X\n", pad4); + DEBUG_WARN( "\tpad5: 0x%08X\n", pad5); + DEBUG_WARN( "\tpad6: 0x%08X\n", pad6); + DEBUG_WARN( "\tCache0Entries: 0x%04X\n", Cache0Entries); + DEBUG_WARN( "\tCache0MaximumCellSize: 0x%04X\n", Cache0MaximumCellSize); + DEBUG_WARN( "\tCache1Entries: 0x%04X\n", Cache1Entries); + DEBUG_WARN( "\tCache1MaximumCellSize: 0x%04X\n", Cache1MaximumCellSize); + DEBUG_WARN( "\tCache2Entries: 0x%04X\n", Cache2Entries); + DEBUG_WARN( "\tCache2MaximumCellSize: 0x%04X\n", Cache2MaximumCellSize); return TRUE; } @@ -834,7 +834,7 @@ BOOL rdp_print_control_capability_set(wStream* s, UINT16 length) UINT16 controlInterest; UINT16 detachInterest; - fprintf(stderr, "ControlCapabilitySet (length %d):\n", length); + DEBUG_WARN( "ControlCapabilitySet (length %d):\n", length); if (length < 12) return FALSE; @@ -844,10 +844,10 @@ BOOL rdp_print_control_capability_set(wStream* s, UINT16 length) Stream_Read_UINT16(s, controlInterest); /* controlInterest (2 bytes) */ Stream_Read_UINT16(s, detachInterest); /* detachInterest (2 bytes) */ - fprintf(stderr, "\tcontrolFlags: 0x%04X\n", controlFlags); - fprintf(stderr, "\tremoteDetachFlag: 0x%04X\n", remoteDetachFlag); - fprintf(stderr, "\tcontrolInterest: 0x%04X\n", controlInterest); - fprintf(stderr, "\tdetachInterest: 0x%04X\n", detachInterest); + DEBUG_WARN( "\tcontrolFlags: 0x%04X\n", controlFlags); + DEBUG_WARN( "\tremoteDetachFlag: 0x%04X\n", remoteDetachFlag); + DEBUG_WARN( "\tcontrolInterest: 0x%04X\n", controlInterest); + DEBUG_WARN( "\tdetachInterest: 0x%04X\n", detachInterest); return TRUE; } @@ -903,7 +903,7 @@ BOOL rdp_print_window_activation_capability_set(wStream* s, UINT16 length) UINT16 helpExtendedKeyFlag; UINT16 windowManagerKeyFlag; - fprintf(stderr, "WindowActivationCapabilitySet (length %d):\n", length); + DEBUG_WARN( "WindowActivationCapabilitySet (length %d):\n", length); if (length < 12) return FALSE; @@ -913,10 +913,10 @@ BOOL rdp_print_window_activation_capability_set(wStream* s, UINT16 length) Stream_Read_UINT16(s, helpExtendedKeyFlag); /* helpExtendedKeyFlag (2 bytes) */ Stream_Read_UINT16(s, windowManagerKeyFlag); /* windowManagerKeyFlag (2 bytes) */ - fprintf(stderr, "\thelpKeyFlag: 0x%04X\n", helpKeyFlag); - fprintf(stderr, "\thelpKeyIndexFlag: 0x%04X\n", helpKeyIndexFlag); - fprintf(stderr, "\thelpExtendedKeyFlag: 0x%04X\n", helpExtendedKeyFlag); - fprintf(stderr, "\twindowManagerKeyFlag: 0x%04X\n", windowManagerKeyFlag); + DEBUG_WARN( "\thelpKeyFlag: 0x%04X\n", helpKeyFlag); + DEBUG_WARN( "\thelpKeyIndexFlag: 0x%04X\n", helpKeyIndexFlag); + DEBUG_WARN( "\thelpExtendedKeyFlag: 0x%04X\n", helpExtendedKeyFlag); + DEBUG_WARN( "\twindowManagerKeyFlag: 0x%04X\n", windowManagerKeyFlag); return TRUE; } @@ -990,15 +990,15 @@ BOOL rdp_print_pointer_capability_set(wStream* s, UINT16 length) if (length < 10) return FALSE; - fprintf(stderr, "PointerCapabilitySet (length %d):\n", length); + DEBUG_WARN( "PointerCapabilitySet (length %d):\n", length); Stream_Read_UINT16(s, colorPointerFlag); /* colorPointerFlag (2 bytes) */ Stream_Read_UINT16(s, colorPointerCacheSize); /* colorPointerCacheSize (2 bytes) */ Stream_Read_UINT16(s, pointerCacheSize); /* pointerCacheSize (2 bytes) */ - fprintf(stderr, "\tcolorPointerFlag: 0x%04X\n", colorPointerFlag); - fprintf(stderr, "\tcolorPointerCacheSize: 0x%04X\n", colorPointerCacheSize); - fprintf(stderr, "\tpointerCacheSize: 0x%04X\n", pointerCacheSize); + DEBUG_WARN( "\tcolorPointerFlag: 0x%04X\n", colorPointerFlag); + DEBUG_WARN( "\tcolorPointerCacheSize: 0x%04X\n", colorPointerCacheSize); + DEBUG_WARN( "\tpointerCacheSize: 0x%04X\n", pointerCacheSize); return TRUE; } @@ -1051,7 +1051,7 @@ BOOL rdp_print_share_capability_set(wStream* s, UINT16 length) UINT16 nodeId; UINT16 pad2Octets; - fprintf(stderr, "ShareCapabilitySet (length %d):\n", length); + DEBUG_WARN( "ShareCapabilitySet (length %d):\n", length); if (length < 8) return FALSE; @@ -1059,8 +1059,8 @@ BOOL rdp_print_share_capability_set(wStream* s, UINT16 length) Stream_Read_UINT16(s, nodeId); /* nodeId (2 bytes) */ Stream_Read_UINT16(s, pad2Octets); /* pad2Octets (2 bytes) */ - fprintf(stderr, "\tnodeId: 0x%04X\n", nodeId); - fprintf(stderr, "\tpad2Octets: 0x%04X\n", pad2Octets); + DEBUG_WARN( "\tnodeId: 0x%04X\n", nodeId); + DEBUG_WARN( "\tpad2Octets: 0x%04X\n", pad2Octets); return TRUE; } @@ -1110,7 +1110,7 @@ BOOL rdp_print_color_cache_capability_set(wStream* s, UINT16 length) UINT16 colorTableCacheSize; UINT16 pad2Octets; - fprintf(stderr, "ColorCacheCapabilitySet (length %d):\n", length); + DEBUG_WARN( "ColorCacheCapabilitySet (length %d):\n", length); if (length < 8) return FALSE; @@ -1118,8 +1118,8 @@ BOOL rdp_print_color_cache_capability_set(wStream* s, UINT16 length) Stream_Read_UINT16(s, colorTableCacheSize); /* colorTableCacheSize (2 bytes) */ Stream_Read_UINT16(s, pad2Octets); /* pad2Octets (2 bytes) */ - fprintf(stderr, "\tcolorTableCacheSize: 0x%04X\n", colorTableCacheSize); - fprintf(stderr, "\tpad2Octets: 0x%04X\n", pad2Octets); + DEBUG_WARN( "\tcolorTableCacheSize: 0x%04X\n", colorTableCacheSize); + DEBUG_WARN( "\tpad2Octets: 0x%04X\n", pad2Octets); return TRUE; } @@ -1176,7 +1176,7 @@ BOOL rdp_print_sound_capability_set(wStream* s, UINT16 length) UINT16 soundFlags; UINT16 pad2OctetsA; - fprintf(stderr, "SoundCapabilitySet (length %d):\n", length); + DEBUG_WARN( "SoundCapabilitySet (length %d):\n", length); if (length < 8) return FALSE; @@ -1184,8 +1184,8 @@ BOOL rdp_print_sound_capability_set(wStream* s, UINT16 length) Stream_Read_UINT16(s, soundFlags); /* soundFlags (2 bytes) */ Stream_Read_UINT16(s, pad2OctetsA); /* pad2OctetsA (2 bytes) */ - fprintf(stderr, "\tsoundFlags: 0x%04X\n", soundFlags); - fprintf(stderr, "\tpad2OctetsA: 0x%04X\n", pad2OctetsA); + DEBUG_WARN( "\tsoundFlags: 0x%04X\n", soundFlags); + DEBUG_WARN( "\tpad2OctetsA: 0x%04X\n", pad2OctetsA); return TRUE; } @@ -1288,7 +1288,7 @@ BOOL rdp_print_input_capability_set(wStream* s, UINT16 length) UINT32 keyboardSubType; UINT32 keyboardFunctionKey; - fprintf(stderr, "InputCapabilitySet (length %d)\n", length); + DEBUG_WARN( "InputCapabilitySet (length %d)\n", length); if (length < 88) return FALSE; @@ -1301,12 +1301,12 @@ BOOL rdp_print_input_capability_set(wStream* s, UINT16 length) Stream_Read_UINT32(s, keyboardFunctionKey); /* keyboardFunctionKeys (4 bytes) */ Stream_Seek(s, 64); /* imeFileName (64 bytes) */ - fprintf(stderr, "\tinputFlags: 0x%04X\n", inputFlags); - fprintf(stderr, "\tpad2OctetsA: 0x%04X\n", pad2OctetsA); - fprintf(stderr, "\tkeyboardLayout: 0x%08X\n", keyboardLayout); - fprintf(stderr, "\tkeyboardType: 0x%08X\n", keyboardType); - fprintf(stderr, "\tkeyboardSubType: 0x%08X\n", keyboardSubType); - fprintf(stderr, "\tkeyboardFunctionKey: 0x%08X\n", keyboardFunctionKey); + DEBUG_WARN( "\tinputFlags: 0x%04X\n", inputFlags); + DEBUG_WARN( "\tpad2OctetsA: 0x%04X\n", pad2OctetsA); + DEBUG_WARN( "\tkeyboardLayout: 0x%08X\n", keyboardLayout); + DEBUG_WARN( "\tkeyboardType: 0x%08X\n", keyboardType); + DEBUG_WARN( "\tkeyboardSubType: 0x%08X\n", keyboardSubType); + DEBUG_WARN( "\tkeyboardFunctionKey: 0x%08X\n", keyboardFunctionKey); return TRUE; } @@ -1356,7 +1356,7 @@ BOOL rdp_print_font_capability_set(wStream* s, UINT16 length) UINT16 fontSupportFlags = 0; UINT16 pad2Octets = 0; - fprintf(stderr, "FontCapabilitySet (length %d):\n", length); + DEBUG_WARN( "FontCapabilitySet (length %d):\n", length); if (length > 4) Stream_Read_UINT16(s, fontSupportFlags); /* fontSupportFlags (2 bytes) */ @@ -1364,8 +1364,8 @@ BOOL rdp_print_font_capability_set(wStream* s, UINT16 length) if (length > 6) Stream_Read_UINT16(s, pad2Octets); /* pad2Octets (2 bytes) */ - fprintf(stderr, "\tfontSupportFlags: 0x%04X\n", fontSupportFlags); - fprintf(stderr, "\tpad2Octets: 0x%04X\n", pad2Octets); + DEBUG_WARN( "\tfontSupportFlags: 0x%04X\n", fontSupportFlags); + DEBUG_WARN( "\tpad2Octets: 0x%04X\n", pad2Octets); return TRUE; } @@ -1412,14 +1412,14 @@ BOOL rdp_print_brush_capability_set(wStream* s, UINT16 length) { UINT32 brushSupportLevel; - fprintf(stderr, "BrushCapabilitySet (length %d):\n", length); + DEBUG_WARN( "BrushCapabilitySet (length %d):\n", length); if (length < 8) return FALSE; Stream_Read_UINT32(s, brushSupportLevel); /* brushSupportLevel (4 bytes) */ - fprintf(stderr, "\tbrushSupportLevel: 0x%08X\n", brushSupportLevel); + DEBUG_WARN( "\tbrushSupportLevel: 0x%08X\n", brushSupportLevel); return TRUE; } @@ -1521,7 +1521,7 @@ BOOL rdp_print_glyph_cache_capability_set(wStream* s, UINT16 length) UINT16 glyphSupportLevel; UINT16 pad2Octets; - fprintf(stderr, "GlyphCacheCapabilitySet (length %d):\n", length); + DEBUG_WARN( "GlyphCacheCapabilitySet (length %d):\n", length); if (length < 52) return FALSE; @@ -1542,19 +1542,19 @@ BOOL rdp_print_glyph_cache_capability_set(wStream* s, UINT16 length) Stream_Read_UINT16(s, glyphSupportLevel); /* glyphSupportLevel (2 bytes) */ Stream_Read_UINT16(s, pad2Octets); /* pad2Octets (2 bytes) */ - fprintf(stderr, "\tglyphCache0: Entries: %d MaximumCellSize: %d\n", glyphCache[0].cacheEntries, glyphCache[0].cacheMaximumCellSize); - fprintf(stderr, "\tglyphCache1: Entries: %d MaximumCellSize: %d\n", glyphCache[1].cacheEntries, glyphCache[1].cacheMaximumCellSize); - fprintf(stderr, "\tglyphCache2: Entries: %d MaximumCellSize: %d\n", glyphCache[2].cacheEntries, glyphCache[2].cacheMaximumCellSize); - fprintf(stderr, "\tglyphCache3: Entries: %d MaximumCellSize: %d\n", glyphCache[3].cacheEntries, glyphCache[3].cacheMaximumCellSize); - fprintf(stderr, "\tglyphCache4: Entries: %d MaximumCellSize: %d\n", glyphCache[4].cacheEntries, glyphCache[4].cacheMaximumCellSize); - fprintf(stderr, "\tglyphCache5: Entries: %d MaximumCellSize: %d\n", glyphCache[5].cacheEntries, glyphCache[5].cacheMaximumCellSize); - fprintf(stderr, "\tglyphCache6: Entries: %d MaximumCellSize: %d\n", glyphCache[6].cacheEntries, glyphCache[6].cacheMaximumCellSize); - fprintf(stderr, "\tglyphCache7: Entries: %d MaximumCellSize: %d\n", glyphCache[7].cacheEntries, glyphCache[7].cacheMaximumCellSize); - fprintf(stderr, "\tglyphCache8: Entries: %d MaximumCellSize: %d\n", glyphCache[8].cacheEntries, glyphCache[8].cacheMaximumCellSize); - fprintf(stderr, "\tglyphCache9: Entries: %d MaximumCellSize: %d\n", glyphCache[9].cacheEntries, glyphCache[9].cacheMaximumCellSize); - fprintf(stderr, "\tfragCache: Entries: %d MaximumCellSize: %d\n", fragCache.cacheEntries, fragCache.cacheMaximumCellSize); - fprintf(stderr, "\tglyphSupportLevel: 0x%04X\n", glyphSupportLevel); - fprintf(stderr, "\tpad2Octets: 0x%04X\n", pad2Octets); + DEBUG_WARN( "\tglyphCache0: Entries: %d MaximumCellSize: %d\n", glyphCache[0].cacheEntries, glyphCache[0].cacheMaximumCellSize); + DEBUG_WARN( "\tglyphCache1: Entries: %d MaximumCellSize: %d\n", glyphCache[1].cacheEntries, glyphCache[1].cacheMaximumCellSize); + DEBUG_WARN( "\tglyphCache2: Entries: %d MaximumCellSize: %d\n", glyphCache[2].cacheEntries, glyphCache[2].cacheMaximumCellSize); + DEBUG_WARN( "\tglyphCache3: Entries: %d MaximumCellSize: %d\n", glyphCache[3].cacheEntries, glyphCache[3].cacheMaximumCellSize); + DEBUG_WARN( "\tglyphCache4: Entries: %d MaximumCellSize: %d\n", glyphCache[4].cacheEntries, glyphCache[4].cacheMaximumCellSize); + DEBUG_WARN( "\tglyphCache5: Entries: %d MaximumCellSize: %d\n", glyphCache[5].cacheEntries, glyphCache[5].cacheMaximumCellSize); + DEBUG_WARN( "\tglyphCache6: Entries: %d MaximumCellSize: %d\n", glyphCache[6].cacheEntries, glyphCache[6].cacheMaximumCellSize); + DEBUG_WARN( "\tglyphCache7: Entries: %d MaximumCellSize: %d\n", glyphCache[7].cacheEntries, glyphCache[7].cacheMaximumCellSize); + DEBUG_WARN( "\tglyphCache8: Entries: %d MaximumCellSize: %d\n", glyphCache[8].cacheEntries, glyphCache[8].cacheMaximumCellSize); + DEBUG_WARN( "\tglyphCache9: Entries: %d MaximumCellSize: %d\n", glyphCache[9].cacheEntries, glyphCache[9].cacheMaximumCellSize); + DEBUG_WARN( "\tfragCache: Entries: %d MaximumCellSize: %d\n", fragCache.cacheEntries, fragCache.cacheMaximumCellSize); + DEBUG_WARN( "\tglyphSupportLevel: 0x%04X\n", glyphSupportLevel); + DEBUG_WARN( "\tpad2Octets: 0x%04X\n", pad2Octets); return TRUE; } @@ -1616,7 +1616,7 @@ BOOL rdp_print_offscreen_bitmap_cache_capability_set(wStream* s, UINT16 length) UINT16 offscreenCacheSize; UINT16 offscreenCacheEntries; - fprintf(stderr, "OffscreenBitmapCacheCapabilitySet (length %d):\n", length); + DEBUG_WARN( "OffscreenBitmapCacheCapabilitySet (length %d):\n", length); if (length < 12) return FALSE; @@ -1625,9 +1625,9 @@ BOOL rdp_print_offscreen_bitmap_cache_capability_set(wStream* s, UINT16 length) Stream_Read_UINT16(s, offscreenCacheSize); /* offscreenCacheSize (2 bytes) */ Stream_Read_UINT16(s, offscreenCacheEntries); /* offscreenCacheEntries (2 bytes) */ - fprintf(stderr, "\toffscreenSupportLevel: 0x%08X\n", offscreenSupportLevel); - fprintf(stderr, "\toffscreenCacheSize: 0x%04X\n", offscreenCacheSize); - fprintf(stderr, "\toffscreenCacheEntries: 0x%04X\n", offscreenCacheEntries); + DEBUG_WARN( "\toffscreenSupportLevel: 0x%08X\n", offscreenSupportLevel); + DEBUG_WARN( "\toffscreenCacheSize: 0x%04X\n", offscreenCacheSize); + DEBUG_WARN( "\toffscreenCacheEntries: 0x%04X\n", offscreenCacheEntries); return TRUE; } @@ -1685,7 +1685,7 @@ BOOL rdp_print_bitmap_cache_host_support_capability_set(wStream* s, UINT16 lengt BYTE pad1; UINT16 pad2; - fprintf(stderr, "BitmapCacheHostSupportCapabilitySet (length %d):\n", length); + DEBUG_WARN( "BitmapCacheHostSupportCapabilitySet (length %d):\n", length); if (length < 8) return FALSE; @@ -1694,9 +1694,9 @@ BOOL rdp_print_bitmap_cache_host_support_capability_set(wStream* s, UINT16 lengt Stream_Read_UINT8(s, pad1); /* pad1 (1 byte) */ Stream_Read_UINT16(s, pad2); /* pad2 (2 bytes) */ - fprintf(stderr, "\tcacheVersion: 0x%02X\n", cacheVersion); - fprintf(stderr, "\tpad1: 0x%02X\n", pad1); - fprintf(stderr, "\tpad2: 0x%04X\n", pad2); + DEBUG_WARN( "\tcacheVersion: 0x%02X\n", cacheVersion); + DEBUG_WARN( "\tpad1: 0x%02X\n", pad1); + DEBUG_WARN( "\tpad2: 0x%04X\n", pad2); return TRUE; } @@ -1796,7 +1796,7 @@ BOOL rdp_print_bitmap_cache_v2_capability_set(wStream* s, UINT16 length) BYTE numCellCaches; BITMAP_CACHE_V2_CELL_INFO bitmapCacheV2CellInfo[5]; - fprintf(stderr, "BitmapCacheV2CapabilitySet (length %d):\n", length); + DEBUG_WARN( "BitmapCacheV2CapabilitySet (length %d):\n", length); if (length < 40) return FALSE; @@ -1811,14 +1811,14 @@ BOOL rdp_print_bitmap_cache_v2_capability_set(wStream* s, UINT16 length) rdp_read_bitmap_cache_cell_info(s, &bitmapCacheV2CellInfo[4]); /* bitmapCache4CellInfo (4 bytes) */ Stream_Seek(s, 12); /* pad3 (12 bytes) */ - fprintf(stderr, "\tcacheFlags: 0x%04X\n", cacheFlags); - fprintf(stderr, "\tpad2: 0x%02X\n", pad2); - fprintf(stderr, "\tnumCellCaches: 0x%02X\n", numCellCaches); - fprintf(stderr, "\tbitmapCache0CellInfo: numEntries: %d persistent: %d\n", bitmapCacheV2CellInfo[0].numEntries, bitmapCacheV2CellInfo[0].persistent); - fprintf(stderr, "\tbitmapCache1CellInfo: numEntries: %d persistent: %d\n", bitmapCacheV2CellInfo[1].numEntries, bitmapCacheV2CellInfo[1].persistent); - fprintf(stderr, "\tbitmapCache2CellInfo: numEntries: %d persistent: %d\n", bitmapCacheV2CellInfo[2].numEntries, bitmapCacheV2CellInfo[2].persistent); - fprintf(stderr, "\tbitmapCache3CellInfo: numEntries: %d persistent: %d\n", bitmapCacheV2CellInfo[3].numEntries, bitmapCacheV2CellInfo[3].persistent); - fprintf(stderr, "\tbitmapCache4CellInfo: numEntries: %d persistent: %d\n", bitmapCacheV2CellInfo[4].numEntries, bitmapCacheV2CellInfo[4].persistent); + DEBUG_WARN( "\tcacheFlags: 0x%04X\n", cacheFlags); + DEBUG_WARN( "\tpad2: 0x%02X\n", pad2); + DEBUG_WARN( "\tnumCellCaches: 0x%02X\n", numCellCaches); + DEBUG_WARN( "\tbitmapCache0CellInfo: numEntries: %d persistent: %d\n", bitmapCacheV2CellInfo[0].numEntries, bitmapCacheV2CellInfo[0].persistent); + DEBUG_WARN( "\tbitmapCache1CellInfo: numEntries: %d persistent: %d\n", bitmapCacheV2CellInfo[1].numEntries, bitmapCacheV2CellInfo[1].persistent); + DEBUG_WARN( "\tbitmapCache2CellInfo: numEntries: %d persistent: %d\n", bitmapCacheV2CellInfo[2].numEntries, bitmapCacheV2CellInfo[2].persistent); + DEBUG_WARN( "\tbitmapCache3CellInfo: numEntries: %d persistent: %d\n", bitmapCacheV2CellInfo[3].numEntries, bitmapCacheV2CellInfo[3].persistent); + DEBUG_WARN( "\tbitmapCache4CellInfo: numEntries: %d persistent: %d\n", bitmapCacheV2CellInfo[4].numEntries, bitmapCacheV2CellInfo[4].persistent); return TRUE; } @@ -1881,7 +1881,7 @@ BOOL rdp_print_virtual_channel_capability_set(wStream* s, UINT16 length) UINT32 flags; UINT32 VCChunkSize; - fprintf(stderr, "VirtualChannelCapabilitySet (length %d):\n", length); + DEBUG_WARN( "VirtualChannelCapabilitySet (length %d):\n", length); if (length < 8) return FALSE; @@ -1893,8 +1893,8 @@ BOOL rdp_print_virtual_channel_capability_set(wStream* s, UINT16 length) else VCChunkSize = 1600; - fprintf(stderr, "\tflags: 0x%08X\n", flags); - fprintf(stderr, "\tVCChunkSize: 0x%08X\n", VCChunkSize); + DEBUG_WARN( "\tflags: 0x%08X\n", flags); + DEBUG_WARN( "\tVCChunkSize: 0x%08X\n", VCChunkSize); return TRUE; } @@ -1980,7 +1980,7 @@ BOOL rdp_print_draw_nine_grid_cache_capability_set(wStream* s, UINT16 length) UINT16 DrawNineGridCacheSize; UINT16 DrawNineGridCacheEntries; - fprintf(stderr, "DrawNineGridCacheCapabilitySet (length %d):\n", length); + DEBUG_WARN( "DrawNineGridCacheCapabilitySet (length %d):\n", length); if (length < 12) return FALSE; @@ -2060,7 +2060,7 @@ BOOL rdp_print_draw_gdiplus_cache_capability_set(wStream* s, UINT16 length) UINT32 GdipVersion; UINT32 drawGdiplusCacheLevel; - fprintf(stderr, "DrawGdiPlusCacheCapabilitySet (length %d):\n", length); + DEBUG_WARN( "DrawGdiPlusCacheCapabilitySet (length %d):\n", length); if (length < 40) return FALSE; @@ -2133,14 +2133,14 @@ BOOL rdp_print_remote_programs_capability_set(wStream* s, UINT16 length) { UINT32 railSupportLevel; - fprintf(stderr, "RemoteProgramsCapabilitySet (length %d):\n", length); + DEBUG_WARN( "RemoteProgramsCapabilitySet (length %d):\n", length); if (length < 8) return FALSE; Stream_Read_UINT32(s, railSupportLevel); /* railSupportLevel (4 bytes) */ - fprintf(stderr, "\trailSupportLevel: 0x%08X\n", railSupportLevel); + DEBUG_WARN( "\trailSupportLevel: 0x%08X\n", railSupportLevel); return TRUE; } @@ -2196,7 +2196,7 @@ BOOL rdp_print_window_list_capability_set(wStream* s, UINT16 length) BYTE numIconCaches; UINT16 numIconCacheEntries; - fprintf(stderr, "WindowListCapabilitySet (length %d):\n", length); + DEBUG_WARN( "WindowListCapabilitySet (length %d):\n", length); if (length < 11) return FALSE; @@ -2205,9 +2205,9 @@ BOOL rdp_print_window_list_capability_set(wStream* s, UINT16 length) Stream_Read_UINT8(s, numIconCaches); /* numIconCaches (1 byte) */ Stream_Read_UINT16(s, numIconCacheEntries); /* numIconCacheEntries (2 bytes) */ - fprintf(stderr, "\twndSupportLevel: 0x%08X\n", wndSupportLevel); - fprintf(stderr, "\tnumIconCaches: 0x%02X\n", numIconCaches); - fprintf(stderr, "\tnumIconCacheEntries: 0x%04X\n", numIconCacheEntries); + DEBUG_WARN( "\twndSupportLevel: 0x%08X\n", wndSupportLevel); + DEBUG_WARN( "\tnumIconCaches: 0x%02X\n", numIconCaches); + DEBUG_WARN( "\tnumIconCacheEntries: 0x%04X\n", numIconCacheEntries); return TRUE; } @@ -2257,14 +2257,14 @@ BOOL rdp_print_desktop_composition_capability_set(wStream* s, UINT16 length) { UINT16 compDeskSupportLevel; - fprintf(stderr, "DesktopCompositionCapabilitySet (length %d):\n", length); + DEBUG_WARN( "DesktopCompositionCapabilitySet (length %d):\n", length); if (length < 6) return FALSE; Stream_Read_UINT16(s, compDeskSupportLevel); /* compDeskSupportLevel (2 bytes) */ - fprintf(stderr, "\tcompDeskSupportLevel: 0x%04X\n", compDeskSupportLevel); + DEBUG_WARN( "\tcompDeskSupportLevel: 0x%04X\n", compDeskSupportLevel); return TRUE; } @@ -2386,14 +2386,14 @@ BOOL rdp_print_multifragment_update_capability_set(wStream* s, UINT16 length) { UINT32 maxRequestSize; - fprintf(stderr, "MultifragmentUpdateCapabilitySet (length %d):\n", length); + DEBUG_WARN( "MultifragmentUpdateCapabilitySet (length %d):\n", length); if (length < 8) return FALSE; Stream_Read_UINT32(s, maxRequestSize); /* maxRequestSize (4 bytes) */ - fprintf(stderr, "\tmaxRequestSize: 0x%04X\n", maxRequestSize); + DEBUG_WARN( "\tmaxRequestSize: 0x%04X\n", maxRequestSize); return TRUE; } @@ -2447,14 +2447,14 @@ BOOL rdp_print_large_pointer_capability_set(wStream* s, UINT16 length) { UINT16 largePointerSupportFlags; - fprintf(stderr, "LargePointerCapabilitySet (length %d):\n", length); + DEBUG_WARN( "LargePointerCapabilitySet (length %d):\n", length); if (length < 6) return FALSE; Stream_Read_UINT16(s, largePointerSupportFlags); /* largePointerSupportFlags (2 bytes) */ - fprintf(stderr, "\tlargePointerSupportFlags: 0x%04X\n", largePointerSupportFlags); + DEBUG_WARN( "\tlargePointerSupportFlags: 0x%04X\n", largePointerSupportFlags); return TRUE; } @@ -2514,7 +2514,7 @@ BOOL rdp_print_surface_commands_capability_set(wStream* s, UINT16 length) UINT32 cmdFlags; UINT32 reserved; - fprintf(stderr, "SurfaceCommandsCapabilitySet (length %d):\n", length); + DEBUG_WARN( "SurfaceCommandsCapabilitySet (length %d):\n", length); if (length < 12) return FALSE; @@ -2522,8 +2522,8 @@ BOOL rdp_print_surface_commands_capability_set(wStream* s, UINT16 length) Stream_Read_UINT32(s, cmdFlags); /* cmdFlags (4 bytes) */ Stream_Read_UINT32(s, reserved); /* reserved (4 bytes) */ - fprintf(stderr, "\tcmdFlags: 0x%08X\n", cmdFlags); - fprintf(stderr, "\treserved: 0x%08X\n", reserved); + DEBUG_WARN( "\tcmdFlags: 0x%08X\n", cmdFlags); + DEBUG_WARN( "\treserved: 0x%08X\n", reserved); return TRUE; } @@ -2573,7 +2573,7 @@ void rdp_write_bitmap_codec_guid(wStream* s, GUID* guid) void rdp_print_bitmap_codec_guid(GUID* guid) { - fprintf(stderr, "%08X%04X%04X%02X%02X%02X%02X%02X%02X%02X%02X", + DEBUG_WARN( "%08X%04X%04X%02X%02X%02X%02X%02X%02X%02X%02X", guid->Data1, guid->Data2, guid->Data3, guid->Data4[0], guid->Data4[1], guid->Data4[2], guid->Data4[3], guid->Data4[4], guid->Data4[5], guid->Data4[6], guid->Data4[7]); @@ -2906,7 +2906,7 @@ BOOL rdp_print_bitmap_codecs_capability_set(wStream* s, UINT16 length) UINT16 codecPropertiesLength; UINT16 remainingLength; - fprintf(stderr, "BitmapCodecsCapabilitySet (length %d):\n", length); + DEBUG_WARN( "BitmapCodecsCapabilitySet (length %d):\n", length); if (length < 5) return FALSE; @@ -2914,7 +2914,7 @@ BOOL rdp_print_bitmap_codecs_capability_set(wStream* s, UINT16 length) Stream_Read_UINT8(s, bitmapCodecCount); /* bitmapCodecCount (1 byte) */ remainingLength = length - 5; - fprintf(stderr, "\tbitmapCodecCount: %d\n", bitmapCodecCount); + DEBUG_WARN( "\tbitmapCodecCount: %d\n", bitmapCodecCount); while (bitmapCodecCount > 0) { @@ -2924,14 +2924,14 @@ BOOL rdp_print_bitmap_codecs_capability_set(wStream* s, UINT16 length) rdp_read_bitmap_codec_guid(s, &codecGuid); /* codecGuid (16 bytes) */ Stream_Read_UINT8(s, codecId); /* codecId (1 byte) */ - fprintf(stderr, "\tcodecGuid: 0x"); + DEBUG_WARN( "\tcodecGuid: 0x"); rdp_print_bitmap_codec_guid(&codecGuid); - fprintf(stderr, " (%s)\n", rdp_get_bitmap_codec_guid_name(&codecGuid)); + DEBUG_WARN( " (%s)\n", rdp_get_bitmap_codec_guid_name(&codecGuid)); - fprintf(stderr, "\tcodecId: %d\n", codecId); + DEBUG_WARN( "\tcodecId: %d\n", codecId); Stream_Read_UINT16(s, codecPropertiesLength); /* codecPropertiesLength (2 bytes) */ - fprintf(stderr, "\tcodecPropertiesLength: %d\n", codecPropertiesLength); + DEBUG_WARN( "\tcodecPropertiesLength: %d\n", codecPropertiesLength); remainingLength -= 19; @@ -2994,14 +2994,14 @@ BOOL rdp_print_frame_acknowledge_capability_set(wStream* s, UINT16 length) { UINT32 frameAcknowledge; - fprintf(stderr, "FrameAcknowledgeCapabilitySet (length %d):\n", length); + DEBUG_WARN( "FrameAcknowledgeCapabilitySet (length %d):\n", length); if (length < 8) return FALSE; Stream_Read_UINT32(s, frameAcknowledge); /* frameAcknowledge (4 bytes) */ - fprintf(stderr, "\tframeAcknowledge: 0x%08X\n", frameAcknowledge); + DEBUG_WARN( "\tframeAcknowledge: 0x%08X\n", frameAcknowledge); return TRUE; } @@ -3034,14 +3034,14 @@ BOOL rdp_print_bitmap_cache_v3_codec_id_capability_set(wStream* s, UINT16 length { BYTE bitmapCacheV3CodecId; - fprintf(stderr, "BitmapCacheV3CodecIdCapabilitySet (length %d):\n", length); + DEBUG_WARN( "BitmapCacheV3CodecIdCapabilitySet (length %d):\n", length); if (length < 5) return FALSE; Stream_Read_UINT8(s, bitmapCacheV3CodecId); /* bitmapCacheV3CodecId (1 byte) */ - fprintf(stderr, "\tbitmapCacheV3CodecId: 0x%02X\n", bitmapCacheV3CodecId); + DEBUG_WARN( "\tbitmapCacheV3CodecId: 0x%02X\n", bitmapCacheV3CodecId); return TRUE; } @@ -3058,13 +3058,13 @@ BOOL rdp_print_capability_sets(wStream* s, UINT16 numberCapabilities, BOOL recei rdp_read_capability_set_header(s, &length, &type); - fprintf(stderr, "%s ", receiving ? "Receiving" : "Sending"); + DEBUG_WARN( "%s ", receiving ? "Receiving" : "Sending"); em = bm + length; if (Stream_GetRemainingLength(s) < (size_t) (length - 4)) { - fprintf(stderr, "error processing stream\n"); + DEBUG_WARN( "error processing stream\n"); return FALSE; } @@ -3216,13 +3216,13 @@ BOOL rdp_print_capability_sets(wStream* s, UINT16 numberCapabilities, BOOL recei break; default: - fprintf(stderr, "unknown capability type %d\n", type); + DEBUG_WARN( "unknown capability type %d\n", type); break; } if (s->pointer != em) { - fprintf(stderr, "incorrect offset, type:0x%02X actual:%d expected:%d\n", + DEBUG_WARN( "incorrect offset, type:0x%02X actual:%d expected:%d\n", type, (int) (s->pointer - bm), (int) (em - bm)); } @@ -3256,14 +3256,14 @@ BOOL rdp_read_capability_sets(wStream* s, rdpSettings* settings, UINT16 numberCa } else { - fprintf(stderr, "%s: not handling capability type %d yet\n", __FUNCTION__, type); + DEBUG_WARN( "%s: not handling capability type %d yet\n", __FUNCTION__, type); } em = bm + length; if (Stream_GetRemainingLength(s) < ((size_t) length - 4)) { - fprintf(stderr, "error processing stream\n"); + DEBUG_WARN( "error processing stream\n"); return FALSE; } @@ -3415,13 +3415,13 @@ BOOL rdp_read_capability_sets(wStream* s, rdpSettings* settings, UINT16 numberCa break; default: - fprintf(stderr, "unknown capability type %d\n", type); + DEBUG_WARN( "unknown capability type %d\n", type); break; } if (s->pointer != em) { - fprintf(stderr, "incorrect offset, type:0x%02X actual:%d expected:%d\n", + DEBUG_WARN( "incorrect offset, type:0x%02X actual:%d expected:%d\n", type, (int) (s->pointer - bm), (int) (em - bm)); } @@ -3431,7 +3431,7 @@ BOOL rdp_read_capability_sets(wStream* s, rdpSettings* settings, UINT16 numberCa if (numberCapabilities) { - fprintf(stderr, "%s: strange we haven't read the number of announced capacity sets, read=%d expected=%d\n", + DEBUG_WARN( "%s: strange we haven't read the number of announced capacity sets, read=%d expected=%d\n", __FUNCTION__, count-numberCapabilities, count); } @@ -3466,7 +3466,7 @@ BOOL rdp_recv_get_active_header(rdpRdp* rdp, wStream* s, UINT16* pChannelId) { if (!rdp_decrypt(rdp, s, length - 4, securityFlags)) { - fprintf(stderr, "rdp_decrypt failed\n"); + DEBUG_WARN( "rdp_decrypt failed\n"); return FALSE; } } @@ -3478,7 +3478,7 @@ BOOL rdp_recv_get_active_header(rdpRdp* rdp, wStream* s, UINT16* pChannelId) if ((mcsMessageChannelId == 0) || (*pChannelId != mcsMessageChannelId)) { - fprintf(stderr, "unexpected MCS channel id %04x received\n", *pChannelId); + DEBUG_WARN( "unexpected MCS channel id %04x received\n", *pChannelId); return FALSE; } } @@ -3504,14 +3504,14 @@ BOOL rdp_recv_demand_active(rdpRdp* rdp, wStream* s) if (!rdp_read_share_control_header(s, &pduLength, &pduType, &pduSource)) { - fprintf(stderr, "rdp_read_share_control_header failed\n"); + DEBUG_WARN( "rdp_read_share_control_header failed\n"); return FALSE; } if (pduType != PDU_TYPE_DEMAND_ACTIVE) { if (pduType != PDU_TYPE_SERVER_REDIRECTION) - fprintf(stderr, "expected PDU_TYPE_DEMAND_ACTIVE %04x, got %04x\n", PDU_TYPE_DEMAND_ACTIVE, pduType); + DEBUG_WARN( "expected PDU_TYPE_DEMAND_ACTIVE %04x, got %04x\n", PDU_TYPE_DEMAND_ACTIVE, pduType); return FALSE; } @@ -3534,7 +3534,7 @@ BOOL rdp_recv_demand_active(rdpRdp* rdp, wStream* s) /* capabilitySets */ if (!rdp_read_capability_sets(s, rdp->settings, numberCapabilities)) { - fprintf(stderr, "rdp_read_capability_sets failed\n"); + DEBUG_WARN( "rdp_read_capability_sets failed\n"); return FALSE; } diff --git a/libfreerdp/core/certificate.c b/libfreerdp/core/certificate.c index fcc3f01bf..0ec409592 100644 --- a/libfreerdp/core/certificate.c +++ b/libfreerdp/core/certificate.c @@ -279,7 +279,7 @@ error2: free(info->Modulus); info->Modulus = 0; error1: - fprintf(stderr, "error reading when reading certificate: part=%s error=%d\n", certificate_read_errors[error], error); + DEBUG_WARN( "error reading when reading certificate: part=%s error=%d\n", certificate_read_errors[error], error); Stream_Free(s, FALSE); return FALSE; } @@ -344,7 +344,7 @@ static BOOL certificate_process_server_public_key(rdpCertificate* certificate, w if (memcmp(magic, "RSA1", 4) != 0) { - fprintf(stderr, "%s: magic error\n", __FUNCTION__); + DEBUG_WARN( "%s: magic error\n", __FUNCTION__); return FALSE; } @@ -391,7 +391,7 @@ static BOOL certificate_process_server_public_signature(rdpCertificate* certific if (sum != 0) { - fprintf(stderr, "%s: invalid signature\n", __FUNCTION__); + DEBUG_WARN( "%s: invalid signature\n", __FUNCTION__); //return FALSE; } @@ -403,7 +403,7 @@ static BOOL certificate_process_server_public_signature(rdpCertificate* certific /* Verify signature. */ if (memcmp(md5hash, sig, sizeof(md5hash)) != 0) { - fprintf(stderr, "%s: invalid signature\n", __FUNCTION__); + DEBUG_WARN( "%s: invalid signature\n", __FUNCTION__); //return FALSE; } @@ -419,7 +419,7 @@ static BOOL certificate_process_server_public_signature(rdpCertificate* certific if (sig[16] != 0x00 || sum != 0xFF * (62 - 17) || sig[62] != 0x01) { - fprintf(stderr, "%s: invalid signature\n", __FUNCTION__); + DEBUG_WARN( "%s: invalid signature\n", __FUNCTION__); //return FALSE; } @@ -453,7 +453,7 @@ BOOL certificate_read_server_proprietary_certificate(rdpCertificate* certificate if (!(dwSigAlgId == SIGNATURE_ALG_RSA && dwKeyAlgId == KEY_EXCHANGE_ALG_RSA)) { - fprintf(stderr, "%s: unsupported signature or key algorithm, dwSigAlgId=%d dwKeyAlgId=%d\n", + DEBUG_WARN( "%s: unsupported signature or key algorithm, dwSigAlgId=%d dwKeyAlgId=%d\n", __FUNCTION__, dwSigAlgId, dwKeyAlgId); return FALSE; } @@ -462,7 +462,7 @@ BOOL certificate_read_server_proprietary_certificate(rdpCertificate* certificate if (wPublicKeyBlobType != BB_RSA_KEY_BLOB) { - fprintf(stderr, "%s: unsupported public key blob type %d\n", __FUNCTION__, wPublicKeyBlobType); + DEBUG_WARN( "%s: unsupported public key blob type %d\n", __FUNCTION__, wPublicKeyBlobType); return FALSE; } @@ -472,7 +472,7 @@ BOOL certificate_read_server_proprietary_certificate(rdpCertificate* certificate if (!certificate_process_server_public_key(certificate, s, wPublicKeyBlobLen)) { - fprintf(stderr, "%s: error in server public key\n", __FUNCTION__); + DEBUG_WARN( "%s: error in server public key\n", __FUNCTION__); return FALSE; } @@ -484,26 +484,26 @@ BOOL certificate_read_server_proprietary_certificate(rdpCertificate* certificate if (wSignatureBlobType != BB_RSA_SIGNATURE_BLOB) { - fprintf(stderr, "%s: unsupported blob signature %d\n", __FUNCTION__, wSignatureBlobType); + DEBUG_WARN( "%s: unsupported blob signature %d\n", __FUNCTION__, wSignatureBlobType); return FALSE; } Stream_Read_UINT16(s, wSignatureBlobLen); if (Stream_GetRemainingLength(s) < wSignatureBlobLen) { - fprintf(stderr, "%s: not enought bytes for signature(len=%d)\n", __FUNCTION__, wSignatureBlobLen); + DEBUG_WARN( "%s: not enought bytes for signature(len=%d)\n", __FUNCTION__, wSignatureBlobLen); return FALSE; } if (wSignatureBlobLen != 72) { - fprintf(stderr, "%s: invalid signature length (got %d, expected %d)\n", __FUNCTION__, wSignatureBlobLen, 64); + DEBUG_WARN( "%s: invalid signature length (got %d, expected %d)\n", __FUNCTION__, wSignatureBlobLen, 64); return FALSE; } if (!certificate_process_server_public_signature(certificate, sigdata, sigdatalen, s, wSignatureBlobLen)) { - fprintf(stderr, "%s: unable to parse server public signature\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to parse server public signature\n", __FUNCTION__); return FALSE; } @@ -560,7 +560,7 @@ BOOL certificate_read_server_x509_certificate_chain(rdpCertificate* certificate, if (cert_info.Modulus) free(cert_info.Modulus); if (!ret) { - fprintf(stderr, "failed to read License Server, content follows:\n"); + DEBUG_WARN( "failed to read License Server, content follows:\n"); winpr_HexDump(certificate->x509_cert_chain->array[i].data, certificate->x509_cert_chain->array[i].length); return FALSE; } @@ -608,7 +608,7 @@ BOOL certificate_read_server_certificate(rdpCertificate* certificate, BYTE* serv break; default: - fprintf(stderr, "invalid certificate chain version:%d\n", dwVersion & CERT_CHAIN_VERSION_MASK); + DEBUG_WARN( "invalid certificate chain version:%d\n", dwVersion & CERT_CHAIN_VERSION_MASK); ret = FALSE; break; } @@ -631,14 +631,14 @@ rdpRsaKey* key_new(const char* keyfile) fp = fopen(keyfile, "r"); if (fp == NULL) { - fprintf(stderr, "%s: unable to open RSA key file %s: %s.", __FUNCTION__, keyfile, strerror(errno)); + DEBUG_WARN( "%s: unable to open RSA key file %s: %s.", __FUNCTION__, keyfile, strerror(errno)); goto out_free; } rsa = PEM_read_RSAPrivateKey(fp, NULL, NULL, NULL); if (rsa == NULL) { - fprintf(stderr, "%s: unable to load RSA key from %s: %s.", __FUNCTION__, keyfile, strerror(errno)); + DEBUG_WARN( "%s: unable to load RSA key from %s: %s.", __FUNCTION__, keyfile, strerror(errno)); ERR_print_errors_fp(stderr); fclose(fp); goto out_free; @@ -649,7 +649,7 @@ rdpRsaKey* key_new(const char* keyfile) switch (RSA_check_key(rsa)) { case 0: - fprintf(stderr, "%s: invalid RSA key in %s\n", __FUNCTION__, keyfile); + DEBUG_WARN( "%s: invalid RSA key in %s\n", __FUNCTION__, keyfile); goto out_free_rsa; case 1: @@ -657,14 +657,14 @@ rdpRsaKey* key_new(const char* keyfile) break; default: - fprintf(stderr, "%s: unexpected error when checking RSA key from %s: %s.", __FUNCTION__, keyfile, strerror(errno)); + DEBUG_WARN( "%s: unexpected error when checking RSA key from %s: %s.", __FUNCTION__, keyfile, strerror(errno)); ERR_print_errors_fp(stderr); goto out_free_rsa; } if (BN_num_bytes(rsa->e) > 4) { - fprintf(stderr, "%s: RSA public exponent too large in %s\n", __FUNCTION__, keyfile); + DEBUG_WARN( "%s: RSA public exponent too large in %s\n", __FUNCTION__, keyfile); goto out_free_rsa; } diff --git a/libfreerdp/core/channels.c b/libfreerdp/core/channels.c index 54cfa99cf..943b0e913 100644 --- a/libfreerdp/core/channels.c +++ b/libfreerdp/core/channels.c @@ -67,7 +67,7 @@ BOOL freerdp_channel_send(rdpRdp* rdp, UINT16 channelId, BYTE* data, int size) if (!channel) { - fprintf(stderr, "freerdp_channel_send: unknown channelId %d\n", channelId); + DEBUG_WARN( "freerdp_channel_send: unknown channelId %d\n", channelId); return FALSE; } diff --git a/libfreerdp/core/client.c b/libfreerdp/core/client.c index 5f4aec1e6..87dee69d2 100644 --- a/libfreerdp/core/client.c +++ b/libfreerdp/core/client.c @@ -715,7 +715,7 @@ int freerdp_channels_client_load(rdpChannels* channels, rdpSettings* settings, v if (channels->clientDataCount + 1 >= CHANNEL_MAX_COUNT) { - fprintf(stderr, "error: too many channels\n"); + DEBUG_WARN( "error: too many channels\n"); return 1; } @@ -754,7 +754,7 @@ int freerdp_channels_client_load(rdpChannels* channels, rdpSettings* settings, v if (!status) { - fprintf(stderr, "error: channel export function call failed\n"); + DEBUG_WARN( "error: channel export function call failed\n"); return 1; } diff --git a/libfreerdp/core/connection.c b/libfreerdp/core/connection.c index eeba652bf..b19d97148 100644 --- a/libfreerdp/core/connection.c +++ b/libfreerdp/core/connection.c @@ -266,7 +266,7 @@ BOOL rdp_client_connect(rdpRdp* rdp) freerdp_set_last_error(rdp->context, FREERDP_ERROR_SECURITY_NEGO_CONNECT_FAILED); } - fprintf(stderr, "Error: protocol security negotiation or connection failure\n"); + DEBUG_WARN( "Error: protocol security negotiation or connection failure\n"); return FALSE; } @@ -294,7 +294,7 @@ BOOL rdp_client_connect(rdpRdp* rdp) freerdp_set_last_error(rdp->context, FREERDP_ERROR_MCS_CONNECT_INITIAL_ERROR); } - fprintf(stderr, "Error: unable to send MCS Connect Initial\n"); + DEBUG_WARN( "Error: unable to send MCS Connect Initial\n"); return FALSE; } @@ -454,20 +454,20 @@ static BOOL rdp_client_establish_keys(rdpRdp* rdp) rdp->fips_encrypt = crypto_des3_encrypt_init(rdp->fips_encrypt_key, fips_ivec); if (!rdp->fips_encrypt) { - fprintf(stderr, "%s: unable to allocate des3 encrypt key\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate des3 encrypt key\n", __FUNCTION__); goto end; } rdp->fips_decrypt = crypto_des3_decrypt_init(rdp->fips_decrypt_key, fips_ivec); if (!rdp->fips_decrypt) { - fprintf(stderr, "%s: unable to allocate des3 decrypt key\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate des3 decrypt key\n", __FUNCTION__); goto end; } rdp->fips_hmac = crypto_hmac_new(); if (!rdp->fips_hmac) { - fprintf(stderr, "%s: unable to allocate fips hmac\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate fips hmac\n", __FUNCTION__); goto end; } ret = TRUE; @@ -477,14 +477,14 @@ static BOOL rdp_client_establish_keys(rdpRdp* rdp) rdp->rc4_decrypt_key = crypto_rc4_init(rdp->decrypt_key, rdp->rc4_key_len); if (!rdp->rc4_decrypt_key) { - fprintf(stderr, "%s: unable to allocate rc4 decrypt key\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate rc4 decrypt key\n", __FUNCTION__); goto end; } rdp->rc4_encrypt_key = crypto_rc4_init(rdp->encrypt_key, rdp->rc4_key_len); if (!rdp->rc4_encrypt_key) { - fprintf(stderr, "%s: unable to allocate rc4 encrypt key\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate rc4 encrypt key\n", __FUNCTION__); goto end; } ret = TRUE; @@ -512,19 +512,19 @@ BOOL rdp_server_establish_keys(rdpRdp* rdp, wStream* s) if (!rdp_read_header(rdp, s, &length, &channel_id)) { - fprintf(stderr, "%s: invalid RDP header\n", __FUNCTION__); + DEBUG_WARN( "%s: invalid RDP header\n", __FUNCTION__); return FALSE; } if (!rdp_read_security_header(s, &sec_flags)) { - fprintf(stderr, "%s: invalid security header\n", __FUNCTION__); + DEBUG_WARN( "%s: invalid security header\n", __FUNCTION__); return FALSE; } if ((sec_flags & SEC_EXCHANGE_PKT) == 0) { - fprintf(stderr, "%s: missing SEC_EXCHANGE_PKT in security header\n", __FUNCTION__); + DEBUG_WARN( "%s: missing SEC_EXCHANGE_PKT in security header\n", __FUNCTION__); return FALSE; } @@ -544,7 +544,7 @@ BOOL rdp_server_establish_keys(rdpRdp* rdp, wStream* s) if (rand_len != key_len + 8) { - fprintf(stderr, "%s: invalid encrypted client random length\n", __FUNCTION__); + DEBUG_WARN( "%s: invalid encrypted client random length\n", __FUNCTION__); goto end2; } @@ -573,21 +573,21 @@ BOOL rdp_server_establish_keys(rdpRdp* rdp, wStream* s) rdp->fips_encrypt = crypto_des3_encrypt_init(rdp->fips_encrypt_key, fips_ivec); if (!rdp->fips_encrypt) { - fprintf(stderr, "%s: unable to allocate des3 encrypt key\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate des3 encrypt key\n", __FUNCTION__); goto end; } rdp->fips_decrypt = crypto_des3_decrypt_init(rdp->fips_decrypt_key, fips_ivec); if (!rdp->fips_decrypt) { - fprintf(stderr, "%s: unable to allocate des3 decrypt key\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate des3 decrypt key\n", __FUNCTION__); goto end; } rdp->fips_hmac = crypto_hmac_new(); if (!rdp->fips_hmac) { - fprintf(stderr, "%s: unable to allocate fips hmac\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate fips hmac\n", __FUNCTION__); goto end; } ret = TRUE; @@ -597,14 +597,14 @@ BOOL rdp_server_establish_keys(rdpRdp* rdp, wStream* s) rdp->rc4_decrypt_key = crypto_rc4_init(rdp->decrypt_key, rdp->rc4_key_len); if (!rdp->rc4_decrypt_key) { - fprintf(stderr, "%s: unable to allocate rc4 decrypt key\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate rc4 decrypt key\n", __FUNCTION__); goto end; } rdp->rc4_encrypt_key = crypto_rc4_init(rdp->encrypt_key, rdp->rc4_key_len); if (!rdp->rc4_encrypt_key) { - fprintf(stderr, "%s: unable to allocate rc4 encrypt key\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate rc4 encrypt key\n", __FUNCTION__); goto end; } ret = TRUE; @@ -622,7 +622,7 @@ BOOL rdp_client_connect_mcs_connect_response(rdpRdp* rdp, wStream* s) { if (!mcs_recv_connect_response(rdp->mcs, s)) { - fprintf(stderr, "rdp_client_connect_mcs_connect_response: mcs_recv_connect_response failed\n"); + DEBUG_WARN( "rdp_client_connect_mcs_connect_response: mcs_recv_connect_response failed\n"); return FALSE; } @@ -786,7 +786,7 @@ int rdp_client_connect_license(rdpRdp* rdp, wStream* s) if (rdp->license->state == LICENSE_STATE_ABORTED) { - fprintf(stderr, "license connection sequence aborted.\n"); + DEBUG_WARN( "license connection sequence aborted.\n"); return -1; } @@ -966,13 +966,13 @@ BOOL rdp_server_accept_nego(rdpRdp* rdp, wStream* s) nego->selected_protocol = 0; - fprintf(stderr, "Client Security: NLA:%d TLS:%d RDP:%d\n", + DEBUG_WARN( "Client Security: NLA:%d TLS:%d RDP:%d\n", (nego->requested_protocols & PROTOCOL_NLA) ? 1 : 0, (nego->requested_protocols & PROTOCOL_TLS) ? 1 : 0, (nego->requested_protocols == PROTOCOL_RDP) ? 1 : 0 ); - fprintf(stderr, "Server Security: NLA:%d TLS:%d RDP:%d\n", + DEBUG_WARN( "Server Security: NLA:%d TLS:%d RDP:%d\n", settings->NlaSecurity, settings->TlsSecurity, settings->RdpSecurity); if ((settings->NlaSecurity) && (nego->requested_protocols & PROTOCOL_NLA)) @@ -989,10 +989,10 @@ BOOL rdp_server_accept_nego(rdpRdp* rdp, wStream* s) } else { - fprintf(stderr, "Protocol security negotiation failure\n"); + DEBUG_WARN( "Protocol security negotiation failure\n"); } - fprintf(stderr, "Negotiated Security: NLA:%d TLS:%d RDP:%d\n", + DEBUG_WARN( "Negotiated Security: NLA:%d TLS:%d RDP:%d\n", (nego->selected_protocol & PROTOCOL_NLA) ? 1 : 0, (nego->selected_protocol & PROTOCOL_TLS) ? 1 : 0, (nego->selected_protocol == PROTOCOL_RDP) ? 1: 0 @@ -1028,14 +1028,14 @@ BOOL rdp_server_accept_mcs_connect_initial(rdpRdp* rdp, wStream* s) if (!mcs_recv_connect_initial(mcs, s)) return FALSE; - fprintf(stderr, "Accepted client: %s\n", rdp->settings->ClientHostname); - fprintf(stderr, "Accepted channels:"); + DEBUG_WARN( "Accepted client: %s\n", rdp->settings->ClientHostname); + DEBUG_WARN( "Accepted channels:"); for (i = 0; i < mcs->channelCount; i++) { - fprintf(stderr, " %s", mcs->channels[i].Name); + DEBUG_WARN( " %s", mcs->channels[i].Name); } - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); if (!mcs_send_connect_response(mcs)) return FALSE; diff --git a/libfreerdp/core/errinfo.c b/libfreerdp/core/errinfo.c index 739dc18e4..cb99558f2 100644 --- a/libfreerdp/core/errinfo.c +++ b/libfreerdp/core/errinfo.c @@ -23,6 +23,8 @@ #include +#include + #include "errinfo.h" int connectErrorCode; @@ -563,12 +565,12 @@ void rdp_print_errinfo(UINT32 code) { if (code == errInfo->code) { - fprintf(stderr, "%s (0x%08X):\n%s\n", errInfo->name, code, errInfo->info); + DEBUG_WARN( "%s (0x%08X):\n%s\n", errInfo->name, code, errInfo->info); return; } errInfo++; } - fprintf(stderr, "ERRINFO_UNKNOWN 0x%08X: Unknown error.\n", code); + DEBUG_WARN( "ERRINFO_UNKNOWN 0x%08X: Unknown error.\n", code); } diff --git a/libfreerdp/core/fastpath.c b/libfreerdp/core/fastpath.c index 417770cdc..d3543ef88 100644 --- a/libfreerdp/core/fastpath.c +++ b/libfreerdp/core/fastpath.c @@ -271,7 +271,7 @@ static int fastpath_recv_update(rdpFastPath* fastpath, BYTE updateCode, UINT32 s case FASTPATH_UPDATETYPE_SYNCHRONIZE: if (!fastpath_recv_update_synchronize(fastpath, s)) - fprintf(stderr, "fastpath_recv_update_synchronize failure but we continue\n"); + DEBUG_WARN( "fastpath_recv_update_synchronize failure but we continue\n"); else IFCALL(update->Synchronize, context); break; @@ -377,7 +377,7 @@ static int fastpath_recv_update_data(rdpFastPath* fastpath, wStream* s) if (bulkStatus < 0) { - fprintf(stderr, "bulk_decompress() failed\n"); + DEBUG_WARN( "bulk_decompress() failed\n"); return -1; } @@ -398,7 +398,7 @@ static int fastpath_recv_update_data(rdpFastPath* fastpath, wStream* s) { if (fastpath->fragmentation != -1) { - fprintf(stderr, "Unexpected FASTPATH_FRAGMENT_SINGLE\n"); + DEBUG_WARN( "Unexpected FASTPATH_FRAGMENT_SINGLE\n"); return -1; } @@ -414,7 +414,7 @@ static int fastpath_recv_update_data(rdpFastPath* fastpath, wStream* s) { if (fastpath->fragmentation != -1) { - fprintf(stderr, "Unexpected FASTPATH_FRAGMENT_FIRST\n"); + DEBUG_WARN( "Unexpected FASTPATH_FRAGMENT_FIRST\n"); return -1; } @@ -424,7 +424,7 @@ static int fastpath_recv_update_data(rdpFastPath* fastpath, wStream* s) if (totalSize > transport->settings->MultifragMaxRequestSize) { - fprintf(stderr, "Total size (%d) exceeds MultifragMaxRequestSize (%d)\n", + DEBUG_WARN( "Total size (%d) exceeds MultifragMaxRequestSize (%d)\n", totalSize, transport->settings->MultifragMaxRequestSize); return -1; } @@ -439,7 +439,7 @@ static int fastpath_recv_update_data(rdpFastPath* fastpath, wStream* s) if ((fastpath->fragmentation != FASTPATH_FRAGMENT_FIRST) && (fastpath->fragmentation != FASTPATH_FRAGMENT_NEXT)) { - fprintf(stderr, "Unexpected FASTPATH_FRAGMENT_NEXT\n"); + DEBUG_WARN( "Unexpected FASTPATH_FRAGMENT_NEXT\n"); return -1; } @@ -449,7 +449,7 @@ static int fastpath_recv_update_data(rdpFastPath* fastpath, wStream* s) if (totalSize > transport->settings->MultifragMaxRequestSize) { - fprintf(stderr, "Total size (%d) exceeds MultifragMaxRequestSize (%d)\n", + DEBUG_WARN( "Total size (%d) exceeds MultifragMaxRequestSize (%d)\n", totalSize, transport->settings->MultifragMaxRequestSize); return -1; } @@ -463,7 +463,7 @@ static int fastpath_recv_update_data(rdpFastPath* fastpath, wStream* s) if ((fastpath->fragmentation != FASTPATH_FRAGMENT_FIRST) && (fastpath->fragmentation != FASTPATH_FRAGMENT_NEXT)) { - fprintf(stderr, "Unexpected FASTPATH_FRAGMENT_LAST\n"); + DEBUG_WARN( "Unexpected FASTPATH_FRAGMENT_LAST\n"); return -1; } @@ -473,7 +473,7 @@ static int fastpath_recv_update_data(rdpFastPath* fastpath, wStream* s) if (totalSize > transport->settings->MultifragMaxRequestSize) { - fprintf(stderr, "Total size (%d) exceeds MultifragMaxRequestSize (%d)\n", + DEBUG_WARN( "Total size (%d) exceeds MultifragMaxRequestSize (%d)\n", totalSize, transport->settings->MultifragMaxRequestSize); return -1; } @@ -661,7 +661,7 @@ static BOOL fastpath_recv_input_event(rdpFastPath* fastpath, wStream* s) break; default: - fprintf(stderr, "Unknown eventCode %d\n", eventCode); + DEBUG_WARN( "Unknown eventCode %d\n", eventCode); break; } @@ -768,7 +768,7 @@ BOOL fastpath_send_multiple_input_pdu(rdpFastPath* fastpath, wStream* s, int iNu if (length >= (2 << 14)) { - fprintf(stderr, "Maximum FastPath PDU length is 32767\n"); + DEBUG_WARN( "Maximum FastPath PDU length is 32767\n"); return FALSE; } diff --git a/libfreerdp/core/freerdp.c b/libfreerdp/core/freerdp.c index f40bd6a28..49795a583 100644 --- a/libfreerdp/core/freerdp.c +++ b/libfreerdp/core/freerdp.c @@ -90,7 +90,7 @@ BOOL freerdp_connect(freerdp* instance) freerdp_set_last_error(instance->context, FREERDP_ERROR_PRE_CONNECT_FAILED); } - fprintf(stderr, "freerdp_pre_connect failed\n"); + DEBUG_WARN( "freerdp_pre_connect failed\n"); goto freerdp_connect_finally; } @@ -100,7 +100,7 @@ BOOL freerdp_connect(freerdp* instance) /* --authonly tests the connection without a UI */ if (instance->settings->AuthenticationOnly) { - fprintf(stderr, "Authentication only, exit status %d\n", !status); + DEBUG_WARN( "Authentication only, exit status %d\n", !status); goto freerdp_connect_finally; } @@ -118,7 +118,7 @@ BOOL freerdp_connect(freerdp* instance) if (!status) { - fprintf(stderr, "freerdp_post_connect failed\n"); + DEBUG_WARN( "freerdp_post_connect failed\n"); if (!connectErrorCode) { @@ -482,7 +482,7 @@ UINT32 freerdp_get_last_error(rdpContext* context) void freerdp_set_last_error(rdpContext* context, UINT32 lastError) { if (lastError) - fprintf(stderr, "freerdp_set_last_error 0x%04X\n", lastError); + DEBUG_WARN( "freerdp_set_last_error 0x%04X\n", lastError); context->LastError = lastError; } diff --git a/libfreerdp/core/gateway/http.c b/libfreerdp/core/gateway/http.c index 610b23091..94608858a 100644 --- a/libfreerdp/core/gateway/http.c +++ b/libfreerdp/core/gateway/http.c @@ -26,6 +26,8 @@ #include #include +#include + #ifdef HAVE_VALGRIND_MEMCHECK_H #include #endif @@ -457,9 +459,9 @@ void http_response_print(HttpResponse* http_response) for (i = 0; i < http_response->count; i++) { - fprintf(stderr, "%s\n", http_response->lines[i]); + DEBUG_WARN( "%s\n", http_response->lines[i]); } - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); } HttpResponse* http_response_recv(rdpTls* tls) @@ -513,7 +515,7 @@ HttpResponse* http_response_recv(rdpTls* tls) if (!header_end) { - fprintf(stderr, "%s: invalid response:\n", __FUNCTION__); + DEBUG_WARN( "%s: invalid response:\n", __FUNCTION__); winpr_HexDump(buffer, status); goto out_error; } diff --git a/libfreerdp/core/gateway/ntlm.c b/libfreerdp/core/gateway/ntlm.c index 549726ca4..44f77a6b2 100644 --- a/libfreerdp/core/gateway/ntlm.c +++ b/libfreerdp/core/gateway/ntlm.c @@ -71,7 +71,7 @@ BOOL ntlm_client_init(rdpNtlm* ntlm, BOOL http, char* user, char* domain, char* if (status != SEC_E_OK) { - fprintf(stderr, "QuerySecurityPackageInfo status: 0x%08X\n", status); + DEBUG_WARN( "QuerySecurityPackageInfo status: 0x%08X\n", status); return FALSE; } @@ -82,7 +82,7 @@ BOOL ntlm_client_init(rdpNtlm* ntlm, BOOL http, char* user, char* domain, char* if (status != SEC_E_OK) { - fprintf(stderr, "AcquireCredentialsHandle status: 0x%08X\n", status); + DEBUG_WARN( "AcquireCredentialsHandle status: 0x%08X\n", status); return FALSE; } @@ -235,7 +235,7 @@ BOOL ntlm_authenticate(rdpNtlm* ntlm) if ((!ntlm) || (!ntlm->table)) { - fprintf(stderr, "ntlm_authenticate: invalid ntlm context\n"); + DEBUG_WARN( "ntlm_authenticate: invalid ntlm context\n"); return FALSE; } @@ -254,7 +254,7 @@ BOOL ntlm_authenticate(rdpNtlm* ntlm) if (ntlm->table->QueryContextAttributes(&ntlm->context, SECPKG_ATTR_SIZES, &ntlm->ContextSizes) != SEC_E_OK) { - fprintf(stderr, "QueryContextAttributes SECPKG_ATTR_SIZES failure\n"); + DEBUG_WARN( "QueryContextAttributes SECPKG_ATTR_SIZES failure\n"); return FALSE; } diff --git a/libfreerdp/core/gateway/rpc.c b/libfreerdp/core/gateway/rpc.c index ad177fe65..fd13e48c2 100644 --- a/libfreerdp/core/gateway/rpc.c +++ b/libfreerdp/core/gateway/rpc.c @@ -92,45 +92,45 @@ const RPC_SECURITY_PROVIDER_INFO RPC_SECURITY_PROVIDER_INFO_TABLE[] = void rpc_pdu_header_print(rpcconn_hdr_t* header) { - fprintf(stderr, "rpc_vers: %d\n", header->common.rpc_vers); - fprintf(stderr, "rpc_vers_minor: %d\n", header->common.rpc_vers_minor); + DEBUG_WARN( "rpc_vers: %d\n", header->common.rpc_vers); + DEBUG_WARN( "rpc_vers_minor: %d\n", header->common.rpc_vers_minor); if (header->common.ptype > PTYPE_RTS) - fprintf(stderr, "ptype: %s (%d)\n", "PTYPE_UNKNOWN", header->common.ptype); + DEBUG_WARN( "ptype: %s (%d)\n", "PTYPE_UNKNOWN", header->common.ptype); else - fprintf(stderr, "ptype: %s (%d)\n", PTYPE_STRINGS[header->common.ptype], header->common.ptype); + DEBUG_WARN( "ptype: %s (%d)\n", PTYPE_STRINGS[header->common.ptype], header->common.ptype); - fprintf(stderr, "pfc_flags (0x%02X) = {", header->common.pfc_flags); + DEBUG_WARN( "pfc_flags (0x%02X) = {", header->common.pfc_flags); if (header->common.pfc_flags & PFC_FIRST_FRAG) - fprintf(stderr, " PFC_FIRST_FRAG"); + DEBUG_WARN( " PFC_FIRST_FRAG"); if (header->common.pfc_flags & PFC_LAST_FRAG) - fprintf(stderr, " PFC_LAST_FRAG"); + DEBUG_WARN( " PFC_LAST_FRAG"); if (header->common.pfc_flags & PFC_PENDING_CANCEL) - fprintf(stderr, " PFC_PENDING_CANCEL"); + DEBUG_WARN( " PFC_PENDING_CANCEL"); if (header->common.pfc_flags & PFC_RESERVED_1) - fprintf(stderr, " PFC_RESERVED_1"); + DEBUG_WARN( " PFC_RESERVED_1"); if (header->common.pfc_flags & PFC_CONC_MPX) - fprintf(stderr, " PFC_CONC_MPX"); + DEBUG_WARN( " PFC_CONC_MPX"); if (header->common.pfc_flags & PFC_DID_NOT_EXECUTE) - fprintf(stderr, " PFC_DID_NOT_EXECUTE"); + DEBUG_WARN( " PFC_DID_NOT_EXECUTE"); if (header->common.pfc_flags & PFC_OBJECT_UUID) - fprintf(stderr, " PFC_OBJECT_UUID"); - fprintf(stderr, " }\n"); + DEBUG_WARN( " PFC_OBJECT_UUID"); + DEBUG_WARN( " }\n"); - fprintf(stderr, "packed_drep[4]: %02X %02X %02X %02X\n", + DEBUG_WARN( "packed_drep[4]: %02X %02X %02X %02X\n", header->common.packed_drep[0], header->common.packed_drep[1], header->common.packed_drep[2], header->common.packed_drep[3]); - fprintf(stderr, "frag_length: %d\n", header->common.frag_length); - fprintf(stderr, "auth_length: %d\n", header->common.auth_length); - fprintf(stderr, "call_id: %d\n", header->common.call_id); + DEBUG_WARN( "frag_length: %d\n", header->common.frag_length); + DEBUG_WARN( "auth_length: %d\n", header->common.auth_length); + DEBUG_WARN( "call_id: %d\n", header->common.call_id); if (header->common.ptype == PTYPE_RESPONSE) { - fprintf(stderr, "alloc_hint: %d\n", header->response.alloc_hint); - fprintf(stderr, "p_cont_id: %d\n", header->response.p_cont_id); - fprintf(stderr, "cancel_count: %d\n", header->response.cancel_count); - fprintf(stderr, "reserved: %d\n", header->response.reserved); + DEBUG_WARN( "alloc_hint: %d\n", header->response.alloc_hint); + DEBUG_WARN( "p_cont_id: %d\n", header->response.p_cont_id); + DEBUG_WARN( "cancel_count: %d\n", header->response.cancel_count); + DEBUG_WARN( "reserved: %d\n", header->response.reserved); } } @@ -265,7 +265,7 @@ BOOL rpc_get_stub_data_info(rdpRpc* rpc, BYTE* buffer, UINT32* offset, UINT32* l *offset += 4; break; default: - fprintf(stderr, "%s: unknown ptype=0x%x\n", __FUNCTION__, header->common.ptype); + DEBUG_WARN( "%s: unknown ptype=0x%x\n", __FUNCTION__, header->common.ptype); return FALSE; } @@ -290,7 +290,7 @@ BOOL rpc_get_stub_data_info(rdpRpc* rpc, BYTE* buffer, UINT32* offset, UINT32* l auth_pad_length = sec_trailer->auth_pad_length; #if 0 - fprintf(stderr, "sec_trailer: type: %d level: %d pad_length: %d reserved: %d context_id: %d\n", + DEBUG_WARN( "sec_trailer: type: %d level: %d pad_length: %d reserved: %d context_id: %d\n", sec_trailer->auth_type, sec_trailer->auth_level, sec_trailer->auth_pad_length, @@ -306,7 +306,7 @@ BOOL rpc_get_stub_data_info(rdpRpc* rpc, BYTE* buffer, UINT32* offset, UINT32* l if ((frag_length - (sec_trailer_offset + 8)) != auth_length) { - fprintf(stderr, "invalid auth_length: actual: %d, expected: %d\n", auth_length, + DEBUG_WARN( "invalid auth_length: actual: %d, expected: %d\n", auth_length, (frag_length - (sec_trailer_offset + 8))); } @@ -347,10 +347,10 @@ int rpc_in_write(rdpRpc* rpc, const BYTE* data, int length) int status; #ifdef WITH_DEBUG_TSG - fprintf(stderr, "Sending PDU (length: %d)\n", length); + DEBUG_WARN( "Sending PDU (length: %d)\n", length); rpc_pdu_header_print((rpcconn_hdr_t*) data); winpr_HexDump(data, length); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); #endif status = tls_write_all(rpc->TlsIn, data, length); @@ -374,13 +374,13 @@ int rpc_write(rdpRpc* rpc, BYTE* data, int length, UINT16 opnum) if (!ntlm || !ntlm->table) { - fprintf(stderr, "%s: invalid ntlm context\n", __FUNCTION__); + DEBUG_WARN( "%s: invalid ntlm context\n", __FUNCTION__); return -1; } if (ntlm->table->QueryContextAttributes(&ntlm->context, SECPKG_ATTR_SIZES, &ntlm->ContextSizes) != SEC_E_OK) { - fprintf(stderr, "%s: QueryContextAttributes SECPKG_ATTR_SIZES failure\n", __FUNCTION__); + DEBUG_WARN( "%s: QueryContextAttributes SECPKG_ATTR_SIZES failure\n", __FUNCTION__); return -1; } @@ -456,7 +456,7 @@ int rpc_write(rdpRpc* rpc, BYTE* data, int length, UINT16 opnum) encrypt_status = ntlm->table->EncryptMessage(&ntlm->context, 0, &Message, rpc->SendSeqNum++); if (encrypt_status != SEC_E_OK) { - fprintf(stderr, "EncryptMessage status: 0x%08X\n", encrypt_status); + DEBUG_WARN( "EncryptMessage status: 0x%08X\n", encrypt_status); free(request_pdu); return -1; } @@ -486,7 +486,7 @@ BOOL rpc_connect(rdpRpc* rpc) if (!rts_connect(rpc)) { - fprintf(stderr, "rts_connect error!\n"); + DEBUG_WARN( "rts_connect error!\n"); return FALSE; } @@ -494,7 +494,7 @@ BOOL rpc_connect(rdpRpc* rpc) if (rpc_secure_bind(rpc) != 0) { - fprintf(stderr, "rpc_secure_bind error!\n"); + DEBUG_WARN( "rpc_secure_bind error!\n"); return FALSE; } diff --git a/libfreerdp/core/gateway/rpc_bind.c b/libfreerdp/core/gateway/rpc_bind.c index ceae95159..b7674ee02 100644 --- a/libfreerdp/core/gateway/rpc_bind.c +++ b/libfreerdp/core/gateway/rpc_bind.c @@ -391,7 +391,7 @@ int rpc_secure_bind(rdpRpc* rpc) if (status <= 0) { - fprintf(stderr, "rpc_secure_bind: error sending bind pdu!\n"); + DEBUG_WARN( "rpc_secure_bind: error sending bind pdu!\n"); return -1; } @@ -403,13 +403,13 @@ int rpc_secure_bind(rdpRpc* rpc) if (!pdu) { - fprintf(stderr, "rpc_secure_bind: error receiving bind ack pdu!\n"); + DEBUG_WARN( "rpc_secure_bind: error receiving bind ack pdu!\n"); return -1; } if (rpc_recv_bind_ack_pdu(rpc, Stream_Buffer(pdu->s), Stream_Length(pdu->s)) <= 0) { - fprintf(stderr, "rpc_secure_bind: error receiving bind ack pdu!\n"); + DEBUG_WARN( "rpc_secure_bind: error receiving bind ack pdu!\n"); return -1; } @@ -417,7 +417,7 @@ int rpc_secure_bind(rdpRpc* rpc) if (rpc_send_rpc_auth_3_pdu(rpc) <= 0) { - fprintf(stderr, "rpc_secure_bind: error sending rpc_auth_3 pdu!\n"); + DEBUG_WARN( "rpc_secure_bind: error sending rpc_auth_3 pdu!\n"); return -1; } @@ -425,7 +425,7 @@ int rpc_secure_bind(rdpRpc* rpc) } else { - fprintf(stderr, "rpc_secure_bind: invalid state: %d\n", rpc->State); + DEBUG_WARN( "rpc_secure_bind: invalid state: %d\n", rpc->State); return -1; } } diff --git a/libfreerdp/core/gateway/rpc_client.c b/libfreerdp/core/gateway/rpc_client.c index c3613f6be..d04403d5d 100644 --- a/libfreerdp/core/gateway/rpc_client.c +++ b/libfreerdp/core/gateway/rpc_client.c @@ -134,10 +134,10 @@ int rpc_client_on_fragment_received_event(rdpRpc* rpc) case PTYPE_RTS: if (rpc->VirtualConnection->State < VIRTUAL_CONNECTION_STATE_OPENED) { - fprintf(stderr, "%s: warning: unhandled RTS PDU\n", __FUNCTION__); + DEBUG_WARN( "%s: warning: unhandled RTS PDU\n", __FUNCTION__); return 0; } - fprintf(stderr, "%s: Receiving Out-of-Sequence RTS PDU\n", __FUNCTION__); + DEBUG_WARN( "%s: Receiving Out-of-Sequence RTS PDU\n", __FUNCTION__); rts_recv_out_of_sequence_pdu(rpc, buffer, header->common.frag_length); rpc_client_fragment_pool_return(rpc, fragment); return 0; @@ -149,7 +149,7 @@ int rpc_client_on_fragment_received_event(rdpRpc* rpc) case PTYPE_RESPONSE: break; default: - fprintf(stderr, "%s: unexpected RPC PDU type %d\n", __FUNCTION__, header->common.ptype); + DEBUG_WARN( "%s: unexpected RPC PDU type %d\n", __FUNCTION__, header->common.ptype); Queue_Enqueue(rpc->client->ReceiveQueue, NULL); return -1; } @@ -159,15 +159,15 @@ int rpc_client_on_fragment_received_event(rdpRpc* rpc) if (!rpc_get_stub_data_info(rpc, buffer, &StubOffset, &StubLength)) { - fprintf(stderr, "%s: expected stub\n", __FUNCTION__); + DEBUG_WARN( "%s: expected stub\n", __FUNCTION__); Queue_Enqueue(rpc->client->ReceiveQueue, NULL); return -1; } if (StubLength == 4) { - //fprintf(stderr, "Ignoring TsProxySendToServer Response\n"); - //printf("Got stub length 4 with flags %d and callid %d\n", header->common.pfc_flags, header->common.call_id); + //DEBUG_WARN( "Ignoring TsProxySendToServer Response\n"); + //DEBUG_MSG("Got stub length 4 with flags %d and callid %d\n", header->common.pfc_flags, header->common.call_id); /* received a disconnect request from the server? */ if ((header->common.call_id == rpc->PipeCallId) && (header->common.pfc_flags & PFC_LAST_FRAG)) @@ -195,7 +195,7 @@ int rpc_client_on_fragment_received_event(rdpRpc* rpc) if (rpc->StubCallId != header->common.call_id) { - fprintf(stderr, "%s: invalid call_id: actual: %d, expected: %d, frag_count: %d\n", __FUNCTION__, + DEBUG_WARN( "%s: invalid call_id: actual: %d, expected: %d, frag_count: %d\n", __FUNCTION__, rpc->StubCallId, header->common.call_id, rpc->StubFragCount); } @@ -206,7 +206,7 @@ int rpc_client_on_fragment_received_event(rdpRpc* rpc) if (rpc->VirtualConnection->DefaultOutChannel->ReceiverAvailableWindow < (rpc->ReceiveWindow / 2)) { - //fprintf(stderr, "Sending Flow Control Ack PDU\n"); + //DEBUG_WARN( "Sending Flow Control Ack PDU\n"); rts_send_flow_control_ack_pdu(rpc); } @@ -256,7 +256,7 @@ int rpc_client_on_read_event(rdpRpc* rpc) if (status < 0) { - fprintf(stderr, "rpc_client_frag_read: error reading header\n"); + DEBUG_WARN( "rpc_client_frag_read: error reading header\n"); return -1; } @@ -274,7 +274,7 @@ int rpc_client_on_read_event(rdpRpc* rpc) if (header->frag_length > rpc->max_recv_frag) { - fprintf(stderr, "rpc_client_frag_read: invalid fragment size: %d (max: %d)\n", + DEBUG_WARN( "rpc_client_frag_read: invalid fragment size: %d (max: %d)\n", header->frag_length, rpc->max_recv_frag); winpr_HexDump(Stream_Buffer(rpc->client->RecvFrag), Stream_GetPosition(rpc->client->RecvFrag)); return -1; @@ -287,7 +287,7 @@ int rpc_client_on_read_event(rdpRpc* rpc) if (status < 0) { - fprintf(stderr, "%s: error reading fragment body\n", __FUNCTION__); + DEBUG_WARN( "%s: error reading fragment body\n", __FUNCTION__); return -1; } @@ -390,7 +390,7 @@ int rpc_send_enqueue_pdu(rdpRpc* rpc, BYTE* buffer, UINT32 length) status = WaitForSingleObject(rpc->client->PduSentEvent, SYNCHRONOUS_TIMEOUT); if (status == WAIT_TIMEOUT) { - fprintf(stderr, "%s: timed out waiting for pdu sent event %p\n", __FUNCTION__, rpc->client->PduSentEvent); + DEBUG_WARN( "%s: timed out waiting for pdu sent event %p\n", __FUNCTION__, rpc->client->PduSentEvent); return -1; } @@ -462,7 +462,7 @@ RPC_PDU* rpc_recv_dequeue_pdu(rdpRpc* rpc) result = WaitForSingleObject(Queue_Event(rpc->client->ReceiveQueue), dwMilliseconds); if (result == WAIT_TIMEOUT) { - fprintf(stderr, "%s: timed out waiting for receive event\n", __FUNCTION__); + DEBUG_WARN( "%s: timed out waiting for receive event\n", __FUNCTION__); return NULL; } @@ -474,13 +474,13 @@ RPC_PDU* rpc_recv_dequeue_pdu(rdpRpc* rpc) #ifdef WITH_DEBUG_TSG if (pdu) { - fprintf(stderr, "Receiving PDU (length: %d, CallId: %d)\n", pdu->s->length, pdu->CallId); + DEBUG_WARN( "Receiving PDU (length: %d, CallId: %d)\n", pdu->s->length, pdu->CallId); winpr_HexDump(Stream_Buffer(pdu->s), Stream_Length(pdu->s)); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); } else { - fprintf(stderr, "Receiving a NULL PDU\n"); + DEBUG_WARN( "Receiving a NULL PDU\n"); } #endif @@ -527,7 +527,7 @@ static void* rpc_client_thread(void* arg) */ if (rpc_client_on_read_event(rpc) < 0) { - fprintf(stderr, "%s: an error occured when treating first packet\n", __FUNCTION__); + DEBUG_WARN( "%s: an error occured when treating first packet\n", __FUNCTION__); goto out; } diff --git a/libfreerdp/core/gateway/rpc_fault.c b/libfreerdp/core/gateway/rpc_fault.c index 925efc6e8..a1cf9a44c 100644 --- a/libfreerdp/core/gateway/rpc_fault.c +++ b/libfreerdp/core/gateway/rpc_fault.c @@ -315,7 +315,7 @@ int rpc_recv_fault_pdu(rpcconn_hdr_t* header) int index; UINT32 code; - fprintf(stderr, "RPC Fault PDU:\n"); + DEBUG_WARN( "RPC Fault PDU:\n"); code = rpc_map_status_code_to_win32_error_code(header->fault.status); @@ -323,7 +323,7 @@ int rpc_recv_fault_pdu(rpcconn_hdr_t* header) { if (RPC_FAULT_CODES[index].code == code) { - fprintf(stderr, "status: %s (0x%08X)\n", RPC_FAULT_CODES[index].name, code); + DEBUG_WARN( "status: %s (0x%08X)\n", RPC_FAULT_CODES[index].name, code); return 0; } } @@ -332,12 +332,12 @@ int rpc_recv_fault_pdu(rpcconn_hdr_t* header) { if (RPC_TSG_FAULT_CODES[index].code == code) { - fprintf(stderr, "status: %s (0x%08X)\n", RPC_TSG_FAULT_CODES[index].name, code); + DEBUG_WARN( "status: %s (0x%08X)\n", RPC_TSG_FAULT_CODES[index].name, code); return 0; } } - fprintf(stderr, "status: %s (0x%08X)\n", "UNKNOWN", code); + DEBUG_WARN( "status: %s (0x%08X)\n", "UNKNOWN", code); return 0; } diff --git a/libfreerdp/core/gateway/rts.c b/libfreerdp/core/gateway/rts.c index d57a4240d..29105558c 100644 --- a/libfreerdp/core/gateway/rts.c +++ b/libfreerdp/core/gateway/rts.c @@ -93,25 +93,25 @@ BOOL rts_connect(rdpRpc* rpc) if (!rpc_ntlm_http_out_connect(rpc)) { - fprintf(stderr, "%s: rpc_out_connect_http error!\n", __FUNCTION__); + DEBUG_WARN( "%s: rpc_out_connect_http error!\n", __FUNCTION__); return FALSE; } if (rts_send_CONN_A1_pdu(rpc) != 0) { - fprintf(stderr, "%s: rpc_send_CONN_A1_pdu error!\n", __FUNCTION__); + DEBUG_WARN( "%s: rpc_send_CONN_A1_pdu error!\n", __FUNCTION__); return FALSE; } if (!rpc_ntlm_http_in_connect(rpc)) { - fprintf(stderr, "%s: rpc_in_connect_http error!\n", __FUNCTION__); + DEBUG_WARN( "%s: rpc_in_connect_http error!\n", __FUNCTION__); return FALSE; } if (rts_send_CONN_B1_pdu(rpc) < 0) { - fprintf(stderr, "%s: rpc_send_CONN_B1_pdu error!\n", __FUNCTION__); + DEBUG_WARN( "%s: rpc_send_CONN_B1_pdu error!\n", __FUNCTION__); return FALSE; } @@ -149,13 +149,13 @@ BOOL rts_connect(rdpRpc* rpc) http_response = http_response_recv(rpc->TlsOut); if (!http_response) { - fprintf(stderr, "%s: unable to retrieve OUT Channel Response!\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to retrieve OUT Channel Response!\n", __FUNCTION__); return FALSE; } if (http_response->StatusCode != HTTP_STATUS_OK) { - fprintf(stderr, "%s: error! Status Code: %d\n", __FUNCTION__, http_response->StatusCode); + DEBUG_WARN( "%s: error! Status Code: %d\n", __FUNCTION__, http_response->StatusCode); http_response_print(http_response); http_response_free(http_response); @@ -215,7 +215,7 @@ BOOL rts_connect(rdpRpc* rpc) if (!rts_match_pdu_signature(rpc, &RTS_PDU_CONN_A3_SIGNATURE, rts)) { - fprintf(stderr, "%s: unexpected RTS PDU: Expected CONN/A3\n", __FUNCTION__); + DEBUG_WARN( "%s: unexpected RTS PDU: Expected CONN/A3\n", __FUNCTION__); return FALSE; } @@ -255,7 +255,7 @@ BOOL rts_connect(rdpRpc* rpc) if (!rts_match_pdu_signature(rpc, &RTS_PDU_CONN_C2_SIGNATURE, rts)) { - fprintf(stderr, "%s: unexpected RTS PDU: Expected CONN/C2\n", __FUNCTION__); + DEBUG_WARN( "%s: unexpected RTS PDU: Expected CONN/C2\n", __FUNCTION__); return FALSE; } @@ -880,9 +880,9 @@ int rts_recv_flow_control_ack_pdu(rdpRpc* rpc, BYTE* buffer, UINT32 length) &BytesReceived, &AvailableWindow, (BYTE*) &ChannelCookie) + 4; #if 0 - fprintf(stderr, "BytesReceived: %d AvailableWindow: %d\n", + DEBUG_WARN( "BytesReceived: %d AvailableWindow: %d\n", BytesReceived, AvailableWindow); - fprintf(stderr, "ChannelCookie: " RPC_UUID_FORMAT_STRING "\n", RPC_UUID_FORMAT_ARGUMENTS(ChannelCookie)); + DEBUG_WARN( "ChannelCookie: " RPC_UUID_FORMAT_STRING "\n", RPC_UUID_FORMAT_ARGUMENTS(ChannelCookie)); #endif rpc->VirtualConnection->DefaultInChannel->SenderAvailableWindow = @@ -921,9 +921,9 @@ int rts_recv_flow_control_ack_with_destination_pdu(rdpRpc* rpc, BYTE* buffer, UI &BytesReceived, &AvailableWindow, (BYTE*) &ChannelCookie) + 4; #if 0 - fprintf(stderr, "Destination: %d BytesReceived: %d AvailableWindow: %d\n", + DEBUG_WARN( "Destination: %d BytesReceived: %d AvailableWindow: %d\n", Destination, BytesReceived, AvailableWindow); - fprintf(stderr, "ChannelCookie: " RPC_UUID_FORMAT_STRING "\n", RPC_UUID_FORMAT_ARGUMENTS(ChannelCookie)); + DEBUG_WARN( "ChannelCookie: " RPC_UUID_FORMAT_STRING "\n", RPC_UUID_FORMAT_ARGUMENTS(ChannelCookie)); #endif rpc->VirtualConnection->DefaultInChannel->SenderAvailableWindow = @@ -1027,7 +1027,7 @@ int rts_command_length(rdpRpc* rpc, UINT32 CommandType, BYTE* buffer, UINT32 len break; default: - fprintf(stderr, "Error: Unknown RTS Command Type: 0x%x\n", CommandType); + DEBUG_WARN( "Error: Unknown RTS Command Type: 0x%x\n", CommandType); return -1; break; } @@ -1055,7 +1055,7 @@ int rts_recv_out_of_sequence_pdu(rdpRpc* rpc, BYTE* buffer, UINT32 length) case RTS_PDU_PING: return rts_send_ping_pdu(rpc); default: - fprintf(stderr, "%s: unimplemented signature id: 0x%08X\n", __FUNCTION__, SignatureId); + DEBUG_WARN( "%s: unimplemented signature id: 0x%08X\n", __FUNCTION__, SignatureId); rts_print_pdu_signature(rpc, &signature); break; } diff --git a/libfreerdp/core/gateway/rts_signature.c b/libfreerdp/core/gateway/rts_signature.c index 47242ca63..e52e09b1a 100644 --- a/libfreerdp/core/gateway/rts_signature.c +++ b/libfreerdp/core/gateway/rts_signature.c @@ -318,13 +318,13 @@ int rts_print_pdu_signature(rdpRpc* rpc, RtsPduSignature* signature) UINT32 SignatureId; RTS_PDU_SIGNATURE_ENTRY* entry; - fprintf(stderr, "RTS PDU Signature: Flags: 0x%04X NumberOfCommands: %d\n", + DEBUG_WARN( "RTS PDU Signature: Flags: 0x%04X NumberOfCommands: %d\n", signature->Flags, signature->NumberOfCommands); SignatureId = rts_identify_pdu_signature(rpc, signature, &entry); if (SignatureId) - fprintf(stderr, "Identified %s RTS PDU\n", entry->PduName); + DEBUG_WARN( "Identified %s RTS PDU\n", entry->PduName); return 0; } diff --git a/libfreerdp/core/gateway/tsg.c b/libfreerdp/core/gateway/tsg.c index 5491fe8af..accef1ff1 100644 --- a/libfreerdp/core/gateway/tsg.c +++ b/libfreerdp/core/gateway/tsg.c @@ -131,7 +131,7 @@ DWORD TsProxySendToServer(handle_t IDL_handle, byte pRpcMessage[], UINT32 count, if (status <= 0) { - fprintf(stderr, "rpc_write failed!\n"); + DEBUG_WARN( "rpc_write failed!\n"); return -1; } @@ -303,7 +303,7 @@ BOOL TsProxyCreateTunnelReadResponse(rdpTsg* tsg, RPC_PDU* pdu) if (versionCaps->tsgHeader.ComponentId != TS_GATEWAY_TRANSPORT) { - fprintf(stderr, "Unexpected ComponentId: 0x%04X, Expected TS_GATEWAY_TRANSPORT\n", + DEBUG_WARN( "Unexpected ComponentId: 0x%04X, Expected TS_GATEWAY_TRANSPORT\n", versionCaps->tsgHeader.ComponentId); free(packetCapsResponse); free(versionCaps); @@ -334,7 +334,7 @@ BOOL TsProxyCreateTunnelReadResponse(rdpTsg* tsg, RPC_PDU* pdu) if ((SwitchValue != TSG_CAPABILITY_TYPE_NAP) || (tsgCaps->capabilityType != TSG_CAPABILITY_TYPE_NAP)) { - fprintf(stderr, "Unexpected CapabilityType: 0x%08X, Expected TSG_CAPABILITY_TYPE_NAP\n", + DEBUG_WARN( "Unexpected CapabilityType: 0x%08X, Expected TSG_CAPABILITY_TYPE_NAP\n", tsgCaps->capabilityType); free(tsgCaps); free(versionCaps); @@ -365,7 +365,7 @@ BOOL TsProxyCreateTunnelReadResponse(rdpTsg* tsg, RPC_PDU* pdu) if (MsgBytes > TSG_MESSAGING_MAX_MESSAGE_LENGTH) { - fprintf(stderr, "Out of Spec Message Length %d", MsgBytes); + DEBUG_WARN( "Out of Spec Message Length %d", MsgBytes); free(tsgCaps); free(versionCaps); free(packetCapsResponse); @@ -382,7 +382,7 @@ BOOL TsProxyCreateTunnelReadResponse(rdpTsg* tsg, RPC_PDU* pdu) break; default: - fprintf(stderr, "Unexpected Message Type: 0x%X\n", (int) MessageSwitchValue); + DEBUG_WARN( "Unexpected Message Type: 0x%X\n", (int) MessageSwitchValue); free(tsgCaps); free(versionCaps); free(packetCapsResponse); @@ -401,9 +401,9 @@ BOOL TsProxyCreateTunnelReadResponse(rdpTsg* tsg, RPC_PDU* pdu) // HRESULT ReturnValue #ifdef WITH_DEBUG_TSG - fprintf(stderr, "TSG TunnelContext:\n"); + DEBUG_WARN( "TSG TunnelContext:\n"); winpr_HexDump((void*) &tsg->TunnelContext, 20); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); #endif free(tsgCaps); @@ -461,7 +461,7 @@ BOOL TsProxyCreateTunnelReadResponse(rdpTsg* tsg, RPC_PDU* pdu) if (versionCaps->tsgHeader.ComponentId != TS_GATEWAY_TRANSPORT) { - fprintf(stderr, "Unexpected ComponentId: 0x%04X, Expected TS_GATEWAY_TRANSPORT\n", + DEBUG_WARN( "Unexpected ComponentId: 0x%04X, Expected TS_GATEWAY_TRANSPORT\n", versionCaps->tsgHeader.ComponentId); free(versionCaps); free(packetQuarEncResponse); @@ -491,9 +491,9 @@ BOOL TsProxyCreateTunnelReadResponse(rdpTsg* tsg, RPC_PDU* pdu) offset += 20; #ifdef WITH_DEBUG_TSG - fprintf(stderr, "TSG TunnelContext:\n"); + DEBUG_WARN( "TSG TunnelContext:\n"); winpr_HexDump((void*) &tsg->TunnelContext, 20); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); #endif free(versionCaps); @@ -501,7 +501,7 @@ BOOL TsProxyCreateTunnelReadResponse(rdpTsg* tsg, RPC_PDU* pdu) } else { - fprintf(stderr, "Unexpected PacketId: 0x%08X, Expected TSG_PACKET_TYPE_CAPS_RESPONSE " + DEBUG_WARN( "Unexpected PacketId: 0x%08X, Expected TSG_PACKET_TYPE_CAPS_RESPONSE " "or TSG_PACKET_TYPE_QUARENC_RESPONSE\n", packet->packetId); free(packet); return FALSE; @@ -531,7 +531,7 @@ BOOL TsProxyCreateTunnel(rdpTsg* tsg, PTSG_PACKET tsgPacket, PTSG_PACKET* tsgPac if (!TsProxyCreateTunnelWriteRequest(tsg)) { - fprintf(stderr, "TsProxyCreateTunnel: error writing request\n"); + DEBUG_WARN( "TsProxyCreateTunnel: error writing request\n"); return FALSE; } @@ -633,15 +633,15 @@ BOOL TsProxyAuthorizeTunnelReadResponse(rdpTsg* tsg, RPC_PDU* pdu) if (packet->packetId == E_PROXY_NAP_ACCESSDENIED) { - fprintf(stderr, "status: E_PROXY_NAP_ACCESSDENIED (0x%08X)\n", E_PROXY_NAP_ACCESSDENIED); - fprintf(stderr, "Ensure that the Gateway Connection Authorization Policy is correct\n"); + DEBUG_WARN( "status: E_PROXY_NAP_ACCESSDENIED (0x%08X)\n", E_PROXY_NAP_ACCESSDENIED); + DEBUG_WARN( "Ensure that the Gateway Connection Authorization Policy is correct\n"); free(packet); return FALSE; } if ((packet->packetId != TSG_PACKET_TYPE_RESPONSE) || (SwitchValue != TSG_PACKET_TYPE_RESPONSE)) { - fprintf(stderr, "Unexpected PacketId: 0x%08X, Expected TSG_PACKET_TYPE_RESPONSE\n", + DEBUG_WARN( "Unexpected PacketId: 0x%08X, Expected TSG_PACKET_TYPE_RESPONSE\n", packet->packetId); free(packet); return FALSE; @@ -656,7 +656,7 @@ BOOL TsProxyAuthorizeTunnelReadResponse(rdpTsg* tsg, RPC_PDU* pdu) if (packetResponse->flags != TSG_PACKET_TYPE_QUARREQUEST) { - fprintf(stderr, "Unexpected Packet Response Flags: 0x%08X, Expected TSG_PACKET_TYPE_QUARREQUEST\n", + DEBUG_WARN( "Unexpected Packet Response Flags: 0x%08X, Expected TSG_PACKET_TYPE_QUARREQUEST\n", packetResponse->flags); free(packet); free(packetResponse); @@ -682,7 +682,7 @@ BOOL TsProxyAuthorizeTunnelReadResponse(rdpTsg* tsg, RPC_PDU* pdu) if (SizeValue != packetResponse->responseDataLen) { - fprintf(stderr, "Unexpected size value: %d, expected: %d\n", + DEBUG_WARN( "Unexpected size value: %d, expected: %d\n", SizeValue, packetResponse->responseDataLen); free(packetResponse); free(packet); @@ -716,7 +716,7 @@ BOOL TsProxyAuthorizeTunnel(rdpTsg* tsg, PTUNNEL_CONTEXT_HANDLE_NOSERIALIZE tunn if (!TsProxyAuthorizeTunnelWriteRequest(tsg, tunnelContext)) { - fprintf(stderr, "TsProxyAuthorizeTunnel: error writing request\n"); + DEBUG_WARN( "TsProxyAuthorizeTunnel: error writing request\n"); return FALSE; } @@ -797,7 +797,7 @@ BOOL TsProxyMakeTunnelCallReadResponse(rdpTsg* tsg, RPC_PDU* pdu) if ((packet->packetId != TSG_PACKET_TYPE_MESSAGE_PACKET) || (SwitchValue != TSG_PACKET_TYPE_MESSAGE_PACKET)) { - fprintf(stderr, "Unexpected PacketId: 0x%08X, Expected TSG_PACKET_TYPE_MESSAGE_PACKET\n", + DEBUG_WARN( "Unexpected PacketId: 0x%08X, Expected TSG_PACKET_TYPE_MESSAGE_PACKET\n", packet->packetId); free(packet); return FALSE; @@ -832,7 +832,7 @@ BOOL TsProxyMakeTunnelCallReadResponse(rdpTsg* tsg, RPC_PDU* pdu) ActualCount = *((UINT32*) &buffer[offset + 56]); /* ActualCount */ ConvertFromUnicode(CP_UTF8, 0, (WCHAR*) &buffer[offset + 60], ActualCount, &messageText, 0, NULL, NULL); - fprintf(stderr, "Consent Message: %s\n", messageText); + DEBUG_WARN( "Consent Message: %s\n", messageText); free(messageText); break; @@ -853,7 +853,7 @@ BOOL TsProxyMakeTunnelCallReadResponse(rdpTsg* tsg, RPC_PDU* pdu) ActualCount = *((UINT32*) &buffer[offset + 56]); /* ActualCount */ ConvertFromUnicode(CP_UTF8, 0, (WCHAR*) &buffer[offset + 60], ActualCount, &messageText, 0, NULL, NULL); - fprintf(stderr, "Service Message: %s\n", messageText); + DEBUG_WARN( "Service Message: %s\n", messageText); free(messageText); break; @@ -867,7 +867,7 @@ BOOL TsProxyMakeTunnelCallReadResponse(rdpTsg* tsg, RPC_PDU* pdu) break; default: - fprintf(stderr, "TsProxyMakeTunnelCallReadResponse: unexpected message type: %d\n", + DEBUG_WARN( "TsProxyMakeTunnelCallReadResponse: unexpected message type: %d\n", SwitchValue); rc = FALSE; break; @@ -905,7 +905,7 @@ BOOL TsProxyMakeTunnelCall(rdpTsg* tsg, PTUNNEL_CONTEXT_HANDLE_NOSERIALIZE tunne if (!TsProxyMakeTunnelCallWriteRequest(tsg, tunnelContext, procId)) { - fprintf(stderr, "TsProxyMakeTunnelCall: error writing request\n"); + DEBUG_WARN( "TsProxyMakeTunnelCall: error writing request\n"); return FALSE; } @@ -924,9 +924,9 @@ BOOL TsProxyCreateChannelWriteRequest(rdpTsg* tsg, PTUNNEL_CONTEXT_HANDLE_NOSERI count = _wcslen(tsg->Hostname) + 1; #ifdef WITH_DEBUG_TSG - fprintf(stderr, "ResourceName:\n"); + DEBUG_WARN( "ResourceName:\n"); winpr_HexDump((BYTE*) tsg->Hostname, (count - 1) * 2); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); #endif length = 60 + (count * 2); @@ -992,9 +992,9 @@ BOOL TsProxyCreateChannelReadResponse(rdpTsg* tsg, RPC_PDU* pdu) CopyMemory(tsg->ChannelContext.ContextUuid, &buffer[offset + 4], 16); /* ContextUuid (16 bytes) */ #ifdef WITH_DEBUG_TSG - fprintf(stderr, "ChannelContext:\n"); + DEBUG_WARN( "ChannelContext:\n"); winpr_HexDump((void*) &tsg->ChannelContext, 20); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); #endif rpc_client_receive_pool_return(rpc, pdu); @@ -1020,7 +1020,7 @@ BOOL TsProxyCreateChannel(rdpTsg* tsg, PTUNNEL_CONTEXT_HANDLE_NOSERIALIZE tunnel if (!TsProxyCreateChannelWriteRequest(tsg, tunnelContext)) { - fprintf(stderr, "TsProxyCreateChannel: error writing request\n"); + DEBUG_WARN( "TsProxyCreateChannel: error writing request\n"); return FALSE; } @@ -1090,13 +1090,13 @@ HRESULT TsProxyCloseChannel(rdpTsg* tsg, PCHANNEL_CONTEXT_HANDLE_NOSERIALIZE* co if (!TsProxyCloseChannelWriteRequest(tsg, context)) { - fprintf(stderr, "TsProxyCloseChannel: error writing request\n"); + DEBUG_WARN( "TsProxyCloseChannel: error writing request\n"); return FALSE; } if (!TsProxyCloseChannelReadResponse(tsg, pdu)) { - fprintf(stderr, "TsProxyCloseChannel: error reading response\n"); + DEBUG_WARN( "TsProxyCloseChannel: error reading response\n"); return FALSE; } @@ -1166,13 +1166,13 @@ HRESULT TsProxyCloseTunnel(rdpTsg* tsg, PTUNNEL_CONTEXT_HANDLE_SERIALIZE* contex if (!TsProxyCloseTunnelWriteRequest(tsg, context)) { - fprintf(stderr, "TsProxyCloseTunnel: error writing request\n"); + DEBUG_WARN( "TsProxyCloseTunnel: error writing request\n"); return FALSE; } if (!TsProxyCloseTunnelReadResponse(tsg, pdu)) { - fprintf(stderr, "TsProxyCloseTunnel: error reading response\n"); + DEBUG_WARN( "TsProxyCloseTunnel: error reading response\n"); return FALSE; } @@ -1227,7 +1227,7 @@ BOOL TsProxySetupReceivePipe(handle_t IDL_handle, BYTE* pRpcMessage) if (!TsProxySetupReceivePipeWriteRequest(tsg)) { - fprintf(stderr, "TsProxySetupReceivePipe: error writing request\n"); + DEBUG_WARN( "TsProxySetupReceivePipe: error writing request\n"); return FALSE; } @@ -1247,7 +1247,7 @@ BOOL tsg_connect(rdpTsg* tsg, const char* hostname, UINT16 port) if (!rpc_connect(rpc)) { - fprintf(stderr, "rpc_connect failed!\n"); + DEBUG_WARN( "rpc_connect failed!\n"); return FALSE; } @@ -1310,7 +1310,7 @@ BOOL tsg_connect(rdpTsg* tsg, const char* hostname, UINT16 port) if (!TsProxyCreateTunnelReadResponse(tsg, pdu)) { - fprintf(stderr, "TsProxyCreateTunnel: error reading response\n"); + DEBUG_WARN( "TsProxyCreateTunnel: error reading response\n"); return FALSE; } @@ -1356,7 +1356,7 @@ BOOL tsg_connect(rdpTsg* tsg, const char* hostname, UINT16 port) if (!TsProxyAuthorizeTunnelReadResponse(tsg, pdu)) { - fprintf(stderr, "TsProxyAuthorizeTunnel: error reading response\n"); + DEBUG_WARN( "TsProxyAuthorizeTunnel: error reading response\n"); return FALSE; } @@ -1394,7 +1394,7 @@ BOOL tsg_connect(rdpTsg* tsg, const char* hostname, UINT16 port) pdu = rpc_recv_dequeue_pdu(rpc); if (!pdu) { - fprintf(stderr, "TsProxyCreateChannel: error reading response\n"); + DEBUG_WARN( "TsProxyCreateChannel: error reading response\n"); return FALSE; } @@ -1404,7 +1404,7 @@ BOOL tsg_connect(rdpTsg* tsg, const char* hostname, UINT16 port) { if (!TsProxyMakeTunnelCallReadResponse(tsg, pdu)) { - fprintf(stderr, "TsProxyMakeTunnelCall: error reading response\n"); + DEBUG_WARN( "TsProxyMakeTunnelCall: error reading response\n"); return FALSE; } @@ -1413,7 +1413,7 @@ BOOL tsg_connect(rdpTsg* tsg, const char* hostname, UINT16 port) if (!TsProxyCreateChannelReadResponse(tsg, pdu)) { - fprintf(stderr, "TsProxyCreateChannel: error reading response\n"); + DEBUG_WARN( "TsProxyCreateChannel: error reading response\n"); return FALSE; } @@ -1445,7 +1445,7 @@ BOOL tsg_connect(rdpTsg* tsg, const char* hostname, UINT16 port) if (!TsProxySetupReceivePipeReadResponse(tsg, pdu)) { - fprintf(stderr, "TsProxySetupReceivePipe: error reading response\n"); + DEBUG_WARN( "TsProxySetupReceivePipe: error reading response\n"); return FALSE; } #endif @@ -1453,7 +1453,7 @@ BOOL tsg_connect(rdpTsg* tsg, const char* hostname, UINT16 port) rpc->client->SynchronousSend = TRUE; rpc->client->SynchronousReceive = TRUE; - fprintf(stderr, "TS Gateway Connection Success\n"); + DEBUG_WARN( "TS Gateway Connection Success\n"); return TRUE; } @@ -1516,7 +1516,7 @@ int tsg_read(rdpTsg* tsg, BYTE* data, UINT32 length) if (rpc->transport->layer == TRANSPORT_LAYER_CLOSED) { - fprintf(stderr, "tsg_read error: connection lost\n"); + DEBUG_WARN( "tsg_read error: connection lost\n"); return -1; } @@ -1576,7 +1576,7 @@ int tsg_write(rdpTsg* tsg, BYTE* data, UINT32 length) if (tsg->rpc->transport->layer == TRANSPORT_LAYER_CLOSED) { - fprintf(stderr, "%s: error, connection lost\n", __FUNCTION__); + DEBUG_WARN( "%s: error, connection lost\n", __FUNCTION__); return -1; } diff --git a/libfreerdp/core/gcc.c b/libfreerdp/core/gcc.c index d9c6fe67a..ac75bc4ba 100644 --- a/libfreerdp/core/gcc.c +++ b/libfreerdp/core/gcc.c @@ -274,7 +274,7 @@ BOOL gcc_read_conference_create_response(wStream* s, rdpMcs* mcs) if (!gcc_read_server_data_blocks(s, mcs, length)) { - fprintf(stderr, "gcc_read_conference_create_response: gcc_read_server_data_blocks failed\n"); + DEBUG_WARN( "gcc_read_conference_create_response: gcc_read_server_data_blocks failed\n"); return FALSE; } @@ -374,7 +374,7 @@ BOOL gcc_read_client_data_blocks(wStream* s, rdpMcs* mcs, int length) break; default: - fprintf(stderr, "Unknown GCC client data block: 0x%04X\n", type); + DEBUG_WARN( "Unknown GCC client data block: 0x%04X\n", type); Stream_Seek(s, blockLength - 4); break; } @@ -383,7 +383,7 @@ BOOL gcc_read_client_data_blocks(wStream* s, rdpMcs* mcs, int length) if (endPos != (begPos + blockLength)) { - fprintf(stderr, "Error parsing GCC client data block 0x%04X: Actual Offset: %d Expected Offset: %d\n", + DEBUG_WARN( "Error parsing GCC client data block 0x%04X: Actual Offset: %d Expected Offset: %d\n", type, endPos, begPos + blockLength); } @@ -419,16 +419,16 @@ void gcc_write_client_data_blocks(wStream* s, rdpMcs* mcs) { if (settings->UseMultimon && !settings->SpanMonitors) { - fprintf(stderr, "WARNING: true multi monitor support was not advertised by server!\n"); + DEBUG_WARN( "WARNING: true multi monitor support was not advertised by server!\n"); if (settings->ForceMultimon) { - fprintf(stderr, "Sending multi monitor information anyway (may break connectivity!)\n"); + DEBUG_WARN( "Sending multi monitor information anyway (may break connectivity!)\n"); gcc_write_client_monitor_data(s, mcs); } else { - fprintf(stderr, "Use /multimon:force to force sending multi monitor information\n"); + DEBUG_WARN( "Use /multimon:force to force sending multi monitor information\n"); } } } @@ -447,7 +447,7 @@ BOOL gcc_read_server_data_blocks(wStream* s, rdpMcs* mcs, int length) if (!gcc_read_user_data_header(s, &type, &blockLength)) { - fprintf(stderr, "gcc_read_server_data_blocks: gcc_read_user_data_header failed\n"); + DEBUG_WARN( "gcc_read_server_data_blocks: gcc_read_user_data_header failed\n"); return FALSE; } @@ -456,7 +456,7 @@ BOOL gcc_read_server_data_blocks(wStream* s, rdpMcs* mcs, int length) case SC_CORE: if (!gcc_read_server_core_data(s, mcs)) { - fprintf(stderr, "gcc_read_server_data_blocks: gcc_read_server_core_data failed\n"); + DEBUG_WARN( "gcc_read_server_data_blocks: gcc_read_server_core_data failed\n"); return FALSE; } break; @@ -464,7 +464,7 @@ BOOL gcc_read_server_data_blocks(wStream* s, rdpMcs* mcs, int length) case SC_SECURITY: if (!gcc_read_server_security_data(s, mcs)) { - fprintf(stderr, "gcc_read_server_data_blocks: gcc_read_server_security_data failed\n"); + DEBUG_WARN( "gcc_read_server_data_blocks: gcc_read_server_security_data failed\n"); return FALSE; } break; @@ -472,7 +472,7 @@ BOOL gcc_read_server_data_blocks(wStream* s, rdpMcs* mcs, int length) case SC_NET: if (!gcc_read_server_network_data(s, mcs)) { - fprintf(stderr, "gcc_read_server_data_blocks: gcc_read_server_network_data failed\n"); + DEBUG_WARN( "gcc_read_server_data_blocks: gcc_read_server_network_data failed\n"); return FALSE; } break; @@ -480,7 +480,7 @@ BOOL gcc_read_server_data_blocks(wStream* s, rdpMcs* mcs, int length) case SC_MCS_MSGCHANNEL: if (!gcc_read_server_message_channel_data(s, mcs)) { - fprintf(stderr, "gcc_read_server_data_blocks: gcc_read_server_message_channel_data failed\n"); + DEBUG_WARN( "gcc_read_server_data_blocks: gcc_read_server_message_channel_data failed\n"); return FALSE; } break; @@ -488,13 +488,13 @@ BOOL gcc_read_server_data_blocks(wStream* s, rdpMcs* mcs, int length) case SC_MULTITRANSPORT: if (!gcc_read_server_multitransport_channel_data(s, mcs)) { - fprintf(stderr, "gcc_read_server_data_blocks: gcc_read_server_multitransport_channel_data failed\n"); + DEBUG_WARN( "gcc_read_server_data_blocks: gcc_read_server_multitransport_channel_data failed\n"); return FALSE; } break; default: - fprintf(stderr, "gcc_read_server_data_blocks: ignoring type=%hu\n", type); + DEBUG_WARN( "gcc_read_server_data_blocks: ignoring type=%hu\n", type); break; } offset += blockLength; @@ -1174,7 +1174,7 @@ void gcc_write_server_security_data(wStream* s, rdpMcs* mcs) md5 = crypto_md5_init(); if (!md5) { - fprintf(stderr, "%s: unable to allocate a md5\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate a md5\n", __FUNCTION__); return; } @@ -1269,7 +1269,7 @@ BOOL gcc_read_server_network_data(wStream* s, rdpMcs* mcs) if (channelCount != mcs->channelCount) { - fprintf(stderr, "requested %d channels, got %d instead\n", + DEBUG_WARN( "requested %d channels, got %d instead\n", mcs->channelCount, channelCount); /* we ensure that the response is not bigger than the request */ diff --git a/libfreerdp/core/info.c b/libfreerdp/core/info.c index f68dff17b..f741fba7a 100644 --- a/libfreerdp/core/info.c +++ b/libfreerdp/core/info.c @@ -67,7 +67,7 @@ BOOL rdp_read_server_auto_reconnect_cookie(wStream* s, rdpSettings* settings) char *base64; base64 = crypto_base64_encode((BYTE *) autoReconnectCookie, sizeof(ARC_SC_PRIVATE_PACKET)); - fprintf(stderr, "Reconnect-cookie: %s\n", base64); + DEBUG_WARN( "Reconnect-cookie: %s\n", base64); free(base64); } return TRUE; @@ -239,7 +239,7 @@ void rdp_write_extended_info_packet(wStream* s, rdpSettings* settings) ARC_SC_PRIVATE_PACKET* serverCookie; ARC_CS_PRIVATE_PACKET* clientCookie; - printf("Sending auto reconnect\n"); + DEBUG_MSG("Sending auto reconnect\n"); serverCookie = settings->ServerAutoReconnectCookie; clientCookie = settings->ClientAutoReconnectCookie; @@ -250,7 +250,7 @@ void rdp_write_extended_info_packet(wStream* s, rdpSettings* settings) hmac = crypto_hmac_new(); if (!hmac) { - fprintf(stderr, "%s: unable to allocate hmac\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate hmac\n", __FUNCTION__); goto out_free; } @@ -563,7 +563,7 @@ BOOL rdp_recv_client_info(rdpRdp* rdp, wStream* s) { if (securityFlags & SEC_REDIRECTION_PKT) { - fprintf(stderr, "Error: SEC_REDIRECTION_PKT unsupported\n"); + DEBUG_WARN( "Error: SEC_REDIRECTION_PKT unsupported\n"); return FALSE; } @@ -571,7 +571,7 @@ BOOL rdp_recv_client_info(rdpRdp* rdp, wStream* s) { if (!rdp_decrypt(rdp, s, length - 4, securityFlags)) { - fprintf(stderr, "rdp_decrypt failed\n"); + DEBUG_WARN( "rdp_decrypt failed\n"); return FALSE; } } @@ -724,7 +724,7 @@ BOOL rdp_recv_save_session_info(rdpRdp* rdp, wStream* s) return FALSE; Stream_Read_UINT32(s, infoType); /* infoType (4 bytes) */ - //fprintf(stderr, "%s\n", INFO_TYPE_LOGON_STRINGS[infoType]); + //DEBUG_WARN( "%s\n", INFO_TYPE_LOGON_STRINGS[infoType]); switch (infoType) { diff --git a/libfreerdp/core/input.c b/libfreerdp/core/input.c index a929b0d96..4be543580 100644 --- a/libfreerdp/core/input.c +++ b/libfreerdp/core/input.c @@ -380,7 +380,7 @@ static BOOL input_recv_event(rdpInput* input, wStream* s) break; default: - fprintf(stderr, "Unknown messageType %u\n", messageType); + DEBUG_WARN( "Unknown messageType %u\n", messageType); /* Each input event uses 6 bytes. */ Stream_Seek(s, 6); break; diff --git a/libfreerdp/core/license.c b/libfreerdp/core/license.c index 4d3a53a0f..d6f09a000 100644 --- a/libfreerdp/core/license.c +++ b/libfreerdp/core/license.c @@ -89,10 +89,10 @@ void license_print_product_info(LICENSE_PRODUCT_INFO* productInfo) ConvertFromUnicode(CP_UTF8, 0, (WCHAR*) productInfo->pbProductId, productInfo->cbProductId / 2, &ProductId, 0, NULL, NULL); - fprintf(stderr, "ProductInfo:\n"); - fprintf(stderr, "\tdwVersion: 0x%08X\n", productInfo->dwVersion); - fprintf(stderr, "\tCompanyName: %s\n", CompanyName); - fprintf(stderr, "\tProductId: %s\n", ProductId); + DEBUG_WARN( "ProductInfo:\n"); + DEBUG_WARN( "\tdwVersion: 0x%08X\n", productInfo->dwVersion); + DEBUG_WARN( "\tCompanyName: %s\n", CompanyName); + DEBUG_WARN( "\tProductId: %s\n", ProductId); free(CompanyName); free(ProductId); @@ -103,12 +103,12 @@ void license_print_scope_list(SCOPE_LIST* scopeList) int index; LICENSE_BLOB* scope; - fprintf(stderr, "ScopeList (%d):\n", scopeList->count); + DEBUG_WARN( "ScopeList (%d):\n", scopeList->count); for (index = 0; index < scopeList->count; index++) { scope = &scopeList->array[index]; - fprintf(stderr, "\t%s\n", (char*) scope->data); + DEBUG_WARN( "\t%s\n", (char*) scope->data); } } @@ -210,7 +210,7 @@ BOOL license_send(rdpLicense* license, wStream* s, BYTE type) license_write_preamble(s, type, flags, wMsgSize); #ifdef WITH_DEBUG_LICENSE - fprintf(stderr, "Sending %s Packet, length %d\n", LICENSE_MESSAGE_STRINGS[type & 0x1F], wMsgSize); + DEBUG_WARN( "Sending %s Packet, length %d\n", LICENSE_MESSAGE_STRINGS[type & 0x1F], wMsgSize); winpr_HexDump(Stream_Pointer(s) - LICENSE_PREAMBLE_LENGTH, wMsgSize); #endif @@ -241,7 +241,7 @@ int license_recv(rdpLicense* license, wStream* s) if (!rdp_read_header(license->rdp, s, &length, &channelId)) { - fprintf(stderr, "%s: Incorrect RDP header.\n", __FUNCTION__); + DEBUG_WARN( "%s: Incorrect RDP header.\n", __FUNCTION__); return -1; } @@ -252,7 +252,7 @@ int license_recv(rdpLicense* license, wStream* s) { if (!rdp_decrypt(license->rdp, s, length - 4, securityFlags)) { - fprintf(stderr, "%s: rdp_decrypt failed\n", __FUNCTION__); + DEBUG_WARN( "%s: rdp_decrypt failed\n", __FUNCTION__); return -1; } } @@ -268,7 +268,7 @@ int license_recv(rdpLicense* license, wStream* s) if (status < 0) { - fprintf(stderr, "%s: unexpected license packet.\n", __FUNCTION__); + DEBUG_WARN( "%s: unexpected license packet.\n", __FUNCTION__); return status; } @@ -308,7 +308,7 @@ int license_recv(rdpLicense* license, wStream* s) break; default: - fprintf(stderr, "%s: invalid bMsgType:%d\n", __FUNCTION__, bMsgType); + DEBUG_WARN( "%s: invalid bMsgType:%d\n", __FUNCTION__, bMsgType); return FALSE; } @@ -349,33 +349,33 @@ void license_generate_keys(rdpLicense* license) license->ServerRandom, license->LicensingEncryptionKey); /* LicensingEncryptionKey */ #ifdef WITH_DEBUG_LICENSE - fprintf(stderr, "ClientRandom:\n"); + DEBUG_WARN( "ClientRandom:\n"); winpr_HexDump(license->ClientRandom, CLIENT_RANDOM_LENGTH); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); - fprintf(stderr, "ServerRandom:\n"); + DEBUG_WARN( "ServerRandom:\n"); winpr_HexDump(license->ServerRandom, SERVER_RANDOM_LENGTH); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); - fprintf(stderr, "PremasterSecret:\n"); + DEBUG_WARN( "PremasterSecret:\n"); winpr_HexDump(license->PremasterSecret, PREMASTER_SECRET_LENGTH); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); - fprintf(stderr, "MasterSecret:\n"); + DEBUG_WARN( "MasterSecret:\n"); winpr_HexDump(license->MasterSecret, MASTER_SECRET_LENGTH); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); - fprintf(stderr, "SessionKeyBlob:\n"); + DEBUG_WARN( "SessionKeyBlob:\n"); winpr_HexDump(license->SessionKeyBlob, SESSION_KEY_BLOB_LENGTH); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); - fprintf(stderr, "MacSaltKey:\n"); + DEBUG_WARN( "MacSaltKey:\n"); winpr_HexDump(license->MacSaltKey, MAC_SALT_KEY_LENGTH); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); - fprintf(stderr, "LicensingEncryptionKey:\n"); + DEBUG_WARN( "LicensingEncryptionKey:\n"); winpr_HexDump(license->LicensingEncryptionKey, LICENSING_ENCRYPTION_KEY_LENGTH); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); #endif } @@ -395,7 +395,7 @@ void license_generate_hwid(rdpLicense* license) md5 = crypto_md5_init(); if (!md5) { - fprintf(stderr, "%s: unable to allocate a md5\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate a md5\n", __FUNCTION__); return; } @@ -434,13 +434,13 @@ void license_encrypt_premaster_secret(rdpLicense* license) license_get_server_rsa_public_key(license); #ifdef WITH_DEBUG_LICENSE - fprintf(stderr, "Modulus (%d bits):\n", license->ModulusLength * 8); + DEBUG_WARN( "Modulus (%d bits):\n", license->ModulusLength * 8); winpr_HexDump(license->Modulus, license->ModulusLength); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); - fprintf(stderr, "Exponent:\n"); + DEBUG_WARN( "Exponent:\n"); winpr_HexDump(license->Exponent, 4); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); #endif EncryptedPremasterSecret = (BYTE*) malloc(license->ModulusLength); @@ -467,7 +467,7 @@ void license_decrypt_platform_challenge(rdpLicense* license) rc4 = crypto_rc4_init(license->LicensingEncryptionKey, LICENSING_ENCRYPTION_KEY_LENGTH); if (!rc4) { - fprintf(stderr, "%s: unable to allocate a rc4\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate a rc4\n", __FUNCTION__); return; } @@ -582,7 +582,7 @@ BOOL license_read_binary_blob(wStream* s, LICENSE_BLOB* blob) if ((blob->type != wBlobType) && (blob->type != BB_ANY_BLOB)) { - fprintf(stderr, "license binary blob type (%x) does not match expected type (%x).\n", wBlobType, blob->type); + DEBUG_WARN( "license binary blob type (%x) does not match expected type (%x).\n", wBlobType, blob->type); } blob->type = wBlobType; @@ -618,7 +618,7 @@ void license_write_encrypted_premaster_secret_blob(wStream* s, LICENSE_BLOB* blo if (blob->length > ModulusLength) { - fprintf(stderr, "license_write_encrypted_premaster_secret_blob: invalid blob\n"); + DEBUG_WARN( "license_write_encrypted_premaster_secret_blob: invalid blob\n"); return; } @@ -783,15 +783,15 @@ BOOL license_read_license_request_packet(rdpLicense* license, wStream* s) license_encrypt_premaster_secret(license); #ifdef WITH_DEBUG_LICENSE - fprintf(stderr, "ServerRandom:\n"); + DEBUG_WARN( "ServerRandom:\n"); winpr_HexDump(license->ServerRandom, 32); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); license_print_product_info(license->ProductInfo); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); license_print_scope_list(license->ScopeList); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); #endif return TRUE; @@ -829,20 +829,20 @@ BOOL license_read_platform_challenge_packet(rdpLicense* license, wStream* s) license_decrypt_platform_challenge(license); #ifdef WITH_DEBUG_LICENSE - fprintf(stderr, "ConnectFlags: 0x%08X\n", ConnectFlags); - fprintf(stderr, "\n"); + DEBUG_WARN( "ConnectFlags: 0x%08X\n", ConnectFlags); + DEBUG_WARN( "\n"); - fprintf(stderr, "EncryptedPlatformChallenge:\n"); + DEBUG_WARN( "EncryptedPlatformChallenge:\n"); winpr_HexDump(license->EncryptedPlatformChallenge->data, license->EncryptedPlatformChallenge->length); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); - fprintf(stderr, "PlatformChallenge:\n"); + DEBUG_WARN( "PlatformChallenge:\n"); winpr_HexDump(license->PlatformChallenge->data, license->PlatformChallenge->length); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); - fprintf(stderr, "MacData:\n"); + DEBUG_WARN( "MacData:\n"); winpr_HexDump(MacData, 16); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); #endif return TRUE; @@ -896,7 +896,7 @@ BOOL license_read_error_alert_packet(rdpLicense* license, wStream* s) return FALSE; #ifdef WITH_DEBUG_LICENSE - fprintf(stderr, "dwErrorCode: %s, dwStateTransition: %s\n", + DEBUG_WARN( "dwErrorCode: %s, dwStateTransition: %s\n", error_codes[dwErrorCode], state_transitions[dwStateTransition]); #endif @@ -952,22 +952,22 @@ void license_write_new_license_request_packet(rdpLicense* license, wStream* s) license_write_binary_blob(s, license->ClientMachineName); /* ClientMachineName */ #ifdef WITH_DEBUG_LICENSE - fprintf(stderr, "PreferredKeyExchangeAlg: 0x%08X\n", PreferredKeyExchangeAlg); - fprintf(stderr, "\n"); + DEBUG_WARN( "PreferredKeyExchangeAlg: 0x%08X\n", PreferredKeyExchangeAlg); + DEBUG_WARN( "\n"); - fprintf(stderr, "ClientRandom:\n"); + DEBUG_WARN( "ClientRandom:\n"); winpr_HexDump(license->ClientRandom, 32); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); - fprintf(stderr, "EncryptedPremasterSecret\n"); + DEBUG_WARN( "EncryptedPremasterSecret\n"); winpr_HexDump(license->EncryptedPremasterSecret->data, license->EncryptedPremasterSecret->length); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); - fprintf(stderr, "ClientUserName (%d): %s\n", license->ClientUserName->length, (char*) license->ClientUserName->data); - fprintf(stderr, "\n"); + DEBUG_WARN( "ClientUserName (%d): %s\n", license->ClientUserName->length, (char*) license->ClientUserName->data); + DEBUG_WARN( "\n"); - fprintf(stderr, "ClientMachineName (%d): %s\n", license->ClientMachineName->length, (char*) license->ClientMachineName->data); - fprintf(stderr, "\n"); + DEBUG_WARN( "ClientMachineName (%d): %s\n", license->ClientMachineName->length, (char*) license->ClientMachineName->data); + DEBUG_WARN( "\n"); #endif } @@ -1056,7 +1056,7 @@ void license_send_platform_challenge_response_packet(rdpLicense* license) rc4 = crypto_rc4_init(license->LicensingEncryptionKey, LICENSING_ENCRYPTION_KEY_LENGTH); if (!rc4) { - fprintf(stderr, "%s: unable to allocate a rc4\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate a rc4\n", __FUNCTION__); free(buffer); return; } @@ -1068,17 +1068,17 @@ void license_send_platform_challenge_response_packet(rdpLicense* license) license->EncryptedHardwareId->length = HWID_LENGTH; #ifdef WITH_DEBUG_LICENSE - fprintf(stderr, "LicensingEncryptionKey:\n"); + DEBUG_WARN( "LicensingEncryptionKey:\n"); winpr_HexDump(license->LicensingEncryptionKey, 16); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); - fprintf(stderr, "HardwareId:\n"); + DEBUG_WARN( "HardwareId:\n"); winpr_HexDump(license->HardwareId, HWID_LENGTH); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); - fprintf(stderr, "EncryptedHardwareId:\n"); + DEBUG_WARN( "EncryptedHardwareId:\n"); winpr_HexDump(license->EncryptedHardwareId->data, HWID_LENGTH); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); #endif license_write_platform_challenge_response_packet(license, s, mac_data); diff --git a/libfreerdp/core/listener.c b/libfreerdp/core/listener.c index e37c4c89f..a2163b355 100644 --- a/libfreerdp/core/listener.c +++ b/libfreerdp/core/listener.c @@ -166,7 +166,7 @@ static BOOL freerdp_listener_open(freerdp_listener* instance, const char* bind_a else sin_addr = &(((struct sockaddr_in6*) ai->ai_addr)->sin6_addr); - fprintf(stderr, "Listening on %s port %s.\n", inet_ntop(ai->ai_family, sin_addr, buf, sizeof(buf)), servname); + DEBUG_WARN( "Listening on %s port %s.\n", inet_ntop(ai->ai_family, sin_addr, buf, sizeof(buf)), servname); } freeaddrinfo(res); @@ -218,7 +218,7 @@ static BOOL freerdp_listener_open_local(freerdp_listener* instance, const char* listener->events[listener->num_sockfds] = CreateFileDescriptorEvent(NULL, FALSE, FALSE, sockfd); listener->num_sockfds++; - fprintf(stderr, "Listening on socket %s.\n", addr.sun_path); + DEBUG_WARN( "Listening on socket %s.\n", addr.sun_path); return TRUE; #else diff --git a/libfreerdp/core/mcs.c b/libfreerdp/core/mcs.c index c47660f19..326622116 100644 --- a/libfreerdp/core/mcs.c +++ b/libfreerdp/core/mcs.c @@ -328,16 +328,16 @@ void mcs_write_domain_parameters(wStream* s, DomainParameters* domainParameters) void mcs_print_domain_parameters(DomainParameters* domainParameters) { - fprintf(stderr, "DomainParameters {\n"); - fprintf(stderr, "\tmaxChannelIds:%d\n", domainParameters->maxChannelIds); - fprintf(stderr, "\tmaxUserIds:%d\n", domainParameters->maxUserIds); - fprintf(stderr, "\tmaxTokenIds:%d\n", domainParameters->maxTokenIds); - fprintf(stderr, "\tnumPriorities:%d\n", domainParameters->numPriorities); - fprintf(stderr, "\tminThroughput:%d\n", domainParameters->minThroughput); - fprintf(stderr, "\tmaxHeight:%d\n", domainParameters->maxHeight); - fprintf(stderr, "\tmaxMCSPDUsize:%d\n", domainParameters->maxMCSPDUsize); - fprintf(stderr, "\tprotocolVersion:%d\n", domainParameters->protocolVersion); - fprintf(stderr, "}\n"); + DEBUG_WARN( "DomainParameters {\n"); + DEBUG_WARN( "\tmaxChannelIds:%d\n", domainParameters->maxChannelIds); + DEBUG_WARN( "\tmaxUserIds:%d\n", domainParameters->maxUserIds); + DEBUG_WARN( "\tmaxTokenIds:%d\n", domainParameters->maxTokenIds); + DEBUG_WARN( "\tnumPriorities:%d\n", domainParameters->numPriorities); + DEBUG_WARN( "\tminThroughput:%d\n", domainParameters->minThroughput); + DEBUG_WARN( "\tmaxHeight:%d\n", domainParameters->maxHeight); + DEBUG_WARN( "\tmaxMCSPDUsize:%d\n", domainParameters->maxMCSPDUsize); + DEBUG_WARN( "\tprotocolVersion:%d\n", domainParameters->protocolVersion); + DEBUG_WARN( "}\n"); } /** @@ -661,7 +661,7 @@ BOOL mcs_recv_connect_response(rdpMcs* mcs, wStream* s) if (!gcc_read_conference_create_response(s, mcs)) { - fprintf(stderr, "mcs_recv_connect_response: gcc_read_conference_create_response failed\n"); + DEBUG_WARN( "mcs_recv_connect_response: gcc_read_conference_create_response failed\n"); return FALSE; } diff --git a/libfreerdp/core/message.c b/libfreerdp/core/message.c index 10e2bd637..1af21f0be 100644 --- a/libfreerdp/core/message.c +++ b/libfreerdp/core/message.c @@ -762,7 +762,7 @@ static void update_message_WindowIcon(rdpContext* context, WINDOW_ORDER_INFO* or lParam = (WINDOW_ICON_ORDER*) malloc(sizeof(WINDOW_ICON_ORDER)); CopyMemory(lParam, windowIcon, sizeof(WINDOW_ICON_ORDER)); - fprintf(stderr, "update_message_WindowIcon\n"); + DEBUG_WARN( "update_message_WindowIcon\n"); if (windowIcon->iconInfo->cbBitsColor > 0) { @@ -1871,7 +1871,7 @@ static int update_message_free_class(wMessage*msg, int msgClass, int msgType) } if (status < 0) - fprintf(stderr, "Unknown message: class: %d type: %d\n", msgClass, msgType); + DEBUG_WARN( "Unknown message: class: %d type: %d\n", msgClass, msgType); return status; } @@ -1912,7 +1912,7 @@ static int update_message_process_class(rdpUpdateProxy* proxy, wMessage* msg, in } if (status < 0) - fprintf(stderr, "Unknown message: class: %d type: %d\n", msgClass, msgType); + DEBUG_WARN( "Unknown message: class: %d type: %d\n", msgClass, msgType); return status; } @@ -2318,7 +2318,7 @@ static int input_message_free_class(wMessage* msg, int msgClass, int msgType) } if (status < 0) - fprintf(stderr, "Unknown event: class: %d type: %d\n", msgClass, msgType); + DEBUG_WARN( "Unknown event: class: %d type: %d\n", msgClass, msgType); return status; } @@ -2339,7 +2339,7 @@ static int input_message_process_class(rdpInputProxy* proxy, wMessage* msg, int } if (status < 0) - fprintf(stderr, "Unknown event: class: %d type: %d\n", msgClass, msgType); + DEBUG_WARN( "Unknown event: class: %d type: %d\n", msgClass, msgType); return status; } diff --git a/libfreerdp/core/nego.c b/libfreerdp/core/nego.c index 8d385bf6d..7f3175986 100644 --- a/libfreerdp/core/nego.c +++ b/libfreerdp/core/nego.c @@ -595,7 +595,7 @@ int nego_recv(rdpTransport* transport, wStream* s, void* extra) } else { - fprintf(stderr, "invalid negotiation response\n"); + DEBUG_WARN( "invalid negotiation response\n"); nego->state = NEGO_STATE_FAIL; } @@ -621,7 +621,7 @@ BOOL nego_read_request(rdpNego* nego, wStream* s) if (li != Stream_GetRemainingLength(s) + 6) { - fprintf(stderr, "Incorrect TPDU length indicator.\n"); + DEBUG_WARN( "Incorrect TPDU length indicator.\n"); return FALSE; } @@ -653,7 +653,7 @@ BOOL nego_read_request(rdpNego* nego, wStream* s) if (type != TYPE_RDP_NEG_REQ) { - fprintf(stderr, "Incorrect negotiation request type %d\n", type); + DEBUG_WARN( "Incorrect negotiation request type %d\n", type); return FALSE; } @@ -917,7 +917,7 @@ BOOL nego_send_negotiation_response(rdpNego* nego) * TODO: Check for other possibilities, * like SSL_NOT_ALLOWED_BY_SERVER. */ - fprintf(stderr, "%s: client supports only Standard RDP Security\n", __FUNCTION__); + DEBUG_WARN( "%s: client supports only Standard RDP Security\n", __FUNCTION__); Stream_Write_UINT32(s, SSL_REQUIRED_BY_SERVER); length += 8; status = FALSE; diff --git a/libfreerdp/core/nla.c b/libfreerdp/core/nla.c index 5b7a77a18..8ba7c6d76 100644 --- a/libfreerdp/core/nla.c +++ b/libfreerdp/core/nla.c @@ -186,7 +186,7 @@ int credssp_ntlm_client_init(rdpCredssp* credssp) #endif #ifdef WITH_DEBUG_NLA - _tprintf(_T("User: %s Domain: %s Password: %s\n"), + _tDEBUG_MSG(_T("User: %s Domain: %s Password: %s\n"), (char*) credssp->identity.User, (char*) credssp->identity.Domain, (char*) credssp->identity.Password); #endif @@ -200,7 +200,7 @@ int credssp_ntlm_client_init(rdpCredssp* credssp) } else { - fprintf(stderr, "Unknown NLA transport layer\n"); + DEBUG_WARN( "Unknown NLA transport layer\n"); return 0; } @@ -269,7 +269,7 @@ int credssp_client_authenticate(rdpCredssp* credssp) if (status != SEC_E_OK) { - fprintf(stderr, "QuerySecurityPackageInfo status: 0x%08X\n", status); + DEBUG_WARN( "QuerySecurityPackageInfo status: 0x%08X\n", status); return 0; } @@ -280,7 +280,7 @@ int credssp_client_authenticate(rdpCredssp* credssp) if (status != SEC_E_OK) { - fprintf(stderr, "AcquireCredentialsHandle status: 0x%08X\n", status); + DEBUG_WARN( "AcquireCredentialsHandle status: 0x%08X\n", status); return 0; } @@ -339,7 +339,7 @@ int credssp_client_authenticate(rdpCredssp* credssp) if (credssp->table->QueryContextAttributes(&credssp->context, SECPKG_ATTR_SIZES, &credssp->ContextSizes) != SEC_E_OK) { - fprintf(stderr, "QueryContextAttributes SECPKG_ATTR_SIZES failure\n"); + DEBUG_WARN( "QueryContextAttributes SECPKG_ATTR_SIZES failure\n"); return 0; } @@ -354,7 +354,7 @@ int credssp_client_authenticate(rdpCredssp* credssp) credssp->negoToken.cbBuffer = output_buffer.cbBuffer; #ifdef WITH_DEBUG_CREDSSP - fprintf(stderr, "Sending Authentication Token\n"); + DEBUG_WARN( "Sending Authentication Token\n"); winpr_HexDump(credssp->negoToken.pvBuffer, credssp->negoToken.cbBuffer); #endif @@ -376,7 +376,7 @@ int credssp_client_authenticate(rdpCredssp* credssp) return -1; #ifdef WITH_DEBUG_CREDSSP - fprintf(stderr, "Receiving Authentication Token (%d)\n", (int) credssp->negoToken.cbBuffer); + DEBUG_WARN( "Receiving Authentication Token (%d)\n", (int) credssp->negoToken.cbBuffer); winpr_HexDump(credssp->negoToken.pvBuffer, credssp->negoToken.cbBuffer); #endif @@ -398,7 +398,7 @@ int credssp_client_authenticate(rdpCredssp* credssp) if (status != SEC_E_OK) { - fprintf(stderr, "Could not verify public key echo!\n"); + DEBUG_WARN( "Could not verify public key echo!\n"); return -1; } @@ -408,7 +408,7 @@ int credssp_client_authenticate(rdpCredssp* credssp) if (status != SEC_E_OK) { - fprintf(stderr, "credssp_encrypt_ts_credentials status: 0x%08X\n", status); + DEBUG_WARN( "credssp_encrypt_ts_credentials status: 0x%08X\n", status); return 0; } @@ -481,7 +481,7 @@ int credssp_server_authenticate(rdpCredssp* credssp) if (status != SEC_E_OK) { - fprintf(stderr, "QuerySecurityPackageInfo status: 0x%08X\n", status); + DEBUG_WARN( "QuerySecurityPackageInfo status: 0x%08X\n", status); return 0; } @@ -492,7 +492,7 @@ int credssp_server_authenticate(rdpCredssp* credssp) if (status != SEC_E_OK) { - fprintf(stderr, "AcquireCredentialsHandle status: 0x%08X\n", status); + DEBUG_WARN( "AcquireCredentialsHandle status: 0x%08X\n", status); return 0; } @@ -542,7 +542,7 @@ int credssp_server_authenticate(rdpCredssp* credssp) return -1; #ifdef WITH_DEBUG_CREDSSP - fprintf(stderr, "Receiving Authentication Token\n"); + DEBUG_WARN( "Receiving Authentication Token\n"); credssp_buffer_print(credssp); #endif @@ -551,7 +551,7 @@ int credssp_server_authenticate(rdpCredssp* credssp) if (credssp->negoToken.cbBuffer < 1) { - fprintf(stderr, "CredSSP: invalid negoToken!\n"); + DEBUG_WARN( "CredSSP: invalid negoToken!\n"); return -1; } @@ -587,13 +587,13 @@ int credssp_server_authenticate(rdpCredssp* credssp) if (credssp->table->QueryContextAttributes(&credssp->context, SECPKG_ATTR_SIZES, &credssp->ContextSizes) != SEC_E_OK) { - fprintf(stderr, "QueryContextAttributes SECPKG_ATTR_SIZES failure\n"); + DEBUG_WARN( "QueryContextAttributes SECPKG_ATTR_SIZES failure\n"); return 0; } if (credssp_decrypt_public_key_echo(credssp) != SEC_E_OK) { - fprintf(stderr, "Error: could not verify client's public key echo\n"); + DEBUG_WARN( "Error: could not verify client's public key echo\n"); return -1; } @@ -606,14 +606,14 @@ int credssp_server_authenticate(rdpCredssp* credssp) if ((status != SEC_E_OK) && (status != SEC_I_CONTINUE_NEEDED)) { - fprintf(stderr, "AcceptSecurityContext status: 0x%08X\n", status); + DEBUG_WARN( "AcceptSecurityContext status: 0x%08X\n", status); return -1; /* Access Denied */ } /* send authentication token */ #ifdef WITH_DEBUG_CREDSSP - fprintf(stderr, "Sending Authentication Token\n"); + DEBUG_WARN( "Sending Authentication Token\n"); credssp_buffer_print(credssp); #endif @@ -633,13 +633,13 @@ int credssp_server_authenticate(rdpCredssp* credssp) if (credssp_decrypt_ts_credentials(credssp) != SEC_E_OK) { - fprintf(stderr, "Could not decrypt TSCredentials status: 0x%08X\n", status); + DEBUG_WARN( "Could not decrypt TSCredentials status: 0x%08X\n", status); return 0; } if (status != SEC_E_OK) { - fprintf(stderr, "AcceptSecurityContext status: 0x%08X\n", status); + DEBUG_WARN( "AcceptSecurityContext status: 0x%08X\n", status); return 0; } @@ -647,7 +647,7 @@ int credssp_server_authenticate(rdpCredssp* credssp) if (status != SEC_E_OK) { - fprintf(stderr, "ImpersonateSecurityContext status: 0x%08X\n", status); + DEBUG_WARN( "ImpersonateSecurityContext status: 0x%08X\n", status); return 0; } else @@ -656,7 +656,7 @@ int credssp_server_authenticate(rdpCredssp* credssp) if (status != SEC_E_OK) { - fprintf(stderr, "RevertSecurityContext status: 0x%08X\n", status); + DEBUG_WARN( "RevertSecurityContext status: 0x%08X\n", status); return 0; } } @@ -753,7 +753,7 @@ SECURITY_STATUS credssp_encrypt_public_key_echo(rdpCredssp* credssp) if (status != SEC_E_OK) { - fprintf(stderr, "EncryptMessage status: 0x%08X\n", status); + DEBUG_WARN( "EncryptMessage status: 0x%08X\n", status); return status; } @@ -774,7 +774,7 @@ SECURITY_STATUS credssp_decrypt_public_key_echo(rdpCredssp* credssp) if (credssp->PublicKey.cbBuffer + credssp->ContextSizes.cbMaxSignature != credssp->pubKeyAuth.cbBuffer) { - fprintf(stderr, "unexpected pubKeyAuth buffer size:%d\n", (int) credssp->pubKeyAuth.cbBuffer); + DEBUG_WARN( "unexpected pubKeyAuth buffer size:%d\n", (int) credssp->pubKeyAuth.cbBuffer); return SEC_E_INVALID_TOKEN; } @@ -801,7 +801,7 @@ SECURITY_STATUS credssp_decrypt_public_key_echo(rdpCredssp* credssp) if (status != SEC_E_OK) { - fprintf(stderr, "DecryptMessage failure: 0x%08X\n", status); + DEBUG_WARN( "DecryptMessage failure: 0x%08X\n", status); return status; } @@ -816,12 +816,12 @@ SECURITY_STATUS credssp_decrypt_public_key_echo(rdpCredssp* credssp) if (memcmp(public_key1, public_key2, public_key_length) != 0) { - fprintf(stderr, "Could not verify server's public key echo\n"); + DEBUG_WARN( "Could not verify server's public key echo\n"); - fprintf(stderr, "Expected (length = %d):\n", public_key_length); + DEBUG_WARN( "Expected (length = %d):\n", public_key_length); winpr_HexDump(public_key1, public_key_length); - fprintf(stderr, "Actual (length = %d):\n", public_key_length); + DEBUG_WARN( "Actual (length = %d):\n", public_key_length); winpr_HexDump(public_key2, public_key_length); return SEC_E_MESSAGE_ALTERED; /* DO NOT SEND CREDENTIALS! */ @@ -1047,7 +1047,7 @@ SECURITY_STATUS credssp_decrypt_ts_credentials(rdpCredssp* credssp) if (credssp->authInfo.cbBuffer < 1) { - fprintf(stderr, "credssp_decrypt_ts_credentials missing authInfo buffer\n"); + DEBUG_WARN( "credssp_decrypt_ts_credentials missing authInfo buffer\n"); return SEC_E_INVALID_TOKEN; } @@ -1202,7 +1202,7 @@ int credssp_recv(rdpCredssp* credssp) if (status < 0) { - fprintf(stderr, "credssp_recv() error: %d\n", status); + DEBUG_WARN( "credssp_recv() error: %d\n", status); Stream_Free(s, TRUE); return -1; } @@ -1270,19 +1270,19 @@ void credssp_buffer_print(rdpCredssp* credssp) { if (credssp->negoToken.cbBuffer > 0) { - fprintf(stderr, "CredSSP.negoToken (length = %d):\n", (int) credssp->negoToken.cbBuffer); + DEBUG_WARN( "CredSSP.negoToken (length = %d):\n", (int) credssp->negoToken.cbBuffer); winpr_HexDump(credssp->negoToken.pvBuffer, credssp->negoToken.cbBuffer); } if (credssp->pubKeyAuth.cbBuffer > 0) { - fprintf(stderr, "CredSSP.pubKeyAuth (length = %d):\n", (int) credssp->pubKeyAuth.cbBuffer); + DEBUG_WARN( "CredSSP.pubKeyAuth (length = %d):\n", (int) credssp->pubKeyAuth.cbBuffer); winpr_HexDump(credssp->pubKeyAuth.pvBuffer, credssp->pubKeyAuth.cbBuffer); } if (credssp->authInfo.cbBuffer > 0) { - fprintf(stderr, "CredSSP.authInfo (length = %d):\n", (int) credssp->authInfo.cbBuffer); + DEBUG_WARN( "CredSSP.authInfo (length = %d):\n", (int) credssp->authInfo.cbBuffer); winpr_HexDump(credssp->authInfo.pvBuffer, credssp->authInfo.cbBuffer); } } diff --git a/libfreerdp/core/orders.c b/libfreerdp/core/orders.c index 98b177f67..009cfb134 100644 --- a/libfreerdp/core/orders.c +++ b/libfreerdp/core/orders.c @@ -749,7 +749,7 @@ static INLINE BOOL update_read_delta_points(wStream* s, DELTA_POINT* points, int if (orderInfo->fieldFlags & (1 << (NO-1))) \ { \ if (Stream_GetRemainingLength(s) < 1) {\ - fprintf(stderr, "%s: error reading %s\n", __FUNCTION__, #TARGET); \ + DEBUG_WARN( "%s: error reading %s\n", __FUNCTION__, #TARGET); \ return FALSE; \ } \ Stream_Read_UINT8(s, TARGET); \ @@ -761,7 +761,7 @@ static INLINE BOOL update_read_delta_points(wStream* s, DELTA_POINT* points, int if (orderInfo->fieldFlags & (1 << (NO-1))) \ { \ if (Stream_GetRemainingLength(s) < 2) { \ - fprintf(stderr, "%s: error reading %s or %s\n", __FUNCTION__, #TARGET1, #TARGET2); \ + DEBUG_WARN( "%s: error reading %s or %s\n", __FUNCTION__, #TARGET1, #TARGET2); \ return FALSE; \ } \ Stream_Read_UINT8(s, TARGET1); \ @@ -774,7 +774,7 @@ static INLINE BOOL update_read_delta_points(wStream* s, DELTA_POINT* points, int if (orderInfo->fieldFlags & (1 << (NO-1))) \ { \ if (Stream_GetRemainingLength(s) < 2) { \ - fprintf(stderr, "%s: error reading %s\n", __FUNCTION__, #TARGET); \ + DEBUG_WARN( "%s: error reading %s\n", __FUNCTION__, #TARGET); \ return FALSE; \ } \ Stream_Read_UINT16(s, TARGET); \ @@ -785,7 +785,7 @@ static INLINE BOOL update_read_delta_points(wStream* s, DELTA_POINT* points, int if (orderInfo->fieldFlags & (1 << (NO-1))) \ { \ if (Stream_GetRemainingLength(s) < 4) { \ - fprintf(stderr, "%s: error reading %s\n", __FUNCTION__, #TARGET); \ + DEBUG_WARN( "%s: error reading %s\n", __FUNCTION__, #TARGET); \ return FALSE; \ } \ Stream_Read_UINT32(s, TARGET); \ @@ -795,14 +795,14 @@ static INLINE BOOL update_read_delta_points(wStream* s, DELTA_POINT* points, int #define ORDER_FIELD_COORD(NO, TARGET) \ do { \ if ((orderInfo->fieldFlags & (1 << (NO-1))) && !update_read_coord(s, &TARGET, orderInfo->deltaCoordinates)) { \ - fprintf(stderr, "%s: error reading %s\n", __FUNCTION__, #TARGET); \ + DEBUG_WARN( "%s: error reading %s\n", __FUNCTION__, #TARGET); \ return FALSE; \ } \ } while(0) #define ORDER_FIELD_COLOR(NO, TARGET) \ do { \ if ((orderInfo->fieldFlags & (1 << (NO-1))) && !update_read_color(s, &TARGET)) { \ - fprintf(stderr, "%s: error reading %s\n", __FUNCTION__, #TARGET); \ + DEBUG_WARN( "%s: error reading %s\n", __FUNCTION__, #TARGET); \ return FALSE; \ } \ } while(0) @@ -811,12 +811,12 @@ static INLINE BOOL update_read_delta_points(wStream* s, DELTA_POINT* points, int #define FIELD_SKIP_BUFFER16(s, TARGET_LEN) \ do { \ if (Stream_GetRemainingLength(s) < 2) {\ - fprintf(stderr, "%s: error reading length %s\n", __FUNCTION__, #TARGET_LEN); \ + DEBUG_WARN( "%s: error reading length %s\n", __FUNCTION__, #TARGET_LEN); \ return FALSE; \ }\ Stream_Read_UINT16(s, TARGET_LEN); \ if (!Stream_SafeSeek(s, TARGET_LEN)) { \ - fprintf(stderr, "%s: error skipping %d bytes\n", __FUNCTION__, TARGET_LEN); \ + DEBUG_WARN( "%s: error skipping %d bytes\n", __FUNCTION__, TARGET_LEN); \ return FALSE; \ } \ } while(0) @@ -1842,7 +1842,7 @@ BOOL update_read_cache_bitmap_order(wStream* s, CACHE_BITMAP_ORDER* cache_bitmap Stream_Read_UINT8(s, cache_bitmap->bitmapBpp); /* bitmapBpp (1 byte) */ if ((cache_bitmap->bitmapBpp < 1) || (cache_bitmap->bitmapBpp > 32)) { - fprintf(stderr, "%s: invalid bitmap bpp %d\n", __FUNCTION__, cache_bitmap->bitmapBpp); + DEBUG_WARN( "%s: invalid bitmap bpp %d\n", __FUNCTION__, cache_bitmap->bitmapBpp); return FALSE; } Stream_Read_UINT16(s, cache_bitmap->bitmapLength); /* bitmapLength (2 bytes) */ @@ -2085,7 +2085,7 @@ BOOL update_read_cache_bitmap_v3_order(wStream* s, CACHE_BITMAP_V3_ORDER* cache_ Stream_Read_UINT8(s, bitmapData->bpp); if ((bitmapData->bpp < 1) || (bitmapData->bpp > 32)) { - fprintf(stderr, "%s: invalid bpp value %d", __FUNCTION__, bitmapData->bpp); + DEBUG_WARN( "%s: invalid bpp value %d", __FUNCTION__, bitmapData->bpp); return FALSE; } Stream_Seek_UINT8(s); /* reserved1 (1 byte) */ @@ -2447,7 +2447,7 @@ BOOL update_read_cache_brush_order(wStream* s, CACHE_BRUSH_ORDER* cache_brush, U { if (cache_brush->length != 8) { - fprintf(stderr, "incompatible 1bpp brush of length:%d\n", cache_brush->length); + DEBUG_WARN( "incompatible 1bpp brush of length:%d\n", cache_brush->length); return TRUE; // should be FALSE ? } @@ -2526,7 +2526,7 @@ BOOL update_write_cache_brush_order(wStream* s, CACHE_BRUSH_ORDER* cache_brush, { if (cache_brush->length != 8) { - fprintf(stderr, "incompatible 1bpp brush of length:%d\n", cache_brush->length); + DEBUG_WARN( "incompatible 1bpp brush of length:%d\n", cache_brush->length); return FALSE; } @@ -2694,7 +2694,7 @@ BOOL update_read_create_nine_grid_bitmap_order(wStream* s, CREATE_NINE_GRID_BITM Stream_Read_UINT8(s, create_nine_grid_bitmap->bitmapBpp); /* bitmapBpp (1 byte) */ if ((create_nine_grid_bitmap->bitmapBpp < 1) || (create_nine_grid_bitmap->bitmapBpp > 32)) { - fprintf(stderr, "%s: invalid bpp value %d", __FUNCTION__, create_nine_grid_bitmap->bitmapBpp); + DEBUG_WARN( "%s: invalid bpp value %d", __FUNCTION__, create_nine_grid_bitmap->bitmapBpp); return FALSE; } Stream_Read_UINT16(s, create_nine_grid_bitmap->bitmapId); /* bitmapId (2 bytes) */ @@ -2734,7 +2734,7 @@ BOOL update_read_stream_bitmap_first_order(wStream* s, STREAM_BITMAP_FIRST_ORDER Stream_Read_UINT8(s, stream_bitmap_first->bitmapBpp); /* bitmapBpp (1 byte) */ if ((stream_bitmap_first->bitmapBpp < 1) || (stream_bitmap_first->bitmapBpp > 32)) { - fprintf(stderr, "%s: invalid bpp value %d", __FUNCTION__, stream_bitmap_first->bitmapBpp); + DEBUG_WARN( "%s: invalid bpp value %d", __FUNCTION__, stream_bitmap_first->bitmapBpp); return FALSE; } @@ -3076,7 +3076,7 @@ BOOL update_recv_primary_order(rdpUpdate* update, wStream* s, BYTE flags) if (orderInfo->orderType >= PRIMARY_DRAWING_ORDER_COUNT) { - fprintf(stderr, "Invalid Primary Drawing Order (0x%02X)\n", orderInfo->orderType); + DEBUG_WARN( "Invalid Primary Drawing Order (0x%02X)\n", orderInfo->orderType); return FALSE; } @@ -3098,7 +3098,7 @@ BOOL update_recv_primary_order(rdpUpdate* update, wStream* s, BYTE flags) orderInfo->deltaCoordinates = (flags & ORDER_DELTA_COORDINATES) ? TRUE : FALSE; #ifdef WITH_DEBUG_ORDERS - fprintf(stderr, "%s Primary Drawing Order (0x%02X)\n", PRIMARY_DRAWING_ORDER_STRINGS[orderInfo->orderType], orderInfo->orderType); + DEBUG_WARN( "%s Primary Drawing Order (0x%02X)\n", PRIMARY_DRAWING_ORDER_STRINGS[orderInfo->orderType], orderInfo->orderType); #endif switch (orderInfo->orderType) @@ -3289,9 +3289,9 @@ BOOL update_recv_secondary_order(rdpUpdate* update, wStream* s, BYTE flags) #ifdef WITH_DEBUG_ORDERS if (orderType < SECONDARY_DRAWING_ORDER_COUNT) - fprintf(stderr, "%s Secondary Drawing Order (0x%02X)\n", SECONDARY_DRAWING_ORDER_STRINGS[orderType], orderType); + DEBUG_WARN( "%s Secondary Drawing Order (0x%02X)\n", SECONDARY_DRAWING_ORDER_STRINGS[orderType], orderType); else - fprintf(stderr, "Unknown Secondary Drawing Order (0x%02X)\n", orderType); + DEBUG_WARN( "Unknown Secondary Drawing Order (0x%02X)\n", orderType); #endif switch (orderType) @@ -3381,9 +3381,9 @@ BOOL update_recv_altsec_order(rdpUpdate* update, wStream* s, BYTE flags) #ifdef WITH_DEBUG_ORDERS if (orderType < ALTSEC_DRAWING_ORDER_COUNT) - fprintf(stderr, "%s Alternate Secondary Drawing Order (0x%02X)\n", ALTSEC_DRAWING_ORDER_STRINGS[orderType], orderType); + DEBUG_WARN( "%s Alternate Secondary Drawing Order (0x%02X)\n", ALTSEC_DRAWING_ORDER_STRINGS[orderType], orderType); else - fprintf(stderr, "Unknown Alternate Secondary Drawing Order: 0x%02X\n", orderType); + DEBUG_WARN( "Unknown Alternate Secondary Drawing Order: 0x%02X\n", orderType); #endif switch (orderType) diff --git a/libfreerdp/core/peer.c b/libfreerdp/core/peer.c index 8b5ac3ce9..82dc6c202 100644 --- a/libfreerdp/core/peer.c +++ b/libfreerdp/core/peer.c @@ -49,14 +49,14 @@ static BOOL freerdp_peer_initialize(freerdp_peer* client) settings->RdpServerRsaKey = key_new(settings->RdpKeyFile); if (!settings->RdpServerRsaKey) { - fprintf(stderr, "%s: inavlid RDP key file %s\n", __FUNCTION__, settings->RdpKeyFile); + DEBUG_WARN( "%s: inavlid RDP key file %s\n", __FUNCTION__, settings->RdpKeyFile); return FALSE; } if (settings->RdpServerRsaKey->ModulusLength > 256) { - fprintf(stderr, "%s: Key sizes > 2048 are currently not supported for RDP security.\n", __FUNCTION__); - fprintf(stderr, "%s: Set a different key file than %s\n", __FUNCTION__, settings->RdpKeyFile); + DEBUG_WARN( "%s: Key sizes > 2048 are currently not supported for RDP security.\n", __FUNCTION__); + DEBUG_WARN( "%s: Set a different key file than %s\n", __FUNCTION__, settings->RdpKeyFile); exit(1); } } @@ -105,7 +105,7 @@ static BOOL peer_recv_data_pdu(freerdp_peer* client, wStream* s) return FALSE; #ifdef WITH_DEBUG_RDP - printf("recv %s Data PDU (0x%02X), length: %d\n", + DEBUG_MSG("recv %s Data PDU (0x%02X), length: %d\n", type < ARRAYSIZE(DATA_PDU_TYPE_STRINGS) ? DATA_PDU_TYPE_STRINGS[type] : "???", type, length); #endif @@ -159,7 +159,7 @@ static BOOL peer_recv_data_pdu(freerdp_peer* client, wStream* s) break; default: - fprintf(stderr, "Data PDU type %d\n", type); + DEBUG_WARN( "Data PDU type %d\n", type); break; } @@ -180,7 +180,7 @@ static int peer_recv_tpkt_pdu(freerdp_peer* client, wStream* s) if (!rdp_read_header(rdp, s, &length, &channelId)) { - fprintf(stderr, "Incorrect RDP header.\n"); + DEBUG_WARN( "Incorrect RDP header.\n"); return -1; } @@ -193,7 +193,7 @@ static int peer_recv_tpkt_pdu(freerdp_peer* client, wStream* s) { if (!rdp_decrypt(rdp, s, length - 4, securityFlags)) { - fprintf(stderr, "rdp_decrypt failed\n"); + DEBUG_WARN( "rdp_decrypt failed\n"); return -1; } } @@ -224,7 +224,7 @@ static int peer_recv_tpkt_pdu(freerdp_peer* client, wStream* s) break; default: - fprintf(stderr, "Client sent pduType %d\n", pduType); + DEBUG_WARN( "Client sent pduType %d\n", pduType); return -1; } } @@ -245,7 +245,7 @@ static int peer_recv_fastpath_pdu(freerdp_peer* client, wStream* s) if ((length == 0) || (length > Stream_GetRemainingLength(s))) { - fprintf(stderr, "incorrect FastPath PDU header length %d\n", length); + DEBUG_WARN( "incorrect FastPath PDU header length %d\n", length); return -1; } @@ -384,7 +384,7 @@ static int peer_recv_callback(rdpTransport* transport, wStream* s, void* extra) break; default: - fprintf(stderr, "Invalid state %d\n", rdp->state); + DEBUG_WARN( "Invalid state %d\n", rdp->state); return -1; } diff --git a/libfreerdp/core/rdp.c b/libfreerdp/core/rdp.c index 0059f8b4d..e5a2e3956 100644 --- a/libfreerdp/core/rdp.c +++ b/libfreerdp/core/rdp.c @@ -320,7 +320,7 @@ BOOL rdp_read_header(rdpRdp* rdp, wStream* s, UINT16* length, UINT16* channelId) rdp_set_error_info(rdp, ERRINFO_RPC_INITIATED_DISCONNECT); } - fprintf(stderr, "DisconnectProviderUltimatum: reason: %d\n", reason); + DEBUG_WARN( "DisconnectProviderUltimatum: reason: %d\n", reason); rdp->disconnect = TRUE; @@ -731,7 +731,7 @@ int rdp_recv_data_pdu(rdpRdp* rdp, wStream* s) if (Stream_GetRemainingLength(s) < (size_t) SrcSize) { - fprintf(stderr, "bulk_decompress: not enough bytes for compressedLength %d\n", compressedLength); + DEBUG_WARN( "bulk_decompress: not enough bytes for compressedLength %d\n", compressedLength); return -1; } @@ -746,7 +746,7 @@ int rdp_recv_data_pdu(rdpRdp* rdp, wStream* s) } else { - fprintf(stderr, "bulk_decompress() failed\n"); + DEBUG_WARN( "bulk_decompress() failed\n"); return -1; } @@ -754,7 +754,7 @@ int rdp_recv_data_pdu(rdpRdp* rdp, wStream* s) } #ifdef WITH_DEBUG_RDP - printf("recv %s Data PDU (0x%02X), length: %d\n", + DEBUG_MSG("recv %s Data PDU (0x%02X), length: %d\n", type < ARRAYSIZE(DATA_PDU_TYPE_STRINGS) ? DATA_PDU_TYPE_STRINGS[type] : "???", type, length); #endif @@ -923,13 +923,13 @@ BOOL rdp_decrypt(rdpRdp* rdp, wStream* s, int length, UINT16 securityFlags) if (!security_fips_decrypt(Stream_Pointer(s), length, rdp)) { - fprintf(stderr, "FATAL: cannot decrypt\n"); + DEBUG_WARN( "FATAL: cannot decrypt\n"); return FALSE; /* TODO */ } if (!security_fips_check_signature(Stream_Pointer(s), length - pad, sig, rdp)) { - fprintf(stderr, "FATAL: invalid packet signature\n"); + DEBUG_WARN( "FATAL: invalid packet signature\n"); return FALSE; /* TODO */ } @@ -953,7 +953,7 @@ BOOL rdp_decrypt(rdpRdp* rdp, wStream* s, int length, UINT16 securityFlags) if (memcmp(wmac, cmac, sizeof(wmac)) != 0) { - fprintf(stderr, "WARNING: invalid packet signature\n"); + DEBUG_WARN( "WARNING: invalid packet signature\n"); /* * Because Standard RDP Security is totally broken, * and cannot protect against MITM, don't treat signature @@ -985,7 +985,7 @@ static int rdp_recv_tpkt_pdu(rdpRdp* rdp, wStream* s) if (!rdp_read_header(rdp, s, &length, &channelId)) { - fprintf(stderr, "Incorrect RDP header.\n"); + DEBUG_WARN( "Incorrect RDP header.\n"); return -1; } @@ -998,7 +998,7 @@ static int rdp_recv_tpkt_pdu(rdpRdp* rdp, wStream* s) { if (!rdp_decrypt(rdp, s, length - 4, securityFlags)) { - fprintf(stderr, "rdp_decrypt failed\n"); + DEBUG_WARN( "rdp_decrypt failed\n"); return -1; } } @@ -1033,7 +1033,7 @@ static int rdp_recv_tpkt_pdu(rdpRdp* rdp, wStream* s) case PDU_TYPE_DATA: if (rdp_recv_data_pdu(rdp, s) < 0) { - fprintf(stderr, "rdp_recv_data_pdu failed\n"); + DEBUG_WARN( "rdp_recv_data_pdu failed\n"); return -1; } break; @@ -1048,7 +1048,7 @@ static int rdp_recv_tpkt_pdu(rdpRdp* rdp, wStream* s) break; default: - fprintf(stderr, "incorrect PDU type: 0x%04X\n", pduType); + DEBUG_WARN( "incorrect PDU type: 0x%04X\n", pduType); break; } @@ -1080,7 +1080,7 @@ static int rdp_recv_fastpath_pdu(rdpRdp* rdp, wStream* s) if ((length == 0) || (length > Stream_GetRemainingLength(s))) { - fprintf(stderr, "incorrect FastPath PDU header length %d\n", length); + DEBUG_WARN( "incorrect FastPath PDU header length %d\n", length); return -1; } @@ -1158,7 +1158,7 @@ static int rdp_recv_callback(rdpTransport* transport, wStream* s, void* extra) break; default: - fprintf(stderr, "Invalid state %d\n", rdp->state); + DEBUG_WARN( "Invalid state %d\n", rdp->state); status = -1; break; } diff --git a/libfreerdp/core/redirection.c b/libfreerdp/core/redirection.c index 37470d580..dfce3c10e 100644 --- a/libfreerdp/core/redirection.c +++ b/libfreerdp/core/redirection.c @@ -29,36 +29,36 @@ void rdp_print_redirection_flags(UINT32 flags) { - fprintf(stderr, "redirectionFlags = {\n"); + DEBUG_WARN( "redirectionFlags = {\n"); if (flags & LB_TARGET_NET_ADDRESS) - fprintf(stderr, "\tLB_TARGET_NET_ADDRESS\n"); + DEBUG_WARN( "\tLB_TARGET_NET_ADDRESS\n"); if (flags & LB_LOAD_BALANCE_INFO) - fprintf(stderr, "\tLB_LOAD_BALANCE_INFO\n"); + DEBUG_WARN( "\tLB_LOAD_BALANCE_INFO\n"); if (flags & LB_USERNAME) - fprintf(stderr, "\tLB_USERNAME\n"); + DEBUG_WARN( "\tLB_USERNAME\n"); if (flags & LB_DOMAIN) - fprintf(stderr, "\tLB_DOMAIN\n"); + DEBUG_WARN( "\tLB_DOMAIN\n"); if (flags & LB_PASSWORD) - fprintf(stderr, "\tLB_PASSWORD\n"); + DEBUG_WARN( "\tLB_PASSWORD\n"); if (flags & LB_DONTSTOREUSERNAME) - fprintf(stderr, "\tLB_DONTSTOREUSERNAME\n"); + DEBUG_WARN( "\tLB_DONTSTOREUSERNAME\n"); if (flags & LB_SMARTCARD_LOGON) - fprintf(stderr, "\tLB_SMARTCARD_LOGON\n"); + DEBUG_WARN( "\tLB_SMARTCARD_LOGON\n"); if (flags & LB_NOREDIRECT) - fprintf(stderr, "\tLB_NOREDIRECT\n"); + DEBUG_WARN( "\tLB_NOREDIRECT\n"); if (flags & LB_TARGET_FQDN) - fprintf(stderr, "\tLB_TARGET_FQDN\n"); + DEBUG_WARN( "\tLB_TARGET_FQDN\n"); if (flags & LB_TARGET_NETBIOS_NAME) - fprintf(stderr, "\tLB_TARGET_NETBIOS_NAME\n"); + DEBUG_WARN( "\tLB_TARGET_NETBIOS_NAME\n"); if (flags & LB_TARGET_NET_ADDRESSES) - fprintf(stderr, "\tLB_TARGET_NET_ADDRESSES\n"); + DEBUG_WARN( "\tLB_TARGET_NET_ADDRESSES\n"); if (flags & LB_CLIENT_TSV_URL) - fprintf(stderr, "\tLB_CLIENT_TSV_URL\n"); + DEBUG_WARN( "\tLB_CLIENT_TSV_URL\n"); if (flags & LB_SERVER_TSV_CAPABLE) - fprintf(stderr, "\tLB_SERVER_TSV_CAPABLE\n"); + DEBUG_WARN( "\tLB_SERVER_TSV_CAPABLE\n"); - fprintf(stderr, "}\n"); + DEBUG_WARN( "}\n"); } BOOL rdp_redirection_read_string(wStream* s, char** str) @@ -67,7 +67,7 @@ BOOL rdp_redirection_read_string(wStream* s, char** str) if (Stream_GetRemainingLength(s) < 4) { - fprintf(stderr, "rdp_redirection_read_string failure: cannot read length\n"); + DEBUG_WARN( "rdp_redirection_read_string failure: cannot read length\n"); return FALSE; } @@ -75,7 +75,7 @@ BOOL rdp_redirection_read_string(wStream* s, char** str) if (Stream_GetRemainingLength(s) < length) { - fprintf(stderr, "rdp_redirection_read_string failure: incorrect length %d\n", length); + DEBUG_WARN( "rdp_redirection_read_string failure: incorrect length %d\n", length); return FALSE; } diff --git a/libfreerdp/core/security.c b/libfreerdp/core/security.c index ccc6344f0..4bd8427c9 100644 --- a/libfreerdp/core/security.c +++ b/libfreerdp/core/security.c @@ -132,7 +132,7 @@ static void security_salted_hash(const BYTE* salt, const BYTE* input, int length sha1 = crypto_sha1_init(); if (!sha1) { - fprintf(stderr, "%s: unable to allocate a sha1\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate a sha1\n", __FUNCTION__); return; } crypto_sha1_update(sha1, input, length); /* Input */ @@ -145,7 +145,7 @@ static void security_salted_hash(const BYTE* salt, const BYTE* input, int length md5 = crypto_md5_init(); if (!md5) { - fprintf(stderr, "%s: unable to allocate a md5\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate a md5\n", __FUNCTION__); return; } crypto_md5_update(md5, salt, 48); /* Salt (48 bytes) */ @@ -198,7 +198,7 @@ void security_md5_16_32_32(const BYTE* in0, const BYTE* in1, const BYTE* in2, BY md5 = crypto_md5_init(); if (!md5) { - fprintf(stderr, "%s: unable to allocate a md5\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate a md5\n", __FUNCTION__); return; } crypto_md5_update(md5, in0, 16); @@ -238,7 +238,7 @@ void security_mac_data(const BYTE* mac_salt_key, const BYTE* data, UINT32 length sha1 = crypto_sha1_init(); if (!sha1) { - fprintf(stderr, "%s: unable to allocate a sha1\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate a sha1\n", __FUNCTION__); return; } crypto_sha1_update(sha1, mac_salt_key, 16); /* MacSaltKey */ @@ -251,7 +251,7 @@ void security_mac_data(const BYTE* mac_salt_key, const BYTE* data, UINT32 length md5 = crypto_md5_init(); if (!md5) { - fprintf(stderr, "%s: unable to allocate a md5\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate a md5\n", __FUNCTION__); return; } crypto_md5_update(md5, mac_salt_key, 16); /* MacSaltKey */ @@ -274,7 +274,7 @@ void security_mac_signature(rdpRdp *rdp, const BYTE* data, UINT32 length, BYTE* sha1 = crypto_sha1_init(); if (!sha1) { - fprintf(stderr, "%s: unable to allocate a sha1\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate a sha1\n", __FUNCTION__); return; } crypto_sha1_update(sha1, rdp->sign_key, rdp->rc4_key_len); /* MacKeyN */ @@ -287,7 +287,7 @@ void security_mac_signature(rdpRdp *rdp, const BYTE* data, UINT32 length, BYTE* md5 = crypto_md5_init(); if (!md5) { - fprintf(stderr, "%s: unable to allocate a md5\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate a md5\n", __FUNCTION__); return; } crypto_md5_update(md5, rdp->sign_key, rdp->rc4_key_len); /* MacKeyN */ @@ -327,7 +327,7 @@ void security_salted_mac_signature(rdpRdp *rdp, const BYTE* data, UINT32 length, sha1 = crypto_sha1_init(); if (!sha1) { - fprintf(stderr, "%s: unable to allocate a sha1\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate a sha1\n", __FUNCTION__); return; } crypto_sha1_update(sha1, rdp->sign_key, rdp->rc4_key_len); /* MacKeyN */ @@ -341,7 +341,7 @@ void security_salted_mac_signature(rdpRdp *rdp, const BYTE* data, UINT32 length, md5 = crypto_md5_init(); if (!md5) { - fprintf(stderr, "%s: unable to allocate a md5\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate a md5\n", __FUNCTION__); return; } crypto_md5_update(md5, rdp->sign_key, rdp->rc4_key_len); /* MacKeyN */ @@ -419,12 +419,12 @@ BOOL security_establish_keys(const BYTE* client_random, rdpRdp* rdp) BYTE client_encrypt_key_t[CRYPTO_SHA1_DIGEST_LENGTH + 1]; BYTE client_decrypt_key_t[CRYPTO_SHA1_DIGEST_LENGTH + 1]; - fprintf(stderr, "FIPS Compliant encryption level.\n"); + DEBUG_WARN( "FIPS Compliant encryption level.\n"); sha1 = crypto_sha1_init(); if (!sha1) { - fprintf(stderr, "%s: unable to allocate a sha1\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate a sha1\n", __FUNCTION__); return FALSE; } crypto_sha1_update(sha1, client_random + 16, 16); @@ -435,7 +435,7 @@ BOOL security_establish_keys(const BYTE* client_random, rdpRdp* rdp) sha1 = crypto_sha1_init(); if (!sha1) { - fprintf(stderr, "%s: unable to allocate a sha1\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate a sha1\n", __FUNCTION__); return FALSE; } crypto_sha1_update(sha1, client_random, 16); @@ -446,7 +446,7 @@ BOOL security_establish_keys(const BYTE* client_random, rdpRdp* rdp) sha1 = crypto_sha1_init(); if (!sha1) { - fprintf(stderr, "%s: unable to allocate a sha1\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate a sha1\n", __FUNCTION__); return FALSE; } crypto_sha1_update(sha1, client_decrypt_key_t, 20); @@ -528,7 +528,7 @@ BOOL security_key_update(BYTE* key, BYTE* update_key, int key_len, rdpRdp* rdp) sha1 = crypto_sha1_init(); if (!sha1) { - fprintf(stderr, "%s: unable to allocate a sha1\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate a sha1\n", __FUNCTION__); return FALSE; } crypto_sha1_update(sha1, update_key, key_len); @@ -539,7 +539,7 @@ BOOL security_key_update(BYTE* key, BYTE* update_key, int key_len, rdpRdp* rdp) md5 = crypto_md5_init(); if (!md5) { - fprintf(stderr, "%s: unable to allocate a md5\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate a md5\n", __FUNCTION__); return FALSE; } crypto_md5_update(md5, update_key, key_len); @@ -550,7 +550,7 @@ BOOL security_key_update(BYTE* key, BYTE* update_key, int key_len, rdpRdp* rdp) rc4 = crypto_rc4_init(key, key_len); if (!rc4) { - fprintf(stderr, "%s: unable to allocate a rc4\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate a rc4\n", __FUNCTION__); return FALSE; } crypto_rc4(rc4, key_len, key, key); @@ -573,7 +573,7 @@ BOOL security_encrypt(BYTE* data, int length, rdpRdp* rdp) rdp->rc4_encrypt_key = crypto_rc4_init(rdp->encrypt_key, rdp->rc4_key_len); if (!rdp->rc4_encrypt_key) { - fprintf(stderr, "%s: unable to allocate rc4 encrypt key\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate rc4 encrypt key\n", __FUNCTION__); return FALSE; } rdp->encrypt_use_count = 0; @@ -595,7 +595,7 @@ BOOL security_decrypt(BYTE* data, int length, rdpRdp* rdp) rdp->rc4_decrypt_key = crypto_rc4_init(rdp->decrypt_key, rdp->rc4_key_len); if (!rdp->rc4_decrypt_key) { - fprintf(stderr, "%s: unable to allocate rc4 decrypt key\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to allocate rc4 decrypt key\n", __FUNCTION__); return FALSE; } diff --git a/libfreerdp/core/server.c b/libfreerdp/core/server.c index 5f128de83..6c84922d4 100644 --- a/libfreerdp/core/server.c +++ b/libfreerdp/core/server.c @@ -195,7 +195,7 @@ static void wts_read_drdynvc_data(rdpPeerChannel* channel, wStream* s, UINT32 le if (Stream_GetPosition(channel->receiveData) + length > channel->dvc_total_length) { channel->dvc_total_length = 0; - fprintf(stderr, "wts_read_drdynvc_data: incorrect fragment data, discarded.\n"); + DEBUG_WARN( "wts_read_drdynvc_data: incorrect fragment data, discarded.\n"); return; } @@ -279,7 +279,7 @@ static void wts_read_drdynvc_pdu(rdpPeerChannel* channel) break; default: - fprintf(stderr, "wts_read_drdynvc_pdu: Cmd %d not recognized.\n", Cmd); + DEBUG_WARN( "wts_read_drdynvc_pdu: Cmd %d not recognized.\n", Cmd); break; } } @@ -290,7 +290,7 @@ static void wts_read_drdynvc_pdu(rdpPeerChannel* channel) } else { - fprintf(stderr, "wts_read_drdynvc_pdu: received Cmd %d but channel is not ready.\n", Cmd); + DEBUG_WARN( "wts_read_drdynvc_pdu: received Cmd %d but channel is not ready.\n", Cmd); } } @@ -352,7 +352,7 @@ static void WTSProcessChannelData(rdpPeerChannel* channel, UINT16 channelId, BYT { if (Stream_GetPosition(channel->receiveData) != totalSize) { - fprintf(stderr, "WTSProcessChannelData: read error\n"); + DEBUG_WARN( "WTSProcessChannelData: read error\n"); } if (channel == channel->vcm->drdynvc_channel) { diff --git a/libfreerdp/core/surface.c b/libfreerdp/core/surface.c index 4a7ed716c..1019f13f9 100644 --- a/libfreerdp/core/surface.c +++ b/libfreerdp/core/surface.c @@ -40,7 +40,7 @@ static int update_recv_surfcmd_surface_bits(rdpUpdate* update, wStream* s, UINT3 Stream_Read_UINT8(s, cmd->bpp); if ((cmd->bpp < 1) || (cmd->bpp > 32)) { - fprintf(stderr, "%s: invalid bpp value %d", __FUNCTION__, cmd->bpp); + DEBUG_WARN( "%s: invalid bpp value %d", __FUNCTION__, cmd->bpp); return FALSE; } diff --git a/libfreerdp/core/tcp.c b/libfreerdp/core/tcp.c index 4ed62e1ba..a8484a38d 100644 --- a/libfreerdp/core/tcp.c +++ b/libfreerdp/core/tcp.c @@ -65,6 +65,7 @@ #endif +#include #include #include #include @@ -276,7 +277,7 @@ static int transport_bio_buffered_write(BIO* bio, const char* buf, int num) */ if (buf && num && !ringbuffer_write(&tcp->xmitBuffer, (const BYTE*) buf, num)) { - fprintf(stderr, "%s: an error occured when writing(toWrite=%d)\n", __FUNCTION__, num); + DEBUG_WARN( "%s: an error occured when writing(toWrite=%d)\n", __FUNCTION__, num); return -1; } @@ -475,14 +476,14 @@ void tcp_get_mac_address(rdpTcp* tcp) if (ioctl(tcp->sockfd, SIOCGIFHWADDR, &if_req) != 0) { - fprintf(stderr, "failed to obtain MAC address\n"); + DEBUG_WARN( "failed to obtain MAC address\n"); return; } memmove((void*) mac, (void*) &if_req.ifr_ifru.ifru_hwaddr.sa_data[0], 6); #endif - /* fprintf(stderr, "MAC: %02X:%02X:%02X:%02X:%02X:%02X\n", + /* DEBUG_WARN( "MAC: %02X:%02X:%02X:%02X:%02X:%02X\n", mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]); */ } @@ -582,7 +583,7 @@ BOOL tcp_connect(rdpTcp* tcp, const char* hostname, int port, int timeout) option_len = sizeof(option_value); if (setsockopt(tcp->sockfd, IPPROTO_TCP, TCP_NODELAY, (void*) &option_value, option_len) < 0) - fprintf(stderr, "%s: unable to set TCP_NODELAY\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to set TCP_NODELAY\n", __FUNCTION__); /* receive buffer must be a least 32 K */ if (getsockopt(tcp->sockfd, SOL_SOCKET, SO_RCVBUF, (void*) &option_value, &option_len) == 0) @@ -594,7 +595,7 @@ BOOL tcp_connect(rdpTcp* tcp, const char* hostname, int port, int timeout) if (setsockopt(tcp->sockfd, SOL_SOCKET, SO_RCVBUF, (void*) &option_value, option_len) < 0) { - fprintf(stderr, "%s: unable to set receive buffer len\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to set receive buffer len\n", __FUNCTION__); return FALSE; } } @@ -631,7 +632,7 @@ BOOL tcp_set_blocking_mode(rdpTcp* tcp, BOOL blocking) if (flags == -1) { - fprintf(stderr, "%s: fcntl failed, %s.\n", __FUNCTION__, strerror(errno)); + DEBUG_WARN( "%s: fcntl failed, %s.\n", __FUNCTION__, strerror(errno)); return FALSE; } @@ -646,7 +647,7 @@ BOOL tcp_set_blocking_mode(rdpTcp* tcp, BOOL blocking) status = ioctlsocket(tcp->sockfd, FIONBIO, &arg); if (status != NO_ERROR) - fprintf(stderr, "ioctlsocket() failed with error: %ld\n", status); + DEBUG_WARN( "ioctlsocket() failed with error: %ld\n", status); tcp->wsa_event = WSACreateEvent(); WSAEventSelect(tcp->sockfd, tcp->wsa_event, FD_READ); diff --git a/libfreerdp/core/tpdu.c b/libfreerdp/core/tpdu.c index 310c35f52..0560d008f 100644 --- a/libfreerdp/core/tpdu.c +++ b/libfreerdp/core/tpdu.c @@ -24,6 +24,8 @@ #include #include +#include + #include "tpdu.h" /** @@ -130,7 +132,7 @@ BOOL tpdu_read_connection_request(wStream* s, BYTE* li) if (code != X224_TPDU_CONNECTION_REQUEST) { - fprintf(stderr, "Error: expected X224_TPDU_CONNECTION_REQUEST\n"); + DEBUG_WARN( "Error: expected X224_TPDU_CONNECTION_REQUEST\n"); return FALSE; } @@ -168,7 +170,7 @@ BOOL tpdu_read_connection_confirm(wStream* s, BYTE* li) if (code != X224_TPDU_CONNECTION_CONFIRM) { - fprintf(stderr, "Error: expected X224_TPDU_CONNECTION_CONFIRM\n"); + DEBUG_WARN( "Error: expected X224_TPDU_CONNECTION_CONFIRM\n"); return FALSE; } /* diff --git a/libfreerdp/core/transport.c b/libfreerdp/core/transport.c index bacf194d5..b57a099ed 100644 --- a/libfreerdp/core/transport.c +++ b/libfreerdp/core/transport.c @@ -292,7 +292,7 @@ BOOL transport_connect_tls(rdpTransport* transport) transport->frontBio = targetTls->bio; if (!transport->frontBio) { - fprintf(stderr, "%s: unable to prepend a filtering TLS bio", __FUNCTION__); + DEBUG_WARN( "%s: unable to prepend a filtering TLS bio", __FUNCTION__); return FALSE; } @@ -344,7 +344,7 @@ BOOL transport_connect_nla(rdpTransport* transport) freerdp_set_last_error(instance->context, FREERDP_ERROR_AUTHENTICATION_FAILED); } - fprintf(stderr, "Authentication failure, check credentials.\n" + DEBUG_WARN( "Authentication failure, check credentials.\n" "If credentials are valid, the NTLMSSP implementation may be to blame.\n"); transport_set_nla_mode(transport, FALSE); @@ -559,7 +559,7 @@ BOOL transport_accept_nla(rdpTransport* transport) if (credssp_authenticate(transport->credssp) < 0) { - fprintf(stderr, "client authentication failure\n"); + DEBUG_WARN( "client authentication failure\n"); transport_set_nla_mode(transport, FALSE); credssp_free(transport->credssp); @@ -643,7 +643,7 @@ int transport_read_layer(rdpTransport* transport, BYTE* data, int bytes) * requested bytes */ if (transport_wait_for_read(transport) < 0) { - fprintf(stderr, "%s: error when selecting for read\n", __FUNCTION__); + DEBUG_WARN( "%s: error when selecting for read\n", __FUNCTION__); return -1; } continue; @@ -756,7 +756,7 @@ int transport_read_pdu(rdpTransport* transport, wStream* s) } else { - fprintf(stderr, "Error reading TSRequest!\n"); + DEBUG_WARN( "Error reading TSRequest!\n"); return -1; } } @@ -780,7 +780,7 @@ int transport_read_pdu(rdpTransport* transport, wStream* s) /* min and max values according to ITU-T Rec. T.123 (01/2007) section 8 */ if (pduLength < 7 || pduLength > 0xFFFF) { - fprintf(stderr, "%s: tpkt - invalid pduLength: %d\n", __FUNCTION__, pduLength); + DEBUG_WARN( "%s: tpkt - invalid pduLength: %d\n", __FUNCTION__, pduLength); return -1; } } @@ -803,7 +803,7 @@ int transport_read_pdu(rdpTransport* transport, wStream* s) */ if (pduLength < 3 || pduLength > 0x8000) { - fprintf(stderr, "%s: fast path - invalid pduLength: %d\n", __FUNCTION__, pduLength); + DEBUG_WARN( "%s: fast path - invalid pduLength: %d\n", __FUNCTION__, pduLength); return -1; } } @@ -821,7 +821,7 @@ int transport_read_pdu(rdpTransport* transport, wStream* s) /* dump when whole PDU is read */ if (Stream_GetPosition(s) >= pduLength) { - fprintf(stderr, "Local < Remote\n"); + DEBUG_WARN( "Local < Remote\n"); winpr_HexDump(Stream_Buffer(s), pduLength); } #endif @@ -849,7 +849,7 @@ int transport_write(rdpTransport* transport, wStream* s) #ifdef WITH_DEBUG_TRANSPORT if (length > 0) { - fprintf(stderr, "Local > Remote\n"); + DEBUG_WARN( "Local > Remote\n"); winpr_HexDump(Stream_Buffer(s), length); } #endif @@ -878,7 +878,7 @@ int transport_write(rdpTransport* transport, wStream* s) if (transport_wait_for_write(transport) < 0) { - fprintf(stderr, "%s: error when selecting for write\n", __FUNCTION__); + DEBUG_WARN( "%s: error when selecting for write\n", __FUNCTION__); return -1; } continue; @@ -893,13 +893,13 @@ int transport_write(rdpTransport* transport, wStream* s) { if (transport_wait_for_write(transport) < 0) { - fprintf(stderr, "%s: error when selecting for write\n", __FUNCTION__); + DEBUG_WARN( "%s: error when selecting for write\n", __FUNCTION__); return -1; } if (!transport_bio_buffered_drain(out->bufferedBio)) { - fprintf(stderr, "%s: error when draining outputBuffer\n", __FUNCTION__); + DEBUG_WARN( "%s: error when draining outputBuffer\n", __FUNCTION__); return -1; } } diff --git a/libfreerdp/core/update.c b/libfreerdp/core/update.c index 9f8343d56..1c8a8a436 100644 --- a/libfreerdp/core/update.c +++ b/libfreerdp/core/update.c @@ -346,7 +346,7 @@ BOOL update_read_pointer_color(wStream* s, POINTER_COLOR_UPDATE* pointer_color, scanlineSize = ((scanlineSize + 1) / 2) * 2; if (scanlineSize * pointer_color->height != pointer_color->lengthXorMask) { - fprintf(stderr, "%s: invalid lengthXorMask: width=%d height=%d, %d instead of %d\n", __FUNCTION__, + DEBUG_WARN( "%s: invalid lengthXorMask: width=%d height=%d, %d instead of %d\n", __FUNCTION__, pointer_color->width, pointer_color->height, pointer_color->lengthXorMask, scanlineSize * pointer_color->height); return FALSE; @@ -377,7 +377,7 @@ BOOL update_read_pointer_color(wStream* s, POINTER_COLOR_UPDATE* pointer_color, scanlineSize = ((1 + scanlineSize) / 2) * 2; if (scanlineSize * pointer_color->height != pointer_color->lengthAndMask) { - fprintf(stderr, "%s: invalid lengthAndMask: %d instead of %d\n", __FUNCTION__, + DEBUG_WARN( "%s: invalid lengthAndMask: %d instead of %d\n", __FUNCTION__, pointer_color->lengthAndMask, scanlineSize * pointer_color->height); return FALSE; } @@ -405,7 +405,7 @@ BOOL update_read_pointer_new(wStream* s, POINTER_NEW_UPDATE* pointer_new) Stream_Read_UINT16(s, pointer_new->xorBpp); /* xorBpp (2 bytes) */ if ((pointer_new->xorBpp < 1) || (pointer_new->xorBpp > 32)) { - fprintf(stderr, "%s: invalid xorBpp %d\n", __FUNCTION__, pointer_new->xorBpp); + DEBUG_WARN( "%s: invalid xorBpp %d\n", __FUNCTION__, pointer_new->xorBpp); return FALSE; } return update_read_pointer_color(s, &pointer_new->colorPtrAttr, pointer_new->xorBpp); /* colorPtrAttr */ @@ -480,7 +480,7 @@ BOOL update_recv(rdpUpdate* update, wStream* s) Stream_Read_UINT16(s, updateType); /* updateType (2 bytes) */ - //printf("%s Update Data PDU\n", UPDATE_TYPE_STRINGS[updateType]); + //DEBUG_MSG("%s Update Data PDU\n", UPDATE_TYPE_STRINGS[updateType]); IFCALL(update->BeginPaint, context); @@ -604,7 +604,7 @@ static void update_end_paint(rdpContext* context) if (update->numberOrders > 0) { - fprintf(stderr, "%s: sending %d orders\n", __FUNCTION__, update->numberOrders); + DEBUG_WARN( "%s: sending %d orders\n", __FUNCTION__, update->numberOrders); fastpath_send_update_pdu(context->rdp->fastpath, FASTPATH_UPDATETYPE_ORDERS, s); } diff --git a/libfreerdp/core/window.c b/libfreerdp/core/window.c index 2eefe2361..84c34ccc7 100644 --- a/libfreerdp/core/window.c +++ b/libfreerdp/core/window.c @@ -39,7 +39,7 @@ BOOL update_read_icon_info(wStream* s, ICON_INFO* iconInfo) Stream_Read_UINT8(s, iconInfo->bpp); /* bpp (1 byte) */ if ((iconInfo->bpp < 1) || (iconInfo->bpp > 32)) { - fprintf(stderr, "%s: invalid bpp value %d", __FUNCTION__, iconInfo->bpp); + DEBUG_WARN( "%s: invalid bpp value %d", __FUNCTION__, iconInfo->bpp); return FALSE; } diff --git a/libfreerdp/crypto/ber.c b/libfreerdp/crypto/ber.c index 74ce23190..a983849bf 100644 --- a/libfreerdp/crypto/ber.c +++ b/libfreerdp/crypto/ber.c @@ -24,6 +24,7 @@ #include #include +#include #include BOOL ber_read_length(wStream* s, int* length) @@ -399,12 +400,12 @@ BOOL ber_read_integer(wStream* s, UINT32* value) } else if (length == 8) { - fprintf(stderr, "%s: should implement reading an 8 bytes integer\n", __FUNCTION__); + DEBUG_WARN( "%s: should implement reading an 8 bytes integer\n", __FUNCTION__); return FALSE; } else { - fprintf(stderr, "%s: should implement reading an integer with length=%d\n", __FUNCTION__, length); + DEBUG_WARN( "%s: should implement reading an integer with length=%d\n", __FUNCTION__, length); return FALSE; } diff --git a/libfreerdp/crypto/certificate.c b/libfreerdp/crypto/certificate.c index d65796ace..4f34dd735 100644 --- a/libfreerdp/crypto/certificate.c +++ b/libfreerdp/crypto/certificate.c @@ -37,6 +37,7 @@ static const char certificate_store_dir[] = "certs"; static const char certificate_server_dir[] = "server"; static const char certificate_known_hosts_file[] = "known_hosts"; +#include #include void certificate_store_init(rdpCertificateStore* certificate_store) @@ -49,7 +50,7 @@ void certificate_store_init(rdpCertificateStore* certificate_store) if (!PathFileExistsA(settings->ConfigPath)) { CreateDirectoryA(settings->ConfigPath, 0); - fprintf(stderr, "creating directory %s\n", settings->ConfigPath); + DEBUG_WARN( "creating directory %s\n", settings->ConfigPath); } certificate_store->path = GetCombinedPath(settings->ConfigPath, (char*) certificate_store_dir); @@ -57,7 +58,7 @@ void certificate_store_init(rdpCertificateStore* certificate_store) if (!PathFileExistsA(certificate_store->path)) { CreateDirectoryA(certificate_store->path, 0); - fprintf(stderr, "creating directory %s\n", certificate_store->path); + DEBUG_WARN( "creating directory %s\n", certificate_store->path); } server_path = GetCombinedPath(settings->ConfigPath, (char*) certificate_server_dir); @@ -65,7 +66,7 @@ void certificate_store_init(rdpCertificateStore* certificate_store) if (!PathFileExistsA(server_path)) { CreateDirectoryA(server_path, 0); - fprintf(stderr, "creating directory %s\n", server_path); + DEBUG_WARN( "creating directory %s\n", server_path); } free(server_path); @@ -78,7 +79,7 @@ void certificate_store_init(rdpCertificateStore* certificate_store) if (certificate_store->fp == NULL) { - fprintf(stderr, "certificate_store_open: error opening [%s] for writing\n", certificate_store->file); + DEBUG_WARN( "certificate_store_open: error opening [%s] for writing\n", certificate_store->file); return; } diff --git a/libfreerdp/crypto/crypto.c b/libfreerdp/crypto/crypto.c index b3d3fbb21..4ef0c2dbd 100644 --- a/libfreerdp/crypto/crypto.c +++ b/libfreerdp/crypto/crypto.c @@ -23,6 +23,7 @@ #include +#include #include CryptoSha1 crypto_sha1_init(void) @@ -202,7 +203,7 @@ BOOL crypto_cert_get_public_key(CryptoCert cert, BYTE** PublicKey, DWORD* Public pkey = X509_get_pubkey(cert->px509); if (!pkey) { - fprintf(stderr, "%s: X509_get_pubkey() failed\n", __FUNCTION__); + DEBUG_WARN( "%s: X509_get_pubkey() failed\n", __FUNCTION__); status = FALSE; goto exit; } @@ -210,7 +211,7 @@ BOOL crypto_cert_get_public_key(CryptoCert cert, BYTE** PublicKey, DWORD* Public length = i2d_PublicKey(pkey, NULL); if (length < 1) { - fprintf(stderr, "%s: i2d_PublicKey() failed\n", __FUNCTION__); + DEBUG_WARN( "%s: i2d_PublicKey() failed\n", __FUNCTION__); status = FALSE; goto exit; } @@ -354,7 +355,7 @@ char* crypto_cert_fingerprint(X509* xcert) sprintf(p, "%02x:", fp[i]); p = &fp_buffer[(i + 1) * 3]; } - sprintf(p, "%02x", fp[i]); + DEBUG_MSG(p, "%02x", fp[i]); return fp_buffer; } @@ -569,15 +570,15 @@ void crypto_cert_print_info(X509* xcert) fp = crypto_cert_fingerprint(xcert); if (!fp) { - fprintf(stderr, "%s: error computing fingerprint\n", __FUNCTION__); + DEBUG_WARN( "%s: error computing fingerprint\n", __FUNCTION__); goto out_free_issuer; } - fprintf(stderr, "Certificate details:\n"); - fprintf(stderr, "\tSubject: %s\n", subject); - fprintf(stderr, "\tIssuer: %s\n", issuer); - fprintf(stderr, "\tThumbprint: %s\n", fp); - fprintf(stderr, "The above X.509 certificate could not be verified, possibly because you do not have " + DEBUG_WARN( "Certificate details:\n"); + DEBUG_WARN( "\tSubject: %s\n", subject); + DEBUG_WARN( "\tIssuer: %s\n", issuer); + DEBUG_WARN( "\tThumbprint: %s\n", fp); + DEBUG_WARN( "The above X.509 certificate could not be verified, possibly because you do not have " "the CA certificate in your certificate store, or the certificate has expired. " "Please look at the documentation on how to create local certificate store for a private CA.\n"); diff --git a/libfreerdp/crypto/test/TestBase64.c b/libfreerdp/crypto/test/TestBase64.c index a50b6b7b0..e81ca68fc 100644 --- a/libfreerdp/crypto/test/TestBase64.c +++ b/libfreerdp/crypto/test/TestBase64.c @@ -45,7 +45,7 @@ int TestBase64(int argc, char* argv[]) BYTE *decoded; testNb++; - fprintf(stderr, "%d:encode base64...", testNb); + DEBUG_WARN( "%d:encode base64...", testNb); for (i = 0; encodeTests[i].input; i++) { @@ -53,53 +53,53 @@ int TestBase64(int argc, char* argv[]) if (strcmp(encodeTests[i].output, encoded)) { - fprintf(stderr, "ko, error for string %d\n", i); + DEBUG_WARN( "ko, error for string %d\n", i); return -1; } free(encoded); } - fprintf(stderr, "ok\n"); + DEBUG_WARN( "ok\n"); testNb++; - fprintf(stderr, "%d:decode base64...", testNb); + DEBUG_WARN( "%d:decode base64...", testNb); for (i = 0; encodeTests[i].input; i++) { crypto_base64_decode(encodeTests[i].output, strlen(encodeTests[i].output), &decoded, &outLen); if (!decoded || (outLen != encodeTests[i].len) || memcmp(encodeTests[i].input, decoded, outLen)) { - fprintf(stderr, "ko, error for string %d\n", i); + DEBUG_WARN( "ko, error for string %d\n", i); return -1; } free(decoded); } - fprintf(stderr, "ok\n"); + DEBUG_WARN( "ok\n"); testNb++; - fprintf(stderr, "%d:decode base64 errors...", testNb); + DEBUG_WARN( "%d:decode base64 errors...", testNb); crypto_base64_decode("000", 3, &decoded, &outLen); if (decoded) { - fprintf(stderr, "ko, badly padded string\n"); + DEBUG_WARN( "ko, badly padded string\n"); return -1; } crypto_base64_decode("0=00", 4, &decoded, &outLen); if (decoded) { - fprintf(stderr, "ko, = in a wrong place\n"); + DEBUG_WARN( "ko, = in a wrong place\n"); return -1; } crypto_base64_decode("00=0", 4, &decoded, &outLen); if (decoded) { - fprintf(stderr, "ko, = in a wrong place\n"); + DEBUG_WARN( "ko, = in a wrong place\n"); return -1; } - fprintf(stderr, "ok\n"); + DEBUG_WARN( "ok\n"); return 0; diff --git a/libfreerdp/crypto/tls.c b/libfreerdp/crypto/tls.c index fd857b9b0..096a21706 100644 --- a/libfreerdp/crypto/tls.c +++ b/libfreerdp/crypto/tls.c @@ -31,6 +31,7 @@ #include #include +#include #include #include "../core/tcp.h" @@ -510,7 +511,7 @@ static CryptoCert tls_get_certificate(rdpTls* tls, BOOL peer) if (!remote_cert) { - fprintf(stderr, "%s: failed to get the server TLS certificate\n", __FUNCTION__); + DEBUG_WARN( "%s: failed to get the server TLS certificate\n", __FUNCTION__); return NULL; } @@ -583,7 +584,7 @@ BOOL tls_prepare(rdpTls* tls, BIO *underlying, const SSL_METHOD *method, int opt tls->ctx = SSL_CTX_new(method); if (!tls->ctx) { - fprintf(stderr, "%s: SSL_CTX_new failed\n", __FUNCTION__); + DEBUG_WARN( "%s: SSL_CTX_new failed\n", __FUNCTION__); return FALSE; } @@ -594,7 +595,7 @@ BOOL tls_prepare(rdpTls* tls, BIO *underlying, const SSL_METHOD *method, int opt if (tls->settings->PermittedTLSCiphers) { if(!SSL_CTX_set_cipher_list(tls->ctx, tls->settings->PermittedTLSCiphers)) { - fprintf(stderr, "SSL_CTX_set_cipher_list %s failed\n", tls->settings->PermittedTLSCiphers); + DEBUG_WARN( "SSL_CTX_set_cipher_list %s failed\n", tls->settings->PermittedTLSCiphers); return FALSE; } } @@ -603,7 +604,7 @@ BOOL tls_prepare(rdpTls* tls, BIO *underlying, const SSL_METHOD *method, int opt if (BIO_get_ssl(tls->bio, &tls->ssl) < 0) { - fprintf(stderr, "%s: unable to retrieve the SSL of the connection\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to retrieve the SSL of the connection\n", __FUNCTION__); return FALSE; } @@ -641,7 +642,7 @@ int tls_do_handshake(rdpTls* tls, BOOL clientMode) if (fd < 0) { - fprintf(stderr, "%s: unable to retrieve BIO fd\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to retrieve BIO fd\n", __FUNCTION__); return -1; } @@ -665,7 +666,7 @@ int tls_do_handshake(rdpTls* tls, BOOL clientMode) #endif if (status < 0) { - fprintf(stderr, "%s: error during select()\n", __FUNCTION__); + DEBUG_WARN( "%s: error during select()\n", __FUNCTION__); return -1; } } @@ -674,21 +675,21 @@ int tls_do_handshake(rdpTls* tls, BOOL clientMode) cert = tls_get_certificate(tls, clientMode); if (!cert) { - fprintf(stderr, "%s: tls_get_certificate failed to return the server certificate.\n", __FUNCTION__); + DEBUG_WARN( "%s: tls_get_certificate failed to return the server certificate.\n", __FUNCTION__); return -1; } tls->Bindings = tls_get_channel_bindings(cert->px509); if (!tls->Bindings) { - fprintf(stderr, "%s: unable to retrieve bindings\n", __FUNCTION__); + DEBUG_WARN( "%s: unable to retrieve bindings\n", __FUNCTION__); verify_status = -1; goto out; } if (!crypto_cert_get_public_key(cert, &tls->PublicKey, &tls->PublicKeyLength)) { - fprintf(stderr, "%s: crypto_cert_get_public_key failed to return the server public key.\n", __FUNCTION__); + DEBUG_WARN( "%s: crypto_cert_get_public_key failed to return the server public key.\n", __FUNCTION__); verify_status = -1; goto out; } @@ -703,7 +704,7 @@ int tls_do_handshake(rdpTls* tls, BOOL clientMode) if (verify_status < 1) { - fprintf(stderr, "%s: certificate not trusted, aborting.\n", __FUNCTION__); + DEBUG_WARN( "%s: certificate not trusted, aborting.\n", __FUNCTION__); tls_disconnect(tls); verify_status = 0; } @@ -802,14 +803,14 @@ BOOL tls_accept(rdpTls* tls, BIO *underlying, const char* cert_file, const char* if (SSL_use_RSAPrivateKey_file(tls->ssl, privatekey_file, SSL_FILETYPE_PEM) <= 0) { - fprintf(stderr, "%s: SSL_CTX_use_RSAPrivateKey_file failed\n", __FUNCTION__); - fprintf(stderr, "PrivateKeyFile: %s\n", privatekey_file); + DEBUG_WARN( "%s: SSL_CTX_use_RSAPrivateKey_file failed\n", __FUNCTION__); + DEBUG_WARN( "PrivateKeyFile: %s\n", privatekey_file); return FALSE; } if (SSL_use_certificate_file(tls->ssl, cert_file, SSL_FILETYPE_PEM) <= 0) { - fprintf(stderr, "%s: SSL_use_certificate_file failed\n", __FUNCTION__); + DEBUG_WARN( "%s: SSL_use_certificate_file failed\n", __FUNCTION__); return FALSE; } @@ -891,7 +892,7 @@ int tls_write_all(rdpTls* tls, const BYTE* data, int length) if (!bufferedBio) { - fprintf(stderr, "%s: error unable to retrieve the bufferedBio in the BIO chain\n", __FUNCTION__); + DEBUG_WARN( "%s: error unable to retrieve the bufferedBio in the BIO chain\n", __FUNCTION__); return -1; } @@ -921,7 +922,7 @@ int tls_write_all(rdpTls* tls, const BYTE* data, int length) } else { - fprintf(stderr, "%s: weird we're blocked but the underlying is not read or write blocked !\n", __FUNCTION__); + DEBUG_WARN( "%s: weird we're blocked but the underlying is not read or write blocked !\n", __FUNCTION__); USleep(10); continue; } @@ -949,7 +950,7 @@ int tls_write_all(rdpTls* tls, const BYTE* data, int length) } else { - fprintf(stderr, "%s: weird we're blocked but the underlying is not read or write blocked !\n", __FUNCTION__); + DEBUG_WARN( "%s: weird we're blocked but the underlying is not read or write blocked !\n", __FUNCTION__); USleep(10); continue; } @@ -1080,7 +1081,7 @@ int tls_verify_certificate(rdpTls* tls, CryptoCert cert, char* hostname, int por if (!bio) { - fprintf(stderr, "%s: BIO_new() failure\n", __FUNCTION__); + DEBUG_WARN( "%s: BIO_new() failure\n", __FUNCTION__); return -1; } @@ -1088,7 +1089,7 @@ int tls_verify_certificate(rdpTls* tls, CryptoCert cert, char* hostname, int por if (status < 0) { - fprintf(stderr, "%s: PEM_write_bio_X509 failure: %d\n", __FUNCTION__, status); + DEBUG_WARN( "%s: PEM_write_bio_X509 failure: %d\n", __FUNCTION__, status); return -1; } @@ -1100,7 +1101,7 @@ int tls_verify_certificate(rdpTls* tls, CryptoCert cert, char* hostname, int por if (status < 0) { - fprintf(stderr, "%s: failed to read certificate\n", __FUNCTION__); + DEBUG_WARN( "%s: failed to read certificate\n", __FUNCTION__); return -1; } @@ -1121,7 +1122,7 @@ int tls_verify_certificate(rdpTls* tls, CryptoCert cert, char* hostname, int por if (status < 0) { - fprintf(stderr, "%s: failed to read certificate\n", __FUNCTION__); + DEBUG_WARN( "%s: failed to read certificate\n", __FUNCTION__); return -1; } @@ -1135,7 +1136,7 @@ int tls_verify_certificate(rdpTls* tls, CryptoCert cert, char* hostname, int por status = instance->VerifyX509Certificate(instance, pemCert, length, hostname, port, tls->isGatewayTransport); } - fprintf(stderr, "%s: (length = %d) status: %d\n%s\n", __FUNCTION__, length, status, pemCert); + DEBUG_WARN( "%s: (length = %d) status: %d\n%s\n", __FUNCTION__, length, status, pemCert); free(pemCert); BIO_free(bio); @@ -1295,18 +1296,18 @@ int tls_verify_certificate(rdpTls* tls, CryptoCert cert, char* hostname, int por void tls_print_certificate_error(char* hostname, char* fingerprint, char *hosts_file) { - fprintf(stderr, "The host key for %s has changed\n", hostname); - fprintf(stderr, "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\n"); - fprintf(stderr, "@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @\n"); - fprintf(stderr, "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\n"); - fprintf(stderr, "IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!\n"); - fprintf(stderr, "Someone could be eavesdropping on you right now (man-in-the-middle attack)!\n"); - fprintf(stderr, "It is also possible that a host key has just been changed.\n"); - fprintf(stderr, "The fingerprint for the host key sent by the remote host is\n%s\n", fingerprint); - fprintf(stderr, "Please contact your system administrator.\n"); - fprintf(stderr, "Add correct host key in %s to get rid of this message.\n", hosts_file); - fprintf(stderr, "Host key for %s has changed and you have requested strict checking.\n", hostname); - fprintf(stderr, "Host key verification failed.\n"); + DEBUG_WARN( "The host key for %s has changed\n", hostname); + DEBUG_WARN( "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\n"); + DEBUG_WARN( "@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @\n"); + DEBUG_WARN( "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\n"); + DEBUG_WARN( "IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!\n"); + DEBUG_WARN( "Someone could be eavesdropping on you right now (man-in-the-middle attack)!\n"); + DEBUG_WARN( "It is also possible that a host key has just been changed.\n"); + DEBUG_WARN( "The fingerprint for the host key sent by the remote host is\n%s\n", fingerprint); + DEBUG_WARN( "Please contact your system administrator.\n"); + DEBUG_WARN( "Add correct host key in %s to get rid of this message.\n", hosts_file); + DEBUG_WARN( "Host key for %s has changed and you have requested strict checking.\n", hostname); + DEBUG_WARN( "Host key verification failed.\n"); } void tls_print_certificate_name_mismatch_error(char* hostname, char* common_name, char** alt_names, int alt_names_count) @@ -1315,24 +1316,24 @@ void tls_print_certificate_name_mismatch_error(char* hostname, char* common_name assert(NULL != hostname); - fprintf(stderr, "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\n"); - fprintf(stderr, "@ WARNING: CERTIFICATE NAME MISMATCH! @\n"); - fprintf(stderr, "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\n"); - fprintf(stderr, "The hostname used for this connection (%s) \n", hostname); - fprintf(stderr, "does not match %s given in the certificate:\n", alt_names_count < 1 ? "the name" : "any of the names"); - fprintf(stderr, "Common Name (CN):\n"); - fprintf(stderr, "\t%s\n", common_name ? common_name : "no CN found in certificate"); + DEBUG_WARN( "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\n"); + DEBUG_WARN( "@ WARNING: CERTIFICATE NAME MISMATCH! @\n"); + DEBUG_WARN( "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\n"); + DEBUG_WARN( "The hostname used for this connection (%s) \n", hostname); + DEBUG_WARN( "does not match %s given in the certificate:\n", alt_names_count < 1 ? "the name" : "any of the names"); + DEBUG_WARN( "Common Name (CN):\n"); + DEBUG_WARN( "\t%s\n", common_name ? common_name : "no CN found in certificate"); if (alt_names_count > 0) { assert(NULL != alt_names); - fprintf(stderr, "Alternative names:\n"); + DEBUG_WARN( "Alternative names:\n"); for (index = 0; index < alt_names_count; index++) { assert(alt_names[index]); - fprintf(stderr, "\t %s\n", alt_names[index]); + DEBUG_WARN( "\t %s\n", alt_names[index]); } } - fprintf(stderr, "A valid certificate for the wrong name should NOT be trusted!\n"); + DEBUG_WARN( "A valid certificate for the wrong name should NOT be trusted!\n"); } rdpTls* tls_new(rdpSettings* settings) diff --git a/libfreerdp/gdi/16bpp.c b/libfreerdp/gdi/16bpp.c index 3f96425e6..c810d281f 100644 --- a/libfreerdp/gdi/16bpp.c +++ b/libfreerdp/gdi/16bpp.c @@ -412,7 +412,7 @@ static int BitBlt_DSPDxax_16bpp(HGDI_DC hdcDest, int nXDest, int nYDest, int nWi if (hdcSrc->bytesPerPixel != 1) { - fprintf(stderr, "BitBlt_DSPDxax expects 1 bpp, unimplemented for %d\n", hdcSrc->bytesPerPixel); + DEBUG_WARN( "BitBlt_DSPDxax expects 1 bpp, unimplemented for %d\n", hdcSrc->bytesPerPixel); return 0; } @@ -894,7 +894,7 @@ int BitBlt_16bpp(HGDI_DC hdcDest, int nXDest, int nYDest, int nWidth, int nHeigh break; } - fprintf(stderr, "BitBlt: unknown rop: 0x%08X\n", rop); + DEBUG_WARN( "BitBlt: unknown rop: 0x%08X\n", rop); return 1; } @@ -939,7 +939,7 @@ int PatBlt_16bpp(HGDI_DC hdc, int nXLeft, int nYLeft, int nWidth, int nHeight, i break; } - fprintf(stderr, "PatBlt: unknown rop: 0x%08X\n", rop); + DEBUG_WARN( "PatBlt: unknown rop: 0x%08X\n", rop); return 1; } diff --git a/libfreerdp/gdi/32bpp.c b/libfreerdp/gdi/32bpp.c index 33e1d19d9..6642fdb6a 100644 --- a/libfreerdp/gdi/32bpp.c +++ b/libfreerdp/gdi/32bpp.c @@ -997,7 +997,7 @@ int BitBlt_32bpp(HGDI_DC hdcDest, int nXDest, int nYDest, int nWidth, int nHeigh break; } - fprintf(stderr, "BitBlt: unknown rop: 0x%08X\n", rop); + DEBUG_WARN( "BitBlt: unknown rop: 0x%08X\n", rop); return 1; } @@ -1042,7 +1042,7 @@ int PatBlt_32bpp(HGDI_DC hdc, int nXLeft, int nYLeft, int nWidth, int nHeight, i break; } - fprintf(stderr, "PatBlt: unknown rop: 0x%08X\n", rop); + DEBUG_WARN( "PatBlt: unknown rop: 0x%08X\n", rop); return 1; } diff --git a/libfreerdp/gdi/8bpp.c b/libfreerdp/gdi/8bpp.c index 0999cedcb..85a00e7a9 100644 --- a/libfreerdp/gdi/8bpp.c +++ b/libfreerdp/gdi/8bpp.c @@ -807,7 +807,7 @@ int BitBlt_8bpp(HGDI_DC hdcDest, int nXDest, int nYDest, int nWidth, int nHeight break; } - fprintf(stderr, "BitBlt: unknown rop: 0x%08X\n", rop); + DEBUG_WARN( "BitBlt: unknown rop: 0x%08X\n", rop); return 1; } @@ -852,7 +852,7 @@ int PatBlt_8bpp(HGDI_DC hdc, int nXLeft, int nYLeft, int nWidth, int nHeight, in break; } - fprintf(stderr, "PatBlt: unknown rop: 0x%08X\n", rop); + DEBUG_WARN( "PatBlt: unknown rop: 0x%08X\n", rop); return 1; } diff --git a/libfreerdp/gdi/gdi.c b/libfreerdp/gdi/gdi.c index 86fbb7e7b..a5d01f5a6 100644 --- a/libfreerdp/gdi/gdi.c +++ b/libfreerdp/gdi/gdi.c @@ -342,7 +342,7 @@ INLINE BYTE* gdi_get_bitmap_pointer(HGDI_DC hdcBmp, int x, int y) } else { - fprintf(stderr, "gdi_get_bitmap_pointer: requesting invalid pointer: (%d,%d) in %dx%d\n", x, y, hBmp->width, hBmp->height); + DEBUG_WARN( "gdi_get_bitmap_pointer: requesting invalid pointer: (%d,%d) in %dx%d\n", x, y, hBmp->width, hBmp->height); return 0; } } @@ -557,7 +557,7 @@ void gdi_patblt(rdpContext* context, PATBLT_ORDER* patblt) } else { - fprintf(stderr, "unimplemented brush style:%d\n", brush->style); + DEBUG_WARN( "unimplemented brush style:%d\n", brush->style); } gdi_SetTextColor(gdi->drawing->hdc, originalColor); @@ -734,7 +734,7 @@ void gdi_mem3blt(rdpContext* context, MEM3BLT_ORDER* mem3blt) } else { - fprintf(stderr, "Mem3Blt unimplemented brush style:%d\n", brush->style); + DEBUG_WARN( "Mem3Blt unimplemented brush style:%d\n", brush->style); } gdi_SetTextColor(gdi->drawing->hdc, originalColor); @@ -742,22 +742,22 @@ void gdi_mem3blt(rdpContext* context, MEM3BLT_ORDER* mem3blt) void gdi_polygon_sc(rdpContext* context, POLYGON_SC_ORDER* polygon_sc) { - fprintf(stderr, "PolygonSC\n"); + DEBUG_WARN( "PolygonSC\n"); } void gdi_polygon_cb(rdpContext* context, POLYGON_CB_ORDER* polygon_cb) { - fprintf(stderr, "PolygonCB\n"); + DEBUG_WARN( "PolygonCB\n"); } void gdi_ellipse_sc(rdpContext* context, ELLIPSE_SC_ORDER* ellipse_sc) { - fprintf(stderr, "EllipseSC\n"); + DEBUG_WARN( "EllipseSC\n"); } void gdi_ellipse_cb(rdpContext* context, ELLIPSE_CB_ORDER* ellipse_cb) { - fprintf(stderr, "EllipseCB\n"); + DEBUG_WARN( "EllipseCB\n"); } void gdi_surface_frame_marker(rdpContext* context, SURFACE_FRAME_MARKER* surface_frame_marker) @@ -891,7 +891,7 @@ void gdi_surface_bits(rdpContext* context, SURFACE_BITS_COMMAND* surface_bits_co } else { - fprintf(stderr, "Unsupported codecID %d\n", surface_bits_command->codecID); + DEBUG_WARN( "Unsupported codecID %d\n", surface_bits_command->codecID); } if (tile_bitmap) diff --git a/libfreerdp/gdi/graphics.c b/libfreerdp/gdi/graphics.c index 9f502fae8..cf726a6d9 100644 --- a/libfreerdp/gdi/graphics.c +++ b/libfreerdp/gdi/graphics.c @@ -128,7 +128,7 @@ void gdi_Bitmap_Decompress(rdpContext* context, rdpBitmap* bitmap, msg = rfx_process_message(gdi->rfx_context, data, length); if (!msg) { - fprintf(stderr, "gdi_Bitmap_Decompress: rfx Decompression Failed\n"); + DEBUG_WARN( "gdi_Bitmap_Decompress: rfx Decompression Failed\n"); } else { @@ -151,7 +151,7 @@ void gdi_Bitmap_Decompress(rdpContext* context, rdpBitmap* bitmap, #ifdef WITH_JPEG if (!jpeg_decompress(data, bitmap->data, width, height, length, bpp)) { - fprintf(stderr, "gdi_Bitmap_Decompress: jpeg Decompression Failed\n"); + DEBUG_WARN( "gdi_Bitmap_Decompress: jpeg Decompression Failed\n"); } #endif break; @@ -162,7 +162,7 @@ void gdi_Bitmap_Decompress(rdpContext* context, rdpBitmap* bitmap, if (!status) { - fprintf(stderr, "gdi_Bitmap_Decompress: Bitmap Decompression Failed\n"); + DEBUG_WARN( "gdi_Bitmap_Decompress: Bitmap Decompression Failed\n"); } } else diff --git a/libfreerdp/locale/timezone.c b/libfreerdp/locale/timezone.c index b83471a82..76353a987 100644 --- a/libfreerdp/locale/timezone.c +++ b/libfreerdp/locale/timezone.c @@ -1565,7 +1565,7 @@ char* freerdp_get_unix_timezone_identifier() return tzid; } - fprintf(stderr, "Unable to detect time zone\n"); + DEBUG_WARN( "Unable to detect time zone\n"); return tzid; #else return 0; @@ -1626,7 +1626,7 @@ TIME_ZONE_ENTRY* freerdp_detect_windows_time_zone(UINT32 bias) } } - fprintf(stderr, "Unable to find a match for unix timezone: %s\n", tzid); + DEBUG_WARN( "Unable to find a match for unix timezone: %s\n", tzid); free(tzid); return NULL; } @@ -1642,12 +1642,12 @@ TIME_ZONE_RULE_ENTRY* freerdp_get_current_time_zone_rule(TIME_ZONE_RULE_ENTRY* r { if ((rules[i].TicksStart >= windows_time) && (windows_time >= rules[i].TicksEnd)) { - /*fprintf(stderr, "Got rule %d from table at %p with count %u\n", i, rules, count);*/ + /*DEBUG_WARN( "Got rule %d from table at %p with count %u\n", i, rules, count);*/ return &rules[i]; } } - fprintf(stderr, "Unable to get current timezone rule\n"); + DEBUG_WARN( "Unable to get current timezone rule\n"); return NULL; } diff --git a/libfreerdp/rail/icon.c b/libfreerdp/rail/icon.c index 4f7365413..fd8240298 100644 --- a/libfreerdp/rail/icon.c +++ b/libfreerdp/rail/icon.c @@ -26,6 +26,7 @@ #include +#include #include ICON_INFO* icon_cache_get(rdpIconCache* cache, BYTE id, UINT16 index, void** extra) @@ -34,13 +35,13 @@ ICON_INFO* icon_cache_get(rdpIconCache* cache, BYTE id, UINT16 index, void** ext if (id >= cache->numCaches) { - fprintf(stderr, "invalid window icon cache id:%d\n", id); + DEBUG_WARN( "invalid window icon cache id:%d\n", id); return (ICON_INFO*) NULL; } if (index >= cache->numCacheEntries) { - fprintf(stderr, "invalid window icon cache index:%d in cache id:%d\n", index, id); + DEBUG_WARN( "invalid window icon cache index:%d in cache id:%d\n", index, id); return (ICON_INFO*) NULL; } @@ -56,13 +57,13 @@ void icon_cache_put(rdpIconCache* cache, BYTE id, UINT16 index, ICON_INFO* entry { if (id >= cache->numCaches) { - fprintf(stderr, "invalid window icon cache id:%d\n", id); + DEBUG_WARN( "invalid window icon cache id:%d\n", id); return; } if (index >= cache->numCacheEntries) { - fprintf(stderr, "invalid window icon cache index:%d in cache id:%d\n", index, id); + DEBUG_WARN( "invalid window icon cache index:%d in cache id:%d\n", index, id); return; } diff --git a/libfreerdp/rail/window.c b/libfreerdp/rail/window.c index 9dd3d3c72..51c15c7f8 100644 --- a/libfreerdp/rail/window.c +++ b/libfreerdp/rail/window.c @@ -100,7 +100,7 @@ void print_window_styles(UINT32 style) { int i; - fprintf(stderr, "Window Styles:\n{\n"); + DEBUG_WARN( "Window Styles:\n{\n"); for (i = 0; i < ARRAYSIZE(WINDOW_STYLES); i++) { if (style & WINDOW_STYLES[i].style) @@ -111,17 +111,17 @@ void print_window_styles(UINT32 style) continue; } - fprintf(stderr, "\t%s\n", WINDOW_STYLES[i].name); + DEBUG_WARN( "\t%s\n", WINDOW_STYLES[i].name); } } - fprintf(stderr, "}\n"); + DEBUG_WARN( "}\n"); } void print_extended_window_styles(UINT32 style) { int i; - fprintf(stderr, "Extended Window Styles:\n{\n"); + DEBUG_WARN( "Extended Window Styles:\n{\n"); for (i = 0; i < ARRAYSIZE(EXTENDED_WINDOW_STYLES); i++) { if (style & EXTENDED_WINDOW_STYLES[i].style) @@ -132,10 +132,10 @@ void print_extended_window_styles(UINT32 style) continue; } - fprintf(stderr, "\t%s\n", EXTENDED_WINDOW_STYLES[i].name); + DEBUG_WARN( "\t%s\n", EXTENDED_WINDOW_STYLES[i].name); } } - fprintf(stderr, "}\n"); + DEBUG_WARN( "}\n"); } void window_state_update(rdpWindow* window, WINDOW_ORDER_INFO* orderInfo, WINDOW_STATE_ORDER* window_state) diff --git a/libfreerdp/utils/CMakeLists.txt b/libfreerdp/utils/CMakeLists.txt index 1db46f1a0..56fbbb5a9 100644 --- a/libfreerdp/utils/CMakeLists.txt +++ b/libfreerdp/utils/CMakeLists.txt @@ -30,6 +30,7 @@ set(${MODULE_PREFIX}_SRCS stopwatch.c svc_plugin.c tcp.c + debug.c time.c uds.c) diff --git a/libfreerdp/utils/bitmap.c b/libfreerdp/utils/bitmap.c index bc49d6d00..ed316ba8f 100644 --- a/libfreerdp/utils/bitmap.c +++ b/libfreerdp/utils/bitmap.c @@ -26,6 +26,7 @@ #include +#include #include typedef struct @@ -67,7 +68,7 @@ void freerdp_bitmap_write(char* filename, void* data, int width, int height, int if (fp == NULL) { - fprintf(stderr, "failed to open file %s\n", filename); + DEBUG_WARN( "failed to open file %s\n", filename); return; } diff --git a/libfreerdp/utils/debug.c b/libfreerdp/utils/debug.c new file mode 100644 index 000000000..5aa31f140 --- /dev/null +++ b/libfreerdp/utils/debug.c @@ -0,0 +1,63 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * Debug Utils + * + * Copyright 2014 Armin Novak + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include +#include +#include + +#define FMT_MAX 1024 + +static wLog *sLog = NULL; + +static void debug_init(void) +{ + WLog_Init(); + sLog = WLog_Get("com.freerdp.common"); +} + +void debug_print(int level, const char *file, const char *fkt, int line, + const char *dbg_str, const char *fmt, ...) +{ + va_list ap; + size_t len = strnlen(dbg_str, FMT_MAX) + strnlen(fmt, FMT_MAX) + 10; + char *cfmt = alloca(len); + wLogMessage msg; + + if (!sLog) + debug_init(); + + if (cfmt) + { + snprintf(cfmt, len, "[%s]: %s", dbg_str, fmt); + + va_start(ap, fmt); + + msg.Type = WLOG_MESSAGE_TEXT; + msg.Level = level; + msg.FormatString = cfmt; + msg.LineNumber = line; + msg.FileName = file; + msg.FunctionName = fkt; + WLog_PrintMessageVA(sLog, &msg, ap); + va_end(ap); + } + else + WLog_Print(sLog, WLOG_FATAL, "failed to allocate %zd bytes on stack!", len); +} + diff --git a/libfreerdp/utils/msusb.c b/libfreerdp/utils/msusb.c index 3bf5957ba..651bf8308 100644 --- a/libfreerdp/utils/msusb.c +++ b/libfreerdp/utils/msusb.c @@ -322,41 +322,41 @@ void msusb_msconfig_dump(MSUSB_CONFIG_DESCRIPTOR* MsConfig) MSUSB_PIPE_DESCRIPTOR * MsPipe; int inum = 0, pnum = 0; - fprintf(stderr, "=================MsConfig:========================\n"); - fprintf(stderr, "wTotalLength:%d\n", MsConfig->wTotalLength); - fprintf(stderr, "bConfigurationValue:%d\n", MsConfig->bConfigurationValue); - fprintf(stderr, "ConfigurationHandle:0x%x\n", MsConfig->ConfigurationHandle); - fprintf(stderr, "InitCompleted:%d\n", MsConfig->InitCompleted); - fprintf(stderr, "MsOutSize:%d\n", MsConfig->MsOutSize); - fprintf(stderr, "NumInterfaces:%d\n\n", MsConfig->NumInterfaces); + DEBUG_WARN( "=================MsConfig:========================\n"); + DEBUG_WARN( "wTotalLength:%d\n", MsConfig->wTotalLength); + DEBUG_WARN( "bConfigurationValue:%d\n", MsConfig->bConfigurationValue); + DEBUG_WARN( "ConfigurationHandle:0x%x\n", MsConfig->ConfigurationHandle); + DEBUG_WARN( "InitCompleted:%d\n", MsConfig->InitCompleted); + DEBUG_WARN( "MsOutSize:%d\n", MsConfig->MsOutSize); + DEBUG_WARN( "NumInterfaces:%d\n\n", MsConfig->NumInterfaces); MsInterfaces = MsConfig->MsInterfaces; for(inum = 0; inum < MsConfig->NumInterfaces; inum++) { MsInterface = MsInterfaces[inum]; - fprintf(stderr, " Interfase: %d\n", MsInterface->InterfaceNumber); - fprintf(stderr, " Length: %d\n", MsInterface->Length); - fprintf(stderr, " NumberOfPipesExpected: %d\n", MsInterface->NumberOfPipesExpected); - fprintf(stderr, " AlternateSetting: %d\n", MsInterface->AlternateSetting); - fprintf(stderr, " NumberOfPipes: %d\n", MsInterface->NumberOfPipes); - fprintf(stderr, " InterfaceHandle: 0x%x\n", MsInterface->InterfaceHandle); - fprintf(stderr, " bInterfaceClass: 0x%x\n", MsInterface->bInterfaceClass); - fprintf(stderr, " bInterfaceSubClass: 0x%x\n", MsInterface->bInterfaceSubClass); - fprintf(stderr, " bInterfaceProtocol: 0x%x\n", MsInterface->bInterfaceProtocol); - fprintf(stderr, " InitCompleted: %d\n\n", MsInterface->InitCompleted); + DEBUG_WARN( " Interfase: %d\n", MsInterface->InterfaceNumber); + DEBUG_WARN( " Length: %d\n", MsInterface->Length); + DEBUG_WARN( " NumberOfPipesExpected: %d\n", MsInterface->NumberOfPipesExpected); + DEBUG_WARN( " AlternateSetting: %d\n", MsInterface->AlternateSetting); + DEBUG_WARN( " NumberOfPipes: %d\n", MsInterface->NumberOfPipes); + DEBUG_WARN( " InterfaceHandle: 0x%x\n", MsInterface->InterfaceHandle); + DEBUG_WARN( " bInterfaceClass: 0x%x\n", MsInterface->bInterfaceClass); + DEBUG_WARN( " bInterfaceSubClass: 0x%x\n", MsInterface->bInterfaceSubClass); + DEBUG_WARN( " bInterfaceProtocol: 0x%x\n", MsInterface->bInterfaceProtocol); + DEBUG_WARN( " InitCompleted: %d\n\n", MsInterface->InitCompleted); MsPipes = MsInterface->MsPipes; for (pnum = 0; pnum < MsInterface->NumberOfPipes; pnum++) { MsPipe = MsPipes[pnum]; - fprintf(stderr, " Pipe: %d\n", pnum); - fprintf(stderr, " MaximumPacketSize: 0x%x\n", MsPipe->MaximumPacketSize); - fprintf(stderr, " MaximumTransferSize: 0x%x\n", MsPipe->MaximumTransferSize); - fprintf(stderr, " PipeFlags: 0x%x\n", MsPipe->PipeFlags); - fprintf(stderr, " PipeHandle: 0x%x\n", MsPipe->PipeHandle); - fprintf(stderr, " bEndpointAddress: 0x%x\n", MsPipe->bEndpointAddress); - fprintf(stderr, " bInterval: %d\n", MsPipe->bInterval); - fprintf(stderr, " PipeType: 0x%x\n", MsPipe->PipeType); - fprintf(stderr, " InitCompleted: %d\n\n", MsPipe->InitCompleted); + DEBUG_WARN( " Pipe: %d\n", pnum); + DEBUG_WARN( " MaximumPacketSize: 0x%x\n", MsPipe->MaximumPacketSize); + DEBUG_WARN( " MaximumTransferSize: 0x%x\n", MsPipe->MaximumTransferSize); + DEBUG_WARN( " PipeFlags: 0x%x\n", MsPipe->PipeFlags); + DEBUG_WARN( " PipeHandle: 0x%x\n", MsPipe->PipeHandle); + DEBUG_WARN( " bEndpointAddress: 0x%x\n", MsPipe->bEndpointAddress); + DEBUG_WARN( " bInterval: %d\n", MsPipe->bInterval); + DEBUG_WARN( " PipeType: 0x%x\n", MsPipe->PipeType); + DEBUG_WARN( " InitCompleted: %d\n\n", MsPipe->InitCompleted); } } - fprintf(stderr, "==================================================\n"); + DEBUG_WARN( "==================================================\n"); } diff --git a/libfreerdp/utils/profiler.c b/libfreerdp/utils/profiler.c index d735dba77..306c94513 100644 --- a/libfreerdp/utils/profiler.c +++ b/libfreerdp/utils/profiler.c @@ -25,6 +25,7 @@ #include #include +#include PROFILER* profiler_create(char* name) { @@ -57,12 +58,12 @@ void profiler_exit(PROFILER* profiler) void profiler_print_header() { - fprintf(stderr, "\n"); - fprintf(stderr, " |-----------------------|\n" ); - fprintf(stderr, " PROFILER | elapsed seconds |\n" ); - fprintf(stderr, "|--------------------------------------------|-----------------------|\n" ); - fprintf(stderr, "| code section | iterations | total | avg. |\n" ); - fprintf(stderr, "|-------------------------------|------------|-----------|-----------|\n" ); + DEBUG_WARN( "\n"); + DEBUG_WARN( " |-----------------------|\n" ); + DEBUG_WARN( " PROFILER | elapsed seconds |\n" ); + DEBUG_WARN( "|--------------------------------------------|-----------------------|\n" ); + DEBUG_WARN( "| code section | iterations | total | avg. |\n" ); + DEBUG_WARN( "|-------------------------------|------------|-----------|-----------|\n" ); } void profiler_print(PROFILER* profiler) @@ -70,11 +71,11 @@ void profiler_print(PROFILER* profiler) double elapsed_sec = stopwatch_get_elapsed_time_in_seconds(profiler->stopwatch); double avg_sec = elapsed_sec / (double) profiler->stopwatch->count; - fprintf(stderr, "| %-30.30s| %10du | %9f | %9f |\n", + DEBUG_WARN( "| %-30.30s| %10du | %9f | %9f |\n", profiler->name, profiler->stopwatch->count, elapsed_sec, avg_sec); } void profiler_print_footer() { - fprintf(stderr, "|--------------------------------------------------------------------|\n" ); + DEBUG_WARN( "|--------------------------------------------------------------------|\n" ); } diff --git a/libfreerdp/utils/rail.c b/libfreerdp/utils/rail.c index ebfb8e7a1..b0d01ab40 100644 --- a/libfreerdp/utils/rail.c +++ b/libfreerdp/utils/rail.c @@ -143,7 +143,7 @@ void* rail_clone_order(UINT32 event_type, void* order) new_order = malloc(order_size); CopyMemory(new_order, order, order_size); - //fprintf(stderr, "rail_clone_order: type=%d order=%p\n", event_type, new_order); + //DEBUG_WARN( "rail_clone_order: type=%d order=%p\n", event_type, new_order); // Create copy of variable data for some orders if ((event_type == RailChannel_GetSystemParam) || @@ -183,7 +183,7 @@ void* rail_clone_order(UINT32 event_type, void* order) void rail_free_cloned_order(UINT32 event_type, void* order) { - //fprintf(stderr, "rail_free_cloned_order: type=%d order=%p\n", event_type, order); + //DEBUG_WARN( "rail_free_cloned_order: type=%d order=%p\n", event_type, order); if ((event_type == RailChannel_GetSystemParam) || (event_type == RailChannel_ClientSystemParam)) { diff --git a/libfreerdp/utils/signal.c b/libfreerdp/utils/signal.c index 1fd62a28e..fe3b3c6f8 100644 --- a/libfreerdp/utils/signal.c +++ b/libfreerdp/utils/signal.c @@ -26,6 +26,7 @@ #include #include +#include #ifdef _WIN32 @@ -49,7 +50,7 @@ static void fatal_handler(int signum) struct sigaction default_sigaction; sigset_t this_mask; - printf("fatal_handler: signum=%d\n", signum); + DEBUG_MSG("fatal_handler: signum=%d\n", signum); if (terminal_needs_reset) tcsetattr(terminal_fildes, TCSAFLUSH, &orig_flags); diff --git a/libfreerdp/utils/svc_plugin.c b/libfreerdp/utils/svc_plugin.c index 7a529d256..b57dc1d9d 100644 --- a/libfreerdp/utils/svc_plugin.c +++ b/libfreerdp/utils/svc_plugin.c @@ -117,7 +117,7 @@ static void svc_plugin_process_received(rdpSvcPlugin* plugin, void* pData, UINT3 { if (Stream_Capacity(s) != Stream_GetPosition(s)) { - fprintf(stderr, "svc_plugin_process_received: read error\n"); + DEBUG_WARN( "svc_plugin_process_received: read error\n"); } plugin->data_in = NULL; @@ -145,7 +145,7 @@ static VOID VCAPITYPE svc_plugin_open_event(DWORD openHandle, UINT event, LPVOID if (!plugin) { - fprintf(stderr, "svc_plugin_open_event: error no match\n"); + DEBUG_WARN( "svc_plugin_open_event: error no match\n"); return; } @@ -220,7 +220,7 @@ static void svc_plugin_process_connected(rdpSvcPlugin* plugin, LPVOID pData, UIN if (status != CHANNEL_RC_OK) { - fprintf(stderr, "svc_plugin_process_connected: open failed: status: %d\n", status); + DEBUG_WARN( "svc_plugin_process_connected: open failed: status: %d\n", status); return; } @@ -270,7 +270,7 @@ static VOID VCAPITYPE svc_plugin_init_event(LPVOID pInitHandle, UINT event, LPVO if (!plugin) { - fprintf(stderr, "svc_plugin_init_event: error no match\n"); + DEBUG_WARN( "svc_plugin_init_event: error no match\n"); return; } @@ -339,7 +339,7 @@ int svc_plugin_send(rdpSvcPlugin* plugin, wStream* data_out) if (status != CHANNEL_RC_OK) { Stream_Free(data_out, TRUE); - fprintf(stderr, "svc_plugin_send: VirtualChannelWrite failed %d\n", status); + DEBUG_WARN( "svc_plugin_send: VirtualChannelWrite failed %d\n", status); } return status; @@ -355,7 +355,7 @@ int svc_plugin_send_event(rdpSvcPlugin* plugin, wMessage* event) status = plugin->channel_entry_points.pVirtualChannelEventPush(plugin->OpenHandle, event); if (status != CHANNEL_RC_OK) - fprintf(stderr, "svc_plugin_send_event: VirtualChannelEventPush failed %d\n", status); + DEBUG_WARN( "svc_plugin_send_event: VirtualChannelEventPush failed %d\n", status); return status; } diff --git a/libfreerdp/utils/tcp.c b/libfreerdp/utils/tcp.c index 4cc95ec06..d96136832 100644 --- a/libfreerdp/utils/tcp.c +++ b/libfreerdp/utils/tcp.c @@ -26,6 +26,7 @@ #include #include +#include #include #include @@ -96,7 +97,7 @@ int freerdp_tcp_connect(const char* hostname, int port) if (status != 0) { - //fprintf(stderr, "tcp_connect: getaddrinfo (%s)\n", gai_strerror(status)); + //DEBUG_WARN( "tcp_connect: getaddrinfo (%s)\n", gai_strerror(status)); return -1; } @@ -111,7 +112,7 @@ int freerdp_tcp_connect(const char* hostname, int port) if (connect(sockfd, ai->ai_addr, ai->ai_addrlen) == 0) { - fprintf(stderr, "connected to %s:%s\n", hostname, servname); + DEBUG_WARN( "connected to %s:%s\n", hostname, servname); break; } @@ -123,7 +124,7 @@ int freerdp_tcp_connect(const char* hostname, int port) if (sockfd == -1) { - fprintf(stderr, "unable to connect to %s:%s\n", hostname, servname); + DEBUG_WARN( "unable to connect to %s:%s\n", hostname, servname); return -1; } @@ -149,7 +150,7 @@ int freerdp_tcp_read(int sockfd, BYTE* data, int length) if (wsa_error == WSAEWOULDBLOCK) return 0; - fprintf(stderr, "recv() error: %d\n", wsa_error); + DEBUG_WARN( "recv() error: %d\n", wsa_error); #else /* No data available */ if (errno == EAGAIN || errno == EWOULDBLOCK) @@ -203,7 +204,7 @@ int freerdp_tcp_wait_read(int sockfd) if (sockfd < 1) { - fprintf(stderr, "Invalid socket to watch: %d\n", sockfd); + DEBUG_WARN( "Invalid socket to watch: %d\n", sockfd); return 0 ; } @@ -240,7 +241,7 @@ int freerdp_tcp_wait_write(int sockfd) if (sockfd < 1) { - fprintf(stderr, "Invalid socket to watch: %d\n", sockfd); + DEBUG_WARN( "Invalid socket to watch: %d\n", sockfd); return 0 ; } From b252009d3694f8847535757db615afa166b7a163 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Thu, 7 Aug 2014 16:51:49 +0200 Subject: [PATCH 062/170] Replaced custom logging mechanism with WLog wrapper. --- channels/audin/client/pulse/audin_pulse.c | 2 +- channels/audin/server/audin.c | 2 +- channels/cliprdr/client/cliprdr_main.c | 14 ++-- channels/cliprdr/server/cliprdr_main.c | 18 ++--- channels/disp/client/disp_main.c | 22 +++--- channels/drdynvc/client/dvcman.c | 2 +- channels/encomsp/client/encomsp_main.c | 17 ++-- channels/printer/client/printer_win.c | 2 +- channels/rail/client/rail_orders.c | 2 +- channels/rdpdr/client/devman.c | 3 +- channels/rdpdr/client/rdpdr_main.c | 15 ++-- channels/rdpdr/server/rdpdr_main.c | 22 +++--- channels/rdpei/client/rdpei_main.c | 34 ++++---- channels/rdpgfx/client/rdpgfx_main.c | 7 +- channels/rdpsnd/client/alsa/rdpsnd_alsa.c | 8 +- channels/rdpsnd/client/ios/TPCircularBuffer.c | 4 +- channels/rdpsnd/client/mac/rdpsnd_mac.c | 10 +-- channels/rdpsnd/client/rdpsnd_main.c | 20 ++--- channels/rdpsnd/client/winmm/rdpsnd_winmm.c | 14 ++-- channels/rdpsnd/server/rdpsnd_main.c | 18 ++--- channels/remdesk/client/remdesk_main.c | 21 ++--- channels/smartcard/client/smartcard_main.c | 2 +- .../smartcard/client/smartcard_operations.c | 2 +- channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c | 4 +- channels/tsmf/client/tsmf_codec.c | 18 ++--- channels/urbdrc/client/data_transfer.c | 16 ++-- .../urbdrc/client/libusb/libusb_udevice.c | 78 +++++++++---------- .../urbdrc/client/libusb/libusb_udevman.c | 2 +- channels/urbdrc/client/libusb/request_queue.c | 2 +- channels/urbdrc/client/searchman.c | 12 +-- channels/urbdrc/client/urbdrc_main.c | 6 +- 31 files changed, 203 insertions(+), 196 deletions(-) diff --git a/channels/audin/client/pulse/audin_pulse.c b/channels/audin/client/pulse/audin_pulse.c index b731c2246..5dab7badb 100644 --- a/channels/audin/client/pulse/audin_pulse.c +++ b/channels/audin/client/pulse/audin_pulse.c @@ -297,7 +297,7 @@ static void audin_pulse_stream_request_callback(pa_stream* stream, size_t length */ if (pulse->buffer == NULL) { - /* fprintf(stderr, "%s: ignoring input, pulse buffer not ready.\n", __func__); */ + /* DEBUG_WARN( "%s: ignoring input, pulse buffer not ready.\n", __func__); */ return; } diff --git a/channels/audin/server/audin.c b/channels/audin/server/audin.c index 31b3943f0..a7d50c73a 100644 --- a/channels/audin/server/audin.c +++ b/channels/audin/server/audin.c @@ -385,7 +385,7 @@ static void* audin_server_thread_func(void* arg) break; default: - fprintf(stderr, "audin_server_thread_func: unknown MessageId %d\n", MessageId); + DEBUG_WARN( "audin_server_thread_func: unknown MessageId %d\n", MessageId); break; } } diff --git a/channels/cliprdr/client/cliprdr_main.c b/channels/cliprdr/client/cliprdr_main.c index 7eeaad6a9..8753d773a 100644 --- a/channels/cliprdr/client/cliprdr_main.c +++ b/channels/cliprdr/client/cliprdr_main.c @@ -87,7 +87,7 @@ void cliprdr_packet_send(cliprdrPlugin* cliprdr, wStream* s) Stream_SetPosition(s, pos); #ifdef WITH_DEBUG_CLIPRDR - printf("Cliprdr Sending (%d bytes)\n", dataLen + 8); + DEBUG_MSG("Cliprdr Sending (%d bytes)\n", dataLen + 8); winpr_HexDump(Stream_Buffer(s), dataLen + 8); #endif @@ -101,18 +101,18 @@ static void cliprdr_process_connect(rdpSvcPlugin* plugin) void cliprdr_print_general_capability_flags(UINT32 flags) { - fprintf(stderr, "generalFlags (0x%08X) {\n", flags); + DEBUG_WARN( "generalFlags (0x%08X) {\n", flags); if (flags & CB_USE_LONG_FORMAT_NAMES) - fprintf(stderr, "\tCB_USE_LONG_FORMAT_NAMES\n"); + DEBUG_WARN( "\tCB_USE_LONG_FORMAT_NAMES\n"); if (flags & CB_STREAM_FILECLIP_ENABLED) - fprintf(stderr, "\tCB_STREAM_FILECLIP_ENABLED\n"); + DEBUG_WARN( "\tCB_STREAM_FILECLIP_ENABLED\n"); if (flags & CB_FILECLIP_NO_FILE_PATHS) - fprintf(stderr, "\tCB_FILECLIP_NO_FILE_PATHS\n"); + DEBUG_WARN( "\tCB_FILECLIP_NO_FILE_PATHS\n"); if (flags & CB_CAN_LOCK_CLIPDATA) - fprintf(stderr, "\tCB_CAN_LOCK_CLIPDATA\n"); + DEBUG_WARN( "\tCB_CAN_LOCK_CLIPDATA\n"); - fprintf(stderr, "}\n"); + DEBUG_WARN( "}\n"); } static void cliprdr_process_general_capability(cliprdrPlugin* cliprdr, wStream* s) diff --git a/channels/cliprdr/server/cliprdr_main.c b/channels/cliprdr/server/cliprdr_main.c index 1a701e8a1..20aefb180 100644 --- a/channels/cliprdr/server/cliprdr_main.c +++ b/channels/cliprdr/server/cliprdr_main.c @@ -70,7 +70,7 @@ static int cliprdr_server_send_capabilities(CliprdrServerContext* context) CLIPRDR_HEADER header; ULONG written; - printf("CliprdrServerSendCapabilities\n"); + DEBUG_MSG("CliprdrServerSendCapabilities\n"); header.msgType = CB_CLIP_CAPS; header.msgFlags = 0; @@ -111,7 +111,7 @@ static int cliprdr_server_send_monitor_ready(CliprdrServerContext* context) CLIPRDR_HEADER header; ULONG written; - printf("CliprdrServerSendMonitorReady\n"); + DEBUG_MSG("CliprdrServerSendMonitorReady\n"); header.msgType = CB_MONITOR_READY; header.msgFlags = 0; @@ -139,7 +139,7 @@ static int cliprdr_server_send_format_list_response(CliprdrServerContext* contex CLIPRDR_HEADER header; ULONG written; - printf("CliprdrServerSendFormatListResponse\n"); + DEBUG_MSG("CliprdrServerSendFormatListResponse\n"); header.msgType = CB_FORMAT_LIST_RESPONSE; header.msgFlags = CB_RESPONSE_OK; @@ -207,7 +207,7 @@ static int cliprdr_server_receive_temporary_directory(CliprdrServerContext* cont ConvertFromUnicode(CP_UTF8, 0, wszTempDir, -1, &(context->priv->ClientTemporaryDirectory), 0, NULL, NULL); - printf("ClientTemporaryDirectory: %s\n", context->priv->ClientTemporaryDirectory); + DEBUG_MSG("ClientTemporaryDirectory: %s\n", context->priv->ClientTemporaryDirectory); return 0; } @@ -252,7 +252,7 @@ static int cliprdr_server_receive_long_format_list(CliprdrServerContext* context int length; int position; - printf("%s\n", __FUNCTION__); + DEBUG_MSG("%s\n", __FUNCTION__); position = Stream_GetPosition(s); Stream_SetPosition(s, Stream_Length(s)); @@ -305,7 +305,7 @@ static int cliprdr_server_receive_long_format_list(CliprdrServerContext* context for (i = 0; i < context->priv->ClientFormatNameCount; i++) { - printf("Format %d: Id: 0x%04X Name: %s Length: %d\n", i, + DEBUG_MSG("Format %d: Id: 0x%04X Name: %s Length: %d\n", i, context->priv->ClientFormatNames[i].id, context->priv->ClientFormatNames[i].name, context->priv->ClientFormatNames[i].length); @@ -316,7 +316,7 @@ static int cliprdr_server_receive_long_format_list(CliprdrServerContext* context static int cliprdr_server_receive_short_format_list(CliprdrServerContext* context, wStream* s, CLIPRDR_HEADER* header) { - printf("%s: unimplemented\n", __FUNCTION__); + DEBUG_MSG("%s: unimplemented\n", __FUNCTION__); return 0; } @@ -340,7 +340,7 @@ static int cliprdr_server_receive_format_list(CliprdrServerContext* context, wSt static int cliprdr_server_receive_pdu(CliprdrServerContext* context, wStream* s, CLIPRDR_HEADER* header) { - printf("CliprdrServerReceivePdu: msgType: %d msgFlags: 0x%08X dataLen: %d\n", + DEBUG_MSG("CliprdrServerReceivePdu: msgType: %d msgFlags: 0x%08X dataLen: %d\n", header->msgType, header->msgFlags, header->dataLen); switch (header->msgType) @@ -379,7 +379,7 @@ static int cliprdr_server_receive_pdu(CliprdrServerContext* context, wStream* s, break; default: - printf("Unexpected clipboard PDU type: %d\n", header->msgType); + DEBUG_MSG("Unexpected clipboard PDU type: %d\n", header->msgType); break; } diff --git a/channels/disp/client/disp_main.c b/channels/disp/client/disp_main.c index e8827366b..b3954d078 100644 --- a/channels/disp/client/disp_main.c +++ b/channels/disp/client/disp_main.c @@ -101,7 +101,7 @@ int disp_send_display_control_monitor_layout_pdu(DISP_CHANNEL_CALLBACK* callback Stream_Write_UINT32(s, NumMonitors); /* NumMonitors (4 bytes) */ - //fprintf(stderr, "NumMonitors: %d\n", NumMonitors); + //DEBUG_WARN( "NumMonitors: %d\n", NumMonitors); for (index = 0; index < NumMonitors; index++) { @@ -129,14 +129,14 @@ int disp_send_display_control_monitor_layout_pdu(DISP_CHANNEL_CALLBACK* callback Stream_Write_UINT32(s, Monitors[index].Orientation); /* Orientation (4 bytes) */ #if 0 - fprintf(stderr, "\t: Flags: 0x%04X\n", Monitors[index].Flags); - fprintf(stderr, "\t: Left: %d\n", Monitors[index].Left); - fprintf(stderr, "\t: Top: %d\n", Monitors[index].Top); - fprintf(stderr, "\t: Width: %d\n", Monitors[index].Width); - fprintf(stderr, "\t: Height: %d\n", Monitors[index].Height); - fprintf(stderr, "\t: PhysicalWidth: %d\n", Monitors[index].PhysicalWidth); - fprintf(stderr, "\t: PhysicalHeight: %d\n", Monitors[index].PhysicalHeight); - fprintf(stderr, "\t: Orientation: %d\n", Monitors[index].Orientation); + DEBUG_WARN( "\t: Flags: 0x%04X\n", Monitors[index].Flags); + DEBUG_WARN( "\t: Left: %d\n", Monitors[index].Left); + DEBUG_WARN( "\t: Top: %d\n", Monitors[index].Top); + DEBUG_WARN( "\t: Width: %d\n", Monitors[index].Width); + DEBUG_WARN( "\t: Height: %d\n", Monitors[index].Height); + DEBUG_WARN( "\t: PhysicalWidth: %d\n", Monitors[index].PhysicalWidth); + DEBUG_WARN( "\t: PhysicalHeight: %d\n", Monitors[index].PhysicalHeight); + DEBUG_WARN( "\t: Orientation: %d\n", Monitors[index].Orientation); #endif Stream_Write_UINT32(s, Monitors[index].DesktopScaleFactor); /* DesktopScaleFactor (4 bytes) */ @@ -162,7 +162,7 @@ int disp_recv_display_control_caps_pdu(DISP_CHANNEL_CALLBACK* callback, wStream* Stream_Read_UINT32(s, disp->MaxMonitorWidth); /* MaxMonitorWidth (4 bytes) */ Stream_Read_UINT32(s, disp->MaxMonitorHeight); /* MaxMonitorHeight (4 bytes) */ - //fprintf(stderr, "DisplayControlCapsPdu: MaxNumMonitors: %d MaxMonitorWidth: %d MaxMonitorHeight: %d\n", + //DEBUG_WARN( "DisplayControlCapsPdu: MaxNumMonitors: %d MaxMonitorWidth: %d MaxMonitorHeight: %d\n", // disp->MaxNumMonitors, disp->MaxMonitorWidth, disp->MaxMonitorHeight); return 0; @@ -176,7 +176,7 @@ int disp_recv_pdu(DISP_CHANNEL_CALLBACK* callback, wStream* s) Stream_Read_UINT32(s, type); /* Type (4 bytes) */ Stream_Read_UINT32(s, length); /* Length (4 bytes) */ - //fprintf(stderr, "Type: %d Length: %d\n", type, length); + //DEBUG_WARN( "Type: %d Length: %d\n", type, length); switch (type) { diff --git a/channels/drdynvc/client/dvcman.c b/channels/drdynvc/client/dvcman.c index 9a6d80537..3b936d974 100644 --- a/channels/drdynvc/client/dvcman.c +++ b/channels/drdynvc/client/dvcman.c @@ -218,7 +218,7 @@ int dvcman_load_addin(IWTSVirtualChannelManager* pChannelMgr, ADDIN_ARGV* args, DVCMAN_ENTRY_POINTS entryPoints; PDVC_PLUGIN_ENTRY pDVCPluginEntry = NULL; - fprintf(stderr, "Loading Dynamic Virtual Channel %s\n", args->argv[0]); + DEBUG_WARN( "Loading Dynamic Virtual Channel %s\n", args->argv[0]); pDVCPluginEntry = (PDVC_PLUGIN_ENTRY) freerdp_load_channel_addin_entry(args->argv[0], NULL, NULL, FREERDP_ADDIN_CHANNEL_DYNAMIC); diff --git a/channels/encomsp/client/encomsp_main.c b/channels/encomsp/client/encomsp_main.c index 1ed31296f..74858b89d 100644 --- a/channels/encomsp/client/encomsp_main.c +++ b/channels/encomsp/client/encomsp_main.c @@ -24,6 +24,7 @@ #include #include +#include #include #include "encomsp_main.h" @@ -43,7 +44,7 @@ int encomsp_virtual_channel_write(encomspPlugin* encomsp, wStream* s) return -1; #if 0 - printf("EncomspWrite (%d)\n", Stream_Length(s)); + DEBUG_MSG("EncomspWrite (%d)\n", Stream_Length(s)); winpr_HexDump(Stream_Buffer(s), Stream_Length(s)); #endif @@ -52,7 +53,7 @@ int encomsp_virtual_channel_write(encomspPlugin* encomsp, wStream* s) if (status != CHANNEL_RC_OK) { - fprintf(stderr, "encomsp_virtual_channel_write: VirtualChannelWrite failed %d\n", status); + DEBUG_WARN( "encomsp_virtual_channel_write: VirtualChannelWrite failed %d\n", status); return -1; } @@ -590,7 +591,7 @@ static int encomsp_process_receive(encomspPlugin* encomsp, wStream* s) if (encomsp_read_header(s, &header) < 0) return -1; - //printf("EncomspReceive: Type: %d Length: %d\n", header.Type, header.Length); + //DEBUG_MSG("EncomspReceive: Type: %d Length: %d\n", header.Type, header.Length); switch (header.Type) { @@ -722,7 +723,7 @@ int encomsp_send(encomspPlugin* encomsp, wStream* s) if (status != CHANNEL_RC_OK) { Stream_Free(s, TRUE); - fprintf(stderr, "encomsp_send: VirtualChannelWrite failed %d\n", status); + DEBUG_WARN( "encomsp_send: VirtualChannelWrite failed %d\n", status); } return status; @@ -754,7 +755,7 @@ static void encomsp_virtual_channel_event_data_received(encomspPlugin* encomsp, { if (Stream_Capacity(data_in) != Stream_GetPosition(data_in)) { - fprintf(stderr, "encomsp_plugin_process_received: read error\n"); + DEBUG_WARN( "encomsp_plugin_process_received: read error\n"); } encomsp->data_in = NULL; @@ -774,7 +775,7 @@ static VOID VCAPITYPE encomsp_virtual_channel_open_event(DWORD openHandle, UINT if (!encomsp) { - fprintf(stderr, "encomsp_virtual_channel_open_event: error no match\n"); + DEBUG_WARN( "encomsp_virtual_channel_open_event: error no match\n"); return; } @@ -834,7 +835,7 @@ static void encomsp_virtual_channel_event_connected(encomspPlugin* encomsp, LPVO if (status != CHANNEL_RC_OK) { - fprintf(stderr, "encomsp_virtual_channel_event_connected: open failed: status: %d\n", status); + DEBUG_WARN( "encomsp_virtual_channel_event_connected: open failed: status: %d\n", status); return; } @@ -872,7 +873,7 @@ static VOID VCAPITYPE encomsp_virtual_channel_init_event(LPVOID pInitHandle, UIN if (!encomsp) { - fprintf(stderr, "encomsp_virtual_channel_init_event: error no match\n"); + DEBUG_WARN( "encomsp_virtual_channel_init_event: error no match\n"); return; } diff --git a/channels/printer/client/printer_win.c b/channels/printer/client/printer_win.c index fcbbbc1fd..a91ddbce5 100644 --- a/channels/printer/client/printer_win.c +++ b/channels/printer/client/printer_win.c @@ -185,7 +185,7 @@ static rdpPrinter* printer_win_new_printer(rdpWinPrinterDriver* win_driver, cons win_printer->printer.FindPrintJob = printer_win_find_printjob; win_printer->printer.Free = printer_win_free_printer; - swprintf(wname, 256, L"%hs", name); + swDEBUG_MSG(wname, 256, L"%hs", name); OpenPrinter(wname, &(win_printer->hPrinter), NULL); GetPrinter(win_printer->hPrinter, 2, (LPBYTE) prninfo, 0, &needed); diff --git a/channels/rail/client/rail_orders.c b/channels/rail/client/rail_orders.c index 3096f543b..0eeb7839c 100644 --- a/channels/rail/client/rail_orders.c +++ b/channels/rail/client/rail_orders.c @@ -522,7 +522,7 @@ BOOL rail_order_recv(railPlugin* rail, wStream* s) } default: - fprintf(stderr, "Unknown RAIL PDU order reveived."); + DEBUG_WARN( "Unknown RAIL PDU order reveived."); break; } diff --git a/channels/rdpdr/client/devman.c b/channels/rdpdr/client/devman.c index 75778fe01..18f326adf 100644 --- a/channels/rdpdr/client/devman.c +++ b/channels/rdpdr/client/devman.c @@ -32,6 +32,7 @@ #include #include #include +#include #include "rdpdr_main.h" @@ -122,7 +123,7 @@ BOOL devman_load_device_service(DEVMAN* devman, RDPDR_DEVICE* device) if (!ServiceName) return FALSE; - fprintf(stderr, "Loading device service %s (static)\n", ServiceName); + DEBUG_WARN( "Loading device service %s (static)\n", ServiceName); entry = (PDEVICE_SERVICE_ENTRY) freerdp_load_channel_addin_entry(ServiceName, NULL, "DeviceServiceEntry", 0); if (!entry) diff --git a/channels/rdpdr/client/rdpdr_main.c b/channels/rdpdr/client/rdpdr_main.c index c1b4975c2..0574ee8b2 100644 --- a/channels/rdpdr/client/rdpdr_main.c +++ b/channels/rdpdr/client/rdpdr_main.c @@ -31,6 +31,7 @@ #include #include +#include #include #ifdef _WIN32 @@ -451,7 +452,7 @@ static void* drive_hotplug_thread_func(void* arg) if (mfd < 0) { - fprintf(stderr, "ERROR: Unable to open /proc/mounts."); + DEBUG_WARN( "ERROR: Unable to open /proc/mounts."); return NULL; } @@ -662,7 +663,7 @@ static void rdpdr_send_device_list_announce_request(rdpdrPlugin* rdpdr, BOOL use count++; - fprintf(stderr, "registered device #%d: %s (type=%d id=%d)\n", + DEBUG_WARN( "registered device #%d: %s (type=%d id=%d)\n", count, device->name, device->type, device->id); } } @@ -845,7 +846,7 @@ int rdpdr_send(rdpdrPlugin* rdpdr, wStream* s) if (status != CHANNEL_RC_OK) { Stream_Free(s, TRUE); - fprintf(stderr, "rdpdr_send: VirtualChannelWrite failed %d\n", status); + DEBUG_WARN( "rdpdr_send: VirtualChannelWrite failed %d\n", status); } return status; @@ -883,7 +884,7 @@ static void rdpdr_virtual_channel_event_data_received(rdpdrPlugin* rdpdr, { if (Stream_Capacity(data_in) != Stream_GetPosition(data_in)) { - fprintf(stderr, "svc_plugin_process_received: read error\n"); + DEBUG_WARN( "svc_plugin_process_received: read error\n"); } rdpdr->data_in = NULL; @@ -903,7 +904,7 @@ static VOID VCAPITYPE rdpdr_virtual_channel_open_event(DWORD openHandle, UINT ev if (!rdpdr) { - fprintf(stderr, "rdpdr_virtual_channel_open_event: error no match\n"); + DEBUG_WARN( "rdpdr_virtual_channel_open_event: error no match\n"); return; } @@ -963,7 +964,7 @@ static void rdpdr_virtual_channel_event_connected(rdpdrPlugin* rdpdr, LPVOID pDa if (status != CHANNEL_RC_OK) { - fprintf(stderr, "rdpdr_virtual_channel_event_connected: open failed: status: %d\n", status); + DEBUG_WARN( "rdpdr_virtual_channel_event_connected: open failed: status: %d\n", status); return; } @@ -1009,7 +1010,7 @@ static VOID VCAPITYPE rdpdr_virtual_channel_init_event(LPVOID pInitHandle, UINT if (!rdpdr) { - fprintf(stderr, "rdpdr_virtual_channel_init_event: error no match\n"); + DEBUG_WARN( "rdpdr_virtual_channel_init_event: error no match\n"); return; } diff --git a/channels/rdpdr/server/rdpdr_main.c b/channels/rdpdr/server/rdpdr_main.c index 09d768413..d10188f67 100644 --- a/channels/rdpdr/server/rdpdr_main.c +++ b/channels/rdpdr/server/rdpdr_main.c @@ -36,7 +36,7 @@ static int rdpdr_server_send_announce_request(RdpdrServerContext* context) RDPDR_HEADER header; ULONG written; - printf("RdpdrServerSendAnnounceRequest\n"); + DEBUG_MSG("RdpdrServerSendAnnounceRequest\n"); header.Component = RDPDR_CTYP_CORE; header.PacketId = PAKID_CORE_SERVER_ANNOUNCE; @@ -69,7 +69,7 @@ static int rdpdr_server_receive_announce_response(RdpdrServerContext* context, w Stream_Read_UINT16(s, VersionMinor); /* VersionMinor (2 bytes) */ Stream_Read_UINT32(s, ClientId); /* ClientId (4 bytes) */ - printf("Client Announce Response: VersionMajor: 0x%04X VersionMinor: 0x%04X ClientId: 0x%04X\n", + DEBUG_MSG("Client Announce Response: VersionMajor: 0x%04X VersionMinor: 0x%04X ClientId: 0x%04X\n", VersionMajor, VersionMinor, ClientId); context->priv->ClientId = ClientId; @@ -109,7 +109,7 @@ static int rdpdr_server_receive_client_name_request(RdpdrServerContext* context, Stream_Seek(s, ComputerNameLen); - printf("ClientComputerName: %s\n", context->priv->ClientComputerName); + DEBUG_MSG("ClientComputerName: %s\n", context->priv->ClientComputerName); return 0; } @@ -298,7 +298,7 @@ static int rdpdr_server_send_core_capability_request(RdpdrServerContext* context UINT16 numCapabilities; ULONG written; - printf("RdpdrServerSendCoreCapabilityRequest\n"); + DEBUG_MSG("RdpdrServerSendCoreCapabilityRequest\n"); header.Component = RDPDR_CTYP_CORE; header.PacketId = PAKID_CORE_SERVER_CAPABILITY; @@ -364,7 +364,7 @@ static int rdpdr_server_receive_core_capability_response(RdpdrServerContext* con break; default: - printf("Unknown capabilityType %d\n", capabilityHeader.CapabilityType); + DEBUG_MSG("Unknown capabilityType %d\n", capabilityHeader.CapabilityType); Stream_Seek(s, capabilityHeader.CapabilityLength - RDPDR_CAPABILITY_HEADER_LENGTH); break; } @@ -380,7 +380,7 @@ static int rdpdr_server_send_client_id_confirm(RdpdrServerContext* context) RDPDR_HEADER header; ULONG written; - printf("RdpdrServerSendClientIdConfirm\n"); + DEBUG_MSG("RdpdrServerSendClientIdConfirm\n"); header.Component = RDPDR_CTYP_CORE; header.PacketId = PAKID_CORE_CLIENTID_CONFIRM; @@ -416,7 +416,7 @@ static int rdpdr_server_receive_device_list_announce_request(RdpdrServerContext* Stream_Read_UINT32(s, DeviceCount); /* DeviceCount (4 bytes) */ - printf("%s: DeviceCount: %d\n", __FUNCTION__, DeviceCount); + DEBUG_MSG("%s: DeviceCount: %d\n", __FUNCTION__, DeviceCount); for (i = 0; i < DeviceCount; i++) { @@ -425,7 +425,7 @@ static int rdpdr_server_receive_device_list_announce_request(RdpdrServerContext* Stream_Read(s, PreferredDosName, 8); /* PreferredDosName (8 bytes) */ Stream_Read_UINT32(s, DeviceDataLength); /* DeviceDataLength (4 bytes) */ - printf("Device %d Name: %s Id: 0x%04X DataLength: %d\n", + DEBUG_MSG("Device %d Name: %s Id: 0x%04X DataLength: %d\n", i, PreferredDosName, DeviceId, DeviceDataLength); switch (DeviceId) @@ -462,7 +462,7 @@ static int rdpdr_server_send_user_logged_on(RdpdrServerContext* context) RDPDR_HEADER header; ULONG written; - printf("%s\n", __FUNCTION__); + DEBUG_MSG("%s\n", __FUNCTION__); header.Component = RDPDR_CTYP_CORE; header.PacketId = PAKID_CORE_USER_LOGGEDON; @@ -483,7 +483,7 @@ static int rdpdr_server_send_user_logged_on(RdpdrServerContext* context) static int rdpdr_server_receive_pdu(RdpdrServerContext* context, wStream* s, RDPDR_HEADER* header) { - printf("RdpdrServerReceivePdu: Component: 0x%04X PacketId: 0x%04X\n", + DEBUG_MSG("RdpdrServerReceivePdu: Component: 0x%04X PacketId: 0x%04X\n", header->Component, header->PacketId); winpr_HexDump(Stream_Buffer(s), Stream_Length(s)); @@ -545,7 +545,7 @@ static int rdpdr_server_receive_pdu(RdpdrServerContext* context, wStream* s, RDP } else { - printf("Unknown RDPDR_HEADER.Component: 0x%04X\n", header->Component); + DEBUG_MSG("Unknown RDPDR_HEADER.Component: 0x%04X\n", header->Component); return -1; } diff --git a/channels/rdpei/client/rdpei_main.c b/channels/rdpei/client/rdpei_main.c index cd837669f..18e0d29ec 100644 --- a/channels/rdpei/client/rdpei_main.c +++ b/channels/rdpei/client/rdpei_main.c @@ -201,7 +201,7 @@ int rdpei_send_pdu(RDPEI_CHANNEL_CALLBACK* callback, wStream* s, UINT16 eventId, status = callback->channel->Write(callback->channel, (UINT32) Stream_Length(s), Stream_Buffer(s), NULL); #ifdef WITH_DEBUG_RDPEI - fprintf(stderr, "rdpei_send_pdu: eventId: %d (%s) length: %d status: %d\n", + DEBUG_WARN( "rdpei_send_pdu: eventId: %d (%s) length: %d status: %d\n", eventId, RDPEI_EVENTID_STRINGS[eventId], pduLength, status); #endif @@ -239,17 +239,17 @@ int rdpei_send_cs_ready_pdu(RDPEI_CHANNEL_CALLBACK* callback) void rdpei_print_contact_flags(UINT32 contactFlags) { if (contactFlags & CONTACT_FLAG_DOWN) - printf(" CONTACT_FLAG_DOWN"); + DEBUG_MSG(" CONTACT_FLAG_DOWN"); if (contactFlags & CONTACT_FLAG_UPDATE) - printf(" CONTACT_FLAG_UPDATE"); + DEBUG_MSG(" CONTACT_FLAG_UPDATE"); if (contactFlags & CONTACT_FLAG_UP) - printf(" CONTACT_FLAG_UP"); + DEBUG_MSG(" CONTACT_FLAG_UP"); if (contactFlags & CONTACT_FLAG_INRANGE) - printf(" CONTACT_FLAG_INRANGE"); + DEBUG_MSG(" CONTACT_FLAG_INRANGE"); if (contactFlags & CONTACT_FLAG_INCONTACT) - printf(" CONTACT_FLAG_INCONTACT"); + DEBUG_MSG(" CONTACT_FLAG_INCONTACT"); if (contactFlags & CONTACT_FLAG_CANCELED) - printf(" CONTACT_FLAG_CANCELED"); + DEBUG_MSG(" CONTACT_FLAG_CANCELED"); } int rdpei_write_touch_frame(wStream* s, RDPINPUT_TOUCH_FRAME* frame) @@ -259,8 +259,8 @@ int rdpei_write_touch_frame(wStream* s, RDPINPUT_TOUCH_FRAME* frame) RDPINPUT_CONTACT_DATA* contact; #ifdef WITH_DEBUG_RDPEI - printf("contactCount: %d\n", frame->contactCount); - printf("frameOffset: 0x%08X\n", (UINT32) frame->frameOffset); + DEBUG_MSG("contactCount: %d\n", frame->contactCount); + DEBUG_MSG("frameOffset: 0x%08X\n", (UINT32) frame->frameOffset); #endif rdpei_write_2byte_unsigned(s, frame->contactCount); /* contactCount (TWO_BYTE_UNSIGNED_INTEGER) */ @@ -284,13 +284,13 @@ int rdpei_write_touch_frame(wStream* s, RDPINPUT_TOUCH_FRAME* frame) contact->contactRectBottom = contact->y + rectSize; #ifdef WITH_DEBUG_RDPEI - printf("contact[%d].contactId: %d\n", index, contact->contactId); - printf("contact[%d].fieldsPresent: %d\n", index, contact->fieldsPresent); - printf("contact[%d].x: %d\n", index, contact->x); - printf("contact[%d].y: %d\n", index, contact->y); - printf("contact[%d].contactFlags: 0x%04X", index, contact->contactFlags); + DEBUG_MSG("contact[%d].contactId: %d\n", index, contact->contactId); + DEBUG_MSG("contact[%d].fieldsPresent: %d\n", index, contact->fieldsPresent); + DEBUG_MSG("contact[%d].x: %d\n", index, contact->x); + DEBUG_MSG("contact[%d].y: %d\n", index, contact->y); + DEBUG_MSG("contact[%d].contactFlags: 0x%04X", index, contact->contactFlags); rdpei_print_contact_flags(contact->contactFlags); - printf("\n"); + DEBUG_MSG("\n"); #endif Stream_Write_UINT8(s, contact->contactId); /* contactId (1 byte) */ @@ -371,7 +371,7 @@ int rdpei_recv_sc_ready_pdu(RDPEI_CHANNEL_CALLBACK* callback, wStream* s) #if 0 if (protocolVersion != RDPINPUT_PROTOCOL_V10) { - fprintf(stderr, "Unknown [MS-RDPEI] protocolVersion: 0x%08X\n", protocolVersion); + DEBUG_WARN( "Unknown [MS-RDPEI] protocolVersion: 0x%08X\n", protocolVersion); return -1; } #endif @@ -408,7 +408,7 @@ int rdpei_recv_pdu(RDPEI_CHANNEL_CALLBACK* callback, wStream* s) Stream_Read_UINT32(s, pduLength); /* pduLength (4 bytes) */ #ifdef WITH_DEBUG_RDPEI - fprintf(stderr, "rdpei_recv_pdu: eventId: %d (%s) length: %d\n", + DEBUG_WARN( "rdpei_recv_pdu: eventId: %d (%s) length: %d\n", eventId, RDPEI_EVENTID_STRINGS[eventId], pduLength); #endif diff --git a/channels/rdpgfx/client/rdpgfx_main.c b/channels/rdpgfx/client/rdpgfx_main.c index f50010f93..8bca50d4a 100644 --- a/channels/rdpgfx/client/rdpgfx_main.c +++ b/channels/rdpgfx/client/rdpgfx_main.c @@ -37,6 +37,7 @@ #include #include +#include #include "rdpgfx_common.h" #include "rdpgfx_codec.h" @@ -802,7 +803,7 @@ int rdpgfx_recv_pdu(RDPGFX_CHANNEL_CALLBACK* callback, wStream* s) if (status < 0) { - fprintf(stderr, "Error while parsing GFX cmdId: %s (0x%04X)\n", + DEBUG_WARN( "Error while parsing GFX cmdId: %s (0x%04X)\n", rdpgfx_get_cmd_id_string(header.cmdId), header.cmdId); return -1; } @@ -811,7 +812,7 @@ int rdpgfx_recv_pdu(RDPGFX_CHANNEL_CALLBACK* callback, wStream* s) if (end != (beg + header.pduLength)) { - fprintf(stderr, "Unexpected gfx pdu end: Actual: %d, Expected: %d\n", + DEBUG_WARN( "Unexpected gfx pdu end: Actual: %d, Expected: %d\n", end, (beg + header.pduLength)); Stream_SetPosition(s, (beg + header.pduLength)); @@ -833,7 +834,7 @@ static int rdpgfx_on_data_received(IWTSVirtualChannelCallback* pChannelCallback, if (status < 0) { - printf("zgfx_decompress failure! status: %d\n", status); + DEBUG_MSG("zgfx_decompress failure! status: %d\n", status); return 0; } diff --git a/channels/rdpsnd/client/alsa/rdpsnd_alsa.c b/channels/rdpsnd/client/alsa/rdpsnd_alsa.c index 0edc08d93..0ea935f5e 100644 --- a/channels/rdpsnd/client/alsa/rdpsnd_alsa.c +++ b/channels/rdpsnd/client/alsa/rdpsnd_alsa.c @@ -68,7 +68,7 @@ struct rdpsnd_alsa_plugin #define SND_PCM_CHECK(_func, _status) \ if (_status < 0) \ { \ - fprintf(stderr, "%s: %d\n", _func, _status); \ + DEBUG_WARN( "%s: %d\n", _func, _status); \ return -1; \ } @@ -106,7 +106,7 @@ static int rdpsnd_alsa_set_hw_params(rdpsndAlsaPlugin* alsa) if (alsa->buffer_size > buffer_size_max) { - fprintf(stderr, "Warning: requested sound buffer size %d, got %d instead\n", + DEBUG_WARN( "Warning: requested sound buffer size %d, got %d instead\n", (int) alsa->buffer_size, (int) buffer_size_max); alsa->buffer_size = buffer_size_max; } @@ -579,7 +579,7 @@ static void rdpsnd_alsa_wave_play(rdpsndDevicePlugin* device, RDPSND_WAVE* wave) } else if (status < 0) { - fprintf(stderr, "status: %d\n", status); + DEBUG_WARN( "status: %d\n", status); snd_pcm_close(alsa->pcm_handle); alsa->pcm_handle = NULL; rdpsnd_alsa_open((rdpsndDevicePlugin*) alsa, NULL, alsa->latency); @@ -600,7 +600,7 @@ static void rdpsnd_alsa_wave_play(rdpsndDevicePlugin* device, RDPSND_WAVE* wave) wave->wLatency = (UINT16) (wave->wLocalTimeB - wave->wLocalTimeA); wave->wTimeStampB = wave->wTimeStampA + wave->wLatency; - //fprintf(stderr, "wTimeStampA: %d wTimeStampB: %d wLatency: %d\n", wave->wTimeStampA, wave->wTimeStampB, wave->wLatency); + //DEBUG_WARN( "wTimeStampA: %d wTimeStampB: %d wLatency: %d\n", wave->wTimeStampA, wave->wTimeStampB, wave->wLatency); } static COMMAND_LINE_ARGUMENT_A rdpsnd_alsa_args[] = diff --git a/channels/rdpsnd/client/ios/TPCircularBuffer.c b/channels/rdpsnd/client/ios/TPCircularBuffer.c index 1dcf47190..47143ea03 100644 --- a/channels/rdpsnd/client/ios/TPCircularBuffer.c +++ b/channels/rdpsnd/client/ios/TPCircularBuffer.c @@ -37,7 +37,7 @@ #define reportResult(result,operation) (_reportResult((result),(operation),__FILE__,__LINE__)) static inline bool _reportResult(kern_return_t result, const char *operation, const char* file, int line) { if ( result != ERR_SUCCESS ) { - printf("%s:%d: %s: %s\n", file, line, operation, mach_error_string(result)); + DEBUG_MSG("%s:%d: %s: %s\n", file, line, operation, mach_error_string(result)); return false; } return true; @@ -108,7 +108,7 @@ bool TPCircularBufferInit(TPCircularBuffer *buffer, int length) { if ( virtualAddress != bufferAddress+buffer->length ) { // If the memory is not contiguous, clean up both allocated buffers and try again if ( retries-- == 0 ) { - printf("Couldn't map buffer memory to end of buffer\n"); + DEBUG_MSG("Couldn't map buffer memory to end of buffer\n"); return false; } diff --git a/channels/rdpsnd/client/mac/rdpsnd_mac.c b/channels/rdpsnd/client/mac/rdpsnd_mac.c index 96ffacd89..fe2a21ef2 100644 --- a/channels/rdpsnd/client/mac/rdpsnd_mac.c +++ b/channels/rdpsnd/client/mac/rdpsnd_mac.c @@ -121,7 +121,7 @@ static void rdpsnd_mac_open(rdpsndDevicePlugin* device, AUDIO_FORMAT* format, in if (status != 0) { - fprintf(stderr, "AudioQueueNewOutput failure\n"); + DEBUG_WARN( "AudioQueueNewOutput failure\n"); return; } @@ -135,7 +135,7 @@ static void rdpsnd_mac_open(rdpsndDevicePlugin* device, AUDIO_FORMAT* format, in if (status != 0) { - printf("AudioQueueGetProperty failure: kAudioQueueProperty_DecodeBufferSizeFrames\n"); + DEBUG_MSG("AudioQueueGetProperty failure: kAudioQueueProperty_DecodeBufferSizeFrames\n"); } for (index = 0; index < MAC_AUDIO_QUEUE_NUM_BUFFERS; index++) @@ -144,7 +144,7 @@ static void rdpsnd_mac_open(rdpsndDevicePlugin* device, AUDIO_FORMAT* format, in if (status != 0) { - fprintf(stderr, "AudioQueueAllocateBuffer failed\n"); + DEBUG_WARN( "AudioQueueAllocateBuffer failed\n"); } } @@ -219,7 +219,7 @@ static void rdpsnd_mac_set_volume(rdpsndDevicePlugin* device, UINT32 value) if (status != 0) { - fprintf(stderr, "AudioQueueSetParameter kAudioQueueParam_Volume failed: %f\n", fVolume); + DEBUG_WARN( "AudioQueueSetParameter kAudioQueueParam_Volume failed: %f\n", fVolume); } } @@ -238,7 +238,7 @@ static void rdpsnd_mac_start(rdpsndDevicePlugin* device) if (status != 0) { - fprintf(stderr, "AudioQueueStart failed\n"); + DEBUG_WARN( "AudioQueueStart failed\n"); } mac->isPlaying = TRUE; diff --git a/channels/rdpsnd/client/rdpsnd_main.c b/channels/rdpsnd/client/rdpsnd_main.c index c4fc84637..f72ff8279 100644 --- a/channels/rdpsnd/client/rdpsnd_main.c +++ b/channels/rdpsnd/client/rdpsnd_main.c @@ -195,13 +195,13 @@ void rdpsnd_select_supported_audio_formats(rdpsndPlugin* rdpsnd) } #if 0 - fprintf(stderr, "Server "); + DEBUG_WARN( "Server "); rdpsnd_print_audio_formats(rdpsnd->ServerFormats, rdpsnd->NumberOfServerFormats); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); - fprintf(stderr, "Client "); + DEBUG_WARN( "Client "); rdpsnd_print_audio_formats(rdpsnd->ClientFormats, rdpsnd->NumberOfClientFormats); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); #endif } @@ -544,7 +544,7 @@ static void rdpsnd_recv_pdu(rdpsndPlugin* rdpsnd, wStream* s) Stream_Seek_UINT8(s); /* bPad */ Stream_Read_UINT16(s, BodySize); - //fprintf(stderr, "msgType %d BodySize %d\n", msgType, BodySize); + //DEBUG_WARN( "msgType %d BodySize %d\n", msgType, BodySize); switch (msgType) { @@ -875,7 +875,7 @@ int rdpsnd_virtual_channel_write(rdpsndPlugin* rdpsnd, wStream* s) if (status != CHANNEL_RC_OK) { Stream_Free(s, TRUE); - fprintf(stderr, "rdpdr_virtual_channel_write: VirtualChannelWrite failed %d\n", status); + DEBUG_WARN( "rdpdr_virtual_channel_write: VirtualChannelWrite failed %d\n", status); } return status; @@ -907,7 +907,7 @@ static void rdpsnd_virtual_channel_event_data_received(rdpsndPlugin* plugin, { if (Stream_Capacity(s) != Stream_GetPosition(s)) { - fprintf(stderr, "rdpsnd_virtual_channel_event_data_received: read error\n"); + DEBUG_WARN( "rdpsnd_virtual_channel_event_data_received: read error\n"); } plugin->data_in = NULL; @@ -927,7 +927,7 @@ static VOID VCAPITYPE rdpsnd_virtual_channel_open_event(DWORD openHandle, UINT e if (!plugin) { - fprintf(stderr, "rdpsnd_virtual_channel_open_event: error no match\n"); + DEBUG_WARN( "rdpsnd_virtual_channel_open_event: error no match\n"); return; } @@ -987,7 +987,7 @@ static void rdpsnd_virtual_channel_event_connected(rdpsndPlugin* plugin, LPVOID if (status != CHANNEL_RC_OK) { - fprintf(stderr, "rdpsnd_virtual_channel_event_connected: open failed: status: %d\n", status); + DEBUG_WARN( "rdpsnd_virtual_channel_event_connected: open failed: status: %d\n", status); return; } @@ -1040,7 +1040,7 @@ static VOID VCAPITYPE rdpsnd_virtual_channel_init_event(LPVOID pInitHandle, UINT if (!plugin) { - fprintf(stderr, "rdpsnd_virtual_channel_init_event: error no match\n"); + DEBUG_WARN( "rdpsnd_virtual_channel_init_event: error no match\n"); return; } diff --git a/channels/rdpsnd/client/winmm/rdpsnd_winmm.c b/channels/rdpsnd/client/winmm/rdpsnd_winmm.c index 961b95e83..8c8e22bc9 100644 --- a/channels/rdpsnd/client/winmm/rdpsnd_winmm.c +++ b/channels/rdpsnd/client/winmm/rdpsnd_winmm.c @@ -101,11 +101,11 @@ static void CALLBACK rdpsnd_winmm_callback_function(HWAVEOUT hwo, UINT uMsg, DWO switch (uMsg) { case MM_WOM_OPEN: - fprintf(stderr, "MM_WOM_OPEN\n"); + DEBUG_WARN( "MM_WOM_OPEN\n"); break; case MM_WOM_CLOSE: - fprintf(stderr, "MM_WOM_CLOSE\n"); + DEBUG_WARN( "MM_WOM_CLOSE\n"); break; case MM_WOM_DONE: @@ -121,7 +121,7 @@ static void CALLBACK rdpsnd_winmm_callback_function(HWAVEOUT hwo, UINT uMsg, DWO if (!wave) return; - fprintf(stderr, "MM_WOM_DONE: dwBufferLength: %d cBlockNo: %d\n", + DEBUG_WARN( "MM_WOM_DONE: dwBufferLength: %d cBlockNo: %d\n", lpWaveHdr->dwBufferLength, wave->cBlockNo); wave->wLocalTimeB = GetTickCount(); @@ -155,7 +155,7 @@ static void rdpsnd_winmm_open(rdpsndDevicePlugin* device, AUDIO_FORMAT* format, if (mmResult != MMSYSERR_NOERROR) { - fprintf(stderr, "waveOutOpen failed: %d\n", mmResult); + DEBUG_WARN( "waveOutOpen failed: %d\n", mmResult); } } @@ -172,7 +172,7 @@ static void rdpsnd_winmm_close(rdpsndDevicePlugin* device) if (mmResult != MMSYSERR_NOERROR) { - fprintf(stderr, "waveOutClose failure: %d\n", mmResult); + DEBUG_WARN( "waveOutClose failure: %d\n", mmResult); } winmm->hWaveOut = NULL; @@ -299,7 +299,7 @@ void rdpsnd_winmm_wave_play(rdpsndDevicePlugin* device, RDPSND_WAVE* wave) if (mmResult != MMSYSERR_NOERROR) { - fprintf(stderr, "waveOutPrepareHeader failure: %d\n", mmResult); + DEBUG_WARN( "waveOutPrepareHeader failure: %d\n", mmResult); return; } @@ -307,7 +307,7 @@ void rdpsnd_winmm_wave_play(rdpsndDevicePlugin* device, RDPSND_WAVE* wave) if (mmResult != MMSYSERR_NOERROR) { - fprintf(stderr, "waveOutWrite failure: %d\n", mmResult); + DEBUG_WARN( "waveOutWrite failure: %d\n", mmResult); waveOutUnprepareHeader(winmm->hWaveOut, lpWaveHdr, sizeof(WAVEHDR)); return; } diff --git a/channels/rdpsnd/server/rdpsnd_main.c b/channels/rdpsnd/server/rdpsnd_main.c index 74fe4ec14..1d56bf1f9 100644 --- a/channels/rdpsnd/server/rdpsnd_main.c +++ b/channels/rdpsnd/server/rdpsnd_main.c @@ -108,7 +108,7 @@ static BOOL rdpsnd_server_recv_quality_mode(RdpsndServerContext* context, wStrea Stream_Read_UINT16(s, quality); Stream_Seek_UINT16(s); // reserved - fprintf(stderr, "Client requested sound quality: %#0X\n", quality); + DEBUG_WARN( "Client requested sound quality: %#0X\n", quality); return TRUE; } @@ -137,7 +137,7 @@ static BOOL rdpsnd_server_recv_formats(RdpsndServerContext* context, wStream* s) if (!context->num_client_formats) { - fprintf(stderr, "%s: client doesn't support any format!\n", __FUNCTION__); + DEBUG_WARN( "%s: client doesn't support any format!\n", __FUNCTION__); return FALSE; } @@ -174,7 +174,7 @@ static BOOL rdpsnd_server_recv_formats(RdpsndServerContext* context, wStream* s) if (!context->num_client_formats) { - fprintf(stderr, "%s: client doesn't support any known format!\n", __FUNCTION__); + DEBUG_WARN( "%s: client doesn't support any known format!\n", __FUNCTION__); goto out_free; } @@ -230,7 +230,7 @@ static BOOL rdpsnd_server_select_format(RdpsndServerContext* context, int client if (client_format_index < 0 || client_format_index >= context->num_client_formats) { - fprintf(stderr, "%s: index %d is not correct.\n", __FUNCTION__, client_format_index); + DEBUG_WARN( "%s: index %d is not correct.\n", __FUNCTION__, client_format_index); return FALSE; } @@ -242,7 +242,7 @@ static BOOL rdpsnd_server_select_format(RdpsndServerContext* context, int client if (format->nSamplesPerSec == 0) { - fprintf(stderr, "%s: invalid Client Sound Format!!\n", __FUNCTION__); + DEBUG_WARN( "%s: invalid Client Sound Format!!\n", __FUNCTION__); return FALSE; } @@ -475,7 +475,7 @@ static int rdpsnd_server_start(RdpsndServerContext* context) if (!WTSVirtualChannelQuery(priv->ChannelHandle, WTSVirtualEventHandle, &buffer, &bytesReturned) || (bytesReturned != sizeof(HANDLE))) { - fprintf(stderr, "%s: error during WTSVirtualChannelQuery(WTSVirtualEventHandle) or invalid returned size(%d)\n", + DEBUG_WARN( "%s: error during WTSVirtualChannelQuery(WTSVirtualEventHandle) or invalid returned size(%d)\n", __FUNCTION__, bytesReturned); if (buffer) WTSFreeMemory(buffer); @@ -631,7 +631,7 @@ BOOL rdpsnd_server_handle_messages(RdpsndServerContext *context) if (GetLastError() == ERROR_NO_DATA) return TRUE; - fprintf(stderr, "%s: channel connection closed\n", __FUNCTION__); + DEBUG_WARN( "%s: channel connection closed\n", __FUNCTION__); return FALSE; } priv->expectedBytes -= bytesReturned; @@ -659,7 +659,7 @@ BOOL rdpsnd_server_handle_messages(RdpsndServerContext *context) /* when here we have the header + the body */ #ifdef WITH_DEBUG_SND - fprintf(stderr, "%s: message type %d\n", __FUNCTION__, priv->msgType); + DEBUG_WARN( "%s: message type %d\n", __FUNCTION__, priv->msgType); #endif priv->expectedBytes = 4; priv->waitingHeader = TRUE; @@ -685,7 +685,7 @@ BOOL rdpsnd_server_handle_messages(RdpsndServerContext *context) break; default: - fprintf(stderr, "%s: UNKOWN MESSAGE TYPE!! (%#0X)\n\n", __FUNCTION__, priv->msgType); + DEBUG_WARN( "%s: UNKOWN MESSAGE TYPE!! (%#0X)\n\n", __FUNCTION__, priv->msgType); ret = FALSE; break; } diff --git a/channels/remdesk/client/remdesk_main.c b/channels/remdesk/client/remdesk_main.c index 8527b59c8..4917b6efc 100644 --- a/channels/remdesk/client/remdesk_main.c +++ b/channels/remdesk/client/remdesk_main.c @@ -26,6 +26,7 @@ #include +#include #include #include "remdesk_main.h" @@ -49,7 +50,7 @@ int remdesk_virtual_channel_write(remdeskPlugin* remdesk, wStream* s) if (status != CHANNEL_RC_OK) { - fprintf(stderr, "remdesk_virtual_channel_write: VirtualChannelWrite failed %d\n", status); + DEBUG_WARN( "remdesk_virtual_channel_write: VirtualChannelWrite failed %d\n", status); return -1; } @@ -225,7 +226,7 @@ int remdesk_recv_result_pdu(remdeskPlugin* remdesk, wStream* s, REMDESK_CHANNEL_ *pResult = result; - //printf("RemdeskRecvResult: 0x%04X\n", result); + //DEBUG_MSG("RemdeskRecvResult: 0x%04X\n", result); return 1; } @@ -396,7 +397,7 @@ int remdesk_recv_ctl_pdu(remdeskPlugin* remdesk, wStream* s, REMDESK_CHANNEL_HEA Stream_Read_UINT32(s, msgType); /* msgType (4 bytes) */ - //printf("msgType: %d\n", msgType); + //DEBUG_MSG("msgType: %d\n", msgType); switch (msgType) { @@ -461,7 +462,7 @@ int remdesk_recv_ctl_pdu(remdeskPlugin* remdesk, wStream* s, REMDESK_CHANNEL_HEA break; default: - fprintf(stderr, "remdesk_recv_control_pdu: unknown msgType: %d\n", msgType); + DEBUG_WARN( "remdesk_recv_control_pdu: unknown msgType: %d\n", msgType); status = -1; break; } @@ -475,7 +476,7 @@ int remdesk_process_receive(remdeskPlugin* remdesk, wStream* s) REMDESK_CHANNEL_HEADER header; #if 0 - printf("RemdeskReceive: %d\n", Stream_GetRemainingLength(s)); + DEBUG_MSG("RemdeskReceive: %d\n", Stream_GetRemainingLength(s)); winpr_HexDump(Stream_Pointer(s), Stream_GetRemainingLength(s)); #endif @@ -585,7 +586,7 @@ int remdesk_send(remdeskPlugin* remdesk, wStream* s) if (status != CHANNEL_RC_OK) { Stream_Free(s, TRUE); - fprintf(stderr, "remdesk_send: VirtualChannelWrite failed %d\n", status); + DEBUG_WARN( "remdesk_send: VirtualChannelWrite failed %d\n", status); } return status; @@ -617,7 +618,7 @@ static void remdesk_virtual_channel_event_data_received(remdeskPlugin* remdesk, { if (Stream_Capacity(data_in) != Stream_GetPosition(data_in)) { - fprintf(stderr, "remdesk_plugin_process_received: read error\n"); + DEBUG_WARN( "remdesk_plugin_process_received: read error\n"); } remdesk->data_in = NULL; @@ -637,7 +638,7 @@ static VOID VCAPITYPE remdesk_virtual_channel_open_event(DWORD openHandle, UINT if (!remdesk) { - fprintf(stderr, "remdesk_virtual_channel_open_event: error no match\n"); + DEBUG_WARN( "remdesk_virtual_channel_open_event: error no match\n"); return; } @@ -697,7 +698,7 @@ static void remdesk_virtual_channel_event_connected(remdeskPlugin* remdesk, LPVO if (status != CHANNEL_RC_OK) { - fprintf(stderr, "remdesk_virtual_channel_event_connected: open failed: status: %d\n", status); + DEBUG_WARN( "remdesk_virtual_channel_event_connected: open failed: status: %d\n", status); return; } @@ -735,7 +736,7 @@ static VOID VCAPITYPE remdesk_virtual_channel_init_event(LPVOID pInitHandle, UIN if (!remdesk) { - fprintf(stderr, "remdesk_virtual_channel_init_event: error no match\n"); + DEBUG_WARN( "remdesk_virtual_channel_init_event: error no match\n"); return; } diff --git a/channels/smartcard/client/smartcard_main.c b/channels/smartcard/client/smartcard_main.c index e60926ab6..4d18979b9 100644 --- a/channels/smartcard/client/smartcard_main.c +++ b/channels/smartcard/client/smartcard_main.c @@ -372,7 +372,7 @@ void smartcard_process_irp(SMARTCARD_DEVICE* smartcard, IRP* irp) } else { - fprintf(stderr, "Unexpected SmartCard IRP: MajorFunction 0x%08X MinorFunction: 0x%08X", + DEBUG_WARN( "Unexpected SmartCard IRP: MajorFunction 0x%08X MinorFunction: 0x%08X", irp->MajorFunction, irp->MinorFunction); irp->IoStatus = STATUS_NOT_SUPPORTED; diff --git a/channels/smartcard/client/smartcard_operations.c b/channels/smartcard/client/smartcard_operations.c index 0e9fad24e..59155c703 100644 --- a/channels/smartcard/client/smartcard_operations.c +++ b/channels/smartcard/client/smartcard_operations.c @@ -1142,7 +1142,7 @@ UINT32 smartcard_irp_device_control_decode(SMARTCARD_DEVICE* smartcard, SMARTCAR smartcard_get_ioctl_string(ioControlCode, TRUE), ioControlCode, irp->FileId, irp->CompletionId); #if 0 - printf("%s (0x%08X) FileId: %d CompletionId: %d\n", + DEBUG_MSG("%s (0x%08X) FileId: %d CompletionId: %d\n", smartcard_get_ioctl_string(ioControlCode, TRUE), ioControlCode, irp->FileId, irp->CompletionId); #endif diff --git a/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c b/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c index e2c9da2c5..df0421926 100644 --- a/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c +++ b/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c @@ -27,10 +27,12 @@ #include +#include #include #include #include +#include #include "tsmf_constants.h" #include "tsmf_decoder.h" @@ -504,7 +506,7 @@ ITSMFDecoder *freerdp_tsmf_client_decoder_subsystem_entry(void) avcodec_register_all(); initialized = TRUE; } - fprintf(stderr, "TSMFDecoderEntry FFMPEG\n"); + DEBUG_WARN( "TSMFDecoderEntry FFMPEG\n"); decoder = (TSMFFFmpegDecoder *) malloc(sizeof(TSMFFFmpegDecoder)); ZeroMemory(decoder, sizeof(TSMFFFmpegDecoder)); decoder->iface.SetFormat = tsmf_ffmpeg_set_format; diff --git a/channels/tsmf/client/tsmf_codec.c b/channels/tsmf/client/tsmf_codec.c index 5fac84991..65beff7c3 100644 --- a/channels/tsmf/client/tsmf_codec.c +++ b/channels/tsmf/client/tsmf_codec.c @@ -264,21 +264,21 @@ static void tsmf_print_guid(const BYTE *guid) #ifdef WITH_DEBUG_TSMF int i; for(i = 3; i >= 0; i--) - fprintf(stderr, "%02X", guid[i]); - fprintf(stderr, "-"); + DEBUG_WARN( "%02X", guid[i]); + DEBUG_WARN( "-"); for(i = 5; i >= 4; i--) - fprintf(stderr, "%02X", guid[i]); - fprintf(stderr, "-"); + DEBUG_WARN( "%02X", guid[i]); + DEBUG_WARN( "-"); for(i = 7; i >= 6; i--) - fprintf(stderr, "%02X", guid[i]); - fprintf(stderr, "-"); + DEBUG_WARN( "%02X", guid[i]); + DEBUG_WARN( "-"); for(i = 8; i < 16; i++) { - fprintf(stderr, "%02X", guid[i]); + DEBUG_WARN( "%02X", guid[i]); if(i == 9) - fprintf(stderr, "-"); + DEBUG_WARN( "-"); } - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); #endif } diff --git a/channels/urbdrc/client/data_transfer.c b/channels/urbdrc/client/data_transfer.c index f0aa961d1..2e6918035 100644 --- a/channels/urbdrc/client/data_transfer.c +++ b/channels/urbdrc/client/data_transfer.c @@ -237,7 +237,7 @@ static int urbdrc_process_io_control(URBDRC_CHANNEL_CALLBACK* callback, BYTE* da { case IOCTL_INTERNAL_USB_SUBMIT_URB: /** 0x00220003 */ LLOGLN(urbdrc_debug, ("ioctl: IOCTL_INTERNAL_USB_SUBMIT_URB")); - fprintf(stderr, " Function IOCTL_INTERNAL_USB_SUBMIT_URB: Unchecked\n"); + DEBUG_WARN( " Function IOCTL_INTERNAL_USB_SUBMIT_URB: Unchecked\n"); break; case IOCTL_INTERNAL_USB_RESET_PORT: /** 0x00220007 */ @@ -269,12 +269,12 @@ static int urbdrc_process_io_control(URBDRC_CHANNEL_CALLBACK* callback, BYTE* da case IOCTL_INTERNAL_USB_CYCLE_PORT: /** 0x0022001F */ LLOGLN(urbdrc_debug, ("ioctl: IOCTL_INTERNAL_USB_CYCLE_PORT")); - fprintf(stderr, " Function IOCTL_INTERNAL_USB_CYCLE_PORT: Unchecked\n"); + DEBUG_WARN( " Function IOCTL_INTERNAL_USB_CYCLE_PORT: Unchecked\n"); break; case IOCTL_INTERNAL_USB_SUBMIT_IDLE_NOTIFICATION: /** 0x00220027 */ LLOGLN(urbdrc_debug, ("ioctl: IOCTL_INTERNAL_USB_SUBMIT_IDLE_NOTIFICATION")); - fprintf(stderr, " Function IOCTL_INTERNAL_USB_SUBMIT_IDLE_NOTIFICATION: Unchecked\n"); + DEBUG_WARN( " Function IOCTL_INTERNAL_USB_SUBMIT_IDLE_NOTIFICATION: Unchecked\n"); break; default: @@ -448,7 +448,7 @@ static int urb_select_configuration(URBDRC_CHANNEL_CALLBACK* callback, BYTE* dat if (transferDir == 0) { - fprintf(stderr, "urb_select_configuration: not support transfer out\n"); + DEBUG_WARN( "urb_select_configuration: not support transfer out\n"); return -1; } @@ -540,7 +540,7 @@ static int urb_select_interface(URBDRC_CHANNEL_CALLBACK* callback, BYTE* data, U if (transferDir == 0) { - fprintf(stderr, "urb_select_interface: not support transfer out\n"); + DEBUG_WARN( "urb_select_interface: not support transfer out\n"); return -1; } @@ -1297,7 +1297,7 @@ static int urb_os_feature_descriptor_request(URBDRC_CHANNEL_CALLBACK * callback, switch (transferDir) { case USBD_TRANSFER_DIRECTION_OUT: - fprintf(stderr, "Function urb_os_feature_descriptor_request: OUT Unchecked\n"); + DEBUG_WARN( "Function urb_os_feature_descriptor_request: OUT Unchecked\n"); memcpy(buffer, data + offset, OutputBufferSize); break; case USBD_TRANSFER_DIRECTION_IN: @@ -1700,7 +1700,7 @@ static int urb_control_feature_request(URBDRC_CHANNEL_CALLBACK * callback, BYTE switch (transferDir) { case USBD_TRANSFER_DIRECTION_OUT: - fprintf(stderr, "Function urb_control_feature_request: OUT Unchecked\n"); + DEBUG_WARN( "Function urb_control_feature_request: OUT Unchecked\n"); memcpy(buffer, data + offset, OutputBufferSize); bmRequestType |= 0x00; break; @@ -1718,7 +1718,7 @@ static int urb_control_feature_request(URBDRC_CHANNEL_CALLBACK * callback, BYTE bmRequest = 0x01; /* REQUEST_CLEAR_FEATURE */ break; default: - fprintf(stderr, "urb_control_feature_request: Error Command %x\n", command); + DEBUG_WARN( "urb_control_feature_request: Error Command %x\n", command); zfree(out_data); return -1; } diff --git a/channels/urbdrc/client/libusb/libusb_udevice.c b/channels/urbdrc/client/libusb/libusb_udevice.c index 82775fffb..3687e238a 100644 --- a/channels/urbdrc/client/libusb/libusb_udevice.c +++ b/channels/urbdrc/client/libusb/libusb_udevice.c @@ -201,7 +201,7 @@ static void func_iso_callback(struct libusb_transfer *transfer) } else { - //fprintf(stderr, "actual length %d \n", act_len); + //DEBUG_WARN( "actual length %d \n", act_len); //exit(EXIT_FAILURE); } } @@ -362,7 +362,7 @@ static int func_config_release_all_interface(LIBUSB_DEVICE_HANDLE* libusb_handle if (ret < 0) { - fprintf(stderr, "config_release_all_interface: error num %d\n", ret); + DEBUG_WARN( "config_release_all_interface: error num %d\n", ret); return -1; } } @@ -380,7 +380,7 @@ static int func_claim_all_interface(LIBUSB_DEVICE_HANDLE* libusb_handle, int Num if (ret < 0) { - fprintf(stderr, "claim_all_interface: error num %d\n", ret); + DEBUG_WARN( "claim_all_interface: error num %d\n", ret); return -1; } } @@ -394,28 +394,28 @@ static void* print_transfer_status(enum libusb_transfer_status status) switch (status) { case LIBUSB_TRANSFER_COMPLETED: - //fprintf(stderr, "Transfer Status: LIBUSB_TRANSFER_COMPLETED\n"); + //DEBUG_WARN( "Transfer Status: LIBUSB_TRANSFER_COMPLETED\n"); break; case LIBUSB_TRANSFER_ERROR: - fprintf(stderr, "Transfer Status: LIBUSB_TRANSFER_ERROR\n"); + DEBUG_WARN( "Transfer Status: LIBUSB_TRANSFER_ERROR\n"); break; case LIBUSB_TRANSFER_TIMED_OUT: - fprintf(stderr, "Transfer Status: LIBUSB_TRANSFER_TIMED_OUT\n"); + DEBUG_WARN( "Transfer Status: LIBUSB_TRANSFER_TIMED_OUT\n"); break; case LIBUSB_TRANSFER_CANCELLED: - fprintf(stderr, "Transfer Status: LIBUSB_TRANSFER_CANCELLED\n"); + DEBUG_WARN( "Transfer Status: LIBUSB_TRANSFER_CANCELLED\n"); break; case LIBUSB_TRANSFER_STALL: - fprintf(stderr, "Transfer Status: LIBUSB_TRANSFER_STALL\n"); + DEBUG_WARN( "Transfer Status: LIBUSB_TRANSFER_STALL\n"); break; case LIBUSB_TRANSFER_NO_DEVICE: - fprintf(stderr, "Transfer Status: LIBUSB_TRANSFER_NO_DEVICE\n"); + DEBUG_WARN( "Transfer Status: LIBUSB_TRANSFER_NO_DEVICE\n"); break; case LIBUSB_TRANSFER_OVERFLOW: - fprintf(stderr, "Transfer Status: LIBUSB_TRANSFER_OVERFLOW\n"); + DEBUG_WARN( "Transfer Status: LIBUSB_TRANSFER_OVERFLOW\n"); break; default: - fprintf(stderr, "Transfer Status: Get unknow error num %d (0x%x)\n", + DEBUG_WARN( "Transfer Status: Get unknow error num %d (0x%x)\n", status, status); } return 0; @@ -426,28 +426,28 @@ static void print_status(enum libusb_transfer_status status) switch (status) { case LIBUSB_TRANSFER_COMPLETED: - fprintf(stderr, "Transfer status: LIBUSB_TRANSFER_COMPLETED\n"); + DEBUG_WARN( "Transfer status: LIBUSB_TRANSFER_COMPLETED\n"); break; case LIBUSB_TRANSFER_ERROR: - fprintf(stderr, "Transfer status: LIBUSB_TRANSFER_ERROR\n"); + DEBUG_WARN( "Transfer status: LIBUSB_TRANSFER_ERROR\n"); break; case LIBUSB_TRANSFER_TIMED_OUT: - fprintf(stderr, "Transfer status: LIBUSB_TRANSFER_TIMED_OUT\n"); + DEBUG_WARN( "Transfer status: LIBUSB_TRANSFER_TIMED_OUT\n"); break; case LIBUSB_TRANSFER_CANCELLED: - fprintf(stderr, "Transfer status: LIBUSB_TRANSFER_CANCELLED\n"); + DEBUG_WARN( "Transfer status: LIBUSB_TRANSFER_CANCELLED\n"); break; case LIBUSB_TRANSFER_STALL: - fprintf(stderr, "Transfer status: LIBUSB_TRANSFER_STALL\n"); + DEBUG_WARN( "Transfer status: LIBUSB_TRANSFER_STALL\n"); break; case LIBUSB_TRANSFER_NO_DEVICE: - fprintf(stderr, "Transfer status: LIBUSB_TRANSFER_NO_DEVICE\n"); + DEBUG_WARN( "Transfer status: LIBUSB_TRANSFER_NO_DEVICE\n"); break; case LIBUSB_TRANSFER_OVERFLOW: - fprintf(stderr, "Transfer status: LIBUSB_TRANSFER_OVERFLOW\n"); + DEBUG_WARN( "Transfer status: LIBUSB_TRANSFER_OVERFLOW\n"); break; default: - fprintf(stderr, "Transfer status: unknow status %d(0x%x)\n", status, status); + DEBUG_WARN( "Transfer status: unknow status %d(0x%x)\n", status, status); break; } } @@ -484,7 +484,7 @@ static LIBUSB_DEVICE_DESCRIPTOR* udev_new_descript(LIBUSB_DEVICE* libusb_dev) if (ret < 0) { - fprintf(stderr, "libusb_get_device_descriptor: ERROR!!\n"); + DEBUG_WARN( "libusb_get_device_descriptor: ERROR!!\n"); free(descriptor); return NULL; } @@ -654,7 +654,7 @@ static int libusb_udev_select_interface(IUDEVICE* idev, BYTE InterfaceNumber, BY if (error < 0) { - fprintf(stderr, "%s: Set interface altsetting get error num %d\n", + DEBUG_WARN( "%s: Set interface altsetting get error num %d\n", __func__, error); } } @@ -681,7 +681,7 @@ static MSUSB_CONFIG_DESCRIPTOR* libusb_udev_complete_msconfig_setup(IUDEVICE* id LibusbConfig = pdev->LibusbConfig; if (LibusbConfig->bNumInterfaces != MsConfig->NumInterfaces) { - fprintf(stderr, "Select Configuration: Libusb NumberInterfaces(%d) is different " + DEBUG_WARN( "Select Configuration: Libusb NumberInterfaces(%d) is different " "with MsConfig NumberInterfaces(%d)\n", LibusbConfig->bNumInterfaces, MsConfig->NumInterfaces); } @@ -827,7 +827,7 @@ static int libusb_udev_select_configuration(IUDEVICE* idev, UINT32 bConfiguratio ret = libusb_set_configuration(libusb_handle, bConfigurationValue); if (ret < 0){ - fprintf(stderr, "libusb_set_configuration: ERROR number %d!!\n", ret); + DEBUG_WARN( "libusb_set_configuration: ERROR number %d!!\n", ret); func_claim_all_interface(libusb_handle, (*LibusbConfig)->bNumInterfaces); return -1; } @@ -835,7 +835,7 @@ static int libusb_udev_select_configuration(IUDEVICE* idev, UINT32 bConfiguratio { ret = libusb_get_active_config_descriptor (libusb_dev, LibusbConfig); if (ret < 0){ - fprintf(stderr, "libusb_get_config_descriptor_by_value: ERROR number %d!!\n", ret); + DEBUG_WARN( "libusb_get_config_descriptor_by_value: ERROR number %d!!\n", ret); func_claim_all_interface(libusb_handle, (*LibusbConfig)->bNumInterfaces); return -1; } @@ -885,7 +885,7 @@ static int libusb_udev_control_pipe_request(IUDEVICE* idev, UINT32 RequestId, *UsbdStatus = 0; /* if(pdev->request_queue->unregister_request(pdev->request_queue, RequestId)) - fprintf(stderr, "request_queue_unregister_request: not fount request 0x%x\n", RequestId); + DEBUG_WARN( "request_queue_unregister_request: not fount request 0x%x\n", RequestId); */ return error; } @@ -980,12 +980,12 @@ static int libusb_udev_os_feature_descriptor_request(IUDEVICE* idev, UINT32 Requ ms_string_desc, 0x12, Timeout); - //fprintf(stderr, "Get ms string: result number %d", error); + //DEBUG_WARN( "Get ms string: result number %d", error); if (error > 0) { BYTE bMS_Vendorcode; data_read_BYTE(ms_string_desc + 16, bMS_Vendorcode); - //fprintf(stderr, "bMS_Vendorcode:0x%x", bMS_Vendorcode); + //DEBUG_WARN( "bMS_Vendorcode:0x%x", bMS_Vendorcode); /** get os descriptor */ error = libusb_control_transfer(pdev->libusb_handle, LIBUSB_ENDPOINT_IN |LIBUSB_REQUEST_TYPE_VENDOR | Recipient, @@ -1004,7 +1004,7 @@ static int libusb_udev_os_feature_descriptor_request(IUDEVICE* idev, UINT32 Requ *UsbdStatus = USBD_STATUS_SUCCESS; /* if(pdev->request_queue->unregister_request(pdev->request_queue, RequestId)) - fprintf(stderr, "request_queue_unregister_request: not fount request 0x%x\n", RequestId); + DEBUG_WARN( "request_queue_unregister_request: not fount request 0x%x\n", RequestId); */ return error; } @@ -1263,7 +1263,7 @@ static int libusb_udev_isoch_transfer(IUDEVICE* idev, UINT32 RequestId, UINT32 E if (iso_transfer == NULL) { - fprintf(stderr, "Error: libusb_alloc_transfer.\n"); + DEBUG_WARN( "Error: libusb_alloc_transfer.\n"); status = -1; } @@ -1368,7 +1368,7 @@ static int libusb_udev_bulk_or_interrupt_transfer(IUDEVICE* idev, UINT32 Request if (!ep_desc) { - fprintf(stderr, "func_get_ep_desc: endpoint 0x%x is not found!!\n", EndpointAddress); + DEBUG_WARN( "func_get_ep_desc: endpoint 0x%x is not found!!\n", EndpointAddress); return -1; } transfer_type = (ep_desc->bmAttributes) & 0x3; @@ -1494,7 +1494,7 @@ static int libusb_udev_bulk_or_interrupt_transfer(IUDEVICE* idev, UINT32 Request if (request) { if(pdev->request_queue->unregister_request(pdev->request_queue, RequestId)) - fprintf(stderr, "request_queue_unregister_request: not fount request 0x%x\n", RequestId); + DEBUG_WARN( "request_queue_unregister_request: not fount request 0x%x\n", RequestId); } libusb_free_transfer(transfer); @@ -1704,7 +1704,7 @@ static IUDEVICE* udev_init(UDEVICE* pdev, UINT16 bus_number, UINT16 dev_number) if (status < 0) { - fprintf(stderr, "USB init: Error to get HUB handle!!\n"); + DEBUG_WARN( "USB init: Error to get HUB handle!!\n"); pdev->hub_handle = NULL; } @@ -1712,7 +1712,7 @@ static IUDEVICE* udev_init(UDEVICE* pdev, UINT16 bus_number, UINT16 dev_number) if (!pdev->devDescriptor) { - fprintf(stderr, "USB init: Error to get device descriptor!!\n"); + DEBUG_WARN( "USB init: Error to get device descriptor!!\n"); zfree(pdev); return NULL; } @@ -1723,7 +1723,7 @@ static IUDEVICE* udev_init(UDEVICE* pdev, UINT16 bus_number, UINT16 dev_number) if (status < 0) { - fprintf(stderr, "libusb_get_descriptor: ERROR!!ret:%d\n", status); + DEBUG_WARN( "libusb_get_descriptor: ERROR!!ret:%d\n", status); zfree(pdev); return NULL; } @@ -1752,7 +1752,7 @@ static IUDEVICE* udev_init(UDEVICE* pdev, UINT16 bus_number, UINT16 dev_number) case CLASS_CONTENT_SECURITY: //case CLASS_WIRELESS_CONTROLLER: //case CLASS_ELSE_DEVICE: - fprintf(stderr, " Device is not supported!!\n"); + DEBUG_WARN( " Device is not supported!!\n"); zfree(pdev); return NULL; default: @@ -1818,7 +1818,7 @@ int udev_new_by_id(UINT16 idVendor, UINT16 idProduct, IUDEVICE*** devArray) ssize_t total_device; int i, status, num = 0; - fprintf(stderr, "VID: 0x%04X PID: 0x%04X\n", idVendor, idProduct); + DEBUG_WARN( "VID: 0x%04X PID: 0x%04X\n", idVendor, idProduct); array = (UDEVICE**) malloc(16 * sizeof(UDEVICE*)); @@ -1839,7 +1839,7 @@ int udev_new_by_id(UINT16 idVendor, UINT16 idProduct, IUDEVICE*** devArray) if (status < 0) { - fprintf(stderr, "libusb_open: (by id) error: 0x%08X (%d)\n", status, status); + DEBUG_WARN( "libusb_open: (by id) error: 0x%08X (%d)\n", status, status); zfree(descriptor); zfree(array[num]); continue; @@ -1876,7 +1876,7 @@ IUDEVICE* udev_new_by_addr(int bus_number, int dev_number) if (pDev->libusb_dev == NULL) { - fprintf(stderr, "libusb_device_new: ERROR!!\n"); + DEBUG_WARN( "libusb_device_new: ERROR!!\n"); zfree(pDev); return NULL; } @@ -1885,7 +1885,7 @@ IUDEVICE* udev_new_by_addr(int bus_number, int dev_number) if (status < 0) { - fprintf(stderr, "libusb_open: (by addr) ERROR!!\n"); + DEBUG_WARN( "libusb_open: (by addr) ERROR!!\n"); zfree(pDev); return NULL; } diff --git a/channels/urbdrc/client/libusb/libusb_udevman.c b/channels/urbdrc/client/libusb/libusb_udevman.c index ebf5e4b5a..7635d039b 100644 --- a/channels/urbdrc/client/libusb/libusb_udevman.c +++ b/channels/urbdrc/client/libusb/libusb_udevman.c @@ -206,7 +206,7 @@ static int udevman_register_udevice(IUDEVMAN* idevman, int bus_number, int dev_n } else { - fprintf(stderr, "udevman_register_udevice: function error!!"); + DEBUG_WARN( "udevman_register_udevice: function error!!"); return 0; } diff --git a/channels/urbdrc/client/libusb/request_queue.c b/channels/urbdrc/client/libusb/request_queue.c index e5ebfef71..06ef4045a 100644 --- a/channels/urbdrc/client/libusb/request_queue.c +++ b/channels/urbdrc/client/libusb/request_queue.c @@ -100,7 +100,7 @@ TRANSFER_REQUEST* request_queue_get_request_by_endpoint(REQUEST_QUEUE* queue, BY } } pthread_mutex_unlock(&queue->request_loading); - fprintf(stderr, "request_queue_get_request_by_id: ERROR!!\n"); + DEBUG_WARN( "request_queue_get_request_by_id: ERROR!!\n"); return NULL; } diff --git a/channels/urbdrc/client/searchman.c b/channels/urbdrc/client/searchman.c index 18fc5b73e..04b9fe05b 100644 --- a/channels/urbdrc/client/searchman.c +++ b/channels/urbdrc/client/searchman.c @@ -156,16 +156,16 @@ static void searchman_list_show(USB_SEARCHMAN* self) int num = 0; USB_SEARCHDEV* usb; - fprintf(stderr, "=========== Usb Search List ========= \n"); + DEBUG_WARN( "=========== Usb Search List ========= \n"); self->rewind(self); while (self->has_next(self)) { usb = self->get_next(self); - fprintf(stderr, " USB %d: \n", num++); - fprintf(stderr, " idVendor: 0x%04X \n", usb->idVendor); - fprintf(stderr, " idProduct: 0x%04X \n", usb->idProduct); + DEBUG_WARN( " USB %d: \n", num++); + DEBUG_WARN( " idVendor: 0x%04X \n", usb->idVendor); + DEBUG_WARN( " idProduct: 0x%04X \n", usb->idProduct); } - fprintf(stderr, "================= END =============== \n"); + DEBUG_WARN( "================= END =============== \n"); } void searchman_free(USB_SEARCHMAN* self) @@ -202,7 +202,7 @@ USB_SEARCHMAN* searchman_new(void * urbdrc, UINT32 UsbDevice) if (ret != 0) { - fprintf(stderr, "searchman mutex initialization: searchman->mutex failed"); + DEBUG_WARN( "searchman mutex initialization: searchman->mutex failed"); exit(EXIT_FAILURE); } diff --git a/channels/urbdrc/client/urbdrc_main.c b/channels/urbdrc/client/urbdrc_main.c index e010bba10..a4b2a6f0a 100644 --- a/channels/urbdrc/client/urbdrc_main.c +++ b/channels/urbdrc/client/urbdrc_main.c @@ -468,7 +468,7 @@ static void* urbdrc_search_usb_device(void* arg) if (!udev) { - fprintf(stderr, "Can't create udev\n"); + DEBUG_WARN( "Can't create udev\n"); return 0; } @@ -652,7 +652,7 @@ static void* urbdrc_search_usb_device(void* arg) } else { - fprintf(stderr, "No Device from receive_device(). An error occured.\n"); + DEBUG_WARN( "No Device from receive_device(). An error occured.\n"); } } } @@ -835,7 +835,7 @@ static int urbdrc_on_data_received(IWTSVirtualChannelCallback* pChannelCallback, if (transfer_data == NULL) { - fprintf(stderr, "transfer_data is NULL!!"); + DEBUG_WARN( "transfer_data is NULL!!"); return 0; } From 219a760bad43c308890a8789e9efa77c39059840 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Thu, 7 Aug 2014 17:31:42 +0200 Subject: [PATCH 063/170] Fixed logging, now using log functions. --- channels/urbdrc/client/urbdrc_types.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/channels/urbdrc/client/urbdrc_types.h b/channels/urbdrc/client/urbdrc_types.h index 3b83cee02..098c921ce 100644 --- a/channels/urbdrc/client/urbdrc_types.h +++ b/channels/urbdrc/client/urbdrc_types.h @@ -317,9 +317,9 @@ enum device_descriptor_table #define LOG_LEVEL 1 #define LLOG(_level, _args) \ - do { if (_level < LOG_LEVEL) { printf _args ; } } while (0) + do { if (_level < LOG_LEVEL) { DEBUG_MSG(_args); } } while (0) #define LLOGLN(_level, _args) \ - do { if (_level < LOG_LEVEL) { printf _args ; printf("\n"); } } while (0) + do { if (_level < LOG_LEVEL) { DEBUG_MSG(_args); } } while (0) #define dummy_wait_obj(void) do{ sleep(5); } while(0) #define dummy_wait_s_obj(_s) do{ sleep(_s); } while(0) From 1a37435a268fa6eed18e67ffdeb398c6977f0a62 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Thu, 7 Aug 2014 17:47:59 +0200 Subject: [PATCH 064/170] Added redirection of ConsoleAppender to logcat, if used on android. Using custom default format for log messages on android. --- winpr/libwinpr/utils/wlog/ConsoleAppender.c | 40 ++++++++++++++++++++- winpr/libwinpr/utils/wlog/Layout.c | 6 ++++ 2 files changed, 45 insertions(+), 1 deletion(-) diff --git a/winpr/libwinpr/utils/wlog/ConsoleAppender.c b/winpr/libwinpr/utils/wlog/ConsoleAppender.c index b7f4a985e..bc7c1f23d 100644 --- a/winpr/libwinpr/utils/wlog/ConsoleAppender.c +++ b/winpr/libwinpr/utils/wlog/ConsoleAppender.c @@ -30,6 +30,10 @@ #include "wlog/ConsoleAppender.h" +#ifdef ANDROID +#include +#endif + /** * Console Appender */ @@ -84,11 +88,45 @@ int WLog_ConsoleAppender_WriteMessage(wLog* log, wLogConsoleAppender* appender, return 1; } #endif +#ifdef ANDROID + (void)fp; + android_LogPriority level; + switch(log->Level) + { + case WLOG_TRACE: + level = ANDROID_LOG_VERBOSE; + break; + case WLOG_DEBUG: + level = ANDROID_LOG_DEBUG; + break; + case WLOG_INFO: + level = ANDROID_LOG_INFO; + break; + case WLOG_WARN: + level = ANDROID_LOG_WARN; + break; + case WLOG_ERROR: + level = ANDROID_LOG_ERROR; + break; + case WLOG_FATAL: + level = ANDROID_LOG_FATAL; + break; + case WLOG_OFF: + level = ANDROID_LOG_SILENT; + break; + default: + level = ANDROID_LOG_FATAL; + break; + } + if (level != ANDROID_LOG_SILENT) + __android_log_print(level, "winpr", "%s%s", message->PrefixString, message->TextString); + +#else fp = (appender->outputStream == WLOG_CONSOLE_STDERR) ? stderr : stdout; fprintf(fp, "%s%s\n", message->PrefixString, message->TextString); - +#endif return 1; } diff --git a/winpr/libwinpr/utils/wlog/Layout.c b/winpr/libwinpr/utils/wlog/Layout.c index fc1f6a1d1..96365fe3e 100644 --- a/winpr/libwinpr/utils/wlog/Layout.c +++ b/winpr/libwinpr/utils/wlog/Layout.c @@ -356,7 +356,13 @@ wLogLayout* WLog_Layout_New(wLog* log) if (env) layout->FormatString = env; else + { +#ifdef ANDROID + layout->FormatString = _strdup("[%mn][pid=%pid:tid=%tid]"); +#else layout->FormatString = _strdup("[%hr:%mi:%se:%ml] [%pid:%tid] [%lv][%mn] - "); +#endif + } } return layout; From a27706d1297d9cdb4023803cdd33ac187509b956 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Thu, 7 Aug 2014 18:25:43 +0200 Subject: [PATCH 065/170] Fixed missing includes. --- libfreerdp/utils/debug.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libfreerdp/utils/debug.c b/libfreerdp/utils/debug.c index 5aa31f140..c72caab4a 100644 --- a/libfreerdp/utils/debug.c +++ b/libfreerdp/utils/debug.c @@ -18,6 +18,7 @@ */ #include +#include #include #include From fdab87cba084af83232c9a5d9b2ca2e8569e426a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 7 Aug 2014 12:36:45 -0400 Subject: [PATCH 066/170] shadow: improve invalid region detection --- server/shadow/X11/x11_shadow.c | 133 +++++---------------------------- server/shadow/shadow_capture.c | 19 ++++- server/shadow/shadow_client.c | 22 +++--- 3 files changed, 46 insertions(+), 128 deletions(-) diff --git a/server/shadow/X11/x11_shadow.c b/server/shadow/X11/x11_shadow.c index 430c5b482..a18ab8b7c 100644 --- a/server/shadow/X11/x11_shadow.c +++ b/server/shadow/X11/x11_shadow.c @@ -185,85 +185,6 @@ int x11_shadow_invalidate_region(x11ShadowSubsystem* subsystem, int x, int y, in return 1; } -int x11_shadow_surface_copy(x11ShadowSubsystem* subsystem) -{ - int x, y; - int width; - int height; - XImage* image; - rdpShadowScreen* screen; - rdpShadowServer* server; - rdpShadowSurface* surface; - RECTANGLE_16 surfaceRect; - const RECTANGLE_16* extents; - - server = subsystem->server; - surface = server->surface; - screen = server->screen; - - surfaceRect.left = surface->x; - surfaceRect.top = surface->y; - surfaceRect.right = surface->x + surface->width; - surfaceRect.bottom = surface->y + surface->height; - - region16_clear(&(surface->invalidRegion)); - region16_copy(&(surface->invalidRegion), &(subsystem->invalidRegion)); - region16_intersect_rect(&(surface->invalidRegion), &(surface->invalidRegion), &surfaceRect); - - if (region16_is_empty(&(surface->invalidRegion))) - return 1; - - extents = region16_extents(&(surface->invalidRegion)); - - x = extents->left; - y = extents->top; - width = extents->right - extents->left; - height = extents->bottom - extents->top; - - XLockDisplay(subsystem->display); - - if (subsystem->use_xshm) - { - XCopyArea(subsystem->display, subsystem->root_window, subsystem->fb_pixmap, - subsystem->xshm_gc, x, y, width, height, x, y); - - XSync(subsystem->display, False); - - image = subsystem->fb_image; - - EnterCriticalSection(&(surface->lock)); - - freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, - surface->scanline, x - surface->x, y - surface->y, width, height, - (BYTE*) image->data, PIXEL_FORMAT_XRGB32, - image->bytes_per_line, x, y); - - LeaveCriticalSection(&(surface->lock)); - } - else - { - image = XGetImage(subsystem->display, subsystem->root_window, - x, y, width, height, AllPlanes, ZPixmap); - - EnterCriticalSection(&(surface->lock)); - - freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, - surface->scanline, x - surface->x, y - surface->y, width, height, - (BYTE*) image->data, PIXEL_FORMAT_XRGB32, - image->bytes_per_line, 0, 0); - - LeaveCriticalSection(&(surface->lock)); - - XDestroyImage(image); - } - - x11_shadow_validate_region(subsystem, x, y, width, height); - - XUnlockDisplay(subsystem->display); - - return 1; -} - int x11_shadow_screen_grab(x11ShadowSubsystem* subsystem) { int status; @@ -290,7 +211,7 @@ int x11_shadow_screen_grab(x11ShadowSubsystem* subsystem) image = subsystem->fb_image; - EnterCriticalSection(&(surface->lock)); + EnterCriticalSection(&(screen->lock)); status = shadow_capture_compare(surface->data, surface->scanline, surface->width, surface->height, (BYTE*) image->data, image->bytes_per_line, &invalidRect); @@ -302,28 +223,27 @@ int x11_shadow_screen_grab(x11ShadowSubsystem* subsystem) width = invalidRect.right - invalidRect.left; height = invalidRect.bottom - invalidRect.top; - if (width > subsystem->width) - width = subsystem->width; - - if (height > subsystem->height) - height = subsystem->height; - freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, surface->scanline, x - surface->x, y - surface->y, width, height, (BYTE*) image->data, PIXEL_FORMAT_XRGB32, image->bytes_per_line, x, y); - x11_shadow_invalidate_region(subsystem, x, y, width, height); + region16_union_rect(&(subsystem->invalidRegion), &(subsystem->invalidRegion), &invalidRect); + + if (subsystem->SurfaceUpdate) + subsystem->SurfaceUpdate((rdpShadowSubsystem*) subsystem, &(subsystem->invalidRegion)); + + region16_clear(&(subsystem->invalidRegion)); } - LeaveCriticalSection(&(surface->lock)); + LeaveCriticalSection(&(screen->lock)); } else { image = XGetImage(subsystem->display, subsystem->root_window, 0, 0, subsystem->width, subsystem->height, AllPlanes, ZPixmap); - EnterCriticalSection(&(surface->lock)); + EnterCriticalSection(&(screen->lock)); status = shadow_capture_compare(surface->data, surface->scanline, surface->width, surface->height, (BYTE*) image->data, image->bytes_per_line, &invalidRect); @@ -335,21 +255,20 @@ int x11_shadow_screen_grab(x11ShadowSubsystem* subsystem) width = invalidRect.right - invalidRect.left; height = invalidRect.bottom - invalidRect.top; - if (width > subsystem->width) - width = subsystem->width; - - if (height > subsystem->height) - height = subsystem->height; - freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, - surface->scanline, x, y, width, height, + surface->scanline, x - surface->x, y - surface->y, width, height, (BYTE*) image->data, PIXEL_FORMAT_XRGB32, image->bytes_per_line, x, y); - x11_shadow_invalidate_region(subsystem, x, y, width, height); + region16_union_rect(&(subsystem->invalidRegion), &(subsystem->invalidRegion), &invalidRect); + + if (subsystem->SurfaceUpdate) + subsystem->SurfaceUpdate((rdpShadowSubsystem*) subsystem, &(subsystem->invalidRegion)); + + region16_clear(&(subsystem->invalidRegion)); } - LeaveCriticalSection(&(surface->lock)); + LeaveCriticalSection(&(screen->lock)); XDestroyImage(image); } @@ -380,13 +299,10 @@ void* x11_shadow_subsystem_thread(x11ShadowSubsystem* subsystem) events[nCount++] = StopEvent; events[nCount++] = subsystem->event; - fps = 16; + fps = 24; dwInterval = 1000 / fps; frameTime = GetTickCount64() + dwInterval; - //x11_shadow_invalidate_region(subsystem, 0, 0, subsystem->width, subsystem->height); - //x11_shadow_surface_copy(subsystem); - while (1) { dwTimeout = INFINITE; @@ -428,17 +344,6 @@ void* x11_shadow_subsystem_thread(x11ShadowSubsystem* subsystem) { x11_shadow_screen_grab(subsystem); - if (0) - { - x11_shadow_invalidate_region(subsystem, 0, 0, subsystem->width, subsystem->height); - x11_shadow_surface_copy(subsystem); - } - - if (subsystem->SurfaceUpdate) - subsystem->SurfaceUpdate((rdpShadowSubsystem*) subsystem, &(subsystem->invalidRegion)); - - region16_clear(&(subsystem->invalidRegion)); - dwInterval = 1000 / fps; frameTime += dwInterval; } @@ -866,8 +771,6 @@ x11ShadowSubsystem* x11_shadow_subsystem_new(rdpShadowServer* server) subsystem->Stop = (pfnShadowSubsystemStop) x11_shadow_subsystem_stop; subsystem->Free = (pfnShadowSubsystemFree) x11_shadow_subsystem_free; - subsystem->SurfaceCopy = (pfnShadowSurfaceCopy) x11_shadow_surface_copy; - subsystem->SynchronizeEvent = (pfnShadowSynchronizeEvent) x11_shadow_input_synchronize_event; subsystem->KeyboardEvent = (pfnShadowKeyboardEvent) x11_shadow_input_keyboard_event; subsystem->UnicodeKeyboardEvent = (pfnShadowUnicodeKeyboardEvent) x11_shadow_input_unicode_keyboard_event; diff --git a/server/shadow/shadow_capture.c b/server/shadow/shadow_capture.c index 5b8d0eac1..db73a1ff6 100644 --- a/server/shadow/shadow_capture.c +++ b/server/shadow/shadow_capture.c @@ -57,19 +57,26 @@ int shadow_capture_compare(BYTE* pData1, int nStep1, int nWidth, int nHeight, BY for (ty = 0; ty < nrow; ty++) { - th = ((ty + 1) == nrow) ? nHeight % 16 : 16; + th = ((ty + 1) == nrow) ? (nHeight % 16) : 16; + + if (!th) + th = 16; for (tx = 0; tx < ncol; tx++) { equal = TRUE; - tw = ((tx + 1) == ncol) ? nWidth % 16 : 16; + + tw = ((tx + 1) == ncol) ? (nWidth % 16) : 16; + + if (!tw) + tw = 16; p1 = &pData1[(ty * 16 * nStep1) + (tx * 16 * 4)]; p2 = &pData2[(ty * 16 * nStep2) + (tx * 16 * 4)]; for (k = 0; k < th; k++) { - if (memcmp(p1, p2, tw) != 0) + if (memcmp(p1, p2, tw * 4) != 0) { equal = FALSE; break; @@ -113,6 +120,12 @@ int shadow_capture_compare(BYTE* pData1, int nStep1, int nWidth, int nHeight, BY rect->right = (r + 1) * 16; rect->bottom = (b + 1) * 16; + if (rect->right > nWidth) + rect->right = nWidth; + + if (rect->bottom > nHeight) + rect->bottom = nHeight; + if (0) { printf("\n"); diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index 3d80ec08f..e3f08a44e 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -103,6 +103,7 @@ BOOL shadow_client_capabilities(freerdp_peer* peer) BOOL shadow_client_post_connect(freerdp_peer* peer) { + int width, height; rdpSettings* settings; rdpShadowClient* client; rdpShadowSurface* lobby; @@ -124,7 +125,17 @@ BOOL shadow_client_post_connect(freerdp_peer* peer) shadow_client_channels_post_connect(client); - lobby = client->lobby = shadow_surface_new(client->server, 0, 0, settings->DesktopWidth, settings->DesktopHeight); + width = settings->DesktopWidth; + height = settings->DesktopHeight; + + invalidRect.left = 0; + invalidRect.top = 0; + invalidRect.right = width; + invalidRect.bottom = height; + + region16_union_rect(&(client->invalidRegion), &(client->invalidRegion), &invalidRect); + + lobby = client->lobby = shadow_surface_new(client->server, 0, 0, width, height); if (!client->lobby) return FALSE; @@ -132,11 +143,6 @@ BOOL shadow_client_post_connect(freerdp_peer* peer) freerdp_image_fill(lobby->data, PIXEL_FORMAT_XRGB32, lobby->scanline, 0, 0, lobby->width, lobby->height, 0x3BB9FF); - invalidRect.left = 0; - invalidRect.top = 0; - invalidRect.right = lobby->width; - invalidRect.bottom = lobby->height; - region16_union_rect(&(lobby->invalidRegion), &(lobby->invalidRegion), &invalidRect); return TRUE; @@ -694,11 +700,7 @@ void* shadow_client_thread(rdpShadowClient* client) { EnterCriticalSection(&(screen->lock)); - if (subsystem->SurfaceCopy) - subsystem->SurfaceCopy(subsystem); - shadow_client_send_surface_update(client); - region16_clear(&(screen->invalidRegion)); LeaveCriticalSection(&(screen->lock)); } From f00cb3d25cf02cd4bd46694a014eaad489b8705c Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Thu, 7 Aug 2014 19:05:22 +0200 Subject: [PATCH 067/170] Reverted previous replacements, not to be done for tests. --- libfreerdp/crypto/test/TestBase64.c | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/libfreerdp/crypto/test/TestBase64.c b/libfreerdp/crypto/test/TestBase64.c index e81ca68fc..a50b6b7b0 100644 --- a/libfreerdp/crypto/test/TestBase64.c +++ b/libfreerdp/crypto/test/TestBase64.c @@ -45,7 +45,7 @@ int TestBase64(int argc, char* argv[]) BYTE *decoded; testNb++; - DEBUG_WARN( "%d:encode base64...", testNb); + fprintf(stderr, "%d:encode base64...", testNb); for (i = 0; encodeTests[i].input; i++) { @@ -53,53 +53,53 @@ int TestBase64(int argc, char* argv[]) if (strcmp(encodeTests[i].output, encoded)) { - DEBUG_WARN( "ko, error for string %d\n", i); + fprintf(stderr, "ko, error for string %d\n", i); return -1; } free(encoded); } - DEBUG_WARN( "ok\n"); + fprintf(stderr, "ok\n"); testNb++; - DEBUG_WARN( "%d:decode base64...", testNb); + fprintf(stderr, "%d:decode base64...", testNb); for (i = 0; encodeTests[i].input; i++) { crypto_base64_decode(encodeTests[i].output, strlen(encodeTests[i].output), &decoded, &outLen); if (!decoded || (outLen != encodeTests[i].len) || memcmp(encodeTests[i].input, decoded, outLen)) { - DEBUG_WARN( "ko, error for string %d\n", i); + fprintf(stderr, "ko, error for string %d\n", i); return -1; } free(decoded); } - DEBUG_WARN( "ok\n"); + fprintf(stderr, "ok\n"); testNb++; - DEBUG_WARN( "%d:decode base64 errors...", testNb); + fprintf(stderr, "%d:decode base64 errors...", testNb); crypto_base64_decode("000", 3, &decoded, &outLen); if (decoded) { - DEBUG_WARN( "ko, badly padded string\n"); + fprintf(stderr, "ko, badly padded string\n"); return -1; } crypto_base64_decode("0=00", 4, &decoded, &outLen); if (decoded) { - DEBUG_WARN( "ko, = in a wrong place\n"); + fprintf(stderr, "ko, = in a wrong place\n"); return -1; } crypto_base64_decode("00=0", 4, &decoded, &outLen); if (decoded) { - DEBUG_WARN( "ko, = in a wrong place\n"); + fprintf(stderr, "ko, = in a wrong place\n"); return -1; } - DEBUG_WARN( "ok\n"); + fprintf(stderr, "ok\n"); return 0; From 158e1323de5bc55ac3459d5bc43b9c5bd7ab9380 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Thu, 7 Aug 2014 19:05:48 +0200 Subject: [PATCH 068/170] Fixed compiler warnings. --- channels/audin/client/pulse/audin_pulse.c | 2 +- channels/audin/server/audin.c | 2 +- channels/cliprdr/client/cliprdr_main.c | 14 +++++++------- channels/cliprdr/server/cliprdr_main.c | 1 + channels/rdpdr/server/rdpdr_main.c | 1 + channels/rdpsnd/server/rdpsnd_main.c | 2 ++ channels/urbdrc/client/urbdrc_types.h | 8 ++++---- 7 files changed, 17 insertions(+), 13 deletions(-) diff --git a/channels/audin/client/pulse/audin_pulse.c b/channels/audin/client/pulse/audin_pulse.c index 5dab7badb..b731c2246 100644 --- a/channels/audin/client/pulse/audin_pulse.c +++ b/channels/audin/client/pulse/audin_pulse.c @@ -297,7 +297,7 @@ static void audin_pulse_stream_request_callback(pa_stream* stream, size_t length */ if (pulse->buffer == NULL) { - /* DEBUG_WARN( "%s: ignoring input, pulse buffer not ready.\n", __func__); */ + /* fprintf(stderr, "%s: ignoring input, pulse buffer not ready.\n", __func__); */ return; } diff --git a/channels/audin/server/audin.c b/channels/audin/server/audin.c index a7d50c73a..31b3943f0 100644 --- a/channels/audin/server/audin.c +++ b/channels/audin/server/audin.c @@ -385,7 +385,7 @@ static void* audin_server_thread_func(void* arg) break; default: - DEBUG_WARN( "audin_server_thread_func: unknown MessageId %d\n", MessageId); + fprintf(stderr, "audin_server_thread_func: unknown MessageId %d\n", MessageId); break; } } diff --git a/channels/cliprdr/client/cliprdr_main.c b/channels/cliprdr/client/cliprdr_main.c index 8753d773a..7eeaad6a9 100644 --- a/channels/cliprdr/client/cliprdr_main.c +++ b/channels/cliprdr/client/cliprdr_main.c @@ -87,7 +87,7 @@ void cliprdr_packet_send(cliprdrPlugin* cliprdr, wStream* s) Stream_SetPosition(s, pos); #ifdef WITH_DEBUG_CLIPRDR - DEBUG_MSG("Cliprdr Sending (%d bytes)\n", dataLen + 8); + printf("Cliprdr Sending (%d bytes)\n", dataLen + 8); winpr_HexDump(Stream_Buffer(s), dataLen + 8); #endif @@ -101,18 +101,18 @@ static void cliprdr_process_connect(rdpSvcPlugin* plugin) void cliprdr_print_general_capability_flags(UINT32 flags) { - DEBUG_WARN( "generalFlags (0x%08X) {\n", flags); + fprintf(stderr, "generalFlags (0x%08X) {\n", flags); if (flags & CB_USE_LONG_FORMAT_NAMES) - DEBUG_WARN( "\tCB_USE_LONG_FORMAT_NAMES\n"); + fprintf(stderr, "\tCB_USE_LONG_FORMAT_NAMES\n"); if (flags & CB_STREAM_FILECLIP_ENABLED) - DEBUG_WARN( "\tCB_STREAM_FILECLIP_ENABLED\n"); + fprintf(stderr, "\tCB_STREAM_FILECLIP_ENABLED\n"); if (flags & CB_FILECLIP_NO_FILE_PATHS) - DEBUG_WARN( "\tCB_FILECLIP_NO_FILE_PATHS\n"); + fprintf(stderr, "\tCB_FILECLIP_NO_FILE_PATHS\n"); if (flags & CB_CAN_LOCK_CLIPDATA) - DEBUG_WARN( "\tCB_CAN_LOCK_CLIPDATA\n"); + fprintf(stderr, "\tCB_CAN_LOCK_CLIPDATA\n"); - DEBUG_WARN( "}\n"); + fprintf(stderr, "}\n"); } static void cliprdr_process_general_capability(cliprdrPlugin* cliprdr, wStream* s) diff --git a/channels/cliprdr/server/cliprdr_main.c b/channels/cliprdr/server/cliprdr_main.c index 20aefb180..41933d6dc 100644 --- a/channels/cliprdr/server/cliprdr_main.c +++ b/channels/cliprdr/server/cliprdr_main.c @@ -25,6 +25,7 @@ #include #include +#include #include "cliprdr_main.h" /** diff --git a/channels/rdpdr/server/rdpdr_main.c b/channels/rdpdr/server/rdpdr_main.c index d10188f67..112b6b33c 100644 --- a/channels/rdpdr/server/rdpdr_main.c +++ b/channels/rdpdr/server/rdpdr_main.c @@ -25,6 +25,7 @@ #include #include +#include #include "rdpdr_main.h" static UINT32 g_ClientId = 0; diff --git a/channels/rdpsnd/server/rdpsnd_main.c b/channels/rdpsnd/server/rdpsnd_main.c index 1d56bf1f9..af435008c 100644 --- a/channels/rdpsnd/server/rdpsnd_main.c +++ b/channels/rdpsnd/server/rdpsnd_main.c @@ -29,6 +29,8 @@ #include #include +#include + #include "rdpsnd_main.h" BOOL rdpsnd_server_send_formats(RdpsndServerContext* context, wStream* s) diff --git a/channels/urbdrc/client/urbdrc_types.h b/channels/urbdrc/client/urbdrc_types.h index 098c921ce..316e0b10b 100644 --- a/channels/urbdrc/client/urbdrc_types.h +++ b/channels/urbdrc/client/urbdrc_types.h @@ -316,10 +316,10 @@ enum device_descriptor_table #define MAX_URB_REQUSET_NUM 0x80 #define LOG_LEVEL 1 -#define LLOG(_level, _args) \ - do { if (_level < LOG_LEVEL) { DEBUG_MSG(_args); } } while (0) -#define LLOGLN(_level, _args) \ - do { if (_level < LOG_LEVEL) { DEBUG_MSG(_args); } } while (0) +#define LLOG(_level, args) \ + do { if (_level < LOG_LEVEL) { DEBUG_MSG args ; } } while (0) +#define LLOGLN(_level, args) \ + do { if (_level < LOG_LEVEL) { DEBUG_MSG args ; } } while (0) #define dummy_wait_obj(void) do{ sleep(5); } while(0) #define dummy_wait_s_obj(_s) do{ sleep(_s); } while(0) From adb750f7ca43671885c41e64609ccb21b8ab8ca0 Mon Sep 17 00:00:00 2001 From: Pavel Tsekov Date: Thu, 7 Aug 2014 20:33:30 +0300 Subject: [PATCH 069/170] Convert NSCodec compressed bitmaps to framebuffer format. * libfreerdp/gdi/gdi.c (gdi_surface_bits): Convert NSCodec compressed bitmaps to framebuffer format. --- libfreerdp/gdi/gdi.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libfreerdp/gdi/gdi.c b/libfreerdp/gdi/gdi.c index e40656417..f7cd4771d 100644 --- a/libfreerdp/gdi/gdi.c +++ b/libfreerdp/gdi/gdi.c @@ -855,7 +855,10 @@ void gdi_surface_bits(rdpContext* context, SURFACE_BITS_COMMAND* surface_bits_co gdi->image->bitmap->bitsPerPixel = surface_bits_command->bpp; gdi->image->bitmap->bytesPerPixel = gdi->image->bitmap->bitsPerPixel / 8; gdi->image->bitmap->data = (BYTE*) _aligned_realloc(gdi->image->bitmap->data, gdi->image->bitmap->width * gdi->image->bitmap->height * 4, 16); - freerdp_image_flip(nsc_context->BitmapData, gdi->image->bitmap->data, gdi->image->bitmap->width, gdi->image->bitmap->height, 32); + freerdp_image_convert(nsc_context->BitmapData, gdi->image->bitmap->data, + surface_bits_command->width, surface_bits_command->height, + surface_bits_command->bpp, gdi->dstBpp, gdi->clrconv); + freerdp_image_flip(gdi->image->bitmap->data, gdi->image->bitmap->data, gdi->image->bitmap->width, gdi->image->bitmap->height, 32); gdi_BitBlt(gdi->primary->hdc, surface_bits_command->destLeft, surface_bits_command->destTop, surface_bits_command->width, surface_bits_command->height, gdi->image->hdc, 0, 0, GDI_SRCCOPY); } else if (surface_bits_command->codecID == RDP_CODEC_ID_NONE) From 052173de5fcb9fa1845dc43a8db3c047ca9abff9 Mon Sep 17 00:00:00 2001 From: Pavel Tsekov Date: Thu, 7 Aug 2014 20:37:06 +0300 Subject: [PATCH 070/170] Do not assume 32bpp framebuffer when flipping NSCodec bitmaps. * libfreerdp/gdi/gdi.c (gdi_surface_bits): Do not assume 32bpp framebuffer when flipping NSCodec compressed bitmaps. --- libfreerdp/gdi/gdi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libfreerdp/gdi/gdi.c b/libfreerdp/gdi/gdi.c index f7cd4771d..e76012f0c 100644 --- a/libfreerdp/gdi/gdi.c +++ b/libfreerdp/gdi/gdi.c @@ -858,7 +858,7 @@ void gdi_surface_bits(rdpContext* context, SURFACE_BITS_COMMAND* surface_bits_co freerdp_image_convert(nsc_context->BitmapData, gdi->image->bitmap->data, surface_bits_command->width, surface_bits_command->height, surface_bits_command->bpp, gdi->dstBpp, gdi->clrconv); - freerdp_image_flip(gdi->image->bitmap->data, gdi->image->bitmap->data, gdi->image->bitmap->width, gdi->image->bitmap->height, 32); + freerdp_image_flip(gdi->image->bitmap->data, gdi->image->bitmap->data, gdi->image->bitmap->width, gdi->image->bitmap->height, gdi->dstBpp); gdi_BitBlt(gdi->primary->hdc, surface_bits_command->destLeft, surface_bits_command->destTop, surface_bits_command->width, surface_bits_command->height, gdi->image->hdc, 0, 0, GDI_SRCCOPY); } else if (surface_bits_command->codecID == RDP_CODEC_ID_NONE) From eecc8e2333bcf6f5c2409da53a7189d6626a5612 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Thu, 7 Aug 2014 21:38:11 +0200 Subject: [PATCH 071/170] Removed debug.c --- libfreerdp/utils/CMakeLists.txt | 1 - libfreerdp/utils/debug.c | 64 --------------------------------- 2 files changed, 65 deletions(-) delete mode 100644 libfreerdp/utils/debug.c diff --git a/libfreerdp/utils/CMakeLists.txt b/libfreerdp/utils/CMakeLists.txt index 56fbbb5a9..1db46f1a0 100644 --- a/libfreerdp/utils/CMakeLists.txt +++ b/libfreerdp/utils/CMakeLists.txt @@ -30,7 +30,6 @@ set(${MODULE_PREFIX}_SRCS stopwatch.c svc_plugin.c tcp.c - debug.c time.c uds.c) diff --git a/libfreerdp/utils/debug.c b/libfreerdp/utils/debug.c deleted file mode 100644 index c72caab4a..000000000 --- a/libfreerdp/utils/debug.c +++ /dev/null @@ -1,64 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * Debug Utils - * - * Copyright 2014 Armin Novak - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#include -#include -#include -#include - -#define FMT_MAX 1024 - -static wLog *sLog = NULL; - -static void debug_init(void) -{ - WLog_Init(); - sLog = WLog_Get("com.freerdp.common"); -} - -void debug_print(int level, const char *file, const char *fkt, int line, - const char *dbg_str, const char *fmt, ...) -{ - va_list ap; - size_t len = strnlen(dbg_str, FMT_MAX) + strnlen(fmt, FMT_MAX) + 10; - char *cfmt = alloca(len); - wLogMessage msg; - - if (!sLog) - debug_init(); - - if (cfmt) - { - snprintf(cfmt, len, "[%s]: %s", dbg_str, fmt); - - va_start(ap, fmt); - - msg.Type = WLOG_MESSAGE_TEXT; - msg.Level = level; - msg.FormatString = cfmt; - msg.LineNumber = line; - msg.FileName = file; - msg.FunctionName = fkt; - WLog_PrintMessageVA(sLog, &msg, ap); - va_end(ap); - } - else - WLog_Print(sLog, WLOG_FATAL, "failed to allocate %zd bytes on stack!", len); -} - From e6ed76977ad52cd7d9ebb6cdb50348ab8c6c037c Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Thu, 7 Aug 2014 21:51:52 +0200 Subject: [PATCH 072/170] DEBUG_PRINT now a define, resolves linking issues. Using log name as logcat tag now. Removed log name from default android log formatting. --- include/freerdp/utils/debug.h | 21 ++++++++++++++++----- winpr/libwinpr/utils/wlog/ConsoleAppender.c | 2 +- winpr/libwinpr/utils/wlog/Layout.c | 2 +- 3 files changed, 18 insertions(+), 7 deletions(-) diff --git a/include/freerdp/utils/debug.h b/include/freerdp/utils/debug.h index 50764c0a1..dde132dd4 100644 --- a/include/freerdp/utils/debug.h +++ b/include/freerdp/utils/debug.h @@ -22,15 +22,26 @@ #include -void debug_print(int level, const char *file, const char *fkt, int line, - const char *dbg_str, const char *fmt, ...); +#define DEBUG_PRINT(level, file, fkt, line, dbg_str, fmt, ...) \ + do { \ + wLog *log = WLog_Get("com.freerdp." dbg_str); \ + wLogMessage msg; \ + \ + msg.Type = WLOG_MESSAGE_TEXT; \ + msg.Level = level; \ + msg.FormatString = fmt; \ + msg.LineNumber = line; \ + msg.FileName = file; \ + msg.FunctionName = fkt; \ + WLog_PrintMessage(log, &msg, ##__VA_ARGS__); \ + } while (0 ) #define DEBUG_NULL(fmt, ...) do { } while (0) -#define DEBUG_CLASS(_dbg_class, fmt, ...) debug_print(WLOG_ERROR, __FILE__, \ +#define DEBUG_CLASS(_dbg_class, fmt, ...) DEBUG_PRINT(WLOG_ERROR, __FILE__, \ __FUNCTION__, __LINE__, #_dbg_class, fmt, ## __VA_ARGS__) -#define DEBUG_MSG(fmt, ...) debug_print(WLOG_DEBUG, __FILE__, __FUNCTION__, \ +#define DEBUG_MSG(fmt, ...) DEBUG_PRINT(WLOG_DEBUG, __FILE__, __FUNCTION__, \ __LINE__, "freerdp", fmt, ## __VA_ARGS__) -#define DEBUG_WARN(fmt, ...) debug_print(WLOG_ERROR, __FILE__, __FUNCTION__, \ +#define DEBUG_WARN(fmt, ...) DEBUG_PRINT(WLOG_ERROR, __FILE__, __FUNCTION__, \ __LINE__, "freerdp", fmt, ## __VA_ARGS__) #endif /* FREERDP_UTILS_DEBUG_H */ diff --git a/winpr/libwinpr/utils/wlog/ConsoleAppender.c b/winpr/libwinpr/utils/wlog/ConsoleAppender.c index bc7c1f23d..356ca4576 100644 --- a/winpr/libwinpr/utils/wlog/ConsoleAppender.c +++ b/winpr/libwinpr/utils/wlog/ConsoleAppender.c @@ -120,7 +120,7 @@ int WLog_ConsoleAppender_WriteMessage(wLog* log, wLogConsoleAppender* appender, } if (level != ANDROID_LOG_SILENT) - __android_log_print(level, "winpr", "%s%s", message->PrefixString, message->TextString); + __android_log_print(level, log->Name, "%s%s", message->PrefixString, message->TextString); #else fp = (appender->outputStream == WLOG_CONSOLE_STDERR) ? stderr : stdout; diff --git a/winpr/libwinpr/utils/wlog/Layout.c b/winpr/libwinpr/utils/wlog/Layout.c index 96365fe3e..43670d0d0 100644 --- a/winpr/libwinpr/utils/wlog/Layout.c +++ b/winpr/libwinpr/utils/wlog/Layout.c @@ -358,7 +358,7 @@ wLogLayout* WLog_Layout_New(wLog* log) else { #ifdef ANDROID - layout->FormatString = _strdup("[%mn][pid=%pid:tid=%tid]"); + layout->FormatString = _strdup("[pid=%pid:tid=%tid] - "); #else layout->FormatString = _strdup("[%hr:%mi:%se:%ml] [%pid:%tid] [%lv][%mn] - "); #endif From b97099e815bb5f769379f716f0d475c9a2c14116 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Thu, 7 Aug 2014 22:20:13 +0200 Subject: [PATCH 073/170] Replaced fprintf(stderr with DEBUG_WARN --- channels/audin/client/pulse/audin_pulse.c | 2 +- channels/audin/server/audin.c | 2 +- channels/cliprdr/client/cliprdr_main.c | 12 ++++++------ 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/channels/audin/client/pulse/audin_pulse.c b/channels/audin/client/pulse/audin_pulse.c index b731c2246..5dab7badb 100644 --- a/channels/audin/client/pulse/audin_pulse.c +++ b/channels/audin/client/pulse/audin_pulse.c @@ -297,7 +297,7 @@ static void audin_pulse_stream_request_callback(pa_stream* stream, size_t length */ if (pulse->buffer == NULL) { - /* fprintf(stderr, "%s: ignoring input, pulse buffer not ready.\n", __func__); */ + /* DEBUG_WARN( "%s: ignoring input, pulse buffer not ready.\n", __func__); */ return; } diff --git a/channels/audin/server/audin.c b/channels/audin/server/audin.c index 31b3943f0..a7d50c73a 100644 --- a/channels/audin/server/audin.c +++ b/channels/audin/server/audin.c @@ -385,7 +385,7 @@ static void* audin_server_thread_func(void* arg) break; default: - fprintf(stderr, "audin_server_thread_func: unknown MessageId %d\n", MessageId); + DEBUG_WARN( "audin_server_thread_func: unknown MessageId %d\n", MessageId); break; } } diff --git a/channels/cliprdr/client/cliprdr_main.c b/channels/cliprdr/client/cliprdr_main.c index 7eeaad6a9..4526526c0 100644 --- a/channels/cliprdr/client/cliprdr_main.c +++ b/channels/cliprdr/client/cliprdr_main.c @@ -101,18 +101,18 @@ static void cliprdr_process_connect(rdpSvcPlugin* plugin) void cliprdr_print_general_capability_flags(UINT32 flags) { - fprintf(stderr, "generalFlags (0x%08X) {\n", flags); + DEBUG_WARN( "generalFlags (0x%08X) {\n", flags); if (flags & CB_USE_LONG_FORMAT_NAMES) - fprintf(stderr, "\tCB_USE_LONG_FORMAT_NAMES\n"); + DEBUG_WARN( "\tCB_USE_LONG_FORMAT_NAMES\n"); if (flags & CB_STREAM_FILECLIP_ENABLED) - fprintf(stderr, "\tCB_STREAM_FILECLIP_ENABLED\n"); + DEBUG_WARN( "\tCB_STREAM_FILECLIP_ENABLED\n"); if (flags & CB_FILECLIP_NO_FILE_PATHS) - fprintf(stderr, "\tCB_FILECLIP_NO_FILE_PATHS\n"); + DEBUG_WARN( "\tCB_FILECLIP_NO_FILE_PATHS\n"); if (flags & CB_CAN_LOCK_CLIPDATA) - fprintf(stderr, "\tCB_CAN_LOCK_CLIPDATA\n"); + DEBUG_WARN( "\tCB_CAN_LOCK_CLIPDATA\n"); - fprintf(stderr, "}\n"); + DEBUG_WARN( "}\n"); } static void cliprdr_process_general_capability(cliprdrPlugin* cliprdr, wStream* s) From b897c6a43338a663f240395942f7c3c16aaed628 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Thu, 7 Aug 2014 22:20:35 +0200 Subject: [PATCH 074/170] Replaced fprintf(stderr with DEBUG_WARN --- libfreerdp/core/nla.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libfreerdp/core/nla.c b/libfreerdp/core/nla.c index 8ba7c6d76..5abeaeb19 100644 --- a/libfreerdp/core/nla.c +++ b/libfreerdp/core/nla.c @@ -186,7 +186,7 @@ int credssp_ntlm_client_init(rdpCredssp* credssp) #endif #ifdef WITH_DEBUG_NLA - _tDEBUG_MSG(_T("User: %s Domain: %s Password: %s\n"), + DEBUG_MSG("User: %s Domain: %s Password: %s\n", (char*) credssp->identity.User, (char*) credssp->identity.Domain, (char*) credssp->identity.Password); #endif From 084da200cf166483b95d642ae0b037f57a90154c Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Thu, 7 Aug 2014 22:20:53 +0200 Subject: [PATCH 075/170] Replaced fprintf(stderr with DEBUG_WARN --- server/Mac/mf_audin.c | 6 ++--- server/Mac/mf_event.c | 10 ++++---- server/Mac/mf_input.c | 6 ++--- server/Mac/mf_peer.c | 46 ++++++++++++++++----------------- server/Mac/mfreerdp.c | 6 ++--- server/X11/xf_cursor.c | 2 +- server/X11/xf_input.c | 4 +-- server/X11/xf_interface.c | 6 ++--- server/X11/xf_peer.c | 54 +++++++++++++++++++-------------------- 9 files changed, 70 insertions(+), 70 deletions(-) diff --git a/server/Mac/mf_audin.c b/server/Mac/mf_audin.c index 94de80984..c4b2d8f39 100644 --- a/server/Mac/mf_audin.c +++ b/server/Mac/mf_audin.c @@ -34,19 +34,19 @@ static const AUDIO_FORMAT supported_audio_formats[] = static void mf_peer_audin_opening(audin_server_context* context) { - fprintf(stderr, "AUDIN opening.\n"); + DEBUG_WARN( "AUDIN opening.\n"); /* Simply choose the first format supported by the client. */ context->SelectFormat(context, 0); } static void mf_peer_audin_open_result(audin_server_context* context, UINT32 result) { - fprintf(stderr, "AUDIN open result %d.\n", result); + DEBUG_WARN( "AUDIN open result %d.\n", result); } static void mf_peer_audin_receive_samples(audin_server_context* context, const void* buf, int nframes) { - fprintf(stderr, "AUDIN receive %d frames.\n", nframes); + DEBUG_WARN( "AUDIN receive %d frames.\n", nframes); } void mf_peer_audin_init(mfPeerContext* context) diff --git a/server/Mac/mf_event.c b/server/Mac/mf_event.c index 6e68e6b85..a2e2e1a40 100644 --- a/server/Mac/mf_event.c +++ b/server/Mac/mf_event.c @@ -51,7 +51,7 @@ void mf_signal_event(mfEventQueue* event_queue) length = write(event_queue->pipe_fd[1], "sig", 4); if (length != 4) - fprintf(stderr, "mf_signal_event: error\n"); + DEBUG_WARN( "mf_signal_event: error\n"); } void mf_set_event(mfEventQueue* event_queue) @@ -61,7 +61,7 @@ void mf_set_event(mfEventQueue* event_queue) length = write(event_queue->pipe_fd[1], "sig", 4); if (length != 4) - fprintf(stderr, "mf_set_event: error\n"); + DEBUG_WARN( "mf_set_event: error\n"); } void mf_clear_events(mfEventQueue* event_queue) @@ -73,7 +73,7 @@ void mf_clear_events(mfEventQueue* event_queue) length = read(event_queue->pipe_fd[0], &length, 4); if (length != 4) - fprintf(stderr, "mf_clear_event: error\n"); + DEBUG_WARN( "mf_clear_event: error\n"); } } @@ -84,7 +84,7 @@ void mf_clear_event(mfEventQueue* event_queue) length = read(event_queue->pipe_fd[0], &length, 4); if (length != 4) - fprintf(stderr, "mf_clear_event: error\n"); + DEBUG_WARN( "mf_clear_event: error\n"); } void mf_event_push(mfEventQueue* event_queue, mfEvent* event) @@ -188,7 +188,7 @@ mfEventQueue* mf_event_queue_new() event_queue->events = (mfEvent**) malloc(sizeof(mfEvent*) * event_queue->size); if (pipe(event_queue->pipe_fd) < 0) - fprintf(stderr, "mf_event_queue_new: pipe failed\n"); + DEBUG_WARN( "mf_event_queue_new: pipe failed\n"); pthread_mutex_init(&(event_queue->mutex), NULL); } diff --git a/server/Mac/mf_input.c b/server/Mac/mf_input.c index ce58f5476..d74cd9c26 100644 --- a/server/Mac/mf_input.c +++ b/server/Mac/mf_input.c @@ -356,8 +356,8 @@ void mf_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) /* if (flags & KBD_FLAGS_EXTENDED) - fprintf(stderr, "extended "); - fprintf(stderr, "keypress: down = %d, SCAN=%#0X, VK=%#0X\n", keyDown, code, keymap[code]); + DEBUG_WARN( "extended "); + DEBUG_WARN( "keypress: down = %d, SCAN=%#0X, VK=%#0X\n", keyDown, code, keymap[code]); */ } @@ -548,7 +548,7 @@ void mf_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) void mf_input_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) { - fprintf(stderr, "Unhandled mouse event!!!\n"); + DEBUG_WARN( "Unhandled mouse event!!!\n"); /* if ((flags & PTR_XFLAGS_BUTTON1) || (flags & PTR_XFLAGS_BUTTON2)) { diff --git a/server/Mac/mf_peer.c b/server/Mac/mf_peer.c index 93ab74e6e..6eee3d892 100644 --- a/server/Mac/mf_peer.c +++ b/server/Mac/mf_peer.c @@ -83,7 +83,7 @@ BOOL mf_peer_check_fds(freerdp_peer* client) { if (event->type == MF_EVENT_TYPE_REGION) { - fprintf(stderr, "unhandled event\n"); + DEBUG_WARN( "unhandled event\n"); } else if (event->type == MF_EVENT_TYPE_FRAME_TICK) { @@ -237,10 +237,10 @@ void mf_peer_init(freerdp_peer* client) if(info_timer) { - //fprintf(stderr, "created timer\n"); + //DEBUG_WARN( "created timer\n"); dispatch_source_set_timer(info_timer, DISPATCH_TIME_NOW, 42ull * NSEC_PER_MSEC, 100ull * NSEC_PER_MSEC); dispatch_source_set_event_handler(info_timer, ^{ - //fprintf(stderr, "dispatch\n"); + //DEBUG_WARN( "dispatch\n"); mfEvent* event = mf_event_new(MF_EVENT_TYPE_FRAME_TICK); mf_event_push(info_event_queue, (mfEvent*) event);} ); @@ -253,17 +253,17 @@ BOOL mf_peer_post_connect(freerdp_peer* client) mfPeerContext* context = (mfPeerContext*) client->context; rdpSettings* settings = client->settings; - fprintf(stderr, "Client %s post connect\n", client->hostname); + DEBUG_WARN( "Client %s post connect\n", client->hostname); if (client->settings->AutoLogonEnabled) { - fprintf(stderr, " and wants to login automatically as %s\\%s", + DEBUG_WARN( " and wants to login automatically as %s\\%s", client->settings->Domain ? client->settings->Domain : "", client->settings->Username); /* A real server may perform OS login here if NLA is not executed previously. */ } - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); mfInfo* mfi = mf_info_get_instance(); mfi->scale = 1; @@ -274,7 +274,7 @@ BOOL mf_peer_post_connect(freerdp_peer* client) if ((settings->DesktopWidth != mfi->servscreen_width) || (settings->DesktopHeight != mfi->servscreen_height)) { - fprintf(stderr, "Client requested resolution %dx%d, but will resize to %dx%d\n", + DEBUG_WARN( "Client requested resolution %dx%d, but will resize to %dx%d\n", settings->DesktopWidth, settings->DesktopHeight, mfi->servscreen_width, mfi->servscreen_height); } @@ -314,12 +314,12 @@ BOOL mf_peer_activate(freerdp_peer* client) void mf_peer_synchronize_event(rdpInput* input, UINT32 flags) { - fprintf(stderr, "Client sent a synchronize event (flags:0x%08X)\n", flags); + DEBUG_WARN( "Client sent a synchronize event (flags:0x%08X)\n", flags); } void mf_peer_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) { - fprintf(stderr, "Client sent a keyboard event (flags:0x%04X code:0x%04X)\n", flags, code); + DEBUG_WARN( "Client sent a keyboard event (flags:0x%04X code:0x%04X)\n", flags, code); UINT16 down = 0x4000; //UINT16 up = 0x8000; @@ -341,28 +341,28 @@ void mf_peer_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) void mf_peer_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) { - fprintf(stderr, "Client sent a unicode keyboard event (flags:0x%04X code:0x%04X)\n", flags, code); + DEBUG_WARN( "Client sent a unicode keyboard event (flags:0x%04X code:0x%04X)\n", flags, code); } /*void mf_peer_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) { - //fprintf(stderr, "Client sent a mouse event (flags:0x%04X pos: %d,%d)\n", flags, x, y); + //DEBUG_WARN( "Client sent a mouse event (flags:0x%04X pos: %d,%d)\n", flags, x, y); } void mf_peer_extended_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) { - //fprintf(stderr, "Client sent an extended mouse event (flags:0x%04X pos: %d,%d)\n", flags, x, y); + //DEBUG_WARN( "Client sent an extended mouse event (flags:0x%04X pos: %d,%d)\n", flags, x, y); } */ /*static void mf_peer_refresh_rect(rdpContext* context, BYTE count, RECTANGLE_16* areas) { BYTE i; - fprintf(stderr, "Client requested to refresh:\n"); + DEBUG_WARN( "Client requested to refresh:\n"); for (i = 0; i < count; i++) { - fprintf(stderr, " (%d, %d) (%d, %d)\n", areas[i].left, areas[i].top, areas[i].right, areas[i].bottom); + DEBUG_WARN( " (%d, %d) (%d, %d)\n", areas[i].left, areas[i].top, areas[i].right, areas[i].bottom); } }*/ @@ -370,11 +370,11 @@ static void mf_peer_suppress_output(rdpContext* context, BYTE allow, RECTANGLE_1 { if (allow > 0) { - fprintf(stderr, "Client restore output (%d, %d) (%d, %d).\n", area->left, area->top, area->right, area->bottom); + DEBUG_WARN( "Client restore output (%d, %d) (%d, %d).\n", area->left, area->top, area->right, area->bottom); } else { - fprintf(stderr, "Client minimized and suppress output.\n"); + DEBUG_WARN( "Client minimized and suppress output.\n"); } } @@ -425,7 +425,7 @@ void* mf_peer_main_loop(void* arg) client->Initialize(client); context = (mfPeerContext*) client->context; - fprintf(stderr, "We've got a client %s\n", client->local ? "(local)" : client->hostname); + DEBUG_WARN( "We've got a client %s\n", client->local ? "(local)" : client->hostname); while (1) { @@ -433,12 +433,12 @@ void* mf_peer_main_loop(void* arg) if (client->GetFileDescriptor(client, rfds, &rcount) != TRUE) { - fprintf(stderr, "Failed to get FreeRDP file descriptor\n"); + DEBUG_WARN( "Failed to get FreeRDP file descriptor\n"); break; } if (mf_peer_get_fds(client, rfds, &rcount) != TRUE) { - fprintf(stderr, "Failed to get mfreerdp file descriptor\n"); + DEBUG_WARN( "Failed to get mfreerdp file descriptor\n"); break; } @@ -468,20 +468,20 @@ void* mf_peer_main_loop(void* arg) (errno == EINPROGRESS) || (errno == EINTR))) /* signal occurred */ { - fprintf(stderr, "select failed\n"); + DEBUG_WARN( "select failed\n"); break; } } if (client->CheckFileDescriptor(client) != TRUE) { - fprintf(stderr, "Failed to check freerdp file descriptor\n"); + DEBUG_WARN( "Failed to check freerdp file descriptor\n"); break; } if ((mf_peer_check_fds(client)) != TRUE) { - fprintf(stderr, "Failed to check mfreerdp file descriptor\n"); + DEBUG_WARN( "Failed to check mfreerdp file descriptor\n"); break; } @@ -491,7 +491,7 @@ void* mf_peer_main_loop(void* arg) } } - fprintf(stderr, "Client %s disconnected.\n", client->local ? "(local)" : client->hostname); + DEBUG_WARN( "Client %s disconnected.\n", client->local ? "(local)" : client->hostname); client->Disconnect(client); freerdp_peer_context_free(client); diff --git a/server/Mac/mfreerdp.c b/server/Mac/mfreerdp.c index 2ac3122a2..1a1092964 100644 --- a/server/Mac/mfreerdp.c +++ b/server/Mac/mfreerdp.c @@ -60,7 +60,7 @@ static void mf_server_main_loop(freerdp_listener* instance) if (instance->GetFileDescriptor(instance, rfds, &rcount) != TRUE) { - fprintf(stderr, "Failed to get FreeRDP file descriptor\n"); + DEBUG_WARN( "Failed to get FreeRDP file descriptor\n"); break; } @@ -88,14 +88,14 @@ static void mf_server_main_loop(freerdp_listener* instance) (errno == EINPROGRESS) || (errno == EINTR))) /* signal occurred */ { - fprintf(stderr, "select failed\n"); + DEBUG_WARN( "select failed\n"); break; } } if (instance->CheckFileDescriptor(instance) != TRUE) { - fprintf(stderr, "Failed to check FreeRDP file descriptor\n"); + DEBUG_WARN( "Failed to check FreeRDP file descriptor\n"); break; } } diff --git a/server/X11/xf_cursor.c b/server/X11/xf_cursor.c index 00e4abb3c..aae3312b8 100644 --- a/server/X11/xf_cursor.c +++ b/server/X11/xf_cursor.c @@ -44,7 +44,7 @@ int xf_cursor_init(xfInfo* xfi) if (!XFixesQueryExtension(xfi->display, &event, &error)) { - fprintf(stderr, "XFixesQueryExtension failed\n"); + DEBUG_WARN( "XFixesQueryExtension failed\n"); return -1; } diff --git a/server/X11/xf_input.c b/server/X11/xf_input.c index c47e996da..710570d3c 100644 --- a/server/X11/xf_input.c +++ b/server/X11/xf_input.c @@ -34,7 +34,7 @@ void xf_input_synchronize_event(rdpInput* input, UINT32 flags) { - fprintf(stderr, "Client sent a synchronize event (flags:0x%X)\n", flags); + DEBUG_WARN( "Client sent a synchronize event (flags:0x%X)\n", flags); } void xf_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) @@ -71,7 +71,7 @@ void xf_input_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) void xf_input_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) { - fprintf(stderr, "Client sent a unicode keyboard event (flags:0x%X code:0x%X)\n", flags, code); + DEBUG_WARN( "Client sent a unicode keyboard event (flags:0x%X code:0x%X)\n", flags, code); } void xf_input_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) diff --git a/server/X11/xf_interface.c b/server/X11/xf_interface.c index c251b3297..b83bb429e 100644 --- a/server/X11/xf_interface.c +++ b/server/X11/xf_interface.c @@ -53,7 +53,7 @@ void* xf_server_thread(void* param) ZeroMemory(rfds, sizeof(rfds)); if (listener->GetFileDescriptor(listener, rfds, &rcount) != TRUE) { - fprintf(stderr, "Failed to get FreeRDP file descriptor\n"); + DEBUG_WARN( "Failed to get FreeRDP file descriptor\n"); break; } @@ -81,14 +81,14 @@ void* xf_server_thread(void* param) (errno == EINPROGRESS) || (errno == EINTR))) /* signal occurred */ { - fprintf(stderr, "select failed\n"); + DEBUG_WARN( "select failed\n"); break; } } if (listener->CheckFileDescriptor(listener) != TRUE) { - fprintf(stderr, "Failed to check FreeRDP file descriptor\n"); + DEBUG_WARN( "Failed to check FreeRDP file descriptor\n"); break; } } diff --git a/server/X11/xf_peer.c b/server/X11/xf_peer.c index 140dcd662..14ddc1f13 100644 --- a/server/X11/xf_peer.c +++ b/server/X11/xf_peer.c @@ -64,7 +64,7 @@ void xf_xdamage_init(xfInfo* xfi) if (XDamageQueryExtension(xfi->display, &damage_event, &damage_error) == 0) { - fprintf(stderr, "XDamageQueryExtension failed\n"); + DEBUG_WARN( "XDamageQueryExtension failed\n"); return; } @@ -72,12 +72,12 @@ void xf_xdamage_init(xfInfo* xfi) if (XDamageQueryVersion(xfi->display, &major, &minor) == 0) { - fprintf(stderr, "XDamageQueryVersion failed\n"); + DEBUG_WARN( "XDamageQueryVersion failed\n"); return; } else if (major < 1) { - fprintf(stderr, "XDamageQueryVersion failed: major:%d minor:%d\n", major, minor); + DEBUG_WARN( "XDamageQueryVersion failed: major:%d minor:%d\n", major, minor); return; } @@ -86,7 +86,7 @@ void xf_xdamage_init(xfInfo* xfi) if (xfi->xdamage == None) { - fprintf(stderr, "XDamageCreate failed\n"); + DEBUG_WARN( "XDamageCreate failed\n"); return; } @@ -95,7 +95,7 @@ void xf_xdamage_init(xfInfo* xfi) if (xfi->xdamage_region == None) { - fprintf(stderr, "XFixesCreateRegion failed\n"); + DEBUG_WARN( "XFixesCreateRegion failed\n"); XDamageDestroy(xfi->display, xfi->xdamage); xfi->xdamage = None; return; @@ -120,13 +120,13 @@ int xf_xshm_init(xfInfo* xfi) if (pixmaps != True) { - fprintf(stderr, "XShmQueryVersion failed\n"); + DEBUG_WARN( "XShmQueryVersion failed\n"); return -1; } } else { - fprintf(stderr, "XShmQueryExtension failed\n"); + DEBUG_WARN( "XShmQueryExtension failed\n"); return -1; } @@ -138,7 +138,7 @@ int xf_xshm_init(xfInfo* xfi) if (!xfi->fb_image) { - fprintf(stderr, "XShmCreateImage failed\n"); + DEBUG_WARN( "XShmCreateImage failed\n"); return -1; } @@ -147,7 +147,7 @@ int xf_xshm_init(xfInfo* xfi) if (xfi->fb_shm_info.shmid == -1) { - fprintf(stderr, "shmget failed\n"); + DEBUG_WARN( "shmget failed\n"); return -1; } @@ -157,7 +157,7 @@ int xf_xshm_init(xfInfo* xfi) if (xfi->fb_shm_info.shmaddr == ((char*) -1)) { - fprintf(stderr, "shmat failed\n"); + DEBUG_WARN( "shmat failed\n"); return -1; } @@ -166,7 +166,7 @@ int xf_xshm_init(xfInfo* xfi) shmctl(xfi->fb_shm_info.shmid, IPC_RMID, 0); - fprintf(stderr, "display: %p root_window: %p width: %d height: %d depth: %d\n", + DEBUG_WARN( "display: %p root_window: %p width: %d height: %d depth: %d\n", xfi->display, (void*) xfi->root_window, xfi->fb_image->width, xfi->fb_image->height, xfi->fb_image->depth); xfi->fb_pixmap = XShmCreatePixmap(xfi->display, @@ -212,13 +212,13 @@ xfInfo* xf_info_init() setenv("DISPLAY", ":0", 1); /* Set DISPLAY variable if not already set */ if (!XInitThreads()) - fprintf(stderr, "warning: XInitThreads() failure\n"); + DEBUG_WARN( "warning: XInitThreads() failure\n"); xfi->display = XOpenDisplay(NULL); if (!xfi->display) { - fprintf(stderr, "failed to open display: %s\n", XDisplayName(NULL)); + DEBUG_WARN( "failed to open display: %s\n", XDisplayName(NULL)); exit(1); } @@ -236,7 +236,7 @@ xfInfo* xf_info_init() if (!pfs) { - fprintf(stderr, "XListPixmapFormats failed\n"); + DEBUG_WARN( "XListPixmapFormats failed\n"); exit(1); } @@ -261,7 +261,7 @@ xfInfo* xf_info_init() if (!vis) { - fprintf(stderr, "XGetVisualInfo failed\n"); + DEBUG_WARN( "XGetVisualInfo failed\n"); exit(1); } @@ -420,23 +420,23 @@ BOOL xf_peer_post_connect(freerdp_peer* client) * The server may start sending graphics output and receiving keyboard/mouse input after this * callback returns. */ - fprintf(stderr, "Client %s is activated", client->hostname); + DEBUG_WARN( "Client %s is activated", client->hostname); if (client->settings->AutoLogonEnabled) { - fprintf(stderr, " and wants to login automatically as %s\\%s", + DEBUG_WARN( " and wants to login automatically as %s\\%s", client->settings->Domain ? client->settings->Domain : "", client->settings->Username); /* A real server may perform OS login here if NLA is not executed previously. */ } - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); - fprintf(stderr, "Client requested desktop: %dx%dx%d\n", + DEBUG_WARN( "Client requested desktop: %dx%dx%d\n", client->settings->DesktopWidth, client->settings->DesktopHeight, client->settings->ColorDepth); if (!client->settings->RemoteFxCodec) { - fprintf(stderr, "Client does not support RemoteFX\n"); + DEBUG_WARN( "Client does not support RemoteFX\n"); return FALSE; } @@ -530,7 +530,7 @@ static void* xf_peer_main_loop(void* arg) ZeroMemory(rfds, sizeof(rfds)); ZeroMemory(&timeout, sizeof(struct timeval)); - fprintf(stderr, "We've got a client %s\n", client->hostname); + DEBUG_WARN( "We've got a client %s\n", client->hostname); xf_peer_init(client); xfp = (xfPeerContext*) client->context; @@ -559,13 +559,13 @@ static void* xf_peer_main_loop(void* arg) if (client->GetFileDescriptor(client, rfds, &rcount) != TRUE) { - fprintf(stderr, "Failed to get FreeRDP file descriptor\n"); + DEBUG_WARN( "Failed to get FreeRDP file descriptor\n"); break; } if (xf_peer_get_fds(client, rfds, &rcount) != TRUE) { - fprintf(stderr, "Failed to get xfreerdp file descriptor\n"); + DEBUG_WARN( "Failed to get xfreerdp file descriptor\n"); break; } @@ -596,25 +596,25 @@ static void* xf_peer_main_loop(void* arg) (errno == EINPROGRESS) || (errno == EINTR))) /* signal occurred */ { - fprintf(stderr, "select failed\n"); + DEBUG_WARN( "select failed\n"); break; } } if (client->CheckFileDescriptor(client) != TRUE) { - fprintf(stderr, "Failed to check freerdp file descriptor\n"); + DEBUG_WARN( "Failed to check freerdp file descriptor\n"); break; } if ((xf_peer_check_fds(client)) != TRUE) { - fprintf(stderr, "Failed to check xfreerdp file descriptor\n"); + DEBUG_WARN( "Failed to check xfreerdp file descriptor\n"); break; } } - fprintf(stderr, "Client %s disconnected.\n", client->hostname); + DEBUG_WARN( "Client %s disconnected.\n", client->hostname); client->Disconnect(client); From 0780c0993e066d21d071ce3ac89cbb24355fc9c0 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Thu, 7 Aug 2014 22:21:07 +0200 Subject: [PATCH 076/170] Replaced fprintf(stderr with DEBUG_WARN --- client/DirectFB/dfreerdp.c | 16 ++--- client/Mac/MRDPView.m | 28 ++++---- client/Windows/wf_cliprdr.c | 10 +-- client/Windows/wf_gdi.c | 4 +- client/Windows/wf_graphics.c | 2 +- client/Windows/wf_interface.c | 40 +++++------ client/X11/generate_argument_docbook.c | 16 ++--- client/X11/xf_client.c | 48 ++++++------- client/X11/xf_cliprdr.c | 8 +-- client/X11/xf_gdi.c | 24 +++---- client/X11/xf_graphics.c | 8 +-- client/X11/xf_input.c | 2 +- client/X11/xf_keyboard.c | 2 +- client/X11/xf_rail.c | 6 +- client/X11/xf_tsmf.c | 6 +- client/common/cmdline.c | 11 +-- client/common/compatibility.c | 97 +++++++++++++------------- client/common/file.c | 9 +-- 18 files changed, 170 insertions(+), 167 deletions(-) diff --git a/client/DirectFB/dfreerdp.c b/client/DirectFB/dfreerdp.c index df68a1d6c..c231cd583 100644 --- a/client/DirectFB/dfreerdp.c +++ b/client/DirectFB/dfreerdp.c @@ -292,7 +292,7 @@ static void df_process_channel_event(rdpChannels* channels, freerdp* instance) break; default: - fprintf(stderr, "df_process_channel_event: unknown event type %d\n", GetMessageType(event->id)); + DEBUG_WARN( "df_process_channel_event: unknown event type %d\n", GetMessageType(event->id)); break; } @@ -339,17 +339,17 @@ int dfreerdp_run(freerdp* instance) if (freerdp_get_fds(instance, rfds, &rcount, wfds, &wcount) != TRUE) { - fprintf(stderr, "Failed to get FreeRDP file descriptor\n"); + DEBUG_WARN( "Failed to get FreeRDP file descriptor\n"); break; } if (freerdp_channels_get_fds(channels, instance, rfds, &rcount, wfds, &wcount) != TRUE) { - fprintf(stderr, "Failed to get channel manager file descriptor\n"); + DEBUG_WARN( "Failed to get channel manager file descriptor\n"); break; } if (df_get_fds(instance, rfds, &rcount, wfds, &wcount) != TRUE) { - fprintf(stderr, "Failed to get dfreerdp file descriptor\n"); + DEBUG_WARN( "Failed to get dfreerdp file descriptor\n"); break; } @@ -378,24 +378,24 @@ int dfreerdp_run(freerdp* instance) (errno == EINPROGRESS) || (errno == EINTR))) /* signal occurred */ { - fprintf(stderr, "dfreerdp_run: select failed\n"); + DEBUG_WARN( "dfreerdp_run: select failed\n"); break; } } if (freerdp_check_fds(instance) != TRUE) { - fprintf(stderr, "Failed to check FreeRDP file descriptor\n"); + DEBUG_WARN( "Failed to check FreeRDP file descriptor\n"); break; } if (df_check_fds(instance, &rfds_set) != TRUE) { - fprintf(stderr, "Failed to check dfreerdp file descriptor\n"); + DEBUG_WARN( "Failed to check dfreerdp file descriptor\n"); break; } if (freerdp_channels_check_fds(channels, instance) != TRUE) { - fprintf(stderr, "Failed to check channel manager file descriptor\n"); + DEBUG_WARN( "Failed to check channel manager file descriptor\n"); break; } df_process_channel_event(channels, instance); diff --git a/client/Mac/MRDPView.m b/client/Mac/MRDPView.m index 5de0da47f..c298efe23 100644 --- a/client/Mac/MRDPView.m +++ b/client/Mac/MRDPView.m @@ -617,7 +617,7 @@ DWORD fixKeyCode(DWORD keyCode, unichar keyChar, enum APPLE_KEYBOARD_TYPE type) vkcode &= 0xFF; #if 0 - fprintf(stderr, "keyDown: keyCode: 0x%04X scancode: 0x%04X vkcode: 0x%04X keyFlags: %d name: %s\n", + DEBUG_WARN( "keyDown: keyCode: 0x%04X scancode: 0x%04X vkcode: 0x%04X keyFlags: %d name: %s\n", keyCode, scancode, vkcode, keyFlags, GetVirtualKeyName(vkcode)); #endif @@ -654,7 +654,7 @@ DWORD fixKeyCode(DWORD keyCode, unichar keyChar, enum APPLE_KEYBOARD_TYPE type) vkcode &= 0xFF; #if 0 - fprintf(stderr, "keyUp: key: 0x%04X scancode: 0x%04X vkcode: 0x%04X keyFlags: %d name: %s\n", + DEBUG_WARN( "keyUp: key: 0x%04X scancode: 0x%04X vkcode: 0x%04X keyFlags: %d name: %s\n", keyCode, scancode, vkcode, keyFlags, GetVirtualKeyName(vkcode)); #endif @@ -683,29 +683,29 @@ DWORD fixKeyCode(DWORD keyCode, unichar keyChar, enum APPLE_KEYBOARD_TYPE type) vkcode &= 0xFF; #if 0 - fprintf(stderr, "flagsChanged: key: 0x%04X scancode: 0x%04X vkcode: 0x%04X extended: %d name: %s modFlags: 0x%04X\n", + DEBUG_WARN( "flagsChanged: key: 0x%04X scancode: 0x%04X vkcode: 0x%04X extended: %d name: %s modFlags: 0x%04X\n", key - 8, scancode, vkcode, keyFlags, GetVirtualKeyName(vkcode), modFlags); if (modFlags & NSAlphaShiftKeyMask) - fprintf(stderr, "NSAlphaShiftKeyMask\n"); + DEBUG_WARN( "NSAlphaShiftKeyMask\n"); if (modFlags & NSShiftKeyMask) - fprintf(stderr, "NSShiftKeyMask\n"); + DEBUG_WARN( "NSShiftKeyMask\n"); if (modFlags & NSControlKeyMask) - fprintf(stderr, "NSControlKeyMask\n"); + DEBUG_WARN( "NSControlKeyMask\n"); if (modFlags & NSAlternateKeyMask) - fprintf(stderr, "NSAlternateKeyMask\n"); + DEBUG_WARN( "NSAlternateKeyMask\n"); if (modFlags & NSCommandKeyMask) - fprintf(stderr, "NSCommandKeyMask\n"); + DEBUG_WARN( "NSCommandKeyMask\n"); if (modFlags & NSNumericPadKeyMask) - fprintf(stderr, "NSNumericPadKeyMask\n"); + DEBUG_WARN( "NSNumericPadKeyMask\n"); if (modFlags & NSHelpKeyMask) - fprintf(stderr, "NSHelpKeyMask\n"); + DEBUG_WARN( "NSHelpKeyMask\n"); #endif if ((modFlags & NSAlphaShiftKeyMask) && !(kbdModFlags & NSAlphaShiftKeyMask)) @@ -832,7 +832,7 @@ BOOL mac_pre_connect(freerdp* instance) if (!settings->ServerHostname) { - fprintf(stderr, "error: server hostname was not specified with /v:[:port]\n"); + DEBUG_WARN( "error: server hostname was not specified with /v:[:port]\n"); [NSApp terminate:nil]; return -1; } @@ -1200,7 +1200,7 @@ static void update_activity_cb(freerdp* instance) } else { - fprintf(stderr, "update_activity_cb: No queue!\n"); + DEBUG_WARN( "update_activity_cb: No queue!\n"); } } @@ -1225,7 +1225,7 @@ static void input_activity_cb(freerdp* instance) } else { - fprintf(stderr, "input_activity_cb: No queue!\n"); + DEBUG_WARN( "input_activity_cb: No queue!\n"); } } @@ -1238,7 +1238,7 @@ static void channel_activity_cb(freerdp* instance) if (event) { - fprintf(stderr, "channel_activity_cb: message %d\n", event->id); + DEBUG_WARN( "channel_activity_cb: message %d\n", event->id); switch (GetMessageClass(event->id)) { diff --git a/client/Windows/wf_cliprdr.c b/client/Windows/wf_cliprdr.c index d319c83de..ca8c41b73 100644 --- a/client/Windows/wf_cliprdr.c +++ b/client/Windows/wf_cliprdr.c @@ -568,7 +568,7 @@ void wf_cliprdr_init(wfContext* wfc, rdpChannels* channels) if (!wfc->instance->settings->RedirectClipboard) { wfc->cliprdr_context = NULL; - fprintf(stderr, "clipboard is not redirected.\n"); + DEBUG_WARN( "clipboard is not redirected.\n"); return; } @@ -658,7 +658,7 @@ static BOOL wf_cliprdr_get_file_contents(wchar_t *file_name, BYTE *buffer, int p if (file_name == NULL || buffer == NULL || puSize == NULL) { - fprintf(stderr, "get file contents Invalid Arguments.\n"); + DEBUG_WARN( "get file contents Invalid Arguments.\n"); return FALSE; } hFile = CreateFileW(file_name, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_BACKUP_SEMANTICS, NULL); @@ -1175,7 +1175,7 @@ static void wf_cliprdr_process_cb_filecontents_request_event(wfContext *wfc, RDP hRet = OleGetClipboard(&pDataObj); if (!SUCCEEDED(hRet)) { - fprintf(stderr, "filecontents: get ole clipboard failed.\n"); + DEBUG_WARN( "filecontents: get ole clipboard failed.\n"); goto error; } @@ -1273,7 +1273,7 @@ static void wf_cliprdr_process_cb_filecontents_request_event(wfContext *wfc, RDP event->nPositionLow, event->nPositionHigh, event->cbRequested, &uSize); if (bRet == FALSE) { - fprintf(stderr, "get file contents failed.\n"); + DEBUG_WARN( "get file contents failed.\n"); uSize = 0; goto error; } @@ -1304,7 +1304,7 @@ error: IDataObject_Release(pDataObj); pDataObj = NULL; } - fprintf(stderr, "filecontents: send failed response.\n"); + DEBUG_WARN( "filecontents: send failed response.\n"); cliprdr_send_response_filecontents(cliprdr, event->streamId, 0, NULL); return; } diff --git a/client/Windows/wf_gdi.c b/client/Windows/wf_gdi.c index 1c87072c4..183401632 100644 --- a/client/Windows/wf_gdi.c +++ b/client/Windows/wf_gdi.c @@ -63,7 +63,7 @@ BOOL wf_set_rop2(HDC hdc, int rop2) { if ((rop2 < 0x01) || (rop2 > 0x10)) { - fprintf(stderr, "Unsupported ROP2: %d\n", rop2); + DEBUG_WARN( "Unsupported ROP2: %d\n", rop2); return FALSE; } @@ -643,7 +643,7 @@ void wf_gdi_surface_bits(wfContext* wfc, SURFACE_BITS_COMMAND* surface_bits_comm } else { - fprintf(stderr, "Unsupported codecID %d\n", surface_bits_command->codecID); + DEBUG_WARN( "Unsupported codecID %d\n", surface_bits_command->codecID); } if (tile_bitmap != NULL) diff --git a/client/Windows/wf_graphics.c b/client/Windows/wf_graphics.c index a3b40f291..c33f14a82 100644 --- a/client/Windows/wf_graphics.c +++ b/client/Windows/wf_graphics.c @@ -161,7 +161,7 @@ void wf_Bitmap_Decompress(wfContext* wfc, rdpBitmap* bitmap, if (status != TRUE) { - fprintf(stderr, "Bitmap Decompression Failed\n"); + DEBUG_WARN( "Bitmap Decompression Failed\n"); } } else diff --git a/client/Windows/wf_interface.c b/client/Windows/wf_interface.c index ec7c70db2..fdb7b3149 100644 --- a/client/Windows/wf_interface.c +++ b/client/Windows/wf_interface.c @@ -65,7 +65,7 @@ int wf_create_console(void) freopen("CONOUT$", "w", stdout); freopen("CONOUT$", "w", stderr); - fprintf(stderr, "Debug console created.\n"); + DEBUG_WARN( "Debug console created.\n"); return 0; } @@ -202,7 +202,7 @@ BOOL wf_pre_connect(freerdp* instance) wfc->connectionRdpFile = freerdp_client_rdp_file_new(); - fprintf(stderr, "Using connection file: %s\n", settings->ConnectionFile); + DEBUG_WARN( "Using connection file: %s\n", settings->ConnectionFile); freerdp_client_parse_rdp_file(wfc->connectionRdpFile, settings->ConnectionFile); freerdp_client_populate_settings_from_rdp_file(wfc->connectionRdpFile, settings); @@ -291,7 +291,7 @@ BOOL wf_pre_connect(freerdp* instance) if ((settings->DesktopWidth < 64) || (settings->DesktopHeight < 64) || (settings->DesktopWidth > 4096) || (settings->DesktopHeight > 4096)) { - fprintf(stderr, "wf_pre_connect: invalid dimensions %d %d\n", settings->DesktopWidth, settings->DesktopHeight); + DEBUG_WARN( "wf_pre_connect: invalid dimensions %d %d\n", settings->DesktopWidth, settings->DesktopHeight); return 1; } @@ -487,7 +487,7 @@ BOOL wf_authenticate(freerdp* instance, char** username, char** password, char** if (status != NO_ERROR) { - fprintf(stderr, "CredUIPromptForCredentials unexpected status: 0x%08X\n", status); + DEBUG_WARN( "CredUIPromptForCredentials unexpected status: 0x%08X\n", status); return FALSE; } @@ -496,7 +496,7 @@ BOOL wf_authenticate(freerdp* instance, char** username, char** password, char** status = CredUIParseUserNameA(UserName, User, sizeof(User), Domain, sizeof(Domain)); - //fprintf(stderr, "User: %s Domain: %s Password: %s\n", User, Domain, Password); + //DEBUG_WARN( "User: %s Domain: %s Password: %s\n", User, Domain, Password); *username = _strdup(User); @@ -590,7 +590,7 @@ static BOOL wf_auto_reconnect(freerdp* instance) return FALSE; /* A network disconnect was detected */ - fprintf(stderr, "Network disconnect!\n"); + DEBUG_WARN( "Network disconnect!\n"); if (!instance->settings->AutoReconnectionEnabled) { /* No auto-reconnect - just quit */ @@ -605,7 +605,7 @@ static BOOL wf_auto_reconnect(freerdp* instance) return FALSE; /* Attempt the next reconnect */ - fprintf(stderr, "Attempting reconnect (%u of %u)\n", num_retries, max_retries); + DEBUG_WARN( "Attempting reconnect (%u of %u)\n", num_retries, max_retries); if (freerdp_reconnect(instance)) { return TRUE; @@ -614,7 +614,7 @@ static BOOL wf_auto_reconnect(freerdp* instance) Sleep(5000); } - fprintf(stderr, "Maximum reconnect retries exceeded\n"); + DEBUG_WARN( "Maximum reconnect retries exceeded\n"); return FALSE; } @@ -784,13 +784,13 @@ DWORD WINAPI wf_client_thread(LPVOID lpParam) { if (freerdp_get_fds(instance, rfds, &rcount, wfds, &wcount) != TRUE) { - fprintf(stderr, "Failed to get FreeRDP file descriptor\n"); + DEBUG_WARN( "Failed to get FreeRDP file descriptor\n"); break; } } if (wf_get_fds(instance, rfds, &rcount, wfds, &wcount) != TRUE) { - fprintf(stderr, "Failed to get wfreerdp file descriptor\n"); + DEBUG_WARN( "Failed to get wfreerdp file descriptor\n"); break; } @@ -798,7 +798,7 @@ DWORD WINAPI wf_client_thread(LPVOID lpParam) { if (freerdp_channels_get_fds(channels, instance, rfds, &rcount, wfds, &wcount) != TRUE) { - fprintf(stderr, "Failed to get channel manager file descriptor\n"); + DEBUG_WARN( "Failed to get channel manager file descriptor\n"); break; } } @@ -816,14 +816,14 @@ DWORD WINAPI wf_client_thread(LPVOID lpParam) /* exit if nothing to do */ if (fds_count == 0) { - fprintf(stderr, "wfreerdp_run: fds_count is zero\n"); + DEBUG_WARN( "wfreerdp_run: fds_count is zero\n"); //break; } /* do the wait */ if (MsgWaitForMultipleObjects(fds_count, fds, FALSE, 1000, QS_ALLINPUT) == WAIT_FAILED) { - fprintf(stderr, "wfreerdp_run: WaitForMultipleObjects failed: 0x%04X\n", GetLastError()); + DEBUG_WARN( "wfreerdp_run: WaitForMultipleObjects failed: 0x%04X\n", GetLastError()); break; } @@ -834,7 +834,7 @@ DWORD WINAPI wf_client_thread(LPVOID lpParam) if (wf_auto_reconnect(instance)) continue; - fprintf(stderr, "Failed to check FreeRDP file descriptor\n"); + DEBUG_WARN( "Failed to check FreeRDP file descriptor\n"); break; } } @@ -844,7 +844,7 @@ DWORD WINAPI wf_client_thread(LPVOID lpParam) } if (wf_check_fds(instance) != TRUE) { - fprintf(stderr, "Failed to check wfreerdp file descriptor\n"); + DEBUG_WARN( "Failed to check wfreerdp file descriptor\n"); break; } @@ -852,7 +852,7 @@ DWORD WINAPI wf_client_thread(LPVOID lpParam) { if (freerdp_channels_check_fds(channels, instance) != TRUE) { - fprintf(stderr, "Failed to check channel manager file descriptor\n"); + DEBUG_WARN( "Failed to check channel manager file descriptor\n"); break; } @@ -960,7 +960,7 @@ DWORD WINAPI wf_keyboard_thread(LPVOID lpParam) { if (status == -1) { - fprintf(stderr, "keyboard thread error getting message\n"); + DEBUG_WARN( "keyboard thread error getting message\n"); break; } else @@ -974,7 +974,7 @@ DWORD WINAPI wf_keyboard_thread(LPVOID lpParam) } else { - fprintf(stderr, "failed to install keyboard hook\n"); + DEBUG_WARN( "failed to install keyboard hook\n"); } printf("Keyboard thread exited.\n"); @@ -1002,7 +1002,7 @@ int freerdp_client_focus_out(wfContext* wfc) int freerdp_client_set_window_size(wfContext* wfc, int width, int height) { - fprintf(stderr, "freerdp_client_set_window_size %d, %d", width, height); + DEBUG_WARN( "freerdp_client_set_window_size %d, %d", width, height); if ((width != wfc->client_width) || (height != wfc->client_height)) { @@ -1027,7 +1027,7 @@ int freerdp_client_load_settings_from_rdp_file(wfContext* wfc, char* filename) freerdp_client_rdp_file_free(wfc->connectionRdpFile); wfc->connectionRdpFile = freerdp_client_rdp_file_new(); - fprintf(stderr, "Using connection file: %s\n", settings->ConnectionFile); + DEBUG_WARN( "Using connection file: %s\n", settings->ConnectionFile); if (!freerdp_client_parse_rdp_file(wfc->connectionRdpFile, settings->ConnectionFile)) { diff --git a/client/X11/generate_argument_docbook.c b/client/X11/generate_argument_docbook.c index 4b49f34da..c1a3035e7 100644 --- a/client/X11/generate_argument_docbook.c +++ b/client/X11/generate_argument_docbook.c @@ -26,7 +26,7 @@ LPSTR tr_esc_str(LPCSTR arg) tmp = (LPSTR)realloc(tmp, ds * sizeof(CHAR)); if(NULL == tmp) { - fprintf(stderr, "Could not allocate string buffer."); + DEBUG_WARN( "Could not allocate string buffer."); exit(-2); } /* Copy character for character and check, if it is necessary to escape. */ @@ -40,7 +40,7 @@ LPSTR tr_esc_str(LPCSTR arg) tmp = (LPSTR)realloc(tmp, ds * sizeof(CHAR)); if(NULL == tmp) { - fprintf(stderr, "Could not reallocate string buffer."); + DEBUG_WARN( "Could not reallocate string buffer."); exit(-3); } tmp[cs++] = '&'; @@ -53,7 +53,7 @@ LPSTR tr_esc_str(LPCSTR arg) tmp = (LPSTR)realloc(tmp, ds * sizeof(CHAR)); if(NULL == tmp) { - fprintf(stderr, "Could not reallocate string buffer."); + DEBUG_WARN( "Could not reallocate string buffer."); exit(-4); } tmp[cs++] = '&'; @@ -66,7 +66,7 @@ LPSTR tr_esc_str(LPCSTR arg) tmp = (LPSTR)realloc(tmp, ds * sizeof(CHAR)); if(NULL == tmp) { - fprintf(stderr, "Could not reallocate string buffer."); + DEBUG_WARN( "Could not reallocate string buffer."); exit(-5); } tmp[cs++] = '&'; @@ -81,7 +81,7 @@ LPSTR tr_esc_str(LPCSTR arg) tmp = (LPSTR)realloc(tmp, ds * sizeof(CHAR)); if(NULL == tmp) { - fprintf(stderr, "Could not reallocate string buffer."); + DEBUG_WARN( "Could not reallocate string buffer."); exit(-6); } tmp[cs++] = '&'; @@ -96,7 +96,7 @@ LPSTR tr_esc_str(LPCSTR arg) tmp = (LPSTR)realloc(tmp, ds * sizeof(CHAR)); if(NULL == tmp) { - fprintf(stderr, "Could not reallocate string buffer."); + DEBUG_WARN( "Could not reallocate string buffer."); exit(-7); } tmp[cs++] = '&'; @@ -125,7 +125,7 @@ int main(int argc, char *argv[]) fp = fopen(fname, "w"); if(NULL == fp) { - fprintf(stderr, "Could not open '%s' for writing.", fname); + DEBUG_WARN( "Could not open '%s' for writing.", fname); return -1; } /* The tag used as header in the manpage */ @@ -136,7 +136,7 @@ int main(int argc, char *argv[]) * compatible XML */ if(elements < 2) { - fprintf(stderr, "The argument array 'args' is empty, writing an empty file."); + DEBUG_WARN( "The argument array 'args' is empty, writing an empty file."); elements = 1; } for(x=0; xdisplay, &pf_count); if(pfs == NULL) { - fprintf(stderr, "xf_get_pixmap_info: XListPixmapFormats failed\n"); + DEBUG_WARN( "xf_get_pixmap_info: XListPixmapFormats failed\n"); return 1; } for(i = 0; i < pf_count; i++) @@ -592,13 +592,13 @@ BOOL xf_get_pixmap_info(xfContext *xfc) template.screen = xfc->screen_number; if(XGetWindowAttributes(xfc->display, RootWindowOfScreen(xfc->screen), &window_attributes) == 0) { - fprintf(stderr, "xf_get_pixmap_info: XGetWindowAttributes failed\n"); + DEBUG_WARN( "xf_get_pixmap_info: XGetWindowAttributes failed\n"); return FALSE; } vis = XGetVisualInfo(xfc->display, VisualClassMask | VisualScreenMask, &template, &vi_count); if(vis == NULL) { - fprintf(stderr, "xf_get_pixmap_info: XGetVisualInfo failed\n"); + DEBUG_WARN( "xf_get_pixmap_info: XGetVisualInfo failed\n"); return FALSE; } vi = NULL; @@ -637,7 +637,7 @@ int xf_error_handler(Display *d, XErrorEvent *ev) char buf[256]; int do_abort = TRUE; XGetErrorText(d, ev->error_code, buf, sizeof(buf)); - fprintf(stderr, "%s", buf); + DEBUG_WARN( "%s", buf); if(do_abort) abort(); _def_error_handler(d, ev); @@ -721,20 +721,20 @@ BOOL xf_pre_connect(freerdp *instance) { if(!XInitThreads()) { - fprintf(stderr, "warning: XInitThreads() failure\n"); + DEBUG_WARN( "warning: XInitThreads() failure\n"); xfc->UseXThreads = FALSE; } } xfc->display = XOpenDisplay(NULL); if(!xfc->display) { - fprintf(stderr, "xf_pre_connect: failed to open display: %s\n", XDisplayName(NULL)); - fprintf(stderr, "Please check that the $DISPLAY environment variable is properly set.\n"); + DEBUG_WARN( "xf_pre_connect: failed to open display: %s\n", XDisplayName(NULL)); + DEBUG_WARN( "Please check that the $DISPLAY environment variable is properly set.\n"); return FALSE; } if(xfc->debug) { - fprintf(stderr, "Enabling X11 debug mode.\n"); + DEBUG_WARN( "Enabling X11 debug mode.\n"); XSynchronize(xfc->display, TRUE); _def_error_handler = XSetErrorHandler(_xf_error_handler); } @@ -750,15 +750,15 @@ BOOL xf_pre_connect(freerdp *instance) /* Check --authonly has a username and password. */ if(settings->Username == NULL) { - fprintf(stderr, "--authonly, but no -u username. Please provide one.\n"); + DEBUG_WARN( "--authonly, but no -u username. Please provide one.\n"); return FALSE; } if(settings->Password == NULL) { - fprintf(stderr, "--authonly, but no -p password. Please provide one.\n"); + DEBUG_WARN( "--authonly, but no -p password. Please provide one.\n"); return FALSE; } - fprintf(stderr, "Authentication only. Don't connect to X.\n"); + DEBUG_WARN( "Authentication only. Don't connect to X.\n"); /* Avoid XWindows initialization and configuration below. */ return TRUE; } @@ -1225,7 +1225,7 @@ BOOL xf_auto_reconnect(freerdp *instance) if(freerdp_error_info(instance) != 0) return FALSE; /* A network disconnect was detected */ - fprintf(stderr, "Network disconnect!\n"); + DEBUG_WARN( "Network disconnect!\n"); if(!instance->settings->AutoReconnectionEnabled) { /* No auto-reconnect - just quit */ @@ -1240,7 +1240,7 @@ BOOL xf_auto_reconnect(freerdp *instance) return FALSE; } /* Attempt the next reconnect */ - fprintf(stderr, "Attempting reconnect (%u of %u)\n", num_retries, max_retries); + DEBUG_WARN( "Attempting reconnect (%u of %u)\n", num_retries, max_retries); if(freerdp_reconnect(instance)) { xfc->disconnect = FALSE; @@ -1248,7 +1248,7 @@ BOOL xf_auto_reconnect(freerdp *instance) } sleep(5); } - fprintf(stderr, "Maximum reconnect retries exceeded\n"); + DEBUG_WARN( "Maximum reconnect retries exceeded\n"); return FALSE; } @@ -1301,7 +1301,7 @@ void *xf_thread(void *param) if(instance->settings->AuthenticationOnly) { freerdp_disconnect(instance); - fprintf(stderr, "Authentication only, exit status %d\n", !status); + DEBUG_WARN( "Authentication only, exit status %d\n", !status); ExitThread(exit_code); } if(!status) @@ -1352,7 +1352,7 @@ void *xf_thread(void *param) { if(freerdp_get_fds(instance, rfds, &rcount, wfds, &wcount) != TRUE) { - fprintf(stderr, "Failed to get FreeRDP file descriptor\n"); + DEBUG_WARN( "Failed to get FreeRDP file descriptor\n"); exit_code = XF_EXIT_CONN_FAILED; break; } @@ -1361,7 +1361,7 @@ void *xf_thread(void *param) { if(freerdp_channels_get_fds(channels, instance, rfds, &rcount, wfds, &wcount) != TRUE) { - fprintf(stderr, "Failed to get channel manager file descriptor\n"); + DEBUG_WARN( "Failed to get channel manager file descriptor\n"); exit_code = XF_EXIT_CONN_FAILED; break; } @@ -1370,7 +1370,7 @@ void *xf_thread(void *param) { if(xf_get_fds(instance, rfds, &rcount, wfds, &wcount) != TRUE) { - fprintf(stderr, "Failed to get xfreerdp file descriptor\n"); + DEBUG_WARN( "Failed to get xfreerdp file descriptor\n"); exit_code = XF_EXIT_CONN_FAILED; break; } @@ -1407,7 +1407,7 @@ void *xf_thread(void *param) if(!((errno == EAGAIN) || (errno == EWOULDBLOCK) || (errno == EINPROGRESS) || (errno == EINTR))) /* signal occurred */ { - fprintf(stderr, "xfreerdp_run: select failed\n"); + DEBUG_WARN( "xfreerdp_run: select failed\n"); break; } } @@ -1417,7 +1417,7 @@ void *xf_thread(void *param) { if(xf_auto_reconnect(instance)) continue; - fprintf(stderr, "Failed to check FreeRDP file descriptor\n"); + DEBUG_WARN( "Failed to check FreeRDP file descriptor\n"); break; } } @@ -1425,7 +1425,7 @@ void *xf_thread(void *param) { if(freerdp_channels_check_fds(channels, instance) != TRUE) { - fprintf(stderr, "Failed to check channel manager file descriptor\n"); + DEBUG_WARN( "Failed to check channel manager file descriptor\n"); break; } xf_process_channel_event(channels, instance); @@ -1434,7 +1434,7 @@ void *xf_thread(void *param) { if(xf_process_x_events(instance) != TRUE) { - fprintf(stderr, "Closed from X11\n"); + DEBUG_WARN( "Closed from X11\n"); break; } } @@ -1444,7 +1444,7 @@ void *xf_thread(void *param) { if(!freerdp_message_queue_process_pending_messages(instance, FREERDP_INPUT_MESSAGE_QUEUE)) { - fprintf(stderr, "User Disconnect\n"); + DEBUG_WARN( "User Disconnect\n"); xfc->disconnect = TRUE; break; } @@ -1559,7 +1559,7 @@ static int xfreerdp_client_start(rdpContext *context) rdpSettings *settings = context->settings; if(!settings->ServerHostname) { - fprintf(stderr, "error: server hostname was not specified with /v:[:port]\n"); + DEBUG_WARN( "error: server hostname was not specified with /v:[:port]\n"); return -1; } xfc->thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) xf_thread, diff --git a/client/X11/xf_cliprdr.c b/client/X11/xf_cliprdr.c index eabdac19e..b37fa6f80 100644 --- a/client/X11/xf_cliprdr.c +++ b/client/X11/xf_cliprdr.c @@ -143,15 +143,15 @@ void xf_cliprdr_init(xfContext* xfc, rdpChannels* channels) } else { - fprintf(stderr, "%s: Error querying X Fixes extension version\n", __FUNCTION__); + DEBUG_WARN( "%s: Error querying X Fixes extension version\n", __FUNCTION__); } } else { - fprintf(stderr, "%s: Error loading X Fixes extension\n", __FUNCTION__); + DEBUG_WARN( "%s: Error loading X Fixes extension\n", __FUNCTION__); } #else - fprintf(stderr, "Warning: Using clipboard redirection without XFIXES extension is strongly discouraged!\n"); + DEBUG_WARN( "Warning: Using clipboard redirection without XFIXES extension is strongly discouraged!\n"); #endif n = 0; @@ -970,7 +970,7 @@ static BOOL xf_cliprdr_process_dib(clipboardContext* cb, BYTE* data, int size) Stream_Read_UINT16(s, bpp); if ((bpp < 1) || (bpp > 32)) { - fprintf(stderr, "%s: invalid bpp value %d", __FUNCTION__, bpp); + DEBUG_WARN( "%s: invalid bpp value %d", __FUNCTION__, bpp); return FALSE; } diff --git a/client/X11/xf_gdi.c b/client/X11/xf_gdi.c index 1ab20af06..2b6bce3ff 100644 --- a/client/X11/xf_gdi.c +++ b/client/X11/xf_gdi.c @@ -68,7 +68,7 @@ BOOL xf_set_rop2(xfContext* xfc, int rop2) { if ((rop2 < 0x01) || (rop2 > 0x10)) { - fprintf(stderr, "Unsupported ROP2: %d\n", rop2); + DEBUG_WARN( "Unsupported ROP2: %d\n", rop2); return FALSE; } @@ -204,7 +204,7 @@ BOOL xf_set_rop3(xfContext* xfc, int rop3) if (function < 0) { - fprintf(stderr, "Unsupported ROP3: 0x%08X\n", rop3); + DEBUG_WARN( "Unsupported ROP3: 0x%08X\n", rop3); XSetFunction(xfc->display, xfc->gc, GXclear); return FALSE; } @@ -398,7 +398,7 @@ void xf_gdi_patblt(rdpContext* context, PATBLT_ORDER* patblt) } else { - fprintf(stderr, "unimplemented brush style:%d\n", brush->style); + DEBUG_WARN( "unimplemented brush style:%d\n", brush->style); } if (xfc->drawing == xfc->primary) @@ -522,7 +522,7 @@ void xf_gdi_multi_opaque_rect(rdpContext* context, MULTI_OPAQUE_RECT_ORDER* mult void xf_gdi_draw_nine_grid(rdpContext* context, DRAW_NINE_GRID_ORDER* draw_nine_grid) { - fprintf(stderr, "DrawNineGrid\n"); + DEBUG_WARN( "DrawNineGrid\n"); } void xf_gdi_line_to(rdpContext* context, LINE_TO_ORDER* line_to) @@ -713,7 +713,7 @@ void xf_gdi_mem3blt(rdpContext* context, MEM3BLT_ORDER* mem3blt) } else { - fprintf(stderr, "Mem3Blt unimplemented brush style:%d\n", brush->style); + DEBUG_WARN( "Mem3Blt unimplemented brush style:%d\n", brush->style); } XCopyArea(xfc->display, bitmap->pixmap, xfc->drawing, xfc->gc, @@ -777,7 +777,7 @@ void xf_gdi_polygon_sc(rdpContext* context, POLYGON_SC_ORDER* polygon_sc) break; default: - fprintf(stderr, "PolygonSC unknown fillMode: %d\n", polygon_sc->fillMode); + DEBUG_WARN( "PolygonSC unknown fillMode: %d\n", polygon_sc->fillMode); break; } @@ -839,7 +839,7 @@ void xf_gdi_polygon_cb(rdpContext* context, POLYGON_CB_ORDER* polygon_cb) break; default: - fprintf(stderr, "PolygonCB unknown fillMode: %d\n", polygon_cb->fillMode); + DEBUG_WARN( "PolygonCB unknown fillMode: %d\n", polygon_cb->fillMode); break; } @@ -897,7 +897,7 @@ void xf_gdi_polygon_cb(rdpContext* context, POLYGON_CB_ORDER* polygon_cb) } else { - fprintf(stderr, "PolygonCB unimplemented brush style:%d\n", brush->style); + DEBUG_WARN( "PolygonCB unimplemented brush style:%d\n", brush->style); } XSetFunction(xfc->display, xfc->gc, GXcopy); @@ -908,12 +908,12 @@ void xf_gdi_polygon_cb(rdpContext* context, POLYGON_CB_ORDER* polygon_cb) void xf_gdi_ellipse_sc(rdpContext* context, ELLIPSE_SC_ORDER* ellipse_sc) { - fprintf(stderr, "EllipseSC\n"); + DEBUG_WARN( "EllipseSC\n"); } void xf_gdi_ellipse_cb(rdpContext* context, ELLIPSE_CB_ORDER* ellipse_cb) { - fprintf(stderr, "EllipseCB\n"); + DEBUG_WARN( "EllipseCB\n"); } void xf_gdi_surface_frame_marker(rdpContext* context, SURFACE_FRAME_MARKER* surface_frame_marker) @@ -1111,12 +1111,12 @@ void xf_gdi_surface_bits(rdpContext* context, SURFACE_BITS_COMMAND* surface_bits } else { - fprintf(stderr, "Invalid bitmap size - data is %d bytes for %dx%d\n update", surface_bits_command->bitmapDataLength, surface_bits_command->width, surface_bits_command->height); + DEBUG_WARN( "Invalid bitmap size - data is %d bytes for %dx%d\n update", surface_bits_command->bitmapDataLength, surface_bits_command->width, surface_bits_command->height); } } else { - fprintf(stderr, "Unsupported codecID %d\n", surface_bits_command->codecID); + DEBUG_WARN( "Unsupported codecID %d\n", surface_bits_command->codecID); } xf_unlock_x11(xfc, FALSE); diff --git a/client/X11/xf_graphics.c b/client/X11/xf_graphics.c index 83e815cbf..7bb8c050c 100644 --- a/client/X11/xf_graphics.c +++ b/client/X11/xf_graphics.c @@ -141,7 +141,7 @@ void xf_Bitmap_Decompress(rdpContext* context, rdpBitmap* bitmap, switch (codec_id) { case RDP_CODEC_ID_NSCODEC: - fprintf(stderr, "xf_Bitmap_Decompress: nsc not done\n"); + DEBUG_WARN( "xf_Bitmap_Decompress: nsc not done\n"); break; case RDP_CODEC_ID_REMOTEFX: @@ -150,7 +150,7 @@ void xf_Bitmap_Decompress(rdpContext* context, rdpBitmap* bitmap, if (!msg) { - fprintf(stderr, "xf_Bitmap_Decompress: rfx Decompression Failed\n"); + DEBUG_WARN( "xf_Bitmap_Decompress: rfx Decompression Failed\n"); } else { @@ -173,7 +173,7 @@ void xf_Bitmap_Decompress(rdpContext* context, rdpBitmap* bitmap, case RDP_CODEC_ID_JPEG: if (!jpeg_decompress(data, bitmap->data, width, height, length, bpp)) { - fprintf(stderr, "xf_Bitmap_Decompress: jpeg Decompression Failed\n"); + DEBUG_WARN( "xf_Bitmap_Decompress: jpeg Decompression Failed\n"); } break; @@ -184,7 +184,7 @@ void xf_Bitmap_Decompress(rdpContext* context, rdpBitmap* bitmap, if (!status) { - fprintf(stderr, "xf_Bitmap_Decompress: Bitmap Decompression Failed\n"); + DEBUG_WARN( "xf_Bitmap_Decompress: Bitmap Decompression Failed\n"); } } else diff --git a/client/X11/xf_input.c b/client/X11/xf_input.c index 9549bdb3a..067c0e780 100644 --- a/client/X11/xf_input.c +++ b/client/X11/xf_input.c @@ -624,7 +624,7 @@ int xf_input_touch_remote(xfContext* xfc, XIDeviceEvent* event, int evtype) } else if (evtype == XI_TouchUpdate) { - printf("TouchUpdate: %d\n", touchId); + DEBUG_MSG("TouchUpdate: %d\n", touchId); contactId = rdpei->TouchUpdate(rdpei, touchId, x, y); } else if (evtype == XI_TouchEnd) diff --git a/client/X11/xf_keyboard.c b/client/X11/xf_keyboard.c index 175e83643..284059dd1 100644 --- a/client/X11/xf_keyboard.c +++ b/client/X11/xf_keyboard.c @@ -191,7 +191,7 @@ void xf_keyboard_send_key(xfContext* xfc, BOOL down, BYTE keycode) if (rdp_scancode == RDP_SCANCODE_UNKNOWN) { - fprintf(stderr, "Unknown key with X keycode 0x%02x\n", keycode); + DEBUG_WARN( "Unknown key with X keycode 0x%02x\n", keycode); } else if (rdp_scancode == RDP_SCANCODE_PAUSE && !xf_keyboard_key_pressed(xfc, XK_Control_L) && !xf_keyboard_key_pressed(xfc, XK_Control_R)) diff --git a/client/X11/xf_rail.c b/client/X11/xf_rail.c index 8b9318768..039f74ef6 100644 --- a/client/X11/xf_rail.c +++ b/client/X11/xf_rail.c @@ -497,7 +497,7 @@ void xf_process_rail_exec_result_event(xfContext* xfc, rdpChannels* channels, wM if (exec_result->execResult != RAIL_EXEC_S_OK) { - fprintf(stderr, "RAIL exec error: execResult=%s NtError=0x%X\n", + DEBUG_WARN( "RAIL exec error: execResult=%s NtError=0x%X\n", error_code_names[exec_result->execResult], exec_result->rawResult); xfc->disconnect = True; } @@ -660,7 +660,7 @@ void xf_process_rail_appid_resp_event(xfContext* xfc, rdpChannels* channels, wMe RAIL_GET_APPID_RESP_ORDER* appid_resp = (RAIL_GET_APPID_RESP_ORDER*) event->wParam; - fprintf(stderr, "Server Application ID Response PDU: windowId=0x%X " + DEBUG_WARN( "Server Application ID Response PDU: windowId=0x%X " "applicationId=(length=%d dump)\n", appid_resp->windowId, 512); @@ -672,7 +672,7 @@ void xf_process_rail_langbarinfo_event(xfContext* xfc, rdpChannels* channels, wM RAIL_LANGBAR_INFO_ORDER* langbar = (RAIL_LANGBAR_INFO_ORDER*) event->wParam; - fprintf(stderr, "Language Bar Information PDU: languageBarStatus=0x%X\n", + DEBUG_WARN( "Language Bar Information PDU: languageBarStatus=0x%X\n", langbar->languageBarStatus); } diff --git a/client/X11/xf_tsmf.c b/client/X11/xf_tsmf.c index 131d2ea2b..72acb48cb 100644 --- a/client/X11/xf_tsmf.c +++ b/client/X11/xf_tsmf.c @@ -140,7 +140,7 @@ void xf_tsmf_init(xfContext* xfc, long xv_port) XFree(attr); #ifdef WITH_DEBUG_XV - fprintf(stderr, "xf_tsmf_init: pixel format "); + DEBUG_WARN( "xf_tsmf_init: pixel format "); #endif fo = XvListImageFormats(xfc->display, xv->xv_port, &ret); if (ret > 0) @@ -152,7 +152,7 @@ void xf_tsmf_init(xfContext* xfc, long xv_port) { xv->xv_pixfmts[i] = fo[i].id; #ifdef WITH_DEBUG_XV - fprintf(stderr, "%c%c%c%c ", ((char*)(xv->xv_pixfmts + i))[0], ((char*)(xv->xv_pixfmts + i))[1], + DEBUG_WARN( "%c%c%c%c ", ((char*)(xv->xv_pixfmts + i))[0], ((char*)(xv->xv_pixfmts + i))[1], ((char*)(xv->xv_pixfmts + i))[2], ((char*)(xv->xv_pixfmts + i))[3]); #endif } @@ -160,7 +160,7 @@ void xf_tsmf_init(xfContext* xfc, long xv_port) } XFree(fo); #ifdef WITH_DEBUG_XV - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); #endif } diff --git a/client/common/cmdline.c b/client/common/cmdline.c index 480f9f21b..a1e8b0f5d 100644 --- a/client/common/cmdline.c +++ b/client/common/cmdline.c @@ -32,6 +32,7 @@ #include #include +#include #include #include @@ -1190,7 +1191,7 @@ int freerdp_client_settings_parse_command_line_arguments(rdpSettings* settings, if (compatibility) { - fprintf(stderr, "WARNING: Using deprecated command-line interface!\n"); + DEBUG_WARN( "WARNING: Using deprecated command-line interface!\n"); return freerdp_client_parse_old_command_line_arguments(argc, argv, settings); } else @@ -1374,7 +1375,7 @@ int freerdp_client_settings_parse_command_line_arguments(rdpSettings* settings, if (!id) { - fprintf(stderr, "Could not identify keyboard layout: %s\n", arg->Value); + DEBUG_WARN( "Could not identify keyboard layout: %s\n", arg->Value); } } @@ -1732,7 +1733,7 @@ int freerdp_client_settings_parse_command_line_arguments(rdpSettings* settings, } else { - fprintf(stderr, "unknown protocol security: %s\n", arg->Value); + DEBUG_WARN( "unknown protocol security: %s\n", arg->Value); } } CommandLineSwitchCase(arg, "sec-rdp") @@ -1878,7 +1879,7 @@ int freerdp_client_settings_parse_command_line_arguments(rdpSettings* settings, } else { - fprintf(stderr, "reconnect-cookie: invalid base64 '%s'\n", + DEBUG_WARN( "reconnect-cookie: invalid base64 '%s'\n", arg->Value); } } @@ -1943,7 +1944,7 @@ int freerdp_client_load_static_channel_addin(rdpChannels* channels, rdpSettings* { if (freerdp_channels_client_load(channels, settings, entry, data) == 0) { - fprintf(stderr, "loading channel %s\n", name); + DEBUG_WARN( "loading channel %s\n", name); return 0; } } diff --git a/client/common/compatibility.c b/client/common/compatibility.c index aeda88a2e..1c68c3d7f 100644 --- a/client/common/compatibility.c +++ b/client/common/compatibility.c @@ -27,6 +27,7 @@ #include #include #include +#include #include #include @@ -121,7 +122,7 @@ int freerdp_client_old_process_plugin(rdpSettings* settings, ADDIN_ARGV* args) if (strcmp(args->argv[0], "cliprdr") == 0) { settings->RedirectClipboard = TRUE; - fprintf(stderr, "--plugin cliprdr -> +clipboard\n"); + DEBUG_WARN( "--plugin cliprdr -> +clipboard\n"); } else if (strcmp(args->argv[0], "rdpdr") == 0) { @@ -437,37 +438,37 @@ int freerdp_client_parse_old_command_line_arguments(int argc, char** argv, rdpSe CommandLineSwitchCase(arg, "0") { settings->ConsoleSession = TRUE; - fprintf(stderr, "-0 -> /admin\n"); + DEBUG_WARN( "-0 -> /admin\n"); } CommandLineSwitchCase(arg, "a") { settings->ColorDepth = atoi(arg->Value); - fprintf(stderr, "-a %s -> /bpp:%s\n", arg->Value, arg->Value); + DEBUG_WARN( "-a %s -> /bpp:%s\n", arg->Value, arg->Value); } CommandLineSwitchCase(arg, "c") { settings->ShellWorkingDirectory = _strdup(arg->Value); - fprintf(stderr, "-c %s -> /shell-dir:%s\n", arg->Value, arg->Value); + DEBUG_WARN( "-c %s -> /shell-dir:%s\n", arg->Value, arg->Value); } CommandLineSwitchCase(arg, "D") { settings->Decorations = FALSE; - fprintf(stderr, "-D -> -decorations\n"); + DEBUG_WARN( "-D -> -decorations\n"); } CommandLineSwitchCase(arg, "T") { settings->WindowTitle = _strdup(arg->Value); - fprintf(stderr, "-T %s -> /title:%s\n", arg->Value, arg->Value); + DEBUG_WARN( "-T %s -> /title:%s\n", arg->Value, arg->Value); } CommandLineSwitchCase(arg, "d") { settings->Domain = _strdup(arg->Value); - fprintf(stderr, "-d %s -> /d:%s\n", arg->Value, arg->Value); + DEBUG_WARN( "-d %s -> /d:%s\n", arg->Value, arg->Value); } CommandLineSwitchCase(arg, "f") { settings->Fullscreen = TRUE; - fprintf(stderr, "-f -> /f\n"); + DEBUG_WARN( "-f -> /f\n"); } CommandLineSwitchCase(arg, "g") { @@ -484,50 +485,50 @@ int freerdp_client_parse_old_command_line_arguments(int argc, char** argv, rdpSe free(str); - fprintf(stderr, "-g %s -> /size:%s or /w:%d /h:%d\n", arg->Value, arg->Value, + DEBUG_WARN( "-g %s -> /size:%s or /w:%d /h:%d\n", arg->Value, arg->Value, settings->DesktopWidth, settings->DesktopHeight); } CommandLineSwitchCase(arg, "k") { sscanf(arg->Value, "%X", &(settings->KeyboardLayout)); - fprintf(stderr, "-k %s -> /kbd:%s\n", arg->Value, arg->Value); + DEBUG_WARN( "-k %s -> /kbd:%s\n", arg->Value, arg->Value); } CommandLineSwitchCase(arg, "K") { settings->GrabKeyboard = FALSE; - fprintf(stderr, "-K -> -grab-keyboard\n"); + DEBUG_WARN( "-K -> -grab-keyboard\n"); } CommandLineSwitchCase(arg, "n") { settings->ClientHostname = _strdup(arg->Value); - fprintf(stderr, "-n -> /client-hostname:%s\n", arg->Value); + DEBUG_WARN( "-n -> /client-hostname:%s\n", arg->Value); } CommandLineSwitchCase(arg, "o") { settings->RemoteConsoleAudio = TRUE; - fprintf(stderr, "-o -> /audio-mode:1\n"); + DEBUG_WARN( "-o -> /audio-mode:1\n"); } CommandLineSwitchCase(arg, "p") { settings->Password = _strdup(arg->Value); - fprintf(stderr, "-p ****** -> /p:******\n"); + DEBUG_WARN( "-p ****** -> /p:******\n"); /* Hide the value from 'ps'. */ FillMemory(arg->Value, strlen(arg->Value), '*'); } CommandLineSwitchCase(arg, "s") { settings->AlternateShell = _strdup(arg->Value); - fprintf(stderr, "-s %s -> /shell:%s\n", arg->Value, arg->Value); + DEBUG_WARN( "-s %s -> /shell:%s\n", arg->Value, arg->Value); } CommandLineSwitchCase(arg, "t") { settings->ServerPort = atoi(arg->Value); - fprintf(stderr, "-t %s -> /port:%s\n", arg->Value, arg->Value); + DEBUG_WARN( "-t %s -> /port:%s\n", arg->Value, arg->Value); } CommandLineSwitchCase(arg, "u") { settings->Username = _strdup(arg->Value); - fprintf(stderr, "-u %s -> /u:%s\n", arg->Value, arg->Value); + DEBUG_WARN( "-u %s -> /u:%s\n", arg->Value, arg->Value); } CommandLineSwitchCase(arg, "x") { @@ -555,31 +556,31 @@ int freerdp_client_parse_old_command_line_arguments(int argc, char** argv, rdpSe freerdp_performance_flags_split(settings); } - fprintf(stderr, "-x %s -> /network:", arg->Value); + DEBUG_WARN( "-x %s -> /network:", arg->Value); if (type == CONNECTION_TYPE_MODEM) - fprintf(stderr, "modem"); + DEBUG_WARN( "modem"); else if (CONNECTION_TYPE_BROADBAND_HIGH) - fprintf(stderr, "broadband"); + DEBUG_WARN( "broadband"); else if (CONNECTION_TYPE_LAN) - fprintf(stderr, "lan"); + DEBUG_WARN( "lan"); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); } CommandLineSwitchCase(arg, "X") { settings->ParentWindowId = strtol(arg->Value, NULL, 0); - fprintf(stderr, "-X %s -> /parent-window:%s\n", arg->Value, arg->Value); + DEBUG_WARN( "-X %s -> /parent-window:%s\n", arg->Value, arg->Value); } CommandLineSwitchCase(arg, "z") { settings->CompressionEnabled = TRUE; - fprintf(stderr, "-z -> /compression\n"); + DEBUG_WARN( "-z -> /compression\n"); } CommandLineSwitchCase(arg, "app") { settings->RemoteApplicationMode = TRUE; - fprintf(stderr, "--app -> /app: + program name or alias\n"); + DEBUG_WARN( "--app -> /app: + program name or alias\n"); } CommandLineSwitchCase(arg, "ext") { @@ -588,7 +589,7 @@ int freerdp_client_parse_old_command_line_arguments(int argc, char** argv, rdpSe CommandLineSwitchCase(arg, "no-auth") { settings->Authentication = FALSE; - fprintf(stderr, "--no-auth -> -authentication\n"); + DEBUG_WARN( "--no-auth -> -authentication\n"); } CommandLineSwitchCase(arg, "authonly") { @@ -602,12 +603,12 @@ int freerdp_client_parse_old_command_line_arguments(int argc, char** argv, rdpSe { settings->FastPathInput = FALSE; settings->FastPathOutput = FALSE; - fprintf(stderr, "--no-fastpath -> -fast-path\n"); + DEBUG_WARN( "--no-fastpath -> -fast-path\n"); } CommandLineSwitchCase(arg, "no-motion") { settings->MouseMotion = FALSE; - fprintf(stderr, "--no-motion -> -mouse-motion\n"); + DEBUG_WARN( "--no-motion -> -mouse-motion\n"); } CommandLineSwitchCase(arg, "gdi") { @@ -616,26 +617,26 @@ int freerdp_client_parse_old_command_line_arguments(int argc, char** argv, rdpSe else if (strcmp(arg->Value, "hw") == 0) settings->SoftwareGdi = FALSE; - fprintf(stderr, "--gdi %s -> /gdi:%s\n", arg->Value, arg->Value); + DEBUG_WARN( "--gdi %s -> /gdi:%s\n", arg->Value, arg->Value); } CommandLineSwitchCase(arg, "no-osb") { settings->OffscreenSupportLevel = FALSE; - fprintf(stderr, "--no-osb -> -offscreen-cache\n"); + DEBUG_WARN( "--no-osb -> -offscreen-cache\n"); } CommandLineSwitchCase(arg, "no-bmp-cache") { settings->BitmapCacheEnabled = FALSE; - fprintf(stderr, "--no-bmp-cache -> -bitmap-cache\n"); + DEBUG_WARN( "--no-bmp-cache -> -bitmap-cache\n"); } CommandLineSwitchCase(arg, "plugin") { - fprintf(stderr, "--plugin -> /a, /vc, /dvc and channel-specific options\n"); + DEBUG_WARN( "--plugin -> /a, /vc, /dvc and channel-specific options\n"); } CommandLineSwitchCase(arg, "rfx") { settings->RemoteFxCodec = TRUE; - fprintf(stderr, "--rfx -> /rfx\n"); + DEBUG_WARN( "--rfx -> /rfx\n"); } CommandLineSwitchCase(arg, "rfx-mode") { @@ -644,37 +645,37 @@ int freerdp_client_parse_old_command_line_arguments(int argc, char** argv, rdpSe else if (arg->Value[0] == 'i') settings->RemoteFxCodecMode = 0x02; - fprintf(stderr, "--rfx-mode -> /rfx-mode:%s\n", settings->RemoteFxCodecMode ? "image" : "video"); + DEBUG_WARN( "--rfx-mode -> /rfx-mode:%s\n", settings->RemoteFxCodecMode ? "image" : "video"); } CommandLineSwitchCase(arg, "nsc") { settings->NSCodec = TRUE; - fprintf(stderr, "--nsc -> /nsc\n"); + DEBUG_WARN( "--nsc -> /nsc\n"); } CommandLineSwitchCase(arg, "disable-wallpaper") { settings->DisableWallpaper = TRUE; - fprintf(stderr, "--disable-wallpaper -> -wallpaper\n"); + DEBUG_WARN( "--disable-wallpaper -> -wallpaper\n"); } CommandLineSwitchCase(arg, "composition") { settings->AllowDesktopComposition = TRUE; - fprintf(stderr, "--composition -> +composition\n"); + DEBUG_WARN( "--composition -> +composition\n"); } CommandLineSwitchCase(arg, "disable-full-window-drag") { settings->DisableFullWindowDrag = TRUE; - fprintf(stderr, "--disable-full-window-drag -> -window-drag\n"); + DEBUG_WARN( "--disable-full-window-drag -> -window-drag\n"); } CommandLineSwitchCase(arg, "disable-menu-animations") { settings->DisableMenuAnims = TRUE; - fprintf(stderr, "--disable-menu-animations -> -menu-anims\n"); + DEBUG_WARN( "--disable-menu-animations -> -menu-anims\n"); } CommandLineSwitchCase(arg, "disable-theming") { settings->DisableThemes = TRUE; - fprintf(stderr, "--disable-theming -> -themes\n"); + DEBUG_WARN( "--disable-theming -> -themes\n"); } CommandLineSwitchCase(arg, "ntlm") { @@ -683,7 +684,7 @@ int freerdp_client_parse_old_command_line_arguments(int argc, char** argv, rdpSe CommandLineSwitchCase(arg, "ignore-certificate") { settings->IgnoreCertificate = TRUE; - fprintf(stderr, "--ignore-certificate -> /cert-ignore\n"); + DEBUG_WARN( "--ignore-certificate -> /cert-ignore\n"); } CommandLineSwitchCase(arg, "sec") { @@ -709,22 +710,22 @@ int freerdp_client_parse_old_command_line_arguments(int argc, char** argv, rdpSe settings->NlaSecurity = TRUE; } - fprintf(stderr, "--sec %s -> /sec:%s\n", arg->Value, arg->Value); + DEBUG_WARN( "--sec %s -> /sec:%s\n", arg->Value, arg->Value); } CommandLineSwitchCase(arg, "no-rdp") { settings->RdpSecurity = FALSE; - fprintf(stderr, "--no-rdp -> -sec-rdp\n"); + DEBUG_WARN( "--no-rdp -> -sec-rdp\n"); } CommandLineSwitchCase(arg, "no-tls") { settings->TlsSecurity = FALSE; - fprintf(stderr, "--no-tls -> -sec-tls\n"); + DEBUG_WARN( "--no-tls -> -sec-tls\n"); } CommandLineSwitchCase(arg, "no-nla") { settings->NlaSecurity = FALSE; - fprintf(stderr, "--no-nla -> -sec-nla\n"); + DEBUG_WARN( "--no-nla -> -sec-nla\n"); } CommandLineSwitchCase(arg, "secure-checksum") { @@ -739,12 +740,12 @@ int freerdp_client_parse_old_command_line_arguments(int argc, char** argv, rdpSe } while ((arg = CommandLineFindNextArgumentA(arg)) != NULL); - fprintf(stderr, "%s -> /v:%s", settings->ServerHostname, settings->ServerHostname); + DEBUG_WARN( "%s -> /v:%s", settings->ServerHostname, settings->ServerHostname); if (settings->ServerPort != 3389) - fprintf(stderr, " /port:%d", settings->ServerPort); + DEBUG_WARN( " /port:%d", settings->ServerPort); - fprintf(stderr, "\n"); + DEBUG_WARN( "\n"); return 1; } diff --git a/client/common/file.c b/client/common/file.c index c4937343a..fb9599640 100644 --- a/client/common/file.c +++ b/client/common/file.c @@ -21,6 +21,7 @@ #include "config.h" #endif +#include #include #include @@ -54,7 +55,7 @@ BOOL freerdp_client_rdp_file_set_integer(rdpFile* file, const char* name, int va BOOL bStandard = TRUE; #ifdef DEBUG_CLIENT_FILE - fprintf(stderr, "%s:i:%d\n", name, value); + DEBUG_WARN( "%s:i:%d\n", name, value); #endif if (_stricmp(name, "use multimon") == 0) @@ -240,7 +241,7 @@ BOOL freerdp_client_rdp_file_set_string(rdpFile* file, const char* name, const c BOOL bStandard = TRUE; #ifdef DEBUG_CLIENT_FILE - fprintf(stderr, "%s:s:%s\n", name, value); + DEBUG_WARN( "%s:s:%s\n", name, value); #endif if (_stricmp(name, "username") == 0) @@ -665,7 +666,7 @@ BOOL freerdp_client_write_rdp_file(const rdpFile* file, const char* name, BOOL u if (length < 0) { - fprintf(stderr, "freerdp_client_write_rdp_file: error determining buffer size.\n"); + DEBUG_WARN( "freerdp_client_write_rdp_file: error determining buffer size.\n"); return FALSE; } @@ -673,7 +674,7 @@ BOOL freerdp_client_write_rdp_file(const rdpFile* file, const char* name, BOOL u if (freerdp_client_write_rdp_file_buffer(file, buffer, length + 1) != length) { - fprintf(stderr, "freerdp_client_write_rdp_file: error writing to output buffer\n"); + DEBUG_WARN( "freerdp_client_write_rdp_file: error writing to output buffer\n"); free(buffer); return FALSE; } From f73e40d18890820949fcef8e54e0164e765eb358 Mon Sep 17 00:00:00 2001 From: Ian Whyman Date: Fri, 8 Aug 2014 09:05:03 +0100 Subject: [PATCH 077/170] CODEC_ID_* -> AV_CODEC_ID_* --- channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c b/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c index e2c9da2c5..14a88bffa 100644 --- a/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c +++ b/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c @@ -213,28 +213,28 @@ static BOOL tsmf_ffmpeg_set_format(ITSMFDecoder *decoder, TS_AM_MEDIA_TYPE *medi switch(media_type->SubType) { case TSMF_SUB_TYPE_WVC1: - mdecoder->codec_id = CODEC_ID_VC1; + mdecoder->codec_id = AV_CODEC_ID_VC1; break; case TSMF_SUB_TYPE_WMA2: - mdecoder->codec_id = CODEC_ID_WMAV2; + mdecoder->codec_id = AV_CODEC_ID_WMAV2; break; case TSMF_SUB_TYPE_WMA9: - mdecoder->codec_id = CODEC_ID_WMAPRO; + mdecoder->codec_id = AV_CODEC_ID_WMAPRO; break; case TSMF_SUB_TYPE_MP3: - mdecoder->codec_id = CODEC_ID_MP3; + mdecoder->codec_id = AV_CODEC_ID_MP3; break; case TSMF_SUB_TYPE_MP2A: - mdecoder->codec_id = CODEC_ID_MP2; + mdecoder->codec_id = AV_CODEC_ID_MP2; break; case TSMF_SUB_TYPE_MP2V: - mdecoder->codec_id = CODEC_ID_MPEG2VIDEO; + mdecoder->codec_id = AV_CODEC_ID_MPEG2VIDEO; break; case TSMF_SUB_TYPE_WMV3: - mdecoder->codec_id = CODEC_ID_WMV3; + mdecoder->codec_id = AV_CODEC_ID_WMV3; break; case TSMF_SUB_TYPE_AAC: - mdecoder->codec_id = CODEC_ID_AAC; + mdecoder->codec_id = AV_CODEC_ID_AAC; /* For AAC the pFormat is a HEAACWAVEINFO struct, and the codec data is at the end of it. See http://msdn.microsoft.com/en-us/library/dd757806.aspx */ @@ -246,10 +246,10 @@ static BOOL tsmf_ffmpeg_set_format(ITSMFDecoder *decoder, TS_AM_MEDIA_TYPE *medi break; case TSMF_SUB_TYPE_H264: case TSMF_SUB_TYPE_AVC1: - mdecoder->codec_id = CODEC_ID_H264; + mdecoder->codec_id = AV_CODEC_ID_H264; break; case TSMF_SUB_TYPE_AC3: - mdecoder->codec_id = CODEC_ID_AC3; + mdecoder->codec_id = AV_CODEC_ID_AC3; break; default: return FALSE; From 8eb7f69a1267553d57944ce3fdac275593af8cb0 Mon Sep 17 00:00:00 2001 From: Ian Whyman Date: Fri, 8 Aug 2014 13:05:06 +0100 Subject: [PATCH 078/170] Backwards compat defines --- channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c b/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c index 14a88bffa..ad19f9e5e 100644 --- a/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c +++ b/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c @@ -47,6 +47,20 @@ #define MAX_AUDIO_FRAME_SIZE 192000 #endif +#if LIBAVCODEC_VERSION_MAJOR < 55 +#define AV_CODEC_ID_VC1 CODEC_ID_VC1 +#define AV_CODEC_ID_WMAV2 CODEC_ID_WMAV2 +#define AV_CODEC_ID_WMAPRO CODEC_ID_WMAPRO +#define AV_CODEC_ID_MP3 CODEC_ID_MP3 +#define AV_CODEC_ID_MP2 CODEC_ID_MP2 +#define AV_CODEC_ID_MPEG2VIDEO CODEC_ID_MPEG2VIDEO +#define AV_CODEC_ID_WMV3 CODEC_ID_WMV3 +#define AV_CODEC_ID_AAC CODEC_ID_AAC +#define AV_CODEC_ID_H264 CODEC_ID_H264 +#define AV_CODEC_ID_AC3 CODEC_ID_AC3 +#endif + + typedef struct _TSMFFFmpegDecoder { ITSMFDecoder iface; From edde16e9d5885e926e32d92963d560ebf9b429a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 8 Aug 2014 17:34:30 -0400 Subject: [PATCH 079/170] libwinpr-synch: add initial synchronization barrier implementation --- winpr/include/winpr/synch.h | 36 ++- winpr/libwinpr/handle/handle.h | 3 +- winpr/libwinpr/synch/barrier.c | 227 ++++++++++++++++++- winpr/libwinpr/synch/synch.h | 18 +- winpr/libwinpr/synch/test/CMakeLists.txt | 1 + winpr/libwinpr/synch/test/TestSynchBarrier.c | 72 ++++++ 6 files changed, 336 insertions(+), 21 deletions(-) create mode 100644 winpr/libwinpr/synch/test/TestSynchBarrier.c diff --git a/winpr/include/winpr/synch.h b/winpr/include/winpr/synch.h index 04f4268e4..88e37457e 100644 --- a/winpr/include/winpr/synch.h +++ b/winpr/include/winpr/synch.h @@ -162,15 +162,6 @@ WINPR_API VOID LeaveCriticalSection(LPCRITICAL_SECTION lpCriticalSection); WINPR_API VOID DeleteCriticalSection(LPCRITICAL_SECTION lpCriticalSection); -/* Synchronization Barrier */ - -typedef PVOID RTL_SYNCHRONIZATION_BARRIER; -typedef RTL_SYNCHRONIZATION_BARRIER SYNCHRONIZATION_BARRIER, *PSYNCHRONIZATION_BARRIER, *LPSYNCHRONIZATION_BARRIER; - -WINPR_API BOOL InitializeSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier, LONG lTotalThreads, LONG lSpinCount); -WINPR_API BOOL EnterSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier, DWORD dwFlags); -WINPR_API BOOL DeleteSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier); - /* Sleep */ WINPR_API VOID Sleep(DWORD dwMilliseconds); @@ -313,6 +304,33 @@ WINPR_API VOID InitOnceInitialize(PINIT_ONCE InitOnce); #endif +/* Synchronization Barrier */ + +#if (!defined(_WIN32)) || (defined(_WIN32) && (_WIN32_WINNT < 0x0602)) + +typedef struct _RTL_BARRIER +{ + DWORD Reserved1; + DWORD Reserved2; + ULONG_PTR Reserved3[2]; + DWORD Reserved4; + DWORD Reserved5; +} RTL_BARRIER, *PRTL_BARRIER; + +typedef RTL_BARRIER SYNCHRONIZATION_BARRIER; +typedef PRTL_BARRIER PSYNCHRONIZATION_BARRIER; +typedef PRTL_BARRIER LPSYNCHRONIZATION_BARRIER; + +#define SYNCHRONIZATION_BARRIER_FLAGS_SPIN_ONLY 0x01 +#define SYNCHRONIZATION_BARRIER_FLAGS_BLOCK_ONLY 0x02 +#define SYNCHRONIZATION_BARRIER_FLAGS_NO_DELETE 0x04 + +WINPR_API BOOL WINAPI InitializeSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier, LONG lTotalThreads, LONG lSpinCount); +WINPR_API BOOL WINAPI EnterSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier, DWORD dwFlags); +WINPR_API BOOL WINAPI DeleteSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier); + +#endif + /* Extended API */ WINPR_API VOID USleep(DWORD dwMicroseconds); diff --git a/winpr/libwinpr/handle/handle.h b/winpr/libwinpr/handle/handle.h index 819e7b3db..91a3e9452 100644 --- a/winpr/libwinpr/handle/handle.h +++ b/winpr/libwinpr/handle/handle.h @@ -50,7 +50,7 @@ typedef struct winpr_handle WINPR_HANDLE; #define WINPR_HANDLE_SET_TYPE(_handle, _type) \ _handle->Type = _type -static inline BOOL winpr_Handle_GetInfo(HANDLE handle, ULONG* pType, PVOID* pObject) +static INLINE BOOL winpr_Handle_GetInfo(HANDLE handle, ULONG* pType, PVOID* pObject) { WINPR_HANDLE* wHandle; @@ -65,7 +65,6 @@ static inline BOOL winpr_Handle_GetInfo(HANDLE handle, ULONG* pType, PVOID* pObj return TRUE; } - typedef BOOL (*pcIsHandled)(HANDLE handle); typedef BOOL (*pcCloseHandle)(HANDLE handle); diff --git a/winpr/libwinpr/synch/barrier.c b/winpr/libwinpr/synch/barrier.c index 95fef076c..c56bfbee7 100644 --- a/winpr/libwinpr/synch/barrier.c +++ b/winpr/libwinpr/synch/barrier.c @@ -23,26 +23,237 @@ #include -/** - * InitializeSynchronizationBarrier - * EnterSynchronizationBarrier - * DeleteSynchronizationBarrier - */ +#include "synch.h" + +#include #ifndef _WIN32 -BOOL InitializeSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier, LONG lTotalThreads, LONG lSpinCount) +BOOL WINAPI InitializeSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier, LONG lTotalThreads, LONG lSpinCount) { + int status; + WINPR_BARRIER* pBarrier; + + if (!lpBarrier) + return FALSE; + + ZeroMemory(lpBarrier, sizeof(SYNCHRONIZATION_BARRIER)); + + pBarrier = (WINPR_BARRIER*) calloc(1, sizeof(WINPR_BARRIER)); + + if (!pBarrier) + return FALSE; + + if (lSpinCount < 0) + lSpinCount = 2000; + + pBarrier->lTotalThreads = lTotalThreads; + pBarrier->lSpinCount = lSpinCount; + + status = pthread_barrier_init(&(pBarrier->barrier), NULL, pBarrier->lTotalThreads); + + if (status != 0) + { + free(pBarrier); + return FALSE; + } + + lpBarrier->Reserved3[0] = (ULONG_PTR) pBarrier; + return TRUE; } -BOOL EnterSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier, DWORD dwFlags) +BOOL WINAPI EnterSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier, DWORD dwFlags) { + BOOL status; + int waitStatus; + WINPR_BARRIER* pBarrier; + + if (!lpBarrier) + return FALSE; + + pBarrier = (WINPR_BARRIER*) lpBarrier->Reserved3[0]; + + if (!pBarrier) + return FALSE; + + waitStatus = pthread_barrier_wait(&(pBarrier->barrier)); + + if (waitStatus == 0) + { + status = FALSE; /* success, this is not the last thread */ + } + else if (waitStatus == PTHREAD_BARRIER_SERIAL_THREAD) + { + status = TRUE; /* success, this is the last thread */ + } + else + { + status = FALSE; /* failure */ + } + + return status; +} + +BOOL WINAPI DeleteSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier) +{ + WINPR_BARRIER* pBarrier; + + /** + * According to MSDN, DeleteSynchronizationBarrier always returns TRUE + */ + + if (!lpBarrier) + return TRUE; + + pBarrier = (WINPR_BARRIER*) lpBarrier->Reserved3[0]; + + if (!pBarrier) + return TRUE; + + pthread_barrier_destroy(&(pBarrier->barrier)); + + free(pBarrier); + + ZeroMemory(lpBarrier, sizeof(SYNCHRONIZATION_BARRIER)); + return TRUE; } -BOOL DeleteSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier) +#elif (defined(_WIN32) && (_WIN32_WINNT < 0x0602)) + +#include +#include + +static HMODULE g_Kernel32 = NULL; +static BOOL g_NativeBarrier = FALSE; +static INIT_ONCE g_InitOnce = INIT_ONCE_STATIC_INIT; + +typedef BOOL (WINAPI * fnInitializeSynchronizationBarrier)(LPSYNCHRONIZATION_BARRIER lpBarrier, LONG lTotalThreads, LONG lSpinCount); +typedef BOOL (WINAPI * fnEnterSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier, DWORD dwFlags); +typedef BOOL (WINAPI * fnDeleteSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier); + +static fnInitializeSynchronizationBarrier pfnInitializeSynchronizationBarrier = NULL; +static fnEnterSynchronizationBarrier pfnEnterSynchronizationBarrier = NULL; +static fnDeleteSynchronizationBarrier pfnDeleteSynchronizationBarrier = NULL; + +static BOOL CALLBACK InitOnce_Barrier(PINIT_ONCE once, PVOID param, PVOID *context) { + g_Kernel32 = LoadLibraryA("kernel32.dll"); + + if (!g_Kernel32) + return TRUE; + + pfnInitializeSynchronizationBarrier = (fnInitializeSynchronizationBarrier) + GetProcAddress(g_Kernel32, "InitializeSynchronizationBarrier"); + + pfnEnterSynchronizationBarrier = (fnEnterSynchronizationBarrier) + GetProcAddress(g_Kernel32, "EnterSynchronizationBarrier"); + + pfnDeleteSynchronizationBarrier = (fnDeleteSynchronizationBarrier) + GetProcAddress(g_Kernel32, "DeleteSynchronizationBarrier"); + + if (pfnInitializeSynchronizationBarrier && pfnEnterSynchronizationBarrier + && pfnDeleteSynchronizationBarrier) + { + g_NativeBarrier = TRUE; + } + + return TRUE; +} + +BOOL WINAPI InitializeSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier, LONG lTotalThreads, LONG lSpinCount) +{ + WINPR_BARRIER* pBarrier; + + InitOnceExecuteOnce(&g_InitOnce, InitOnce_Barrier, NULL, NULL); + + if (g_NativeBarrier) + return pfnInitializeSynchronizationBarrier(lpBarrier, lTotalThreads, lSpinCount); + + if (!lpBarrier) + return FALSE; + + ZeroMemory(lpBarrier, sizeof(SYNCHRONIZATION_BARRIER)); + + pBarrier = (WINPR_BARRIER*) calloc(1, sizeof(WINPR_BARRIER)); + + if (!pBarrier) + return FALSE; + + if (lSpinCount < 0) + lSpinCount = 2000; + + pBarrier->lTotalThreads = lTotalThreads; + pBarrier->lSpinCount = lSpinCount; + pBarrier->count = 0; + + pBarrier->event = CreateEvent(NULL, TRUE, FALSE, NULL); + + if (!pBarrier->event) + { + free(pBarrier); + return FALSE; + } + + lpBarrier->Reserved3[0] = (ULONG_PTR) pBarrier; + + return TRUE; +} + +BOOL WINAPI EnterSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier, DWORD dwFlags) +{ + LONG count; + BOOL status = FALSE; + WINPR_BARRIER* pBarrier; + + if (g_NativeBarrier) + return pfnEnterSynchronizationBarrier(lpBarrier, dwFlags); + + if (!lpBarrier) + return FALSE; + + pBarrier = (WINPR_BARRIER*) lpBarrier->Reserved3[0]; + + if (!pBarrier) + return FALSE; + + count = InterlockedIncrement(&(pBarrier->count)); + + if (count < pBarrier->lTotalThreads) + { + WaitForSingleObject(pBarrier->event, INFINITE); + } + else + { + SetEvent(pBarrier->event); + status = TRUE; + } + + return status; +} + +BOOL WINAPI DeleteSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier) +{ + WINPR_BARRIER* pBarrier; + + if (g_NativeBarrier) + return pfnDeleteSynchronizationBarrier(lpBarrier); + + if (!lpBarrier) + return TRUE; + + pBarrier = (WINPR_BARRIER*) lpBarrier->Reserved3[0]; + + if (!pBarrier) + return TRUE; + + CloseHandle(pBarrier->event); + + free(pBarrier); + + ZeroMemory(lpBarrier, sizeof(SYNCHRONIZATION_BARRIER)); + return TRUE; } diff --git a/winpr/libwinpr/synch/synch.h b/winpr/libwinpr/synch/synch.h index fbde1d4a8..919255413 100644 --- a/winpr/libwinpr/synch/synch.h +++ b/winpr/libwinpr/synch/synch.h @@ -32,10 +32,10 @@ #define WITH_POSIX_TIMER 1 #endif -#ifndef _WIN32 - #include "../handle/handle.h" +#ifndef _WIN32 + #define WINPR_PIPE_SEMAPHORE 1 #if defined __APPLE__ @@ -144,4 +144,18 @@ struct winpr_timer_queue_timer #endif +struct winpr_barrier +{ + LONG lTotalThreads; + LONG lSpinCount; + +#if !defined(_WIN32) + pthread_barrier_t barrier; +#elif (defined(_WIN32) && (_WIN32_WINNT < 0x0602)) + HANDLE event; + DECLSPEC_ALIGN(4) LONG count; +#endif +}; +typedef struct winpr_barrier WINPR_BARRIER; + #endif /* WINPR_SYNCH_PRIVATE_H */ diff --git a/winpr/libwinpr/synch/test/CMakeLists.txt b/winpr/libwinpr/synch/test/CMakeLists.txt index 0309fb910..68b76faa0 100644 --- a/winpr/libwinpr/synch/test/CMakeLists.txt +++ b/winpr/libwinpr/synch/test/CMakeLists.txt @@ -8,6 +8,7 @@ set(${MODULE_PREFIX}_TESTS TestSynchInit.c TestSynchEvent.c TestSynchMutex.c + TestSynchBarrier.c TestSynchCritical.c TestSynchSemaphore.c TestSynchThread.c diff --git a/winpr/libwinpr/synch/test/TestSynchBarrier.c b/winpr/libwinpr/synch/test/TestSynchBarrier.c new file mode 100644 index 000000000..ebdcc7c6e --- /dev/null +++ b/winpr/libwinpr/synch/test/TestSynchBarrier.c @@ -0,0 +1,72 @@ + +#include +#include +#include + +static int g_Count; +static HANDLE g_Event; +static CRITICAL_SECTION g_Lock; +static SYNCHRONIZATION_BARRIER g_Barrier; + +static void* test_synch_barrier_thread_func(void* arg) +{ + BOOL status; + + status = EnterSynchronizationBarrier(&g_Barrier, 0); + + EnterCriticalSection(&g_Lock); + + printf("Thread #%d status: %s\n", g_Count++, + status ? "TRUE" : "FALSE"); + + LeaveCriticalSection(&g_Lock); + + if (status) + { + SetEvent(g_Event); + } + + return NULL; +} + +int TestSynchBarrier(int argc, char* argv[]) +{ + int index; + HANDLE threads[5]; + + g_Count = 0; + + g_Event = CreateEvent(NULL, TRUE, FALSE, NULL); + + InitializeCriticalSectionAndSpinCount(&g_Lock, 4000); + + if (!InitializeSynchronizationBarrier(&g_Barrier, 5, -1)) + return -1; + + for (index = 0; index < 5; index++) + { + threads[index] = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) + test_synch_barrier_thread_func, NULL, 0, NULL); + } + + WaitForSingleObject(g_Event, INFINITE); + + if (g_Count != 5) + return -1; + + printf("All threads have reached the barrier\n"); + + for (index = 0; index < 5; index++) + { + CloseHandle(threads[index]); + } + + DeleteSynchronizationBarrier(&g_Barrier); + + DeleteCriticalSection(&g_Lock); + + CloseHandle(g_Event); + + return 0; +} + From 8b4cf07c8ae3e58c9d5b9306f57d0210411b9f9a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 8 Aug 2014 18:47:46 -0400 Subject: [PATCH 080/170] shadow: make use of synchronization barrier --- include/freerdp/server/shadow.h | 2 ++ server/shadow/Win/win_shadow.c | 4 +++ server/shadow/X11/x11_shadow.c | 51 ++++++++++++++++++--------- server/shadow/shadow_client.c | 61 +++++++++++++++++---------------- 4 files changed, 72 insertions(+), 46 deletions(-) diff --git a/include/freerdp/server/shadow.h b/include/freerdp/server/shadow.h index baaac3e5c..0620cf626 100644 --- a/include/freerdp/server/shadow.h +++ b/include/freerdp/server/shadow.h @@ -113,7 +113,9 @@ struct rdp_shadow_server int monitorCount; \ MONITOR_DEF monitors[16]; \ MONITOR_DEF virtualScreen; \ + HANDLE updateEvent; \ REGION16 invalidRegion; \ + SYNCHRONIZATION_BARRIER barrier; \ \ pfnShadowSubsystemInit Init; \ pfnShadowSubsystemUninit Uninit; \ diff --git a/server/shadow/Win/win_shadow.c b/server/shadow/Win/win_shadow.c index e9e746675..46a8fa636 100644 --- a/server/shadow/Win/win_shadow.c +++ b/server/shadow/Win/win_shadow.c @@ -1072,6 +1072,8 @@ void win_shadow_subsystem_free(winShadowSubsystem* subsystem) region16_uninit(&(subsystem->invalidRegion)); + CloseHandle(subsystem->updateEvent); + free(subsystem); } @@ -1086,6 +1088,8 @@ winShadowSubsystem* win_shadow_subsystem_new(rdpShadowServer* server) subsystem->server = server; + subsystem->updateEvent = CreateEvent(NULL, TRUE, FALSE, NULL); + region16_init(&(subsystem->invalidRegion)); subsystem->Init = (pfnShadowSubsystemInit) win_shadow_subsystem_init; diff --git a/server/shadow/X11/x11_shadow.c b/server/shadow/X11/x11_shadow.c index a18ab8b7c..a96d55d31 100644 --- a/server/shadow/X11/x11_shadow.c +++ b/server/shadow/X11/x11_shadow.c @@ -187,6 +187,7 @@ int x11_shadow_invalidate_region(x11ShadowSubsystem* subsystem, int x, int y, in int x11_shadow_screen_grab(x11ShadowSubsystem* subsystem) { + int count; int status; int x, y; int width, height; @@ -200,18 +201,18 @@ int x11_shadow_screen_grab(x11ShadowSubsystem* subsystem) surface = server->surface; screen = server->screen; - XLockDisplay(subsystem->display); - if (subsystem->use_xshm) { + XLockDisplay(subsystem->display); + XCopyArea(subsystem->display, subsystem->root_window, subsystem->fb_pixmap, subsystem->xshm_gc, 0, 0, subsystem->width, subsystem->height, 0, 0); XSync(subsystem->display, False); - image = subsystem->fb_image; + XUnlockDisplay(subsystem->display); - EnterCriticalSection(&(screen->lock)); + image = subsystem->fb_image; status = shadow_capture_compare(surface->data, surface->scanline, surface->width, surface->height, (BYTE*) image->data, image->bytes_per_line, &invalidRect); @@ -230,20 +231,29 @@ int x11_shadow_screen_grab(x11ShadowSubsystem* subsystem) region16_union_rect(&(subsystem->invalidRegion), &(subsystem->invalidRegion), &invalidRect); - if (subsystem->SurfaceUpdate) - subsystem->SurfaceUpdate((rdpShadowSubsystem*) subsystem, &(subsystem->invalidRegion)); + count = ArrayList_Count(server->clients); + + InitializeSynchronizationBarrier(&(subsystem->barrier), count + 1, -1); + + SetEvent(subsystem->updateEvent); + + EnterSynchronizationBarrier(&(subsystem->barrier), 0); + + DeleteSynchronizationBarrier(&(subsystem->barrier)); + + ResetEvent(subsystem->updateEvent); region16_clear(&(subsystem->invalidRegion)); } - - LeaveCriticalSection(&(screen->lock)); } else { + XLockDisplay(subsystem->display); + image = XGetImage(subsystem->display, subsystem->root_window, 0, 0, subsystem->width, subsystem->height, AllPlanes, ZPixmap); - EnterCriticalSection(&(screen->lock)); + XUnlockDisplay(subsystem->display); status = shadow_capture_compare(surface->data, surface->scanline, surface->width, surface->height, (BYTE*) image->data, image->bytes_per_line, &invalidRect); @@ -262,19 +272,24 @@ int x11_shadow_screen_grab(x11ShadowSubsystem* subsystem) region16_union_rect(&(subsystem->invalidRegion), &(subsystem->invalidRegion), &invalidRect); - if (subsystem->SurfaceUpdate) - subsystem->SurfaceUpdate((rdpShadowSubsystem*) subsystem, &(subsystem->invalidRegion)); + count = ArrayList_Count(server->clients); + + InitializeSynchronizationBarrier(&(subsystem->barrier), count + 1, -1); + + SetEvent(subsystem->updateEvent); + + EnterSynchronizationBarrier(&(subsystem->barrier), 0); + + DeleteSynchronizationBarrier(&(subsystem->barrier)); + + ResetEvent(subsystem->updateEvent); region16_clear(&(subsystem->invalidRegion)); } - LeaveCriticalSection(&(screen->lock)); - XDestroyImage(image); } - XUnlockDisplay(subsystem->display); - return 1; } @@ -299,7 +314,7 @@ void* x11_shadow_subsystem_thread(x11ShadowSubsystem* subsystem) events[nCount++] = StopEvent; events[nCount++] = subsystem->event; - fps = 24; + fps = 16; dwInterval = 1000 / fps; frameTime = GetTickCount64() + dwInterval; @@ -749,6 +764,8 @@ void x11_shadow_subsystem_free(x11ShadowSubsystem* subsystem) region16_uninit(&(subsystem->invalidRegion)); + CloseHandle(subsystem->updateEvent); + free(subsystem); } @@ -763,6 +780,8 @@ x11ShadowSubsystem* x11_shadow_subsystem_new(rdpShadowServer* server) subsystem->server = server; + subsystem->updateEvent = CreateEvent(NULL, TRUE, FALSE, NULL); + region16_init(&(subsystem->invalidRegion)); subsystem->Init = (pfnShadowSubsystemInit) x11_shadow_subsystem_init; diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index e3f08a44e..7bf20441b 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -613,17 +613,13 @@ int shadow_client_surface_update(rdpShadowClient* client, REGION16* region) void* shadow_client_thread(rdpShadowClient* client) { - int fps; DWORD status; DWORD nCount; - UINT64 cTime; - DWORD dwTimeout; - DWORD dwInterval; - UINT64 frameTime; HANDLE events[32]; HANDLE StopEvent; HANDLE ClientEvent; HANDLE ChannelEvent; + HANDLE UpdateEvent; freerdp_peer* peer; rdpSettings* settings; rdpShadowServer* server; @@ -651,11 +647,8 @@ void* shadow_client_thread(rdpShadowClient* client) shadow_client_surface_frame_acknowledge; peer->update->SuppressOutput = (pSuppressOutput) shadow_client_suppress_output; - fps = 16; - dwInterval = 1000 / fps; - frameTime = GetTickCount64() + dwInterval; - StopEvent = client->StopEvent; + UpdateEvent = subsystem->updateEvent; ClientEvent = peer->GetEventHandle(peer); ChannelEvent = WTSVirtualChannelManagerGetEventHandle(client->vcm); @@ -663,19 +656,43 @@ void* shadow_client_thread(rdpShadowClient* client) { nCount = 0; events[nCount++] = StopEvent; + events[nCount++] = UpdateEvent; events[nCount++] = ClientEvent; events[nCount++] = ChannelEvent; - cTime = GetTickCount64(); - dwTimeout = (DWORD) ((cTime > frameTime) ? 0 : frameTime - cTime); + status = WaitForMultipleObjects(nCount, events, FALSE, INFINITE); - status = WaitForMultipleObjects(nCount, events, FALSE, dwTimeout); - - if (WaitForSingleObject(client->StopEvent, 0) == WAIT_OBJECT_0) + if (WaitForSingleObject(StopEvent, 0) == WAIT_OBJECT_0) { + if (WaitForSingleObject(UpdateEvent, 0) == WAIT_OBJECT_0) + { + EnterSynchronizationBarrier(&(subsystem->barrier), 0); + } + break; } + if (WaitForSingleObject(UpdateEvent, 0) == WAIT_OBJECT_0) + { + if (client->activated) + { + int index; + int numRects = 0; + const RECTANGLE_16* rects; + + rects = region16_rects(&(subsystem->invalidRegion), &numRects); + + for (index = 0; index < numRects; index++) + { + region16_union_rect(&(client->invalidRegion), &(client->invalidRegion), &rects[index]); + } + + shadow_client_send_surface_update(client); + } + + EnterSynchronizationBarrier(&(subsystem->barrier), 0); + } + if (WaitForSingleObject(ClientEvent, 0) == WAIT_OBJECT_0) { if (!peer->CheckFileDescriptor(peer)) @@ -693,22 +710,6 @@ void* shadow_client_thread(rdpShadowClient* client) break; } } - - if ((status == WAIT_TIMEOUT) || (GetTickCount64() > frameTime)) - { - if (client->activated) - { - EnterCriticalSection(&(screen->lock)); - - shadow_client_send_surface_update(client); - - LeaveCriticalSection(&(screen->lock)); - } - - fps = encoder->fps; - dwInterval = 1000 / fps; - frameTime += dwInterval; - } } peer->Disconnect(peer); From 15ad357e1a0d0ad4dd1bc95b83d80b9fb6ccaad5 Mon Sep 17 00:00:00 2001 From: Rene Rheaume Date: Fri, 8 Aug 2014 20:12:25 -0400 Subject: [PATCH 081/170] Recompressed images with FileOptimizer 6.8 (an open-source mass file recompression tool for Windows) --- .../res/drawable-hdpi/icon_button_add.png | Bin 1141 -> 1086 bytes .../res/drawable-hdpi/icon_edittext_clear.png | Bin 410 -> 374 bytes .../drawable-hdpi/icon_edittext_search.png | Bin 1299 -> 1299 bytes .../drawable-hdpi/icon_launcher_freerdp.png | Bin 2971 -> 2858 bytes .../res/drawable-hdpi/icon_menu_about.png | Bin 2490 -> 2182 bytes .../res/drawable-hdpi/icon_menu_add.png | Bin 2796 -> 2550 bytes .../res/drawable-hdpi/icon_menu_close.png | Bin 3378 -> 3105 bytes .../drawable-hdpi/icon_menu_disconnect.png | Bin 4573 -> 4424 bytes .../drawable-hdpi/icon_menu_ext_keyboard.png | Bin 1230 -> 1215 bytes .../res/drawable-hdpi/icon_menu_help.png | Bin 2849 -> 2590 bytes .../drawable-hdpi/icon_menu_preferences.png | Bin 2981 -> 2668 bytes .../res/drawable-hdpi/icon_menu_settings.png | Bin 2632 -> 2311 bytes .../drawable-hdpi/icon_menu_sys_keyboard.png | Bin 1431 -> 1397 bytes .../drawable-hdpi/icon_menu_touch_pointer.png | Bin 2105 -> 2083 bytes .../res/drawable-hdpi/icon_star_off.png | Bin 1420 -> 1406 bytes .../res/drawable-hdpi/icon_star_on.png | Bin 2346 -> 2265 bytes .../res/drawable-hdpi/search_plate.9.png | Bin 290 -> 238 bytes .../res/drawable-hdpi/sym_keyboard_delete.png | Bin 1525 -> 1520 bytes .../sym_keyboard_feedback_delete.png | Bin 1021 -> 1002 bytes .../sym_keyboard_feedback_return.png | Bin 642 -> 636 bytes .../res/drawable-hdpi/sym_keyboard_return.png | Bin 774 -> 720 bytes .../res/drawable-ldpi/icon_button_add.png | Bin 659 -> 466 bytes .../drawable-ldpi/icon_edittext_search.png | Bin 1027 -> 783 bytes .../drawable-ldpi/icon_launcher_freerdp.png | Bin 1284 -> 1200 bytes .../res/drawable-ldpi/icon_menu_about.png | Bin 1463 -> 1182 bytes .../res/drawable-ldpi/icon_menu_add.png | Bin 1562 -> 1299 bytes .../drawable-ldpi/icon_menu_disconnect.png | Bin 2025 -> 1994 bytes .../res/drawable-ldpi/icon_menu_exit.png | Bin 1746 -> 1498 bytes .../drawable-ldpi/icon_menu_ext_keyboard.png | Bin 781 -> 768 bytes .../res/drawable-ldpi/icon_menu_help.png | Bin 1559 -> 1313 bytes .../drawable-ldpi/icon_menu_preferences.png | Bin 1588 -> 1341 bytes .../res/drawable-ldpi/icon_menu_settings.png | Bin 1364 -> 1088 bytes .../drawable-ldpi/icon_menu_sys_keyboard.png | Bin 1064 -> 1049 bytes .../drawable-ldpi/icon_menu_touch_pointer.png | Bin 1296 -> 1246 bytes .../res/drawable-ldpi/icon_star_off.png | Bin 747 -> 551 bytes .../res/drawable-ldpi/icon_star_on.png | Bin 936 -> 932 bytes .../res/drawable-ldpi/search_plate.9.png | Bin 222 -> 182 bytes .../res/drawable-ldpi/sym_keyboard_delete.png | Bin 866 -> 670 bytes .../sym_keyboard_feedback_delete.png | Bin 645 -> 445 bytes .../sym_keyboard_feedback_return.png | Bin 459 -> 267 bytes .../res/drawable-ldpi/sym_keyboard_return.png | Bin 524 -> 330 bytes .../res/drawable-mdpi/icon_button_add.png | Bin 721 -> 717 bytes .../res/drawable-mdpi/icon_edittext_clear.png | Bin 410 -> 374 bytes .../drawable-mdpi/icon_edittext_search.png | Bin 931 -> 926 bytes .../drawable-mdpi/icon_launcher_freerdp.png | Bin 1865 -> 1784 bytes .../res/drawable-mdpi/icon_menu_about.png | Bin 1781 -> 1473 bytes .../res/drawable-mdpi/icon_menu_add.png | Bin 1955 -> 1687 bytes .../drawable-mdpi/icon_menu_disconnect.png | Bin 2596 -> 2534 bytes .../res/drawable-mdpi/icon_menu_exit.png | Bin 2199 -> 1949 bytes .../drawable-mdpi/icon_menu_ext_keyboard.png | Bin 1064 -> 993 bytes .../res/drawable-mdpi/icon_menu_help.png | Bin 1878 -> 1620 bytes .../drawable-mdpi/icon_menu_preferences.png | Bin 1978 -> 1724 bytes .../res/drawable-mdpi/icon_menu_settings.png | Bin 1721 -> 1438 bytes .../drawable-mdpi/icon_menu_sys_keyboard.png | Bin 1191 -> 1154 bytes .../drawable-mdpi/icon_menu_touch_pointer.png | Bin 1523 -> 1458 bytes .../res/drawable-mdpi/icon_star_off.png | Bin 1160 -> 1158 bytes .../res/drawable-mdpi/icon_star_on.png | Bin 1258 -> 1219 bytes .../res/drawable-mdpi/search_plate.9.png | Bin 285 -> 214 bytes .../res/drawable-mdpi/sym_keyboard_delete.png | Bin 643 -> 615 bytes .../sym_keyboard_feedback_delete.png | Bin 268 -> 267 bytes .../sym_keyboard_feedback_return.png | Bin 266 -> 230 bytes .../res/drawable-mdpi/sym_keyboard_return.png | Bin 669 -> 631 bytes .../res/drawable/icon_button_cancel.png | Bin 2025 -> 1994 bytes .../res/drawable/icon_launcher_freerdp.png | Bin 4198 -> 4196 bytes .../res/drawable/sym_keyboard_arrows.png | Bin 605 -> 605 bytes .../drawable/sym_keyboard_arrows_black.png | Bin 574 -> 567 bytes .../res/drawable/sym_keyboard_down_arrow.png | Bin 327 -> 321 bytes .../res/drawable/sym_keyboard_left_arrow.png | Bin 319 -> 317 bytes .../sym_keyboard_left_arrow_black.png | Bin 311 -> 306 bytes .../res/drawable/sym_keyboard_menu.png | Bin 955 -> 951 bytes .../res/drawable/sym_keyboard_menu_black.png | Bin 1046 -> 1039 bytes .../res/drawable/sym_keyboard_right_arrow.png | Bin 331 -> 327 bytes .../sym_keyboard_right_arrow_black.png | Bin 303 -> 302 bytes .../res/drawable/sym_keyboard_up_arrow.png | Bin 336 -> 331 bytes .../drawable/sym_keyboard_up_arrow_black.png | Bin 323 -> 322 bytes .../res/drawable/sym_keyboard_winkey.png | Bin 703 -> 701 bytes .../drawable/sym_keyboard_winkey_black.png | Bin 676 -> 668 bytes .../res/drawable/touch_pointer_active.png | Bin 10050 -> 9981 bytes .../res/drawable/touch_pointer_default.png | Bin 9353 -> 9305 bytes .../drawable/touch_pointer_extkeyboard.png | Bin 9595 -> 9555 bytes .../res/drawable/touch_pointer_keyboard.png | Bin 9635 -> 9596 bytes .../res/drawable/touch_pointer_lclick.png | Bin 9661 -> 9609 bytes .../res/drawable/touch_pointer_rclick.png | Bin 9520 -> 9464 bytes .../res/drawable/touch_pointer_reset.png | Bin 9594 -> 9549 bytes .../res/drawable/touch_pointer_scroll.png | Bin 11847 -> 11773 bytes .../Android/aFreeRDP/assets/FreeRDP_Logo.png | Bin 32463 -> 30329 bytes .../about_page/background_transparent.png | Bin 75 -> 74 bytes client/Android/aFreeRDP/assets/background.jpg | Bin 141907 -> 118109 bytes .../de_about_page/background_transparent.png | Bin 75 -> 74 bytes .../aFreeRDP/assets/de_help_page/gestures.png | Bin 45123 -> 43781 bytes .../assets/de_help_page/gestures_phone.png | Bin 28173 -> 27770 bytes .../assets/de_help_page/nav_toolbar.png | Bin 2023 -> 2022 bytes .../assets/de_help_page/nav_touch_pointer.png | Bin 2306 -> 2301 bytes .../aFreeRDP/assets/de_help_page/toolbar.png | Bin 7261 -> 7010 bytes .../assets/de_help_page/toolbar_phone.png | Bin 5692 -> 5555 bytes .../assets/de_help_page/touch_pointer.png | Bin 111043 -> 110449 bytes .../de_help_page/touch_pointer_phone.png | Bin 88598 -> 87793 bytes .../aFreeRDP/assets/help_page/gestures.png | Bin 45123 -> 43781 bytes .../assets/help_page/gestures_phone.png | Bin 28173 -> 27770 bytes .../aFreeRDP/assets/help_page/nav_toolbar.png | Bin 2023 -> 2022 bytes .../assets/help_page/nav_touch_pointer.png | Bin 2306 -> 2301 bytes .../aFreeRDP/assets/help_page/toolbar.png | Bin 7261 -> 7010 bytes .../assets/help_page/toolbar_phone.png | Bin 5692 -> 5555 bytes .../assets/help_page/touch_pointer.png | Bin 111043 -> 110449 bytes .../assets/help_page/touch_pointer_phone.png | Bin 88598 -> 87793 bytes .../drawable-hdpi/icon_launcher_freerdp.png | Bin 2971 -> 2858 bytes .../drawable-ldpi/icon_launcher_freerdp.png | Bin 1284 -> 1200 bytes .../drawable-mdpi/icon_launcher_freerdp.png | Bin 1865 -> 1784 bytes .../res/drawable/icon_launcher_freerdp.png | Bin 4198 -> 4196 bytes client/Mac/en.lproj/InfoPlist.strings | 0 client/Windows/resource/bg.bmp | Bin 50630 -> 290 bytes client/Windows/resource/close.bmp | Bin 1782 -> 246 bytes client/Windows/resource/close_active.bmp | Bin 1782 -> 228 bytes client/Windows/resource/lock.bmp | Bin 1782 -> 216 bytes client/Windows/resource/lock_active.bmp | Bin 1782 -> 216 bytes client/Windows/resource/minimize.bmp | Bin 1782 -> 166 bytes client/Windows/resource/minimize_active.bmp | Bin 1782 -> 166 bytes client/Windows/resource/restore.bmp | Bin 1782 -> 220 bytes client/Windows/resource/restore_active.bmp | Bin 1782 -> 220 bytes client/Windows/resource/unlock.bmp | Bin 1782 -> 208 bytes client/Windows/resource/unlock_active.bmp | Bin 1782 -> 208 bytes client/iOS/Resources/Default-568h@2x.png | Bin 9188 -> 8805 bytes .../Resources/Default-Landscape@2x~ipad.png | Bin 17522 -> 16161 bytes .../iOS/Resources/Default-Landscape~ipad.png | Bin 6996 -> 6776 bytes .../Resources/Default-Portrait@2x~ipad.png | Bin 20494 -> 18847 bytes .../iOS/Resources/Default-Portrait~ipad.png | Bin 9352 -> 9104 bytes client/iOS/Resources/Default.png | Bin 4181 -> 4050 bytes client/iOS/Resources/Default@2x.png | Bin 9166 -> 8781 bytes client/iOS/Resources/Icon-72.png | Bin 1077 -> 1074 bytes client/iOS/Resources/Icon-72@2x.png | Bin 1860 -> 1837 bytes client/iOS/Resources/Icon.png | Bin 913 -> 912 bytes client/iOS/Resources/Icon@2x.png | Bin 1521 -> 1502 bytes .../iOS/Resources/about_page/FreeRDP_Logo.png | Bin 32463 -> 30329 bytes client/iOS/Resources/about_page/back.jpg | Bin 141907 -> 118109 bytes .../about_page/background_transparent.png | Bin 75 -> 74 bytes client/iOS/Resources/alert-black-button.png | Bin 638 -> 608 bytes .../iOS/Resources/alert-black-button@2x.png | Bin 1142 -> 1142 bytes client/iOS/Resources/alert-gray-button.png | Bin 677 -> 634 bytes client/iOS/Resources/alert-red-button.png | Bin 529 -> 477 bytes client/iOS/Resources/alert-red-button@2x.png | Bin 1091 -> 919 bytes .../iOS/Resources/alert-window-landscape.png | Bin 2535 -> 2287 bytes .../Resources/alert-window-landscape@2x.png | Bin 4428 -> 4303 bytes client/iOS/Resources/alert-window.png | Bin 1871 -> 1870 bytes client/iOS/Resources/alert-window@2x.png | Bin 4202 -> 4153 bytes client/iOS/Resources/help_page/back.jpg | Bin 141907 -> 118109 bytes client/iOS/Resources/help_page/gestures.png | Bin 45123 -> 43781 bytes .../Resources/help_page/gestures_phone.png | Bin 28173 -> 27770 bytes .../iOS/Resources/help_page/nav_toolbar.png | Bin 2023 -> 2022 bytes .../Resources/help_page/nav_touch_pointer.png | Bin 2306 -> 2301 bytes client/iOS/Resources/help_page/toolbar.png | Bin 7261 -> 7010 bytes .../iOS/Resources/help_page/toolbar_phone.png | Bin 5692 -> 5555 bytes .../iOS/Resources/help_page/touch_pointer.png | Bin 111043 -> 110449 bytes .../help_page/touch_pointer_phone.png | Bin 88598 -> 87793 bytes .../iOS/Resources/icon_accessory_star_off.png | Bin 747 -> 551 bytes .../iOS/Resources/icon_accessory_star_on.png | Bin 936 -> 932 bytes client/iOS/Resources/icon_key_arrow_down.png | Bin 124 -> 122 bytes client/iOS/Resources/icon_key_arrow_left.png | Bin 127 -> 126 bytes client/iOS/Resources/icon_key_arrow_up.png | Bin 126 -> 124 bytes client/iOS/Resources/icon_key_backspace.png | Bin 444 -> 441 bytes client/iOS/Resources/icon_key_menu.png | Bin 454 -> 453 bytes client/iOS/Resources/icon_key_win.png | Bin 430 -> 401 bytes .../Resources/keyboard_button_background.png | Bin 243 -> 242 bytes client/iOS/Resources/tabbar_icon_about.png | Bin 238 -> 237 bytes client/iOS/Resources/tabbar_icon_help.png | Bin 288 -> 279 bytes client/iOS/Resources/tabbar_icon_settings.png | Bin 330 -> 328 bytes .../iOS/Resources/toolbar_icon_disconnect.png | Bin 623 -> 609 bytes .../iOS/Resources/toolbar_icon_extkeyboad.png | Bin 349 -> 349 bytes client/iOS/Resources/toolbar_icon_home.png | Bin 393 -> 368 bytes .../iOS/Resources/toolbar_icon_keyboard.png | Bin 596 -> 550 bytes .../Resources/toolbar_icon_touchpointer.png | Bin 443 -> 415 bytes client/iOS/Resources/toolbar_icon_win.png | Bin 421 -> 408 bytes client/iOS/Resources/touch_pointer_active.png | Bin 10041 -> 9965 bytes .../iOS/Resources/touch_pointer_default.png | Bin 9346 -> 9309 bytes .../Resources/touch_pointer_extkeyboard.png | Bin 9625 -> 9536 bytes .../iOS/Resources/touch_pointer_keyboard.png | Bin 9634 -> 9580 bytes client/iOS/Resources/touch_pointer_lclick.png | Bin 9729 -> 9670 bytes client/iOS/Resources/touch_pointer_rclick.png | Bin 9507 -> 9430 bytes client/iOS/Resources/touch_pointer_reset.png | Bin 9600 -> 9522 bytes client/iOS/Resources/touch_pointer_scroll.png | Bin 11849 -> 11762 bytes resources/FreeRDP_Icon.png | Bin 29029 -> 27065 bytes resources/FreeRDP_Icon_256px.png | Bin 3106 -> 3021 bytes resources/FreeRDP_Logo.png | Bin 32463 -> 30329 bytes scripts/gprof_generate.sh.cmake | 0 scripts/regenerate_jni_headers.sh.cmake | 0 184 files changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 client/Mac/en.lproj/InfoPlist.strings mode change 100755 => 100644 scripts/gprof_generate.sh.cmake mode change 100755 => 100644 scripts/regenerate_jni_headers.sh.cmake diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_button_add.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_button_add.png index efc0707252046bcced144916d9cf4060204fb4bb..19104c8e9c6dba7ce51078b1c705067dcf5e2dcb 100644 GIT binary patch delta 1066 zcmV+_1l9ZX2)+oABYy-1Nklgpte5uE(*6miG>~H1n+CnD1WQ7rm7w5Npb`lNw%ulv&7O}L$uI{F z2)jw3US(fccIKV)8|Im3&b%uvuPP+3>hnLM&(M0%fbRf9ihsodAP^{||E>7)^k_jk zBId$*)sUm2!M52+w@uTo$X$gX?f0bZ3tpU*-vo0-%9IF@KthiL4vALMujNz8XQx5m ztDD=!g&~HiP;g-3#fj_S)yI6K~_a3Ay&#!kdio2E&vIoWc@KNQFA1j4`qh zuHBzFA$n=L@PBK4Vw4feXatsgfFz{G2qP1fCl97iAjti<^;)g=Iu&%z6>bWWoLf?Q zyrkWZX0H5sEc62{%+MD_$J%%9aYI$;)5-KNvKrGoI zBhn$WWOC970;*Ie!>ce5-K?q`Wy&Z_7NkV%E$?>zVt>2y&+BHFJ;`zH1&~;5Gx^GN0Agala8{G4Lt+eZHCasOjYGTKcz<+FIxtuw z;^tWA7vFL!BZ%qxrP_{d>UrsP2UY8b_QQ5#n z$lbp^s^lOs`*dAipr~HdlzdAd+Wpa6+43v`v461mk=PM{rf@A-RT$)~ylov!j_O7L z*bKeZ7j4&VY86;40mFois9^w!u2~W^m0IO}g+w@O76F3*L~7UjqCal^^q5)e7a3CU z=7NYW2@p^uMB{Ks?yW9< zXht=w3{i1D&IV?c$S}hcn|8*5Pg9uvJ{^2(XOrCRqR<2c=v8yQx8CDDPKk!!C^pom z%!xYZMTstd&=M==`((REgkk#hm1;z~t?z_)v=ha8mnS4xEGe8C?O=u&LxS|Ugd@a# kM;!Kjv|pV4xjRGu3t4bF#u4_^k^lez07*qoM6N<$f)OhSEC2ui delta 1121 zcmV-n1fKi82=xe%BYyxHbVXQnQ*UN;cVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU$ z7fD1xRCwC$m)~m~RTRfR^J`}}yPLHMg}{msC{&A;pdmpBC`u%f8VQOD5+D0q@YP5A zDD+=2rGbjFC=K<+hf1(CMyUkFLLpFy1Pa@1y4l^Cow?VYlYcwS(udv6f-llJu*{u% z<}+u$_ndoXEzN&**gQl3572Huhpz!ej7H1Y>X>sBk(_-xJlY~YZ7urCPT8KY%IvDW zcvn^Qy8X~e=6c=PJFi!#>@U5=EF}y92ou0S@%wl+B7&MG-yx)uip)(--`z*8Rz22)F?R|v@wZ$O@9}a6&KZ-LO(GJj{=1$|Kb2q zR|@XmrSd8KZYNya_xT~BV@rH*V|C3&G&$UDytq*B6ScFFE$492U8WKt;uE*Eo{c7eT0|vovXoBz@ zHN%fR(DtNj1W16o5`Cs*aoV)ai?b0;w`eE&7oyd8SqWO^CZQL)WG7&84ry1Oum65D zGAdiNX&M!EU02*?$(EzYOTEy>O$ok906ZX;aesF;V&I-=?hUqITeV|!i~V`7{$o%% zfwVcKi85`VFz=ExqmI>jqj%ER(~0xS>RZ;HC2pBZ-iCw1p0lrLf!Pyo*%MEL-sy?f zn>yCcQOj!%xv1AXD8?Gt`Z zPH%^^PNhJRyyS7}XbUvYXveY@JuBd0KFt1{@xIb?(Q$W?ZOZGIyP-Z0HUnN|NLn=f zLALCC$f7mIIV(q#zo=U4>f2~HSqa6=@aSK0L;_bt(I{zTk*q*W#OuR<1WV~ifkz42 n03-PgY4y1C*`K>-=-$V_@crb!23|q700000NkvXXu0mjfNB1_= diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_edittext_clear.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_edittext_clear.png index 01b602280c7c3c5aca205b06306a053b53aabe43..ae185579e235866f7aa3274ea3a11959437fde24 100644 GIT binary patch delta 347 zcmV-h0i^z#1NH)tB!4|gL_t(|0qv8qO2j}Ah7|>E6*=Kfi1KCQKM<#&O)E98=D)Zro!X z%KjAiCFO=?zCmwpb*{W5sC0r2>bic+vh1zz`#UBf!iQnF&42U!wW_M8b!X-yaE@}C zrk_z1jkJD95*$v#@8~2+(yYH&0Jy|I@E-_-nQ+74Of%EPX@3$TzKaz!1;ApuR|Y>Q^0iy61s3)1tLi3 z!p$>OkPzV3Q&dAVBmh5h!OgcS5@u5ud<%(PuM;TC@>zK2qC`;?FH=t7fO2hqG#A{K tuyQE3WQkMC1=cNkGs+UH3mzs+m|r_)3%OxfM34iqJPyR)kS<-?v~gazg=KM=WGuAU;$ffe6|#IB)C%=a+@27XOhS(y)j&z+hZNN5D6Xi!zvV}Ft)Z*AM&83_sAb=^8m z)7P>rpY}B~jld;}<2e2Zf}p4M-H~A7B)maQ6h*uJ|4a1*nx?s@Mq5ULg@10`g*R)CY(83}-8xL#n8gblCj`hkIK1$YS@GJqwxUO>L* zFM!+I!CXanuF%TB?%`d+CvD5bIKLg5l^xiWr@|mDgIUL d1-!tI`38x}?~WZgYK8y+002ovPDHLkV1l&hu;>5) diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_edittext_search.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_edittext_search.png index 31765478aa2a819feb1983a41960953ac1601d70..2283a919441230f87e7446b1f51676ba85fcc43c 100644 GIT binary patch delta 1270 zcmV8F0n{6KBvB z$AEREJ_Qs+MVY`hR5rUUZpH;OB8xMcx_CD)-4e6QEt%VH=FIN=3(n5_o_4%F3LChK z<#YEu&-u1DgcQhs>c7qfWc*M8PB4Q3^fCrIDTYdR!&^RA1%ECu)8{5Ixbz+RP*R7% zMe|a!>YsC4lQw~shRgYMk?d%kquGJk8ht`C`22C&krtsE}rmz0AA z>|p9HUhsdi`{e7x2XRTqXx*IiW>La$s0b|d(l5v7YN#@>f<KB;TC z?t4c)$);rT1*ZZ0E=UT;A?+_oDS>1P<0Xssi#DZ`zS_+2xl-_e|Fzn4dq?&m6T*e?AAO{Yv{GG< z`WC_=Ozn2jV98-SeO1Nqxiav$1Lt2J??5Jsza1vkM1Nfg3{jKnharrn_O%~4uG?)c z@TK-?Xn$w#_Q_X~!PuXjMD2q#H2Jta8cp4lU-67Np)9%MbA{VxT1NMvXy36%dx*jV zPa=xP?fa2k)lWJXoVpUW;d5<`4X4{s)G`tuB#KS&R5W-+<)b;JmPLgc3Cmk5Oc99pXSK zqs`cifr(Jq1;s0pPdEVdKZw5O!mLY!BKv!Tah?2SFoX@=xseeb2`+UWW5jKE*85?M>{^*ty;_cRB zjnm0FpBoQtLy>R7c+IF=PoG(yM5hLD6_m~RN5tFB#}AGqH+=5$Eh%LG0 zbAJw)?XN_}^qKa$#;F1|eNMk8RS3DDqVgOYE*4L+E8ozO<0eSrb0&BgcmchVO~d*x za_^`PDM66YfU0}_72A|I#;yVrKi2BN!0P zjJr;x_9de`W{E-xYRCs2==q$EBDVL!ZhuU1j+)LD%;(-zf1^p{Uo)P!pK!;PwwB4f zuT?PtvZe1`$ma?qq&gCD;=f~>*4z*-Wygh=1W@t0{3H^*I^ady3cQ%wo5zjs=3f@> z2u(SBF86Q5{U9_D*@#a!F!&&Jzo%R_DToV+oTlvboJNMIN$}UcGvV#gB3#ls_am$TxZMoJ4k$LY`A`#D6tpFX{cE?{5Fy{$Kh?FKH!Sq84`=2zd-K11{0T zvl9wg5R}UxT4JKq+|*PN)uEh93TCBpIjbVTy>1&8rcuTfiL9nfmdjoxqW!*SBj%;a ziDxA;r66RjmJ}>Pbs9xHlLj*YGH+Lp2EXeuqB2cZJYzA#3K?r51@)MdChI~=4Xj%m zDYzaLGNn@qJ3PNuG~zkfvi1^U+0KUkm2m;e9(07*qoM6N<$g3T3s`~Uy| delta 1270 zcmVC=3}B^KTRB|LFDVBL z*um6Yyx{+I_sQ3X58{%J(YiV3jiQ9%P!U+@rC*NE)lg+%1&hi)SMyoh$pf)&d|cOX z-Fe5&qKg)lm49B>$Z)x8@PHkxO7EG5+0KyzxV+ut?nUb-R+Wvus7~Q?6;KRzWyPtw z+4hnBxFj5Xcktc8a8y2P9WPn5U$7~i^wnmD&y|7){IAuX-8-@mnGi07|Lh}Oq?PJ= z*tZZ4VQROF21^dx>8mP+&y|749XR*$cn303{QWSgCV%QmV2GMjKL}wowXglqam{XX zfiJaBL;E{>w@(P-+X{IX}v31!J0pDWxp(=xgTMf;9D+(Q%| zcpOnYYTu9Ss(#YB;MA3{4WDakY&g}1qLz{PAW>|BC!)byy=};pUaD&@VRJs$-rG2~ z3q`>x;(soOx~vdfCOhM0>@`CKP9j<#S6?i}hlRSGNF2BYt^pvXT}JL6zeJ{On> z9&N^E3`~T=E+}3>C7kJQMs{2Fg_BMBT>Y^fD5{+5e9I256_mk|&fu_kyM4$(b8O1x zUKt9a$n(M8elys?u?+D~4Ri&@f+(3w&iULMk$-v=xzAP17-0k0m$8B7>W^+YA>M91 z);OJ<^SSZRHWc|Lj8~1i_4JwLadc_`S3%i~e?+|9eEi@@a>M5??eZgIoVN@Xf)32E zkz=M)BY3*q)9kYR^y!Y|j?WR>i?~HnJgvQ6=+Qs{eQK65(n%f|ORXPy$JnKBhS-u@ zK7Z$c+5SpoOrLA7X`Cuh)93VaQiYHUDk{&h;X?5wyYdYkIc|a^K4*dlffvv#*)**G zGWWLXkP-wL4XC=;U$#woW9%w0@l&l13=E&s15w<3vm8^3&gR}wUKJujgHS~^2ocTK z#<=T5YF{$CW0okCpoV13NdOg}%TFS~D+6A%t-y<^y?NaDUj8NF zw$PNr=W_o+-1kERk&XCd1B3TN_j<}@lY+RA$Z5(>&uL_cngoCAJ00F0Ey5+OgMS~t z{YyUy(yjJhk9?CC&q-uADdag7NBmbq_LANo`|kAL>HoEl^paNMC2Db}fsn@#GvE?U zJUgL~1wpwCq9rCu%}q@eQ60*uq+nJmm$NDY-0ikuVH#yzk;rPwWV!5BBHAB%Hez0y zoOo6uQwl=XYDvK&RHsqIGifjbAa8T^Xz=?UBP!Em#WNN&tdOx5Qc#aMX|m3@)WEv6 zk%H?{AyYb)u*36fMT2*Hw3wOX9sZ+}DB!uZlY#}fj`B#cr~h4{{W-KR(t#}Y^f~E! gPSKd?|NSHCZ~E5LKh7*g)Bpeg07*qoM6N<$g3aWLIsgCw diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_launcher_freerdp.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_launcher_freerdp.png index c6a8ade048d410d9831a3b5e3a48a8f98743fd46..ff31f25761bfc55a7cf6922797999b9653a3f7f2 100644 GIT binary patch delta 2852 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 diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_about.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_about.png index 4118e96169fc86ac47b0b8f5be40fd7f07f37e75..43cf97ccf8a6a21abfb203010eabdd50ce04aef2 100644 GIT binary patch delta 2170 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 delta 2481 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 diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_close.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_close.png index 40c79ed166bc7e50977196acd980afe2228357c2..82d41702e39d4bae93182c62bc295bbe911db9c7 100644 GIT binary patch delta 3101 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 literal 3378 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 diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_disconnect.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_disconnect.png index 8e3e38cc77ad0ed76abb438d4c9b17586291ef8f..192c57bb380bb7cc6acd7db17d2997f36a05b640 100644 GIT binary patch literal 4424 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 Hu0mjf-zZYg diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_ext_keyboard.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_ext_keyboard.png index 98a3cfd0b4e4c535e2a2c756cd491c2db2800e37..2ed0352008462891c71ade002c21fc46ce511302 100644 GIT binary patch delta 1195 zcmV;c1XTOZ3BL)DB!7lUL_t(|0qvUaPg_+O$Dez8+uO#rY-Uu#(y@qRUA8R2C}f&# zAa5k#E6Lm&ry)2oCi)M|`7dZ95sVBY+l%=^@a>E&BshQoaeI#DX|j5DQ{KEQkfM zAQr@eILv*@I9L!1VnHm3cQGD89^eIjl?uvl>;N02RO-+ngvi&(RAM5a0#t&kJW~ly zfn%y|!_6Z|fbjD2^7*l`u`h~>!oJ;^ET=SZ{w*MR>6xzoPp9&o&I4RIH|YA+)zw5( zQ`5)DO@l44<9}vB!RhJg*QTbX%Kd(eGLGsfBI7vZ$h?-NQ!U2H=AB$gD3kTFTnkh6 z2CmJ`jc70!d=v2(ivM=IAj|9Zh8@VT?erc2T2RK(9hO3JM~$P(bMME2UJCmB=1t0t8#g{v zf*RXvYJc1*NaPRz731UM*D-=xSP+p%NeP3XN?)9uoP2v=VBm^rdJ0}p07T~J=U;am z=R6kYBZgrdjmP8BnVFdj$>e6<*Py;%`dlsO2sr)2-Me=zzrWlg1lj2{C6h_AZ5wQ( z!w2tTy8hr@Or{!D=Vn30pt7T*HK2+PniZoAqs_p`ouAjNYKj4ip&=mA0wY->4iAE{v?wr z`PpS4h;>p`h4Df1hJqB9NK@R4(*@yF7`DMO}kl;1!?$x^IYR25hVt-M! zz2oLD4h1+0PWJTle27E)mxLiK)spU1ZYQ7YFg^J`izEN$-lOZ%w!IYy1pa7lZtg&K z4m>`TUwELQd|&_z6oVM30vExhJaJLA5mRkiz&M0{C_(v?WP$()fucMUQf--sB?lbd z6yu-Zu^#DZ853t~Ymhy}4A4kQ-Df>;m>VnHm31+gHGe*or~LnTf!qWS;;002ov JPDHLkV1mM!Na_Fp delta 1210 zcmV;r1V#J53C;Y<*gxGLk z%l+A7*Y8b+-7A3*V<2npH_M0L&CKoW%_nm+o4J(?!(fzlPJbkb1d$*TM1n{V2_iux zh!P1RK_rL-ksuO8f=Cc05=4Uj7lItX1w10kY;V&B&_Gf|-Ohp}@B}yrNnn83a|tjy4hhaBzM&4qTD)f zs~{mqlx^rNolddV*4C>H4Gj@g{RUEY732ZOCnhGsqkp5LVMTGXs;Ur`|+$_15` zm9erzhfFc*qRJN4MK0sysgum-^O>XSm%Ddad?n5Woq6p{_6&1$-5$KnlF0;XX?eXX z7_99=(XSwBdqEgQTu?{Hd6t_xuXb`luT)pFnwlE3{LY5_UxN1aQLuU*W266 z78YV$(0?aauCUy6`SQm?P)k>Btvvbm{{CgoyDk`Ab<8kn1#JDo_Z@A(`wI522yLB-(scQHOiusAQJT71koI{ zi=ez;#da0c+}w<4ZBX?6(9g>&D=S&$i4$f+xVg;2I~=SFGQZz%j;>p`equ{YOT6v3 z&wrg`BJp;+ySr%)qDh(r<*y(=co~Aab`n%tT8hZb{C)Kg9t#Q!Sz%#;x#Jj*$Jy%Y zD$kdcJk8vS!p{MG{z)W~yzTPxa&!AO8|LTdZ7t|2aH{9pwQtvx$#SPGqhAn;><|ND!o+JsLmOR|)ePy|6f?0-q;{VL`HKHvu>VnkI;Pfwp78X5{gP~Oi$ z5^w?qxWSX)=LL%i)moUeLCC(%5nhkByCm-EJ2N+D6bZY}&skHtqL&75frR z-LtbG1ssV+qZhyjn1l9h6>Dm0`l7zR{wrL6&d$G!Il;4#(>5?L@R=-2e3~-06Muvn zV+TPv{?!kMnT*Clq0ooHVDNiX-3J-F3X;JAP|?@dcM+TR&tu(J#FflW<#uvwhuPNG zS#R0UFo<20dX$kKmCY5;H`CNDv8Plt>T>B0(gG1d$*TM1m-hAQD7^NRXY< YKV6Z++KdJ$=Kufz07*qoM6N<$f`1W96#xJL diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_help.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_help.png index 0906327daafb16ada597fda6e83055ad36f4a43c..8ba27516dc4d459796c2ea691b8e18e1977a51ba 100644 GIT binary patch delta 2582 zcmV+x3hDKs7M>K4BYz3yNkl;(Gw*~O6G3)f==BCcB>*{K5=B}E# z>*}t%rmm^!!pam`P{cPvP2P7w7WR#WWm)z`R^F6M5!Bw92D03B;w|xKJv6LlSWbl?o&Zp`D68xc@Pop;L5S^&ue` z1p-7!MB9Frsa=pa#~a%a`_`<@+S<8A$(fcXF%AMG2*l+j&;hzm+Qa=<(IgTf^3}VS zEYog}`#i2|K7W=W9a)@IBqM>vosB(`P?Hm^v<;nL*(Z+C=jY{Uue*t zT7VoBqL?|En|ZMUWxeo~2QF5^?64vQbD-UoIRj(%ihsot1rH8%jnu~Nks%g6plzKC zJ?sG|+$cjiDp19#?uD-^`JNA6l%j+c_?IFcb6x+Q1j#26eR=IB#3E`YYJ>_NyqQ);0R>Rs-63Zx~AwB0(Cs2;3DC8w$v#zSB= zUgfOeuHjKC)k?MZr?``4n1_0^Tb2M-F>d6?_z7*j0Y zOdvMgI7E7}Yh0pt5gdMgSiv~uy#!XHzM~}(6NnK0(S#3!oQi-*v~TKWZ!M}&&ibm$ z;D2Gp?)c7}Xrc$iCuo>DL<*^b^-r@enEW1AhL!yUDzWaXH=hN49&sr0um;roR^nIo zY4%4z17)M92IXpBy$>tkR?{%MwLXd{T<{NfK1{&)ge@s>F)w`mu$6(;{`yR!gJb_G zHHnC{-JS77>NC0bV*&)C-AY$j`;=GTuYZ6~?d#z)f?ZtzomQ2JItW9L(@jKYq>@MG z!wL^ppsXLY3|0GEf6@`&B(0YbmJ;{UX)WR~1BrQc<6}gk=5V44V|k#A^>=yUW?7iG z_uGjO^aR3C16?G&1WH<+iqc>pFJ}dZe^uRZHbMAs!qzYdwufhSB*W01=U?WJ^?&C~ zBf3Y_i|3{Fk9*JXS{CdH+6^0$Q2IwE(Qqb2bXY!k%c3Lsa4`=qfd{f9r-A6>Nf>i> ze0()*%i8gnw65``1gMrR^BWrYR^V}!3CBjqlL z3`3jGbV^i?QK}^q4!EwMgr#Cum-h9ToiQv8MR3B!To+ejb@Q&MzY9dw;Y4W}>8g`m z-dD;Bk#cg~{Q;2(Lp`ue4bifV%i&Z@F%Sm|kcmZj8G62QfIrw@iFG?$?tg{wn&^>= z!zzC?`+y#$1A3jzj?7NWbfPE`grNjd$fZD&zQe==m7oV_kdmMsD1-_5ET5TC)H6d? zjZLfm^HT^%l`YagBA~>%6HyT8?+kwDwj(=`lX0G+r6C3qg_Gi;$@)DOl&B6|Nihmh zz$xM@7pl-;z*s0pHTx8VA%8NVVCH$9TEvP6bd{i(m4}lQ2-zuehY`d5ONV-7x6&#F8q*F73RN3yD7*|CcW{>#vRoME zldx;ju1H_hOMB*Gd3PQxu=Nt6%N(#~T%dSqh=GXAVMKYGEU>8s7@VT+6eN~I!Z@O& z_!z&=pAR#vgVi%D%zvGw(}{jA4l&Ri%1};_$!bLbtXH9cWd~+;#Z)et7MuJ07s)UN zOt1`I&nz&VY`C8d{TCyGufg|R!M7Gz822EUVMHos;YG|q5^|UkmaD-mFt$O{tPC+w zZ}~B~eUjxUe<(9!Figk~7-0{%4mnR11lMLeh4YXZ%lU(Hv3wwbBt&<-V1HWh)b!bZ+c^ta?8=(l9;=1$ z`Sy*gm16`D8_A#2^)jgbS?3ueC)4EDPw76AIM|_xp`enX-^qpvPFD4Cz>% literal 2849 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 S-IA670000L>Vpn;@s!b75qi98=Vzj!nNUa*R zN(ri{SVh%%s(AJKU;p=d-w*GHbMEWhzjI&b>q)z5V|t01pBVrETrxL<*q^D{pJJpt z>!(XG182e%Vsp;k)4vLH?mv@VI3&na=V@t()RICNDMnQaa3F^rb zA(v6ob}?UHEZ2 zakNU+IG~1ZZ9O>JRwa4T%erT zVQfTa`WQT|#iNQfs1oYNTI!gL0mfbQud%mBzw#Y>nMllA&C55oM&d6bN8X4l6zL&Y zR|M2!OGYuJv?^GAz^L;kd!6HSEIin2wRy%~l{!Fz9>tExR0a5fXWDWDqmD{OC7IQo zR!bk7`Hjy%>h>TYOBLSR;Z=BFhcY}5kv!6rGQ@Bfm9X?bfAi(0A%^_`1L(xtICyFOf z`8BGZo=nb2uvdNhp$*%TvzOVq81DL*IJVqFw3%ruU*wI=lcebBg>Br}6wB^iT;(4J zxyQ^A?~Dzwk&`m+ID|3TT@Wj|zi4HU{`X?M^-kccDbgX2KK3r?`lra~?Yi+NQ*Y<+ z;9aVUq|f+(!@UrZl!8VYCkgrwwObWZ$R)?17MQN0-{!lXk-2fV_%GqhN!MhmbSMFO zTy=4;w{Ft$@y_d%Sc!2zb}0Fxq;&lkNFc`IS;!#x(j;;cWC>&jPtbC{m#a59I4`sA z^7bh8O7)|Kf%$bMW8ByqSwqi#f9_~x8*r@|v^cmgY!xdHdA)DR?X7zC#r?(Ijp^9B z=Ekk#;1OBe$KyzemDYQ>Lq9pG-BT4xY*l0P}(&wYC#Kr)Imu3nUvkF*>F#KTmI%f^x@vLY^ns=(}|-s^M302=mh3= z&o;lsR{eJ35(3E1biLzNR{F@eiil2}qM1r=vw8o-6j^X&X8$zGSu9e8XN5jXI@s<` z<6%})5A#DhNBO;A`GU3T-wc**%C~mxlQwK`Cr;^pNlo3ou8-LOuBSz;ECotuB3++( zX-!AcmJw$B%k*sI{6Q*(hwxm!{724#c*S*(`zPVq8ywDIv>qj4!rL@s=s>OTYTWtr zCSx$>PrRRyC)dtx_KxKWu<5A|iZV|V3FWxdKF%6rM_Y~wgmg^7Vq9|xb1=zQ8=IcM zwWN4p^pWFAFvLohVLI(KM?ty6DB}0tC%@g>{V@_-Oh(+CfvL6fGY8`u>@xnkwh)sS zE_5%JQCJ#(jh5Sanbvq2+YLu5trqyXqbxDlK)l1jd%e1SA}0>DDmxJb3&qE@8D17t zr$XLs7j>WLU5CMPhLyT6z!EmMRH;Vek5%DvDFHcCYx%zW>B44qd=An$O*AoZZ(^;r zvBnSqD-EfpHo5HdwHGiPRWA)vXBcVHg56>qh34XJv|`KiyK&IiQI<0_ZU z!|O-nN`?W5u*X6sd`p$=5rF~Lv+$dP3DY0o3d^KfTylos){0b9(>qt0flobY&|kGr zz}0n?P1@M@^)D5)MSuJ;v2yGq{K8s_~K z1J9^T<@jdeD`W&Ef%+A z(420lh)}bkpC*OE5oJ?RLU#4ICLD-?{EB+fFJ{o1LOB`R1$) z!(3gzMa*Xk1e7f!^;3*-z(lQi<=F{acx-wD86Ma_XuybITMHg z^?Lr3ZAsXzq#J%_Xwr$&4vxztHq7p{8y`XrOyvwYfWM12O?&zZNfla7A7{UfX&BSC z1&umC3_e{#Y*h;tX`L)xiRWuw0jD`&-?gmGI7VB_&GS@gsycezQEAR~MbSWMS^ z*`@V&SBD8F>-;)$5tyHT?~JRU zuf0mMs|t=|fM4Rif*b}hV3|dZfKpUw+;j-o?(Q?c&5z`Btczv45^v0HN40^lSh66m z8~jF4Lw&(uXZHi+5zxYp$;8v;AUoSvHJE^bRu&+ZjG7z$DJus(H0@gU9SlJ1kJde) zXp0Ii#!pGvKA1*<`g=lfd-NhYVs6Pvx-2`zZU?XS-P53Wai3n+nW(hoxFVVl>f)=Z zhvVc0vUQ+T=ELVga{4rlFPi?k0Xo0rC?M^q^-HLr72lDeh5=VX|GNy6zNct~P2erb z{{5WNvZ>+>DT0OSN_*pu$uEt@1J+kR=15DkodXdO3hAt&E?vWqEsZP*0f zYvf`vIC_4z!eJbJ!XTh~K)s2PE~B?}pPakn^4&Wb`XSQ-?B13%%VO90i0<}*zd)~P zL(NG*xMjVnkRH1>+FPNPB@h4N-tOUvsd}WEBTDM?)He6+@3)!lCKEP_+k`OC5+&vD z6-bCzpQRbXA*+_dQFhr0@7i(RUt5&5LW zM(oMJZx&>gSTKebCrZcslCyrt5$U8aavU! zau-kxiUm$nlt+wQ&I=qM;aK#NO;shqi$AFX-UYZWu?M@KKS?<-g)2aAL1Ox=T!Ab} zjv4o&yPK04^3uL+@Z>zq5REUs&qHph<`pv-Kj6;pnPY4eXbNf1BZbCvIESFzEF`hJ zAM3ftz?0mHPxw6IHDxY(+41K|WggEHHXj^1ZTQfkx&cR{tT)VtQ<8>lPcU!ywwDV` zphN>r3*eYDb421f?6ZQTF{6@E)@eHA38dZ z=x+!niA;=0!l3%3a)?CsjUhiAldB_3%-b;FgQjF78H&FD9S52g!#pu zA-4ZOK`0nJ6rd9RnDN>f;rl}zP`+VUFAN-D;ByAAnj^jZ;P!AYpD1)6T<2^FU~X&! JX)yFm{1?bNj-CJj diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_settings.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_settings.png index 83d3e323f6f7246cdb3f4a111ace05f9b01cc72d..8dcef3e76b45c09111fbd69ef107ee90d8d85d33 100644 GIT binary patch delta 2300 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 V5xu%Gw=R|dx|)U>6>9e3{{n1J$v*%9 diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_sys_keyboard.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_menu_sys_keyboard.png index 03a789322ac95042fa6a09b5ef1f182e89098122..3d824d30a7f7437f5e5706a165ba3f1f8b8a5d35 100644 GIT binary patch delta 1378 zcmV-o1)chr3-t<+B!4_fL_t(|0qvPfOdCfW#=l*IF}OerRf~D17l@%8DiK7as+WpJ zs;Sg)NTm|o3+a^`QaSXOK5XWf@yz-^V2nvJpdw>rau*~8$w)y`kbe{;1xZ0tkQ5{Z$w)y` zkQ5{ZNkLMO6eI=7D2%aOBnlMH)ea-#ghnt6KRDojX_+I>KgH$Rw?|N zH0MB3aB^~jy}iBfdwY8y0C<^?AUjd(5BMF=kB^Zoi2u{fq7s5MLcC50(zoUYXhh;8J@$?9f?HH?snH09YD=@462~O>3@8SHz=JTBD)}s$RY?xNX#lo z6W8V_NcdBbWA1!)2Te^)5LsGU!otD=nrYwH0|OA*+1bI= z)C07%G=IbE^+M#w`}eW^Y&)f(csvdoN|8%SP@Ex2TGSYzSL5ZugVHyLYDn{6+kui!rumM2KKT+k;e9<$tr5A;(9Y5^*9i1{J&qiCN5=$;nCn zdH3#pi{w0f_>+EPhI&^$zPx=KB7r~v)6>(u7xdh`iJqPwh%7HJV`*`T_lA*?5hQ19 zYz%rvM@Nw=+uPfG76Sw5D+T&GEqezCzXR|GaSm&WSrC22xS(&m-U|s*A(KszOwrF` zmw)~htEs8sW01?`5?fAfZ7r^93OdbqcXy{8qz?`bFgrT~J@mhZ*49=e{rbe_)2G<{ zb5p-Bf&2P()BL)zvBBx+=-?#60N=U~KA#Vrot>O?wIWg4I6OSWFLQH+6jb8Gnt;Mswy-zHX=EJfFF9QtEF{kw@{&CSgyaO96wg+Byuh@k!beN$me z^dNEnW34{={Q+a^x7LNQySobt-!3jLrm85K%C4uUXQn%8DBO#SI3=7!IH?{TE9zOy zQSLxnYwJdTfB(+_o)OQ9W5RDd|CeBwDyYxXXRRcQhq+drOQBu}rTl$#gh!7bzkik> zdzqb&U2hZR<>f{XI}Ld}o&lP9e*b-7!kv3 zW_D)AvKE#oniH@Nyr%I;oCC|4qJJk845CnBOcM)+EFVEp;-$Wh1pEgmO2$E2INjRX zD(EaGQix?AjcEvn!w3dLFA7nU4iSeH70xF#*flc1B#0g<1&ODr77j&(AWB+6Q1pjl z>S4*tHA-S1_$vmaTP!p!`#2nqGmq!{j%uS_DuFx%NmR(llB*OX1xZ0tkQ5{ZNkKAFkQ5{ZNkLMO k6eI;nK{8U16jY%650vcAisbfg<^TWy07*qoM6N<$f>CjJw*UYD delta 1412 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 delta 1401 zcmV-<1%~?m3XBVoB!5#$L_t(|+TECIY!p=(hTnonTYo6E7eWN(Qk4)RNCageLJLYm zy!UT|p(ZC5DWd$+r_uoMd0V!>9rtOC;A z`s?$}bh|O@5IS~^(Rp*u%zWoN?=y2QvuPp!u>O6(2#@~(K!2ObLwE+SvW$%)AowR? zro|AHhEmK3$3_kagoT8R^#KXU?Yq-gAvP2pIiNo*yy$4`m%Gw0HRYHYifRYQJ%q$1 zTYr-~iv0bl>kzA&Hv+(Xlj*kHl3!VFOH~zSM-_mig;}@c7uplSb6@||&4`O8V9^Kh>XTMte7wIFn6wk|e;a^_NQDj=cpKYlntP;|=8bZl#$9q+ zE=w;}P=`%y&w!4(6Ndwsg!x#8cd!LnnK@ha`3(lA#eaL9w%ziR)QelLDRRhZ-gh(Z z4O+YgXMV$0eP#}_u!Vio>5-xiSh_s-ps}*0v9lxCEkDwL;`yp{v2Kw%xx#CTb8$*M z!Z=GfkEJ8n*jZ#gXw2A$rGEvCe`S9syLf3s@rvD*u6$I!Jb$+bk3<5-&HB<4yeu7ZQ7$pnCTFEej!3S2Miq)t&PjV%ZoW^x(vr)ZD(1S_ z=MwvN@azdr_ylp0fYEq8J*O?$E*F?|f*teZs2Dif4r!ygn%b1vFfcEdswLn8;cdb6 z9K4265da2~u{tf!9Xu}{4vC4+mk`gvawJRZD(1x%MW6_F@7)B(kC`zlEa9}Sof0NG2r6USjEWaGAlBv zDb&`)JS+3vQhy_5A6C#l4lyc#Fyey+#kPTFIY*0=a{4~{o;fBCjZsmQNm4#vjgxEOEZ#H3$R=~!+U1kCfOCjx!(!7|P%FR{d;(yvH zp-LGqD}+2O%kS^>NDK9e}*AfLCGIz?lr@_8^3N?E!W&+A@;VVr5Bu_C~l@-#Wn44*r(>uk8FR&T8 zX_n%fHnz1&3*&=%FlYljyU6AcD}RkGtnE_bPqX0w-p6drz#MEqewwYsZ&%vPtQ|7T zgeh78E3&S%3dfqI)SvD^0ZnIfcR!4HBw#8b8&QyXt|2g((<*Pcpwj}#-05wXi((Ee zZbl(CVGd2lVGLqIyPOcr#fPX^ecl|nDDAS-iDRSlsG>z%P zkQ7KFo`Mb^p>mBUyC>lcQndVq6Nkn46x%Tm(+15|az-&L8BasUyuHki)dCp9u20fD zDdP7@9g@o2M2yw~h#?{lV`*^TgE_IxeE`q^h~Dwv|8L75zOgR|qWj3100000NkvXX Hu0mjf*yNz; diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/icon_star_on.png b/client/Android/FreeRDPCore/res/drawable-hdpi/icon_star_on.png index 1bd81fd6cc7ac48e7821aca03886066f7806050e..e6fef76f2c5ad70dbf90cf52f2766854ca15e71d 100644 GIT binary patch delta 2253 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 b|CRm&*c@U^h3UH@00000NkvXXu0mjf*ZqN} delta 2335 zcmV+)3E=kG5vmf9B!BTqL_t(|+U;6Bf@gz^)%lVz>JkPnm9~dI?e~rfm#yCATFn@jwI3Rrm_%85ceVs5a z4Gatn3=5=Z^YinQaW6KTEf&x7hlv||1O5H|{{tlFb?eq`!MzYyuU@@AZ{EC(ct6oD zcFYZY(Y*LUadB}@UtgbGzkXeKJ$CF^0(-?ScKjJYn!0-RYMXu#ujg9_jAxR#!eBK|=nbM{VF?mQ)vu#o|lBU0q!=I5;Rwyz;rN zt*vkF+_~O}d-_2+9dF=Y#yv1C&(6-y$8b^OzNXA7fBLN((tPJvd7;_Zsr~QH$KTaeqU-Z)$4lpFMl_4#ZDlxv@83 zGYF>D85tQx7$(9A+;Yw;#Sw;do;0K=+>o9tS!yn{x3^1lbaWcxpBLMBFmOVJOkc8O z$$PD>t}DbsTyj(IP`bLn{CB<;(puXU_CzFFbMsNM8rs0C!*= z@G`Ii>wkO+hKE{hTB^|cVTKIlqDZMBy;gHhd^6M z13&?KAqKs0$Ra#iFplxHwY38*Pag7-m;9`U^?&JlS85&89>%~AH*DCjFC-)+Gchso zbWToAU3GQ!04r{2Xix$a^z)@lm!!VFUad0!sX*(0g4VZDI8XxQqZf{&7d|$m3o81)@n4X&%JVC4-ONKV-5vQR-Sck z-+#U>O!ZY+a{L3del#d^%m#pL^n%rp%n*yzRb~kj%dtFp$fxJW{km8;K^@eyaN)v0 z=$kx}foB#hSnyF*Rn@@7ix=4va^b=Swu)NI>rwgHfn{oBm++ZKV7+UW!TxXX9v!oKQHIbom1i~V?89s$B;+}NZExUvD=Wk{g|BbhTKX4 z4TYZoGED}GfIJ{uzehgf7|(JnPag7Fw;2-iJ460`#FIx5RWIwO4(frfp8!vcWPgAG zu7KBy6)X0amzNJzR#vL6l^Ux^0>YDkG(rnX*RWBf7Mp8lAlGEVW-4>S#6@26Hzun2 z!FnqyDh8+ndNu-60jH4+IO%Sh1-y>4O+;yF=^%*ISe0s+h((b@K(cQ2OpTLTWDal& zDA35)26C9sI31s%%O`6-@RFZP@qd{!XCyN-vvvCP=|R+?^-LUT65E@Y4QyVvY*{4E z_k(3+WojtN1(=A^6(#~Hc0(tZ2JB(#1)E8Dg607qdC8An7wqb-)22=1%JUk1NicT@5CdUcnc=tQd3jgX+rhHS(w-}jEM|8 zr0e&Gffx!0LLk1STzCK^AAfmWTwFL|e`yx~a0W&;;e|>f($mwgp*Oe@LAXU^uO1HZ zz)?NM(|}{46i>B#lP4)Dse`=W|J6P5qj{J!oA?IsZd_bkQ$az2I{P#P zOqSk2ghl9HIINMt`N6B{Ip*%r>HLc!O~Dp56v-1D99#|FKbXajrhfsmi3z~o+}zwD zj@jFN-O{)N8&i-T7SY;7lx}IOzDAo?8_b*D_YJARro}`9v9Ynu;N3;>jy_ILnlfcd zEX8x9=|7((4cn2m8`!HSW+?Cp@OL0cU-wWr5TWlsFyso#4KD7A-esJ4JUw>eAa->VvivmO2DSj3Xv89t93--RmdJ1LyjABTj^!tIeI;JM40r$=ATZTR!RoV- zF%-rtKj!(K`SNqD|35=K477PY%QKdW2@MTx0>7W54J2{Zz$&C#SbhXC>mfWz38zpF z2Q{Vx0|OhEFMnU2hp(!3KJz`-eYx5#5)#0&1bLK!goK11@c+YM29R9m%$bu(1FVpf zm`Mv~YpWeKEG(>fSu82MH$bdlb%zY0tOoPoL8$X3ST*N4w-He0`$hrAvh9%aaP zca#B7e}Dg4tlRuvWy|%iTD7VK?>_~$QJ@z34Db}-WZuC|MxF!S0SoR z&qJeWz<-?PFJ8R3X!q{jjhi-Ys-gg3mr1y@5~_upVP|A2@NKp<5C9~SkE@WgvvaoT zH=t2B@HDUrcwZm9o(H~Z7XE-dPiQVz;5#&;`GPe6L`NBTN>}y-!15PxdE1jSOj7}oYM9upp2mFa?+@{C>>=-fT_%G5Ihko|UKZgJS002ovPDHLk FV1htRX$k-U diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/search_plate.9.png b/client/Android/FreeRDPCore/res/drawable-hdpi/search_plate.9.png index aac043304a91969dd717de422bd0910485de0b9b..8ab6ad770323c4de21acb76c4dc36444db6bc883 100644 GIT binary patch delta 210 zcmZ3)^p0_YO8r((7srr_TW@FavK@Aia7n*;`)%vB@`kI?)Al<5UsU7D$gx*fk7sLNiBg%DuKy6nYmSexkrTRRFkj()s~tA$5BUd_Ltx3l1RMhLVHW1P43gFtH{05ZB(L$y zT}_hadG;2jY0?^7?~$ZdRUXGt2_(G}NS>y5c@g%L02QQ8ReyOO3GfO?fDuvw6;J^i zpaM2P1qd)g1Q;O|AixL_U;_xS0V<#ZDj)$WNF`vq_;bn#o9&7xFbu;XK^It-<(S}e z1NRVJ;1;3_Tte(e;1r?@oI|jIE^rO8AA$InFe_mDxrU_2KlpOLUcO8Zc^EWz)c^nh M07*qoM6N<$f)DFvg8%>k diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/sym_keyboard_delete.png b/client/Android/FreeRDPCore/res/drawable-hdpi/sym_keyboard_delete.png index 1c1c6ed6c88e4f55ac9c32bec7623892d874dc34..104c1b92207ed778a811f9a0e68cc83f7bba2b3d 100644 GIT binary patch delta 1502 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 JPDHLkV1nj*{rvy{ diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/sym_keyboard_feedback_delete.png b/client/Android/FreeRDPCore/res/drawable-hdpi/sym_keyboard_feedback_delete.png index 7531c7afeafd269942623d960b640583de1eb68f..a6d87337dd2cd4b2a75825986a822374b111fad1 100644 GIT binary patch delta 980 zcmV;_11tRf2kHlqB!96;1YWcKChPB-(C z&qZhE^}F8AzjTsPswyR6F_nb5mxLu@Nmvr5hmQcER>A_bV1FtykVEb#72q4T&7%Rv z;VLYE629RTdQn6JQqV)}Ctw5x!?wSWACIsQ3MOx{5?SaGX}`d*?Ep&S9X5ztjnB=EC-| zC4g_St(&kojU=qvRNb%*OQ8-;2v9;;VI|~|Lyb*X3V%LUq7VI0G4U0fkkesSQJGL5p|Tx4Xc;0)3noQffw-; zZNe@L<9|E~@I+J_Zeb8RF#~Bh535559*L+km5N5kv zinW-Jn_{vn7E$u#F%x@boFQrsGOkV@X*A=in1AdBh_#NAar-cAh&n8zT!eYpASU~P zRmj1`$f5_Yp@f&{5#K9k|6_A-PE7a^?Wlv*5X<~Fl)*)DDR6cj^H9JgG2vabp%xay z_}v}FA1K46!083rLo2R}39q9y@`U1ehNu(hHN@rNISGrfY%W`z9jD?fWYiJNLo@b5 z#(y10&RLj+$&}xF2xp{zz7bFiISIs z-5ACxd3E^O(4} zcH@pw}itZ(0Nmvq=ge74~SQ3_mRg=G(#m_wff!5%` z-g@!UV~Z{Hp!CqAksLI5jEKP=v=k2t9<&lHQi`=GA|gZ(Ln&!UY-m)dhqjk`(hd1H zeh(vAesLJz%b2{ZGw`9%%)ZGtoxFc^pHiwW`7j^m!+e+z^M7Ign=n1{2oP!&^rIVX z$UqMHIjMxaVQvvEFb!v60hDkL^O!&xEl6Q=h|dY@C>iGdf#Obtg-|fLg(JvebJ#x@ z80J<{+3B!loW+}%h0+!=l-XUEq&;U|JWk8mwm3&up|v1R&VNU#12cL34a|3P(irMDk!3Wbeymh@;HJi zEI}p2U7SWihsBDz1C>C(qZB19g%&)AU!f9ga5KyvmBTZ*Ee`TIUcwNwDpIhMVezDX*`W;)Uaj@V@^c9hc0Ab8x3ej8T*li9F2GkWj(hc zLR=+kSbwv8ou++&Ze(E_X>?!=tGI{~vLdPvUt$@rU_Xd+AJ&9H{2-z}M2{^>eACCV z0;Ns;9aj_eHI%l3v&gv)Yr+7gMbs3E)~Kz=I)xR;W0g@6Q3~sL*;Sa_7T=1+E+LRn z5w_xMka1V=o%p*AOyY5uTd@&O;F?(MvNg(n@_%>~<1)?=bpRPxCyxen;)+=83lJ-! z;>W#?RYTO)!-)93a`rEF03VA5zsCTYV#dgA{uPwL zr{YrJ>^hc3375oz-=GhT+l;yfx&79l43`2&VViNixGEOBirxqdisSub)CEi!;)=++ z34gP1o6lmL9oz5`WYjtIpcCVeapzHR6(-~QA+KkjMEq&C;vE^KgEBQ|OBwf;yD;-@ z)wJPWF$3Gk>bV!Nj>(!Rc`0}mt9V}=-&vT93o#?&-bH7GxDNE;5yNL1@G#2gaCq{t zKDrFyhT-?587WwXo|Ay*F?n$v#=MBTh+r3Ra2KDTN9|A0_PE1Xgi5eVoVQdhcosh= zH0myj+j*}zf+_r#ps4#efr5)S!MzE26FgY^CfNUfMIYwFe3%dOVLr@<`7j@5^B0=M V&pi`AjottN002ovPDHLkV1l%E)z1I` diff --git a/client/Android/FreeRDPCore/res/drawable-hdpi/sym_keyboard_feedback_return.png b/client/Android/FreeRDPCore/res/drawable-hdpi/sym_keyboard_feedback_return.png index 3157c76996c56a374df620a19b8d465742e4b776..19b33da5fee3612f3d929c66e680e032e22ee56a 100644 GIT binary patch delta 611 zcmV-p0-XJV1^fh%B!5FmL_t(|0qxkaYZGA@$ML?oT+_=LD`})rnpkYBX`qNG4pLkk zbg1Csq6G(`2yWu&A`XK8fRl)#2s-o+=pcwVbtx#tp}1JA6rqR^TB48N<%I(;R}aH^ zkGwzltS@}W=N%A{|AvckF)qf%xS0HKF)qf%xEL3c@eBr0#eWzY7(odJYGMpR9LF=f z$0}anBtjT1F+(_m4M-F=FpEG-%qW&1J-k6(OUwkeAU$m3$Zs(@-BENP3EEm>T3N>U zsG^Pv3R+`)H1G(YFprAH7!L>W00O~hG_}Qe7{xvOghaG7#S~D(Ep+1^))G@d71yx? z(Hdhgj4SvK(SI6aP{ACwAQ{CNOk=xWF$N*dViS^KjE7T@e#HbhjgOFwV?tbmBt?Gm=Jd$3jDwVDj0~1DSzW8x(Z^R;s6T0Vm#DwAChAa z(S#2c7sFUFdZ*;f8WvEuAxSZIKALz5`G>w>1y67pK$JDBxmr`vv924v`?n43_`^002ovPDHLkV1i=U1_b~B delta 617 zcmeyv(!@GJrQXxi#WAGf*4tbAvxO5S4t(4xV4gy93^r4p%&z z_`LCa(cy#Tmh-+pWpjD5KhaPu83|psH`MGuTrY4+!j-prVsrB>33mD8A6W7?cBNY| z%KLfy$SwcKDI{t$+tJbc497Hu+&xaA-e)Y#tdHb8{E%;0Yvq2SspP^Hq01h|YTZVw zG!9;tn(WHU|ADbsBeUn^1BQ2wO!9%(#U>x*c=teEWzj;-W6rGR8)UyH=^DzN+R^r2 zV67qF;T`oo`5=bsnIz#!K|O~>wpEEfe(;#bOhNNlN`cU&)iap<9@?rrm5>itl-+XS zhNq95`$jHL!()p5o_ktKKClYkO)8pk$VjE}bH=}gnK1{HmUNr1DDOI%B%`lT`%Y8q zZPF%-4%ZH*VvQq5d6Gof!1tI9U9f|3H$?F%`bTG&g-H;#mCNPcl3(!od>)K1LxD}01X1a9`VAQ%6be1S z+zF_dG_28R)L4Z5j55GY8ubUkVDKU4SLwNXMTA={!hVZNrBbiS5CVaKcfv3k)Whvo ztMzqA*d?gn&nRm$nS4b?;P?9<;k-4t0EIEip$eMtzJI#W1!RC8ppW~-{fJtE)=|JMe*0;E9SP^5B+S8;a5#LQ zFrw4xe1A8a&DZGbMSzm90M~1^+9$#YT>ek!J*a`Qe*xJPnURjRc!GOkdE) z;4)l-TBwpBi2ag^Ityjg31GPhW&nfF76vf*&@p5HgRKDxV6d6P00!G{3}CQfI>m4} e91e%W;rsv`Y}*2d1@7Pg00004om~I^!1<_@} zF7+?$WROGy>DH}Nkev**(2|UZG&4kJJMAE`LA2Ap&!+0)PELL-Yd`)wmRsNJ0-x zV1h7#Q7{0y4_fU1n~XfYBrv(QwiaAjS&3FyU0n^$&(Gh+aRX5ED5e4DH#awvtS;$v z`a5cuzz~mO$H3&)*49S7SgBMhqBa9`?Gmf)@ER~gpS?h8^4i0|lFQ}NY=@vW3-oOf zBdI>>@Mpng`hOgu<5H7i(+$LKg3*H(tCczd%!x$eZMj_DUSD7Ts?+JN(1UjKBPN%c zSzccL%xdCvI_)?<22`Ag$)#ek*e6yOuh;twwKG87tXMXi&9qNUE@c4IBqfW-<9Uwy zIndX{wRK>o&0=z?Xf*nf?Gm@!?PyX=qRDwSpU?l=MStvuvSM;6OC%Ecz#7Ema=pNL z7r`JSA)Ue8`h!V-mfd`NHCz3SRWYo`Fu}1B~>gI|4dCy-J$74rIgqp zn8;)@KRP9b=KqTNpcY6+LM)j~E>-$A&;u3d;<_nrBY{BRB}p0RIV2L}Z}7mXV*^dk zH#awTmztmcpA?0g;eK&(@qyiLzfUU*Gq?aw0%vV?6Q>%UCg@XOjIKWnG*uyaxLHyW zJwPHFhJ!_LYvJIvrL}PIqS;zF*cxaphh{T}N3nfvzkwFgd9j8Yra$N=wl@)w5GiQ|o#UgYclBM)TXlHJxU2^!X0Y3m<;)@S{J?Qm=nx z)3-gfHSq*w{1@B8%Y#VMhR(%MsQ-w)*>%#;}R}$#koaenCN*}H>XReI34fM#gv9BYGx`fBH2|i z`zp$iQ*Cm%FW%Bn!Bf+yztnXnk>Y%)8}-L#1tsKKi9YMwLox~|<93uR)JBWESCJXA ztWP{L&XGZEuz&5M!354ZS&wBM8IYkMiCzD!Fej`zh?X6*!i=!uKZC-$GGNth(rX$r zVi3XMQ-iL3?xK*8hWe_se^zoKg`}A{4&6jMZt;6&J-m?5{Pq-;a{E>=9do4 zDFO9E>!(f>Z}u~WQ$%ruJ%kbAK89Sg^Y9 z4OY#-*TlUC$YDzIc6VX;-`;;_KLZ2fY)==*kcwM(CtCV5F$%OEXYo!-&vs%G-MDST z1_QNiV*gs!>iFvX$=Z5A@AxAo?xG#{*n|(OO~~l9Q_tSI;M%e8 zT{F#p8l6me;eYz_Yw5eQZq57ZzqWVXw|`xEH?}Qvc4K0l65ztMNN~ot+jR}*ZyO7Q ztlkyyn_bUdVPSW7bMW?WRZU6L8l~BI_Z)gqbvV*F;?Db*hngn~W$j41zsS((i_N0h zE7?TTC&%uXaV5a*Bx2MJ^^u9&`Df!J~fy8%mdKI;Vst E0A30O9RL6T diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_edittext_search.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_edittext_search.png index bdefbf5c67d8f6c1e8103629619a55ebf4120cc1..421c3e88c51eec0aaca8340c918e67e7a4530892 100644 GIT binary patch delta 760 zcmV!Fd(9p>X1`syV}^->}+z`T}{qLk8Rv|QJts= zeF4kw)7I*WQTvIbJ%gU9_M68>-ECfbN0l#QM5l^_fyxk3n6~d+U3a~As)ZZADnH11 z;#_5WZ+&OURexiB3XIHzh?3d^{WYF*tz5;iL>wV^OB#A>#JpiclpgsM39H=|ClB^d z7zS}m;Kb=Y1Gvy-uj<+D+hs1o9u^60eWhZxXDrHtW}3nZR?*4I;H<0^i+ovySujOH ziNe1ktjZUm!z#RRB8Xf_u`H}gr0cO8gkO$y?sR2d(SK%Ypca&*BsJ60CfeGu!&`i& zEvF4FKTo&U6o}@tntm`K9zZ5DLbum^!RjjYEX1tgIjIo#IJI2NcBGAM8j@y^Qjn1* z{;**r&y_nUmaD*oBq+Zx?E3!v0ex56dF{A*SUr^NGY+S_wm6I;eG2qdj({Ik;O4fd6T<1GNrUT?e5dPpqkE$*%Ix;yXN z-dMN0lAU^I{G_5O22o5(xQAyrPb&z>xc*(fxGyD|Fvmw46~b9H0>23N*(gkMRxql=Wu?BO=7`h>!E>$<6MJ(`xs6qXb4X- quGKDS=J8)2!s#7q#tdfhh`s?QY3SEI@}Ud>000045bDP46hOx7_4S6Fo+k-*%fF5lweBoc6VW5SkyZ9eIbxkI#;_8jdEa$yzURq)VYg+d-n_~A8d$6BQ)21>HcY1O-uSJUm! za=&9y?%It~lg$jz?)7~4xISh{6ZiAz|34now2LXSH~v)8VdQV$$a)|tFfEN&>fWRJ z>=o=nlja#~Ofh>VbSLYnY1Ud1CJBaPX$zy=t&i^5qhytEw6r01?-SAYQ_ek|Bho6F zaXe#jq4>=|DcP@AZR0|^=v56r4Jjt4U|2qjc$Y~7W6WjWv4>+e>$ zo>?SxvTf1T&|hmescSTw^WL~8DBD%fbB4F|zFvLFT_5|X?@9~zohXp=Tpn4yifi^~ z28P5ht*`p_+3f!u-_v(JsZ?vto*f^zCAr>j-F-F9f7TTXw}{O3t6qFwCsX(@P>k6` zv*F`nw<#0>$R@U`_kjH9iQS11$54z+$nTfOd;*Lpzk{G%EyW( zH!NCMJst_x)c0s^TXj|0QRLcnS>>&nduK>xKAzrKpdzp+JZ5>xu_l69gr3!9OmS}1c&9_{nt2?vnpO&HN8s1f{ z2Y&s0_-bZa>I6wO2ByAzi*1_%LY{{v)p5?dCc>xjp7qtAplt>9YSZ{rc#rV3e!Ogb zc$Sa6t8rF^l%*yz=_=SH?f()Ren?Rn{7b@v_b$MP8&Y>5o+ zFT>eFe(d1oeSTDGW<*)R<<$Br2f2If`<1{1|s-G=IbXvob^$xN%nt>J-} R5GbQDc)I$ztaD0e0suz3sgwW! diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_launcher_freerdp.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_launcher_freerdp.png index 420bab31bf88287d192c22208de13764168a697f..49726f4f0f76307d4a458376818e0c62d8f70f55 100644 GIT binary patch delta 1180 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 diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_disconnect.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_disconnect.png index a9cb40071897329c0983e251158432b01debea3d..99c1ad45cbbf024d1b530402d9d33a9256f1d93e 100644 GIT binary patch delta 1980 zcmV;t2SfPj56TaaB!7`fL_t(|+U;0dOp|9A9-ii$;5No|x!l>ADq(IE3IQz$@~M$&X6rNh!hmz<2%q{kskv zI1t;pb0;utX z8X6jU+S=Me-QC^3uC6X$Yinz$wzjrMuh+*?Q&TA;BZD$QtOTn0{C+JQ4wtgOgw)jW z5}G1qS_-)X&CShJS655r<>lmbIHOQoVzvUqAtb&`M&u3WiN+|=Bpl&Pw!BD^`(!yDJHUvI|wG~hE< zQLdjMNCch-UIP{aKQ%Tsp5Suo^m>%gj*?euH*Va>7EdLPS~`|dy6Jl;6ZQFg{8m(7 zzlE6CA290f-Mh3~w{F!D(K2ApkRReZQ$@slV1EtDx^E-!3yqQnO!JnaIV97n|+&A`LAKf~8dJc2iSRlXh)v zQhy0TYCe|_u@E&FGO567C9BmI6_w@<>m_OPcLxRroG23$LC#cAUteF4J#*p0g*vpc z=5#t#*0^hGXzSLk;~_OklwWxK_;J5pZ=h_mSt*48bx5L5k0T^EEkWvbvpV9Pm~_); z?3w<)K3Ad5ra6j>RmatU6t2~-UcEXNsedU_y7dUrSeDU97E2z%7F`kpNpXav)mP!7 z2+E<-7P->WnL0fqL*uG2 zp^-|q7H=5^$m{h|=h4ogk|oMzaet)Fo;~Zz%d=>_(=)Mhmy5i^k&>nf2LC){$;%^? zDVy7$OZLr3B}-ug2LgczlYy~0m6fUGT*7Fi&^;Q|;z>Y-DK_2*NzIW8tgdmp`)%+Z zE97uG!$kBYkQ_%yjJtU6-o0Jy9~c`(^>f?*47@%R@gtFf-&~l9v^PF!woys-_PQ{3Xdp%)#($(#`OtkqC>G<*Rc|n$2@2UiUjr`!lSUgo7MwhJB7n&d ztzV~93WeJGr9EGlZkaq9sa}vW8jTu=kvS)a161Xe1L-c^MVQBVV)zi4IqLW!=3B#w zT~Sfad8CxWBKvtPk-aB*gfyNeZ@e6d?#Tiv6G*XIhRjSwMyJ!0vwx%{%m$avo-)>e zHj@_}92`t5Ei2VrE*COMnVgfm|K7cO=`st==f%ZavjoX9Pkjy;@Df3^wlaAxJe3Jj zAf!d3(Nvs&dpHXW>m^y_6U@_2$gGu=IC;2Nfw^Z-YwW_nKs(O=CK{&+iWggRv^iP=B0JP>W}54dbtaZNY2&xAbF`E(KTw>77VnwQm)}2RtJMpjN1@ zO+)I2PoF-00@oZuY9Hd`qeqX1TUuH)7+K{JLXf{gc-W5#nMFX#IEMUqlgf3?@oCS}Nf5BvH2oYZ?Y z2CUl3ii)uM?!tm5wI>-Bh6w1;L1`edVZ#Q3s^P;&j?@y-R}ve~KJsU^cxr}p#0UKF z%a<=3_q4X|YVde^tk{oujDSxR_`7V!jvXy`qj%Z3tK^=!@(l6J#C_w>1m;MGeJtI! zlGS6#@iIC0hBf5U(|qs5{ud;EMxG`MJtLl&&5+|~j|u{QC#1^p&iY&Y}(g O0000JMTz*xGLGx^*Az*0tNZ&u*++JGO#Jg~3?Ih%j)lfj?Lnu(1K<%K|@Y+>Zu+ z+<(XCyg5s1YV9;3(ZnWCa(CZ*@B7?yp7We@H-m`&Rrt>n(tiPIKsqoV$N(M#9%smL zhODK_wYs}ONC(UY9*~V+1l|NT03QRNG30oItStkU2)WtQB{m%*vw(TPQ@|=<^Q~LA zTq7eRLjwZ?k^cVvXm4*Xg+d`ZeE4wm=+UE*;o;%I8r6%-UuNl6J+RaVmW?b~VBu3gmE z*B3o==1i9mdkI)L6|K~S63L{CCf5G)%XLS8|KZ5aK!9p%YpE0)TR|c}KcDn^J!NNS z)7Gt9Y1_7KWWe7>qmlCR@~FJLoLanIj$Y*E&71iW;eSVfdjQ?^2uWmw%z8v6fQV=< zEiL501|=oMly5duVL?HxwY7D)r>7@0G&JNJ931p@cXx-Hnwo|U216_}Gm~<1awr$X zDiJlG->-$k;VRabkeWSRLbD`IYZ2~1XJ;ohH#bpDO%1u6PHJeVkDNMnDv0&3MZl|p zR~d5rE`RXF@#Dw+h+uRZqQ_AzD=)`$nzf4;FEXiBlD@Q5gmh9B%P(KPT+z|lp(0aX zUr%^*YJoPcUAxwa^(^3Zj-p&Yhatj!7jA&`%4CaJ3T#4J z`?j*agj7RALqvrBB=4DwkWL=53VPV*M-??THc)kSHM!l@DrJog4bYS*q_ zbraDVU{O4&IASw_`y^VM@Pa2HB%!0#)%Ur{04)O@+}q> zDHy0z96ddOkleHet~}4&}D+m0>CE$3(zuMnTGMw`uH26(EKROi7B5 zrTX4&^ZACEki}9!Ma9JtKF4bbgk;mrh)fIuR4Id(gv49s%O;BysdMMtw$f6K+kb|` z;ougMl9ZJAYBo|3Lc6h2X=!PM1urj~KcqDncV?M&b$0_%l+)#l@NpRRdy*l&`H# zgQ+Hv0_FlMLC9}1o0X`ub8L&m@H)(EZ{&O5MeS9HoLMCwXEs>iWI6x zL$r7jP-cq88&7JnWZ?Zqk7vvd?Qw*hE>{@m-T@XS5E9|OdEmf-LDmn14S%8fx$M6J zo|&@vWTc=sH)bNO$Z91JQyt#x^=e^7iq;FUEyd6sJ2m`>XQm&e(auX|jLTq*PWTJI zp^DPr;PD>r{J;WWW-3w^i$&vs%?e^Jmy23J3Juwdbpxi$gAPXpK|`3KatIy3g7eP- z_a(#=q#FjUFq1{`q78lOamKSw$%n>KWtml+?|Q?>+b>kQxCglgXrk7+DGm z*g%zEIpOY7U4(g@Cx%ym`%{e{EWS_;k6*yJFOCDMBqCVz3`d*qGR!_mEY zAY}$Aj+QYuSCP@{4dkk<470$cvS+0l(3tVE$;rvAs_H7u?RLYHl*rk+$8O)goh`G_ zQrUa~m$YD^%u{axM!ZB2rL9C>2uBo}FsQPplldapmOXZLjgb7B{6$*o2!>v(Sn5VI(Ye`0~CAP2?16c(`}Vezw4NoKye92ptGIQHiQb^V29L z)l=EHIz(|w@WhEXz9iKsnV(iwRtY5%7n8KNHOrdOuhMrw0_CvR(!cq0f zF6=_pClwCe8b2-+4?PR95vI1e^0iwzwd|+aiE^9}2Gk!=D6ICYgOpHYl&(HB*-rYI zo%uWS^)u~sXtH#*jD#{s{c2cMsQ!R~Q{|jqqJNejI)seYcn|ewf;2FnD74|Y-AR!r zZqnb=-*fZkq~mrQ5`_cvLAH9RB`$NS6Sd3#>9cr>uB!nGq}{A6${C#Lv@lz>*17v)6bzmk%H)1>zcEZJ?kL-VyUJE@ii&u==$rphSBv&XMbYN zL6mCriw-vI}jh~1x+b=NFd zs3T`nt>k$yvTBSI0UW?G{BT1LpMMA;UhGuVk@<(maI*+kcpajOk^P&Us}~xu8CIlu?h6z z2>!$i1Tl$503Okgq{jEiMkjOTY)hssZQ*H4w`9!OlQ|pt9wjyXY=P}bPJg|G9*hAX zM8qs^t&CZexlU@$nd#r*t&^0wnB~^WSvCk@y9ckpgYz%|7|aVxBe+p;rebg~IN`tR zzZ;ww96VETqhJJKX)q6LooD+soB|<^b2uxx1ehlv(1$#{fpLkm(m6JW%{MTD6t18T zXSpmUi~u)XMjT8Eb6Z(b9P!A}`E<^Q^Wp#e|IhP#|IhpFeJA9H6mG)U09m@d*JS_z zVE>N@f-vjdAbW*w8?@`k{t;^*Bx5%K{fR%|0D$}HFcbhFUFLwZC9@_*vMxA!Q`Nh6 zIG*jxmoVL_$0G?2O`}|MFUVmPy=ryL9=ykaiqdk`#FvT&aMg+7!USiz?1Vu@;Yx8n zMUL%F??2;$IwQlHmCk&cLR7KCJhob%RSD?M>(3yvonlv;2DY|r4(szacIbQdt`y60 zUUo3^EVN`;n?=F4`?YL2rHC0z$6F3q5Uhw{sZc!k#+YxbKXvNF9o=6SRqM-OW=TR< z-r%)B{+$Ty_(m7CZ{?%Y0I@#}tiGc6J==L5H?E>Kslj^Yb@BI|_Du+>MCH-mU?aro zHP(X$$z$uu#=$GRWzxGO>+{i@wKK8mWu3sv5y5%@OP-`OPbUOBKXD3L9%Hx~XqB0H zW?SepY2u2UEi|pSYDx6mXYi`jMX5mp@ydGDXp!pa`Qazz_4Zy$;Od{C<9r&Ho!e{p zYI9iFB_0C`Wl7tzDxb9%@d}|~Mj-!eSCctqv6QZXAV*umy5$-`iE;LJYu6JN#7e=$ z#m}CW06zr7EubE=Usw|5KH7yZ>*C&#CBvR!VXi?TcOfe@$;jeEu;JJ!{Y9!3bo%v~ zAs4bF!Y5-W8Qjxl&>TOq*2k_P)4?YRMpn^GMDvl-vk7+Tu3NElUrP%Rk*hk5tQrlt zUB>0=BE9O&^VvgxJx}=HpsuQsK@67$?DSu84tTZv8 z?z&d_2jv#p&>wr$!U3BsWa|~d)IgT?t5l~kH?5VkC>)S8K5fGU5EWU_Gmaz3kV~r_nmt*V7&Wg%|w{i zX7Y8(bEWjaQ|P)JquSE;>5|2GkcI>-iEX&-!fC%jSsL?5eV`*g-CZF5VRnkW3D)#| zOSqZziy!!6HP-~W!~QHfchk-*MKwVtBr5#tQhp_Oy3DUG2~D33ip#KN_#fT}9r9}O zSv)7}tUasm^WtY@RiYNxzuX%9LXjG;>b+eR{1Xqe;hInf6rGRxqw-po;`^iRx?aBU zY|l7Rj{!PQoZ_RaGzzj-Od%MvBQc}vW(vkaR4`Fr9=?T zRmvnIQno~Ojsy1CvKKT8`Ub2+&%$lUa;aS6r8>)FY?m9k<{=%%hcGo7+3JZnX%t>oq7dJtweM9+fz))_()4r4!F+H zidV>XL6@kRTyq<6SH#e~`6dyb;i3yg6E3_IdDhN_o2x9< zh21XamGi=GGlg(U&-iL{DCkMF@&rN{u0Ds)P$DQ@JxWk2XMSL~)rahkiK>Z%m_)yVb`UFB>Cj7=RzpJO(1z)I1~Njxr2dHVcv$G@IeP19UVRoD zR;EFfrlpd%i<4_v)f)8)wGrtGz%k9XfR!24bwH>5 z(IM4KY6Ikq49+3o8|fB#`1Ond@|*A3g?2cw3BWsd{42yb@n&mRUd|-2H(qJc!C2DT z&{6Rj33)zmgGfO?43Mg6GBS1qD!1C}9bC|@QJ)r~y?10rZ*4%cpyxV)#>Ct*X$b)# z7(VvqtG;!|nYeWI-n<1Atdo~-xxKRj>Bp_FD?{8{b}zXu1Amr5@ncZ2?0_iht^-gA zBm#~^!VxGk5{X5ivByuq5vEuKBJ=Ql;eQ(85tNX?nEx-lJ+1uhbAZ0B2n?Yys8Lvd z8Z!!jFh;sDg5q|O;=hn3EyACA8GvTq+kbQyX?#O&5rK?ozbGoema+@A9m4&BsIF8$ VN=&4HYPmZEaKMvr5AA%D{sudd9AE$d diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_ext_keyboard.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_ext_keyboard.png index da4ddb2ab1478ed85c954909198dc52798995337..02aeed3ca95ca18b9e8951b5b6ab4ee71514f49e 100644 GIT binary patch delta 744 zcmVok%w}#PE5Tj@6s4Df${@?PEQFvx zp?7-;0`x^qMKRq}=QOwL=G;}uP1`m$39yJU^eF*f6A(-YgkCfFs2 ze(>@B&Muzw-8omT8USaCPII=Z6ew4f0+j-l0_mxoEOdctRDZfi)l@+S(&k(RfLiCM zmTu5JdZ^L^YNmRsqOx4;Xfr=lRyEay!(rKKwUz_WD2j4A(XU@lLyGwP@bD;QsxZB} z-`Xm1_=&#dyF*&KM34IW`>?PeLzZPsIvkMPZg{<3IM~}pY;beza=Fmk+lPsX2~1B< zqpPb6PN(w?fPd>$nQN^-1<{d_s^}&?9U2vAn!2j%j>sT!ixb{o=^H zb93-`Jm~K3fye7DNT5n;3Iqag2L}gXAGPzDn8HcDUR}lB-k#`_$t0GRmXIwGC|mrU zmjw%Cp}Uc2B*}*oGp-r9sMvv8VzF3Kk|a**fh4($dSqgUV)35?6?2Cw=~grveaAoP zGZDx{SAPP*z~aEb0Bm*}CMO+5Ju(B;P}9c7#@OcOW@vQOUeq1ZQ8`(unVxZn{wa_& zJNusPZ8GQka@CTKYU$eW@Qa9|K%=D7nlvd;cvUhlS}_K2GN#OZj#Ft(Lu13*llJyb z&ap#>^xOKIx4nff`+RfVdVN`yUZ*o=76UR1XJM{_2*L{~*>LI9@$vVg`ue(XTU*;2 z=lD#=g$QIMGg-4&j#X8Pj_6C)S4tP+A2b~q$V6tcsAQ(|WF$Rl)jvbUuTr2=pi-d! aFVGL7SS8msU%a*e0000)l{) zg8d15w>OO?)kugkE6qr=)LMGpop}|cnM;&arimT(YQ5;)Sc8t}Reyr;?8^@~*gKgA zHn@WiJjd~qFTdxx`+0+it`#ki7Dx-E1^S-?)j}PZpcUH6bbkk$;Wp?&r&gd_a2KA# zYv?W08|a2d&;&Qt3e*f8iA3W2;o+fDC=`@@KCc`c94NV5j>%@T%KrYolF4M0y}gXG zySvN8<6A$!?(8_Q{vp(<5l9F3;O*q(1g)-0BuNtayk6phK@tRkyr^BXE(+p45D1XX zHbDyu3$(PfM1P~BqvZGdcd-5$7%K@>0|sb<7hrZeopg0|#jJ$Gbb5Nq>U28I!k}h` zhb{E&6;2pR|m3t0aWOqB%ELkqOSyUWYV6-kOvu~=j_V=+2EKW8;sh@D&g^UP`; zrypl$toHjCDa7+K5%p9Ws2(0;E+otj#WrKCUCHD&eSg7y5Up85h>eX6)~0#SJPQ?x zL|DrNQ6!${X>80&ydbC&$Os+LXf*3^ILJNc#!M{I?`ta_r;CdVR?D(X>+9=Ox>%sn zg*Bg53uJ;<+sSPiLrKelWePyG1NEd*DVgIq{3uTx7p!W_*bb%Ae+8=Q4jG{{nM~&J zN?(gW^?&d*8jG&k?RIjxUF7q5tJ*R>v_Z$w(UIr)_&6~)=dS7w)j%DzKsO9xhyE!L z7YgN3c0psMXPFLa;Xd@v%s6R!dYbH0Q#4_-(fGKPomC?vBV@5yaAXYA(9kCu7#Jk8 z*-Rh%`>C(*19^SEbm@!Vpw?+`f_709;+T;vW^PBu0V_u$D{?p-mPJvN1+*m;3gL|m z$#@B5%$1D8HSh7vr}61{kM$40pjIFQw89hUgq|{WL3=5T5o*;6R0Ddbhej}!sSz5$ nPzs~d{^Vm2A8>xWBvtvuWc00000NkvXXu0mjfLUe6a diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_help.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_help.png index c807ea42c00e8b01e40342688b00ae9912a34c54..5e4e17a6df53766ccb6a46811a5e0913abcead29 100644 GIT binary patch delta 1295 zcmV+q1@QWp4512;BYyLTsr-|sBSw#5 zX~VQyq)U473V&Y5(A`Vbz>4MEH(NRit1jn*{EHTHX^j+QdC94j(Z=DNR1!}Lqe$U~ z`|u7XB?TLi0fSTk7HZPsTIXoT-yNeYKDKE-t(0VE_fhYok(;kg~+5NdU%em9qi zQA~|f_s^gB`?C774%vH7c2Z1>Y4K49Wk)i(r5USn2U9SFMx@Kjkz4BEGEs`EZPfkc zsb{+o7T*X0CGGLGb2O^8DHbxOrQ?112fT&}5SvYyP&RMVPho1+B3gvv*LE+AqWC#O ztD!4@VSf>Zb?skAD5AD10V+CnLe7O%9LCcahlCNVlhaXPbW%hKQCJOA!$@h;N*H=A zWTE0-pb`-uXOxiELUzhuY{X`%9us&IL4NGzF!wf6NZ|*rg{ktd4HbH~nSwV$6loYn z9xAu`shP7O#Z8-S?{e#dm_Rkm;w2b#m8bm_P=5mypeFKC8JWqeworF`XhtU1zFP8U z69qKRDPFSeszij~X?$F=>s8HxZ<5)xe9$O3A+LB)>YA@u^<2 z4?H1##p9Mt9IaFAK+hc4r3Uh9UiwdJ0|ke!Pkjn{efIS#&NSSL*9<%_^}_)(#^HlY zlz+jet3B-@kIMG16c26gTZ0WRsTKLZRe@ySI+&6c_Q4 z z_QNN|Cwn0~#CG(~b6;^#wdSCkQXCX^=6{2xcm_GD{vWNT`eP&$Vqy>rFpdQnMlYpMwVS?H!5?jNTNc(y1C#%72|ff6m-b@keE(S+SrQd$1yxWv^+kF1F+xDv^VQEc>n+a00>D%PDHLk FV1jn`Smpo# delta 1542 zcmZvcdpOez9L9g{mob-+jJeD$qAgl&hici}2}4P_%r=>gnUPDHWFjWQrc}ywPDwIZ z=t4tBoI@%`V##!*qvKkfoQ|{l>zwB~f4tB8KF{a-KHvY|YwA3W5*Q0mqkD!W0|4Op zUGBZ{dt^Z^m5zy(x#f4IsX)%jf;_>;0}B9k9M}#3Q2gM9#RR8~y(_0t@g%*Tjc1SG z>Zh;>&m3z*K31xt%UM2sI!fN$(g=A0jsTB}Qw&xwip0Y32MI?J(g_4KAa`PxF7RB=Q7-esPikn$&qpKO&GG*530hHpBHBaaG>@3)WwC) zTNOU{+?5P~66UtMgwS84bq`*R9CLmIo(F6)K-Pyv48p1vMVj=((v zY6jnejam~Q?9N4B7QA^9XQ3C!A6j0vk+jdX&$-=O>ovqR=Np&^@&2}DJ{KE}j>DDQ zj=A4|Xq-+;_22Yk;~2)36?rA&9t5+9h?s5{z)ljLbALZeLB z$|~$~Kxx=)C#T%%c5eHKFWGKZsZM)|j#WEGBl2^eC{wvch*PXxZ)aleWZ!JLAg^xP zYEWC(fea?M`A&D}Tn%^$UkVfs``k9xv~?V#X7PMXyA>%>y4x{#ZlOO~Reyk)3QMZ` zda(&YPDYKJlat`{@Qc0SPk&1CO)5({sL#M@Z#C=*!eSLCl8t$;L-hiVSA6KW+Fsf% zxd?2k_W(&HeV8T4_ed$DO{&e>C$umL@d$y!B5J_LZ(2OQQaxn7q;<6Vi(XR`qv2q3 z?JTz=bu#^?X=)`LtaYiz7hFpd`>NK(QC*<6j^TyAlwam+zO?Eq>vX9X z!5|a1=Z)!~#P~;3me4SNM%?x0X!v>#`^X1cVpgY@CQD2xfBLoZG4;}!u!eof5hf@- zm5ETP=6q;mb)m6zx|aJSBCYm4aXXPWS}aL#uurXfKF7qLy_{1lKUkiJ`CPY=8GmEZ zus1i~uv@+;MlSC;sE~?#e8lG-cBdfC$7+k~Ini$W4N$}_>NZFV)IXl>0~Ha*F`HLL zZB%(oR=XS|#Hv0R7s@p+ZFl8&YW`AK* z1;r{PNa-D3Cv5HP^@|l0^|_6c)^D?cVuFtKHSLebuq{kzb-$)@{WbOeZb<)G($IOs zD!+?i$pO2WS!i>|6RPHrGF=aiP(7H1&dKMjEaJ+MI`cwu4TD=?hbmyD#o85ESy=Z4 zaPBTlI<81}Qv!>TZ+XSiap_`6DRN^*f|rzv5AZpeysvwtMx8;P!F16)-EcK3yDNMF z0WL(N^np`~etgR-2oMOz{|n}5mRERUCTmo4bHi0=%sD5E4jVZ|cfG#wX;{uAt4C9@ zbx5JK;8mk}(WW(S%UqO6C+d=%NYxCaRbYZ!D}hX~FXt1~BvZq%-o1@)2AZc>g9l}6 zXvM@GViKd7By9*z4s7c-JEsHV zl9-?rGz^_0nxV|8vKe*7IWZ=_Mws7mUfH{ zHmsxX-FbcP>yjjzthETg>*o*n6bn`tyyu1j#|V9d6**{qRf?S z5i<{GhE37N~!lvJM6NkE6 zw5%50Id}5o$7Zr`*mu+AY-10wd*wv$=V|8I?piu~b>+c=Z=GFrLAN=d{jp9|zu*$0 zsl_?7!sO^T2Q6H|8|@@N`A^YKgg&NRT~h=3UskfkfPXhjY2^K7^G~OrqQ@z&r9LdC z{xKX6d4DccX>bq#aQurHc!o~abJ0ZQRGvs8jS}%ZwEOW(r|Sodph2CG$}O&b_;UK~ zXG}B8jY|_Mf;gUDEo{+0!fMT z)w|fL>E%Cr4>eXv#@JQ5ENeJ(rk(G5bbZfHdw-)+(oRWpo4(h}ZSE>rgPIdjzJ33Z z)@Dib+w&8p$WgJ^k?QlP1XGeH4nNbowXfJmVOM3bEl_|#IMMF_hY8yS- zCx3(x6h$?`oxc9r+Ugc+Noh2VlII@vr^#}O?R-A9373HoOxc$FliDc}0V=X&3he>Uw>v}s}FPs2Mto4Lem zaB2#F-O#wm1p@&7EgWQlE}f$GSYa&L;(ye<*YZ1defNRAw)uA#S99wo?m9iQuk^J7 zB8rK}Jv2`cPh90R}zT~r;F}|iL(b!{iab}v!#1)ep`pONhAb({D;kN zUbN>WvX~o}iatZ0oRsaPFC1+RkPv}r;^t_ehGfZVEM73RtYxp_XyQK~Mrd%;@_$60 zIwhCZu&H&VcA+KWO+>}isi2ti0;-nr`LEbW)0K6a7GGUH{#y`=wA5VgSjYClxI~Fs zPzlZub1z}xC0tHQUtSogx{B7Q5U+In2T<}v*7BW`=?C3~c1hwAQ86bWSVl!;xF+TOmO?v<(Pm4e&i-H6(yop8D#`C|?bb5H;P002ovPDHLkV1m{;qC)@x delta 1572 zcmZ{kdpOez9LASinvQZSQ^_S#F4;6>?%HC}9HwN*b+oP8?2_$~ej?`>AD|1EnD00L9o{b?W&$o-d& zh)9m>0eqg~61DDzzr+xnym-l^9S-i(5NeqXhx5F5Gc4Y)6hTQlwqLId6!&=+t z(+b`skt$7>`g4b3G?JSF>MOSoD8wu#8b{XMMNs;>K8NVm#C%6iNzh|J&jbz;8#lU| zK;{I~(0tpXm0FCi)2Mn0@0snrCz5f#qIuxczhrQy1uyZr%Z}W@AneA4;1hMv;%z(# zl9l7LUfiN$;r{9}M>Fm!Y}Zy6pzlkdKtPn`Gzc>lV@>Trj(Qfl8)T?|wXc~Io0d-| zrx&|$vfIq72eU+;#?u#B z)|NM}5obEY1mH_^2Jh;bdlq_HX$b*BCS{;NkoB zyn*|5Tda&rE=UW*tE#S!@wJR`ZHJ$oa=Fu4s_u#2ZMWz*;1BvL@d{tfwa2i0CKQ`y7$3~99S#+HQm=H(wU zogw#Q#yq43X;{?XT#F~GC2Z!7N6ZH5xYY;JZ4`h6qw%7g567=&b1y8F7fr+ktWMN> zh`C8@CzYv1=9u!`7T*4426m**$Otq|9@g7TpU}MTrW`J^E+1>o9eN-Y%*pswj|2~H z_CceCJ^35UEVik7d)j}w#7bc9FkS0awMs2iJ;xRpvj3(ujTaUi0_Ho&JGvNsO>@#1 zI&iuG>H1g*bT9UzVow;PH8L8*BjqL`>%w00{49^_w6__~lYxn|(X&b`^r z8SnOo<->}x*8ibW_VMSet)G#x-_v6 zU8Is}l9_1HZxAdLKcQe)t~Rh&(O+gFVXFL@5wb&)PVUXh_d&b%Ql=kiNpye?u_!9{ zIs<4MENk|Sj~Tg<_g-*dTS2H&)-+p-+bEu^+ z42FQh5eKczp*9F80A*|4>HAOPEIEP@$@g+W%kh9vw0OwZ>M diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_settings.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_settings.png index c97c38e6a011cea705c9ad56e18f61ab03f44645..61a2fdd3a0d69838fc2d38c12c4f2dfda3f01ca8 100644 GIT binary patch delta 1068 zcmV+{1k?M}3cv`EBYy-3Nkl62L6o#LBznSSWQ(!0+f~*n)HZ&Nh8u~*_ z00}fCwip8$VTPk#!hL%-bB0(r?O-0)2 z^!x5{Koo&86#nY-o3AkMI{W*u-0GxW%_AXMYq`)N=>Yn9fY5t0}G= z*TmbHYY8VQB_?v+d%EG`8okL>N~BM77BUfqF$Pg6jD^-hwCk~cSzmz^GM^Y!Fx~Ys zb7w4&U~91yNwJj5qNt@3ym~4&#gczvb(d0>shAU`as-=Xytr*6Zg=9>$y@KQF`P-g zIId|}M3jT)vVWriFT@HGECdCJ<#GE9#uU%;)IT6$|Nb{teKPI0MJ;g(tu=ODpgL{Jsy?B#>LX$`ro+SD=Kzklzetr?&;%imAG^F)A-5U#FE z`F&U7m}>j7^=Mt~**H@Am-SDmjv$sJg2Y}n2nw)iP(vf#clXtjA2#GDd zn@^^+A`YnbOk@zTxiskUvz_<$@_OEU>5Fceoot83@Qz4Iz3;SmBdVo6%Wffp=8tg& z?ruf?hJU`j`eyjCUB=NpU6mng{9ym~cq^F>zzea1Y;3JbOg}bn{l4Cr-9p`e?R3od zld%$<9s}K9<_^rwIodE+<%niHvu+<`q6#*hT9aN&${$iSE;I1(r1U9+eFu%@i}boL z;e)3q*S4nXu_}pqggM-Hkiy^~;(&BF$%U_cm47!gZ}8Nif#E#@-s6rZ-tHOaTjvXY zZuT-tAE1iEl+gzJnC5zsd2NkPVH zfX!^<`XJYsO^T%)lbx_aHK725I2K}D=fd7m{T?}4(Igr%=dH85!vW`X*xKd5rZlDnWKR5F{@9{ok zwTJRGMUrm^W$m`$p_~iP4S9@_S{QNj)6ytG(@aOD5csDo8nDH$MvKI)*nT0?6FQbz z-XXuXz9}s|uJN1-Ne#CkZECZSV%F+|e1Ft+$}LBh1i)|a3atgXfABrI=q}BEzIOD*g_>snZ^q19d-^_T($W4mJv%S(Pvmo26x2| ztRk1ESfhm|@5PS7>pF|ctY$WM$;Z_2EHFoBs6z6!0PEPpJy6Xqb})>P`cMfQIVC_P m_sG(y%c50ADP>XrBm4;{x$d0~t(7-tI0846AyT zjTjhM)ID7sLn>~)os#c!HB{pG{^xV0YCw~tm=NTT}CC|D)xgL3vmzQKZ z+id%>8pg9%Qzp%t8geGlbos;XBjqh;3#QeZ6?q72d1Pxo>9}yPU=D*)_l~kHj3J%n zhf}XK)R#GXM(<4BuX$3zV8#Om6BQE)hlI`)@}xtlf1sX!qNgN!or|70dj7 z3Ela2JLU7n>avNw%N{ZxztOfg?b7eQi9KI>uJU;}YtKuYlPe-UziiHiu8Jc}H>B=) zI2HBH_;c^B`)#>mRnuj6dR}jhzo-tMaH-Jf3aG zEcVP`yl(fda_yT(Pvwul_0imM)Z^}>`k>X{ZS2=JR?Vo$+;=hBL%`?dqZiIOOm(5n zQy4On6HbNA*!jrqFiYVCIg!7*!LzTt)x5Z-K`mrq>c5snH#h%v><#SyIC13^$Dd+cR@mnr=?Ms>Gg8T1v#wE&5TGKh}*>|Y}PRE{C zuoX&Nk!|{#zRp{4#}R+kUz@y>+V|90KTQ;C?5JsVT2i0PVtb^uRN<@7m02k}GdBO; zZ5X$x|Dj3V8CzYW{f}jK6-a0Q471IgZ8B$G^B&jZ%JSDY@c-}1zu0+}q3qMuHA2-E zj22DT9-Qj)VQ+hIlrhABSN!Tj&Ypz|J%JK-2j3)2ZdBaC{Gan5)1Pm*RU`I)JP9mF zR7+eVN>UO_QmvBfi&B9!gOP!ufv%yUu7OdAp`n$5iIuUbu7SCgfx$%aRku-eA|O3EoMVldD%3@%Bp0ZQ>9N#$7QC#4oMn3S&IPy$Lx uf~11;(@M${i&7aJQ-G2Rp1FzXsX?iUDV2pMQ*D5X7(8A5T-G@yGywnw{$ln3 diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_sys_keyboard.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_menu_sys_keyboard.png index 24cac10534d4d20a30c039a1628a388f6f530303..2fb6887874d0b95ee9fc2a9cf8c580793e00a6c4 100644 GIT binary patch delta 1027 zcmV+e1pND`2$=|wB!A#ZL_t(|0qs}cOCwhl{*p{$HZf{23Qfem2#9Ee zv5SR$+5+M~vHyVkD6~&o1i|OEXu%4sV9`pkS=en6U!)LC)EL(!qh=E0%KtA}q=Ug+BZ_ckfF@zBKkl<+wY6@x!YA_7ckES3G(SJ+yt9>6D2SId*RpPC( zgGMW5F0F!ru!B!~<0$lfR7r$^EC{ORh<*QZO z(p6VEj<_wAuCMQeLM!8AV?P79sU?W*XeN`H%;)o8wY0R*g$}eJvgM7{7qIWV_2v9o zWot4VC0;o4uYVS2StWGFVuA$y2H=8NaSQUvG(oiH3k7^KG=zbH0c>n+pu4*pL*!?( zS-gJr3R6>4U@R;wU}k0pjMddujEsyR9*<*pcNdJ&(NUz+Y02^NaqR5u;8!AxtKL@8 z8i^P#4e;Wh@EL~R7Yc>Y-rkPR&Q7$owP`yVjUp0>uzxKX4u`c(`}}`>4O3mCZN3k~ zvMgL(UUKwus+OF8ZF{fR1H&+oN~Ms?1v5TU(PU^Z9%n8JUKQ ziwkUTZzJFjpinHxR8ji*%ZX(fB`O8FzZXxR&VAp}(ZOMSO*|)7-#dr;`uZ?DJPgLk z$qDfocYp7GhU4R7nUb#`J_KWaejd}))9C5xktrc?{A0(i0U0$)CO;GRWTUth-?sx?A@NqdG$m-tU-8H?ez=9}}J zN>JS}j*gDxXy{RXFc?H{Z!g^7eU2m{PD~I@rcPU(DP!`?z{_M3zbhZa<>$}gD4#^B zfqyB$n46o^1JhCa?DIoWu}{Wgv2Gd%KP3{0KUGcLyi?HC)fG(Bgb)sodg`!GWtY_p z7E}wBN(IT}%llrR_da#o$KO7F{Dh-aOOPN|>4|R8K=6Z}=gwi3Ej|f?09tgny9C+9 zOM-cp&FXLiyb9{DG*(tt^*N@_D7os-)_nGL$^ZeIecR@hqh-CT?W>&2iO(m#`zW6H zBjES9)12_@lUp6EZeQAUt-9M`+jf=4N3p-Z{})w1)mrb=UKPHGVz7a4l(%X^Un=S- xDM9YHMomv+-xxJT^H)dncUef4qqTq zD}!vk$OBK#`yRe?zUMpdj}uJ@flmnr2s41u^=u;77BY)b7PBrg9;~ut+uaH&NI(b>MfLMc6UwX3*Z69* zZ0V|1rYS1f0M3cUT0suTFp1VwI*l&}2hrc(kM;F+ba!`Sko-g< zfwynoU~+O2jQRO_OixdPv9hv);o)HfgF)=qRF>G&d;}wy`l`Cbm z`g|H|xUR|^n&xzPJRY>Sx1+PO6K!p6mR%~9;Pd&U&42KEy_U`Me!t&Z!(cm?%ORW1 zvMu*v=(>(VLFdy;s$4R!EPK1%22IltjYg47CTX(_^7%a3r?g2C*-QqjtE)0(4u^wJ zMuy@1{2W_bTW~pDNN3VAR1|)GIk6y5iBf^~x8w2S*`GT)I`|mh63>X`kM^P7-d+q1 z4S{ide1A+l!tL94aCCGeL-PHD2Vl(2&0%V43OzkN91@uy562%O7K>qXa}zT&Gl0Uv z!U7VfrywzZ0oWr(i3OtZzcogc{O^fLo6VN7s_|oj_V@SYY4Cz#u^_`0KaA5@K!$SS z*QF(^k~TIr;Brx@(rGyti$$SRn7KF>7ZY7f7KLZLrZPL-||ba8PZ`-c!Fw|c6uuVj_o z6fEd66pKYfBCqe+9rk-vZD0KO=+RH=ly`b|=;0Dk_v|pA( z2Jr(Sdzwg~dOz_f5U0kryu4!FW9p9Lv48sP6}}3Y+{<9!FnHwC(yRGXFR0A19RGU! z$!EdPJD1bhPJO~@-Q4P8t@WjSqp@1;hGCScePsIj`d;!ouj2{P3~C1Og&)z;8|jEdLwAwe{l%|H1~K}|tTLH`l{0hfS#p8jB!8tzL_t(|0qvJtOdNF>#RZ|I)@!3}-#qfaz8+oxa;QhCeCn{c=YRf}K)KXW>Lm3lb((sC zdP)H19yCxMbz*92>Wj(A$(D_cjZy%gQs<~Q4;)Saof;Sza5XhGp|7tGw?=QNOG``X zt*tHTz~MxGUZOs8yIfjbT^*FTg7)?{^!9#-k&zK~ad9!dxw&~Ta3a*tQ6F}8b}j@0 z0fZxA)Yp6A^?!O04u|n|Yb$zszC}8nR_EvE)0-O``wJ&R{oeSUJE>?iipHi!Boc8% z2wj6ePpEgrsV$&#Oxea?zYtSm z`pX&#mPjNJCsZ^VK{ynG-$yX!%;|8#YLy^aB-GZ{BAG~{qoV`;{r&3j@NoOey?bXx zrE<;LHa?!pW~hm_8G&N4D54P^3IV?#4fPGIm=1=Tni^D9RiUDy0>#C}Sv~mS_U(%R zj_rwUk$*@;V}||~h*@H#{LEJaydJM!A&1?e1C^ANXqmAw8NeCpaVp33Y3u6hTA)Qc z0;>1c>)EQY)}XSoQk$8X35tLpr}FpYw2h68r9z>g9_oJsw7k6B3gDvXYln^1F>PBY z6w(wWwqu}ZB#M=ll~&OLP8mrJ$|xmlZ-nCJm;fqL0Al+m_eFrcw>?-q7BSPOz+fQzSv>6 zYkw}M^H;lU*9Wi>$nAE+;c)0s4nhT4&5U`d?Y41-X|zdyIbWu6Pinn?|CcZat}4qm zjuFo`AXZ18ch@Zz{hqCGCX+D-C2V_^I^UK`&9WkVkwfF^;Ro{t05CA5cmsJ!ET@)qh99@WPhtNR?{Np#t5W?SS%9CId}^Ti+@m7 zR`xT1x2dE1^MPQ1Vjoho77=b6kR)00)wOFVD!QzVj*ePHwF^uG{1X&6#$xV9DyO~< zqXSv3tV%gbu3XXhsnr1B194#Tvd$a%v`)QLSeV@&vz76P6KVp+97EKZwY9a+6-8;|@_z}y`_yq0Fs7lN6rV$~Klrp2^odH?_b07*qoM6N<$f{tTW;Q#;t delta 1276 zcmV`&A z>Y++|sZ^==Km;L;SmW_Fw!!#*C!wzf8k#bead(@jG|ztZI7q_DQOmf79i-7h&!Mg1E1 zqOY%S)$jLHD1RIxx7$T7my<%F5dGBEMT3LCP$rWRR#sLrySZF3a+;2P1^8s<_U&{e z5~21~J0%iv3Pa56^-`D!R7*X>1yySE`$!fKd)nY*e-SYqR_kZ=%*w~n`w6v7j+1Zigz6Kw& zQ(Fdfc?hY~hEKm5jYZ{~wL>hCNKhP7kw}1OePaG zH#bvbV}B#n)YM4a|NZ98^F(x{03mhS!r`!p8v0iu)Dj})Lw$M3<#fpr;;pMi&vCXMOE3&=n}8PFpY-6l1ZdR(~P97NO0}%`VmgPJpr^h15+l6bfn< zibZ48+1V*>ZEZz}=qz{xlowG$>a_X&K8nZVnuHv7hulOvIy%JJ+1WuNItSiTNof~S zr!5fhi|E{%h0JC%+3j|c-h&S`L_}XIqzVyIrtRm|Kp;R&Nb1;3#!Ft0S0U8aik@V% z5r4;V@-t?jB=wt0O1qFcZQ1OtG}3_jh{~PXg&Xr$t7x~`{?5S|5K^ZNGfYI9;{O47mlgZ7?6p@OO7Vi>szH)b2$^u|IHM6GrCFA;>rcT^l}yn>+S|p8;5azR8sW?A#Oj{Z m&oO#g>|xK+KmEa~82$kiGkOh0e@@r{0000?#yzQ#``tpu*0S* z^K+76e&p?&c6PX0+R}`2oGDIB7git-t5F8;{zDfo-ttY%jdP49hdISw?aKA~Q7y3WK5|`l<6o5SyjkisiLh z_7Qv7`@;tu=IH?`w`Nzvkd$ahi8(Y_aN^HP^J^rpac@I{d&(m<# zXiRx7V+U4#|4kQ)apYis_l)-vEOB5byjbD%PDHLkV1liK`vm|1 literal 747 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM0wlfaz7_*1&H|4}5bXiRZYQ(tK!Rljj_E)e zteT<1XX!E^hbhV1-G$+Qd;gjJ3=E8)JzX3_DsCN}6zdV3C~^G%R#UeGR;O)8gid+w zx#*$KcCSR(HI~E4QCv_p#3Qye&@;{@pea_xRU@TCRL_3dT3My%Go55?quoxF%!n>) z3*3B#M?a>gp5O4dO|!H4-?}|}Y(CU{_+~<&!xwMOOPL|uQ(R=WT_o~GN74>{`Q0^7 zx1|>qHa+$!Xfb|sdENarw&7(0y8}7c!!%ZgC_PNkvGsMHv*?t>W22|6_b*NO-1gYp z`Lg(|#PcE|A#6Pw@fT0~T|6G>cEoU%P-&;u;+|#MvlE@!(*G5z8oKpf3gzimY%`vy zmtL}S8L#z6Zp(GE?#-MYV)>=rG3!cjsP2uaFaK{&xxBK^rNjSc&tGk?FLR<^1!#9| z;Hsba*hV&j>jS6gFIU$uLC+=a%RF{TX0P7*CHdQ?_wD?ahdwt?$~(93SEA=j5!*M9 zly}M(H1r0aXth+YZmaa4RC8s?X06okFVm09d`pSk<-OiiYtkCM`Mhu6=lx!>IbMxr z|01qsIoXx#iw#N*H|>;5z0sx2zUOZDCwZOqr-Lpem>i3}9?0U zw`!WbX_c0)i_TQ%3gi{vlwf?fe)pN*<@*@>yX8U}fi7AzZCsS>JiWody{an^LB{Ts5wq-6s diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/icon_star_on.png b/client/Android/FreeRDPCore/res/drawable-ldpi/icon_star_on.png index 3aaf09d34ef83c998266754ad8da96be54ebc230..b09dec7aeaf735f601fac6569e17e2d942507104 100644 GIT binary patch delta 910 zcmV;919AMQ2c!p(B!6p3L_t(|0p-*UNE>$;2JqX=Bna&amidKSVY(?6&@o2|6v_ZZ zsen*$%(617u!-0Wa7^7S+qzQSEV2*D8fH34TTIm$8+WTy7t<}S>V%{;i%Aokk2WST zMx%8!jeYhM0!%2|4#EKT!Vk#7`@Hw&e|N(Fu6EP2^dzOcWPb*O;mc4cbT=y;PrZgSy@>nDN8RXC@A;&eCu}|gZN2v z2P0nVDHCHS8HGCPi&+?XixIj!$}f zd$kOUE!!_6$bay}uL2x~Ls(f^!RYAdOlN237fnq~C(6po4zuqi+DGZMvr0-z4vM09 zbAEn4YDeXW|Bl2?5SN z0as7SaJ9P#V(($tCeC1KX$kD#=0=YOq|uI&^Z9<0Tlj(=3-Ch`aD{>6G(krCg=WY^ zQ}iQ=q~p-vdtk9x?l&|v^fT*4dTi~=$;oNZ>-BfS-W$LOhYTe{jC3u@lpL(5i!vlE zpTlak#(!&SYE;Z9dfeUb7?Pcx{no(1fG>303Jh?_B?gVrWYRbdQJ)NP+eIuaEX1p; ztJUl+q$lVfYnNOuf177=Z`0g^#5W8Zq${LP(g@f*R|KciiN?mp@7eRhzY9-RMn=Yw zxw*OR)xjn_{EC6!k&2Xbp1u_j`A~r0?LbRQ%YU?_@JCfqQE`%w9U>ne06t=1JH5XL zIJF;mPvA9f@Q#4M^>K7}ci&=5rlbM&_4PWp+l}b!41Gh+J3fJ+dl7s`5I1RoclYDL zQEoA!1kY=gEiX&@xV5*pI~NxhdBC3`Y`+1s*?hmbxp}U#vU0e;zkkKUL5Z>R_`@v1 zXn!<5U{8&d0ne*cs^!_)Sxiq)$J^T4Zsz9Zp5*m1dX8SJs;U|p9v+VI%?F{py!-=6 z1G>7py!>z7d@s)M_bc@DUk);z^67Y8UEP#Ur(0Dh6rV~NkVdbPg7*B)XIW1B=m_PI kq)L2_9DN00000Ne4wvM6N<$g1SM)o&W#< delta 914 zcmV;D18w}I2dD>-B!6#7L_t(|+U1m8OjCCl#?PdZhQw)t8DC+V3>^e7z>LK-F)_O# z5V;^R!HCf;gTxVn+Xc&jiJ7`Z*f3-|(%FnE>0GEtDONieuu``&0ZCe8Ev*#$p`|UQ zP?W`5eD+9cqFFSagk=|dlix*8^8TLl_C5c<@V~1!$=hVjzkeZ@=ybZ%fk5DXMn=Y# zRk!Elarl#+ztE&&^=jZQc-*&Q@B>uyko142+ zuh-uiA0H1)O-(I(yNC)t#kM@L(0{k?fd1=^7&#?iv6u4S2`7jR z2ynCu=sO`nUrRRhZM$I|IEm@$X|R8p6Fm(`ATN}Z-}i@{!sBY>igPEX*j1?XhR&lFuDgK;Qd32v7lYQ2Do ziHT@QNr{rZTgV&2Yt%ZaRQfS@^6-JF6|o;E>mrwlHjYZbgR|LiI2@>|s=CUat#SG5 zRZ>#Yp0Tm9<+-kEJUK(*d7>b4a*q5cAaq24*MDh8ZEfxFid;+;78V}mXNS*YMF8CV+Z8u>unI6^D)QlAs6?J!Xbj-RK6uWW` ze}9?uFc=Jv*;6Ve;2niRF*7#l=0{-Q5wMd=L~A z6nr5npt-r(&HvWPb8(Wt-zV#zTVx{1Bp;QRmk(()nmL(F_LZ1`1o8oqkqxi7mZfAf o*+bHZs7erV-%D1e`!DKmbF(H>ZPH)0k#2u$NSjj_hks47i90 zfm;EQ8<^k85<-3zjMhjgnOB|$z-x&#rDEom5rwCgScw2|yVD*^6kZkq@a-kBM32Os z#AAz}Eh2wLWOB}{*K=nPB(ory1j#5!20_vbl1}gzt9oGr!V~O*N=2df?EnA(07*qo IM6N<$f~ZSCod5s; delta 194 zcmV;z06qV<0p0$7yjFA&20C6L1JykZVyrr$7?EpyqXvgiI2p6ycD*h;IPM%?+>z!aHFlthL@;DcHF<9M_DU wyK~OQGD7kUQ?ibbJm7$mKoSkYF>HU-FOPD3Q|C-Nq5uE@07*qoM6N<$f*X=j{Qv*} diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/sym_keyboard_delete.png b/client/Android/FreeRDPCore/res/drawable-ldpi/sym_keyboard_delete.png index 40a46043588f293d193ec74af996138f3d4b13ed..07f95d5dc171d4620f1455dfb10658982bfbb8d9 100644 GIT binary patch delta 646 zcmV;10(t%72A&0wBYy&ANklJ2;wH!Xtt~pYEB~Onh^VyTXeK!G!^ttk1!Ho%ZQv1dK78!FQCLP)({w2x z8-{dt8{~grLprFY-}l`+ewxVcu(u=eub9!WO+Eju=|XWSQEnABgB#M>>`+1s0UzVu zjeMG&by_;0sDCIRnwVm@#ap#=^KVBDYKZt)SnYwDl0CVIfhbRYrMRxF@em~EGcT$y zpQuRXUxEOkh(t8jBZ{3IV!^Q`X@Tx(=`K8rh$Vltsl!MtS8qXvkibl0)O`QZSdYlxLyHq)$ delta 844 zcmbQo`iO0Uay*~d5kIR8F>>u8ng{`}DW7D1bvn!3AyO>Vuo{ql7dZ=BFr$w(q zGhIA>3I~hx^odWZ#V3XdzEql>9rQBn@~tWLx+gU)6K9={Thz`}syltkymMxmhTE=2 zfBAjz=ii^QcK;7s+W$HHz=4JHTB2yg14o|B2ebJVEjG?LQI}p-^2W1Pv&EFvc>Ucz zPu&^MUp>4na5Tv?_;Hwf`?=@3nqgCggRT~ti1++`c*SB;lHttLmOnUHISr4Ocw{~ecalPKi+T;7Y zM3K8@!y?0HcV8^uX?cEw+^1VXPHM|vW}f7G`{&SY!^K>8GJ39;Y}iSlgQWV7~pWHRgg+;rWhSWhrVV znfv}{+cv7=;)bS{ayF8Jp@Fm|GbbOcY;r8%0BIeoAIqB|?KM zx{e24LZE~%39=$MKdq!Zu_%?nF(p4KRlzeiF+DXXH8G{K@MNkDP!WTttDnm{r-UW| DxhQE< diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/sym_keyboard_feedback_delete.png b/client/Android/FreeRDPCore/res/drawable-ldpi/sym_keyboard_feedback_delete.png index 1482a7c7225dbfe405b379cf7906ae77e820d2c6..064a2c298c91c8bd929fdb3819ad341ae754d2ba 100644 GIT binary patch delta 420 zcmV;V0bBls1-%21BYy#eNkl+s$q}Vd z!l@S_uRuAX77cAtLJFyNoj7vnB~aLsX_F*Mu-jyA^)%fzJ?6>Qp7H%1{i<(Q*LC0i z8R}A-)FrW{+RDn>YNm2cuxF^2bGkwNnV@r!O#gMlQb-5 z+GBO{TH>HjK07QSQg=_V?5&XPnA1oc@x@2`MbT-&z&^Vy33}u;N{;&Ky>1k%&e<)I zm~~z?r$w>nn}K6COAFHVYpg}_RQy`SxkN&w?0}xCVjWgov7GqN`tTdSr?Vb9MKr7c O0000%R%Go4Qk(@Ik;OpT1B~5HX4`=T%L*LR zfize(!|g)OLLi4J$=lt9;eUJonf(k5jJ=*Njv*Dd-cI(_b_tX@R$uPs`}vZ|x}9N{ zb*4<$NGba?Npxx8p=<3E{1>cQ(b*=Vx?}>YS=cl?rl(6&CaDB|nsuho>aJh$?q^1( z*7KInJNN%i-S)NkQPTzFps@2VhQ>So8Pmt96r+VKa ziN$`?CEr=!G#;1cEqs5@xA*XrV8*Xu`Qbs0&SJawDAawhUMzCr3By6f;uPCGjT2Ui zCd(h}xwpk}O2gd>k;MxZ^P7mJvLCc@{A+Pgv%95Z!#PgVD!aa8N;!%VMSr9`&k5*k z*8Dsv%3Lf(^k5e=Q?uJS!Aq7=hIb++Nn6SsXb%=F6W!)3ac71jd-OCK4$kObKf soS#-wo>-L1;Fyx1l&avFo0y&&l$w}QS$Hzl2B?U^)78&qol`;+08GjL3IG5A diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/sym_keyboard_feedback_return.png b/client/Android/FreeRDPCore/res/drawable-ldpi/sym_keyboard_feedback_return.png index 5317eed4a6f018a05e9f023d37624a4fc059fde0..7e7b3de27c40a15c6027de3e68911d8717edee27 100644 GIT binary patch delta 239 zcmVg#&(<49k_I;l;PM+Fmocq zNci2oM4?tmaW{{eG}$+GmKW`srk~TO5*cU>WZCi-Z>0*4>1gYQS7AZ49#4({`dT4w zqWQN6^4&SQRsm~nI|W~^)S}w+!hdSqI5$-Jqwgg~jm|cW^CPys p=SK{E-XEC+{Db50q$YLPv0mg18v+Y2FWd)Au zKpL!?K|uG`6(ENx$=lt9;eUJonf*ZCWltB!kcwMxCmM1)21>NemuB8RJ0($gveE1* z2NmiMJP|*k|A9SaheqPYo4jSIVauX7{SuyX^egY2U9zw0W*_`qX7#nscKJEWKR;uI zu1H>(5bM}&y>N{gS52VGnGFR6o}W5jde6G;)yo|_H$>1it2g9{%ZkaLWPEZTZ`iUt zvMi`(y3sR_|FM-h9KK8!7e#I`zig+lBvSC$nW;t!CY48~xxJ6~G3->mBk?GyAkzJP zN~%x4kf%~b&f4qUj(vOMnwZ@8vZ$V`I=RrxfqhHVESCDZUUeDCh1wRfr943Isg}4# zl%yncptHiD0 zftL^{Y$ZW91m~xflqVLYGB~E>C#5QQ<|d}62BjvZR2H60wE-$(@O1TaS?83{1OOYl BpQQi* diff --git a/client/Android/FreeRDPCore/res/drawable-ldpi/sym_keyboard_return.png b/client/Android/FreeRDPCore/res/drawable-ldpi/sym_keyboard_return.png index badf31c7d4c8459e33bb78b9224061559ae3988f..1d8a4eac0139b4add96c5431e4641ab5f23e1642 100644 GIT binary patch delta 238 zcmVqoJN6u8QkFTH( zy5?3B8to2&@h-ri5Qf-br`I5Dw@)&NGcds+LBN^q3(|P^I57Q@1i12jKR-V+ ooq>ncY{J1H35;YWlJtxM0D`2}ql9wEP5=M^07*qoM6N<$g3OF+r2qf` delta 433 zcmX@b)Wb4C*^Pm-z$3Dlfq}sTjNMLV+W{GzWd)AuKw27zr5Mh<+u8+WFeQ1ryDn#uLMfTK|*S){`R-mHr`tt7z8^y~d zmTbH+HRI>UqxCiqe(|v>`sA*$e*Gcy*Dt-pth!MgH@`i;-Fw&5k7v$}!xN3KzJ9E| zqIq5Y&lb1c&IxkD|}jU&iAgKaPtCfjoqvwZW;2=3=YX1?IfDZi z&8LDfczSv=;_1OSKuvF-g9a@gCk2PYVOJ~`lSZS#3HD)~Shu*;^bUDw z@xaS*a3m7(G%78q1|pvsZ_Fqsp-AP#RD(L!O3KDSF6>e*Xx-WjYcw^PGzxJ za9T|5U}}2I;J~$Xc;MwISUnh8CX+Ew#%qEBmvXsW>YL3*U$57?3UFI|YI@Azz(s== z54`X^8k|n2-T8c8TCEna4C2h304^F!j~AXtgB8)O?th#4aDZ~TEWu#VaWGsomL4xW zj|LYC1+7>tO1)k;?-4?;*DLq;_xi=fg?@E)rN6wq*hbX!n8AUI1}z?V;pyn%QsiB; z*%ZStfO(%np%6OC5f7qDrE&<2Sc`TrHNE$^c;MwY zxLU2cxPMgYS0mhqwTtawYI=t}w0Pj1}z>( z2WK*w*!A_b%w{uLEEX;ZdU<(~x3@P7P}AGxph1hrQNe{m!B;Akq}S`QgI(wyo0>~a zZ=Z)254=1FUw>U)#Tt!Tsio_7z-QDd2BgUc|Oik}2 zE*^M!4u8JCzxS!5;;IquLeFA1n3~=`4=o;ec@73j$gVMAmo5n5b9i!cVgYJ;yBsuV z@i=-`t0&S>u(@hpiF&=R!5n5H0cv_K;G#i`$I-z+85ruyZFO8a@KeBniw5mizsLH> z4K)-vcHU{GkTd*?#Uh}l=d8hji{{&Yebf~4sWK0JOkuk_nW*Wp2InV#_85ztf*(-- f{#XA7|5w59d1b}j-cI8w00000NkvXXu0mjf7pPZI diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/icon_edittext_clear.png b/client/Android/FreeRDPCore/res/drawable-mdpi/icon_edittext_clear.png index 01b602280c7c3c5aca205b06306a053b53aabe43..ae185579e235866f7aa3274ea3a11959437fde24 100644 GIT binary patch delta 347 zcmV-h0i^z#1NH)tB!4|gL_t(|0qv8qO2j}Ah7|>E6*=Kfi1KCQKM<#&O)E98=D)Zro!X z%KjAiCFO=?zCmwpb*{W5sC0r2>bic+vh1zz`#UBf!iQnF&42U!wW_M8b!X-yaE@}C zrk_z1jkJD95*$v#@8~2+(yYH&0Jy|I@E-_-nQ+74Of%EPX@3$TzKaz!1;ApuR|Y>Q^0iy61s3)1tLi3 z!p$>OkPzV3Q&dAVBmh5h!OgcS5@u5ud<%(PuM;TC@>zK2qC`;?FH=t7fO2hqG#A{K tuyQE3WQkMC1=cNkGs+UH3mzs+m|r_)3%OxfM34iqJPyR)kS<-?v~gazg=KM=WGuAU;$ffe6|#IB)C%=a+@27XOhS(y)j&z+hZNN5D6Xi!zvV}Ft)Z*AM&83_sAb=^8m z)7P>rpY}B~jld;}<2e2Zf}p4M-H~A7B)maQ6h*uJ|4a1*nx?s@Mq5ULg@10`g*R)CY(83}-8xL#n8gblCj`hkIK1$YS@GJqwxUO>L* zFM!+I!CXanuF%TB?%`d+CvD5bIKLg5l^xiWr@|mDgIUL d1-!tI`38x}?~WZgYK8y+002ovPDHLkV1l&hu;>5) diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/icon_edittext_search.png b/client/Android/FreeRDPCore/res/drawable-mdpi/icon_edittext_search.png index 36d9074fdf6b15da9b1539acad6986b462e987fe..60112c1096f2e99b16c30540cf7718fcf26e9b6a 100644 GIT binary patch delta 904 zcmV;319$wR2c8FzB!6W|L_t(|0lm~~NLyzB#_@+)M%Rw+TgNUA7=w;7L^^>n=%BmU zX|q=864jV^VxpOvq`9ckH1?P#F->zdYPE@N)kZAcq}!ymyCAf%l>s;ylolx4@T1JR zQm78K&t8K_%xnh*#-DS({odyV4hMXSo(?%gR!FFZ`hX@W&422sqjp(+w<4)3QftJN`~E&C9&PFU9);d)Ptk z!^&IAH?}~{FzhwY$UM(+PCWcNJ?Xq^yDCrKy38a!tYyV_%GdvejA;6zWAz+InZA)O z8-6XdBegxfYk#8PiuCzHid~ebY^&OtgDeM}_j@?R!5h8r2H{2rT<{`}5sWF*vwgHv z^IPS6IjA)$FZD7u=P#GxfJJl+b^%W#iKHua-$xVctT{-Y^{qxIkGo#7!@Q9l#}Pqd zcmJIbTWAOx@;0Gv1}M|&wCym%w2>LD@F0xvSD}>_>VGfk@;9M?Ky5VIKHJ`e?5uF( zBs^#ROKzHOHWqC{rw((=HZbHGk!PRC~{_tr*EsR;2 z*Y;kv{wmW=OU$x!GfGAm+gL$`bU06ohV_i%QRnI6<_8|S9$9LM><})B|LLcJWeW1ugLKg>sA18> zwQD6fz!+OtHmCThWbEU@EYtuSd^q#w1?R}UbAKFQLe$4W4sqo6MJee!J=d~!b(TyW z+_!-w7+{7Qk!Mryr>$dwiL*29E$ zcoBLgp5Idx$@e|i4jUYh;T;b1B-?2eYX_%3%B(@XmY|vp*25^OM{VXXBaS2VPU2dO z9)Gs6fuFGW`iF%Cs8t<%002ovPDHLkU;%<(?!=`4 delta 909 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 LNkvXXu0mjf>YiGk delta 1851 zcmV-B2gLaJ4ap9WBYy`FNkl=l|_~X zU7>^$Nf1%MU089{8SI!m05i{Iq(lT>1H{Aw7FbX~AP(g)(~jw$vZnq(M9b7~Uthz) zZROY%Sa;?#FFU*Y^8Gx=?|GhA0Psljzz^KsPkLBbkuV|>g?|yh?^1yQ z*iv}c*hI|Vm4CW#m9|0%Iaz899VXC+SEJ3%)o|43j^*az*SPKTrCsv&;;6`o}v~dm)5l_kjU}5h8!A=1i*;0g_EQ4BC zb(`V5I)7VWm0rkJ%c#fBLm1?-0^JzC$J7PrVXwf#y=ho|x&{oF+}Q%#+biI?D-}b% zR8s3d_L4V*32u00{r09|R7tElQy{HPt1tIIvgiX63iiM#-_;OCIWxQ*!bm6B1w=t} zw+AkeCp$~Pl4u_kS{8EvF3}0n`}w<5@oM~0ynm5+5^sK@gEv>=nd^37ntBU{d4|A2 zwHe|0XYUA(K?V#%RgZVjZCZVF{AzmwNHT3{flmBl1LxhEYfkC%X3WWC@fah)uCXaby= z`q;3l)Oy8b+#4>u`NO7xxIPpC*R6^7;S!Tz&6cm?4W)6;Ylpz?b~X1)w%jiX5e4TY zj1jp1T$)uXtTs{Zew!dxATXGj;dE*HWZ6_x)2Bu7rEgdN}%o!&m(ttbe8|5q!MF zn8h!KbT?LDA_*ba^luzlSO=Gl@fhdgkNT^P_XG;cYG5&L9)uU<5Jt?wv$Oqh@R$zP z-|;&Oj1?G8d`W}8fSMI0gh2+gUT10x(b7v5wGD$@1Ah_0p!zF0_c>60 zmPBH$hZ@`V4H}S(SzhhH;Dr{%?O2|yTr8=% zDAqSLiXR`%6Rqvs#UUOm#5JWCL_W|J*=x;zFTK~Csu8)8i!>vBH6ouIiNZv==($rA p*Pi)YWN)SZ_uOcHYXXln{{s5S6v9V46vO}k002ovPDHLkV1iC6bsPWy diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_about.png b/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_about.png index 191ae81038662205d8e195a13b1684b501ae2eb6..04442c8e4a60cab4299a37e7e625222fde5a7e02 100644 GIT binary patch delta 1456 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 SkqH0*002ovPDHLkU;%=VNA delta 1942 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 xt60BdXW>!47R~o+mR_?i5m+LyL}1y!0Tc+tW> zDuT%9mSSWaCM^O2(}IA^A7&U}7>1$aaF{Y>{(wMKkO6IiHkD=9)wEOq(`0+q>L%KY zmG!0MtAF#qHdIYR9gTtG~2N zRUBoR=yj=8GJhP~y&9^SKaa_Ns z4Rg|n)srHrp~SF`Q|9)f7T4R@x^y-_aeo}sj0S2CTgM3QExvlE6rzffa~#)(7{wppGfqCfRZJT&S2X!30Yyd$$2qPj zF%mW*NH*zJ$-1j%C8Q5&QT~9VBE}O-bNh%IWddGVBY~AbE7rOEiKQ4+P~v9^=`}0X zU9USu#`RExk65pi*)h-gywWSOTbx#E-NJOa&m6`xeHdCHwN z0sWPtxQGa-IjRNq`dLECUD^-_5EptV6x+>FW{O5N_0sU{x$*2(6@uH3F% z^M9ffrzSp`s^8tAMCHWIL8uLv{Yk?fBWWGqQQeMOvK6*N*v~5W>k%G4LZG(X&gwIj zBbtLP3zh{3b}DY{Tw6|H_(%k5IN)q&TVXAdzN2*{s7@hr)%#gZhdHeGb9hzFnV`5d z^5W=c5f0(DUwGMzHH=e)NAC^46q6=M&3_56Lam44^s}p;kd&ZxbWw{;qPY&bucHZcc${`Wrum}rGh03E#w|{L+eaeOTHHQ{pcaV_eqjh-6Cu5EE@_Skz zI>@~fM8B7UG>-dwFC-TFxKE%nYhvNv3xr7!3ZmYL;F>GI?Qud+80ep^Lt()!h zt@i%r}s0vr%1?C?9ZcrMSFwkr1dZa6U2{M_9~)P|pI9arc);(BU*+>`cm zkM8HjRa?#(dP6FIsr1tZ?!~QN^nY*7c`#W$ogWXow>%{btM+eSzlrwwS^ z;UjMWVnjE0b3kw6>H-2a=2q@`=4YQ4 z_**9a&Ap|M9Z*6KS2wH2jenF4Nm9RbMpAbLSG>AMYiAF4hbKu4aes z78wPU?Hs;8nSEN0N=Vu2?}~^_G`>Il(8Kn$lb!59yEF&B7j;~Ns^cbvyELbc2|J9)IKa3OhfmU&T{X#~8t7 z(sjvjd@nB3Vfu*170U1^J9Y4CG&d9^Zi@KH7ag5o16FVhbqNKr~jF~z6Q z2Kbbil9HlO{U}z@OgE%aWkBgtYUNtF3%gO}hQ!A7r{bTqKp)dI>SJ2K>F2{Q{2RT( Wxw>Zrj57cL00{s|MNUMnLSTYwY|+aA delta 2188 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 CdJbj) diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_ext_keyboard.png b/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_ext_keyboard.png index f80e5b9e32500d478176d0f3e192056668d5a35d..f8a055bba9709066e74ded57e4e746387a0cea29 100644 GIT binary patch delta 971 zcmV;+12p`o2;m2iB!8$$L_t(|0qxnrPZL=H2JqLJX}e(~n&sfe#9jBWF4bai#v`@!H@#A2~w0DEZjr?e-R#{209DyGu= z_a`rh!(ptK#l=OO3x#A2mW71{RG+NI(9jUp%aO`T^ndsF+xy{g9qQ}r9SNXXjo-~r z_y`+$X>f2b-PqWO$B&n=w6uhYyLV-P@$qr!x{gdHBLj4Hc4B^h9&>YZGC+HKJ7#BR z@rZ)Kpko2N^h+w0I@r|Igx1zpB$^W7o8$WRYv}0cKtn@=4A9cjf~!}q$bANouSp~l zU|1P|!+%CT7K_Jm=+I%u0{H3oWHNcCs;Ua7PuC!HE`++eI;@wGkr5fdD)ta!{Z$O1 z?`U^AlMdI`)*=!)k4QAaI+9-jGGm!A8;uJW-VT8nqR}YQ=`==1N73HaCIfJofjx!p z?rwVyaK2z*U;qrj|GkL5zCQH!_Tu=76Q3Kv4S$d~Lh{Io+G8zA?adLR8XJUkp= zLn|~*6{@BQP1WSmR4xllLoOw_ZGo)q=V0&KONrIhRZ(30+wDLgu#bnCpch|iDWTEU zvGK9e=H}*3p6hS(Z1f})3fUL3TQ_gY9^ggny$c!V$5(M7Q>cKp(VrBUoSeMO0QoWp zB!89sR7C&WyEhTzTIjQTARdno0r)ScIgn%V(~eXs`F}E*+N-JR$L9d#{s-p(m*isS z&R=homzVG7F(1%NC+^4$T3K6Ldj#MiYn=^|4Aaz20zf37dxS^#c!(5IRaMe7RrmRP zb5_HjQ`V`kRTTQ3ir%@W_2qD!EWM;>^hDI!&N>mmLn`^mPg;&W3d+(dy|%XDL;&}j tIX8eCzzyL3M&|aw26KDB?E$w3-T6|!+=fGe($XLF2Wv;)(iUn9q%fdBHlPJsV2}w|>e@gH+gJz}M&JdOc*{TV z_3O!-#_KM7v&Q!%pPZcLH1GMG^E~f)+UEe2G@5`Wpb2OKnty;Mpb2OKnm}=s5gj>2 zYRFk~t_aSOH^^yHMatC@s8AkSOFk#xknf7%Tk<8TBWH+CEdd=lm(6Aj6B83yTwKKB zojX`qn8*D5Jm%)+kW40#OeB$*O<;C*7Be$5n4X?SoW$aB#9}c_O-*5FXb59tV=(|1 zNVQr5RpdfCy?-WItyb7=Hng+1Sj;fBwZUjK!qD0ZeTyE=P0eWfr3sCVjri%>H8eCd z;L6pjxP18vE?xQ&_4PlXr>AEbz(?fer!7!MDwNp&Fqhltmm~=%Cntj4-CcM(JHcLz zcXoE*usg7{v{aa5q##eJF!uTUh(scP0QiiYewqSh%74zkO5P6$*s_r5zm| zp*s)|J=kPfM(2%Aq|@ob9Gl&a)z#I)I1~zFaBxr+feK~ub=+Ya7df`Jww4+3>5X@wAC|4f9?3#2ZW&xL})Ao}`x(bwO{zOS?d@|*b( z7mb@Y{|$i%`uqEl%jK}Kv4QD$TnI4Cz?0&=uzyg<0p<%*sT3%{?+#&QWd+O2%ed}x zX#!6wP%B@1kB`ssU4M^nqrU@zK;a_$?e1M6 zz<*2ZzZaRvk7wZ`D<{?DP4WTxetUcS76nQrgaj2zF1$uQdHC=_gtgEUpTNMtKpMcO zLO{iGx;B%!=N9?k_rurK1xfO7!8aK5E?j5KI~`7z+IF;yn76=WHj8Ss)nI^L--_nu z7M9sRgSYvTa;m4)5~w6^rBc7wvz-1@@_%?_meI1??UG$Cm(0b>9ZsjrQd+jzY_hH0 zCi8cLY_?crlgT8v5u>q9HW&;tMfNDr4d6U^Q7wUTWw+iYACoW0*G2G^5<0cy6;i3@ zkNQedtvvV)sVRcjl@k3Wq9bM6-zu7bCZGvu0-As(pb2OK{}X|K0K?Q5O83DW8Vmpc N002ovPDHLkV1oRo{)PYm diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_help.png b/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_help.png index 55f624b390aee4351cbc1515c69c74a16c4cfca2..36041a5294e22bd26a47a5a314fd0c9ab5a270f9 100644 GIT binary patch delta 1604 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 A>Hq)$ diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_preferences.png b/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_preferences.png index a8eb4b706b3734b58a05164f83a13cecea4d51c4..3a297aaa70239d7bf1df4c7df7a46204b90a8b4d 100644 GIT binary patch delta 1709 zcmV;e22%OD54;VKBYy^iNkld;nBUPE?VWq(e{@HSYkzSI3pbxzl;NgQZU&aZ zEjGxf@;1841+X!%+Er<}MFooRk*P4QM5Xn<9f4Vh%>vkl4^63Yi6|E^-0NDsY(sNp zPt6^s&|le8SoGDU$d#ALl9}v{UkuD)fN+1Te0S~ZPfs^<4@Z8HRueqP6uar;0h6dXj(>b$lfd;*WLzvO#1qS_&$P4O z9@V3aFwV5jsKb{tUjQavO*5l1*-9PP5uLC*x&8UNPt;oV*HclBChTyP<~2+O*k?zX zWI`v*nzAQ&C<;S#-MCI(Ni&swXPi_A)#z*6J_)o)pbiVN-FOwUoGIu%6)}g+fb1wc z#mRHYdw&M39@i#U{KW(l(@C9T?yZh-ZOo(^=ANI|M%+J!_!=I^j)ni8Wdhjvs~y};KZhCT z7~?9#W6vG`EOI<}8w?cBY&~>goMU>-B*r+Dq zyY}i{dsvS!%BYGl{aXBXpsITFg$8=qX0(%)zb(2Ch&P$rSEC%wC8KPAyXJ0SufTk4 zM1P|MwtmmY0egg5MNC1o0@(14E%Y#G_c;B|pc9^MW6jCpf?bQlZ$?Z-E^8{fxo6o5 zcqQheRsgFOZ+|(!K{ZSx9bx25uwb)Qd!mv1?LH1=cg;F7?O}}@*zfP-@N_O~ih9{n z+=GCH`KS|LN6Fng-`Z~q!ZdP**!L5l=6`|h=h}2ghdHNVr&l)~?-Nb#Ak7yst0AY4 z9uE-wK!Nz9uBvk8;ABa-6Na^<9* zH@HYTQY-4L99y~;opO%9B~`J6w&rTJ5T|-UVtyL(+-PWR;{m6eS@k#pZu$ibBdrmJ z*p<@&$4`%a30PNBOOFaNm(|@2oqzRz2I!QSk2>s?z|Jpvogfd)sz>eN`VJT}-dncKqn`qvc(ClRJGD=B&Lr(_9r{s;9Fl%4KnpTrweXz?Flb70(w%A>*A6XP z48y5{pDiJ>tXo_9_Et7)e=gO@pz2{y70_*AA=abK0=(Z2FktUzRvp<@J%7#O->=^G z*h8>@hwoamrZDa1ceq!18JJ0_AVY8Ty3(Qx9aw+?)Sye2$l$a48E`r{qktLE#4RlU zSLvV1PL;e<$vW2SM&+S@CZPj%hyzaoVJm=ZazGNn&vl&%Xusp+gv`06Z z-@e&50k%(fF+2f;WgD(Zvwv}y1@x}z*6nOl?KJD0v{!jltMX{Cd1{}PZ#u~E%Of8j zw88@D#5EZ+4qL$RhQ9NDdhIqYAnkQJ8F?wS#N;K=gX?0Waj#{nRt}!-V5|1nKJBCT zeexN3Rjch~H=~o^za5B5AdKsz9}!GoC=ZypFE$m@eztO-YIQtU)qkq?DKE{{{5`b| zhEWMba086YtQHK19*a*6oIAjFdS>Ng2SXfwHRb!k62LDL0*K*;i5bUbqk!SLdk?Kk zj*h=D`cm{a@so*XQ~Qpsc%=Y_sFemVjt@l=lg0@-VB!Cg$V-SRWRS*3VA42^gEDUQ zTU}O@+$()n$O>C2IVLH}@KdC5lQ@|3j9`3~TioJ*!804u#}XK300000NkvXXu0mjf DeW+Wh delta 1965 zcmZ9NdpOgJAIEpxPQomPIFUw1%w|RrYPrm#~_=2|ZKD!Qzs;~8Rd zPaFiHHrs=2ECU;~-Kc-kKa)n<9whu-aCRV2)lD5V2qbgU$qwsr{{1%=m3Asf<%%eQ zQ&aNnT2VvQQ4fT6%tcjcrt>;ML&`btm}*x`SL|cuu6ova-itBygwDEKU4IJ4y=ibg zXJELfwknx>ppaX1EW|UjLc(lUs0#CX#YNQW=qw}9%4=(!seE7_{-S!ZFMlyVVU*sV zeX;wM(phM>_zww5QdHa+ZpDaBG;PcErJU#3#sY^{Jg6^y;H@E|Q!DK)%x=81y) z3j%yTH#gzH>epb6(D~>@wn7-<&(CZ+kOa10lxeDUOVCOAMI;ZAF9@-EvpzGpZlY22 zy^CO0kt=YNBsBx?V+u09{W{6t=feRo%RA@ZH5i+#Z!BV@?YtB!mG{b@;RchiI{k>Oz7S|O5O^sW{ z4!`dFW|2;Qj(L8xuRpyF|MHM#OGx1kia~kJ%gWOFH+v{cdl2sIk$^()+UY|#!;aog zt#NxoFg)mT!e$_edR-#K^{KwAY|piONt+=nSnbu=D-Yuv{0x*}M#L)C_uoHn(aO>K zVV~yH{qH_(YX+|LTiAj++~=Yebv{rrVYaz+9cM`e+X+=j1Bs!{&xIQ=o;h! zupT`w+g_4+VW%)_DEOQLAXm_=4TF|eXqERKX8K-yvod4ofX>K@N%a}6Xi{@bTUc7& z{p@-cfgRsA9_#1D59E^VWWd&E3-4+aUgFarVKVI2!6$v1RXDleC?9=#X?k6~C$918 zs9c@>gKWeIhIj#(gs_@dq-W@<+MG_ks5O;Ip_-isK zke1}rtrj}mjT^7mdZ$8j;4Fo`7A8$7n$jS!Z1WR8)RNOTz9W4vlNebjje4 zh=n8K4ch%`{u(Gq~3 zEb>a+VmGOmof7D>Fl`&n&~RO8X)>*p6C5cO`7-ZpTFp&tDF7BQqvoi`#2C5Rx|jtX zK(kfv%*a}C%r=dUyzfNdSFXNlUDy1p;|}Nh@aa^Ejn$zx;96&Djn||uj_g*G?2EMk z^LwPHW`_l}{chO7%box`1ZXLzzm*gVIZ1)Dqo30*f(P%1>utoVDE1`ulX5doJFJv*&Mc9ZiY?b60CaX6#o?);WTH*Efn`tzh>Xk-g|lV-Bp^#-8_s z#J`ufN9HTvWIq|dGA#liG>{z_| zoSzFfVh!35Pn+Rmj_+iJ>{3MouBzGI1s;79Wz#*k!ljGQ5WcFccG{jP!{m|2^Jbj; zuXK-3v)EKy*7wwKJ*_^`zy&{lG^8^I;{Ce{s=7rfwBvc5RhYYzDq9bU;N>@L=HSk< z+?60*G0GnuyLFUu)MmYfKpWIIasNvE5{X$?`EfwGJhs(STCXYqWHffgi@y`+3=Ut2 zEjvIQ(0JG_?j*}GQYaRMQqbGz1B%a8pH-)3a(OT_F=cck)yvq6~V|E&Gd_FmBeR52DfiDN!IyOvMh^ vHc|hZxYGmmqR){dDIjdXHq~|tBL`846mmdZgn(kTy#;cz$J^B&^SksPDEOYC diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_settings.png b/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_settings.png index c06352759ff4dc298975fb69ca91ebcbe697280d..f78c41f9631658e7c0795d14623e74ca2d85f1f6 100644 GIT binary patch delta 1421 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 delta 1171 zcmV;E1Z?|)38x8=B!6y6L_t(|+U;4-Pa8)Re!I5UIJiYdEk+>ILn;tIk`qdTgoF|a ziAX_ennQZ3ME`)Cn|~ouZ^^Ak6F4JIh%_!DM(G7BQewBRngjyHKZtEiZ7<$k_r0gl zYPZG?E7C-1_d}m%-t&0(eKYUPjD^%_G~i=~jC2LK0$c&E0Do72E5H@t3i!VY@V4+v z;xj)|p+5WGKXl{~QbpF0#t8+m|5IcS@^fSm>4Eo)2C|BLgZvX&MAl9!z)!))L|3qTgh*W%B`RcvC36{^sV*TeJ#J1SmA~$yD;Hp&MVI z2!09w8AuL*e1Dbz#2Aype+;c6nTEwLf@d4&4RX0$1O@b>dj}9sQYeTIkyTX%NtWTt z<;y@=Sy_QlC09!o`a~*x1-$dtzdO?PM|u`FtKGCnw3zb~c-Zsi`Tp zpFMldGd(ggivA2deE5?oj3!RgbwG4dOiqi~qbLfiA;C42#t&Jd?DM=F0s^jEkk!nYvqW}OIQ3FkA z^_w`1ynhg#kKWhnS_B1fjvEcbUIPZ_udN0QZcV@NiSd@Pmd~wyerBaofxCC_`~U!( z$P{uHS#VIq&6t^)F$;Eoe;;!_4%cR9&9q5jZhv+CI@`Hi7GklVDUFzf#l=NR8zvzd zjl%TwG=#%pvv3oMP1xK_fY-}my+Trf{2>CbJAX_eJ9>M2n|ytJecbNu>~P!P-*4M8 zySlm{5{Upq*aHIt)@NF6tbrHQaQ-8T;tVK(z^Mf6?d{oCfCJy%<@TUl=5|L2$>(!s z!ESGF14GzbTU*v=TFw)*poOn3oYz3Or^mXNbC7CH{WojiTL4(&RI=c-HDF?Sd6{20 zOMi7BaR1&t`1-~TN+t75Ac!-8XMbT~0lvR|8;(OP7K2BRV*i=j=x5?C){X2y%BNa^ zL?U6k|CBNB)mjafmX>UHo3*ty+QZ4FoTrv%p4%FZCp?&+2OQ0*17`XF6bc0(h@Gh) zIff*>76q-ovvZ)kI|P?5O;|5vC+@GVu76Six2getb}$%(&dwlItCgp7b93JT!0*UX zixqGVMe&Pm)Hyo*{6NwTMqI1AFhrJJ`=B(&K^5iPe-;1*0j_CVJ(9e+EA zPA_vRGV|rxvp;4s*(s0Ldj_8$iKh`_(^FXYvM|=FIJ&`QUQ|4IUk9!2LAy>Xd-YO*%Yk%FD6%jE5H@t l3UCFu0$c&EfR7k|14!7RH6_SjzzhHY002ovPDHLkV1fbZD~|vG diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_touch_pointer.png b/client/Android/FreeRDPCore/res/drawable-mdpi/icon_menu_touch_pointer.png index c24261e3b436d55ed0ab7ae1d733673c8da31576..b76585af81ed9e5af7132ca45bc4b9fd0b4d10d4 100644 GIT binary patch delta 1440 zcmV;R1z-B}3$hE4B!78HL_t(|+U=KFY*b|!hLIKlgCH6cqS3ezSz?SD^n#FZYb2To z2{B&bl~T}1_u0;D-I&hSb~@8-Mw_N-v2>YfNn3gZu9bwa-gr}*5IA(X^ZNDuj(^RB zc+`xY;i&zSH=RtTbG~Q3_gnrA>u3F}pa0+iP)2Q~c2dt$+kdIe)W&}cfCT>{b$~id z9i;ZF_jcGGM*Z>!hK7cIxpL*ogFAQb%q}l4YXFW?hing{Y;!mkjXsD(A{ZVX#^mHA z2xAaNw>^yV{K4tz>DkuSR>Wd4L}O7TlSvE?4kDYKz~xJqjN7+w>q|>Z_JdIm-+%Y+ zU9F>|13f)GNPl&u(B9q-0#P9(`2N7a0LI71@q?}#H*emw4~#raJ^W}olQFuxyOGYM z(c9aLuC6X55*?tu(9+U^mgZ)(wY8!DyMBz0j$&?Z&bV>ohQ7GC_;_K|!w${qx-Qnq ze49Z!okm|@A2ZU8u2hO33B+ly)=&ry!3H!mG$6{F$$w-rI6pFiix)4J4940<3k#YA z+L!KI1z;w6(8H`qHjrMQ%dGV`3!%k-$xB`Mf?joldx%E;KbYA<7!^ zF-xH)`)_mm>b#04#C_DG*_VLLp|P1&ss=_yZ7=+ky zBAYD@gtE~K)F%wwV6X)Nm=l>+^85Yp6U2m=m?#m1x~W~hd?_aZ<^#w!D!-~%(_|Z! z726U(b|JBmm%EUUAhB49AOJi`?O9n_Ie#O|nylFZAiuhJn*}aGgk@Oyyk71=XDtCF z3jqRa{G8Y8BW$er5XwfosE_*l`+t@~6x&F5$)q!@{r!miWs%>~G)=ZqOMoD=AU5)N zG-#R^kw}zR)ZZcYs5QH6ts&$~-{Xq?y#&_GV0Z&teds;~xR*M{_4_I}PqB+7fPZAc z=kvqu_JF|5SOjC^OsM zoTJ{sRXSh^z$_5L3#ZcsHdXsiKzW-Zh^9H_0Uhl81G4TmMeZ&TYgl;&7Na0klO)z-;X@=pOI0|Ice zqC$q=Px%10fT*dd5xZCdI9)D$bEXn?_4UTRd-p!iw~#F$ay-@5)$nNAqkjNqH#$>U zDfTgVz5?)8ei7RWqN=LOw2J~TJ5W_sHJrZ%|22SjsGa$3)K(DLY&KU(2x*^Uo$Bfu zd2JcIEg{Cn#>Y;bIt`J-;gH}@TLf=gh{Gcz=i}U;hFP$m$>6dG-j)zssOPEOYLdT1 uZMO*Cwh-miW~EK$KwLlTXBqwcf6lK2LQG@bVYf*D0000&jYkxPtGgFX-wUX4T( zAtA;md{PG(*}YwRdfSbzw{2a!TdNBp8xFR$+cL(Ez_XGNVDRG0SVG_c`{=UD2o6BNgU;w?ny-20HL3^RSy&dgsZRqUm#LzE8IDPsw=H}*% zD_5@QckkXU0pl!ys8Zg1PSNqcofB4`dbqq(^m zan?*Om&2*iQJg({_K{#50#G(uT+}4c!R(+3z)bX`pIMP?qj^h8HJb4ml&YUqWU%ss0xpT*a*-dR#9j}~PZx^7XjTpGW8dwn^lTIs$6uM|7 zW<&xP5PxPQ44=;@61x?jGcr5^HV5Ogw*2B7S557CD0y zh$teF2s6@-7J`I=p(03CRTWxVS}p?kgnGfD41X-!Xkc)_U@_YQkk%VH7Qr!QBOD5& zzP?^s@;re3)Z5fXhX9ss#EznKCj2J=$$-c0K~GPQ1b={fm)d07$02}a8?oQZP_qr7 z`F!#m30{1^!y0R3Zl07bk&S${d zMt=)hGMPkQU#~5I81HA&8G&%J21?tAyO3QAQLT_H777Jx2>Sq~ZN$N&cXlRi0myVV zcP42Fc?$?<0F;du78bNbA}-6EtvS%v+J;algm5?vvExKOZv(;}fQx#S`ig-Y4AvGv zaU#=7!C(+Uf)pVpCafXs16ZHb&YwS5kbeOG4Ita7e5!s;lWkO1Y)b&yg~UdF?m_{A zBoY=74gfquZM%Q}{!v-hWX%=;`P9YREN}@TD#I$^_j3n2W(go!2oYH0|M~p^!X_*r zRu{mf2GAEnLqmT`A&PCJyX3Mtv%l|^TNe4erfIT`S^|Wb1+kIOr$N*Fh{fVOqJNqY z*rwL(4XX!0sTcj2EB3DvSQ~@k3Cw)c9SU$ewV&(vMQ)yA7fS%iLLd-?*Xsj;nXwqg z#>eILzNU7n?pL;&0Oi!1w{G1!;PrZCG5cMeu*|fVsoQs`FQ=!crwAbyvjhkRLq!`k zHF+f)Vmr=>$$47!I{@z~hz+X+;D1uZ{1&x~`bdCG&#HsEi+WBy{`u6@RKeZo<|-Ys z1Yi~j;fIF@9xs=^2(v3EL7t}%s`si`EdWuO3b0baJp16+CThRmNWDRQHZ?g_Xl!VZ z1IxTrbh}aC&TNMYg*_r16V^8c-7X{!l!8u0u;N^(dufk zkHPB*fcMQJb_&2YL`_YN*u?}WcA%P?T6q2m{zm{GQd`V6>J)%&hhb@A47{ETnp3%`$N$yW0EZA>kaGAkB=|A$V zSM%d#YO9*$uTz`N;Gb*&1)+kiP%5WfYd^ED0jvT1j{yD#!Kx2|B@>}v00000NkvXX Hu0mjfid(@Q diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/icon_star_off.png b/client/Android/FreeRDPCore/res/drawable-mdpi/icon_star_off.png index 5d3f04e4cc6d5ac2d9414b2427923e70a579fee7..f2cafb5326bed75e6f79b0178a368e4d71a19db7 100644 GIT binary patch delta 1137 zcmV-%1djWN35E%fB!5jwL_t(|+U=HWNaR%*#@lgR-BGidW+STYM#!cS#8iQzskm(| zYkjLvW@>0KfRF@IEL7M6*`}N1%E;pVx{BzknJV7LQOE0y=5;5g&lruyZ+CZh57*b%1!0_( zmGwRPUN|*ll}crtoSdBB+1U|2Jv|b}b8~YJwOVb2FL4S zys)q!FjFx!G$dz-fr#npY2kD_31hagj~Z&3BXd!MngiCXt*sq}$J?Haua%dVTh`Xr zcv|HwAQlA$1)`{^NR*bAik6lZF+4oXDd7YSpwv5y*RnZsPxkhNH|rl!UUk9R#8 zU-I|&zkgX)R%XSF#p>#+T*jH18DX>8BpA6@6diM9?#jxFV6BFR275q2z)kMCC*up? z4e)7wef=*yI997w&Srdkobj=smN|@Bqp7KBDL6Rz7V5qUG@gw8z@y-*Mx(inrCDU6 z*=*+ivDmSomO0GD1Xe;rLw`Wc>p)KrPsY+*5r15Rd0}N``G zZ}-@f`DZw#%NC1;r&6@Hw|j*eYD-E=oXGwB$n<1SCe6RW=-vJO{Q}F*nRta7YVm;l z?tka!SC0JizP!~J@QU5TzU_B*c8aR1D$&^3$g3gh>gqTS}>UMiy7D4`a5mPim;e6Z@CJVCdw%^~Lz5xVX4M-b*eY zm$IXygZETElO~gC8~g8K%r^E>LoHvd#DB!Z5!86i7vn2QNlDWv%1=B}eX(--4+l9Q8dSW;JXbTq##cfiNsb?`jUD?A5YRR&NP6>1e_ zVNP0Fnw@WfFUA`1A-D}bVsXVp2Lix3h4VnG93%rsR&r8&J=HA!B)F^;)zZY{@2aB# zJfdh{1W&PsFUBem2sHm>=w$#JC0FIm_$>L~`0V)`W%AOybk_<`00000NkvXXu0mjf Dv7$!k delta 1139 zcmV-(1dRKJ35W@hB!5pyL_t(|+U=HGNaST0#@lgR-BGidW+STYM98KQ#B=~fQ*ql` z*6psY%+%0eE`%hIVxhwJBHMJ6Tp3wBA5%nE%{<_F9CbX-XzHk=qN4>v7=#)X(?#_XWw!%={8slQ zXJuu5hrSn1%~+*U87C(v=XZ8?L{CqTgz?k7}Ka1RMx0sli5Z&F~ zM8<5(&d$EaQ-A&-#%iDiPXhzE3f>C~3;P1IUEA2$5WT&6+@PsZ2E%gZfm zYim5MauyJaf`S53R8%BNOG`ydON$sD9_AGii;IhdG27Tj4YkZ+E^EkItXWf2V}-{J zPsW%0{eS&$m6erQF=Mf^vLcspW@bj%Y&Ho-?iEGH9GSbkyewF&p`pPZ5D;*Sd+y2j z0(b*_QeR*H3lEOfYL&AYA0KCYEU0A;W7cSDYFY{o4!(`LZvu@cV?XdHxT?`;?qF#a znP@hfxqmEnEU0A;b1{MC(9qEDQS&;`)5DXoG=EnF*I-^)Sy}1eK^YhrkaxDPug@#g zP>USy@oGp&$X)I$xCqq8xyKY<4-5=6VSl#pHjB2lHqq79k7&YDn zkNw*{_GJDkPN~CUvG7!i_V#wKP(y7=Nr@A=pBScs;WvfHa7BVh`PEu&WLebi9P7k?`;F>wSnUh~EHN>WnNG>Y=m$FC1xCC=`* zgoFeZEd)Qr$H$wCi;K7MS{+hDEpyV-({1Qa^u;(MCnv{=8PV{N#qp)Fpxp#M29XM> z96)4bq?s##r}L0Gxw*OPXwUS;_?_hBWE+;$6&)STFUwu<5qKRu5A+Jpfmf9Q6l_LC zMOm1WmX>DcTi}ba27CbSfDc(*G0}kla8BVo&?*PX0FsrQ6kks@i$4i2D@C<5@%X#y zXaJ8W+84o7tl^8X3IqbpKN)%%fJVtxc{4ss{x?2*{sv|8(z}NwA+G=c002ovPDHLk FV1n=2LZ$!! diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/icon_star_on.png b/client/Android/FreeRDPCore/res/drawable-mdpi/icon_star_on.png index 5553441d4df27961ad8d827ed7c7c33758722508..f203ce2a7b884394a2302313304907f400df0b97 100644 GIT binary patch delta 1199 zcmV;g1W^0x3Bw7HB!7xYL_t(|0qvH5NZfT8$G>yu%(xs8p&U30@Oasq@zLt)>LCbe z(`h67P(F2j_5__xQ>gfaLbaz9>N~5DwN4?I0j5SbyyhI&Si@TG=|C^f;8{GgzP^40 z9%?rGl&LS?%`gZ(c0QN9TXIF4s+vy z#+&hOa4$Hb(P+*$G&D@Fudfr0Xo>1Ds2Q|_Z-2$8Pq-qvcF{n~J?P~#oe2&OF2>Ac z5GEd8W48#7!n~xpxp|g%CK~*Rs1gGkJkQ?qETskwYth4JdIM*AQSR$Lpt|dOEW+e~ zfB=1ad%Jye-A?p5hE{+^F}fu1x>0J-u(q?ab1^V5upBd92lsh-kMC-Jx~Zw@hHKtT zi+>+ta0#dts)bqsHP*1Ut*vbiy=Qzi^)&y~Xf&?fo-oj@TnsM)U&wEv;E`huYfUE8 zZ`jxC(60tQ#~$ort>fe4w}0=erH%J6JP(`(+2Ev*EjiR!!&>ZKcf!KL+T=^c=hz<+ z5z&S1@=yBVE21|s{4H=Cbk`8waWT9`PJe39uolLfQBhId^4|I!PbDNI^y80#Xuv?E zd!MMOi0IcPT3ubGii!$*d3m`VYtC`atr;{B_arAL4`Rl1TQNSIl9DoxuMMIF8-M1| z^71l2I7>-MNj$U!Tu4kz9Kbt&lWVMDE%)FL!i@T>TQNSN)oQKS;Av`Viu8KD9e-C~ z2zfm?38IB`a3MN6dZ4tlbbfMja+7-s3JQKkK6@+1ucW4?n#;<{=3`@H`Jd$?co#em z9s^;*qu^ONfRdP)m?7@L2cboFET2OI-UjDE8V?tfP;d{}C8)t(d5{i)ROxwVt4}o# ze*hfhp)y?U?Yqk30766?0UneYJ}8GD2mqRYHuQb~(i0#v{*V7?`~}!5hU2*jE%pEa N002ovPDHLkV1m8{Q(OQ5 delta 1238 zcmV;{1S$K&3F--uB!96i^xb@0=@y}e%# z4Go!jy<5Ter>CcX;BvW$$;{0B1hsuW2g~BN;7A%785wrF-NcNKkK0gt={CH+2jh5H zr_<%HudmaB-7MgBc6PP_y~plIFdzQ@{yLk@_OpBC3U$`LD&Y0h)YPv^rBVlp-<=3P zfa_VpU++XuHh*0#QZQo8wVa%s3ckyI4#uGb;ou?g3^)XiMnpt>jO#h;TC~w%se-O` z2*esSKI?_3s3<+OZ?H#t_X9Nu*fLm#y%-i2mKz@*UyzoTW;7TKZCzbmm#tRoti$1O zt*)-pwB-~{*1<9$;I*i64;nWvg`>N>`!ahoGBPR>5`PlTsMYFRz5&4=Z@~wvtE>A) zM@N@tW@i3eUS1}T$3xd0KhYK24>V#i(WQ<8`rfdY<}bj~C*U>LxF+boKB}HsOXr2YECGq=d^f>VX-j0 z<{I}{BY(8Q(*`eQh*>lkyBO3+swDD%^n`}BEiEmx@SfTfy6w(& zYxt)Yi)Ho3xS6i!pj8OIkbes#n`*3KZC_vC@7ULC;SU5m+pGC5$1c`9Ha2$SkDeM@ ze-Gtca1vyJ)2rK$Wd96W_of>PB!J#7NS?xtN%k{*scCxrvF1 z4ff>c=l_CwmM_7tq^71?OG``V;^N}?$#NdN3!Vp$0*&Mm@T~j*#j&xmgY3Zzp^f(f zUxHQOZEzN(@o*WU26qELNgxOZ`%mS=KUI3(xvjg}%fZ7R00-pIa2ev~Me8SfVNx3j z9^@ImyjS~!AfVbZaO)4Cl3xF9f_IJogLj|50YO09#?9L(+W-In07*qoM6N<$g4CvK AmjD0& diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/search_plate.9.png b/client/Android/FreeRDPCore/res/drawable-mdpi/search_plate.9.png index ffcea04b4819654b9fb6c37df41b092a741c689c..144481cb1e60c534928e869ab93bc52abb6daa0c 100644 GIT binary patch delta 9 QcmbQsbd7O>%EatV01_Dk*#H0l delta 78 zcmcb{IG1UHiVI_Lkh>GZx^prw85kHi3p^r=85p>QL70(Y)*K0-AbW|YuPgga771|+ csjQfD%|IcxByV>YhW{YAVDIwD6BV}t02K`uVgLXD diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/sym_keyboard_delete.png b/client/Android/FreeRDPCore/res/drawable-mdpi/sym_keyboard_delete.png index 5a3b9bf0d8d28c4cf774095142fd08c9acebcd88..98a2bc2ca1f70d8c20bf2f79637f064c4d74c035 100644 GIT binary patch delta 590 zcmV-U0{fU=)mkQ7{S^ftVSH*@2iFhC@*>2l)W8G|7%RcI?<$pjapnTLG~y5NiXmDG+Tb)*^wYV5Pt^(ang(#GZq5r2xutiL-p7Iaq6vGx9&q7}a+(2(g#fWC+%cGX6o5DY;s^u)nGqEg)d31^XtBXe zl7pZY>U{k8@eN4fyLa#21Nn78>11Gb(EGvgT164__}PU)%Nsn4-LK+<46Ug cU=)l30J1?A38Ub46951J07*qoM6N<$f;tBSz5oCK delta 618 zcmV-w0+s#e1cL>TB!5atL_t(|+U=K3h*D7$$D0`&ry?n0DyT&f&0;DHVkU|fL154f z)r*4i10=s7{6g^qjcU;hQ$|4%xvX8wOwHCJicz{(YgW=G3>THI?0?`qh)1K;8{$Im zzz^Sj-t*4S`|iE(xnVFE2!$r3328$Auh5Vf0~0_Gwt%g`pnn#=&StO?jDyiaEHeqV zgZ;n=j)N2Hz%eibb^yInXqe12IO_BHf`vlibvB!Qlgs7ue+%VjGMTsed_Gq!7GL7p zv%sJf8YVOEa5!%MKn&JDsPJj9Qz^8jjNNX(Bg>RZrFt+Jd>oI*R}zWDax50R7Ycj$m^DmhJ+rSjq1a`SxE~($|f9v&n->p{b5=+^u)qmLKY z6czP&Jh5Nr49;B!2Ng0Da?U<*QI?>P<;-UD3XL{z8xwyd#03v`yWKC;vD4{%Mf(;w z!>d3Clw+Zz@3_xx%8`XqsnjdFbzqjSJtqDLi9d(bud>}vr}L7$$}ASkvbt5Kejl0# z3)D~TJ|x^uE!?wAxTn2{??ZyWF$xgczYa}E6Z$9o1Z11kjAo5gfr0IzmTqlx*TC86hJ$LPoFw z0v3+L_CRdu35TE`c*2M8QfvLH7-Wz^1{q|~uY=xMw=?&_2?*kt{Y)L46+j)#WDsJ~ zGG?s+k}z2RAa_Xv>6mb)klK8mX8{D5gJJp)Xc!%YnAoLo)My5n&p;fbpa3I);ssGa z*fT9j1QC>uIRGVqG!$YIX>=Sqwsq zZFANRAPR%^59iJ}5RVBp*{MzKJP{zkTpnipfR5ooh>1grk7+sp^BKs;Fetzfpx7V` z2z#c-NRWf#F&Cf+5QjpHIgL($I8=D4H>amg4#cBk$3UZ}wzD7~weIWiQOAVjF$ht4 q!Ee8QK+{YukU#ZVFz%3xR1&YL|&tmQmVWz&9MLV#dGfUqHjpBO7cU@l{Q+WhjKXdtR>GHyY&xkJZkCLl(_XEClW0kaw> zA{*li)*t60vtU4KghOXR_!vaSATkC~F>|AoQc8Vq2XL4qgnY4}{Qv*}07*qoM6N<$ Ef-0d>E&u=k delta 238 zcmVbFmI6_Cs1|7i>93dk(f+KW< z^nM(EltV%^^eg2KUhq%k0gb^>YyF8F;t+>8gbukdQA&DEgDg_jb}2F-j{|`U1Cjwi z4!H%9nWUnNGXaFkamfEe-fmH4-PV$J4*&oF07*qoM6N<$g0}5np#T5? diff --git a/client/Android/FreeRDPCore/res/drawable-mdpi/sym_keyboard_return.png b/client/Android/FreeRDPCore/res/drawable-mdpi/sym_keyboard_return.png index 946a943feca86690ca3fb2cd12ab43c6e37b3c0b..27e26fcbb0a96e97a629ad5462d90866bb306d65 100644 GIT binary patch delta 606 zcmV-k0-^n#1@{DyB!50hL_t(|0qxdNYf@nx$MG~(Yr2-^sIj1^piQL+w%LLfM9@`N zE%10k74TA3L_o_3S{bmWlve@;bd#?jyy+%ydjkW!lHS4e?({wI0P+NL>X~D3e(-_u z2xou)KF|L=XHI#{m@#949d7vG#{yiiV&<{Kixq6)G1jn*bAO`XnPv_vwOVbrPc+i) zcK2C(0KZXPvcM{g`i4Gi^?JR(+E6N$%3Id2!#-^x4qU(@{P2u;=oLKEq!bE;UDj{I zF-&5w4szrr5({F$FUY9%@98})9LgVO-eSKt@GI(%)=>hiDK2M z3zCZ2P!#1upJ-B2snj=p)8Z}yk|3U-s7cA^^Pj|Qa*i|5E@7Pw{QkdUM4HX!Pray2 zCi7YU*2DDf@!8i_tMyBhQY;of^6Xo%AGJGf1UN}=M1L`cCKwF9P)HFI zdVbvZm<>Lxsj9j&$)@Hc?dh+GWHR|moWu=WgGbss;~#r*(#AdZtD+k>u!IFT<<1ya z)QG_-I9FgBeKVM>sIWXB%jNPr>D4jQYv>~GSF6>AMh1hy0bNtX4ZwC1cVma>R1lk3 s7n{@#>q%eOy|{?;u)&NOGp8p10LAa;gb98duK)l507*qoM6N<$g3$9TR{#J2 delta 644 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

    >BCxB|`lTXP50u^{b77%@%0ID&TTqjVG%cMV% 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 diff --git a/client/Android/FreeRDPCore/res/drawable/sym_keyboard_arrows.png b/client/Android/FreeRDPCore/res/drawable/sym_keyboard_arrows.png index 56423d84c8c50a958deb329f2079b5c8c04450eb..ec6959cbee1da328e8191aa6bcd5f0b5cdac379a 100644 GIT binary patch delta 571 zcmV-B0>u5@1lDd?t>C%@EyWq^u}4{G-^1CUC}bJMnt(B5c#9KJ%KU>c=g6IhEEgR4IS7A|4_oFWenCdfku5@&q9b2} zj71z@uFO#^+JDc1BR>pTh8_7OEBg~iT({{rug+nMq zF`2|Z`z^>~GGM?U(#T*Z`jA5jvXqcBnI2@2#vtV5C4c&ZUj3}!m1^PtkStTnE_n&; z!E4C)Z}>Y;X3r{sRH%mzFu!JMsVk002ov JPDHLkV1l2u2@?PS delta 571 zcmV-B0>u5@1lgC)q} z4&v=7a}b}P0B$1Q>MQdBs>5w;Y(<$Ao@8`7MIbDUhEHB zCW|6QeZKF)IAj^eI-fBUc#BhE%KU?{;K*HsESDVl1qgqU4O-?jenCdXkpTh8_78EBh12T({{rXMhh zKD>sEKaOk;vg923GGxr6C+PIik2wf$LQJk*K4az}6tSn?33e~;W5j&kiZOhJ0;*sJ zd2GiO+(Td3B}fA6&G{}oZD4^G!{(}Ht{M;FJyeHV*wE@l{zoW)NyOT<4f-5l8x(8j z-s~{G_%xMi_D&e6_KEm7|82WoEL18ZL&S*an6U}vMh^&bJ~mzD)^RP6u&002ov JPDHLkV1mOt0d@cY diff --git a/client/Android/FreeRDPCore/res/drawable/sym_keyboard_arrows_black.png b/client/Android/FreeRDPCore/res/drawable/sym_keyboard_arrows_black.png index 7b94892018ba546ebf64620d46926991e3cc3428..53dc89293c64817c58dc06bbbed2ed675e1d16ae 100644 GIT binary patch delta 543 zcmV+)0^t3=1h)i`BYy$@NklgE(~1LLne&V=W3=ZHt2uVJciTObgZEGq?xPzmFO3&a2;+!j)1}ahMtgAwU!Z{2F^_BLMFvL^sywQ= z1yfy^fIKF!4W>$XgY#jA`2%4Iwyr=PS7B=j!f)ges0;W3x$3Z0gglC{Rfk+_I0xU( zV9jt2Y>h%5qkpiq4sGxqr(rCQpO8Tkrb>`U38s>eK@Df|uO5t`23f3N8Z($h8H45qOHS$x9~;)q?wDipD|$Rjoh0g<~IcbBw+h;z4>w%{bHP(&&?hX2Z;0vQY= zg)|N#3kPM$qYMXG^dpTFh9QHO7=W>yWu;nm56NQ=8Grb81g{|1FW4$T9tGH{L9Ti9 zBTxfafbcrRMuT8qWp3yQq=$e002ovPDHLkV1h`B<~9HT delta 550 zcmV+>0@?ky1il22BYy$~NklAPx>%6av;ZYEjT?TO1ToqJpvV_Zwb79`7BO zOLFH2Ke*&xjz{viyi2v9RVd;D@<_ZB_yXYpdXZSiQG@<*AAjA5y#uI14!5u#u~onl z6yPR0(f0P>0~Erwc2BB+cTfXvpaU&0hsRI^7qJ3Om&FEiyct*V8476`vp8$6(~I4R z)DSAT3|Ff$4q3*r2CgRX8iP?L^9RB_e4U0YXW(ld!fy;AR7ddxGHUQuf-EKYszJtg z96?}*z(8vq_9KOu)qz?zU{0j3A2~wxbUPlp#wQ1v91xIb<;cIXpu@oaH^=RDY}PL$b_-+4Anf3&{8dUq#4L zgs&=O%%TUO>c>k6uOj@pa?V-(nicFoL+!*JjG5P6xPnhmNHxr$ge^Fa+vr22GFWSl zx8YF}8?-bw0#2dvJwxX&20v?mX2&qT?nE(I)07*qoM6N<$f(X9y-~a#s diff --git a/client/Android/FreeRDPCore/res/drawable/sym_keyboard_down_arrow.png b/client/Android/FreeRDPCore/res/drawable/sym_keyboard_down_arrow.png index f28f2728e17dbe8f309ac0fc2611d9b1587dc6d9..331fea5dc4972813d2e3e5013d57cbe9f2a72b1a 100644 GIT binary patch delta 294 zcmV+>0one?0>J{1B!37=L_t(|0qxc?O2#l4hjAm6LJFl&p}Rv*P|(pq1O=B0B6M(Z z?HL@z3k0%y1L4~RC&5|hLFcG2S+1{RNSE2At7Zg7bfIh0ROi3?0{0leV~JJ|LK(m2FJpr8poD&Gq! zR5-!2FlNR%8n5dFj(WxLJw_gN>Jc?#@c3?omy*vUkBTspd_MV1@=HC*W(ps5gnN9v sjXXvkRbn4!=pRtaW8_f=W7B!3P`L_t(|+U?dcYQr!TfZ?iO3^D|R3)ws51c7GE5CSc9aUm2k zbm`hNWGK0Sz-w+0$R5ZP$XxK$#hdq@K>ddfp(fPm2|+=EZ`RLy8g%vVPusQ%3G@Xi zRLGzV_gJI)#o!I2U{ODpeZXEs6w**ZW7t0!=ukm-J%Xwj6n}$aPz;JeF(?KF3G)9t z%rNZ{w80SiOadi|NpOo2D;QKb!1j!)VDOF?jF3XP1P$^%k5 zD3QBPNFm1qPQsW53k}QVCnE~gp-o5NgfqoP4e~0*Ce0RQMM-k yQFCn3a(40my)*D!Cv#2Mq z2#DY|g4@`70UKLEkK!dPf}r39gy+B5KnO#Oi+R(`2R}&nJu)*d>zkC6s;UGEiBYbY zU>8M<@=cU@z!Ai=d<&Pbr3ekQ^f*D=MH&k=+N*}!bzA#R{u ze`AERfrfa+F{ICN%|Cp4NA737`rwYG*#{d8T07*qoM6N<$f*`_$ZvX%Q delta 292 zcmV+<0o(q)0>1)~B!31;L_t(|+U?e{YQjJO#_`;NWC#R7K?Dm$Q1A(K^bI<=1nLuX z2$X_Z1YKNx0T; zOC0d_Pp?>G2vJtPfU+osG<{^+NTDp-m0-B!BryL_t(|0qxQ;Y64LdM&aBCVTyr4h#-LkLLdQGprt#om`2bQ zSPY1uji8OK8?dnzbQcyjZo*1Xa0%B_IE{>o;@oNGz*qkl-h0c-dmw>>z&wW%e&J^^ z{)q@vR3Mh)U+6&3+HjWR5j2JooYi<2dSMJ_G2VwJn81hkgnxI)z47mO{DvhK51M0y zf5@%z9yCQ!(h~}bh@dG;{6h{Etg}3zid9wz2m*vSW^q8=2O23KF@VF>3TUQu#0E78 zt|kc3zyW$;hClo~p#%?i6BH0)pZtb4#YgO*XG1uc6(GbGik9^Of&g{&QHH=YfsZ0Q dd#oM6>(|x3HBP7|rq=wxNX4D!+q8(-uafynuChM1KH(fCETZ`Ejef?G3Lz zy`aPj@?ZG|c0{@B2n7-HaZ0=YA%g@TQx3Sm`&0u23#9ndA5iBI*~laAyWWuy>ybu$ z;<9}W-N%vP*YS~OoZ)1E7(O~92$AB)d4?*fM|{Ip9$=u9`gVN5;#zxvV1X+XIEO$r if&dYGZ_b=OW)%l(VC1eaMxF5h0000fZ5c7L{f}2)o2aO zDpau9#B4T5p-M!nTCJpQQX+yWGN^1q)wqe>yZdW*yW6$9ZTIm$w?{oaow--eDBpT@ zy65bi`#I0^JPqVsRH{k#pK$zes^km zu)^XVnS>`0IDZsV5UBxsu>l*Ag)PWN4z?i|yHOzJ%g?#kCgsR|HzA}Wu>~1=h5tp6 zN60}MmdNc=WFS*oE^Worp$c*XnHZ0;7$?PJA`*~@$w)`7dcMQq5KgDl*jh3*4!px# zsR_+^j}K_UCwTM_UawblbaX_vZEbDU|D;EZkq8EZ!hfj#{(jNf*(p38Pj0M1?6`ts zQVEK2SSm(|Ja!x>QHDyK!C9O~JtGhapjJ;$kMQ|?<*_Vit8EsQ%jLR0FfbtW>h0|{ zrmNQNb|(%N#EqFI$Hrh5Qjm&;ScJt$Lk5;%fqEWav{wzHRyZ6Mfk5C3y|d0Nh*uB7 z=k>S?yMOkhD1a^m@f{)9u}=xIzOS!O{Hlx|B20xIq}?RQd|bkPJjPQz#|t##72Zhq zuvrN*muUzIDq0x+wvMN4&Ceiyq*&D>Ts)5EY>5_xu#v}`AWzh0ony1GxZ8$kLFg4h z=xTzb{|pkw0xN@bb#>MJDg?)k5LIUD$Pz1q@PC+|rD3B5$uSid$zEBtr|b9k1bo1K(hmTQ>p-p%Nh8Ru{sWpaBC7jPBVa0YX<^XJMJpy2{Wu*8?? z3x8dAcekIwd(;uhviLV^3R)o4#g6G{RD&2(Mi8$Wq#kRLj2W1YBuvFvjL^PlBt~Nb zrb*MKc_>8)LY+3IXoLD@Hu{K{(aKZtjTF{I}G~gNDpa~!G3E!0ek$u{A z3)Gu1rihUde!st!U`0$@vJ5ih^hQo(6dJ0q$tLRuEH-O>W-W)q00000NkvXXu0mjf D<3h1Z delta 933 zcmV;W16usI2fGK5B!7ZQL_t(|+TGV%NEA^V$MJnCp|a=-VK=jk$jDODAi5Am1Z5HS zpdnq&hwPzJ)99kz396SU3SR;t!ipe@qKiV2r4MCPFWM66u6uKJb#uM!={w5_4u`4T zXe{UtABLTAW`A?ef6lD7wzf9$7o4y~DLsfCuhAei;VX=Cz<&)tx)At@ZxEWw-w9HM z6b!>~#A7-VF$;4r9}AF%Oeq5kk)l|Eix5(ItU-FP%w}P6y~%h1fznumIFYFBPsVXn zqXu`S`*@JlE0CqLF8 zc3i<>sT^fED3zgH9y@~LsK6#4FU} z4H~6~*rWuR$25cl6)g;Zdz+_h^^YKaBwN)ZTs)rUY>pO$u#v}`AkWoioolnOxZB!j zLFg4h=oSihJ8ENR}34D;nT~1Ff*jts4P^(1*_` zP|s(X&*qLrM@L5lOZ;O-!K_*L=_{)qBoQUJjB_}R3b{Rp3%H7FID@&``Saup&~O29 zEPwG8`a;*!)8i-bZgoVmE&k1#jAjURv12;w)gZ={5yYzoxq~%G!c5FSBBo&s;Cy~oK8_&-p-vl9v|fEP8-2t}@}(NY5QYaXIN^X%&1gbBYViV%c!y7DL96mV zvQN8ip?VX>6frWw@AtP6tdwa>l0k-?-X6#aj6xMQ+GKqPEH-O>yHX&+00000NkvXX Hu0mjfP+zcm diff --git a/client/Android/FreeRDPCore/res/drawable/sym_keyboard_menu_black.png b/client/Android/FreeRDPCore/res/drawable/sym_keyboard_menu_black.png index f34d02031b4d3240f3837831b2626d17d1065b9c..fe5c072d8a26d7537eac7ba2890784d364202d45 100644 GIT binary patch delta 1017 zcmV5UJ&l-ivzwiXu0o6) zE{nJX7l)OpKnt;^ol?&0)*Qi7Aj(37i6Y@Pf-I739&Bh$z$q2NO^J5O&P~nSGH~DC zjOXOx$8G2E5a@XEq*lU#&aX*_576uH z?-#q>?pn`{j*2Tx-! z*2>Dts(+fDot0oME-s48<@)0V3O3|gkRb=~9i|OGik9#$rc!L3wsf^T3cJY zj-v_>_gb9si|q1n3xDP#2##j4SFWn@uu=R%JBxOQHwg%qY~S&7H{Wa zx7#g#zhCC&=45biP*zu0CD8KnvNSd}o(?u72YRpJBCcZwS1_&q`mux+{EI16Vy)!l z%RAWH+bbkquUEM4B`q!Of*Jzg z7UpmjvzUPoUW{V|LpYC7T*B|Tj4SYA2G=2)YOGaSTH5S%I;E;~O#G$pFzar+`%-NZos}LiH z%SK#+i{tt=_eTq{rro5R*KIR`rGG?Oh%ixPxQ!qeNj48Qw03_ur9!wV(N5Xjre!Y=DokYD6=IpMP*g8N(m&V;TX>;ZH2w z#T|%&Yb`}Okc<2A08H2lGqUgmc3>w8U{MN@k6g`j_za>PjkL%j_8^+sf=duIL|SA9 zX6VVmF?6F3=ap~qgF!c*hcVwk;9O4;2SyV{DNQM!!-o;JAXk5DJv_Jy1F_kFE5v@tgO=; zyGB%z)YMez>gp09larIu)YK%UrKR>ri%j7QG%82o#QTaInYWGmE`5+eLXunE5>-eUSYcW3JMC+?p7p#EEtoBY~&yp`FIKi zC`1vS!GA8O@TL6xnwgmy377f#d2zX1zrRSr6}cIv$X;B)l;Ndl0e|5(?qCU1ctRhTwHvX zT~-z<$go^x& zU5Hv*TU)#39%*Z96N|;t5$+t>ji{xzwzg$_e0;Scws1u(&|`uPZz`|Dfj4jnb*M)J z4q~(ZV|M3Zx7#g&KtO`QpbQQU%JTBEgtEA}D2zGoX0W4q% z|9@a|rHq#J^z=#&F0tF~;&3>GBYuGC5H*LboTij>2#2ccc>0Ob&by{jlQ!I3ij+ z9*?kAZt6wO;RR$O1KVK6<4D3L=t;msczFa{m2JunG+_y%Pn*?h-PhaOD?)repK#nu zc6Rn=W7B!3P`L_t(|0qxc?O2t4BfZ-%4f&sM%h>h4p&_<9zT5SXcTbo?K z#v54J2v&CDDZGLJcIV|1<}vJ^`v<4A>@}47j9Ad+kX*bbXy+}>}^nBeZeoP zu!RHk5iTLd-`A%x_mF?I`1*SqDkv z4d*t-2JPY_QOp@OP=;Rn8mG9$Lxktp7<;i=jZot#xF(Hp{V%g8<8b}(kFhVuI|Q$G yO&&oFuJHJCG9})3>LqMrAM3?j#^bu0C(k$RjgCiXIywxz+lCy=T9=?LCPgb7 zd5rnM<7tcz>SO0A<^kQ)7#$Sj9&@ZJc&iqpFIMdeVvGydBr%5nW%^_ct{>Jh`p5AJ zhj+CmgP;U2SSkOUjP;%R3_T3dsnhFF)Cd#C^Lzp9jgChnk0#&%0000`KK=Fr1)Ckrgb95H+u6RnQ3rI-N<@bGe3^s&I& zz|Jg2|FOy#$fEQ9Oi_%*g&$wW^4hX7`sz4A;h>#KU`0%^dAyA5lBl4GJYq9H;pS#} ZcVCtywJ0XMNelo0002ovPDHLkV1jBgfY1N{ delta 276 zcmV+v0qg#*0fP)}|cNsbDjv{8cR3$;N%p3g@aEq{atCeK4m&R50?>Yq%` z*Mj;tlk1}#yG%b-2F?@kt29CO6*<(Q~C&X&duP=JS*Wzok1 zYXdv8G5U{H#y}RG_h*X6SS acL!gVB(?WUrVW<>00000?PuBB!3b~L_t(|0qxc?io!q?fZ=2y1QHNo7t(K$69~KI7R!Qyje-ak zHnyI@LcBmAtv3+t1uMZ?u(GjB?+Nr5rU=tG#PHJ0gRlRYHw@#wGeuGOi1C34%99== zriC92(a~Y5shBqYvB7h;7$JdbBBqA}?j={TC?lqiqY+b%nt$LEO6p|H7}G^ZB~T5< z2&~U;O|V#>{K;6XPbfxUefs77!w&ZvoH0NfewCmW#yHm$bi=IDebPYzzA(T78FK6` z1J=lqVTmbHgz(?FM*$)&#;;{ef~X|02&okLZ4s0s@+8IuxgZx*|F|F*ixqN1rejk0QbFb~(iDotNX!E$6sqRA$^az*0000O?BQc&okPznxR zTzv)y@dW}|`v!u0p;N)R;N;?#-6x2D;Tu8;dgSDSh;aVn>=edUn4+x=J zO^w8~@r((&5~iAp>EH!xoM(eK#86GdjPQe^X8S{!Qihl|ROz{Y1=VT=2g1tn= zPz}eJug`o<&{?1TlQCbPd5pF7$)9(CFBCVh!x$ZSb%NS>$L>Z!N6c#7CkgWLgfSLK zk>Oi2;1d~AEb)N^0X&m? diff --git a/client/Android/FreeRDPCore/res/drawable/sym_keyboard_up_arrow_black.png b/client/Android/FreeRDPCore/res/drawable/sym_keyboard_up_arrow_black.png index 7c5745d86d108952100b4770f8fe8373eca56982..96577f4875fac086612bc406199e96077355a3ca 100644 GIT binary patch delta 295 zcmV+?0oeY-0>T22B!3A>L_t(|0qxc?O2#l4hj9}qg%rvM3f&!gf`X0?A}F|25W&I4 z)iXGV7YJna27UM|IHIVj|8b zbS6lhFY09k&KDmec|L=EJYr5@!iW_V{=61vm=Xnj;&RFNRACzc83B!3D?L_t(|+U?dcio!q?fMF*P0uvBH!QLV#5Z2OS5nQlQ5W&J` zThCx2dx1b&Zy;F-8+X88KhjA-{7HM2TVs*dqsws3{rdr%V{tx5 zXM)Z7+;2vHK6#AG^J#oygS-F-3{iu6C8&xC4h02W@GW^yAzBz>ffO0GmH{hdNU_8W z2_h)TI|`w1VstHIn$UMbC=@;)7C{*_jPXG}$Ori#ALN64&>IA`ErL>)K?(kz1kDk_ u$;9a62ib%479o=eK4ZdPq$z^J|ClQc8Y8Y>ex-^40000jWuPWhu(D`BcujD1tB&R;3&?bD28n$A_rT|KGZIVn8a>mq7w=uXp4m9U=HSD1xnC> z7wCgq7m(#*jwoWx?g~mcqR<# z!i;#_Zk!YBF_W;y^G_Ukcv`JYer&vu_4Vqgp4L7vrw|6?CpQi)nV^( z53~;auFiR%^Jm*RXD4o^EffmPg&j|!41y?$i}l7ymZBa#7=MR~;5m-M63dWgs3#0yw-A;ox$9^6AMDp7`NxDkZ< z%Zn8_1tsJ#yKFPy#&w*=KI9<->DYi0T!stf$U>tqVjOGDLgH}(9e9sn1ki@tD8&-P znssOwhP*P1Sb&T0LutImB_tW{J9mX49e37apB#x0L$RO1r%U0;*pFrY(ycBpc==JXclrFO2CC} zIEgP%7(@fgV8a1aq8?3ng2z~67UB~`OrRK>;Dr(xf>jrhD;yR;DsnI+Te=r0PN(cxhM=#s_@H55vAe)ZjR}g&_lGKhlQ? zz>k~QgOx}|Iu7AJrl8P`3f#e@Fr>*WWD9bTVsgxE9EKMSD1r3T_=^4i^56X;tVX9W zqzkiR@w#zVaK%i+8Ot}pow$WzO~4phQT{*Pk04WUL-RNBL9}mwe*oMoaGiTAgK7W( N002ovPDHLkV1f?%G1veA diff --git a/client/Android/FreeRDPCore/res/drawable/sym_keyboard_winkey_black.png b/client/Android/FreeRDPCore/res/drawable/sym_keyboard_winkey_black.png index ce48d6557920e8193378677af637e220013526db..778ad4fa664cd5dd83a7e8a1ca4557ca6e8aa671 100644 GIT binary patch delta 643 zcmV-}0(||X1)K$tB!6Q`L_t(|0kzd%XqROa!0{lOh*DxAh>$@9DZ|XaAu1wWIkHf1 zwB}-#ng&ya5~da{t%ZponR6^i1XDmJQjrtP+(a=2Hl&#Pa1N_0}qfcHGxI86_c;UphY#(;HzD1T@VgXs5Ozw4P(3qQ%coTExXPH!8{~GFDChxiQ_eAh8ysXUlNrj>yv$;@a)Pt8klApq5e3~~ zKGV6JF=RJg{KZ|OkBiik*r?LnP>7D!C0|1IM^Z7ag?l9m^O)-(KY?k>Gc7dxkG)CvyD3my9U6 zJNt+PP2|=<6tp$tNjGtvZlc6}{-%{WhLK(3C)Y_irGHJMh9+7#M=J-}NhObL4n2w2 zbRI8I%jeAFIfgKj@yuosAFz&(7*1|mhy)G1$wqDwTwpuPspLJ@u#Np3;b$h1TPsn} z9jbVZW+K5A%E@ddk)VTd%-{-lu+y5d~EN}zM>8}6)002ovPDHLkV1g+kDnkGO delta 652 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 literal 10050 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 Y1t)c{twn)&A^-pY07*qoM6N<$f_8-7j{pDw diff --git a/client/Android/FreeRDPCore/res/drawable/touch_pointer_default.png b/client/Android/FreeRDPCore/res/drawable/touch_pointer_default.png index b69c3449a735fa80f45363b3299e2b316c5ab1ef..98f9f5a33eb5bf235c34f7830de1ac052f7d1044 100644 GIT binary patch literal 9305 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 BthxXI literal 9353 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 diff --git a/client/Android/FreeRDPCore/res/drawable/touch_pointer_extkeyboard.png b/client/Android/FreeRDPCore/res/drawable/touch_pointer_extkeyboard.png index 6b78b618eb1336e5c7c228bdb5ecec0d52023cb0..f1fff6d4c1184f02ff1d321e8d7447ec59e2af9a 100644 GIT binary patch literal 9555 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 delta 9571 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 Q)_etMYZ$0ksuIKg59iYANB{r; diff --git a/client/Android/FreeRDPCore/res/drawable/touch_pointer_lclick.png b/client/Android/FreeRDPCore/res/drawable/touch_pointer_lclick.png index a2e2084f62fdf57af927364becfe506da23d5d90..90f2b1b9eab66045049e331446356c5bff3c44dd 100644 GIT binary patch literal 9609 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 diff --git a/client/Android/FreeRDPCore/res/drawable/touch_pointer_rclick.png b/client/Android/FreeRDPCore/res/drawable/touch_pointer_rclick.png index 590e5cc9fd5a35d8e290ad2a28528b27acab0789..dcb6904892f88fec3c5432f80bc09a01c0be8ac3 100644 GIT binary patch literal 9464 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Ⓢ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 literal 9594 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 literal 11847 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 Sk1h@3fT6Cb&Sx$Ai2ngCR@c=4 diff --git a/client/Android/aFreeRDP/assets/FreeRDP_Logo.png b/client/Android/aFreeRDP/assets/FreeRDP_Logo.png index 0006001b74cff1ce49503d55a587f64b4f976bd5..1e272627b473c8527f109af88cdcc982b6082a0f 100644 GIT binary patch literal 30329 zcmXV1bzD`=(?2xQNVkX}N_R;}cS;BXm+q2okdzjsyQJaLEg&V*QkO23x|il6{T`m* z```J@&d$#6d}nrMch5&nbp?DJY8(In@Rby0wE+MH4gl!<*q9)tGngv^0KBA>WM9AW zL4mJ?j^v)w4;>%6!`?PGkBJEWtnU-q%@*BW&zE_D${Z$F&dP(WiT9W+=}~NwblhXh zIlP$1s1@vv(&eMvMHyq?Ehhem*=0ESA6)y^Tz?Cixa~AKzoU^@39Q}!c7-YrEpo|d zage>?T6(@DmX)kF%3?_p?BLW4_vRQQf5mq_V};^@4#~f+M{8(XD19r?k6AC&u&~fy zh5=CS8P|)@D73Fij9B+4p@bCVX09Yxk5mv`xC*iuVgiwVrSPwgPI{hoQRbQer0hO< zC8>J2BC?&a85_Vm{|(P{^wcAp461tsaL@78lfBi|jNQ}+8HcPcEOj$3Q}9FTRwb{w zD{&4IC`$nDnI$WIo7=a#K8J&>=wK6*zj&p*BHDtf1u068L7v2qO2ZN_k2q9NF{Oo@ zD(Zq9dT|24LR{QmvQpl)p=bzY{lyVigMGNS#ThFQcRmWgey;$lGzKX5V;j!j&N3O3 z0h1Po`fEA5;&W9%2tC#QqlJdIvte`~9nC_V!zf!An1wb zuNN}u8TRk0xPTr5ij{f*urLmA0oP}L)BouMX-y6V7;OJ{M+0c`TikliQ2>yt*n{E! z_$bgH_^!PHsa}h&yt>?rlxqQiIq`h0f$R@K`9&=X_nc0BVuSMOI6lDYS~XsBTF2Nhi$l>n*Gu)yw5tHo?+01nN*1O6EczU4IdO}*cMcV^x77|@(FVEBCN zm@l*sPD^_5D#S6zZMBM_fevJ%+!t@CZ4oxeWB@dK3=Xpc>t}m^J(}VM7bve`zFAby zFeN@d5(NT1T=@&xUA3hI2Cq6_W2s;%gn?#@vbhO05qHFty7YEfAptaRRt)b6|D%?m z00V2)o_2uLl()mVO$Rza8rU-T9SGSxoXeyFG|yHHO|2|Y0a5-rod&W#diF6;$8`u- zl@+uRv|7~Q)u`d1@(9`k!~KuBIbH)lZXh4cqRSX5zreIJ@(!ScS31zJ;alpU0rvF! zw+(lTm@0?pz|5<;t$IQSI`*+gK$$P}uqF`d;WL8=+*|9-X3kkzfZWvkIrUuj4D8~d zZMGm2hd&^@$v{Zv;8kM+e(D`KjXs0J+`#!yb-%Vz0D(A9Q>69~rphTQU{48e5EC^J zWd<;vBWBF?-V5!8S0g)ne&%Fbn9{M10&`-JfSH4##pE)JK4NIh+ zu4#0^BL)p^AhVbf^mA~K2t@32tC9F}tnr_iAQbqDjrT(-Q9&D;$v0LSQ%YrlCZCYt zDKtjp1B>XG{xv8Fd$fgcU=bA3n~!v=z@nJ`RHIrOzQ&ccgAAK+hWRBl2w=!=Ibw~p+w zI|(pQcW}Ad3)qXcoP&S2o#tr~ z?=*`ua#9i$3CWG>4f?K_Iy)-Hu)^JsXk-n^jjX$i=(`*MS5!+7h#j%dt5`&I%U zb~FxS_w8!j>p0AlXA_5Qh+EO^K>Blr8Oej~SHoT1OF#X?}hggFX; zZVgrN_lB|-{iA}PG^qkWDCK_pq8S$<`2^&!@&_buk{TE2xd`i;>9CNav#xfNZz)8O z10jcNgPtGE&YX>7^LlH1E@E6zfUvG8turt2+$GxT-XM)winWJ8i59kVs~wZqo1h*x zpbr`}VSd$ysLOP%iA&ZU+C6C>>jD5_;z>MsH+--X0l5GaFoN1Imc|uGQa4_v*b*Xz z7XP3EM>h~c3+&tJb*EZ6e`wAe4$w1gVXSiff$>b^t*^@>C0x3?TowxmVN$fSy$hlV zL!7nyJO)v>ZHqZs)7xX?&E`FpTr>a=`9^-yv?=STs(ju(eXRG+K!r#H1u!`} z7GT<`HB8KPs1QI{A7uW^9-9i%euW0&(HAfO-u`lDw6IrVAGvBRHBN67c3Z7y`VI@k zCE23)Lo=^q1s_aK0Dj#%=CZ&Qy$^)+n)Lp=Y@lh#^%%Ueq_eK67g;p!7XWc9^b3bl zGT3XSr%sX@E{f1r8=TX3S`E>Yd4~dO#}YZw4T?$Un~|(IUOyJ>w$k{Ljt07(b#>Cl zsf#{~RuaP2TNt?5OU&3#XZcqxBff zPbXXlLwDfK<>SI>i_AHgS&U*A3)F~Vb26|e?gt)&HGf*2SPlTKTdt?_6pT8a%!rBCwCtGv z@7u6C=A4FEIBZ&~r*b)o(Ev;_p7by|A)B;dXb$y?w)-V9h_Dm4r(ln(XuSxm>zj^gRlVG%3+uJ#R;ZxW&(;aZS12QTz3h*V zJizh07rU`TrcptU4WwEJr8VTn{e(Pk+%ePE-(I3dw4tsy_CQK8{GmIMqmRbd*yKO$P)l()< zpM(A`p2~x(FkhM&dk1l#@NPuDPm->Vzy=|Ayco=9%}51*ZIKh&q@Bfc>KHf@q!3F2 zU|&MKAwRxPd!ixmy{h%}ObL=X0HTxL)t;mXTPRkX+u*F>mDqc5{waF;z>{K&z*Mg< zjJO)}1e8vm&`Kc{-WO~qj`2upl#nC>ua`{ZH8n~NVlZ{kDSpRQRxe@$;jU0q^L}YT z*sa1_2FH=w^#F~^rvOpCO)V~Eo$Kt*-6tL@c4aHJ5$U#x(F)QOop#%Q*s_OWDd7C@3Ml z>gJ8#SE>`o-VaVU9b`7b{^s%n9y#m#&4`{&Yr_U*(f+!9Q znZogQ8shSZw(H!VqQxaII~{YM0%FvjZ*pR9lj;?EUizO$)RX{~-9 z>{2lMI1i-VYh?` z$75p9b>2r-2#ZScjNLs++i%rg{fiOOdq)DY&pPEDWb`^GU8N&>?-;6M{((Ml#g0G+ zn~WDlM)>|0^}5Z{5K{-75?~l`?o-U6HqQNmh%2$NKmIY@jCDLl?%=kv<#nmWH@d>Krf2qyRXbKflT%Pc?Yr1^P4 zxekP3NQl@h1tDk)(_Y~e@?DEJxpas-8k1&m*u}>vFvJFrai@^yxZ6lh5O{SQH|G9gGn5FIfI3a-Sb7%s>wQ724yj6JdJvSW zKS4PHdy>DX6ei{@rdXEN>JNz$!HuGO1Z-GIKQAuD>Oiz&G-LS}`#glNWUnt~FFAf~ z=ZK5L<_W27{GsmsXdukexRrm;_vvJF+UGg@L)RV?f-+jHzx=3;Dizjs$+f)p%nBxZ zAeQnd|K0`}{Ww?6uZ_GuwBmvKWxRfh8&!&q08%11dBJHAgvka;yc#HX8zgDQ64QEz z8PXe+_5VC_Pj(-8kc^lgZ-RW3rDG4Qe*G?pc=gLq~V|%qLK~ce<8I*6d;Tg`2I&b$nAuIG?E9J z4M_Xar{hc`vh)|?^7w(I&nIgYKYspi<3)?5MzaX4ZSyIpj(TMDhxa}|o9v1l36Qb> zkq#-J;{4oraqdUZAOiF6e@Mj%|3~WH5u5?Vkw1vLA1Bh%B+zJk^#UAWf+7vvCbt@; z|0j)Xg#ju8v*>3AyPi@OC>9D@bO!n;chM6r(!xVGAA?JUCeNC@Gp-a1+QUyLd#v~1 z2`31f7D%{yyy&Q*u}7!P{3T8791@xhTX2D|>Pv5QIy_^_J&o$i zr|L_~S6>bDg#}uj$bj(p2w>;<97noigp!#un`~}2wF;M44GiesZI^nT@O?WW3^o-} zFHX*$B1@b}%j13;5%IkENVb5Kl=R1Z6v4=++H8Ux_)%~0-R)GLLO&&wpzu8hc_1h7 zA+a|SKjo!v^1lk*V*A+&?IuHka&0w9f$fI(e||pZOX;TyEG-Pq+Y@;Fd%2zB$Hb%= z*NxdEVXo*-)bI7RZ|qm>wV6#0ADQK^D_hY4$;S*eREG)(n;JpmZ6|(l3KxNk>czKb ztJ`r-wHXDM*EtNcm=!1@{;E+Km8#Qb(`P)@SZ6mUxmI_dd@6^kbC~Zwfv5=+|HyM@ zJ${(r&o#n9{daVEKBpJk35+m&!z#@g%^K{JMG6X8rw4ncdywbqZ|(QjEV>@L-Lh}( zbcK#D9{;5p48wfYJ>-$yw8&2*p_bQmw_)Vdf+5m;H){4D7Ea?zz%*n;N`Y^?ln8Nt z?{Jl>?{rJWG4Oy2@wja&i~QZz)F%(nyk9-gJhpJ&#;ogIGPO9nS?T^b0(w{;Z`IV8 zh-I;DaSP8c6#LKz#|ixMsoH1!1td`KfSbz5)N1*|TS+&t{1XkW;|Lz-$pJTN)vLKK zJj0_7!v|0J_GKf!DxqOM^UI$$>q&BXQQ0mwPP86~kahS->gnS+FvM_5=*E4YwRNKc zFt7CnThA6J3`&MVoO!|oyT98;bl5cE{-?4R-l@jEu!Gvv;a5KQHAq!VkxOI5V#?-2 z8YPZ*mPjbL+j79n=kZ(;$tm!1QqXo@1rG#!hb;@-)3k8`Z~4qe&}v-BeNFEm>zq7|=S+SQ$vVG4 zlU3db&yDv!m+?N>D%1!%OkC8}e#offgZxE?@;Ut5CUufT%U0NIz-@2!AZ<(bx@y@h z@~^uN6-K?Z6MJG%4gna5ch2h$M1zZlVS_KMNMo8En*P{;8-VFCyk!r>^j>B_ZuwW} z`L{Vu;7bqW@M6>8IY+=M-s-rDC~G6#FVW!_pdv2*`$p&X;^lBTPMBqVxzs-M8ff+V zVX+C_+WTXgrs$p4)Mq##piNCE_vvE=vlw6L8yoi9dJ{i6ql9<2iq7%riQ0tZ-F=Xg z9cm;%4W|yf{bXdZ;)cwuXW&qlU9-DTWJg(7*jyq1oj$rO^t1y)Jk`SEzeE9Gc3jji zpX3?H%dXiX(6Q+-ulo!n>Su%dM##EBrg=je6zPcGyC>F(j&7Z-TKr;#D=bpB+_2!k zpE#bbc^NpoAOmv=^|zmf_1aYN+R=D-xc5FSEJep=$Gq;cjrRnj!HQ&CT(qc)9k@Dl zHq|`4M#%Qyx~GL}D|svZOU*YV zQwoN3$KqgiBvX7?N8dheW1%MNYsh>o0FnaV4z-UgpIiSR2(m#;N6W|5qTnHyto%G2 zkcJ1C7v8cMoe9%xpp_-J9$7c&WyMu@j)(%pU6li|Tp;HvUpD@@TTyS!&g)}l5WdGA zVJpE~oSd#8g$*HnOb5bDZ_(hw_!^a>1tQ<59e@SqPIt=&rBy$+3dxtFahg&$*}x-& z`rif@hV?19hDS_(V8yToVpcBOoP05wcR&dA7WHET@0{*Wr@eh-Q)^A9{h*PrUyOOo zglW~EtgfSye~TuM9Chp<@%q3vc{3K?wvQ8LMql4`QUaEY=^0HsJ z0CPcD2fvK$n*^LDhkntJx`P@}G*082Dzw%qxXu_6v2MOgQ@c5S4@6^DmGtS;Ojbs$ zek1CA%%{An(zrbvVNt(N6D3o&h7#r^whicf)KMIK+x|+{qe7e{0 zl#4tJ(fAgSeFf_fkdfuLJ!Kp4{g|RbUogMX}^%?gQGOWpEXJjZv;E)wcN8sudJWY;ZxOcBh zX8zGTtW}?F`SzvGTqsWG4KE6WBVMeLW&35y&Jvo^+4^0cufY(|v(w)C8((Ssx!LBH zZmXIC*SgS6WSzw+FrdI8XZ#A*=EP7l@6Fzl(ViS;L72Z%pc^?5$b4005XW+r_Vo4) zF6#sNuqQMHfhSdx(yuiS z$crkBndFidQq0@$^EUEgx>}oU^|2eC(M1DNkO}$MP?I|EMjy03B)k92u()DpLyO$C z^p1MZ_-g}-q#Lw>o_3O4`*Z3`;l_MnN*PBqo%S3?S{1MvA|%5IeV6yg4L&2vnzsJI z(^` zwaYjP>tvlAaPh87;iFd+R1ifBBXorxL+YC|lXWF0DO(fHZy~X$1{o$(-AJ$UL2;PF zuAsvb{r6RLI4L^Pj}-6?nhbuQ8wQ)cLXjOH<+`)H;x{VR9o>xA@PhBL}+mjdI$f|k}tqnXGkS1J@S zbTebs6Hc6v%XYl@;b~&`qta8~`3;xLJ5xdfB~FvJ@l&B8_evQUa!?yGGf^Jm>#n!NKD z4EEO%wqt0*u3HjkTq@xl*f3)3{m03K&!{q+mp+VbJ|W5qPrW$Wy_t@X6kZ$l>%ZCI zbeCTwaXF4q*%o#^^T>+yx)kh%mEv=_k)l8pLRa1;7ubbabg%QO-I5Yk{0)@ca0&jW zgz-A(PB?$MmPUa2&r`z8Z#~up#zotj2YJ!oSX3xA0GJjeG1b!cotu@V=LAYj$N{s%e*KO~H}h_t&{2g1cs)C!Jr}(_dxNZs4Q#B%u1|J(JmLCy3YbFq(^L zy)|dd!0cOGzx5YdaG7EMGePft+<%_^KEj0vO5(aO#Gxeka@B~&32tfT*yjCWJ@0BtSTvgrvYh8?Bw%|e)R=J}gv&{~trh_#dG zpKhXA!q@LU_HZuzNCRVCbkOBfGrC_qKq%r^ z4_y^`>LF}`nZ}3ew&uCUeco(n;N9jzx1@&S;g!cOOVH1zEV~=OAx*iOO}vE|EkXWW z#RokC-zDRJFYC9gndI!>gb?G_^ozX{fV#Q-!tHi}g}>FqLKc@)x(6KmPBFTCaep=8 zVt(f2X&cOMOMS)4|A+e53&70y9j`Gc1j!S5^l3jUr>{X@sWS9XJ#UNGS%T|k+}!Zh z`Cp9KKEo>B;0B#F+B`P-MYpJL8>NntKBIemy2`DW>+gwdf4V4^0_a|!v+3w#oMcnO zKMM2zjxyz}rzVPOc$3DX!flQ;k3|#P7zrDc(9agQ8FyRoyKqo;17z z6+Pso;~(eAcWNi2$rPgibfmhHAof~pwyjolBLTyR{l>pUNh8|GX}uZ&u_}$5BXND( z4VSs?n%Mi~yp#PBwn#Zw^2I&>JN=??*{et9Zq#A_PPutX+=%eunIhRKKzaz`LsAF*8M#a(U%1LjmXa z?~>b?viOashie+(u3a}hu)0UzyG368J6(6*_n=*^({`F1Nz0oXYvl80|HIg$n=kw2 zE&XD_mE?JH@GI(D^1pxCQAN?rj158SEQT`u!HTM+$h*Gft>bJMF*FE{XpjUoTaT zVY~TE^vozd_7S=VCTd6SGnu|&Yvz>zt0?)IMyo1vUV8D(7!K4oG%$0O`Pnc0K|fa{ z?>F_A!`SaSMPC<9dYd`lNlV#0fr?Rz3ZI!Y%XmSeIaHp8%zW>4(fD{+Vz1wi*uJ-# zN|lY394YVxt~f`>REM9Ud!VC=eV^<#E7}pMN0XuLE@z1xzfwI9MTj^WCOAmsEz??m zx^p0z3^sF~W6ozHf=%P)(0n@(lSOvy&xl`eNMFfs}u(`5)NT z!N|I>YaQEiVAXUi|Ge*0h5a0qVM!{?gu&?SZ34#;JPHqv^<5EIaa6WV(;bZH>zDKbO6<;_6gLKB~}We@Adwfz;yYrLb2Ym@mh&A zhMISm@*g^mdpgvRo;e0=N5&*cQIb&Y)EQOHwA43Mie}nO#3qQ*e_>_ps5DQYC{hq3 zQ#e~iK)7*Rz}uKJyV{?hx<{4-oKCQ`{uZewBfY?DFUOD)t$iY1m3s zo>PEgT<(~mT}+On?DUGUurwo>NF?c9|F;8F44g@KV4c01luH(XgjW;dka1Rp?H*;v zb__;bB^hF$yOw6oR>B;$OkZyW%c9J*|9qGb18FJ=?5Qfh^xDC}Opz1GPZ#QMI$2+3 zF@B`~@@~BG#s3{*W=j2zMZ~y0oHDxrewYWbvpS7T(W2GFZ93i z%fm!aK%I#NS=lY*Joj?^i<$eck=4^tI!!TuUeppFUVD$yzE)2-K^0bOtb5-r15^-A z;$l0ZdlB=df!nc?L$oeJL0_W;^S(;XSFU=mcJkBgblJiFtRiQcj`n|RODre_*-w-H zwNqvAanm|diQ4YdNrIK_+IP2^4tLyo0mSlZX|b-(&bj`}Waf8mjNS1nY3|PeBA6dW zS}<+e@1gH|xqsJ~Zr9C39WvtmKmR*VD2OrL(<-;(%Iy}BxJD&(Fd%L*MNT-2TBBUm z@oey*0!)s#>zdzaGe%~!?24@dmiP-9TEb3)z2dPq9v%sDSG zG%B={%1lf&g-HxF13nR~=k=ghb>)i|#r^03TN$+W$%R%q{=+RI`#&cMRVm9)zZjQz zZ+&jIOW!>&wk8il!2^RnaQSnD*p}lQFhq9jh|e7Y<`y|L*3a z@!M|O;FIp1QJ3y%E4wfLa(?3@^Exm1*x3B}m3i4y<88z!lEVquoYfi)In+RiN)>V)Nb%)qjL>p5HVX{YZvP_uaps6=bmv@t43hB791rkLz6*r=i+Y}k9Zzho zDcvKs;rC-Hv1vPle;hpS$BoUc(FK!0>=7!}zlKRzH!Vyj%qUqlGik~H>@JQuG4S&#=w>{(t4iUuu z39c6yb#UHi@^QIiIB(3VISXD{_r8}1IuTxLI~Q}m@@(i#@%uy=d@7)zmN8O7?U!{! zWtDkZcfW{UlIsbey5b~>>E7rLgu zVdBYy5HT5A~B9cxQQ=l7#_g|99icpF(l zu5Y4k58#*ruMUF z@}XyRzVMsyPU_UkTjM^{CAq3u9!L?3eDNOF=;Wh|Bl#Rvu(9dz+ zuK%3-eHw6-se~Br4x30ZPcpiK(%?rsqQN9r+xMC2?DDgbGU|@S?(UMgt!I39a@15d z;+-sP#RG*+o*iE9Lw6Rf;ctVnX_`Idm|57S)YBdT@mO9}CV8;~YSv__-$=-L zlN1(n{NI6b^KHSga$3+%)`VJUtnN&q)5$L!j++JX08)hsI2Zkgm96sVj`qbD(N}~F)F=5e_K@W zMz=pl>|0SBsk_e=nM&|@T&KMoE9$nTSb3>#rUM_A|fidG*Y_N~l2!;21%9JEWWbWM0YP8E6 zhIvX#8#BibH!2d5gZW$%zBa~VOv>|S#>=xRv<3FDNdFXI(iJiPiF zzK=QxaZvolW{8u`WPu;O~L2} z|JrrR%J+FmE+Ngh$8>j5;~gY4=s8v0wL{;^tlzZjO<8rd@&niue(arTE>Ez<#4QN< zG3Q+oF7csR=>6baFQL95GD^#B6oK=4hdK9MZ&CIL=AjWnY&Ld{M9^bL;oJK zIjs+jc*AY{H;`SDZ6o=^$a$ii7%L8IU_!pxtY5CQQxSK znE^`}k*z7FIlgX__U~Zk3N4Ec2G5E(o$$rUU1oI+V!M8Cb_LM4SUjYpp!X9$qn3(ju%tC}6WemUrn||!crv!!`KRHjdhfOZ1PvW&NGfeb zI^E$JrttR7a=+MmkWT6mSd{58ZC+_o+?(lU`jYGa{S|hR>GG@-+`uTvRto7*wIGYq*3g<|CPZl#*mY6uXC-RCIjV5b#F{HhQ#!Nmi_=NCo|1Mlb;EOCAe=W%;Juq^}wT(rbjBS~D zIe;4@S0fUkyxBah=T;p;>`T3>CO@HXWb`UI;3F`pWt%7csUc^DVzAzQNg{?!u1<8x z|DVUhG2~FyM-sEF+l0$em$ZJ*)V9@3=C3e~?Aw&B&)-HQUV7gA8lx4oBW}T_bAriK z=L?kNV=s1^s&!+9x0wB|{*%@6J5w6iVTbA$LKo(K{40VBnhU1c+FoD85yS_yd9?)H zd|D$4YBFZvJlM>zVPbc?GD>TsITmZF^np5HmDIUfhrYM5J(@v7A(JfC?6-( zX*3gUWpuXrwTL1*!tSSV)E~;&yG`7vYMR7K= z5oTo4;mz-z+Y!n{;%XL^OQy42&BD2*9q&&mKA_4Ji$g&Sh~mM?S>Nn&LyVtx5X2MX zw$8X>M+(2!C3O+YMn-lC1&-@>{OR;5-oH^Z^o{(89zuZDk#9*I^Q9f$WL66sVJBeV zdH2W8g01;*mn7ZUH36@BFUN03S*vu z*BI_OE}>SPUTL+|tSoTy2Rwyu17n~w|9b-O?55P~SN=9U;pY4~MTf0m&XjVrs_`F=QjiHY4%C3k~5mjx-)PH%wY4JYF<_G4fB z%FJ|7_%kk$fCXF?ITqkb{+Z{Xc;!1b4UiIFuc26f`-ss|Btmz?YB2g1}2$xLR_Cr8l@nnd!*!pFf|HooJp2q4vIfDgdAwMbjK$7LFfMfx6U#3Qnpg{$0y3>D#v%#k}K^Chlkek$-)nB5%0nyi!ur*5yRN_+TG$dZ7YQJBv8>i5H^};?m^;PO zOWPNM7Gifi1uo7^ZGjkp`!0)kyn57qpAB^J+o||)+AbA%4WyqG5M78_5ELk6-Z^|R zk1vs1-h3Dk{T>4dM~adPV4s&yoCtFouJzd(P`Ip*fvIa5!e65he1aZ&ON>Jke#Q5a zF$1iXghbl!AU&1>K^I8yp)mF0kknKba;il1r@Ji8OI1ThnMs5)H#&){$**Pe?i;x>Cw>4zZJ=^6sUl-KPnDg z_+ra`ry5J&;={Gkf}dvfS~qzY5m@f)KI79odNNZ(+>z+&djTmjGX_h+u2g6J{R>G2 z0BDdABbOtTM(m055B}b1AAWv1dvj~^80dlbc*#tKX=Y(osr)vtF&SJl^2h%To<9pn z%8;M}KX4Gi1^-@`iJP8M+wxbbfX=*{g{-{1Uh8)&27VC2A*7PnO;%auY-;KeEgALF zhzV!{0Mw&(r2keUeU07Z-WDap7Yu4sIj_j^DhhlK&5nbxV+|*=zkg3S^cQ8>`#Q}& zI5H}^2SFzyb@ffR~*ko$-b~3Ag9~^kw6G{uAl4l@am&A4W_Q zkCgzR67^bbSd~=X6US_t2RAOV$vsPgwr<~n9-aRFx6@d8&Xe%KVYp-M;ze z`$X^{wh{Ttg$R&3?g=6sc>MilHrVOI)QEV@+yzluus0N%Zp4v6_mE zqgfYov*K9M5JA7fjQL*(L;o5EY#_-d6v6I`g+ccH#@~g*gGNLlc7jYA2ziB%uqAzi zeR|k+E*XI7{>Hq1E_c7ek{G-kwu4Z7?hOBqW47Ae;$=(U6WB~Uv)Ld=0z5I5?x2Wa z3-`TVHAHV)+Y>hoXzoZ(KnH%L^>9A9xq>|om>^(jJA1T3vH z9SrnsDa?ia-uPQ9>M;XS-=e%waX7-~Xuu0>75=kf;yEzca{E{Fj6-rs6cs3Y3UyGH zkm`+?6b(!r`jd|8BJP$!pNnt;n^+o$^4FzpZ}(iWUKEcs?TwvdX>37rl>B^Zx{6=^ z=W(y%3vn3(#{U+J0#dd@Uq+=vuY!>W12!X9-?siy^i!)0Ea>X%TibA}2+h(hkIs48 z>vXiDkg+SiR{wy5<53z}J@&4?Sa3y8imehS|2?K`fH0e8_-nae<29Z}+5$DR_(s)J zc9q&^zQ~TxX6NyRoDx2* zgGKkU{3MWVmMcU%5n1+=flVn7JO72ezl9ZHO7Re?ZD#KsS>Ae;<1aE4{#o1L_V-cB zziL9h{@!|m_0qHIS)g$K3o1mcb`+ai*)t~sTYLHISdQSbXHBI+Z29F>a2*|umb1F# zM!|e$N(7rBQd7x~?Ytl))vPhC@poOahpChb5A0B-3#JXqr70)GY@{s`FDOY!Dds|N zWH0I}VkSr_-qtC_Xk-r)e|Fw(@mwHK2hA{d>dt*g-G1*|#va4u37%K?484Me{UT@L zPoOB!c~2lp!@hk^;ZMj^?%#h(YO@71NoCKt7YRi^XiuMMXuX9%u}V$6uvPNTr1#Fs z__-HJ==y#=S0jAFv*<)%ZudD?F^5#j92#8Scu1XgHsyoWW1IM%QYEdC7Z9aF=n`1k zC7Y<_&;dDkNPlnze`-IwmCFVojZq?B@HMWy?4>+VxEEvTMkAShx*6%u&x-S1JWRH)bwTGz+J`U8IAZRZukRdnK68``j>p4-qnGFxYW z|I*fUFMTA;8W`hQbfELR^k9*?#JUbE7ozp@oy5z(DZ2F?GN$K8W4(tEs@^6tas6+Q z=Z!xKQgb!%W5_Wm;X&nS30yp7~on2-I;Y{zpX6;DuyX9iwRW_DV2&PGbM~j}@^HDWx{KF%yBJxzS7i#c$xr|I@js(f?Bi zMER^U<(pqDn1F)3f1;V@qiem2V8GQ9`kV?Y1zO;S2jr~=%u1EXBJcrGI)t3OH1i(e zmH{wBQ2a?#X^|Ajc5UpoV5iPrMJAJm)L>n^;K_$g*8}+@z4VUU)ae8z;Q!9;0*m+7 z!qi_52!PIt#ku#VA}?3@ZB2t08wH=slGNEYKR0r z(uL;Bhv`Kiew$XHAk_eFBRk^x>zlRj#v4kQIaTd2}Ucdvja z*AOl~?u_Xuv=Dfh_(YGTx(zz8fOYMT$ztIr0kB#^UHEyarfY!wq~33fKYlAu&mD5w zLcvFqC6O%pnXLi)4l>=1mXHUL!7G!$mABFy4-~_0FHoeAy%HlJVScrvP7o%k9{2?K zAqqR><8S)~^B0`K?3haip6o;J>kEccB${@5^YFd=_qEK~D z_n9D*{94mNPMEQSERbXc<>ChAl!+bQU-ky^dcFrHw|l?A9!8_RRl3Q!efvPTLzDT; z7H_;fw*cw>BFY5pOhZhqZQqwT94^f)K;|=PfHOO&q%%nQIMPh-0u4?USW(mOujj_oecmHElqOM_;?KF+NgA`xZ5X9{iC698Jw- zX?hkEO$40zKwD@s-`UO0-O}~_Wk=XU^Hg%EfiqiZ9zVax^bavT&+S@xHwZ29xm%s6 zI8~HOKvBOd)h`&B1b<`<2_4R1VPE-`(_7QT4eZQ8g8O@B#P6H-ZCy$^ae#JO_%SAn zce`C*w}&^>0fGHMF~U8Gz%t5egxcW(Bsfa@s4)X^YDnNJY0zYCc+BmrpoV0?Hg zpX~b6^v|suxd?%~H3*l`OS!Lgu}gk@FpXkNbU*>~+OA03GPB;#-vzWS#YwyO&X8)YQclX1tFC%GMz+yid&fK%Q_FeZr0A-T~dGNJbnol5}YHEY6 zBp(B0)bNpb1*Qj^pL;?b;va>?;2|mE6zopVYij&C1-M^=kDc%BU(J+BT&6UM$Y0Nu z0X^4!OZZXLv;BXT-s2&&${A4_xx>WAZOcBbG@7|2fM$CULT(LBqr?|zuiUO37g&@* zv(>`9&hOPM%7S{R)bs|uJg@md*t4%#vg_pk9z@mz=A=0u(k3qA=V?4#w+-`Jp}ZHR z@&8)7>VT-8;D1OCC}h~N49 z{r=o}v-5U$c0RK^Z)YE2RL`JhHJ4e?T4h0)ZR5)l13e>>N+zY1bDfuhdun2Eu@Mv7QF3vZhTy`hEswKJQ9w5YwL0!734|aTR(!F z>JCi9onZ&8gCzo@7b(9KlCFJFgovU-65eVqs@(gdH%Y5UEJBO=oe&?v7NJCQZkx+Tb2cM!u5!TU}KdMf4(h8AQ!9pfX0|CM& z-&#*jDW%LN^=BF9Lp+%eUF^cZamBSjwX=H+e`QE=`;M`=jV80=O@?)d?zjt|j z`jUc7L&;_SSJ0DDD+Kzypgan5-!|bk^SVL3y5|g1n8OA^irv>uxYdn%%0w!!4n_el z?dqmHmQDC47B3t|&N_g->pR~oSWz&7^0rpLI*t!uUgCe7|GbNN`zG7_aj_5>3wKhb zCP=#CsG%1>s?W1?Sy|%`UcJDzKKfpfjE;fWN(rp3LYnbMdE+TNB|Bu}_e$CVJ1til zaGC#~MFKyNY=+I%MC){V6_|^>At7GgJWJ?gH5sV*PdHLFTyfp69T)FcfEfQz5Q*zn z`G*!FRxJka=#hDgb92-w{#i4(tofG&&GVnhadEFTF}puH1}+sT;$4RYxH!5+K#NYp z4fvD0t$oTAgIobU$i91Y*XAHWFe5Cfr?rIvR423TZXo>6yq@^47iS`o2me*$x<>au zJ$F~8mq|&4y9&T1Xpdi4y&r3{rL%10osysKp?>E2maN{EAQ;|HEPvg0&NVW&WY2u}Wk6 z7=G6$gJD%KW3#ZN;h+)Xj&g$(U|O{=bTnaIFTSwLUHqK~#&Kt{bmjZ`O$AN**-Jn7 zUmRW9e(Tzk)c*6aWnNiTrj3k%4h;e12mI*zC>N6tCBKUc%Lii;Sgphsd!f`&8)_eW zLJrGOsZ-)C2qHr|3|jy^s2=@Y7tF0R1YvY&K}nS1e@_4NmE||#nZR^$V04Koe);Ba zYV%uM*@JruRwT0_y@=UQiQZfqUNhV3hqou`BR1g7F)Jf(w;z}nSvfg#qjn4IPBsa; zqohFYu&jLB67RGq|KEa_1OXX_fq?C)`uC<7n+^4zLe#uD%#~r>@-}sKnY^&(BUB@H z0%Z$v9pg*hxt6eHY8c?1J1~Cfv#M7kIVA$&u+PP8`?)Ur4ZqTHhG@C+y$X1(ah*Q6 z)bJkgms<@fv|Ylg2LhkReD9XaSeyV`)-Ym^stDPd0?6#$E8@zcWkeTlQ9HI zB19$Jv1Q2e2+Hm;O0j3Q^SLo+{}mC+W5zwWqqY%5%7HsEYc-9+SMBZ59m##sd6b<6 z8_W(arob5w1g1T?H2@3fN9U~oOue|<8#NwDzPUEL-455sKbn=f`0}^k+@a|FY(eQ% z<03(7pCi!%qM)eQ=>Y$R7-L`HAkXQTe*BUDmWmsLA@DJg93~9+nMuF{{!pNf+O}>2 zB&TDg_S=^HPDF_}57pZgNTXbQ&DO-4@BMlq(JG>|m?Pe|B!yy(2Cy>nc~}t6)B=SlYH}-Mcv{Zy*|URT2bF6D*cle(S&4bKBNwl43wL_)dJdH3T@jY!F(ZK6^USI=uR%h0;$23(e%ji1;tN_h>i$+uTuSoqPV*HKDua7y7>D-C)7YPWiwmZ64i8ErQ{vR>m-4sjn+pE3pyWRX_?&1lVlsre%V#1l$p0QOG-O4%VlN(xxt*Di3{W% z%Ygm6&FWmDfQBXAx!~(^wyulrmcGL%i5eFndH>IbCxG_N>HS_Mge$>G)9UNb>RvoA%BP8D*@LQEb)%HSIflqNop*bWAD*f-YRCW1 zN_F;$O9O&P*r5v_nlO8NtC`~SFfXVIBdpoT6n!kE;r$#0=#-WgEC40eWnZV93`@WW zJH9s)T&cUUuMv+)0i@V;qsg4pvu$KXt~d9ab#NPk?~)AZxiI?iLMkT+c;QUHW@buP zZd(k8*MTn!?lpH4P}~Q@Hx(=~Ov(-O#32;CL}OwFDlt0L<8ecPcFVJ)y#c(||NhXN z4%sy;a&4t;dVEJipz{M zD!#9kQ-BGV(-}Zm!&Quz6t$m~A!T&xLZe%ctM*LK^RyZJ+RO^DJmaE<-9%pVDZ*$m zj$7=@!j9hpT2Lt^pw0A7*NDluI&0Mk9%nYx-{s8n07!ePH-odT2y_$F4y|u?Ia`I4 zP$JVV1Vf-VWif6QIrR5H0VH4Sy7x1xiL^*91 z&mfhpimPI!=k8`3DR08*N`U_BBO;I=Kv&3?lI&>%?s89}G!4yGhm0U~Vt_Q_gXw`c z;zBWI?fSTrovENHi|=yd@&JnPb&HEFmh1H=EB8e^N9sUGTRf8grm13I38(Qtl;k6* zMLaY>G@9mca0uW}=iJS3Oa+gTf~|Ms%}CCHp7n8M0b#@=FC9q`mxI$%bD%XA42Cq2 zb<f1SV1R(iOpPC=cphZAL^R2* zAfgEEV zT}85QEUIz4Uo$c!38^`s2?vPBuc1-@NsK2-7047hDq%2$vFFu9!kY8Cyd#+$gqH+W z7Q*OxmHG8{0`oqO@Tk`cfF(kFuU1IWc-QaLoO%lFHNp)?bduW$!vC0v$(Rd9CI%B+ zhajicyzt?T4zGUn7C}NDfY*58MAkG#)^R3GDr8u0->IxtWIbXLqwCHB1 z^NK`~#te!vi~}B?z>edY{q8>Xa z!^P0L;@x-QJ7tv%Y2XUish3Yj)^#Szg*ga-HzQo*AEbylPrmfCN2djn=)=uF?Gg^bY3c+9V<&vJL1egpS>Yq#4ubxy4_PFGl+!CaBFiyRdVIgL zLG+Bf(n!}f!4%CuEB|aqQd6vT!F#4>Fz& zaw8j~0~9c)G^9?=L0@xz6O{KK%m#%q?Fxi@4ecSQc<}Xq4C8L-SVTVd=5zu6775MI zI=r4cFz!F-V9Q5$ohY8L+w2T6}?ao5` z*jUonEhLHboH7@}@a)76)PA2G)p(trpZ1I0_j{OrcLoRVARoxQFvC$`iC9SbIh3O^ zf4Nsi;#O_(js|&b@huu8h~^y;#zXnLTt7P z9Z;p2SJ9wGQZLl-26RDeZEZexJK;uPI#Fo$8=|9qD_20t7JGtLMmzZ1&x<{b=c@CY zavyeRuL-W~30~o+#R_^^q+v4l*&S>XKO=|OH;f<9QMHsCuQ|#GVS&peuTd-3kU)E7 zk^EOhLfL?d2$^KeyZUn~Mzj4itYNZfBjhkpfKmP{3>73NE_@YrqJ4Aca{+F_ zM@ArFfbB^=lGj)oEbjHi_Q`#`BQYjOb~iHlEmy;SuQcF)ob0be(!=e3w9Su53?Vx! z$uD%`rfRVfAgg%N|C?KF=#{`9(Je;{b9(CSs!SvU$q-enjMPnYvhmfMDTVElL*fLr za`(GxIr`r4R*jUBnIMd=TxW_}db_@+>65@~)}qA!O5HYsnMlO{<_WP)HYSR0vjsJh zPn&b=%hWwO*CrdDN&XX5ON_0yU6N|#tPE=w>wRUOb$vyV2>L*}B(ZG%_$B1&3cn~Z zsh_OOo-ij#Hr3>ZVv%YlXQL{hxgJsmRT8+A68B5=Ohh@t|Z+boA(hM9M z?_wa{v;Upqks#&3nC95U$k#4-2aEq%ve-|F3@9$LBUp~m#yG74A)KPAx%6;Fgcy<|%06RgT`lm{8o|dCJTv+*XgHeLB1o=Z zaY3ek5sbzSUz6=%7cMfRw%Ogjcr20Ri&-4_jHA{S>P7zmkSYXYR5%2lte_CW-(Gg+gNYZ}U-1F6Nk$fqsPXmnik zUoacPw?tzYUHC}B`gF+|56+1y$jaF*gMQRN?63JQnd%%3M^nCk^xv78Rq8@zUJYRi z%nD@M5zgovQFvMkc8jg_c-XVbRQX$H7tg#B^nVuqH4`U3(8^;%rbVWbrF+*gTudaw z_(j()FqSF0%-L!es|!e4<&;!?`DxErRkW8^T4gEpQc%fL*I;V!0&FM%e-7XD-kKHI z(Z;A-f!*G+xQMv14$Atp)-Zie_LU@M%P+{{&KCH189F?|=2*sI!T(a%evi{?0ThM< z`(d}UJ6fT(;1Pd*ZoC+SkefA@8`5^;$N{ zW0Fw5M~;v-Ik$vGY`%+gS?0{PHc(?i-Og%xY{tVy`JQoeu}b9P3$ zNnyW5oEguaDEnU@&{-8qGBujX#SX6^V_Z$6Bxw}T*3OD08~~ZnV{|z`fi7PVZZb1% z0xhdvRUoS<3#%m>=niE}H8GcpO-$X;eTw|kaX-)WNRugo2(DOOs%zABT>UVh7&g3D zHuw7X2G&xZ^G4=vaYuu*qaG<%LMr&_R9WIU7|b-pB>4km^6A%TL?*kw8ri#@mpi&z z3@nVV70m!p4gF|7cto_$W}B=>-Wtul{7b6^M!F*H_7X7uZ-66|h6?w78VM$!+;{lE7M3ax!!K>g7-NW1 z_s>+{tE=coyBimvc}71X720uNm`RG(u(FMH0iMyv8Av9&vaLsKcylH-u+#n^Y876< z6>R@=wCQL+EPWiw!1AP<^g3RbN1B<&QV8{($yj6JZWxR|dMq5-YWNmDk zc|v%R)67*se)@SqRO>BPmHU*{$E8TXV$k$2C6e-L8$c4n3bXPx# ztYeu3iH-7Tb?3a0JWldgQ2c0|PLWmkL0LDTBS6I(t0M~f8>v!55A=q1imvr?5{)>D z6p5+&jLj)_IWg8r5N70ezIkBn&@VC$voGym4dJW|(MugK8F!pBMt@9d<;h`1xojMp z)%Y)ra(K8N-*d7EO37Cgs9xOn9(grkgVSXDIXwP#;EpDrG*~dZjk3+(mhqZO4oeAs zKL|=BPJ#49&u&bIK87XRFXp}dPu-Bi+?Z(0_4qXgNeO&Gs>!~B51)l4;HfRM6|rk? zUHjQWdev5}jYx~OM~g^R38BjF>uay}g;dchklcDFU8Dfge+r_O9wYf#9lDBaRQ*Ov zdwlgkdxNQ?UbDZ4f^x8Ki$K)SAF-^hQGKen%0?JVi*>PIoRdtzzHgN)E^ITuF*ek3 zWo5eS=SD0YUrSDr6Dh>6@xjrSx;D=*5__V!zp}e;027kq1%x3DNoqbkJZ~LeFxpZ& zAAXC6?*8WaqWd>N*;Zta-|B;^hE{YAiW1xg+gm;bLW}cWL$Yc{M_Z3UIX+20*Kr?A z7-k6(=cY@{PELdRa9!-8 za*~2W6H!&WXTdEVQZ&c7&jnVO+RP@8s zLHDvLnb#)4$?Pi{OOi$5dhO>?6MAu@KRFBp@zT6vB)KAt=C zwoN@e=3R_FrNRGW=Wf$4OinQH2rC#qov6p!@D__Qqm=0xw|9%2;=gsHROp!&{6_&a1Ds609d~ z`yt++XCq!)f1v$Z@Zit;tn|D}tn+k|Ydn!D@+sJuc2_b4X+Z@EDLM;0+0B#`lMFHy z#9yq$7N2mUnVp;eGh%jbAl>tBe=0AMXw;yUE}faIs(y|lOo9Bspd2G=HDhQP=gLAN zd0mRf8{^<@N9Sko>ruVJ=e@z^oe*wB zkbXwr?eub_KBi8fn)nM01WyhoY;6)$uz?1(tmg$dOMPmR$St?&Fg`g_fm*}VA$sCk`u3V3;G`!ZNjG$#bcd4ih>u-g zgkzRedLng$t-<$Bl5lle zh!ZO!1ljff-bAyU$DH@kK>Q&N$2T&z)j0mcW@T&s*wj)ZtI#js$lO;2oiA#d+4mPZ zUWy$7$TmkuFP6F0d7hIb_}}O&&`Exsd9`Es1kyKxK zDS?<(^{c>+`=isoHl1pgfH|XiVm5oJF8`KH(en#`4*jFPQw8$|OP(Pox}g!*U}qYa zye&_t^Ummhy7ub}IbuFnKJx?MuWEOmqs@dA%Z)TRN^skCAiKWjh8r77kW3hL@2`&x>@9Q-Q>Wm6xIqJ>tQ@+lqN5%+{5Exow59rYPuJJsNLE zKd^n_Cg(Elxe-e=g`XGgRn|lLxh}r^wL`~>GNT9U9rf8&-Ht*9-;;yM{uwN5WzV_k zn>0};t^52=fF&dmx}{kMYCE$SIwmhxo*Zq}g#5WY{V*N4q+9>?6D0{1u8h8Z%vtcc zkU`4rXpoa1e=Io!xt8*@NPJq1S#0O1yH4Xs!osVx9Q{gI#7md`nX&g`zcG&T9nS5{ zA93TD#oOJ|-|Hn79`9?$W++0DJfWMW;M>s~C7(X(d|%@xn7>HfbYydcwjUgKI4X9) z=RklE1HsR(?;f@+ex9|qImHjoLyWcu+;hEl64X3M&VjlA)LgJ2(w1!zm788cZZ|eL zYj_GNil$S>M42<9T8vQ4-B_&ED5gSe+|r3XgQDQ>CIhpf`M{{jc?V}rfT zzCHWL%2DidDRhTVo1-cyt>LZlxVGKG+FkktGxOlC`+-}ZYtx4Bf1H$2Vi%TwCp~|G z(e;MZOsaUFILt8cj9^%s+vyS%AkF|=AE+fS1U_G_cJ-=Q(~OBvDonoWW(D`KE3 zUhv+bk9LK^b6SyA<-#?$3MS_!Dz2|E`f(o_aTl!Ad?BNDecU(&%eos zwNgGt#*c!5z-E6Vj@(+DXEP`KNV1O)_U(^OgWad6(DUKHQE_6oB2Kz~$=(USsiNKF zH4^Wb;VwAGZROsJi{tvOIWjxWZuSMM=`v&?7ptK!3Eq-Qgx4&5A4=0X?Spx&IG<_P zFG0$W{L(JL-bwi>kMXH_y^SQvfzUorj2{MU+_=X( zbf~ZR2s_{Bzb2NYJc{!H+VaYHsyx7s$@hB#F{7wJ62V92sOZ+$$Y zm{_o;pQu!-3wsdNIneTBOyDm7;vtQL0(G?BG;!}YBv}M!P0e- zJ_20MVXs$xXyrIk8Ca99aoI~-kT~|^#~4Z20)1GDCEmK+H@2>1+yIC;t%k5b0!45d z2oqtKgTb0vr1732?7fGrU;|3?#t=GV>Q$5*ffY-&hOb_9G{a(4Y4l7Xe}WZ;eCX<6 zf1WeKP4quh7mQd*c&ZQGq_U>j1MO#BBqMysQYcf?Q8G*LZIapk5JH;LoAm_vwv8@G&iFFCRG3O_##sij@RjVIb?xMS>OMDZ-6n6_AD6M zOQhn0OFcoh$(ThKWxy#X1ojon)T9iMRv!nArpV(q6t`N$#@N+k3cxeva?t6uq8-SO zFhO*gAjH@{8h?~9n>D4GOuZC*D8}yhT9mpYn?ii$bP+Zy{9h!*EaMw&kF=Ch+%5-;Tlq6luPs`LrLYj($5@d`b@ZGEztdxqZRSCeMDqDe31IXB@i>FeVtM++E+ji@-cSg|a!IqL* z$JzMI49jf^)6lEw6KqyWDpA*5^j0wcB)S9F=IhICr|0hvg6ccF6l>|vH;TM2QIGH1 z(vxt6mv9Zuh^)#$*^!u~Xp2T&sqsd^O{Zd8!NB}U!`HUOt~Sy4yq`n9rY~z&RV@Fi z&i93iv=+uB@3x2uPte>pGY!Q~H{h}Uyte4lS+>F#D=vuW9f#3nnLD@)b!avQT&s6n ztj?3I2>now;#@02uZCT6b#@T5Kh`UnL z;N5KR7N#M_=@U%Ww8@1awQ;MBQ#POz+%vS@RPPdxxwF#fDfg8pbLIRg?#1N^n}7Vv ztCcBIM*Nq)j{ayWB{c1>**UO=oOdH5otLBap464!h!(<)P-@3H=iQk7giq+owXTJR zM@;s$4dsY7ArA9V#L6Tyf-qcd(}fg*YmyZupcY=9!7qQ>^H7tM;QHG0aS6~=v&Dl0 z5A(ak1MlHHG4aJUS?tWEFT_J!iq4CB%U%O1 zJCq6r`~JF?2Ud=~pWRRe6JAs~gb}b3o+LSrTk+(v#rAsT+mzm(gR5^t2WaFNe!wGue}v7=W5 zXAIU^Vy&G#_TF{ig$T`Jr2V=SFZB_^-Nvzyp#5V(pd`w34HhH1VwbeHJpZg;*zyUG zHXn-I`#aMg`mQ~2iT2IuUlJnv;_;@SQabyheemC2v+x!5)hvWDej0`1xDBM>SYy>* zU3vP86dicMRh*31&Ru{5_Pgn%J^0&lii>W1o^`!$BVO6D>EMPQm{7YMlpTR6&DoDW z#vH<3c1=eb^}@C5VNl+U@RuEb&bS_K%Q6}3{(>D-L+t=`#-!^oGtwW^2U*;zqVqi`qI6_zY#p6st0c$#_HoJ*?47XJgW+MH2>Mw9l zp{3e`P_-xhTOBQDXQW9h7PfN>LY99Jdg!NGw8Z_CfebXRaCK7^;EV@f1|BUnNO^y~ zl2Z@_VJcu@tF*8oS&yrx;(azaLevCw>NlT=}~;=3Q%@y$b2aUN|<&xtG5kNOAYfeRfCo+>A@MwuB^ zL)2ztmo>3^F8L{4?+S5~>l^DD{=zYM-qE8AhCmV(`0-NW+*qARZXDg>7Cg8F(z~S$ zej$xs3#B?UGQ|1)w8VK#y*gjdt%rOoPK-}7(9TY87KitHpm3Qgxa4$*f>=okvKc%uvhjYn zuV1J!tE2v4#`F*R4wXGy)CZAQ6Q4IQPp(Y2n=tFyU~Obx&$?qhpzop|7Fh>-{N;33 z#eWyyx4!rD)tpPOv9+WDo=3abVrXXBakz2VoO3|+W7?%?&s^)b^D8AHxdzJpW(d#} zZAuP1>w`Bv>v6Wr*|B!onZ*5fdk5+EZai=2pEr5xf#p}5A{Ogz_ z!b}6{A~w;UTYTo49S4NZRvHzZ(?Q&DP~6_^@Hu4UJk+-zVQl`dT?hFa4mr3A2Aof| zxpP!P3x`BE-610|df$;(7$I+gigW%NE2A$qzRYi4&UCr!Y`N!!J-MCYK1fKBoNmY? zjnJW*6Y9u^1J>h0cr$m@TiVzBK4f+j^1-f5Y9pnB{t7ki+mE$weIP$`bhDQ6`GqfE zA$K+JLM9ZO|C>s3!QV|X4q{uZH;g&W7nHg9WY$6A*zt&XUQoJ%4ei|s-rapn&~#mvl$ zdv#kC-X%7w!9z>_Ocfird=g2VS0;JL8^TcB7uTJeGBc#4;Z22Yzm==CU-6Sm?HQx8(dO z$<&_>&bCvn!m1Mi+vTSv| z-Bp&Xx9qu8TZqot!Fyw$9H|46GBo~YAy?dIVwnQEd4GY-{PvUJHs>WjLpq1Km{Z29 zbIp>yNZmiC> z*7mX}syT3pF89f&{co|@2dXP7Rx&5|9TB{vAEAa)$@{xJo)(8UlCx9KR08M}=HmiP zCZOPCtw7qksoQx(vC6*~Nv`x(QpiM+l8ArnkvQ=5WIo8BZXQInw4@|#zpf1jN&^x( z;8LD>8NV=Ou4Gnmp;6Y&s$nqpy@}D$JZ=X~$2AdB&+dOL35^ z`=(IKQ-JrW#L!&DkuE7*X5a^evyR|YH=0mYp_8%>yQ&|J{d1-^6{=`|E=2T!pqt>c z7V=r#z1A&JQlu3&M}_?cuR9$LTK<62I?^v%)he&y#Pu^H+h&}HanlcTr*y`zg;J9; z4qb~nTtx(xXsUewiB2$Zx~>G_u0wZ2N*j^N4h1$~FZ9f1&Y1cW#||byaOyBmV_A`v zrb`265ZOYkH@E$Ne*k{?~ONmYv%Ca4uq_`H+(9>Y5mZhCn-WM(S}?SV}3x~ zo!uGra3Cn)?<+&>rsTO`7i~bk}9t?fS+c==K!F-0H@RFIpZXoHwe7`v0d_YDD&>7&J|=#I6N(dy|TulyE9(m za>S_V6%VheH!ww~yO(=8wyum4uYC?D9guGV)@LoaVU4tAb@_zvL^*CVw literal 32463 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 Np@zPC^#cg}{{YUD5<36@ diff --git a/client/Android/aFreeRDP/assets/about_page/background_transparent.png b/client/Android/aFreeRDP/assets/about_page/background_transparent.png index c6d2fe64c87a786287d9f181b1f5750e407f2786..d9d377bdff80d598bf48fb87d420ca1a0264fbe9 100644 GIT binary patch delta 43 xcmebFnxLX4=;`7ZQo)#PQTywQdWjFWBLmy+U>V&bm4_IBz|+;wWt~$(696e-4Wj@6 delta 44 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 OF8}ivPfY#APk#ZXhjdT? literal 141907 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ℜHZ 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�(yAh_^|7ffMJf`Ugg4YSbe=a$d~NB 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 diff --git a/client/Android/aFreeRDP/assets/de_about_page/background_transparent.png b/client/Android/aFreeRDP/assets/de_about_page/background_transparent.png index c6d2fe64c87a786287d9f181b1f5750e407f2786..d9d377bdff80d598bf48fb87d420ca1a0264fbe9 100644 GIT binary patch delta 43 xcmebFnxLX4=;`7ZQo)#PQTywQdWjFWBLmy+U>V&bm4_IBz|+;wWt~$(696e-4Wj@6 delta 44 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 literal 45123 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 NXX?6Ya22b_{{x6Z7Ks1= diff --git a/client/Android/aFreeRDP/assets/de_help_page/gestures_phone.png b/client/Android/aFreeRDP/assets/de_help_page/gestures_phone.png index 31f99f13e591859d2164fe89e307f8886bfddd22..4eea33ef47968b4b7fed3626229caea2d871db34 100644 GIT binary patch literal 27770 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 diff --git a/client/Android/aFreeRDP/assets/de_help_page/nav_toolbar.png b/client/Android/aFreeRDP/assets/de_help_page/nav_toolbar.png index a3102ee33a2c6d0fc0e3264a39b5eeeac8783d09..f66b24d215a0736731b836a2948a4e0ccd54da32 100644 GIT binary patch delta 2008 zcmV;}2PgRF59SY$B!8_*L_t(|+U=TuP!wex#zT+;m7gIXDkxQEHkqd8&n#7}n@PtE z3sDnOQq%lx2darmY2sOmny7|WQzif*ijcwxARK~{DVbsdhj$>ABRJ`de|-Bs7kjWP zMsqW+uCvd~XLi5uKJUKAKKH)2d&gr^5s?csg4x1kHj>1|Gk>v64D*@F17$t4j?ppU zOfaKm1~5L1gEUuZ$X%Go#&C}@skd+6KKj@7>jra8?S;xJqp_m0vhqqrWrfOvq@v>T z?^mu|yma|2lg!yHAfjPR55|w_#AxmnasZ=eGMK}E-@27oTYK%AvHB_*jn!0DWu%JA zD&hfD9x&yXe}AXnE?%Nv&Yh>?k~5TFV4$q*9MiF^6Yp}A_KYJDc`(k>kiD5tm_tlL z-5-Bms^);r<{C2B)DXXm_@rfII8{u!c_-;aZobL`CWpy8Sx5zjB16R90|~VG zi`eft(w2 z_EP-5Z%Ds+3%xfZoCXYdsgQ$?V4laUM$n;5EZ=lR6&i|eoj+ejyrrFSd+3WT+f)?9 zmaW@q$A6c*Xa)y8aL{0Ka&kW07`79FUcoFrRa}yqlbc6pN=qqj*B<&TMz5kkV)UPr zE@C))Sze0|Lv@)2evf?mpuPfSj!&C1HA!-vx;`jhpvF8Wgy<$|S~0s^|-;gGYL zXaqgOY&MVD#cO=(p)_6sVrk{7C=~^>I%+NT>3`Fg0=jjhcJ11oLD&ddn~;ug*DhVAqfPqFG<(k6`w1^Ct0_6uzKR6kO54-6!~&Yk(r+o>t&)vKelco(eSuo2H-vI3niE0cA+6DM+7svjxv z`P`|KpE&5q$Q4?=3)ZfSrpZ&@l@;jRxpT6Pho_4c>PL#M{{H0S<4YQirYYzpOO|Qz zkiCkR)rk||krn9d*|T@GuU#8W1qB6k^MB?|f@*4NDTSByu(0=V+-5)Y(@)2wHGJ@+ zpS3^Q=gs?2Iu^V*)}j|%Nbm|ioh|}@CtjZ{*R^x!F68a)Ee?AA{Ds;n{4R*#yR~uS z#>)y+TKco7ZQs8A1T{1?P)0_ErOwOCZ@j2A6dpdyW2ikYu4xyz>meT95 zX=MdEefo^Gj*N&TC?_ZPE-z*bE*L-e+w6yq97z||qPAB0V;^leCiUYSf~0Lf{BRJp zY+%{;^n6?#^voII+Be^vKnvzCq<@hkM#&0PQc_~Av0q=`a8Li5s5Jy(Yl|OBJCr6G z-()hi+F!5VEIn6?;9QVUV=QQL=oHkl(Xpd9d3bnG+qP|+f)1NDT|4%TaWwaXdGzwI z;j#i1pDGq=4y~TDv$9+5llo(-4SvzSq;9=Gfd0cP@aQtUyIYMb;X@9Y21&)jlc7DK_{;`;xl#{s8(9FJ6ntBkCg~o}QlM>gq-g z4$XoN2?@~#jSixjGiOr&e*I+yG8hcj8vFG(>hI~->2w5PYl|OBN=g!qUtL}OfBH+$ z)gpK;kWgbRp_UUY+b%9H9DlS!Q_#V0P1L^n$_SbsHl1GR-A7iS!oosp{XXB-LYbMF zcX>lXCee)>H}F4fHv6H3ghWvd?cMv;|LTu@wBeZ4kMjzWw8?&5-FVsV(4m7kXuc8C z4jnp-rcRwoy?Q+-C&G8lqBgx=PY^EX?%jJV_0gjl1R0G+8Z+iKn}7Yn9k6tK^o3X2 zAML@x6Rm#iqYZ)wUi3j%+$)gCr2jMCH7trxYbs*2*`;;<~?xXpg(!1o74b@9 z|E~Tt{N>@qTNUMlA2Y~F<3w%RwD~t^mIEi>)7#s}^0k?-ZzpV36b!xkJ8SClv*NteVllS>`r|oW!^=7HOCuCZW+#$B>F5 zX&y4@#fXH|r%^RC{L0*UOucYQ0a;x^cFh>V*fS#8F>cITFi8S8GuKrfO3cVeGK;~B q(vYQU%RI|$KnE4Y@iF7ai1ZIzhq8nM=GAck0000pd8gf@AvN7CaOzQ31w~zdF{kp+iQ~PUWmC;yHSy_3tqOwBeVNy|X z`O4L+7cX5t%OrC)i-~AB)06RIIy0KPg&e@>nGEL8-?wh%)z<$0yRrHj8I9FcRb`}# z$|~XkR30+rmw&I&Zx=7oFXzrvamg9VFECJ6c8=*-)`@8xr9I`Q@G-PjPJ#&yr zsQcs3OVu2(*<3^Bni}G(h!0vuhEv6qn|G2<eJcM`kk5g{ zB+GWwWf_WCR8bOCLv3%1NRcI)>b^d%A@s@VP?WWJSeyO4$ zwtlgVwts)MlV)+yg9Z;FCnx7ajbS?>=#|X-r;1Bbb8_?OOlc{_?c7ZpWArKtBu4)k z=^{R)7yI`oA75WHhkTeBg`k%+;}erpYO}Jk>CmBcieA5g)mi9 zCK^G{GMmk#ck&vadN7TbfLL0!I!Z;stchAn{eSvBPXXP#Q~UPq&me3BtxZTu4#nMC z{Jw7};=@(6LKmr`U_Rib`{}29k-vWcIXgE6{e0|~+s3W_D2jMXigwu5 zZGR7Pd?+_Juci8tqDNpL`E}{Sciv7-L9ba8rNvdS;nPic29p)&d|8>S(^CCN zfzRj8o&Cf?M@FvH;wo6XE}AA!nItSIt@w&}^=;+a7(i%Sa z(a+i+?F$#aCmjo3yw;)@TS)K;-yATcpX)E~!Ox_@+; z)sJJL4T1+=^g&;=mzS3lB=|8F+5yIaUyk#NW!uZkiyR#tn}VJPMNj{Wkld!-vyFwWzI?{@6zwUX%K93_;SiAAdZ6 zS~jq3dwM=54tn;iaP6CKPN2n$mVeNwk)ve=Dk&+k*4VGFZ@8=fvTGTu(ibxB_$<^#;>lfzMuZm zW3>q03nbJSOQ_`p%eIS)3x5ag&=hp=TNAafygZU-gw3Gm`u39*sIaimTEEM8wNPee z<{jRUkV$mo#tr-ro6UYGAt6yzLwojoeP8{tk2bs}_2amLByF;vS2td^J9g|S4w`So zw8MrCr>Rq?Qt#e<j}aM-L-4Cr9N^bgCL{PNUy&7nt#oH;SN|jKKjBd z?T_~0;E7g0_R$8x126iZFWPY|NbqAUp_UU@S6AxLp#$05+cyP0_KmUH!Gi`<=%i5U z`BYC?f%5b7?`RL39!BZu>DH54RaHfCadB9d@Vd=@X#WrUMRm-k7#cllG}=Y|QKMZt zmf(d4LLbyZJ0y5TwSRnIHsdEsQP6=yhYkzs+xIz|Fku1(20pH$d@!5w%atf-7e7D0 zApdUuG~%TZ#9I~RgC8@^e-EDze9ygI2U7u<;9ixLY6SqR#l8N;*sAl7v}dw;pRyQ?S^H#avtQUQEE z*EJ8?o0-H@d>wxQj_Hp7GvW{Pjw;Fn`5|Bnc6N5cvb_sIw`ayPn>g&#jKze|H5!eI zg1{{1`~X63KAT4&XglU9CYniO!*zxPxRZ(kKvvCY;4E_+Lr!8`7>hJa5R=eosAEV) zku(n(^kzgt>Qd9287?sYv{6r-Qb1N$kzF%}GWLu}c8nYI7EF@B&CGR`|0QN*B$>tF r1!>4qwPT)PK1Bx=#qkm2$B6VVTZgiQc!yqF00000NkvXXu0mjfJec*x diff --git a/client/Android/aFreeRDP/assets/de_help_page/nav_touch_pointer.png b/client/Android/aFreeRDP/assets/de_help_page/nav_touch_pointer.png index b2446c400632536a1730407adb3413eceb90f5f6..930fc9cbf780eb5f4daf1da71ae073ecf789cfe7 100644 GIT binary patch delta 2289 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 literal 7261 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 XJYQt2bsUZY9-rrm8Vbd7ra}J)joiaL diff --git a/client/Android/aFreeRDP/assets/de_help_page/toolbar_phone.png b/client/Android/aFreeRDP/assets/de_help_page/toolbar_phone.png index 260a3600280191c5e1c217cf057b24ea0b092100..278cd3a9d869689630656f13a6579ca02b9646b6 100644 GIT binary patch literal 5555 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 Zwvi4DVMW`7x1X^D>Z&>_<;t(Z{|6Cv0iOT> literal 5692 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 diff --git a/client/Android/aFreeRDP/assets/de_help_page/touch_pointer.png b/client/Android/aFreeRDP/assets/de_help_page/touch_pointer.png index 6bbd6948ddc688c0872925f33aac44435fc1ed56..af3ebcab0071a96ecdc452b48e7ab92fb335da41 100644 GIT binary patch literal 110449 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 F{{se3+A075 literal 111043 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 @9t4PQ z0-#TmKb*SZT@P5oqA4A+ff@Kc#bKc<~F)kcHvnHtAL>}Y)L#a+jSo^8c__<(P{ZF>Jky* zZ*s*FL}!_#@_AfMJzSbAAm**-o)w*(o%*gnP$2{jmK{isR1}8uOgO2Z{1GD32GChfk)~f%eDfysJDRJ(x7PKsw|% zfKdr0$V2ULTDf(dM(psKKgRe$CP=t~`0>&UG9AaZ$8^D-V$e20aS$}kRofohw z+?M_E@8nMAE!Muz>Uo}3d~d|@@mq0ZycE)=V0KK3Dk z-sCd$v8cgmES1ac%*%$&J;US@i!G{`zSjDF7EOqLQ1A_+1~#KA+vkk`-5I6yJ&Mq_ z9Sk$qv`BYbe=Z|}t6G|=iXk~J->lLIss`$Q!LcT}f$M==okkq`=`@asNNe1Lg9{Og zaKw$V!XaA$i#u8{2SciEe*0OM-q znrXC-2Z&&*#kCBU%PpHh$;1;z8}wH9%86)j#g(WWyvxN6O!e-E(1Xf%cruyEQwCak z&`g6H4gN`|P@ZsaHlcR6Y%m2~Uf*k-nN=SXXd65sF@E;4Vb>^vk5=?Q0vI2E(m*kV zXxDbS>C2T|oM#v+H!gN(%x88NQ0)b3+zhWtFey-d;>wU4-pCUAj%Cfc#}{ap=mja8 zAmQJm{^#L!`ryb{6BC@0)=R%_V<#LTnA!0xBh%*Jm%Q4mzETL|Wdkd(Ex zw9o1;9~r&Gkid=`8OliLN5=|kM|h}S(~MNwqVJKwV%v`vhw*l}aF_n~d6~uP%2Ht=*-+fguM0gHp`%}j3h zIzRwD2AoEU>c4g64-i`hioX6LibdR^TU`LZr0E}1S8dGVzm)lv?%RcVIZqJSQrGRY z{sRe{n6$`bk{J!wAcJTI9eNO@4B5uM|AcFdWOnP&@f$%%xdlioxHG+(~e`WYHCJr#i3s2VCje&Ay6v6p#61=FJRz{no zK#GD_+0N4w=%^>F}vOP3Zr=Rg(cYSqMb(wlREKPIANm|rpBbp&kHE#vH{ zjxoD_p^w_U-o)-R5m2D4}C+bfwRxL;IR6ngM*s6N2DXCXM}_u zQUJuZcF2Z3glN;x{q5!xWWbzrEqEON=(%;aC>lZjy=6b>fA%N`A1cjER>OGY(F)>V z22tJ9_jg*K?Ti`<4w2KM0yBHhAvde|ttC5%@E6#-YUBx{mwR(qQQSubIVgZSBvxQs zQxK(_dlTO94)*gHz10NdeM*V5!ockLfyZjs&F<#F*e#!;{x0xI=!k-5X$R$?{(BXmLupd^@&$&c^ zWGgA4)})0lk)2;^;O0~*pm|lEGWcD*9`6lNBY2CwgT;>$0jE1F;oeY}Xe|~facjp}Bv%`QQUR(qVH zqX9)D6}X4+9)qTQPltqgXs91k^7W25;7S2EZLh%xxW)8*YeIkPw>TYbKCO}ZF}lVJ zQ{M=Ohpom7b2AMFN8jJt*1)M!?(h7JD4ZurQ z8E1T`P6vt9XLi5DXN0WPXdq-D!z%JAVxqxX<+Q=6_YFxfz2dt%{0nhJG7R4wz0=gJPO~gnrH3~s;o+L4IpuA|VjNiV2 z*MFev)+~EZ&VDZYx4EcjlQ>`d!iW7F8D;o?J4KtYVJO1l#gb~-f zoaH211-ED-_MfbJjql1N6{|a+I&-d)G$N_AwfRKpOY$^I1^B!iSv!{a5Bd1~uKw^p z_9oAGE;F@}WfAeT0 z=kc68sQZn93;v{g2*VB8YTH36`%{;!`HUQ0u^2fe08+43WOO1Fs$m-n;dKhkbn^}+ zftyk~%fE3KMVMSR7K`$xb{QNEG`WhZqem}vfPx)`9RdYtIv83ijBiQ? zd<9S~KCv%G_kmr>^`bTqe&lM63%7XrPh1d{o1XkOaYV7snG3ZE>9P+b+n9Dqg>B7L zy9#8iKUvbl{uvs5cSoyorg0;VLPz9ZNlw%`I1B=rxCd*1TF5buDpLNof#gI~;i-(n zPO8rc9DX&A#Q;hPtsfOI;sn`q0(F07IlO z!#z~+J@iXe7ht_NvA8CF&DVe!elF(xch~++X{*f)o%CkI{5Pl0+wA~OG(30@GxsTX zF=#DZhh;RVixL5otI-SSe|iu9A8E*{H8@@LPcZ+S);1fbk0XRgrj0 z^|J5n8UVFs<#lvd$`}ek&#pbh>(ZtlyDMHKQF}Pju?T7}TSfa9GD%|&R@vJQl1|Z| z+{kHbYZo%t>hc+Zk_aj^v*9Pl z{zqh;TnWfm4ucbsQaR3h0{Z1_UQDr1Nz}p=pC(#+T!_VAEOi9XhY9Zy>Q)(IQyy4< zZaT32-SsmZosFGIdY})VEGA1a+>>dNJxbZ_W3Yxd9mh`yEEsP~B~O3)#sL4{Mt`*W z+Wg$*WpqBtN2iF-OXhaSh3Yfqi{CYv_HERVy+vs`Y&L7R&Ujtd)P(REt6SLM>KP|O zYiqD#<|=&YtG{+N9hO;^>+9c(?vl(SHG;``NYeTWO2tuqk7@v)jgrs$nAR)x=g1LjkNnRNe1oW^R%}JMwInJP~)>-P~Fo}94B>* z-K^bsap&Uu+J)r89;iP-exs(=A0$%VPQsu~r|ra^*2lABm{5j`=V4zJ$iE#oVVf7vDeVehgmG(K&D7)Q_} zj+{}&D!xkMl46e0W&gG_!0C=q8g}<%-5)`7E`M*9x_t*02e5}q_LR{ABb3{^jCVJl z^iX8qVH?|?>7a^ob-7Tvzl??i^u8-t#Y;a#Hul}kSAjs3T{}@vxl79dn1G}#n<^bb z0%i!~CtS)f5a!sI(F309>{KG%8-L&+_2WNoM5yAqEj^8(0vcU}6-7_D((1{X{mVCyPRFKOJCaPsI}#n;Hwg zkFNjGvDFTNM&i+M=OFh$!jL5<6xVON-6pwDKC;#HOmKA~i=ux!WO)TuBEjTT#G{<0 z&Lih{l^m%_qO5-Y#(iHY@}ae>DbosU*F^eI%(b+c34QS#Oj~+*Ne1php7W|98o~80 z>hfe4>8WT;<{#z4Xdps}h;r{BuNn`W2~n}aMIaLAHEuz4H~%hRKGnJnq|m|#I3+DR zv5TlS>KI(R;(NSwEUC|sMv&3jXWs~qpyJjpWSG36tgp^*h5yZ71=)dBXy~gAkyqv2 zWNN|n*@&Mc$f+dBNMmvuY>|uWTYr@cTkWw(u>$)|B5O^>#o1gzs8=CL~VG2vjm(GfvGN$ZDKf(OR zM69QbGO*}wMfZfRU5KBT8CRz_d(oJrgK2uA_Sf6rrRiB407<=tacm+vB{};>% z7JOu-Z8=d!ojhy;*)G}^3T?~#3~ab4 zlWb>&XPam2plH$RV`TU5Qtrg13&TeAld3&Y$AHT@?TIf^zyN`^&B^;=QuF@Ktbq-| zSE$jXu`0Oi$wn;t@>)dBAY1~hu8=5o@H+oSAOqVP^@*^7L9@MXqLHasSTolVHS!?0 zBGyJ+(WrNx0PT}Z!?hL{lprB98gl_|W=*)XDN+!TWlqV^iRj<9z??t0!daluoX&=a zOrd(9*p^+|%;M%p7tOk$HvZZEDn6K-g1lTx-g2QPIOX``Pi}t|e`8Dk2&?}8#TD** z$It7Fei!yesMs%cZZ0s3`ZYE2HQ%P@^ZWUnGmjhH?T);7U^nXf13P?8k2myWi+TE8 zPeY3yD&IusCMTczUabbX^+(CX1@82q#P8ZiZJracc-xIHFUDmySb7OPoJfSMA-KEc zAci+qf?ijUXp-1YnuWqY(xBD2G3l!(JWw|+2s6sEdPJ}?p39py&guz2kL|0c+hsic zps|AX2TQ}Fbf}qn81S$ZmOM+chibw8coU^eF9f zyy(+{TGMSutK*+V&r3l{wGsWayJ+hGUx?PwlbhpBi7h6u&oo*==@GTz;IZ zQL%m97V9|WRpN*<@;6OM=`Ci>C!6A{z#d#NSxPMY>+N-xf{UtT= zy6gOC`Im!}e@8cQxmts&vV*>%+BnmnUgRN-7|hno16Yyc{Pu zy;2k@Rt&d`X)7{HxPw8FzrqPE8<0R$tRCboh{OR1o(7u%Ei=f%Pg|r3i2mvhEj!)w zN?wU=%W7(z7i%Z$FL<-p=soTvr{sc^5f3*|lLkKT?zP!e3RtPmu5^%7x+b(@6b;stC)5Jy9#` zugW`LqHu_TpAA~0H`2ZzR}|rhZa?Y{qEOes^R=%wD!cykz)1^OoCbe~8<&Fvw7re~ zh@AJu=ODOLi)suARYdEN1zeA;I}TA0^l#`1UWvd(&&C12FZd^h0SN-J=O z-Xxo{+%F!uoMPg_>j=(Pv~lpO4+o-%wZ2cL z-4T1->FL6?MCiFBuEUzd1<_~RH=GCXmi(TH%G-0p)&KDgda2zeggk( z_>FM>`0uo2GBXU*!LOx*)|NtWvf8Qkpt71Z%pnnUN;aA=y1?LA+q?Bed_bsbS;D zQ`vRfeVUv8Rz#=x+^b$8Bfja%$d7V2+TJ~GrG1R|?0$QR3@4kb(?Bhjf>J|Dw)vfd zNG<;>e|~!JR4dlkL$p*L^5H#S)8aR1cOlHT(nZ{qqSvxRzD+28|x zbA9aRDWB1%TZ%Vz4uMuFGx}-*qPlu_XPoB&4*8xutazHH6R)<%7L; z+#-Vu_yt2kNIL0VI7h20g&xD;5w7n_4epkqFCV{ zHC5=J7tZ$LLFu`=5&@g+pLT!KT6yud3MTO}iarH&Y^K1*3ppvZCZhlD{}m!hjJGTN z%d2`%Z>IRwVeOE`jCN(eOmX?o&R8KOn{nW)mb7-Ay7Pq`!ny+ zVC26aRLet{hM5lE};hU1Si6%V(j}V z76%RNhtZw0*&Tny+2e{{Je{qt=(TJgN0KtW9_?iF*(4V>DxLBS*Wg1BIoxs(!uD>z z$bI+8s|k#EgHxfOJZGA`j+^AQhO_diJ>61kZNXboqC?5*Ie6l5S_ zN(+vH^v0I^WeK6x9!}kkVkqk~TINA+EvPT#P!s0APfLHjG)0v`uf2Usyz|1YY@k7s zj!e>>yilq&8p8PLC*)k`0fb(Qjl@s{WH*Q%VJUu6Orfm-HzE>}bQ`YwMje4ikrLQ? ztX9(iKV8I6&#QOlIq}j|)W;Y(*GR96fcxkp@WExZ^S76cVNT3>TjCH2(b_#OivH44 z5S9`g!&QG&8QlI7o^`rLT8ZnrG|xGXlN@gWCZx#CNrdo0RFKZCXgpTL1+Uq^>@JQp zuD?F9|CkQ33dUeh1EJQAKcz`ixn>|8$&fDx)m|BZ@{~cj-pdh%x4C}er< zp0Zv{vK)w@?S8kl{w*~%l`}}227A(dT|QsCxW;dE z82n=}%C-{T?|~v2g{my z=^PG|7D^p#sV|VuP&?rXGAFpMJ5}DS2Tj_QP~Q@&q5>i|bl*Y{j~NYBxfs(AdCi4r z*xJQ&DF1q`3$I|Z%Y5l7&I8+QCO6g1W=?Ky!%Nog|MOW>Zt3g{v?OUvVU;0FcWd6L zGuH8?0$LFIua}98k~Nwyq=Cth4dy=Dt(55KXdFL3ztsNz{@$0YvUzH1YWDNd<>lpU z*H(XbXXlgZQq<@)aYSHD?E=EipV}KTd zz}>dy<}0m!xAgjsj)0?MY#AWo`e35#D7`tSQParSILNM=>{HwvzfBG9C^%mVNcaFs zV^QX=dfWe2Sorbo?Ch-f^t7(Q%&oGrlG4rF``=4q?{ar{_aG(~R%>c1L7AJoW0oC~ zS9mlou+{OPbiTN{wY9}e@Oyi^G&?u}X0gG6lN_G9qr@huw|o-!+&3)fAJEjNM!?TNd zJAct-g$VEym^h_@ziL%7eIG?Cx5h+=07$YRuyy~Y6A6YYZ92ZN(uRAeBy9!+9Rl0` zs|wc@e|g(Mp4R=}j{<-Z2H-=HP#fLvuLBiu{%iWo%+w`cf_Eft5Tj5B1F6HiwVx%! z2nwFw{23jMnbCiztgQS4XP3nOD$xDUAC*qISLl##A_w$>GYz!66nR=cQPE>hPtS{g zX)_JwX(Z3MaXv&wd4&L|c#%+kNuc5;iAzM}C@n3`pM+_`sr6)$RF3+C8XUl@7;WtR z6jiOP3GaNk`vtnks~cIqs-Wai8*M?7QgK370%s$*NoR0X#qW+a z)MMIDVg7KgiQ0d6wa$c5Z$a(BZAqfypRHA(R+Jv;JswL5Q|DHuQ3QK?!2!C}ZxuY6Yho{Q_eLOpJ-9DSK{6e}Zst2cywo?aT2Y!5R zd^*;(-?%i=iDU6^v_+sTZ|i6pS)uMAC^bS0v>cev)ASWv_vkOVS~zR_i!+j+<~U;P zlE>6D|L2rbWy38ndhp+L24Bkh<04h##E!H4BI{|>XN6zj*;dlee~~f*w6=>#UsMO( z{0%Y_?RG; zWlMv$WW@YGr>br_p>DayG=gq4rpm9v^_cM?TAG>=^YI-1Y+e6jRFqe|xU7)X9xqNA zR+NG#mXEZ1*5R})Hrt$=4?_Hdld40R^it330;0_1KP&rYnO(=3xhFif<$L*UtJ12Z ztM-#VRNQoC(a*Jr`tuoA(JI*lS&Z+f>3$O+3YmYi`MY$n@g0xTr&g_V-?U@8N~@6b z`o9^Y7Pd9bO%;BOGuInU$|G*kT13DM=pFakI#`UCqASaZ+pB+;;DphkCOA9~yn+)a zQ8f~hDHo8|kvV$yLNx#i&vd|5f3Tt-zpY{`hVXF{>7xP0BikU^OsAp`+KHl$jVmPWc0xEy@X409S zb7@y;0%;VK!qndcEu0Nf1De~Ok+f3V&0nh|pVo3bQms)1+)~#w&O1?ebhhiO6(}{1 z<+k5HlStyr%2hG1>gxB^A5pc>PpAabZGEWP9ltj}_cfYO68!*bUXG|xTKu&Q`-)ma z@yX1w#$#`X4j2&lf&piwdteGJklL@LFRcc3(#7riVikB9WbdCoZ~-{AZCoF)ct|_b zs)zJc(&PQ3*(jTWNzI*#k@=lwEI8Na$6!uxJR%qYaox!OMB)&W%T5b8CR zQzQZ+?!OHuOs@(|YYmu31`&;=U;?G@EywS5v^6KF;ct%^jpJ+*bfD_nMTv>z^Uh5m z#hUj$!b>BFzn)DqC-7WJ0mWbQABnG%HtcfGmcRIUzxO5=@oy19!IFPD7R=&vdVM;u zHd%l!x&O*-9^6?;K6W6p?%5DQf2r?s^X?+N+BC9?9yqL@I##tl@N?h2QF8wo#_E1r zjCZ%PRdvz9xFmTaJW^cce%gm8V#S?*FEU4Y&IU!Z=7Ps_+hdL+;>h{Mxh+Q*xZJj1QaC}TJhF$N0^}s0I28bI{B*x9>G+Ocd!okp9-$z> zaQGmWiLqCuLpmS8KNtBTHU6z;s#9x(rwHu^8l$|J!tN|J4x>OfpNundwjWa=g=TxkDY(q z=8n+$oAu>m5g+&-7d}W5z~=}fL~9ukduK9N=e#7h+nz@$Sb93g@El5bf3q2%u9(eR zWqxTgOh7@jP=KBM}KXGmqJ@R3PWzB6T2$KOEi8+aYIEJhGu@w{Y z!wZ$W4Gl##$+r`N#TT?@)!w}CdAy=jQd08PX1drxqfGhF9;gR^dlsbD;;(0L?W$w0 z{atT~n$8kScuSx=c3uhEE6jPU$WYl>vv^vgQ9 z%Sa`$VI_f*b>i$^;g{Xapdzpshyp>Yz0t86Ln_GJE()cv2lH7bd*6p+k)Z~PVJ8UT zj16=01mPWZ-jrgu5|o1$+|uvlX=2e@pMwJP4K2vI$_8gTp3KO^q4`T0=qYB+zh@IOxxL z1udrnR{iG5e^dN|1M!qy0ULd2c@Uu`5OIu2&il_?H+8dKRA1zj3pVdgs;(cYDkjd< zCCzZRP-Fe_AsruoT^oi^@t;4*!(VlKsjZ{9zq0dzzlI~XTplj{cUfa!|3!3^gnix1 z;wS`F?ZQnP=%aTx=8PeY;?}7zXh?f!k>R-Z6%(Ce#S_qU4zDQzQcknJ>YSV$ip_!8 z1~Jv5UJww98`EH_lazCKBH>)98}0Xw^LOwn^3CenzC<5y^(9E&Bi&zCl)@P1Am~x( z_~&~bxZ~m?FtCpx+_25FP{!|~B%7#1;WA1zLKjOZx#u1?gcft-PZ$)fQGJUH9FiLm zBbt$#Y7ttHN%acgAnv*0#o_)}c=oWzpGxrtB~S?|kmXyL-=hx(UQ*#LC{R`b z<3&V;I)c^P24F}hzYEiqAMf>%2C<0i86e`H?NfOYle8$pKVhAKyHBvF^vENiA=IMe zcciRLMk?974&pBXu%>Hh2TGy?6FWOSjpAq9FzQvB%id{Okcq$y-hVL4181(m^b_n` zvkSZ~{(j+qshu|4 zaE^-Sg;wT259t(jCO?Z@#hJ!h;cJ+|(CpqEq1>cPrjBMu1cwzC$g;xAWjgnNlW#O# zCttGQL1MGm7=RQQK&B>Mbv;y3Tvf;s>KagPycS5y?sXWzUJv__ks>P@{ySPTh4_Kc zx!7|`>^n7gynx4Ed7}uD2!byH3bwO36pPgT%bFYiU|8X3MNWSm6{?92#qdz zDDOhzy~;|IkeG7X)nA+((V##y z8jj$XWw40V<<_)Y`4AYZQ|+p5=!m|G*UHY=akDSo`wI^*zVLmns2k4xgISjGpB?P! z8edFFP3?j$bP-S%%<<($6e0?$+X zKIIv8k8St|{~T80(_&}J*&U3Gl&-iO!o_Q?9ob0*fW{`k zqEk1B{@@Pce_UMQ5c7YNn5+-F;p8(gP3Qqmo%qSo$Nhip1o^oBAwy!4B2=Rul9goj z$bOgI8$s7(LhWz4x!t@xJ+G7zr4p!z^wzW(GaGDztv#Vw5UsB|b$mbp|7h5DUl)B% zm|QX8I7B3DHK+V>7?9gG2}OwBn~Yx_C_K!IVmoYtQGGV!1P=+2 zlJISGEW*+gVT8Qfq@70~as6dE*=gv=d{mhN^IN+r0+I6|U;-1E*y6GE)g?3`clUbQ zZtTK{DRl`?{o!WUX4qw8L5? zLi_6*1g{q@l%}-)NjA35Hh5Xmv&%7>?^RH#T<-X0h;Z>r zaY@1%V(xA7Co1s#oZoK&16)7X(t#56oV+@2Z0>-1+0I z|B1zjrrH0A)I4V1P|MD8cx#~4kllUtlFP!<95V-=2~66N37<4D@}}Nl>tF|_xHF(oh)81*W220 zc0v4cSA3QD?_Zx(^;}5ho>tx-hEk~ z#w2L{__v7!j)zz)Hf$ebL%3$AGkgLrcn~9l$v1;0CwN9LD~=`oZ%C;F$tuBw5aIM+ z+j!QcwmiX)Z;N>%;6uN#q$iH&%(cEP&0m8~PuuNQPNE*Z+XnHi{;9Wl-sqw}MB)!B zdVI6zr`F@>dr&88Gc*6z@8!CI6efxI(v8RdFSVs+hyQMM79-KIot@?R-0f;?DLL}T z|GN5G$ZvVd2-)Jv!4$JDi{BbA9x=X8dQ2@sO2b=p>mfpIdDiZ#knxTaMvbf`Y?)EQ z*czzSFWmL<2$Oa${so#edcc7tVnImZy!r2G>726`^NVERrYHs1JdK2OMLboKfVIP| zxl<~EQe);93it|^O~?K7?}^mg%ht5bH-DVe-s)3Mv~6SQujEfZC8Zo6SD$=tO@6ma zl4!g&_2v+%Q*`P{b!FS^E^1G)tsK5y{nh>&312l5n7bW+Zzn_LxTIs20RL9oV;eWJua_|*ok=@yc!Le&I_pMBjDm!Js`{+%eV zTk=8l38Z6+RPgP0?iXH+;bw%%d(uS~kHjq|WRt`f#ABM3#Bc&DVtBog9DzK6!{p$3 zHNkcbqUfIBl9JJ3O52}dS3W24#>CGhC+R&-+meBzbQgPm#UHG)uTY5jLGj7!gS&Lr zB_BIO;D+LWLAy1s{2T}6sLdexIJ_Axd1($moN&Q+ufZMd9t?7VJqU&K7p%a~!JymM zkI08s)`Ga}8SJWO;B;1fEj^M4cRj@_gn|xs<4j{fo?1~~LvsY%?Ts6oAaFQ;G7TxQ z(0UJ6CGA^OGV$Y{>jSKvWc87NuZ=&y9vPP}6Xs2{>0RBJ{QPAGP8eyO{v9*2&Q&vI zFCWMMatS?j_`zXg>+w(I5c>#w^2YWtUC1it6Zg$j*0?v8UTVdo%?y$1|MB%!QE_z5 z|8LLWPH=Y#?(UEvf#B{0cXt~k5F8TREkJM$4ug~6uEB$AaR1Nq{;tl=S!?d5*Ou3xknKPFUf5%~MRp5<;!Oo;!q1L8 zv1(ul&jcVy9WQW((b0Muz3lZ@9?C@N3$+c`3I2$ZaWhh+wCmdo` zKHsFUoRk;Q_;Wp`)$8$jDQh&Eplt8zqNBpOedN1hn!1@8b>ka1-ag)rL2DMBYC4D; z44KeevF}Vf^weoQx_(YsBL4X|*1O=TJ*)%T$!yhYGp^v2GnK|})`(g8EhxCoB(8;+ z2|&gr+G|0LFW>_84Kf2*aM62X1R6y8`FCJ7nPWS|S0~upx5mt##3HIxW+K~6^e!xE z%ia8y{&l9=d0ib|W_8q*hfx(EO76`GlmWKetmQb%y<2)P)ipKYIl<93kFz8%60jjD zy$@EqLFAO}CEsP2Gw{88Rh5pQ@E?9|x9M^6u({z59=K&(rtD)bc}4;1-qTa1^%T=)-;uUmX{J^c(zKhq`{486`CuMfEY7ml#eV>k&W))(N&F_GSbV+g^Aqk zD+qMlYgPK%1+g-bEVDHl+O!+_eW%>;PqK085Z9eH^9TzEAl72=D%`GccXOi1vO-(Y z5~^SBo_7^r^2%RY48M1;qQ6p(z$u8Ool4@Wkpog6PvXpX&1*0T0ZdIG7D2-FrJf1J z@k9y0HvR0&W>xze%_9L3Zq>WXpM~nS?~{;# zu-H_^4fJyC-MtP1+A!-{l-+N0=0Rjr&1M`xN&YDjJFYxc5J)<^bD4PaH}K(#$r4w; zT-qVz|2o6?YyuyG2`{RN4SzLj{a{z} z_fF9F9wo$*q>!5tN`-%XK$a*%Ue^id`>Q(n?Q}H3Co;p-$E)hchdX*WpZ#KRoXWK6 z;uU_JYW^L*0Bwt+7KBdmnL{!ByQLxA=to^R3r-YZXpRcwT;& zUm*j;lV=|}EExkJ?c3r|(g7r!G0;;RK4=<)sI!R_tPzJ4wm%z{rPtCRBl*0YKfHp>Urp|v~x>4 z$FR#+LG^*6{#Ci00&>p^UWs=EP%gwcMJ>NCnHl$ zygNDEJc+8eF3RHqxCrB;jdCHL8sQ@Gav=%*fZ*QFTbC>+8F8xXWY_$57a_|exd$lMGNn= z{t~Dx?bIW2w%)K8W|EfdU~7qBy3l*;K|%FlXhWcV>sNEEuxX7b^o=sbM!GW{R${^5 z45UTdedJlV3Q?%~scTCd$&SO0D0JbzOPEp+1eJu-tiD-cX`=1JnBcsqGGeD|EZ zUsB$tQ11H?!&^~@Wc}9q$=Y_DyegGncN$?35qh4Nt4mS?pQOyW5AJMHVwR$6!|5kL ze#6tk46;Fi_~?W-X7OfK2mC36-xRi<6)_Ppy_Wz%q444ekRPcLfG?Q10i$DR)i((B z<~vI1Uo7DrTnN3BD$mNy%IUxjI18lh#$&_1vEr|prb#5v=8l6@`) zBlV`NCQM6&u-@8}YFA$fh-HS-0R2?-_QAU0#evn#nsSapJd^Ev5#8|*4K&3 zq#(37)iN_^Sh)`1HM?$7UNOAcUOT!vl9+k)v}q2@!{kb7VygJfP(Rm%^`*GS2KYdt zGy=iOkkPN3y!N7w9Dl@Ga;CH)%#xyg73n|fN?vg9|Vb`0a zx0F0QB#aBr56pSlEV!k=n0ZmGww)5btN$2Bg$+nItY5s=^ zEGTiLLe1OYOA0`>~!kD~DAqm8qVRecP7jen_l{{g7x%=77L%y_4x(nDcew1@Rv()2_m~#^ zRFCioS+p^Nm+lHg{MUAwNK7Q5w$Ak`ywlHw#*5B3@K32XaI82dgL{+?QOmjY@(Ay7 z5c7%62r%C5&M%}2T?@lYAGTw=H@Bm1w;O-d_$4HaF~zMGZ^A=LI5;WZ@ULvSbA|x%eD?F%{7;GfV`>hXjc@OIu9_ZSsB-*n z3U^6gW%r)`YA}VE$EA*~U({KZjrol|XL=`y45!dM{>h|1kN0@>7A7yS=K{Vf*p`p~ z{r4M7<8iD+p*q7lH#-AsSIj$_$Gc6a+2QQ%km0UM4_D`P@x4*24qOm_uyJPY$b|5< z*u77#UoPI6XXeBNrWAf9%4R1o+uXv9A3w!yX8E4{#=2tkstg}6xs0*PP)a)b%=$Vu zO<=`I6*B(oJfpx5JZ0*@|FYr~$f}?3XkMHyG)jU`!jrGO#PMXx4;QqEtxZgh$lurQ4A-Bi;@4GaN{D zi4{XF@C>c@K4mD>3K%0-no7@?aLV#?t(MjAY zOk;=wZyxey3K1j?&uvPQK!QO0-GWYh$TfWe$U8=e_3b}yf}XuQaULoBs9Cdk@f>wS zxQ;9Mfvqk6rNdnA;&sVji$k~8)Y=lTkk~v0AnSz%V{N9hhh_=zD+Zs$zDOdEQ1*4_ z)subyGzsR&rR#!Xp}g6=O#MgEozoW0bPVc|!Xb~iVW4_fj&8aypZZlv5^Jd7Vl!as zfinR=NcgPA(O8^sm*5WIgJ8JOX0k1>^Hn}KIj>j8j;)8GUj+XAm{d&6oOS${;EuZX z(svS*g{Vi~LDQeAe-$t1ulNOAMDS{*^~_butKccx&b*op6@(XuPFAL&tujA+G4@^4 zdrRzae&mynw&9QhfQ#Md%*H-kVriSddK}J9jYl;=_1( z55Q`j`H(B=7dxv|=|{*EYN01@S8Csv(kO|G3JNr@I%luGzp6fz8lTwDkk*7*XyCOl zn32_7z&vC`m;KqWb$*{LTR9m2p zO_D=d^}x2hG zT~MJLJ^S1NH;EYU_;?gQ0>*@*l)8_hofgQ_y$Z4%^lQR4c`zuv~( zBZiJ7w9li-oc6rP5KEm&sgi&B0rzuw{84KEeq+YrjCN+P-QfFNoUuu=33gDKmfcGb z|8d|#^+fh-ajEx@ho2Ar%Zfot(_x9#g4jl8^gQ?zwo8gUKz@05q7OyFbIFVD=Q@1{ z(j$@3&#iBwz2q(zb-oMcUDgcwlAX0R-tp_oJId+n6ID98N?;U$MP^SB#A$M=*E+|- zWG)Y|slR;);q|wdOms;XlR}L*sIGMLRxy4jA1e%}DUKd!x!*3$L38)kZTwhb(laqE z-pOZ=HB6a!S)cRQS(!`t!+*P3=rlwu$E_$Ra5qi3lKbR);vsqS5!Q= zf|qo>EZ?aEt0L(fZmtJ$*raQ>{8T%wS=dFWL8vuu&(K)3drS@TPQGb~zo=wcjQD=G zQm~tfK4tM`9v<-)e1_o>A{?0S^e z7R8iFUF#nZDHHGKIwe$|5x!B9yvV}qxMPO&U57r5oly9+tO*3SMHy$|r^^UXO(Qcr z=gNoSc(8FT;FHmnL(zh|^?qkR%_|2q`V{!cuMQkE=Ks*>>fy?8*lEwqB=J68N4a;p=WhspeA-Uqi|0AFBQ- z^gjjGmmOq(*W|)RV_)bW0ki6n;e(IEsOWrpI5VyBN5r;smXj{tuTR&fRv?oRf$vaX z%c?`#o%bQ?`%l}eonL>jd(qja+hIJpndH*i2hAx+H5haSWHc^RB|W!a#}l*{7SjAj zoy*W{SXUT|e4;2Pcl0h*&T)g)aR2r0Kl>2u{6s<8ui-$VL@{m;qQo{QiN(ZmBy@t5 zt$!mi`=}>;%)5`;qVG*d)`t9Ibebzqar*UjKoUEDR@!9}@q?nO0VGmbO8V0*)gQvQJd$5%@N9D2 z1ooWWZDM*CpEpHCD{jT;;A*7}j>xp@ya(q_k#0M|p7x)WO`QAfWk*n8d*{%{B zx{A?Rgj#TVc2C1s+#7iG%;YR0WGGn5e)baoOq?DR-B(vzYlP>~p=hY6tIJLHImwNJ zelaoyiQ5}@(b1^OOLt=DSm0OA@UT1(Xa4Bjfq$|TTC1?syNQEIe+EH0)zad-HTLB; zbjT01E^WX4q=($j@1^U1banM=cd!2~aZD^FRZe6-|5g_D-c=MS{X5Q_E6OLpdol2% zeK0<+(SJ7GmA+3depzH^$;?s(i>#yjOyhaP|K>38JnEPN--xFHvjXQyaUPnPmFs(C z{}sLJyK-Wn)I$V{ObzaPL}aZuh4aWdA=Fgn(w7+ErYuyiC7Qr82B}*1wA>%?FRh@kjg#{-Y6y(83IL`DR$i1eIsApPIJ>l#K3d z(^<@H%Xa5{eW|f5))62gR-=BtjN*ZV$6G&UtO>dWE%j}Bi+{Bn6A2Vp%eY2>%D3?aZr%0t*w@?@8utuc-rWsYh6IkBs!Pa@57c%yEu(S5C%jCTw9c8XoG(c zi&TxWHbQy#0|o816WQLbLLq^(yjH8&GXt#Tc=x6xC?$Pa(HKEFgP)ey_Fv=VUDP*N z=2N7=V&~HQ20hT}-9diOMCvu=`RI#yU|t)1PYR2UAeFo}KJr(yP6_*crdcY4nYUcM zpQP3CsF~w9Qv!vhwUenO;qB7MIOl~Dd@)jx&eJ#L9?1*%9%C(X)dJ{D0ZQr?sE+3P z=mh0ywi?D0ta?CwU>QPLAVSY^_4r}lo02csBGA^iXip&V4tf6B$Q~G-JGNs54zH8q zjjk}>6YehmeBnxc2@DYQ)!V?XmXSBF8UfP%fKiP*HiNoybX`7dpieqc)n_%F&^v)x zq|2iJvIrrxFJwdfGgTBkmAuU_)sU;JD_Y6(DfW!H+pF|{w%FlhVhW@rjvg@i7FRM} zdch7r%KS!fOO&zEkqNp(l1%aFZ{Y=EE?{@`#k0gceffDSG5*TN_SnCjAQ9B)zBjG~ zWboDTZ!mt#CO@C~N|+(okT#hXHDSE3xD-?Kk|_avli2CdqRHD_eydTma^U}KZNwxk zrMcLvw{KH{rF%!l%vr)^>vW1EwjCULG+*Tj`8@fxtqsO*{2v z9)X0u7K|gSgiuGvaXpp^^jhFBLgG|Y%@CgY)qDWl4Uoz#-6U;4L(i0~>{4?(de=~V z;lrKr2cx$hy&bMo6Kj)o3-WNF69?=>%8=LYpJRq3L-#+1dUg~|X z_<_IcHptRu;WU$0ODk^^35!CwxzlFo;xCJK+5m)#S@jmKNUAoLmH9hecq$~KPF+cd z`uH72{VRi=Qpd~`5_hiXMSFHe9!MsFIUk)#xy!Xb5?#!E~n@7$D#oq~udFnIRLu7U&K4mpyhqnlz|P z0xmxTCh@(u-B;|TeRH0YdLlw@?!tKONC>jHdY1gW5v!<>6!opd2b)aoVM>m&6-)dM z;??BFT>(ViaL?wyTA&$WMek&OCirc6BXU6?^srOAz@Me5aOm~MP^mk11 z%#&Mf%aeundd*+YlAo(H?uVr(4RSfYR7Gb|$~k~B+f_?iXu=t|t4th^2_{GTN43)K zdujFKdgV0W?w}U#&+VnO$^XU*;?z+z+WNd+GG>s#ys<^e6TJ0g2#}gfs8W}GNEDO8 zp@k(PogQx-W2=^tYyiwXJ5E!G%-~WmOy*^SUS?;Oj)=YOmj9!==EC>%ec4FoJ!U>y zKnN%2t_v-3d2OCLp&haJ$?{(uNFHc%w6abqCTCs0{Y6#u9If=>t<4(y`>vz;`O_K4 zuh@w^zI_;%bgc16q2Ya*MARaN+S;hP=`akBO?p`<3EeS#c=&)Mik7TyG&3Dnh(6pG z0R8h9xJLQvg>&L;7?w7^p6+;8#P9mh^NXsX7Nx3H3zKJ%hp!8sHRt9Vgdjvoo(5UO z{Ju*Q1NEHpa3<1S&a3C%oS_ze~yQW|WUYXLI*Z<&;L996oRyDlab|R}@+D zJz!{sP>KiKg?i|2m<+?G2us`z^o0Eq%KJ-!kMHw&l~N+$pnb=mV7#rP!Hx=~{$~}a0fv}f2ueMwmVAGlPikVAs>N3i&bD9<; z5=}ZR)&IrSEFmLX+mBbIr(|=Q+CYK;RHYNYwjaDoWdCdG5Eo+M1@~KJldu_= z0Erq|bsMsw{Fw@h!0Mp}kQ`K0ZDQp}+zoogf~_?vkKi3(Nt!&{ zE@sujA(lkM&Sz{W~@9Vm{a$9`ZykdVMD5oO5z zWUCbhBm1z1r!*%0qHG1Lg23njZ|@*ewb!VLrhW-F6ZqWXfF5BvmglGiVgBCSJuz&0 z>Te)rdmBkF_KIRNkoRXCrGcGzvnGs=_8!K&|71FvT zgO&AkUo!M?5%cpv3|Wsx01-7V*-8j%eEmPrmw%wQhoTcBBWU7#ZB#x_6Ru(u7Zit5 z0JzJvET&=52AK8tfqr0EZNgq0J+=c9dk|5pI{k0xFuLc!xl}+Cl`zF^Prd)G6R;2W zF60f%XdDagZmY8tfCw!$Kt6|?X&`TdF+vat?){K zH7OkVzcpB$EPD$+dILc%kGNO_8etQw6apt!ve8zBau!v-57`Y%P}S>Olm9#$kSjLm zhaSR(fdzuc#P*5HdmuS0%J+e#hqv2d=HXZ$fofb-;t$r95ti_60iolW>WCQ$jLOw! zLPzeHH_<&P0DD$TP3V%@iG1^d0nSdQx+(H%O{bs|WWW*YzXp)HnJyFzHP-Y)qB01t6n*RtutdI;4bjq!rVbQ*9&WOJMxh>bw%D zjGS&+t`hUEjA_;$9r8bGgOs0(640~?lmQ(N{t&lr9N6$PyjiWH!L@3lz5xGA1{I7# zETP#v-b-L*#dd7!@nZ^Yu9yVK8vfy;0Cx`aq{3^jPXdB90hnwgx7xtk35}=0o(w`h zkQ3|n8qF!F1<1>$)PF76iUM;=NJzlLlm7lMSC4b*Pspl^z4hw(M|h=~lc#&g)UhDL$8s*Av42Oz)CG8ApxxD%P7=L7u2ktoG}hXNZe5}+0Yy3>kowllM`@xzne-V+ApMf8bjitZ+lCg6@@whcjmPFiUj6Z-^s(uNrJ<=>pp|` zPT7q7An-aSZvFo&^ZNh%$-i;!u=2Y~Xulhj7j(?Rk;4FILNq}Z2 zN+A&^Tcn2{)nt;qDWE}pPVl$6RoCx1=(S+U0TU(+>e9*3uJC;0-SA%%Ih2VOMy^VR6J&m6=? z%e>K`syzljsgwC7vz4}H9e6xk-Q5w*m?sH}DeLIy92_4XtDK&lX&92;CjVh9kwl__ zPUEjX4isyZB#%!_P&zp~&;0tOAS@~xkZN3$c5`#1UZw4yT2)oWON6ezYG73}Gc%Lb z0eJI3ESZdhM*{x21q6u3GM(-3zePREL*rDhSrbLa&?a}Q^2hZ(IXP^j+ztb-RKY%-pk;JeWF3t^D(X;3sXkl=|nQGU6O>w~FBnMEuxp2_K z>R=jmpQ|)C-=t-TMTWiKssCH62@#e~49Q*-FS!R&fb`w&dvzSwfSckV?B24UjAx|# z?>u)jM*zM1E^G}?4j1la$z8>yFgSB*dK?`B2L~a$YHva6R+m3+b}!sGG7LpT+NJ(-(0H@-zQ&d1#|?V`6b; zc!+vM$#Y8cjHqNtZm+h&vs-3D$Q^P`Oj@;SXSi&_#mgV$cWaaY>wve%eEUNoHQnyE(suBtKwgdTQF?cG?~}jivy!vy$~R=6Wv`mmVE4wE}{n@9)1`nigG`_H;jG-?T>NX3Z70 zqe^xg^Kn(o(I?D^H`k(&-Nlo%D8ssO8cAitJhLz`$YR*cCZtCl{_o6&bW`x&J5qZvB*= zI^4j`Ti|45y3A_I7;MTV1~eH3`l_*RDa{4#T#LI$PN`p?u)q;J`pTO&Y9&W=JDL?bwyhT-&)v5kvLuRY} z*hn(aSdz>a^25H7BTyg6blp1+ECKQ}lUzwEJ15TF75PJsWPn*;*_kv&5^H^6`E2+l z@QN3Ru?YY;q-K@aqh^ok_n%$;6ix+T?Su0D#60V}m=IxT3QIl4FQ2uey7s@l;OGAV z^5WC<30v>>x*5Ue3$q{Vx-&I)Fg#O?27G^x|4j|^M5vd= zZL^s`WfMYjkI;3w2{yF8)sLZ+iN}~vZ9uz3)Q(C!$FdwZ9uMFZ%oqBKfD3irG}(9 zK>?3`8zNL-wKya(Q-t$~cbtzbN#^6iN0nz-ltEMPi{uiz%%ARDCAxPr?Fo$hPnvRi z&u|%(d|XGMV7Qap0-aU8Qs4;o_S-5oXQYit4t@QJ&Y%aX1=NgnH-=Hk$O!5q$^~kZfNPN@c~m%cDw*<{>W_ z>26zeP8ti$D$zY#p!1J>c+UMDR(fRLu<9FF35cO}+hGU1-0zWNC&#r%YIAvG@oqeV zmx)cms(aa&Ca-F&1bb^9GapaKMb12+rv;G|ZVgsrZtlCIt`p*qmHwNb30D<4I{Uji zF|qi1_gdZegsT&@ulsRT1P9^BVCOiUI<=qh3t0Y6jvrxfcliB_G4G14@q_7+?Pth2 z6?Am13#P*W7XmJ&#Z!os!A}<{=?xA(6gcCXhK>TdfX((OZ+`P_Hp{`#hNZ->C7+HR z9AkyAf5(rk5gb)^M-Qj6t;Vwta{W(*bdu^}Py=T_{dG`M>b20^o#^@V7);DC6#aAF z6^2G{^FM7J68kqyi;4TD>Z`*q7?ZPvCFO(D{lC9XFh{hyscEi23dXUVrw(wkwRQEW zOk+1XT=P3(i(JAa3fVngY9Qy#7WOR1ZE+&3IpKk^v zRVC4%(Bb_h5%~e~$%E%}5;W-5_QKD0I4G;HjYLFVbb8!t)Gn|2AbNgSsZW;0H=#9~ zz{vNtLa2Ayu7d{>>AbdEHItL_E$55o2|~+Yv8k`C(fBN@ZJtNj(kLfNpV!~`lP%Sn z!IgZ6O9tLR3i*CVY(eogGCO^mVN}8I3nPMEu}g8b=;y$7`;&`IDbh@U7^jKW}SkOY^$1zJYB1^m@YZ zOYk}lGO?nMIjOMW)pgXVy(K}CT=rlH8T&AiB4`~6oI3#FOAoUeDxg9~aO0WJE_-6n zlc?8dIu{nVO5`BY9jD3EGC-hjBqt{a-xwD^akS7ZGEbH^VwwN8e*T-MTL3vJ7Ruc+ zyy;QvPq5l@wfETA80MJE%hP>q92a-Zu&CMPLFwxX*3>&tgUwe%xQ`c(pQ)DfLpJge zsW`IqYBFZ%6}`kt^$wFY7FG9N$9+-p+bQNpunoEGl|~q3xUZXxP2#LRx|wqWeU4*y ze7H>-@{CoM^Ib9wwMHft8_kYaxjc8*G*6WcGE|=I&>pUfW&0XXsn^^CWVF_7{n7ej znV)9}DLlPlTNH`})hv=hgY$u6IL2>tH-E8Ws@HSJ`{Z;fGK8OOM*zpYjEXKI%qP<* zE%`-uadtL*H>%I#ae&Z7l!CKHw{8`r=-R~!3RTy^nGpqgdJrU!c#-Ll;zst9urdw6avQi2(NZM0lCD>>EEKb{n&5ZIn{8KgOh8 zmP*R+Jj2ekcvj?Hxcxh${CJUYak!NZtqa)(6S-DrHb8M*Kn-JA_#QtHIH&WjItQsg zEq};66PA=;hcUa{&4^-)#TN`Q~HYyk3f#I8JG;CYFfn$*!Z_#!yhuIPh9)_ipkEf@4)-2l4sp9ipfBSfXOp zQU4H@6|Cm>+L&eXgz>LQtzn(qtta;8%=qzGHb~<3^gioHUU%h5FdI6EN%cJoe0cdA zH}pMJszLN21?evsmkBtb4aXYD#(D5PJ&2N77cJU+-~NE|ryfW=&QQJ?e`pxlu_XlO zXZCTa<06{2I8uVBwnw~`d0?Km(z?&xkB05x;gN^A&A!N2fy+QB!Z+{D-p@XcbF6WV z4e>_Mh5Dcw#+l&O01*i8WD~u7J3a)Nmkl|C=iPR{rnUxYTtcf<#{ig+cy9uR&)U{T zhEE%kniQ5r#0B75FMjh27(Y?qn?c^*(O?sRg$@sKl}y`%<&-ZkKZA&zRzBjkjGrn_ zBjC1B?@}s%RLc7Blgp1Iy^CQS#$TTt=s9DQ5IPFrmDso)<(X)CA49-ZGZc_JeyOl= zk!l3>KA2crRLA#{$hnVC!Nyi05wQ+Kpe}K-w~sL-jdKr^K`xMDNm&#{g15|d%d+u5 z`=YIz3LG_YzchVfu1QkO)1D$QfKO%Pj$EYSiexLC;*W`JmHVCsDvO8sO^_PikR!Q@ zd|vwK9gExFi}P!sxUz=t$I@k&M!27QP>wX;XI#3)d9W%qptt%Rp`@nwO!CuHp>7*>dMETuPU2ycn0v1ou7Pk2>(0!p+?oI=pKmssnO~1V zX|EDKreO1a&x#j_J#NChTUUw!mKrRgu--*L>3P#qhx1O_io(kLEg3IPa0}`fms`2R zzQ^$Xw9v=G{M#9g=@C7nOpl{?{Wc0h4FWJ#bOj{Jy=*o^>&?&ZP{MNct8W1`UgML; zjAR~%;me5X{YNcsC=;kZ&}!hL)-?ocOP$wVt-lT+-&7t{NR9J_x4m0iD+*b69SUsM zZY(3{HPjslS&G?3vf-2niSO!$j*&7t>ZvCb!8w5HGK_M#ZJ(SwxK#$yDx-8y z&fVN1v(X~+uvATB`lsS+6~g!jZNG`5ijtb~$G}{{?%@^x%Hc_tnhrMxS1%il@K)@g z(E0G)y*{imQtoy>g)2i!m}7V-sD@nFTCfC?%BHpP9!2T8+lmQ4 zz{a}sSLmG-4SKr6$7NJD^!nquz}9&&Na`tGTdbTk*=80c;*hGvW?!E|rT6PMlqWFb zRzwul?ZqIegO0MLte_x7i;z`Lrb0auE^!GVNa`Ha6l2vKz?>i;S1+vHnCl)$H5gV) z&hc+6HGZ87bC=3MKa+fyQ=e*^PBckO%crKwz~6c!3mxW2G_J*QNxDD{+QlR4fY^6Tlp)|<^GUb5_tOK-DXrgBZJt%-z^tl+?F^U-Cghs z{WtWIb5td>IWX7f?MBH9idV#Q-_TNDMMNkp(C`YHv&-$eKzy5N#T~7~(2veJ#mfMV)e&j#>JGnkH@i{BxN0XjIoTIy; z{-XW+4%yMx$@q^g>bIa6&prqE&jddAf75DG>D^gSzNWrI)oPN=cs0~_3=n*e2nP62 zLY8oUraP9+!nNZ0=kIq7g^>r@y)3tO%ZLpPsV3pRXVI4#rSyH$e57@Xzvs)jRSeC; z5>KMn5mUEA3b09mfpcB@A~25dxD?14Zp7+;>i&JBw-B=w-HO2*7^m9QBZ&NP2?JU; z1QA7IoXeuo{bF_x(J^!#5Gh2cuGi1MMn;ot)`6qa%SVFhZ*-(FGh3^hj;+kJ!tns7 z#DG;RQhUwwiM?pI$$3+^hRXAckWWxlp8xap0{M|&)s6Rb3*-8nki_Ra>wnd?=OUI{ ziYy^{K8E;yQosYZ!B;k*2kq=pE8``=aWXRhjL3|QYn!fxm@RQuUy_W2pFzy_b^t~F zqDeBCT~(~NUcHE3L2*E6IuBGP)vMJgZB$?ul5y0F`Yp5ZmxgVh&>sY$`qJ@cPm=uX zt=uqA+s94awxBEjXe27nb_`RI-7ej7L5UlIT$7wf5jB2TsolsR=h^v_ofV z$SM*i(jheGU3p$C317M19+-a7zm(uDu=)ex6XFQ-w}fwiye>LsQV_Z%n$Tlp4o~JM zg<=N{LEEpYb7Y=TIrF~iv3h4m9pA0w2N*ChSiML5x0z@|9+?jLJeDXWuEjkJzx;A2 z+B;l4jPupIsBh<`o7amIJUSOgKD>y0!mKwY*vD3;QBKIoH7RHlS zZI3yZvG*pxYk53g2&PW%oISeayEWg`$NiR-v~3AD9I=t^Ute2O^F^cX@gW*TFxlK# zj8kMxP$K@#z5mur*UNQ5X*6PgE>(D!3%ju)glYUO0Z+Pz@eal+>%o;yj7|#=dm?;!dJlNa(d|`4 zGyUvx@1-&y0n-$i*HL7*Q&*f@>e2ve2c=n2AepAn-sKzXho-$5xq(@v$A4dGcJR`@ z^r=*>bLH-qro^2_L4bA{mcz@=vCpVB5~@pa@lwE5M={s!@1X9TA=*on$?2SRZ1E8; zW3RaN_Pl$Ei6^mX_n>ULC}obm$Cx6Bp&uk6U3hF&)NHpV*naPMc7+s8qWFB&z#kQI zWlfFjv#qqbEj!^_btIt2lRim=L!T(B#XX?(kgxidcjQ{kdiXlWs`d;6Q5zKsO2?{Y zumJ1Kly7~F@gjr-D5FWvEmo%2_1}>0JLgta(7bO*h`Q8>LO4_xYd=r#8)rCzuRC$* zw7wz0zNT5%naJAXe!`bYxchYBS{ zhgapF*y{U<7vY0zn@xNzU#KktxsHM^UV<<#b#^F+;z-*e-<{LH^pDxz#dH&`6q7`iHg8=??SD~Vw-DA(|^pgb!g*i>rIp9EMWL(5= z0@_=QU9N}#y|Xq^N{4fZhLzkyX1V&sWUzeX;}#HqoW%f|$h+^)UA$0RAAuqpvGvJD zowcWR!p{3{+;=YuKyB>DMEL-q7RZn2?x?SP4)!?Z$bTljqn>yn0X}(wb55hd*ay)B zKD{latG*g0t|WLLDI_r>rD%7THcq;BzDhrqsil<(w764DVnu==!vKumW6S)+n>%ed zYT+B^9VCtb2z5toGl6uis|~oH`EA6u{Au9;)+0W=7Zj4h8SA161+%g>?G=-EW$`^BZ-J_N(&-n-`WirmGYw84UYhmVYAGeRss$s;A%{%0@u$bFFU=}! zEKrxg_Oz1fmI%8bBs$=P-C9@&Pq5U6;l`0QJ?@~vaZV<)dC&IZ&~ZgrOoFpI;48}U znEm{WNz+m0cHM+*XK6{dX-=T=%@X~pc_1?X^4g55`@?9(s){%sEiolrhUl(w2AU=h z(TR$Vo6GU*lE}hdc{yvyE9lbfUsdVuNO9@NOMc_nsHVYkkx{dCxqaKvRKZE6?OM2i zd__Js=^GprX>4j_!9om~1bs~L{kMgp_@I>3H%>luk~l5l;r+-s^pG#=-t%V>`1}>) ze;66DzpiE*H8J11j(0t-j@;L+89eMfOM+~`R1OR;w=~{SPha0z>YGg6s?b7#Fw#Z` z$M=ef_eWDNZ2)AHuo~gT<#*P#L=F>>?TP@=(n`TWQEu{%-EA-U#R7CJV+m&Q>*;8H z)&&MnYWOJEq9O<{X75c+CS` z)Z@Nkf23b{TmD{u8`dbsxd~ClqBllKYX>sExJG;@5O|`esyp{Q$~^ z0>h3(S$`;k3L~BTH*5*ZPir01;gx*UAzAMfer1QJpP_(!3d_m_sX;m6cf7ct<{9CS zQCffAl|;!YW5hkFCt^J{8hb-hdlUc*pyq;N$i;!Xb&sMH{*-_a;&!RIO!b8nK^tg$ zkpOHOyPe>uB&{5q393ar_bRUsOp+bY(L*OUWy7epUhT7aZPhV6dm2YL*x6}tDt~a+ zArd9{T$uu?=BL8y4o8qEa17Qt+yi@8WPGp05-k|d-3QMgA8AKSW1s<@=lp+5bzj1ebb^KwZrA5@OQ_l`UZ z`GjA3pAC45JU9zL0SG(vdfEn(OQ}N{qy@ere{3~jc;g3)a>+e#15G$IA6%%Ml1T#l z*BvLo8zu-KRbiSOY%@b~0WbA{3d9ugGw@Ams$7om16SktopnEQk6_Y8 zl0v!kA`=;!-i|f<#ywetd?W91U~(7K7Kc3yhj$8Osq|+KEPjppA1yK)(jeRsI4?8WcK&^90kBx~?_)rO}@;Xax=S2VmPtDPNi397K zI)fO;x0$=Gj^>tGWe=H2%l7ep7+#AJm0xU!NxU%b{o;id7FuT4A^dmlLM5xlHGAF{ zPa^xBKw}D3usO37uo3tb{prUFHa-uLkBwZq)I@-40ww1MnycMF47N5F1IF;=6il7a zrxO|HxiuzWb|9E1XYL0B*PURfAp~8+SpFi@X}ASiq}=4+E|vb+^g^gNk4T5_ zOU#vC%SiH#(1NcU9M!t3;*p(Y%NNL=NscEo^;cr4u1G?&zNONd#VPh>l^xdIc%v@> zeJ|uYVBl5VU{j1r*(Z_NuCcPmT!4aQ`uN!nv;-R(T&p{qL-KZP~f8f$8fmobZ%sBh>L) zZFIwca^-8XnAmudJ}!)g8!x$+`<_y(^&E{q_!lg1GMkyxl=)JaMS}vZS;JFMTAP6- zON518x5Ah6t&qWgIPiSTXcp$al9J@F?Z2!Ah<9hKRE2NXfFK7{Tt=V1DmSQERMZgv z=-e$^*bwSk)uT*!j5PXxjJ;)4l->Ksd(Y54beDvHAR#3=q_mWDgEUBY3=K*nozh*> z5`(1D(hVZr-Eijl{okDP?ySXPEnwEY_rC7Ujw?RjkmDcdb_RR<{bq4rXpm2zg?HQm zX(CuLE#2Wspi?XL%;Ae?c9)vLPkp3K!Y2AkFtbMZ@4Rqy2?(+YG`@;&g8dZZ4*BF; zU0vo{E=hZpTCcA5faNJMr9TqR8uV zE+d6$>3_k6K6izz@c!hNc4_KqSJp6nFGjt-9ru8!$S!1N15)0aq}vD*&Qc*!n}L-;0?;r)v(ypn{|APHsb!`d#z@itdF((!$?DSwFo6=g2V z+Ce97Vmvj9cOTJr88p@N)FwX2D4TM><$NeT$?k!%P$CnDYKe@W{~Sx}Ob$u0uhEFF zmHp$%-nCJAyJ!S5TU`InQ5;6AZ`$7oKaGqa?=UmJ zSj%3Y!hR~s==NN4_WhO?vR#$|50oYPK*b%_FO zVpzd>Sdv&$SRM9jKX%vM`NX~bq=sq~R-YX;&UEzFgPKYt@RUq)3ab7fCDe;e?7YUf zQ4w6oC45LzE1Ra3*s1}?o1ocnquX$D0~`2pMz*MSymR*P7gEZfJsRN8y`*zBs~mU= zVbUEQ*(s6bNZmd(8m^1Dh1AJ7+ehpxn%Ov^B;h1JuWuY#4FV6E(lb?7`Fw}^q<^Jc z90(+W7f2r2xd-++?E+ZO9$~Z;6s@7iPCRPHte$o>LT)?Uv)3gHxs(s%G4TiCJD9Id znP^@fG995IPA>msdDF@v4e+iey}S)9Dt4ZF}q2DCbgo8yE#_Dg#eNv z8gw#TNM34Ns7m8GEE+vy@AMyVC}&EBhMpM%8m1GauJaG_n|PF=p?ao&%;nfu>deui z{s4m$s2cG2+e0B9uKSj9`p1W@kX_Q(ioY^2pDc}DJ)h&RG;e=9+dJ-B>G3Qt0vO*)Ks-%P^Etc+Y`>ub#$+-~LptVYs z!-lWmL9Jfs#d$Adq) zvfJa`rH$^ZwI7UP9auxD;;EKZh}@<}pT5uHejL8pS*fr=@1Uzz1Z^yf5T5&pK)H@$ zqK~;eCbBQH>3ysK>ONE#e3;=_U7Uy>bazYNY4i}d;5F6ygqvhg@d4|W`IL0`IQ&iG~9@kDh*ziO_)3Sx9fcC~>VBXo(-t0=L-rd33`@uTYTwRTQ_kmlC4abi==@m13^;KQNdEsf>NZ~TKOwWd`w_IXOU zFwoST%DMWx^*BGsnYb?oE$OzY(-2GM7ii|6p33Y^3BWjj~`nGlz^}O z$GSkVBgZox0hj%ypR5H*F*|nvX%D1snJ=l9bT?CzAAfnD=T@_L*SmdEbN=;2{^koV zk=UKi^w)?In!9BrJZc*8^(TaV2Bs5PcNzp;pE9j9h-{32)2AC&$HG=r?M4n|^fnigUXiOfE!j`>x%b=Gbb zGz9^!c5l>I@08!pX-&6W7~Ff4@OPRY3OSf-c*pbWRy|`2xXdg#Xf3CNlw;*hVE4~|OMgn(EXUGcL9#jm@1oPuibvHK>uLMver_x&Jd14n%SXh`9GJEPcdJxg$HNWFh+DelHCBUE~(Ll0FZPGJ^ z5{qubVeN%%K28_((!CuT=VOuogO?YMmJV8-t256)Z~?q^dk`vVaTA;A3V33q=*Ho+ zn~v#UNf!)3;x12AliGaZ|0X+epwBVL=v3#n#DT&{P+z3QjS)Xny~+%ywrY_9&F$9Y zCsgzmbALl87lcbF0kiGu2r#LOv=$#(ZLc-^Q2*WJJ|ydY&(5w~2!Pu|D!p7*9y;Em zBU_F7=w^%!o|G-KvIH!kdzq&0CkqySVid=`tc{}+}8g2aj_$gRF&>WmfBx$^u8;;m2 zIVqS21t0=LN#|Bds|IL!(@h6<-2#c+#3MMi+viA#d#08v7AOw~GKce-`N#R(rOpV) z!5rM(7AV~Z>3CED4flnieD9~t9b2wSB;w8lW@%!sPth|UL z{_3LlX{$dLB#3+j!&(_{X?zcIhJ|67Cz`)G5&I>w8kw^bL0i=%9PgR>aB`|^?GGg* zn_P{fFebodMmaG%ZCrAY6>pA4fc!mz*3+EME7mhThoQT_LZ=5 zPRxfy7Q>i{+h@_C_x@Z~tthF6Nt~GWO*6yS!vzETb>0FLunOrvi=KX7?FD+d6{ouN z$FCQCk2{_v*am66+*SXP)6F^Jj^!XBD_&`9YStRR>u+GJviSX#H3EbOP>4Taq6cYY z+AN_;`MH&ovk?(TcmMIA+ID*F%0=p$e+m-Y^NBiBU;HwI_SMGm_f-m`o3<8>oE^Le zO}wG269XE^Cq*`&(_zRiCjH|KRp_u>jmabBM0TlMqn60dg-!5V|qcj zYal30P9o9Vt5jRMY23sfOFxvD&olFxyV<#qa zbAV!yDKc8;H!Y7mOiOYb{KnE_EtX`9O z1SpT&Ve04R>GMPwLv#SOau#&QTL*zyEIM4aBjaXC(6V9)wl$%TW&$ z3HGEgXW>e(-VGrjen||?Xz%z7d-eNxqV!r@{8`RYY6~uo(<*uBzc(m!f#jG(PkZCn z?kwzXJ5<=&J?B}jNTAYb>dGVv^9Hf^Il18R>bLhY#UM;I7%)>UP5Mj*-KEo`?t$qLc3W>{LG)Q;Xt6;LBW@IH2~d0hNRuV z)gioc@-I04Yep>p`@B>-lkQ4nUY<5$SXRkTRb$$H>EN}OA6-7c5ZZcIUb(1wBN7|V zB7Y|kh_jD@+x`$7{|Ea z?7e~iCv06Q!u@!vK3P6b-IoN&)DtFSdGta*1};13BBz1n-@yoP>;OoPj)4cjKV*xs zM6rgcc%n*>^^ZkZ%tTornZPh`G=&LIcBUmD4k^10G7A*rvSn1xJ#l??m!}+WNgU)};Gc-P0T3@ozB7xZErWP)b2dk&HP83c1hPFc=xi890@j zd8=svph|ldfNLk2xz7IuV^ASOOTO&_B_B2GIGX?Zk375DI=`em_o;tFn)tbK#7i2y z7K z00`tG;s)a4X*kkYCc!&KKfh9*ztl37BR_B zYYe?bs!C;Qzl8e6XU2UJpd={X2|?^i4FndXEG_3jMvyokTWKQst7o*hw%85yXmQI6 z*#c>xm{eMzr0&;lEm&PSY3taURq>5rV~g(k0uSI1)44q=mvw#Kt1fpfAJBT@>r4ZC zlEO5aTX!_$_J2EU|04mF4zza6o}*?%g@8$FQ*nwZB5l)B_3u&zB4OEh;>!My^<*3o z-rcUSzd4>?3JJGwm+S=5=J00G`J|+Ke%JaNTzUGvD3G%&%DSMy&oMJ~Vb$b2 zasxJ0oIs?V$PH6mT(W`n1OqLvxbDfX2+V$&6=VJAYJi39Mh#<&S*Yax`#bKA7iVRW zY{J(K0u$3ALMI_BlZ`+KszG3Y5+@>|N5YV^l1szJ`-`k!24)Grtg0ZJ+`t0z1h)w05QLn=uFgrlbv(}5`L~iGK=}s<7 z0Tb1}2Q;OmCudTt^H~x>EqYZ)`y0b={`(Apou?-$%>W7Pu1i);R2vccl#(`FuVxE3 zn7eM4LXW$2R{8H)Crh0T$KrnN)QZ69_PKscezX}&!D5d8!=Z-cAoB>@_3pnufETFHMNpL|Y$ zSj*6O^(*q)4U!Xo=5jBkT(S^zaVPv)%E{I^B_iTXzCZ%(lm#kPGuBOcA9G^<(qat; z@w3}THs1~Z7x>vszaglBb z;No_F*Ev2=z_qHo z=62x9cPk9~P>3Y@|La?i^ruh9n#s^)ujB`Mg|DYHD@LIZ9?V_=MJ8pL@VBS&)ui;H z*aFt3vJ8aTdo$HfJAr&2qvARXymJ^)oOa!Hr!*w^0e@xC>3i6_6ga+3{b?F_<4H1g z6Jf+o84HbM!pZK~;vcL_gYZNKO2 z=1uIjf?KT%Dxs6x-i}PiC=Pw%wb zOAe|wh(~93EobTPR_F1TOf~dv@w($85>l5p%<*NLp++=P=;WHw$y)L()<-V;RE8E& zRfj>3t9Z0xUl$e@tX!U-{9C=xiy4`j#RxM;nCH;$+ZMszuj3&+78^Cf6`jYW#Wy=P z$D|1L!Ni0F`Wa|2WCc+a(3jEDBG}z27%sdGev3*diApVM)HXTDHHs*Fk@9fFg0Ql) z6H)abz?~be3mxe67PZxn=hCpo!`w^bR+m0=kmFpfgcG*sibkLcrzARg(s zp}}deccv@}B9N5Lksu2a#Xylm|Ax?@lSD@-&k^wCuSR6cAQb09qh&Bc_dZdS7Lo^| zslpJCU-hB;F%U}&cW+$#wBcKS$`-`n{E{FraP`>FkOe9^D1cfo?79_= z&}y2)e=t;4h3zk#h|{W<5qyjuUXgkwJSK%`dkL(JS08ed#l*p(?37u8KxbIfqhg1g zbndewiJ~I9iNo4e=88HZPL5&|=iPiaqhpjC`566JrA~D$9gYin z@$`)pF~t5BV0)$2^?004>bg=2WFqy#H!5H7Vmajz^d9>dbo$Mk-%Yf#coh@XL_|&9jWH-xuK$hNr2&m?f>3i2VCgWF|osdg@uk!P>0m8wPW#SOFyu2K24Z@WU zO|?B*bRH9bj}qzcjExx|uZG%huyi=*H~O9l9)-M&zdF>mn_eh@@rMU_tKx6XS@>^G z%@xhtqTe-Q4^BswYinz_TWj9!v4^#yS8uMa-(Wb`(`$W_Y9i!#L1opv*hR3`cK#75 zc`dkQU)ee)rvZ8p@_!9YyoA4Z>KtoZI~BpWx^R1`vssdvOyk~oqvUYRmvli_F^dz_ z!RL9DB_0+Y?udzpr?`M90*Vp!y}FQp(oR7d^Wme_ucC zZvHuv`<+#^VgQ5O(0W2w%hynGTz=m*x{c)YHm}TPcO?BhRlGu&aX?o3p^BT0O#zoi zgymfvO>$u&<6HN=uX$0$#l@IfC5Reglu~zg}`r*mVY#R zBD4f{D~PP4n91+*iEZ)sWap-*nd0+SGb&wP5=dw9OGMY}jFZXLRyhVB=2?LkcW*M? zhc9*7A3pp#-55X-$1Cd}l(yS?ou8i% zR;w#5l|z_=S-^2AzP_G^m6MYcS$Pj3+2eA#_o16($JNypr8zHxj9%HVIxUTCzQfmZ z0P$DPk*v2Hc>OK*#NPxur-Nw)uJyBx)|-W-Ft~|fyK^Q!xvXcGR&=4VdRerwY-u`}3 zYpX8Ztnc-a{JVD%ZXOACM5IMy%9~Gr+;OFYUw)q`(>l2;wdS}g9qXXEzt1A2t^`h-9n^J z1VYh+^7*#5x3MUg`u`!;;4IDqRj^T|*ch+W;1dGdPSRd;{P|6?LU6KP@M~E!giY%D z&q;*!^glftWsC2J+mAQw?d^R<&s16GA<@{+?DTS8BjAg@l9VJ<sS@fh5y zY2N-X;a8pWWMqx<2gy-3jDWj90^UX_!am$=U8!{9=VtFzRIY}vu9_T~2syf%KLilc z(By>mhv5@d)ig8^@kma(M&cdf{0+W9$ZICAnSDfPMAbX3gLUgI>e%(0G!fD_uMx0* zCyU!NlkW3!-QRzTBdY=()8xbWAg3$;%~YRtDPNG zJUuT45YXgWAFTN@tt*JS_TqJs+Uv%VdI0QANH-Xwzn06Q-#u!gSWx_+NwJ(%GKA}?1og`*4`e%+Y=w3987{1 zrMpQ&(RO5KzHBvJ4pGCRE|+nHOe@pq@Tif6)o;z6_5yfvQ@(Vif#1u}V$Q zD_BV?%T9pU1dYYP=ZjV3EiL;BX`PTR}l9;pT(H5e6OK4jA zRu^7Ry!$r#S3MlUM)6Tese!`3g4;~WPp=p9f<%srV5#xtnfSnycir>U?W@PK)}mZ1 zB2B-5bz4K@tC;@IrTVSTA>!tH%<{$i&wEFg#M7($ubSL1_P+AE;d-;c5o)GK-D=s} z)JICsdo7a$V-^|30>w7Za{BLW7J8ixniqTB7a9s352ITt2<*A)vIlv{GBZ)Y$Yc<0 z%Ec&9iDfBDWSfnD6yZbzE+bN63kE$#?@0bs&LAJDF@fd1FYdOe-(CB5Ey1fVVaJ)? z?<$sEM{^8i@w%?>!iZ;p)=r~{0X~(op&G(-qyQFiiBb~2u*HfwiW7#FmpAU~XR=4z zcb8-MT~fD2(6O*3q}$)WH8icv}FF< zMKI;y%|N{2mX|H{d3n&V{xg?@gC)F7oCDyhtVJEayc80Ftqz#oJc^zCc)VJaEfdiG z6?rT@uO%d-bjvD1z{G58yY=n2!SwbkQ8cIITQpi;UoLSQb+ZS@8fOES*cxm@KEZ&8 zWw!W$C`Jr6-XJ<%^Tap3IJp6LHa^i~gSc4X+2z_I4T!?k5SMA;DUVqrZSC16@AEBw zCbbtDamOHH=Rmk-K?fp4#>>aXA}!ch2_et%NqZE#~YW z0z4L$5Zc$A@?YFeE|FLM{Yo;+q)Jz?y|EeFCmV+C1dkKZLqzZ-^S)5{?G}+nVdWz` zN3bSK?5e3t1v*bj3b^l0F}Q5%BY;#_qlkd+buh}gC&tkTBBp1j-sN0i@Q__@6RpI= zC+s)5r`~_d7^i4KkNRJ)@}3?NQ;lN~YF7B9Z=Zt>-lODNMc&I(PmIb|jwrmBgIaWt z<)Oe0c0j`OQn#!cwX9@OI00u={rgng-L-#~%#Cr*p16@2nB>Z^iv*WmEi<$nGFr04 zc^elAIIFEaR{t3yGyTf0N*P6>N{F8dLNv8HP*I6j=>kOY*~X}G~I>22{t^9 zCb{Q`Lg=@VB(?GH5UiQMxI>4_#l3P^ubuwrE0y7Ha<}}O|}tqNUK} zJKiDDQO%$|wz^%e(zRwJpa-+!VS1Gh#b9;cVirq|^N(&f6v@CC3RazBE@3~xW3fgR zA`PJhzI-r37F|-+n>owCVaYt2=j{kr=A(1T8TBMK6+(`}0FN8~$Z#H0D~D#L2pX(g z52v(gkM8CyT+l?lYIj=yX;=z%4f7{v@uE3-XL5@0@aUK(cinwQtd9?3QTx8K*PN6ANy?{8Ye-HMk)H|7>%Szj&AlRv^B%?4Q5zWWhQ{mz zlf3A9N)TPihg?tkrSe8?LW-vGtyh8&{+;lx_x z?BeJ8a*w(*+E=>Wb_HePOYbsQf)joIMh&n!H7VIMKd63Ud8@gMNEZlVJ;{>}>qVxf zBs+9dWBnbM+{jmu6IV~P_fTG8~eTQx_EP(r>FmY>mP;!=i> z8LTSZd|Occ)YA0EYIJ-&_^=m$8ttL+Vf>qvFWGCJyt|aI-|WUPV||PM!BW3wU`c3W zw9T9DQ+#uem9!}yO2aG+jj-o8?`&x%EQOzAB+MsZUYG~%y>e{oeMi5+r(ETT31Gjf z6U@ zV3tIB8j}%N4iH|?v|c$0;z4*=l|H3v(A2AZu>1;FV|Xua^$lzGm;YLnm(@{d#2Wud zhIu&xz-xcDDQPR5_3S+bjQn~Cz`T69dG#4HjFt6UHLg?qCF4~@y~2mUloL8Fv_kBF zU@W?iPOP>2gn)p<(je+P7J0PbUStm8td^hEn1zNab@1huBYs%&sV+SG=EaGd6}aU^^nN2U;x*4iwEwN*sGzDiSugRZ#%#6yPV_#r%A>~iqjT2|lX!pt&5Jv7 zUEJ%`jJJQ?wXO#slXrI`QxAQZLmvXS4UJ8Z2j#pV=SW)c_eV^av9ovBQ0#FQqg2w$ zmd=%d7&H>iAb3WC4t!Bank-v}CsZ2yc##R#q)t`ED&V`^24$Vm=mW>sr~Nl_inQ#N zHZ?&awxlAI&?})6hO5o?s}urI?!}UEB5ff1{ZeX|h+D9k2_uWsTf*y9`|>qt?x&PH zB!#cF04q-w{=+}L6l_>9(Ja%q;4co%M^nb{Vn-}C_skTI;UGmHBb2nzjgdoU>xNVecA>RY}*6fusSQ*qahwago@K2CFm z^kL)D-G6Zb=M2PBqnNaORhjrsd#^Y}`a^R^r zf7I!N@*_C_8epQF-DoR?f`-1JfZ+HIyVd|>)h@nLYi2wyH^P@@slr?_5btfL_O%bp7! zHnqw8)`-OeRjy`P=vZY5=%!XcSOoN6yHpJf=$=x)b}}9zOlLg~*j5<>k@{8ly*O8i z^kLt-VL$4eUv9F^P`pb;@0;~|m*r|O&WPKR`($Dm7^jV!gc%6-9;FY3w}*yjuCU^WH+>wTEbICt8Fk8@M%q0y)v`w;*s74l8 zptU3%8xSAx*{kDka*W=1^VRa@fZ(1rdK{@AnLgMO;%aUjJ%szS|buo__b*N2f2f7qTzatsBVknrp1=Vbcy3`Vw@u z=m?g+64(o+dkakjJh@R#gaJm3zewX>o<$`e@PNOFyY(X~R2&x_rZHryTCLwSm4u;! znXeY&Cr)II1pNyW>Y8qo+#0KKCZyM9K!BGV1KMhaP=x~%|i*Jm*J@nw6;Rz8JWP+Y}=MTpl(m%#NodFX+`5AoygT13H+>s^0=ti|+AFzL;( z`Qbe~Fmklh`E$?kt&+dLf8y!LAaIW|-q7_JcJS%)9Uj1%83nrW;RLKPAV_QNcv!IZ zKsI1L85d|P;yPd(i1n~_-F@Cl#EEK(E{gd_N?-D24#PX6f+h@c;dE_ChGYRo!;C`8v)tQ=g zB!0b9@ZoLi`CHb7tj>b0CkGex-yuF&(D%tWJaEClrR=b;M)-Ag2pv(V8egG-Fb>Sl zuX*}Ncyq-Mh#k3kxcvfe{(0|Mev=M@mwz1->5auY+4nuDNh0ASqIDL=%-_7bOJ8rk zKzlwVgV848#G>Usr5|v9G-e9|yMc6YG2=s3W)b8ZQYJ}c%x1a;w6*CSaONw^*Wd8q z;Zt@NNVP$$8lxO9n7533(DHl(_}6^!;0LpQJ0JZmQ%bzfACL>XAX*cEJ>9&-aNHcp zyvaUzVx#IRBj8Vam*QApApp46cTLhhJ@bISl(EipLup~D?%0sLl0M+=C}8d14T6zQ z$qPV~^0cXdADkfAG85QDCLIjnnA+tKK6@ID#f^$8Ey^9KVR;yMVh;OpAs1gD z9}~chqQ!HWw#NX?tuYB4Jn|TtJipOjnv8WlX80Tt?tTik9t*#bf*?%BdIuvWten~K zW<$>TBr`4spw##eZ!_5KO@Y8z&_6>$@VBWB)O6-`J0AE`X^yU3KrJ0m&aOe;Q}8SJ z#*v_xfOzy+>N7x>XI<}Vh@y!JoC$V%B)L8>`vWG^GKqBN8w1Kf-5?|S*yh2LdOf_c zoA@Y~zO*YEE2|ht#`anfl5iq)h%>~Ds3PoL`|BP&ht3Ws8UT&pye0=Yp0=-$NS6^O z!zw~#8KswzfahzVHsWW+8Tg*K*uyJ()jt^(nVmiX+*MhqQ03`3k&VBVVdd^Ac-_@c zlox2 z%!c15gs&Gx5%htOuiacPjIUKl1c4LG9V4fG^br(X=SBcNECii*xZ4PnTBZZONJr*5 z2j_x+U1tZZRR*E|k|r~AZ~0k-SS}~s9cWBEZn03)qMjR@2%dk$1EzDYsyn}~Mj>R} z+zePkbNU0iwb10~-2fAB{*(Kot&BAlRKTc#Q2OdUcpk4T?t2s$6v+#~cMW-C3D#pD z&qY@zX{tFv%4w-F;BY5U>;1dnPOa{_g_N4oX|b zV!t0S?K#rPf6^w#`$Vt1hAnew^2TlHH`q70&@s}&H+Vcr>C`zF7!(C8st4R3V-gH* zS{Y7RAL-N0k2rIK2xyhtw>ni2d6P%+OLw^YC>{ce+O6Zh@X_zXBMJYtv(JNUQa5R0 z@k~bNlGVO2#V#^k7&-&cBtGp8(;_e6rih$VW5o zbKs-YM^ALj%RT*%Sn>)cPU0Z^YDTtkk8s7HH3ZE!OV%uu+|S+-8NJmg1!TAe4)yKe z8gdtQP&W|&A52# zjJmf&8GjP=%S5g64=J!2SC1ZHe2WQ+&tCh#nMpw3_3s$#pt*M)b?8WQc@6>5 zEF&NE{cGQUED<;LH9a$K2x08#dgu-u@&(wY99!h3%0(6Xatl%+4Tx^955*aFx58Bf&eyY5eI<}fO_7o6w4Fnlmz!W}mQwQgMEEblccSB6nmjDN4G^JnFC5rDa zh~`>V{dy@J5r3~DhLF{a(TY>QD20a5^$=+CoEs7_SVZ`vQ=p5IS!Vi*Y~PS#grD7B1tUv>?#=Ec+FwMi+Rw)O@!8@U%TL?zM71wLy2(Q#BWbT}A0ux;q9L@^LfH)V5SgXpM?_43`p3D-mq%i)z$2}+ zCPJz$uxhm%*8jXs+HyR-w%`t(wHOtvLF#($`X4AU4i(xpsKG1}1h^Kuv^Ft_^%;CNo)T8Us8pB3Wxqeo7ZVR5|JDh z_S6)&?dR4Y5>F&)C_0}U>u2cACl<-SAuW}~m|ytv-g%JHu|?Hk?x?RRS(473b+U|G z3==c7%gy9HAlH{tt6V=Eoox=SOjvonD|j5+dz1Yk=sZ2uIAAxrzNh5Fq?g{fNR{NS zhI(Vk*JZJyd-0h0YA=dVv`{#T+yVQRuW(I~tv>2odr%tWr)1EYKEgM8aleQ%X z>`6u~;>Ar)V_)H_&2k)cMLZWrf0B^eW`CGIIg|e;H^k`_0T`!K>1Wueb{G4BdsW#X8k{k<7`7YZU7FQSP%;B|b< z;pUc*r4_R(zxJ~4-Bq(9%8VhKo0yTto8z?K2C;I~G&B1Vnk%lVwslf;pR|KZltWAw ztpj^_qt{_qIJ=%$|9NbF9yxZfb0%f%`T6#oQ|fC~>U9(lHQD!V2&cR@ZY0#Ncaz!3 zXBwg)6=`a*S$PN>`My28_-H+SAR4EXS@-FW6kfC6dC>0}-{X7P#TyL5#V(;EM;Lw? zTYb5U!+Yz4$9rrQ2vjwMNQsaVITQ-f!GFmpJJ{I{!zM$zXd)w;ZIV3SL@nxC1wHC9+t4D) zgKR97cW5-{^?zR3X8LK2fE@_2)wQFGlV=*y7wo?w;AZmxFIdo+xmV#B^Bu&XrIbI|y) z@Wc1*7RVAF^0YfhM^20CE0&+!;zy4^rXasURFEnu9itd}p{iM_BoQSb)v?Z;Bq%Ym z{yR~=-%Cje&jc*87NtLOziy^6#SZ1BJz2(D6FxpeBy484z7!I5i~YJYbjyBI)Y1up zJ&&!-Z#Jogna(Nh5a>vz!U@`fBai5?)`ErOTh=Mqm>ktuONlpMDuoB;oEqh!s~iTU|n$!v2!G@fOAKZq4w%)%T5|0zP9XR2Q|l*%cvy|v{b7bPzN zqCfX+TKwG^wEgLic?N-W`0zI9&CGWFp;%siY=rl)D=)9yr`s+5l)Adu)F8`>4R;WG z+3U3pA%i44SG?0Gf4`Sm~j(7Wbu31w`x_NL5Lmq z+OVf@?TTF7UR@Tdg85>*^BF27jAz(L~I>jGOiPV1W(3}!;>F(F= z|KXuiYroG_3q29n*F5xy>y-$A<-0TQI1;C$F%*em{8|MW6@A_b5KKq`OTjjwZW`aQ za9GUGMUI*NY*1wljowB#P@W_lC4Tmu8c4&s6yq1n+x@v@s(Ma|BEA;@&SOl*hF6z# zc_S#b0rguyiS2~2&#jsWf`k5%1?vj+m@3EPlN&Fa-XpJAaa2uTdf0n;kJ*M~Pft(B z@(Eozur7DFtCvb?XlB?36PCy;`y@ezCQd;iv7i`=wgxQg z5E6$&3O&+-O_s<^RpLQb;pyazsJvI8z`h;K<;D7#v{QyX^QG|CpXdSNXeT|_*p+d* zPqKuTKP^i$i^4cSs)@|Va5Owx_u#>?_0;*oL3(76Eh;+A7zWq?E~$(&URhJq9E4}M zQXexnonAU-g_C}c<>?tK+zCKn@7Duh^#F@}5*UHnf*7SBfFDauQ|#m@;gINUWPj?{ ze0s z1`V`^i}nYI0x8#T`@N8%@)>l%#sVz_$ubOEut(2i#?&UiyQ8Cnp*9|&FLEDGixi(b z81(afYS+;j@5JUdG$3}W4(Sc=S&_rTGkv4`%{o~C;+YXQ0bU&2u1lH!br{uTBh`2j z_q9;F49Kg|NIU^`TbJL;7lS4!tbt%W&1jea=$PpCFkZ6zdWNvO<_Cah_+Y&4NBaR( z*qve+=B9SbNO{o{(T zaxpqIB_%0<30~My@_f(BTdB2D0 zf(AvyP1cc&cz_5=#}iQ+#D7b6k;IM(F*@C=DG+MT`djNrF0&+Jm{&h&(0>b+Zj9L4 zs}#}qNsx&UPJgrG3j5N-2}`2Si*r~Bavl;Ra(|2IHapUv04kq9fF_}IVmScS3Yp__ z;e_cFCy+tkZNCY%y78sTC4eyrVnB=FiEcAMEC~ zP!aK&b42i^){md-@S-zFIu`!bHAe&JKaUi-GCi7d6^o}9e+el3;RTV!4b)CQqMzUs z|2d?7%P-{+ua+h+AdwH+^-7kroqHSb{y+mM{+I*zNFHJIayDS&Q@AS zlJ3^M{&)9zcE9Y-GhcXyd+s^szW2T7y!RJ=a{KuDlNi}eHNbd#R^!1@L-F-Eohmpq z9aW%Ev@d@^7UANvF-kh~4?X49Bmw$bIx)b=^aKj8@Xsg6$ms$6 zWBjLHzx1VmJ`ylz{s!)anc_|bRTZK)!qfq~gh`Z_Mn-nvG3PV@#nzvshK|dZtpr8^ z2jy+**Vh$CL#WpC6ra zz4+_rTK*Ch7_EH!AaN7Aan&gP9&J^aXkQ6g^X% z{BAWs)6x{9Qju_r0Nnzpnv0(vmS)U91bw-w&STF5Gs;ykTK z=Y8gjpt-!Rw_~a3mUBm)iBnX=--bHWV=tlZ=>9`kU?WaJ4$G}pheHXcsh%dQpYtDu zuQ%P;d%BgQg)%6{|9`*dT;A?+lk%i!W*!TKja-2*jxpL0tCN;ov>qR+;SL9^nCo4t z_^vrvFwRA0=7>PNut0tk>ydS`TrM)dO1w3 z=&b5viW;zNc3fEfa&U_wt@c;AGrI-fCm>2$mN{*(;**VF+Sr9x8{csFn?KJ&vV!qQ zXD#20#%jvixVtyhS64e#x3>Bi_4QPhPTPq8*bO&Z+T`ILy!IW0xp;fu)z;Oy5(kiP z%G!DB1>57J$k&}Jzv1NM1i|&!N-y!{5psB>)8ZX&)E!+DtdfCDkKl?Bqd_5&(}a~* z;bx`Nw=>bJ(ol`A-(1n(k8auu!bd*cYY9V0oq#8&OUt>A3qOCB3Xn$^sVt23T=k6+ ziK~wl4%k7tdjLIp&Z;8^V8DOB)9MH#f*)ORo_}!`He0v z8Z|dICND2774-M_n?|PZouAjvW1BHTNE7c*-FiPB#c(ZQn7)6)%^yVl9c+BGWBM9YqZEfvU z*&j4)voh$>(NR`px;79%uzYVMhN#NH&!ON)@Hjq(p!79EiQq_a@5X{bKxip%_ss8k_-cgxj6eXGv{5gv@b^udaZxe|;E<1hS)eu1 z^7L)3tx-ZdTd{8{diLg3FtULz$-fH4N(BV|Uv@!IpqGaSDb4KfhgeJHc^?&dGpEz; z7Af#70kXf=zdpl9E{8Ms?VT*wfzu@xHhuUeA9OTpS*J(9O|KyIPWWxJR`&KBxaOj1 zy99Yx?E~k|!$dt^Gsm&00Q>DwXP-RK6?X;F?=-(tP!|Ar(t-q zQapilc+fSfFL)mTk|_n|bu1a;PILkyGNh%`qazd<4|Zggb{C##X@*-l-^!6k``+Q9 zh>#FV^2hzQnFc54F_F7;@5Y;xztnf4IEeR+Yx2LE4b~B=kjm!fX1QZ!d>4PJxs}?U z^J|^#9bhMf;{6<+>{^D#wVX5;xkpj>gT0x5Qts}bqF@*gdB}e)gg`5e4C{-a9f?8U zzhKt<=xu*?c@^R-K3wK2yycS7kM{ZtZ+_L+WLP%EdzW*m*Rb(mMrjow6FAN&%&s=O z!mj#&c8UAinuYYvS2?x@>EWeCT2F~sKO@?B{&a#;66()@wC{O{omU$H~RodEnQY{Fg^{ zL9v6`!c%K@W zE!Nl)ny@HL)hLU=rS*NXv*hw4dKMxcFzbkDcsD^;QC2qWy<3nZ7VwcNHt1Zh!sOsn zib;)?Y8Pm@VSIGZuyUzaZn#-mqHpS(&~NCZiWmkNnU~L0Q_q({JPl3!S^5X&?r(^3 zjgKq$=RefjK#PdSaZq?LZQ^P7gyUOnp0k{t|1N#VQ__r0MrW^m&vgUlDi5(kfq}V} zhC?lx3t#%MlML%X_37nosUS2WBBHVk5W@M|^*dODgQWf~Tf(LgtUMn@-v^~<+KgM= zJV8{LiM@UKU+1gCCBF?cPvIsIhrMaP+?v8UgqR3@#-rlMm**g^|ym7l4)TDL*3EJyW6JA|{(pN%(9 zYWeOqHkVw#Z>^f`*xug$iy0iU;C<5j#1r1Auc-;?0a9^AhzbKA1s6V3(l%v^^7X($ zpM^3*=m6A^&CSi_ct&N10$)5#j~Z+|H}v7VtE016|KDGW)*&dR>=@61<~8{jH0IxN z!mT;Jm6p=0ZNv7#YDIsKEkKAxb*8a5Tb6i`aAa;tZ&M5P?lhu-HeNR9A`^M zd-^c{^Q4Ap++9v%tyZ?(_YCAim149FFll{ht4H+1XnfBdrJIph0pMG88P@RKHU(w- z^%b3R14(J{yg)7FwyPC?n%R^n=1Qz=cZ}5=htkqJ1_yWdyx%BRqODY-l?S915D;c$ z+SmtIF>-*T;Smmgnx(|W(EQkgshByOE^>B_47kGivUdk@cIFIlu46Fu!H6I)BQRLN za{*ksqdS~_j}4z^swKJ~Ew?G71|qS>qmaEQoS;6^-9h}c_`f*&JV%=Xi2`B*aSPBJ z5l@jYx7>x9Fx!VHrhYFiv<=1i$fVDF1A9NOs6WhA=KS%_dm+im(@qdh!+A1O@s~D? z_|W3L88i3Nn219fq_pFq8&|StvyY>1^CASK2bpA#2#(gd_C-n41m>dU(f*f_spc>0 z)}AnkwsX`4V6Av=AK(WJd9NKbTs3Ly=+Z|-8l+E=5NyEY5x5P+$2rRy*6Rcn=Y{H7 zTS015DMA(lz7qS?UOQ5dX_@+)BV4LmM8`_om6bQWycpf@_xSGxSSLbR4n?*_oq9q! z;uxEtVd0YT3@4u%6B1}P$UmfkJ|u7l`8wtvi~l)GIFCDiM6GXqAp0J3gr^Vl^Sxbk zdvZ*#95tk@1s%v4a8TELiwwI;1T9U(kC6{>-0T|%@9VX-5kbU&*!(<9c0{#zM1KB; zvzl4w%QHNbFe0bB`7M1DPt@6^&{gpDf*S@(0~i-EkNyi(^r*X+$MiqFtu*v!#UJ~9 z$+uf<#7`(H!4-PBI7QCl>G{L^*C(S7t>#ETUR((8WgX z`;3xwfu0Sn?XMc&f~|jY1pn^hDwFd8@D#Zqisunlh5iN*&1~`m~Grrp;JgM zdhRqXgcygamx%n!859n_0=xKShu56*CRNn*FJgR15P16Z_)`0-2{gy0#RkghvBJg- z*LJJow>t{m)Vj*8Oxr5^w%y}sIsE#xf;;_x`QNBIp|~d#GqIQFsl46)lDlHLtZn4% zw&E!|N?rNxRbO`RtCr=fuEcLw9h66cE}pGFgV;)%#n0s}uh!VuS|snc`j?#bQR|@K!Exy|<w)$_5A7T7MDmSSu8X1|sPP8b$ zlMvi^cWYeZp1Jg)^D=7xZG+{nFS_n+ALbL^bQ zF`&KFt55F1m|p{XGMGS29}l^dClb5q*mWm4Q0gdRa0t#4GG1dfGJl0?!hgBs@$e~R zg$|%|BNpo>rn^%1a&oy*Af$6ph5mQAGQ7` z_p*BOm!EbP99$8fJd@R@&GJQ64xS>*zAXo8sWx^Ezks0<&~^8TPt0vzrnLMx!q@je zb{&wx@^sC{SoZ33uMwH{cFzCJh0fKJ@;?eb7U9Mm;t%y2$M-X@K1`e#P~hRcf^nvv z=pKLUjD67XZLDXOP|_@}d&7vXsv3|&jyhDVZ1Y$(?-4B9yp89K6oin=%ft;IM-Xqa zXLP$3v4`xvK-D7LF&#p6S6@lPgRg6o=HTuFYNkDd+&>;v$vEKpMlr&q&1)WQ>b_@?Z&G=@ zelu5^MZ*N7w_taU_k=Zf758zx0x@~{KchNKNN3yC56@SUS-J7Cd{#GQ(SGGkmnz??Q2TqY7rzeY+|?i7PWD9fvMxNQKXDyuQ>OzxBB^FXMKIBHdgVMV3G^OvSW7pe?mQwIX8Nk@u9>|42%sB;1o zh`C!_iR?n$WO6)8xxnBv0{2>7+Lz|K0cbsY0nNBqiotUJJ5GD&spq0^{qeC{ubS-r zHL}hqJ0I z(SLO3Zkl@0wET|#ERD>P@x!-?tk^g zOEbXYWAyrtr5~@wIab1*@LN{Fhl>pKg(rYE`ry~c$f+y)zucARSEC`$EwJqSHKJFx zN)*G}egic3WUX)Q`iXtm75vf}X9PS37h-$AHU5gH7Sg&_QD*rXK4WtjV$MOYIIi|7L>k>j zLUi7I1^ZdwyzShSsrxS98~0mdbzjXV!j&$zvz^MNiXlF3=l*|^S%EtCEh1R9U(QA= z&HZrw)Eh@LYy-kWi$sH_Dz1tj>~irVcYQb2WgGMTSeM^7T?wvg_%+P1TermTVs*Cp zWA^N+wCz4L9KJYWwk$uJ+qPLZA#qR{@F}RbCEL%kU3wLJ#;ac4bg(z>TXrP9m|Wpr zeI#ouO@pDA?PO3Ina0x5A8mhPMuFPdGdURc_vQCktRAm0WBO<{ngWAlC;Y9~y`jw= z%%Z$ys-+!bgNBF%TuEyg*IXbh;)^HKsv*TUhkQ(im-L5+k-yQffLOqpfXA=pTW20t ztb3ECO?1X%O`*AAG;N$bWMtqx3kv+9Eg);ltxDygx^$@Qg#Te9(y56^HXz}wr9k0# z^vyiAem09)wB&UN1Hi6_eC>5;!CBe9RRqBqn`>xrmGs(s2n$nBL_>s~cstmA^ZY=} zj>+^b#U4M4={;mQGFg#?NrEWUa7TmeY(Gd=YyLimdu-a&4U z;ex&LHZg*OHUyK8c90Fg~ePg;xDFXs-(Fzm`yN%H8F0{~{or$nF`7||n7tX^<7R(9Mum#h`Bulc55D7d^*<@ww{75Wt^QLtKN_~23BQzirv+XJJJ50Q<_!K zlYv{ab%aGw2RrCUV1TZTXoARAUtnd@0Tf+ZLQCAPEvXRXq7^W{Tx0;5Kmmrd0W;2i zgT#v`KxGaYFpOpw@_VpW8jI(r8WHg7G~*oy21)79$VYhA$0DCjpOhZxGF2VQpPUK2 z{`>U(o?Cb{q%^zy3k~0!U5XQa3PkgaK48((@ma%`35KYrQ2DMpDNMV%HBT#M5DpR( zuoL@zZet%>%l>|p$za3*`)X(@*8>ry1K7&UysWf2E1SJoN`@w_0B*Lq%*0$Qqlqu6 zQ3yM+6f8=dfnS`J;tjqPTBxCcV=kHpZ^|uHJ+UALW~QZmYe6_Y`p8O=I^#X(5ff0mfe^7Q!&HPKb*Uf-)KrMhMNX$9A-v@Gx%(^p zmx@uZF9mpOhg0T>fRX&L%+hcMg|AlDJSIhPD2f}YI;z%v3yb=MJR#L~3YrjJ_r+#? z?2+Ml}`j9@4#5(*CH`N&rJQ-7`@ij>+9)Q3jru0;v`QA`rka z);r>XojG95{DsuewG0EU7D~41-3uSJ4Syyw1R-Fi9gYVmNbv)*(@^-LIY%%A5h}VO z_O)I)i^)|tECC}&(rbmpqgvqOv@nH)# z@v^<|N+hL|w$r3$tZY&)7a`PncMDmatsy%4ayyG#Z8nFP5yfM}+m%~~R00hd%;u&` zOs^&U3JXp%#yt&TeyGfXIy9JgjKwMD%b)Gp<YZRtP;npyM15qYdj4L5HNgnj^#x8m4TD52>2qbotc>4jyHyAymX{d@ zBR2`aMHm@w{P#&S5*T+0ctwVo;N&KIPehCBc?$8+4gf00nZqPR0I?6hO2~hV5@P{j zhOrz5$1W;*#XU+&TfJMO9N{A=d_vD+kD`d5jKzGv-A}$pC-y%5p2D*mNBH@LPhX)r zSJZd$aPSM(@))08F+Mw)nEUt$l_&gD9|JwjXK$jdBtq*>7c$$MmSQRzRHe zJGjLY>8!^9FW1?glQ3rG=Wpm}g9{{)((j0PTmyy`O_6Gn{;i|`b{)@Y0sAKgi7{>L zb&gX5*7Q0$gulbpxS#q0FXqDWL~%UmAYr#}!l@X!S$h8(Gz-}#b`Ztr{Ryud;g>J? z>H23XcLfIDhPJH9heFI;2!18Ldd~?bhEOI(S~FQDeyX~a2Igh?KJqk^%j&L%qhyzK z4CvAd0=vcvd??iMvQiC~C=7k!uOvODrux)oW53;yECt6rue- zWX9Qk-4Bb1jQmcitw#8z>pC1yNq(R>bwmRa(?(57T>Kp`8a0y{;LR%O$UmqgLWqb2 z{c^TbV1Vz~huOwPs*iP3ghc(t23#z;O^xTHhG<(R27xHfk0dR+Mzg+U=q4?09AkhY zzie24X)TqXj-bITO4?Gk<4XuF+@9rL!2qD%`tfZ%@fOS7f7fiJ`;$f``QHuCzB1S| zh|}Rn9*$eHpIrvqM>PxAAMtiWO4YJ#e0H4ZaG?cK;4@b+VT;_LeBwK0_Jwg6wrdas z^8&#lfh+qI!y&8EyY!oEo)g#lXC86~d#h-Y%#W@x7*5ctX9eY+EF8o|6}&d!kjS zJ7I|36bH?v#S3D7@|1wbNcto2bdD}eLpB?YrJg>Q<%t{=_Na;J7Y^y;0a*+b&6IPW z#Psw2ik5j*g*olhr~}kCUiA#;SYV zl%|EMmUrCbysYa?e7etUbI&>%J)Vy9Bob32bUq;U>R!;~M~c=5J;CW$xB@*vVCDDT zwiz@Gy!>#Z74!jej#gWBqz)R30Jz=sC_!AGlqAPsyj%-3Mw-_FQ z`3ovT8S_hOT$IA&&`6wgNt8&uXKlys{pg^ff;sAO^YNKl5SAZ9VToh}%`ZOdW2>dv zo}{gMTt5e;?h*fF&DkaCsZAQ4bPV*4D;$1bvLO-p66byvQ%+pOFO3WbWl3y=m1Y$! zaBt$yc2b8&m&t6tm!$Rhsf7;l06Pz@Ilmf{Ocz`u_Iv*GGFn;uQEB2y&J9oUiZkEk z{yWjqHsiMt@8cG_^Ipv&{`aDxxu%B?G7pYoOgAGdJ#E*$t1BJZHyv?oC;kE#roEIN zMDykfRUO!UuROkQqj2nn#Va9l5 zs_6vBZiL9L81J0;>0dOVf^Omb;(QlUKe2KuI3-rua`@N8-a=MRkAICl9M4LU{4fn2 zgY4$u$i_MXHs)`Nq`wCzb8=1}?J8ZG0sDs_A+E+igw(iuwZDh(u)}}H?kh$OecXM@ zDEenY3-#>c5}*3=osVH2Pf&~n!fdqhytvQB0kPmr^mew=HorOLNE}beDH9nP-zR0( zIp(#oWZNIV%)don$(r_^JC{_7cb}j zsbwAZvG?=y>z}Jq|4N`EuoHxb5aI5Dq#pt5IopUaZQu6OG)dDneW@I@Xn*X8ulR2Grs&VzFVjmYyqh0~@&_Xp5bW3m>dTH3BR zup-aKawAA6Pp z#?f<|Ndzf(P*G`S(d#FFG$g2UA!FKtbMHC3WBuf2Zu1Pk-YzGJ9h|FPsoKz8_3u}d zNOoN3pg+Aq&xOI$!(&~&e;cA031Zn?o0)Nm){ zVt}hrrpa8D@m0{%*)GIoQ5Y$A_Wb@T}Hdg6Ha z>xbCbEYGdN9KuvieLvSz`fgo+<2HXHNfbn|-*u_l5Y~HupD*$c>wOFT#mvl%_px@7 z+7i95ql{eL5>vJZ922Gc^6=q2_Gg1Xx6ekOd!|9%?`YYt`7w#p`eRBzzgv9Y8^M!H z%KY+0n2Yo9JNx$r`$Rt0=LlM*I0pmgz+X$CG$+%qt1S|~T1*E6H)Z<$}TYmJ5 zA!>2*sl$FYix()bG^rH-Q_9ky%Y2GD7++fB+eUGx*B8=}fz!+@$dd>>QmraoOVUZm zvm=<7&c~ak7Wbpvj#wia&lhGtiBFyW*6uotd3t(MdT?GPb5NL?Y}Y{dU3q`DHoXDW zqoS@HcL<%ov-@sJXjU7~#{Xp?1z)f|n(Yw!gLBsl=4X)U>y~-&P(8q9Gt_%~8&V^F z(tLZ1n4Ou)DF6D^UQ|o_hu%xwX+1rYiD$>}L|uw2L9LrWXRs3@4I6o}qgach9e0P4 z3k9Byz87hwKP~+(1B*MbatUB~!^1|$<>@8znb9On73>?|F^0Cx%SW(}ab4_v0AmUCwh%d*fM)a$nrTcmOaK<-pnKjis^Nd49Oi7CT zM)VH_n3%S^1{3^SXdj{uCK;AEe;>CpFP}k&oC#R72=OvMdw(FDUU*hgt@>^D*fW^xreT{VweEBvhZJxs&0IGKtJeoq#m5jQYY>>mXr(P1<;KpgW zNEPh5dSdTjGPvjMYZQNMP0D91vg`?K%tL-SSZK&+KGSIixBCTAa$wQgEB%I5rdI z_j|V)n_~G82n-Jok3Kn}PtCt+(j6^pV~FmH8o_@}APwU|qL=BEPvp`$*sZ$)XhglX z-#6F93X=ole~BZ$EYi_?q`v*-i-_e;yf8v0DRI^G9Gsk-^uLHAo#<(U$V$7f3RzF) z1NRn#`O;R=LzcU?U(az8Ei5gm61}+yEMGAwRcXlo1+u%wfOl3Ts@GJae)p}V*SF+> zP`C~)9=nhINqpCEnVj4i3A>mW(;JiT`{yDBd{%`CZQQP2a=(AEKs!OJJPUPNJQX$S z`E0x|{Uf{`-Z5vg04^;9Ljk$6n&z2ZDwEFadhqj{8t7+iPBFApBtf>8r#vWgJ#$GI zsO&xJUfkZ;*qFDdtfi&3QLO224fuWB#*`%MEG6nSOL1tGl=_y zn+y!IT-TWo{@vUboSCiIBh=?>nRv8!= z_;XtOVyJ%7VU|+i<$}8Q!32eJh^N30%x@v}h)>6f70i-4Pmw4d%;GbS6XV0=93?H3 zRy|HSnjcow(uGfIb&6sMPMvV+UqCxFv7KmKi9Rr|dmOWU{`^~s!T)6|2&#}aT`kJ_ zkaWujq^8KB`|Yk%fnsZaIEn6WMTus7Ru^wldMiL}dQZH?stuX!XT(cyZN69J)Pn?y z`Q+r}@sCj0M`)i_%7r*vTvHDz74Zh>g_1L1P#62$LKa)##ZSyNc2fuyDltM)?bC&> zjw@{Z4S}2vIost=(Du_^sk47fHau6MAX$qmVdJ^=>{p0iS?{g?wIx(i2()r)M}za# zyh{#gCld97Rtupd-u#`Prk!5Wv)*Xj!8s5T6v*IsZnRi!?Q9|^l;be&W7a1|D}05C z0p&RL$!)h8sDMx+^K8aZpCY7*p)!v|JMin|+GEBAfZmI}Sy%(-TVrDJ5WDQ0*jQ*J z5lef5z{_n7??;bL`X9Lx``ojyVtowY(a7XBmyZ6$SZW=fBiA3AWu$%vf^bfvCJ74+LxlOSoON_Vq0)@KBgQPNEEL~huQJjnP0KwzqP|T&?s+oxlddtTXGAKo9%_el&4<1-@s`C z$#JwvpK`re$g)aRj_^A!H2ZSd$H;||CtbGVa z;YMthZpyWjY0aTrB_jK_If80Z*+A34V4#>1o!5Gli}L<4IPeKhzwuLoNB5~|>gn#C zeJ`s>0A%X|w}|>bfRr@?89M*idBUQr@_+?o0EmwufYWc)|=Z%JjIhBqb#f%Ub0=o1~-mztlggl z%m9Niqk;)HCCbuoZVuk_HJ$`1t_&iEK?X{Rc^-s{j7iC`PNKD|BNlc0DNO4Lmq|W$ zQALKo`k$J2g8yy{45Y*Ho!MQCA+8_5NjLU+$%7N+QBISUJDy8vcgoAiNSB^y`Sqx% zC@mKL+VN#+NBV^rN7Ik3s;bce)Y1oMSZI;}3J{}PnWM*bp$XZ4~X|Lo4N?+yFjd5Yz`v6+ug%@bsJQYqnpR+Ao%GLtArcw8n3c9!4WWN=re;2Y3Uxh!C}z0HM=I zv2C_7$L%{|B=SOJWkXzS#@6L3eGCmXJEopT)#>!tcbtQhv$sCJ0BhxxN10?rXaz*- zUwE0q9R3CbjkM|d`!VltL6@@dIT@^?Nz9%Wp}qT+bpNpt3(ss-rW0Ky$?#Mvuxa)< z>n_fb>W6gbA`|xJIl-;!=)W<8DqN=b*A`>cW;3?#2@JZM3QY0?PoX4TN^p7-UEoxg z>W2}H=tHCai;I7m@--PkZ6&L|<$R$|pl=Ko0?Xmlk<*2czjPa?9Kj>~?9hOnblj>c zV|+-6i$ui9M*#=@dUAG%M5rub@>3n z*#8&6vrxn)ae^sp?d209qZ+(9^z6Xkajkkq81kFLm;T?F*xOBkkQWy>SsM=?#kR#Q z07{?Vr=Yui7NF_MyKW0D<%bpREGVm`kp3-J7HBpH+y*-4mA@p;{oH#m7`rfHgF4Q((g zKDYpeIOD^12v}U8oN06y3tTh47+H#9M%4NNGGJ@c9xrC;Uco~2F#B&H4*_1Xf?8-O3|CH6bucCTs?o2UIn zwNPBaSLQ(p&Ooz66oq0I{Pqg%r@#Mr`yAN<3(wjAyVkhUIFh+aDpK9n&QBlXq|l>; zeH^e0iN$(MKh$)g}KL9MrEemI1W5KT; z3>bhfXTfYl$ynHR45O5pa z!T-YW4L0I+amG9E3b1VcvBbguX1UFqLi)i@q@l6yOhOwyC1q(9pv>*4wf)Vadt~`w5O=jHq*BW>|q%M3!i&t=HFf|Ad{JwU#>Q5Z9N~0cuJkfi%UWEJ}x@ia{ zRri1Izvc;SnmsUGA+$i2sAiIy!TCFCbTNh>(+xI^7XD>K`np+^@FMLsk^ z!hOwS1RYa^%R5IFPN6~612^-^~^ll5ZI`T?cb;{!B97Ec!Wf(r3Dulhn1Arye`%&oo;xl zMyhOq^cT8Ij_EdXEIJ!`a;5L4W}fScY81FpI=-9!GtKP3 z^VrSMlZ6>K`VAwXeQ2Wi{^pD4KmYkt=ryqJEvzyPLi?!zr+8D=Uj}fj%v&JDAzs<$);L zH3_HD&emv#cRGT0d}wg+xf+$In+qb&c{dLS^;7&a67XY3kxgqoEWZ!z6yE= zEBNj`hHIJMas!422KPh|jGf<@a0>wJ(mO!3eF`6;oWvPT)QcZM1w+S)iieDMb*=Zu zHbdj+2Cm}%*I%{y$ge}dJ5Z+-OlV*;|Iz^oi6l9SVI(g$0u7E8+1HHPO4uuVlZ%u4 z7?uqlma8cYf0^|gEb~*bQMw&2?%pqGYi1U=LB_#$9C>9bZ9s!c9~LTBW@d*nH-i?p za#&1lWW?SX6XmPA=Hs`!|DBtz0C<1Y@wXj)^$|4YL)%5-&syuxqAojee;@VZ?1mcO zTK*e|0t#{z$pJ+yklhkBWoKr)D^X^U=McuIPIden0Nr6Vce=4Jk_)oWzv`EXmJvY! znfNyv{17w7;5dFH7rD;_QdD({e|*w&mvmVJ zS!kIdOJuoLxu(nlxKnh}?MpN(kF9BKNNwI0LzsENBls_~iy=FJNhA6F@6w9f^%vVm zkJ<}C=)OzGW0%4mc1`*0nuJlQ-<}}^paYO^t%inJo*?NADk2n@<_`^OPIFhR^Dbz> zVm@)~rhw+PR-43SUyi2&NE}>>of`sdsG>->Z#!ZW6|g#@46bI{7!NAP$NhgIz=OIq zAyrKwIcPbEfgBw(hQACYb2IJVfL})cU3`8qj6Me+uVF3&R()dBP6jGdK6rjMdOm`9 z)rJgyAPrWrBju7%28oQxcX;zN-m^A_nMy3w`&-9E6zcOznS90rp@PKX5TVFhu?NZ~3#O7#GC;O7Uh#_^{Dth-0k zNceb6ya5HZPQe>S>=wlNw%p(QfKu7Q{if$r+UiZ<;?~aZeBy=v*00BzMAiF!4SRxVqh|5bb$mk|yF@_-60st9B8T8=V%^A2*)q@c%nO^?dP< z5F$bwr5a-QDg-`vzuFlTbH(GhF1wmUfKp&qt33L^n}V$+67ohQ)cN17gFS~jQ~%yT zOPChp<8{@C_BrE?#&!~j#c1aV%P}N>Wy$Z(UI>@!xeE@?hpvy0K!2u|++4aBsn?f3 zKZxoTf@;jenkj#F@?sbJY5e!`VkPg7WkU13j@quSRZag9570>iw!W}vFY=9vZS+w2 zO@fl>5>9Pw2##-fcs4HvcsszGUAQS!fI6_TQ%CD{(~&C{2|IIzD&R(82jQ~X7L zet1m8c?^~4A}A={9TSn2-~wVW--E9Q-h*P&oFtJVNM=d8!)tLIGiFH%oH>PrE0?_) z?4nz5T-E|Q5Z1kS`4=aa=2~efJZ6|3~R^WJ}skOa- zZCMx%z5k6F8XkoC8~&3=My6i7jBw_d<4?LTU;e%JUd7--9X29N#*BLd?Igwf@;%{jIeBw$5AH6u97uF@T z>=DFIF-~>xv*C!)$IHnyWv@9+`LzQ_rL_K6;~!Wcww%)-5Y#^w?39Jm0ujR{FfB7#rDZFm^HQL9H)cexffnV{X=J;nR$A?$UM zCX(LIt`HREf@Fdxf&XqRc~bmi+uz{M+HY2ka&`?|1!5aFyEH#n@T?#g^Eg&vt;x?u zfO0VsfILuw<|8bQ)Ya1qq5s0uNe0c+{H9-#`Axg1#d!9c@nYN6@feKAB5WxuWQ7dL#q5@zl=b&K3)Ns&V+YSTBP~rd zi-m(ogp|o59e4c3QCv$W^K;<(DaZ@h0>~?2e(RJ=VCUmBd~eU)#J!h~5U)X+f<@Vf zRwC_0;q)9}evK8vIg8o|5a4YXD28WwABq^U#5l-s;7tYNgApS~uj(sspNh`*d{nm= zXVqQx{bAe<6z4@w&`ASm8ZC@K|44cSQ_62raVO({N6U#D)*Ec%b{X^ulV<1!Bwu9h zEjE3o5ctj0_ZP*3f@&i~SQR-W9_LqKP}RlbrdU9ll=}IzHYeU9_~0KP2UP_2y28kD z?R0?F`}kpkPo;96)~$Ml#jcZPn@!*LAmtO#M(B)KC)8O^l7KR(@yW}&RwUJC-=PcVU7qNmYUytwDT`N#~7W$ zfM=iELDJ|fZcX7Vmhf~DIXB?RAu}cQrQb9&)L8Xch+@Jd62^+x+o-m4F`BMys<`}y zdfVZB`Xx@gcyIko`$$Jh(UfnsXzQj96O&pWwwqJ=DAJC&)_ z`+cT+%sKVswTDV@@=ahAIq1HN8{GlEuUW0m;gnb&|TUzEdPxrZ$&7wf5H(kV; z)#5RJ0+yIRo&X%Mxz_#4#peI!slN7i+s+MWOe{KY`zqz$o%Z;e$oA%0@&-ZvUP6wo zWy$61X=)k8dg9{x*DDo)&&JNC#oZMC4e4%-KyFd{?XI%sU7oC==?ao#c**9A`e_w>rfq0j7?&Hxo)tca?3frH~3U0#BOkC=qD`&Z<+V~2@jE+O&{!{ zd97HWi+B3%k)ke2IGS1gA1#7f=X7W`mQ*ni#*l)h=Y)OG)%DP8J%my8iJZ4KbahE$ zUhsiB4*J$)hwr=kc%mJq5!vnAjn=%&*ls-g*PryRinLewrW;KQca$_KAj85C*w9#U zC2tb0dv7ugDn>f!oy{1%cZ<*?^#U0q?h1Ob%-B<7*60!Dq+S@Afb{C#Q-ug+OchJg zB-S^+F|`>iqR`gAgLQ(+jISc-=-XK$io+*~WM^b`gDu5)`mBn=E;^V*fbQcQ4oMt9 zIeu4$h6a@%y86r^Af;2FIv^Qp77!APrc7X8+@@6@iv4i6w=*T)Tz>cl;X{o%$U`0a zi=9}l;ts2*og>JxgH6`o?&oFmD+ON&I$(ZUU2(Zy9TBlidk~E-xp^G}qjAW4&Q8wo z{xNn;o>VPN4z=44GjK;%D2y;aqe}9b2A?Dz0JRllwM@WNzCiK2%m1sY6Ouw5g!N^~ zCYfBj6pJX1+HCttPrZIL5(53Ils~z84siPz@sskGDd{L>9{reE7*#GD>FB7G9*vnz zSNcK!a}t2#&cqXbWUEzZxf4|`Xiq}_`r%c;#OuD%Wc?Svu@nGI;#p$0#Jd~MPscC= z^J9q6{KgnISv);C9rx+rMXYDWS2jA_ZVbFk3@O$zB6$P8VIwKM91WtJ9VymfG+dqF z4r*>Qc(7V<3i(FTP;VM7$3{>ZkVPWenVt?rsl6qHjJG5)0Lf%y6F?ry#yd?G2gv01 zb(a!>{f+rt$<>@m(I~arqlL+J!1br&Y|X!Z_N#lId_5{}Sau3+q$_E+vjJ2b{DI(p zc(|vhB2qnQOol6Inmp{cokD9&VdX_a**fW0DFy#ec)v{Wz8>$-SA@MWj@8B%G??2n z;OM%Sy-hN<#firpTKQnKn#_}D>ly(4oA(qr9b27K#6iBsj=@0R0m1{}QM1|zxRl4L z2C8SD_jc^g&nU@B?G39f@3UR*}OF6W!g@fI)wllYdSZy6%dt z?5uLHTdL2EBE`#|yG3&(x*E!T>)u(+hcGyk{%zV2=LnIOf^wTdZzmDa zq+UfTNbNF`ddBmanh7SQ<&-$1$l4mHQ&;#7_IN%K>j`t^ozf^5A#C2r2H4z$I@s~-2O(B*uvGWKys%0^EM{(hSk+Y zf=ab|WTNnP48tF7;E6gx9i!jT1TY1k^?h}lwl!GcwCXI&&(*J z_b!a+y+v<>=)ITdqW6~QMi&H;1R;9wL>Fa@zn?%ti)<$Ux|e}6|JN?A~V?2=rQcc8c!`f2^~$9#D=Zny+eXKsVg zK}hKBYX=t#6GSFC(Be$St{ef^mFgQd%)-301i_!U6JGS zZfT$CM%0N4@|H0{CXHX9vtz~G`s|B&{nWcxp6^at+o;*?lQ=6wuS-3V5U1FiB-OB9 z-avpI_IsV(yD*_Y!wgx+2e43J_lv7dySyj7NL7#Rn78Rz3f6x)j=c?k)ZV0h=_XN5 zPjzXjba|2;6e)z&K^c#|Mf%D`@V{p6ew`GYAx{N={zA)}O3u7l%CN#mETPBqI5ou5k& z=X_@o3C4QGZnL!N~EcqpG^{a+^kb{I^W6-^bIFj_}p?&fOBR1q0Q8H-2Fb87)r_HwE*)*fS=n z_{X}1UC~|N5A+0}W?$L<+blo%71JB9Ur%Mm!_`aEEmwQ#`bVP=Vyf08h)qp_j{tKn zSX8i_$`0ab#`bSL7I`wCD6m#G{Mgo;G|P{7OH?9&FpJ^6)z@XP0Z#N#z7al&eC(Hv zj#d&Z`-^=vvsLl#d4ZVY$2wXitK)2Bi{Mk zsGv%7Sgj8}u{n91`3eskzH{gD=LXuKklbu3{XGhlc6ZEm!gnH6OT_^@wSt93#`HB0 zq1xD?28Z7_Om3@FPW+c);ih--?}M@k@I;NQz!)AU8e zn;{nRyaK!OvWugCXEd}A92vykJnRqgeHrKPIolMh{_h$PhhA?OG0e_Os>o-MI$NEy0v^`?y?K`fUQ z?wH(DZ1#&$yo@OJb;gd5c zNo26tStVVs{q0n0DI!>xV`yff^w}|Bv$}v>Loa0KMtOSHjF`Br8I{O zRWa5~KolTq(9gFpQ?|(s?8KAkaT7IoEVhj#{+yj^73=oLAULwyWky-rE*Do`G)W-8Q5*F=Mg;k)MD?2kuh%2^y`01cx}z+qd8w&G#=;9_cC z28j_%h|5sl^-ujXXZU1HXg7G09De_u5E{xvEdI65dn;9O(WJM zC-!5WCMBm>Rf069CpQ1_hwN(BMr#Y*1x8&=O-Tqpn3oZwHYyKK)N^0AY?OE&+5ZCm z$VQNq&6j#NEks%!z-=inLuU^tuJdYxllwK~@^kM3nkE9UUc7gdIy3&w_<+hjL^CMn?@lFs+_>_FPwBTU$pCWX4v zM$*itbFKtAM+^YZ!9Fko{B1b@2_rqR+Vo`xbQAWRYzYLgY2oj#u1s@>Q0sN$x4|cR zmU|A_I~hTdQ|>_XannCz8ifq32gt50eUuw-d!efD0ZnCc^7;{>nU+ zUqryx&69)oz1*pc56>F|z07IKh(B3|AKw85;}6-m$8BH3C-;G@WeAJ)&lfwnFGU3@ z*_Ga7ed9lTLNL|+2vNHCwKC{E)!m7NZXAa8ova$wW45kK1rBSc!iwoD&m&so^NVv} z42+cIPcE>k4$0?&RB??~KZ&pF`)fqjo)USEPyBv(0t1=m9UE_#?-2=#LZ;oYhTh?M zLgW~jvCpSeRIK5*Papu9-8{NJf0yOX=j>Z!IYHz%P#h?*#}7f)%#=+J1Efs|b+^&t zw)C*J54_4zNjoha>fUXD_sND6X%eLoD;foVmn9b=Z@1EA&4Px*GqZ$uc4N9C?6ybE zUeO5WsSk^=mT6UM8X9V94U4d$^(a1a@bf!Gv7@oIO`NNI9R*k(wOkJmlf+m|s0t1z zCF@oQ7cMz1IbtR86tH;=z=!GhLg)0tFFjfK)xM z8o7WWLny!rd~U~ePlDOnVh}#BudV&MKf@&;lQJqPOvpX~LcA;iI6_>wHS>=Fk(XO& z(@t31Ut5Jj;;bD^3~dcR44V&`)6;h9s$AB7E~5138&wk9z}xGUVCWkivY%m3Uhc^8 zN4NzZ%z!CB-hX@xXeKED%||UHo1HDX`qXT4EP$d z_%(q#ky8>IAL>G5TQdp>{J^g85I|IE0M6y|{%k+FzFhi<-`7?zs;{IrH-p5T7PU$<{0JK-4zA->je=vG|^i5j+1{6gY*Ku|TQ z?hNUssF>xHv!Fasx;O6?pnczLBq*o>RfdLQ5?cO-G@$uPE{IW#sAd77O&pm) zgNWymE&oa~$NW$IJ-t$vEH3=$m7!af8|nR$_2#0|(&msw-_z>0zxVif4{e7>hzhw4 zSHJJsMDvT?D$YzUsa0naIF?B$IH<5ArG#HQQ1#k-J{)U@iSpOcuS2)O^7oc^e0MJ$ zE@p_WswYmC(mn#z;~?BE$0SpZ9m|4jyOM?%%+X&Bl~RJ>o0yb@h{$6xQ^59x1n(;& z9lp0kg!%DB#Jma?i%#Vr@i{;s3zGbL(x=ph{P!-u1=9~XDHDpz1-IUpjCK{iP~y{1 zTX(HcMx!$Il<0 zk7fymc#u2==s?t&X4)d=&wMvJbwSjJ5b_%$8iCNUSX8F_q3Qb~FwvyA1p>iLTbaAmZ?u(7E8O_yJM@lqZv zaKn=D6Sbk&tp;iN1_2YnNO7Ypu|gz5$#Bcb3rS#qcy2kq7dS!;e~Gc1h1R|Ili%BK z+w7|%#lMo<#k1f}9V0DBUE#Od$P<1&NuMPfc`AR)qWTdtg}ZJAggoYH_?e1DbpP#% zp*}#=FezY4SAVmt|d!etqF-n8zTmN7)Chl4acz!O+a{lyA*(kNwG?zUHoDAV40t3fRe! z)A3yK_uCXGj%zwJLfKvD^!Nn=`JjcB3dGLq9j_h}+^m^x29nYoj0wAw2s)j|hsSAleP=?dh?Z<~@o zpg{_g2@Kddd&eJ8;$6;99SlN#VOIGE##x(xh~_k6^$ko~ml}8CAKs>^gBa8?#ZTD$ zZ1jc$39XnXm{YTaZw+zGyX8FouqCf{1qsIstKDe)&h)*u)PH8v#nZC~%4QZ+92`X* zo!s;J0}D%(YWIlu{?Qz+W>j2jEa1&Z)6A_a$#?D>d)L1~&J=}^u}L}Nn-e3Guzdzj zV3Mofl%81a0)q`iy2dn=K@oND?GI1TUPD{KeI*N}@tUN&C{HBU$l!6IB3@T2^9!d8 zw;sC*q6zhlIJ;lJb2*8=!!+I^lw*+a-RgPfC6oJbib-4xXw)@)1MvrnU&rFZr4HW* zoYf>{o`34VTI;VnzO*zlVN|Glzm>GH*Q4GbM>asEFc7CEd*q>@)CH$~; zMC6Y{tcrt>-1S`>vJ%3O0BQx3E>1$D4VC=PZo99(xC97xK%O_*)aw`|En#koptG$N zJ~a4aOH?sGBx{CdX+!*>dHTn|PXry}?TsQsa<^>jdVQ5Vx)kla(wi%e>n=(P43vme ztSev_Bo=N%n1mfjviB<1eWaGxVvUxYzrws|$F!ji5AVdB z(QA$A;EV83+73{=k=*eyu_QNXBUk956sNk(kt9)|=6SJ+7HaAtWTn9+ZT^&|!kn*c zl<~_Phf0KzIts=sL>Uw43l_mg<6D8a-I{A7P&tnflHpqR2-P}$MeATqj-Eq?o@2V=qEUnjq@zpk-`RT>dWeu8zL z-ynOcA4Q+u2wa9Ve@P&?8x*_utVvD^OMrueB&0b}Rl|6sjv1NQObG&!*tU{S1`&l~ zh;sCkO+M=S6S6+9iof6x8YZ!t)gz~T>-qU_E3rG8a!NXvEgUw+YBltM*Ou_?O> z-mU!lkOwYfH-M0(KaIW<8OPcNA=9PbS*!n&Vlgbx#p$XW9LL>ZdSzrU{ki0Dv+mcC ziF;i+uHUNtD=?$fJkHAlvLq%McKrK&f2mQ5UDxB@#AO6k;F!qj2N+y6NEa@ z(jh|V+B*NW5($x;I9)rnV$3Ttv~?3l*W5qHzI8^+o6RzVS(@+cE{|<_#g_dI;xEdv zi}ue{;!ecY;scQC=dwzRcx}u;2tJS+fQ7ghtdH?{XGvOUh=^NTkwRfVs*I-r{e<+d z!9`4ynD#KOUjLVrHBN1O@L*$1NG7ipq>PHm-dYfK52ToQ?LyKejHf{Kr6A}}&~YRG z*iZBU2lMwv z#OBo7?&kpq5K|YwzJ2>D$i!RMdP-?%h)bm2rQi|wre{3*Y@V;s3+KJ{$$iCbUhd7z zM*PKn1JEA4Sn2&f2&~Ip8{BUuWCC21t=;ar&?a6#PLOLHi>ZL%LE+u4T-d>!YGkNCw{#00X zM~6$Xp^liE=l&xcpNNZpBmA@9{~HFnka*{yATTYe`x zh+Nk|r2)5WrrU%2N>@kzH_%ajoyFBbxjwlBYtR>i^ciVRGG_MQ0qmF+>;pN{OnHBC zaLRR5dpB_+_kDheIc)rX@hU(JKw z#Ekk2mhTe7q_XAh5OxU)qG~TK6Pl}iHs2GB;`&y~>p_JOaF91uGkUK^(#4xdAjuo0 z!jWf+mq(*e<$O|_Qt(mONt9qR@VVh@PAfpkH;%e3^3lbq_=>&ySkUftsi7~YudX*J zG=a{0?9tIsfbh0*U-V9~3lzZlMa5qSP5>W>Nb|*hoY(J;de-L28d}y!cSMmky)*1g zw@S21wwg)1YCCUsp%cYYobDYyk{_FXbn%EA+0o~f_EYfg4Yc{b!G5QXXf^1f&12SW zUgX8xoOEyNZimRMR<&`xOYn=|du0yXc^=`8-#*FUQ5ydZ3qHIJ6LuU|H`dH;eR#z_ z@@#}5*L!V;=(W^Y(+#6DclXZ97xX?!nMj$h+OB#6nF4#ju{6P?n6}(D80In6Na8dc zV(T};5_7LO`oPEvEN2iOk~vkyCpwKb4b0{H`hcie@SJVSf&O*FN562rpnC;{-^>=w z$oq0VvV|U*vaY{-Qd~sg7kLucJrNK68T$<8tq-ds#z!|(n{F5PJ0++P&x*_Z?Y{T* zA_RFS$}?#nyu=7{S{hw`9%#M(vhA+@>saE*{{xB`V6(IL93Ke@G`bSaQ#s-v+T=qG zo!sB3gg@-XWp9oC@@pgScO3oLl^qkd{hb4D^ec+#)-99LWItsyK7ko;sOx znsl-^e4*Bpg0;69jZNhFd!b#K3mFl#938@czka!`Q5Vs5l1|69^4b6AXxxbB$F`=` z;i~KK;!KaDi2bHTtfihZPvpUgkjh(?TpJGn_fTnnIXYbZNOWndN61~*E|iN( z!tCma3Xc5QyesU+T{iYpvZF`{vu}uje^vH=>J^GeMml^4LWtfX;JUPlZxM0#ooJ!P z<|VX~ugdd}2Y%O>Af^fX;22jy35Bt?O0jtMa&PA6gY6#O%8B%W(T1TQu0lQr#txN! zOLL17^H9yF7SH1GX{H~~KR*5}ID1&Me)e@<$GvlF$l!&w zlulmcTC@`kim0m2*U2p(F~lr(X#TJkL_j0dPC=a5@TWX52A+sRTGfV3QzPvX>wlg| zymbY2I3XAG+*}7~BCw@T*n)Jb#sdSI*9B&{W8W74%fmjo1{%(;|CUeDymuPE0>a6C z#^YAO*u6D{Ug#vuC--Rb-e82GP@rtfVLPgeR>o0$4 zonnS3?cc0^3JrN!GSd34Po2NZbCw#bOrnI^Vsi5#FW+$w~xt~oqWT&Wo{LMdZB2XUvgE0E-&8_ zWuYi~`DXr97ZTX}?o~XdKFjfW`qq5bb;E?0=Zd}bm;gqLKoPHyp@WOIvI6d8LX>*b z)`dB1j0}wFF9^qj=zCCC{8K}?dvH$7XOE&rc4MFRBD?SFoCa)+lh7{#7CliE5u`R^z!j?UFD8ve0W%nqoIpHx-hR5`X-EF*lo!qMz%GrD( zmvklat@Xc{a1jIF)_+6fyeOj(`6&`guz8&nDPaY{AAof7r%|XIQiso zY8M1?JEC83T+erdwmm4*xUl&k6BWU2C<9ELDNb9xx3n0>JEI5M0C+^$(%eMaQJBTE z|AI_GjF7!8C0%p@^m!UPkQVI92qqzO1m?OfoY{abK7$rQ^@@m0d;bo1#!b)eZVCy7;{5dArcAC z-Z<-n_S_P!OmzIJ%Ljx19)r(ROeH~{CU}#Bf;Yj8ZU}&i7j3b_`;y9ZDw?#6qF~S& zY-sn};4`2V>T*Dz%0YtxMam*0ZUEMal5|7G=X(Kgx}C>34O{JMWH198L>Zp0UQ5Ql zHgTAhf}x7pe$pwfuKv^orJE;9eSqac=yCoG>bsfTm-J_dC-T5TD1XDZ2|0LQl|px( z0Yaq25TO|fGG~EDs3c^5c>1F1ve`kot-f?Vo_N~r>`0VgTm+NSc>StM$9kknI^s1E z7{k;UbRCyKmGiv9xjv`%g7wWo7mtzJ!i%gWaP!3-+wP|T*@)NJAaJua;wm5NvFLQ$ zO089m63#S4^ytrC7{_LGJJGe@g+PhdiZGqsqJoPwVxcYf>{GcNq7~cU>A`1~hDp7U zfmK$!8SBs70~_@xAD$sTfBw9ixDiq{e?RC)(bCzXA6cuf+3FuL1q`j7+D z4i_Hcs+@lMWQ@_gjAYIDWdsa|>#lD??>5yA7k^S3WNZ?jUNDClhAJ0<*OIA+r386D^Mbc*zUYbY}~mmb>Z-86J4ExP?B^MaV*l0Z;~G*>kn> zF6ePX2HSAyzLX3G^jHPaopll&pX$zUMc^__YZDHdo5twyt-c8m8n*&9Y=I93l0Vm5 zF}A8AuHITB($k*5mmzig031m_$Yv!s82~&TfSBDz5MA`!G92$Nfl)r>h?o_cY|O_+ zdSKT3`C;?VbD{CqV4H84?RN3SN77-G*)XKiYpS)!+Y57x0yLXGqw1iBg8{i1t!l8> z&>=6_y&RamRjukB0|WQQkxXo8$&SC&pjHC}e=j{D`zD@Y1n{8YJ$4@`7kcYoqD~BI zRYX+X9=`mdCxo)(2G-8v5DuggPLENT+V3_i0FKHo_)DbO)J7E-@O6+_ftt_P{iC^8HTRoFjd&3`#4n|G z+L=Zy92Y}{(Xp&qFz{*EJC`Rsjp6@IG5P=d*R9>rl0tENzj#k~$*ikKv(}F)Eq96q zF-CJ-qrT}LWk^_6OKs~(B{VWFxDUG&r!rws!>(&b!LVzfqEBk9s=&@O=jrQO<+%Zt zPSY{We=unIYJ_AtecZB|H*Z-r zSdG#dUL_htrIT8Ws6d%;U_Alm!CyYYlvJTKoL6ISFq+d83MWs|CW$W$jg4Cm7h0-i z87k}Q?wcwrIb+;t9-k==$SOc-_^x)Vj?gR+{@d^f;waj2cx!trZy!S_8zWN;e&(&D zloYnQh6aRqS`}lKO*T3M#x1X)+BJU*eg%_z6pE!76^_1fKn=0)znBC4C(JFsOz3AH zLrj{vr_~0TGTqiGX`Uf4(Y<*^(RueZI4AQv(PQC(9WHn|RB%p%HSqrSO4KusSiz2PAS$qO zc=Ee~Z(6Pi=&^X5L|1d)wcjAO-6n*~fa9PBfB)`X z1s)Y&#rC!%y26PA(SHrB0`R;~`AT*uRY_|hwu?u#wyze~_I{pT69|**LBYT1--K%Sd3+;mhiJ zWy|y5D5)V|J~uQp6klB7qQVI#$*()t+?BUD`YDw2_ygAmwhw$kI_Zw=mP40xDLQQv z5%UcBiB|&kb)+r$UtTq|wV5zkJ^wL1P3r3AmSm2gPLe>6B`N+e;l-WA{H^zqwKz^^ zOJ~_-vMZ52+pqL&{B@d7(Mv0tquFv1D?=lhPGL818(e3r6x62nW*;zmot&KN2Tw*v zmGVcfngqwwHvLE4Ci3m9`G3{mwm?IIgUR(RES6w2>B)qTB!4`f4vk!l>-tV)FF@&s z9&eVl`He}eoPQ8omV`OM$=O*EL50~Ja&({c33f|=ZDe;lPxbTr`uhGum%2XOpwsG3 zTwL5AXk&s|G_|3|)qf&S#uZ%-Zv5hCr54R?s!U8w{DB6fX3_Q!hE`UdkG8VjzenX# z7AeM6c5*%8R#;l%JzAaxKaIO}6i?8UyCwIiedbL#{+0SpSsXo+F+%my48q^Aa2!>) zumqy*4%8fH%jYjG1~U0RhG=AF-}CbG9}$r-u#}u1t=1FLix;FY$ha>1qwQj9 z$3IFGkLOC2Z=urWCeT1@)l9igHCh;k^UW*C(8~rce*U&CG-0el)N|=)?~A_+|5!D8 zzBN0D8wfFfgen%M1^?T^dAaG2|(Bk%Jdivbo-~a40Cfe&QxzF^!MrIT& z@_AWXd+nlO5gs#4FbH+MWlg zjp92xIs(khbgk++lA;U8MyQ^$YHtW2{nFI*v)xm zTpX66-q^pR%9JXvPkJX~c~TcmIwp0urPLdWcuDF<1Fy*THohih4A9cio%C1)Jluz& zj@K1umzN17l<>_1p!gKK-60n+<>qYS3L{nqsTcUZu}eH8d{(z86J@1@2@$0#;Sa@R zpYWY=ifEsh+o7W}rQJS8XePxSUDLq!a&wSixPn#eV*W|-UWm@W$gM99BN_K;`T47_ zMPv?yio=vA=+mZGAn;!epU;)K4*IAVI_Ev_Hb#^wZ}kn7LnnoXWmAdms0 zscgQBA5c_#`((i`nyK-19}I(=K6G7h; z$)aEA5?nnG5-{-V40{~Ah_)yW$orz^<)t&dy!@KWu#1ob$8-Ng?Cjc8rd$kUcXy|P zIkH(H5zUnLlme_UZ9jeRLzg5WL2}f7lrHJz-?Hz?h z{yI_7*VU=k##Y5>>rSd@DZEBo@m%w(lbl0Ye*9L|sQe2OgyfetM6Hlm5gokKfB0;; z$VWq#$~HDeq}IZ#vvq9loo`=tDkHzFE7A}7ffb3a?dKLzkpUa6MBlW}l?*l)rBN1N zu6&SsdH8si1ho(iKS2t>s6o^!^!Cyyf?TW76e1kBl<=jcR-%N%_btw`v9WSp3-Qhh z**+|45bLxtvfRIg$XgF$D0A}d`BYKd^X*ZZSIJ3RD-4^-H*aMhfl|*Tw|}CI==J{!++xW2YKx!Enx*# zo_zA#(Oz(zc0=zLznM_57nQ8#^cZ80Qh;RU6hVs%;mh^&@X5ZTO{CYxz%x%sxT~VP zW#IwvXqSTv|BJkfYyF5Z^K_`LN)Y<r^D`qQEc8|f!Bfm`!pqb%z)kz3L~@Xk@p|gPt?9Tnbewh z5Q$~AzNNAX>|2Xpm;YW}ww=;!EEaOklfSnuPvqTU`jN*h9jon5P{!m9L@}QhqTrYa zh`L5s=tiTZxBRoRVRunzGGmt}b+io;r|^8f>;w8_8zXA;(K*0^Mw${fNwvemmX9Dm z?mo%(R(pp~xj-^ zO?;!>-(vORbLVP&Q!LiK!pSZUnP;6I-nY*cJd65oo8Q1*58PpDwzo3fN?%H!W$-@B z9=yBYAHjRXoUzw|A;1C@8pK4>V)W#QhEbt?9@OF^p9qx1zoDeL#;C;3(>vPOzYfvm z45LCJ(aJY^M9se*$JRBB5&UoBXu$8xdh?6E&)x~h)ER~LR903h2FN+S6ljX>q}fxq z*>&RcBDn=02mM*j=dsr2$uzS&A$pNBBr$#}1lx`hh=H}Jlzv(K^QeSvxCJb~WVf_u z*oUUz&W50BO&d1?!dj!V9-l$gF<&ga>+t3BM(^k{HRm;Ja?w3dr1(aK1rS$PuM_r= z-nn|VJF|^PjesB~6OwI_HTZ@Zw8=Ss(<@j+a!7|Yh-=+RhhWeeXe088am`x267vv2 zV%K{xq8}A|1iv7gnzqs$E^pWAm-jDK984gK95K6qVe` zI0*6d`p`UIElbox9{lmG86A+Q%g;1byLNALEc@fI_=fy zCB1XZ!|x<5);$(mS@pxc@XEZP&1cw@Rq(kh`^Fh!MC&!W0*>CtFy(4J*V_8#=5+M3 zUHe2#-=2T^IQg16?1{pffL>pbUgB^L31qwh9^B^*CS}SqZ^i(%+NsBXH>G~g zeytjZC!J-Tp4?hM<52Kxib#gz?Q210fWKBcioQVhz+(Lqmu~*U6XXaEJdEwXZGx-* z=;*HJd}ns`@pW8qXZ92_$NQQ zF9hnk^Q@*yhN=9Ok~zZ+79J??>tUZnP&q{nkPLAw9;R2imeg^yYSM`M)g&F3{lxu#+-{1*U_%uf0*767KdevPw{V)j-DJ>iW1pLGC zEY_9)>5r+Waa@zv5Wkr+ zoERE4j{T|GYuFAKku->R;9Gi>T+Rhud#|AIwW23V?exND(FxHJ#d1hQy^K8|}KQelG8FoBq`^)nJ2V$Qc1F>!8siMue5nTwfp^G%grM=@)%>YvUFV3U{&C0NjmOm@(iX^%;V=$QMd8f25p# zTPs5Qj5%e(3tYUP4Gz)nKlnAt-Tz#$uDLQh5z&XEdO+O5@IMf84h9H|!;4V`90 z?YY=vU{oi1WDX?g>AWL9wc!YXXPlHP#d*jD-G7V4qbdu4SI+lKu9bcSL!`bYSgK(C zIENyk$Tt`^*ez0qFkoPK(mvOm6nE{;HU;z#=c^OBwZ3M75hnKKS1N0aypp6J;{a@A zk*MjuEtm!LXL_xfb#NX8@`b`FwI~k4T|>wraL;n>2FK3@)H>IaFg%tT>j#~1<6%?G z0{QCbp{Cw|!lDs7SW+1nH9z4ejS*BE(xs(mgf@-pGJf;C-sM}zJ>knP$E=~jla)i$ zw^GKjLNDfr|5k0-D@ON+c^Mr_L++(5n!-%_T3Y=+_WqJs=$|k;yW0*uj1(G@h{)}I zasSWaChy>>?iOSKW)Me!NIntG9mPD^nulK;E4^RHIM+Yz<}@H zeJO3ZUWG!u1Lnv~-D3niye>TH|0(ipVghRMoFtRDU;K2&^5uF>T1GuHzNL5aIK?Eh z0t{^V7s#Cb`Q*Df7Qt@-`cN z`huR};}c5OejQ2#Ip@zrHh+?ea)?>1e)g-ZCPmHynGm^MGD! zsVySHT8M_=xZ0pLb&k+4^o9aL4co@AuJ>?BfoMXWY!93883E~?bbuOKDCtSC*K+53 zBX{i&Bt;VdK;$^H@fZL_MyEYQ{vvv;vrAEm?CTi3+M)Iy0h&1jYnXM}Jo-+s#^sXj zYuBB;=YJ_<%nR22F(m=~)=WMfaf|ENrJc<0tkZ+%3_+-PgCjP#YZvti~{el(4mxiljq zV|sgRm3w!!ykwut<7Y!-3G2NEIAFIhK3k(IDPykA(uA~2qw_v}ub6dKSmQceJt|l& zzj}`z^v8B``-d_Vc^>6Q4ov1{5+z3MyN%@u6IV<`%@YLG`P6Tz2#y1)_T&+4?mMTMf;dUB8<$gfuJv0U0u?r;=yg z%jIB|5ALur2s@cxJZPjG2G9WY-_31g^Fhb^*G#CRpN-LGupc8pfo56}ZNUc^)n}}B z<)gPwQ6DkkOKzfyq-URKZA9r}lt_NAnxc9QP$*RV2dYupNd1OzcYQ7<(mVGJLII0C-lPS|Y#ttBu5xy(oSSVK#yM>y~$9M%pd2rr#~kIyCWos_22U!Y*%6yQL4JEH}DaNu9>T3o#0B*KL@ zgx=fW)IhrAmyxvuZ2pmIZs@t??dDhVa6Gf_oLnYHn#LNnic|Rvs4&igBBT1lP?MYu zcdALCKM_Bd_|%i|Y!;6UY^uFtclf0E;b;0OHl?7zP4ixYr$^OMFWZ48N7ybOw0l0r+v@8Ql`To$@ zFnnsjfb2h&K+H+Rn%O(Tr&@mb@p|BmMuW3Zsav6K zEGd;8VzVDG5rUYax*uo3(`yU7;^TLs5c5f{sch`twNQ_z6|LV(dxB7^`JW_9$>*BQ z@iBG+YedT5m-JcNPc;^~5!u?YJw=E0cP@MV-=WA_rdx|ISK*H?#jSSe|71_H;M9Gd z&2!4H-T?k+5fdS$4%@qNjAA4eSbwQcYBEDa!O!&`38+SEVOj|Q+hbr(*C@0*!*0W(geBSQvJr!Td>yR8Nt09cUZqX+|vuM_{`p<_3 z!oS7Y(9$$KcvwJh4MkaM#v5byjQJY6z`wwCTczUuUwNM(-d1U5xVCkP z1kwVpTC-_XcK(k01B;3sohHUw1)Y^`dgq{zJczmuVHO;NDW?&pb@zUmDyH?(9C&nkRn|NhE3+SsLYkOA z%a&;^&zxnR`ta$a+FIUR>s2Cqy1o))ShO*!`ZTx%TM+%1KG=(i_tK6Ic?h$74g9*w zS*DKph>E4+{W_3CH%cx9#NgtKJ{6<*bB^UhOm14i4VHi52vJasOhwmZ;oJf~K=0Cz z`D(dQqV9Q6*}wIBuupQXe>5BKwR+fbObc?0H@?)!r!yW8PX0e^E%}__&A+xU&3Evg zs&*|wGhTkV=e5!raxRZfxV+B~%p_WnO6!N-8H9@~$dX)SvL699&)HGqb0gzZDY|gS z(3lpv0=K;h#|Yhtr8Y0dL;k_hkSeG1i4VdwZGUKiIeC=1y==% z>@v>smdE(oM*i{}R6Lp{%3Sfvj5jSKDZyp9v#OGFdRa^Gk&|JmImSt7c9A zENi>gu{fX5gz)T+*i*4f3eUuG^N2G+{Tq90GJ^=7DD^M{jfV$);%ioVQpyo zx_l!K<};ut0pOd&_M}S|SW{XHstGCy8r`}5hn7(COG zFrQaw#3PpGKP>RQ5jMV4U($~ECld2J_sNzqhz3T_f^zM@W zAIl2RIM+#dh3U2pH5O7BT{O-4aSsn|^tmbi{au+8rFX-R%pN&_FYT@ILuYI2d6r*< zTEr@~tBN=cyG&3{;gIF}MnZAa9>P}9e`N)^LSXy@hcra+aTbFLmnN=zod6so%9Tx& zHLDzpAchHl1anC1grZV5nsN8j==)5wQ=))G^_GAK;Qck|L1YR)bCnAvqh})4Wc_`1 z`yu-#M76SUdKKkxfsv6OIiu`L_e6C9 zyDUiCyastRh^C}s27p9V)eqo*C<^fasu%?<)2apqy&My;* zrD3cvUc7W(tNUEWSbiRVJ>#ZzCvj@u?GZ!nnIH@09!r+sH40+Wj!i;iGB2YQg$JtP zZm&8N1uX?brb`w@@d$ZRzK7GoC*Q#$A_-yB`01ALN#is^c~ju2%?=`yNY;=sEK=QL z(ZxUG%VKTwEr*C)UF?3rd|DiOG?7O4sAiX$l$=wy7POHbjpeRUiFjq)L0_#@X9;P zy@?#gjQec`?*HNKvcr4i9*N;fzI=WDLU|EjF3qn*78J8_-VRV>5*0ipA<@N<-eeL*>+uP)&ACoy88#X%{_!sYkGMqs=BR)f z#}8I2KYMg-vA>ct)b{D1?$4*d2gmTu!%s(_kB|qy!-DfNJx*vgVU`#S_t2CO2LS>6 zr__kDZ4>irRxx#U>_(RP|6%Ma zcOw#^^9>!rzxev;KXZ>}{`p~*r`#Nr!IH_P9%QcW^wnsF_#Cng3-FzyshQhTyAsFV}RBSU;aDynFn(RbBnf zC*cRBaR*%vai`Kvmx+k+EBa7 zKinLrwYIiUG$UX<9HE-&_-4#T`PxbnV)s2`bf*+@GA9eQXwAVc>TV@bR(knsZk+|^t)A=MAhSB{FZY>f7?MEp+E$Okn^IcMV@x8 z#l*)!Pnsy>Fo$W>&b^6Nc6O#gW_pTAY6o*K{HV7NrM9u`ELbn&%uIPbe)FN0L|3e2 z?8P0ot}sNXvca55k5LKEmi;OcCvpLxf-|2m?z6ljhbWs`#;5zp!W1)bl|;h>pU`b{ znV9ax@9irNX6Bf9+bkqsnsmiEtoi;sybl(*%5R~6XgJO%mRgP zOzW2W-Qh}SN}K5sgh#bz3{RSZE^eRH@%dWzk8MY1$B%alepff0B)BOx!?`g$9Eu|J z@)t5OdvRhN*FNhWhyzbyPrSH75BT2d)!G9wMwT6Ac+ymy;Lhk*3qXw%+P?@f@egI+ z{n0_OV9*G5BMnl&f~XOej8(C-kw0ijmP~ymg#-5kK@1lZ)>!G{!?n~9N}ab!2cPA< z?riW1y=BHH`o?h=BpQmg+B)EL(1czO9-Sh=>AzV2u2v){(-Zg~|=jmh_ z3O2W&U+p7d9c+U|<+ikaN0e|Lq@4Y0QZBo*g+e=c+_g1N#@l`u_2Ds+kP+AN=IH3_ zD|jgNf3%H#KJ5%w4F9Nrj!)S#Tr>rbOa6H6UCF-S5{L39(RsoNc%?}hH^}VeO|sQz z>}sn8qJ@ z_3~Py;73;(541AbH%~wwEjYcygHq(zky2Vi`I9?}7o5ksd`9?a?|!Yw6i7>9^{eH) zwR<%_zWam9r*Y=Z(-vnywmnw-3rN1t0g<^}IcGJ*uHdNTY**uwIeM1WBkr7Ldw4lR z;Q^5Z(dRNfalRQ#r9@gau(ah&WE~B)vA~9C|2#S>+_oT;5Z5((7}FS#>PcJNq(>;_ zhywWr2kHS7{~d-(7<%xi(tlMfCg$k&=(O5C2nzDeO??)`qYk&d0YWD?fa#{P)7F50 z)>l$Nb1!k-ow$s&UBWlyeMhOQDKh)(#tm-$6x^mSbeD#<-dR{15!Rgg^%$=u({~F$ z`J7!!hy_^-wQC;1o;a0cvaWJw&M2ai9XZrKa-Y0)X$ET*M?C^QM32C}RInN%n|Eod zAPri0Pw%}~wAvvEX?RT@OTU0Z=^F0=--)n1KB@H+jFbZ+j{yXY1WA;mmuX ze{#V=roPxXnAzf#;#alMvC`~+EwfgP>9i$qfczu#uAgvom;284t)Esy+#eLu%zf~3 zXv8K(*yK3COWytBbJWL*Muo>@Gcf_1g!On@r+&56baBx)h{?s)w^WT(j;9yvQXjY; zvWXc8vGWoscm_};6Vgfy@NwVQ3Mh+g0?@O#0Up+YQkp<{M~_A6xeVU3}IDAd0-pb-7+W5Nv1#fh{PLbILtdd+t6=EcA5j zlIk#F^AXLKX#X>6ggZeKaS~yRp}frg1f5&MpG~wpK=qsDWgFCtiCPa8pAh^mew+JW zc2l=#wib#(I=Ek@Ec24n7IgsCSA(f3h>fI9?-q107$p-B8cf2I*dQj&xH=0TL+5MI zes#iNfWqjjOzc}1MeHAC%Z@%IA`Zy*ZNT;cxUS}nV&X6cMyn6_w=L-7H=l40lFbx- z^80!_Hqg(vCW=iO&g~OXSELAbJyHnjkP+|di3m^>Fsn(+!-Hid)m@7ls}E$XCUGt% zs0C%KWCebGwHI8?@mjM}v3pFeM%bqsQnly9X1>8&eJq;a(Pw0Zil|^HNC}6Q58&16 zhGS6V+V4lbCP4$e0_7SC36T910c}OV>ah!S@I8SqRR($AjhD@fyZ8txql0khT8}c_ zjQz_;2;q4>mbG$9)9xS$%Z@u;|Fvu9CiFM(wR^L@YEsHQJ0Bc>`abEv9;Z@A5+BGB zH(PrA^VL5tW8^Q%2GBrxycP)S_0i}A7>)}g=fNmFMc1QQZc*w4F~h>uY4pJUpu0nJ{llR^^uF~&c&*@f|VK& zA*JO6n6Dy|B?D(Z~?J5QN7&PGmFkWq;}O@;e5$Y>N#D8R8c< zeB-ugdy#G>@F)X7^PapM&R82QDJd~+CRg{d9_66+ zcr{Cpi`=&vvcf@7`4G`{{8q`C)8Gg?tafh%&zd)*8cwfyO$f^ zBpD-;eykg~2L6WC3?la_jw44Z<&f<7e^B4oVSy{6mz{{RXRjC)cC%(N%;a6fL54av zLd&{0QO#{_{=Pm{HqMbjR_HY(`H_V-p_`H;6%@?Z*j-;5IzvK2r03wYbaVt78X8VZ ze8+QNW~81y>v)ngMvnFL?`P*n!b2UEO&uKpgI}KJzOi%XPggrZool#RU47-WS{Kr7 z{%G061@|TkcwUSwbg!7YGG$RABqV(Ct!mL}Q&CaTo&OQRsdZht^P4v#Bcr3ExzN71 zLkqimdyZ$sUDeody{I*-^v{*Q_eEpKpi;H~dJ1fm!i4LYi3q}#G}ZwNb|i(tBhzRL zSfW7<{QzM!=n;+i58!SM3sw`5;)wXG2!KGO@CVriMFYJ>pSFoueZ`m6oMcx}-Ru@? zh3u5r8pn!;{^<9o^T**M58Ng3$pC00YEy;SS?f*>NNNf4ZB$eUD6Ey?=fAqHoO0Bu;cQ_lJmB39ei&9~xry zzdQFR{EPmxc`zaWcDf8{m`DwS;!i&z`s8~Zusiu<)74F? zL(ZjsWGd}puj}ptx2xouq512ZIPsyVum$USMe|-)4eSE zF4Yk8oE6>rPwd=~8h`@e*Sd~E&U_oA=%YT~PzEmeON^oY`QgmAwiZS|s^vsX*dpu?;!U$^EzgqJ&P)9jVIz10K_yalTJR|hmseX_I z<+its#pqvZy}$?md-C#gNPbyKWkr+PFMWpZDL9PoZw6K(KSN9jS9RWPLRi((YSiE} z#@gCM+{R5j0mwh$BxF~}wYbx+6GJ+7I;qR`B<~a7%agyyU#x~!73tpzV9(HduYgv( zU(bKF+eL|Cs8)4cl?MQ1#aMVjpM!tuhlUf-uDY`Uak#+}YpJg=wAP5y?M6kfjLoa? zQMp!$YY;Ml^LTw2v7)OfNrqBRphVyumv+=e&x=tUy|AwaioK@v4E}ZQR*4VUjATqn zpt%1Ln0tUj!N=*!7bK_`kdIot0Vt}CwHZ@C&X1dGt3P(}X@tJ*&Q#mbg{D+K2gOP( z5vS#o$El_B`Am7v;5U&EP|yB*Jlr77HntT*NGCzbZCGPofe;4e1z9W+Dh2)tqo6)@ zeRpOJnAeyuPHOoTTp?hDB$|04QT9$w9oR_GKV0$KpQALpQIZZ#@~CI|kSLjMY}9)r z-DY*F!hjY2yUEqE4F!#E%Fkz5LX~-LP^t#~>gwvD>!GnC)kzos_U1?q7n=E5UVo|q zC{Y~!#mMH(981$kF|;ZahIp(R6AyVv|KpY$BeWa~#J^KnT>QA>{_eUlDhe$a`1#&E z-1k4*CW;t}mGaLd)KVu{&qnn)DVS%( z5&KK+G+n&p428$jP4)F*7hfLz?Q>lNDA~YrK$N}OM#HP`QQj!Z2yCp!!&NOOgU*3N zY(3zvVZjCWgN5dLHw{iGsi3W_i|WJmb8(K`KhPH3ytfr3%|r3}b1$I)KWs8;91HD~ zTT0TF{7^=@$Hpd&P9|-36D8jLv9xSraLfVXCR!1fmC`{!6tkZk`T<$fs-KH#A)aWT zBncva{f>N;#nL6(pN4@SrY5udSoI?_dNPA72FaIu4s$0*wdX8{GsV(80FPk}Ak{d2 z{UT^mt4n_AAVzoz{#`H)dMfjLd8J!kR_h%p`v4WOkUQN9#KZVQ&su#n`rhkk1?<4L zgQCB&!_YrESpLY5l!{YrYJK8!w*GG)KU%i*>7OH~przm7(RW53Ktyz8iyG;l(=jQ+ z(xhNzJG*VS^yT8{5c{XxxqA1!(1*dYlGTU+ne7xsYlCa9kk^Ak-qT z(-@PXwu>`m+_Pw4>VvNLzD2j5b?1%L3fQ+xZE_t~naukJ>3WR9!ICa}ui@9i1v<7% z7;Z*212mU9*J62(htv6273p3uB7Or;gQ%LNyKI2pI9NV}o+`0C+94k(xMSs0I@FLR z1_p{bE}5jSm-wKSL!fS;%e>pS{K|dhEyfZ5_gGW#$8K=(kXpe0I7)cr2E|3_!^S1^ z`otd~rhH7mgDr_Ijjg*mnw`|8-ZSBiJbG!ljUN5jhH^RJdMj(xb+q+-`Xw=2ES2ul zi*rQb-uvEp#zH#Oq-jVPx@)lmG!yutDuIpIEWIlBV!KF`2^ zMz}ZGAHVCKZ7G^>%OTUVBkCRyL|s%P)1fWC%;e(R@0KSqMHn>Yvl*&w8 zTpxDQ?_OCfDr4|?Hemj@rZ^3-F?tuUsl6|V9;aH}RB$h-vwy49IL5fA_qSiO{40mS zvrJMxg=oqgjAytWZ@;}=N}mv|+AIl%yv}1*fa&d~# zkOdPHutL=WD7qe3D8A-AF?-GQzMX_sV}VO=_05;A(~BqIo38_ZwEb~9&}=c>EZ15O z`wnCKW5oM>a@Vr@FEK)!f}vPZFQI51k1&Ht6%hiTMb^>n!WbMsX}`?7Xgyx*KTOWH zZfKP!`Z#Q-H){a3Xs@n}xr5N;oQOS)G6$dU7JfE1{8yf z3Wt`oRl+Haz?Lul4Up2K*^N1gx8A4B4SV*C>xnk^ubH+n*HK+cBiOJ`NEI z|NLz%*_G*QndLiTU;QZRS3Wcx5qo*`&na18%n}Ot_J(^h@q_$fM1Z`YA+8{hphfw8aJ)$>s%7EH#e~+ZQ;amalcyiV zDzmClE1*j=`vQzg?cKYbL)`h3f_&%BfYf`#6H9vSbE`Mpx1Jdng=3nNB%u0+xD zp5ek2EyDvvwx{eh652uI8%f1rGQ<~!X8f(W(Tz|4Emk0^+JRnwLdp-VRt=)51?@pQ zaW&fPDeE@_Wgt?0qZ+ZbwH2GP4q`Y4(r_dw7!Bqldchpne;(cI4cB9cATAmxfPOVd zn4Fp#r;}~{(9lMAMwV>k}l>~L}eMbfoH{x8E5Q_cA6q5Qiqy{0RQl&Ym1gE;0&-RnY# zRAJ!Q3j7K-pnwUFccn7x{bQWZ!=YgB&}dx-cMA$Vb8O~*xfd9Llg#^8i3>{RttM}H z^8WgnMzPK#?1xFqFRXL^V&?bgZKT;_tryBU(b-vZPEkFW3_Q(Ju#l_M@DAnfHA-Yk zin>Ln9|C7DmIi_R;4lp(C}h?{X})Wn28H%~?Vn}Wf?rS${l!{r&S|67vf-a9;?{cZ zP`Cju!zu)O)}hU5<(uNtqn3LXsyC=K9_4?A^POo3*97^4xY~Jeqhuxmd=W*u2u-cnhWefJ5u)O5C&R?+==FaN44^d8MWl|(pEK{a9nYh5oE`3Q`KsD10FFI73&7$RU+2@+=V? zGkz>z@LzU|*Oq9yuYFLjQqA3^*>=@tof+_ZwDu^rHU#y8GM(!D^Mdtm|1ePMs+ow$#U$xAZT06R?1`SS`S%Y0TDA%T2yE>KB!R8emd&vOE=-{$Pw6u8 zNZl;&Jt|su(HJG2WZnk_+*;;~u(%zG7BRWed!?THLXD}JDxftM=V2YO_f57YT7uTW z(ywE1w8bP;r|4NJDK+oh5>VwA0A&a&iGxt4yPO;a# zl^U;-6!B?Lr|AP1TPabTZd)bfP!FaNI&L@JyRkDWN*vdEAvsUjZC_p=>glKt>zr9# zKk_DoM^XE$35(bJ-gj`_Ij`P+W19P7FPa&7vZdl>F^x}X`-Diu9=WR@Ab62le24W; zUi%49#=mHqLh|tx*lqglk)}vZ31m9ZlToZq>#CyY2NmP>8GYEA{)H%PM*!orY zb`vXP@w}Ur7O{9KkFSgzud?x=4}oJ5od?T|VWw6Q)FTF}s#~Q0QWd zid?U`pQYXgW>ijBz$u&0>N4hsy$P zn-zfu*CL18-uW8nwgT|seNW0#_9#$zO`4q6L$rd zore+kT0PTmNa0PRq0wJE2Mks1IF9uKKOY%zbS4R2*g&8Wplq*JFlqqEy+-z~RNC{b zkgvSSr&VY?epUA9rQh)l^x2TJnxJ=hbb1Qrq!%R+aRCE%DC+Sa7e!&QiLjSNUJUQ5 zj9vr{BTAI}>pCLdY_#Bq8n7<4y}F5tK=v_|GGHDBc$S&Cl7 za2o3EygP4_`N_Y@GWu4B*tbn)(>!LT@7m|?nr!=WdK0tld-SI9(DBaK-4+QzkRI!+ zR>11|E!MkF8-~|@9mww`w|`ZR=||FdZ)smVk&cZn2zqf_Yd{@N@e9b-xt*G(V7=M* z2KcJ5Ls%ikU71GsbV817FVAeqWM)ZI$XJLE+ym-LzKh^z`5SLB`y2Tb z(JTi?kr&WmLwjM3>kId1n)%mK49mP>#`B(w3ZO4OAU%}gLtNX;UmSP^Fh0YDh`9f> z-Z3j4w`rgE@hcb)c*2GRY%lH-?!~2nEbC1WhzIs>15{>QZKO9+D1weq2Y6omj@Gdr z@&{~B5aK@|gR{TAlS}H^ixj~>K_va`5#?u8fzfp&ZT;ptB}kJd=Ln2G-0Sd{kk#pam>?15_7;h zTalx~$;vRN^|!bpM8M^y3K{q#l@2%&5S{=}sQp%>1{T3s?SUEhyTm{dgAqvSneIyq z@92&3VpY35r;lXpt&hV?D`ecrWPFJMG9C4%0A6td#NFxHGaoR|w9Bt!990uNLk9b# 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 diff --git a/client/Android/aFreeRDP/assets/de_help_page/touch_pointer_phone.png b/client/Android/aFreeRDP/assets/de_help_page/touch_pointer_phone.png index f325509bed3844e476ddeac40231ad82cc8e379f..ab7c598961d3f2e6953a2069531553fb6acb2a08 100644 GIT binary patch literal 87793 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

    RAt~66 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μT{Ss{C?f8V>0 ztEp(s4+RzEs?5R==_ zB4UvcMDnREw%h%Cff-MRCry+D?aH#hu~+7Qzw4PPwZdA+*DpTD!{g1Y8VII_3r*fX z1R}3j_xASL#Z_1649VdcD}#^TeBU5`81cnj-H3nkNMdB(6%@S4P{{=44cWbj0mDZnCsyH z2nJ$7KT7e?%3(Tv0*Loc#~Fl!WST@QUmM9zd67ozAg=m|vYb**4eY5T8LE%b?0op>54Rb@ev5DXXjJ0em-DQ{=)}Pj zA5OBahvX!r84=3e$s*-DvPME)P0N3sU13e}Qqbs3GPdBNL=uqHbg7r=1=dZv*G90`S-qi_*@VEc-(z@Sp~qvLeK*`sXMk%Ov~Z1$|G~Rm zXcBU-{OXcQK(KGEI3=y+wpEz}EM@=EY{CGOt_^OiJx&^y^tQNAHB4F;vjuKrHGJgDeeCW?v+C<#M3{c*OPh1jWXSegVYI2ADvK&I7aTY@dRr?Ty2rG({hTy;ohgf$;QW@xQTBWKUyZ!uyr9|r6}+Hy27Hn(YEDs<87+&2?C~F z7qD%$A<0yHShtyx>p7tJD1@$iLcu+K2WWGuh??^phbJiqJayio)J43s9jZRiIl*C` zNd}M-x2#bLFCxk@1+b~SjeI7|79B6HL}1lAD0Dg49A|EyK?e_`^JPYxwRQG(wlPPsG+7qX-0IG^AOswiWD&o1OD`h?TEtv zWld0$wc^G#mjfMK#?PAmU5sU;^G-VoxIqg+nx2hPjm-KZYiyy>2ju7gnl)Ljka+cK zdS)!yg=ZO`$4bwEWe)Af@&h$w-tZB86pC)k9N4l%y-V~vEk_7BPgXljGb#HPMb2bj0y43U6}R!nF?MJk;zls7m!>PqskOiSs`BW z*BS9uZ-kd%5CEs9!O1*0i-Wlxt!=!ZAGlfQ>WW-IVuZgm;5LnT!bkkdPz#VSCWVv} zrN2obyFSltJZLb>GB2~?>(HFqSgMa31;LTbHn_8+#XpG7mF7eSCRbutsUA54P!|tO zUQ}n@+(OQdIbj|lvMkZ@4Om-2LH7qt^SzMptpO3o^zG96A2wHzVFdEI_RLR(npqsB z_0;Sv$&8emzZHlNO03Bik3R)nnrpS~>$-mLXk7^@f3|Vaf%hv#zQeg@)v-%)=%-S~ a4YOay&izsj;T8z^(NMXMtWmOx_ literal 88598 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 M07*qoM6N<$f~m?OYybcN diff --git a/client/Android/aFreeRDP/assets/help_page/gestures.png b/client/Android/aFreeRDP/assets/help_page/gestures.png index 7a62212dbe3a37a711377ea439cbfb4920157881..78b3e7b341002dec895e8f4ea28a780cc8b47ffa 100644 GIT binary patch literal 43781 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 literal 45123 zcmZ^KWmKC%(oUV356oXA-KDHaf%gp*Fd4T6fG1h8rx1RSpx46b%Lj22(*^S`!8awiX5k?g0e}3fWKZk%xh)M^liN z(Dqt7&VA6*)*~FgLf*zcZ!<7s_(q>Ltw7GfloDoPRyZ_JBZJ$=C|l@kLS0CWFu;Ij zt&Z`-zL6Q{t8xB;to?qxV|uAge!;Y?QLKW7j86Hi=V{j*4HtLJ2lMML^SQE)*t>ly zRoCYg*HiB^kvrelD=(*Cei0$Kqw=QPyr~EhI0ITTqIAKyqv~9{VoZsFlG?7sXt*$s zQq(9RUh@j3%*3w6j8%IiXtI^a{=cB}H5t+hOoiX7_4EoTuPxspNQ^{R#i^gdyd#vr zLAa=`79Qisz?|$CnaeVc|RcT zA2e;19<39D)@07kDfB5ke{X?LKAlJFCF$A56FOg@ZdHd))7;%F zN6LZGVrqNd^TD~ksSszThBcR>jse2v`oL=+sjW}<<;aA}3S?sGk~GY<{gc4ka3=e? zFYhnPPS*l3)=3DAQJ3qFe$E_Hl1pS{t3ILFw*kw`YZ0F?n0DeUe(eDY2{+yp47s`G z&iKn~iy{@qtjP#xW>nI21yTr!boXGaH1%y=#k6-t`M9-@Uoe{p; z4hDZeg4UiSwDlzo1y}qeaCt%VKoHy+R)2`u1^!ZBn4nQ(-`nc2OyQEq8Li}Vj%cvieuXCx z-h8TRhwZV1lr)CSg%uGWxO*hf>``NdJVo{vq|&Bi2s@2es6V=Se2&O8I(7E6H3+S56{`*=ROMuuDcIO z(TLub*Sp`YE(_?3KDf0+>?y1N-b*<2DJgG_Q`Rr!pMp5_r#8FQU+oKhWppiHdZdE1 zuZLqtpX1xfcVjB?fpetvE`1l0jl#HkMrE2Pd=ZU`P(b}>?^gi zLc|VL-7NkmK*XxIlP2&zBOqlk;$+z~&cEKmps8(v)xlu0)H#-wxc{-MzU{Op-$S5T zN8$tJ&KBfyvt3WyaA<&`nBn&w)>g+_9EFgF;0~pgfsV0R^4Abv^FFNbME8pTAtwXy z;GAu%+4@hpjQF~`?waOWRCh<4xqWs?Qw5gh5PD~Y$etc*xia^l=%Z7M?62Lj!{iiu zGfU*)`Nh9rf;QzyE*=ocWU$}|sVJoliQaDq^aYGhnj3sJ2Q^ai-I?$|E1%~A?aw;bJFPd&w$^vMK5y0C zJ&j9k$jP>YD_aP)TilD1HPoFkfwnG*0?|sO1C&CdlO+t59BZ@|+H?G76It%E05X+9 zBE0@p1<=PEV*5lHJ##MBrmktjE_792f*dK<#g-==l0$~u#=b=9gu_+5PQzXtG{w3Q zfOC0`v4cLAauZmo&TG zuX>$)cY_Usv2PW*K9uWGlN?o23QZ(~ws^ImR6+aohB1aauM}{ef4U#IlR=;xrz=6I zK1SmX_nJ#}crfv5O9NS8Nw#C_yx*9&V-6YTxC@2zc_Z=M>&dwDa%N1w=~<<`*0TSj zdNkRN1m3gfdoOPzR?@nncGsY3Y^Tf=M9CsV#fdKFC@<}Gf>9l5>DnMBhsBmyc+ z0e$C|4Z-^X$n2Gu`wgp7M^qFuec2c4gCE-Td2d*3>2)}lk7rXV%2U0AOYbe_n`w$l zbvm&>62E8sAD!>rOl2HIlslECh1hRHg$$~4+pr%l*ebGtcM+AKG66EBb#Kfnz1qIE zy<`y0N6fwC?3 z>~rpc!4jRZcO{B{qGQsr@b&nEnD%C`KKVZo5LNYkO;6%i0b2bO;bg7r=G5m?anopE z8hWRgg%cikZ>|M)rUJjK}U)r#o1xzXHv57Rx%oRWX}h?i>=Tb@HI{iSK;^F#k-)BuC= zy8v7wL~~sNy@r`6+BWdzXx-;I+wcSD0ryM$8EI)zluqw5 z_y%+gSEJ5!PM94xy^G|cHL>%Qp1rg__v{->v72F6zp6Nghmj8$p?~T(_Wuw9FNV7s z&-;r6XU2u|UKM|q*I6b7OpmdO7?6IxXP36nmM?8NK=9M0dZDOZ72ZVbt>9aX9g&g9 z<(3u`LASyrZq*Q-qc=qvJ#^y;o2w#N>MYbu70A}8w6*d!$A=yS*k6BYsrd?>X7=M= zr7bu`$I>CaC(klA+x8!fNm~kwgBz%iIXYS)rK!K)Wb{*jSJAW*J#m_V3y_O_POf5p zF#uxvY@7Vq9H_XbTK9dEnw#3YfQ?(nAuM3=ik@OJt26 zU;{dp9F?AnpHy%r;3xi?^9}u{wHC9kjYFllA4TI~!6vKX1+LjrBg5i1V6Ch&C7xb_ zH4$w^F)Ue^|Kkp&U35|Y56ki7f#U7x7(!k(ahh5sW#FK@?b>6eGHJR6`-LVID#)9w5z+2elw57|w7Oxu)J(2RB) zA%r$&t3Gob3kEdgu&~!5b~DC)Z#oVQuSJfwn+^&0I-+v&43m>d+-b^*o~R17CfJ>g zda0o^p(+`Z+vdubz>dqIc-B?^<}Jf)_r3{%55;C@-bSPHJzo@)v*5) zc3c{Zkuz;K<@6~+oY|%#Yc0GT)y!(G0x+5OR_u6nS?!M%G4lDFC3i?v6uEE^N^1~0 zZ9f+y&#X$M^29qD42$yRkZP0|9vNZ^7u#SL&242HHr9QF*>R3+qN^{C7iI>XTr}u( zQvp+W4jwcPBI0)IXM=Z0iprn7o;&y2o@dz;JA86L6Y?+D35(I3xx1K3wUC(jztWLc zmo0x2o(6dFBi?!~k4ZOAZovHgZ-0U*!t0VkBSn2Ja=}uo7#UI!+7$P!jus8#x?pd( z42NAJ!FAtI--Jn)M07pI^6Tx2z=u}Yxn*L|!}?==`xOu7+Kiyz793H_Qt7Y4xv8Fe zj+ljm3h;fV61b9-UE6;LDYtns7vwL-rGO|iNbJD!uIDDp3EhU1aO%_C`2lF9#ABI) z=W2qeNQ*oX!pe*342uSgc%Mx!TFYy&?H7A^f)0M>eWqMp+>WcpHnJ!+%Tk_au_bL+ zK{ZOQC@yxB0KeP9WBE}p{e^k-`<%+lIftN*j>z{;j+?wg2Xrt_V%tMrT}5^__)R^g zUMI9lMyksBzSRi4X=cXKRvj@aL>{u>2`^C5P?hL$vKCrK0+V4NUjV}VG1BCU)0W3^km?k}FZ zb%#(}iaP}vWvfcd)u33Kn&Znv;8@eF^T~z-ynV0v4fq-$yq%f<*&(*`Z)LA#m&#*U z&FRKcV5aROWBC}jOhnA+LtNbWx{i}tPk5)Mg{SGoG}DXug0P=xaFJgi?2;F;P zBz9%hj@szMObsK+ld^~IYhv)jbQHs{NvKU13)^a-(8CzsNA$go(9}n1Z;!P_&aD;5ax59?k5t6)SzL<3`rtQSm6E6H+6iCr|SiuHP!2i|j z4-74Z2aXE#nGK2nU8Vt(wy=P017e1ra2NnpBpdw)gt`_uzzsTO)LQSaI!ysc|q{q3=J1;PEFv|L9JvH3SL#+&@=o_&CJo~Y)#aB1ft>6IRaxO5r9E<5@7I` z?I!+mlAdrc0szZOX}a#r@Bx@8y6hR22;zcCwD4_KdFhs~SLvn|0T{Ia;js;G=P^a} zpo9bT?2rI8U8j$V>MbcjG@nA0V(wG?|2D3b{0rNj9Tp&yDzU|%h{F?9Fpg6%gUMFN zE+xH(Dl8O73DBwvzlVdVC8_p=x&$5cZCP-Cv4N9Cgu|H3yXI@;^*uQ{+B*U?9?a9W~3AMGNn*wuN1*fbupA>N}2p4>9ks6{z1-)+M! zEkJ}M04p%gMHUalr>d`xHVh$Bc=O;#X1O&h`v*xPvMeGf-fM!`3l_kSe)h1>%FmFd zsDwG|+MX!*gVXghI|K0YA)c(z*#i;OMbPwaN31p%$P}cM#D#;QtGgR%nAEKG2I0E7#q>c3usk+4q8a$1bGzp(;7Q%weq}_+!noW_KXw5m<5nI;k1<6}GEG;3O zC0m)LpHp>Hi<0m7njY~KpMUs>-H=)1gp5#58ay4J_4}MhK%6iB`sTJQP?C~=X{7;u zLshB%Z8pUPtkmXO#sP0)E*u_aeFn4s00?3Pqk~^jYe#EiJ&k(^j_CO?GYYj0In_{b zno}`@*$y>73nn#VWdNLNl;^0eg4hxitSJHEj0o3vn5ibhygHQNLgDxVXl!C{=os$p0Td1{cXY0+qnvtY=|S$;tyieRRFhi9bo{`(!}*8 z;Pg_hsOGTFP=II?FgqgLpg}g&;bBH#h?47Hc}Ymjb!!-~b%F(qrX|zi8qDUQu#XR9 zC8}%~xU)hACZ#Xth8*q8uqht*5d5G=0KkDK_085-R*;~hLgl{r2?s04;fOmI2@II_ zyCCm-!Bfo&9Pqz|e2{fTf(2TE*?AVS+>vTu*8(c>dkDJe?d>K6VHXr_;%N$dEH@4D z(iV+_k9?%e^IfxliU~ksOx{7!BSjjre_=ABe+&1#gi2k34v<`T+RmoX!JAoOPgE2A zC22*1H2#5~dMt|uKIP;!U}X^cHuu5nRj2&s0UCbPWJCaHG29BZIT}SO#foHo3u2pB zuqFVEhV@uB4g@sphFF4GEhUFUVD)nTQIHz-kK%%r!&zZ`sj$ZTbeOrg;laZ4eXCvm zRUn(45r>f;OV+Ru5Ely3)^yNV5q(b9d(?%Q89PUJM1U&|zK`!E;l}1T9q1t?>>;mH z0qj=y6$$R?H7;mO7bU#P{f2SFkfr9&I07($ej}~JCl)k~gbgfJI+pw1Z5SH+g%NVe zhAKwk-++)&OJlWz@(*=&H3fA!nK0-fEi5HPs}w>CjW#Iiixe-+m8WlEMC>3X=)o8; zEB3r{tc3@nczyi4bV#~e4V!ULM8A{sEn5IyPtS@dRs?d1SI5NLq|slpO1QuclfnD( z3i8@Nvaz)E_m5d(5na!Y6D?sZuSRbPf<+r5P<1CR!QRc&Lk?|W;ug!ps0Z5 z)A}NmO56c)2mr|fV>MqR-+j>PNHfR-9h@UF9#~U=3r2y&G(Hzx_HSMh74-4{77(wY z1n0z8y6y!E=Vf9L)P{!-igz#Eb&G&-)0$Y@?E%_g#j2xmCIo<$l#0wv1|V`ZM?#JU zgj?omT)A9VT^k8Ybk-ik_Ff=1F;OLKRcB-X14661o?Pw9`nhjz?pF&&&(7_ST3{=O zHn_CR3LJ_Kj{4I^Zq(gBDYXJ=qqKjc`vNQ}Sj5Sx-jH{hK zHy(mwyb9{MRE%VmXvO_4?LzXMx}&G&5A1TR6nteo60U-H&BfWF>Ek9+#^7!#Z>eYs zFbW(v>doZ5LW6GHbZK1ecJg>Iffj8muplcaB!mqu#H@!&MrHt$Kfe%323KQ+as@X- z`hw<{Fai^eH5VNMd2%GNY}C8tNMY*$E-G?I_wNV19#bpdo-qB~Jl);r4weF1ZYV;> z8ZiL>d3eC=WB(pVBm4ga)_$CKUpO=N`TQ1ZCHin2+w$YA-IJtE&&1dNCfFa_r(prI zq)|Ao>7i5GzB_W`=+&0()b5@vOuIsJlY6_7)#*A7SqkWS+mPE+d%ZkrIjdj$SQgXU zLK>7?$du>zWhd+T2o@c!wyyi(mUbt-h}5UnQwrJsP*4FJCPp7WomtNZu9j};D_>j1 z^1}`UcjiMh_t@UY@r{sU);_>zZ1RCU%87ljzfJaF2Si?5{Pw~OSjBoS7vN9ty4UEO zyZb7V=7j+eI7Z6owFFH>t!*@X&!|iG-v6B_W?a~Nd??fSN+0NQ#EQb**)Nw-D|~%k zRQA3SLn9=fRbdVbMxruj*)P-gBEf3=Df2ZJ*k)}XPb@OX7(vL4^BbTiSz^RT{T6c#D?XG$M+-T2~G8 zO;%-pV7N&`sN}eNb?UU}X8F<>FK$BGo%#;Gw8nhCdr6AVHd4lHsrdp*v5Lt~;89{H zMV3ig1>f_+iSYr*&ri!d3QE(wr82u9;O#iBU5j&G3zBB8P@<|web@F-lBB$kR|LFt z*JpfI^6@RC%Myf};gj8iHpr(-PQEoCpp&^T@Oa?~tSMbguEDMKxnD}A7@NF?*tWF~ z-)TZa;|5qjp4do1dBI*d35yusJ?-JOqHXecSR}aYEYx}U{2Q0Zqr$b~y?E>4YSN({ z!h*dZi*Tsjro)9{RB^rA4YLl-ySrUqLY_2b@~q%{DTVv&MyadWM_EjrlQah@A^5N& z?DqtbqCx2#V74_B0Kafpfz#0Q7)iA3D~c|i*`;jJCM*@T0M&y>xJe6LI&LuY>2cK( z+cN7BMDfq|)*jzU$-PFy@t@L?d(@yc4TwhW!Q;6n;WJv`KJrLq_9ES)v{736KndS` z6c?QK8C5sK74nF#0vztJ{hI$8e(%mYtJ_Cit5T=jUt-(G>kRy0k8d6GwVRyw#6YBl z&e%`Bx42w%K{9G|p<|FGotdSyh*R<;p9<*S+JaZy!sc+ZyHv#S54WSmacy`*G1Pgd zz9mM^2L=Y{FgC9#z_*Jco?c(Pt?~X(mU%P6`)}fbCY}E#o};&;o?rpp1S+uxkB7^h zs<%&1LcX`hC1*dyyiOB@&P3lg;W>F*?%c(aXCFxdg`4(m96|AAJ6lYE$wNp1)nwrL z#&A{JYQVzwndkb;Q+jlY`R-XshKWJ%I{y3Z3kT6x&Y#bR;g^>wv9}p&c-H8l+r+s! zwv{cvC8r+Bj|#%%yn&11-O>aa=uatZIdCy?u*cXtq3@F;`_ z+=>U}8#TTo_I7@oXj>C)+J_`#07C7CV{F7>`l8sf=lijT0U%huNyPUGr{ah0dw1VA z1>rOLWMlIQQOl7r->_-TtcL{%#*&9E{Lt91LMIeF_8V#f zG+-R#wp=_XCMPD(p34@g=j0K@wwH++WZ#3E*DsO~03#(TQf5Wq@svjbX8nu;j7ab0 zCxWAg8~Fg4VOHg`UzkAvJiz816>;mqh1$`AT7pbT6OaBV)lucJ1M2J{*I6iW04sqby^?Lmw}@f_L3P@&`5G`#NQ0=HrT4MO8V zdjSN%nr=cu!9+VJWrj zxi;oOFgmpefy*?++aha}nZgb|67x7^ZgHSS>))TBiTo{!pPX#}R~^kjYm>@vqtF>i zt${8?4Psio*mxN9Q!#7$q%V!GypvIArA~CS^1BSrE!WXO-QNVq@k`$~UzCNLe*R9 z^gU<7RLb>NZ`3n(Ao>w;EBBb%n}?M`nB96&Edr~Yo`||TChHhy*N~2D|GUc9yr0#P zRkKzk#WcVLG`$2I+j4Iz^?IJlddc+Mn-6gTqLmsordqx z7e)nHfg+Xse(Nk!8%zA3P#1ikD(uuBR!1Rm^81g%wOQLh4f_q!`6J4RzMJlirOL0{ z)@5g=db`dtYbIAY?@|o+-UA810V4ZN%sJWSt?v`<{LVnWRSICjdG4^Py1n~-_Gr*a z)u|gUL7`)(*3k1LN%SXG_*?fm4Fi*TCcyXkoj~Wl7W$1v!L}`vE?3z^U_uO!vIy?V z+Q%ZXDO`mvj}HVN+g)Yg7TU}m{hTa>tiJ0_>CGqYIiLEvcBq5Jp$%pO?q3T-|JQH; z|JpzB{|8~Z01|ogCV)=5r=$!Jrc8LkRUj~F@1G#J-zrlI2u%X zn$OrF>Q$X(bdF#S$23dr_!*3O4r`QXqpQAsX9ZlQ_cRvM~5J!9_CM4?T!sxFD z|G(pi!NLE+|BX|~I=l~ZrgjhZr`Hn^{}Ft7cRr=IYn@T2UxSy(4v6^d%#9Hn`yY<~ z*gTcP25cL za{uQG@>z{xSF8D220H2Ui+;mDJ)OJ6;nHjP0zCKY>6p54C`3H2F~!99AR=yya;Aqr z&|TlS>^)BleD_6Dvj~fgr$EV&pP2$CJ7>cQ{}vT{FQx}aLq8sLilU~6l}khDhdkC!fSE^58@ zEuhG(ZiO{!wKw-}0B622WVhKj?cw7WbUk6kiFmHcEMmw1xYynd;LCav=gagdXjsyy zv61OZ!{2Llpz#P43t+F+W220V`N+G(Xxq!ip+?V4Z*fS5bkl%F&miBK%tK1zKjh3S zM6`1$xX->y&tFL-K@}w%Y$(iGRXLc&e`Nm};0HArooKE|8x6Io%y5T$u+&BwEx87_ zRhM7j_I`hh-NKC@e_+zBvkWONiOAB7<4rATS0im_Bdw3d`Wm{WFE+lk5w^VJI|Kd% z3T%oUS-#jK9n+(E$Y+Oaf}ee~7^|V>S~j>IJS!I`9pc%0Z$F%x!OmNyy>3bR%}dAD zd^e~*)8bJb(=iM33O{!7`G?*6HZRZ8HXeI0J(-v6>}PsKFL73-#6mVj3bm9!-mGRaH06i`YSxPVa>~@&$t|L$s{L@c{lFmNacjh>7NXb zy$izg8?sBWBE|KsgFoKW*~8P7mut`-*k?K64q*XI-WPEa@Sc&cs@&clJ7%+4-_m5*^DL z&!$_;eYVo#OD}R2(bW4}LI_X?u0){c`KF19n*qYh8stC76xl=98H!&P^Y$^I=g4|j zt#ec#@PhPoMNf;58I$G0Kp<*^s9{G9tUwgeGkDC$yIHb0l{CB5iTcTVmtX*_LyGJc z+vLh}phbG_Z5cbfI&O?Gy_O$y%|+cv5b8AVAY7pPrFxQ1xN|0*yA}Z+uxMxm21dr5 zDpdVa$!^6+A0^Osqvr_5)Da}x_uiayi>hF!{AT5>!b-@AT0dKE2#gh`avo%$j~6+! zLvmQM*K2K-+Mr`E`3WDR+mr}KF}!d8ie8?`o-`+U3`3D)S`TLAhn|VaY?|C=<{ri5 zLM3(SIUX0S@h&y^gC7lK7%ac0>*O~K!YI8(F-uPUmZ6&EJF&PN2m#nkU!gmr>i;yG z;~l2C?s{i{DQ}o2NW>G|`8N#m_2lm5#jgR(xNcE1DZofC_(=UYGL=jH)y;8-@N0eN z$XpF`g^tFy>XiTBPW);WN+nwwmRthm)_v|E|3_RRxa^XWoqhaoU<3J4J;R#`Bw$Al z1Osh}uhZfePm$BKdcWt{+6!IyEU2|(po9nAuUKX~ExvryQ!DZbqbH;mG&nS8k%LQu!!7yff9nB+@E#) z@d*8!X72~KUZ?(6Vz0f82*2bW+7B|n| z7QgH;J^Y!ePwx9&S8hAVhP`eriaZ>)?eH3`Q6yy>@KLuKxVm$;7e9D&sSI&k?Qqy0 z|Ldx%NPqo>%zCrc?wr#4vDIo{blmu*I}TOon3=U|U<<%NBd@LXdYyH(g)KVJhltL- zRrlv&_ehI^o_Fdls>2uh-E+TdQM4nicbOy2K6B&bARXLvRi-&?T7o2}J0&}Fl;QAA z@1N}@4f03pQ-P;-_39!939x+zb@W;Lhw@eEx=XwU<0a+DFm>yi4-p$9(uY-*H9iMi zZzvb3(IkY%aJ83{vh0x3r&Z#ZtT0o~;rQ3%28wyI*AihX(9rUXR#@AIsL&G*$@xQs zwjO&M(XFnm9cJVt5=mGg30XX=` zyZC7k=d-k-&62d1e2R?f!5B0F`nvNdW+u4^_F4sa%az>QA6&j3Mj?b+L{Jy+c;%(- zg)3zY$=}t9-mY=nN5~8UF?ZHF4x_(Rp|Jgm*e#_-+Pt?ej4K$kv~9&Ev=U z!R4{~&-xTq?9rfNRdprSM04on$S?YB=?wp7^d%pO#u>vWiSJs(9U5h4vL{8W8cfz2 zdPPV1+opYpWHKRUrnWg?%|E;YwRV){y3BoQ6Qi<8qx9C1%H{~hp%2Y>s(1YCItNKb zd??o=y8B5+P6HKD<=lZ{bx^0kU>c?V+Ro4XeN5?JHe56;^?k9r|4xDwKD!*_PgO@@~f?^eKRTLcRyIez5AUQw4%sGb_rlE4BI zf)9BH!R90Y)w~}VfntHs_=11goEqhjmNLRVv_UY=&p#>&OFbOiYd*=%FNhLWKwXWn zsTMax>+o(KwMO(e@lHW3A?=G(Lj8reRvK-)@w=#*pY+ zyUe}cX@=}0sf4>i(w6iud9y=ztI|%ygEYh9v1WO^filaGH$nK=qmszNU>_Cqn`Yo& zzdec=)bESsC1#oLZ#Z&9DWXGYS^D}^P3MPsH^^>Imb&gf*|sC0&dBB{DG%16^9T!@ z<$wn;Wh8_ePzTd86YAMXBzY}AsKU{Chsz~AK0TN_cV!N)S<)m6F7Y2!e{Iv(n6sBD zX@!T@?;el{i+nRu z{seUB{*9ZBVcec?G20rVX5wIkPe(AlD&@#0&a<^Gw2>xdY&R|&wzPrYqz5FsC_cz` zL0!n*VW)RAkq`W2cYrKIL4bCHC+AjyV`jcZ&A|d6&Bjy*bAhUNeoLm+)h^Tph(7ZB zL}B*FG4ynL_vy;4&n5>90LH=JbTK~ukeSwVN&$CX7K-ZaSID0_H-G~?2i6nF((ERf z^|I9~c?zWG5;liCQrTJ-n>^oM%2u~M=GR|8zxwnpOvbW&8^M`rXZ%CUTes*Rztt40 z1dIvEcHsaJu!Q>^CS~S@S7^P$DFVv#qK;SKqMV;mk77;@@xE&%j2zoe3o&lXvsP}1 z62;oNL@E8Xmxh<2@EKik_&Rz-#Rf2J_vhLYN!8Kr(*x4e#JmY7(R4ZbgcCL(Di){B z{&CyU-)I<^FA_|k{SA)u)#uC^!%QNNgg`FuMUeD}DC{*HPwZ%gV%O!BI>DPur zrBuW*;NVzCDuPzHqWZZpTrlDLK~WURwn?Q<=_^rinZ6i`&sHK zUW^jj{_EJ}!Y^dtS3`wWn8)c#O%`iTb8X$VF5<$gKXR%Y%`WO;$35So zTQ*Ex2+t~&d>Z5>z|K#nmw*IU2IuxFrC!7Dr~b0a-VI>{k)v^Ls%H@{TuRywT&*`| zPlc;joFVcMF%Y{Vx_8cF&sXrf%jfxK{&9S}PCX4RC9)PzH;t}d`876O&HL#;7L_yTXGfM-FuYOgX`JPrb~Fd&`=}Q~rWv-?@Ub=JV=7I-r^>VT^{CJP2_Mer4xR^7e9R-FKQ(gHrls(1G_d*(LeUS_vLmd7Dko$fbUDti=Y zi#VqJ6UvytVAyPYA>r4PIx{n-rN=Y88JY^8D!4jUt?$aMgrEsuQ@HSk3CWWb{+fo0 ze##?;C&geTLYMv035z@=!2YoBAQS#~`pj==#GeqWbLRpkdkLH$F$S3!-iX#0 zc)1wqb393a`c80CvSux-#{(LFXE=5-U^9HBB{eVq^fr7)F|%*yb&okFekSBE4xB^; z>df(nE&SXKPaayvHt>T7JF^`0tqcWR8WV}{rD*B&A|j`LKkHx;w%l?u(7SY)pQb|j z{X_kaN`?IpOeZ8yactC|mEsky_5o|9($E*FEV$}u4I8jvSP-B0^OXd$MA?~(l`A+b zP)ozwyxwtX471RX(%?qRb0{!OMsYY`3o&eePO*W61h~YE+Lsf-15q-0W2%niJ={^j zD?{(r-F+>VSQ=4n`V%NOMGOMJp@VhVjZ_)tkXX4f|01G*oL6!}h}L{}Y=c?BTrzZR z^{M0VMHT}J=@OAk^N0!BSUFhk5nm)7*Zu@r!PPFn16<#XZK*sE7Vt7WZD`1P-D^l7 zf-d*yXsf=dG0XU%cDJpimq8ZRKLX5b0p}0a+j{UsZg+lEh8jxid}WS^3&mQ0c#2^S zdUizNC0(!3>_LQrrRbk;9IUygG7qurIF8S4A(C=$6~!2Gu&iyhvzOTjW1XiRpD=+q zL|HVjAMkSthG%6GfB}IjRWh1kP@T|gjXY5W0DmCbxmB@kgr-b{pFB&3+)oUrF+e3H zR$r%r;$iQ5GOFMg|e_;Vu@w?Kl zcLOS%pyp$v{+TCqS8l%DKmo))VC)|oIB&d8#3{oY{=DtQD9!;odGVv_We7Lpy}WT3 z7AeYoGIC3Q!q3)_{8{C%-J6!;o3`fb#9~SOxZhZiF@t;4h2TXaVr|_P^J3g{vjnY) zvQr~i>P2J%yaG%RfP)M>2%!;h06qjglKmIYwU_T&Ac}<2@d(k@8Eg$dvqnt1KRLnZ z2NEmIqw$OuJf%JSB!qq2aZ2Al@>uBg>;xpaY-|p^42$8ZrpObmS$Od`j@1YMIQk(M zNY5MFs%Vnv*RFyN>XM@GV%p%mzlJCK#){Y+@|$@v?{rZ)Qt#%cu`V0*XAf1wG- zNu@UyzO6c2SdODDe{rZxnuQo0{K?LK?fI{#%89N8Ek3A4Ig9twSh22Pj_!2)FA0Q) zIJ;DHABnBkKtBrK*M{KZ(UxHU_okQ|IFJOV$zE!aEcEy4=4K3^w-ZnM3~v#28zoKw za^B`^V?|$u(uPFagv#Kn$5RG;5#W4Nz0y!IklhAt@fMcYU>#1SB6vKZ~x)8(=WYc>>^u%6!IPWTbObWs>0lcbG7YNg1MRyWy_s zzG|hb9T+Pnn!`%uQXVHobwA@Y5Q(J2|7@waV#~Xn^lJc3=2}HXmXvsqBK$E8ca=*`LDIB2uA7D|BNgyd10VZDtd#|LlmQRM);% zXrcKLgH+$8j|uFQ_?8fBdoc|ICMV<)43mm=ER>I0doJ>QO20pGuYS}nc~}RxS77IKq|eRM%NWLrqHM5h*j>)2Nrtj=PbJJ4M$^LmKPs*K&}4gA|;~C+t>?3J{}OcUBb}RkwxB*h6xZeLWJLL(uc{E2L$W!yOtJ z_z0h2&r1kuUoE~j!r&ZRWs)ZnJ@R+s;`JX>-*Tf}=s#Z^59(iUM}n5|hP3XY0jkkl zkO1Q>+wnV42WA9~k$^QdIVTq_;`R*w>S_1tR8$c{O|-(}<-A>&>mS;g@Wxb(P5>ft z@)xlD(kSF?*X~hrM(K`LyZWOq75@p?gD65fcZvW^jvxXljKcv?lwp&$qU);*6)}O# ztWsf(6Z$8}@30D8&}!?UnbS`s?8f{4lM1L||GZ^Jixy&d9jt9? zKTe_p(mAq2UB=U`J`dm`0&OH=2f_hhGX`QqVo&-yO~#H)rospU0UFRV@8x~Zy7xe| zyb9={_CkY)pf&{kKt{C<9gF~c$B9-827AfqGxJzk?4m#+lvGW@b_)r{F@!+)jG6ut zB!IOFlt(g%0GKhugWn5jD6WRqJpW_rVEa<`ngtPj9ORZ1#8n0A^@RKIzK^sEigoug zI2?wWWSCBYkg=6Z122h@iii@JHrX1dL$&#LDM*$OlW}djuf>c&_NO(~UF)GjehSO7Zq%82j z=*sy($?{KTCp+l#0NzTt48x8gB#Q?8)qy5#Iip9Zr$yiVJ*dEaATU>qfu7MW1l`2* zc;8vD{*Bs=;Xj1*AeO>x=)V)7=TFdPs?H`{tqeNA+`Nep48t_9Ome-20sKwYU8bre zhoT%YT#97yn-!AmH3yk#VE)U(U~Y>5jMatKykx8f4S5Xj)Iy_sQ{Z1 z8Kb7Bqhh?;b%g~$a5OH*^Ljknd^=tpQ`3@w))v1F63hHWLBzwnz%^;XFOey>tzbLs zo0(6hW=V`9i(=HDk!P7jxs+GtE5yl&z|niO1A>>_Ja|$K!XJ z^Duz{;@A5{>frfd^Z3-i4J||aB_^dEc)Fq+H7nqt>&S>r>{k2UR@0wG=`)}Y2M~#c7D7N}I%1@a)xCg50OqLwO9~V> z|B%vxm9Y}WuJHNf3?7_{(cuTc{$#Lgar|6M&7s#WDglM52SQ zb@Ueg4_R*=7e~;93FA(%;10oI3Be&iNN@-cTo%`$i@S&57J|D43yZ_z5G=U6E$;5J zaGUqNyYKG1-^?E~JvG(UJv}`=RrORA(O#f;TwC;G0Vm|93EtOtphIn*1N*|_^aY@% zc%-2H&m_tcJ`Sh=@-w&h_r;jN&mCI8bZ-3+4$({(J$>bu>1UciMctOSzOe6epz|aQ zV2~ll==)Kfkn)booMchZzUYIzgR+7C8Xs0lkB3F4ZNPIUadceAs(#xn^gzTTTZ$gE z|76;l1F<3m$V>9f2Xeecj2XR&Cx&Qg&0$(1q@2X}4IZQuKn#-xV}~#5Bs`#4%2`70 zPjkz_0U=;Pff>~`3b477L1p=KYM`R`MIB}k2Z*%Ry&*I+X5?08{UAb$`hI0GM*_r_ z<2JL}di@%3zc8DuUI?d)-~SWzjA#a`XkVgB!v_8w4h9=E9k2nN$x4P#>LhHTSeE1R zdfyl9RxyCrYo9XkAtkVHCT^uWn82d@cShlz#CN&hU0;*1YpSgOSkRKCL}Y;v%b#}U zz9J$!sK9qirf_7H#&1#<+BagM97#$%OGp5l4s%8`Z`NZ};N)WNXAB^_r9mFAz2P6G zENn~tPU*BjTlbqHMq7l%93Ieqct2@WVs_We)aP`32rCgtK7kblz`w~#6Xk=N;>s1aoHBnIlt^@=>QtWzO4-8~j{x^w*Qlw{0+?zc|l-y??J zDgnQn{Pz;s|2o}xheI@%er)o;s7(G9q`;}7UqBD{q~I){$E*w$iOVB_M{aOOtIO3= zNP2|rNhjWUzx3SYIg7G`y4+j z_gThQFx;Wc+ejT3=~0Ac7seLl;raASe0LKw()<0z?TqAhdU@PqEBfa0-`$(d4%M*uk}n0~MegxMuO2`+p~q(?e`)zMPM}O9y(R=`$xf&#PYce=L1>c{jihBsb#!t>1xiLBJMJy zV#h`Uo5wtzB=M#!s`4Juez$B!*wdF|O?m)oA)38E$J@)5qD<7uaOGddv5!Keu_3>a zkatfCKKb_-`DMj5Scj~ALC@_pj;d9}BT$$%LL6wvU_4NyPU1*?xcc-BzDT6T4^e|9 z!s3Y}T>wPdK6`zV{$2dz^)uH4{-MD3*k%Wc-{&lYkey8RV{_Wdc*?@YEd`jW?h*QP zvKiM8wCjVb;|4{02@Ruag6%g%W?X&xRCr22j`y13jDLlfRAoEL(7@14d^x?bv=@9{qjeH@?|JZo-*9eZ&-HT~0E6N}0X>|R&I$*(`4o~#Q#P*DU<_zMf!7OPd! z?(#WtaXUF(3bF}*P#?H1%TZL$k=Z}Etp?Vg; zA_tQJG{>gEaBV*#3Z|ws<<2G?V#f3+S`O+BkLpTqVWZ;00}I(Q2R;Qiic`0XIc@WK z?9*=ye!cvm{@}$%O@mWibVRJa%*6QdqjFceMM5G>30TVns94GP4srJOQli{_x>)gt zH-MwKiGy0aJ)>eq@KB)Vxh_k6c|qG(PPvEJBEpfy@;9B+`cLo3AIK%Zs3-P!g=pL# z(29DynvPr7GyyAavfqhPFv7i^Z#GHj@aipqj?4xZD<;G2J^o%n<)n0DBou|!0fv7$ zwk}%71%~>1hnx_PRhy!h-DfLRB%}=Y=#jdadCIG_)_yPHKPsj`$kJU1^qtaP+4p$H z(Xx?=e!V|DQ+x+cA>c_G1{RJSFVkfl7?4Mpgp=x9&pt6LS`i4gr9PIm+DChHb8|vX1EZ#* zdJpl3HNpUo5?&Xj6+_zK)h}5vSjS1qL8jO7HFYe#+a5CmZObU;Gtb`)|v zZo7Da_R)eF9MA;~t^{B?!A4e_b`+|+KX}@v(0X9gRWsmInjs&dC-t!8{Wyn+e%nt2 zCn)$aCx%grmcDuGLCw?j?+FZZ4yWA^SuZSua2s{N;w4MwlRO_jJMk^XuO}(XOx7Oagcq+} zXU68fo*OFSG?z){_5RYwM@9XU#R9x{AaM2WXUbg1;rhDwJ30H7C z1&neR`8YC?f0#{1uGV6Q`6^XSL zG;>E;E+#Nrv7MSKCP?*jB3K^JDXCf9B1SSX{u*_(jJYWWZgqz>G=1V`0X%(oJyBeh zLAhe694sD~g0&CUGHNd%dePvf>dL%P3ZTuBECue9Y>0dS3K1&DuJ5T9pJ$?6U7;-y zklt^;7eb4vCWIbLP@kccVf*Duha_1j`$Sl3_qc>!6gYOCB2t33pz!6bTV$`wY z%0RG0VWFot_&|YCv-_rQy6e?OKE2i>>O)1s*q|T!MsW1uXpFkK z?8b!GK&*KAez@Yjj|d$t!JaAh8g0YjUj)QENI`*&aYtf7T&C3!q(*cH4He zqr_GPVee5eVo0<<)=uojgBfriN>n#i71vV`J-V}UlzYK+pNcz}-s-V8bL#Z@AdT4FiCLrC~gvFSl+YUEU!GW&_%yKS>NIE|%d? zY@LV!F2-o)IB6PgyAV4qtt{XExxRsr;m<1W8SW~Rh&ff9I!WdyWd?>A9#s%%4VNtX z$=by!(}P(u*{{CdTxrl#bH{EJZ-2w(1y>saa>DL$lw%`!AH{ph!2ULP{T^P|qCJNu zJ}SgFJxS`Jahn6#iRz*L6bY_(WH-$Zr61R{F9bGI+{Oq=uNOu<%L<;U%IGq?NtKuX zZrEqIf(vdXYv8Y^{4FGW_ZITjS{itAHM8L|B2DdR~71UP=&shAaM)%enz>|vXex*{WH|@^L6M48}i3SkMU&Y z|DVVI;r)Ld|Kt6iN^*`?BsoHys5;M6EbVGz>@5kml>r#LF_g+1xUBT@t3gBaCSD3Z zOOpD!oSju)iN3#~S}qkU^m~=_d}{>DIlYvC{c}S9uOIpYAFw`e>r9h93majt&77S` z>T%;+xrgE%K=!gIx8;E`oUek63jGd!F(YB8nzX}LaFq!{px z4*1{g59+_|UkQ9m0R_P~#6Q|2x&7bl>8%=Y>WJoCzt*62?gtXsKS$baS3g#ge_S)ow$;P0}ALz`{X zow1`1X{%jgd#$i>J+PW4A?syfb*Cc#&S^x6382C}K(_JP$tIJ0X;`Q)d?tK^)AGD( z-jY8G2jk7RH{WhhE97jBTc#iLS3T+rll3TndP*;M#!_qx6PJ-o>{A&j{JQB!MSFAW z5p%t%?{E-ClP$(^)*Ek5KzS;#)^bI)(1;r`#TsC}fT6eAu3tM|0I#rM z{K7R9TF@D%_-&=zqf0Wk!e{W4Z{@tyGtUoSzXCZqB|=Y3h!plrwwO;pt|eu&!zyA1 z;H@XRLKcCHHu~?WU$zru>qkeS5ezbZ{Rl$d!(6QCzAvzutOS1;3UD&KYy1NBQRvJJ z?@O)+UQ+!v^sy(?zBMpN!X+q~ zpAVJGVO%wx3d$KZM45CwBILO@QDG9TnLr9v-6m{3W3J6FRSm#|Wdqf=FEw zR`90n6|zpuh#~<98ouJ{bgXx`;|bco;$ho&!R!31#jko6_a-$8?+4w(C41o~W`<8m3ymnGkF{mZP;d&OQENzv>3+)P1%OXt+ zwMf0s_>|)>0Jc`k8`%2zl=P;xO2Mu*D^IvlATZ-9>-Vx9{UBP9WgID ztU8nQE2Q*7$l29S#fmJWuuvk3m{TTWqL=JnuT@ejBXO?$4=qGU>hMfjE~ff+}KjHSIsD zxf3wJ(lOxuzVfa@=QzJJ?n&LgC+(7y<-f&>ufWUfOlpTCkioto0=QX1>Jn8uZ&136 z)~lrNTPk)+d+e1h1C)@fRLif*vP?rq!hrqtf5-?^CV43<7Qci){WE}!5CL^#X4A@0Q?O{I9{AyJ zdomSpfC*R5u}U?@@E-*i2Jo{$;b+u#X20}Z zF@PSjF!fVfsRkK0+^!Ol++1FjKZ60D*ln0kNY46afQr~z(40RwLPQUcW+xrZj{0Za zl~QbTvUaxVE1aB((#yhyM>&PSyH5(vF)qKL@n)tp8fw66Q!j89yeZeg46psiVaSYa zi*gR^LYz{$p%5Gp-*x9!-0P*X3-U z+{?>rP+RJ#u3_cfVPn9i=gq4>eg+W{@^~>MqG+d2h`w(*a{Py7Z(AN6x~M5aYdv1a zt`a;vleLP4$c+tS)yCy)yLlZw(aio{p(|#EJAgbp6!j$wxZ+)O#W5eP!p_?|>TWw_ zpUYj*aN-A6vf6}v?`mHjw)GwL8DKA3o!7on1~r@fxSy@9H8*<(5??NrtQL=-Amxxk z*P4JU0GZBn7tdAfGfjIoqV;DIzWP#mcAaH^6g0I4SD3QoCzp_NZ=H8-|+$kE2-PJ(yp+^{c{>+e<$yWxiAp=Yvdocm$ZI$F0S2u zdr;F;b|~&m5TmNk7=}_dfJ)?PUpqm(2^FYV3DYP&bHC0vJ9{O>SY~g7YGs5i7FB*H z^VJh{golA&HJ@S`hF(p|EoNNV-oZXN)X}d=FdFTCG|!)`twYs-`thyXt3M=EGG9uO zum@WAI9nx)J18>;oV4c3Y|%Bj9i$(YNkDDpi+3ijIpCGZSMS0bPX+c#D3MtXT6=O&D$l)>NnOL1&DjBGjEjhX&c=&t zW~Dpp%|)axhiH#7uJI*SSu1-!>d$cZ_DbwE3HQm~s3-Hs{`oO^b`$3=&VOkVK0%oH zh-<@mMU4#lE|ZY?gChG>j2p>BwpI-p&+nB^OIVkMqyUm4PoMu>2xLdK<7YC2HEczVsV5;?5EPITy{_Lqz4Y3FGFHC-u1qbs4R8C z=B_?r@*3y(|lcT^nrXcGvmm_!WU(hL< z)dAS+bTrB+Z^Z~>-qjtUaB@gHA5ZNdOT$rXFxqf6t}QK-qJi*Ez1!4V^s;Q==Jsv|hJ)p2WKk^(S5YwsW_&`Ln;VCl(3kayV9I1nWTqW&#XuYOhIi zenePQa`&%2&lrVVKX51Km1)LJS(!0E1N%uRllrA@Uq9%yxce=O&ZP?5aI#e*q$mkJ zOy576IHOlNcKkD9%Z+2GHzB2+TyPwxO)@sgZ zTNvMRZ9G1Fbl7LHX2oSDLG8^O(TQ^<6iNfrHK@hbOw&!zqDM+K|Yx~&RRm}2lbe<^;g3ZBq_-f<`Wd<5*FsW{*NU;DvSJFc*NHa+a7P?#0XPy zotU@tj1}!`Oh(eLyI6vv+DiSAAUgdj+3iMVd0v$+!NDy&C*YN8m$|lYJzJQ~xBLky zM);$nBaZ?cRx(X%zpO0BqF>_VwbeWF`W?Z)euanegE$TTPLg#e=2}*vs5}=rMgIfX60^Lfdy4vaQ=tvH#wv9K*D)8KKzTIpt zGfQWg)$|mjONt=pN8d`188g{Ts)(w|S)S6abVOgw$C>HWOFge)ck@Ze)IA2VI8wg9 z%`mFXLspH=UkYNxxsN?DQucbtoSC7XkGW1^oi1v-1(jm-XK0gLu{0VKFxH&x48eJI zK8bSA_8+gWYGr)zZ5|#Ew744V*CqrvNd@7*?|8X&Wv^63=fL?R;UZbE2jfdfC_Z^Kj($i7tq4WPA`Aw}_*;xS>o84lWiwzlvxD#&O~Pv>;(ZZO z(^jQg8{YOcSMG`Id3@mE{oYn7?`_t~rxO1AFQvEn(Mp`Hzpv$=YrV1Jm9k8@k6s~M+R;K6Tf~3ehUWr@WU=t+;@l~A$s-`(?T6EIN zrVS-K18wOyPTJjzX>l{VhyvOFemcrAy-*S#6T2BY!t7;!qeyFZeT^W}Z^2ca^{gPu zm#24aHwi?=%w*yii2=ScnL=lV2 zbf`{9W%Kz*pI^ID$b}_WM}r+d6VzLLgOzRHMnUIvKP{{C8u*cS;fsz|XmE|fR*F`B zVHwSwqXu2v&ms0NbYYsmKe#&yN3tJ&!1sMSbSrxB+t)@ zc1I&{r?!!qG>GFG%ck(XG;4ueU1WaS;DcqXLcrUd!@^RYTF+r(=mlDUPSpaTZ8T&e zck2;fZ3iF31yM|fnVnrJhYX>kky;tMQD9SCxetD`E1A&yQc<0+U@uuT7>%XYR72f_ zk{NA7jFo}IYBRlYF;n+;jUyW|B`K%44Y`-N-g6T6Rr(X9!e5oIUZFbYl^lIW_ZhUI zFWc7^celij8@rXT=%JHMoTTYU0U$j>mJl^>SBwhzmLT9oZ z>$2S;l9ha@0t=b)SCq2;&fYk?_cqfyG`eu^-#SRrZbJ+VQo6{MkbH+54FGy{5*!r;p`ZkrFG^ z+hnJJlV#ZsS1AeSCqUz1IqDTRpn|XL3hJW=yP3PZRI!e zIYVG=kja|q%Xeb!JmeJN%W{2lbOgk?{Kw+nMNBm9h{aI$HuR&M#ZCI~b&3z@+ zFoE8J4vv~CT{1?(S@4{i-j)vxk8ikH{BtCY5;Q7kLdHpY66pVZPg08mf(4iZEHCB2Y(SY2Lk#N>41`tQjOe$0)-u+1+oave@Ak|iaJygw4s8@A zAf(~hvpXZr`T5{u-;Z2{xL+Rsw%jkwVJgc9;>tgV#$d@!NT`0)WpO$AqzweUt3W7C zYf9Z)3pHpx@aQzw3Pt_xQZ4S$)Jp#4UoW`6%dttIo)o-++RT7H$!PjWJmFE_Uwbve zBhvSai$M?L?DZRjQAlHCd7GQT?gyl_l%fF3UHb0%;6gRtAH=QBu1S;49ME)U&lQd5 z0r0^GOAAT`B?AmG%6*NqewmmH5p35T!!61(dm@Xw`qZ|nwYFX&Z8y5nH3*$|@r?n)Eac;#8NqjV z>cxMxG8N^1q$da3dS{G*TF6mF80QDYrPrd^UVR1~t9vwA%UNl^`z9*`OEa+RDa!N> zN)9{>eJpOc6vs*SfjHG70c$sp*kY;cS{dDI?*V{apvPXnbS1a<(f0l}K5&A^$+$6( z_a(M2N|*KBb$(qQ5sy>Ef7*LQGy%v;(S7ek&>VEQsK^S~_oQuLEyNQYXsaA` z&B;$;Q&RmX9$f*0ZpG-^!ysNu!50rCdu5-0W7-DW4()L1v|2|1U-03owy@NVv*jj5 zBH-c5Y}7jZ-!*~rZ~NG-#OU8anzE9{-1c43DyHXO+cZMS`}L^UUU5V8kSEwHlT{AD zY|}FiDlmVS!SJ17n{yH~1nCJcq`0Q(ITOyN+Jz94hrj+01qr#mSOv3bi7S+rO6M2@ zI8p5cjj#ht2qLEJHA%&njX&{D1?fQ}#ZnMRl6N0!;lJ(KOg`(iw?tvk{1hQ9g^{;E z(}LkGHqTA^`Sbns>QbB_N&ENIc~AItOwx{axdXV~Az^d-w}fnOW^GyAi*CDJZ)bW^ zIe*u7Q#aAKC18LhoM38$I)TuP7^13Hzp`<6o|q0@JgC;hf$Irk5>6#wWRv*aATM{? zu2(BzDRccQscmrIQe&w6S^fnu0ItJJm@>t#EUloV#-n9~{>41HzL`ML{?KW{#)%D) zdUa!W?e{_?Li_w}mDWF~`L~?~HHYwZ>n9LXaVG6bGhN~`Dv-gdYi52Stl<&3mea*X z4)-ROZ=nmdfa{2&=QAfN8oV3DJfpR?869{n13g6UaA2F`itzWJ-UcioikR}3&B-sg zsQ{15=F!Gqmy27@CYWPWjbz%I^*<80UtC{5h6d4!neV?4oXfLmIcON)e8dL&#+;@d zjw!>{8z>O(iOClgzO}~$7Ir}VG|C(}tEC47Z&}u>hx?ZdD8;p^5->Q)gU0Lj3pTK; zi(YLP{w$cW0Wy(%SuO9DQjE}SgB4d)2)f}~6tm8mXQ)wCG(1>u5ms7~u}J*$#M$KD zEb4s#TtkwHsO_hZr{pIAA3i?54+B=Jy_TPAi+&X;n!vqaDUiVc%}s_nic@i5w+;M0&@CY?&R{J%SEkVy~q>kW`gnlAA% z2TErrR)9umU#+;OL585iKfnNg_%MNN(9o?e)foM{op?1CCOtC({nPe)P{2X2uk2PU z79HTAm@EQUOqrvD%VN=4d2aK^r$Zn;uMhX2HWD2OpShhVksATS*Sqk6@pW)&%9c*} z8c88W6Rx9eIKDIy^;OmtQ**U^Lz00{PIUW|E%vJ9H52M@gnV4oW_fgO<2HV8alCrB8gj!~(K4%isf1Cc8qOH-kCeyrH7cTfdWOOV0A4UbkZGn%Pn$ zX~XnyALe@v8WFHC9FexLl~DLBR#J6!zWCSZi~$0kS(QwGhP&}+JoY7<1sOfr-k%uivb|- zD!1qq$?p|z`0;_la~BC2+JUW4A3-w`ECY)DKLc$ArFZhJ`p1w*Nux^8kHUlzp7q=ZD%+4CO*JNkov`j;P*y=>J`|W0|n^v z@#xIQe%04*`3&*qOauZU; zw=cvg@V-fT8!RYO)!uZj8nvM*u6hz(RZd64$BWi`i?+*IwVww#)^7##z+KVlOSo7x zp?9D|fvT^;1j{;}y?rb=2b4abZ7oVbQe!Ywfm+^e+?P*Heh->ZIjE1y zO#$z01sQHg2h2v3wu<24C~g1g2(;CT2wmCR(@D+XtU}k;9I@BXn(18QMu=Xe%5Kd! zLswKipTkMeWp~5_d(R;(VCR?`@dMP5siz zuP*&k@-Uq{x{Pee1z-m)pa<+;TV}>YQaigWz3uFp2|x#U56}RwChHFcr*|!kduz6# z7MABxa9M&l&i(B%M+C)H#0K8d+*ZkQPPtj{~J9$2k$3TAg{REGUOTg zGiV=IrnS)*HTA)Bwo*P(i64R$<@T2VZUZxHuwzVj&#i8<;Dr24u^}fTG$hJ)?Yi}` zyGiAQluR`9)DkzO^H5g3*#r5H zf*jh^eVHaZ{FeGWzf-!mr)QwZ0?vn61(qS;3&(QRTqt;Yd4Khh6ZPTIgw{lC7VOc= z(_%p^mrJA2cz$YH2PvkR-kEpPp6sIm2K$#}0bFp6dRdsKv#|RWgc)+-_}V1zdstnM ztD%lg&(Gi}5jXa5x3_=&J<5zeK#Er#CS>aTg|8BO;+WN9wXrB#%5t z0dm*NhjcteMJiGUD>}0F@8=rh%Z#}<4mM=i4t7c75g1;93vuD?k>NyfT)SC^KsWGS zVvj}p+NS^NC03N5p~CCC?yWkX2Qhs8gg7^((Bk5oP6AQ5MuSusptqmucF>4o8zDeg zf8lOV)&w5@ixjV-q5UsXd|yc~bA5dh;$cxYQ-0?j0wHk;o|ZIKoqeiOMeti_i4NM% z#)p~k^St!-tGL6*o2MU^8zDgRBXOS`n4eBWgn8<4TCbJStl?7S#Kr{U+6hJqq3Pa} z>ZR{sKbBa&XzNCxVjhRO2ETL{8mM=+POlc+c>26b2(DKc*|WN;Z6R097V)2?07hoJ z3Wg;I4dvjA%-Hy`K=OO;hOF_*YugIE1f=o;@G_}YGtwb&ctL3jdyCYHn5XvOO1UF=s}$SFoK9vx5lT)_u9)a!&I3S=uoZl|l6O+L5nX+BlC zL#LT=p%ghn*@kF3EkxrUyj2{r=PXfT6eds;8GV3}cquq+?nrCoO>-!MicepXk`Eeo727X+zaY zI_QT^I=B0Om{hD9_n`v20%&}WO-f8zB$H4e7rdwiVrSzy93Zc%<%y*kWMC)p({ARYcFm`K3xltxGyX#=0oHp8(n z;Uty@6bRz}txB5oh(Lkzf`hTywqV<*3n4frM!#2i-(e1#|B)2(Bg?gWfxZ%YpzQGl z6%{y&i!fA93}px$vYaH2QiNk)dT2iN^X9Jx{D(Woa~##P9wrK~Q@T#oM90w%ffUYs zY2JLy0-gjRoP-@GthW0fXV_JXU^*QQA$*ui{e( zR?3gG3j?UL_pDpPX*4`@L>&s`&p{V6S!5Jm);C*s_v|8E_`{#yPss^Dg{LC0YYedw z1&t4LbBdtP-OZy!paDnM7Tn-TcqR)hpbE&^XS5%wJU=TdH=(3B*cH7+hP0MU!*aQ}8DwOV}Q@&UHRtS*~`GfX_!BZVkmsMYAAc0GJOEyhUP1 zHQ)HMHtlh|)8)&f1^MODSQ>}~IE_tnrTQ$4ImaBT+)4b=mep?n{SkfSK#z+A0*1L} zVZR9)YB9ydeNv{D_^LHXTnruD#eOYbHkZ)o{K|C}m!7JX!~NB#B;4CH7nV=Kc7 zin{BO%)yH0TVku!G7C}c(9d%I7(mlWY;1jRX8G$(c-_piAjpa2x}uj3u7#V84t5+iZW96f&oSdt+8Bs4CE9ZAQ3?2eXTr>%MCTp|lk55vZ zrfMiem^RfPBjaDQsTE?_CTw^Hq@u584!?Cd&1@6&IITScji&Lgd06^et){uSd+lCm zboF*Kz#JwHSD||2+{kCWH{y_38lPf)BZ=vX3i1Bi@e_pCzr+!GS&CYz=b$yuMyDH> zs_JMdM%+9Q5|5C+3-GqX+NxD^k^#p`H=g+P1o?b5$~3}jcUMOfLCEj?Yg5Hew~dgv zW=7dqHyvU3Xc~rl@w^9Cyaa&`N+9+XX`5qkgk1YN~{0g**9pUZ7;W*ouz37 z*@tR>lE)HS23!CbF__TSYn_oR`~NxkzRg4~;<)o#6WgN(E)*E{;j{{;PCyuhVM zU15Z*iafY`oIyEO4r*;z3gS53@RmJZsBL>!hs{B{$z2vBN(kX|irJn==Pk35ZD|Al zZnhn`cH+kR;6*+7e};1Yf8smaW>~w~zj*OU0nrV8?>AzzIQ)%z;CI-H1|OCdd*qnq z=D3Ns!%iM4OPFHuB%ZepdL>>C3McA2`0U|z*ROP5pZJ^_S;pshfDqTd2;ZfiFoA`g z{qAA}VK09F$z%Zj8d%;&1>9`ki<$Yyc_|QEeQ}@H>ct`uogzKUdSriV*9f>NzCqRK z@7d!ukX2>me?8*1A#(e8ub;U&i%!bRaF~!bRQzbO z6Gr9GT@22?tZIT-S5(#I@RX+nk9+myV7%*sy7S_y!Ir`Nhatoi&j{HLbXmz|XpNf* zO;?dXY`|jEL!_W8IWWZCl7cJ54GU+v99{cGq=T6$aAQ?Poj2)69hj*~Nez#RF&+ib zBn`Rhu9;xkj`KuF7Kq+DNUy;*Ep6Vg29X0V(Ezo?uI5TlMU~1D#L; zyY)z?Wtzr9(0+J9Xla}bomn{jq<2h4oemqn-gm1EtG69&awOGH?^>7lM2H?IH5gz6 zxCmIOV;FmMAD8m{X^s`grwFg~x#~?XaS$Vv(xhBC3M?mM;DyZwJ0h8{@>ZOrOmLm0nrBLbgO6 z2OcHhVa%b#W>>j*dveX-bmcn&fcTr)lRGA=-FN*edg6cB*W~crs94x|9oXWLIAf?M zX!}!Xp5bx3%l8c5nK0nO6ES=lr2qz(fcM|~C6wi&fxtly%Qy05 zBY+3n_f*8p7Bk^rXUnOKY;}d>EFxjeXuxU-8>k~!&OzPF_*?lj#JG*Iw1*^`ZRHVW zT(G?{`*h%M8MSxB0)ZUZuP){VDI0>yS2Rk#$G&K^jek+wQR|f^3$fJ!eYMQy6^p|L z1J@=vxr2>U>&u*d6O-%tXi5TRW<}KkRF@wHM?AL=E72QM((Yz%e+o)!o$owA0xdx! zT|3cgAwN3E038_)cjVff8N*23A?5xqGMtSf>L)aAsmQrq^{KO=$#;5#6sJjO0Y5Jb z_}S8)tf$iVL5Aw>zS&DdO3%|_>V7=!*;6T<4xkYPpx)E(l~=S@#_uD}kZmcO{kN<+ zk|pffw4b=Lge?T<{K4{yDoV|Q?;!_`-M1s;!ifq4^3VC(uf?N@B94_bz`(cDiD&r5rx}zq65T&Vs78L7rieVLsV;cU>H{{?Q6cbl zd7#e09lStayo2>bA&W!NC{sVZH1HBvUpeY3K5tENb`g&Z7r7R(n%{@>e2+*vSkiR2?Z6`^%d11bI)W+|e;a$+L?spBF>6=Xn23>kU#Az9=Eq0+V!+Lj7FVpXKip_F4H$Ho$I5X+9PW z*~Ab93$9RPy=tZ9u?(!s>t7GKcCZl&T&NA8_NRUZNy+QD!qepcNN1nMhdo$vo3D1a zh}W}GX`wn4Fq3D%Zu<$+^oU+L_^A5QJ#PE28C<@8g>+tzSrT(`@DC3>FgvZNKkQWE zf2NK3-+5%xKT%8go0^$z=1{U_iCkZAw>@eVzZ2rBeD9Ua2ahGbqgO$@?Kctd>0i1T za3~?@Kqi2y006w(eAwC9;o@72;3f8fC2?pw{2(<>3*o#CxH~T{=Q)jfru>h*T+s?4 z5}g|~_!%;W;;^GFrpe9JW)*RW#9#_(`-|DBuU66DE};h-cAzUgD-P=&d*mTOj_n6D zOP(k%Y=f3*9}<}JpqgT7yfK%x081@`^J6p<_mO>L(LRzNSm#Hhxy=MyX}?nUiY z*YKN<6kGgWY~32PU#X+(N}>|x?9$`Sj5_=u4KH0*bqy!gPv>u{M_P00=V$VOUbm%<4Wu|BPZg2ifkQp!{=m|{%#b+_0&@-i zoq|MjzS(-Q`;svCUxtRVT6Gb(wQPeD5`NE>3LIap;u3raNYCRvargxyig}*{EK7}( zSp2Xi`x6}`z5oS9HRY-Z3$K^h5EW^@@eBeoSe?Pm;+p#?Gnf^&qBZ2A^!NM5b!--W zmuKw_BiFT$#H7PAdp$O$vQEdl@-G{Z0`A`HB|$3?L1hN-pf6EzA1*dp z|D)G|y2pJ{i7M{;_u@xt*^ zU48-n&lD2U>uGGc136<4`VQ4cL3 zPB;;ua6p#oTm)%=V%+YAj&$iNFA2l_FdQ;zRFe3lYjm=xHWv~XQJ&(zC6{rChQAo^ zR?Tib+22mxB-45i^rh)7f;9B-qxnPXAap@MSviBH7WdyGx=ES`TN^0TemC8U&#i3@XtKP*whGMIdOvNIiauGSTTa}# zHwSkX$Glxa%DH;rnxR(PeNB3vxl&aAZZlm?hIE9q^fSTH+yrKsqEX}aorVd@Vv=q> zWB>Q|l^u0pq%9lRS6^Yb^v_@>f0qxNlQf_y{-{BWvHnCHT+Ml3zQr(9+uuvxt0{=+ zX7PjD)&y7*QQ?qsSUG5F(BBS;tuGpzax7_Xhfq0Xr9STyiFpyCWkq27jY?AV|3J62 zSicj1wjaxnsS{fEGnOtS^2l8#z$Mf+xH}!ZnsR_q%-P&9{5}w30M~6(sE7JyFVDBJ zs~01*>`$He4{f=`C`u`FgO>w=viclOJdw1h@zmZNl3Wh%t6(!DAnX^~fv`8S^S3p} z#e-rq*KCEuvs#i53M(AHR*G3K}T}I{TZv9}3pWGkA?82N^-3RDD?)nK9rLGx_?k4g| zNr9!_@U&PzBJ2u_b7(k4{B=Z;bZfMNxWHjR0D>m@)Y*)c?DbJi_*j(M`Xy_qYjoLn z1JgHoGJszu_yS~LV2D(dl9FVS z-QBek3Q8@xbf8g1E>^cS;LOv!FGl>3X6{)%=B-ay{kor zHoU1*)LHgq8@NXZj{J6$Nv|xTi1^k!I1$jrFH^4aZ7b=hL7i(@T~OUy%5H)LUyHZR z(#g$U^6Z4k)L@@8NG_Hz7Ch1pV|IvB`|Teh8Jq?<}||dVB7}U8<~($H+_6( z@aSb+>PrXA0Z=CL*p53aq9a*h!?^1hIYb~=O}=i$_szzz|inxtA?TmFK}R` zBS6kuO6)gz*SRpUwlMaE8qHa9d7y zjm9v4x|a6&{JV>duAPqqq6~UOAAcGOr|Q|L;qh39NyRkBPBZsoq%@F^T2ATKd*t1 z9tPIeg!bgz97*=90$Pagq?2B8w8HaCq_ToBGvx2Z!b7znn_FiG7)E&sjnI4;-bV;T zZ0Zj$?QcizH6#^0F-0_S$To1su@ivt0{h}Ua0XJsVEWg&Vh}Yl*beHa&)!O#r1bC8 zu3Eey*8Es9tHG_HuI96L&OAcl}yP>|&@JES}wLK(zJ3GXpqjBK3 zyw#j|J<%{AEC&!f`%gq0#;$3+|gPXD&Sn}pG z-NBi{U_R;{^elI8i`h`+HM3@NnYH^-Fsg3^+;E#hMc}INp{jO-+(Nw3uVe<@32Fn3 zN_yCOzP#(~Qq4)ROxpTFsJ{pev>;|71Tg^v4JBNcel51t@h$uR-dmb~v$^T)y!%^A zOY7%NkqG2aEI_m$gUgw=+gRi}KC?kKli4HqIi0t^tf{%(LJmHFyEfqf`poU&;rvQQ zMOH?*)8w3!TH9EBq9DNJYjCFRQP8pUyK?9tvq)o|WRJSX_w#*OgJs1Fj(6G0PjX`Q zc&d5Wd*~C^Zc5o3Vq#b!&Xx~jwdEf{nob`&8kP7oq7rC9iEF007?7nc7K@uAP#{`+ ze|He7zmgGlWdwQPLaQYg!7obAd<`Jwv3hXt@V)6(sRSgX|2n+*QE) zihuGJP>E{>VB`XsFXHr-r-9-99(Tt>7|ENp=0VJi&rr;h2&4WSp!$bz(hI1j?Q7c8 zE=9md@j?NrZuJ7;BwKurQQD8MKi@&;i=3oRu17-4E6w9Hh+!#fHpnM+zhXa|znuxE zDLYVptSeqHFjnRKa!)q$jho-Z%As0fSHy1x*4&oB7m(JNkF8{=AeYLuq>j0klk&20 zISO>x@PV&vtx-$kN;4l{tyZ;Jrl}J?b>b6_qDH<49C6`ZZy5(eVivKarMlCh(OATI z;!nVnT;5>WgN%9We)jCKpu+LkPcJB{Gsj$yuh!&+)5yduPcHu|j9&yO6mB7-VL*DV zgJCMen&MZCJ$+D51{OF=h!EUC`}40hZj+`!@+AnR&3*eV2H_wowJ#q&a@9zbSwY2b z@pJD6A5&o-LjV^5c!UFY&Ae+wd)+t^9`@TIrAQk^K0cp`FU1kGWLLyM+tzfoWZoHy zK~IcnvRYe+LaCdmv%pc8zXblw`p1q~poay)oONGu@tr^V$le4$8-2%7T0$RU&S+eP@+&wyu`KJ$g~jM7m@#f!2ErDr*0>Qkb7cdi$tC|vh1-Sl*9kwzon zo7SMFH>quw+OZ>de@dDo>%2nKDRvS`#BbQL*Vb zXKukijA%2mXET~#@F8p1?Q~&4TfzUWz-ZcDWNwi0B_iUdVE+Ru)BTX1qAI2cWot6b zEXbiL*Yn+WYV`-4Jt)g>I+Yg$w0~-Xoyo)D2e;n8)BV;&As<$mSAT};nI-W|2#icz z6OHEc{9qxZqJAH~&+d^&3tXV-ud%jmL-7_?13@i{81xNGC_U{WkjwQ@ocyW-YbxtJJ^O-m*s+OCi?% zj#hz$EkAi=r-_bN;l0EW6?<8x$))PZP@Jb4nb6OwKJ9h@S1LYC z+{i2{dv_i>ijm~Q(a~8@mHV!W-LK98`hMtXbe0cqnmrgVOWGJAVD)w>{b_N*Ui}MA z5sD)H))YS1c+bH+3Cz@Vbu^M-P6MwJ8wF8Ds`iu@t9$xgFqN>lmN@sn!Pw}Af!^NU z_AQVQB?&TAxCi9(b;cuBTTyz^nHz~`+WY_;hF^Q#@f}gozV=vF5qH1W{PUjb1Xz+% zXfQ9iXmjWX*V9ta3vP-BdStNM7~M^Fs85jGVt!uJ;ZeEWnaom_6Q|o&Z=bfcF~Xiy zz9W|sI62F%%_y|d7!W&BreY-Gb(}aMhF{~(Z=yHBSuYv|dXr^WV6HP(-|X}ZO2rK_ zZSC;qr3ea6ektO6Op=hElbIMYc8#u|r=9_XREVCIShPy)dHq7RS%$@qP>kD60!#Ul z8Oqz`Pi|0Rf;na6Lt21gmSmztq>cKn&l*WPUBbo6D{=cnRQ_5+n_V|1-kb?fYagf7 zIO1KaMcnC)!KaN(6+VtBZ}OrQsrlzdorZ$wO6Rb65^B3$+$W|%9H=v;GO@1Bypy>v zL6i+%$7y+BqR8r^E#MP=nBYL^Kp?+E7Lw*9gKjUU?6S+%L^g*2Z24~cPMJxm1=5@h(o^s0g#JR#Vp+B$3`}E{6}#7tTafwAs9FDjS|rItM;>*~^Zd zJ&fTO-Qh#=zec(?ysc81CU|us?_WsN`#U-B1&?7-i57lN2@VEZK39Kmi1Wzf(-R-$ zLl5PW=ZSfCqe$J$B{!wuXSg< z1mIBXxAgF~2LqnG;287==cVVcKmM3|QvxfsNOL_mU>PdQv&meI)W@;sPL3iFGDe4k z7h&IOZfu^I+DBE>lx}#@tqS&OngOV(yy+{4jUVxQKh0=DGjyqo2}PhlP7l}dEnH^Z za@pZMp+wYBb^2M%pz?W)St0kR;JNl9=;vE3Oc99Btiu{T;)oSt2&66z^R^g5LLQ_% zj{JH!7c)0^`3&jI0lve5t$K#-%^w2MQ^ZJ9JjlW`WUk}T1PSBvlHKc#F%sA!wj>p# zn1Uu{Oupjd!h5M^_O>IjW0jQ#bMpk;s8N>)q+r7JcwO%+#9P9iYF?aM+0WjU;3E=+wMz>>_<%SC zj7Ur~i$1^05zL{7hYzYf+Q?ilY9WN_*&CL9$Y?_MNV)N7f6;ePOkkR%n&N==C>XgLk1f)j`e#ZE7cy@ zH_Qt)ituI1dO8Y~KJ@A5Ec8e(am6?K$ZI^yu{N9k_FdotL*2mk)@wcuw-|m|$uI&4 zXZoafcG!;*uF;l9x$|BMKrAiBv|xvz)c6n38TBuryHtDPtt&sXD_Czf&%5 zZBgY>?rr(r3@}mCR&ajs5y{&^^Kv&Zc(f@dk)DMvU(p5$9N>C^2O@~ zFWHk#xnJ~-KS=DN6F)4r!dUe6oAZfReP&JXUzFw&gG~c@h`xT*OqDN}cw)Hf*LjA< z^|T6D+8~87L*J?nG9djcF?R5l_BOvv;l;i<-*M$3piIVTmc{91KrUA`{EGk~Pzo}D zwBW=@Pt7V^5EmP(*KH(-HduFek|s$!RC#AfG%#wm2?3Vp$y`LmF#%&oLRH5R6bef-x4oVy}Z1}H(BF@nW5iB z7J#q(ug3yTG!!q6W%@Bb<2mcIbUJ5S#g~8MUhD)anXM#>n-|4(YvPQphv@6=7ge+B z;(dso{tEEF7V^-UD6++P2V=VqXH|`qj&eqoJ4H2!PVO(=J|Gze@mc#Iq2%PEBC3CT z-|8>Aj3Uh1#K)M^DtFBUmAE`R9jUN~gwa`#>acP(1b0Bm6}71NE`7W>a@M1R#lxiO zJr_ocg6}M6>vhemZzMBS3$NBne6BFAaQFibA#n)8 zTO~@A>zD*{ep50l8B8bI{l zs!(hV8(@{WPP0V4Jsp;Kk;5!g+A-uw*e)I5tc&rHOOzG^?>UfLA4q%xN@cbBF|xnS zk8v2s)2*fQh~d|KC)EFRm@InhdVa0ptHc`D490)>u+hxKCTcuCL6TX_81rLL*G)}D zgHwL9Bm%?_5uY;-LE<1N?)jj#=54j9uICM7WPzsoKxzymg@x8UB`i4X=-tr>?BQl) zA_Zy3@m?Ik>~4>pTh_oAVC?R_O!P#G+hV24O~xz_1Cm7PXZV=QY@Z1+Td>`ixOLAsmy*yY2uzd}Kq=d?4->PPowrj3Y@YV{vgPb@l(30=}B zU-IkFO|B^zPzmDbDwlEzGg@IaI@O9e{fT@6o)(`8)V`iLZKPBF% zVBjnp)-pr_`M~!GX+p(_l}-kMHUj6egs6VlM3NdIzX&S;Q@@gmwGsg(bs21qOr(4H zq2%Uwd}R@w#1|TNIh=(Q9h*UI*F}ss?58SFYDmrNcIU~6;!o(~>s`D*CazHHP5c?? z`fD~DDhWMnJeV1YVH5zsh^C?x>;tT010AuT-NdA}M+8u1F%pOtKOSROpB5cB=z9JW zx|{Xk-yNo@dR$0VbCh+2Bes4p<8mQu*Tzlvt&x$Dj|yU_$>d2&R5b$eTsWdaA@zD$ zx-+Jb6G;Tjs;Z%X)xj9-Sy zbCiOX?udob2X=Refsu(IcF$5AurM7p7IE9<_mrM;0!EDl7w4O3#;y&L@$S~8~ZDCcYlO+~-sEbA$ip{WMQ|IhtQm{humHssw zV=L~#Zl?BVcc z_2tiNhmIjf*P;8d+qiI4l9sA&yo5-^2-t#m#KP>DrZC1`pc5Z}V*$-B?s(kQhn>8@ z(!q_ydjIwOO=Oe&hgK}Uk4EIWiUs*GUY}(Vj%b-xPh}2^lwn$kFREBIu2Ap(G%?uk zz7kRx$kkNNK77E1W@KkE7f~(PDyl%J?gqtuTLW1Vh}k}k(!l-bt_K{ zY-3FKYrR+2f_BZz&~3jjSypcd9x}kL!IJNM80OOM?TgPy52;Ym{QiOa>irkfvHW{4xFhYBa)h>%X2b|0T8SQb>f~`RHk`Ib4fi#KT+S%13vU$d$CovS0DE~FQ`Y|1Ku;2MLF|fsDWHyq}5>a@2 zJw~ZG(m3?^c=Yn&ym_l7AAeQSB+oFX0yDCRl|Rn^<$4v-KM_LwbkBodW-uTz{6_I%6mZPHk{tF{-Uq z(I9G`L|Vw-1x543h+#K$6&$`1&Dph4@zuI#s4Qpqy$BRwgcjAzJ5?tvCNE_#%?IN! zDnuDFn#Q)Ca3c{TRDANmy*}vf4%}ubpU-wrq0;yk<+@E{!6pbjKK^PW#M>cG1s$mJ z<00`#Ywo2h9IMt7F660ccJInt(k^^GRU`>iBnRz9*SZq;a2G%Pc-8TJH4ju-_MQ=P z6trp;9Z`b^vxrf=!Ht5M69SFwG*d{Dq5_V&kRR%oDCJ|i(_c^WOi&>j($FfEPO1me zG?2dtQW5+O186byc)gyW%dUlRYvIGp)FNYF=X)arF{0$u77ykL<2Q#^$_wc({Z|3( zQ0E0gvaqm7*C<2h4>ZJre`YOxlO=%Wl;~tky3;_p-%30q#jKlVDIPuO_B3!Wm7*CF zFB3rKvUSHs47@hh9uC?{WsNG7~);~@>E9;E81+KiIh6K{BOnlvBM6y8sK!193cG-bn z-|wgEhm%&4V!=cf@F9qd#3(0aYFs6f6qf~K(n?YC;LSdF%v%#k4fv^2l(`uu?#4cUc?WDXW% z|N0e;CUo1UYfskrKnogh;lItM1f6g0FgmEt#z)~9Fk%6#9pA^`!d@}{*P==ASj#+o z`Dgb9>Xw-Xa^8m*;OmcvZkDyjW5g&=Rj$*A`__@x1?u^z0Buuj&P0UxMgj5f`8CDe zWmj$uI!E%99k6zSB9{lhtL2$QkqUYJYZpB7(C?N296<`3WYV0you`JJcbt+_m>1xq z6y1)JoC|8wy|@sVD2rR<&L)j$ zSLsO+K{WFICvFNptjS+UsF)b2DR^{!JFp3Go0@M#Px3%ic#tMY+3pPM+K#bj==F7x zu8lct^237l0QJ1nXi-MD$b`nfIax~3?fr_+7)$2lPAr8FfynV7*@7fn0}NM!OLRmx zsK&WpM<&`K5ZJ9%RnC}xEqNT_#5`M^c`*68ah~c&LuO{EljXI^DoM>oXOZ zzOh#J&(8}?FU5p3bj0zFiggNXK5|ZKMq=v+C_L(qu1JoLapbh&G{rN-Ypk#TQeR(B zB_J?+f!!gzwoFBrs83sy6~Za>T~R z5|I9R6P5(Rp5%dH@GlOMQMEd7O|v{lK`^f;wh#uD$~;+d+zGhOl>~N3`>Z$n-l}$p z*sZe!UrQnHv38s6KQ|KN${y-Dtcz+S^XV!0IPdhHeV;Cu&lUF^?fU}1Mjhn!&GPIG zY}j$}06&t7CzS?K=)6aYFCH%%@W8(jSDy4;p3m|eh6#VJ)wy97r-e~tA7^8Ge$&rI z{&t4?L03a9qRQ_MX0L`k+*H&e=T}OuS9%pm-mFDW+p5f-!&}Qi8@*Wd`e0ziHwaZ36hiK%VrOM@nI0Rwjd~F$DrwnNc zxGeq0w7xFt$$Zw%HvYTjYL;h>aXm5K#c$J#7WQ_8iNkYJ3eY3zISSy&2m(|1xwY@I{Buj}Nk+yB~%K#p1Z*9M#|UHyJbt0$4lt~go4F1x}O z3A{DP+|F5Zy6Fn}5 zuK>;uDEzD-@2(N0|Ml!2jXl#p0{j1){I73&l>d*={(n^Um_i_Bxu&D;{R=qcmVE1P zZBtWQWE&MIKt(7I%*dC>X#Uh9B&RB*SZMXEcT>TFDu)t>v4aY@s2o+1*SRtnIpfGS$8TAJg~P^^WkaX zr;Up1=MedLQo<_L&5BpwD^lufGi0oW)^oLh(t|H^X#ia19D1L$l;7xdm1k<^XV|m6 zs~av3_7U3TUGwxXD{!3_t5NVhJ<{g&d{(fBJ4jubdYt(bCrDdk<&&P>1@<|w$99t3 zvC!wJk2k#ClOA(Smrn%DXu$ykF6&k55Kpz9-p05WoL_L$#%iYKV`aL%?KR?*2GUX- zKTZbLsLK7^VVTGLb;aKx<=;XM~6Uwt>wls*J9cv42i7U zWfuLLIm>)QHQ#@DQ+NgXnavz9!8-rIJ5`%P#iJAe;l-MNFHm7PEouFrPJEm`b!zG zMMnj$YXA^`EQ*j0JK?n`{1vUE0jZ?>AJijQPI zsKtgFTc#;D>!c)A%NMR8#F;`F7#Sh1w(@d{O4O zFrM#^Q-mdf24wp?KB4xjvC?do@riiSwrd(j{6QbaC%@Dm0h1@14-9+u76<c#yCY=Xlzi z?dPBlT$^rTXSbSW@kyaVNK6TVxzMAt%0e!xsm9gs8%$T3txD)=oDQ-yWbaPGT3IG< zEfaUYZWMCrRq+IL^a)vV_ziwGxhxA0G~a3r60+56Ui7G&GSj*hlvbs)vj zB$Y_PQ>m=^0aM~&CZw1}ch=w%x|9uYD)7k%is`zJm8kT#YU|!zQ z{Gm!;P&^B9@pzQc5HF%L52uy|nKMy%rNucko2X*WqvyQlSH%MMsw6hJ*1W&_Y(6W~-qIW9`@I3LGrK+hAzdk;JyoY#U7l}J}a+r^;X+#qhUqCFb&N46oaAl1UF zxxn9&e%x26vos~FOX~uh;`B)8kb}2Yulnpa2<{^^H;bVC~15F*#n zVRSAw#nCHHCR!Bu*pduT8^sqA!7;bZEB|%M*W;Cyp$>b)3aer4@@s5^VMSZt4F#XO z-m)+IB|i7HL*E0=CrtX$)&e0E!Y+PYr7*4F`DF6u6rI8|T5JR%m<_K$2e0VOjuicI zhA%4!PGY8$i>DM){wg~Zuc^N~-D30Qm(}LYPuBR6u-qhYgas;ooeVHp2J#g_vhY(J zs0PCx3f$tm?gNqH(Ht^i!D}4tniDg+ZL<#`S3h1ir}$Io=w#`P&pd#fO@CH5^BlcG zcuBX~n4WWs&3u~9Ib!|H&>x5hnW0TO_1`|ilIp6Up~-Cnhjz@p< zP3m1QQmJm;O1;|(eRMA6t|xhXkJz92e(*~+AUn1cHz@$L!;UM5eq1zoUz-rX?3f|4 zpXU731xYhUt+bo|7dPD)HPu_oVo~hWk>$=f@()GxA6}*b17i_Io`0*oJDZ=c3#*%+ z@ua{KK?;mG6TzoTS*=;oGKz}#oBQ|dQU5Ac=jdXihOAV@QGToUe;!ZReDgMAg3L;s zcEt@ShMt{CcC6XbF<1s)AE!RnYnQVPI&`_(`l)Au;kdi;%d%b$C~4EhLfv-7I`VxW zbkyHvsjggu7KYsQ33)Y056B1JY>!J3TuTvXa_T$}^ZD?xkqjP{-U;iPeN}MNK0NS?lmOMWLj+xBbB(vxVeGW2u_Vn#zt~X7mCWdJ zNwt;7Nk-u0eqc%aoNPKjRhZu8!_+-qVP_}!;Ky)3$HUb@k|HhkX%+|yo_Bck?eDR7 zy@*6s5oem3CetF}CoG*&PaMWgfz+;?kJCFQ=YqG)%#gU^ntP@v>QYDMca@a8uBi&$ zhdV7(>wa2b1~PK^K_JN&Ja}9bc|&>ywcXe!(^S!*=i0;#zmY^Ai7*_|5CRmZB>nKJ z<1-URJY_@a603L*ec`0L;pW`sBl@C`2v@^IeC^qJcc>4lhX&$D!20Q#um+wkp4L~7 z9Zv#SSEG04ZRcMs+6Y&zY0d$SFoTX)&-t;`UwmFg?^MZhBi+d)2KTJU)J2CxAU`oE zE(L>MHIW&3B1JE8NCs;Yp5qDRq^9`_OsE!#Bb#>!zI(l~jxw+;P+q+7WQGvHKo6E5 z7xuz_TqJ2sJyLjAKBEv-?IC83huZIo%~>APB>>QdyD%I5L;GlZ1HXw55-Niimz9)ej+hA7ng0cL9#PRv<+>`r=t|Z8{$H?sE=JUlDWd6a!lV0itRIJ zkzb|XXw14>KG@xMAcL#sfF2U4+NrAGQ3vy;eEXieGV%tyV{WzP4HLxN`;qRqS-V#R zC<|0G9(y?MbMYXuYp^<%m%u=#p{hF6PQPc*q4JFsTf2wbNaKI&!8CW!`2AkPC*#b~ zY-|Kxvx%AQB9kK)+qE>M_N@Gn`{9D|-H~O!2?n6{s-v+G`>xe06z8D-`i}n$ntH2bS_4S^jGbNe*a|!p`UtS}Q5~d=U zNSXx6ge$W3VatT$BExZ|Vox%0Nok(oE%d*%LF{i!w(~{>4;kHPA7k`$5A4mM+x8Y;Dvx*elEk5b zg8VZu@Y3fY&P}PESx?KGSfi^J%OmXA`pjH0tT-0GT`xu#A7?8$Z2cctck-VU4zMtv NXX?6Ya22b_{{x6Z7Ks1= diff --git a/client/Android/aFreeRDP/assets/help_page/gestures_phone.png b/client/Android/aFreeRDP/assets/help_page/gestures_phone.png index 31f99f13e591859d2164fe89e307f8886bfddd22..4eea33ef47968b4b7fed3626229caea2d871db34 100644 GIT binary patch literal 27770 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 diff --git a/client/Android/aFreeRDP/assets/help_page/nav_toolbar.png b/client/Android/aFreeRDP/assets/help_page/nav_toolbar.png index a3102ee33a2c6d0fc0e3264a39b5eeeac8783d09..f66b24d215a0736731b836a2948a4e0ccd54da32 100644 GIT binary patch delta 2008 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 diff --git a/client/Android/aFreeRDP/assets/help_page/nav_touch_pointer.png b/client/Android/aFreeRDP/assets/help_page/nav_touch_pointer.png index b2446c400632536a1730407adb3413eceb90f5f6..930fc9cbf780eb5f4daf1da71ae073ecf789cfe7 100644 GIT binary patch delta 2289 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 literal 7261 zcmZ8@by!qU_wK;J&@iMlLk(RcokNPWN`njyk^<5a14v1V^Z;dH_c-^%20e~ZBtk3z z04>XN1zByc*}aT~NLoe8&>NCQGEJ!y5J>WPS{3XHTtt>)!yG*P&uu(J8h%5IB4u4< zUuZpH64P?~;!EQ83Eo3%6*KD-|0K=1djH*!+M(sO_p+5wePLmNecIuE!HzjBP^au{ zW;2Ur9lI%eaR>n52Zta508kJ=7|;p_gU|t#*zIrt04R$ML<8Vsm_YzLUbJl+|Kln zwOk(W8cPP;qXW?booISQmi&_+Zu?5=&g{h919=XnUR@YDLYfKBEKOQ6g?h*KS;sX9 zc9_Rp(=8x?(id(J+yb6cQA3e9%1%cnY9{-aY*afrQ^808+!Mc3UerJB;XaIkT)A(9 zws*sbthMjB>a#G&I3o{ce-^1WUqYXxw$l};tztgajd;M$o*yHHd>yC3s-qa~i zv}MKqokZuVle{BWbn`!lnV^-{{4bt#0$OPWjda=;&Gby=$jb(8coTNUQV;z8`iAof zjCZQzDhy`4WNUj=@1WA9WJc;*uk7MgRPJX*i4)*M^B8HB5cp7U`7EI&>w89X5_0-8 zS!ITE*;IDxf#YhPM|up<`!#UnN@;3^@n`#5{Tk$_g^HdXBu!7?fGYof@YTNd2ynzk zP|;7EDEUxaj41VE%wr}>JwPk)jb)0kcVxp30C)UOkoFsN6`HcZy!>fjR=9LYYKQi5R%5w6BG8h7bxk3JhAuox_-l^{OLT(iYT{D@ zaiWqNCdgglut@HGw<{e`&d{fNJ?e1v0VSImeUx45pgo8<&+Oh5oO=-4&_v;x`5&JuTn zz>;gv+r52{XWC9T@H@|bWC9HmkqV^teQ@ak03ec`zi5T0Xa(0jJ$w_(+^31o^3{$`z>m+rS%3q@dYr*&c2xU)$s&HJX zMvf0%_+T_Ue=m#qqPSi+I%gpdFyf5e$iBQ3sqj?zSEd#YY(<}fbPG^QLRx1B)}mGJ z)Ajact@UAq1*hvqv?b3WFs_1FD*=)*{mUG;>TwC;p zeR}gUMp*SGVbzAs^H8(iKi2t+lU2M#p3T2CJgQKbTHA(eqi5V#^oF8Hg- zONMNBEozAtW!Y^z8_`VGb=%if66!5u38%hNd)HEPi~}^v^=Lkikdx{h@C?Gx1|nyo zuH@14!7a{hDm%RzPbJM;n%t$e_oB1u@9q}&eryo1NU5KGy2fS<8Gf)`gkR4E|MLlDZi`&#P5B# zoB0E`hMUxb?I?649E{e496y-mcwvczL%`TfUqs^eg&3Zb89ctMWK<_3l5xG-7s@Nw70kMB8o7^%>2g$8=LDz7H_}zFYV|AQp>@l?G+L1Vu`}b_-Es zh{01RtNNS#f?_9oC#U9xg@rpTfqb{kLC^iT_4A@4s{6II{ASjYq{*44?_^C#2mczw zoE~&!Yl`B>B*Cbxzo@iSp$fBgdvcA2DGSjGAN6nYDgiS_T3VE%E-MNt`1+>M&HBmW zpAPD2pZ2(3>mHQ5_?>~uUB)Q>OQ-p2!>FpFqGI#!pCP%E4RVaFui&%wsG`tga;^-I zl7Y8OzD`be{izj(qFn+IW)7a$6d`pb#x=5KX3>v0e||=jC{lFFoQ@^9jpjb_>%id} zcihzYrAWCTkkFBRd+Uu9u;|X;9(ziiG%`DTcS+5(Tr8goWBpcEeg4(sG=&oyRF|Cl zZX(pJSR}6ZjD{uBA?XQJ<5=ph|7lvr@1Fi+I8RX*@A~RBgTLsM5UNyV-)ZR{k-~32 zkeg|ub$omb{Q4~R#ddNPfoc-3Tf2DB^sA#TJ66ZETwx)h1t?Te{X5tA%nUKM@!x1O40FV0-M)k?KmW}RxsL!FZ55(vcG7Dl z*ZCxg6N|58v*(4g{qFkmVavm!Jk!<`BH%9Ae`*C`nAniQUo{I5LPD z`9h&<5wL(Xvw`U5FWfMU*D5n8$k?9Iifc3Urb>wLugt{nj3>XOq4>=0D#zQ_%7JKp znJuJKVq8ZuBFX#Oj-Y-1%qA*2U06bJKPogDBOUwBq#t2iK1}FVC<4CLjZlama9!;p zn4{^bS+b)ZZ@1fX-)HaunSZ;!JMQB%8zuT6$7lx)lM@pYLv|7~kFR~sC-|Ub$aJN_lyt784DBL$Bg9prZ zUbof4EBtf&?l229Dlenc_Q-@Z`y+q7B40`^k?hKPpzs0EVkz1v-yh-UuEJ`3G_VE{ zO4!>&!R6#~R1gG?DSBF4A-Cvm{XSM63uPAFajClmmMX51Di8kh5tFru_kYgHx_Rki zosvZc?Mp=BzJ0TL^o}DGmqkFZmLR1u^xA2m{vjdlu&+d0n9x!9e#w--rwdJ(@aiq? zWZUYhz@-a{p*w0~e7;DQrwC-Em-37@?5(~&>j|7C8UC%(DXS+VS#TFuwt5CPZdho6XD)$hl^}#(y=sv7UVqQwS6V9Jp zv1!?`QhV zj`lfwp1;y3_K}+e5amYN;h1;$20ueC+Lm9J0 zanwGu-oWRRgfT(guZ|O)?E39qxI~crbeuLhF)M+VoB!%f5-o07gl|3ZeN;&mi(Eh} zSGvJdLehbD*1=du)832r|0(13Pnpuc=Z1KVL$_%w-oXD+q>#}s;Tfy4fB-przf|s)|qcJ;?A#E##gc zJuO{CGh*@_C3cdLMQQ7+9xbD>33rBEo#3)QHX8dT%AVEO2la-&i=}|2UtN)rk-`7u zcz@B&;92St7%eYN8|MD^(hJ`SH4tl|EV3=@vp;)A_@(*2l*mp1)pqmo0*@Zp>R-{y zhIl{vM;ap{88}-@bc2mvJz*D;uN>umK}kB_u^vRk=CdE?=>s7YT21Xa8EW}5`Yc#Q zu-e98#`PId;)s}l{iMS)+Ck)FejKy^73%(M6`{HOgnwlR@Wz=uToGf=PGH%QHnCF+ zi)iA;l(tQ3i@~aXD+_!IW~rqwyZhoHNt*h1{$z)%q9W1OVJiRC!(=#eE8Trj6ou7< z>`zT#e(Z6^O?H~V{QRro{{a;;39v}~*s1JvAM(s`7-Sah-r-+NGT1$5`cYL? zMdPm{#>}irwN-s}Cxa1v-2F##iy)+#g6)xaWlha4K1R~nWWb#7p)WQwt&I0*UYW~Q z>8*-w=M#J6{ih<3H)a<~%D4I> z~<7+({$vh!Vyli!d$ z<)6z4QZ^xB!aEm+piZjbbYQpGYPLH!k^?9p^Q3lgW0Q0?K8DfOD89UWotH#WN4MCX zM#2L{MEbu=tK83=LNheAq3qea_PwaDg~D9d*o9cvSwCbA-MW|67hG%q$Ln_u^+fh^1OHoM+;8cD z!?iA?#!ABpIr04MF4ytjH^goucUt%8n@j)Ymr z>a$pSf{Oo@@EAsrkIk4h(O!!Vgo4t>&^y^(PC3a6`cyzOzlo!lW>2ms2ir~v539X$?37K^ExueD$DNe?Uni$ zt-eC(PYTeY3Vs6RkDQ#G{gG$%?j4jKSc6hQ7*pB)Ye5ZE#SxN6ouoU6`{R_+30-~d% zW%Wam>-|p$`Adjy=iW1%U;~LkqfeIg$)O|?^!}G-SOUZHL{cGkFiU6-91)~#Xt+ZT zA`t@qk$B3zxgH{ol0-?r4?$uBBQ`9!f1u5O!z106Q99$|;CR6(JPt)yQo{fI>C*}Y zhy)0nsj^Sb;`KB$6+3xK&1k}KS#u@5QHDge+Bcfb4s`@&ty)`K7d*Dy|JyjDqVZXr z7%bW_aj#o{DWqVV2To;3`JPwGJN!`3t*xz1rNlOGhpVaOet%Q*rhkfNdwZK_Yd_?z zp`jrd*f;Zh^$Z!1erQ2YLy3JWqvccWv@qL-j!;|iHeVfv{yRy#{7fC*efl+F!RBX}3vBd0XqTnbPK6PYmq zv38X3we|I<(T}oW@mLJ+OOce=F<54h6`@5LOi$>$2O->LVh|HPhD;X>_GmD&x-pRc zx~Xx{NJIg;5-4G34iTjfK`P9^mjQuBBW)O6EWpp?h@ssf?NhT%m?ICl=lvf|7so#*TSZu$7>0i)J~eOUcI7OBL=}tfmGL)!p--s%u{2(`&phk zFZMSq0U1n=HwNdu-G-!=+yWX|q-3tEz;i;P4#Z~r^5`$!;OBFG=^^5*5EDT89Mkhp z1OBECErWA0(d4g#mnvoz&_D4ok;ESRqnMev)Qcl7YawX)2Jl;tC1|z=PWYkMjAL7~ zkIax!C0)Z7^=;+^lq7CJQDLR*A)ou?cSJ-)74=jo@8H0|0{hbjCbSXZ#dr#^P_1^LE@w3Lm^0J#4On;nk3bEJ51)U^6~KS0**c` zzw`N6)nxDFNQg98y}Z4>JrrJv^ZE>qo2KKZm}YF>%2)4Pgjy*mth{hk&-Id;oIL2I zK~M-D#RZPFDKvH6yUF zh!#D6WpW7ARG_yHFq3u1%2a!=Y}3nO{bE2w%U=ej4ZV50p^87Fa{1X5^pa_K$q8V-}t?bQR_e zIS}`8Ro-Yjmn1db4d#E||J)4bF%z(AWTS~>l?=Et)niN=5?o~u52LTOW!ohojtH9; z$z!2s^3e5xJYf?Yp9S2v1?DV}EmzEfhA0kV@JZM_CfRd@-TQPHNmC8Glv*qmA87>iu-Az9j8M z^TF=AmjQCcN6W?_AXf2Wht$k`4q`s9rah)-Ek?+J7NHD>8~GF(CHP@x3HBZ7p?_ly zrIaBJ>1aOeyA*|cH+YCvS)W~Aa||7oYD_ww8%-(^-n&^w05%P|PqJoqPK8l#xSK^q znb3nOrW@@H6iZB;uN;EJ`z)o6hZ6gE`rO^5Es6vG(r2f84HIQ~W^Eq*)^|Ms$snbH= zl_hCoa;kdBOoWi6`;8Cks?PKVWfp2aC@K@_AvO6>)!Y}uZ6+n&Tm$zH>oP6&2MDs)`tk);w)@E^7?B4w2FA_e1YHhZO80< zoi6PdMhEpcHOYyFaw`AHUo>&P^fsLKe(bPgDwVA@<1n|@gVd99+Qpr`q73J5Zu>G{ zA_*4vP%65VFK;BA`FzmCreJ7oGU|}MCh)D)o@ZubGu^rK?b6Q0RK?BP=ij-~NteYA zuFG3M7tiT5;;6~NDN*Y1el!PtqjR(L@L^j6gJ7XXXDyMI9a?UQ^uIB&q~bR3YT*p; zlZ>;EhXOT_b%bvQi})0O!zhN+$-z(GPvC@W0y5(E-ei2(Jc`Z+M}a~2@n zY9w?>kYh@xZZ3ce{!T5B-@1)6_-F`iZC?h^iDsd>XsjXp0bSN}V$^wi6mQi*y;jf# zCt2yOp{zAcn|`nlnsP4}8dJunJ=shn1M9})Vm#Gu>=*{L@Kbv>iOTv?^tdNzA;Ac? z_d%f(-s@xnuVO_xREf^$sLTsc;Z)4=yrTO$C2Fe^XQ@tw z=dS=}s87E|cJdZqF%am0*3NeyuT4*VrB4q!RQs_W@3<1dLG2VfBb XJYQt2bsUZY9-rrm8Vbd7ra}J)joiaL diff --git a/client/Android/aFreeRDP/assets/help_page/toolbar_phone.png b/client/Android/aFreeRDP/assets/help_page/toolbar_phone.png index 260a3600280191c5e1c217cf057b24ea0b092100..278cd3a9d869689630656f13a6579ca02b9646b6 100644 GIT binary patch literal 5555 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 Zwvi4DVMW`7x1X^D>Z&>_<;t(Z{|6Cv0iOT> literal 5692 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 diff --git a/client/Android/aFreeRDP/assets/help_page/touch_pointer.png b/client/Android/aFreeRDP/assets/help_page/touch_pointer.png index 6bbd6948ddc688c0872925f33aac44435fc1ed56..af3ebcab0071a96ecdc452b48e7ab92fb335da41 100644 GIT binary patch literal 110449 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 F{{se3+A075 literal 111043 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 @9t4PQ z0-#TmKb*SZT@P5oqA4A+ff@Kc#bKc<~F)kcHvnHtAL>}Y)L#a+jSo^8c__<(P{ZF>Jky* zZ*s*FL}!_#@_AfMJzSbAAm**-o)w*(o%*gnP$2{jmK{isR1}8uOgO2Z{1GD32GChfk)~f%eDfysJDRJ(x7PKsw|% zfKdr0$V2ULTDf(dM(psKKgRe$CP=t~`0>&UG9AaZ$8^D-V$e20aS$}kRofohw z+?M_E@8nMAE!Muz>Uo}3d~d|@@mq0ZycE)=V0KK3Dk z-sCd$v8cgmES1ac%*%$&J;US@i!G{`zSjDF7EOqLQ1A_+1~#KA+vkk`-5I6yJ&Mq_ z9Sk$qv`BYbe=Z|}t6G|=iXk~J->lLIss`$Q!LcT}f$M==okkq`=`@asNNe1Lg9{Og zaKw$V!XaA$i#u8{2SciEe*0OM-q znrXC-2Z&&*#kCBU%PpHh$;1;z8}wH9%86)j#g(WWyvxN6O!e-E(1Xf%cruyEQwCak z&`g6H4gN`|P@ZsaHlcR6Y%m2~Uf*k-nN=SXXd65sF@E;4Vb>^vk5=?Q0vI2E(m*kV zXxDbS>C2T|oM#v+H!gN(%x88NQ0)b3+zhWtFey-d;>wU4-pCUAj%Cfc#}{ap=mja8 zAmQJm{^#L!`ryb{6BC@0)=R%_V<#LTnA!0xBh%*Jm%Q4mzETL|Wdkd(Ex zw9o1;9~r&Gkid=`8OliLN5=|kM|h}S(~MNwqVJKwV%v`vhw*l}aF_n~d6~uP%2Ht=*-+fguM0gHp`%}j3h zIzRwD2AoEU>c4g64-i`hioX6LibdR^TU`LZr0E}1S8dGVzm)lv?%RcVIZqJSQrGRY z{sRe{n6$`bk{J!wAcJTI9eNO@4B5uM|AcFdWOnP&@f$%%xdlioxHG+(~e`WYHCJr#i3s2VCje&Ay6v6p#61=FJRz{no zK#GD_+0N4w=%^>F}vOP3Zr=Rg(cYSqMb(wlREKPIANm|rpBbp&kHE#vH{ zjxoD_p^w_U-o)-R5m2D4}C+bfwRxL;IR6ngM*s6N2DXCXM}_u zQUJuZcF2Z3glN;x{q5!xWWbzrEqEON=(%;aC>lZjy=6b>fA%N`A1cjER>OGY(F)>V z22tJ9_jg*K?Ti`<4w2KM0yBHhAvde|ttC5%@E6#-YUBx{mwR(qQQSubIVgZSBvxQs zQxK(_dlTO94)*gHz10NdeM*V5!ockLfyZjs&F<#F*e#!;{x0xI=!k-5X$R$?{(BXmLupd^@&$&c^ zWGgA4)})0lk)2;^;O0~*pm|lEGWcD*9`6lNBY2CwgT;>$0jE1F;oeY}Xe|~facjp}Bv%`QQUR(qVH zqX9)D6}X4+9)qTQPltqgXs91k^7W25;7S2EZLh%xxW)8*YeIkPw>TYbKCO}ZF}lVJ zQ{M=Ohpom7b2AMFN8jJt*1)M!?(h7JD4ZurQ z8E1T`P6vt9XLi5DXN0WPXdq-D!z%JAVxqxX<+Q=6_YFxfz2dt%{0nhJG7R4wz0=gJPO~gnrH3~s;o+L4IpuA|VjNiV2 z*MFev)+~EZ&VDZYx4EcjlQ>`d!iW7F8D;o?J4KtYVJO1l#gb~-f zoaH211-ED-_MfbJjql1N6{|a+I&-d)G$N_AwfRKpOY$^I1^B!iSv!{a5Bd1~uKw^p z_9oAGE;F@}WfAeT0 z=kc68sQZn93;v{g2*VB8YTH36`%{;!`HUQ0u^2fe08+43WOO1Fs$m-n;dKhkbn^}+ zftyk~%fE3KMVMSR7K`$xb{QNEG`WhZqem}vfPx)`9RdYtIv83ijBiQ? zd<9S~KCv%G_kmr>^`bTqe&lM63%7XrPh1d{o1XkOaYV7snG3ZE>9P+b+n9Dqg>B7L zy9#8iKUvbl{uvs5cSoyorg0;VLPz9ZNlw%`I1B=rxCd*1TF5buDpLNof#gI~;i-(n zPO8rc9DX&A#Q;hPtsfOI;sn`q0(F07IlO z!#z~+J@iXe7ht_NvA8CF&DVe!elF(xch~++X{*f)o%CkI{5Pl0+wA~OG(30@GxsTX zF=#DZhh;RVixL5otI-SSe|iu9A8E*{H8@@LPcZ+S);1fbk0XRgrj0 z^|J5n8UVFs<#lvd$`}ek&#pbh>(ZtlyDMHKQF}Pju?T7}TSfa9GD%|&R@vJQl1|Z| z+{kHbYZo%t>hc+Zk_aj^v*9Pl z{zqh;TnWfm4ucbsQaR3h0{Z1_UQDr1Nz}p=pC(#+T!_VAEOi9XhY9Zy>Q)(IQyy4< zZaT32-SsmZosFGIdY})VEGA1a+>>dNJxbZ_W3Yxd9mh`yEEsP~B~O3)#sL4{Mt`*W z+Wg$*WpqBtN2iF-OXhaSh3Yfqi{CYv_HERVy+vs`Y&L7R&Ujtd)P(REt6SLM>KP|O zYiqD#<|=&YtG{+N9hO;^>+9c(?vl(SHG;``NYeTWO2tuqk7@v)jgrs$nAR)x=g1LjkNnRNe1oW^R%}JMwInJP~)>-P~Fo}94B>* z-K^bsap&Uu+J)r89;iP-exs(=A0$%VPQsu~r|ra^*2lABm{5j`=V4zJ$iE#oVVf7vDeVehgmG(K&D7)Q_} zj+{}&D!xkMl46e0W&gG_!0C=q8g}<%-5)`7E`M*9x_t*02e5}q_LR{ABb3{^jCVJl z^iX8qVH?|?>7a^ob-7Tvzl??i^u8-t#Y;a#Hul}kSAjs3T{}@vxl79dn1G}#n<^bb z0%i!~CtS)f5a!sI(F309>{KG%8-L&+_2WNoM5yAqEj^8(0vcU}6-7_D((1{X{mVCyPRFKOJCaPsI}#n;Hwg zkFNjGvDFTNM&i+M=OFh$!jL5<6xVON-6pwDKC;#HOmKA~i=ux!WO)TuBEjTT#G{<0 z&Lih{l^m%_qO5-Y#(iHY@}ae>DbosU*F^eI%(b+c34QS#Oj~+*Ne1php7W|98o~80 z>hfe4>8WT;<{#z4Xdps}h;r{BuNn`W2~n}aMIaLAHEuz4H~%hRKGnJnq|m|#I3+DR zv5TlS>KI(R;(NSwEUC|sMv&3jXWs~qpyJjpWSG36tgp^*h5yZ71=)dBXy~gAkyqv2 zWNN|n*@&Mc$f+dBNMmvuY>|uWTYr@cTkWw(u>$)|B5O^>#o1gzs8=CL~VG2vjm(GfvGN$ZDKf(OR zM69QbGO*}wMfZfRU5KBT8CRz_d(oJrgK2uA_Sf6rrRiB407<=tacm+vB{};>% z7JOu-Z8=d!ojhy;*)G}^3T?~#3~ab4 zlWb>&XPam2plH$RV`TU5Qtrg13&TeAld3&Y$AHT@?TIf^zyN`^&B^;=QuF@Ktbq-| zSE$jXu`0Oi$wn;t@>)dBAY1~hu8=5o@H+oSAOqVP^@*^7L9@MXqLHasSTolVHS!?0 zBGyJ+(WrNx0PT}Z!?hL{lprB98gl_|W=*)XDN+!TWlqV^iRj<9z??t0!daluoX&=a zOrd(9*p^+|%;M%p7tOk$HvZZEDn6K-g1lTx-g2QPIOX``Pi}t|e`8Dk2&?}8#TD** z$It7Fei!yesMs%cZZ0s3`ZYE2HQ%P@^ZWUnGmjhH?T);7U^nXf13P?8k2myWi+TE8 zPeY3yD&IusCMTczUabbX^+(CX1@82q#P8ZiZJracc-xIHFUDmySb7OPoJfSMA-KEc zAci+qf?ijUXp-1YnuWqY(xBD2G3l!(JWw|+2s6sEdPJ}?p39py&guz2kL|0c+hsic zps|AX2TQ}Fbf}qn81S$ZmOM+chibw8coU^eF9f zyy(+{TGMSutK*+V&r3l{wGsWayJ+hGUx?PwlbhpBi7h6u&oo*==@GTz;IZ zQL%m97V9|WRpN*<@;6OM=`Ci>C!6A{z#d#NSxPMY>+N-xf{UtT= zy6gOC`Im!}e@8cQxmts&vV*>%+BnmnUgRN-7|hno16Yyc{Pu zy;2k@Rt&d`X)7{HxPw8FzrqPE8<0R$tRCboh{OR1o(7u%Ei=f%Pg|r3i2mvhEj!)w zN?wU=%W7(z7i%Z$FL<-p=soTvr{sc^5f3*|lLkKT?zP!e3RtPmu5^%7x+b(@6b;stC)5Jy9#` zugW`LqHu_TpAA~0H`2ZzR}|rhZa?Y{qEOes^R=%wD!cykz)1^OoCbe~8<&Fvw7re~ zh@AJu=ODOLi)suARYdEN1zeA;I}TA0^l#`1UWvd(&&C12FZd^h0SN-J=O z-Xxo{+%F!uoMPg_>j=(Pv~lpO4+o-%wZ2cL z-4T1->FL6?MCiFBuEUzd1<_~RH=GCXmi(TH%G-0p)&KDgda2zeggk( z_>FM>`0uo2GBXU*!LOx*)|NtWvf8Qkpt71Z%pnnUN;aA=y1?LA+q?Bed_bsbS;D zQ`vRfeVUv8Rz#=x+^b$8Bfja%$d7V2+TJ~GrG1R|?0$QR3@4kb(?Bhjf>J|Dw)vfd zNG<;>e|~!JR4dlkL$p*L^5H#S)8aR1cOlHT(nZ{qqSvxRzD+28|x zbA9aRDWB1%TZ%Vz4uMuFGx}-*qPlu_XPoB&4*8xutazHH6R)<%7L; z+#-Vu_yt2kNIL0VI7h20g&xD;5w7n_4epkqFCV{ zHC5=J7tZ$LLFu`=5&@g+pLT!KT6yud3MTO}iarH&Y^K1*3ppvZCZhlD{}m!hjJGTN z%d2`%Z>IRwVeOE`jCN(eOmX?o&R8KOn{nW)mb7-Ay7Pq`!ny+ zVC26aRLet{hM5lE};hU1Si6%V(j}V z76%RNhtZw0*&Tny+2e{{Je{qt=(TJgN0KtW9_?iF*(4V>DxLBS*Wg1BIoxs(!uD>z z$bI+8s|k#EgHxfOJZGA`j+^AQhO_diJ>61kZNXboqC?5*Ie6l5S_ zN(+vH^v0I^WeK6x9!}kkVkqk~TINA+EvPT#P!s0APfLHjG)0v`uf2Usyz|1YY@k7s zj!e>>yilq&8p8PLC*)k`0fb(Qjl@s{WH*Q%VJUu6Orfm-HzE>}bQ`YwMje4ikrLQ? ztX9(iKV8I6&#QOlIq}j|)W;Y(*GR96fcxkp@WExZ^S76cVNT3>TjCH2(b_#OivH44 z5S9`g!&QG&8QlI7o^`rLT8ZnrG|xGXlN@gWCZx#CNrdo0RFKZCXgpTL1+Uq^>@JQp zuD?F9|CkQ33dUeh1EJQAKcz`ixn>|8$&fDx)m|BZ@{~cj-pdh%x4C}er< zp0Zv{vK)w@?S8kl{w*~%l`}}227A(dT|QsCxW;dE z82n=}%C-{T?|~v2g{my z=^PG|7D^p#sV|VuP&?rXGAFpMJ5}DS2Tj_QP~Q@&q5>i|bl*Y{j~NYBxfs(AdCi4r z*xJQ&DF1q`3$I|Z%Y5l7&I8+QCO6g1W=?Ky!%Nog|MOW>Zt3g{v?OUvVU;0FcWd6L zGuH8?0$LFIua}98k~Nwyq=Cth4dy=Dt(55KXdFL3ztsNz{@$0YvUzH1YWDNd<>lpU z*H(XbXXlgZQq<@)aYSHD?E=EipV}KTd zz}>dy<}0m!xAgjsj)0?MY#AWo`e35#D7`tSQParSILNM=>{HwvzfBG9C^%mVNcaFs zV^QX=dfWe2Sorbo?Ch-f^t7(Q%&oGrlG4rF``=4q?{ar{_aG(~R%>c1L7AJoW0oC~ zS9mlou+{OPbiTN{wY9}e@Oyi^G&?u}X0gG6lN_G9qr@huw|o-!+&3)fAJEjNM!?TNd zJAct-g$VEym^h_@ziL%7eIG?Cx5h+=07$YRuyy~Y6A6YYZ92ZN(uRAeBy9!+9Rl0` zs|wc@e|g(Mp4R=}j{<-Z2H-=HP#fLvuLBiu{%iWo%+w`cf_Eft5Tj5B1F6HiwVx%! z2nwFw{23jMnbCiztgQS4XP3nOD$xDUAC*qISLl##A_w$>GYz!66nR=cQPE>hPtS{g zX)_JwX(Z3MaXv&wd4&L|c#%+kNuc5;iAzM}C@n3`pM+_`sr6)$RF3+C8XUl@7;WtR z6jiOP3GaNk`vtnks~cIqs-Wai8*M?7QgK370%s$*NoR0X#qW+a z)MMIDVg7KgiQ0d6wa$c5Z$a(BZAqfypRHA(R+Jv;JswL5Q|DHuQ3QK?!2!C}ZxuY6Yho{Q_eLOpJ-9DSK{6e}Zst2cywo?aT2Y!5R zd^*;(-?%i=iDU6^v_+sTZ|i6pS)uMAC^bS0v>cev)ASWv_vkOVS~zR_i!+j+<~U;P zlE>6D|L2rbWy38ndhp+L24Bkh<04h##E!H4BI{|>XN6zj*;dlee~~f*w6=>#UsMO( z{0%Y_?RG; zWlMv$WW@YGr>br_p>DayG=gq4rpm9v^_cM?TAG>=^YI-1Y+e6jRFqe|xU7)X9xqNA zR+NG#mXEZ1*5R})Hrt$=4?_Hdld40R^it330;0_1KP&rYnO(=3xhFif<$L*UtJ12Z ztM-#VRNQoC(a*Jr`tuoA(JI*lS&Z+f>3$O+3YmYi`MY$n@g0xTr&g_V-?U@8N~@6b z`o9^Y7Pd9bO%;BOGuInU$|G*kT13DM=pFakI#`UCqASaZ+pB+;;DphkCOA9~yn+)a zQ8f~hDHo8|kvV$yLNx#i&vd|5f3Tt-zpY{`hVXF{>7xP0BikU^OsAp`+KHl$jVmPWc0xEy@X409S zb7@y;0%;VK!qndcEu0Nf1De~Ok+f3V&0nh|pVo3bQms)1+)~#w&O1?ebhhiO6(}{1 z<+k5HlStyr%2hG1>gxB^A5pc>PpAabZGEWP9ltj}_cfYO68!*bUXG|xTKu&Q`-)ma z@yX1w#$#`X4j2&lf&piwdteGJklL@LFRcc3(#7riVikB9WbdCoZ~-{AZCoF)ct|_b zs)zJc(&PQ3*(jTWNzI*#k@=lwEI8Na$6!uxJR%qYaox!OMB)&W%T5b8CR zQzQZ+?!OHuOs@(|YYmu31`&;=U;?G@EywS5v^6KF;ct%^jpJ+*bfD_nMTv>z^Uh5m z#hUj$!b>BFzn)DqC-7WJ0mWbQABnG%HtcfGmcRIUzxO5=@oy19!IFPD7R=&vdVM;u zHd%l!x&O*-9^6?;K6W6p?%5DQf2r?s^X?+N+BC9?9yqL@I##tl@N?h2QF8wo#_E1r zjCZ%PRdvz9xFmTaJW^cce%gm8V#S?*FEU4Y&IU!Z=7Ps_+hdL+;>h{Mxh+Q*xZJj1QaC}TJhF$N0^}s0I28bI{B*x9>G+Ocd!okp9-$z> zaQGmWiLqCuLpmS8KNtBTHU6z;s#9x(rwHu^8l$|J!tN|J4x>OfpNundwjWa=g=TxkDY(q z=8n+$oAu>m5g+&-7d}W5z~=}fL~9ukduK9N=e#7h+nz@$Sb93g@El5bf3q2%u9(eR zWqxTgOh7@jP=KBM}KXGmqJ@R3PWzB6T2$KOEi8+aYIEJhGu@w{Y z!wZ$W4Gl##$+r`N#TT?@)!w}CdAy=jQd08PX1drxqfGhF9;gR^dlsbD;;(0L?W$w0 z{atT~n$8kScuSx=c3uhEE6jPU$WYl>vv^vgQ9 z%Sa`$VI_f*b>i$^;g{Xapdzpshyp>Yz0t86Ln_GJE()cv2lH7bd*6p+k)Z~PVJ8UT zj16=01mPWZ-jrgu5|o1$+|uvlX=2e@pMwJP4K2vI$_8gTp3KO^q4`T0=qYB+zh@IOxxL z1udrnR{iG5e^dN|1M!qy0ULd2c@Uu`5OIu2&il_?H+8dKRA1zj3pVdgs;(cYDkjd< zCCzZRP-Fe_AsruoT^oi^@t;4*!(VlKsjZ{9zq0dzzlI~XTplj{cUfa!|3!3^gnix1 z;wS`F?ZQnP=%aTx=8PeY;?}7zXh?f!k>R-Z6%(Ce#S_qU4zDQzQcknJ>YSV$ip_!8 z1~Jv5UJww98`EH_lazCKBH>)98}0Xw^LOwn^3CenzC<5y^(9E&Bi&zCl)@P1Am~x( z_~&~bxZ~m?FtCpx+_25FP{!|~B%7#1;WA1zLKjOZx#u1?gcft-PZ$)fQGJUH9FiLm zBbt$#Y7ttHN%acgAnv*0#o_)}c=oWzpGxrtB~S?|kmXyL-=hx(UQ*#LC{R`b z<3&V;I)c^P24F}hzYEiqAMf>%2C<0i86e`H?NfOYle8$pKVhAKyHBvF^vENiA=IMe zcciRLMk?974&pBXu%>Hh2TGy?6FWOSjpAq9FzQvB%id{Okcq$y-hVL4181(m^b_n` zvkSZ~{(j+qshu|4 zaE^-Sg;wT259t(jCO?Z@#hJ!h;cJ+|(CpqEq1>cPrjBMu1cwzC$g;xAWjgnNlW#O# zCttGQL1MGm7=RQQK&B>Mbv;y3Tvf;s>KagPycS5y?sXWzUJv__ks>P@{ySPTh4_Kc zx!7|`>^n7gynx4Ed7}uD2!byH3bwO36pPgT%bFYiU|8X3MNWSm6{?92#qdz zDDOhzy~;|IkeG7X)nA+((V##y z8jj$XWw40V<<_)Y`4AYZQ|+p5=!m|G*UHY=akDSo`wI^*zVLmns2k4xgISjGpB?P! z8edFFP3?j$bP-S%%<<($6e0?$+X zKIIv8k8St|{~T80(_&}J*&U3Gl&-iO!o_Q?9ob0*fW{`k zqEk1B{@@Pce_UMQ5c7YNn5+-F;p8(gP3Qqmo%qSo$Nhip1o^oBAwy!4B2=Rul9goj z$bOgI8$s7(LhWz4x!t@xJ+G7zr4p!z^wzW(GaGDztv#Vw5UsB|b$mbp|7h5DUl)B% zm|QX8I7B3DHK+V>7?9gG2}OwBn~Yx_C_K!IVmoYtQGGV!1P=+2 zlJISGEW*+gVT8Qfq@70~as6dE*=gv=d{mhN^IN+r0+I6|U;-1E*y6GE)g?3`clUbQ zZtTK{DRl`?{o!WUX4qw8L5? zLi_6*1g{q@l%}-)NjA35Hh5Xmv&%7>?^RH#T<-X0h;Z>r zaY@1%V(xA7Co1s#oZoK&16)7X(t#56oV+@2Z0>-1+0I z|B1zjrrH0A)I4V1P|MD8cx#~4kllUtlFP!<95V-=2~66N37<4D@}}Nl>tF|_xHF(oh)81*W220 zc0v4cSA3QD?_Zx(^;}5ho>tx-hEk~ z#w2L{__v7!j)zz)Hf$ebL%3$AGkgLrcn~9l$v1;0CwN9LD~=`oZ%C;F$tuBw5aIM+ z+j!QcwmiX)Z;N>%;6uN#q$iH&%(cEP&0m8~PuuNQPNE*Z+XnHi{;9Wl-sqw}MB)!B zdVI6zr`F@>dr&88Gc*6z@8!CI6efxI(v8RdFSVs+hyQMM79-KIot@?R-0f;?DLL}T z|GN5G$ZvVd2-)Jv!4$JDi{BbA9x=X8dQ2@sO2b=p>mfpIdDiZ#knxTaMvbf`Y?)EQ z*czzSFWmL<2$Oa${so#edcc7tVnImZy!r2G>726`^NVERrYHs1JdK2OMLboKfVIP| zxl<~EQe);93it|^O~?K7?}^mg%ht5bH-DVe-s)3Mv~6SQujEfZC8Zo6SD$=tO@6ma zl4!g&_2v+%Q*`P{b!FS^E^1G)tsK5y{nh>&312l5n7bW+Zzn_LxTIs20RL9oV;eWJua_|*ok=@yc!Le&I_pMBjDm!Js`{+%eV zTk=8l38Z6+RPgP0?iXH+;bw%%d(uS~kHjq|WRt`f#ABM3#Bc&DVtBog9DzK6!{p$3 zHNkcbqUfIBl9JJ3O52}dS3W24#>CGhC+R&-+meBzbQgPm#UHG)uTY5jLGj7!gS&Lr zB_BIO;D+LWLAy1s{2T}6sLdexIJ_Axd1($moN&Q+ufZMd9t?7VJqU&K7p%a~!JymM zkI08s)`Ga}8SJWO;B;1fEj^M4cRj@_gn|xs<4j{fo?1~~LvsY%?Ts6oAaFQ;G7TxQ z(0UJ6CGA^OGV$Y{>jSKvWc87NuZ=&y9vPP}6Xs2{>0RBJ{QPAGP8eyO{v9*2&Q&vI zFCWMMatS?j_`zXg>+w(I5c>#w^2YWtUC1it6Zg$j*0?v8UTVdo%?y$1|MB%!QE_z5 z|8LLWPH=Y#?(UEvf#B{0cXt~k5F8TREkJM$4ug~6uEB$AaR1Nq{;tl=S!?d5*Ou3xknKPFUf5%~MRp5<;!Oo;!q1L8 zv1(ul&jcVy9WQW((b0Muz3lZ@9?C@N3$+c`3I2$ZaWhh+wCmdo` zKHsFUoRk;Q_;Wp`)$8$jDQh&Eplt8zqNBpOedN1hn!1@8b>ka1-ag)rL2DMBYC4D; z44KeevF}Vf^weoQx_(YsBL4X|*1O=TJ*)%T$!yhYGp^v2GnK|})`(g8EhxCoB(8;+ z2|&gr+G|0LFW>_84Kf2*aM62X1R6y8`FCJ7nPWS|S0~upx5mt##3HIxW+K~6^e!xE z%ia8y{&l9=d0ib|W_8q*hfx(EO76`GlmWKetmQb%y<2)P)ipKYIl<93kFz8%60jjD zy$@EqLFAO}CEsP2Gw{88Rh5pQ@E?9|x9M^6u({z59=K&(rtD)bc}4;1-qTa1^%T=)-;uUmX{J^c(zKhq`{486`CuMfEY7ml#eV>k&W))(N&F_GSbV+g^Aqk zD+qMlYgPK%1+g-bEVDHl+O!+_eW%>;PqK085Z9eH^9TzEAl72=D%`GccXOi1vO-(Y z5~^SBo_7^r^2%RY48M1;qQ6p(z$u8Ool4@Wkpog6PvXpX&1*0T0ZdIG7D2-FrJf1J z@k9y0HvR0&W>xze%_9L3Zq>WXpM~nS?~{;# zu-H_^4fJyC-MtP1+A!-{l-+N0=0Rjr&1M`xN&YDjJFYxc5J)<^bD4PaH}K(#$r4w; zT-qVz|2o6?YyuyG2`{RN4SzLj{a{z} z_fF9F9wo$*q>!5tN`-%XK$a*%Ue^id`>Q(n?Q}H3Co;p-$E)hchdX*WpZ#KRoXWK6 z;uU_JYW^L*0Bwt+7KBdmnL{!ByQLxA=to^R3r-YZXpRcwT;& zUm*j;lV=|}EExkJ?c3r|(g7r!G0;;RK4=<)sI!R_tPzJ4wm%z{rPtCRBl*0YKfHp>Urp|v~x>4 z$FR#+LG^*6{#Ci00&>p^UWs=EP%gwcMJ>NCnHl$ zygNDEJc+8eF3RHqxCrB;jdCHL8sQ@Gav=%*fZ*QFTbC>+8F8xXWY_$57a_|exd$lMGNn= z{t~Dx?bIW2w%)K8W|EfdU~7qBy3l*;K|%FlXhWcV>sNEEuxX7b^o=sbM!GW{R${^5 z45UTdedJlV3Q?%~scTCd$&SO0D0JbzOPEp+1eJu-tiD-cX`=1JnBcsqGGeD|EZ zUsB$tQ11H?!&^~@Wc}9q$=Y_DyegGncN$?35qh4Nt4mS?pQOyW5AJMHVwR$6!|5kL ze#6tk46;Fi_~?W-X7OfK2mC36-xRi<6)_Ppy_Wz%q444ekRPcLfG?Q10i$DR)i((B z<~vI1Uo7DrTnN3BD$mNy%IUxjI18lh#$&_1vEr|prb#5v=8l6@`) zBlV`NCQM6&u-@8}YFA$fh-HS-0R2?-_QAU0#evn#nsSapJd^Ev5#8|*4K&3 zq#(37)iN_^Sh)`1HM?$7UNOAcUOT!vl9+k)v}q2@!{kb7VygJfP(Rm%^`*GS2KYdt zGy=iOkkPN3y!N7w9Dl@Ga;CH)%#xyg73n|fN?vg9|Vb`0a zx0F0QB#aBr56pSlEV!k=n0ZmGww)5btN$2Bg$+nItY5s=^ zEGTiLLe1OYOA0`>~!kD~DAqm8qVRecP7jen_l{{g7x%=77L%y_4x(nDcew1@Rv()2_m~#^ zRFCioS+p^Nm+lHg{MUAwNK7Q5w$Ak`ywlHw#*5B3@K32XaI82dgL{+?QOmjY@(Ay7 z5c7%62r%C5&M%}2T?@lYAGTw=H@Bm1w;O-d_$4HaF~zMGZ^A=LI5;WZ@ULvSbA|x%eD?F%{7;GfV`>hXjc@OIu9_ZSsB-*n z3U^6gW%r)`YA}VE$EA*~U({KZjrol|XL=`y45!dM{>h|1kN0@>7A7yS=K{Vf*p`p~ z{r4M7<8iD+p*q7lH#-AsSIj$_$Gc6a+2QQ%km0UM4_D`P@x4*24qOm_uyJPY$b|5< z*u77#UoPI6XXeBNrWAf9%4R1o+uXv9A3w!yX8E4{#=2tkstg}6xs0*PP)a)b%=$Vu zO<=`I6*B(oJfpx5JZ0*@|FYr~$f}?3XkMHyG)jU`!jrGO#PMXx4;QqEtxZgh$lurQ4A-Bi;@4GaN{D zi4{XF@C>c@K4mD>3K%0-no7@?aLV#?t(MjAY zOk;=wZyxey3K1j?&uvPQK!QO0-GWYh$TfWe$U8=e_3b}yf}XuQaULoBs9Cdk@f>wS zxQ;9Mfvqk6rNdnA;&sVji$k~8)Y=lTkk~v0AnSz%V{N9hhh_=zD+Zs$zDOdEQ1*4_ z)subyGzsR&rR#!Xp}g6=O#MgEozoW0bPVc|!Xb~iVW4_fj&8aypZZlv5^Jd7Vl!as zfinR=NcgPA(O8^sm*5WIgJ8JOX0k1>^Hn}KIj>j8j;)8GUj+XAm{d&6oOS${;EuZX z(svS*g{Vi~LDQeAe-$t1ulNOAMDS{*^~_butKccx&b*op6@(XuPFAL&tujA+G4@^4 zdrRzae&mynw&9QhfQ#Md%*H-kVriSddK}J9jYl;=_1( z55Q`j`H(B=7dxv|=|{*EYN01@S8Csv(kO|G3JNr@I%luGzp6fz8lTwDkk*7*XyCOl zn32_7z&vC`m;KqWb$*{LTR9m2p zO_D=d^}x2hG zT~MJLJ^S1NH;EYU_;?gQ0>*@*l)8_hofgQ_y$Z4%^lQR4c`zuv~( zBZiJ7w9li-oc6rP5KEm&sgi&B0rzuw{84KEeq+YrjCN+P-QfFNoUuu=33gDKmfcGb z|8d|#^+fh-ajEx@ho2Ar%Zfot(_x9#g4jl8^gQ?zwo8gUKz@05q7OyFbIFVD=Q@1{ z(j$@3&#iBwz2q(zb-oMcUDgcwlAX0R-tp_oJId+n6ID98N?;U$MP^SB#A$M=*E+|- zWG)Y|slR;);q|wdOms;XlR}L*sIGMLRxy4jA1e%}DUKd!x!*3$L38)kZTwhb(laqE z-pOZ=HB6a!S)cRQS(!`t!+*P3=rlwu$E_$Ra5qi3lKbR);vsqS5!Q= zf|qo>EZ?aEt0L(fZmtJ$*raQ>{8T%wS=dFWL8vuu&(K)3drS@TPQGb~zo=wcjQD=G zQm~tfK4tM`9v<-)e1_o>A{?0S^e z7R8iFUF#nZDHHGKIwe$|5x!B9yvV}qxMPO&U57r5oly9+tO*3SMHy$|r^^UXO(Qcr z=gNoSc(8FT;FHmnL(zh|^?qkR%_|2q`V{!cuMQkE=Ks*>>fy?8*lEwqB=J68N4a;p=WhspeA-Uqi|0AFBQ- z^gjjGmmOq(*W|)RV_)bW0ki6n;e(IEsOWrpI5VyBN5r;smXj{tuTR&fRv?oRf$vaX z%c?`#o%bQ?`%l}eonL>jd(qja+hIJpndH*i2hAx+H5haSWHc^RB|W!a#}l*{7SjAj zoy*W{SXUT|e4;2Pcl0h*&T)g)aR2r0Kl>2u{6s<8ui-$VL@{m;qQo{QiN(ZmBy@t5 zt$!mi`=}>;%)5`;qVG*d)`t9Ibebzqar*UjKoUEDR@!9}@q?nO0VGmbO8V0*)gQvQJd$5%@N9D2 z1ooWWZDM*CpEpHCD{jT;;A*7}j>xp@ya(q_k#0M|p7x)WO`QAfWk*n8d*{%{B zx{A?Rgj#TVc2C1s+#7iG%;YR0WGGn5e)baoOq?DR-B(vzYlP>~p=hY6tIJLHImwNJ zelaoyiQ5}@(b1^OOLt=DSm0OA@UT1(Xa4Bjfq$|TTC1?syNQEIe+EH0)zad-HTLB; zbjT01E^WX4q=($j@1^U1banM=cd!2~aZD^FRZe6-|5g_D-c=MS{X5Q_E6OLpdol2% zeK0<+(SJ7GmA+3depzH^$;?s(i>#yjOyhaP|K>38JnEPN--xFHvjXQyaUPnPmFs(C z{}sLJyK-Wn)I$V{ObzaPL}aZuh4aWdA=Fgn(w7+ErYuyiC7Qr82B}*1wA>%?FRh@kjg#{-Y6y(83IL`DR$i1eIsApPIJ>l#K3d z(^<@H%Xa5{eW|f5))62gR-=BtjN*ZV$6G&UtO>dWE%j}Bi+{Bn6A2Vp%eY2>%D3?aZr%0t*w@?@8utuc-rWsYh6IkBs!Pa@57c%yEu(S5C%jCTw9c8XoG(c zi&TxWHbQy#0|o816WQLbLLq^(yjH8&GXt#Tc=x6xC?$Pa(HKEFgP)ey_Fv=VUDP*N z=2N7=V&~HQ20hT}-9diOMCvu=`RI#yU|t)1PYR2UAeFo}KJr(yP6_*crdcY4nYUcM zpQP3CsF~w9Qv!vhwUenO;qB7MIOl~Dd@)jx&eJ#L9?1*%9%C(X)dJ{D0ZQr?sE+3P z=mh0ywi?D0ta?CwU>QPLAVSY^_4r}lo02csBGA^iXip&V4tf6B$Q~G-JGNs54zH8q zjjk}>6YehmeBnxc2@DYQ)!V?XmXSBF8UfP%fKiP*HiNoybX`7dpieqc)n_%F&^v)x zq|2iJvIrrxFJwdfGgTBkmAuU_)sU;JD_Y6(DfW!H+pF|{w%FlhVhW@rjvg@i7FRM} zdch7r%KS!fOO&zEkqNp(l1%aFZ{Y=EE?{@`#k0gceffDSG5*TN_SnCjAQ9B)zBjG~ zWboDTZ!mt#CO@C~N|+(okT#hXHDSE3xD-?Kk|_avli2CdqRHD_eydTma^U}KZNwxk zrMcLvw{KH{rF%!l%vr)^>vW1EwjCULG+*Tj`8@fxtqsO*{2v z9)X0u7K|gSgiuGvaXpp^^jhFBLgG|Y%@CgY)qDWl4Uoz#-6U;4L(i0~>{4?(de=~V z;lrKr2cx$hy&bMo6Kj)o3-WNF69?=>%8=LYpJRq3L-#+1dUg~|X z_<_IcHptRu;WU$0ODk^^35!CwxzlFo;xCJK+5m)#S@jmKNUAoLmH9hecq$~KPF+cd z`uH72{VRi=Qpd~`5_hiXMSFHe9!MsFIUk)#xy!Xb5?#!E~n@7$D#oq~udFnIRLu7U&K4mpyhqnlz|P z0xmxTCh@(u-B;|TeRH0YdLlw@?!tKONC>jHdY1gW5v!<>6!opd2b)aoVM>m&6-)dM z;??BFT>(ViaL?wyTA&$WMek&OCirc6BXU6?^srOAz@Me5aOm~MP^mk11 z%#&Mf%aeundd*+YlAo(H?uVr(4RSfYR7Gb|$~k~B+f_?iXu=t|t4th^2_{GTN43)K zdujFKdgV0W?w}U#&+VnO$^XU*;?z+z+WNd+GG>s#ys<^e6TJ0g2#}gfs8W}GNEDO8 zp@k(PogQx-W2=^tYyiwXJ5E!G%-~WmOy*^SUS?;Oj)=YOmj9!==EC>%ec4FoJ!U>y zKnN%2t_v-3d2OCLp&haJ$?{(uNFHc%w6abqCTCs0{Y6#u9If=>t<4(y`>vz;`O_K4 zuh@w^zI_;%bgc16q2Ya*MARaN+S;hP=`akBO?p`<3EeS#c=&)Mik7TyG&3Dnh(6pG z0R8h9xJLQvg>&L;7?w7^p6+;8#P9mh^NXsX7Nx3H3zKJ%hp!8sHRt9Vgdjvoo(5UO z{Ju*Q1NEHpa3<1S&a3C%oS_ze~yQW|WUYXLI*Z<&;L996oRyDlab|R}@+D zJz!{sP>KiKg?i|2m<+?G2us`z^o0Eq%KJ-!kMHw&l~N+$pnb=mV7#rP!Hx=~{$~}a0fv}f2ueMwmVAGlPikVAs>N3i&bD9<; z5=}ZR)&IrSEFmLX+mBbIr(|=Q+CYK;RHYNYwjaDoWdCdG5Eo+M1@~KJldu_= z0Erq|bsMsw{Fw@h!0Mp}kQ`K0ZDQp}+zoogf~_?vkKi3(Nt!&{ zE@sujA(lkM&Sz{W~@9Vm{a$9`ZykdVMD5oO5z zWUCbhBm1z1r!*%0qHG1Lg23njZ|@*ewb!VLrhW-F6ZqWXfF5BvmglGiVgBCSJuz&0 z>Te)rdmBkF_KIRNkoRXCrGcGzvnGs=_8!K&|71FvT zgO&AkUo!M?5%cpv3|Wsx01-7V*-8j%eEmPrmw%wQhoTcBBWU7#ZB#x_6Ru(u7Zit5 z0JzJvET&=52AK8tfqr0EZNgq0J+=c9dk|5pI{k0xFuLc!xl}+Cl`zF^Prd)G6R;2W zF60f%XdDagZmY8tfCw!$Kt6|?X&`TdF+vat?){K zH7OkVzcpB$EPD$+dILc%kGNO_8etQw6apt!ve8zBau!v-57`Y%P}S>Olm9#$kSjLm zhaSR(fdzuc#P*5HdmuS0%J+e#hqv2d=HXZ$fofb-;t$r95ti_60iolW>WCQ$jLOw! zLPzeHH_<&P0DD$TP3V%@iG1^d0nSdQx+(H%O{bs|WWW*YzXp)HnJyFzHP-Y)qB01t6n*RtutdI;4bjq!rVbQ*9&WOJMxh>bw%D zjGS&+t`hUEjA_;$9r8bGgOs0(640~?lmQ(N{t&lr9N6$PyjiWH!L@3lz5xGA1{I7# zETP#v-b-L*#dd7!@nZ^Yu9yVK8vfy;0Cx`aq{3^jPXdB90hnwgx7xtk35}=0o(w`h zkQ3|n8qF!F1<1>$)PF76iUM;=NJzlLlm7lMSC4b*Pspl^z4hw(M|h=~lc#&g)UhDL$8s*Av42Oz)CG8ApxxD%P7=L7u2ktoG}hXNZe5}+0Yy3>kowllM`@xzne-V+ApMf8bjitZ+lCg6@@whcjmPFiUj6Z-^s(uNrJ<=>pp|` zPT7q7An-aSZvFo&^ZNh%$-i;!u=2Y~Xulhj7j(?Rk;4FILNq}Z2 zN+A&^Tcn2{)nt;qDWE}pPVl$6RoCx1=(S+U0TU(+>e9*3uJC;0-SA%%Ih2VOMy^VR6J&m6=? z%e>K`syzljsgwC7vz4}H9e6xk-Q5w*m?sH}DeLIy92_4XtDK&lX&92;CjVh9kwl__ zPUEjX4isyZB#%!_P&zp~&;0tOAS@~xkZN3$c5`#1UZw4yT2)oWON6ezYG73}Gc%Lb z0eJI3ESZdhM*{x21q6u3GM(-3zePREL*rDhSrbLa&?a}Q^2hZ(IXP^j+ztb-RKY%-pk;JeWF3t^D(X;3sXkl=|nQGU6O>w~FBnMEuxp2_K z>R=jmpQ|)C-=t-TMTWiKssCH62@#e~49Q*-FS!R&fb`w&dvzSwfSckV?B24UjAx|# z?>u)jM*zM1E^G}?4j1la$z8>yFgSB*dK?`B2L~a$YHva6R+m3+b}!sGG7LpT+NJ(-(0H@-zQ&d1#|?V`6b; zc!+vM$#Y8cjHqNtZm+h&vs-3D$Q^P`Oj@;SXSi&_#mgV$cWaaY>wve%eEUNoHQnyE(suBtKwgdTQF?cG?~}jivy!vy$~R=6Wv`mmVE4wE}{n@9)1`nigG`_H;jG-?T>NX3Z70 zqe^xg^Kn(o(I?D^H`k(&-Nlo%D8ssO8cAitJhLz`$YR*cCZtCl{_o6&bW`x&J5qZvB*= zI^4j`Ti|45y3A_I7;MTV1~eH3`l_*RDa{4#T#LI$PN`p?u)q;J`pTO&Y9&W=JDL?bwyhT-&)v5kvLuRY} z*hn(aSdz>a^25H7BTyg6blp1+ECKQ}lUzwEJ15TF75PJsWPn*;*_kv&5^H^6`E2+l z@QN3Ru?YY;q-K@aqh^ok_n%$;6ix+T?Su0D#60V}m=IxT3QIl4FQ2uey7s@l;OGAV z^5WC<30v>>x*5Ue3$q{Vx-&I)Fg#O?27G^x|4j|^M5vd= zZL^s`WfMYjkI;3w2{yF8)sLZ+iN}~vZ9uz3)Q(C!$FdwZ9uMFZ%oqBKfD3irG}(9 zK>?3`8zNL-wKya(Q-t$~cbtzbN#^6iN0nz-ltEMPi{uiz%%ARDCAxPr?Fo$hPnvRi z&u|%(d|XGMV7Qap0-aU8Qs4;o_S-5oXQYit4t@QJ&Y%aX1=NgnH-=Hk$O!5q$^~kZfNPN@c~m%cDw*<{>W_ z>26zeP8ti$D$zY#p!1J>c+UMDR(fRLu<9FF35cO}+hGU1-0zWNC&#r%YIAvG@oqeV zmx)cms(aa&Ca-F&1bb^9GapaKMb12+rv;G|ZVgsrZtlCIt`p*qmHwNb30D<4I{Uji zF|qi1_gdZegsT&@ulsRT1P9^BVCOiUI<=qh3t0Y6jvrxfcliB_G4G14@q_7+?Pth2 z6?Am13#P*W7XmJ&#Z!os!A}<{=?xA(6gcCXhK>TdfX((OZ+`P_Hp{`#hNZ->C7+HR z9AkyAf5(rk5gb)^M-Qj6t;Vwta{W(*bdu^}Py=T_{dG`M>b20^o#^@V7);DC6#aAF z6^2G{^FM7J68kqyi;4TD>Z`*q7?ZPvCFO(D{lC9XFh{hyscEi23dXUVrw(wkwRQEW zOk+1XT=P3(i(JAa3fVngY9Qy#7WOR1ZE+&3IpKk^v zRVC4%(Bb_h5%~e~$%E%}5;W-5_QKD0I4G;HjYLFVbb8!t)Gn|2AbNgSsZW;0H=#9~ zz{vNtLa2Ayu7d{>>AbdEHItL_E$55o2|~+Yv8k`C(fBN@ZJtNj(kLfNpV!~`lP%Sn z!IgZ6O9tLR3i*CVY(eogGCO^mVN}8I3nPMEu}g8b=;y$7`;&`IDbh@U7^jKW}SkOY^$1zJYB1^m@YZ zOYk}lGO?nMIjOMW)pgXVy(K}CT=rlH8T&AiB4`~6oI3#FOAoUeDxg9~aO0WJE_-6n zlc?8dIu{nVO5`BY9jD3EGC-hjBqt{a-xwD^akS7ZGEbH^VwwN8e*T-MTL3vJ7Ruc+ zyy;QvPq5l@wfETA80MJE%hP>q92a-Zu&CMPLFwxX*3>&tgUwe%xQ`c(pQ)DfLpJge zsW`IqYBFZ%6}`kt^$wFY7FG9N$9+-p+bQNpunoEGl|~q3xUZXxP2#LRx|wqWeU4*y ze7H>-@{CoM^Ib9wwMHft8_kYaxjc8*G*6WcGE|=I&>pUfW&0XXsn^^CWVF_7{n7ej znV)9}DLlPlTNH`})hv=hgY$u6IL2>tH-E8Ws@HSJ`{Z;fGK8OOM*zpYjEXKI%qP<* zE%`-uadtL*H>%I#ae&Z7l!CKHw{8`r=-R~!3RTy^nGpqgdJrU!c#-Ll;zst9urdw6avQi2(NZM0lCD>>EEKb{n&5ZIn{8KgOh8 zmP*R+Jj2ekcvj?Hxcxh${CJUYak!NZtqa)(6S-DrHb8M*Kn-JA_#QtHIH&WjItQsg zEq};66PA=;hcUa{&4^-)#TN`Q~HYyk3f#I8JG;CYFfn$*!Z_#!yhuIPh9)_ipkEf@4)-2l4sp9ipfBSfXOp zQU4H@6|Cm>+L&eXgz>LQtzn(qtta;8%=qzGHb~<3^gioHUU%h5FdI6EN%cJoe0cdA zH}pMJszLN21?evsmkBtb4aXYD#(D5PJ&2N77cJU+-~NE|ryfW=&QQJ?e`pxlu_XlO zXZCTa<06{2I8uVBwnw~`d0?Km(z?&xkB05x;gN^A&A!N2fy+QB!Z+{D-p@XcbF6WV z4e>_Mh5Dcw#+l&O01*i8WD~u7J3a)Nmkl|C=iPR{rnUxYTtcf<#{ig+cy9uR&)U{T zhEE%kniQ5r#0B75FMjh27(Y?qn?c^*(O?sRg$@sKl}y`%<&-ZkKZA&zRzBjkjGrn_ zBjC1B?@}s%RLc7Blgp1Iy^CQS#$TTt=s9DQ5IPFrmDso)<(X)CA49-ZGZc_JeyOl= zk!l3>KA2crRLA#{$hnVC!Nyi05wQ+Kpe}K-w~sL-jdKr^K`xMDNm&#{g15|d%d+u5 z`=YIz3LG_YzchVfu1QkO)1D$QfKO%Pj$EYSiexLC;*W`JmHVCsDvO8sO^_PikR!Q@ zd|vwK9gExFi}P!sxUz=t$I@k&M!27QP>wX;XI#3)d9W%qptt%Rp`@nwO!CuHp>7*>dMETuPU2ycn0v1ou7Pk2>(0!p+?oI=pKmssnO~1V zX|EDKreO1a&x#j_J#NChTUUw!mKrRgu--*L>3P#qhx1O_io(kLEg3IPa0}`fms`2R zzQ^$Xw9v=G{M#9g=@C7nOpl{?{Wc0h4FWJ#bOj{Jy=*o^>&?&ZP{MNct8W1`UgML; zjAR~%;me5X{YNcsC=;kZ&}!hL)-?ocOP$wVt-lT+-&7t{NR9J_x4m0iD+*b69SUsM zZY(3{HPjslS&G?3vf-2niSO!$j*&7t>ZvCb!8w5HGK_M#ZJ(SwxK#$yDx-8y z&fVN1v(X~+uvATB`lsS+6~g!jZNG`5ijtb~$G}{{?%@^x%Hc_tnhrMxS1%il@K)@g z(E0G)y*{imQtoy>g)2i!m}7V-sD@nFTCfC?%BHpP9!2T8+lmQ4 zz{a}sSLmG-4SKr6$7NJD^!nquz}9&&Na`tGTdbTk*=80c;*hGvW?!E|rT6PMlqWFb zRzwul?ZqIegO0MLte_x7i;z`Lrb0auE^!GVNa`Ha6l2vKz?>i;S1+vHnCl)$H5gV) z&hc+6HGZ87bC=3MKa+fyQ=e*^PBckO%crKwz~6c!3mxW2G_J*QNxDD{+QlR4fY^6Tlp)|<^GUb5_tOK-DXrgBZJt%-z^tl+?F^U-Cghs z{WtWIb5td>IWX7f?MBH9idV#Q-_TNDMMNkp(C`YHv&-$eKzy5N#T~7~(2veJ#mfMV)e&j#>JGnkH@i{BxN0XjIoTIy; z{-XW+4%yMx$@q^g>bIa6&prqE&jddAf75DG>D^gSzNWrI)oPN=cs0~_3=n*e2nP62 zLY8oUraP9+!nNZ0=kIq7g^>r@y)3tO%ZLpPsV3pRXVI4#rSyH$e57@Xzvs)jRSeC; z5>KMn5mUEA3b09mfpcB@A~25dxD?14Zp7+;>i&JBw-B=w-HO2*7^m9QBZ&NP2?JU; z1QA7IoXeuo{bF_x(J^!#5Gh2cuGi1MMn;ot)`6qa%SVFhZ*-(FGh3^hj;+kJ!tns7 z#DG;RQhUwwiM?pI$$3+^hRXAckWWxlp8xap0{M|&)s6Rb3*-8nki_Ra>wnd?=OUI{ ziYy^{K8E;yQosYZ!B;k*2kq=pE8``=aWXRhjL3|QYn!fxm@RQuUy_W2pFzy_b^t~F zqDeBCT~(~NUcHE3L2*E6IuBGP)vMJgZB$?ul5y0F`Yp5ZmxgVh&>sY$`qJ@cPm=uX zt=uqA+s94awxBEjXe27nb_`RI-7ej7L5UlIT$7wf5jB2TsolsR=h^v_ofV z$SM*i(jheGU3p$C317M19+-a7zm(uDu=)ex6XFQ-w}fwiye>LsQV_Z%n$Tlp4o~JM zg<=N{LEEpYb7Y=TIrF~iv3h4m9pA0w2N*ChSiML5x0z@|9+?jLJeDXWuEjkJzx;A2 z+B;l4jPupIsBh<`o7amIJUSOgKD>y0!mKwY*vD3;QBKIoH7RHlS zZI3yZvG*pxYk53g2&PW%oISeayEWg`$NiR-v~3AD9I=t^Ute2O^F^cX@gW*TFxlK# zj8kMxP$K@#z5mur*UNQ5X*6PgE>(D!3%ju)glYUO0Z+Pz@eal+>%o;yj7|#=dm?;!dJlNa(d|`4 zGyUvx@1-&y0n-$i*HL7*Q&*f@>e2ve2c=n2AepAn-sKzXho-$5xq(@v$A4dGcJR`@ z^r=*>bLH-qro^2_L4bA{mcz@=vCpVB5~@pa@lwE5M={s!@1X9TA=*on$?2SRZ1E8; zW3RaN_Pl$Ei6^mX_n>ULC}obm$Cx6Bp&uk6U3hF&)NHpV*naPMc7+s8qWFB&z#kQI zWlfFjv#qqbEj!^_btIt2lRim=L!T(B#XX?(kgxidcjQ{kdiXlWs`d;6Q5zKsO2?{Y zumJ1Kly7~F@gjr-D5FWvEmo%2_1}>0JLgta(7bO*h`Q8>LO4_xYd=r#8)rCzuRC$* zw7wz0zNT5%naJAXe!`bYxchYBS{ zhgapF*y{U<7vY0zn@xNzU#KktxsHM^UV<<#b#^F+;z-*e-<{LH^pDxz#dH&`6q7`iHg8=??SD~Vw-DA(|^pgb!g*i>rIp9EMWL(5= z0@_=QU9N}#y|Xq^N{4fZhLzkyX1V&sWUzeX;}#HqoW%f|$h+^)UA$0RAAuqpvGvJD zowcWR!p{3{+;=YuKyB>DMEL-q7RZn2?x?SP4)!?Z$bTljqn>yn0X}(wb55hd*ay)B zKD{latG*g0t|WLLDI_r>rD%7THcq;BzDhrqsil<(w764DVnu==!vKumW6S)+n>%ed zYT+B^9VCtb2z5toGl6uis|~oH`EA6u{Au9;)+0W=7Zj4h8SA161+%g>?G=-EW$`^BZ-J_N(&-n-`WirmGYw84UYhmVYAGeRss$s;A%{%0@u$bFFU=}! zEKrxg_Oz1fmI%8bBs$=P-C9@&Pq5U6;l`0QJ?@~vaZV<)dC&IZ&~ZgrOoFpI;48}U znEm{WNz+m0cHM+*XK6{dX-=T=%@X~pc_1?X^4g55`@?9(s){%sEiolrhUl(w2AU=h z(TR$Vo6GU*lE}hdc{yvyE9lbfUsdVuNO9@NOMc_nsHVYkkx{dCxqaKvRKZE6?OM2i zd__Js=^GprX>4j_!9om~1bs~L{kMgp_@I>3H%>luk~l5l;r+-s^pG#=-t%V>`1}>) ze;66DzpiE*H8J11j(0t-j@;L+89eMfOM+~`R1OR;w=~{SPha0z>YGg6s?b7#Fw#Z` z$M=ef_eWDNZ2)AHuo~gT<#*P#L=F>>?TP@=(n`TWQEu{%-EA-U#R7CJV+m&Q>*;8H z)&&MnYWOJEq9O<{X75c+CS` z)Z@Nkf23b{TmD{u8`dbsxd~ClqBllKYX>sExJG;@5O|`esyp{Q$~^ z0>h3(S$`;k3L~BTH*5*ZPir01;gx*UAzAMfer1QJpP_(!3d_m_sX;m6cf7ct<{9CS zQCffAl|;!YW5hkFCt^J{8hb-hdlUc*pyq;N$i;!Xb&sMH{*-_a;&!RIO!b8nK^tg$ zkpOHOyPe>uB&{5q393ar_bRUsOp+bY(L*OUWy7epUhT7aZPhV6dm2YL*x6}tDt~a+ zArd9{T$uu?=BL8y4o8qEa17Qt+yi@8WPGp05-k|d-3QMgA8AKSW1s<@=lp+5bzj1ebb^KwZrA5@OQ_l`UZ z`GjA3pAC45JU9zL0SG(vdfEn(OQ}N{qy@ere{3~jc;g3)a>+e#15G$IA6%%Ml1T#l z*BvLo8zu-KRbiSOY%@b~0WbA{3d9ugGw@Ams$7om16SktopnEQk6_Y8 zl0v!kA`=;!-i|f<#ywetd?W91U~(7K7Kc3yhj$8Osq|+KEPjppA1yK)(jeRsI4?8WcK&^90kBx~?_)rO}@;Xax=S2VmPtDPNi397K zI)fO;x0$=Gj^>tGWe=H2%l7ep7+#AJm0xU!NxU%b{o;id7FuT4A^dmlLM5xlHGAF{ zPa^xBKw}D3usO37uo3tb{prUFHa-uLkBwZq)I@-40ww1MnycMF47N5F1IF;=6il7a zrxO|HxiuzWb|9E1XYL0B*PURfAp~8+SpFi@X}ASiq}=4+E|vb+^g^gNk4T5_ zOU#vC%SiH#(1NcU9M!t3;*p(Y%NNL=NscEo^;cr4u1G?&zNONd#VPh>l^xdIc%v@> zeJ|uYVBl5VU{j1r*(Z_NuCcPmT!4aQ`uN!nv;-R(T&p{qL-KZP~f8f$8fmobZ%sBh>L) zZFIwca^-8XnAmudJ}!)g8!x$+`<_y(^&E{q_!lg1GMkyxl=)JaMS}vZS;JFMTAP6- zON518x5Ah6t&qWgIPiSTXcp$al9J@F?Z2!Ah<9hKRE2NXfFK7{Tt=V1DmSQERMZgv z=-e$^*bwSk)uT*!j5PXxjJ;)4l->Ksd(Y54beDvHAR#3=q_mWDgEUBY3=K*nozh*> z5`(1D(hVZr-Eijl{okDP?ySXPEnwEY_rC7Ujw?RjkmDcdb_RR<{bq4rXpm2zg?HQm zX(CuLE#2Wspi?XL%;Ae?c9)vLPkp3K!Y2AkFtbMZ@4Rqy2?(+YG`@;&g8dZZ4*BF; zU0vo{E=hZpTCcA5faNJMr9TqR8uV zE+d6$>3_k6K6izz@c!hNc4_KqSJp6nFGjt-9ru8!$S!1N15)0aq}vD*&Qc*!n}L-;0?;r)v(ypn{|APHsb!`d#z@itdF((!$?DSwFo6=g2V z+Ce97Vmvj9cOTJr88p@N)FwX2D4TM><$NeT$?k!%P$CnDYKe@W{~Sx}Ob$u0uhEFF zmHp$%-nCJAyJ!S5TU`InQ5;6AZ`$7oKaGqa?=UmJ zSj%3Y!hR~s==NN4_WhO?vR#$|50oYPK*b%_FO zVpzd>Sdv&$SRM9jKX%vM`NX~bq=sq~R-YX;&UEzFgPKYt@RUq)3ab7fCDe;e?7YUf zQ4w6oC45LzE1Ra3*s1}?o1ocnquX$D0~`2pMz*MSymR*P7gEZfJsRN8y`*zBs~mU= zVbUEQ*(s6bNZmd(8m^1Dh1AJ7+ehpxn%Ov^B;h1JuWuY#4FV6E(lb?7`Fw}^q<^Jc z90(+W7f2r2xd-++?E+ZO9$~Z;6s@7iPCRPHte$o>LT)?Uv)3gHxs(s%G4TiCJD9Id znP^@fG995IPA>msdDF@v4e+iey}S)9Dt4ZF}q2DCbgo8yE#_Dg#eNv z8gw#TNM34Ns7m8GEE+vy@AMyVC}&EBhMpM%8m1GauJaG_n|PF=p?ao&%;nfu>deui z{s4m$s2cG2+e0B9uKSj9`p1W@kX_Q(ioY^2pDc}DJ)h&RG;e=9+dJ-B>G3Qt0vO*)Ks-%P^Etc+Y`>ub#$+-~LptVYs z!-lWmL9Jfs#d$Adq) zvfJa`rH$^ZwI7UP9auxD;;EKZh}@<}pT5uHejL8pS*fr=@1Uzz1Z^yf5T5&pK)H@$ zqK~;eCbBQH>3ysK>ONE#e3;=_U7Uy>bazYNY4i}d;5F6ygqvhg@d4|W`IL0`IQ&iG~9@kDh*ziO_)3Sx9fcC~>VBXo(-t0=L-rd33`@uTYTwRTQ_kmlC4abi==@m13^;KQNdEsf>NZ~TKOwWd`w_IXOU zFwoST%DMWx^*BGsnYb?oE$OzY(-2GM7ii|6p33Y^3BWjj~`nGlz^}O z$GSkVBgZox0hj%ypR5H*F*|nvX%D1snJ=l9bT?CzAAfnD=T@_L*SmdEbN=;2{^koV zk=UKi^w)?In!9BrJZc*8^(TaV2Bs5PcNzp;pE9j9h-{32)2AC&$HG=r?M4n|^fnigUXiOfE!j`>x%b=Gbb zGz9^!c5l>I@08!pX-&6W7~Ff4@OPRY3OSf-c*pbWRy|`2xXdg#Xf3CNlw;*hVE4~|OMgn(EXUGcL9#jm@1oPuibvHK>uLMver_x&Jd14n%SXh`9GJEPcdJxg$HNWFh+DelHCBUE~(Ll0FZPGJ^ z5{qubVeN%%K28_((!CuT=VOuogO?YMmJV8-t256)Z~?q^dk`vVaTA;A3V33q=*Ho+ zn~v#UNf!)3;x12AliGaZ|0X+epwBVL=v3#n#DT&{P+z3QjS)Xny~+%ywrY_9&F$9Y zCsgzmbALl87lcbF0kiGu2r#LOv=$#(ZLc-^Q2*WJJ|ydY&(5w~2!Pu|D!p7*9y;Em zBU_F7=w^%!o|G-KvIH!kdzq&0CkqySVid=`tc{}+}8g2aj_$gRF&>WmfBx$^u8;;m2 zIVqS21t0=LN#|Bds|IL!(@h6<-2#c+#3MMi+viA#d#08v7AOw~GKce-`N#R(rOpV) z!5rM(7AV~Z>3CED4flnieD9~t9b2wSB;w8lW@%!sPth|UL z{_3LlX{$dLB#3+j!&(_{X?zcIhJ|67Cz`)G5&I>w8kw^bL0i=%9PgR>aB`|^?GGg* zn_P{fFebodMmaG%ZCrAY6>pA4fc!mz*3+EME7mhThoQT_LZ=5 zPRxfy7Q>i{+h@_C_x@Z~tthF6Nt~GWO*6yS!vzETb>0FLunOrvi=KX7?FD+d6{ouN z$FCQCk2{_v*am66+*SXP)6F^Jj^!XBD_&`9YStRR>u+GJviSX#H3EbOP>4Taq6cYY z+AN_;`MH&ovk?(TcmMIA+ID*F%0=p$e+m-Y^NBiBU;HwI_SMGm_f-m`o3<8>oE^Le zO}wG269XE^Cq*`&(_zRiCjH|KRp_u>jmabBM0TlMqn60dg-!5V|qcj zYal30P9o9Vt5jRMY23sfOFxvD&olFxyV<#qa zbAV!yDKc8;H!Y7mOiOYb{KnE_EtX`9O z1SpT&Ve04R>GMPwLv#SOau#&QTL*zyEIM4aBjaXC(6V9)wl$%TW&$ z3HGEgXW>e(-VGrjen||?Xz%z7d-eNxqV!r@{8`RYY6~uo(<*uBzc(m!f#jG(PkZCn z?kwzXJ5<=&J?B}jNTAYb>dGVv^9Hf^Il18R>bLhY#UM;I7%)>UP5Mj*-KEo`?t$qLc3W>{LG)Q;Xt6;LBW@IH2~d0hNRuV z)gioc@-I04Yep>p`@B>-lkQ4nUY<5$SXRkTRb$$H>EN}OA6-7c5ZZcIUb(1wBN7|V zB7Y|kh_jD@+x`$7{|Ea z?7e~iCv06Q!u@!vK3P6b-IoN&)DtFSdGta*1};13BBz1n-@yoP>;OoPj)4cjKV*xs zM6rgcc%n*>^^ZkZ%tTornZPh`G=&LIcBUmD4k^10G7A*rvSn1xJ#l??m!}+WNgU)};Gc-P0T3@ozB7xZErWP)b2dk&HP83c1hPFc=xi890@j zd8=svph|ldfNLk2xz7IuV^ASOOTO&_B_B2GIGX?Zk375DI=`em_o;tFn)tbK#7i2y z7K z00`tG;s)a4X*kkYCc!&KKfh9*ztl37BR_B zYYe?bs!C;Qzl8e6XU2UJpd={X2|?^i4FndXEG_3jMvyokTWKQst7o*hw%85yXmQI6 z*#c>xm{eMzr0&;lEm&PSY3taURq>5rV~g(k0uSI1)44q=mvw#Kt1fpfAJBT@>r4ZC zlEO5aTX!_$_J2EU|04mF4zza6o}*?%g@8$FQ*nwZB5l)B_3u&zB4OEh;>!My^<*3o z-rcUSzd4>?3JJGwm+S=5=J00G`J|+Ke%JaNTzUGvD3G%&%DSMy&oMJ~Vb$b2 zasxJ0oIs?V$PH6mT(W`n1OqLvxbDfX2+V$&6=VJAYJi39Mh#<&S*Yax`#bKA7iVRW zY{J(K0u$3ALMI_BlZ`+KszG3Y5+@>|N5YV^l1szJ`-`k!24)Grtg0ZJ+`t0z1h)w05QLn=uFgrlbv(}5`L~iGK=}s<7 z0Tb1}2Q;OmCudTt^H~x>EqYZ)`y0b={`(Apou?-$%>W7Pu1i);R2vccl#(`FuVxE3 zn7eM4LXW$2R{8H)Crh0T$KrnN)QZ69_PKscezX}&!D5d8!=Z-cAoB>@_3pnufETFHMNpL|Y$ zSj*6O^(*q)4U!Xo=5jBkT(S^zaVPv)%E{I^B_iTXzCZ%(lm#kPGuBOcA9G^<(qat; z@w3}THs1~Z7x>vszaglBb z;No_F*Ev2=z_qHo z=62x9cPk9~P>3Y@|La?i^ruh9n#s^)ujB`Mg|DYHD@LIZ9?V_=MJ8pL@VBS&)ui;H z*aFt3vJ8aTdo$HfJAr&2qvARXymJ^)oOa!Hr!*w^0e@xC>3i6_6ga+3{b?F_<4H1g z6Jf+o84HbM!pZK~;vcL_gYZNKO2 z=1uIjf?KT%Dxs6x-i}PiC=Pw%wb zOAe|wh(~93EobTPR_F1TOf~dv@w($85>l5p%<*NLp++=P=;WHw$y)L()<-V;RE8E& zRfj>3t9Z0xUl$e@tX!U-{9C=xiy4`j#RxM;nCH;$+ZMszuj3&+78^Cf6`jYW#Wy=P z$D|1L!Ni0F`Wa|2WCc+a(3jEDBG}z27%sdGev3*diApVM)HXTDHHs*Fk@9fFg0Ql) z6H)abz?~be3mxe67PZxn=hCpo!`w^bR+m0=kmFpfgcG*sibkLcrzARg(s zp}}deccv@}B9N5Lksu2a#Xylm|Ax?@lSD@-&k^wCuSR6cAQb09qh&Bc_dZdS7Lo^| zslpJCU-hB;F%U}&cW+$#wBcKS$`-`n{E{FraP`>FkOe9^D1cfo?79_= z&}y2)e=t;4h3zk#h|{W<5qyjuUXgkwJSK%`dkL(JS08ed#l*p(?37u8KxbIfqhg1g zbndewiJ~I9iNo4e=88HZPL5&|=iPiaqhpjC`566JrA~D$9gYin z@$`)pF~t5BV0)$2^?004>bg=2WFqy#H!5H7Vmajz^d9>dbo$Mk-%Yf#coh@XL_|&9jWH-xuK$hNr2&m?f>3i2VCgWF|osdg@uk!P>0m8wPW#SOFyu2K24Z@WU zO|?B*bRH9bj}qzcjExx|uZG%huyi=*H~O9l9)-M&zdF>mn_eh@@rMU_tKx6XS@>^G z%@xhtqTe-Q4^BswYinz_TWj9!v4^#yS8uMa-(Wb`(`$W_Y9i!#L1opv*hR3`cK#75 zc`dkQU)ee)rvZ8p@_!9YyoA4Z>KtoZI~BpWx^R1`vssdvOyk~oqvUYRmvli_F^dz_ z!RL9DB_0+Y?udzpr?`M90*Vp!y}FQp(oR7d^Wme_ucC zZvHuv`<+#^VgQ5O(0W2w%hynGTz=m*x{c)YHm}TPcO?BhRlGu&aX?o3p^BT0O#zoi zgymfvO>$u&<6HN=uX$0$#l@IfC5Reglu~zg}`r*mVY#R zBD4f{D~PP4n91+*iEZ)sWap-*nd0+SGb&wP5=dw9OGMY}jFZXLRyhVB=2?LkcW*M? zhc9*7A3pp#-55X-$1Cd}l(yS?ou8i% zR;w#5l|z_=S-^2AzP_G^m6MYcS$Pj3+2eA#_o16($JNypr8zHxj9%HVIxUTCzQfmZ z0P$DPk*v2Hc>OK*#NPxur-Nw)uJyBx)|-W-Ft~|fyK^Q!xvXcGR&=4VdRerwY-u`}3 zYpX8Ztnc-a{JVD%ZXOACM5IMy%9~Gr+;OFYUw)q`(>l2;wdS}g9qXXEzt1A2t^`h-9n^J z1VYh+^7*#5x3MUg`u`!;;4IDqRj^T|*ch+W;1dGdPSRd;{P|6?LU6KP@M~E!giY%D z&q;*!^glftWsC2J+mAQw?d^R<&s16GA<@{+?DTS8BjAg@l9VJ<sS@fh5y zY2N-X;a8pWWMqx<2gy-3jDWj90^UX_!am$=U8!{9=VtFzRIY}vu9_T~2syf%KLilc z(By>mhv5@d)ig8^@kma(M&cdf{0+W9$ZICAnSDfPMAbX3gLUgI>e%(0G!fD_uMx0* zCyU!NlkW3!-QRzTBdY=()8xbWAg3$;%~YRtDPNG zJUuT45YXgWAFTN@tt*JS_TqJs+Uv%VdI0QANH-Xwzn06Q-#u!gSWx_+NwJ(%GKA}?1og`*4`e%+Y=w3987{1 zrMpQ&(RO5KzHBvJ4pGCRE|+nHOe@pq@Tif6)o;z6_5yfvQ@(Vif#1u}V$Q zD_BV?%T9pU1dYYP=ZjV3EiL;BX`PTR}l9;pT(H5e6OK4jA zRu^7Ry!$r#S3MlUM)6Tese!`3g4;~WPp=p9f<%srV5#xtnfSnycir>U?W@PK)}mZ1 zB2B-5bz4K@tC;@IrTVSTA>!tH%<{$i&wEFg#M7($ubSL1_P+AE;d-;c5o)GK-D=s} z)JICsdo7a$V-^|30>w7Za{BLW7J8ixniqTB7a9s352ITt2<*A)vIlv{GBZ)Y$Yc<0 z%Ec&9iDfBDWSfnD6yZbzE+bN63kE$#?@0bs&LAJDF@fd1FYdOe-(CB5Ey1fVVaJ)? z?<$sEM{^8i@w%?>!iZ;p)=r~{0X~(op&G(-qyQFiiBb~2u*HfwiW7#FmpAU~XR=4z zcb8-MT~fD2(6O*3q}$)WH8icv}FF< zMKI;y%|N{2mX|H{d3n&V{xg?@gC)F7oCDyhtVJEayc80Ftqz#oJc^zCc)VJaEfdiG z6?rT@uO%d-bjvD1z{G58yY=n2!SwbkQ8cIITQpi;UoLSQb+ZS@8fOES*cxm@KEZ&8 zWw!W$C`Jr6-XJ<%^Tap3IJp6LHa^i~gSc4X+2z_I4T!?k5SMA;DUVqrZSC16@AEBw zCbbtDamOHH=Rmk-K?fp4#>>aXA}!ch2_et%NqZE#~YW z0z4L$5Zc$A@?YFeE|FLM{Yo;+q)Jz?y|EeFCmV+C1dkKZLqzZ-^S)5{?G}+nVdWz` zN3bSK?5e3t1v*bj3b^l0F}Q5%BY;#_qlkd+buh}gC&tkTBBp1j-sN0i@Q__@6RpI= zC+s)5r`~_d7^i4KkNRJ)@}3?NQ;lN~YF7B9Z=Zt>-lODNMc&I(PmIb|jwrmBgIaWt z<)Oe0c0j`OQn#!cwX9@OI00u={rgng-L-#~%#Cr*p16@2nB>Z^iv*WmEi<$nGFr04 zc^elAIIFEaR{t3yGyTf0N*P6>N{F8dLNv8HP*I6j=>kOY*~X}G~I>22{t^9 zCb{Q`Lg=@VB(?GH5UiQMxI>4_#l3P^ubuwrE0y7Ha<}}O|}tqNUK} zJKiDDQO%$|wz^%e(zRwJpa-+!VS1Gh#b9;cVirq|^N(&f6v@CC3RazBE@3~xW3fgR zA`PJhzI-r37F|-+n>owCVaYt2=j{kr=A(1T8TBMK6+(`}0FN8~$Z#H0D~D#L2pX(g z52v(gkM8CyT+l?lYIj=yX;=z%4f7{v@uE3-XL5@0@aUK(cinwQtd9?3QTx8K*PN6ANy?{8Ye-HMk)H|7>%Szj&AlRv^B%?4Q5zWWhQ{mz zlf3A9N)TPihg?tkrSe8?LW-vGtyh8&{+;lx_x z?BeJ8a*w(*+E=>Wb_HePOYbsQf)joIMh&n!H7VIMKd63Ud8@gMNEZlVJ;{>}>qVxf zBs+9dWBnbM+{jmu6IV~P_fTG8~eTQx_EP(r>FmY>mP;!=i> z8LTSZd|Occ)YA0EYIJ-&_^=m$8ttL+Vf>qvFWGCJyt|aI-|WUPV||PM!BW3wU`c3W zw9T9DQ+#uem9!}yO2aG+jj-o8?`&x%EQOzAB+MsZUYG~%y>e{oeMi5+r(ETT31Gjf z6U@ zV3tIB8j}%N4iH|?v|c$0;z4*=l|H3v(A2AZu>1;FV|Xua^$lzGm;YLnm(@{d#2Wud zhIu&xz-xcDDQPR5_3S+bjQn~Cz`T69dG#4HjFt6UHLg?qCF4~@y~2mUloL8Fv_kBF zU@W?iPOP>2gn)p<(je+P7J0PbUStm8td^hEn1zNab@1huBYs%&sV+SG=EaGd6}aU^^nN2U;x*4iwEwN*sGzDiSugRZ#%#6yPV_#r%A>~iqjT2|lX!pt&5Jv7 zUEJ%`jJJQ?wXO#slXrI`QxAQZLmvXS4UJ8Z2j#pV=SW)c_eV^av9ovBQ0#FQqg2w$ zmd=%d7&H>iAb3WC4t!Bank-v}CsZ2yc##R#q)t`ED&V`^24$Vm=mW>sr~Nl_inQ#N zHZ?&awxlAI&?})6hO5o?s}urI?!}UEB5ff1{ZeX|h+D9k2_uWsTf*y9`|>qt?x&PH zB!#cF04q-w{=+}L6l_>9(Ja%q;4co%M^nb{Vn-}C_skTI;UGmHBb2nzjgdoU>xNVecA>RY}*6fusSQ*qahwago@K2CFm z^kL)D-G6Zb=M2PBqnNaORhjrsd#^Y}`a^R^r zf7I!N@*_C_8epQF-DoR?f`-1JfZ+HIyVd|>)h@nLYi2wyH^P@@slr?_5btfL_O%bp7! zHnqw8)`-OeRjy`P=vZY5=%!XcSOoN6yHpJf=$=x)b}}9zOlLg~*j5<>k@{8ly*O8i z^kLt-VL$4eUv9F^P`pb;@0;~|m*r|O&WPKR`($Dm7^jV!gc%6-9;FY3w}*yjuCU^WH+>wTEbICt8Fk8@M%q0y)v`w;*s74l8 zptU3%8xSAx*{kDka*W=1^VRa@fZ(1rdK{@AnLgMO;%aUjJ%szS|buo__b*N2f2f7qTzatsBVknrp1=Vbcy3`Vw@u z=m?g+64(o+dkakjJh@R#gaJm3zewX>o<$`e@PNOFyY(X~R2&x_rZHryTCLwSm4u;! znXeY&Cr)II1pNyW>Y8qo+#0KKCZyM9K!BGV1KMhaP=x~%|i*Jm*J@nw6;Rz8JWP+Y}=MTpl(m%#NodFX+`5AoygT13H+>s^0=ti|+AFzL;( z`Qbe~Fmklh`E$?kt&+dLf8y!LAaIW|-q7_JcJS%)9Uj1%83nrW;RLKPAV_QNcv!IZ zKsI1L85d|P;yPd(i1n~_-F@Cl#EEK(E{gd_N?-D24#PX6f+h@c;dE_ChGYRo!;C`8v)tQ=g zB!0b9@ZoLi`CHb7tj>b0CkGex-yuF&(D%tWJaEClrR=b;M)-Ag2pv(V8egG-Fb>Sl zuX*}Ncyq-Mh#k3kxcvfe{(0|Mev=M@mwz1->5auY+4nuDNh0ASqIDL=%-_7bOJ8rk zKzlwVgV848#G>Usr5|v9G-e9|yMc6YG2=s3W)b8ZQYJ}c%x1a;w6*CSaONw^*Wd8q z;Zt@NNVP$$8lxO9n7533(DHl(_}6^!;0LpQJ0JZmQ%bzfACL>XAX*cEJ>9&-aNHcp zyvaUzVx#IRBj8Vam*QApApp46cTLhhJ@bISl(EipLup~D?%0sLl0M+=C}8d14T6zQ z$qPV~^0cXdADkfAG85QDCLIjnnA+tKK6@ID#f^$8Ey^9KVR;yMVh;OpAs1gD z9}~chqQ!HWw#NX?tuYB4Jn|TtJipOjnv8WlX80Tt?tTik9t*#bf*?%BdIuvWten~K zW<$>TBr`4spw##eZ!_5KO@Y8z&_6>$@VBWB)O6-`J0AE`X^yU3KrJ0m&aOe;Q}8SJ z#*v_xfOzy+>N7x>XI<}Vh@y!JoC$V%B)L8>`vWG^GKqBN8w1Kf-5?|S*yh2LdOf_c zoA@Y~zO*YEE2|ht#`anfl5iq)h%>~Ds3PoL`|BP&ht3Ws8UT&pye0=Yp0=-$NS6^O z!zw~#8KswzfahzVHsWW+8Tg*K*uyJ()jt^(nVmiX+*MhqQ03`3k&VBVVdd^Ac-_@c zlox2 z%!c15gs&Gx5%htOuiacPjIUKl1c4LG9V4fG^br(X=SBcNECii*xZ4PnTBZZONJr*5 z2j_x+U1tZZRR*E|k|r~AZ~0k-SS}~s9cWBEZn03)qMjR@2%dk$1EzDYsyn}~Mj>R} z+zePkbNU0iwb10~-2fAB{*(Kot&BAlRKTc#Q2OdUcpk4T?t2s$6v+#~cMW-C3D#pD z&qY@zX{tFv%4w-F;BY5U>;1dnPOa{_g_N4oX|b zV!t0S?K#rPf6^w#`$Vt1hAnew^2TlHH`q70&@s}&H+Vcr>C`zF7!(C8st4R3V-gH* zS{Y7RAL-N0k2rIK2xyhtw>ni2d6P%+OLw^YC>{ce+O6Zh@X_zXBMJYtv(JNUQa5R0 z@k~bNlGVO2#V#^k7&-&cBtGp8(;_e6rih$VW5o zbKs-YM^ALj%RT*%Sn>)cPU0Z^YDTtkk8s7HH3ZE!OV%uu+|S+-8NJmg1!TAe4)yKe z8gdtQP&W|&A52# zjJmf&8GjP=%S5g64=J!2SC1ZHe2WQ+&tCh#nMpw3_3s$#pt*M)b?8WQc@6>5 zEF&NE{cGQUED<;LH9a$K2x08#dgu-u@&(wY99!h3%0(6Xatl%+4Tx^955*aFx58Bf&eyY5eI<}fO_7o6w4Fnlmz!W}mQwQgMEEblccSB6nmjDN4G^JnFC5rDa zh~`>V{dy@J5r3~DhLF{a(TY>QD20a5^$=+CoEs7_SVZ`vQ=p5IS!Vi*Y~PS#grD7B1tUv>?#=Ec+FwMi+Rw)O@!8@U%TL?zM71wLy2(Q#BWbT}A0ux;q9L@^LfH)V5SgXpM?_43`p3D-mq%i)z$2}+ zCPJz$uxhm%*8jXs+HyR-w%`t(wHOtvLF#($`X4AU4i(xpsKG1}1h^Kuv^Ft_^%;CNo)T8Us8pB3Wxqeo7ZVR5|JDh z_S6)&?dR4Y5>F&)C_0}U>u2cACl<-SAuW}~m|ytv-g%JHu|?Hk?x?RRS(473b+U|G z3==c7%gy9HAlH{tt6V=Eoox=SOjvonD|j5+dz1Yk=sZ2uIAAxrzNh5Fq?g{fNR{NS zhI(Vk*JZJyd-0h0YA=dVv`{#T+yVQRuW(I~tv>2odr%tWr)1EYKEgM8aleQ%X z>`6u~;>Ar)V_)H_&2k)cMLZWrf0B^eW`CGIIg|e;H^k`_0T`!K>1Wueb{G4BdsW#X8k{k<7`7YZU7FQSP%;B|b< z;pUc*r4_R(zxJ~4-Bq(9%8VhKo0yTto8z?K2C;I~G&B1Vnk%lVwslf;pR|KZltWAw ztpj^_qt{_qIJ=%$|9NbF9yxZfb0%f%`T6#oQ|fC~>U9(lHQD!V2&cR@ZY0#Ncaz!3 zXBwg)6=`a*S$PN>`My28_-H+SAR4EXS@-FW6kfC6dC>0}-{X7P#TyL5#V(;EM;Lw? zTYb5U!+Yz4$9rrQ2vjwMNQsaVITQ-f!GFmpJJ{I{!zM$zXd)w;ZIV3SL@nxC1wHC9+t4D) zgKR97cW5-{^?zR3X8LK2fE@_2)wQFGlV=*y7wo?w;AZmxFIdo+xmV#B^Bu&XrIbI|y) z@Wc1*7RVAF^0YfhM^20CE0&+!;zy4^rXasURFEnu9itd}p{iM_BoQSb)v?Z;Bq%Ym z{yR~=-%Cje&jc*87NtLOziy^6#SZ1BJz2(D6FxpeBy484z7!I5i~YJYbjyBI)Y1up zJ&&!-Z#Jogna(Nh5a>vz!U@`fBai5?)`ErOTh=Mqm>ktuONlpMDuoB;oEqh!s~iTU|n$!v2!G@fOAKZq4w%)%T5|0zP9XR2Q|l*%cvy|v{b7bPzN zqCfX+TKwG^wEgLic?N-W`0zI9&CGWFp;%siY=rl)D=)9yr`s+5l)Adu)F8`>4R;WG z+3U3pA%i44SG?0Gf4`Sm~j(7Wbu31w`x_NL5Lmq z+OVf@?TTF7UR@Tdg85>*^BF27jAz(L~I>jGOiPV1W(3}!;>F(F= z|KXuiYroG_3q29n*F5xy>y-$A<-0TQI1;C$F%*em{8|MW6@A_b5KKq`OTjjwZW`aQ za9GUGMUI*NY*1wljowB#P@W_lC4Tmu8c4&s6yq1n+x@v@s(Ma|BEA;@&SOl*hF6z# zc_S#b0rguyiS2~2&#jsWf`k5%1?vj+m@3EPlN&Fa-XpJAaa2uTdf0n;kJ*M~Pft(B z@(Eozur7DFtCvb?XlB?36PCy;`y@ezCQd;iv7i`=wgxQg z5E6$&3O&+-O_s<^RpLQb;pyazsJvI8z`h;K<;D7#v{QyX^QG|CpXdSNXeT|_*p+d* zPqKuTKP^i$i^4cSs)@|Va5Owx_u#>?_0;*oL3(76Eh;+A7zWq?E~$(&URhJq9E4}M zQXexnonAU-g_C}c<>?tK+zCKn@7Duh^#F@}5*UHnf*7SBfFDauQ|#m@;gINUWPj?{ ze0s z1`V`^i}nYI0x8#T`@N8%@)>l%#sVz_$ubOEut(2i#?&UiyQ8Cnp*9|&FLEDGixi(b z81(afYS+;j@5JUdG$3}W4(Sc=S&_rTGkv4`%{o~C;+YXQ0bU&2u1lH!br{uTBh`2j z_q9;F49Kg|NIU^`TbJL;7lS4!tbt%W&1jea=$PpCFkZ6zdWNvO<_Cah_+Y&4NBaR( z*qve+=B9SbNO{o{(T zaxpqIB_%0<30~My@_f(BTdB2D0 zf(AvyP1cc&cz_5=#}iQ+#D7b6k;IM(F*@C=DG+MT`djNrF0&+Jm{&h&(0>b+Zj9L4 zs}#}qNsx&UPJgrG3j5N-2}`2Si*r~Bavl;Ra(|2IHapUv04kq9fF_}IVmScS3Yp__ z;e_cFCy+tkZNCY%y78sTC4eyrVnB=FiEcAMEC~ zP!aK&b42i^){md-@S-zFIu`!bHAe&JKaUi-GCi7d6^o}9e+el3;RTV!4b)CQqMzUs z|2d?7%P-{+ua+h+AdwH+^-7kroqHSb{y+mM{+I*zNFHJIayDS&Q@AS zlJ3^M{&)9zcE9Y-GhcXyd+s^szW2T7y!RJ=a{KuDlNi}eHNbd#R^!1@L-F-Eohmpq z9aW%Ev@d@^7UANvF-kh~4?X49Bmw$bIx)b=^aKj8@Xsg6$ms$6 zWBjLHzx1VmJ`ylz{s!)anc_|bRTZK)!qfq~gh`Z_Mn-nvG3PV@#nzvshK|dZtpr8^ z2jy+**Vh$CL#WpC6ra zz4+_rTK*Ch7_EH!AaN7Aan&gP9&J^aXkQ6g^X% z{BAWs)6x{9Qju_r0Nnzpnv0(vmS)U91bw-w&STF5Gs;ykTK z=Y8gjpt-!Rw_~a3mUBm)iBnX=--bHWV=tlZ=>9`kU?WaJ4$G}pheHXcsh%dQpYtDu zuQ%P;d%BgQg)%6{|9`*dT;A?+lk%i!W*!TKja-2*jxpL0tCN;ov>qR+;SL9^nCo4t z_^vrvFwRA0=7>PNut0tk>ydS`TrM)dO1w3 z=&b5viW;zNc3fEfa&U_wt@c;AGrI-fCm>2$mN{*(;**VF+Sr9x8{csFn?KJ&vV!qQ zXD#20#%jvixVtyhS64e#x3>Bi_4QPhPTPq8*bO&Z+T`ILy!IW0xp;fu)z;Oy5(kiP z%G!DB1>57J$k&}Jzv1NM1i|&!N-y!{5psB>)8ZX&)E!+DtdfCDkKl?Bqd_5&(}a~* z;bx`Nw=>bJ(ol`A-(1n(k8auu!bd*cYY9V0oq#8&OUt>A3qOCB3Xn$^sVt23T=k6+ ziK~wl4%k7tdjLIp&Z;8^V8DOB)9MH#f*)ORo_}!`He0v z8Z|dICND2774-M_n?|PZouAjvW1BHTNE7c*-FiPB#c(ZQn7)6)%^yVl9c+BGWBM9YqZEfvU z*&j4)voh$>(NR`px;79%uzYVMhN#NH&!ON)@Hjq(p!79EiQq_a@5X{bKxip%_ss8k_-cgxj6eXGv{5gv@b^udaZxe|;E<1hS)eu1 z^7L)3tx-ZdTd{8{diLg3FtULz$-fH4N(BV|Uv@!IpqGaSDb4KfhgeJHc^?&dGpEz; z7Af#70kXf=zdpl9E{8Ms?VT*wfzu@xHhuUeA9OTpS*J(9O|KyIPWWxJR`&KBxaOj1 zy99Yx?E~k|!$dt^Gsm&00Q>DwXP-RK6?X;F?=-(tP!|Ar(t-q zQapilc+fSfFL)mTk|_n|bu1a;PILkyGNh%`qazd<4|Zggb{C##X@*-l-^!6k``+Q9 zh>#FV^2hzQnFc54F_F7;@5Y;xztnf4IEeR+Yx2LE4b~B=kjm!fX1QZ!d>4PJxs}?U z^J|^#9bhMf;{6<+>{^D#wVX5;xkpj>gT0x5Qts}bqF@*gdB}e)gg`5e4C{-a9f?8U zzhKt<=xu*?c@^R-K3wK2yycS7kM{ZtZ+_L+WLP%EdzW*m*Rb(mMrjow6FAN&%&s=O z!mj#&c8UAinuYYvS2?x@>EWeCT2F~sKO@?B{&a#;66()@wC{O{omU$H~RodEnQY{Fg^{ zL9v6`!c%K@W zE!Nl)ny@HL)hLU=rS*NXv*hw4dKMxcFzbkDcsD^;QC2qWy<3nZ7VwcNHt1Zh!sOsn zib;)?Y8Pm@VSIGZuyUzaZn#-mqHpS(&~NCZiWmkNnU~L0Q_q({JPl3!S^5X&?r(^3 zjgKq$=RefjK#PdSaZq?LZQ^P7gyUOnp0k{t|1N#VQ__r0MrW^m&vgUlDi5(kfq}V} zhC?lx3t#%MlML%X_37nosUS2WBBHVk5W@M|^*dODgQWf~Tf(LgtUMn@-v^~<+KgM= zJV8{LiM@UKU+1gCCBF?cPvIsIhrMaP+?v8UgqR3@#-rlMm**g^|ym7l4)TDL*3EJyW6JA|{(pN%(9 zYWeOqHkVw#Z>^f`*xug$iy0iU;C<5j#1r1Auc-;?0a9^AhzbKA1s6V3(l%v^^7X($ zpM^3*=m6A^&CSi_ct&N10$)5#j~Z+|H}v7VtE016|KDGW)*&dR>=@61<~8{jH0IxN z!mT;Jm6p=0ZNv7#YDIsKEkKAxb*8a5Tb6i`aAa;tZ&M5P?lhu-HeNR9A`^M zd-^c{^Q4Ap++9v%tyZ?(_YCAim149FFll{ht4H+1XnfBdrJIph0pMG88P@RKHU(w- z^%b3R14(J{yg)7FwyPC?n%R^n=1Qz=cZ}5=htkqJ1_yWdyx%BRqODY-l?S915D;c$ z+SmtIF>-*T;Smmgnx(|W(EQkgshByOE^>B_47kGivUdk@cIFIlu46Fu!H6I)BQRLN za{*ksqdS~_j}4z^swKJ~Ew?G71|qS>qmaEQoS;6^-9h}c_`f*&JV%=Xi2`B*aSPBJ z5l@jYx7>x9Fx!VHrhYFiv<=1i$fVDF1A9NOs6WhA=KS%_dm+im(@qdh!+A1O@s~D? z_|W3L88i3Nn219fq_pFq8&|StvyY>1^CASK2bpA#2#(gd_C-n41m>dU(f*f_spc>0 z)}AnkwsX`4V6Av=AK(WJd9NKbTs3Ly=+Z|-8l+E=5NyEY5x5P+$2rRy*6Rcn=Y{H7 zTS015DMA(lz7qS?UOQ5dX_@+)BV4LmM8`_om6bQWycpf@_xSGxSSLbR4n?*_oq9q! z;uxEtVd0YT3@4u%6B1}P$UmfkJ|u7l`8wtvi~l)GIFCDiM6GXqAp0J3gr^Vl^Sxbk zdvZ*#95tk@1s%v4a8TELiwwI;1T9U(kC6{>-0T|%@9VX-5kbU&*!(<9c0{#zM1KB; zvzl4w%QHNbFe0bB`7M1DPt@6^&{gpDf*S@(0~i-EkNyi(^r*X+$MiqFtu*v!#UJ~9 z$+uf<#7`(H!4-PBI7QCl>G{L^*C(S7t>#ETUR((8WgX z`;3xwfu0Sn?XMc&f~|jY1pn^hDwFd8@D#Zqisunlh5iN*&1~`m~Grrp;JgM zdhRqXgcygamx%n!859n_0=xKShu56*CRNn*FJgR15P16Z_)`0-2{gy0#RkghvBJg- z*LJJow>t{m)Vj*8Oxr5^w%y}sIsE#xf;;_x`QNBIp|~d#GqIQFsl46)lDlHLtZn4% zw&E!|N?rNxRbO`RtCr=fuEcLw9h66cE}pGFgV;)%#n0s}uh!VuS|snc`j?#bQR|@K!Exy|<w)$_5A7T7MDmSSu8X1|sPP8b$ zlMvi^cWYeZp1Jg)^D=7xZG+{nFS_n+ALbL^bQ zF`&KFt55F1m|p{XGMGS29}l^dClb5q*mWm4Q0gdRa0t#4GG1dfGJl0?!hgBs@$e~R zg$|%|BNpo>rn^%1a&oy*Af$6ph5mQAGQ7` z_p*BOm!EbP99$8fJd@R@&GJQ64xS>*zAXo8sWx^Ezks0<&~^8TPt0vzrnLMx!q@je zb{&wx@^sC{SoZ33uMwH{cFzCJh0fKJ@;?eb7U9Mm;t%y2$M-X@K1`e#P~hRcf^nvv z=pKLUjD67XZLDXOP|_@}d&7vXsv3|&jyhDVZ1Y$(?-4B9yp89K6oin=%ft;IM-Xqa zXLP$3v4`xvK-D7LF&#p6S6@lPgRg6o=HTuFYNkDd+&>;v$vEKpMlr&q&1)WQ>b_@?Z&G=@ zelu5^MZ*N7w_taU_k=Zf758zx0x@~{KchNKNN3yC56@SUS-J7Cd{#GQ(SGGkmnz??Q2TqY7rzeY+|?i7PWD9fvMxNQKXDyuQ>OzxBB^FXMKIBHdgVMV3G^OvSW7pe?mQwIX8Nk@u9>|42%sB;1o zh`C!_iR?n$WO6)8xxnBv0{2>7+Lz|K0cbsY0nNBqiotUJJ5GD&spq0^{qeC{ubS-r zHL}hqJ0I z(SLO3Zkl@0wET|#ERD>P@x!-?tk^g zOEbXYWAyrtr5~@wIab1*@LN{Fhl>pKg(rYE`ry~c$f+y)zucARSEC`$EwJqSHKJFx zN)*G}egic3WUX)Q`iXtm75vf}X9PS37h-$AHU5gH7Sg&_QD*rXK4WtjV$MOYIIi|7L>k>j zLUi7I1^ZdwyzShSsrxS98~0mdbzjXV!j&$zvz^MNiXlF3=l*|^S%EtCEh1R9U(QA= z&HZrw)Eh@LYy-kWi$sH_Dz1tj>~irVcYQb2WgGMTSeM^7T?wvg_%+P1TermTVs*Cp zWA^N+wCz4L9KJYWwk$uJ+qPLZA#qR{@F}RbCEL%kU3wLJ#;ac4bg(z>TXrP9m|Wpr zeI#ouO@pDA?PO3Ina0x5A8mhPMuFPdGdURc_vQCktRAm0WBO<{ngWAlC;Y9~y`jw= z%%Z$ys-+!bgNBF%TuEyg*IXbh;)^HKsv*TUhkQ(im-L5+k-yQffLOqpfXA=pTW20t ztb3ECO?1X%O`*AAG;N$bWMtqx3kv+9Eg);ltxDygx^$@Qg#Te9(y56^HXz}wr9k0# z^vyiAem09)wB&UN1Hi6_eC>5;!CBe9RRqBqn`>xrmGs(s2n$nBL_>s~cstmA^ZY=} zj>+^b#U4M4={;mQGFg#?NrEWUa7TmeY(Gd=YyLimdu-a&4U z;ex&LHZg*OHUyK8c90Fg~ePg;xDFXs-(Fzm`yN%H8F0{~{or$nF`7||n7tX^<7R(9Mum#h`Bulc55D7d^*<@ww{75Wt^QLtKN_~23BQzirv+XJJJ50Q<_!K zlYv{ab%aGw2RrCUV1TZTXoARAUtnd@0Tf+ZLQCAPEvXRXq7^W{Tx0;5Kmmrd0W;2i zgT#v`KxGaYFpOpw@_VpW8jI(r8WHg7G~*oy21)79$VYhA$0DCjpOhZxGF2VQpPUK2 z{`>U(o?Cb{q%^zy3k~0!U5XQa3PkgaK48((@ma%`35KYrQ2DMpDNMV%HBT#M5DpR( zuoL@zZet%>%l>|p$za3*`)X(@*8>ry1K7&UysWf2E1SJoN`@w_0B*Lq%*0$Qqlqu6 zQ3yM+6f8=dfnS`J;tjqPTBxCcV=kHpZ^|uHJ+UALW~QZmYe6_Y`p8O=I^#X(5ff0mfe^7Q!&HPKb*Uf-)KrMhMNX$9A-v@Gx%(^p zmx@uZF9mpOhg0T>fRX&L%+hcMg|AlDJSIhPD2f}YI;z%v3yb=MJR#L~3YrjJ_r+#? z?2+Ml}`j9@4#5(*CH`N&rJQ-7`@ij>+9)Q3jru0;v`QA`rka z);r>XojG95{DsuewG0EU7D~41-3uSJ4Syyw1R-Fi9gYVmNbv)*(@^-LIY%%A5h}VO z_O)I)i^)|tECC}&(rbmpqgvqOv@nH)# z@v^<|N+hL|w$r3$tZY&)7a`PncMDmatsy%4ayyG#Z8nFP5yfM}+m%~~R00hd%;u&` zOs^&U3JXp%#yt&TeyGfXIy9JgjKwMD%b)Gp<YZRtP;npyM15qYdj4L5HNgnj^#x8m4TD52>2qbotc>4jyHyAymX{d@ zBR2`aMHm@w{P#&S5*T+0ctwVo;N&KIPehCBc?$8+4gf00nZqPR0I?6hO2~hV5@P{j zhOrz5$1W;*#XU+&TfJMO9N{A=d_vD+kD`d5jKzGv-A}$pC-y%5p2D*mNBH@LPhX)r zSJZd$aPSM(@))08F+Mw)nEUt$l_&gD9|JwjXK$jdBtq*>7c$$MmSQRzRHe zJGjLY>8!^9FW1?glQ3rG=Wpm}g9{{)((j0PTmyy`O_6Gn{;i|`b{)@Y0sAKgi7{>L zb&gX5*7Q0$gulbpxS#q0FXqDWL~%UmAYr#}!l@X!S$h8(Gz-}#b`Ztr{Ryud;g>J? z>H23XcLfIDhPJH9heFI;2!18Ldd~?bhEOI(S~FQDeyX~a2Igh?KJqk^%j&L%qhyzK z4CvAd0=vcvd??iMvQiC~C=7k!uOvODrux)oW53;yECt6rue- zWX9Qk-4Bb1jQmcitw#8z>pC1yNq(R>bwmRa(?(57T>Kp`8a0y{;LR%O$UmqgLWqb2 z{c^TbV1Vz~huOwPs*iP3ghc(t23#z;O^xTHhG<(R27xHfk0dR+Mzg+U=q4?09AkhY zzie24X)TqXj-bITO4?Gk<4XuF+@9rL!2qD%`tfZ%@fOS7f7fiJ`;$f``QHuCzB1S| zh|}Rn9*$eHpIrvqM>PxAAMtiWO4YJ#e0H4ZaG?cK;4@b+VT;_LeBwK0_Jwg6wrdas z^8&#lfh+qI!y&8EyY!oEo)g#lXC86~d#h-Y%#W@x7*5ctX9eY+EF8o|6}&d!kjS zJ7I|36bH?v#S3D7@|1wbNcto2bdD}eLpB?YrJg>Q<%t{=_Na;J7Y^y;0a*+b&6IPW z#Psw2ik5j*g*olhr~}kCUiA#;SYV zl%|EMmUrCbysYa?e7etUbI&>%J)Vy9Bob32bUq;U>R!;~M~c=5J;CW$xB@*vVCDDT zwiz@Gy!>#Z74!jej#gWBqz)R30Jz=sC_!AGlqAPsyj%-3Mw-_FQ z`3ovT8S_hOT$IA&&`6wgNt8&uXKlys{pg^ff;sAO^YNKl5SAZ9VToh}%`ZOdW2>dv zo}{gMTt5e;?h*fF&DkaCsZAQ4bPV*4D;$1bvLO-p66byvQ%+pOFO3WbWl3y=m1Y$! zaBt$yc2b8&m&t6tm!$Rhsf7;l06Pz@Ilmf{Ocz`u_Iv*GGFn;uQEB2y&J9oUiZkEk z{yWjqHsiMt@8cG_^Ipv&{`aDxxu%B?G7pYoOgAGdJ#E*$t1BJZHyv?oC;kE#roEIN zMDykfRUO!UuROkQqj2nn#Va9l5 zs_6vBZiL9L81J0;>0dOVf^Omb;(QlUKe2KuI3-rua`@N8-a=MRkAICl9M4LU{4fn2 zgY4$u$i_MXHs)`Nq`wCzb8=1}?J8ZG0sDs_A+E+igw(iuwZDh(u)}}H?kh$OecXM@ zDEenY3-#>c5}*3=osVH2Pf&~n!fdqhytvQB0kPmr^mew=HorOLNE}beDH9nP-zR0( zIp(#oWZNIV%)don$(r_^JC{_7cb}j zsbwAZvG?=y>z}Jq|4N`EuoHxb5aI5Dq#pt5IopUaZQu6OG)dDneW@I@Xn*X8ulR2Grs&VzFVjmYyqh0~@&_Xp5bW3m>dTH3BR zup-aKawAA6Pp z#?f<|Ndzf(P*G`S(d#FFG$g2UA!FKtbMHC3WBuf2Zu1Pk-YzGJ9h|FPsoKz8_3u}d zNOoN3pg+Aq&xOI$!(&~&e;cA031Zn?o0)Nm){ zVt}hrrpa8D@m0{%*)GIoQ5Y$A_Wb@T}Hdg6Ha z>xbCbEYGdN9KuvieLvSz`fgo+<2HXHNfbn|-*u_l5Y~HupD*$c>wOFT#mvl%_px@7 z+7i95ql{eL5>vJZ922Gc^6=q2_Gg1Xx6ekOd!|9%?`YYt`7w#p`eRBzzgv9Y8^M!H z%KY+0n2Yo9JNx$r`$Rt0=LlM*I0pmgz+X$CG$+%qt1S|~T1*E6H)Z<$}TYmJ5 zA!>2*sl$FYix()bG^rH-Q_9ky%Y2GD7++fB+eUGx*B8=}fz!+@$dd>>QmraoOVUZm zvm=<7&c~ak7Wbpvj#wia&lhGtiBFyW*6uotd3t(MdT?GPb5NL?Y}Y{dU3q`DHoXDW zqoS@HcL<%ov-@sJXjU7~#{Xp?1z)f|n(Yw!gLBsl=4X)U>y~-&P(8q9Gt_%~8&V^F z(tLZ1n4Ou)DF6D^UQ|o_hu%xwX+1rYiD$>}L|uw2L9LrWXRs3@4I6o}qgach9e0P4 z3k9Byz87hwKP~+(1B*MbatUB~!^1|$<>@8znb9On73>?|F^0Cx%SW(}ab4_v0AmUCwh%d*fM)a$nrTcmOaK<-pnKjis^Nd49Oi7CT zM)VH_n3%S^1{3^SXdj{uCK;AEe;>CpFP}k&oC#R72=OvMdw(FDUU*hgt@>^D*fW^xreT{VweEBvhZJxs&0IGKtJeoq#m5jQYY>>mXr(P1<;KpgW zNEPh5dSdTjGPvjMYZQNMP0D91vg`?K%tL-SSZK&+KGSIixBCTAa$wQgEB%I5rdI z_j|V)n_~G82n-Jok3Kn}PtCt+(j6^pV~FmH8o_@}APwU|qL=BEPvp`$*sZ$)XhglX z-#6F93X=ole~BZ$EYi_?q`v*-i-_e;yf8v0DRI^G9Gsk-^uLHAo#<(U$V$7f3RzF) z1NRn#`O;R=LzcU?U(az8Ei5gm61}+yEMGAwRcXlo1+u%wfOl3Ts@GJae)p}V*SF+> zP`C~)9=nhINqpCEnVj4i3A>mW(;JiT`{yDBd{%`CZQQP2a=(AEKs!OJJPUPNJQX$S z`E0x|{Uf{`-Z5vg04^;9Ljk$6n&z2ZDwEFadhqj{8t7+iPBFApBtf>8r#vWgJ#$GI zsO&xJUfkZ;*qFDdtfi&3QLO224fuWB#*`%MEG6nSOL1tGl=_y zn+y!IT-TWo{@vUboSCiIBh=?>nRv8!= z_;XtOVyJ%7VU|+i<$}8Q!32eJh^N30%x@v}h)>6f70i-4Pmw4d%;GbS6XV0=93?H3 zRy|HSnjcow(uGfIb&6sMPMvV+UqCxFv7KmKi9Rr|dmOWU{`^~s!T)6|2&#}aT`kJ_ zkaWujq^8KB`|Yk%fnsZaIEn6WMTus7Ru^wldMiL}dQZH?stuX!XT(cyZN69J)Pn?y z`Q+r}@sCj0M`)i_%7r*vTvHDz74Zh>g_1L1P#62$LKa)##ZSyNc2fuyDltM)?bC&> zjw@{Z4S}2vIost=(Du_^sk47fHau6MAX$qmVdJ^=>{p0iS?{g?wIx(i2()r)M}za# zyh{#gCld97Rtupd-u#`Prk!5Wv)*Xj!8s5T6v*IsZnRi!?Q9|^l;be&W7a1|D}05C z0p&RL$!)h8sDMx+^K8aZpCY7*p)!v|JMin|+GEBAfZmI}Sy%(-TVrDJ5WDQ0*jQ*J z5lef5z{_n7??;bL`X9Lx``ojyVtowY(a7XBmyZ6$SZW=fBiA3AWu$%vf^bfvCJ74+LxlOSoON_Vq0)@KBgQPNEEL~huQJjnP0KwzqP|T&?s+oxlddtTXGAKo9%_el&4<1-@s`C z$#JwvpK`re$g)aRj_^A!H2ZSd$H;||CtbGVa z;YMthZpyWjY0aTrB_jK_If80Z*+A34V4#>1o!5Gli}L<4IPeKhzwuLoNB5~|>gn#C zeJ`s>0A%X|w}|>bfRr@?89M*idBUQr@_+?o0EmwufYWc)|=Z%JjIhBqb#f%Ub0=o1~-mztlggl z%m9Niqk;)HCCbuoZVuk_HJ$`1t_&iEK?X{Rc^-s{j7iC`PNKD|BNlc0DNO4Lmq|W$ zQALKo`k$J2g8yy{45Y*Ho!MQCA+8_5NjLU+$%7N+QBISUJDy8vcgoAiNSB^y`Sqx% zC@mKL+VN#+NBV^rN7Ik3s;bce)Y1oMSZI;}3J{}PnWM*bp$XZ4~X|Lo4N?+yFjd5Yz`v6+ug%@bsJQYqnpR+Ao%GLtArcw8n3c9!4WWN=re;2Y3Uxh!C}z0HM=I zv2C_7$L%{|B=SOJWkXzS#@6L3eGCmXJEopT)#>!tcbtQhv$sCJ0BhxxN10?rXaz*- zUwE0q9R3CbjkM|d`!VltL6@@dIT@^?Nz9%Wp}qT+bpNpt3(ss-rW0Ky$?#Mvuxa)< z>n_fb>W6gbA`|xJIl-;!=)W<8DqN=b*A`>cW;3?#2@JZM3QY0?PoX4TN^p7-UEoxg z>W2}H=tHCai;I7m@--PkZ6&L|<$R$|pl=Ko0?Xmlk<*2czjPa?9Kj>~?9hOnblj>c zV|+-6i$ui9M*#=@dUAG%M5rub@>3n z*#8&6vrxn)ae^sp?d209qZ+(9^z6Xkajkkq81kFLm;T?F*xOBkkQWy>SsM=?#kR#Q z07{?Vr=Yui7NF_MyKW0D<%bpREGVm`kp3-J7HBpH+y*-4mA@p;{oH#m7`rfHgF4Q((g zKDYpeIOD^12v}U8oN06y3tTh47+H#9M%4NNGGJ@c9xrC;Uco~2F#B&H4*_1Xf?8-O3|CH6bucCTs?o2UIn zwNPBaSLQ(p&Ooz66oq0I{Pqg%r@#Mr`yAN<3(wjAyVkhUIFh+aDpK9n&QBlXq|l>; zeH^e0iN$(MKh$)g}KL9MrEemI1W5KT; z3>bhfXTfYl$ynHR45O5pa z!T-YW4L0I+amG9E3b1VcvBbguX1UFqLi)i@q@l6yOhOwyC1q(9pv>*4wf)Vadt~`w5O=jHq*BW>|q%M3!i&t=HFf|Ad{JwU#>Q5Z9N~0cuJkfi%UWEJ}x@ia{ zRri1Izvc;SnmsUGA+$i2sAiIy!TCFCbTNh>(+xI^7XD>K`np+^@FMLsk^ z!hOwS1RYa^%R5IFPN6~612^-^~^ll5ZI`T?cb;{!B97Ec!Wf(r3Dulhn1Arye`%&oo;xl zMyhOq^cT8Ij_EdXEIJ!`a;5L4W}fScY81FpI=-9!GtKP3 z^VrSMlZ6>K`VAwXeQ2Wi{^pD4KmYkt=ryqJEvzyPLi?!zr+8D=Uj}fj%v&JDAzs<$);L zH3_HD&emv#cRGT0d}wg+xf+$In+qb&c{dLS^;7&a67XY3kxgqoEWZ!z6yE= zEBNj`hHIJMas!422KPh|jGf<@a0>wJ(mO!3eF`6;oWvPT)QcZM1w+S)iieDMb*=Zu zHbdj+2Cm}%*I%{y$ge}dJ5Z+-OlV*;|Iz^oi6l9SVI(g$0u7E8+1HHPO4uuVlZ%u4 z7?uqlma8cYf0^|gEb~*bQMw&2?%pqGYi1U=LB_#$9C>9bZ9s!c9~LTBW@d*nH-i?p za#&1lWW?SX6XmPA=Hs`!|DBtz0C<1Y@wXj)^$|4YL)%5-&syuxqAojee;@VZ?1mcO zTK*e|0t#{z$pJ+yklhkBWoKr)D^X^U=McuIPIden0Nr6Vce=4Jk_)oWzv`EXmJvY! znfNyv{17w7;5dFH7rD;_QdD({e|*w&mvmVJ zS!kIdOJuoLxu(nlxKnh}?MpN(kF9BKNNwI0LzsENBls_~iy=FJNhA6F@6w9f^%vVm zkJ<}C=)OzGW0%4mc1`*0nuJlQ-<}}^paYO^t%inJo*?NADk2n@<_`^OPIFhR^Dbz> zVm@)~rhw+PR-43SUyi2&NE}>>of`sdsG>->Z#!ZW6|g#@46bI{7!NAP$NhgIz=OIq zAyrKwIcPbEfgBw(hQACYb2IJVfL})cU3`8qj6Me+uVF3&R()dBP6jGdK6rjMdOm`9 z)rJgyAPrWrBju7%28oQxcX;zN-m^A_nMy3w`&-9E6zcOznS90rp@PKX5TVFhu?NZ~3#O7#GC;O7Uh#_^{Dth-0k zNceb6ya5HZPQe>S>=wlNw%p(QfKu7Q{if$r+UiZ<;?~aZeBy=v*00BzMAiF!4SRxVqh|5bb$mk|yF@_-60st9B8T8=V%^A2*)q@c%nO^?dP< z5F$bwr5a-QDg-`vzuFlTbH(GhF1wmUfKp&qt33L^n}V$+67ohQ)cN17gFS~jQ~%yT zOPChp<8{@C_BrE?#&!~j#c1aV%P}N>Wy$Z(UI>@!xeE@?hpvy0K!2u|++4aBsn?f3 zKZxoTf@;jenkj#F@?sbJY5e!`VkPg7WkU13j@quSRZag9570>iw!W}vFY=9vZS+w2 zO@fl>5>9Pw2##-fcs4HvcsszGUAQS!fI6_TQ%CD{(~&C{2|IIzD&R(82jQ~X7L zet1m8c?^~4A}A={9TSn2-~wVW--E9Q-h*P&oFtJVNM=d8!)tLIGiFH%oH>PrE0?_) z?4nz5T-E|Q5Z1kS`4=aa=2~efJZ6|3~R^WJ}skOa- zZCMx%z5k6F8XkoC8~&3=My6i7jBw_d<4?LTU;e%JUd7--9X29N#*BLd?Igwf@;%{jIeBw$5AH6u97uF@T z>=DFIF-~>xv*C!)$IHnyWv@9+`LzQ_rL_K6;~!Wcww%)-5Y#^w?39Jm0ujR{FfB7#rDZFm^HQL9H)cexffnV{X=J;nR$A?$UM zCX(LIt`HREf@Fdxf&XqRc~bmi+uz{M+HY2ka&`?|1!5aFyEH#n@T?#g^Eg&vt;x?u zfO0VsfILuw<|8bQ)Ya1qq5s0uNe0c+{H9-#`Axg1#d!9c@nYN6@feKAB5WxuWQ7dL#q5@zl=b&K3)Ns&V+YSTBP~rd zi-m(ogp|o59e4c3QCv$W^K;<(DaZ@h0>~?2e(RJ=VCUmBd~eU)#J!h~5U)X+f<@Vf zRwC_0;q)9}evK8vIg8o|5a4YXD28WwABq^U#5l-s;7tYNgApS~uj(sspNh`*d{nm= zXVqQx{bAe<6z4@w&`ASm8ZC@K|44cSQ_62raVO({N6U#D)*Ec%b{X^ulV<1!Bwu9h zEjE3o5ctj0_ZP*3f@&i~SQR-W9_LqKP}RlbrdU9ll=}IzHYeU9_~0KP2UP_2y28kD z?R0?F`}kpkPo;96)~$Ml#jcZPn@!*LAmtO#M(B)KC)8O^l7KR(@yW}&RwUJC-=PcVU7qNmYUytwDT`N#~7W$ zfM=iELDJ|fZcX7Vmhf~DIXB?RAu}cQrQb9&)L8Xch+@Jd62^+x+o-m4F`BMys<`}y zdfVZB`Xx@gcyIko`$$Jh(UfnsXzQj96O&pWwwqJ=DAJC&)_ z`+cT+%sKVswTDV@@=ahAIq1HN8{GlEuUW0m;gnb&|TUzEdPxrZ$&7wf5H(kV; z)#5RJ0+yIRo&X%Mxz_#4#peI!slN7i+s+MWOe{KY`zqz$o%Z;e$oA%0@&-ZvUP6wo zWy$61X=)k8dg9{x*DDo)&&JNC#oZMC4e4%-KyFd{?XI%sU7oC==?ao#c**9A`e_w>rfq0j7?&Hxo)tca?3frH~3U0#BOkC=qD`&Z<+V~2@jE+O&{!{ zd97HWi+B3%k)ke2IGS1gA1#7f=X7W`mQ*ni#*l)h=Y)OG)%DP8J%my8iJZ4KbahE$ zUhsiB4*J$)hwr=kc%mJq5!vnAjn=%&*ls-g*PryRinLewrW;KQca$_KAj85C*w9#U zC2tb0dv7ugDn>f!oy{1%cZ<*?^#U0q?h1Ob%-B<7*60!Dq+S@Afb{C#Q-ug+OchJg zB-S^+F|`>iqR`gAgLQ(+jISc-=-XK$io+*~WM^b`gDu5)`mBn=E;^V*fbQcQ4oMt9 zIeu4$h6a@%y86r^Af;2FIv^Qp77!APrc7X8+@@6@iv4i6w=*T)Tz>cl;X{o%$U`0a zi=9}l;ts2*og>JxgH6`o?&oFmD+ON&I$(ZUU2(Zy9TBlidk~E-xp^G}qjAW4&Q8wo z{xNn;o>VPN4z=44GjK;%D2y;aqe}9b2A?Dz0JRllwM@WNzCiK2%m1sY6Ouw5g!N^~ zCYfBj6pJX1+HCttPrZIL5(53Ils~z84siPz@sskGDd{L>9{reE7*#GD>FB7G9*vnz zSNcK!a}t2#&cqXbWUEzZxf4|`Xiq}_`r%c;#OuD%Wc?Svu@nGI;#p$0#Jd~MPscC= z^J9q6{KgnISv);C9rx+rMXYDWS2jA_ZVbFk3@O$zB6$P8VIwKM91WtJ9VymfG+dqF z4r*>Qc(7V<3i(FTP;VM7$3{>ZkVPWenVt?rsl6qHjJG5)0Lf%y6F?ry#yd?G2gv01 zb(a!>{f+rt$<>@m(I~arqlL+J!1br&Y|X!Z_N#lId_5{}Sau3+q$_E+vjJ2b{DI(p zc(|vhB2qnQOol6Inmp{cokD9&VdX_a**fW0DFy#ec)v{Wz8>$-SA@MWj@8B%G??2n z;OM%Sy-hN<#firpTKQnKn#_}D>ly(4oA(qr9b27K#6iBsj=@0R0m1{}QM1|zxRl4L z2C8SD_jc^g&nU@B?G39f@3UR*}OF6W!g@fI)wllYdSZy6%dt z?5uLHTdL2EBE`#|yG3&(x*E!T>)u(+hcGyk{%zV2=LnIOf^wTdZzmDa zq+UfTNbNF`ddBmanh7SQ<&-$1$l4mHQ&;#7_IN%K>j`t^ozf^5A#C2r2H4z$I@s~-2O(B*uvGWKys%0^EM{(hSk+Y zf=ab|WTNnP48tF7;E6gx9i!jT1TY1k^?h}lwl!GcwCXI&&(*J z_b!a+y+v<>=)ITdqW6~QMi&H;1R;9wL>Fa@zn?%ti)<$Ux|e}6|JN?A~V?2=rQcc8c!`f2^~$9#D=Zny+eXKsVg zK}hKBYX=t#6GSFC(Be$St{ef^mFgQd%)-301i_!U6JGS zZfT$CM%0N4@|H0{CXHX9vtz~G`s|B&{nWcxp6^at+o;*?lQ=6wuS-3V5U1FiB-OB9 z-avpI_IsV(yD*_Y!wgx+2e43J_lv7dySyj7NL7#Rn78Rz3f6x)j=c?k)ZV0h=_XN5 zPjzXjba|2;6e)z&K^c#|Mf%D`@V{p6ew`GYAx{N={zA)}O3u7l%CN#mETPBqI5ou5k& z=X_@o3C4QGZnL!N~EcqpG^{a+^kb{I^W6-^bIFj_}p?&fOBR1q0Q8H-2Fb87)r_HwE*)*fS=n z_{X}1UC~|N5A+0}W?$L<+blo%71JB9Ur%Mm!_`aEEmwQ#`bVP=Vyf08h)qp_j{tKn zSX8i_$`0ab#`bSL7I`wCD6m#G{Mgo;G|P{7OH?9&FpJ^6)z@XP0Z#N#z7al&eC(Hv zj#d&Z`-^=vvsLl#d4ZVY$2wXitK)2Bi{Mk zsGv%7Sgj8}u{n91`3eskzH{gD=LXuKklbu3{XGhlc6ZEm!gnH6OT_^@wSt93#`HB0 zq1xD?28Z7_Om3@FPW+c);ih--?}M@k@I;NQz!)AU8e zn;{nRyaK!OvWugCXEd}A92vykJnRqgeHrKPIolMh{_h$PhhA?OG0e_Os>o-MI$NEy0v^`?y?K`fUQ z?wH(DZ1#&$yo@OJb;gd5c zNo26tStVVs{q0n0DI!>xV`yff^w}|Bv$}v>Loa0KMtOSHjF`Br8I{O zRWa5~KolTq(9gFpQ?|(s?8KAkaT7IoEVhj#{+yj^73=oLAULwyWky-rE*Do`G)W-8Q5*F=Mg;k)MD?2kuh%2^y`01cx}z+qd8w&G#=;9_cC z28j_%h|5sl^-ujXXZU1HXg7G09De_u5E{xvEdI65dn;9O(WJM zC-!5WCMBm>Rf069CpQ1_hwN(BMr#Y*1x8&=O-Tqpn3oZwHYyKK)N^0AY?OE&+5ZCm z$VQNq&6j#NEks%!z-=inLuU^tuJdYxllwK~@^kM3nkE9UUc7gdIy3&w_<+hjL^CMn?@lFs+_>_FPwBTU$pCWX4v zM$*itbFKtAM+^YZ!9Fko{B1b@2_rqR+Vo`xbQAWRYzYLgY2oj#u1s@>Q0sN$x4|cR zmU|A_I~hTdQ|>_XannCz8ifq32gt50eUuw-d!efD0ZnCc^7;{>nU+ zUqryx&69)oz1*pc56>F|z07IKh(B3|AKw85;}6-m$8BH3C-;G@WeAJ)&lfwnFGU3@ z*_Ga7ed9lTLNL|+2vNHCwKC{E)!m7NZXAa8ova$wW45kK1rBSc!iwoD&m&so^NVv} z42+cIPcE>k4$0?&RB??~KZ&pF`)fqjo)USEPyBv(0t1=m9UE_#?-2=#LZ;oYhTh?M zLgW~jvCpSeRIK5*Papu9-8{NJf0yOX=j>Z!IYHz%P#h?*#}7f)%#=+J1Efs|b+^&t zw)C*J54_4zNjoha>fUXD_sND6X%eLoD;foVmn9b=Z@1EA&4Px*GqZ$uc4N9C?6ybE zUeO5WsSk^=mT6UM8X9V94U4d$^(a1a@bf!Gv7@oIO`NNI9R*k(wOkJmlf+m|s0t1z zCF@oQ7cMz1IbtR86tH;=z=!GhLg)0tFFjfK)xM z8o7WWLny!rd~U~ePlDOnVh}#BudV&MKf@&;lQJqPOvpX~LcA;iI6_>wHS>=Fk(XO& z(@t31Ut5Jj;;bD^3~dcR44V&`)6;h9s$AB7E~5138&wk9z}xGUVCWkivY%m3Uhc^8 zN4NzZ%z!CB-hX@xXeKED%||UHo1HDX`qXT4EP$d z_%(q#ky8>IAL>G5TQdp>{J^g85I|IE0M6y|{%k+FzFhi<-`7?zs;{IrH-p5T7PU$<{0JK-4zA->je=vG|^i5j+1{6gY*Ku|TQ z?hNUssF>xHv!Fasx;O6?pnczLBq*o>RfdLQ5?cO-G@$uPE{IW#sAd77O&pm) zgNWymE&oa~$NW$IJ-t$vEH3=$m7!af8|nR$_2#0|(&msw-_z>0zxVif4{e7>hzhw4 zSHJJsMDvT?D$YzUsa0naIF?B$IH<5ArG#HQQ1#k-J{)U@iSpOcuS2)O^7oc^e0MJ$ zE@p_WswYmC(mn#z;~?BE$0SpZ9m|4jyOM?%%+X&Bl~RJ>o0yb@h{$6xQ^59x1n(;& z9lp0kg!%DB#Jma?i%#Vr@i{;s3zGbL(x=ph{P!-u1=9~XDHDpz1-IUpjCK{iP~y{1 zTX(HcMx!$Il<0 zk7fymc#u2==s?t&X4)d=&wMvJbwSjJ5b_%$8iCNUSX8F_q3Qb~FwvyA1p>iLTbaAmZ?u(7E8O_yJM@lqZv zaKn=D6Sbk&tp;iN1_2YnNO7Ypu|gz5$#Bcb3rS#qcy2kq7dS!;e~Gc1h1R|Ili%BK z+w7|%#lMo<#k1f}9V0DBUE#Od$P<1&NuMPfc`AR)qWTdtg}ZJAggoYH_?e1DbpP#% zp*}#=FezY4SAVmt|d!etqF-n8zTmN7)Chl4acz!O+a{lyA*(kNwG?zUHoDAV40t3fRe! z)A3yK_uCXGj%zwJLfKvD^!Nn=`JjcB3dGLq9j_h}+^m^x29nYoj0wAw2s)j|hsSAleP=?dh?Z<~@o zpg{_g2@Kddd&eJ8;$6;99SlN#VOIGE##x(xh~_k6^$ko~ml}8CAKs>^gBa8?#ZTD$ zZ1jc$39XnXm{YTaZw+zGyX8FouqCf{1qsIstKDe)&h)*u)PH8v#nZC~%4QZ+92`X* zo!s;J0}D%(YWIlu{?Qz+W>j2jEa1&Z)6A_a$#?D>d)L1~&J=}^u}L}Nn-e3Guzdzj zV3Mofl%81a0)q`iy2dn=K@oND?GI1TUPD{KeI*N}@tUN&C{HBU$l!6IB3@T2^9!d8 zw;sC*q6zhlIJ;lJb2*8=!!+I^lw*+a-RgPfC6oJbib-4xXw)@)1MvrnU&rFZr4HW* zoYf>{o`34VTI;VnzO*zlVN|Glzm>GH*Q4GbM>asEFc7CEd*q>@)CH$~; zMC6Y{tcrt>-1S`>vJ%3O0BQx3E>1$D4VC=PZo99(xC97xK%O_*)aw`|En#koptG$N zJ~a4aOH?sGBx{CdX+!*>dHTn|PXry}?TsQsa<^>jdVQ5Vx)kla(wi%e>n=(P43vme ztSev_Bo=N%n1mfjviB<1eWaGxVvUxYzrws|$F!ji5AVdB z(QA$A;EV83+73{=k=*eyu_QNXBUk956sNk(kt9)|=6SJ+7HaAtWTn9+ZT^&|!kn*c zl<~_Phf0KzIts=sL>Uw43l_mg<6D8a-I{A7P&tnflHpqR2-P}$MeATqj-Eq?o@2V=qEUnjq@zpk-`RT>dWeu8zL z-ynOcA4Q+u2wa9Ve@P&?8x*_utVvD^OMrueB&0b}Rl|6sjv1NQObG&!*tU{S1`&l~ zh;sCkO+M=S6S6+9iof6x8YZ!t)gz~T>-qU_E3rG8a!NXvEgUw+YBltM*Ou_?O> z-mU!lkOwYfH-M0(KaIW<8OPcNA=9PbS*!n&Vlgbx#p$XW9LL>ZdSzrU{ki0Dv+mcC ziF;i+uHUNtD=?$fJkHAlvLq%McKrK&f2mQ5UDxB@#AO6k;F!qj2N+y6NEa@ z(jh|V+B*NW5($x;I9)rnV$3Ttv~?3l*W5qHzI8^+o6RzVS(@+cE{|<_#g_dI;xEdv zi}ue{;!ecY;scQC=dwzRcx}u;2tJS+fQ7ghtdH?{XGvOUh=^NTkwRfVs*I-r{e<+d z!9`4ynD#KOUjLVrHBN1O@L*$1NG7ipq>PHm-dYfK52ToQ?LyKejHf{Kr6A}}&~YRG z*iZBU2lMwv z#OBo7?&kpq5K|YwzJ2>D$i!RMdP-?%h)bm2rQi|wre{3*Y@V;s3+KJ{$$iCbUhd7z zM*PKn1JEA4Sn2&f2&~Ip8{BUuWCC21t=;ar&?a6#PLOLHi>ZL%LE+u4T-d>!YGkNCw{#00X zM~6$Xp^liE=l&xcpNNZpBmA@9{~HFnka*{yATTYe`x zh+Nk|r2)5WrrU%2N>@kzH_%ajoyFBbxjwlBYtR>i^ciVRGG_MQ0qmF+>;pN{OnHBC zaLRR5dpB_+_kDheIc)rX@hU(JKw z#Ekk2mhTe7q_XAh5OxU)qG~TK6Pl}iHs2GB;`&y~>p_JOaF91uGkUK^(#4xdAjuo0 z!jWf+mq(*e<$O|_Qt(mONt9qR@VVh@PAfpkH;%e3^3lbq_=>&ySkUftsi7~YudX*J zG=a{0?9tIsfbh0*U-V9~3lzZlMa5qSP5>W>Nb|*hoY(J;de-L28d}y!cSMmky)*1g zw@S21wwg)1YCCUsp%cYYobDYyk{_FXbn%EA+0o~f_EYfg4Yc{b!G5QXXf^1f&12SW zUgX8xoOEyNZimRMR<&`xOYn=|du0yXc^=`8-#*FUQ5ydZ3qHIJ6LuU|H`dH;eR#z_ z@@#}5*L!V;=(W^Y(+#6DclXZ97xX?!nMj$h+OB#6nF4#ju{6P?n6}(D80In6Na8dc zV(T};5_7LO`oPEvEN2iOk~vkyCpwKb4b0{H`hcie@SJVSf&O*FN562rpnC;{-^>=w z$oq0VvV|U*vaY{-Qd~sg7kLucJrNK68T$<8tq-ds#z!|(n{F5PJ0++P&x*_Z?Y{T* zA_RFS$}?#nyu=7{S{hw`9%#M(vhA+@>saE*{{xB`V6(IL93Ke@G`bSaQ#s-v+T=qG zo!sB3gg@-XWp9oC@@pgScO3oLl^qkd{hb4D^ec+#)-99LWItsyK7ko;sOx znsl-^e4*Bpg0;69jZNhFd!b#K3mFl#938@czka!`Q5Vs5l1|69^4b6AXxxbB$F`=` z;i~KK;!KaDi2bHTtfihZPvpUgkjh(?TpJGn_fTnnIXYbZNOWndN61~*E|iN( z!tCma3Xc5QyesU+T{iYpvZF`{vu}uje^vH=>J^GeMml^4LWtfX;JUPlZxM0#ooJ!P z<|VX~ugdd}2Y%O>Af^fX;22jy35Bt?O0jtMa&PA6gY6#O%8B%W(T1TQu0lQr#txN! zOLL17^H9yF7SH1GX{H~~KR*5}ID1&Me)e@<$GvlF$l!&w zlulmcTC@`kim0m2*U2p(F~lr(X#TJkL_j0dPC=a5@TWX52A+sRTGfV3QzPvX>wlg| zymbY2I3XAG+*}7~BCw@T*n)Jb#sdSI*9B&{W8W74%fmjo1{%(;|CUeDymuPE0>a6C z#^YAO*u6D{Ug#vuC--Rb-e82GP@rtfVLPgeR>o0$4 zonnS3?cc0^3JrN!GSd34Po2NZbCw#bOrnI^Vsi5#FW+$w~xt~oqWT&Wo{LMdZB2XUvgE0E-&8_ zWuYi~`DXr97ZTX}?o~XdKFjfW`qq5bb;E?0=Zd}bm;gqLKoPHyp@WOIvI6d8LX>*b z)`dB1j0}wFF9^qj=zCCC{8K}?dvH$7XOE&rc4MFRBD?SFoCa)+lh7{#7CliE5u`R^z!j?UFD8ve0W%nqoIpHx-hR5`X-EF*lo!qMz%GrD( zmvklat@Xc{a1jIF)_+6fyeOj(`6&`guz8&nDPaY{AAof7r%|XIQiso zY8M1?JEC83T+erdwmm4*xUl&k6BWU2C<9ELDNb9xx3n0>JEI5M0C+^$(%eMaQJBTE z|AI_GjF7!8C0%p@^m!UPkQVI92qqzO1m?OfoY{abK7$rQ^@@m0d;bo1#!b)eZVCy7;{5dArcAC z-Z<-n_S_P!OmzIJ%Ljx19)r(ROeH~{CU}#Bf;Yj8ZU}&i7j3b_`;y9ZDw?#6qF~S& zY-sn};4`2V>T*Dz%0YtxMam*0ZUEMal5|7G=X(Kgx}C>34O{JMWH198L>Zp0UQ5Ql zHgTAhf}x7pe$pwfuKv^orJE;9eSqac=yCoG>bsfTm-J_dC-T5TD1XDZ2|0LQl|px( z0Yaq25TO|fGG~EDs3c^5c>1F1ve`kot-f?Vo_N~r>`0VgTm+NSc>StM$9kknI^s1E z7{k;UbRCyKmGiv9xjv`%g7wWo7mtzJ!i%gWaP!3-+wP|T*@)NJAaJua;wm5NvFLQ$ zO089m63#S4^ytrC7{_LGJJGe@g+PhdiZGqsqJoPwVxcYf>{GcNq7~cU>A`1~hDp7U zfmK$!8SBs70~_@xAD$sTfBw9ixDiq{e?RC)(bCzXA6cuf+3FuL1q`j7+D z4i_Hcs+@lMWQ@_gjAYIDWdsa|>#lD??>5yA7k^S3WNZ?jUNDClhAJ0<*OIA+r386D^Mbc*zUYbY}~mmb>Z-86J4ExP?B^MaV*l0Z;~G*>kn> zF6ePX2HSAyzLX3G^jHPaopll&pX$zUMc^__YZDHdo5twyt-c8m8n*&9Y=I93l0Vm5 zF}A8AuHITB($k*5mmzig031m_$Yv!s82~&TfSBDz5MA`!G92$Nfl)r>h?o_cY|O_+ zdSKT3`C;?VbD{CqV4H84?RN3SN77-G*)XKiYpS)!+Y57x0yLXGqw1iBg8{i1t!l8> z&>=6_y&RamRjukB0|WQQkxXo8$&SC&pjHC}e=j{D`zD@Y1n{8YJ$4@`7kcYoqD~BI zRYX+X9=`mdCxo)(2G-8v5DuggPLENT+V3_i0FKHo_)DbO)J7E-@O6+_ftt_P{iC^8HTRoFjd&3`#4n|G z+L=Zy92Y}{(Xp&qFz{*EJC`Rsjp6@IG5P=d*R9>rl0tENzj#k~$*ikKv(}F)Eq96q zF-CJ-qrT}LWk^_6OKs~(B{VWFxDUG&r!rws!>(&b!LVzfqEBk9s=&@O=jrQO<+%Zt zPSY{We=unIYJ_AtecZB|H*Z-r zSdG#dUL_htrIT8Ws6d%;U_Alm!CyYYlvJTKoL6ISFq+d83MWs|CW$W$jg4Cm7h0-i z87k}Q?wcwrIb+;t9-k==$SOc-_^x)Vj?gR+{@d^f;waj2cx!trZy!S_8zWN;e&(&D zloYnQh6aRqS`}lKO*T3M#x1X)+BJU*eg%_z6pE!76^_1fKn=0)znBC4C(JFsOz3AH zLrj{vr_~0TGTqiGX`Uf4(Y<*^(RueZI4AQv(PQC(9WHn|RB%p%HSqrSO4KusSiz2PAS$qO zc=Ee~Z(6Pi=&^X5L|1d)wcjAO-6n*~fa9PBfB)`X z1s)Y&#rC!%y26PA(SHrB0`R;~`AT*uRY_|hwu?u#wyze~_I{pT69|**LBYT1--K%Sd3+;mhiJ zWy|y5D5)V|J~uQp6klB7qQVI#$*()t+?BUD`YDw2_ygAmwhw$kI_Zw=mP40xDLQQv z5%UcBiB|&kb)+r$UtTq|wV5zkJ^wL1P3r3AmSm2gPLe>6B`N+e;l-WA{H^zqwKz^^ zOJ~_-vMZ52+pqL&{B@d7(Mv0tquFv1D?=lhPGL818(e3r6x62nW*;zmot&KN2Tw*v zmGVcfngqwwHvLE4Ci3m9`G3{mwm?IIgUR(RES6w2>B)qTB!4`f4vk!l>-tV)FF@&s z9&eVl`He}eoPQ8omV`OM$=O*EL50~Ja&({c33f|=ZDe;lPxbTr`uhGum%2XOpwsG3 zTwL5AXk&s|G_|3|)qf&S#uZ%-Zv5hCr54R?s!U8w{DB6fX3_Q!hE`UdkG8VjzenX# z7AeM6c5*%8R#;l%JzAaxKaIO}6i?8UyCwIiedbL#{+0SpSsXo+F+%my48q^Aa2!>) zumqy*4%8fH%jYjG1~U0RhG=AF-}CbG9}$r-u#}u1t=1FLix;FY$ha>1qwQj9 z$3IFGkLOC2Z=urWCeT1@)l9igHCh;k^UW*C(8~rce*U&CG-0el)N|=)?~A_+|5!D8 zzBN0D8wfFfgen%M1^?T^dAaG2|(Bk%Jdivbo-~a40Cfe&QxzF^!MrIT& z@_AWXd+nlO5gs#4FbH+MWlg zjp92xIs(khbgk++lA;U8MyQ^$YHtW2{nFI*v)xm zTpX66-q^pR%9JXvPkJX~c~TcmIwp0urPLdWcuDF<1Fy*THohih4A9cio%C1)Jluz& zj@K1umzN17l<>_1p!gKK-60n+<>qYS3L{nqsTcUZu}eH8d{(z86J@1@2@$0#;Sa@R zpYWY=ifEsh+o7W}rQJS8XePxSUDLq!a&wSixPn#eV*W|-UWm@W$gM99BN_K;`T47_ zMPv?yio=vA=+mZGAn;!epU;)K4*IAVI_Ev_Hb#^wZ}kn7LnnoXWmAdms0 zscgQBA5c_#`((i`nyK-19}I(=K6G7h; z$)aEA5?nnG5-{-V40{~Ah_)yW$orz^<)t&dy!@KWu#1ob$8-Ng?Cjc8rd$kUcXy|P zIkH(H5zUnLlme_UZ9jeRLzg5WL2}f7lrHJz-?Hz?h z{yI_7*VU=k##Y5>>rSd@DZEBo@m%w(lbl0Ye*9L|sQe2OgyfetM6Hlm5gokKfB0;; z$VWq#$~HDeq}IZ#vvq9loo`=tDkHzFE7A}7ffb3a?dKLzkpUa6MBlW}l?*l)rBN1N zu6&SsdH8si1ho(iKS2t>s6o^!^!Cyyf?TW76e1kBl<=jcR-%N%_btw`v9WSp3-Qhh z**+|45bLxtvfRIg$XgF$D0A}d`BYKd^X*ZZSIJ3RD-4^-H*aMhfl|*Tw|}CI==J{!++xW2YKx!Enx*# zo_zA#(Oz(zc0=zLznM_57nQ8#^cZ80Qh;RU6hVs%;mh^&@X5ZTO{CYxz%x%sxT~VP zW#IwvXqSTv|BJkfYyF5Z^K_`LN)Y<r^D`qQEc8|f!Bfm`!pqb%z)kz3L~@Xk@p|gPt?9Tnbewh z5Q$~AzNNAX>|2Xpm;YW}ww=;!EEaOklfSnuPvqTU`jN*h9jon5P{!m9L@}QhqTrYa zh`L5s=tiTZxBRoRVRunzGGmt}b+io;r|^8f>;w8_8zXA;(K*0^Mw${fNwvemmX9Dm z?mo%(R(pp~xj-^ zO?;!>-(vORbLVP&Q!LiK!pSZUnP;6I-nY*cJd65oo8Q1*58PpDwzo3fN?%H!W$-@B z9=yBYAHjRXoUzw|A;1C@8pK4>V)W#QhEbt?9@OF^p9qx1zoDeL#;C;3(>vPOzYfvm z45LCJ(aJY^M9se*$JRBB5&UoBXu$8xdh?6E&)x~h)ER~LR903h2FN+S6ljX>q}fxq z*>&RcBDn=02mM*j=dsr2$uzS&A$pNBBr$#}1lx`hh=H}Jlzv(K^QeSvxCJb~WVf_u z*oUUz&W50BO&d1?!dj!V9-l$gF<&ga>+t3BM(^k{HRm;Ja?w3dr1(aK1rS$PuM_r= z-nn|VJF|^PjesB~6OwI_HTZ@Zw8=Ss(<@j+a!7|Yh-=+RhhWeeXe088am`x267vv2 zV%K{xq8}A|1iv7gnzqs$E^pWAm-jDK984gK95K6qVe` zI0*6d`p`UIElbox9{lmG86A+Q%g;1byLNALEc@fI_=fy zCB1XZ!|x<5);$(mS@pxc@XEZP&1cw@Rq(kh`^Fh!MC&!W0*>CtFy(4J*V_8#=5+M3 zUHe2#-=2T^IQg16?1{pffL>pbUgB^L31qwh9^B^*CS}SqZ^i(%+NsBXH>G~g zeytjZC!J-Tp4?hM<52Kxib#gz?Q210fWKBcioQVhz+(Lqmu~*U6XXaEJdEwXZGx-* z=;*HJd}ns`@pW8qXZ92_$NQQ zF9hnk^Q@*yhN=9Ok~zZ+79J??>tUZnP&q{nkPLAw9;R2imeg^yYSM`M)g&F3{lxu#+-{1*U_%uf0*767KdevPw{V)j-DJ>iW1pLGC zEY_9)>5r+Waa@zv5Wkr+ zoERE4j{T|GYuFAKku->R;9Gi>T+Rhud#|AIwW23V?exND(FxHJ#d1hQy^K8|}KQelG8FoBq`^)nJ2V$Qc1F>!8siMue5nTwfp^G%grM=@)%>YvUFV3U{&C0NjmOm@(iX^%;V=$QMd8f25p# zTPs5Qj5%e(3tYUP4Gz)nKlnAt-Tz#$uDLQh5z&XEdO+O5@IMf84h9H|!;4V`90 z?YY=vU{oi1WDX?g>AWL9wc!YXXPlHP#d*jD-G7V4qbdu4SI+lKu9bcSL!`bYSgK(C zIENyk$Tt`^*ez0qFkoPK(mvOm6nE{;HU;z#=c^OBwZ3M75hnKKS1N0aypp6J;{a@A zk*MjuEtm!LXL_xfb#NX8@`b`FwI~k4T|>wraL;n>2FK3@)H>IaFg%tT>j#~1<6%?G z0{QCbp{Cw|!lDs7SW+1nH9z4ejS*BE(xs(mgf@-pGJf;C-sM}zJ>knP$E=~jla)i$ zw^GKjLNDfr|5k0-D@ON+c^Mr_L++(5n!-%_T3Y=+_WqJs=$|k;yW0*uj1(G@h{)}I zasSWaChy>>?iOSKW)Me!NIntG9mPD^nulK;E4^RHIM+Yz<}@H zeJO3ZUWG!u1Lnv~-D3niye>TH|0(ipVghRMoFtRDU;K2&^5uF>T1GuHzNL5aIK?Eh z0t{^V7s#Cb`Q*Df7Qt@-`cN z`huR};}c5OejQ2#Ip@zrHh+?ea)?>1e)g-ZCPmHynGm^MGD! zsVySHT8M_=xZ0pLb&k+4^o9aL4co@AuJ>?BfoMXWY!93883E~?bbuOKDCtSC*K+53 zBX{i&Bt;VdK;$^H@fZL_MyEYQ{vvv;vrAEm?CTi3+M)Iy0h&1jYnXM}Jo-+s#^sXj zYuBB;=YJ_<%nR22F(m=~)=WMfaf|ENrJc<0tkZ+%3_+-PgCjP#YZvti~{el(4mxiljq zV|sgRm3w!!ykwut<7Y!-3G2NEIAFIhK3k(IDPykA(uA~2qw_v}ub6dKSmQceJt|l& zzj}`z^v8B``-d_Vc^>6Q4ov1{5+z3MyN%@u6IV<`%@YLG`P6Tz2#y1)_T&+4?mMTMf;dUB8<$gfuJv0U0u?r;=yg z%jIB|5ALur2s@cxJZPjG2G9WY-_31g^Fhb^*G#CRpN-LGupc8pfo56}ZNUc^)n}}B z<)gPwQ6DkkOKzfyq-URKZA9r}lt_NAnxc9QP$*RV2dYupNd1OzcYQ7<(mVGJLII0C-lPS|Y#ttBu5xy(oSSVK#yM>y~$9M%pd2rr#~kIyCWos_22U!Y*%6yQL4JEH}DaNu9>T3o#0B*KL@ zgx=fW)IhrAmyxvuZ2pmIZs@t??dDhVa6Gf_oLnYHn#LNnic|Rvs4&igBBT1lP?MYu zcdALCKM_Bd_|%i|Y!;6UY^uFtclf0E;b;0OHl?7zP4ixYr$^OMFWZ48N7ybOw0l0r+v@8Ql`To$@ zFnnsjfb2h&K+H+Rn%O(Tr&@mb@p|BmMuW3Zsav6K zEGd;8VzVDG5rUYax*uo3(`yU7;^TLs5c5f{sch`twNQ_z6|LV(dxB7^`JW_9$>*BQ z@iBG+YedT5m-JcNPc;^~5!u?YJw=E0cP@MV-=WA_rdx|ISK*H?#jSSe|71_H;M9Gd z&2!4H-T?k+5fdS$4%@qNjAA4eSbwQcYBEDa!O!&`38+SEVOj|Q+hbr(*C@0*!*0W(geBSQvJr!Td>yR8Nt09cUZqX+|vuM_{`p<_3 z!oS7Y(9$$KcvwJh4MkaM#v5byjQJY6z`wwCTczUuUwNM(-d1U5xVCkP z1kwVpTC-_XcK(k01B;3sohHUw1)Y^`dgq{zJczmuVHO;NDW?&pb@zUmDyH?(9C&nkRn|NhE3+SsLYkOA z%a&;^&zxnR`ta$a+FIUR>s2Cqy1o))ShO*!`ZTx%TM+%1KG=(i_tK6Ic?h$74g9*w zS*DKph>E4+{W_3CH%cx9#NgtKJ{6<*bB^UhOm14i4VHi52vJasOhwmZ;oJf~K=0Cz z`D(dQqV9Q6*}wIBuupQXe>5BKwR+fbObc?0H@?)!r!yW8PX0e^E%}__&A+xU&3Evg zs&*|wGhTkV=e5!raxRZfxV+B~%p_WnO6!N-8H9@~$dX)SvL699&)HGqb0gzZDY|gS z(3lpv0=K;h#|Yhtr8Y0dL;k_hkSeG1i4VdwZGUKiIeC=1y==% z>@v>smdE(oM*i{}R6Lp{%3Sfvj5jSKDZyp9v#OGFdRa^Gk&|JmImSt7c9A zENi>gu{fX5gz)T+*i*4f3eUuG^N2G+{Tq90GJ^=7DD^M{jfV$);%ioVQpyo zx_l!K<};ut0pOd&_M}S|SW{XHstGCy8r`}5hn7(COG zFrQaw#3PpGKP>RQ5jMV4U($~ECld2J_sNzqhz3T_f^zM@W zAIl2RIM+#dh3U2pH5O7BT{O-4aSsn|^tmbi{au+8rFX-R%pN&_FYT@ILuYI2d6r*< zTEr@~tBN=cyG&3{;gIF}MnZAa9>P}9e`N)^LSXy@hcra+aTbFLmnN=zod6so%9Tx& zHLDzpAchHl1anC1grZV5nsN8j==)5wQ=))G^_GAK;Qck|L1YR)bCnAvqh})4Wc_`1 z`yu-#M76SUdKKkxfsv6OIiu`L_e6C9 zyDUiCyastRh^C}s27p9V)eqo*C<^fasu%?<)2apqy&My;* zrD3cvUc7W(tNUEWSbiRVJ>#ZzCvj@u?GZ!nnIH@09!r+sH40+Wj!i;iGB2YQg$JtP zZm&8N1uX?brb`w@@d$ZRzK7GoC*Q#$A_-yB`01ALN#is^c~ju2%?=`yNY;=sEK=QL z(ZxUG%VKTwEr*C)UF?3rd|DiOG?7O4sAiX$l$=wy7POHbjpeRUiFjq)L0_#@X9;P zy@?#gjQec`?*HNKvcr4i9*N;fzI=WDLU|EjF3qn*78J8_-VRV>5*0ipA<@N<-eeL*>+uP)&ACoy88#X%{_!sYkGMqs=BR)f z#}8I2KYMg-vA>ct)b{D1?$4*d2gmTu!%s(_kB|qy!-DfNJx*vgVU`#S_t2CO2LS>6 zr__kDZ4>irRxx#U>_(RP|6%Ma zcOw#^^9>!rzxev;KXZ>}{`p~*r`#Nr!IH_P9%QcW^wnsF_#Cng3-FzyshQhTyAsFV}RBSU;aDynFn(RbBnf zC*cRBaR*%vai`Kvmx+k+EBa7 zKinLrwYIiUG$UX<9HE-&_-4#T`PxbnV)s2`bf*+@GA9eQXwAVc>TV@bR(knsZk+|^t)A=MAhSB{FZY>f7?MEp+E$Okn^IcMV@x8 z#l*)!Pnsy>Fo$W>&b^6Nc6O#gW_pTAY6o*K{HV7NrM9u`ELbn&%uIPbe)FN0L|3e2 z?8P0ot}sNXvca55k5LKEmi;OcCvpLxf-|2m?z6ljhbWs`#;5zp!W1)bl|;h>pU`b{ znV9ax@9irNX6Bf9+bkqsnsmiEtoi;sybl(*%5R~6XgJO%mRgP zOzW2W-Qh}SN}K5sgh#bz3{RSZE^eRH@%dWzk8MY1$B%alepff0B)BOx!?`g$9Eu|J z@)t5OdvRhN*FNhWhyzbyPrSH75BT2d)!G9wMwT6Ac+ymy;Lhk*3qXw%+P?@f@egI+ z{n0_OV9*G5BMnl&f~XOej8(C-kw0ijmP~ymg#-5kK@1lZ)>!G{!?n~9N}ab!2cPA< z?riW1y=BHH`o?h=BpQmg+B)EL(1czO9-Sh=>AzV2u2v){(-Zg~|=jmh_ z3O2W&U+p7d9c+U|<+ikaN0e|Lq@4Y0QZBo*g+e=c+_g1N#@l`u_2Ds+kP+AN=IH3_ zD|jgNf3%H#KJ5%w4F9Nrj!)S#Tr>rbOa6H6UCF-S5{L39(RsoNc%?}hH^}VeO|sQz z>}sn8qJ@ z_3~Py;73;(541AbH%~wwEjYcygHq(zky2Vi`I9?}7o5ksd`9?a?|!Yw6i7>9^{eH) zwR<%_zWam9r*Y=Z(-vnywmnw-3rN1t0g<^}IcGJ*uHdNTY**uwIeM1WBkr7Ldw4lR z;Q^5Z(dRNfalRQ#r9@gau(ah&WE~B)vA~9C|2#S>+_oT;5Z5((7}FS#>PcJNq(>;_ zhywWr2kHS7{~d-(7<%xi(tlMfCg$k&=(O5C2nzDeO??)`qYk&d0YWD?fa#{P)7F50 z)>l$Nb1!k-ow$s&UBWlyeMhOQDKh)(#tm-$6x^mSbeD#<-dR{15!Rgg^%$=u({~F$ z`J7!!hy_^-wQC;1o;a0cvaWJw&M2ai9XZrKa-Y0)X$ET*M?C^QM32C}RInN%n|Eod zAPri0Pw%}~wAvvEX?RT@OTU0Z=^F0=--)n1KB@H+jFbZ+j{yXY1WA;mmuX ze{#V=roPxXnAzf#;#alMvC`~+EwfgP>9i$qfczu#uAgvom;284t)Esy+#eLu%zf~3 zXv8K(*yK3COWytBbJWL*Muo>@Gcf_1g!On@r+&56baBx)h{?s)w^WT(j;9yvQXjY; zvWXc8vGWoscm_};6Vgfy@NwVQ3Mh+g0?@O#0Up+YQkp<{M~_A6xeVU3}IDAd0-pb-7+W5Nv1#fh{PLbILtdd+t6=EcA5j zlIk#F^AXLKX#X>6ggZeKaS~yRp}frg1f5&MpG~wpK=qsDWgFCtiCPa8pAh^mew+JW zc2l=#wib#(I=Ek@Ec24n7IgsCSA(f3h>fI9?-q107$p-B8cf2I*dQj&xH=0TL+5MI zes#iNfWqjjOzc}1MeHAC%Z@%IA`Zy*ZNT;cxUS}nV&X6cMyn6_w=L-7H=l40lFbx- z^80!_Hqg(vCW=iO&g~OXSELAbJyHnjkP+|di3m^>Fsn(+!-Hid)m@7ls}E$XCUGt% zs0C%KWCebGwHI8?@mjM}v3pFeM%bqsQnly9X1>8&eJq;a(Pw0Zil|^HNC}6Q58&16 zhGS6V+V4lbCP4$e0_7SC36T910c}OV>ah!S@I8SqRR($AjhD@fyZ8txql0khT8}c_ zjQz_;2;q4>mbG$9)9xS$%Z@u;|Fvu9CiFM(wR^L@YEsHQJ0Bc>`abEv9;Z@A5+BGB zH(PrA^VL5tW8^Q%2GBrxycP)S_0i}A7>)}g=fNmFMc1QQZc*w4F~h>uY4pJUpu0nJ{llR^^uF~&c&*@f|VK& zA*JO6n6Dy|B?D(Z~?J5QN7&PGmFkWq;}O@;e5$Y>N#D8R8c< zeB-ugdy#G>@F)X7^PapM&R82QDJd~+CRg{d9_66+ zcr{Cpi`=&vvcf@7`4G`{{8q`C)8Gg?tafh%&zd)*8cwfyO$f^ zBpD-;eykg~2L6WC3?la_jw44Z<&f<7e^B4oVSy{6mz{{RXRjC)cC%(N%;a6fL54av zLd&{0QO#{_{=Pm{HqMbjR_HY(`H_V-p_`H;6%@?Z*j-;5IzvK2r03wYbaVt78X8VZ ze8+QNW~81y>v)ngMvnFL?`P*n!b2UEO&uKpgI}KJzOi%XPggrZool#RU47-WS{Kr7 z{%G061@|TkcwUSwbg!7YGG$RABqV(Ct!mL}Q&CaTo&OQRsdZht^P4v#Bcr3ExzN71 zLkqimdyZ$sUDeody{I*-^v{*Q_eEpKpi;H~dJ1fm!i4LYi3q}#G}ZwNb|i(tBhzRL zSfW7<{QzM!=n;+i58!SM3sw`5;)wXG2!KGO@CVriMFYJ>pSFoueZ`m6oMcx}-Ru@? zh3u5r8pn!;{^<9o^T**M58Ng3$pC00YEy;SS?f*>NNNf4ZB$eUD6Ey?=fAqHoO0Bu;cQ_lJmB39ei&9~xry zzdQFR{EPmxc`zaWcDf8{m`DwS;!i&z`s8~Zusiu<)74F? zL(ZjsWGd}puj}ptx2xouq512ZIPsyVum$USMe|-)4eSE zF4Yk8oE6>rPwd=~8h`@e*Sd~E&U_oA=%YT~PzEmeON^oY`QgmAwiZS|s^vsX*dpu?;!U$^EzgqJ&P)9jVIz10K_yalTJR|hmseX_I z<+its#pqvZy}$?md-C#gNPbyKWkr+PFMWpZDL9PoZw6K(KSN9jS9RWPLRi((YSiE} z#@gCM+{R5j0mwh$BxF~}wYbx+6GJ+7I;qR`B<~a7%agyyU#x~!73tpzV9(HduYgv( zU(bKF+eL|Cs8)4cl?MQ1#aMVjpM!tuhlUf-uDY`Uak#+}YpJg=wAP5y?M6kfjLoa? zQMp!$YY;Ml^LTw2v7)OfNrqBRphVyumv+=e&x=tUy|AwaioK@v4E}ZQR*4VUjATqn zpt%1Ln0tUj!N=*!7bK_`kdIot0Vt}CwHZ@C&X1dGt3P(}X@tJ*&Q#mbg{D+K2gOP( z5vS#o$El_B`Am7v;5U&EP|yB*Jlr77HntT*NGCzbZCGPofe;4e1z9W+Dh2)tqo6)@ zeRpOJnAeyuPHOoTTp?hDB$|04QT9$w9oR_GKV0$KpQALpQIZZ#@~CI|kSLjMY}9)r z-DY*F!hjY2yUEqE4F!#E%Fkz5LX~-LP^t#~>gwvD>!GnC)kzos_U1?q7n=E5UVo|q zC{Y~!#mMH(981$kF|;ZahIp(R6AyVv|KpY$BeWa~#J^KnT>QA>{_eUlDhe$a`1#&E z-1k4*CW;t}mGaLd)KVu{&qnn)DVS%( z5&KK+G+n&p428$jP4)F*7hfLz?Q>lNDA~YrK$N}OM#HP`QQj!Z2yCp!!&NOOgU*3N zY(3zvVZjCWgN5dLHw{iGsi3W_i|WJmb8(K`KhPH3ytfr3%|r3}b1$I)KWs8;91HD~ zTT0TF{7^=@$Hpd&P9|-36D8jLv9xSraLfVXCR!1fmC`{!6tkZk`T<$fs-KH#A)aWT zBncva{f>N;#nL6(pN4@SrY5udSoI?_dNPA72FaIu4s$0*wdX8{GsV(80FPk}Ak{d2 z{UT^mt4n_AAVzoz{#`H)dMfjLd8J!kR_h%p`v4WOkUQN9#KZVQ&su#n`rhkk1?<4L zgQCB&!_YrESpLY5l!{YrYJK8!w*GG)KU%i*>7OH~przm7(RW53Ktyz8iyG;l(=jQ+ z(xhNzJG*VS^yT8{5c{XxxqA1!(1*dYlGTU+ne7xsYlCa9kk^Ak-qT z(-@PXwu>`m+_Pw4>VvNLzD2j5b?1%L3fQ+xZE_t~naukJ>3WR9!ICa}ui@9i1v<7% z7;Z*212mU9*J62(htv6273p3uB7Or;gQ%LNyKI2pI9NV}o+`0C+94k(xMSs0I@FLR z1_p{bE}5jSm-wKSL!fS;%e>pS{K|dhEyfZ5_gGW#$8K=(kXpe0I7)cr2E|3_!^S1^ z`otd~rhH7mgDr_Ijjg*mnw`|8-ZSBiJbG!ljUN5jhH^RJdMj(xb+q+-`Xw=2ES2ul zi*rQb-uvEp#zH#Oq-jVPx@)lmG!yutDuIpIEWIlBV!KF`2^ zMz}ZGAHVCKZ7G^>%OTUVBkCRyL|s%P)1fWC%;e(R@0KSqMHn>Yvl*&w8 zTpxDQ?_OCfDr4|?Hemj@rZ^3-F?tuUsl6|V9;aH}RB$h-vwy49IL5fA_qSiO{40mS zvrJMxg=oqgjAytWZ@;}=N}mv|+AIl%yv}1*fa&d~# zkOdPHutL=WD7qe3D8A-AF?-GQzMX_sV}VO=_05;A(~BqIo38_ZwEb~9&}=c>EZ15O z`wnCKW5oM>a@Vr@FEK)!f}vPZFQI51k1&Ht6%hiTMb^>n!WbMsX}`?7Xgyx*KTOWH zZfKP!`Z#Q-H){a3Xs@n}xr5N;oQOS)G6$dU7JfE1{8yf z3Wt`oRl+Haz?Lul4Up2K*^N1gx8A4B4SV*C>xnk^ubH+n*HK+cBiOJ`NEI z|NLz%*_G*QndLiTU;QZRS3Wcx5qo*`&na18%n}Ot_J(^h@q_$fM1Z`YA+8{hphfw8aJ)$>s%7EH#e~+ZQ;amalcyiV zDzmClE1*j=`vQzg?cKYbL)`h3f_&%BfYf`#6H9vSbE`Mpx1Jdng=3nNB%u0+xD zp5ek2EyDvvwx{eh652uI8%f1rGQ<~!X8f(W(Tz|4Emk0^+JRnwLdp-VRt=)51?@pQ zaW&fPDeE@_Wgt?0qZ+ZbwH2GP4q`Y4(r_dw7!Bqldchpne;(cI4cB9cATAmxfPOVd zn4Fp#r;}~{(9lMAMwV>k}l>~L}eMbfoH{x8E5Q_cA6q5Qiqy{0RQl&Ym1gE;0&-RnY# zRAJ!Q3j7K-pnwUFccn7x{bQWZ!=YgB&}dx-cMA$Vb8O~*xfd9Llg#^8i3>{RttM}H z^8WgnMzPK#?1xFqFRXL^V&?bgZKT;_tryBU(b-vZPEkFW3_Q(Ju#l_M@DAnfHA-Yk zin>Ln9|C7DmIi_R;4lp(C}h?{X})Wn28H%~?Vn}Wf?rS${l!{r&S|67vf-a9;?{cZ zP`Cju!zu)O)}hU5<(uNtqn3LXsyC=K9_4?A^POo3*97^4xY~Jeqhuxmd=W*u2u-cnhWefJ5u)O5C&R?+==FaN44^d8MWl|(pEK{a9nYh5oE`3Q`KsD10FFI73&7$RU+2@+=V? zGkz>z@LzU|*Oq9yuYFLjQqA3^*>=@tof+_ZwDu^rHU#y8GM(!D^Mdtm|1ePMs+ow$#U$xAZT06R?1`SS`S%Y0TDA%T2yE>KB!R8emd&vOE=-{$Pw6u8 zNZl;&Jt|su(HJG2WZnk_+*;;~u(%zG7BRWed!?THLXD}JDxftM=V2YO_f57YT7uTW z(ywE1w8bP;r|4NJDK+oh5>VwA0A&a&iGxt4yPO;a# zl^U;-6!B?Lr|AP1TPabTZd)bfP!FaNI&L@JyRkDWN*vdEAvsUjZC_p=>glKt>zr9# zKk_DoM^XE$35(bJ-gj`_Ij`P+W19P7FPa&7vZdl>F^x}X`-Diu9=WR@Ab62le24W; zUi%49#=mHqLh|tx*lqglk)}vZ31m9ZlToZq>#CyY2NmP>8GYEA{)H%PM*!orY zb`vXP@w}Ur7O{9KkFSgzud?x=4}oJ5od?T|VWw6Q)FTF}s#~Q0QWd zid?U`pQYXgW>ijBz$u&0>N4hsy$P zn-zfu*CL18-uW8nwgT|seNW0#_9#$zO`4q6L$rd zore+kT0PTmNa0PRq0wJE2Mks1IF9uKKOY%zbS4R2*g&8Wplq*JFlqqEy+-z~RNC{b zkgvSSr&VY?epUA9rQh)l^x2TJnxJ=hbb1Qrq!%R+aRCE%DC+Sa7e!&QiLjSNUJUQ5 zj9vr{BTAI}>pCLdY_#Bq8n7<4y}F5tK=v_|GGHDBc$S&Cl7 za2o3EygP4_`N_Y@GWu4B*tbn)(>!LT@7m|?nr!=WdK0tld-SI9(DBaK-4+QzkRI!+ zR>11|E!MkF8-~|@9mww`w|`ZR=||FdZ)smVk&cZn2zqf_Yd{@N@e9b-xt*G(V7=M* z2KcJ5Ls%ikU71GsbV817FVAeqWM)ZI$XJLE+ym-LzKh^z`5SLB`y2Tb z(JTi?kr&WmLwjM3>kId1n)%mK49mP>#`B(w3ZO4OAU%}gLtNX;UmSP^Fh0YDh`9f> z-Z3j4w`rgE@hcb)c*2GRY%lH-?!~2nEbC1WhzIs>15{>QZKO9+D1weq2Y6omj@Gdr z@&{~B5aK@|gR{TAlS}H^ixj~>K_va`5#?u8fzfp&ZT;ptB}kJd=Ln2G-0Sd{kk#pam>?15_7;h zTalx~$;vRN^|!bpM8M^y3K{q#l@2%&5S{=}sQp%>1{T3s?SUEhyTm{dgAqvSneIyq z@92&3VpY35r;lXpt&hV?D`ecrWPFJMG9C4%0A6td#NFxHGaoR|w9Bt!990uNLk9b# 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 diff --git a/client/Android/aFreeRDP/assets/help_page/touch_pointer_phone.png b/client/Android/aFreeRDP/assets/help_page/touch_pointer_phone.png index f325509bed3844e476ddeac40231ad82cc8e379f..ab7c598961d3f2e6953a2069531553fb6acb2a08 100644 GIT binary patch literal 87793 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

    RAt~66 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μT{Ss{C?f8V>0 ztEp(s4+RzEs?5R==_ zB4UvcMDnREw%h%Cff-MRCry+D?aH#hu~+7Qzw4PPwZdA+*DpTD!{g1Y8VII_3r*fX z1R}3j_xASL#Z_1649VdcD}#^TeBU5`81cnj-H3nkNMdB(6%@S4P{{=44cWbj0mDZnCsyH z2nJ$7KT7e?%3(Tv0*Loc#~Fl!WST@QUmM9zd67ozAg=m|vYb**4eY5T8LE%b?0op>54Rb@ev5DXXjJ0em-DQ{=)}Pj zA5OBahvX!r84=3e$s*-DvPME)P0N3sU13e}Qqbs3GPdBNL=uqHbg7r=1=dZv*G90`S-qi_*@VEc-(z@Sp~qvLeK*`sXMk%Ov~Z1$|G~Rm zXcBU-{OXcQK(KGEI3=y+wpEz}EM@=EY{CGOt_^OiJx&^y^tQNAHB4F;vjuKrHGJgDeeCW?v+C<#M3{c*OPh1jWXSegVYI2ADvK&I7aTY@dRr?Ty2rG({hTy;ohgf$;QW@xQTBWKUyZ!uyr9|r6}+Hy27Hn(YEDs<87+&2?C~F z7qD%$A<0yHShtyx>p7tJD1@$iLcu+K2WWGuh??^phbJiqJayio)J43s9jZRiIl*C` zNd}M-x2#bLFCxk@1+b~SjeI7|79B6HL}1lAD0Dg49A|EyK?e_`^JPYxwRQG(wlPPsG+7qX-0IG^AOswiWD&o1OD`h?TEtv zWld0$wc^G#mjfMK#?PAmU5sU;^G-VoxIqg+nx2hPjm-KZYiyy>2ju7gnl)Ljka+cK zdS)!yg=ZO`$4bwEWe)Af@&h$w-tZB86pC)k9N4l%y-V~vEk_7BPgXljGb#HPMb2bj0y43U6}R!nF?MJk;zls7m!>PqskOiSs`BW z*BS9uZ-kd%5CEs9!O1*0i-Wlxt!=!ZAGlfQ>WW-IVuZgm;5LnT!bkkdPz#VSCWVv} zrN2obyFSltJZLb>GB2~?>(HFqSgMa31;LTbHn_8+#XpG7mF7eSCRbutsUA54P!|tO zUQ}n@+(OQdIbj|lvMkZ@4Om-2LH7qt^SzMptpO3o^zG96A2wHzVFdEI_RLR(npqsB z_0;Sv$&8emzZHlNO03Bik3R)nnrpS~>$-mLXk7^@f3|Vaf%hv#zQeg@)v-%)=%-S~ a4YOay&izsj;T8z^(NMXMtWmOx_ literal 88598 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 M07*qoM6N<$f~m?OYybcN diff --git a/client/Android/aFreeRDP/res/drawable-hdpi/icon_launcher_freerdp.png b/client/Android/aFreeRDP/res/drawable-hdpi/icon_launcher_freerdp.png index c6a8ade048d410d9831a3b5e3a48a8f98743fd46..ff31f25761bfc55a7cf6922797999b9653a3f7f2 100644 GIT binary patch delta 2852 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 diff --git a/client/Android/aFreeRDP/res/drawable-ldpi/icon_launcher_freerdp.png b/client/Android/aFreeRDP/res/drawable-ldpi/icon_launcher_freerdp.png index 420bab31bf88287d192c22208de13764168a697f..49726f4f0f76307d4a458376818e0c62d8f70f55 100644 GIT binary patch delta 1180 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 LNkvXXu0mjf>YiGk delta 1851 zcmV-B2gLaJ4ap9WBYy`FNkl=l|_~X zU7>^$Nf1%MU089{8SI!m05i{Iq(lT>1H{Aw7FbX~AP(g)(~jw$vZnq(M9b7~Uthz) zZROY%Sa;?#FFU*Y^8Gx=?|GhA0Psljzz^KsPkLBbkuV|>g?|yh?^1yQ z*iv}c*hI|Vm4CW#m9|0%Iaz899VXC+SEJ3%)o|43j^*az*SPKTrCsv&;;6`o}v~dm)5l_kjU}5h8!A=1i*;0g_EQ4BC zb(`V5I)7VWm0rkJ%c#fBLm1?-0^JzC$J7PrVXwf#y=ho|x&{oF+}Q%#+biI?D-}b% zR8s3d_L4V*32u00{r09|R7tElQy{HPt1tIIvgiX63iiM#-_;OCIWxQ*!bm6B1w=t} zw+AkeCp$~Pl4u_kS{8EvF3}0n`}w<5@oM~0ynm5+5^sK@gEv>=nd^37ntBU{d4|A2 zwHe|0XYUA(K?V#%RgZVjZCZVF{AzmwNHT3{flmBl1LxhEYfkC%X3WWC@fah)uCXaby= z`q;3l)Oy8b+#4>u`NO7xxIPpC*R6^7;S!Tz&6cm?4W)6;Ylpz?b~X1)w%jiX5e4TY zj1jp1T$)uXtTs{Zew!dxATXGj;dE*HWZ6_x)2Bu7rEgdN}%o!&m(ttbe8|5q!MF zn8h!KbT?LDA_*ba^luzlSO=Gl@fhdgkNT^P_XG;cYG5&L9)uU<5Jt?wv$Oqh@R$zP z-|;&Oj1?G8d`W}8fSMI0gh2+gUT10x(b7v5wGD$@1Ah_0p!zF0_c>60 zmPBH$hZ@`V4H}S(SzhhH;Dr{%?O2|yTr8=% zDAqSLiXR`%6Rqvs#UUOm#5JWCL_W|J*=x;zFTK~Csu8)8i!>vBH6ouIiNZv==($rA p*Pi)YWN)SZ_uOcHYXXln{{s5S6v9V46vO}k002ovPDHLkV1iC6bsPWy diff --git a/client/Android/aFreeRDP/res/drawable/icon_launcher_freerdp.png b/client/Android/aFreeRDP/res/drawable/icon_launcher_freerdp.png index 69f23fd3665999fe502a6190e333ba32c5b18446..53c5b36e112f18ebbf740995d3d865a67cd4fb72 100644 GIT binary patch literal 4196 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

    >BCxB|`lTXP50u^{b77%@%0ID&TTqjVG%cMV% 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 diff --git a/client/Mac/en.lproj/InfoPlist.strings b/client/Mac/en.lproj/InfoPlist.strings old mode 100644 new mode 100755 diff --git a/client/Windows/resource/bg.bmp b/client/Windows/resource/bg.bmp index c97ef5d99e633dcec215dd3a09aa17d88e465914..7e90ec6ef339deaba4eecd8176c74f08f182b643 100644 GIT binary patch literal 290 zcmZ?rRbpfS11lh@0mQCM3=FbBnvsEp0mx){0mQ=G5DZnykg`C7;Xe?%1LcM}%?JQq C&qbpE literal 50630 zcmeI!v28*@5Jk~7DWMY*aw?zzB!}*Tf?R@|!F74{DPf}bbP#+bkXEZR!JWtV-)kMO z`+nZ`=j*iAb$@@X%klfq{{Qp*{v1E-$Mg5*O@IIa0tC_p^i0kP5FkLHK|s$MrkK7} zxjz8{1m*&Ire_2Q5FpSXpl1zJobNSGAV7dXx`3YP836(W2s8-jS;G|5w<`B1K!Ctp zK+p7y009C78U*yLVT$v;#t8%n5J(r$Gd&|ffB=C80X=J&V)|C){sagRm<#Bco)I8G zfIx$Qo;6HyzSlT`009E&0(z!r1PBly&>)~^4O2|ts@$Id0RnRYJ<~G+1PBml5YV%R zDbDvAClDY&AYDMu^o#%j0t6Za^sHfu>06ci6CglfE}&<6Mt}eT0u2Is)-c8SUgHD; z1PG)H=$W1oAV7dXgMgkjOfh|{a(@B@2+RfaOwR}qAV8o&K+hVcINxiWK!5;&bOAln xGXew%5NHt4vxX_AZ&mJ3fB=EHfS&0Y0RjXFGzjQf!xZOxjS~nEAdoJw{sDGtDfR#W diff --git a/client/Windows/resource/close.bmp b/client/Windows/resource/close.bmp index 8fce91657de476490e19b7d06afb05defdcc5d60..f9bf31eb0709bb4fb2d3296673fb94d72d246c24 100644 GIT binary patch literal 246 zcmZ?r{l)+RPC!Znh$Wzyk%5JQ3CP|8#6sK<%nW3MK*|CQhG~~l82-s24+A~1BfM{m=VlkU^oDj7vhFsutFe_vOr@LjfMa`1pb4;v`Z;)5g;2P z2p1uS0nq{^Ax6Os0g4c#9j*phBN`j7hDZjoc8K$UB1Gy%Q-*95RSY59J!me0m;)q9 dbrqUMWMk3%j-QL^5x7zKHIB-Th5#8M004|51f2i? diff --git a/client/Windows/resource/close_active.bmp b/client/Windows/resource/close_active.bmp index 2c58a3de6c700b807aefc811c882094c6995ddea..43dc5b2ba60db586610d333fb20c83f25fcd9f2f 100644 GIT binary patch literal 228 zcmZ?reZl|%c0fu4h$Wzyk%5JQ3CLas#6sK<4B~@8$^s3BRjXFP)xz{3(;N&8Jc0}i zi~>M&7#P4j0R}+`j}s^$C?F`n4wT_yU=;-N8Gu%>2nv8$FcD-`sQOXOMz$3Tn-Kui CDGBWW literal 1782 zcmZ?r{l>-s24+A~1BfM{m=VlkU^oDj7vhFsutFe_vOr@LjfMa`1Xh6ooC{%K6+}~m z#)W7Bl5lZM5x5k72C_zEHhx`LW#QT(46JI16oeZ^qI|hfwXz*3@HmV82_B-K%`M2lqNK-s24+A~1BfM{m=VlkU^oDjKf(vWV1+;;Wr4;h8fGEz|Nnog_-Htp1M~|n yKvG!YG6X12k~wh2a0B5YI|hfwXz*3@HmV7*?%X#ULRF)Pn`{ z2r?;h0mX6A9D_B-K%`M2lqNK-s24+A~1BfM{m=VlkU^oDjKf(vWV1+;;Wr4;h8fGD|YSk*L_-Htp1M~|n yKvG!YG6X12k~wh2a0B5YVj*q_2Jt~4Wq}66|NsBtYGHct(QFJnf^0y& LFdCm)G&x29x#S50 literal 1782 zcmZ?r{l>-s24+A~1BfM{m=VlkU^oDj7vhFsutFe_vOr@LjfTKz2oMZ`|3mVj*q_2Jt~4Wq}66s#UAtYGHct(QFJnf^0y& LFdCm)G&x29PfrL0 literal 1782 zcmZ?r{l>-s24+A~1BfM{m=VlkU^oDj7vhFsutFe_vOr@LjfTKz2oMZ`RYU-Sh5!{1 RVazIG%o$ZP8Umvs000gEx&Z(H diff --git a/client/Windows/resource/restore.bmp b/client/Windows/resource/restore.bmp index d74eddf23dd8773023580eda5c9479131de942bb..b2ae47b670bb6ae22ff398c8318106d76d334bcf 100644 GIT binary patch literal 220 zcmZ?ry~6+jc0fu4h$Wzyk%5JQ3CNxY#7Fob7{mvGlm!|L|NsAotA*)7rr8kwqap20ssO6 B3)27q literal 1782 zcmZ?r{l>-s24+A~1BfM{m=VlkU^oDjKf(vWV1+;;Wr4;h8VvzR2>izYV<%I0?6cBnDhNoI#TI MQN^PnKx7C20Qofl%K!iX diff --git a/client/Windows/resource/restore_active.bmp b/client/Windows/resource/restore_active.bmp index f88bc4d9a013a411224d3749d6eb8f0dbe8332da..a0516afd09a2c5ff5908516be56ae2205965a450 100644 GIT binary patch literal 220 zcmZ?ry~6+jc0fu4h$Wzyk%5JQ3CNxY#7Fob7{mvGlm!|Lt5&UotA*)7rr8kwqap20svu@ B3e*4q literal 1782 zcmZ?r{l>-s24+A~1BfM{m=VlkU^oDjKf(vWV1+;;Wr4;h8VvzR2&}>YV<%I0?6cBnDhNoI#TI MQN^PnKx7C204vJR?EnA( diff --git a/client/Windows/resource/unlock.bmp b/client/Windows/resource/unlock.bmp index 8359ae7cc2846df3e472ba448caa27fa0534413a..f59b72a01a74042724eec11ee748938f0633186c 100644 GIT binary patch literal 208 zcmZ?ry}$qgPC!Znh$Wzyk%5JQ3CQjP;v;+z%nW3MK-xTYhLi;w4FCWCXOIvC>VaZ$ zK}Mh~j0d8*1euh0P-q4YB|#xYHn14G5<8G)6XXWdT!IijmmsnlRQ-s24+A~1BfM{m=VlkU^oDjKf(vWV1+;;Wr4;h!W9B(^VD%k4R7)PU_iMa zX=D!B#zHirkwkhEO&2DYNOO>tVHyGyK~_K{8)6PzF&Y;xPLM&iMl_SDWe%FLqukLD HKnno?z$NlC diff --git a/client/Windows/resource/unlock_active.bmp b/client/Windows/resource/unlock_active.bmp index 59d730d6e41ffb3ced25bfbac4ed19e17d0f3355..a5d9c3818ef74ff27ada995bf4c235e645ee6837 100644 GIT binary patch literal 208 zcmZ?ry}$qgPC!Znh$Wzyk%5JQ3CQjP;v;+z%nW3MK-xTYhLi;w469bHVvrC7>VaZ$ zK}Mh~j0d8*1euh0P-q4YB|#xYHn14G5<8G)6XXWdT!IijmmsnlRQ-s24+A~1BfM{m=VlkU^oDjKf(vWV1+;;Wr4;h!W9B(^VD%k4R7&PU_iMa zX=D!B#zHirkwkhEO&2DYNOO>tVHyGyK~_K{8)6PzF&Y;xPLM&iMl_SDWe%FLqukLD HKnno?Ny5oo diff --git a/client/iOS/Resources/Default-568h@2x.png b/client/iOS/Resources/Default-568h@2x.png index 46aad604b03745433cfcaf6d829fe8a59848e9d6..9537b26d8a757706c1f72df0d4dec7076b9bf3d3 100644 GIT binary patch delta 7976 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%0DB%*3TOp^ZScmh#ayOW#>Q6!QO8-+!71U06I_T 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 delta 8511 zcmbVyc{J2t{P(O324n2|*kx-hS;{h&u@tgo7h@M?O$dEvEEAF~%Mg-Cg{);QV+q-} z?AardM79*azR!97d!E03_ndp~Yq|IRe&2h}{o|fIG0^`s5aw)B-^}WN-=_Xoae)6f;r}ks|0ho4WXW3+7qT!2 z4ew#(+02?hIlXGvd%LR+*VyTF+^sfLSZxg~^fLV0Jg&sA+VM;N{^pi?VaWrNQ;%7A zUCq>&)&r^3=w03|D35CSZeTXp^4r_vj1X!kQ*-1Do?0xomn>i$=a+f*hMrRQR|?lF zGjW_pq)P$lQx*Cm=j8~!KRdWn(VsQhF~OCsb2Q_hoD1MeDQ7e`V7E)Bu!;ZZt+_8=0Pj1QZOg<68eA<^FKi@gEq3?QzKq7I^yDazDtzh;v*lp4|USb@Pjftv{dX=}pOZ={5sR=p}qJ%SHV(`>3 zXgrcEbw4sM6nx|9>=)TdD%(&m^LJLB^ez-5=z*k| z7~_#W0Q>S(St!vpF>%mHz zk@fC-(Z48mZOCGDLURnM69x0;%`HL zJPG-GAz2XOT&<=o=u77@1NlDaRgm{Aw z=x>Cjfd?51%|E?&bdjQQVJIA7fF20NJA-7Y0w<_WIimjg%q`vFK}bWT4S7o!)e5pF zvi~#A6FCY63_JReJO52>A_zu5w%w;Q3yo`((Hj8g+Wh`ZY?KL$V#0nmYyHOF@6q;G z-0&g}ki|C$Mju=ALC2p4Xu-BaNn>E^EnVzF%$y>Q->Bmo(%bfsewYc`Sejh?W=;jC z;VKxdCJ;{h0!l`w{=$Yb?=b4p8P4o5n=x}G>-RQ!5s_k;NCsDMt_TxUem2qfKfWt# zc#)cz@&O~Cz=JMK=1T5DrW8T8*pXtuqQv3u3(y;P!RRODAKF9015PXlMnJ`(X^#&W?t4EBj>@EEw=eFx+KIs)|+>8$JZr!w!wEU zymaM7UWyB}xM4A1jG2R~1LI1AE`(aF>FH!07~Gx=j@n|yEZ?v0cQD~)!PLkcmfR2n zw`))jVe#PtYww$2@khbld&!^?C*mDc&twtH(HU}OfI-56Q#0f5rjCX*&gp~DtgT;Y zsYCZHYt9X?eFJ-} zIg|Z`>uYVW=_zrLIkoAm*%gsYTTyE5-qjiuO;O-CP-yvkkMK0or9c%0&HSF_hRg(q z0pUFUs}(!~U>4rR4ZXbEsl0t z+LPgmekjV>L*UeobB(c1c&aMjvm$4MV}3eQm;I= zWTDq{02jm~;KJ&-ljFbb^ZDu$etIsT$qOpIrk4iY(LnPxb;Ju$St8CnnDR>I{uYD2 z(iP>02^Al^mVa)4Y!$Gsj}^noD%&mmpzp41I(g?53u}K4IU4c0*<6TDxCYXC^6rnW z3XL@n_3HG&w1L4z1@Ir@t!G~JdLl%zw_-c&l|8V4D|`2U92=Y`p4W1ph56UxWr*kh z);pWUlB!~SaPGco<4R)jv*AZaS5(-GbK)g zxFAgg2Sj~M6J(=;8kF(RrNnQ^2v)d@~lDtFq`JGynAqs6g)=8muB$msRG??d4FC8UOPR>Wd$Za$|Xy| zwji<~>A4Q)wV1IRsuSe-t>dzw&^I(W z%4b1d5X+l!$!v&B{^QvOf#cd4y=2gxCJishl`WP?4c6<_xYZ5qJ`v#h<~K^aT4q@? zjKhp3W;LW?b?!It>oO;-$f(CquDl>7|feNlv@IWut4qo^zOI1HTz zL%^^F-oTA;Xdzy4yx|r*rF}qk=kG1mhXVBUp)><#ODzVhc)moMh3gcVhjoqapksNH zLS|@Gv&Agt!Ukx5M2{wlYbSz@)Frb4I?!W})QLWW93IKagZnk%Y`ENK$B|6wwF$*%9`tdI*hhGilnlw7!Fho&IwN5SlnGMA8S;uyy(C1#{hZ` z*!mDRD)gw4ZFIF}M*DT_YOPYx?nIqhYq2JygAhwtUWKTiNAI~YL%E(%mm%ZQ;LR}> zD&ifJH>`m4WyL^cErW>>Lv*>_SzJJSGgvL;W40RF2yNPbt{y?S{eGly%q*o3>n+3o zwKy(TZ5FpRGf8F10`bYng+@4wkIbAOQkva3xB4a5CJV$5iQ7ExQyaoL9Nrz^Y>1UzLYvWQhbOK z8Pe6dp{ivMlF8GgR$leJ_sT076d{Dm`OW@}-%eH+LMW+tk<*>XI-Qf_kND9ASoN64 z>Nv<>K@pr`w%)er_Xuu${-s+nj}_BqLPUliom{BrS9Ok6(%!xETbeszd&K{f!d~z} zg;V@y>RrSDN8dJI{yOn{BG_bc z%d_7#pz;;!>X$#2pG^MLB1WE+_STVd2YwY;2^EZPF!pte9fiNFHx^4W|J`t^`Vggs zzN|1J+jqDi_)6n7$K5N|hFGIa&2lZj;M+t?I?v5tS^hShWy}SiK76wHkqU^9;wUs; zeD^mX{-SxudOvC!A`kC%d?{g$(){y%;KiLYejJW?eX(RqSAIky(DDZ6mxk&URn!!t z9+Ont&0It1)7e0~_PEOeq{)oNv2H^H^yR%o!?uL+*8$=uioITUnQd$m_@eDY+8@pj z1_%SO#axrK&twM|eAQrXpOOH8r>R3aA*uS6FfNJGYE6`Y#wR@Dg4+fOW%AuTM}>gX zV`SmBKTV)&Qx-%wm?6_!Ho`;3o@=l2LA?22Yr%S54~}48tH2wy4)kWn;>A~5GAV{3 zCJ783##t<^*DcLphkx~xxL=zS{b^8wLt?^p{}3&aJbnHE8dI9rnz0?=+eeO-8mwpX>Gz-52f8MAdOLu}5M2rKn2)zjdiBMFUy?OY z*$8e5%3C{pg$ksS86$_{*xhKrsTVs@ z5R7y#3|A;-3@R4X0l~6j>4+2(42Pi`g9*_ILYt_04^Jbw(V&eUey%l84zey*+dIAL z+|B6JSQ8iaWYHFhuwhg+|A3nC)>ljwfjXMp6-`Q(Sh9g)=mf!<;&aq2Pn2;R@yl%` zz!F=fRXQplg~A%QU&9c7M?u*Uw%c@LP*TT^tK_XhS_tiO5|XJ%Y@&d^>IRWyM{7(IaLjHjKGNgw<- zg(+W8!Y2rwUyP?COA6wO4x&It_K~23U9jlpqi=;q7Zu6)(P}xYxd9+2B76g_ZD>DD zGWzXJE50$zhcw?qF`nL1NVq(@DuXtX_WI|3#E9nq>-@IFxkGr^ak;i1xL`}&C)I(t z|4KUmJh4a920yC%56%8V4YQa!P^IrmV2qhWv2uoM{C>2rZ>6>;_q4fl zE}tXM@xKdM!N-uei_c(EA5b?s_n+WoT`W>Uu1`GVSBs@8GM0v{7{#12sP;_G45P(& z8K!3294dK#NiAaDJQXuu=Byfm`OqmIkaxF(fm_~mkM36N8(1Aa*LE0sc1VzQY3c}1 z-fA#dT30y%O0IQ?GU3F_TY6kZk&9r74>cPjTML@AKo)M&V}@ z`qDE?iOXNWo*#phoor>QknO9LyBqRl)p~q9ll_j;d3&@X*F!=+H(ei#5+#Rj(js)5 zMbWyFOQRc&NjdLul1p%7F2-QRek!M7I}jhHq^Lu8&ZRwm>ah#WbEv3G=Zb2UwQGC4 zusnrCYuIk+i#?wamMrS(?rFS=7Ek&nB7ZZvE0zWCO6jR)?aEB!5)YzamwAlUpX6g} zc#K&*C6eCKSjMv2UGrdkj;N*Be9RR#=CJzs$UIiwCH9X(BGwIc>z}iSv9*r@&b7On zmt3F-C(%9YWJ2`|KX|oYMCX}?|8#ex_}RxIpY=9%^Y+-ZiA6WRFbQLhH?utbqqr_i zE>9AtE{D}0Wg~f14w6aq2xWKe`^lo*J4##4i@PPQ&nKm`B+Vb;Kh@UPH~QH}SZ(-Q zSoax0p3*&A7#Ud}e7p3D=ftQt0#K6dExLT@{w9i%Pp-6}?{+4R(EfFb@+N}O@!CBO zu|sVVort^NEhlJp$-3fqE4(?96=BTfAzAgtmymY$=2POyleyTD`;e5z?>hHZgh@TI zBW@Q=nBr(l)-A+RbFg;{zCVd<_BnYydvzzxnCmZAw1CkuN#n88f2DZ&0}@9geq~oD z%c7Ety?iIUMHF(HE^*?FDO9ZJXngtLi6IZ+XRxS-;-wFhWd{?<*dwza|7BRRZuo&n zJ!7S@d`bHICCY%PZg4UC(xrjyx4Gqb$ag-|p?-yD1 zU^qD?bYAHCZ}#EOL5+Sc8*56WJE(FmzsAVZ_5En&SnZu=E<0mVN421~Xr>H7IfcWL zu#hj3`e~I#P`sG>v^f|y8l%TyMP{>Y2!^@ps_+~1FpDSUivTFzi{jLHh|M-1NhU6# zsx}@X9h!{0n~LHvFT7-c(J(|ZNCqqovKTU>J0SEe|GYcGFm5=TYDh9JcX1GID?R)# zkBs#sq?}zfU>)Ip-r+yk5cJO`q=CM#^JX*5cUN;&v4ZC#wMJmIFBmz+F;qVI!5>6{ z#1hbcTMXBH{QY5Cp={!rHSz8Ik+X{lEd+@$E21ipdT7QOs^IV%DF*NzVcg>%*k>$- zX2iFjmpT`9rD3+xsmd_0)c+mn;oc7Zu+yCI9LStKMZ!P&1ePs{^Ce37V4o36K;P4N zl0cb|I@*+4VSDZc${P)WK3hbD*0ljsm$K*IK9o$V!HY*}VPannkEfJm&xg6VKgHZT z5bR&5_Asb<)caAjTq>dZv-&I1?UZufVG56u70Yn`71H`vgBB&{1o(VO7dFl|TrPrv zWEFXMUiO88S*nnpU3G6+QcGQ6r|dSuN!qyW*w~?`8YwI&aH;3#{sLK7uG6uSRNV*; zL{T`m%jG*spo;6{T^4L4^6T_!NbF`6n+>-}hlmgAIm>gGSw!{VrI&x?u4Cd@zQ?O4 z75Y`A%8Gmt7eYd40KTr?z4*Xu>E3a|Q+v`wZbF0}JIWth2m?XPw#K`~Y>2Kfhn-~coo7wcySiMR_C;d5_)&+k>lmW;1D6imyUXf>;n<8P(*r*7NXF&q zC6H>i$jb<+3-O}?K991`m1T8o)wBDcxH*3MGX+y(G~#&lfOy&?6#!~?pZ-F;BUe1I zm(`(OefNUlqHnI2f!Vv}jqg~9Ce~$&0MX9*)WFBjOZ$$c^b_-qAcmK@9y=r}$_KPN z=@MqoiY7D$(cqi3hHfxEQQpoY%)K`2`gY*uGD%sdnT_xT3fX~^eLK16cz03awF(0oLafjZ#<*{Vg$w$KK1niy{1;~)t?Oo!ZIOD5Jt3beKS(rKCykmdt>G_sO}uVk_Ybi>yA5WgCn zEvT<`L~JSNh0WX>`&E5FU=?HU_YVoCa^iNrDUf~uQbRkLkQoG-0ZnR8#UvCxfX`Wm zaa^JN5H>5e)5rZ3{r%FMC}aQVQxHV+0seSEa>ojGw>%>Uk79;INUX8`icy2j%PsEN zrgLs*=wj|uUBM+W)NDC%2Kj0bB?6=8)5hl5*)B`gN7E-xM+$n_zB(f zVf)8B%q-qD*7{VpMz)#YWa6K7D^c|;439p3d_8evRCfGO^&!cj%@01oEPJjf6xG(qm; zjVErkse#3M7elwL?@BoKyE7j^Jmc>Z3yQCvr^sA%TS&}oJMSnY0xJdt^IQ~9(Ma%K zlBK|Uq2LxgLo#Ne*+?`>yeM3HzZG()BLh=Vo1r3g9Px&8N4F5&`6zPLnh!8Z{C?r8 zP9~<{C*5JRFQBp!GvM79s=bS}pegbdfZy?Wl?qqk|0pRI_cEC6E4&586<1)PZ9(BN zAYGRpNs3qq9($C>bPkCAc2{GJ!5i-9W;(Dq+E1wzp*&Dnr8l5}?!?l9hb){* zSN#l`zLlY-;Q>_WNPmeb+m6|7FyD@nL#Lxpo2oH+6{5NrJ|B<08+3l~?H3Lz7})Zn z`{NA0;3(@Gb_>p%$LOFV~tE%{e!?hZ-=7m&v=N0`g~)l79b(ic}v(O;(w zG;MXGUazom!RmD>8P>mSO5R7ahCnW%;7=G@x*DQa%P5EDMA8Xv>i)+o_mWoR=&|wJ z2u=#{aCI_XS)vK554Nu1eb;d_D5w(R?}|ii&2!$0VF+5#nd&qVMcsLpGoWDuKYAd7 z`uBRpjrjfIS?LX0(0%s+jzKh!;5}=lo`J5uXWScX2Al1Rytc_1u;PYO9$)+80xb%V z_6%vkFIs=phAUz*k<~TogTmOi4pC-2Uul44=GY3#AFc<~5=j<~xd^4NLf&~qVimh3 z*E3eGQqET=CGX$sL22}!`1Qz7cDL33n(^EJcJGAHDTpX_?e$BEar;H?T^u6=w`C1N3~LH6IuL0xM~*#n_K9!cP5 z*xAUp`UETy6g@J2!LwH3LSFFdmP^Qwwg;2b!)Gx9Ui>~ggGWERqip`(JEKh*T)>ik zJQi+I_AmLR-N;9A6twY5hXl-;7MtwA!4wV?UL<5B+r~B8tu{ z>yFB#Ok@_6{r%~s0D9H?)|=~Rj$(D|sb(JJ>Jukb)`WCNx?3-F{|Le9A<>}PGC5_jKNuJYuY7dK|cHn1Tj3J6U=74zlmzH;wt=eozQJ_soD zou-wSvEDQJY$$T@NA$)ybkwB8MhUtWWQMJpsOQi#)vk`n*R)7fTAzqMTj; z5Bm!3M*hG_Z2YqJX<7J2_Hd1ekl`yfeC=5_%VIkDSWdyI3u`R1ha$dKYPxda z#MvQdJhgQz!`{7Rg?!&=41a#Lv1!C5haVavG3|GO=9CUC(2}t=AO3B4VO+tfx?j%5 y0aAO*{pii}^)nx#?f?EffIyGdA*@`<`w)xqx8OliuB&g-of{r^9S57=YF_+*?DF%nM@{=WRh^l)L5U3eIq*na2-8z@B{!W zYBII464B4bFI_kQ;hL$T*`eX#;nv>1FO6-nMP*@G#g~(Fe*XTGSy3PSI^XQ!%VYPb z7ZNg4{;PWU;XnK6*R}24`L&HtKi6h_Z?Ep@bIq%`QdpT%*V_Mg(D>oYFP-$0Pu~=` zc3Z}0**?#0{Q2wb>!O?g)t$>Iamg(U{#0}PahiR~$If4Wo>crWjCf)GEaU#y1|?_Q zDT^k5#$VRncdLyzv&IRd$QQx}j{JwusJY!d8U1FD@BLFr?+)LJleTc*?Q@?T8pXNK znv#|;YJA~vSX^#XXMA<@4#$uK_*1dt7j*(3^6a-&b-B*2ZRwarvrc^H{Qh%$-!D}w zcUongz<%3q`cK<{@Vch9Cu#4D-LJj>RCX)=mCMa1x(t=o1A>fXRatc{|^O*JAeh zKhX5N5~NVw$a$6!VduK1vQH|Tma5@nJmT&0hv#4-|z+?vvof* zu_3@KO03sQ7J!QHb&E2Q06pESPfx3nOr_|{y_=;$Krn{L~L1Zeh z3(<~2`blKCgn`4BzziMnS!#IzcXt3g8smTiXj=rFj|{JTv2U!>U@4FnRnQ@bzAkXT_W zuweweN@?-(0Kznym^IHz-9rQX-|Ppi0LSD&3-NISSQv=2gBF%uNP=vK)~*A>Knu~? zc?G!FsoewmL`Z8wwDQr=cBKhc?7R?_^Q-IxUAl7WgzGqZxvtNQ!17>pPe{VqQRpzT$AAF-nC zS)kjfIMC`8pE&{#Gu-OxLMwk3rCkP$#z*TVfc#TTk%boyLOv5GYzB*HfH(TUijIaK zzlLL!)2S;`e*or^Yo9$uXG5Y3mBSm%5D<4j7It8Ov(ZkEbYpq~6{7ghhkB1Qo>;{Y z50ZEDK6oKPQV}uDJ$f>i!I+Oa+jy$vKaLFFqMZ6^xw(=8_fG{A1MM7M&-Vg_prUL) zRIhyF{W`YdvIVJC77Suu*)-=XmN5cE5XG{f_SB((3BVq!v$~UH#RaslHD(Ue@*#bm zF#M$tegj8 z-jqA<4oNNLJ%&LhIA(mUuMIl^xFx71epSA7>j2=}aZ#5^4x8t;Kw&YJg+5z(QP6@{ z%##L@dZIw%riN?Pd@&_JHc{R|+y1g3FBE!1wm?`cPZ>G`d?#l5$D9n=B&~jDaW}ar zb`S@%(DwUZbXac^fCZX!20Zg;P36G@Ojp%M%YHh35drW`pA39B=i6_(S__c7CP+1e zlf5yf{-V^?%mI-4gVh`Q({*&^+o|7PrtLpw_6H1@ z@Ex>8@RJDB=0HO27%Kpa=VA4xsW4F9#J*acc{Z{W&%-W=(Kb-SXI>6SGAS^@Q#hZp zX|B&SQcnl)KrT*v)h?2Nk)Qd(H1;5g*u@Ft^f7Qud2ZZqYV({KXx)xXG!aQA0)%A5 z3W9^504pN$BE-iK6)`vrYA0^#Up)pmA1yp;da83TI|;g6JwUwTrzA5~9c&OlOHbbV zto&9wd>bdm^8ndKl2CWVUw>8?K^vNLJ(w~!b_xB5*bmP2GVSANWrCH48MI6Fb+*r^ zm$T4@t;UndK=Ym^N|&gzSV_YQ(R4Jec*UGH3%SB{DSYTq;g91PlgFijQYeT$2o%gN z6$M<^Efsx448tA%TSUq`Lmb%KbHem2VtJLjR_PiFVYRKU)A|u;K@Y zbA;6-!~P&~#YLB$w~n8!a|Af7VyFJ?UfddshY&iJE;nmf-~qU3s$QvF8494ntZQL3 zrMQUt%IP87iP93~;co$g%(D_O4_>bWTQK|(%|GkM?Ky`!TYyi0e6)$u3FYDK2*#*c zzBF~OJAp{Hb2G1fba+r^iyI`sg9ojX$UdcqMgf;&54w(Rmrg}fm@KZ z!(l=F{>ZnT^#7T+>%9ZkpaZOU@IAN-xH<^ir#!SqJZ|+Ws>M7M0O+S2-v}uaw2)o! z*kK+=q?mvJ0k8>$`y)q?X1-#`hU^0vNh3(H<;;tTp()38gn=J$9WwtX7C%Kew!Y>e z1e&LAr(UmynJR!Hp=Nos9LpBOpJF6hx)=-X5HmW75+x3<*vn{)HbM?^%NPJ7PX=i#-92l7uEeV+TV{G`TL*JXZUAi4iB zpC+bsgBgQ3T=QvC23OyQQAtUiUPb`iKn5Ml_M04yywcXKtz{g|{T92R0wh}bvi^0e z^pfkX?cgVdG;mPswaCzxu{flkU65TMOX4Tfp?c%3-`WKjHc`W`=@EOC9_<7ur; z+GhwrbHK$+_I<5<#zo7=dI+b2LM5leA&LbpS5hn_mmvkXCo`>lP};c50!fMxbXE_j zCLi5`7-MK2T_$(EjaSk;9IWaIjkAjdOHSLpG(k)-@~Ww$Y3avc`JN z6N^$`Zw=Km10`m|K8F7=nz!)z?M~FR;XutAvrS2i;x%g|q#XF~{g=WLkVbFX04BO$ z!&9Y@X+JrewW`Wyx)sqs=X@z{4T+`O2H1YR?Z7mmzy}l)DtrQp(PcN7H_%y~*Cb2A z414iXw674*BR9Z37fGIBxhk&HQ#5KNRYSxm7ng=QvQ%i9O zCvE&G%R4biWfB6E+EG#0#*UCEz5UAlj0ZKUO4kN!BYfQe6HGX)r$&vD6DgKp$Bia%evn1Io~2CVVev z0=gnv_k)^Fvr3?r)g5nFq!Y1;U28mX&xt^(V#3Fe3Z?1RJG8bTztrZPi#P@}>l7DD z45O%rM9i9MfR$CGT|e?Vddf3B(f#E)+p0wXyf$QHqdq|PwDR0ohGxWe9iqo7^W>3h zo5;M!6iCFny-3BwRF=S=t>WWKTN4oNwn6DXs_hAljx1b#6Y5?}_N${4sq z8;OL!^i_Uv+n-jV?;kE&l*jPqDaCUQ_ZnBqPRk;1%;UUk*Y{o zk-O6n-nv|LP938QlJ`soR4M=-eP+XTzmifDiwz(PuPTOD_1?#V3Px78AC`Ljfrw`7 z10yO!9!)mo2MbY{|B}}HHfit{lO`{~1Uv1m`OxU8bm5$Ux2KBi+3vmRMh}$%*P)Hu>{O)Ou8YEL8@Z+m8 zZ4b}OvsOhSVbDad8vnZ4d*~Ka0YvJtb-a`3(gPX5S$>-^-VQ0!r;)D#L8gOcn`ad` zbkP(yC@itcuvb%jRlx@Nm|s@=9nH3$_U_J3T`jG)&d$#6-Qk);yL4EPGwHW;O5j6Dk51RT$%pc}B=mI>S#Q>zy-uwlqxq<)2}= z4lJyOP9~*E1udEvB;cul(a+19>KLo`)O#&3!WzRFcN?3ppo{Z)2WGKn@=d~-fE?Ym z`9T>*jzrp^nIRf^u>*4}PoHbtyXGCxF7>I+?yf4>p({w}x@#G3@?-BOt%RAhnPJcP z7ZO6XPL)3}yxyP$+9Y2Vtc(u|h8mi1R~L{bHmg9FvKP_ADe8}>$4u>@V5v#t_qm<6 zgrG!4G4Qka!%RCKTTy8o?rxm5P&yM!GPPtb)`A8?L+m)CRII-VCLG6ONewy79tJQ$ zEoP%7>+AEN59XI8uFO4_LF0fQTI{bwT~11X8a^2e0zeIE5((u$A@^4&AI%%j@pxBuT5mHE{^ z6GpF3@x+(G8&ds&olXwd_=j3R2)VwXIUoXE_eA*}@ZMml`Vk{BQdcfBdX!J>6-X9S z7UgM-OZb|Rr)y*k@nVjpD^xL|%A9krfh>O{FoFY5@T=^s5vBQNDND(Yl(XH>KBDpH zJOS#fM6oVoFRj~;?L!xTt}&KlJRhVcfB9SvZ`VoPtqCm7-1?Jml0yCF$GV5}EIF7W z`)@c}N%O4Foa8MxEuDgX=Mj7JoqXqH4cNtxTQtYO|L8 z&TOP#r~R$US!p4$6-VR$I~wqTgX+XH;f7H-JkC1mMqbyte%<-u^Rqm>@Mp@JjRz|^ zX21@QPZF;L;@}aj4y!Sqwx^)&espdLi(fRdKpRyZtWJTJ{0sJPh>Bv)n-`2SMg;ef zwBkQ%HL!F1I`e)P(ETSdie~M$I?B-WRh>ZGmkluL<3N(ML*UcRRJFj#N7-aa83Q6D z-a25IIU;PwR2-MMScn4^>EQ#aXAj4=wyNf3HL86f5b(_?6ms+LpCqhCuPnP;{(X z5^nX!eDRC1Z?oxwY@}}BL3K#Y8C_&JDHxG_{>2B~(geR`%fSyA^)=hyF=X6s6cA|_ zw0kIl-oe0n@0UFR2;}{2l)xw@M`%EX08DG^K;RjC)E~UY3`S%Ww|TorB<~3j%$mIz z6|xm_Nq7+g%ibLb-`b=qUY9QqrX-YcfyrZaA`T7TKF-y+c?+azZS2lgZ(!w+u~tJU zY`jXC9;kLnR2Y;Oeeu5gCFZ*@jBP+mtJ!NA4tQthsYQ(6_nqVZF?iNOM={E&G61<6 ztdp99uJPjH@hPp^cdUOJzb25#aN+ztsPYP07A0ci^N9+(O>uWsh6#DbE8RnlJ7eva_QhVg~wddY+0sUi0S0W%x4qbPa$IU=5d?QiL%0~i7LrM zK&|8a%Bn-TWpBLk(pYz=U+PKg9wiF+NwWXAFZ{9beYnG6O@VanzhA?X5Xf{Rf{+Dt z1h$1lk&wG$xV^ktiJ-E7aKL@3{%3E{YY99Cxha}ED$--VD^Jf$mF_92i}Q2yC!)YP z>!H`)RXs$J@^E7rfz%>Vxf1P?L6Wr6xC8S1l?76T(DUtl+da|irZI=*{_sF=36cR` z*jd=la`l*sf)gpb{octSM)#nZ`=`i(Q)sJ_#D!+Z0(}U483noh-nyZ?U76^!2l?Ku z6Jn}7%Szd$^izgj@K^u*1IOI7K`Rp51)}Y-EOaCf0u~6DTmZ_X7!W=PN%!~ ztWGp{`W;obomIqe89w%=aN+XgotAJ`N8ow;9WR$a9ufTf+*W}LruM=#W$~0l9g)`EMQeyV2ny5SXR1biQiB8 z9d$l6uWk{{0z5;mqizb1O0sCRpO9bP0vm1rBqJ09{P(1mKsw(&DWX=y&C_7UzQo`F zXd}iKlSGnI4r$#f(X+GEFK+Ln$6$+Wg`LT0^))b{_<8jYmR|t z6AWFqn+J05F0bRTBE|%rb_%o_VU+TXX@J@G{fGd;AR%_m+c#@5@ot%PL3V8`p_gvH*mak&jzRIs@^g`sn{4BhF;2-W($XW8NV^!%8t6&>7z2%m?(Q6|KA+p20bP9BP z#8NfIB+HH_1jri%H&ikh!f2nHln+=dyw&>IJSo2#^L^5%_=P#!`HsTfM9ypIS@foz z^|!NcUo)qQVVc-j>D`mLdgTe{aEouhJqcj2HR@I8T}uhcQ3=k*jGzDYqr__4j1`8Wlkyc*)u}E&YXx{(qV!FA@CG{@{oNGG{_$g!f z?ZN}o99%J-#*@q;;`9$_P2U@>o465l9Yk$_9eLRG2 z==2dD0Iq-w^46=@03mxxlBLI`+>1*Mhm5Oon+&+fT|bDdxGL?#_uB)7n4{ z#L~ZIYRwNS8c9~0s9X&gdB?9we*$zsw0$0b{gr0)o|H^v(daMOuYw*%`d3@OTC7lA z5KAKoS$B@92e7f?AH3>G^a6WU6v?&{=6M2%gS+(h@$kchH0_bgc>~Zv?>Qsdhla?3 zj!kKSZ0K2I>-NNWZ;t3xKs?YC+E|BOc0+Dm8}yd~OY0O(_bOT8DynydylOHO<96>;ePbaih!24#C*PM8vw+yjP@;f^IbkNwA>WN zE>3n?s1R6TzQqNk-EJw4Bj=ixa`TFII|uAQX2jiy8Qw>NGe*MGTy{YNk6Hmk1;Yhr z+m|?@>GLIY#M$o?v-FufJ`&awCzozCw%a}8M|zYP{vZ_S5qiAMoO;eMdc1{sCX7z;oQ(Uyo(J@n%=q*|6h0_lm3 zej{n)KxecU^(SaN*uqVF?D71}qerY+SlA5@RgJ5@Apn3=Fpd2LbQ5s9Mg?z38xOhGhW5*LU`cV1X8b>T7IdpntL_@Pd_)A?ncIfCEL$ z^dR-o`_4oM&ha#X;XFj^A}SqD5$kF%rj@H^rwX^2^dS1b^L zNJP00cJh8unZ>f70GWp(2{hS+<|1SV6%&x`UsLL6DdGXDE#Jgm6m5xZzJ~~sbM5SA zf^26mCqR;s{;^vLrNr`+KXyl~{~j$t^6PN|U1=~JcEwOs7v(4MfQTnZLbxdDhD4Ch z<6Mv}XF-blBU)dQuDFKMww-4mqcoBZLNDUMhocMY2l8kh3r%;92(RYAYNYHm0rD@} z3>$o62Wp!VU3t+4;I||!?m>degKJ_C6$rn2QSxmbw7L+{9YpE*b&BG4go1c6n$$t0 zQcyB!FI+T7Pa`6IekBjhy3|(Iq6!uFb&gTts^N+ix2UpdZ zlc9||{joXZTpBwoi0yK*8P(86@h$2RHfkDFn_(E4jk=up8V$y2xOa~3(U!x2O4~+t zduW}CI(OpTdTYPT0g{~{lneXSi6pol=6G=hqr*Q`zpxJeX zq&-_F;HahR^6IxbB)x6n&YdBrr-h}?qD)`P=(X|o-E1gp{1Loc|4%D#@!pqJ5kb%* zH3V0$PkQCSN?nfXUPAQX{U61I+TVtv-x1^Ji0dH=i7yYn{;15J`Xw&ypXypN@8MOUggWfO8u zyMj%2qwEgaS$zFAmVBf$E@}_BRAHGcpwuz8+vtB`Uq&Qe0V=6Y=NuZtV60PV&%ZHK z!idl|^gs^n@$Wnu`3!AjBCY#FxA!wfFJia7ccV|EE21C6H&EtxBzcGcjlyKN`F2hcLc)7wIMfRc+4 zZAqHh1o(f)@NNg62!c5v#_krSJ6pZ1TO;7W5O z_OukPK2>e8s~G)Ig{wgHVsR@5-omZ|_eSEGNVu?Kr;4Q4hfPQcw3d55+s=i=CS4=q zQ0BUO*Fl!_dV+>jT(%U{?a_mEUbs!mjBf_qU#v1O=(|12C=9qNwpu$Oj}>jl_0ti4 z6sJ42U4z(wypzW*Z)%Zo0eZ%Vi)u)xL%#dl4o(_!^HSf^|NY9)9;xAb+jt`FeBN=LU;OJ`MH(56q3?b5t6jw`MR3hK8(QO1 z#&DJw=M{F!R7HLDrE~gkTl~KCBcae&RE|KR2+Nd?%S_bw#WQ}5=Wwt>k(RY`L3;0x z6~(n-S>!rD^(=Jra+3NXt|*+I+CJJcDOc33*Qh9j{6EZRBBp3*K>362YOSYmR{Kb7 zy6Z-6i17TJ>E*;Y(%dC3sqx)z*&`nXNZBTogX_9W(q|{#lS}9Po&aqF{q(o)62^mL zMTK2o<33azLPiDeosQC0IL#Jx<&p!n_Tn?3?`ZM-F;@_F&#Y$dGQY!xI24jHz*l() z<|0I^(X+ean#3TZ?`!wKzI{>OY-?r9vllJ68x%L7VB$)SazPlu6*^PzKX0k{ayAa= zqa6!UELZR5Vv3QfP1pa^MO*kZ<}mggMy8_LNQXtii4 zT8LlvXXwR#Ju5-{VEJ#~QGrXd(f(^I?(Q2PpQKgHnQbf8U_QLegYMIdxq__TANfyt zRJ%4|xB>p98t!oslsZJ*5`eO`bK$TkJ>@zct$GW^*$wdE;$ODzydDMjRCC#&e2UlU zr$*?>mwXec_mA)03Jt`rdWW&`dH?QH7dJroIlf*iQvAp+4}J&htsrugzxU^6x?kGW zNF=;emi)0pw7ztxc0fY<7t7pBG7S)<6mVkzIy7~i-OtuE3-rZf zY7H6vm%9FFE;%br3mOq%3k3hp3($PL-JpmBhhb?cs&}Zuf5pz3A4IUf!!o7K%REd= zj6LgTN}{F(ucaDF&^F6@963p(vEm9;>)ol(fqEyKStUeI@}^>}D(P%5ssw({10=Baj|*qR8+%(2U~aO#HJ$xw2r21Z49tEzMT{?0KnM zJQjWgpr$(9(4oEKM^|lvq~ZjZ`npD@f3Z>TOrYz#k!oE~dr}TRFZPp-QU_M7&@YFZ z-;hJ;JE%33tXP(Mvu5GE0gBtNgUXU8{m}YQ4b;_E+~KFG-o3B^WwA%bP9|z#xd=he zI)Y?`K;Xw#P$9OppG@3^iEly41S*S%&)T=gvbe@xtVSGMFvIrEMW%IC)A$76sR$qR?`BB!3d z)&?tfNP7seO%g~K;oC->3fNeIKzl8Nr#Fd01_^iGTkpq@La`WSV`TmDHjPys6uKIl zs+7U2n*>4pi#m<}D8!*ABENEPNJ6`aGz!8ob@kS!bMXQR=Qo7vCN8){!W)l5I%**{ zy3t?OH=B9ZYG}|GTm8?$LyQJt6jXWXKLzo81=e zt(_hSkj)FnF(1naMu7qL~fb|YwnROB2<7uKt!ebAhO|X`6(4nF8?##CsZ>` z9a$8TRZ9r~Iha7J+(C3h2q_XygASR0?rlc(cb(e^imu8Cs@s^4e&;PAr4^$Y^O$-{ zjgyc+R}}6wv)l5@`nYv6GxeGa^7dHacge4+xd7w{4N;k?cRORg=>?#3K;kmcAz8YI znS^#^l{vmI)$@rx3ut=Y`t(OMKjP@6lPoCiKu=-DI-8i_t7yl7wVwu&m8>qNj!NBF z{f^k70x}_ry2)XL`MeXy#0_I&)=4>NXd`6&ZAZ_sp$nI=#0C+X#uWlsegv0*_e2z7 z;4lF5;Nu7nSErVCtG{t#0)d&zY=d9v?k%&jc)cAi?7*64`_Kuo`=BJj@(5~8Nh)Gy zbAAJ;*|*UEKImAZE0V7l|152<_OgguG*H8C8bGs7$o=OXt^{1tO%ZFFuSDU`V`@Y# z;%RmUa?_3Cp9Ci+R}`^@qL0mZ^j-rK4FLJ!SF8(+67IiKx+C4g7H0Yzndw!PUw3|2 zY=3p@h(`^jJn-A8_Y1#kT$_GVcjU_JMC7w=KFD=p^Rv#l8#SADWduv4&q|0InB2*`#Ni;r={3W$ZHG7B#tfqz6kE@p6AA6-_aq%4jmA zF}m_QQmZ)QCWdtLH*E+KH26fw_nbuVLPjg91X_aCt*rFa%7SzZkf&(8ZHEXZ(kz%3 zstGZdlwl?uas!xD{HN!<0gtc7rT$33r@J>7-gkHn|0zq)!QgTdVZ=!S#=f3iS)KcO zP(%~*JM6(qgP>A4ug3zEj~C0%9&<(phH3l;H_+~X48VV&3MP&o4hg{H-ZJ48hvAgR zJ^><%r&bTjnWtu!Jqp@*48xUZ`|B`zPJWUq8S=aA;jg9t-SfNo*)d$|s?>RL_;maH zqDr_F)R^x$vaPos);3m89T(Asn2S4L=8a;oXbH;J>~BOXESpEH3B?to&vP~y#q{^z zVJ)E^bU~SNe}urd5|%bGR9lHJIY&y;&!T=xpRWXDR($zOAmA+o+Oa1|pLkqCVd_Qee z;>Joh1&{QXpz`YSbVjBoCx!}Hl|Bl9q-BA>ed}!OCj1M~4jN$6<^}#IT4z&baXpM| zgHcbPcTCP4ZnjGFI_BgX{dovgNsv8kY+(Y>x={E8g-^e8kiW!PMWA|~ zJ)X(;Vd7QQ*Tdbpg{d4Oz@6W87><}rCbk;Yssi$)WD&mY=0b^0VF8;^(E>bnCEq{ ze{rKKjq1VBH=KLlR{yWzzc10SeM^}fKK*<g2|hNmpbFG{K;<~ko`Cp6 zK!zc|;{aIIWs|7RcCerfG2%L~x9T1G^s<2kbl1dmAZ6tk99t2lmo$h%%!N&m@ynLr z@vRp}k(4eG9Z)n&8}3}n?s}Q;dDsQSX5W>xMHB>Rdb2=k`k9%=EY9~5 z*rg6Deh5KDdRtiVm*M&l=W{l(?glqT8+}M52RxW$r8Ew!pGFsAMU}Y5ZZfMK-CYPrOI|ZNLhgmHCzM!kYOMDZ2KCPE90+pS<^+eSR&IN0o*jh_f9w(wHDhFK9I)9vb z#ldbs6q`aJ8NB*&^HHv;7($SB>$Ai7N;Enfx34gfpCUm^?Oycj*vFYb#0U8h=`sIl zLb6|pph@dZRBaR^stR4(FR^4hUm19kv|ecFcf-CT&9aA^vKru9e{oex`6G&tQ#dEK zVwByTp@TaijpB0lhg)9!6_d4Sm)w`SWC}HMycJs?&Vz| z14#ts)Ky8dgusu-lWP9Njrxga&445~>Yr~6S$*SWVxl!rDv@(V321{cB1rR0DPbM9 z_jWID1=_X()e}es6wUg%{`dts{u)^0HWO^0d;h|EWxudK z(k_ZNxMrS1U^rp{|HSt}V{9#FU&Pxs*)0GI{2mYHZ0g3*{OwOSA@s2lGN5?g7gfXy zsnNIKBbZ0}o=-imjj@oEV~f2ro~W>}3J*xz&E!`?pDrCt0C;JODW;x`Cj?Ce?qSrk zP(`Smuab=2*(Ub5=fq(LIfYQ2~{>FaZR-m?oqpW>k_m@LDY)d-NV>dca*6 zUCV?@V;`Wvn1DA^b`26asI%r+a817uh)VEcA_Mi9t$2-$wUhf z7e+n+ot+xZeX6pLKylFCh>`Heu^ab*;yF)jLiXveF93(^u$jjFzUkbTT1s6tx&K4= z-jGWSB+dKhgM)8ae&?2k@JV)Qb+i8Y_Xt;NjuRrnhv~t_rRIDciB={&62~Zx-*jm9 z>W=jqrz4S)0)SD;QnB<@SS_OFa>}|xH$`xCtTx+SHHw9@Af%fwG97rWxWHBu{&*ZTc zJpAA9`H|c-LH!~~OSP0;|6c^*^esDlPchB721nhudcc9!Q6!DM6q zb+6fK@9QEqK)w^j=e9cjyKWD}p;$Rt*p*z;^gWcUoWlld$bA)SD2cd*Dv%?~n5Dt{ zJM)Z+`VJp+tRdGG;V!&D4Cty1CC6RSE6~FS>PhgeyLm{H>%^B6^E@EKgy*31kLqD= zGBD!N4uA^*V$<_y04Es6`>}gGPiDbWXJblC5ckiFrJTfl*Fie&7c9%8?0_SqtY`I= z1|P{&T-R)Ki78*(2`Vo;;TlQwwMCi6_ozOdBa(7&UpgP$_Koex{;!+mQx+R_kM|lJ z=l#r_Gf-<6J-h6G$J!@EEhkEqDgU$uktP(FdFl>&P*4Q2Em0^jB+4-x`9H|HeCmGQ z5c3I7TwZ;=f5?&*M@k=(@$R#FF#jvZ+k-sAwbEdsNZ5h%<{|IEu)U|y=oK|R9AhPJmjicFg1xlXl@E{YU&JKLS zB3?5tqSRNV070vX1FRlBKDs3AzV8GBX-1E<8D4V9CZRA*n(FLnF7%HkhH+pYvvTUJ z*C106`X3!0WMOEQuAMHAJNcg_>&EK{Pb4lO^#{wq)A^D3xRK~Nd1dd>9Z9bkWyJN2 zOPXt^`r_U$Uj5ad?X&@L`sZ5tg8)ylks)_trsmdrzs?TvP25~9T>{vJ-R))WdQh|U zWioGiCa?aT@|*u!LII5M#5rk-!P@bi;*qkF2~3$5FHn&00>L{f56jz{^lN6>XXLue zrX~dX)UsBQrSLjF{HV7hd11=#{sB}yE71_~N1Af-Yq~H@BACQI^_aK7P^pwM^r6o# zjhvBmE`ml`-v9?brwh0>P3P@B+~^^%J#e%pQ<0Blv-4y0v1*9hyzdh%tRa7}%u|qN zJh&KI-C+?VDumS9T4WJ!cVCihkSo*aIp}74=Ku+4YI!1*)^jIHw=X>!@T?Ttemn+o zUHz$Xk0i}ek9{(^B=D$P^4-sn;aRS@<$acnO@#U8%+K|AdWI~biLYPu-QYS`E+o&K z!p_rXa@|jqcZ8){!_3+^Bdqy-Jsu+E>rpCei|1&E+s8FzUd5gIm33h zy_}((@L8V+PI>AWnu#(57s47VSnTRPkW z#wELsw`K}1+Vx+Ov%OSWX{D#Sl*2e?Lqd$#FzRUe15sGxkSq z1(Rkk)>k{4Y_TZ|q}jrcE-iie+9gLPq1^Fo-x*3q`& z&_i&9;mFz)*s&%^lwLhl>ddGD@{-)>t_`c{1Q<#+~@iOzFGY+aM;0M098WLtVB0I;7We9 zQHAcF;YfB(fbU;EW%d@nyQ#v-v9mZG`Rp6dEDl9KUicj7-Dj`XrS}M#$fj*wTyWuB z>1tAV%9i81b|;8=x@+klQnmTQ0|z~IMU@=;_C2z{d-%_2nfCQv&c@G{kE4IwIxTR> zGhoxRl;|}lUb{+19Z$2ErryxH-Y3iOz~!y{#+260)2n4jBmKYoTM&*PHjC}NaI$E9 O{?S9m2Qv>)uKhn@J`S(#O?B9$^^9=nE&8A6ESG|wm%MY@%cd5lPIMG6^8 znZk_>Wz3xE{lwB2xz|5&a0i|A7M#&YK^$G8!EnZSU)U|Fz>`W$l&x*TK(^_Wb~g0(`b?I;a!FfvO2aoL&*;7QeGv=a-BGtU8aS!>U0~O<^~|T)rxyAYz3c4% zrDhjM`_#l|;M7C^=@fahsjcH)Mxklo`Jy+qms2wRF5T02j|fOi*Ki6p^gbIBn|dMn z#hr}ex1ZZ&%)H&tB|I&8)6&_;U@)vsU8N8Go}8X#tSvLvmYx<@Fjf~B%YPaF{~m)P8@-V9guz&2ERDCcw=SlX*dR6NJt^14^-2K zbKB|T^NV*reG7Zt(E58KhSv0JdhTlNm+tYuH(!66UtY0I&fgnzPo5HK7M~{P9Bz0% zY0v3+t&`V$3g0QZpRrBO(+Ie{JM#Aaiw}4DT~zZvxBpTyCB6K>)kiv^H2a@ z-|iUV{;ZTa>`^FyLH0pI1FMLxv9}n8R1}Y2%b#E+pwj>0AKrO^xXuV98SVSct^d#e zI{q)8|E=);uYCTu;<5h!O+K&6elfcW;ZK=GSo^=N=D$p6Zc^VctJ0rh{o}UBx>^7K z{4u`GmA?G>;(N3rki&XrlLoFF{{|4>sjc)k`3M2XHqOZdmsaI~y!Y&l>cdR%G2QR) z<;?)nI|KfHpWp&GYCo*)ssLo+I__a14E<^}IdDMy-m)4W6AX4F4Mh|Y0bdr9IQhvI zgFQWkbsD7rFFr8D2?Uy0N%;vmpluVm!VN%KRYBYERWujck6Js8kRzJ{xqm@f?NZfF^6H8$i3H9#t)!s zFvf)dBT9^&fEWFnWJmSYYGjCKEPnuyAF9^J(YBBI@?Vz_cAz?~EhAGh-6sg3UABGW z6sqc7dn|zD!MKkDy(ab5NfImU-aI3;0FY%jBZAy^ zxIqqD2qf?dYuKm!74yK9dgGG)nQ~YGH^p1M#4>A zDP7}|L~dMsCm*zwt8I(ohba~n{1#w1lcW?Gg8aWKT;q|10`NdDljq;?dx!uJ=bQe` z6To33i~s=#nrkzvI|ftC0E!@5DgZ6tIPm;jz%TDkK&y-5bEjBj|5hAx`qkh zFjOJ|uu&Ay5ITOF&<_=hxcnS&n+^YN7vdYE!b6{txrr7nxE=M}@tL^!9pxKocWP~( zx9)6)eM){0o!CL>&qHOTH6gtC9*lsKsAf1&Afnv{Xb0kEw*w{Zy^?!3Ef{_YzSH_r8+R;+1R=xcZMw==yacxPtMQb?--^nEu||bG_U5S6P>W zf`74f2U05u5y#x^NRA}>j+;cJq1cES(tRwG1h5HbP`no2y8t*#!;N2wpVkZj#H7JQ zbg1l;1;7R2Qu(@n1JZzVZNiyMzoK=B{KpaWpg85EIM66B9Ut6CIk_2V=HDG3WgnKn zfEve6c{G}$u>mMT12%GB*#LA^eJ=$}m%Z362_sZOxksIjmloiWez{+KnjUDQUChEy z8`Nz$y^MiX_lf5LGjV8b>lN_ldDC&rNQraH-b%nLLDY{0ADo2EBxd~QO~=9&w+*bo ztnOPYKAj*h386ud*^3=zBH>(`c$NfY;n4DyHRw^D)7W;vt#?DoaH7+g9N_$@*k0yz zLU^jFS8U9Xhsgr`ji1kLj`~LVA;cT*StHDR*TQg>@pw~G(qT8hz%KbsP5-VZCoTtI z@vh&d&))o8K8(h@8__!bs5Wf3sqS|o2`8OZV1tu;dV@Cs9O5*>B$Ypim?DdI>5cVO z5y#zR$lP(4313WOVFisPo2?UP)`?hVA!u`WSR@WpxH!D2>9s{2uan_v4@!b;c4oy}8zS7F&-|uyV_)UTu2C+q>qzK=ppi;M@k`rx z5Tk@~($k0_Fju|@8so6nzX4|w+pV$@t|-r-LOKMbnuB*+z=R>f#?+)z>^q5&yrN>l@;f~f!6ZaEE3xP3}M)A4r3 z#w5V>c&{@7ADXv{fSQpBo=5WOd)# z4Bx}gF{FVW;~Xar{fS6oR$-0rS@6DEG;CX`h(6TZK$UH$9vM#w?X-DJh&~9kFb4d3 z{MXD<4GqIT&ddd)+4$p0UTC4Sn9erIz}M67Ihtu7goMx+;{9_EpN@^1pONaQN5?83)CzeJ$V~& zfg3+=TdQ~87p^7{$q8|{D{JR7A+1NTxJVK8DF)tLDP1O4tUerH_(IuAS zmpA3U6i2Tik$g)SvX6$O0^TF=N+q!M&)Ya0RKN34dgf-0;TWRpKGOkqQB17hegymO zY?NJhwD2&{0#0`Tt2+uATnKbq^~yrzeq|41v9H)wHIZ}ZJqWM&7dtlK7$s*rt-?D@ z1x=j6f!{Mi6vVo5kE2|ztAcseq=ab5#?Ebdptwx8k1I|H7v3Hp%zFBw%dYu3X6#&w&&&aAd# zK?xX$ap2uZ>jQD%ewLUqjMf$p8}upv5fL(HT&3o(=|-fVVg_kpSUu(yZJ+mUUzV>+ z`{$k$*+v}`M$9lazf1qp-@zr{#_EQ0|b z0XHO2kKL>fVomt>^ueml1LUMG5-H_x#4lcWs4@}8Ol#+a2$~V$N=(V8;ewt-PSE~o z3j=PaCAtQ9P+TYotEV=14I)>W#t-jXqR?b8C-*C3kLbBA6gV)XLS2jGU;Bwb zhh6_bNbtCJVd7>8Y6Kx=mY=@@b^zTQQ&qP4sbY%+=3KR6zVyuCK#gM}z~ZM~u|a80 zLyS+%mH1&7AJ1KZ+x_APe(`oPqHkV{zDIiDo%CBLIjQ@1loDfFi++&*u{6N!Hb`GC zSIQ)q(D(D>(Li$4K$ zS!f=DrynLG=cm%%6UeAy2Ha_bUe4NJgC;yF7)X_7 z72rP46Qo|YSj*T}zW*vxN9Ed47>@Dc8{^c_RIW=G{8-w@^##hFSFu;$@fHkuT5%@JS#PC1{lpG(h zhU^u$DC|*qg!Y)u#1MmFy~_k3I4Aud!^(~T@dChA`LsTS42Dej+m-4?Z;0oG%Z23; z0l@7#2tls7EUe_i&>?_)c^VVG(Eq0cBx&^+j;#FYH+)cqno})*qMho~bjgwoUtaT7 zkBiW>q89FaG3PeKO1^XJk$6&AH*5QDIc=bR+avF9{_?SFM3y~!Bjp{=HpwfOWo2(E z>ohW80&?I>CbTM5I!Y)e9r=95!5o8@b0Lo(CjYB+^V!q_7}+>Gq&1XXU8G4cBse9cB_)bLQR0bny@dH&BSGx!I9F zP@*GwFX7!sbCLNt43IV4#R^Jh82F^{f4JN=D+=*7jT>n1*JEWGFBzlMptOb^Pn+=V zHbH5NS+3^W^ycvOn z;dS<>i}U%}TV%=YrH;qG$o4fmPev}J{90+!fpUU*QrM3G{rKhc(e0;7eC6Ap z0YDIQ0mP`5$lTg3x|nslMC8Dog?a)|2UD}^=PJ&5uvP5-c3_R#T{g)W38IE80XPI4 zvu+6Y|5UeU*4ol%IQGr*kCy=6rMs=SXGo2XXlL=qDxzNgCf44RhKjLszULB=JQ_hD zV$IQkV24~MvHa%O#3M|xz7-j$#SnOB&94jjemh}?=&r(^F#18Y)a>h9k-;Wkm$GK+ zx!tep;C~&Zu`m~ih3?vZVL0;$53>7|Oa9iFZGCX2=023s;?^(!9AtcZ%p|=|_(%-I z4m=>_em7ii>e7Q~$wBtWtdrWvzfy@)BMmR-`&SNbc_c-C?ht$!i2U|=}R05 z<3oNcw6fcZ13vdywy!sc62=aEsrhwML_hTG>7#PYwDs`sb zWoU7etK_$Vr)=D5xoHK{MgODnV0_$tv+C59s!Dr*5%zbgV}6+%*`6owmAt`SPyTW@ zUiL{9r+uE1-`3olPrL=?eAc>toU-InzN6$QCB>HfrumEaWL(HlG7-f5G3~xFhCbi+ z4WNHnVH53MHhBYDG4`nOBf!-r$>w1V@sdhr&>o=V3n(vM;HG_&oryU)r2i&a`PB^n zdG!RNZU56|b@Iro`%fDe8I!9i$`7uY!AYA*Rvg(ouwKgBZhMr^uT(nW)$;GBS5Dtd zYSSZ7Q3_7>^27H86fsodW5hE!QdcI=WnC`44sD2NyOYd6E;Axv#z9B+NzEqi4*K-hJ^kG0H#K-?bD^a%UWeEkaB z6GiQi?zBE4P!dI7?j#6hzC9rD`Hfjs2Fs_-FVfv-gd{Z(*R0v@SD4TX1L=ln{Wq^) zH>N(9{BlQ@wyn%)J`!N;j#lmu;B1rRFSfF-I~w}u+9f}9vYmQuSh`>mscNJWN_d~d=3HBtTOjlv|RC11B=ERD#RLue~u*S(a& zhX*z+*~&5<>tRPp57-4(-{QdoeR*y?l8|Th-v{fJBbiKcr(ZbSOuKAh@1Y$wID!orDqr*q?4qUgwoL zRjbke+OE?tnpJhX0#{0iZ`vq`$bTSMGng zQ#g4+XO1v*JZx17M5Ey5j!py3FZ;vGfU<6k7DS+8o8E{I8XXT8g0~-h853R8=}(k7 zadUoGHq>PjqaI=*ciqt{`O**OOm+kUP$n^Y2{^n^<^@Fz1xxyn!xEH z#r=Jay@S9ED_VD@G@>f|9^bcXx~p%HYZ14#)BM)c$g2AV2m?YX;&q`1^RoPo)D>2d zds%krDgs;gw@D**B-#hQmRs|K84I>>-cv@veQh*AQ!`b3TS$l?H-aO8Kz=c_$AwV7 z$>e?AZslwth8H6iOK`JO@lVUn{OOf6B$1Ju%TWD>5C+M zPsMJ||0U7)>R8|K`0U|Cx3I}Vx`m^ph`FUTnzQ!H?CF(;P$v)BqP=LS*mkeML)^=2 z60`$~C#fk1<%@iDqDPs@i$X|h5oeD!rQA4~dv@gd;87jRxZ?{@j&ig0VC~LTwHEQT zXcvrAMY`_&s&@OBfrrexexBi^+t*I=liM3u$@`|2qHi9HdU*AuDQaQGZ|Ts_O>*E5 zgSTcLc=Bod!|#|fZj%H5%|dX{T>8VDg%ipUiawvIaB52JQI0ViE=tdG(c6vI`+(e) zy=p~Pl^UBC1i@ADxyGV6l10*4YcA)dZi4rX=fP7m`Y7xLFd_TOT&o@NON?|g;X1o! zV#x!G?|XZmzubTlgL&bu?!DVD?tOA;$3;I66V}!8#vOOG3*GIz@ZO4l>37+`SvdLZ zxbC)aW@GQW-4Xl40Y5^Hx!BcVbxHqtuF}t6Gy3aZo3<5vesy&StU39ZNQx&p_1JG& ze|46QO}~Yj34M#znD@6w{HSA4zj95!`RXxZx$Pti?EioJEzWKsS1Fw7c){?(hyN%F zuColsuN1Y-XyVSfNt6~UwLzP2v^J;agt5)SID z9%J7FO(00E_Y^(DJ(&|($r5Dim&|Xb{OzDH8&U{uj$9gZzvpatVnB{H+434|#Nq;wd!PJxHtxdW7ZCX(_f)30xN^UCOW%2Imy0t8T<%4T z2)xr;=iG3Kx)b*PzVctTo2$-AvVhOVHwCsIctVxj>R7V8s3hVj8<^NaJY7tAVk zh82|cc7|heUvw93VM>r2WFk2ynDDrdQs|wT%`IT0ztIbaB#afpy$Q@TPU=&L-x`N3 z#%A&njEwLrPuR%`>xjcnT<3TC8Rj$;axkzqKIrZElkoV-I@qS4$Ng3HJpi++#~Q-;>z6^mJwFK&p$d}e(1uHU-p_{ zo}NMfvwK6=M>+~YPti_wn6g4FfH{lPwMlhvF_cNOQ}%TEVDvV?79Ttr&R(vIvELSTm{??XvynZj_g3Mj^PICKtrB zT53-qP*e8pR|ex|Llk&hr`(alL^mwtg!}=TB<(|$(jnM@4Ba-$21eJ|ZUr%2nBooU zUV3t*$$r$B1)`>8PE~bzj3g|QSnHD_@BvDGE(I`cJFO}Vi@BmW5$;lfm_+0cUkR)`hv9`1f^G1iSm*29sC_MgK zwLbd10$et}i+m6vlhTQ;XjvdMeH$V3=RY;VFA_ICU9U*^(KWVd8xBF4r=X?j;22t{ z-rshAfZk=yAqjlfAk}}6HC})WS&I*PDoZZ3XCUux&ly(&8aH*53=M<` zd}$;h*oQ}k0*3mxZ2_`ai%L{@;zL!Ti>{&Hsk}z)n^@K9@;?|^e6PKI;#*9r7gGFp z%_P)pkc2PJx^etuu+xi0|F2#H8^9!Y6BY@qmj6#gS{6>i)6alnL4zO6vxZ3|@zfa3&HUx=|J}Y(Dj;wH$S< zoY*a_g=X28tDh=@!_=`p%NSi=9BD%mknlxT)d%S3=T@8z!F`zKeFF4vr4<5R!df5z zs!pUSbl7N!S5GiOni2jAaD)GPMihh_Yq7o~!(~09xX|8rCcF|q-mNAE6Q0xvd#}Dx z%Zr)ZML44=1C(yz_6#&Y*X5B$1SC7_bkSM4!7B7do;F%RBbQb%#(|o*EY$On9pPpr zhFU`;P_O2s@t~7VPD))Sq9vx6^D#-n2$&3#pd^Ox<9gdhbM$WWm^@%KTQX`DUAUUC z9X%Wb^dN-E0Y=xltbGm1?*#EE5O5wG6>kC`4ipju0;6=T*`1V5r|!5gC$nd>lEeWi7dgsa3BdX!2g+SmRWgM&%6R zF*tU5`-~Let@ZeKWMfPS0T`47d3fzdX+Wxs9uHd8cS9$dkPeq%4(K5`pz{)!BnrUk z08sj)c)JAJpe&L|ZG(Ypy*O318}N4txDBB28`*rw^l6yx#eh?gbcPvPzV|b6!-tuV ze_YVH^$DUT5g;+x!yjq%=Ogyrd_c}UNI~cQQ%rKGWgag9jBM|<)`(b-5crVj)o_6! zfXfQRJ;e1h-h?j{z6-AEYhO9DS~#AX=MZ^%t~rK$6WCL6A!^H=5Szb;dr4X2;Ed+4 zNBf6BD?2y7Fjk;C0}0H3bK_{Ev4Rw`WRS4Z%K|M*uqOa@>JPblsxcejVGm)?kUzr4 z36l9l@D_w{BpnX?%zqrlj$jz|7^H2N1jQ-mT@aRzLyHO=MzyYxL?Dp!A)q=pGUAcv!0XKP@;icn*F53B$ z14&p2s|k0172~YX?cA^9)auz@jfyM|?^AiLE_X7~1j{UM&8IMO2n5>LCUOkBIX^cn znLzPwnJn}s%c@LazC-}u2<8fQ%1P$Kj2Os2+|&N_*BTHkWJ4z=PsXqwX*HYY#5l}3qtMCS7VSZ{m#>U*Iv;#!f8+rGhmjWdHf z151q|e(XV|6)e>+4uPZU+TRW-UlWyFai8oxD$MCFiLY%v&z$r0MXsP#rrW4E`+O_9 zS67Zz3p85NQ~W(V3FhI6xw|eR(ze{9d;T9W0=Zg@zGOy0v&f8W^wivfFa~Rh&PL5& zfKh!@dvf-nIrs(?Kgx(FlJJMgCx&I#TZS~2?JpxPR*FSW&aQK*b=RB~TPJ3!9P{2B zjDxvqb8PQA@!F)0X_yF)ZYHUVO|Jo^O`T&us&uYbXSo?la2t5XQA_(EVJo0 zpcgoY&21tIZbSWA08LQTjyi3^JI@VVaMKn*UQ}(k+y{ znMhBpsyyf;iN96dWk(VTe<=T4e$B6HpFv_IgZOG<>!a<(>}ON`UY}uu9%FpYgj|Ol zn%wA#No6i=5x~Do(UxSWXbS}0wVq$t%%aE)R3R)Z5Moj6!;`mTIqLepCKjOdxeIhv zkwSTd!1E^PE#266f4xKM5rN2mw^$K)NBO{7;7<(tU+one(PmGtXxdwsh$|C_G<7X| z?_rItPUtehW+_^1@7AranMgQWZ*fZ@b`?3*&*1_Nnt*6z|9#xsz>G{BP1=5>6AS^8 z+#X%J|8fhexyeH@s}u^+0eEjB;1C&WaRUR>-hBcOyDqb$0Czv`FM`Ve-27L+w~raY zDwF7r&wVJYhx-`kvgV64>c23#D=`)}Rc1d5VTJ;S z=Q1OiTi&n(C|EmQHx+gZkwTV^aM)*CP`nwMyspOmv}eqns6E@mN7pCm5lTMxUg~_v zfZ0?g#R@3d@-&bb&N9mR`C?Y zH~n+>3$|@2SahN7Yqt_;(h`#(0_?>#$L!yqb@?;3pqVO_ zcJd-`LyG9V!DaVmQ~5}hQP%t`RV|tO_n3a#ELO1ksP8qDScfY z==Kw(q)KKY(|yb%`c?J`_HU1ap-vLkxmTO&Ql4nyU8iqY&pYoILF_M=)l~h)jk;jE z*G+?S4MVKnOj;QKlbiYU>=>i>?=%Y%C+FX^fiv;1LVLH)?Lu8n5IARY22KQc2-y4F z-ZdDr{w8lj)0QhoS5_7f&W!Rq)gL!vLlqJfb`9&Vk84!*$IkJAO|RW+Qxx{`((!XU zXhtm9&cMHi&}_Gs=DxEy^~r#CY^=w^)KQI_sl}M%`i@Oc*?Er|JTbg`w1c?m%)2$g zHjUTA*RK5v(frxExU?j%@Z&JhdFY~#d5#H^epGo}8Yh8uYB1|^(vxzYseojeR9R>t z?rN@1np`PgbLct@=D&8Z{1xTMNe@fT>2KDD`V+z2afLNT3%2*s)}95yrK>XEw^cPT zIFT>L^0=_sX!e52=70b5I3s!^<&-`HWox28thol%?(5`gGtdQ$AghTGp=G;~sNpl0 zyl`}s!FT<+jq!BDmj)7SMWJxr(Z0yOyi5W!nMAGkQY?MrJ;G23)xvOA+Tr}dj-_96 z!UBEh&=E`eE#>K*L+tRMfr)MF&kEPK;cMCVs(BI9#@TJcDW}$4---d^s*(Dv)~63} zz4e0>-yi!Qvr!h}`Ck)J-a&mg=^e5*r=@^yUzBwHvfJ~tHR~sV`Z0ij?^n@D@-F@J zC}#?VG;_h~`ca2L>+}If1%#3I40`81>x^sSC!?^&DypG%<@#oUXpVwUB?JT-RSkOw zJaZ$AR6+qdCFktYBg`M6AN_)I}FVK?6^`Kx6cf;9w0uM*itjP zf26s=&{arG+T?1bw3d>L{8p=y_;9lC{j)FMgtni^D*r3yIIm;&_xD0$gsYqIu|0Du zIc^C0JY+_oOg|=07M({%#S8MMbIYO0{ylPyJ8|1Z@lvJ&GqgdPKv@+IanR$f4!v0Qt>!U2{Q-4Qoo{g4Y2&x#;yy=jFb;u>ad566n{Al?kZ8nw^D z9x~K1C;lVUqfangA9Ips=a8&aMFf}j1z5HTRaE6rkYQ4y{eAjT zwIQ>}59qdJ!K?D`MX?}XgdNeDo;D5-k4+jAaW(Pa!*Ne8JmQn`4-$!{M>b){^?Nwz>*vW4 zeff6I*bjA>;-)Xh7TzHQaiTbSenNTM6CqZb_v2v;VHsBT_ECwba*>wR$vS??_>U!p z!#VvXT@MOb3$o#A+~h-=78yunTa0_gDzHg&y}TD@ZQ&(Gp!2O49U+bhQV1iG;Ffo- zmjgkVeTug|M$xXpT5dUebVec_g`0x#cW}K*6>Uo8q$CiiRp=BZ0fA(!_|VohOKcG-1e700Th7@W%LGkP zS?&+F_Py+lMa$Ab3_7<@eaeCNH9s2R6V?*Fr6mjX)^@!nyXi7E$&PsNhTWD76vNdJ z#!Rk5Z{>kDJJ!-DEBt^7fwmMJK8iD+*$zRyZ@7HK*fw3kl+b?AtKK}gzF0%I5NY2gMz5wy8Fb0v$nE=vpE9gG5U<5fVF&sZ1dW(VU3~(& ze*RK-cCgiS)Li~?PQFO}2V>7G(A-J9UzydXcPVRbPJ~Dk%8)Y`B()KNW>q)Vy5mik ztp2A_fcCQu;{F5K<4vcH_Yes*P~B_wVk2P>Cj|BA>V?M2&l%7XF*w5<)GB+ujRg}V zqJwZ{Jwx8!X>kw0k_L2^i?45;yM@$!V z5)06)pu0jk>}@sZxEhjvZ>cQ4MvzehEwr}@qW=6$zHaDb3|TIj${7WAzFIiL#EHvN zZ{KgdGj7@2(2T(c2amv~N*O7&$l+awbZukz=wVTDv}Hc|g?aMc>fC)AfXqYlay0Ur z*SUapSwL`O)7UeeE3bR{FyO;p2a0^|d^BUjA%nx=qNXOp3-@(y9Ybb^r21LbVRqX# zgdxzmQi~O?lt2Av0vv#74u@Tr9S>0#M5x63>aqGA?0oImS&8*wuJm7jnFz>ZmJ?G3 zlpIdgKM;@MMD$bpu6Tc!^|H@l!5L#c{-%}&e9Uw|b>E>YYO42+dM~Ea#Sf2|+0`ks zV6e^OU)G2!&;Ph03eP`(hYG zZto5B7r#D!*k1ATM^9dFtE&DshYb055K(#f$|cR?x^(b@&rA+P96qOf+5NSw$HXdfhz9KC*a> zNE4%=hw;Y*hdIZ8`LBp4h#)z&ojOmXAM6U|K-bAL1)xqR72PZj*9D`r5G5VC2{M6ay>o7*Ng=QqFlCvfX;oD<5L=?!=5bgtot*=tA|n8Sa?RkvG421 zYXXUCRIG~?G(B07b5u$tlz+o$i(G$5w9yC-8hva>=};JAlibdRa8!co;sb|}Y9ju3 z+?E|5pm5MU^sz;B1|d8CjSaUhV50UsMyWTbzNtG!pzs7@NkjXf43h$QO4WyFj> z1QSZh_*+gQk+bKsNHmK^L_K;Gpt`e?aZm24_RaVE3|fR%2Tn+yok_hiGPQ+V;qQfS=aTrW1<06nEQ z4^G={2P&_K4uO)-?soSf*OftiHx42E`JALNv{`dbelar5KsIV97cp3szjz_^3GX_G z*kco-+p%AD~1msrbGWFk6$3eSI#wPCL7UM04S%4TN60 zhC+WuFSwxleJ5V_TYjCDP7^Gh%JBk;FJA;{s|2X{(!dSfTRd?+1+b)nVs$Pj))J>h zXi-O66XdD14>$?2pe}}jCGD?%5)j2>3=cn8B2MFo)7;GnDQH+chIcce4;VD|!Ppg1 z%v)C!WnGK@&(6ZG{I&cAAB(>F@(JXJS0B^#PEoz!SxG^H&*pErX!K$i=emI11E)F^ z@FUNjpy?hHFXh4$&*g*WS$X#gOCVp-bYvl~%1`mr(!aW%7K>&A+O6rdvoLnKnjplG zqM2_2#8N`mfa4~EcU+APq4@7Fm| z<(F&}RAUJ{|L9=Rq?A=rngSWYQR;1{ZmQ8Qw7pw!J*|_Ef)u6}^Y$$t@Hk7ofw<$G z;T&Lh-VYD_!|hJfKU)77#4(!L{6s+MH924yf*B}dyNl9~D@+2Vj-HQ?h>jv=6ZXob1p&05;@HX6#p+d$B} zj?)1bJT9hHtiLq)NJ2`CjB0H+gK6;_qMe3_sY9-LtM4t@_np?A)uQOz6p9G_3z3|$ zB^zYs~fpE5@bANDo{HYqmLmJVemd(E;-- z|5L%sTL#sElQa1!99E99_Ja}6S4Ycd7^=%#Vc* zyf$NTR8^eR;z-^CbaY9w;;0edWh~;VX{=Se`OFxk5r7hsNt7s7tt;Cf*;2VgM{@gUO8}8ISIs-eit(PM{Bh2&yJ|T95WW zu_WhrD=(ii$g>9XA<3yo_7p;7x99n->pO%dIaO_A=~?!>A>-xOl+c9DWd~C)%RornAIl6xGWP0gXvg6Px6%chy9}a19U&FW>NXoFd@r%2 zY_msfl8}Q9ez$CiB42sG0ud-;^&{6si1HD%eXlHHEkL3Pw-mm#43P3ANG>2G1Gaw0 z=Z|_S(RrwM_TjcDVMvPBN@jE&dGHzMz|Y6P5VF(eYr-v&_5Li*@M}-|*U6(yz+|U= zl08Uc1TiT}jkHBVd{=+a68AF@gjXtaC6!JXdGmcivn0X~hgJ ze&~7cTz$U&WfndEdAHbh+Ma!|u{wIWm-!O#A*awNPq(Swg0n2dEdMPQ`}$^5zq+IH z@i*D0a6!cF7?@o?eJ#YRX)=Wf1v}VBE^Q{*eflU7P&XWi3tlT!Lq`lW zs?TS6YD*KQ_(|VbLSJLf9sAG*!cwDGpF3UUE1|X zW%V$vyC$vt@G1)!zGN$KkK|TWaS!f(^ggeznD&Fg0+I)KsV5>tf?Up@jC+$OEBjUk zO+%7Bpi%pM+h;C9x=eYSTmP8zO$=S!KSkzGxPa^MB&a|?nieUnc|nxi8MbPB3~JD` z>aX;jjV}ugXemi|9MV=d0y(o7cT86%3>iM1B3vy-HQZ`n+r_?Fnpu~+Fun-_3i3hK zqkdQ(zdpWFEq_XL8S-k7rGQS23x=Y!|ZsP73eL4~@~s zj5IW&g~otfy+ITx*t6B<^i1eKW&l1@$`hn#w~?|(YRfBk6?P%71qqOJU{6l2b(wVi zogc^%9gSJ}*Dz*(9QQ=S3$kcLxqN>bRp^aMtNTgTZRA8CIN6(9Zc( zubwz9N*`&k?Uw*^IOO%Q?aLly8XWO=+G;nf}Kkf^PK1oIIT>k((~E0uV4Sy@iWHIeXr`FbgBI4g^FYCwa4qnCzonm zpS5=Qh=1Jg9hRy-75Jb|V{r)?yhJt>MJ&g734-0xuW2Ry=!l*q?FDe)qkL z<6Pyl8`0;uUfPwW{4jaB=(ew?SJTL3{oV0@C2Qy&$w{|QpTAvMNaSrF-q%UVsC)MP zMyKw;FMZRB=yym6-l@NQBQ(RLn#pAqez6XgLmdI74heh>V%&(>?dbWX|Eg+qslQp^uBHCfgVE?i$>UU$@Gi4yA{=V^>%N`M zvGOObqmK?rd1{MX!sw1g9$g$~9Z<)K@**1>?jvPfQ4PNr6N;mcqhOM+w0C^T^bh~u zlnwN8>U=niu-V_?b4K zF*a}4Z#lV#cfnBm$tJV$+GUH(@qfXO*-#6I#i4&clcH}5uJOOv?!GxCO|{VT@yy1L ztNP=eY8!yeN>aU1oib<^RC}Hz`=v_`Qs(b0NkvN_$MJvkN3kWQj9NXMp`I98r$1<9 LYM8f|a{m7TpG@eP diff --git a/client/iOS/Resources/Default-Landscape~ipad.png b/client/iOS/Resources/Default-Landscape~ipad.png index 268afaef66d03aeee68f11f5c4df0c1da705b337..9d341cdd4fe9dfa51002c032c5071f43e53f898b 100644 GIT binary patch delta 5958 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 PU~Sl0J6e@nFpm8XrAR4T delta 6346 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�@ipC4NakpRU*Md%D;5 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 delta 8672 zcmbW7c{J2t`1tR8W(>n%tc@*WSJ}zFjHN>MJ?kKQcEzV;-gbo+DSM_uD3YDRpe#`- zOG1{=V&6%YpT2*5|M~s*z31HfJkRU7@B2LGIp>~p@B7?4=aLL6$`PCbZw&Obts+Ji zS|JDk0N*)yu|$WsH-%6o!(U^O{}><~emQGq{eN%6|EG1x|9`;YS5;#P(KtXEmi@Y* z+;Hf_Gb`qQ-*~@tvPoWsRYnH+FWdiZds^-FS!ZmYTsXwFL7>eu8 zL>_|M?rG!#uh}=5pYo&d_aTvdHB|bQ4?HS3K1R!C1)6lS37Hp+aM%4YAx>>fK$J4$ z<~o#>6nPL-E98ELhU01V>H!%hZ9bS(hGHePVhkK^6Iz93{cnMAT^2H-DK16Q!U&V1cmwc;JBSlEQNnkE3*;z0Y{Fr(g(K`0OE)?=UNlMD@}!B-(adIXVlBNLRFOfWUxgNZv2gnf4c%X*2rbaBL_@bF zuRh^0O-GF3Earz#2l9Y{WwtwYwIEJM0*Vdq|?^=9^2gC1%2^fE_Nc zxqF+2E(++EZ4M}A(x1sj66XR#=SVYZN6uTS_y#6WVte(-RtF#EI$~7uf0zIb$$&2< zk`_jo*($D;fK}!r;$0GZ*B5IA4J#}Dcuc;l+ z50B)$o~=ZI znKV_r&s7RN+{<-SckK94S){RVT?6?RBtWH`3Klv~(gN7G0#2Ccpi4wIn4A>Ous{nx zQodMEvxTgfd1)3m8n=oh_&sRHZL?CDiC^T{6PrR`d<_N#UgAu_*N&={@IVzW`%ei& z(Os4a__oi3rS=_7+h42ynp$=8GtXt2whu?S;_a7WSr%0YTHqhrG6=1Lex)>c>s@2+ zVTPZpAaLP4&gABy7KacNVTCttK(aX)MOczb;fF1su*6lw9z{S;O959u(jVtKW!a9$ zESua$p4NJ=?&@%*1f8xxOp=lN;?%{6>K?Gd7#FrpU8}me&S(V_o=`%}>wf=23XCac z@`DTbkA*^>Z2BMOZBDsMqg#ew)fE;+1E%SQ$qur^q^Z1Qt=xCP0y9@?Yj1Ihu|woHG4?>hBC$(1%kfOtq# z0|kkLyNjqw=N!Xx67d2%V9U6WtDi_0#yOCkW$2ZQA+A8VIljHIf_+VtAzDjGArRL< z#*+Bh!1qzCf0O*66dj0`LfRFLqytBbxYY z@MD>`10u7JzYoa$b__TO;D&U9WbIPcf=jM>e9ig2@Y&8%v0We&JV+jlkldf>e*39+ zOqHajphHL5dCff^T=}~%|~ysXI0ik}#|h{w4y|^ATn3pPf0;(h<`R z8QJ*NTnbc!a$gICq&;KEQNv7*1^g1U_1n=E%w?qB+J7Z~QHR}xM#hCa&nXS*;i;2` z;j1EWCL+`E8S{y2Pd=RogHQMqw38%ZkCKDjN|}@>B)-H}R}78GYEG zv|DF!?w4=QJ)vB)_{J|1ap!Cuk9Ig?(M5*n?m)!6JMAsldYp*E4_p{pwbO$sQX7@5N zF)k2xKq870bsOOwbtvECx*`rgPCr-6O8ErJ2ahkM#gXT)400=;ZU1l7m(B7~(CE6= zcMjM)&+s(@SEg%lG(OAwAL4&RsGu16oCbz)J*^~kF(x-f+h2O-zIxSKJF3{nRI@=L z{Q944z_JLb%93}_LPwx$8+V{p3+RJp^Q`;$u7w#g$o zimdTa=HZ<@YsJroB@#?hc2xV2muBR*STz$UA)5)I3xetKV zYxX$>-KS3W{w%ZsXWOP#&dcr@yBV?&pEyQboWNKc-}~oPkOlx|YFx93_Ee?;FMGy7IBBf$=lgCajL%OB(= zo79ONYuvvz|Hc$>Uu+dpRiWPA|~t zx}Jx*%TzSD%C!j6lP(QeaA{W`vj~hm4|0YCJ6g0v1*J)HdH$jl$;wb0L|4Eu>f@Tb z*jdxxt#8}|yMOx&Q{p`c;@)a>*8}&}3LCOoK@GyN>(fKRnE{!Y%> z9)GvU$YT7n+s@CGi;n&RGQ+1ktJ}=UzVX%O15F9B6z3oTx*nn#)oWG3z9D1E(Z1o@ z?E9t`N70UqJdJZPE6&0*OGag=<6T`C`1;Py>hxub=L&7LMTZYTnf|5=QHU$R=q{S) z6~z4@ni6qN`#+g;WV~7Rg_WQ5&e()DzPRGW91uD3NE&HPFel6DDf|?u<&aN$Me`W7G?7h^wKHX$%i&`cC_)2`Qo35xTpa6@|c%Q z^fU~_9L^#+*2TVWcA|26HV^Lux2r{!bP5md7O}t2XceTAsb_(@W}$W8trUd^aKgF_g7PLu#b!8CMS%ZKo7es=1QGAtmn~G^QHsrlE8W#bL-Jx>g|)b zFo6mV>}``0*~U|Y#>_)p#fph#B>gkRVP}F1;LW8AyK$wyYFO+rP6ef!#G#iS<}88u{% zf@CS33kR@PuQk+so4^u!aE>Sd*d`Asj{i7QCK3N^XSFRA4i!$c)+Gy>C2u z@~!Joun2Y_H)-Zl^G|$^)@&;|8$KSmH*F$(v6<=Ji060Ij%AHIh5Z~~MvOqB2f;?j zgxI#~!a>Un$2+W27Op*NvlpR=P5)xFa_JiKk!J80AjJ1uVS;u;TJApC(|N7^*X~y` zq9h}FfQ{(xvh>3Rcl+?oyXu_i4&ohmj$Vm-oVj<$X2;FB4tqcQByy^f-L=cDWuE0! zD=*x;9Y}QR2+Q>F5x-iA%{YXi$;EHJaX=D2w zroYV>qsYn>xKeaDT8{KYMZ92Jr`S(Pyen8*HMD#lH%&e~VQnu;Gt7+uzw?q6d>Kc2 zF5T3h+l0%eqCr;~o!MD3m>MY2_RmTF` zl93H9&z{eEoCog9Ot#!Nq5=5HWg=8&S0Rx)BMFICFDj`{hPSs0(t1=mJu`9S5YRO{`XDXSr$`y-GBp_$jZO>oLTz_k%*hw6#!9;lJ zQgy7mLFIr8^|;N@dp)8Vh{wo9TVgaO%WudLe6bMu?``^GY|@QOKgr0bn{tHGO9^~h z_Eb57XsFV*K>hV}$lQZ&c+VIPYb};WRr{=PpL3)US4XAPfn9G|v~>dfUP~S)`lv(_ z#oIrLcZ$v$@u`)p&<&&UygHxd3>rm8n0hysyskpS%vu`s#+N5(s(&7~aEqT_!p(FK!vEcu>VSonxol?h#xNLYOsnR2o4;rn+4{ zG5Ja+tN4hkA;l^WRd%0PqJn88Gs~>oS{OxtpO>+uq%SB&Zs z9bE@5hfsa(O;=e*DjQu zq=&hA=5J+WcEg2h@aU2ay~q_Paw(wD%xwa7 z_&@Te?((j*)1!+{$dqSC+~NgPgdJ$q>HaJ1V^LutKDzG1wLQ*Qz;5Ww;=K`Jj=LW% zh7ylwRpq;`13w^qUW)E4@4UflWQM{|TvI=hbOTH`+S6rR(^59*Q>g~sW-X(Nc_q1N>cpKvVrD;teAzd?R--}|YlBu=ut<_}O4j1q0 zXYW;zHRN3&ET-(k^Sv-*yu#aq{E3bmv3y7r;*@-pC7`I>-H?2E4JmxAt~6lK*lfP% z70YEA`j^|Y-weiRpJ30sjK}KnrN|9@m?0k7C>}9&!+$cB?V-qx2Jab3-c`$iR`F6y zHXh@lg?Cl+Qvc2Ix0TL8b%t>CW8gB=f1g_REU-oC==;gz@nHS!N$?FcuXZqPN3vF*EXjQjEA3clu zwO1bSONqlf20fv#KArP>e&6hxRrq;q1p`}z*lw=}wQ=HV>0&d&xR2rLoevJ^1vFW| zu9V2O5fTvAAxBwMGp%#N8uvdx)rVq~pvi5if6zX+zgePF&!_&i@@VzkbNeBU-(aW3Zq9$nX!yOE__?fkt{{Z)6_!ob1xY@ksLA>dv%5tXSSo7Yv%pX6k1f3NJVSIp;_6>We}d~*TkA)7 zA^fLwJ`gHM3JgV&-b}`5_?V!uis!)DFsUq0J)++cO-U}|VyUQ7LCCnxKK40_8p{>} z?psnLgDG^w*+P^2TT1~?{Rw2c_LbVXKAU}W4tyGpy-Of5cZTqt$`WjJm9{xoheA9& zKRPd2tiut5bBO44-nw4y+Vb4XD?G+SQ5Qq}gDS41A!XSRAn|-TaP68oaIVM z`d?9E^LU;J77Eu$f9>NRA$6k{3~09gpxY3BvM6FlBvRl9=+fs8=!^!L_k2@+#S6Rv z(^yy5x7er4I?eY5)6d1%u$5;qZ@{tPsb}6Jzn5rNh4H!cG#}m`peOgE|#Uw zD*fc9GFqn>y2Any%^>{(i|#l;C;<9z(^3E-_Y;M!#6Ft^pw>m}rSFf50Xk72R5G6K zZnjrfYCOcoysOZL>$+HvTqR_YSH)RfQ4~qd0;9zC8h?MeRrlT`@36y%1cM{}?*TN?kH>^a@WLUOH=Mzce&3G`bxiO!1GR5Hzhk2Lz~}cq#q~P{1(f45u4ho+*K5t;(pDYO{w*=I8JBc z@020WS3laS-nQIT{r$tGttkHYxhm@+l*{sA%T;8+4tYXmcPU=>^EUcoKuXe!foL9v z4l6O{z&>5;fbIkwZPY>&e8Qz032F^SQ1Mx}<8$QG-}`FfK`urHOZ61~(QsgTbXTjd zPCEfOzH;?Nmcph86hs?qjHnP&M>Y<4@Ucskd0=4HTqsom19t+F0Sp+s@D2xu2!Ahm_}QBc zDBtVB0gf9HkDhM2BY>?<6^ep4DE@s4LjXY@-Qpmohp07oYF8G5g&MF&StFe1F8uSk zpVkFT9<|!NMn^|zp7Z1%kodW+rqA+&bB-wpv5+5-*>_`D?@6~aA>uQ`sgo}~DEu2W zswnVqftH(QQokM}ZC+Zw7x;W)mgI1#LUnRr|{z(`SF*QzMt1zh!CTR!Ow$w@M$dCFmD5 zUwTI&4Iuc*$4P#h!=KO6vkxBnxsK4gNdPuB`50EM|J zygzB@G>W(6&4XUh$M9{J0E`mhG{bZ~G_3t=NC)7Vp)>c3Z(@P}!^F5wUD(h{xHh`h zks0KoJFqITCc|dmd5OIMJ`YG$VEmK6@1w_o39Gzz;UwZAIOo}4w zGXv**hGFX)m7A~Nt5f*pHd49Gnvx=7;K5?gVBOE#v!(_~0>g#h@`)UrlbkNfzM>&!*xA<#0@AC4?}oQk>g z*P}1~HiAl>>*aaOHmWE}#MmBc(Z~cevD?3PVCm~WaqBCRe%YlLKVC=|5gBr|=ta%P zL+0fSom1iBh==MY+35p6Ow4`t4TGolExb3G^5A9q=`Fe~jPVJ6w5x z)n1GwFSq$NBR(ri?a)c=>Ji)vn@Pwv`(Ojaio|q}1$Kr{S3*n=`BP6k!|>eA3S{^_ zp8GJr=@nnzCON`W!-FY|d~x?MXJ>ljV{(fQ3qvj(S7^|8cIzANHp7o*mam812mE8> zA@6v*h7R+0)T)<`|IH6R=J(}e^p&#xLjy!T^4MW@pi+aet}A5T&CqLM zd$VKtz3X|D=_VGjg!RA!h6v*RIp^Eue02F28(8e`ElA8U|Jbn^Gf!aJ&H*H>w;!SbdbZ zyT8WqYn(v}wfiq_pe_BTb~Ci0zNwSfbOh`ATWE|L*_x_qMMM?K+^(3mM7i(kT6R9@ zw(-m9_8HCzAX< zi%#lzam>HwMHlezjx`%C|LJKub*x4DK;hz*(#`I?r(XB71)cK0-*((h>rQTOdNXx! zD(j_ZO}J{n+;)PyO9JmK2ONp$o+FXNw>P85Qf;~`Pu^(sxbU;EQg}gXDiMRcplpJ( zyhb|9D`mfRVWlmde5FEpm6>l);IGWnMQQzAf3Xz}riO~hDlOq%yAK;`PJ^x)wDOa? z`zoeUy?vd}BR-9B?kCN-cc5?Kf9hRn{>e9c?b7lj6ZVqqsgyLf5)+)S(O$X5@zeYa zf1r(frJB3GEqk4k_mU0e^Kv A@&Et; diff --git a/client/iOS/Resources/Default.png b/client/iOS/Resources/Default.png index 07a967d434a56d4dcf3bbfcc563fc5683006b481..0a221638c67706e887b0833aa1f2db3cd28a24ad 100644 GIT binary patch delta 3421 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 diff --git a/client/iOS/Resources/Default@2x.png b/client/iOS/Resources/Default@2x.png index fa65de3e721fe422a982361c39fdd9b0bc34a64c..74af0a3cb4a55d54bd378bdafc3b8968e0e9346a 100644 GIT binary patch delta 8049 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 diff --git a/client/iOS/Resources/Icon-72.png b/client/iOS/Resources/Icon-72.png index de65be2af91edd77217f999dba76a52f4c6474bd..d5be47ff70a0725fad73e328a814aa3af0c5631b 100644 GIT binary patch delta 724 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 diff --git a/client/iOS/Resources/Icon.png b/client/iOS/Resources/Icon.png index 52a0aff7f78f41d6ec321dc3e01b90c6fb7bd0df..535ed700cd07ea76da3f6ea55d65296bb7c329eb 100644 GIT binary patch delta 549 zcmV+=0^0qN2apG_Tmb$4E(&(1#{RLLnp>!`)61zZg&iA*@v?xT-Lik{fc3 z#GLG1GHqRULs)4UxiSN@ssvmoGih*7Zh2VuVIwCBGi0_00Gp!n;hfyke*w0ohGa5t zKtblDvmRj)U`OaylKFNKOJa+ZT$B``EFhJD+(JYhK$V&-lN1CNDZ`Uk5g0VVm3som zVJ#>h<9NDNY5ByLroaykxTo4Pn)j%b%JZhELCX=$qVzQvZbL+G5b-Tf z)__$iQc8=ZfHWGEzT?S_=_hbp!+>B%9Js@viFUKqdjH`V%>`NwTOSA8uIqL_o}6~E z7?htlvH;^Mc;-X<{N!`n#!8TKN{dUJiM?zY*%eq2~JvP4%2H*5BX$*Tzwuc7WWBfii|6%bq zw9dZ$vhxqN*pLp6a=35aDok?h)(AGI2f-Tp&@{O62v~Z)`}0@Z&g;N3bjO4I_n2Ck n>H6mP&2?eEKcffi7oXK%g8P5cgdiIb00000NkvXXu0mjfHYfv_ delta 550 zcmV+>0@?kL2ayM`Tmb;L~B+8_=X$9A{p>HXs#UfgkC z_HgSzl~4#t#&EYiR^$f($m#D*)9Fg<}JBPml8s7S&jnUs)&cL-}$3a%;)rsRfP zBQYm?mrPri-4Iq8wXs1lSR}m1MqM#FE$|B^MAh!@v2T-LZ%OnMXMau9bRs;r3aOIxB zaaaq=$2gvDRa!prr77@31MaEzjOINmCA0g_U%QZ4)yv=1zqe^Jw+F!Z8^!;p)r0!wbbxjIC(WYBU1vnYMdh1(F(8$^7| zlQm$Kij>k~DIkporSEuhWBLgk*DxU15eM!tXrkS0wcdX?MstBy!`8>aw(Gi`k0+;H zEC%H#jx4~q3ZD7UK0o=~wy_eV964RV3s3eCzZ_!^_kvPgE*o9ff2)ap9c%>U;c`j) zzPz~fVBbX=l$*jEjFZsqa5y=w+fRSyETH%=|QlDJ~R!kJOY-U@BaMNw(~l$4Bhb{|2?J_ oX1c!leRExy@6YG~82e}S7lQkL(oxjFD*ylh07*qoM6N<$f-<=Xn*aa+ diff --git a/client/iOS/Resources/Icon@2x.png b/client/iOS/Resources/Icon@2x.png index 757319fc3a77c9dc5433957fbb866e46a67dd512..c00b5f0f4ee0e37ddcb9c18d5a6e7fdc2a9c8fe5 100644 GIT binary patch delta 1137 zcmV-%1djXh3*HN`eF1+=Nkl1 z|3cEOt|-tfo5}oM;QwVZyMZ%%sdNUmvZ*sJX$PLTOu?KBn#WSiJMdS5qv*pfpP`tA ze-zk@;IS7S_97HnH%IZ=i;zmT=)s4yEV7zB22J zR6K?k$+$du0Oq--98ee!Wf2ZyA1k=*V}%O)SRtQSu>eQp5*up?fO&f=0LA7 zi9h-@k6D38I@v~&`yhKlvWH6Cv*{Wq^<=LT-5%w&PL6+6GT=;3C|+g(qP@|{Ay@LP z&?u5=i1v;)S%GMme97giwr+0KrIhnq`>*Rhj&rpBf*lQleD5GT30K^yn> z$%jv9XKH_&T;8IshF#LOX#2NF6=S%vNIvKy*X#VOH-~MsUoaMnuV;Yqbx$fbkigwZ z$pumvu#Q!J4MX|Oyx8r;E(+zlaq4(zOe@aZ1qJ*MU2W#&{IU}WF7y^F?Q=zNu7${Hb?L$zJSxaoY5?{5mfwBwC zS>+sl<7{rR5-Jl{wQrZ5JzEGs!}|7&h4nJif9iGuGoiBrl8Qa`6Tn z>aFa1T+C$9FbT5wW7KI- zwk+NmjB3JBKwtR{A2s|9<~pr-(-8@$1+(DM6SBs$NNIYtjAhaCDvF{imsN9r-_rYJ z)c%h?uz2hl2*;&}ytR+oFWT(Rt_GRc{r{?G|Dk*bY_I`|x6OuD00000NkvXXu0mjf DthOh$ delta 1156 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 literal 32463 zcmXtAcOcd8_rKPqTst9~kiBmzgTU!Qnm70;1 zkx_##1-cro(&a0bG1G={Tpr5GItb01IRC5CwQ`Pj+8S6H{Hg3abbf*Rj0RcJK7F%` zYbnE0SGss?#B|krwd~35Bg}DEwlLLeH$Cy4V-mQ)2|c_?UEt-2u1bl@OA5ovdJVU$ zDm`15At-3V1;5ATzOkwJB|AaRE*A(XD~0MP=GJtvFaNWndyXZ?e>+IHuo35lVY+Kq zb1!I?dCNx6szD;DuClEO6yrx$C1Q?DH-f|=v>sfW_tp3tQtw$ZuUUnDIwp>QlQi`y zb{+P#sL(pR{i{l`(cW6;j$1bpuFPtS4R939jo@{JBZbh^W*ntg&R`D+&SEr zTxO(!C|(Ks=f!?<6#G>bg(_bVgalBzIlv`sJuS+3ij455(A z;aE2-w)13jFQMDw145S0l7$T~*P1GAhY@pOecUQ3^<3C#-8nW0%VEvsQ>vA&j_dl) zn1RLaAv%L2qHcuRT-p*ROzl0gf7nUlSoLdJ1qwz#Gw-_Q`N*|0Ejcish}HwEGM<0y zn2pVSiDkwe%=S<6gJxG-U#4i73F4XY1}(jo-iV+sFqGE))bp1LxjIs#a$i2}fF1nu z+HpIZ8N|Oq;hcZYz!&Bk4_5xlz5sqhY{S_*Ul@eYbW}0;2oeF0GGE^cO(FxsmHLjP z9aN4aX6?X~Va4$py%=i__q;A3V4+`Se!4%cd-4@F2EgS>f}i0k;zlT1nT?4+#_xxY zT;~Zz%Oz0~_&^Z~shxMF{}HVpTScFC-mTob*arnaJlDY{O?}ph@joKhuJuO2mSNf= z2?P}_R(p>(mv<eH_sKe5&ws0HKEYj7IAuRB-1KKe(PPh90%7O0#85vM|SbBbAP_@ zVmXjV9cgb;$@#L8*0IY=PVcKE31IXduFw4`Y;|ad!05fXJa2DUi%`d>e|;~^S9YUg zxdc4;`(Qu_VTarsO1EQA)1NPbJ$SR(@icQ!fDS(;&L$7OOb`1yqL@refy+d}A8g`h z%2;*^AN8c$xBo{`J^?zSFss~pWy&xYAv%8u z-i2oCN58KbtU_WdKX2LadZj)pVnBN!1Eb`IfwTC%JF_8;nCJoq@#kpgUo zS*!Ie;Ur$5m=N!(rhdc6NqqnP{ew*pEPFU(8U9=`{eO&RsPztfuLD*R!sD1*F%({( zgCGARrLlE!Rotq}fq=QaX=Meir6z9iKVmjzh}KFoVIh;yce8RUZJfcV0({GdgsH}r`7fzy&C#O2{*e!mF0^JwGXEotD~0JzzlU^7LV>c`Dyw zG5?VQFVh)Jzb7m!kN`GX$O<|WqqKPfLFZO!_xc{aiBSe`Xu2a6P+u7;PtW*n!}CQL zfv6R`d;ji4{=c4UwPBV@H}2mx%UUE1yoSotx`XE7>tlsPCc+(UB2uD1@{QAgb4ce= z$(e?yGxAa(`S$^0=tht%UnGG&;mtI6;d^Uu60=ARI26?06FR-Cg%%>|;{ZI=qo!X) zM29}Fi&4Y_RgluJ*N>R+TrmxQj04)BxH^8IH$~x!y}Nu!5d0Q0n^s>hWN?RIre@8% zcyjsj(m$glDF`GSb2TSD=#3*SI8$o1Lpm~|bs7H=_j;r!(%%d|B8*elmLnaIG^AEcLqs&-&3{B#W@vT8Hf0|#koqukaG4`G z6TL%VXjZBAvYJ*;bZZ2qhu=|9t2G0yR z4PG%(vaBkzXYk(=_Za{-bTeVUXoT)Yd9s_N@Zv?hUunswkyExV2t{LCv5vqdH-;l)7_<}fQJaclug&e6p8abKs2uaMHoH*N`GWKe z)+ipNxC}TPLlJ@oqbDpl?(c~g@!lh$YzIL6Q-|DquC6vUUkdCLbXTz#)Ll*8gk&Y$CFj5Fqzh^YYnC z04sLXYw5ZDD4k+b@7;2!_JXmtc9Os5KmxuA28EDX<--qnBk->_*E#awYA4!)20>p9 z>moxnf}`dEQ!CDOvyyny;V{*j*)I$peA<8CIompk!xaGEadO0^ow`zew=e`RR`-m< zaUj9p9!d&+u}$S{YBjAIBDhPpe=71caQyMx-~nA}Z*@d0HxXdUfP451(`oqH`>_== zE&1(KW>DI65}_wXZCtR#yvN0^Mn|q)7^~YGA?QqY{C1B&iWq{T_C`9!=5=&f*Wb%Q zh4Gs?893sv)V=LU(ICteAK!ZH=NXP+D&ufLrj1f5W&iyaNEb~8iDb`%C-Vj351v$C z%SVMt+ai5>9h@CRGHC^)f{;$-m{-W6F$~Hsff9aNk*Kh1HWv)SavmxNhxQE< zW?t}Ty0HRNRHoLG7@s(;c|g)Q2acuZrS-lNquwEw5A`g+1CVLgb9LS@;#3R`qshUS zvj+BBY2|PsTa}2+YP!IA;X?^K3kMKW5?CvCz9&Pe_zEx3^|#(sneaWciNFmR!+|@} z8nQ4P+hX%Uj@@-jMLWM?+|Y*6LP(YC&DFS0^?tE6GWmDhBO*UOs{7HfQY9}uNe80? z-G^{9Zl9rDi|Hf{!1RMjcwJiWJw|lDq?<#dSxj#560)U>l}lE_syr%*HuuBlysy z5ENc*-0f9zMektND6eH9^msML;O#Qocl@AOzdBg&l+xdPc$VYGBlv_JDtqR@wL{(LR1*8|HIqK1V(4= zwu@-6Sf?_Uf#S_>sCh?2A<9%W)og>G>^O7pDhY5dI$73#jqpV-N5ajdRk3kKOpJWd zLlVN1Xl4lr1%43Tbk%utTcg4B6S-AzXT-zos9xQNEK(3_P7lT2tyg$D=?u~~H$9`s zss~=*FqIX!{9*))4CE&V?&R5k%1n)eE%KFfLBh?IbUy!F?D#r(mkJ+M&a1U*;5+aFuMkZIX@a(~(fMWs6b(={ z{t14dSqGMLo`d)}BD;7U#3=nsyzkI7ezEd70ViLljT@*WVUIqFJi;pSl!VAP{}SVyXi;pki>QFx zfTgEteW`RHL_rn%*r!Xo{pae&pSwMmJ@{-EH=So9(&Ohzx>r$Nn(fxX&)JvZ0)zJr zjq^T?R>HSlb3A|$`8-Aj(28fM#;`~CwQlYi?2iL8)8qg;9w3*7&vJZft;`h4KN^3{ zY|8u^wCWd43lV^}$<9Bn(RXX0L?F}Tb!DY?g%GNm6cG$j9eF-26D#{lmh>Jax4LdS z-)xhJqKI&e6eY(mili@iJ-p)AAcDm#)rh%agOrjgN4mCH9r3G(QZ~9s zrr|XQ+rMu1N)XSz27ayOCSH5DGaY&ySGlB}_``kRBA#!R9ZC-oAVtu8d)y@A3AMa} zldyIYcjO{M`XQH)VKH!S#4&d|`SHgavIDS2!xx35-9sqnI-1y@xjN3OFC}vzSW#>~osjjxt#>1qAtHG#+G=$*AG+)nh>%vuq6>`GM#-kDv^bZ?CYSw| zv#;P5M;u|-ApRHew{ARN&l_Sa(MFBl}gM!X7{I%kRtYB029ca0}hF^zg5bmn?>0xv^Psm%R3Mwb(r)tBOzGXa7Li z4y6#oW8m`qhRtK=x^lxpV3P<6xDDF4_}9-m-6tAW!G4bgbDXn2S&~_Onewauf!gdZ zATB^40~iEXK8&3KaLkgdwe;jx30uD|gtHl=!1eD{8WuHL zsQkr1N9d*Ln{9AmGDNbxGFJ0{?V_N)q;lG}A0BR9RP_U8x*k7^?k1*aOhRpH7x2r;QH#)r4i+Ze7q!-Tv!k}i9PMf9g*9tc0#HgKcLBf=#NB5Ab}(4h&<=I-)yv; zep*lE&wSb7$43Gyui8$X)?0uXurThdxD`sRY<7<&s_4t=NWY8tirx#IWqoB&68%eV z#}82ZTl}xxU#^EVAK~CqQ{aiLYh-ctN0Lj_gC&fBYs`Q6RyBBB7VG`m?SVfs+`*NI z)T$I7z;_4P59Mmo1-7qD(!C)I)yc!>=mYvP;C;0Ght~S-hSHukZNUw@2%EdTMuXCv1B{ADxHwu>39|FcP{Zg zJ`|CTQu(*KaFk6FGwMQo>9yxacO;~-Ma;Iq`IEv9#?j><17EzXL*EBOpArNRj+%~V zMhV83KJXatAAsvS1`?4@eFd(9*7n4!H{yAJEOM!xp$NHu5u6?^@GIMSf!&n zQvS!F<0&nHLA&YO&McJe*KM#N(oi!Rv2(9K8rh0jP64hi|KobD^S{QpGDjf4G(mn7 z5T`j@pv(CX__gBW+8Y+!<$oW65my>ZOKf?) z3A^@Afgvh4|KEp<%uT15H~ou9+85cfC_aCX+;hqw*Apu6^?X{(0C_-aP%xpe6PW&Z zA@xp)_J@Sjg~BI%y-^Q&>M!8eQ>g}F_?7<_4$=DBauLt573Wo}@m(vfQ1b0)ti{`b z-z{%Xn#tZS^lHET^Sb2iTEY@f@VJnH@1~`JOBjXZtMjIYU-<@(<8B6iM~@AHe|Z=n zCjwI&2GvtrHC!;e-^7`!c=JA+YFy8pZ13(ec~_f-3QPT;S1t5zT|ZCxJpJ(5XKa1OVew6?otx!17s}ZfH7__F*twW4)@< z|36Mcx|xfI*tQh~Ou%{X6#m6lyt!R{<`}8MO7&>kQ(;D@ z0&rAua5JC9#0P7&BIAFeQOmb$B(dPznj$M&1jqSeJ~oHhJM>YGpe5nvax3 zNrB%am0ofW$f%2)Qg)Y4+R0lfTOSa(G(4o_rAtELe+{*{9II0woW!v7X~+e|fSq?! zCP&k7VNs-QHPepliXrdHKJr>3lPg9hVCoTY@+-JPe=5I1RR;51n7>?_$q3+m3)zR2 z9Cw?4HMu)3xo02HrRyyPBZ}P6M+!`N`X;@XHkJ52e^sEk9i|ll7r2D8@VB^EPdJ(Q z5HF!9-jBMXL3==FJ7kE$&04XM@DF9GuS~wqU92nCVNL=rv@o{6q2v9gM$2WfEJ(1lvv4L(<3cQ$}<8)}f z3zbi_6m5;3VOTW(+$Q`Sm_5q9D}5txBhJNigP3z5oN+NG--wK~fJ?>PqYf8CPJ!cu zem5HXqtYBoy4C(Vjp$;tI93_`_p>S3h|JCEzlU_QSl&joMRxFdBzx4hUxOD*8{UKp z&gH?+zwlZ`c;=>$NZuieWIyU0D_WK?Ci2aFZ76x4XoVcnW>LHR*Nw}A`qmeg_Yrkb zr!g$?g~mDC?3$M-YSKnJV5Z$IsI%!|WmH=-ox!UNiR(n}PwbJzLsWS0n;(_JlWQxj zq2@KTXhtqC!fr0OkC6u?IMhIrvy@X0)R!AG`hahm9`-14p zJ~xr!)H35Ap?4jdM7veb(m7n_i19S|arJ}RYL#Sj5;{BajAwlSKy#L#@X6GjrHFk=zagh{^+rLl^ANQ>+<3QVvN06NGO!sY*;aG5t z7pka+9v4LvjXE9@<6-!o!$_Nle;lA}bM2>f`A!fLJSF~)U9Ff}7!jJv=iN6LygLk) z$7WWkm;45OpCm`vRJV^7ietom3;5Lf3&{+s|=$I5CQISbhZ4#vc!wO(K zygin`g-fkRk!=3S-@AlnM(QBj%FLO5%i50S)I}3Pn=$vJCE>~NCKJ@Mg?smyd_m}t zI&_c5zfP)XMXDYWaGW=&0U3<4aqF!-^IMiiLOjX_?n7m$8e4x9kGK2vu^2;&d2!iP zuFM|$I~g+h++=f?Pgw>c!cb=~=1J$MGfFa;ha&h<=>iX~Y{h+vAoeNsg1M+i!7H}P zio=<8AqzhS*Xf`#@KB^9^DPMda0(HXIkQI){kT0X(Kec6RW(`$u7O=16;uYED}6$wS`A1&ce-9)r+=V9*My>NuL%v3)Tkd%gxp>hdKg@&H z!`InyhJ!!>sw!a%wlxZE1({&Xf-ux7)QmKLid} z>IZ*B>iaMO%z1voT}0e~=y9BfCwW{BdvqMJO5cm$Sruom!k0B+p0pl|Q5~^Q$(qg9 zpf*}BWj<XY*N2^&t?>9K5L)W`-zJS z3!Qdtj41@uQ8SB!FZTU@%2G#qsw0)9kdT1>??J^sfYaLX1wxLZRvq_#RKyY?VQnwW zz&r;mCHb*(G-JdXS}^ZAR*%^j^7{Sv zjO?I{!zwYo>)BM1?COsP1LI2GrmT5EJ>-ucCqojv6rLFcKTg_b7 zyh{@2P5Mq#(V+CI`q2S`@Dm@Aw^5_}-i#G}2vs(>Rg`B;b{1o()^YaQ^~e)i_-?tO z1+Fcvs-X2iJKB+*oUT6R)D|bTouH1Sg=yWv-hS=%K-CK%NWpscj=V#vi9R! z%m`zEU8VPq@sMub7EX}^9+?C4YgWSkx!SBV*(X8a`MmVfQg*A-XpABV3vK}f|k zU*%0|@3i0;d#%WdK031SHYDKDcCYC_lIt%XYLp2{5k@9ELP(eEl-PT^=wcFlhOSg; zmyCyM?Vc@aoqyTw-78t|J*oNKnhJ6B<^ z4dr!lC4_9K`k3$K%9uTUz5Rd=?x?kH!1`Io|3wJ-wU! zBb)4feDt(VY+800qgk~r<9r~y@*~}Zthzf|GHaI_lfRGkExJ8rNfIWVf4?VzX7{4> zhY56rKMvrqpZvsr`}<`kS!HT^tHv#Q)2`99lLV)A?X?ey16_2YdWr`2JvWlXNqL3Q z?9~?Bg-f3|hx}ZBcIdK2ZBVGq zWK?tt(%5<5Z%TC9H>2;OhI(%2Bg?+Te=N%CXXbb>Vv-%7*yS<7HJVXPb~Iw2pTsdO zx)!kNVp%_XZTi+|7N#~jV!(+o(+hPwzdOllcRb!KeoR*8UjFM!f#vEW4c8sR+Ri6e zXUu2aPM0}9GGysy(Qk-%uA(Jl)Y<;6Y5Vy$XIDLRhOXLc`O4+GYaa41S=iUthw>Ep zzlMBAA2#%TzvPIxN4j5##>0*-FVTA|@hZhAtCI{E4jj`kd(c?@Cg;N<;i%sEA{_vXL z{*CQgQ!&o{6G>mwQ1QG00&h|*^O~4zQ)Z6#bI$CstfpU=(hH7TR}udTRe1DP2x@ZNqsAZP{0gXal?(3(l+#ZuK)>~BZrwk&7Pe!!T&cUg zQg!B;oDwx1wq4eC_LCZ2I&-KPcC_e?84D=;cF&|sy6@V8^c!v(9jFz@Pnz2q3SYc4 zn%2t-qW+koTroByO6_6TM$PMQ3Lo^eJqV=}JX6N&57(LoWObPotl5NDw~i!PG|qp* zNQbVrrZAb^7CKk;ppFdmfPY4pqlS7fgvswS8{8N6brKQ{`_W<*Z(i}y!j@{zD3V`= z9LkOh>d!bj@g1{VY?_J1Z=`(TwsR^yeb3q_7@|0o5@QrKoxpJ7528*|c6vXu@_s$f z?<~JDv-Y3MA{2i z!{52LITdPIVRN7E3*EGCwt4vZdcH;RWKP&o{qbg>ML)mLz=Pl0l`t6(&*wbrN*SKOG`=x*aZXWAd8T zbciX)2_;$emXJqrBwcL0UdB1!+c~YwNNhL9`*3o>p)c=rlC;fmT{U{^uIKB7v^O*O zy69k%HX`cnYOgfd91dzztr#fdics>Z)bUL3d_^ks+{ssPofV;4Nn$LJsm@* zk(t^}rvoJK2562j!6JH!NjAMp?_X!y(+H5YK?U%4S+e&pDlj*Rb(Nzl43bkP$=k4I zx!%WFV=sIr0;nl(0*6c?j4tDV8Si6=RQ5HT-3xwzj_7JT+Ztu5imY-dLm<_J$L6Z@ ztvp}S?@1v&p^r~^#I#um!v!80&W7X&KRkL#^qj|RaQsG-S@es$^)!u>lDMIXnJAse zvt8gUCO9%bdiV($^D43<@0HTw*dX+tO@R$^R^-0TFn*ta2ob8G3=SgUSZTUIrZ#*T>zV;=x?j_ii2W#&FyIkq+iq6SV59_F6V0NSnBz`nf*HNV|V@GaN941l5Bm=-wmQwa_Dgr ziiO^~2CB%dFv94XWWCWb)p43q@%bN+tJM>28Z)AKAT&vG>|N4;s^-w*#1*r=b@Q6s z)Sn)1Y;{;dm0c3YC&{fsF`MgS^_a|pvjG{Zw#RI|V%`$l^UvUBa}PROdMsYnpVcIu z+J3XVF=6&Ry`!E64-8Z2*~xm-8Qo}pxhnU(Ike3mRSul{FClk9&WQMhCVG<>KbVLJF3wkXD4nL9K16oyv5Zs$*H$QhJ^DT1>Wc0vb#`%9rJy*qkC^EJdpt#%Eh6` zu|MTI9foNSnYZ)*T6em!^~d&4z(N$bvC@iJHG(Qq$cmANdgB*z?ea6c$~-IczZj0! zU3wT&6S+T0ezKyPRz%+?wJ?(Llmsxr*`mdz)2yUE`#~s2MWp=n7Fj5ELosXmYnMswxJwy=Q^GzatiWRFj-!{SdNSYWI$9T0=Ubhs-aH=GScER{}q= zQ~&#*;tLNt->HkAFTUG^H=@^jSL+slvsNG1F!=+QY;%6JUx%^S5A6;=1Mi3m>GSS( zxMP+hBm$WM7BPC#eW?q*efvvrk5~=r`(-x<9CSM7_|*6OaB3*x{Nw=(uVVUqzc4Hm ztAg!UNUe!ull#6U@vD5y6uW9tYr@&@m|NoJ`)FsxsVjW>R40k-WHyk;Jt)cP@MT^h zO&d9aPvDQNQ{TX@GHmJ1LA?ob>|ldMD9qEMa#o0$edQ+SPKWVNk}zwL04FfVF!J9V zSuh7cSB}}EL;N}!{SoZIDd0PPP_cC!KHZ``mwzz#ZIS4_$yUTT%8{j02L2npiL&jF z3%R>DU=kL?4Xm(z-^Bd+y;$*z5QawcaO3uBY|DZAeYN#vwX=(dT?bwC``~Bk(L}4_ zIB@$ppXF6RfOekVJz%SW-7isfqjolUsm|y%tdVowSL}Db@5~w}$(eVUb&+VFWJp%e zaLjbnsfxg#yET`0!#P(ewqpy`j1sA%h^hTQUYLEvhR*08QGtbF6|q)|sop}PE|Ig3GHX3Ld=~UVx32r` zSblTf)-tG?h8PssD(_g7L-Rg5jP9XcGo=Wbf5$i6b|sQ`wdeE?A+cxyNJz4~dX+DV)1Mk&0|p)UVpuV%Vg?x>-s~OOPbGDG zE3EfZxy+k}E(;k1kFptf%*kM=!rl7X2yrhV-!UM16nAIvIQYzEzpH;DG-2gjzgELY z``5Nb-t!kChZlJ%3C!i(<7T0=JFsXkjcr?zq1M$p?f( z&O3Xi9j_ASyc$l9FV_6O1Snq?i}L4vwYW`q3py;Y6i)4YM3Y*FmSEY-az3@WD1B(Z z0#A0~ny&t8eBRY(8lbZ)bylLz(mmzy{V~L#+CpH*Hq{j)S9amlLVqQJ{voTM z?9tHq#eZs?X1*VQ5X%pzeDUD@&xF=1Cx-c!q`@WW07Amn#9b!ol6Y;>`$K!==2}Z| z*f2)D^qTSAdYrs*NY@hL(ONGDw-`IVKknQ=o{`lwev%y_aL7DgWS73Ma?ym1d6mU$t{~Fk3!65Ic*$|8HkDu{b~K{}xs@>+YJb8jv@6W!o^{lr%UX5L`V9wu=Vt zn@XwWL7bSruZ2IqO*uRN^osMBx^#wfmU_K3D?7&(F&YIPZSp(w3W@8BTZ-=5Adh#_IW@(( zrtB>3a5_=#$)ou^`oh`4nDiX<#7j=%5SW`S_~(yzt3JKHS`{8JEVr(lz6Skkh=}hp zD6ovc*iOtdCq`M`9++M7BiZ-EXe@L&o-@<06~zR^buJ3Tl}csc*SiS04c;)dF0jcD z;581z&pVA*i&%6C4oFF-Mtg8l_D93w!Z%$rz9zZY?uxbM>#s@@T;&6cv4S-Tj^Z2_ zuZ^s|YpAVrjz96Ud{O-HH2n3Q&~vY0sdvXLC*UR$kltQE^sXyo2JfE1(%;YGOFN1F zWeD>6O;rnA+s(`P` zZ(?%zT9cRs-q&yPOPP6z*nYN9{e3>9Gd9J%-=@?*2Q2q=d?AxsL-R8`gj7HB9DiUd z#MWIAbpD8lW}CR<(b223V{fp?>4CiC@xnq02=h73fkoD7qjeR}i1#{=U69!l~Ft|=EVHb=j zpBySbNcZ}wn|K;%;yR|>J)Qd^9>5@dt_KGU2lJb~E^^Ej(Y!6~zZsl0PuSnABog)@ z?{sjSH4Z{L+BQ7<+s`}gNBVh8hy0w0t&c^5yXwLe-!>9Jz9)TImN&+p&CUw{TX0K~ z^wh}V^OLR#=JVnQDv#E1ieK6K+`oJh&D%OAVVTokD!b}7V2ggF0K&B<2Wg!?OBJWyT9x1n~8) z@}mQ@+^Fc#sEtIt8cb8|fI8hQ=nDx}z3^ear14R@PV)@SLeWnUtpCF91{Xcy1#49y zy#8#Zz|nYA-Y1DYJ3{(%WRLHZoy)*V8BM%`GqA>p+?cQMe*YyoSW@f9SK zZIfOw%P<*kamf>~6Xor>pf@)#>swrg%E48$M==#qHZ|+W2=YUap89jWwRgw=ZsE)# zJL`IK(Ny&M!7ZfyG2F$83%VI4Bznqm3*%J7W$JY_=2vJsJ6};l7CGtj_Lw=T&g$2i z%+J)?uqH$4qI8b^zIgCORj_NH>dd1Z=8`AcE!*?XF=_9F#eg&R>y3H-b>DlJ-p_KE zai3||&9FHJTpRYyS#+qvw@~kzageg&sT<)F)pG}fNfv^@^s^7Ayq|I^YYtg@0rWO8 zL$a_)?-zAtA%ASOyOuE~_Nfs&qx-%{%aN_>Kvy3V^BM351*9%T*|qMK=cEx|F>P^c zyxey$&;LQC*~y_^H*2u<0mytBxTy9S=Tu}5n$ryrCMg-k)0)Iv*niwgg`??EUZ3y7 z@+_rxYsLGa_-UKeHwyQBDv?PmR95dN3ZuwIjk)-G}7$HeRt6YzC|R*g5XzqI@uNE%PhP8mzNv1 zJ`@AMnD>6}IVo!rg}>CQkfx-Jfl+$w%89k_Nh2ArkUYbBeY^H27JFF=eZEW~ z!^wN2uIm;Rxr==mQCUaRV0`So9Hk!9+AtZThXx>FQxP7H0Xjd1BZ^L0Nxo&WezO(5 z{FBP;W9OPk<9VI_@%_F}pI*dKn#DCyYRAa*eh(W7WYNt}m@8oiC+N<^hPt8FEE9J7Gj~RhLxuciv}X-4NvmAF$!SGB2Br zx;LGO{Tcf^o|2u!6N6belrZ0`9OKcSFyPUC&d>8Or7uTO+52Gwgc=p?2=E;!mv+Ll zz00ogg@?aOYPK7GD>%G4^jq0PY9F0^)N?p{!>Row=IO%HPXlO`+kRr1sxM=ow!*@+ zQ!z-amzS(3uehpdHO&qd!NL{zu(yl*Vb>Ytyi!Q^z$*icB~tL>1g+gZo1m%ZW$5&apta8n-oUeV+nKPX>l5|h|JRS7xmO=Gx^Tph9ZM*3(CbMEK zz?TO*l-6`hV}APCIc5ZMYT@2*J3 z%AcNPWVWr5V+_kZ$@S^Srf6s_DjFz`Sk?~PMKui`j_}Nc=Pr2uNejsIpSd_{09DJm zjGKqa`HsD5GkxGXVs!Pc_t`;0vQxsPtxM&CAb`7O`^CtDkmAKwBS+V~p9kyDsRaB8 zm|2rlxqCjO%zWZwiL8(w=qc)X_B>BGx3@gEp-@xmZ!+nAvuWZFk!KF2fh!wImhDD` z7PtEIqk~qe)I%|I|56boBJE$3vIJ&oMs8fsXL~awYY$^(5U)to+UwcXfTqN5$_f)`}28w9Q$0k(Xs(AnW z7Ytpm&STpVi>Ux0G`X}j44eu9=&|amf~IcWboVFm?d$!OmpLyy5yrszFjgkT06%x> zw_^G&O)XeX@Ps5iKr`5cokfF%#DKb!UDO|XoHfW6`+`RvxXHLW;a%p< zgdf5L)bki==WvTCRvfGUpaLF~uVNaUf}-hzPO)zI!Gs{4kyUwj?(2)Xp4DwR|3*`x zs!;{Ra{!w@_OSoS`Hu{Vz4>Uk+L!4C$O5H5fZ>8Ra>>2^H$$q`Oc@;HpRz}*TGM%W*T+cyuX$Fi zbbmq6tfUtf+AN68VmAK==K$c<>Rn7n{8O4HGUe3Z^wdH!TAVV-la+(k*rzmRWI%pu z0`#Y^s=`}L z?5zy-b;npm+2o_hnvLEc<%U9)14`+@1aIkW@SY=(Q7zF9IS4AfVFZ9sKkPG;)ON{M z!=S3xEI@Q7DMBAW(qrH&uJT%a`9Y#+4lf#imT0CqRhn>vuPz|YpSp53U;`3j2;?hW z7iM?_f`Dsvsg$+VZ>Kkp7WseIhA7vA%0c}R>eDhqO z`lqGiEO)8j|DNhpA9A8$KAq=jWn0qY1eiOhwOGeXhxZhK2S1fbQD*0e-7VVit40s= zQD=5vpn&I^U^;@pwu$`MVwFde%BNc2tv>N!ar;SP8<;BY_&EyR$G%YulkLvZrB0-y zd6%@!vK}*%Mhnsw>v-QLmwy9r#xS|=AUBMaIN{#k8rygAQ~rHex8ekPkCX5RFokZ5 zQHN_gAC)YkZy7jEN==7tR*W#ff@nQvQDXfOBssipf9NsOvvS9qmKNv;a#WHUmgZIr z^OFea-lnv7f81(Y-vUsC(itw1Wt$6oLFd>C$_@{IetaiEew={Y7SgwQzmCa|B%+DT z^+DRDh)Hilj^9fn5(AZ7USmMmYjp=eN^K_c!^zR?q*Ldv`p&zc2kx=< z$GG?>XMdAx*#s&4=TJ!wheY_772mf5)h=Sj9%XKZ$JE07K_Nj@Ztro84U`-HYEXsa z_(LVey!6`aD0O(U1EG8F?R1s~1vcC_xv%augGs6Q#OYRn99Qr&6m=xKHPSA%S^`GY zk;bf~2?ELEqU{@@{Mh-e+So$SZCS4)O-pp_wOLr*?)fL6{3Cd9r543{2Qe+UC=g%y z`tw6R#$4@H#Rme|mi>&wt@hn7m>(@}xJczGio&(EMJKvh{veQ0OCtFo+U875n&mea z_7mx`jbJ*_1+0rNO~YhX;+fdrf6dwmArkuGnAX$*vr4;b=9;5#+J?l!Gfn~A;0XX- zM4ob+{fJP_MqE#;GyI9VXJh=DLviX}czzOi==NAFVn-uMD>L}>232ON_7bPhRJ{qW z{)sgBQkY)1B_Vm%($WW#ch|GSvA?(KUTOf?g>C(clnl{&UP~C?+ayfII?em~`l;D+ zwkS5zsdjj&gAeiL&`UGJ2Rie&M=mie^@$_D&#n~j(GvQ9x?-FIiRVq4w|WCJI8OnD zr0p~pD&4Dr9HjBTxb;;FX2^AiviSNH%sp#;=bE`6RsGK4HO8<61HK;|cQsigLHUU)uWV zc9?h74O{0?Hs!PFdwR*z?Hb6c3wV_geV9eJLQreMV~5H#4wx6MhkH?O8aE~LN}^%n zLc)Gs(0i=s>Nl%$9Su7NpD0l3v=Icey8sHMM{m48X(TNH( zp2QRoTYFc$jBv+7j$gyQERu*_fMX{qgi5w-csGPw}XD%s3L-HB(Fsux?!2=vph>}V# z-#y9%4a&eX%!SExe|sm9Nt8`k#sg5b)c`9v5J3_NE>u@2>)fp(=C2WTk*BYpJe!9q zfNBiJXsNjZaNpUa6Ok+El0&8Dx&hUZ$xW`%L$qoS=%4T|v0O(iQ6tkw2`C#I_%-X2 zIEdBp?JDQb63`q@oYshLGzZ)&i={V$lCX|DK-F-4;JWqM1 z`?tv`8ZYAODrKo%*Y%*{>PYWIf6^$r;UUs!F;GYJ0RE?q;J}P1~ag(F29N% zaf!&kDY5Sc^r-8Ba{=+YD_?zp&<31|TMx>J-zo5`eECOz8|u|rj1YV;Wlj`1XtNkG zBloz71(cjo_#3WzM~lE?D-3m`g+Rj#d`5^2HM0YR1Rxfjbr2BrWr{EMtB;_BPHGT- zaYl>L)?b7ffhscL$sf$E>i5TQ#bxpW5nbxZr9+-ZSf{Ewgn>%2pQteNNi;3=WIX-{ zsFJLBn;XRqJ6wvGbkA!6v~ZD1f<5eNnanOIBLygAgNNcIEZYys>HyiQr7W+>68qh0 zRb?4e!1=wv--?#@$?zHg#k1>|aeXC4FxR>0)3t{emq|c(fc~DPncer-%i>d~X4**3UakXMwu)Mm^+gikMV0D$yAf%AI}N?AeZ{Oj|f1 zr)ZpxJdJ&lLPTvU0~qfo`#VJ|SU)NHah!7irnw`xQstxv=807lR)``!4_w1h66Er4 zz%uw){H16mtP%sLqEN%u+*)D5&D{k5vcT%xwaKwLij`3GeHxW(JlU7>zX?Y=Z6cZ+ z)Q{AwWV?f?Xgx}y%Bl6K_B3Aqt!o;s;^D=&BBhR;rr+RXKKhRvTnD7!j8qh3zz%BU z(>s4~_#f{go9B>j=dV7S#H3S+sCzh@s4Uuuf6ERQO=r?}^UJ>p?N+3u^^hk&rduV| zfcz61NWt*`f07^j38qV^8!aj56GbLwf3v;KTu@lGMyEAo5CLCwM)ot1yIvDt5l}}y zLLkS+vr8#RWj?&|W#GcbDo>(gNo8K}njTjAV>2fl!;AiX#*8Pt!I8rN_^r zrk}yP9UK*zzyi;rPI*uf&&70W9*Gf?vYu%pDCZ-zp}y3B5HY!Ux-%^cDw5Ta(hStw zKV?BlNjP%Lg^tmj>*X#$N>f~)lq4m!e{w50!uKDEHHo9>DN|Wt2a~{6&d)>fN_Z`B zv7LlME;1SK-AigO5x+|XCW>M^;x6=XF|DwIk(S6GysXa3+|zx3p`h0PGESf3;vKo? zzJ!4)*tn8@Ei!%~Obh5^X4tTcyLg9QSOp#QkHqafBjf+^S&=|6;XVQ4;g|miYe3xo ze`1A#@{Z4a-QItFtQ)+fP^eXR3qZv)bK*EDV6gFAUjW0FP{mRL!ZhnY!tnwOmY(z< zp#liJ!U}-!+lL^t>6n>+Lsl38aSvHR&%*4=@*fdT%feg&3KL0L0Y5>k9qkq7lAq0g zOLzTQb6@|*YKzbaP~bP9ZB+j;%;%Po&|OWfGeKf>#eKqvNLfEYj|Fd#6lo=8mPA%1 zET0fl$R$wWcb`FT3Mz^$2ZJ(WeZ@Xd`w#pOp~9yIy0ENAD%h_Vha^Eoc{99A+ZF!W zA?n@q6^|0y6<}lR?;vLdz#0G(697HdUkw|Q1?B5|@Y1WGac4@6zN=bnY|(Nrqelt(e|oE9xWe2hvx@!O85w#zILenA zXiOCwbb%_t(7q=CgkS@6IRxF)_+JGgzU3EB632dJ$_W4*eNbMyKt!SM>3o-PoF!U0 z2+%l(;%BrCesfb=_BCKY()#IxdD0n;%xUSS0Jz8NchEZG zV-G=ZyXH%L`P{;yY5@9vjS_3IsWGMp=I<_e-GZXJqq6PKi}6*QgJXAJnQs#?$2yy0RLp*pvMy^KLWCTCF4K62xk*we|?=1S4 zB8`m393vs^oao$ml1d{`)#m=NP~gW1jLel4GQGR`*FFo0a-kWDXJku(GyVn1;$lJ= zft;Ksz#jL?0+-H55+d;}avBt$o;_(e^tHW4I9HBZG!TU});X**(qmXBuI0_)p`2um zx(TP9t0nl+I>uvOK;%FOofJ=W^n*L(!()^ZH*!#x3Uo#kBKAH~SSKaN;g<~YnVdswD$4Y}Pc^s&8EQ=9PGK$_`I(s!^R6UBcIj%Rf}Gr;{;F3_Q~#=S zsCx7-=nz!WnWG{-KRvQ?dX7lZHSik)7gyJYr^=|zrSt<A86|*enSM9i`DZk!QyCKxtE$uL;Snad+DK*dOMdm9tRqB z9mWsG+i9L>kzaZRVSmHsNCi07!YEHw>cV!W`k8DRXbFSgl_43{4UQ)te_Lky6~r!c z(E)I=txn99xomie5z*J_I>op7Ll_T%WgAI5HD@FM(6#IT+E)5p>B8W^3v4$aH|`K3 z(pJKG4~2SBfyP_o{`l9fs5s2pw{z{SP|R^ zvi6qqD%3)Vi~R!EtIF~#j@R$nmR9?@INo(K@u2PZ5HV=n)@mJ9}qmCF-cp<=)&9N4@;t{nTFi({3uLv3MGRM7{w0zYD4Ep@SHI zdglTMZb^@^0bw6C1`@rHf=?yQKOgYMF-L?9tpRrZ| zH0oi3uxJAQ4xgkQKbqOowBhoZK+%7lW90#jVAi`Hl-A7u|7Fhsz>bLkxg${P-j zh>ZRb?*C|34=A9J=&ND8b@i;IQe82DfM{w@38kjz4R!Xvx&vXZ-GdI);xK|(D&Ep> z=4I%@fcbwf1f`i*dl9KhIsXLu=Xu4|3jq<7I68@OqFXP6S7?G0eW_z0S_A?xcSIH- zjaVt&de;nQftYEWi-DtN6l68Hl08#ctT<}!Dv1#X@tct$mGUHP7wu(iu>$0@HbPwb z5!2yy!d%Fq3HT-ouVM^^5_u2bxBF-k8?S!ZJB_-C4%oPULoCy zLn~x_QuR@tf+bI3zz{qY*wSGW%jVtU($oI}vrdSJ5i9od9Uz}>-rjj(#I?>y+H@F=%vGg0 zEd?=(9I;jTsKPZA3|6`1NP6v}LdxMq^_3dRfHi3JL@?iviR!*0PtCY^rLsYqqQLGC ze5Y;|h)z;=i8~^rdPIsEy3sFpFU1c(szSlPd<>PGQ75_zWMJqq1Qd4N*xaZ-$C@J< zKPtjGSrpsgA0lX%R+C8DTR+k|%99|5DIImhagZ@gEHLUPm_*tq5P`L9|LTJM6KyXY zjS?m!y7K5L119d#^vs9KI&&r0CVp5YA688GY_hv1HW=mXoOkUAgl#XxeW**<2!094 zJ=FXN`AzU1N?fPkJgTzdYZROj*y@z9`P`@>K&e^sQicnMYS_p zHU5=|rI}IN`n&cCt)$lIo*7bCr#bzju6&7k(s+iz#NNamuReA@bQE&=it84i8}-T# zQ0WDhsO7B2w@ZufPpEHZUmMFGUL-b2E8szsDUbO_MUl(+iob5L&Q#(HZ_1fu*Im-y z?pWfHKUOe`Xf`oY+|+=FokYD(u_wP>6kh;d)0)A(dty_;Qe7+O**LGP0)wrgkd`Ak zRA-Rkk@HuA&VXHSnn*Wv z6N_8Qiq+dwc+vL&pJ!fuvW_v&GG}e2!u9xMky{9> zG;Cu$#E;}t1maTim|PNFMPfn7krPM#4lE4)ZTRR78AKw z7LX}xVn%S+Qte%zB_S{`{XQy@m%B8ZHH&%VW^Pnv zEfBkCB9ui1I>T32Kav_^VEi2?I-A-c-*fxx5e)x44fWI$y7`iZ0? zX_M?F)32WdJ%u28)o&S65<==0@6DzKvkshk*z%x1v%7@JAR_-<#U6C^@cu`oC z=wOqFiwI@XKqM*ubn}DYho-Q8cq;tr*lgbVR*fs++-bC@63H#<^}X6skpN4?xHfy6 zizjSdM*r&rxCch{r0{w2HFDC+6ZGG_Lq)8AdkKTJsC2F`1HiXtJbWUQ<1pi8McPzLVy8>RAGudc*<=~~HR|xbQQJ`Mb~ByR&e+;_h{$>& zLFMEApe2VTw~x%j`%|3t2jsiQWR~P` zj}g`EH_>DWQ^0)6W7~mIp$E?H47hzYr2&`qwXr;kYd&qEWdB0-fVnDErhQBGFR@6y7s$hzJqN(mluu9R7Q`Ui^@=TD2zcIwc zA`__}@KOYX?ipVu6q!c)Sy&S7_mxmom~IS86wYw(M;{pu=yYlg?MW9y@VBRh4Y>}Y zm2EW8ORBL-7D2q+NW|`G(pz-)st9I`DJ)}W3evm+!9SuC^X9MZt7TMFB|YwXGL8`h5UV(4>O89Y5R`9zC{*{cDTI=!n^){gBwXaQMK zJjLm3WX@eaOw3U^em#PDAg{i#^6iRV zYKxG_kdydU%I@*cxdM(C3h#H7_T?9K8E^UG4T9_!5x$kKRdj%0W-mlSP$(^hM>gv< zF&RFB8ju-l2(Z>!$3ouyRKYtk1s-dKxua@=j%)-qE;9ywU+o?(ba^1+4OCF)h{9j9 zB{<*G^v(OxBfM$bOf1hwg4eCJB3x^#Gjz7xWHwTT^6bvNK@DZF;N?khxRtynQ=gRN zNs0Ad3mo;93#@A6%(bw#xq{);w-4iABgzByE&Xoj#jgWSG@o=ulO9l@4k<=+_UJS z&jq~%A?!pU1{~Qrh9`9Yv6hVN*ky&#d;1>=u^PFspR>atqLKo(@E{(wFT+4#7U1?^u( zru%~u{Xr}N)-Y(xsHY6q!*6V1t|6Y5cN3G|@jgV{zZP2a-}&`HBe{v+0|ecnCV`Z>R_I0W zhk+h`Qd<%}LLA$ob~n{_d<|!?zJ)nY>_?#DqJ~{^}?hF+Gq?9dm~K;VfBd#vd;h#2s=UBvYoxF0i}dEQqToX zZiPHP&zQk<`IIWINS_QFzW7MR%TaTb$D69;d;G?2>4^QCrGz02z_xjC8Qkp|*jKE} zNYB`U9<;8EX|9#hO2sMfngA(~fwmwifc-fP6vs!FYekXfPB#C_<8brYXtDSx&x7U; z62}jl21K^PR`tF@SIn+svXVX-j1P3Ps$uMeaJer1o>M&ud?@0Mw~?LvdMk|3lZBY3 zc!wqP63{vUT0f^ePg+kEp7FT3V&RvU`;{X7$34^-c=5k00NOx(^>;@Y>0DI z*i45+3^HH;T>%8T2uG@<-&5ud>AAeODzV&1hwyDs5*?KkeB-ed?j-a01s#k2D&cE{ z0D?I|#`x!m8&c^&i%y0eev;_`A0_69>;#DqO#}zn#cuo^VBS#gzGzvLl5fb4O32iYzgl~(?u($UbO<@8&Z1DqE6oB z`9FzgpH6J~h}#*wgbUdlISEsHJjR_*m_*#hmj6PPpSLvn>0gH_E?TRIfcyiWVSL)z zuNQuIZ25`@@|iFM9jHiKQ2%?F_tUu5=TO!l)ZO2C1C0I?FsG3~$LLY^&k*GPu7iSn zt55a(TJ}+VT6BK8G~-uY;C@KyR!Vk#3~?oXo%8G4Epi*#pr9589M4z4Q5H|2rG4US zPO&kp_sQYm0yXBi1C)0taH4HX0z#PKE@*cg5X=@gGpLC$%3`@B2@L0hcTQDrGmWh8qXr$+y#Z3r{(- zR>L2X*qm*n4T$-H1lu9lTWBX1Y_h-81T4KbjF-mdtJk&Gd< zw|P{8?Kn1NJ9I;))J)H^FK^|fMYHx(Bj*a)FaHqYmeQO-hlW6Tg_<_zq#ff!UMcfE zMY}2~)H)F&f`0vyGq^c>DIf%n+`Ea2t)0?&qE5J6+zEf|J`=Zj`_k&uJ;i4xGhpQ` zHWG|Jf^B2j4hV7Gn|}Y4AY}kKn?RZuIM8A#TOaehX4=LNdWC!X!hu}y(n=12hyB6? zg|myo;;Pvk$Vhu4G8X0_z>sfGXP!5xeCR{9BKrxSwQ0(AZq7 zlBNlqoYW`~H|!NfE|e!`^&OiPX)GPeM{y3l%F&g9yalT;VMs<83P`a5}^sh@=r(Q&%6G+eb=ZcvixtI z-pY5g@#DEuB*!z!jcT6Ti14KS@U*d^Ri6ThM`xy=-hV&JoY1b(zJW%%>feBIZ4#;- z=Low;fQY|W`tr*j5od)&kQgdbSjoqCl7;m@sMZrNJBhV3_pK(If40g&H(iqq2}bJFM^w?EB{;QaPHP_|tsqFoFz zcYyi=7yg1e4N%d=0nNZ(|7i0@+)oeG#ql2>FrlB^?s~1FBF#+Jge*d4EVrpbWdkuy zkUjeW;h46|V`^+yY^D+y8cT^)iQOiyT}6MHgNLp3XnctNIl2Vg`!iW1mvUuPlNVz6 zK14dOy38xgCMk*D|1Xk5+r+t&gW~Hn*(N94V;n>WkqaDD`LZIrp^{c@38x%)0Z@jU z;;RK2++)dw-4_?B7_>ZLgW7FacV3D9*)+)_`r@vN^D0?WShV8g&NXaLhCl#ONcW8{ zI(EWJ0HV4o8mZ&U;SAbRAafvLwx9r+4w$Z8*_}bZ3jkiP5@@3l;=^9Qz511LUIEf& zc@!PLExDbtKuC%&An7Y57RmaY4-MpXq9=G@TW#l!p)>ddF_HAU@~OAGsbD~PSTiKr ziUitjVzokn{dlfLMon;~;l&x5Ukqx}6flEksvp$>(5j&Gl3T`{4@lK(ql`5Qs*6bR zF(1TGP0onKR{uflk5j8Wl|X;WCydHq~$mF2gQ8TW+(H9|77p=o=x4N8BhMP4k@rUMi*7%{@0%uRkxd;5&g zg8o=#r3B9qGsHCOY7Cy#4^bfnvxa*22AY;dcT*z77yVp5AqPQ##crI$k5LZ!57 zB&)*1tA}o$mw0Y=;m5HE9NfN$&x5=J7;6RuF>L}X5QdTx?1Vi)>@e?iE!=-@wx@L4 z3n5)U${Tvx0gEGyt}0%o5&2!iaWx@G+8lpZ&xPDwgj|Lk2>SHc0MV2cv&xJB0SWq6 zx!O*d2Gh8!Is0P%exUS4$el%qU5Bs96pvwx+QqKJKdPoTZQ;%z@bdk+uclw`grhXY zB0IL99eV868Y&KAAEW7=n}&#KVOv=_AQ{>q`2x6zS%C%7KxuZF90&pzcFCODLuv9+ zi2UyNnK0A#Yxa@VQeZTZw7+GJ-TNMW$#WZXZw^MoKW~TtymBB*>mmMHMnwy3`;gK3 z6O_FH!zc$b;*fr25)guE8+ZAAMTIMWY6WQXJD{}nv;-K2MdxeFVUCt@lTk6z$elkv z4~SC0u85FzJC{AFnUDJGw@Jde#cymINBI9%FJiiSm4dMZwQ#NFMY;!6O$S5*g{sOT z|2>mnKmxgsq?D<|>23&|D7E^rnHv1u^Y2G4E!=x`0=b~*D+f5PQ|lQ{g*&V0-KruS z-eHd$sQjZ);HVBnt3Nf~3Tmr^-fI9!kfw-+8QCDxnxznQ4dljLN4`s|brhQeWul~& z_XD+iWKHMMHUnSO0(T13!ihq#SVi^3DhbLPO>Y2t{wY3dF>neuuznLJ&7K!N=Z(ut zz3RjLLn--QI+Zmw@XV59JUD)ZBM*8k9_!oeSrc@Ae6nvGGu&U-$mn8;s9B21tlHuD zfG@Ddi5??`NtRNrthN6m$G%O>BFoa9&a3}kUjqa~O&2TBujB{pOSlN<7*XLv4UF=SEjJNyz-TJX!V}Y(1w`A zncv2HR>c<4dkLwi@Znk)4w6f00D8?N8CHlmsh&+eAoA`qAmhO?zEnH22dO8EZwEL) z+fZv{k|U}U#yu;|HP;*supY~dz!H-6eAcj_J}hMkr4+PG%juUo!R>6tw9T9nYT`2F zH%l7VM>uDJ(&x|jpD-*q9`K|YtoSjZ*Ehm*UwW@X15qPV{ia-2-~&p60W;4_up>X4 zmM4*33Z0`jMBpMW<;DD>nCeZ31?HS)32|*lb|)OdqP?o{oe>Cw?*zm&Ae`hN=U&Yq zSq?cCxht;P4tz+RX-I1Op*GhwZVx{67zOO{_ELRssQgv5sAze zUZlBd?~nz}`l05nB~|dSFvqr7rb z-vc~M5lYY3L%UInzJG4N_lpM_pf>c|R$))78V4s{R>|84gW8o@1M_SUWKTAT z_a}s1F(e8ttKO!$V9ku#1}l(2U6Z|sFGCxbqB>&X3R36?V@1oS-s$vwglW!t<#ysf6%Agj~T#i-qYQ_fY3gs-ox6#`Xni?)Q@vnt2g8J5E7AK3bbCUPics7+hRq@eAc zrzr6aI2G)2FM=;#>UHy>_Kqpd@cbJgVHy}iK4O^!1=~Mci8v47{|y;GPea!FoB1W% zl9zPYmA4KqdXnx((r3z6NfORDZYN%b{^=@=J|BL68UJDZAb`DST+i|GsA5G54V8KE zJydLsOHEy`ie2-G;a8MWSSs`Qb5n2*1LK!lv-9}XrWD*vh_B87%mmNxr&0_1W`|S1 zTO%b9!Ij(=9DC!24go-@M6Aw2T=2+VyV`ZEi>bmSz}%P=5NQjh z_)nYO|ISTHTq*SCfznOC_1C3aLNey`HQh$l72yzrw%H%fk-0F_1{mkjd2g2jV54eZQ?@CUoc18795>b;LhyGN_ao% z+3o&V8yYe%{WO!Ht-|+~Op1UE7MvgVFX4~@{Ewrh3(m}(!A02XlG=-wU}mYkNPVo_ z{;oINBfNoOQ|?y)t1_z*LV8D8M^Mrb@H+OBU%1Csn2ZF5lIOT?{;H-nJA~((&ZySF znTNK2w~`YYU$d}0Za&(QtLSJ0QO=<3<~?xgO%c*?K(*`F-Z|G4gM5HR#X&kxfqZ?{ zOaHC2d@{o4;)9!doR#au@{P&8;lMF)l7tL?+=-cd@HY3P@lVkoFZEqvZeT|%fYbv= z@ic5~OJPVZPqhY7rn-5w`tDD1S_UU7wy(w_>2Ied=HLfUMsHv@+9?0&yN6TBqUTZy z?iAem`@zC%`04q>q^3T6xgmfLeA2M-TjEcb?LW0aRHygfmu2m*17odT?2}g^zrC6s zDSTJ%=}M;RzZw2x!_iwU%-* z4%CHqRt4tA+(`@zv@v1OEHRv;j5o2MRVS2sx@V$F+|Qp$m7_2%!xKu%Ng2^lx=9_i zoO^jwv*XP3Us73)p!+s{rmfB4T?Pq1le26HHw!AlUQ3w0<`~jpCZ1c2L7`k*$XrSgan7HCFQ%(D1{D7AgGlN3%@s+*UwoYM> zBF`8CIT?|#Usz9S1NS1EFGF|BgzhH=3N86Z4l=cVcuOpuW0O@bEAOXDKJ7w`YLY{r zXj@fXSIf;%W~9Z~3>eT^Uh|T`b?B3L!1Iv{)KBp%^gb{Ev3i#c1V5F3Nut>Ukg3vv zR=PC&4uQKzK0tnUr*r2CaNebkD}ia>n7j_e@EaH`>Ejpp#%}v&DE^FFBJ(Vh&grkb zxo764kBD*?)_(Vu^a|9qlvQm>lR$aN1_aS`FBT1+t0BKtI!07I9Ti6-%=OLypgaj{ zD8NN?i1So~S5;3Xc>WnmE~v1nB$E=9$PlK60&$W&`owaIf6F)2;9+1-5Q@xBQh_7C zVd`ghBtgAuCCVG88=MYI7m616=WAVBL+eGiO4#VQyQ7AeJYHqiVhP*1QJUs9=}JW; zgmY9N@Z7l(AUbB#2|l{nzurSMzSpjpXH;NmsIf&W3A?06!fB*U8(616Z4ppJ%B|KtLKQ7V>?6GuE zd99GpmX-IryU9tCyl8g-upA^SyYF8PBQNf257fy@RVQ-#!G|0g;X~^Oj%+_^;i@|+ z78597mGdjOJ8(ie({a3#5#P4*?U7@j?hCh<&BGGkmC!&xFO4Nj39?8BEmd!~Z+Y+m zHh&+yA$smHA7g1B9(|Le*em+mm%}GCUYb%9QfMG_qHPUn@G}ZtS3to)YCkKSTuVFF zW6{$bG2prIFmKfm$P?^Ca^gV-XaTUB`qF;z$ItwlZuUf(rsS{fjts1bjyT?97cYRw zi_Kc}(4>9Tjkrl1mb7E>E>C3%Svz1X%iqtqEw6Z>ac}==lnY2cjDIcWdmlyfwB%p} z20)%J22@&4sPdGYwGo%{5vkfs%gD0z@cuJXz==Av_V2Q8$z0oC_w>14%qgA^kyk{E z#5&~fPq*J-!qx`PWmu6mW?3$Ze>GpC-)rdaGyWm)((L8;Cc#;YIqyTp2NQ3D^snIl zyiReBzcN{4i9%LtBIw-90l}5a;`89^=rCN8TYvwgEPsMo@4v8<4Z#oapGlBpI;b=e z4&Sx?t&eLbG|e8h*l=04?O@}+C zn1v7RnF!Ob=k`0r1c8yfwZbz)f;$Y(f0T5b|Hkp|y;U2F4$FpQ*QKC}y}HBatQs*t zYfybTkapQw@sU>}XUI6p_Mu%wa7D-rnU^9*Wo`0yY$IP?=E=N==aKm0X6Ke>{Lhrk z5h#2I3js%-i3>tzf{Q-ljdUgmha9oD2Z>@-*dHLc3d2*F8!tBIS z-|0Ka^S^nR16j3faL=L7{hSyNGB*hmbW#%~kK?n@iSK??8O7qt>u2uU4{^LQSpuFfmtUK05 zmEZQuFBde&r)z0yz=|QG^nKc?5)5%ufAz}M_5{7K8`VlW1_h;`oJ(sj>1#w5tG+(^ z^;cf&BF3#Uc_bVQ*$P^xX_(9}bL9qJ5hZpkHA!6e?Qr0A zj>qMl1eyVTTd$~w9#y1eJdg8$J>mG``k%pDsMywTp3o=7mcmPd)t{`8 zYN7cZ-e3Hb?Rq>xNL_^Vy{^FQZbvlQ zRJxB@a4!na#GJG0P8asMa$qV-OEL<3Ujl3 zpzvZ@Df~_HX-NZ^+JKi!tA@16kkh>(szxT&!@fgO?5Nr2et1z78!Bk)wXA8?*VgxX zvmnJUp{jN<(M|uhWP0iL-Np_V%XMB6dNtaYy92QKtkw4W~$zF z;UO*P!Eq7vaBG9FMB6pJ!9vddU%^1X1~`7>!F9{TwcP%{!)72LUaK(ENaIm^f1$-m!#b;B7~H|b?mOnUFzAAjd77`1B5%uyb(2ZtAOpBFwc&AG!` z@2e7STa#ACR)4=mPxY23^(D(yfE@5n#v!Q8ebk2UzU1C&0@1grUvBM&dZ|?l5CZo? z%uZZc$x{Qxf)eX%f8{&hSv*3}M3k{-~IMNDf<>lv8PdGeO8v> z?%&;$s=6da>1xMI7~-yMV4HcDz^TB_B6IWK%kx7(tO0no$JQ6p(|*NU@`3)x|G@cU z`;T^q3Jl2NbIE&zmJa8sCbFf-;@wOKM!kX$1upaq0fEi9oUZ*4`7Bbw<(ATR04DV4A8_ zip^zysUD1-*Iz&+daPE##B@!%>e~{nI-V3~1}f;bwp>()l;9ib``dSq@Bo6*_i+`>0Vb=jqA|xMUxnWEZ{c>6K&kgANnLcN9E- z#Mv`HYD*ReWLJS344m1za$ma-#4%)L{Jy&gF+FD&j_ntubq_z&6STZcyRG2y-euPL zRlLj8Lxr3u`DXjwp>RO*7qR6xvg)wfWF7}OuO>DQ-{-g26Dn&?KUEw-m#A*pHEoI9 zm)aJZklfu3suYUrgsk7Qdt+~vE^8aeXRZsd2@nRP2CZ6nlifx@Ta~jd5 zhHjgQ;4+p8TfWn~=1Q2l{agsRc)ZR{+NAV8++^!s{!<8k^?Pjo(jCgf#haP2{;jHr z<5$mV%d;hVaW!tlw|`nYm-rhgm%lk8YqyGmYnQ)^Q)}{x6T*z~AE>9je9m>RDBw$1FNJh>)0C6E z08eAdFEb;~O`CgS*VsTA;r+#vtu32(S@tC8Ua^NB?6R6}oEd+@2l8HV0?mU;?b6ql zx^s-7kxgUT%0U4|ZhRSO6FLU>%kW7^=Gvo89ro}bw+YS^c#m@>hH($gO!oXn#>HRZ zGZ4+;kk6G|6DCheh$ZaIe|fpSpVIoYv%qu^u|;eUEBtc>GR*mUs{QrFI|^M6LE)gi zZd+l>RHlbS9VuG1&fNbtL#|LyL5)#SzF-@H_*be;K+8WI#iTg=q$w|!7{a;S=#suHi};OsovFi(lz*rZ zbh)1kFOdc`q2~xc@jzC;<9`(aj;)^;_vF$@f*zG2UoZzV49VzxQ2PU^hGe&$A=tnT#jva;XMk?qhm zxWFK^-i4oB6g?|DdHd^NBFpJQ2{324iT&Kl>l@HGBy;W2p77%2VoH8MQ1kVFs+McW zdNU8${jm`7$6n<{(iD_Pl+fO}lJP?7yM7#UJ#G=AQ1i5W+2^1keH0g9nCJyPUX&@B zGs?LPmM+Y` z)5h9cOFQHtYw>zO%#$7A%$bmWe`js>RjS2yso=kZ?J8OUd#jOJk1nQ`8C(k_4BfUC z0=bF;aNlu(c6bPh%?0U7#dX#IH(@) Np@zPC^#cg}{{YUD5<36@ diff --git a/client/iOS/Resources/about_page/back.jpg b/client/iOS/Resources/about_page/back.jpg index d75344cf89d1e89d5c9f4653abfc2cae7b47e3a3..fd4e1d364121e24b94a027bb5d71b0eb4025bf69 100644 GIT binary patch literal 118109 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 OF8}ivPfY#APk#ZXhjdT? literal 141907 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ℜHZ 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�(yAh_^|7ffMJf`Ugg4YSbe=a$d~NB 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 diff --git a/client/iOS/Resources/about_page/background_transparent.png b/client/iOS/Resources/about_page/background_transparent.png index c6d2fe64c87a786287d9f181b1f5750e407f2786..d9d377bdff80d598bf48fb87d420ca1a0264fbe9 100644 GIT binary patch delta 43 xcmebFnxLX4=;`7ZQo)#PQTywQdWjFWBLmy+U>V&bm4_IBz|+;wWt~$(696e-4Wj@6 delta 44 ycmebBo}i*Gop{r~^~4s=pZQveT0S6Y*nvB1OR z=kW8QRQ){w007=eL_t(|0lm>dPQx$|1<>z_fj6DN_ ztr^b(@z&9w?|gir-EgcMb_9SB(&;+A)=k$_3LwPuWnAaFb-bJ-5T9<-%kQS!V;A<% ze-8@`hvkjB;jWhD5F>>Qiv%KMwPg@gYzl&?O+YAODQaZ~y=QkufEaKn0Oj_J8$b z`t|?-02FjmPE!B?0000001rr4T9cNsz{BL{@bgL2a?1b!0OUzTK~#9!z0pl>!Y~vB z;K@K7K#fGzZa4vJb{v2O>vI1yL<$B{|Gi$oeSV9o-vP$+JnZ{^Gwwg@_T$DmN8xa| z-oEN?*MsXoS)VTBGS@BR<+KKekAI{0vD8KHkMAq?=MeJmLOl0e?Vh4}ysgPD6;0|$ zB+(@hQgi~Mh^~OhMVCQH3y4^B@jp9Ta;$x_u2|n{vEJ1JA_kpx3u!U-=~^r~f7rRn zdVAKHcNbl@@$ f&r{v(??Lbb8bryz6(y`+00000NkvXXu0mjf)wrSh diff --git a/client/iOS/Resources/alert-black-button@2x.png b/client/iOS/Resources/alert-black-button@2x.png index 4ae404eeeeeda86c06db3f83ad6aa8c4fb2a03da..234bda42f831fd16d70d43c3765fb53eb7b29d06 100644 GIT binary patch delta 530 zcmV+t0`2|w2=)lDZ~}kbYScg!$N!m`Og^@&NKr-aL-Z+Vf%+1? zmSS7F?QXJ3=HtwW8;jS;2@;q7Ai2wrIsZ8)8Iqt!~n()10*}kyAyv!uHFU=K`ahZ>A!sa z?U7K2^5i|bvyF)u7;#l)=_`Gz+bD6rc>TezFC#_}E2PhVtjNmrP<)E*6-LtO4oM9lBvJ=O?j z&f+fO|41XiXQrdMPbZ3f{Z0w+nb$Dv?Pz+{rL6uFuFbtV# z(5l1AA?g2s%f%97s2Y#!8aoZLWrjM U6E;^^000UA07*qoM6N<$f^!Q6qyPW_ delta 530 zcmV+t0`2|w2=)lDZ~}kJZqzUohX2@(bD0hZRa^u+gpdHK>K^d`NZs%p@H)H+ZvebR z*QlbcI_*p{NqjjrVnW3_IS~q@ep0f_C;Rs~j^zYBBG)=gFobBV?Lz-e|HkqG#&KQ$ z)#!U=^78HDhXO+gm*?M4W3zF8H2EWxAD?0jXP+Bf7$DhM-kpCaa`iS~2x4)NO8@2S zZ;ymJlqc`eoo!6Sz=*3VOJC_z-A0M~#p@4#eHk%=SRsA>V?|b`hvHLguP~BMCojHb zjm*n8$Mzhf*%rmm3nMg+tOWz>kDyhCC%%dd&00P~t|T zcEQ7Z7MwqtyWQ{KbU45K=GdCV)X>Bc^Xo={&!pLO*n)%VpM*KHQd}i93`*fn%*Z-6NpLsRI-nOP!UCOFIK^}i32o{1j9|JE8EHW_2U}2Pn z<(;o%w6Ma#HYhNf0x(2C=qDktxi%I0)`0b$G7jy=PI)EYBlAq<7)D2?rC#t0DM>jM U7%^0r000UA07*qoM6N<$f{D8JQUCw| diff --git a/client/iOS/Resources/alert-gray-button.png b/client/iOS/Resources/alert-gray-button.png index 5a78444831382042b13d392bcc72ed9212a0fb3a..3696a67ac906aa3f39f8fbe4d3fe71aa811434c4 100644 GIT binary patch delta 559 zcmV+~0?_@X1^NV#R(~%pDK<4PFfS@GFe)-JD>E`IG&3zVG%h$dFgZ9eIXN;qIWs#t zGdnspJv=o=MLkGIKubzOO-w{kPe)NuNK{ixR#i<|SWjD8QeItDU|&{ZVOnKmTWDup zYH43=YhrM3WiBlzE-ff-ZDet9XDuuyEG#B8G%a*I6^@=L_<49 zL_9`DJx4}9NJl#f2gFHc8r zFDG9g7k@vu0Dt$u0FRJh@6Zshuu$KKaKFe1|LCZI=%}E$*xkc9ZKq=fLK#Hi$? zh}4wmwAAQ~^w`XdxU9_hob06B?1a4Bl>9s(N-fAwEi6bcDo86XOe-m_&nhj+EHBHg zD9fv^%CD{}sIMz*Y$$1LC~ImcZE33P?5OSPZ0PH4o-(;(=8V1&?Q}H;1_r*8AirP+ zevj~|$b{@Ma%-g>$?hE&{Id&!#bkO5Ca;$t=~(GUlxq{mD$O`K(F zdJN(23Wg4x{c43iiG1tY>*}-Xk7lN@Fr4W&T6?1Y{zCJJH+;Xh9L_U*VcHv+tNvAY z?Yx|DwhL#bZ>tKvwR_X)$hN;*i~r2$o^6+Qbh1iWioiwJ&TKA)X@Uv`QwlF1F_WDq z9QiG`W=iE#oi3wSFV4+!E0uq%GwJUvh2LhSvzH}K+W6?)t-lY&Ud84v{<&W7d~m1H zRcWns!P6ew+b=p#Xh>g@bz;)Pvy1B`l~s=Iv0mdKI;Vst044t8%K!iX diff --git a/client/iOS/Resources/alert-red-button.png b/client/iOS/Resources/alert-red-button.png index 1809811089ba4a9f956becea8f0361b55efa3145..bdf3028b87f632d7cd5d91d3f9748dbade023785 100644 GIT binary patch delta 451 zcmV;!0X+VZ1l7marFKQD;wQjQzX!>Nch=%bf%)J1S&5&G!u6TR9F;G$eQmc^Yf zat9bWEQ?{}|9^7N!=K&Npwxd=YsS)*`FX2zErUZUK5$20T-X z6tjsq_C&DJV=?pTnM%e@AwAmlLr!kh&>A#E z;AHeCG&VLwgsn|MQxs%lOM(VYZ7vc@Wkgw4Sn0jJAEK=0^SvNncy2nLhwt5&4kjlMyI^XGUyNgIlS`bCPIHjc4FNju*-P3w@}2B5WJ!3JjzbL?8!62xT#kv zcmq&Z06Y3a1%K=^4pFN?0LozRYuoGUX~b>CVf#m1J&m|f8)mQd&j0CScYktQHLk{6 z+y1||y)3y?Ncs1|357Hk&c(wxglbxG*B8!K&7XPfb;VQH|IWgx#?@_aePkr}RgVWA zMemxO7hZrz#?NjH4V{W6X6IVh7|$}kmGK+U0T^iRp>Us_Ouz?r8Q&?u-c0*-m;izj z&EaY3qnCbmio)K!D?jft&a;yBX(JufjlKW?002ovPDHLkV1kAD`^NwP diff --git a/client/iOS/Resources/alert-red-button@2x.png b/client/iOS/Resources/alert-red-button@2x.png index 9d5d1ab2d09acdc546438c5ba8d5a8b5cf8bb48f..1c513773bd0e894c88d44dc2055e76b096b1b6b8 100644 GIT binary patch delta 897 zcmV-{1AhF&2$u(tBYy*4Nkl7NlyzLaHc=HE`jaD zA$(Mr6SyH>!)M!D`DR})KO7w3mC;d_i~Mff zF?l21B775gs(c%U4hSa?B`{9;ZkQO z&qt&Dm?+4=0WNTYn~|S^Go)JuZj9IR{HbAHY;WgRMEuAS-~y-TCr`l9$hSf~A@KOY zHeTxP=GR0#YZq{W8yt;zB0@w10v(GtP-=OZHl=6FfPYhJbrp_;f-}T>&~^Mulb23Y z%0lrC!Aqs+a5`he`ysv;UG4WZ@`&h<;8})osuRat?Spt7x~gO{KP}iYJkzhQ8}V4g zbY3PyD7F+7ma?h5IA^nDeR?TZ&F~9dTXbp(y=zrfXa`Hw)0sO*c2a^`zqZU0pxUEJc5h>l)Wx zeJv#DS5_4dS*bXO108V{=Ww9nI@P@#Y$tk`RoA$R+lcP!y2kb6Oz*kbU%JLsJWQp# zy8baBY^9r9h)PF1i6-MX#CXC&S>yEEAyYr`+ucnf35COg-TnIRDFg|dDqj0Df!lUR7Y+$?X7qby zZJduqaUs4&RMsHlxMW3U-zdL;Q|Jz>yydzC{#V?{HwhPod%{8hM3M2na2eT49Z&if XnWrN`Kd9hT~5h)xpmZs|{0PNTm$Klk)=XFwj9nb}>O!cVfi&z$g-!ZX7oc>eBDjAyc# z$_>F>>qR1ZEY`PB-VSl$<~n|=Y{b{d56oG%_*}PmBK;!EcT6mLZt5XCJd{U2^2b&U z?=CLH55n>i<$u5L6z`IL?cV$G=J*8CN}+ZAI&QD6A*|Q2U8}*|--{@vkjdwf&E+sK zHiqE90W`J7$K?{f`1{W;`B8v+=NDdp^QkOfZUNI z@c1A;U%iHpt}cUAm`5nT>Vc3CnBnP>B3`F-V`T*!7k@8egVGTI-Dimye)iabF0qqw zGmgxAAgZu0bBMJZC=XvhehfpU6@;Y{YH))*lbx8r&BNn3IX{P%jzGp!gM-0I0543B z7BSrh!i5Fgf;%)Bzgk71upfW<9+ty8$dYGYPViJ=IF_b6v|}+&;gu_~qvf~{;3&xC zb^}qPfq&56>=Je6t}w)djV3I|jQBkuxk?ogYYSj?iNq;SN6US_9sfvkjcx;sduZ5j zrbhrn;KLF%oAxGm;ZUY>8U_y*y|V-7iIPF=!_rQwgLHd&*rWKc=%hM{{y*`^RdH!? z5w}>hOm2Im#iOJ;NhB>UV_dqrbah$IWI5}9B7fPI%I*xZJCn&xCO4VfWQ>crysOK* zx-4h1AD1yMW4!lTyqZ)e$;d0Kh>N)VMTCoJX>mwbm;Jbm@xAzKVlCgY%H$@Kn~2M- zE@Qms(XyOD#<+}eSh_}VaJSx43YJwPJ`ZwZAV9>LW3)@LPLXj8d|2j<_$)|yz_;DPH4>+CI)G)? zh|hp5DUDm6f?))%khs+7W*jXu9?w0x2H?{+fL{g!XjaAK9O>f9{`@oD+KBngIC~)E zZKkpmq;M(i!;oc)j6#1>v<@V8GH#^8oPYiAv1Tu`d}Bn9Hh1tuqXn;S5sg5^A=&+K+|;j=97 zFeem%iB>z#zDQ%V#~;EvWor~&X16Xe*6c^-9Hm+J&|#Gy+QTYO?Rr>cxBOVg@hGH| p%wyvL9lsL8%H0f? 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 diff --git a/client/iOS/Resources/alert-window-landscape@2x.png b/client/iOS/Resources/alert-window-landscape@2x.png index cca1f87c7e7316bec0dc05693b824e41c1fd0d7e..aeb030832e8dfdeff7e383b0e5c3b7889a67b9c9 100644 GIT binary patch literal 4303 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 literal 4428 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 Hu0mjfQ(`s8ztGz)$@}rxf}V@ z{~XCj$CIW5F#@;Wli34ie@(++O~W07MvjJw+2nko5d3x54_oi1J>L6BL&q>Mnw>t$_o6C@-Lki$3v8&XJsTM&zKT9v$!+Gf#O znFmFX2xJb>5O8o>URMW*s+d-iH%M$2wn+f-Wc7G91VD2J1q2eLx;{u|R7^|7YcI45 z+c`l`pg5BThv#f5e(~{RzyKrqwCZr(Y*|fQo9#1H89om-rab$|BEP0Kz zZDU<0*PCSLn3$CqPaZReIMS8gDS5@UwQX~f2p}b-0NFVvW<^Q>PXdH<4fmodby=8_ zS5E6}>%El#A^`%;Q_&FcJPkq4Lv#SK5TzMaM)A@G*L1E;e^%0qYe_s$EIj*pjLM5E z0iwgw2cptO>yhRK^PTt3H&_X)Avu|G(legNL_E(-KqNogVgZOoRHC3%#_$|D7g}s; zl9QZ>d88#kjORJpJU6+vIVXCKj$V|83av2(j5xOrtiyX6T$F6|K!B875Dk&Qg%JG< zSQQefqa%y46o4^60Z=LERh-g5FZ3TQKn-^DYm-j~O@IE?#CeedgB2AI0*bvG|Cr$( z$hy7s{T~OC#P0O07SPnWd|K_G=vqv@?< z^X)F%?lbrYw|iybd`M9s9@5&BQ~5L7?yEF!z4Ivz|HL`d|7PsgkL-nS`~Uy|07*qo IM6N<$g3|$LJOBUy diff --git a/client/iOS/Resources/alert-window@2x.png b/client/iOS/Resources/alert-window@2x.png index f23a4ca5eb6befcee68254372ce6300292ba7388..6de36ea036918ec83428120ddb2a416b0bb9fa82 100644 GIT binary patch literal 4153 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 LKn<^A|M&j@wXvTq literal 4202 zcmXw6c|4R~7k}(~h?p!XJ6R^vAhIS5L-s6TN|CYevWM&{gh7;SgDit#>?2DlLl_BT zNxv*9vaj(ze((GK^L(Dqx%b?2&i8xHJ?AEx80)by^DzSez=qJ*F#`ZS~TBk!cqs;L)~Pq`AqvefXYYx8&&l<^_m1+sI;W@pzEIMbzZH*aHV8 z*9`b0*gbJduQMrt{{!!Y`+_R}SFdXkq5$xR8cmOn;nSAA>uhg_Bz*bMx})F9gV;}C zVn8Z8_%5WMhnYL~J^8e#7^PQ5!zUOnVnYZQaj>&X

  • %KbdjZ>i-)K0G~_9)adB# z?J?`r*H+4$uxDg$x%oz?R%9DS7A_$s=8BRn4_(u@z>Sm=m5qdi%x1 zkFbMb)ImB*q7H@Q(IaW5z z1$&Kr!9@odDT$&-ez~LYUERUmc99|9J2+U<#=#+Fny#vtuj{dgmt|2%6}N}QI7m#8 zITw~Kn)EvBk9}dEiQDN3vYfEhNl`a?ZL06HihQt9=b53lf8-a^@A-(S=Wa|e4-(ux z|Aqtq|(MVcB=)MhuLtZOi60Z?W zz+WQ<0659b6^2|vbKnzlbv)*?)3vE!t_$uh3oAulZFi7clcUEDslikLAeaon$Mflc zo|xugO$Y8vqDo0@m-8JP>I>-AuVbeYrQf6TRssuE!5TObgX`M)VYSG@=(G4lzFuTJ zweuJC#lw<7f%8(L42Pt}a}8r}1zauO80?>BO0$XE-l|Cq_U5Ut@FZI?Zs?|!vIe@W zB*?3`k-mgWxd+5VImqL8A&+SW)`%>L&NQbQ9UX0*bIjXe2qEbuLFK2P+j-;Fwd3$`p5yDn8o94#}3SwzsCJ_ zl&b>s%)h5Ek>?a2vUC}BpW=0RVnvy$yr4N#W>O`HOaAMfhi;swh+Jo*8-Qi(<+uB$ z{d;biyYW^6JI19j3Q;`qnRVcb>M(ejX-eSn36niR22j+|S+mOdgHxFvewXpo+2dDK z^%wB98DYR2d*Et>k`a`(dk^=kh;E-=t7=egB`g1gsl7jh7soCt$n~q$q(&nG(RBY| z{-hAc#U&P!Z~aFSmbx28F@!rL^^^M+dl|nlr1lUZ5n*ECzD89yOuCy&8<2 z-hH2XOx)D^IY{cnfKXh%0D6#(9VB!Azof2~`=7>Qln?HHSAZO` zGS%_47n2rI+tUOC^ER_ZGr(hQwT*@q+K1QD_Ng|lJ}}wF`1kxCL6| zv}kp;D(+L=VRCVQz?O!$a&MMa8(0lKw++S3jq1_0J6^T@nvkMX|6iHp`FQq;F^BMgmvU5WYybS^o? zU#5G_5Vk6%9TOo&;PJJ^sPb|9TH492tj37+xv}zVacT+?Oyx=W>$~-r)BRV)5u%>U zn48r@!#ynlcJiM!K?G*(JzX>Kq{)XKc*WKd*;l_hwsoCYL+(cq_tzKq05D=4^p;Fk$vln+bWYlR&Wwc$E5<|EQ?}z8e*tXZ1nrF(J z(trtJp83}rX9v;qV}18NM(f$Y8O#s*R7_`2aeHd(;c}PKNht#$leAyn_*k*(z8gIU*C!0#Wj!66*(cvLdb<(}07qVvq8=HF26iQ+kwAQdYdw-t zh@D<-{t_yS@9Mp1-T4G86>v0bJ$+4QWdHZDiz9EU~9c$Il32g+gVs!UwTQba)Mkx8EQj`~ zvby6k%Xb8 zP;_SFG(L1ah5?Ako_=sGVneSU|N8v(7g^t(U%k;|#H<&UcH~@Czws5&^um&_k;qe* ztQawm&_!Br`k2jPQ~wfnJ$cU@hKKGQ1h4?lko8CyDdM^f%!{axbH{RAre(eBS5}Mj z;o9xc7do6-Q=Ie^1jO%l)+>dY7rz`T<&dUDhH28dEeWxRFef(s)C%^wrWPN(@)M$D z`&ekrt%yh!HIs20gZKxia;H4|4%`A8|7YUa_Mp~W21o2-}x6uz*JhAC0rGG=4mx9k1leVWBh zmq>1T)9?uz%oG0|(Z0mu>Gbb+q!(iz2C`NU(tT52mrS~F3B@C%)L{rWo3jXUScEH2 zdHC7h|Me_E03|%aM)`G+QN%5w;-p~pTHpSn84o{H+U4>dA8c{fVmkYBKD~u)vJ(%# z+v}vbm29;r!xE^}cbzr-+-y=tXr*JL6lNR&7=>IbVPLmea4; zUZDo)t|U{Lq|frUm)zpZ@&0ACQKL1yDVdJ?!7?L+_2Vr`Z<%o})tQpHYinv|eS@xA zzAP!mHN6T3BQx$@hGCuU=fvjqEP0iaqw^RBK6Np7P#8B4od&S|8`&vOYiUmNgfVnnZvlMbL&y1ei~0Gv*f9 zO@j(g*A-2{^}49Eva+C)pIx0A$J;l?bKfrf;EHGrQc^Y2@qzToel|OxYA`YA#Jp>u z^Zy2i)Wkl?h3v|;vDVyhq7W{LdQyTJcW0Ei8T3d+dnZR5{xL4o|%SJPR*2e=8+G(wG;w; zBUd|-px!P;V1nK!BUas~5=obG9Q;D{v-@%~`;vcdO4{jA8hJ2cnektJYa;8`!v#Eh z#h8^uQJUi%$%M1Sl^yK<#sqlX?{7Rl;68(rOeN1uYoh3e^^?tMhQQXT@8S8FA15T^ z-4GC!rjMytrUgAYl@h0VQiTyRC=~^ZZ*ALMD=TCD`}g|AV#vHd!Fi0r+|=vuMbM%M zd!B7dFKa&6f2c*TgnBX>o8s(zzg1AqfzMbMds(Nv@<$lSObQy##E&S}N6gs4qK^@;rJQF8ZK~F4iXaKAObeHJpV;;*JNFt>rW;eQjsCZG#!GaO9Dd4=q z@MGhns%#jauEB3Br|Vl;31fsov+{-SYTuiM7sPPB|Jxu`F9T zLX1Z~J(+&MqDKaym1H)U@*;O6O~-5^TcRbc$hUdR0UjW%vGDiwDVUjXY}HiE_j3)nK9=~M@W0OF>xPPH~F`ag7q Br)B^E diff --git a/client/iOS/Resources/help_page/back.jpg b/client/iOS/Resources/help_page/back.jpg index d75344cf89d1e89d5c9f4653abfc2cae7b47e3a3..fd4e1d364121e24b94a027bb5d71b0eb4025bf69 100644 GIT binary patch literal 118109 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 OF8}ivPfY#APk#ZXhjdT? literal 141907 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ℜHZ z5UsO+w5N#0UrHv|HZGR!Y_C4nBA%XNocCQ}5d`9082@$m63!wetP66SEY08Zy9kU1 zrDut-H@@HcF>qphvD2yz$upgJH^FP3#gja>{0fY9n&R0V*H3WwfxcQtk@{5+ z;qw;e72`SV4jOEG$oDG8z)aWqu;P`AI7uph8`-t0LJnn6Ghh0upg_IfG0+4#%$W<) zL%+mh6tbn}Ny$v3cbB^o%94%&t2k-3a+94J=Q-hWVF=jDIQi+uC^~FfS9kEW0E#b)h|rV}=k(lH|y_ipCt7fhWF^MM8z5o18`(Vh_6J z9)G@zJ&Er2p4gLsX6Tx%^O7i1V?y^6&)?XLSoIUk1ey0gEXa&+5C{$i*Ws3+UR0@R z9^|AY%j*+7wK0#>Gfc`DH+TN;gHtbQCPN&9qHhXQ3Hq!BB|MyiT+jr@N##;livGYq zl726Bp8cOw_IhO5Mc9icJN(wG^R6O~Xq>fh9_d^l8~y!njJKMXiSW^5D3_>f9;%aO zY+C4&%P3Ezzili_Ox;SUeza1fp0NoPA2uFV)un$mM*P*VK+uu7(B;o?v&}^k5)F&> zf|Jr_mrH~0*U?9yISvzr_GWa(12=(OD;NJF0gt)z$A;LR1~Gc+T8IKE#)Y6=h)8I?*i9fM(Ll5E9-kX13V0VQ3F@L zgk>3WR#>CqD1$uKb%qlBuJfJ86;M&Y0xk{-7PVgg!|Um^XvxC5vb1tquo66^sc_iQ zUTVG1W*)Wj<<;+r0Ry>7I4JB9fD6X+sf;4wKV+Iur>k5>QU!dTw@Snz+5N@RWHI1? zNAu5u3`+ zm%i$yuqQ%_f^^8T%x2G#u;*3?UQvImnDp3uRd^uVKi&px@wfGcKejKE?S1q;f*5yn zx)|d%8RI&o;nA%wN$kO1oEOE5htig2&zQH@rSJ-#h*XwuS?=6M zCK%ksos3lDqTUot`(8}~@*57L7PmbVYP*<_YlNnVGzqLx;awr}h=S3$N*pS-GzH|) z%PxT<3j2~NWzxq;gCDwG(gVWsRLQ}zgJtr97v^O-BZw#6Xkf7_Y%Ij#JK`wWneXB# znXUM~`!xgS$`uB!Izw@cNNH{pDmaSlNAw`)E_WPsc=($iF{PB@4h4N5rf%XxMR!i8 zp(%chHx}zUvf~;>ce$qL^;?i~eZY;azF|B}6Yrcc+DnszWqpGq7c1X?LajCPM$_0e ze7P3SwLg2j&4}{9lb8xt2#Z)|3I|0bfg(5_?n$z7alM0NOVhRtWz2P~;jiJjq(o;L z={IGug!*ImY!u6#JoR3mWF)wvKY8I?8YlAeIA1Uk{4^Rmu)Z0sX9fbJ? z8%x^J`7YI)qg@d4-5b;17*V;Z{WumwNh3pW2Zc*X^lj#&e0s73s!vc~3bH zRtl!q9hKivkfLK!Y9K5?;rXPZFX02gKv5P4Z4$<&3?8NQW$W{cYF2-~lTX&%=j&pT z0(Js1>+k!_br>(McNDJvpY(s%UnJj4z3^T5H_0D$2cIf{Z;Iatdp)^&yc-is{Gi>? zqWv8yKC+x1NWBqgsy@?*KAp-X%D4X79{_la+_()77+z0~0kF0M#~T>r5iYi+kCQILSfqrQPX$w`!ZYdDqv zI!>qN332E|w!dvav*9wVa5FsfU+*!F=UMsh?f1#y31Im^GYAv{#-HCf!yk zd;TV&l#I0xq`3Ah(1mGpaRm0WA?1z3^Evg6Ec|9=B&Xigz&n7lnwfgeG!qvMDrGfGU^TQ>DI3L1eQY6l>}9C+ zM)U>81&YCS!iD8+=vSyrBxr-TUofkOTx?+5jLXyzMv!J93S&V$wjKhMe4#b(54yW9 zk&E73WUE2}EeTzJ0beBhsn1`x*-VV-gW=SZgmM32d_oIU`;c&zC+ix^VIU|V#oM?afJkKmfv@UA^)~5wR^PmyOyzJHQ;38!@d@_8=+AlHAl}oOt3|wPHm9f8GXqVqk zV8a2We|myszMj^L|9RP?gr`BYbqM|TByYA2kX;zisY9TzPDi5jbnobe!ARTS_!`ls znzq(jw+S@Kk$;J=O&rE`#nUakknG~ts&d|mW4<`@f5fAtCi`3U(-r8zz=LJh5FKrSBdpv z!_785$d&J>+O%`Oi)?-5a)DPQDe;_uW41)l^>xChO+)#mk}FZi^RJXE$&UHji^<~C zNhw;w2<8P@(zv(Ib6^mtulYx1p*_M7#j-h&+7%vv#~6rYj|&pYHVX~}|l6fQntw>uKP1eyE4Vzx}tp7@ujTRS^H37-?I zprWRrB0ObG6#YFb`d!0SNM=qj)Mk|dqplIGVUn)^KJ^8eXGPsr{ILTjjMho^Yv}=8 zF~2vjxmq}oqq{>K2+$u_ zVJmkWwzheKell&jURGZfZK_vU`kl|w5p<`~cfSw6!&HWT-aw;jZ3 zd=j$|1_pbqI}Di#WW;g&!Rw;D(KQM5=5_mg^&&?R9)kJ^daIOWaGZ2Wk&X zA$rNG+3XEx9!ERr8J(Kzs6L5|+B(`}KIwr1k&EFyhaUvQFwC!B@L>BLXGJCzMK6Lz z=!&kx&PPZ0qU4ZE)jV&i-_kIi8{EWmj|=vg@6MOXf(5yUxwmjfp%ln(1bAW!r;yzG z3RXWorwv&{3Bx?=Ye$fE-oQDTM`^q>G+M&bN>xwYe-Ei={%&naInXI-wcGaIb9*dd zm$;q#@1o!HTy(snq5nNzKQh+al6@TYONS5f27cbK?4^w|=mm^2E1;{lRTO2P5S?>| zQ7dcp4q@P3UdP)?KnD2TPa+=k@9}|1>}yMV#RkOxkss;NoXvhW!2&?->Tuye5fO4NLDg? zb*vLgGHzA%f{#i=fs5jJ;G>hwcVrQ!Mn|iso^+e#()4#u4 z9V^pZwVHg8u#>76kCy6{>S?ucL0oJp_``#AEMFL1PJW{R&0TP$rre`WZ&d3aGoqJbjH|y*n^)AKQkD)MyO-Mbwh%9g z_I=?{XNkYnW`%)~mCH$V9&Ge|hno}xFd~iQJ#z6*kD@XAb!vyRrfClSs{L?%)tOR` zO(5RY?rUMH&{})^P@*D&9t3DE-pRlPwMJgIpciB{Q`O2&i;@#JR z9-owmV+*D!a4uCGU1=x3QG7r=BwjqW_6iSHOdpA_DFt~4wBLko(um(zCz2$fS-Y3b zUxa04Z*Lg3ETVVZ-nF1$+?Al^VSly8u0N$$UhwM7Q&L#y(Eik`o+bc&28c3h46yCf zv_xsihGSn?JD=)@fMl zY!e2yP%gAt6M+pS4orn<>c7PO3Y->#;6q7bLLXazqnzW?-uz4I%N!_47DrAT&)zx4 zzl2n%rq5w?T$VWyeTDY&_-fO~JZ7uVIwtbwP{h=SLu7}xNhp5pUPOYh-QDY?XCa5= zbs20@I7&+zt}XH7OWUy4Rq6)D9_D4w*ExtYXK!HZmAYgFr!=JzJ8%X+mUZ0h8f$#Qk;|j zoC-F-rm$-aN}k}jYb+fTd129YVHz2gD+_B^~qx|a%p0TBEa~&d7owF2O ztZ$wr^dzu4jCa{VVsM+7wRU>qLtnFx`DaS6dJ%@64?++OM!zx%lhD)u5|kp;a!%?c zRmP=9or`nxq;PlTK*EmQBw@cPq8V9Z(aIqxMd`2;>nzxnW}wDSSTW)p%p*Cd3Q<(x zmJgE?%_s8SPWpN(N7rSI@5z^aT}z2l@JH1WF4 zLwiwPic*at-;cX;rqzQL&EmKbtOxi$avh=9!aXQIQTc93%@LVOZ`YEVFY=q-QPD6F z4SdlW_(CZ~d4vH|C60=Yzl*`fO`BY#RSOO4^pJsPQ0)uvp&mpz))>}?Z2l?X*E6r& zOQXN`k1DMqsqh#^}1boxBZO9=U*w`VeEvIS;lo? zf6Y3NdhxTddG&^2?$5?-XGZ5q_8{U%itgEa>@}Jz0F2cea~HTglq=vk*i~v`0z~KzbC~H1~yWC?m_=KfJ~gZ0{Tlw%^voBl$$0B`tD}e$;-R`l_`C5ZK~!eieeFFDT_Nd;<;~;JG~c z#&}w-pVy(Kf<^JTi8pXbzhA;-%KztoA z;`3SFYg@%bnQ`Lk!iP6G%`tLNqFym*+E(%A)FB>(3;jR6{HZIa`-CXerB2_V;lK}6 zM5#7A+m{S3q)D<9)83QxLVRZc%Qa=Zh37LtvZ%=2l{|^%0_+fGVBlW35irwoW! z*NA3nL<5qwn-b)bYZRYELcl269)X!G;J_-)s{KI|9aOwF^y|>!aAb5laq#x zkOxsQ4B~qB@X-~R%E|~MBT6sIwD*NCTPp^{w3qT53kSqOH>l>}9}S<{Qs!G` zHF7s3E)c5AtB2BtX*i`6A2>I%$ll*IX&3}TrEyKHpdjHQ6dh7}t=S*r$s=rABTO2DUv}4lJW72g*+A)W6zak9d|5kPhng*_ziO zkBg0wR?+jKk#+R3s@?iUBOVXJrtdOv%Uz>@GaEh>_#ryU&8eBkZ`Ew~AS;Opm($s^p_tRQva%3PUe~ zt75+)U31#>oPk&F1Fv}QwIzlj`+O@ukhV+CEwm7_Bh@I;S?hk3SD^vh&rgv{YLIVz z7t~tBsgd_QPb{8TJfUlPN-@BW_~?t+>I~-1ztyb$z|GOoCF(~t)(E!u;=!_Kd+$nj zC4dCQiltHLu`K!W!Ev-cd}J+FPzWYPs&jciMgE$GKEFRB)w#3J&lR=83hSxh)))g% zk@Xb!5ZtCP7brr+SRHE04dWHbm3+^tnWU?P1h|M6t>UTUJsu7EhQjOh(aGl>5Y9_3I@GgVOz`Wo#bQ&K!>))57+`t*TyO@K;0f z^)9M4#GSgx)Z&s;9qDZUXfN`T9qx6y@w)L;EWr&nWnB|RdWw^(4O-#+1iJ6tSO2I1 z!h0$Dlj22uSV&vnQ6>#;i0AgRC~Ao}-~gk9nqntIHi4AJINmc0P$1Ae`Of$dG0;Jl z2QbY`d*kyua{_UCt=x~By_uF<(Hq(?+gZo{zXPxm-=b}l4Bvg9Ha@0=|H_f#^CqjS zak*a=(IsxQSRNAgfiH}WDkCZ_BlgdtG{n8M3!gM@(GoOn>9%9VrrR#HE%<{+!qNY5 zAtoD6TZYSwbB%MgX^^Vi((Q~;Q1AC{$l?`inClCRK~feK{Ks2DrLST7xtmz&D-_EJ z177O*%{ky?PW?w^v9_AqtMi6&N$2>3y=E5{gj+nn+xlRy`Pfx(^jS%vX=CCbXM2@5 z&Udl=Z1s8y;wIJgp?mAPebD79ccdRV`|Hhc_oBz*6zvLduDh1BMXE2u{vEyxq2+F! zOfq4#DPB9#^ZEOJ1!RZJK$bHVt>onS9NsV9=InMpoDs!|*^k&&PE}Bn7BbFyu{v%`K3`bws zw~V}4VJX{LdX2I1T}H5_R_QgpXbJie3W1WqjYT@=V%Xy+Fl^GFs0JY)FXC1ap`Z|0 zsf98{^9wb#3;WII`8n(H%#jo7FVGX2$fd`&>9@w|tBE3Rah7J0C~Wiu5>2I}1F;+vL=$NmLMB#8(RR%-y-r*GBqh9p zV3&v|zNW(PF0PHJlojE?Pegg z330%ph9}|d1y|{85sg;hPvYw0V>XLVIC74UYXm6)gkSi+vQd0Uwm}VIboRk>@9>tHu z0KFV%Ty={;)Gb{0k%q=v@$zLK0U=>0Os`g0Q0dBQsuY%gQzqs?1A12d!rbv0KAZ;RITsqR(_$Vsa<{YdlkMj576MoUAM^U~rvt%pYA5)8MQ z+&@1GXE@b6E|dnYOfq;ZU1O9FTZ;bd%}*6r{75Sn$U#H6n_ot4%|kOC!r6J^z6bc= zQ{Aw@c?T}6ULak7n*F*VE*$)eztO_YrAfV4 zS}|@YAd6dn6K`#yv7iTwQ#GqWp@!tNNnH5gi2PoY_*&n3xj`XW1xQ@ybM`b2JFvek z-G4Y7oq(ZN_rdLN`STs+7z#1F?~h#lKcUBq+<(~BAu(b%X1;O25SSo}k=c;|0V!V& z6?$TwP%s#pffqLvn(he=3Lgv=<{lmOJXM+;nhiNb$tts|Rmv?xq^o?7?$WN3jvAB{ z7Y}D6v?E?ToY`WqWlwehZ;joNMKP5@)Xx01x6Sl0DDnOWt+Ap`-!ojZukD4B99hIM zEtmaI*ENJ&{$a};d7{AUSh}l6bzPpbJFf>q_dMrgYE`maQ7eC`s~Q)WbV}l{{7wTld1^ zghG)puyxXHW8Djm7$mQ{t9jq6bM27kVPFe}ho!=^F`L=>`f31Id0x+XF3T^O(lre- z#2&5W;n~6iJ1CRuynbKHQ{8g~opY`B!rms#;5-bvNV74a8>0(o@Om};Lc@%ro2c+Q zD^M9daGH-&oA5-!Iy>tQ2nAb^jAk^XBmXSKyatRBqT9#Ospu32)cN{eAMm?}avo>7 z?}=PghT>vg+2KWHnMRb0YBudr?Ix)44c^P?K{Fk>|7i1WOATcbt8&;m5=-1CPOuV+ zlf=l$bQ17OIDPB4FH#iks&Y(2qh1dQiVj4WdG?#_P-WeD)Hc=pviXGEZc1(1K+hjID}8A7Psi$R?0HA2 zbu*uPHDW*8BU97*ml&jlsVOk7=_fyjp4H|P^AI3}%tHuN<2h{e3Bi`$3-OBf@9^CR zJ-~qBvi-`JN9G~Jd>Q!^N)pbsY>ci^YVknbwk07+!YlOE!?CAmEX_3Y<@D=;ei;ZE-2tn?QS%(hUyaxlU~fV8>M(@b+h^v z&F4x(X4N-4$hLWJ^9JqthL}xeY#iF33DIUn2*=@*O34V_EBmwh)2hjFAA-lTOA_2vw({EDb~KHWw}Nn8;1IZ)R+!=4#My|ON@fNKF}lY<{uli-%?=S zakmxFD5ibphHv^X#J8T%^`7o`bmjGT+`ZxIGUd>>^t)CW!j)endLBqP-G^`2j66@z-!2S$^x zMEmtPir0Qv(j6U7ucaU9O5v8MS^2`o5U*__DmpFnc~w4bm{RcU&))e_<@C9JjY^_i z=`}e4S_VJ~rYg9#0@lwyRHN8?_r1XWg;)m);~m=~!*>pd-jE;K&*_&cGs@|?I4(oP z)jS;_l&qWKA&T138aOtO)h;XlNLv?CaU3H&oGocjO3P)vg~oe)M*MozdX}|Qsw0&@ z83qI4&cd;QqEY_`m0GfIOlRSp#WD-j#tt!=5i@ef65P^9!i9*5H@ALPg} zv|h?zvg{pKNvD*BzTrlTo2xBkVH59+!xVLoMd(Tq8v{4`gZo=q-clLLSVw(+={E3G zxF*^jFp6hsiorME66O0<6BnGO^A>+msK1%X8>5;>%(ukY?i<4J7ALqfM*FNOI!lgf_K&Ao54BSSux~0};!HQ?N_Y1fQWUwKg>x$2xXO6XiZt*hV z>+ogwsNKS-4pzs?kA}m_JtV9Z(&fvvRYlrG*0TYsk2Vi0cjab0li2qI4eWU$8N?J( zDX%*}wv{xYlFQYY#Wh(!2yqnH@Hb;K4-RYRri=-iWkm!T+@hH;>`PW}#qNXq)tiWI z6RIxCmvIblTh!EVBg-4LEkY&$5YZZZwz?hIgUsd$; zAzn|iztv!>H<2qnoE)07VpP$-?q>2xD=U0S4T6c;rQsg^b(gh2=q#cm+n>)KhKjG; zWot&meC#tswbm4SP-aqjYzUI9i9w{?^~wpGTOH`m;yK`1i0}Nbj|K+$Snw=pBH;V; z#VL8osJ%a$W>qd#{2C5ra`DSc?g}3@s-w6V#w_6k@y6&l;rG&c2Ou_z@?Hz=QobeL z-qO7^wWKS#Mznh8*sqtSjNx{tJX!B@5r&Z)oXPuRBx9}ksw0`~lLK~g)hzRo;Az0- ze);%s-jugIn+}{H5pJxYXVW3Dlub&@6t_?99XvBsPA1jxM4BSA14}B?4jl$FkrQgI zp459aPv-g+H4VVzjdiptMWuc#=z-NA<{*J4PvUDnkj4q|lKTchqZmE0uIw{hs~ezv*2_yO!-QQ$q={(D4!_psah6O8vK&|d3;MGB0D?%~yI zcgRne{jG7ST)ea2{y09#QrXU#)W5ag-eTP#Vx`_aRi9LjjWE5D3N5?Isl<-5XN5Yq zy-GH?*Yfo8vI71w+6K^Lf8coJ7>rYfbtG0~mPB+Qdl)I|=F_r$DsOx-FK<3&qVh)Y zH2CM{Q%fPLF2p8hy_XKCrw*VuT_D{IBV@KGa*V;dbm&49@fz- zcliXP;Q)_AlOUmW32WAf6xO zyTEsmoz_hDf+9%0(x31m%fyT zCw@1tORk{Ay$ew!(ujf4fk>N1;ZL}kZ35gsyMJY*y0GrDM)g7@fWw|oy8U&6iT0#YQmb_r@cbhR!XC83l?!xK4st7xIiOPr8x?^pcq;D^X< z9>z(Kyp*NY{6eew)q!Gx`5IfbPs8a{uZ32dQUyZ=RY>lcanqKG>4X%*bZRoi)z z!i_Nd>d?hS(vZk;E_JVwH+N!{$ zfC?ugD%%hw$2je@i#aAdZUD0+xn=!p#uj%Ez0!Tv$m!2e1lE%ot2Nh$F5~R z_@4S37+lSFJRX3%iz#Uqi1SOop61AJb~URrz?t`jVya`HUHKI=i&ff*GN0k1y`!~c zX&JTip$m^t`jn;brZlApA3MsheA~3gX4+<&QaYS5(PEH1y`)BrPEM;tH^x}NeB}HQ zOdsSIK4J$_TrUTO+f#p32Uq_ho0KT_4V62<;vy`kcYyYzTv2DlGuv#_O}Z*bX!e>H zJ_zN@?Z(jW2Sd!aWVJW;iF^DU0}V1ayHcBGZzdb!poM(apqRI%=9&r9W%#E@SwR!G ziRbNgtCsw-Na=a|-&+d@7b$&u{=VyVzHW@%!GzIdB1oECy<%h+Aa>W&Cbk1MWW5eO=?u@K;j34QZLfo$BnMZE# zrB%_y36z=dJ{gSH#W4;Fk5twyIak928#v~xRSBkVtSVqHWxYzbpmHRLoA|w;OR+e` ze5yBNA~>FY;QtW&?O}Glf(bd{9jIe*CN%c3n&q<>t+GIxi zOrQ5~9z8Rmb@xNSs-c>9?L-_8}n>=~_b8)Zl8P7ohr zf}|Sjx2_S#P=j9tKd&>A!;;dpH~?dmmZoO!6V)~X8+d*EVty8wMRl0vuVqQKjxDl! zSrlZ3V;gCWcH*5eq)(;Ko1(Fa?nGM|b8%wOaC76%H4F5`F_3e19Sve`vnUtOV=#oS>% zdN)L0ja{OVFuv=qH2D_IhvX1*ymH--EoAb`Dmk6b{7OA@j~w0Q9%@-ikr~a%rmmV0}o^@owseT1(zZ>QM5>Y9u0rfJ&pG(mLZHrcCl1#4j z1QSM-hd*!GQb3%T`BL(irn@~J2jswv{yyV$>L(S-z-f#N>=KkOX`C0oN~Zb%$)7W^ zmLfhN|4uiKP977wCO1HHw4oPf@4NY8+%u~jC+im>FZ=xT5 z*6LGJ>iKAKGue+Ye~my9=e?TMOLVp9uiK2lQ}hGL@@rYAsi+j0;rT)5-1AnRRZu~9PVf)$ped;rYvz`nJ8t35%Pp&P z&3KhD;-MI9(@q$EGQ)Zlg;zAHh&kF*nn~<;GZd}%3ocvdQn%^Jx5h92l5y8bY5O}A zXX{+fKRub{ccnpON_kjS;-Td4Tte-cWPMIe$`a6Pxc-pKEETXCN>aHwU3A3Sbk4#* zii5?}qz8(odh-Ky;7sp<-pm@qTWM4$3sC0p?#LcZPZ)GhDsD<7A@Mw`VAR6-U`=D} z+aHTF<6xvQ$&hWG&Z2pESmoto2LXGgA>%gn*VLiBeD)U+XmQ%4u0kX!I?S=cJ_UWg zR`1KbH>QNat^80RpE75O?0GCEBGB_W>iRZ542fJeJ(N?Dxl5olzTWBK>FnQ^oK^bA zV2!(@tHP`%`iULMw_xN0#+eeDm|AD~)uN^%?L1hhYr^H3jiy$k$*a}RKig+(AzWm4 z_c)9}^3G#O{e*S&T5TxQW9ubji8*%*EOZ~y8}5EzyD)L-|vjF#e6^C z&-?v;y`C>gk`UU0vh(kGYHMFIP}s1cL|0NU`oQiT zhX&T6{-L@A&1wpH;`_?`SoKajZvZQIn!DJMo0NM~=CR&$9lLw4Iuoy%o&F4`TlCE4 z`*Vt~M<}>0W{=WD4DCt%Tj1n`Iq2%(R`W=9%&07d0~x!91PL(%^% zNm_#A;%;+S>l6TNk>R)B8d^1OAJkgmWHO<*1JhxFHH;JHvmZ6Zhw^?0(_NewPMn`H zolWO~$*%Fq`SAJ8k6W4(C`f*AWs4K2hr5q|z%pFUJG~^q-z7x&{n+WBtlR^P%Z0w$ zzS{6n@s2}j-?hM*6XCw$xHRFKesVLGck;A)>ygBI;H7t+CO>pemhgJYFZ0HC_Vxpn zLQi=3!qnO8DtjrfLlVy9^k<2;Ih8gMkqMfmh!5J1iPm;*h%#Jzg1+*U_cV?;?-~)^ zr@gJW4^!GsHgb7Tf7H;!11MI0244c;?kUS&xTm#mD04f#FR#+bwA2WSOI%G?sGXkL z$0OvxFe^1-Ss+soY{M1Q>`Z3r3Z8Yli*YC|l)yhElbI4S4->FiFdKs5*gmI|7&Ys})X4}`oLZmaCv8xkZ0I*Zlp5`eDT$+XuXJ&=Yj$?M} zM$AJQe3wG+Oq~!WN2_2_$6hC`Tqcyb9UJMM5%x*}cK14(FdM+E9co%pv%BKS;t|s_ z@&r?Vkls&d=ZKZMS#Cs4Kg-SQBlccJh3%s$qL$24d%RG*pDIa}4tH^EVENZvJYPT1_M;@}SF89PBL-_((|pXyz08t7ZlQoJKN5 zp*zk%%c?k%`7}=Xnu+C#;a$xOH29$-LbWu%W#th~J~>2OY8uV@x%IRB#7%+~-(fkYixfsH>meKwH`4lJof)*H0=r&P zZD!Y7BNNUuw9KU>s_uzp#ex*}dTRnq0yN(P!#mEL0!ns+C=spy*o#H2weaqx-xKug z;SAF!&lC+@Ael9bUkd(k{*hA6Sf2*vET#Bo!65$AtfNQQ$)y4D1(QpeRu!z2PjGQ# zw5|yn;0|eY9W^o{X#Mn>_0x3tEw*&7(W{w)+gDf(+H*gdXH{JaaQ z)r%!NT8~Lfq&-UoSy!EZXf6R(t6FjJx6s|v2$MJT?yk75IFkuIkIv9AFaqq@+0uKj z@e?_0U>>Mb6&`CIx13u$lDN)y)S(cK(U+}%qT`Haef*}*!v;RGFRtWMGApEeJZ@HC z;$gI2>+vW&^ytl?IrxZ&^wqwhM{cv=SkW<{7maNOb(Pj*;o6D2piBmP$n(tiLXu0O+SGyj99ei}?;N4JQtp+WcrCfN__XlK@xD0C zvP{@ENDCTC#+XYM#?*!y=5M=O`u zW0ML3{~BdE`l+qpFt>jmH?P(lS?0!JE0aWkLoa^OJI{tEhYBoS z4eL)vL)QZI6Ldy1mw9SL3h^@1GGx&I>o4LG{V~ZV>ITfT4pdRpsYPyX3NQM9g+^Er z8Y-(y1N<|cjQ;MXU<~H)>wL<|OM2UPtOhJFdMdafoIO@s^p*i^cWHAz#OT_2q4P8X zT;mK)Vj-tuuxRjOgd60(tb1EV$oYXLo!YcB-MfIqc@%30M zr;@H!1qymZ3`hA;j#aSpO zur&l)N$(2uDCf&KFTaw{lnZ5~6bqrtJ~Yf6>gqKr^-C?|bkPxrz2r*$`&QZ=f8fkz z>@5~Mqs8^Fu#|UtX$5OBuR76i7A9#8q#i@n zd|z67MdgY~@V_6_!}n7=uE<;?T@%^Qcn+82X76`t^*4m`R!3%ap@Z3xSUn|o@8rEx z2y$4!mMC{+A`m2Th&w{Dy?^JxA+qP`t2t|)`3Zbjq)uhvX0@F3h1gE$OLDG^av#|v zaSgX+Q?`ee{PW!YG~(l3b#1XxahIaot#M{1T-djFP0uEfT`@KxwGEA ziuL_ zq$pQmQ29t|79|DzQEeN-mZXqck48xCtzNHDt6jNZpYnwWX^_8Nhmjgaic8%UQkBTf zwM_(ji8eHpv9H8~{F zJU)xDU+AE{W^F8;T&ynF#)kGQkX$aEY@Wwc#YpB4aUYKU&*{+85*|Y@2C~NrGk+nx z9Ob zN3jwRYOBAkK{2fUIlBkdjN*-#tG&6nlDDmPeqP`Yt`=)BulhCgXCCH+cQ7jAP(S%y z4ipv}W98YGD#HhL#>-;tFJoqLMj6A)VwJlL5 zFofJR&86<>N*tA^!1~}KR2!KWWeiWEgxmlg9Y)MMB!swQq-K8K7XCek5_RG)fp3i_I@A** zA$$L*`eYN|v_sw6KQc_Zpfh`PoFu9{yG=Lk|G-iysb@2;8 zlDOE&SYO+TG^i~^boDeU8HI+FmrzFjVt};aBMES-9i_W6nhaT#D|9LA zzotZ`WvrMB|Hco37KNvo&A14f5Vn(bh1cUkZG0|LdbA(lB3tDvUcGcS0sw$hHruX) zE-;wGB#j=uVArU!T_35OM=oq9OS9*t_z){!k=Y?&!270Ce&)3?Ksuc_?9IpR%{Kz$GkE)my*W=a(L$z~wi~<>pZJ{)nKGF63j$;c zU7PsxtD-YlL{{>A1A#7N5AxAy8Pl%LoT$dc!KiWmQ72w^KCjcNmUN(*J zg9Uuv8sDqVrt^O-{m9GSOx9pD-m0Cec2XnvCkJWND~{klB#x_G^-if-7lG-kS3j+0 z-Da)6h^~P9&in84ToY7^cz-PSYeJNeM31%=Owuvb#)99z>D+l@lpMbbI9m=mn;{cA zy&11~YSXKa4COZ`G%pC!DLvt2U{`;b0clQMg7uwE(!~0On;Z0;|D{AnbZxONKX!3G z)1#wEEzcs82kLsGpTdNZfNcuVh{A{oF)(VEB0hEjEiTo^dIUzJV~eoKRtYA$y}Kvi zIQ9;3t9ughC5URX#rH|%KJ4i?bdpgaK;CwdBM_vSvh!Zkqno2!HooXpTvfbJ1tWx5 zd%fnPra83u784UW@Rr9GDUIi>^@{so^T9^t#AxG9lfIz@@xnvyHw}B;7@spY<-R~S z`GZDt?kfqyGi^p+yqDN*q;E3y&353X59IuwHZEbz=yt}Q#)-m#eEn6Y=T2EitXbCI z!wzRD-Wn(vU+103Or%*O{;+RpKrAEDNn_jeFVpri<=c;g`TuEEd@eL`_fy|?h!(mZ zl1Fx^+kil&wBN3fUr3#t@?69(gfNdx19VX&K^|btcUTzk*tiC{Tk`2@23oz2?gpM2 z0w5TQ`sU}Bzk{HU8##CSUakB+wN?JE$&z?g@A*hL|5mMhKK}%z(y*p8syPZ7TYE4% z5i`GK?%tdd#yBhK%Nd0S2O;= z{y!c)8E#m*ZVx�(yAh_^|7ffMJf`Ugg4YSbe=a$d~NB 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 diff --git a/client/iOS/Resources/help_page/gestures.png b/client/iOS/Resources/help_page/gestures.png index 7a62212dbe3a37a711377ea439cbfb4920157881..78b3e7b341002dec895e8f4ea28a780cc8b47ffa 100644 GIT binary patch literal 43781 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 literal 45123 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 NXX?6Ya22b_{{x6Z7Ks1= diff --git a/client/iOS/Resources/help_page/gestures_phone.png b/client/iOS/Resources/help_page/gestures_phone.png index 31f99f13e591859d2164fe89e307f8886bfddd22..4eea33ef47968b4b7fed3626229caea2d871db34 100644 GIT binary patch literal 27770 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 diff --git a/client/iOS/Resources/help_page/nav_toolbar.png b/client/iOS/Resources/help_page/nav_toolbar.png index a3102ee33a2c6d0fc0e3264a39b5eeeac8783d09..f66b24d215a0736731b836a2948a4e0ccd54da32 100644 GIT binary patch delta 2008 zcmV;}2PgRF59SY$B!8_*L_t(|+U=TuP!wex#zT+;m7gIXDkxQEHkqd8&n#7}n@PtE z3sDnOQq%lx2darmY2sOmny7|WQzif*ijcwxARK~{DVbsdhj$>ABRJ`de|-Bs7kjWP zMsqW+uCvd~XLi5uKJUKAKKH)2d&gr^5s?csg4x1kHj>1|Gk>v64D*@F17$t4j?ppU zOfaKm1~5L1gEUuZ$X%Go#&C}@skd+6KKj@7>jra8?S;xJqp_m0vhqqrWrfOvq@v>T z?^mu|yma|2lg!yHAfjPR55|w_#AxmnasZ=eGMK}E-@27oTYK%AvHB_*jn!0DWu%JA zD&hfD9x&yXe}AXnE?%Nv&Yh>?k~5TFV4$q*9MiF^6Yp}A_KYJDc`(k>kiD5tm_tlL z-5-Bms^);r<{C2B)DXXm_@rfII8{u!c_-;aZobL`CWpy8Sx5zjB16R90|~VG zi`eft(w2 z_EP-5Z%Ds+3%xfZoCXYdsgQ$?V4laUM$n;5EZ=lR6&i|eoj+ejyrrFSd+3WT+f)?9 zmaW@q$A6c*Xa)y8aL{0Ka&kW07`79FUcoFrRa}yqlbc6pN=qqj*B<&TMz5kkV)UPr zE@C))Sze0|Lv@)2evf?mpuPfSj!&C1HA!-vx;`jhpvF8Wgy<$|S~0s^|-;gGYL zXaqgOY&MVD#cO=(p)_6sVrk{7C=~^>I%+NT>3`Fg0=jjhcJ11oLD&ddn~;ug*DhVAqfPqFG<(k6`w1^Ct0_6uzKR6kO54-6!~&Yk(r+o>t&)vKelco(eSuo2H-vI3niE0cA+6DM+7svjxv z`P`|KpE&5q$Q4?=3)ZfSrpZ&@l@;jRxpT6Pho_4c>PL#M{{H0S<4YQirYYzpOO|Qz zkiCkR)rk||krn9d*|T@GuU#8W1qB6k^MB?|f@*4NDTSByu(0=V+-5)Y(@)2wHGJ@+ zpS3^Q=gs?2Iu^V*)}j|%Nbm|ioh|}@CtjZ{*R^x!F68a)Ee?AA{Ds;n{4R*#yR~uS z#>)y+TKco7ZQs8A1T{1?P)0_ErOwOCZ@j2A6dpdyW2ikYu4xyz>meT95 zX=MdEefo^Gj*N&TC?_ZPE-z*bE*L-e+w6yq97z||qPAB0V;^leCiUYSf~0Lf{BRJp zY+%{;^n6?#^voII+Be^vKnvzCq<@hkM#&0PQc_~Av0q=`a8Li5s5Jy(Yl|OBJCr6G z-()hi+F!5VEIn6?;9QVUV=QQL=oHkl(Xpd9d3bnG+qP|+f)1NDT|4%TaWwaXdGzwI z;j#i1pDGq=4y~TDv$9+5llo(-4SvzSq;9=Gfd0cP@aQtUyIYMb;X@9Y21&)jlc7DK_{;`;xl#{s8(9FJ6ntBkCg~o}QlM>gq-g z4$XoN2?@~#jSixjGiOr&e*I+yG8hcj8vFG(>hI~->2w5PYl|OBN=g!qUtL}OfBH+$ z)gpK;kWgbRp_UUY+b%9H9DlS!Q_#V0P1L^n$_SbsHl1GR-A7iS!oosp{XXB-LYbMF zcX>lXCee)>H}F4fHv6H3ghWvd?cMv;|LTu@wBeZ4kMjzWw8?&5-FVsV(4m7kXuc8C z4jnp-rcRwoy?Q+-C&G8lqBgx=PY^EX?%jJV_0gjl1R0G+8Z+iKn}7Yn9k6tK^o3X2 zAML@x6Rm#iqYZ)wUi3j%+$)gCr2jMCH7trxYbs*2*`;;<~?xXpg(!1o74b@9 z|E~Tt{N>@qTNUMlA2Y~F<3w%RwD~t^mIEi>)7#s}^0k?-ZzpV36b!xkJ8SClv*NteVllS>`r|oW!^=7HOCuCZW+#$B>F5 zX&y4@#fXH|r%^RC{L0*UOucYQ0a;x^cFh>V*fS#8F>cITFi8S8GuKrfO3cVeGK;~B q(vYQU%RI|$KnE4Y@iF7ai1ZIzhq8nM=GAck0000pd8gf@AvN7CaOzQ31w~zdF{kp+iQ~PUWmC;yHSy_3tqOwBeVNy|X z`O4L+7cX5t%OrC)i-~AB)06RIIy0KPg&e@>nGEL8-?wh%)z<$0yRrHj8I9FcRb`}# z$|~XkR30+rmw&I&Zx=7oFXzrvamg9VFECJ6c8=*-)`@8xr9I`Q@G-PjPJ#&yr zsQcs3OVu2(*<3^Bni}G(h!0vuhEv6qn|G2<eJcM`kk5g{ zB+GWwWf_WCR8bOCLv3%1NRcI)>b^d%A@s@VP?WWJSeyO4$ zwtlgVwts)MlV)+yg9Z;FCnx7ajbS?>=#|X-r;1Bbb8_?OOlc{_?c7ZpWArKtBu4)k z=^{R)7yI`oA75WHhkTeBg`k%+;}erpYO}Jk>CmBcieA5g)mi9 zCK^G{GMmk#ck&vadN7TbfLL0!I!Z;stchAn{eSvBPXXP#Q~UPq&me3BtxZTu4#nMC z{Jw7};=@(6LKmr`U_Rib`{}29k-vWcIXgE6{e0|~+s3W_D2jMXigwu5 zZGR7Pd?+_Juci8tqDNpL`E}{Sciv7-L9ba8rNvdS;nPic29p)&d|8>S(^CCN zfzRj8o&Cf?M@FvH;wo6XE}AA!nItSIt@w&}^=;+a7(i%Sa z(a+i+?F$#aCmjo3yw;)@TS)K;-yATcpX)E~!Ox_@+; z)sJJL4T1+=^g&;=mzS3lB=|8F+5yIaUyk#NW!uZkiyR#tn}VJPMNj{Wkld!-vyFwWzI?{@6zwUX%K93_;SiAAdZ6 zS~jq3dwM=54tn;iaP6CKPN2n$mVeNwk)ve=Dk&+k*4VGFZ@8=fvTGTu(ibxB_$<^#;>lfzMuZm zW3>q03nbJSOQ_`p%eIS)3x5ag&=hp=TNAafygZU-gw3Gm`u39*sIaimTEEM8wNPee z<{jRUkV$mo#tr-ro6UYGAt6yzLwojoeP8{tk2bs}_2amLByF;vS2td^J9g|S4w`So zw8MrCr>Rq?Qt#e<j}aM-L-4Cr9N^bgCL{PNUy&7nt#oH;SN|jKKjBd z?T_~0;E7g0_R$8x126iZFWPY|NbqAUp_UU@S6AxLp#$05+cyP0_KmUH!Gi`<=%i5U z`BYC?f%5b7?`RL39!BZu>DH54RaHfCadB9d@Vd=@X#WrUMRm-k7#cllG}=Y|QKMZt zmf(d4LLbyZJ0y5TwSRnIHsdEsQP6=yhYkzs+xIz|Fku1(20pH$d@!5w%atf-7e7D0 zApdUuG~%TZ#9I~RgC8@^e-EDze9ygI2U7u<;9ixLY6SqR#l8N;*sAl7v}dw;pRyQ?S^H#avtQUQEE z*EJ8?o0-H@d>wxQj_Hp7GvW{Pjw;Fn`5|Bnc6N5cvb_sIw`ayPn>g&#jKze|H5!eI zg1{{1`~X63KAT4&XglU9CYniO!*zxPxRZ(kKvvCY;4E_+Lr!8`7>hJa5R=eosAEV) zku(n(^kzgt>Qd9287?sYv{6r-Qb1N$kzF%}GWLu}c8nYI7EF@B&CGR`|0QN*B$>tF r1!>4qwPT)PK1Bx=#qkm2$B6VVTZgiQc!yqF00000NkvXXu0mjfJec*x diff --git a/client/iOS/Resources/help_page/nav_touch_pointer.png b/client/iOS/Resources/help_page/nav_touch_pointer.png index b2446c400632536a1730407adb3413eceb90f5f6..930fc9cbf780eb5f4daf1da71ae073ecf789cfe7 100644 GIT binary patch delta 2289 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 literal 7261 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 XJYQt2bsUZY9-rrm8Vbd7ra}J)joiaL diff --git a/client/iOS/Resources/help_page/toolbar_phone.png b/client/iOS/Resources/help_page/toolbar_phone.png index 260a3600280191c5e1c217cf057b24ea0b092100..278cd3a9d869689630656f13a6579ca02b9646b6 100644 GIT binary patch literal 5555 zcmZX2XHXMd&@R0S2Br5Z7y+dSBs4)t=)DSv(wiWmOB19^Nf4xisEG6qMw;}{JCWW3 z1ViY(e!Tb3o$ub+nLRr@dvV)b;OG*qlq1Ox;$>S`(m1O$YjTiJnv?3P#R ztUD4AFuYS&Q8Mx;+{&zSVNjxvI?>-3QZV3blLn{&=v0(c0F>e3U(AFUUFfRx*qXHs zy1I?3e(y7JX@xv+Pi&;l!rZ(7KM{R!1C`uZ&dmH zC@BI21r>rWCk9U^DxzP)Jk^iSFNGey26oT-?H~k`$Lr$C#B35Y5+8(I&Sis>fwZ_& z&WWJBE&SQXG*+)zpvfcfaS5n}Ozg-MtpaluP=Uz}K%uSmD<^wmJ@T9{s}aajB zwV{Y_1Cd&Z13v_*sP5UpYShaWyY*{wdl>|z4F+@gkvTjOddYL!^u1@Yz(*>2qy_LL zub)OPcl3pUpxB;B4IX7%)!x09gup#MIq@7#SXRCk1!8WZYwyoHd~c(H6j1 zAO?)%?6HNjIOlR*H4UGjIcm;Y5_=#^^}0LHgE|jzzj2rL8*U%I3605Y3%2@m{Q`=l z78}Yp6W>)?K)mk@Xv*PXzQ6Py4*2u_3!z>RF@?Sn5u76CEg$7`3SqL({MD7!{BWR- z>4!j!8FxC-9N<=yZo^~zy{{N~hMs;Y>yGAc%$m=b-Y7a}sL|C`l(-VV+05Pkv#~=G z+~N9KT>Ku=jUn=hWZkGofVlVzdx3c3vSNsn9Y2guP0fkk(T9&O|C74j9jNPJeF7YT zK>65y1Vp@6E67!cK$IPgtBat?2*ijg*FBl);wy52_8B81ke$z`5|6?%OCB4I#^x1? zK)0C;KwNh7R}GCjG4pG_=)|1H4+Zv8kyr!nw+Vq;sj#h?v|EFjJpo=%J*amz(Ayp9 z?Wni#@`nlo5fS>A>j|gD*6e3MoaJ=6t^lu?K9|}>J>GudUI6rqzeSOv5S_^wt}YkMeAFyC^CP!Sd)mK55Y^0V2#WQXXe2;vfCVS|AsS zv4pq^#lZLmZbPcnbaXscjqTzy!L&XqY=N({f?SNQW_)l#&_qre$)`{29`bDcn=HZm z`1q71^FJ-rO<&@WcW}d(R5ZKSs9D9Rx*uiw7?g6yWKVlFbwnwy>FDNREicb4?3cTE z7Oc)f_D=VT%4=)AcMyC~A`NEW^TW-ha8hbEXdmXp^0$-V9bKH|wd^ASc}To}{S?*r_|S#eedfr9G~q|XgE@=Lnk!c8Q8kP2 z>I{Dt7Xw30rVgWcbZNV!`5d<|Bkl7K?vINX&Wt7KRh>P+sF|9aGxC*T9FZJQ0 zM;7#(s=dnw`v9FtTTWN{4}_BR|JIyG(sI5Ogg@_J)avE zD3qB@+O)sv*VM|$eEnERX!jveV?ko_aJKU>EDsUHp`NgfY5A#z9_P2pi*b1|CJ|TwE0|8J`w9*hwDlDE=u6NrDY! zpV_e32oQO_%oKcVQQxF*B)z$L-=#ev`0`XbSI<*ZQ`2IisA^E_h@T#LM$M@HPKdQJ z;J{=znk&SK5ML~IbA&?^4=2<8p{9$Ls(W`qz;sB z_Dqas?y}7-cSIB44vTgMbw#^jIuB|lk^Rh{xt+YyJ8PEecU5hzgOBQ>3+iewZ}LAi zq=D19dIplb(ygF7bhM=mMVi%kKavZ|vV`yU5i zTz(SNb;gcwP@Ygf{+`BHpPDY?Ts?^QZ2*GTVH~t~xUOp-&EbM-H*FhDuzIbl2HmsT z2BtO$!&Wb~+lpL_;g2h8`$a@V2COZs2iq=X973`?E@$ML@`gLCiLqTPS3&IQQWg43 zJ2jP+KOcw$htn*jpJio=o-f-jNuMD8_7^_P-V0I4)$a>gQE7hF$J(-l7n(Ky@YiG| zL3-g(h;_A7jnBLMnZei-(_iSB)6+>C8+|^Q~gPk{Vh3!ailGDr;AKpqr|jE5~9aLrvyErmvHd zc5)D`JRi48b&|;>8niLqBA2VlY3d$+e($5D!@9S65}+gn|1;=M=%YWxsLRWanE$Us zv(;;Pv?+WGKeMEVsr%R@I)a%azqn}7Z_U)XhRw~9irc)1&CZ_IQMJtq-R>89+$VDH zx6%i)#&+a-wS9opo2EKf^kl}DmRn#1XheOFwt>ywc8t7_&O_AdyhSy(W?A75k;!q> zDBu^;%lb3junTJcm@Km9i%SsrKVQR&H*zDbH_uF&(OoTnA%hE`R?2^x!m#@fw2}|? zBz;#QPyWsY6-7elQ7o@EWoXx0gD-q#^T<6_oKFYGR02+MG5hUOZhx`QKr1xc+H`-z zh{@-1Xb*1!_5=Hfq&D*b8^id zPoYpRFE8r}v_@ng9#mXDig}BVZD8)C#G7i@V8;?)_gSw{I zmY@Hbqypy-RIWudAz~Jv=+u|lAU7;+w+oQ9F^`q>k&SQ9(wVi_=}*2233bYs#ojqQ z*Yq&u5B8ZXCMs;hX$iw@AxWu+6jf|9Cn&z8sr`WriNf51Rhbm)99+YG005d2wJ5Be z65X08^tklPs|4b;7-?;7Wkg5M{Ca6=DdfHFx}x895L?ilO9yB2yPS7+orC0VC)O?A zVg)=NC-|otU%3)2z9%Hc$2c;KI5G@fnqCq%%l#vBKI>yh81W1)a2)QjTt1$hEJ3qN z_~*o`>Rd^%s3$F6ul-3qK0iO_9!7d?%$R`_pPx)hg_rPo9>L zo;CgB1Sj2ALkRXn{cacLGXk-E3%kJ#3C9&t*e$s9_4SvHzrI2ukqS?9Im8BO&r91g zdRCqBP7B-fjs4o%+B}g%?hWJX_5O zPBClrSLUBy`m)Yk%zPi`(#34IsNy4Z%mmwB?Fvp>vp>o=bW|aHbE74MSmhGsJXPHw z82v!KG~ORw`=qmTi5JRCK5_L@sV#K|@hM76sN7mL#YLT-O^vs>02!ifh)7-v2>ktKPJ{YY6=VO>d zM)e9|*M}E|hU4im%F+9-*G3hz*X4}A7n%bby%oI7tTAzMaZi5lI)&v`{J~%_5YErO z$6M1w?pPZ%`KYAMr^gh@a_It>Rn=COE8T+k=1@7@a zo&HK3%g!bs^0J9}-0B{PSl7Ich)Fg7k@UBby+wYIQne3aWD>KnaZ&4hb$(QXKv61u zWz*(|FQ(6uI4y_CM>PFWHN;jv%+x*_Ai2rOn*Qav%33+b`X;}myxhGDD7y39ijOOn z{gy1XD6Fx&yKxYH2vbP>daXTjBR6o)ipP6JpFKAFZNZbwSN5afywH*oF#uSKx2mrJ zBwT(a>}_u);C-o?qM}o4z-+&(G~x1}iPd9onVz_{h!Ft+fq*?;YQgp9lLg$8A1||= zYAPdVDG*k>3&%)eA_g#De~tvRq>Ubk%7U=M&XaI4}olL<~kUPc8%MWKkUATNbFoC6!B(} z2f;_t4tO;|s+4qiKXLiyG*=~&TW#w}H4eKVeR;+XasP2~4B>?WNPc89XDA)kzG}@0 zXhkAWbR=Jj|lKjzN7N1-hK)`ms<{mIT-|wRW4J#))@(Lg4PPoq;?AZUQ*hg zEb&{t-66wQe7R2*m`xEKG>2Pf>FD3>knrdR;aDroQW%Zy-=B9^3f`MT22{6~qi?Ve zJTq3$05EaKT*~_Mg|X2cNO1#;mSf5z^Tgq( zvz0M26&Dp6=(rI_%#4gHwYDLpH9t+-Oc*twlj0t7C~3tlZ`-)#=6c^l=D6Zy0!AX^1nfKE?)p(?h*t1)190tH=PSXD<<@ zakz&@t$cErAlrdyvYKD%rljbYgue64vWgM>-C)Ew!u1Vt+2O&{(;xk?*X{SCa zMA8pbl|IcKL(?h6X)WTboP^U?YOAElx~tF#X8Jh_G6n}4$5z!+Yn$t|;70v7%u!(k zml}bg@0(|2mWVx#SZr}qq~uzx7N3nRfmPV4c_Y|Y650mMRoa!!R zID6pX1@nNjt-_ubW@G9Iwg)*c=~1JDAhIXlO<-Aw#UR%BC-f_&OUGCC)~pRi=8RjabQC-dp!{VXWRU9ZA>-_w-4@C|p*eV41k zN8W`#R;RP)17-~hg?V?dS&G39@viLYWJ@UMwqr!e&P|JV1jA-Wx=BQ!+lM#B!?Y;{ z^h7ek?)xO%oYod1a)i2p?%0QtPo8g#1P&Gn*-7U5YN)&GfvZ2Te`pTR4v3ct?mJD+ z`|)x1oDC&M0Rct}fOShg=U{F5zUfsljz zv-Z|+J_4nO{#v#jqwX36W(h}fm%RW`z-JtFq`}+|;>=}3BG-2E*5Z2g7Q=-&D+@s90bhyw{(y^^-{GZ z$C!O(sV7PpO7K}IcY%v~!LVRKG)@`?9(e@EWm{qrgRqA*u0i*2y+ff*dPL7gE3nUT zcwrv>cEUTvFDzoaFXgrLNF=>-MCY+Ba~3y;KFsoKADiy~ZS3Ut+AU@ZA;*B-aUs5Ar6*-N|A7i@*0vTXC2% z@b$*aZypQdU6Ao9zmji;#Ex1N`aUomJ0m*>t}!?*=@^eCA|N37vUF`hZg9xayIl4b z2xi2PAgNnD-<+S{$8Zax)~?)I!YE;P;rB5xJTW_l+f+#>{Pqx3(z#XL8c@RE;}2kj Zwvi4DVMW`7x1X^D>Z&>_<;t(Z{|6Cv0iOT> literal 5692 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 diff --git a/client/iOS/Resources/help_page/touch_pointer.png b/client/iOS/Resources/help_page/touch_pointer.png index 6bbd6948ddc688c0872925f33aac44435fc1ed56..af3ebcab0071a96ecdc452b48e7ab92fb335da41 100644 GIT binary patch literal 110449 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 F{{se3+A075 literal 111043 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 @9t4PQ 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%0A6td#NFxHGaoR|w9Bt!990uNLk9b# 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 diff --git a/client/iOS/Resources/help_page/touch_pointer_phone.png b/client/iOS/Resources/help_page/touch_pointer_phone.png index f325509bed3844e476ddeac40231ad82cc8e379f..ab7c598961d3f2e6953a2069531553fb6acb2a08 100644 GIT binary patch literal 87793 zcmced^;cU_*XM&%C=lEsxKp$giUbH0ch{EU6bc23y9F(7Ef%B{hvE*!-Q6kfE$}czP-h0kIw)b~`PPm%NI~*(uEC2w2BQFQh005Ba0RU7ZOmxH@@vrU=TyPx$k* z6(_;QuU~-Zy&NUM-GxvrWFb^c^MFAL$T%zA{m$(Dk7u}WW{U6Kh?tO2Y%pW<$wjm3 zvDnS0n~l5M<5d#ovo9N6;hf{hT-ang&-DZ9;SqT zLQk%cxbX0B$->e=q(QXzQ*~zc!pZ8Ca9ti=ULcc9P-kc7M=&gBsxk`8AT>4BXbfn} zLP7QR>!DV`@!UWXM{sH*>zN`;YEMNzR(gG6F$C@H;^vL}KF>T{2Z!w)4(XxkHBK-Efe zS+cyVde-Vzq$9C)l$1)`c^QC7DJilejP%wy;?qKsU`+ZFDlfsMwi7dq9(C`3ORrVMU=;&AoHYxfy@q6nEANX~4 z!SVUa_KVTDC&eSJZ;=?978YA>CVr2uh-%1dW^D%9Z3oC{OC|#C(_Z+SwO@?LtrG9G z6=*K2ep7tGj0Y+FSA}pafBbI2K{Bbz`QHPQgDYHtt*B0JtT5UnG<-GiCwj+9Souj4h z^tWk3oi-aCR=~xK4l@dz!lE-lp`WEcr~8Z2S824e*^aU6c!&X!V7;dsSA@KBz2uu( z>=8eV{PIb0gg9W2o>T!jlXY0ovBZk^Kf+>=`nAZjEkA-ORFq!IN;)~6*<8WfG>S3&jmRa@`n(Tk+n%QDnp~TH>#nx?u;7vN{XN5H2>nbU{KdSG zK{jemz-4!=7k+ghly6w)(Be?PUM`XFQJjW)aR6yD-$=TYk^IZ`M{;~hK(5VXK?n$0 z&WXotpMH|`&SVeJwIh-rxA_u+!+g6p?1xu=cY~wwn-dAYp;X>57S&9up>#oxL)*5KR(K$jVlwJrG8eY%-b8-KQQLy zLIPIY-n=~-I_9^XDr7(o1Ji5+U!!(qxo^C%RK)l$^clC-elfHr1iA6_VN~qK=yXa` z6|MdAbdfe)g(G=yG^JafYL>WW+f}Ju8|oU7oZW1h4Tlp9Y}EUHB2WIsdjZ$|sZv|& z1|AVFdo^HMYHA*q++ffXQ)LW0Qh$N+clX`MP#ntp@jk4^p-TU!$7Dl?I}QLrWH9*z zop+xW5_R~FTFvlTy=aWtc=KZ&3`YOPWmm1j?PP^V?cw2K6yuxNwO)l;cf|YSrG}g& z#@GXn*?Y$0Ou%v7A;-?v?_iW%d-14rOsJBQl3A762|GLceMG%Px!CPmke&c?#5pzf z+m*9D*7k=pyRy6O6z4BrW;T64beHJ=Mn6EmVMdL_CeMyjVh+IBd66^=zdpj=feZ4E3knjub8ILXf zza`18FF=h5uTc(ssvOW|SFb`)?<>Y)H72OX?Dw!q>l;lhU^Vh%EW>j<%}NTursR(o z%f`WB(Nu4B(5>OAw*j8iV&WEHiM{GV4!@Hd^G?xI^#UYqV_vx;nRwhL&9_a+3DOBHs`tN|pD$^j z93MY3`Z}9+1fm6?*Hl^qF#H1KKYWl{s)h%41UV!3hoaRjeQ|bNw5JYydt5IDEN0g- zaoZgeufN;=9ypTm_Jx)#W-1Mq`7lp5OR@%E>_+#PR44L6#Rq9?>UCtZe0;0;lEoOM z_y3k=8+PCX1s#TziYWB`nUzCx<+Aby7Cv^TeJ48-*sOz!9R(0beFA|QYj+9`){kyPi}3biiKF1GG!EOE+rrn#iWZ%AfuiLw@cM;<6&IJ z(^*3^hT4q{8XA|&p$l$w*?TFc5%>;^QnSeSSUTK!y>>W_pYi}R<=b2wZe1@u zESuN;;jFiRtWx#w#F16jSj0r_gV(3&rCeFVxuF+sl@goLwxn3xB{}C*A ziLGH?pQI&X;~GBu{>52)q{U@kkCzdk;k2XbMUB@@lLmX1yhRNj)2s;nN0P&(h9D(! zo=!fj$%iTSaLViCyi>ez?BvA51@ScY3SEDF?(TRC4FP?2r+f`^R9$w-D~$l%7lSgn z6G1v1tG~7XtvSmE(hf$u(lA|!pi~yYV>9>za&nlc_hr6}EpRup3cvRnU|bE zCl3f7nvBdMQm7Ow3E00tw>(qwWTnM%mHsH`+@LnMWv(}1!dOoZKkDfN^|CMAzGLc_ zW?vD0J+85I;MUYD{8#a{@hGsSF3&|e5-qakf*v_+n&o!EO-TU0A0-~*<3kjlZH)-a zlRUz}>ogHBocbAeDGj8%Z1XZPdAh)INSCj@@2`&tFArvQ!Q*&(s3_>c19r7%H=+DqaXX z_utipVygLp6sG+k##QCsTYjzYl0V&@ZxInA(*;gyw5O^9g^7ddIasUx=>b=Sa-2Cc z&_hxzh?+_9x$vWfo&ptRN8#I@#EaEEj7l`|?~Eo|p^@kyB&OjSsw|=kVeW-O{t|k& zcFx4?t5sv*S*GkPIsoBC$>UVgmE;uD+wHbN+89Yj9oO2Wxg|Gtb6zpMQ6Bz=LQgBD zC+Sn^F69=JT?@d$mL~=Tv$;>>s7feXVjrOTBQebKeLlec56(zWLRv5a3;itjGrm9;(HuQeW&ISYE8O4rMnW}WD8=9KAxb^Q50s`8upR@I5N!jIGNZu38h8*> z@)@FJ{29XJi+k%Gr;+Bgu9G-eo9y@ zYzI_lQ~q7j&gb{d34^@Cl_(>C&K*z4oIqw3sM*a}JvdQ==)Z ziuHA{;FMu0oyf+oU~~xJ=S&1K^Q>Dby^u~Gh~Appo~F3)GA7;O21&2+V!j*#s{h_d zKPz?-Gz0jB1U5G_D|Q7?uQBifpKS4T@L0rM@)Nk=Rl9XtIb!{-6QT<1AjuCKe3cI5 zXH=YI?-9eQViF|sU9g*sD^iB3!*WBp-rFe1rS%{azc}9HH;4@{;5+1MX|d-1@T z{mceI8FYHWgbUC{;1+xQYtU;WZ9D2jYI?`UB;77G$% z_?oBMoKe$t1hheg40Ihuh5TCPM=wEAq%L4CV@9%D>XtT>{AWDHv;6O3x%HJfl89DR z(z}jAN!J~am^`c(QRsi>qX2y*FArd=NnuGYZ_Y?V6Of3Jr+trN32FDkIAj3inA2!b ze+oyGFHTPM^Hz>?ezIWd_XLyi?E*KhdL=M|((3C?2r?{J83~egYkdGxIXI=zhoM<{ zNF>3I_BS4WysLJ_PS|d!7SI85N0xmI9n24~{pkw@Uy;7h;(+e1PdK>s)N3ebh^Q@7 z0&TntRlr?m@k$H7TZizihXY%&Z7L%dBwlrSkYm zMuJ&Ui zn0@%J571|YS(A(%{D!pr(fKsR%e5raXom(1wmE0QmhKocX!*S<%lGqg+gZ>cXi6n9 z-v?9WBa(%tI@cB0bm9oCuv8t*2EKfhC18kmo*`mL&t#YF@(r^PF%S3WLmpqNSk6uJ zht3MaJYu@zfWr|;I%|izd!oB{KUf0gKnpWSU=xa2PDSkx>wsSwC|P+ZjmRyZYqFO< zy1zT>VPE!yWRi4xHN-HMtVfC2n9Sd#YR?Q6T9OWEOcb>mWfem-wFDkNWJ zTM0fgf(Fqzd=q&mlfw?R97;_S^toTw=d)zA8%X@6pTMj<5^ra&oErOG&|&G8v%xZX z=-mJ!pwdcy;MPB1t_pogp3ZcW$fRSQ3=ma(pT^YoL5B;RNMwK1t$RKZAXkdNYN4TK zzESkcb;Fu_2MUhAydK_67l$@`^+}4&Dt#Ni&Q5W;MoAwAm&{*n6mC9!;iRX9)bp|J zL)~vb?nCcyT_ILD^!rduPvBR@^(o;XiVL{CHM6;8oH`3#hU{&cDOL%%HFJ{Fw zi+4*TwZ0GRL(C`%k^C(%8JFZM#aB=vWinHT;J;lORBr4--M*z_k*uS4C0xKlY~ZiO z9s9u@3ab||qnN9a)iRHOJ_-|J2p2KLx8fcV`CagM4m&15nRt`pO!)b%(r(f-h@obP zdxNMDlk&6@Sw$H^P^ag|P(dDVWw6%F&_{@U#v6IVS?$f5&6&SHq4+h@n>xg zpgMQ#hZ`}J*=jh=tWwj-{7(e-@J&hX>rasak(&>rOK-3NlVMAK zS=TgX;@?IxFw`C{Y?^yRX!d=wUXNILmLH{CwID>5mX#>miCcuC1CvOKnr7DDN^+vv z&y=?xXDAuj|F?Tb*hWZ^RZii}iY1^2Hh|eZDqcv9?x2GnN&{b7Gtm^EdAjWj6pN@ zo_KE~{3%rrL-w&-+W;%7BFeF8gGdn*$Ya497>i!mG8fAq38lM_uf>2E2;u@vQ}CI$ z5McxR1xK+(R>~w8Q|LtRj{(9xe@!$@iw_UCCK=a-{D$~(F6bb)y{cSkwj7;eHzUtc zveJos+eL9#Z}cm16f%oGfxR6aE;h-e2}F8B;@U;gseuyT9#8jNx9SV;SafJAZB|U- z&W}QN@*2*QbN(q&zK~^T53<$ct>mqIa*;i1eWo3^lko%HJO3)klr_d>bImXuUM1&0 zW)9L>)E4!})WO~_-{@$4Vy9_U3}r&EuBd?GI7#S9qyFlj(O&jEDD`@rYFYGo)mQFGFR=MxhAXPu-IEj=f1|W8VMen7+60sQMx1GTr@h)Ud{Wg0~*E8SUX}!~{ zK^$dSz+I(4srD7BZ4x4M928%wLWGI$9Q4U(?RXI8fG~zI)-u&9eEr1qDPa742)X`K{T#`2xz zjKfUvXIID)3tEhqp#3+)?U9meQUjt`oja5Z90<-UggoOW63O8^<~F({(7IbL{(LvO z!ico`h)`V3T0Cgphp5-mQ;e(tP zS}XAfG@gqT`#=L}^T7vg(IwYYeNTguLhAG~A)p{PFYk@ggqXF?5j{HZse#5s?@ zN)e$y%Sq=zJ~Q?@IYaiO=|nsvHlPrbOXMWW`)XP@D>3^> zlfcfyfaVw{9@$S8xouQoX-7Ct84XSK6Mn@f!%8y`I=oLND@z%_twt9FowuV>5CRkt zfPs_YzNsP#fNJByo%$(sTlxN7*;Ao&IP|`)ESPf7p>P9y+sZ7SYyg> zQ7_7v4I>^TSYwij;UFB!cq4}Ohpr6Lpg zbej_pgid`tS+|Psay8bBYq2Y`Q zQ!_9;zusxJ*~7!DJDnrN_NZ!WFePPRBRqdXfuP8!>95f=*qk6-`90+3NHG(@tywTU z7ynBoozG{mtADZh(XNTUMf2O++L_o1x_*g4IT%kT{v>zEEA2(S`XzSQvmRYf#{Vjv7oE8!_OAW z0l9g**z~#B*A1Du22p)oGwhRL?|Vm#dyU(t2xJY%m*h3;Vn#EX?GJCm!_`0bkmAw` zd&1Xp{zTs64b6`?eQq;e_PS(0PG7cH?Nu>Wfa8(5yKfB;*UNq$kc;(cms={6=94H) zPsM35Lui-X(a4O|AJ!;-6kyr!58U&_QHyl_Yc&8+E8M}QLy3D~Cb{=lSV~SZxJa9*(|V|WsjF{%6ALkp zYJA4lKFB{rxk#EF2KrT_b zg+3R_ftpxh>$t4kD8#EW=X_PV=UMImRnn(6kVb?cDC)I^dIY^H!|4erav16J=Xar2nPTN@%)zEP$J_DXYIcdPY5US`_JLa2M zDP54f^dS;b*C29;?b2({>C|gX#B4^%9;+aWo55e=b5o>J)rQu51&4?S6Wo+*e$qgG;IKIOo zRsNtQFcvVLTDge}T@1#)M$df>9S2~fD^r7V~y%we2L36MEJoZjjNp9jIhnQ){nJ!OII)n|R6*d!#$hK%)A*GK{7(90+ z$b%AoA(y~YI61x=3xtfH##wb*Z*=v;^EESWl?5H})d0A9?*x7ng#-_xL)1bvnTz1g zq9kLB0MA7%dKyRveZXEcW!4LRhx(7)!AtePQmU)9cyg!`r(CIil@c9fc!*j5@zU4H zZ(D8&jj89irkQ|v6r;UqDza=yyWDcM&E&C)!*XND0?c-a-l;rB;d$Q4DZ#|!u=1U$ z$K|+dxx)3Kb~sK5J3J?eU{t=i>Kl8nQ;eGM&nfm6`dN1w&dSY=32KWua-<_fHV{M{ z48@i|+_P4DM}MOgPlu2+UP8KpjohM?60t$1vkE`Z)b^g_&>#9S?T^mJH-XM?dWi8H(nw9|SxPgS-0FKVq}Fqhe0jeT~;@$lEUNcR3rI zsry3Rup(aqDk}ITIniFd8580}*FSXX1?OGb;RXm6V8x3{mY7bOv-rgad4ZVg9a}XK;zLmJ(?;6f2KcWE z<8NnR$Y8I$5pM(oTcAr7LK+R4#G=2Uz#_j%uRLjJMGS$zoZ!EDuWfNG^1y?`Feh$O z*>vUH`*a;(03J4_4t@&K%PSmuji*luAmOA1mdd~`K4b+X>MM#=9ZYiQNCLuNh2jZ= z2FRo+ny)4Q)&>BWO8H^0q7|$g=fem4f(-IO@v}s1`*w-5pEd=Laf{$cWNs2Z!(YYS z>i9>laLSlweO_=tyi3u7fq?;z$(q2i%28IF7kawu1oC0tnDj)yI;J=1R1X^W?4F(XQeUBf_d}iVqIi+O z1|^t0qQEq}uQc6VfzwmC7BA^bu|({YAC0yi+EQT7KQ$A4o$KKZt?+6>ni(Z6%6_U3O+MpJ5-<`Bnk?yZhX&r<3EE+ zF9aH~!%05ybvk*Gj8ObXG)lUIVm!echQeCvC``zcM7;5VZa3>K1rJDb@%bDPcF6d6 zx%I9r-jQ;pl(fjAOTNiNqXlz3iRX7LixR51jW{}zU zlgzua@4BXcBk@pZk5m!Bh(^Lty_wD#*zat8k*-A6~R=z!&&B4HrW5a?}g4 z$8~{;a{a>-#b)q$q+S@Ix1VGMs_u=k>@aZn2=H#~_f;TASXjYiqS*?s15rU4SG=glclk^w1 zJblJzxRjK*&5H~3@~S7mQx&sG-N+GlSzwpPA0*7A6=cu_s17?KibEt+adU#L74LQs zKm)0=u8&2B42t?=VTsiDSc}R(Yju*WHL0lfc{IQf;3w6on9#|36)G z3l73CG}k-?KTun%Ux45`0LWC5Vz!w`Y%2f2h$Ex-hYK|a?vj#{=l{SEVcq3=r%lPv zk8p+YTDH$!hzq1;U|`T-Jr0AV@mo3kvNNtUlQ~=e6IM(Os@c3}W@bju;Y5@E@L`?T zUwt*ACOQlo z^G?U3vr%=)zfzf1V9bH|FSIwuLHa>S-DM9~WjQZy% zc%;*GsPY-&61HLXoSP2ed*@d1UB2s0Y}CPR}&hgotV42IaW2t|5joGD>J&DzDqPkW!Hz*7(1UEnDLfj5q8 z;Os{Ym@v%#zf4GBT12>DB)4&+K;PgXwobVT^{3TVu~-t!BUU#Sf*CaL74^5ue&Q(V z7x)M#D^rW=0+^M9P0F1Id&A1jjcaRb+6NGQrrK+p(zvSExR0=7KeA0XL+Y#YtYK(=fK9GKk(;xyi( zyUm7|Vz3j}OM2aw(Yc%D{}3V4jel_`@@nS=oJJ@m1rAMUzaK3iofWb~0+4^e2 zkI<*hdXQ|3|9brK)z^^=2U-Qbpk2TGTyZcCMA;DG9W+b~WCJH+oQDgTAcptAbELm| z+$T9y6IXtg8Oh7{+?hLTZxLjeeRf*%1>LumBC?Ogm{nTnRQwU#xpcOlM#q3-?(Gh!mV+ z*8S%6&b_$y(RZcj5A06Ys$AUL;-)u{!?P5R`{2Ud(WdQZpyK^!Om1?2al)sT>gUN0 z3!f}3?h|96(fsDwTG3ltVdNhG!kvvDKfc=)CS4Bkk3K{-vb-0t7)Z2l#{_okziYR? zIbQDFtMxnUCPm?7G@T#WIqZFkM*ELq|Km;RAG>N2i=tuOYxkF@!P$3f zYde9-e_msp&^9o+ukPA+bblm3{IFFI;C~<6q8BKd{kpI_Fha#?y{*S&{n47GSe;aa zZ&(-vzY#(L@kQu>jWMU*ex0 zn6G?%$3yi%9gNyw1LRIqf`h{I%3d05M&>`#rUIYl#=gnwj9J(sg#hl4PTNeDw>rdh zFTJU-F>W#SYJ;;qPJ*dBnpjS7R|IPq-FGgl)=VuEF`h-8U$K|VoN(i<2$u@n&a!z0 z-Y6{*8wofx`P+O4+i0Gy2aLXFlL4offo)qp%~!1+FV?+^vQSRtp`+tbfbcAk;N>>z zqK$ia?oP!cDa^yTj4MushT&hwo$QSeInpDinK-{@ua(`onemptry?0>1+(j|k4H~u zM!nBvp31aD%`tFg_fe}#p6k{oKVMVWg+;Ds+r#wilh?=&)ue&xL7Pk?Jp7JkSn+>w z70&Wf{ol-U4bDIH-fg`V`P#fW`N5yOZjVFa?n^Q5&2l6>g!rO^ZZvFWSO%H49oc+^ z_bvIuRrwHAA^SVC7g~Fq#-_`=jlz$-Rn#cKHGBQC9U<01KhQK=kU4eDc zY{~RZfQqk+QNFcKUNbke*17C3)vIsQ-Ky>Dh)2SbVqOw&Z=LJ$+pNt?q>EP7{0jhv zk>WSW+@nL%H#>dT*NX1R%19I_Iyd#A&kt-L_I*szQ1=b1M?NR2?H-&R|Fgzf+q;XJ zP%2EBv+PJlolE7)7?WHk2=Z+C&fk}f%+*R|2WNIA*@IpZ_>G$NCUpK?=XX2$aH-qi zSbZ)0YP~13(}0G>K#pxu$_IE}SkP#6D(!x+RRr91^mj)$2Oj!Kp9D#@-WM%^E2?#f zn&(gdL$QPir`3vBsX1fU*+#;;Z-yeuAo5yR6qRrlCRsGCL@N(YR5}CnTxL<^#F?0e z7o_1%?5@`51RCRuE-vV05sl2&pyfM3QmRi5c3ah7fzLd+mLk^(h~CJRljl7sQ;{(o z3s365#=^f5J$B;lHU9}vS$ql3EC1cR%7;Dt*LSYGp~;*(c!hHM%-iv7qkA<8bez+l z!1AcI;@3DmdVD{u?N%mCCuzAMQvcoz=?J%!oRhL7!;M=3op#WN=k{xPTnDX#4egTm zg|cKA?orU<=QghT&6vgUQ`dh44I*Xy@wDk}Bl;?pI7hvw`iIk3c+EuB^`?N=637#m z6Jy}uu*rQS!07F+tGn=_Lpos1#_y++f5Gu{|^FQfaD6cPxH8sU;N>d@D;71fKd*cnV= z;Fk?a^9peW;Qf*I@=PX(BzVzf{Fa)I^=U723>gdQa(?|H=m1UJ|EKegisWpWG2etr zhDhl9d)KcgYriLTF-|;BnK;?kNTiOJ&8Q#0qc%$kPu;< zodf9nxqMznKtdYWK%)HJz@ODnV0JNijmip}KKi@61I!k2uQ1x+LuT#uxA3}i?*l$( zpbaOhCeUM6H-+!j1>9!Ei7sRePLFB458jn9c)T20HJ!FsCI)&wpOOaNY#%e;QUxMo zZ)@fzqt32A)J|_AGrw&*AotwKm_OH@S}cRR?M(;=&%N@(!4+?G_c~SOFnLM$t~q>; zuq?f^5MGT@G+S!Cu<>`ua&-2}O)3?oxqE zISMwN!UrDc>Y0?iXHVr6ta)?WVkPn?R1Gx%bvxJfhYJf#`e$*&gO>ZU0(4t`H2lsM z_kfK+7tnc(=5Ec@h51_gmdB3TEaz;Er#G;nE#p}te(2<ueYYbh4TVv*jHKvK{F@@|N@%yLHhO?08UG2f)V@pZ8~(a#%iA`gPxc$21bMcs;Fe z7w9H_%g0Symfn>^Plgkps=3-5)NLn(zF2FI{q<-;o{EE0A@8-ET{NrrR5FmlLOTEv zNO&NtE3%xXozh^f#k(L+inrf#;@b==N#?zubUr}QR0P&I8L>XqI@2nxauvUTcq$FG zY;|S)X=6F5|GF1*;p><9@tmq&r*ZWUMjW=qbKTIcZ+c|jmwtga)RMb@)U_{q{bP4Y z4VEh}e+|NkfC9`W()(h;V=@OU>gYd+c1DlTbNnB2RQ_8ETk4TO;rRBL8 zOLA#nW>Ph~3G#>#bYc!d1)iA*`0q!>?N%uGo%ZRR{=_46^%WMB)$4&z`Cs(^v?`&u zCza_{!UQBF+FTH*WWI)^@%flEUI@FGHSvR(q5aFG=`!q12_x%tj8_LnSRlb@@8n*N z2ZNu_;%Tdj4-KPFnIqRXJ4R_w;#9?OOJ9lMS&A>4QnUmu^hNmhiMu<7k4~Ly9Qm@l z(i*fbXZ1(%!|d40m2N9_uWpy4g)rhLZV-qS)vXJj=jATV<>5TTL}p>@4*zv{`z0Qz zVFv$rut2v;O@fs@I?9V#agd*)_}AMJ=_v z>dnb9UHt>dDc{Hd*#jll{@ij0t^~>L-t+yE`Mm{^~>_vH%V8=+g;Wp=vl{FS> zFV( z#H%dUAP4W|BBM;`TWLkqn_W8}W`aa%ATw|jWb@(IYoTuBLdziL& zwNf$g?B~qH{kT!V`4l!wk9*Y(7eafkKI|T2&%H&+m*BgQrevK#;RvRLT19>v^^RQ2 zaVem@{gf{#PvK`v!0tn2xV|)Mp#(60U*gLG6Wna(rXm#j2S`;Q6I4HzKPjX}N`#U# zhSfQM1g5jL98M=@BzQrg@KKx3B#IG9j%rX?l*|<;32>eDc9q=ddahV95*`!$J`d~r z9P#w5kSlFE(QbHT@^9zc({-8Lci%+*u&47|spMRaWPAZbc;H0QW#}+;AYlT9nY5m? zuFTAsU%2nDY1$s#o%J4yjSnnxO2(>-*BOO)U%-E*Jf$(dzs2_mW$7^`ZE2Iw>MJZA|t#%?h>h#qStt<9V2Vb6+ z>#e0jUpke-fDi;AT(-8*%7-}&)_R6X>iK*&bC`eoI2UV&6Yi_**)&i{4ui&qWrRI_ z+@#6g9s3>nv>wA2?AX$Ek4fk9cr}YLYwVU$y#7bR>iUr1rTct~E((=OJW48ZFl0O$ zku3548}6qkGbMn}aWD6+=JN~SO`q70S_C=8s58nfzy2&n44vcFuZ3-6!3^?z9@&qm z1boy@w_$AdC%5RM0ye!mFe4C!iXn^ zWLuKcr>&6^)$Z~)Mg~YBV6E0(vb%*$`kylj`vEjQF4Qwxm<%N>$aCq+&ZV%E5o5~c zkNKB{!(wtGStPNJ4}G5-qlE*t1>U#&^ZY+l7lI`t=dc5vOXe+ax}w9{%ZnVwvp3pn zp1K(g7%RcrPv4%Y!CEFJ*ODHO{=1rHKB8PCgFfS*a*A`6=64`%3;Xxux!k06QTkFR znMPE#jz)=fk;u}s6v#mTKoI{KHGn`$Zi&7p3=nS+fJquX&OqSE+zPS8aeI}oeYulE z7RZ(J%aZA(Adh%l(9Mo{_7Hud#7UI9N=5f z9bmHl!6I+o2J7Pd$ELFwaL?lb_Q!t{;o<5^Ol~v_tmd|RtfEg}R)FxUo) zhI(^^{maCZ+4BDCKX$pGt9LRITnn<7l)9_lqgeaSWCxO#SapY*3@P<#d^l>wf)Gn3 z03RqeOd{4G^EdkV<~Io%s39>_CMcx4L3-}4lHRCmRMY^!r_^zjwK{KR@3$M5k90}3 zm^wOF3CEZJ0%p6tp%i=Xt7}b?oLXm-G7kdVi;wM(I+?fE2W|{rEOa$kF7&KXQC5_D zmH2L7D|QdxsK?4syxG}K_c(5-4>eRiKH2du*iqB7%!jIPe>a1sVj+ri6bH@&r~*+f07Ma7f#& z(RDLwr9KE8@hmE2qkqu(7FTcKP{0|1^8x2d#||2E3oZeIQ5|hdC*Fq2FzsNK!g!AJ zD(P3n;MY~8fh6$*y=J-Xafjq63yl6I8>pqzV!7?(I0h(xdvIYhF_wFrpthe%tMK7p zo-t%Vo8K01ujNS@B5Zn;WZ|`wVJqXonf%M27~TAy@1N=kX@@+0w2z+8{k{v7r3Jz= zR#i!zl^oIwWwoRdkYnKd5-`DzF${Ta14mO#PNH zMBZrat^URodOKF`a6qt=j6d2Dh;PTrQXNVJvHD#=#$YRqp@Ve1@j)N{zE5yg=c)h{UexeseCL%b zYM;Q1z-X3TvQkGcGmVF%pIgb@x-j-)!ZFnEFW4X%HYi+^PhW?XyU+$Z2qyA_{`%yQ z@QR$}sLIY)l}Gr7fdv^%`(;~#svkEZvW=T4H3Isa2GK*4qs)s&$RR(Z0kGpVf7TkW z>o9V~KsSj?zOvl}egYqc(a9kYK4u*5v+$rPe0s zBExBP;y2F#TM6+gJY9vQDmri>HyCvamhI~O z1L}VTrx8{eeD{VlJas0Yuj0tf7@an`D)4_GK2(TD;U==S?1`b}SW;#wo+}kp;CQnh zRiBra{@LWqGFcq@Cu(fA@)&R)$%jR`gq0Rz)|b=y{Xhr>gVf_{_R)M0>*HO0*;|s= z$8~neis&EE_P$IsTRw8LsFhwxqZYNvWs9Jyuz0CBp?M+HY-DD=^I2*&UY!pVQk ze|GHufdu>WVN2-I5p~{g(c|>P2E>7a7C4TH4Sj9D;PM(2AGJ_Ia7S4bXx$T)ra$>} zHG`?;lRn~z%W%4Y&6ngZSQWEU-!O%cgLiU$u>M5wcfl`z3pwvh^pU$u=%hm}!@ET(l31-YrtV;#e2t1rpI2d2&a=rC%95_;dg`BY^;|iMmJ;8TxYWl zCMu1$QEv7j0kpbjrP!1L2Q*fel zJtEDF49jFgnc;?72ij|q#D(Jx9HwSF5#k&E<^+9|^_Jtz{={Bn@qR94E=C(Q&%|>t zU+^DRSPU4y`-a~yJlP9<68QKl3VobReQ%F!{IduSmLy|#6jy=$6ag0tOBNmG^}wy!WeV9oSNb*2PVzZFyVj}akz>U|HJyyT2D``X1fr+O`{b)>phKEPL{;ljJ>4TlA3txs1R5&^Zu1_S{z9Cof#_sH9iZKH)3B-*}h%eyRpFq zd6o<1rVIE|a#<5S?oCr4FGAYV-e#PA+@$SdIxnSnW2N9Wz|8eJPLr;US#y>Jnn|qj zI4tS;Cx4|G=W@Gx`SjR7P`K_YF-RFwJW{(~xm|jFw0LqfSNSo`@Ev1x8M*5!e?lQX zi2!p(U>$O4{&;6k>U~muBOTY1vt7dFn`-4oPqOEZn-#dLnEj(?q1MgOES}TJu`eR5 zKRjDGNj>)c;hf#ty}l~#@ZePQ{K$9vWS?<#l#T;6Gx#siM_YG)wboy66@~0E$|xJq zoYC{FpJHN*!0-E<$BASggDeJ;iS?D!n^JtV*bU>k^ zJx*IjN{?^i+Aib7w*?_9{%^i7KlNf-0JuRDgOVzX3v1UW;{7&jlD=5FI~?;1hzq-@ znVzbj6i8PxrK4&KP1DUN-Elb5_B`;}`5BxyDOjG}cj>F~Ab!`Zf&`m`ueY?ltmatx z{3EPDg!^Lk)h2w$XQG_vGp_Xb1Ab)|@UdhU!3_f9c3;VD`niwEZoE2gPYIJeP_z>L z1N53@|MKB)ROAt1kB8-GCb8(%lqTJ$>qE(#>~$~g2+n-cq3=VxxDe+8{%Z=L_htAP z1#C_O)W9*699R4N5q=m{xBS&GmG=Sx6ZU?xYJ3qrRO*0SrcbY|n*2F{abtn9IV{_L zTTIi2mT@Gb{B*p-iVgnj!4vd3F}%&wj`?PjmUd^Rpeal1MoqfgEx_-@>KWd>+O|4f zuH)oPMtGoVHFXSs#&6NN#DGbBzS;>_)Ypr1J@!~*b3h1f`5pZI+4%wLc>9qRG5(Qt zfxUplS%0j9a35HEH3r=%Q&Xwk*VAZ>yuL3oWRzIOvL$qZQ_ss5D$}KPD~+?msdvja ze0k5-gsJ+}c(6<3{ea@D85x>q(B8y&Kw0&^ODaa|{f_G5dRE8dt}nSi>$R^-8wK*_ z3u7*!={x@C$Nl$MlA8a(MqjSD1O(WqU;KPOU|PO^zosa<`?B!opN#R6YVU_?=T}R4 z6f=ScFN~H1hy7JhX#}nsEyaVY9d=nRXmM7!lBSd_%tc=$tu_YsUe&pXvz~DXi4&n0 z?eROKO#jk318^#nLwKdz7tC>CLp%Goy@hYLW0G8#rK7#_+UoRxOmD2vZxV!|8z(G5 zTeYrImJfHMPdAFsCzL`dzx1aF8judOoao0*Ya7dY=Md8V&zmTP14mA~ISnU2zFUu3 zaq*}P5(5ZQOi{D$Z5K*k$XGdvILX7}!e)+4sN%H)8;ARI9~TnJQ~BPT%5%gK$oVkC znFi;bJ}yPEoVfg-#=y#bI|RRs9&Xs!F6;&DR^`4#_pZ^l>uke#Wdb{c&4n#zO%?7a z`bpGas4qR517M#%!z_H4oUCr(`E7omH7t-8jBLXn-ozbb`Y0~*kFO5w&aucxZ^Gho zIw|N(F3Y;%K?jZ3%o&-s^EPPlg-zQ&nAFZu{EhcM`>qGhtq^kmDry z#)xJ4a4U6w+7s6ez1C03a3?iTfJD91iJ$OLck*%f>Z2d+iCa`#*5#G(k3UU9IDI>} zz0*%Ok!^k_UOKR5+3zUOl|9a~+YX}Rc_D%5SNFv_&sSUD%l50kJTsa3R2ZP2(T9w` z?dEH=T>HCLyC?#{rIo|V*VDee1<>=m+3l2dxE*_m)LXlnzd)k1abR*+iPq%M7vG(& zb9oym$T*8vn!{>X`~6c|qs6hvEvHzE<9a8xO5+N9ap~)xJp2Z$^qyy<#Qy-E{h1$# zYwpj#H5wr_!2eL5QJ8l-X>ci_((d@&j(1iicx5Nvy4KYHhxas)oW)B6KJ-d&3Djta zQA-v=K-I=eT|1p|6%tMPH{)6}u}urbDwafbFYT-;2UT+M#4ckS&C%&m;^d7-ev%A_ zYs#yKALej(-Q zC{nM_u3S^chH6Vaf&Ppc&|eEQRUXZ%i*{|A(FF>7vMg zTRUKg!+Cp1oLdp2rP*aKK1HW=K!SO7J+(Tjne||qcDdriAN4c=HM-)_(1H3nXLS^H zv6|nh0`uw>9DI_6M-^lsxl^a3B$&l=O51+rfciMo3Kt!2OL~0xj|ID0xd8XUBR(z4oqV7&h1AI7V7rA|( zOevoGbrcirinafgaMW2^7XRA3OUzzukyXJVSdm#4nuKfbQxRKXt7pCH%QtkEbCQlL z-uzDMa8~w9&~VsYkMEbjsp9^Q?n(bd@WnmjswkYCR2>USA#uFV+87kkpb#=xAm zai_i2ZBs0p2#eF88nIqz`t=1bGI47>znPwsspp^>X;S$yDO|96dxjyV#IG{Fgsutz zvKFu-H?sf$0iA~F{|AWlnmWr72=G$8CHhkTH##h_gaLz5oafEsloE)1=X(TgoDHU8 zTgVFn@N2W6V@f^qOEZO)CG%IK-=*x+HNh4ddQ!;>8tWS(!^L-&jfRgFJS-a-A%DbK zOeWauw?8hZdIKT8@6%AhO1j#<8n6XyaLSFB7t4A}rowWgY?aH*9y_Phc0ae!uxCSc z>Dh;y&dvhfRou{+C(XWxBP+7En2(nJPnuN4Y@#Oj9v%>Sa-xet6yfkTSbj5&=v&_p3HNcWPFy}oe8n5Z^0old3)4Z%$HP;jDMcdKgRIcJjJw$q{Rj^ zp5#j`?FF>n?k1VYy{%jM$OwtoV7!JykXibCP*{Tr>IBjAV}5H8i#9EbikWeh5$@kq zf&TS?Awp>!dTn41_tLU^o%v-njqVHAi-Nr%3an|r^NQE3zFKRDWcUZKlh?ybq^Rn9~sl=+CveA<05gN z6YPYyRNnWt+z%eOkzc(>gN{-moy8hSWProSEr$VNRT=vueN*4G<45)ZYNd16JqTkYCDzI1XHQd2YAcA@86FVYiB=^ zh8lM@#*};g&LVOf?PLo#st()E#*TdHM4Q0xD%W~<4<9`Q=u`2l%?8QscT2H&y7g#T z0i#P_-nIw@6IQfI_c!?dI=b&CWiQ-Vt$T%%moL+%4#&!@_~4ht!uB481lv=y#u6)Ta?c?P zFYfk!nl|LE=Jq=Xs}$W7MQ&e6PhU67Bb4ky|~L-V~T z8oN*X!o0VyJePzFuBZ9z8l3duc~u`P0^!Pe;We)J@z!12+4Ve>;+jFzC=AZy%&KWk z8JALjC|^DP0>+8|$jxBOF%^!&8aSo`XVd{lm0wXvu8O7+jF_W?#c@cnmESI0D1XlD zp?0BL>khG9@10?CxN5e!oEu)VwJzFst_jxE)6(B6GaYxk*l`@Tyq~#tnzNAF_PvgO zI;JnpWmS+edwO%y9=<*hBvkb}v_WTq@~^@*Pb#m2Y8EcTG9SGSfM+cBl^WKn8)~b- zJ-Wh4edp~M2VkOOSZ+mo@_|cdhd=NHocG1 zwF+E4N@Uliv7SkZ^uWi##SPMi&~q`K!LF@mbBpBF5sFi&=R9#{S{B)hj8l351i>4X_HGVim2(UUo)k zw%eZ0V28!!bdxUeyDyp0ykmukDij$NB^7&`t+$uBuM59#{-h_Rt)k?hm>FQ#LyfyC zt*LJeZaO|bCT45O!_r)K8Ja;3bOo;Y%F1?KV#Iy0&#&QdU5Y{pndT)`6`?lB)6ocD zJrNk$HRj)QgGYNi)%*aS)5#HRY|%RG>hF3$D$L>QxjkThl<7iq0dd}kWP}}h+$$bc z&2omG^odaN{{p%O&;AF{m2w3Dp-*)d)lL;wKWuu8un0fvKZN3=H#D|H2Lg@XH4N)eBB>}~%8MOE`p}%vn5DBngwX{V)P2v(^nKWS!xM`Y zDZbHxci4>RDd>m-v1IMv*Ld`f*EwCy-KU|G4}fAD%ok8Cl|iwj>?nA&FqKY0e%?wm z!Kn~KwQ94K?CiQF0ZB&EWKeMljzeyMWT%iK82AxktzJ%T0U&)R&~hp!8(E{e{3$h` zKxKG~ef1?8D0iqB6xeA;i3S_9{U2zT6M%NDEZ)=LP;PM#5Wf@;{;)qo*x>pfXjk#- z25kxpYL6f%46t=;SKkMhV#Ayy)21morf>f&J?3~094yT`0+ad--ie6^w$r?Ve+=KY z;@jGP-0<3`tZeST*e(Mn1m5fWTTtdNX87!1jE`qE28>PTugoQ(b0KhCdY3_f5obVb z7j2Oo)+IfjuPFN?*(r7bm8RBcyV%!PoL0&Dr07F_0pWRgb()Yu>x4dXNC^`MT`gVG z>I*qah`Gij7X313$Kuh>$D1p9(_tc*Tiyd?ScM)p9i?`d5}8T>mFOaft%$BDu*aqM zq^4pVk_5jJCWjn6FuWiMfZ-L#<9s+7EmFjfNAhgrp5a@_IxQf6|FHQrL;`zL9F<#X z1;W~3$ialN{gGT_yVj2g4O3u1kE4?7P<)R|QJH>GQW+pmBL9HAQ(`0Z#IaZenrt4? zyM^&-gS5DzMdjpiR^SLc7$Phx+>sG#;mW~N^tQCrff=P~NTL2E8$^MFm0~eyaFVxj z<#K}x22eag7?G4O$1#g<+XQ)va1*V6MBJR5+~#=qIyq;Bhm{_(sbu)~un8|ig-y2u z3$k97R1r0|Y=+doOb!drA9xgS}ZT!B$oPz;1 zu0&7MM~?`7wB~Vkq_p6F$XzBID`=4fyY0!}L6T^u1cBsVool~b{l4Kca^!A2cPuO5 zUcWI?YS>phdY8^Ud0@0WJ(^jagKmSJ@;O&^Yl9_Lc}L}O_TGb_%*u++8Z}Q?Yy5-C zI6gn`|Mjm*>$)A=NyF&jeveXb02=*d>$&;hcN3sx=`vjes8S9nfn+EF5E83#m_8c( z@?1BqG$|=b=RFO9yr&Hvz!_ga>=_JLDVvV_+5Iu0z$sDsl_un(WW1Fv8xamqMa>Du zWdQ!;s^EBga4A3zkiVNq7C#-4VQNz~pXdONz!*M{))P%F@=ZtGm%YNpEWz>~=Yi%$ zFEEhC|F$z#${tf@>KEx)je}A0BfSqg%zqNU=6!HG&pFygeHRca$ z1`AS+G$JkgzyJN-jLZV19Pq^MdXW z>$l4-i|BC#Od%TmwDiz*cv&=`)cP7tXzJv}@UmHw zp;Q%Zmh1CQuG})`Rl5B0PVvcX<5$Zi64X3*azw{8 zXAUMiq?CB@jHb@$mSg|EWJxIAp7l^yVECS65cN~!`M^fn-G_sP`Z%3qigId)0!>cR zp`7LRMYZ9T-3$^-{cmFa%*#Qy3p?B1$eI(8nsdMM4|lf{f4yNy{Vij)gP5J_H(WeL zXu>IyEHXPiAu%W$^rQc=$;n>%$+>;mcZoykNB@M&L=k-6`apY!Jjym2eS#j2tia6n z9P)2VOdnW9DgKJ272fC%9~ymj#Swba1uq$^cM`w$Lgo-ybksA?5lwnW2+*Yte%MI$ zq84}9Nn=>)_7=@#d;tY#MyVFE&zg^=nzq!BC zesWo+Cky5Q(wB`6XoOOiHdxuuuKXQ0?*HmPLKt|B^s5pE$$QNo!{)bsYJK|B*0OZJ za^^Ra4kWCYpA=`69&mm0_<9;WtiyA;A%8}FbFh^zv3d|k1G{^hKx=0hUEXzDUD_u& zzC3;{+E<_2H73&4)m6p>%QP_Wlvygn02O}AP9hlbkbpR6x)g4%XX_$NSiRgLO-Ou) z{F0s1Fqt!5D;u2Sx30x=#Nea<^mmbf{tm>#XIh{GjX(LMAv)75mCNiKU>i+9e^3YD z4tUZ?rMK7k%jo3dI3$Bu3*O4yu8P+#qV?n+5%Eo=c2Dz`jCGIY7 zuU%psxk92|*I8zJ^70%T^Uz9iGT4G>B~jEtzvN&NY*)^sYJeT@PHk_#_P(lo`R=^t zo_g=3()M1bE$rll`V}a1)l0;E|6)anySY=04PjyKdVh-~8x=Y4e5_`LLI>(Z-ih=G zzK6W>y5CUAtwaE)H1EA!ljG%XGB2X(UQ4d$@1bs1RyL`A9#qr4y9#uB>vL2J5brBA z$)m_a_--SNH>2jGr2jARQ^l*<%4t)7M;ac3`u9wz9Ue1pk4rL< z9v~E=WZ}b07Rk%Wa=*(x8Zj?CT0X1ZRm+}eAwIjYT(h}qyY@&5{y_aIn=C!cI-T|e zR;@tn$K4s^ycV5*ffTFq?SSdsu}d4%oN(Y+BIwZwxCtPl_w&)_nRJMi0eQfewC89V zXx|bnEdmIW9y#fz9ScFmoGYWA!1{WP`-lcdJwjfq6exXCJ{kEdbj>toh*HU${bBTH z{91Xf@c}nCz#j6_-#&7jtcmc3`%d?Oi)an|i@K1ugC9(G#5#j|TTP>CC-3}DZ=B2) z!`@bksYxvxNhW+@qd|)#PhqpvL*JnxhZY$=SlTSO&agrO0&UK!7Rb=R(psEakDm}x>@Dq*$B zX|;=K1O+{=g>2Ar*>%J9++l0F!sEdB=-_9}ZS_=SJVu4@K)ZiAau?G&=j8P_VdfL> z11KAV-V45$g0X^a(j#x?s##-M!`jouyaNH_W{5KjHZ-)~0j{f~ z(+#;X1MZ0JfLJgPxFLVkA_4}aRBM0#rbF26<^-pGP6ptQpx85hKb_MoJA$#X158lJ z!`!M#pqD&FHP1v5B}+gED>Syj;?ETa1oSX!#2~kd7nao-c?AN4ZZC)Z?b%63Xgn`w zxr2L8h9zhNLoDH+>ol@Sz&gLOWI|yC*-bWIc3pyfrPsyG=6*OD+6tB$)UW}`5zC6( zxM=EwO^)fCQy@BZr>?0*F}jrhkty{ z&CPA~&FRb?@hJs1!2v3-Erj*-0g7xc9p&Y`5jk*m0{7os#bNef0VpTI&8;3SK%MG; z^mZK-T)yZBOnNlXBvfd+*ETB$5N1G&S13QpoO+2JJK*^Uvo7Rj-3O#TRh@qpOit9k z_gFIKS)%#Rk9*{RUQ+`trz7m~)4cEhF)#k2Jf?Hyg@pf+(k(G={L6KD-S^h-WCsv= z`4do-W77J>l0z~f#T#7^Nq8r^QkPPB%ULh(b&(4#M@f@7GAyU%M@Hq!Oj^%}=9bcu zKM5{RAQ2_GR; z(EX7DY+?InNE(Q3~g*$Cr$`ndv!-9bkP?!bB#UttW}V~0|0`)oxfhI|8h zsZ-(cJP>`UvXhnZYASmF>t&a%2{nH)Zjs50PDT}@O?s7KZ^+dffGwcyAVQH2gV9%O z!ebrK&1Vtcv{pbirX}4VfLdCoeHQ>@54D+v6Slv3nARJQbw>>cBejg0B6evincQ|d zj!{cHrtSn@4H=WoeQuob#2Wp$4H`ZrFXcpmc>S97k#iJxWHv@3>aA42j$r1Xbi@=e zxo&)QkAAEh%0Zf>j+Vvnx-$SS=XJp`zhm#kV@@aLI^#B55e~;|f6KvOAFp>6S~uF@ z=1>f{OkZ3Axs$X6kFh?Og<)a>zP19DQsS;5(_vA3U>94M+gFG#pLS*SkOCDJ%-(t} z(@!Oq6i-<8z2Awg!{lenSi9tyryIy`SXM0-1j-knK2yqjGrzd-}Y2;8C7%t zYNgpGlic2T_N4U4K<421k96`&Kp+T`mbg2L@nhaPVVjf6Ez;*Vqze{!1Z#RqD(cR` zu9i>pS(Jryw$(#MArTkYFgAn1(=6mms==rjPe>yibyZb|hJcV9S)2-$gkKXzdCk?8 zE2+xwL`dxcu|Jhdq&&L|32eU?vFY1!yA#v+4&43Wpea#x(y7cl{j&z~WkHpx(-TCK z4yIVG4y!}H#N1G8G`niz`)E>hFQ_zb({ewx;20o3lrC;kp-dJ$Rqdhl@+T&1;M=~w zinRR#EWY1%Z3Bb)T?($@qgC#Vk0UX1B_e;oy#d4F-^b^iWedyqH&`KITAF2fiyylkh`BbClCTW{8f zYe#WkeiP7V|8AN4_l&NSNYN2o|65<5Xe*uAAiKYXEB3TWJQ8sR0@AOUuuD*lvIRc% z!Fay=5%8(-Q+cjHgP}HpX(R7cCPLmqNdz9t=12{scgiAi*KZU3Wb(M3p_&&j)a_T> zxSk7hZ3VHknNx!^lo&Ffl0?T=c@VfBCkDmFm%rb3gyJ7F&jj-xc(_8>|pCL&=YV z=v!+U5zhIoDXFkLYY5!iIQ9UZzOun~tm?<2%9bUGLP^0GI^h8oJ7R)KW4eQOazzG8 zjhJwA7HM02sVuH$Nyv&W=9TQScf%k?*k-Ts&3XaP>GL%V{)Bmm( z;kPpEe|JKyCu7z3*%)T@(X}COV_XVQJXZ0dU!T8fy1K70A|EQp0m%;($1k!eww(S| zlaq+khJFhqB>lXT4VFuw5iFsv{1^?eLf*AEi;2LfDr&e!Y+WQtKoQ~@74I~jBjTxH z$+;yN{DM^R$BAbdX3L9d4rkIb{W7G!2@upR9~D5L#)*gyy2)xqlJ!lUe8t4=W9+7U zZz-c|2RAtNzdGBw#?oi?>}7D+MC`=Bx`4a~PZW(8{TV(pYTo#!YkDtIO7UOzR&G1a z=vynEZJ#q!ncLb=+ps!YgAf&7CU|aTQe-+>!F@&~?d+!xHhP_Em1v+l!UcjL%`l`BN{W z9Jg3DzL-{CA-Ch3+$6l)e!DI`y>^39SmSYo+W8TXN^0pn7#_{uk}!yFB0EU_wCg&s zJdy^CI16E0@ITYyZsX1(wUkP3?h&vHcv+a+(1OLLx_lTPr@h76X8qc_!NipHG z!Q$n?bC9=`(N>;D%hLHuyKuCdp7XSevk0&+DiF*j2sXwzN4xSEG`i6urFC0BT#h?Q z$1xP%BzLmSEw=i%8pj{u^4tDN+B4hK7ls@OZQV4W19vS>PL(%ux-P~frPv=BoN4|D ze2>EPup-WF5$;d$RXr_UY*-YEIif0oXYG-smZ@RVfhLLuWMs4FGv-~Y6-z$N1=*Iu z5horzW1k73+s_W_5B<=9!A|FG+@$5NQh5G$S>yhk42DX>nG8}HWme?ddXBQ@?YBQ2 ziTwxf)4XFnr+UH&3Mqld=xuX4*-Qp~?mhG`y?oN5C2b1ghUC@*TrPnVj<8m`Bp4m) z5Gd(~;^7Ek1{g;9dFpelfizB*jxh}v8m!KyGsOoTMY2cNsHD&V+0^T4L|zYmQ+D4> z=YWC^=A_kobMp;AS5x5CfRWL#B!_>2e=uF)OwbMH(|T3L01N|011_`y=e$=nc}4)$ zci*d1J6*Zi@9fzq-S=&rkDF~K3N*NhXe~@7gV)=S7B?jB;~ntr%nTNJL)44QiXX$} zH(;-eI=w-J8|vg>p%B8uYgjT#Xv>n?)nY$;hc}9efwPL7c;b|C;|I>8MgB0)I5B=; zS(NsaoC$=J1aVlhB**JIZ4JI+w*A;TI9`I`Xou#zo5Ywlk2SOmMBy>fr^` z&Ym0fMZ9`lRkt$X<{kYKIyWQ~@MKz@Z10n?F7=(){bWFQ7_qcu(u`dV=&X(8ct3Y7oReW-r*{q2DW_Pg8 zNUN-!H%E>?*{$di-6+S$Wqw4Y(+8CHs}bKH*G0Z9f@=*{Zm8MuIcYNHYlgBJ{U&ak zR4Cb74jRuXFc%tL_0hmu z;`><|FiL)r>_Acvr94DnW?Nw?r@nvKLI!Ife=at-;jY5&jD9?CH zi7&G~Q*!HWhsSY`Hj_1$vH%w36`DXJ%2R*!*r(b(_BM)9RynYug%<49>V{K5@ z_Bx8m1ta*KF_w-5cI0Vu?tZ=;^a`<=FQCqOwfF*Z>6Ai6Rm2Wa@vhF5mRjoxhcD;v z`}`hxE(6(%M34J5F3ypoBn@zqi%x*YR_~=PqrD?ABkCxb)>YZd8mh#hwCqFN9 zOS*+IA3X1OImh=HUOvIkO3F^O2lwqfEu@P-y@lYL;3mkMx<>W`aG z8E7R6SiP4ywXh~p5kDHCS3bj`(f%%(nDoPfpDsqsvGs5fULT?H=|Z)Ot9X#nsAXHu zY&>OuKm_{oZGjt+ha>c|OqO_hVY`&*%hyLR9Q<-9-?`K=$Y9GP+2z8ayYb-G#pUhR zk85c7wOBRx&^5k`g`w)r?byA@+O{~C_U$WEvDnRei+k@8|1Y1taW6_V&Bw`Oi1 zK1>It3c1Jy2|R~f5@a^+zRz>0y@pEP?o0y^R1Kc?EoNV{sxn!#|Dxi7kLM6ptRi}- zG?P;!LAF4vTx{RL{y~0h-`aA!ou|3Cp^A8}G5EO{;>NmXUf2vjRWW8()(Jn3ARBnF zA+6u?c03^e{$_r_$%lm+k8Oan z&&#!!aCsbXh6^sG8^$PuVf@qK=ZKcEgSc(e7=P(fF=tw(Ar@QWk()vA=sxo!dVHPh zDOsu1dw%AbR&lA$%SFtEP^MVr#|-vc4cxrboWCh)Vl~RXZ1jx$`SBV9K-AwHmFep^ z-cft(aS4@HQs3@xfUu#8`4YDZWT__l(y80FlATsCnkE{glNYab#az&+} zR`ey_siH;VaJe>K6Ctsk^q?I^^9! zLi^i8r0eFyEv%%W5DYEv&e2 z3@l5|OH<9xTh}q}#;^Q((l#c9Bl>ZNo}i8uYW1K3P7aRoQ?XkcKIR`VoeK|*@Alj{ z7120NMQE_j#G=oJrTsHA4VZBXt6XW3eW_s9PZ;QNqym0`+Lu@${O+`@u|aI@(aXmL zwv?tN*@JT9Bm!)aA9npO@i|EQvBsnj!(i(DG+a6faYjKH=JS`ceCMxuC}StuZ8h_? z7J-SyF%YXw)EL=Rbx7!5OpqDX)}PF|39UW zJ*sVSQ^BMr85k4mG#9Y-JzdvbzA}mlRdjeiEWV7a?6?`kjLt^|U5yn#y=(cs)!ZXK zy-~ThweWp~ov3^prkaTgxRNE^w&ocumz}&wlvv+*C3caTx~!}cjJ$mii_d(XLDpMJ zx(erP)?`aSZZB)5{Z2j@t70KBpZ9(>7IXFd^VvYQCE{;`-D_OBnvdesCo5yH%h7wa z&@4i#_sNetLOLn8N3w2Bo{Q%O*bjbIV1B2|1|g&>di^k7>EtN#a1L*`HFZUu%5II< z8)e|AkgtU9$5Pe3^yc!(qPJd7A>&sp-zCG$nq(qOL9bmzvkf z0}#5?VC}lph+poPL9xyCeP%*3Hzo07WEbR}Q;TzP18r2i^SdRKsjXF5wxa}KxLjl* zI94LE9A(Ovaex(Yrqo0=}dX~wPKDm6_`$(NipR@?U?v%z#{ zH`Lwt$8_pXQ;Ldx7_f?m5EB?-t%RG$DU^h|`fkSeWrz24QO>!~JKpyu)mvIja=J{n zC$Co_QR!3kQr@7PAgaB{2hWQVPAm*ro4%#bCRtd?rav?C5)|A^L+SouqG6(%horEy zTf3N6cF*u~x+j0@-J**-In<~+@Y$s%0<4j4Gkmkm7PQprqy6Pgv$wR%_^ruZ%?oCy z68Y4Fg4?&~Dtkqoor+({8r8x?*sd9DPX z+s?1WNT00Xx$ts)pVPAgJYUhxv|82~J)h4fLa4_wN?2IDgdliuSA>vIP?1y1Wu9-e zpf+1&wk_Z4{48I$f5lvJD~5Q`30RQ$|5l@2HK=l8#Bl2A_JD_len{uDttjLQbLEQ)++YCZrkZ$5QN0hrAev6cW< zWG4XQ6O3)nWzm8Qj}Hc(CFzomD0uB zw;tdb()NZ|w2zR4v{yZXt4qomDe4l<0wpR~bXUJ^hSJ(W)i`13ukgr6?h(I`LX1*9%YEx0>V6*ptm%XTMtyDC&0wO`2$6wE=*yM@3+c3$-vJrthoKYMM0{mHmnB=jmRgv=7Md)>@2 z9LMuE3Nc>%T*pG500=k3Az0hxO#Uc+tBM;gDR z9SQP(?$cUs&yMNl>+`Qu$H&dDtk>6Hc`GUweIPj~V`H1s0C?Bz?aPhlUx`6q6EN@A zwkKn>%YO}*Cqd7sPRKYsR?`8oC0&)Ds(BQ`;e=F@h&?DYBT&w)9d$T}Ai?9%;Vcss z`;RI-ijq!@mIoYJ4Ie?UpGoE~eH{7oJKg(lQ@!NA3jFk=p6ldywX>_U7~Qusho=ew zYrrt_i%)GfTS~F^EBfVEV|TCKx3JZBW524O(zinmU>SZZUCM+wzVWRdRxqZx&pNsq z@OjQ!FzMTEb*0|3=kVA)gV%U(_U^WkQ~@8_f5K7zLolGX))jI;H{@4O^F|c%?Y?

    b|Iu04{NuXLF{nsk^-R7-hgsl+U7*MG|S_^H}_s)*h8)KUGX+9+xX zUS9iO7oCT3Ikf~d!c7JDZE4iN>6@PfG)arbRgHV~IhGq^=e3I_Q;llN41Dq`e6Plr zn{LnNW3Y(tUdrwyw$3({Rf&S?{TCxDKr6QsVDC#xsv%OY zC4o6f9#ShN?-}|0viup60=2}*Kiqu5_o|1bX~E-D?Y^%L#;O|8BRpJtw76;SB<8lg zgXEncmQTwARmAgoVT2?vt}pM?rDUYB*#8_{7SnL_5lhlU{&UA-n+w<&Ia#c2I)})F z#>|P^9#&-g-D2+TPBt!=IW2nc?~k1g#fu2LaqUg}x0xGd0o!pcp5rRd_dmUv1Y_g1 zauK|6qFTJly{L?xD5akq8XIZDQc^fIE0}A=NB|M^KMNd1`^i)lqSV_d`_fxmsS;R@ zj9jw)~!`Q=a2p)@b*_FhQlu!_0JEC?vTjk9o|Hi zatAC?vWw+m^t`7ytc%>!BI3`1bK+u(>p_j0?b@m&B?D(MrK|SXI<}zYd2LPt&T(92 zRtBu7fd3MqVTlupM^))-HZ(%*drhz~3)GVRadJPKS=2X6;P>dw!lcn-;u;lut1cSvtMy;te0cQ>7^{hdPT_YM%0v+WoEu1}8~=@u!(2{^ zwC&)W+`x0kCC#jc2bPdazae|3GF-FH79}T(Aspi`-t1`pGAKYJ&B zJtLP)^7TW;hYS~8{x=^s<0A#qV$G7cR)rNaa&?;otoAj4yVSUTjDq73+WOGYwK)YQ z#bFKuW4~A;D$riJ0z-w$rER&Vtu`roAo99c8d7^Qy>5LK!Rnx~&p?qywwuNsyrvtd zR*S;^7BsvoGTu%-sR~?-(6rH%I@C;~Ldd`YqoR__#Wjgt&1oU%#e%|%9Xde)Zty2R} zZD@zE2DMUXnN&M{jdW*lZ#wU-23_v0RVM(h9vbu2e54ctR-+T^_8X6493r7OBbP`n zw(uaxl&WmksC^vt@nTK!#YGC&T<$mznu8rbczcHFVHj0l z$lShcnGZ0rEhMnTU#f-evy4ZS3BQsEa=xN47**?$%R0@i6^_Th%^#yJ%L~+h`F1xs z^d?sHG&Em1#Rs-PS8Xwt8%Af`bdKiBj4N6B@^=uo~4*~liMGB)X1YKQ?ST_09!SL7* z8yP_;l#~uisdxy1nOQ8^@zbOEokQ>X4M96SNa+Iwj>&=cF+kP8t(1X-RgxH!0cED@ zAf+)m+?v%wRN>9b@1~O$zL0}L_r#sprSc@FVKk9IprV}F6!!gfZ*dd`h)m@=+dFNzH z?*1uyQUXosR-QD4**cJ~N1)=(pOGxKt`cNK`@C_mPN82M$uS1!W0>b92o?G4j6+@1ac_a7q5vOPJO(xJq~F zY2HYULW7}$x??^SFs%-^k77O`8@~RFtmZb3w`iGmK zv1MuxaPM-F6II*Q`{woh<+uVjXPgn1@;vFYUR?W0|q(A{6o#whx z`Oq|Wk5U4AYl20hOuY{6@Pmd z=C*iRb1&p3RYuh>kW%}`8XsIMDt~IZLvaz``rY<}>1DVsbmNLEiB1VIS3LGp%!~_JIty@YA zDn#!T%ftzJ0TB!$*GS^8<5-DqK3u4>QdWPiy9f!1x<1Sjem_Muo9g`odR&%5i<uet6tWt2v zr#`}vOE=ht(1WQ7`ks?9GnlV5PA3+hPx}{v5h}B|<^5csyh)EuF`veu=H<4Ij*D^k z`_2F?`6HozU%@0&0>Blm@$0t$pQYadf|5RDq&^VgSOf7r9A}F~pvUF!zJ4fi?1a7# z$W0D~k;at&>A?XkN&YGv z1C&(>F9={30Q_;D4bH3Gj7S|aHeaW%yGv`7waQJJV*nmCf)&q;@MCMJ;^~k@T&T1JKP(=E z2MZY89I7LjWl_hyrcqpal$Gr1Qjk`&l{wtH zcZ*=n#)RhpS8D-5k!;HmKXvh?RVz_?QlgCh03k)BP z9(EVXm?qS>^rHe zy?gz$9m6|sIHU6lDA5*F5nj-B-kCp(pc%&6@6_QE_i1YoGw0?{;d@}OQVYh91^WNN^KPL!bHhvgN3AgB9X*#T;G zpj8o_P-+{fnY^Y9#B%7HzP(0Ha{}u=z(WBnklNV#wZm8i|CP!95{%H&yawRof8El3 z=zQf*4XagrO^W|x60Y$KdJuU7CgGVDU+;GS;0xWJ?nhPknL7O4r~Kf?9jp+emynS7 zEaYNS;kq^UyYFcR-aJ*crk;Rqb*b%uFnn0VzI?QDtw5^#XXiDZ#^_j>mInA``6+=rBwug?(dlN zlMgY7$3YqoUD(6$k(?OuA};+MJ*;n`!;RFLMjTfy^2^+Fe5lqEVt*|*j1GY5#$b3j z!?G`c7otpn3FkT=UIeti{mPk>ZlVTZ@xYUD`EZ4Uj^7e$i$kxnREG#J8<7i7Os&nE>cJ zr+L8g=@4V>1qbojjMwJ3)+lu6miMg-&4s!Dx&cu<%aybC&Ft|ffLTQ+V#g`lKZV0L=|;(+ zLQ&-pqFw{6m5xeU9pWBAJm7DK2fM_fi^2>OJd`yH771zrvf&{><&RNz`)jv$pm>^4 z3f04>$*@+$8{2~>gU4K&2iQG-s7Y@3MJ|#}ag-X>^Xb*tzbZ(;;V^9x)ob!_e&J;~ zRifX%*7qq$Bj@G*{wPq>^451}j@wxrQ!yEpvCz9gwL~zJ4%)x`!EFPx)?`sgEb?7V zyd1mQs55Q8PZ^g!Y9R2wU*HD}!xoM{8Yu0F57NiZtG44AKcGJv^d*9UY%Ayy+`zmY z6eaHKrS_mB4{JPV5z(uAXO2aM@*4?~E;)ePkChrs4hFQB*18RjcRo zB0kLDmBo)DOmA))iIzRVNQb_7rgqC1F;eN=k`fN}>9AHk?)WVf#k8Pd4Nqg{`Tih) zc}2&3v`c12EsW2M!vzM~MkTZVDww&i#rWU+EZ_K*a=QUUJTQq`ampIbTK06^^o%^t z_ELWK0+-?#qLhwIT0>_yJ1{WtEsng&r_5&rcRRpvx~v_i0cdod10tMQ3xyjQ{^G$( zKzySBj&_)kkbrPIE$RHIBj043TK*?+aK*!U@&k|y7ZJrA=?F)$lEgzg-d>&2?E+qB z#f2?!;1=+}7s&oLUDtK86qi3V?!ntQ`X8~ab(c6}``SS``g_~sH3f-8WCl=vu5`b! zuwXWtElUTjFam`d@U@{`to>ER0+h!Lbz6B3$?ul77pabW^UIVE zX>YT`-%l)*^j@J zdbj)_(+!@gw$nnF=MLU@O4=z{5&gqyk#g$lR|@~r;87C)l$M=vDw}CMhGk$4B51%{ zSr;q4>8nAw^6gRZos50pe%cFX3-VY$py>Nu^8`+ZZwCsBq@Hl)@A{LWH@cSX!Av2O z)o*4sjd;pPy1%F|e1DMVe-`t8CfUhHkD9MT+=jC#V;_}!7)OLwRPi$jvZsLxb<4%b z7AAchf!i$S5G;!2`xn`Izj(mJtnCJ%`IgwM!H5m{kHyf~xvU2}#sx_8_hEg`;sWxx zz5tV1jKFC=7<(06Km^NawFu0h2=166`i63Y{<1TrBD3x(hrqs?`C1T`AaKJ>lT%oa zw|gfXI1-u@{x=3pH_DAi^{gZzTgKkESEnA*a5iNq&EAU{8~7L4nG9PZaXl!TqnP*%l5OZC!0lITbGAyZ0LVAFCORGqQ3e9zG&e^dS_gUTi-2mtFMo2gq(zYcFG7Kjg6%RN~2Rh2W z_)IBf5#usOQALsSJ|QQ^q)&gQz_wda!U|w?YMBK+C?)1AOS#g1SNp|pC zlCVb7AKr)450|e;Nfy$ZYt|p(r%@6)S#9_`o{)?lOSuFC4*IAK(Zt1StH=>ojh&Rt zG5H`{!R_3xSRQV$a{77H)pf29*j38jas{4M>H`?HXZNo_e zu%RyIYX-7)K@$`q`h2Cl9c&%G2^tKqEMDz(%YJgWqb-(Cb&SbJ$s&G3^AJZBX!@VB zX_AO+<)Wf6d~?skk?|AR_ACc{Szfvt;Iji2B;)Z5SauQkj0IvDL-mEmb^#A?xLK~# zoH6UFtdk*jN)r%2z#zh;zc6O&Y1GjmXD3o}Qll)!8z`T7_%j|lrA*=5ZNNX5SDFhI<4^n*ZCu{-f#oG5HCQ0PoimSzTo1}82->B|4gr4K0_6c+{Bi1P01 zlfKA)`m0;Qi9=qQ*PF>ZjnJDI)z*nipwj*ZCfpD*hZb4#R@Mx_P+zhBcECiSG1FS{ zzhc5te>tI0`th2y}~ZWS%akg~FT2yQ%RZ_nE{74nH)#<4V!}Awk zQ!JJ73mVOh5_33~dDnI5cnvSU0M1X<1{bk@vQ^abV5!E&#sG))h0fvN=o@hpC{_R= zD=dS5v4QwVg1XM>Bv0gq52K8d3v-h0T!P>{4Ap8&zEb?mdwiKyEs4bKy^feRAI>s^ zEtylXR&?Njrv?_Q)xCfbBoW%?h@+qG_xzByPW#6j)R`!w`IIkNCbf{Jp?fs0H*=31 zxkrULA8*T4&TS*-ZcZ>ss(g$Tsg7mn(nFd2=EQn-va1h4oq^mn(`n=ORTY^bBv)_7 za}T5@T`ZWamee8}b8mjLKFJ$c|7`Fz80MbTwrbEtvV9(@eDOwyZivi5*S`A%Ai8?YgruSgRTLNTbS_YckrL0wAn!v6m56R=LP= zN$0y;_U*_Bd^fJnQ@(5BO?lA`vt7G(VlxgiQ66=tVa!JJ3Klgq8WzAxzR;VW*MT8u=4TrgP6MRQcsAD7`5(26=c z>*hxUWzGmW0e4GrkExVB3>YbE{6q&)vd0T&Xd&csn|u82C+eff+$D<3t+>< zv&u42F&+O`=RRC)u0)i%d`2`Au;O`2s3w#ZUq^<<#&+2dkpx9~nfw|2vz;IlcPBq9 zZVi2x{fsN3{afhsi=UPWT;IjZkD3ougD2`Dc1qo~g$qxe!dX9OtrZA&c$bQ$MT~(b zCBUS@1#wIv$c$D~f&5oAq~Krv!mQZ8ruU+X<9?_au+6SEFvEB_Z23*o5w3Mq_wQ3f zDW4v{jHZKUd;5oR##B*vejgzelg7uA7R-rDYX#Q!f3^wzi4#! z3=r2UkEXCU4DJ}mN`+T{h~oMc-ShH|$K2c{ANQg(qsolQ@e3&&XmemS@!_@=yy!6F zw>(M8%=esTzv!u`=%EGE;M)~ZkHA^C#8+!Mm#{RP7Oor|##z#XULw|5W+U~P*V3#> zP>+MbXE6F!+$XONLl#q@N<9UdsVUmRUy>zcnT# zCvVFqhd*fW(uMl0b7Fbc{dugo*{w95Jp@%bn8K_)3qxrcy8UPe9x~^(YQ|?R?`oP=aiftUs%?+#N#X4L%A}H^S@)4&U%!Ux2USINz0kx! z>`YO7+B>=hrtp|JN$BTL0#7wElMn$UbXj^m+XqEL}bge|_KP4|{D_^vAPkEmpxs%+Jm(5;f=<{s%7QutcdA_Do7dLGlYFVD(@%PABm9ZbxKUs+M# ziEB(QBh8-w>Vt)7eN4R5=-&=V#R(;^X~u9+2o@AY8DLdaM&@i*NT}g~4g2iIela;W zyyrA{;9?IuA)r$byb{N!Q;lS;ndHQt_SoRf=5|kTL@|3wJ4m=tXn4hvj({eYbIMI( z0$43Rn)OxF-x~OK-v549%oD zK+Zmu(unjIanMPK+j((!TB?xbct#BAHoxDEe3}UF*_UabW=_UV1X80fxk$UGJ{`oH zJb79iF&qa41|$lETXM3X-kY6S;eAkv51z$*m=@p4jY>s$Dw{F#U&^sJ-`Pt;cTbei z6ZyYIDMr0QZZdaBR3n9fZID-v10*EnmZ}s)()FwXlU6k4ujk?isiPI`nIThJ#s$%`rUZxXUH;jVW8B}nD`Wk)>ycix*Bu9T(A zDQ&^L6L66q%6sJBZMHLHrfxrbgWm9(Pw z0=kSuoloS5i$J7j>cb(#rmum?Nf4<|K|%+`ZRyIF>>WMTNb#^gbvLbY=1Q2cK7|M} z3tlfx7K2D@QLMD~_u1_w7JC7s%WjE>hDw-awAYH9NBz_<$TaTV@2lEtadb+(VU(6U zW+@$iJX4lhN^Rw+c1&zO}S=&-C{O<{(z-Wfr8)4HMOau zJrSK*-TW(f?-V>P=fQRrpu4g026g+WA}^s{YX_^)oOB+S#*UU$lx!Z?wH1EyZnKhv zdB(bnuthg|!NccM9RdM8WGRnO`=-?!=n18*BO`M%Wel}0^e#2nhzcw=?il7IKt#VhmY^er&{|6*3I?zwj=E?xQuGI;g9 z!s0p7Jw;7%`m>gHD(JK0>`pGXOWiL;oSZ6i!~nh*8=#&+HPoE^@d;6LP&Er9>As$G zAKl_W!*p2~Nj0qqbT&21yd~UY^6_NYWVA7l^&h>0hM0+T!=>Lv=9qe@gtI2hd8g&eDVcj{a<}l*$z!lfE;lw#U-l0(TGZZnSft2WnUxpQWU{=i*;XME7v`x$vrb+hNOd%1H=&MS1UI$}<%R2OjY_NnaZ-wWwo& zNytaxmuLKL_kySL>n7ehN z8Ridg?;R>u(GEo75*`sH(3n-3Kj_Z>WAb$?ijo6PbOe6tqleIONA?tGf`wOYA_*d1 zH<|!jXqt{-tO^c};+J|}Pq%DuD{!>krzm;NUh>(b+Oz@3tW*8kuU-kXMQScY$0mH< z-s1l%<2RSvVN|NCx3%@)n?lIXRt)7hA_Xz;iMPGsSLZUUHDf;YvNRfjT80}YGc=@? z3w3rFRD^IN*xCcTNf4%dVRR0@Yt(?U|1bstl}29$*#w2?TV|wNbCdIck{RK5yI4)R ziP!59j2ut-^^4TXl?GxNsJ=3$y}kUjyo`6=* z*RQXs6d(Kis4GAuw;6GHr(NJ=@g~Kxwwb*g3+5B2(Dci>X~YjlqrHuHcvdT^eaos!Q5T)>au3Ywa!-tfEU zMK2R!Z$FcDj9OzGq#$OJE&w37Pck7F2VIq+FCO(QE|Be1k(Mo5%}{QNoUs zB)(;_dvNqWdwKE}2eY9*(7Vu;;8XFGFsu8IKlo2U)N|xiWJ0~85V0x)PQ`7W;UUH} zgJ#W|px>hsM;oH{s&FJd6X#C-kFGnSglR0v9*xU$ySx!A#(FNu1_)4+S{FjmH;MeLYdT)s_M{E8M&TCNjcMy$4x-R{OG^;{R>H4@b}j0R?SNKr

    RAt~66 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μT{Ss{C?f8V>0 ztEp(s4+RzEs?5R==_ zB4UvcMDnREw%h%Cff-MRCry+D?aH#hu~+7Qzw4PPwZdA+*DpTD!{g1Y8VII_3r*fX z1R}3j_xASL#Z_1649VdcD}#^TeBU5`81cnj-H3nkNMdB(6%@S4P{{=44cWbj0mDZnCsyH z2nJ$7KT7e?%3(Tv0*Loc#~Fl!WST@QUmM9zd67ozAg=m|vYb**4eY5T8LE%b?0op>54Rb@ev5DXXjJ0em-DQ{=)}Pj zA5OBahvX!r84=3e$s*-DvPME)P0N3sU13e}Qqbs3GPdBNL=uqHbg7r=1=dZv*G90`S-qi_*@VEc-(z@Sp~qvLeK*`sXMk%Ov~Z1$|G~Rm zXcBU-{OXcQK(KGEI3=y+wpEz}EM@=EY{CGOt_^OiJx&^y^tQNAHB4F;vjuKrHGJgDeeCW?v+C<#M3{c*OPh1jWXSegVYI2ADvK&I7aTY@dRr?Ty2rG({hTy;ohgf$;QW@xQTBWKUyZ!uyr9|r6}+Hy27Hn(YEDs<87+&2?C~F z7qD%$A<0yHShtyx>p7tJD1@$iLcu+K2WWGuh??^phbJiqJayio)J43s9jZRiIl*C` zNd}M-x2#bLFCxk@1+b~SjeI7|79B6HL}1lAD0Dg49A|EyK?e_`^JPYxwRQG(wlPPsG+7qX-0IG^AOswiWD&o1OD`h?TEtv zWld0$wc^G#mjfMK#?PAmU5sU;^G-VoxIqg+nx2hPjm-KZYiyy>2ju7gnl)Ljka+cK zdS)!yg=ZO`$4bwEWe)Af@&h$w-tZB86pC)k9N4l%y-V~vEk_7BPgXljGb#HPMb2bj0y43U6}R!nF?MJk;zls7m!>PqskOiSs`BW z*BS9uZ-kd%5CEs9!O1*0i-Wlxt!=!ZAGlfQ>WW-IVuZgm;5LnT!bkkdPz#VSCWVv} zrN2obyFSltJZLb>GB2~?>(HFqSgMa31;LTbHn_8+#XpG7mF7eSCRbutsUA54P!|tO zUQ}n@+(OQdIbj|lvMkZ@4Om-2LH7qt^SzMptpO3o^zG96A2wHzVFdEI_RLR(npqsB z_0;Sv$&8emzZHlNO03Bik3R)nnrpS~>$-mLXk7^@f3|Vaf%hv#zQeg@)v-%)=%-S~ a4YOay&izsj;T8z^(NMXMtWmOx_ literal 88598 zcmbq)Rajf!6K(L|!5uN&P zDm~V%C5f1#r3MOuL`#Skgx>%{Uun=?-Xe7Z4RZ>!7288yru?F02M&xmGbHDp?J+FhJQ)iTO zJtI$bZ#|y=t*rB5C;7dGcYub5hLNYIX8{6@I2L+hQc{vD7~g?f$^;QR_g@GT2S?pV zcUrH4lG3R3J`y^zFcJK=U9{tviyWJDadEMu7wE4Pvyjj|Ew#F?Yqq)uEG1}K*x4&a)*0s8g^i{MM*CwmHR_e%d-5@5W3bMvy;PTDMYCJMR{%qO%SD;t< z)6-LQhx2CeN|*1gEQPq=#~eYIE%zsE1Q{AHho0s+cGT@ zLY-xq+1Msnf??AaQ8gKXZ_84NE2$Zkz=R5WGss-P$D$jW_}{S7+XNmoYlD$iIoj)0 z_eQZ~0uS?l72Za*o~7{7n0Dzsr77`I?wN^1`;`A1RV9k9{rF9qj-I}fqx()e9+yJM zbuic#2_LJu9DKK?N%_@73@$N6^BPVaVnu#Q-wmbu^7KuwC!kA7QBmEph8-JTw1@ve z)!Sl<1ydy~EbL@5M}z^KlvH{6cvsIy;|D(yJc2!si6$A;=hism6dRzEdF*o2DQWUA z7>El}RMeV>n1EZXq-4r5_O| z2bt+x={HP+;da8_W1=uO=dZ}MN_pgWl$6K0`LXQ@^L45*GYbBuWH}_D{SU_$ILchX zfqHNlG4Tl23Hk>=;=;~HakpmGtASmKy^h5fNGjZs{7-Z-aF}$SXR&P}@IaeLDNq@u z$vP^N-(iKa9QyHiqvw_Ph5v0K=B|bFfHaoBJ*z>STMJd6e4mEnsp@pl0__BAv>i~y zTSe;I$?Oo<(fPtpLo&Sv_eitMNi*C|xfk08daG-XQW_c>UgE?;<}!G!=jJLt+`>cE zOo&}Xup2QIru&iY8ZcognsogNmR43q?viTgfPGxz%`C3N)tI3c6C;37Z3Lh_LX9iI z_F*gf)u+^HLp%gRL$e)$P1S9BwXgntD2Akn&*y62kVYZE^DHP|k;oxbsyI%=BtZvni)I0Z$PnE8c zP5sg%yHd^wY^XGT9O?a-?-vuZQ<^G*j)Fx2b_yQ_&utefkCG*o6Ht+7qIIOMU~~^;u`b4JzYm% z?4UxUOECaDY;>Op^-BA{KHoA^Q=3wmLP71PBj1&2^m%JrIFv=>hSA?B&+J0H5tcx( zCZ~+p7k0EzW3FAusq__IZOuWiNVwF{?hgP~@0I^P?;N(Yw6q-<(mzpcIw0vcTdKOI zujhZe{@HG$+uvOuU#hIG$9x#;dO~1>vES+M=vTy4N0Q-Kvd^Lrh}pl{_pJ`Hy}IBU z{ni_#9Vl8&Q6{f#QXXgKo5mPz#~BbCw*0q2zZwL=+pg``{E0(DO)~uMc~ScQZ4*K9 zwu4XI$)^$4zkfbc0`w(1W7}d<#cARQkGKiiXYDoqb%DxXj!gvz!+RVrae3@dQ&Zrd zt+jvff4*L{TW+wlJ6&sEp@VZx^r}NCCnLLZGWTdUvs{9P*#cRiZUpu!lNwU3wjI7FAE~(@DC{LBY+zY}rwsOazuH2ZEd@uj+pS zE$d2+Ua*2JjY$C%`}c3`)tls9c{+%@hBRXOAoz~BF}n0(;{?r0f6dMcYRD1Kkhr89PiaY$ z-SC8;#}^=t4eaZ&dlCpDnotf}{3KV&9G9z2iH-f!fKzFWV5IxhVS{ErjdpkGO7~x| z_$aWmE8UtE8Ks&ZkuQOOhPN;3eCcACiCPj5lEx^=IPjt_E->5VF_HXY6G$qUK)SCW zF}&zPZjo;hw9`Qo9Jh>T8cG=LKq^1C1UbxDPTzJ%R+i=F$^rY&m8(}!`JD$%L?4qE zDF@rfELghG^LxT&Y&mLG^!w;wt9m@Zkrf z%b@@q-VkI=%@7o9vqvj@Q(oe!4sehnoY%i|n=eiFoNM#SIEU!P$k zkv8t2&Y3q6$LUjp4`mGu2zqZ}5gHX0g~(V4MCY@B5mH?Wbq|>X>CkBxDcU*Bu)^|v z2v!E3J#lH%;`Tl4(-+<07DomZ^uj3=dGIJt7&DP^xN8SO69{xx{uA%oF0x9@c^;YT z+vU{bi{aOmpdyR6Eb4Euv@~p!m!7lM1V#>&9zwE3u>jyBDX?xD(8L9(hXQ{LYd?6b zt+^|SF7}p7)I}cMUW6|NPOd`oMCsPwAH**qtsLtZAs zYX4)hQaN`6bw`2R5au(S9nvsQlyk4@WWv(g)iOqz(B3dyB9XMaRHD1+r#<&_%={T@ zT^xW9@VDJjDjWH7p$ONhO~O&k8bH4_#91Iac0x$*$zX+`z#pp3`;Ywhm)8Vp8SeTM zn8%ycLdbP`Z*QW=3jX6Xa}V41!1wM0A`YX$o008scY3Jv zN8rH%`e_Kut=3znqd6Q$VR(@Bgn@83uTLW)59`S?@d-qZ2%D}q9oW}s!^Y{u!-p|WqHJ|=cQ6UlbTA0BWf8U4+VlnA z+Z=Ic5V!~$bHKrUx+963C0MRzA-#n`f~R%M1a32|Uvc2z zkn;Eq?5w>5NsWo$(zlt34H8l{zBk7tW8+ATsV9h1Cz2f=z7rlYEp+B1<9^|Q8IZI- zG)+1o1s(c*oDlq`6qX4S^;suIk~+L*gU+AGl16nG5$W7m!x#L{cmUf0*;6=8?s561 zhS`+09Li&998>?1S?gE_`TnHz&dUIHQ%PxsUspV^>E`7}Shc&Fnb3hcM{Wlv7Mb;h zWN*(|A3IKkt9S@1^|^Q)agJymB;QkiV-M?}n5y1wkQ&VRWxyJpJ=|gwnj^qs7CqAJ z;K>_bAV5KWS^m1|MgbV)hWp{}m&z;9v`fnS&Z=oS0b@g1(eU}Kox{C5rzk-P+ls_( z86jd*#7#A0HdPG1Ie4XCtGL&&UW7p6ZmINXEPZdf52Rfr7uyLe9J_zV<;bQi zA6B2?ji)c(jS_LWeiNfhu#kB$!?O#;mtQAN;*p%Pv~gJFv3~boxINUv*Q>Yb9|`aP z1-x%bCeHEOm*UY|Ahko;>-~%EPDai(8?89dZ-j{mDPtq6%)yYWtR;qaA_L4;c>)=o zeTOg?fXd%9NcB`HJ|ajD|H;P!m}R8<9mM6jxEB2v&KnvbtGQepX5Wz*FG^3OKtjsG zz(V08?N7B8JIdK1lzMzs;>yPhUe(~6oXqehZS%bXAAZeN6N;=q+ zyVNJ$e22NuHCM-8tIAs>69o!)o$2jEy#b~+Y znnDGWmLu33jA2%Dz~K<~Y0H8xZrdbl2hj;$PJ`a%3OONBo913-ZG83alC9@#0&p!V z{WA)YC=eXJ9u&%>{+Uf=^@7#oW+a&B7T@@#Rm`Z@<5`9gV@v0eGrJT4Z7;@d9L3Hu z52bji)Bzh%XkC{a16*Wfp~)m=q}g)0U!vef&*ue4&5VgvqQdS3NtN8mBdGp;1+e}l z*V$j&M||HD1PeBD1|)n`vfpiNsCN#;-|c0Xf-_8dUR#iA-y^pEyLW9MD15HyZjx&8 zYV_PO=Yd&B%OYu0_^g_B$nG*1^IgDoZhW$~rO1kWa|{XAkdw&s{q$H#GW2I0PviNA zv0$5rE0XSt4`uiD6EF^H(*~zs#a>ju2Lw!|vz^x3F2p;_upepehhieHH($2~Hg?Ix z{X((xexeW^AoThNmSDfi7z;_JpoIDS`#Shb(qbLfYT1wvEY)f}9aJZ;GnGu*6G}Y? zq5}#AiON%ss-=Pz?Mc4Gvx=fB+f+(fuAX7z6QcB zVZ=U{dQwv~!L!?xve{o%(*~PuP}pE?rkMzZhg&es{OmGK&~n!A4}X!=>xGj2B{*Q^ zU`Y$Z_em^2lU}BNwOfF#{DgrJ@|0+L8MD1+EduSf(ERY4)|fG zg^|Yi8J;$9L>4t4Hl6Kn(h zI$xnlhX)r(C#kfis7v)6$k+sP6aa;NOXzfF<}S1-Gbi)scHoE9AVw_hxAP-a>a2Zu7L+xzBIYVHQE2Sj;-@+A=$d`FK0Qdb z%W6eVS(Xpn?_(a$$NAJMIp>}=3@g>m4&9#C+7@)S$FhXssA323IEYH(_nPZ~M3gS> z6(sS8V1;`kJK&BksVfRe{IavMch4_pUw7j=&az;O7@N6a>$lMve}JL;ucW9jMxv4C z$J`+M1^;+^tM%LLS?X3y(7LuRkFO~WvDSH#+`^2exbl(M6Z;E$Oe28P_vdy`qlC=v zSv$WZJmbYR>u)@1?ARCo(v{DBjqh%KidONU8!#))~2`#MeY2am(~sj$U0E^F^nT-cW3bCue0T zDXC;7jP6PrjUxMZ>$l^y|3>YI(iGvcYIu}c1(?Gi~uIc-9) z{BO`%B za0c7cEHiA-%NhkH)R!mygl`C4A?Rtin@+fd@yh#x13~kD5q|rhZ6yus6*8Jo3`aUo zopzmd`$nhe7P5tUVFAD;@9T+eLdnF6(Zg4-(A?E1$o!^{vy7OG*1q4;olZ##pywtt z&F=XI>D|5^yC*kO-yQ>UoTSoS6uf3lj~v>DBslnbye-QP(|^-LZjXm;Z;u6jZJ>hA z)TUw4;d~Ysg__JkIQb*>k1vS^pErswP9L2I>`A5PQ$QwP6Kmf$ct;uI=#wU(d%r`9 zV@qurW<$5u9*!nN`b9~Wes&2nF!+Z8ahrnS`HOf?_49ULb$>s5`K^NFHk=hYg7z78n)8$`Q64qV+x1U=XO(o%4~etP2{L2^F^ha zy20{-5PLPmsjAFUcK&0>Z>gOvSNnGB)S=en<@d!BJXH#unI%LW@hcDmNN+E(?po8( z5VC=QTag*~he=c)9{k9bRD=71+JveU-TZ6{wh1a6^%@iZ_awUS`1&$3$9&2^*#<}} zElzkloHn`b#7i$egO7l-pqMFGU$NZ(4&anyZ z#46gRBL)oW4;*7rmac`nvAtnB4&sJHq*woC~)tOx>Q>SOlL`nlmj#WNM| z>>L}`>;&4F!$ES>s3~ri^B9Cgb*lPOd~MCp-Ks$fa89gRvl8LO<8`>QDJSz5+6vH)S8LKx`)MiqcZ_6wf9%eQJuBzK#yjz~<85 zp`M=S+dn-M<#TVo{MWN-y?!HY(B}26u7P|0zU~9nXL6tII?Uy(-aY}+nZ+BbPkw*r z7s+nF_WWwvEAgKY8S`xYw0a>uwribdzpkd?6L6i`>@b#E*H&+F@GBZUkGYdpXAjM# zutq*j1@qx^4VtR0=A=B*=fl`zcU)ax5+j7Haa&0^5lF5Bw6y-G3xiO(JGv#C7$;lC!n z9`S#wHu%sf-t2n4QfZx9S8b$sr83dq|HC6*?8V|aSf28^$>jG___7;XCLz1uA?`$} z(%$V+9Boi!N0H~BU=Qg-ilyRalFxBM(tzOrnv*{~ z)ud|@)!=G6G;oiaXt~2s%t4JL>;@-_s3t12qo98FH@9W+F`I(wC&o{%*Tjj@W5k|c zmzC8%=zpd|90!`ZBeN~v9cNtAWidxDrj=^f85%d6&1W{g=g?R0vQbo@NPbVSAa;|+ zaQNEvXDW|yJZGcL<{~K?1)H*$?{HBe!L3)paS>?(`;f*;rfz9-Ai|{xfa*ZpCTGP| zfY`QePWCDM8d}1OS>G0-DA0w*{P=gsFyK!Rie3=tmLL?dJR~HQ4ney3h)t61h;cFn zE+2}7^G5A4LBtaMVIVaEj-9qTd{Og}l19}+b(LO=+4XYCdyYDGgU+U#$gnVvc=4M% zhTii118a6rJQK^RcZkY-2(~ydW)cqg!}K0h_fr!1oVB7V|(!Bx5+(V?t@!cS;4WwLDddmo1HC2~7Cz@RCs1ny0v{xE-86j3W0YxWzfr1Ir0^kbj7S+Hz1GW7Dha#O=+jxN7 zH&Q^DMohZ<__mely@|T%Gmus1TLW+P24Jr82%&&b_=v_|7`cca zHUmJ(RFwh4VSljmPic9L;m6QrUw17~qagCU%-9k!>{zhOPu6~Pa22aXKeyS)kB>=D z_;vYFop(GO)R0+F36w4^qkyurZzoq$K^t{tUF_VMwS2#JX z-jTH?HvN{CTp_p2l|u0~NV`tj{1;DI$6xcGH^f}8M-smne7HHzG?R%u6m8PK$gZw* zQ@N*DR7kO})IO*@bsEQ z+-C&n&I3;iRAB%${AmKu_co zf!{>tj%yEpp5Tjk`d(Pr{~v2fK_2b~r#$)Df&t{yJH>NnOJ{)@C0FKSuur7(i^6%- zwq0{aBZr54AnMLG@~ow?m?dbH~!qi<6IN~ph7Yu!Hd+eEq+kGg@@c#i8`vPfQSo8SGgE6 zgyKW7%`oGz-w@X+mfap)`njmcu3I;@gmv~2=4r{Jrzz3}#>%FIjW#HQOBLOQx19Kn zcz5WsfIQ3BYD#o)Lo_60!MgFlcgh$CB-j{X{-^5C#;lq&E8qV9PA||)9l_U>JWFz}(zc4qqmQzCz8s{JT3mh^ZqFju1j|gSt zj;Z>goIBysxP9kK$jJ`}b{p_Q9!dv*S+o&}abRnFZZ1E~>oZphvZX>ja2D{o+FCn( z%761p7RQiJREvG2Nk)X!&Hw|)F&i_ar3wn)fYNP%qoPT?)v=E^Bv?ZM+HX?4Ppl{V zjoT3sz_|$mGrr>?0h{rDqPgWkhgm25^XCV7$GrWG3MuyZc$7eHHz|V~J@XUU@UrBf zri@&*SuCLNCkzJ%#!rOtmt=ZV5+8X`sKul`hv=CCdG^08T;y<(UqqQOsEwsHCmGqx zD;rb%XTa@lRpSM4JimxFhm8U;l56)^G>;ys&LW2ITysffoh;25+QWfifkD9|hCD=R zPr)|Fs&!nUYT^SOq-ao487%NtTL4ZS`tvTN?#82;yqvddM&``BpP@fBzvFN=o}bh-k1SV`Th)`R&0Y z289L$y()+>dRDn&pCUVy#4(D_J{n4btS_J$0_+%iHTl1p7h+(NXebH6xdI=61be;F`aN@ZK>cGtA3jlgw*8JR8)Z#N^-XA~yVj<6H z+P3xq$3~=h4?s#djage;+&>JPq*fnB`(;sP2FqKfOPdHqPy<9l4Gg$H%C+3jZ^?aB zKx|-8T5g@{n)8t89m~Le>w-wUomMJ*hpvR;GeZ4FccBtv3rW`;&YFbZJU@Q?pkqL{ z6*h6D5Xjlh;3E2ee$rkWKA%dduj`N-QxU5r5=2MUdzjCb<|tZ^SY*B=dP>_rq|9|m5(-IFpvC?F{=)w2^u46W|MsWI z4CTE8Pojbak)$~9Rel#dZKA>)NobOm$=v+B;qAR2+gp9su~Uai#IsuK@%a%T{FD04 zd>`2TaIQi!AmA-m<+C3>ZG9`F8-3aA5A#G)_=)ufQJR>Ro0yq}r4E)smPpqn}?R}yU+FE7lBVpe_9a|-Wo>c&feNQzVXa@ifpSrloi`V zzRh)I6V*dqWY$0dFzohge;$e@3-q8gX>Dzlv9)EYuQU9PTvJo?`K=W}b3GP+;s_K8 zjV~3198?Ob&is0-O~2@T_<(?fgj9(MdTaNn4Y@s8MOmyfKI0x0cK#!oEQHb{LyIfc zu!jNHUNutk)-OU(L=_%S2V26Yc&k$vmsEZ8#`+(Mx3U2dR8>_K4pF&PG9@bu-O|!B z4e`w(``v*sJ8}7VN`g1rg(&Edm?(ffv;!52NU@%hi3)>4)Zd4UtbF`{``>lScN5jB zZ#B|4AHpRn;2)y6;0hNB)Pg^^Z$0=Cpu?br(WFUMS^~7Rv;xy4&k6pnP@tZXi2HxHKDu~AqrM+F5^YUBE49|=?d|O@ z$2GUOD5I0cu>^Q8G5h@8{L~t$R1$oS_n&Qeo!V`k6%6n?KDCQ`iV3=8Umu>8PvF6D z_4rAfF(+pQxWoUEKOYGSnUTSOFm&jH8lwC(?`)<~<>m8Hm??|(Rtcs2c?A#D4x@E` z{s$ctl$duY!yL-Uw(WbogqVPp=ZwT0GLu*ukzX`D`Ho!HA>}6It4qHJ@Idy~-rS(tbaLzGUsni+BJJ02+`qAd5pnY0r#GPS3o1tjR#}3FMUr;u@FfcG{*scBeTlop2+k64l79E@olrlJ zf?UB}1iKp(X1I+xx5E#HsB`p}%c#O)0Nf_-H^;gNa(83IGX_PQ_$nv~xYsezcu0AA zg7?~WwC&XQmlUBNUz5@ZURO%j?nsb~2d6YeJyzrHQes&uFq=!nt&G!z78K%Ai4_F* zjLm$I5sQwGKOsQr6M}ye$DU3q{P0$hWrKsR+V)h4UH`|dE(8db4D3jX7*kZ0^WVK+ zpg?3$G{NA5(Wz zk?M`uxLz33(4H^k+34>j=eD?EPv!8)92WzBO1}2S4erT^vqqF-E1B*GPnj+~nIp0W zr@_&Y;tjvFkTA7Re|x+oqR)}|Ldoe7IzB#*7Ccj_RW&Lk+@LgH?U-BF@|YP6^Z`O6 zZ8l`k(Dn~5X8s|db`_W)*|Gv9LT1$e{OJn`@(%0O)< zOM&swhSsMUr1k*c%~h8Up~F)U!l1ovaabJ^5D*}1u6}F6d&H3oz>_18GMO{C0*U2^ z#LYb04cN7jM5B ze?UQE`+So-?MCtE(9?h8`obe)+gs(kHZQD(g_ET z@r3)0FXV#!*(ma-NY0<2dx;Z&zZAN;WVI4J__-3o&0`>dR1ixP5Hs9nP~maq6l4Qu zv@4FRlZSk|j$Xa~Ss$mg_T5jna784qJyPYzrQDQ z#`}mg9a)O7+v4uV`kuknbK=3 z5w)Rno0BI!i)|VdgsO$9s(31l(uWsr@Q4qzs#887T>Mt&l~DU~=9b2yh?+p!O3Vhd z5S2TyzfWk08yt4DdT?<0#R5vdZPlZqK0VSdoAQpNA`K24AljQ$Z@grXKYu@c-@eL#SUEJ&LV<`(@wNFwlo|yB2+!(lzxx}PR4agw|b~W zFZ<~=!sk-IPChbfTZ5wGanu$k9AFJmza$XT!0 zZf&DZ77R4B6`4Mi?|6J7zQ-=c)kZF`Lk+{S}@?>mfqo?BgP!#>xK zsCZB)^>M=6<=ccq$Y@qj$DD$Oc|7|r-3SM$j8uan@fdn{ell@dj@om29O5^8%TD4( zrB}IQd2+O47Hzd*8{E^8ehud6`-TdaY7ft}hhO5Aa;olbf#00=iK#R%BOD2xa1Ioc z%BrhjiBtqa#6hgN{20QR^GTPc0Xgw^9(FA>U~X}>=HQ&6%dBVqWq-_0b9fgRy}Dcz zuTE7Ju<&S&3BfE6aPLL5YFNJy6%D;3fAgP`m<`6mcVNMVOXJN(fgY$tH6(SOIDfx! z5*CO75Nl>6GLpIjd0CC8V^vh}ICwu?*&?SK-HeBox!&{#8X9XrWu1AzL~%1SAXYDI zWsaaF0qg;Jeen?Q%iVcTIGPuJwmHe-FLv|=pI6`#31?{C5ulWB508%W7K{m?1_GON zP`6-1kV_Mx1xD-2r10o$k@6#WOD{ncbWk_NRI>QnPr8SF5ER8r&1(=eeQUr``Yi6K zZAvD^Xs6DEF#S_#IGwHtEB=oW@#JP3{#0)2|^x4`{`a$iF+MnN~5(D;ZHTlTt z<3@0`91sSUzoxGgBdH)A*pEF9z8Q$XZr!#d{~S*x5zyM%`NS@#1v^ji4ET&V920&=2G&9+TmWp6^E$4cKyVQk_ICa7H~Y<9R272==k zm|K-==UTA94pZ1&TU#M#l^T4;-xu;GC#%TNAq)A?h{1O_BURk}`2i)e>pnEVkWpGl z-o`6JVLyW?fIP2b4|m=+8(07g1^HjfUT4>LS`lYGP^x5JF-t*1;v;&^y%wsQ@^?>! zQ*2n3Rs-5vK>ePEMJe$beAO};oSE@_Wv$qKyU)Yv0rX-FBzlWnDcaEr649!h%qgwu*G5fp=;G7CH1F_5= zr-_%BS+^W(x)TTh>LlN;-y^?WWuRQyL+6X&D|YI+&n_iiK7K$yappkYJH)8`d`TQ~ z@?!Lp2*fR73Z-gl#gqM?>G&@9zJW71y}-;wj7wu>@gfl#w4RJa(KAqn>9wt`t;gK? z3E*10vV`y0z8ucL!_m>v<1JzLc&n4~S*o2GH(JHwS4!CrZcHkD9;vp%8#??OOl%}7 zuY(H~idp-4NfPjk*;6KSYnJ|f;C60)FTVY1&paGVW#64=L`66IBt3%HF_S~%PWIEO z(Of{)(-1X0DJPr&hYR2L^8K9c_A3RoR>0ntK8<@T{^%Kd) zCb2;JBtUUK&g4{#APW-kk0W?S!?v`~nih|`phPH`s2M6Jr>(A8XZCi|@WsW&T{0dN zlB?X-qvwYt3%_;1qvd&gQx-iojlUGcP;X$tPaa2)jH3PQyDs2$K7oh!o?4ld6gUnE z-F>tm2fdF+HwEg#!#42<37Pu`1{C^bp@_8b!4Ag*p9STDG(fzx%EZsMQn~vw>U_{S z6HA5ODv#Gz!%{^>*MS~B6MJ2u2 zFFIp@R}m!K1I0*x6e;v(=$#tmObRG}{LMxnq34aSN0LNkc>t93c2e^sn^2ccY*LCV zZpWh(ilUc-wyR?Xg3y^y96-whlp8(#?j_&XhpxHpGgTWN$>U|nf~k-vO;c=oIo#KS zad(is0~6+g^Zx=Qae2{+*zwuZ(2+_g!yraBid)DU#JkfbJJ^X>$2xutup@ycSTuJ$ zAZDaL{7lKpxQ9@*BsX84Ue8_Dz`(#;y8p__R`%fFz*1A>_A5L@u(3zFpb8V>yR;3D z(deXLC-c0vGHpnE>)XZ4b2`Mi5YD_wo9Zq0yJ(n3LIExjjd~%NUMbf4@#d}ljUX~I zviKzQn*yNPs7tRt<(CWW)7#Ms&O|sy6QzY0B~N7%KMkKe&EzQ_X*$Y4gT+VC`KLAS zt5Lemw{PDnwP~fA%!lLT4D^Y3r5mN(Ur@5^J#i{9sR^L|?i&e}n2Dm$W<$Oa5@}p& zBhSt&1Y8~J1GU-k$#ioJ>U5)Ge+3{W8NUh!2{)AB{$E*HiNCU|n=5S$kX$&Xc&Mb` z=I+P|X6z_lL_l4J+FfWIUi}yz*ygk~$fJkz7^QGjQ4D%{)eQnZGL35gUX`4Stgp*0 zp}^##zxFV3R?ruD4VEW$Aok>FjJXUK)Zh=?c~^mn>9cts&?k$}^r&F)Zh4l7qk32w z8-=fly0v1EUKjKvj7yGD@H3eK{VHmbx{cFM1#BiIuBJZYWAh;pr-|X9ch@GflHl2U zM%cxLa=x5R80IXlBx&)OxQAd(9;A&=KtSg&J6kqZBr3?2+X6U^A$fRm&R9buJz1O*n$fP*8$7ie~z z!@r;=@}>Kx>dmlxu!^oidk;AxCHXyfRIZX~9sf?jiJJ3NMlg@YhJ=KK+rSAIYwt4y z$X4r5f*)ODdwS3IjwIVf{X837_@HQ+Yd{hb%#Sq*3u)3EWIKNuoP3GVQ}pp(6x4sI zn^X5ZM9b%<>&vf5N-I>g#_Wx=RV2=mJCHDvQT#OICq8w49Co9ULkR9!IY0K9NRnc& zRNI>u(jy}yt1F1vf7Wol^wijpb`|+4nI!K>dGU_@pWE~TLLyVTW$O>? zibQTtwMPEX5n?!6rRgya#@8b4OUh@XU^VA2v);s&*_vvZU8hyTPywE9@O`YRzc_dOYhQwh zAeLceFx0!}O4sJY{-tbQS@-7FG@)JA#PM(DI}dgPnF;#E`0ckhkC0Na(5b%S_5Vx| z?fF+-SkuH9P&#@xq0{)|+lj6CDQV#4*VkJ1*~TMPPEsI%fPet?R5i8%Wt3a482B7! zB(0iZmbwnt7_&2zHT?HD+%ss@$3mSZ@;sjU;!~aKg7xLBQji8U5_8B0uBgVF0xC1D;!=tTwi-K2&dma zuo}FUh><1R4&|TE936;eCtEQ35R~3uy++o{S^9W(VaokRr07Kv2R+GJ%LpcxF~1aK zrPwSZ(8jB0#n0~Z%zf4tdO%lvopv*S7R|Ig--F6ZkwvAhfI`Z7?4#79^~N_BqUif} z2Kd}BRl@&8Od7IVT#f$>DExwcr9iq#rCyh5t#nn*5TsByp|rJ964(65N#xX^I4E1F z4c55T4W!MqFXAOxq6B5wt=|!2Z=goo(~|@^`Lb+`?W=$n(mX>aGK*kY z8N98MkbO522Cg@x`s*_dD2m7f>anSHFge4R`sXOQ&F#xd0vLYdv1-Lnwc^S#a6dUB zh<^$QUD#b#uF&0T;A05I*q++p2q5iA&b;X1FuKZf1@4kaVOUbxU19u;U8jVWBHNq* z5(Oe>rD?e3;yk0cU|Jzq&QjpKI_`@l7npgS1sTiltgcF zfWqur%v5dbebnJ5Lm_+gr&K8x9~`iTk}#mqSCNwbo~QYXtl*Q%i<)QhZu!EqOd@B= z2x~M_=p+&hz}GsfcZp|{gdQm%ykCv61)aWw9u4;ny&65b{iKfsnut85e|Yl9VLfnDnwb?anPn-lb^ zB2t6m5ZDVwrwBIW(yy&{g>d0*4{sz%O$U1k*?uyAX7|)&xtDR)+(40UMpTEP6}|^R z*s}C6S0fOh$5g^Z;Qsp)_!$X?AL=_8VBwf?CtYk5hQ|$mbF9WZ*uWhC2h9|&@Yk21_3)s68j}#|l zKiCfXI>!eIw1G(C`!8*53 znMHd9W+5f-m7F=~27S3`IFRvGMS9yhdY+W$P)`u|XG}4*|I(VD8B46XBj`ER0wft) zPO|b1Vi#U*w{wVbfqo0(+m5lzkU@lHkCl^5OsF^hIfG8TWVR?h-HE6-nsNQZd=-XQ z=Yv=$)5{j}0T*+Y!H0@6PLfvfMmonnVc)l2kZqvCFq`E)v5#B`-q8KW5YfV6>FtYu z`hRg;wE6l%CK@M0fZot_gi=bW(A}GC`KvPWQJPWpf3VV1NhgSVO!f8UWz{aI`@bBf z$Tzs0qxGd8appX%>d#f!6jC?Qorz;!Zb?h%Utu10Ps_`g=EBKfV8(pz)Uzf^--v&0W%qdqu2Fk{_E$5+F=~iDGjvAe zte8d*WzX$9ICL8jF*uk3$oxh%Gm@`%VSLuwfo?=r-Pem-?Xb_tz z4-Kn5sqB`2U+9=V{jrX=lfaD~lY!r7#5j`w3E^hJHTh0-L{dgP=4I1OndhNT9f$!O{d-nsm>g|A=Bya4%A!QQAp2yvN^Y*PT%cH*!5)6Zm5<3xt-h1@O ziHnJIY8q{a!EG818h-JEC&09t;9H#n&kV6#^5E##nsi(3;B0z7Y*4;T5t;Pb z%l7wfYW&|=6O8>z^?@|n1c~)f<<$tkjfYR;>0Hg*!|`=9JXK5?jXwa?Ycf25*$FAy z6j_{{CGCMVJvpbq2n^HB+^H;?ZKWBTE+(0!rtpl^oC&wvMeeTq?#mi*h4uswYa>Vq5aI=1-Hm}HfV@6bEgyf?*{fZfMERxh!EP61xoS^dG6s2#_ojbuRpB*_|Q z==H}=&3Vr>x-m=6!eU7PjQ*xlySP`ufryOyS=81R{m0uYvb3LWPC|}D{_sSPKb7in z*6Piaast2hCQR=Gvx*)3EOO^%Y(o zoeG8nQdoi2Xhj#|?~~dL?jD77k-W`;*r_WY<|<*XuCI~ZKK8z+@&8tMKq~Bn_aLTFjTwo)< z-AZ+Xe=VLnVutHeH_pJBw$cHF6mmlM~(vm$=@0hLU}U5^QAI3f>K9?4-$O4xOWm2jw_)BXXS>=w6$hBdjIFK)*D1dA62 z*@17ulTPIqV4R(TqZr1m6?`JP z8|i7;0GNAiN;hqF7b~OmUgY&@{MEnaf%`hs05Wgt@RtE{U$vN!kRcH6Abmo@U1O=Q zt*de2*hPFuRWL9zD;*62M1+a+_=zGYgiX7R@x$_J?Zf5hRU5__YyMQ;#UqhEVUwn< z3A^r$2&Y?icXvBBj(5n=q~>Z%g=!i5!omF77Gu$}Cxb_(+tr-T|4yug24GkAgg(ob zrWu~ija+7&mht?Da9I*R-=k@~Rk-eQYRd0buWZyzp>Blk*E2NJ`$nFBO5x>QjroSW z4LLn2M6*G61vhvm3YlwAf_&4x%Cd|^f%Y)-wy$&ITpe&_2<$`j<2Mg!vs+iZ3rmoV zb?)N*`KPDDLwZt2GeKXz#vI#uDHo5V-MYDZ8Zy6}b9l$1~$^P(Z8fFlcaj>Y>y72go6}QF@L>^a?Hv#Ld2PNVq!H zuNdU649HL%1%mUwq#2_(et0|<7`iKW{}A1mK?UnRQ&a_lq+M9D_qd0DMyFywtd8{3 zOo#73Xpp(ekKI7@hO9{HLZ+18dd^xtVMiRD(3PF65&ODxT*eIC-L@53$0t4s6k1P5 zbyD6@^#lZkIgGFcD~1wMr*#@KOf*F|WDc@bWDRm|fGa2tB!Bf4hsYy=?4<_GtfNI1 z<_gORmS-J-Ck((7dLEaoPpFUMBj@xi4lo^GEfJn1U1SFvqST!5w|-i=ObdS4C(!aX z`E40}i#|4LuxgV+NaXaAt`~MZ zIx)dCHa^b!S(r#mjkw!&wDbS4c2-esbzQg)?hxD|xRg@7#VxoMmtw`GxVuAeE$;5_ z4yCxe7Wd+=J^B9oGsd|%xyeYf_e!>8$(-+e-YDE2)Nh{vG!~Nf1piX|pBZ8L(jQaI zxFG>^DG^Yq1OV598-Nxmbys3R{~l2BE+7D zj>NX;$Du-gZEYM!4jNc-Qnt?MH!3@)O$Z=ri&nDUcyqw<@dp6SLTWbFN#@;wed}z( z$bMYl3hSSti7}k~bn@1Es3GagUcJaCDFxiv5(3CK&83L3@1dr+{v3q_@YA9%2{wi^ z=_b7c(KupqDQ3NmIPh{T-=b%MX`nV^DJDMU(afUuc0LDab@Q!>*aaO|n7H_tS6^QW zcb+U9Qt*9k*f%&809b_gexX{g+IUUQjmtB^W=*chyV1sLcQLk^J2~lxjkn(zl0pU# z;peJPtM<1B7gd7k2DQ&x8uz2SV;r1HEINAvqE%lr4hsu2GHVRMtDtH92*eUhz1*)T=l=T$ArmB=B>{N&E{W z(Qfr*;_m&YJgF=qZzX~wGVi-r-{$ojKfGg`HbrOIKX<_(7A0p975Sq+Z8xgIwl(8v z9b3D5Nl*M#4T*>6vYCSBn*HP2)s}PSNxv1dG=zBhT$R8kYNqxU?oc6buFtOb+kLE$ zkFLVNz%UKtnzVw#8%}qcs2y#K5jnfa4m27EF@cf3-0$@ZX5-I=Z|$9e3*$6|>*Fy* zm_SO$8|SxBXIv4npeTdAl#uy&@wIWeX?z@OV)q; z1}Z94FvsGwMEy~LBlLOB$DKaYNx9p@(rdp}PObr^SC)sOf&T5(I&(q)(u86C|k-09Ekmil~Awji3r5KxQUj7H*MSu0E^n{wR42 z&IMZxof_F%0!NY)CsFqbCEQeXr}!e9jI&9A!^%-Y3v6Qg)&5AomyzCelu8zWx7Ya& z8_yhyZE{o!8T5KfZp;&>PA~r+ASr^Pc=iF;m1KJ6nm@Dpi z2rG3Oaum2`Bi8A4I5I5Y3m!KT3rhZmXF4NFI?U~05#U!5CWYM~NVHmwpkNS@6R{fw z2V)z;V2oTnM;&y)O3R^cAU8zx-ogNa;K2aYRm^77=;fwFSrf`UQt5*Bk8Fn(NJCTq z{)Q|KQs$ezq33#zN1x`_Qz%SriAXU>i9pKl;zco#kLlAyNl(~8IKW8?4eQKS9Nljq z<)=v;Mgb}I_i_|JZ=uL^li{26YPep;7d=m^GQ7L)vzY?XJ!)*y&-hCj0JYZY(q!v$ z`Ps`6hMZ56TFpcKU}L|T^UwH16Y`mND7=0Myum&G+QIAOv^e#y1JE%^G@G1!=5gTE zVF)QYV~)?_HFFWEOns>9U2e7Z4Qchz-N)=^dInperjv){oiY>)JQ?J{E{Le*GkpfNUPRRb*pn{Z`~Z)4x|WQ4m{n z#<=+WRLv;(*HUd7OJS3Yg4{@zNMPb0Yl;@-)}WzL7hc@Y$eNwC1W&^;myoDRGA#^| zFW`AJ10bOOTI#iwUqyu*!6;e+;K+UddfdMWW08t<1LHg$2oR!W>1Xe9ISu2GpE@8C zm%c;GODgE1*Zu@uvmScVOXyUU4{77pPZyIFpXQwLJyx8#?YL+EQq=uxs(8}g{ye3S z9*0W2H=bm>$qJ3>f<1N8lUzbV>T?<~3+6+PP0?vSOdtytJl$-TZ?@eS?-4ZhiDqVG ztbr?Rxf0Wy6U6ozm{Lki-=6P2LMa-FVnd=jRC{w*jNa%uVZ0zx9=s8cV-kk4AY&(e zeSO^YEagZ|WepAbN)UVxa37a@x?ZMa{hD_l=%Rz%t}d8|0l`ETPm#2%%0gKBnkH(} zjhPWYlm562dJYI+jBcb|AOuG;MYyGWLh@!o7`rcJD=)3ILWEQr4hR*r%*|qbCE%G9 zjAq0)HEV&flJ*yvf_2ZAZo=R;+27x<&r9D)O$Hhra*38>52+GMX~KUL18lqr0>Cr0 zFvUgD+BDbGfz%`U%mzV_Cq7U14{o@PqPK8x$|GTvfKxjJVn%*sl^AY_h4m zYxu%GW-I)W1eCpKiYS34*vuuB`#hbsw?^4+eJ)3yC3y%`*6FgU@chO2PV&zoj1BGB zmyUc{==eWqP!fcV6=QRp93A%#2L}f)h{3vLHj6B+n;38iYZP2$l(ss9I`O}s6kWNj zm$>wirj-xPY{n30u+YKL(F!)`c&Wyy_EE4C;ZtzqTdmEZGb~F9MQKfp2zlykiZljc zlY$eU*b()0f81=P5C?IS3Sk~zeVyv_6_P@liKmfL{DmiejF>!ra6}{y$(lo_z9U&4 z6xvVE7TSH@fCUq+>&j#0c|ArM7r>w=CjU;ym{g`JxLB(B-W}tC$nFrrl- zEILP3g`DR*UepgMupI85)a}kk+;VKwE!j$eAz~$i)czZ`v=A*MhLMHEzx$hNhMa{3 zTv>R44%;x`azALE1Cg{L*H8`P@YEFKk8?;|HLRnpfKbR7C5X_2-c?#c1a`OF?%1~R zO{>FNLw*r|{E{ks;?NoW=8buAD7rN0qSuP#D2BEe2qZ3$eX+`mVof*uU%rXeANf6x zHAs4@+YEz=pP`0C{V!AwR$_<)gMPRs1yA&~u`+pr?MtBpmOX6)0X$Io)<*ajTEF3U zg(#|DIagg_Q-I?CMLHsjiOCkScqZhFKy4lf3-hvY*p;em;iVxEXs-U3p;cY75yyu6 zw|^99Y>NPqAEDb6(}VDU9TN$FI9$9@=|J+6!as3RT}3`qh@{5PGE`i#Cw6JGag+bj4$Ic(7BB+!)x9uPdK1cSU+(gp(M zi>+DF$$2t-b}P700M+|IcNuz!pN2ehz(qv?%a*|g7)rieL=(n z;;`3!R}EL&g%y$D6l^*mApW`EDOlbO&p79V=)h)Cy0!}K7a+z00hSr^V{RPU5+dlt zappsBftBJi(%C33#2$+e0va{!JvvA$Iv$*^BjQ7MMqUQhhY7ytbn$B`kVW)=$(A~y z8AofqaHQzdYw_{#uk0Y{a414AI?Jy}VjYzS!bdiZihu)wtJLVNjCkjJLAnsap@ErF z&ZmD{B9=D!k-mZtU?(hY$PaThsQ&CEc^<`77+A46$F2b%&sW|Fa!irXId8onb=)-A zTSOFXbifAp(u?l-k{J9l*HdQRI$T$5d z5EJVT2qOZYlga3*+($>9WZyQxp;71hGs$6KEm=ja1RSGpQkq6fP%upL#PFM zYJX~1$#p+OH7k$stO-6mdcGYym3oOtxVbM-oKv1e+>?V}7(YW?^<><5=G*3sVp-J^ zHw+!VkWC=xZ)CU3SUBG)fdu~%VwKth$xT}_HO#@lp9W{HFH8~n9-imbX08-lbzn}{ zCC!N_WnW|E?3GLPmzd4Fp|+a(nzp|;%X!Yl z-h5PsPjqjpq|$1Z3+jX?FpTq53;6Q$izl38Y*6gn|Lf!50nhrk)w|~E-P$EV|Nhyt zytjn=?tjH!uK`<1~{84IpChfI-Y*)aHCjJ$$EGt_XX3Kk1N zx?tugJ157jS$)E+q2%jWuyP6;Y}{F}*cwdJ+8G0al(vhD3%A1a7sT;p* z8oKO)C1M)H$g+xoff%%8!fQ%FK{5XJ)>X%yGc_?X5?<%x>S{K)TQ{?N6Lb9Hn~E5J z0aN-nZng9pcK7+&vlQ6g*2WI4okS}Fl`mMKxp;g3fR3C|zMn2+(|s^0{ACemO7cbL zPw#eyhNKXb@<1w0Iv?kbor^t&=plf>(yu_v^8(XlK2c`}2T>pl2m*LD7cK17Za}7f zHM`LDFDShc&~I@&-H51|>2UFpICR$R;_v&rkzE4IcXFN|S*^X)u7h8(gBBNtUUM1B z-YH79M+Z5*tmiUw`AQ2$jzVS0r%x0?PU}P*PK+}O9`yyYk%4NcU&m^)b;QDz*esedj;(&Nf+3b(b1NHM(yU*qUHw?j63hP^?cs9BrJAKJFx!mJrzPp>B~9J=!%Mpg+&4w96Q3mLoWg&uWo1~r+-~1 z)G0oNf1^xgQ9u3GV*6WsJU{3-QAub9lTv8h5Or-qnHPR?^TRb3K|Yx|Mv1$CuM}#K zw9pqFY8g>!lX&-b`&WQWFl_Y z+{8w_;*MaU^J=1A{BjuOJ(Ol+hn|CD;Syr3WJw$b6bKS)?qA#YBW2PpXluStweNM2rvKEVv{jJk+_ z(HIY-9Dq0~NRtE~nn?!_giSrAkGfEgdiT56JbKZ7rA7q?5y{0|?0HF7fqiP$X>wp~ zb3CW24tAmF4EUt|H}n#DVak)PIZUyp4igX~^0y>Sro;DA_NFjuqQe+oa1ROB=n>Hm* zSJshu1RrJ3@$cuD7xqb9Lq1A>W6l_ApB}I^Ro4f?(X0H=>U!FMq*Y);$>kD(yJQz}EQ3k?AX81f z2!aP}d-+A*B#?m}u5vybJ2Uuh!`@gl^(D%oV7e%6PZo$s|q62ZgXq!Onv z$0oiBzoFg{Si7JKU{T12e-Y?cyI-9gq5uoz#4S@Q(FrTdOAaY!KK{Tkyj}cemnTX@ zaX%D7a0>?m64^0A5YmKU#1gn%TZ57hh4~p6O6<4$5imY=UIsRMKRMb!DSE4NpSs`! zco64gzqLD;-M`*MDo&<}5H@dfeIU^Wqx4S}ErI(R8iZW)+%=aJHfS{8_VL;fu53N3GgiDt@om z_4l`zxAp1dYL3Q2IaIWk4JE;Xroll;n~?;%-|!s0(n#@E;J~*^6gnoz z>xrMnc8Y&6G59r`7GhjAs1_rK%gds{`_YkN_F;D$g2P{1bO74C$t+S`B-*rgjcMQ= zxyj6-IWHhIPTjzTnF0=;4tT3!aQE(3JaC$dKhIKvg;Ja9wB*Oe#^xy9b?%%YFnMSg z6MHxaBEnPvg>+#*UpOu@tAg?w5<@-z+vHkuaP)bOLS> zSOb+=Sn|7_&!eKE-m-?*bY4dgAj2yrBsX>%^mPBjn1+#tZ$>&6h!RbozrhaFhi9Wc zD@7K;VLPdH#)qtX(?ACgOc96zJBQCAwtwT2fggFV2(4vs9)cbw2p|%KD3~Ba@)bew z^^0QIuoR^aeC-w)xsi!vJeSq95meYM9Yds2;wP!hMh4gCMJ^AO@wYEFI_ye*Btp-x z^Z9kT{Y!F|yXISm>xB4>g<3^f*$e@zu9guT4Ivmhk_qCA{l%iLG8Wg?CLX8PD|mvc zfGG@9WtX6ZGqx0#EUWDPAVZn)`C7P*1YJS zIzKTn1(+3COGB&G##66&`pjs(`KId+rgAi`U<-`!B{%W8Y^%~b+P;0ZG28YC1@adj z2l!#EN-58jc(BDj-*wy-Ls5TS7zUVtt3D)35jYhXcqxwlQ}?g@)b??6U+zf8#X5}y z0C9_rQpYIX()PAF@V8%!Ijk2e-<%F7H_UrWO|Eu+o2AG9Z#1UJ$B;qJLP92f&y_<% zZH_8h%DF%D8k@Mi)CBE7xrP_LNbq0d7U$3bFtlgAv&)XJ8LvuKN(g_L!v6`?7RZcl z{p64B?mX)a-zgvb^z#P5E-n`#Dn3hv^s%(I7KmvN-f&hJxyVuGfdV{S*;Ke_76Q%! zhd0)%!ct8RL45R7@P0rL_?i+vk1_u{B(SdyT^K7vg|Tfb?B>^-R5xgtt3>!sa=h#| z>)DpvAHn_V3)^Nc`8HoGqP(z4u&Q&UVWaG~#-lcI_;jL)vSe==Zc?5frNut#NtEgm zt2%W1V09I644tgvEhoJo3^+3_(?orj3;}g}c~b4jc+} zKSfg|ov%}* zvS?LR2xlAl=mctPXE|O&O;QCOed%Nr31U69a56K@AWGy?1p26F{jr+RF3{LZLJ@s{ zrrP-Kt--z;m9QEuaVcmRUi!}kkCdFg%@Nr)Vf*qhb~_@l{V==ZqUh3tbX1hFB8}!7 zU+^*(yq}WTCHh!JGY$+rOwqb{%|%pm8C#$kJW-!$jES^`B^0At!4Q4szj^T~L(uD9 z2s}sdQDt3Sqw)Qg=1T|46zos!N9lN$+I zq#U0|o&}zda`Q?NptF{I4M+?X*Ax~N7nKu+G{V$3WpQSC+R;E`bQ&&WT1Rq zT9EWTzRJs*eSEotzI@ZNlMJD&&h)15&(?V=;WZ=||$JpI(@4-)5gfJ&Ea8 zVxuaLE50YhzY^kC5vbBeko9-)iVeo--=nYx;{i|}qmaqH-H#`KVSU z5`z`cR?5Z2dJ(}Ch;fYe(f08rA(8`Zx2Q4=0A=LE5hp%4>hoWF@ZbnLmhshu_pXhP z$4z;1QH(1tw4X6axGaboslX%C9mu}K!E?L@(0|PW zu|11y@@BVxk0F8^L6@BFRl~)w56+du(80D8mx9jo-Q)DJQY|HrcXwCCF3AgIP^fPt zjeLvngQd;_EfA=GM1=0B-Xp19YNwjTUl^t%40IbxDR3%VlxzDB5A9YIm&$lyQ^p=z zNt=I9T#XC2J92dWn)vEHnl$o+_p@Kz)goTXcJigPDm5vC_d=BnzoyY)AdfsB?j^8bklUGv@N~49jT6c z?jN*bAcgm0D2^yHfSNZ>==!XlH_s=!R20trugC!GnMHqv1O^e32xkyB4ka-xH}}GD z@1O_r;VJPFF1?+n&x%iG9yNJjN~}8z?I!_cY~nbrlLZfqSxiDF^5%5Uug|x` zG+43VkHntHdEcS;z&!?)@hYa+G0o=6zmkaJsS%bFAmm;JV`cUuQmhgB2O@mD1tZqd zlS5{|qzupqcHS$&Yy_ra7T-QV;`J7pB+c|?=5`zvyc}!a{cUI4_T1GhB{|eCOw(z@ zq7vnv=vCly&QMse*9n8+4qvjc^7F{QC}K`ej8!{B1a#J#E&DF~U_kDzInNml(}wEI zyyU9Pkf@pnsQ(MBk_mXSdV95Ih+22v3KP%SJ3T!D0CJ`97pk7Avv% z3@(TxRfRH1xqZa`zl(6(kG67PAj|9%LR5>vL}JHNo!?-AeOy5~GN>THk#s|WQ38=<_^r&d9d4uQYvQGXFP4r7y4o{3 zT&@N&uHx|(gbO6m&NvN2lb{IrS5z7u*RuHDM?1DL>1Sv+R73nuMTQ0xz3F}0UG$yL zw-Sd2fSsbKl7y_B;6Xb=Gl~fB6#mG@Y*7H-Q0y(Y2~NAk4UUkLjdD_UhTcfdYUTJE zbDdZcZf53jPTDWjo(KQU7|vMw7-4foaQo9ArXxx-cIc4TNZ<3ulGdpjO}a2Jrlt?z zinCDjH$P#1E?te|8i5{m!FA*VIAg7QY$tT=PlW{s6nxJP!>b#l(3lgms^vE}KSA;m zP9)|}R2@dp0H4?Husf(BpDmD9U|zymC1ZTz017P7m=DStshd+-X?~ z;0b~#8k%BmfQ^Aw20fTM(@&Di6zMZc($BrZ;2nt@FD`0vZho@9*Xa#5TjQ$v&_bC- z51>Q_8{#i%D~Y9Np2ZDWkWQVc@WH?adAw!xFrmCKIrtKnc!raB@PY}HK=t51n=81O z)~`^lbFu2OsM_PgT0-T_5d4KaPwF|`y^6yhqQFVxcVv{{%z7-coV}+wOR{Abu!(^6 zXbJ3N3E~+5$rfT1y(4g<9=7M>XGH zpGw}q@cG5GNb$NSgVqU0gw8lS$uE^#b0chBLp}?8a-GAl6x5y4|E zlBC4oSxxvyJ^tsj_HI7NC{7^c*>Xws6o(wl82l5{8uiYP5cso3=MIOX)@9qP-f^G# zA_D)DC(}k>hx0MVEPaam2;siZ`;-4e+aZC+2<3?LdowErr*Fl2I5CoTOt<+n zCErsYwkYM`h>mkM1C+=9!&GrwotDIm$uF1P)IgWXa{(PCV?Ie@fR{pO$S8|D$1{e7 zwJB98nb9;nvgw4E3MZjhL&=IK=|zfwA=6_L8E;oK(z`)?v~A=n~FCd3}jn3&L ziSIgr3WoFV5Um-~8R1Y+qK6w>)hlsM8(^`;p=H;No^kLZyZNO&3f06l-6_V#wi-E+ z9y%Mbz)9?fX**>{>X?RCLHI`^{Brt=Zp8hI`ICzPzt1QK#orB7zLfrC4RoO8a*QTU zGo`%j#%0EHwYYk@!vUL_X>0mJCO8pis^MIoGXWaMmG@7QK-bSapzAubUTR8O4{~h@JI9SyqEDrbfN;()M9gM6V;-yP zSQ8^YDMRcgnXeQ{354F+BYj8}`1Up;v?=6MYQ5!mNhA&WR+#bdGnLw$4`th4tQW&0 zAB2jZ!zx8?l^dT-%tdJ5z|4?m1%`&YYP#=_zRR^G73e^9Q1GUzDD9G93PK?Yg{^QQ zspy_L5ar4l7MxC|gxB+or#fkV<&hF7{l}Wr!h~5c0k)I+2ZKmq+Qw!QEH)kNxiT(E z8G55zV-!SBQ^(zUi(>cF^BPmCtu;1enY^WGj<*PvrX_&xGp6gJuBPf-8k z4h&ZK6T(Mtux0s^k*l7*rw)KPA)u}Z>*LJfq=?BM|A~IC8`r&u-a`ilg!{8gw+ncP z7?F~dA#_o)>4Zw{8E2p(E3g`NIb>JP2TeVR+#ZJ5rCjn^FkVf6xNI8;BAa7?$)~VQ zAG!3=4ZiqgB=`i`xx|3_fN(75t-=69Br3EN1e`_H`DLMO(ThXg$kWs&2nMqM??;_= zxse^GZ@_R?q#uZbRoy`XlP3?L4vNx;ibT*T@B#AX%mkDF4JJPT&hHIfBA_<7QTcWi z64&#-6>ZSdq8&KQV%1#LD1;e(BF|s(GQ~J8Tb?l=`kYFsk-iYA-_S7BGJQR-E|jCh zSAosV38x&ZWT7^m!9uK^cu^#tBAl}Abl3Gme(Jjwiad{MCCTYn=)Y^edP^aLseG!Q zjYIvg2b!RZ@6>bh6by$S{jfMHKMh_EhuVez8GG5=qVVuSg+S%>NtbUfR*%_x`l!5= z`#d0%Y^wEGB&_bV8WW8sVhH_yGDRTV3R5t!C`i@&F+D#W`sb^VvZAyxdkt-gN3BZVHc{MWvj;Q@5r!T&jTn!vlbPGV*KX3 zUW;YZfVp> zoBSZ=bGCreuV_A)eu!INUnlXp zi`17&E0mOy( z)!9!&!^(>hh2iw$jTi9$i7TK&IN~zfXJOk=#Lc+&OrX59g}8VqdbRSK_}|h42(bh# zR%!rpH`V_lGb*KB z^9ASJV8W-|iyHC;?@!hY(-$XI-UJ3=w+qdOm+)4PZmy|w8V~zke*=YF;1_CDtpj3g zF65TD1=GWTcGb7nZy)HQh@@F?gn&YmyIv2y7`V;zn_OpIiMaZ2c!~}RAwYR{3zNN5 z(N_J>BNocPHD*Jt!Z6>g8|7_q$IQ~&F@3*~34uXkL!(+aEimybzkoTzDwwN3RW4Pg z9>)t!CF0OnB@`8s6M9pb60Tnr57R{EE+egVCKHDU4u_}2sR^0obQwPOX=$T~;O!ly zb!uW-{SyPS*5f+`!dITBbP`O;%xetn@H@VJYaRN;0Co(^!+%TO^P}`)v8Fp|1xoxP zF`144>1IvMG!pWpkpD_IgO!d`;cPRzJ%}J>z~}lS;By+zZ$@B66Xeyjv42OTWEodu zE#?p8g9U&*uk$ydg?ix(6gBFNd9v5|#972W(aCvlNE%*0t+xssg!~gKK{zW7`p7k# z=kVZsBCfInD2Z95&fhB^RyRzjCr) z=T(&y8G!p=KV><}lE6ph5<5I0^&jcx*#Vf|UH+V(Jo=#ZhgFll*#3QX$gp-H&M|;H z7OcxXFSh&^yP2%|xIo^}Y~4s*$#XM-bEbsq4+4b5S3v6jN0^~4*80e38v{VG-_l|4OFP0t z8U<69I&Fs+%idJSfgLpgg!i|YDRg%($3yq3zTSIYY@=9v|eBI1tBHe-}Ce`O2jjKAa1O# zc2Wy!Sj0)jWB<4j9_)7T^oVi$VAx60$f{67-e;s2LL3Nj!l@X1V?OaP8wU?@f<|96 znL>gVQKc&fhoanal$KPBH_fB5fAd|P`4}Cp2(>hB%1z0Uf9P5hE_>K9=jCS~v|VS6 zjUk|~jERa7n%>@ypZ&SLJ^LvrsHporKt)N(uB?OKfX}VkS_QzxgzI~~T<4b*>+GCF zC+%~1^Y(J__wC08x%TNH#UiAY=K&@`i&)+ll_CHEH#;0FDfN*v{YWIR71yvpQu+c( z9zgRE#I++UINh~L<;=Fy@i5o%vcCc^?KY7AVT^bGqMKh&$m!rkCScD*X!GO6qH2Q6 zPuZaB>V*4GBX6=CgTdudcVBfFfK99P^TdIr>Qi+-iYKF~GR7}sl^IFnd%VVJLTVdA zF~74pXBXaOA72-#Wnh#m>N*cf0)}A^Sk;ue}9?8@|!$++&X-4;_qnb?h)*<9D8}fxUlVRG}{Qx zR<|v21=_2sJ<|t3@6CFB!OvW&U17OMh?M}jZHHX?* zA+T`9D0j9xAJ59R>z{@WNX*G=FD%DdI@;_J#h(ROc_K$1@y?ZP23ke+lPUe>UeI{Y z7;%#H|JhJMG?+c7UvP=Kt6;YIVr~rLFjOaUEe;sI&sM ztv#GJ>z6jkw4Sdkf+7ucIOaP~&PZFuI^6smAD#{gqhy;;(&0n@eZUof!E`=N+!+#6 zX^Bwd|0WJc!$N1}|MkoOPSzi3pQz6wa64h8pU&jBMDjhOT-{Eph=nthf>s~`L8ssr zHyJsqw}YBU6`st!b*SR|$^fXIMVl;fnEI3aY zl#SYt%RSIP={NONd@*qB3PW_|6exkEshcPj$mmM(@q1g-RRup~;<%qTUJwH2BE)2; z#?nrmw0%GAcAt38BZA9%EQ*El?G{v5J6Jf{Y?h zq^Vh*No@jz7u#g;L>Uc*4lNW-@+TL!C>{Y$3aptHe^lT7j9Ute$FU|#5@B(#=13e$ z@Bk`*a&5r}Ys`4Mf)e?;yGAFAjj!q4d!#JwTnT_Z2a9GEr0g?{p(W=XDg|dM%ptlu;6#_dV zLgYLuHZHZ-;7Keh)foc~6b&2ZGBQu%2yEkOEgied)E21T7D>v@@w-x2LWiOwc6WP{ z0~83(PEUK@qzG+>;E1X=wNUgwM6uefHNTa!u+hKiotf$|m735SMiu3YsGyB7=GKp1 z9ks2aMMipk(z)GXGghvZHcU4MDNM0ei$Knw0b)NsU<6mn9Y9&IY2+W2~AL_3sdU1xzzt?5)yWtJTWC?Hn+`D-KZ?L0LF?}IRh+1nM zfTGBmUc)q)aE~0Ipm!pmGAg|1erH&}dehxzX zw!bS_z|j|emZa@04?AhfV@1o)vo!hz%KZC~n14w8{PKcqrr8wiALn|wlSP`jgPYw1@QHh+4B2e}8n>I{9i=Z;A+bV-xB`?G&Wsa&tI!tZS1-)Id} z)qw0*BcaFU2rxsB;~u5iQX#JP*}ey@`o^N*jTzc2&_@IizZn(S6&-k-%FNe{`VjSs z;ZFh!b~T4Yb!gMZZ*b4^)h-n%6!+bxSxtR+i{8@uv4sB8vU1gkzwhfx>DOQ^qq_J| zpa0Ob`@1?eIyU|0@7)bKH~^Xnyl>_aNt9utm_IGt2-2ECK%-GO^Ltu?(;Ps}-*!nj z^C*na5xosVsmxC#R-QicprY-!{!+c91!SkFPSvosju7&n#zmm+&`hqnUoew7(`~^` zwjS3v;Z>c;5N{JIRb-Wncum;SzNVkhMfXpXU$QIu?H%v4@YrpUUBNWxMI0WTa^2yK z*n_rtNb^$Llz#e+46I7hY6_rlQ1LEZ!ZzN~Cy-2E6}G>ej_dWO{*7ZBFF((V6b~Q8 zEjiFbx60#=NMg(_ffZa>n5!8yH+#s_r)2|cQZ4ZmRrK53XL5KmYK0MW0?)>yn4cV_ zha|;N$!o^Hdgr-z%C*^UM!-1O&SbKY&i9+U0aQQrbL?6FxZ3d5lfV1esO3Sfl{HF& z7Xp6pds3hJ5y%)Ezeo&IScBDqHNrvNXrE*sUih(~5VT`J-{HHsOSa3&N?3lV+)0#O zlEYiQ#E4F-=cl?V7+Q36MOX>S4#2187L1ksbqef>g{>J}R;SShTZQjAtH2li%L<@Z zzc2h0d|0}VbE+x_7cW?&0W>{}nR?c@gwCHj1~ylkd!5TOPC(@|)O-%FtuV@W8o*rV z*0bR_E&9eENsuv!IxK|iPa?_9_PV8!^s~15cai-&e851emZ$*S#&hd;9R_%|`Fdp^ zF(dG5S@zsNG3ze{D?@!$e*}vY(rv7xvC)*+P0V4l5;xrO7pNVd| zQY5cJ5G@$lDl8e#8hM5Ur$W_A*wNYE%IOyl5J*@?0m|33K?al|3~=V6h9E;IUWnpZ z*~_c7TK|SPOrgf-+A3}ULlnL|ebsYZWLZhCfB|o(l4An}KP%MoQ8Ev4cBRBGyU(09 z1WAkP&z}lP;>F^AKQ1gjhtWW$+JXATu>c2(+n0yGNR%%&t&PNpvPtiI>8vr67}-)G-zxytl}eMBm4Mow)Ldhs%){Pc2n zy!+YX`H#i>PSH1*sM74}^wE-K<YOJ&;nyYn%OM+ zqk;+&=*y0l&+9hP`MY598*Q7wACOqn_CmX^2y``8ufFW9wEKeq7*Aiblg<=X>1C$( zIb*Q}C!}v4rx7!sL7w7A*6#IV5VE!8u7oA3v;WuSpuwwST}}@~|9eJJc=&p#Rn7eT z3F=1o@@6aKKMx5V5xo2C5F5$`zH6A+GeI~bPJptWZbOdm^D&=DF0L;hFpV!?#|Zqt zZADE!(&h%&>(Eqz%uSTpNuf#x@1ZA7gm~{5lZyH>v$D$2p9@iA^gS6HBU!$pe_nW@imp1HXl?!>hWL8hzRir2|BWc?{|;5@YMft zkjG&l*)tpb{$g+3{1B_9RZ(zfq zm|1BsM-y24QF_~UxAroI8rM>so#&DrIi`x7ui-L90t1#;VF~rLV6oP)+i0;fpr~*@ zA?|#f+%JPyPE-`rQ1zY%dEz~niqc~A{4TrVKWu9i_|0ZD6OK$o2EJ3(4m)m+Q5d&{ zHYngWgLA99^yGjvvtDkp?g=Z0e78ZRtIHC#d|KJT?}zsF3&adds9xc|R!0<*iZBJj z#so&o4?oScF6l64g{D3F#YUCBu$hqx@gl`V{{McA{afL`*0?~! zMicqR`Q%BpNSm1%ONO6{{8r>y)R6C+Ex~%A?-=#)abRskS`=x2*m@Ze1RPKs6^b?h z1%);M2PN)%@#M0Hm+!^;=bNjv3|&0fVGpzHk%_KNocGoqk4cZImpqj+HRhkPMgP~Q zg`e+BYs5Pob#17akQB&2;D38407@%@rnsF&0t!{iNYvQsh`cN74-!4T$(HNu#;KEV zA8iB~%h zw(6$M5#|bqhj|W#qKMXgs(D%6Qw6aJQzZ^maH(4PHxh7=t`Z}ey8ug(`eqUDP(t%h zjS!9;C*3cm=_Tg#++sy48|l>1!QT=j7|xlVr`jTOvW0wB@$m5GUuKKs%%C>4cdX3J z9AraR3VMl%u0XIHwHot66%)vx(u%szIlJ=%Wh>bi``$`}ojt_6(4)7NL3XhRSuwYLb%YX<(JzA$s5`wLY!hqqO7qLCo&3oD+eWZX2cH#E zFRNrgi=hX#YMKM221*yH=y3zP{=L7TQvZ~7@eu_lK0`f~eZK+YlV61#c7p%6g&q(A z7Dk*Ib!k>r1z4t5ZpJtvmQmz`5D&db(AO=aH=c;${JLXa5)w`SMh}~yJ3TuF9r@Pr zIv>TARaf)$z3IpS@N&36x%apH_aTmL?C|g~n_cHssEm@*=MLAi`Zdz^!dmy{){52z zb^j^Nnt261RnbBf9~5{Ctzty5FI*|qTs(cyH6;usy9VLy?n4v*XS`G^YwLgRQ1K-6 zr?_xNHmd6DW4e=YnUVsju|wc;fm>}KkJf%~BG0uLyV;6E4YQ?LK&zD?=*ieIe@dm3 zOAbcJV@rsI3#AlrgZC*J+PqzR;2mnY>>t4@YA~OA7BQ*%Z(}hcQ`^N7KJsKvxp;qV5AuQ<(+E=S zr}Zhr@f?6L)}7h#;yCV8mWECKJGJe~VX)fW4?m5YIw!}*3jU&~X=pUx7lVZTy+=y$ zp#n9E)uYv-wtF`9u(3JU5l(AVFa|dy~>M=2fbgfh6upXeT=Lh zd!lxw{kBCQyI{}DyeNA8X7WJ%HrepTCCJYgsO46zEDw7dCeBe@bB#G9Nb-O z);#RSx}6VuWKzPb^5=qeV4c@5piEsqXlx`ZUOztkZ;QUjt(^lh$b+XFYTn$SjI7-6 zK*khtg9m0-zwu}MB|3Z;M2q1JFPX&o2sKysNK50taF{UH415C26Ij4+U;Tm#fn)J5 z|4PftbDsQUoX%gf3)=Hsaj4$!5) z8B`_RJIK>3{I~^|n3ZMImzMnI{@k`iM4+l_dyInbJs5y1ZhE#R!VbG^sB6$mcfwbir_TPAFHC)0 zn%pM^qDGR%mpc#C&?PJROz2@bv<=kzm zptq0q>GkGO*jYe_O> z%KTKMlLs{_u7+upR`y4StX!XUJ^X2?%@Fnz@+rCFnv0CU%y1P(37DPI&Bk-gx{$Z2-&^6aVm#slO}X|JlzM zdp)Em$d6YPE9LwtHt6Y=)EHu`IrD-#&d+teI)3JK*n#(yD`bYzLXjEKOQDr$liCcA zhhthvCic`iYcIlUJpIEJB~T^}?JYO9fR3DEm|`}8a)WCZ+o z_C^w$#}n{*IIZRxdyS}QhB5-+kmkLna|86fgd2vSs^u}U4@{QbfMdW?3E_a?55Ccn zk-7#UCMG5VNgD$l`_{9bgp9!W9`JuR{%3oGVNuBb(_&?m2k16;93I0L>bq_u{`?C| zxbW7I3343{5AQF{N7cvaehI1(4-BW3u+r(`%fgBBnz5@dW?Ad>Xpm7YJ0!Ri2tkUwy9A21xEFVAafhP89SRhe z;uM$S#a)V9i&NYko_v4zKk&TY>`Z2M&Yqn)*Y%Mz1zd#v7k{f&jQ4Q`XtzVAkS4`$ zk6dR6$_*Orh!o(>2gFr=vLw%-av%P(OC^yO^X-(zyg(|Y;)S!tL3n(>!iDgDop_25;wlD!m+(JiZilNOK78m# zzZ5}AN}72Q@VVNbftS$`jW8R1QMTX1;=Q!U;|5z=oV0siy1=pDE=9xHw10#d#Te|> zh$JMwH}YzfRa=o?T!)d^WH2eEW^S?M&DW^Sra*=8wLHxRT@I5yw4eki~Z>~ZC zoFbbdHbXGNQ`0{43o9Q8Koq2PL=xdA9?WbJv^ToU@#CM7Vxmhh++Y+Bz~n3HzyY@OWd1an-B)%1bQ2qNX?6qz(zs-tD!FPT#<9g(FV@}0b^(3yXe8w~SPg>d zGgVTg(-DdvKESaYvNI{{d#9$Y8z*`MXNLHHh!i3{7L5yr-8}r6@$j1e}v8cAW{Q|S1>PYApY_Xzyo(49f^AwuL=cpOYA=bo8dNjfmO9%a8I`dsLP7{t$##(v) zqBr<>1PjWRqfUMVl$6H~2nmn{kM)a_pS*cw`p67HV_3A#%mr^OCSY3J0_GMPpq)Zd zyQ25%T3qy*tCu`w^873FyvWjIi&qT5##b%$5#ETaL; zk-N7bp^dC4hZ^}LLj~Hhm~EXR_;_Y^vAVj-I2DgwhX-75Cx3jQ!3fr(pFu1OSqB2Z zINnO!l7D@q0m$gXm=`VngkyMb)-cuf%-Dyf1- zW!||Vt&iFqPBDZ`pwu22YPeVM-!dI}^~_jA9tRi;NYZiI{z@hbIZc+l@Lv3CU3^6I z`7Kl6u14B$i4Mc}W5uPDwVyE#9@ix_#tOt($X?;VV$xq>yty^#&?P;+qs?^tn8GeX z2a^?i6-hVm$N_&QqBTr%e^&LctQ*Eauhc0PeDJa+U4>nLkUYMA_LJ|wZ8D|n3M;^n zp1MZof1PRL#Qbp`{FVlhdg)*HEXk!;{BN3?NjR|XS^PutgY_ov=7vJu(g>>N2(?Zc zn|?#WUup241DqvZP2;5DsMN$AS6br$NhkzS4xVm1F8=t-!=8fEAmVZKhn$W@rvQO6 zum*;&_R{IEo7GuIO6Jk{{-h$;ykiZm3N;Ze>&(BVRKgwOYTtS0uA<6~sPLH>1mGk3O?gNXY;y9x<*Skjx#A~$ z%+@6u4Pm6z@Xrhk4KV=M&)@C_YPr5hC%42p0y7I{U!Cna4iCTAPYUr5lJx4&;1BK{ z)!#N1Kbu#*>Tf)(u9gJ6*0qPnES*&SibBO!eyxf)^VD0+EU|2~)gSPh-&pwND`!7a zsb5lBn5)S|%SI6&o>U^^PcjY1L63wql&M>P65ABq1J~7+GX9Q|&X%u_TDS5;-zc8V zvcbGlvpkHO<+16!&1 z9Y>Muj*yrCL_GhEZidy~%7*YEALI~b+iHk}7 zW6fRtg{nOd`le;vExJdEGSgz(r$g{e{g24$E1HV5Vb`cP@~%M&`l zIS&YRLi^@Send-ZMn`lNK8t@7d7+5gNM5;;g^rz>#uB&1=Rrpr(1FF4kH!k4H^ym! zS}*US$aM|U(gr0EnXv`2BrQ5*qSb+H^r>|XmE>SVyKbBz%YRV60Z&xa3qZ0s-L9dl zF$ocoyVBbS@b5^6;Rs2$dk<6)-e=6Da9&I@Txx!A@#iDJprz>4FTb?j!nlPV&&*$k zBP(YyrR5=kY;#!MGd-;{uDe1X00pMip!S?BAMxw97<)?e&g5vx-$5%IZyzWYxxxT> zzlPmcOJr&PC5ZPSS(7IgTaR7eyGjyb&0W+W6~JH02pkX`t7j-tJ+$<_R71-$c=M6y z3px%HGHCN*y~9^wi~S#!%3DQALJvKAnV{hyd4IW|x^!7yn2^Xjj%|;VC!_ab%B{yM zxs#4-ZLu)!W^Y#wr>y}Mq2f>>DbD5qfAjZUI`3_*o#x8tgk=4Mp2uAtC|%nIzd^bT zi@}(*7_5kr`9s#1M|)-)7*gS6d7GD(-wJ8O-!5SF^!vh@V0{O=cfv}OQIe~wh)}en zoRD1m)(C)?tNm(;^#=EY11vl!0g`V_%Z8+=&F6biyjxSmavYf4XvqY7S%g5yQCQ+( zX;{#T5mO_wl z!_llXk9->MuxxjFtkhl4vzUlSowtO< z!;a>_84dg(CK)Q{23J)oZqB!g!aYL~y%b_$2v4lnszvX%Bxc zs@n5Q#DXSyV_O!a0=U5?M0%eQBD}DH2>bUP2u0m&B?@AkufvqWT+-a)zXo&bY->01$isY{rz*)RC@ix^({&RE!K$j&b5q6PB?)JR@`* zn9oQ>OC(3UEo=n4C10pgSwErC3IY&<(!`pS=Q*to}=-Z~hG+O+~hmn*!KOl%kr${8M{ zOXWn!XZAWw=adsw({IL3NlG8|4Ges*Mf@Q^kgR_tV|munoFLMS6CQB<#S&YRvGm{E zLW>ZLTar+Kcb)B(lAL@eu>ALa3+n7juMV@u6>)9<2j1-SNE5;#vk=eF5e#)J zU|xT#c&Lq(pL7YkOK)9*?Kk~N^+4*mwEhng{u+#e?e-!=F+6Wi9Bu0ByDXY7Bv z%O6`0bKo|g$H%*Gh7%fcu9rKI5WWtflI9NrB5l@|w$4BCnm{#W%AwJKL|j{)l9gbc zhjcUa&nI4to+Qm;y6N15C;DO4l;0M{P3DP)(#6X!B62ys1hq+%NP82NMm7T5Lcp`Qdj`SA3 zUzdRX%yxg@Q$0mrQmJ7BHg!8g)(K@8D^oB+2j%;x!jqzMLaimk+4(M}Wbm#H`dJy* zJoWpPy9P}_!0Eu0TW_e7lZJz=Wa#^=OErvFEYlt37wd~IBe>cWV2hUsEa0>yR4uS0 za%7^5zvbfrhxulO`DPNWEwFwYAa$Y-l^kEhWA@f>@g<|7bcE^62{hIZ1%(&WKd81( zRMviez6+05wvBn$_h7;+(40Y1>8N>BGbo(sm&31TNLQO~M@;Wm0HHD>?j7J{CZx11Z37*rQSS}nHIxaz=0g;;teq3EhmCn)OtJxU2k)k!{CS+T; zNv!K|q}?twgFh039@1UFVr$nO<3?`rgN&!sx#Lw?&0c-ZOd^HYAW$MGGf|y34}{1R zu71SjclPO(dxk%9DMFzK78C?LpeYWJTQ4`RaX_GWqwe)-&ps*O{Y@5wl&%4^glY0;)OZR z1_?{cjuz0a<`H^}QFW5Mlf)jdekd5Z7|c+JWq{7b$)lsw`@gee`=d_{!kHGam{#S4 z@aK%l^SVVje*gSTr7)QgGBjT0Q*ms+bA5qy(PUPwb$9w_S$d!H`lh`Q_UEl)?Rx6n zYBfsXyVR05vy4lD>6Fg)kLMWUT*BA$236l}FEsjQ%VP21>7_(oX|O^(>nr#pB2eL4 zaSuSA8F*C#!1$`$rAGf=HfAf*<*S$qA@ZM~c((T9)+D`Ug|e4^5>Hxn$?YXAHawc_DkNEYh4jwDB?#Lvop4t z@W^=RSjLhtk(ZI%5-<@;Dq0~O!#By^+p2SRLy>=_K?Q3LW*DAl?wbhp_1B9eVCAF+ z$V)$X-msww(%-@%Oy|_Wf7gp5Ya1I;ddQxmEU6R->GNFhx}$v+B}=FZifq-vySL3< zD1liDt?&U>Nt2UAxjZ?^`Rln7ZzOnj)8&?aIp4f~;$$l}b!jzfAXd{cJyZWWx8Q4h zzxV9#n`wLyXu5Fnvgdg;Ccx)N;pOpbpl8m09+%Cyc5^f7dwM{T=AOAM6*k?^{Fys+ zF*zH);? zWz_p^Gc}|5HD4fNis`)U+XW^9bkk4L8ne3yvI^egbiy?U$95oqZKgsCX9(Z2YRmFEA4H&eSf+G>Dwvwmc9cSw z0il2(sMPlG@-2LnMH)?K)8Yp9_}wc%zOEjmRxD(HZ1US_?f<~x`#LPUajbuLM?lT) zb+sZknxhwxsEPg&HPP$k>E63s+m7nZe29_c5W_M}teGAmZY`c3Oh{-_NeD0hJaG2;36|seB-DPZ0-z)p~MS984 zsk4={DRiZXPq%z^Q>?c@0_YJU-!ab4ip5%mc~}C?n9$&#jow^G6m^OjvNE{vA!Nqs zr*8B5T=~YU=>FTWp#N@Ex%s*D2idpjgK7=op* ztR{GAMPUIAqFY^Vol;1^Jru8?_|)r^gD(lp<|trjS&jxck=_HfBBi7 zS2iNiRxDw_065EfS3BD%AJGU?`qb0^>@(MX-mGdH`^^$wfL9AOsjScRYs54Ui*U2U z5`Ug1roWXk{k;<}`5yqCG&p|?kciD`+13+*4!is$E?g2Byq~E}Ytft*?&o#1=&QgN z>&6;9Wg7xi5-Ldf?|t{*pWH6z-;t=`#V_y-ADMM37T>KYe+n@4Q4!7lalg~CR~e;^ zEmveK;^D^uKX$sx2M>w8h5 zu7{|BA|C${GwlY3kyjgOno#9$+5}t0((c%7c_0ffHxN=l?O zW$og3WZ;otQ06q&Yr{`te~C%~iekm$oLnvl9rU2g<733XWm5a0-^mtOPLq8Hq?-*T z$cBj8hyzuEsc_IZ+{aNel#>!FjhdhI9)&d~W-2ho|w@rdgRJy>^8jk`h|Aq4KDEFUfVij87Y>dtp_V&e)7IFDx`X_ ztL0rCFj(LxWUoUw1klA5tJ{9@NFg z@6;Ab5sI|7d(jzhh3rRI!Zki!cPXKcvpH zPEC(lhpO-pS}9D7KKtLo$^d{KQ~?F({HfoqgBVZRo9xK_?duh( zCbpmH!=Sy=b3h2`k5egn+n@XG6EFIp7Vv8TrT-2fup=KRis)Jqr>p6pPh29u> z@XlGjOh#e?JXvtEU*B_Q0wMt9D)HeQ@`EWDu;ACV*{Tc*7!zUG-h@P&{m?pSA0Caf zSYh%Nl|Pri##dLZC}3u!T7S;f6Y4;qTX@B)7sq_084lA4M-*GQ6gI+tOTYmo@tP>Z zD|@HNsmT1ZEA7EYG9bt@3>?J=fqZLmoAAA<7rR1b4S^mJpe8Clc!*aY*#CEHOej}^ zZX#X^FkeLm?uN<8XoRe!&#wkNa1WO^Ohl?v=ls(-&@%6P+L1nqm?)R*_8Gf+<2>9` z`)BJoCv0S#rOt-&cPxM~RUoca3wXYcJVy1j_=}$Eianp_;|QYKzVJl4S4-=-6>#av zE(n?uTJMs(A31472KyA!2bJ2^f=_1|V&Zs3jz`TKXbGOyKY$6dB(EiTVnA2@ff)8e zOY7Pf5ii0|H(Xh4;LPwIn`FiDyEh4|Q5$e16C(_H!p{fKk-lXT>WL# zEx|Zz;p~-fm*U9Aa6aZS`_cZi0NCsDpUBx!8Rn)`0!=|)I&n`lF>|W6cBnjvPgQ}) zhZKD>r)&FES~q$c*ytb04!BfGbmT9-sc9$I)SM@icKp6N&APsw&YH<*69&8lAQ^=8 zac4N|B%Fx=@Wrfohi9^p{(rp+;n&r?Ka*%+FKQ6_iGc>d@3ZDbk8rl;{%S9<1&~Zf zS6OT&$CZOUNOs%-|GihM zVW%=atq`V*7P4R~UZS%#KR^G!&(ke!ZT}XxvX)j>c(Ssx+9K|hRaC^BJUr%qAG*&v z@SkpWmaG!uNo%?Rwr?036Z=sLHJMv)?n=%N$RTT2R}DfE66rSC{U0q4a(fUGCLd)K zWZZmwmdiDnBc+QB^z^tC;%q|E!O%!)y1~llXMbtrKbA6dI#B$=eLCpn*OFrGx;M(&}zy1BXWx~OF+`p{&>oXU@a zwcs_2%)bi0q3HYLr1yu1hgQD6D{m+%$sV_BI~)7){NMGaY|W-SoU1{glJNOZFcyTuohJw4;Md+a>buMlQ0LzPWVZ+~CKA>jO{npe z#hn@7lz#fkD-Z8oHfgI%F5?@TR_h{=k692ZFIE1&Ujs$cqlJLktpgPm5(<+E{3;!_3{ z{x)jM`W3SDqR87c2q5`hTA(yK@PaM~3`$5Zm4Zsj)}nZ8B>|;}qLHyN5a%19CPJz1 zRzAE7v^ zSJ0T2nK5Q%tnLc>fUgeP;PX#J#hxNnbufnE34YBGk{rC6BL)+4pN$K3YMoP*`d!u5 zwv0U(l+Y{R9xEY1f+P9wS@#TqP7T+2r+0k)A8-6Ert+kaHn-mG^bHQ~p{DV;?N24P4|2U>xzPgm z3kAD2A}Ri3`aBM=DtkJb%9rtbhoS~0Wz(xG3LTD4Vfuyz*U}tyygVFI#cz6#>2M68_f!KU!*7vTg%NTAbjC=+@bVTmc_pQa$+0nH()Djb zuJCj5U2m7<$3p&#%gYYyT>tqjKKr!v#k2146 zo^@J$qtF215D;koG!R234hvEjB<*;*7`5yU+ttbV0NuCDdTndRTNVH7CB7%Qon}CS z3MFF*>n`WQP|Ngfg{1fBZrnIhZU0_rIbILR(}t?p#ea zz3fb<-_q)UGa$X{-hFk3JDptxygqLD{#RVoY&A|^lb6?>EOjUTgPWT>j*gzbD#3M~ zX|Ho0p#CVZ?$tr@R|C$JNYBpx$OuG|6NhDD&1qNZYkj#P81^!bcL%$SR$+BHm_AS= zLpy?i_1-N9vRD4%XThC>p(d1HkP`N1cIGJv2na}&bH&%PL_FEg5X{7FFtM=woeN7! z!d>t7%4=#QEa48WFE;b#<;)vA{}uM!-mEx3n$GlwVV!%4o+oLq2EO`B49sq3a({n7 zATv76{ZOr!lA5Z89J9T63>Xepiyr$j#MZ2j5vqxYFMoybhDE2EQ1`bFT=%FH3_QpL zJ3I^oA$-6dKu&SzWZ=o)s3;d_xMN|C;ZH%#m^ZLhmqYxJsSSgIt1g(ptZ_RY z91P)Yk!v+E_9&Dy?AW~KGW(Uw+(>E#B(>;!IWBM>aOOwI7!=WkqL?Zfa|0Td>tHdO zxBm(_6#H;fdMj2kGJ=Vq#0NywFIe~%N|M`C-z(F*qNt+6HaR{{7IWJtG&{p^ijGt$ zO(6H*I&?pfmajL{i4+ti#j_sIocnbi?9{rmo28+y&Ya`DOXdu()+%a4p-Tn8K4E>m zJ4>956nw5sPvM>LeL5F6n#`#+I$iH*hfAQ%UoICHsn#_<;1F~xUl{p)Zau|7S;sY{ z*h98CG7g{E_I=ll*P&2nz1|l|;EDN75s{QAnv-gR$K}6AV7{$)4r2+3d6oAb&MG~C z#Ba3U?^3S|+o~&uS#(Xsp9KR@y1_??lI`zFcS80e-#&~6n1-~|$mBT83zoo7)s4CW z{AF(yNH}alyhPtN(&L<;1p%AW*$j3uEYOj@7}~nHT-b7Qi_&Uzd;Hg+5|rfOJ6Oa+ zR<(W>6&;1?-Wh>LlxF6n=+^R9Q<}3KEK1r=2ncO zzg7M3)4O&yFj`CtZa#UiASdKHP&bDffAT1AUjeP({z0;}>e-^$va4kbnb&hGG&%jOX2%C=H!X_CR2h zmie-!z!AlbT-7`O!pjGCVc-34_3v#^%p@E|OGS0cB;>rJ0(~A1{<<=Xrsz{NkcA}# zZhgr47KKVkEQv|w25y9lkCWaxkTRT_qo!bk#qPIFK5)AxjTryIT0r0XM+Pc^AL$Q` zj%0g70(PT*neSE$@dmsYplJ}l{tX%CaCk5oQCh(*s$mpOsC60qQn{c=QKx-sH)NzS zpHT17?9Aa<_RMMR=>1DC^YXtnAnGeao>a#En_Yf7@Z*t4yx5J6M0ugY6-X?cG5CZ zY_4JYkLvx*7QWN$Frip@K$s|$tkSFF&}{>{OTW_Jhz%=isT&Rn;`CCv(Wu{hNrS+I z0QnvsX@2%Mf8nGp?jLGjU&ehAzP?9GI;PAQt1`UDG|jYwi^UP#Q$%df}||0 zhbt3~vdk9nNIAh79yr{lUbMe&f6vcPy$w${lNq`S0s!;QQI0}Gy*RkIq*$jZ;NGJ- zm*l6Pu?H{6P}Frv6T@if3Qy#t=|D9Y(+_YHZN= zXXkdaAVOLEfnrI`t@!9=V#2QWVMvJvP9H@bhi<}`QJ)QsY3T?asTHEB^GwvZ-%BYC zJic5~iBZXPVW82pQ=GdHN@C;`Eu8BQHJC!g%|&$#Sb8tjKlFVP4~YnUOVn-iwO4-j zDM+dB0v}X$`-eykh{5>Gx-3AQt-sdk`#yuZ;Ch7P;Ho9m<~f}x%V>J{0!f7d)}-n8 z2`-C)hv^9ZqV)u;;THo;+;_v{Dl*JI%3ypQB&_kcurOc_&X4XxQ_O9+{bwkN3_)ck zUQiVxFCWyV&R}Ut&*jBS5;ewQQoaKsbjmHw+g*AY@?X7qqljryHU5~7tN&>Zu zU9J`G93mQ4_A+S#Zd-7V5P>|LMCJuf*zXR&NGLE59Vvg>$j3)mpcO9_F8R;g?Go2{ zm{l&sq9*+-mB9)5W%Uc)xw6OtZHcE>R$ulhrzNFK?{(#*$9CttuWYnO9+Cg;L8^!y zp5K*%Ah7Jy8m3gkI_Kom&(t8sK2O`8bA_+xE7G7i`{Aw%>8klJ`!iJ(4+|#Ms=f_0 z*Wpg>=Z_MJ%$9Plsx9(qQCT_fy=E!YP02qFqD4r{TY(a%Ar^?DYEnhoZLV)6d$KT1 zw(aE%e<6dI{4s8||CAvp^x0!FKL<1%n!jCW3Pi6$uR*V}$7sbJ1!&I`Y#RDHc>sq6Qpw<^@p$k=HF-zYU_hXg_IZ5wXzJZNar&x2j39aE3kdwQkyo1Pg}v@*MBXUW zyZy7qg4sapPrU^#mLCWv+2;OdU#H<`Y?pppcZi40#H3w~T!_44*QD2e4`k2J1J_uB z@vma5ZD0c>fh4Q9EB(9!Ci_cX=TujGr#+d$J!)60Z0JP(17@d}#0mHzH1Fwn2DAXOHx%HRT@vE*=u$5DJ=A3ELA38AjqbRTs!FE2W%8 z-fjlF@?JFix4%&SU0s6&G0KS1ps3RUGiu2GTwv$zTy~nqs!0|Bc_$Z27d&&O`oE~* zgAwFxp3W)q7+8f{ntimGze3~wDKr&<`zaYInA3FWliM3n5>e9Ya6;%+kQ%yo z$$&c`@f&T%gwGX214LRvM3gp_BXjDF!bbZ2F+({4SI+h*UWsNlRnGYLZmyvmgo3qn zZWtk;aaFVD@`*TD-n6Gyp@&OWP4c(;kULhjT9J`FFL0?V)tnWmHz@ZS=Od0*5RF^d zCHhuCP!{Gz%jVfg+QdWk#jejU@jgB}eV;VLP5Q_^g%nn(mA%Mb%yioc{AAB$+ zfl^SvxSDWI^$jUIQWbAVmayvb!b*Oik`Nsv%}uaEJr$^N)YsD#40n;-Gnxx|(xL{=@2NSYRW%A z2t%@u0c%%qRw6pF?b+c%$#+Tjs^NQuy4Q=pS)w4?SsTSe0JWHNgCxQ<`0NI^-Dgm| zfw5n_r}V;V%WfDu_-kcJ7apUVeL*BsS~B{ATAS4$z{*p=WMR>V_JE~9Q1y_Xj|v+~ zD-%!gGm@nHwSb+?h_D!j1X|ePv6ujWG-$}$IKYbQ8z&28MEa{XhtO90QC!1daNRGQ zxd^AJAAr~J`^1^UU9KMQq$5Z_XW-ysZuFJ^T;bn0<3zj{rCskv5syyGPGy-Y zu^-9Oo4R010?L~Huo$uo-t(BLNH0esFt^Vru-sV z5u?Kxkim+0$cL?Jl7y6U3%CX!Z?3;<>y$FVtj04bM@F;Al9;bl-@kWaWML7Zo5hr# z{casvqN0R1ygig)_7>lU-p z`N{|7htc&hd!P4{WZV`KfDjM`y4K85>EvsZ?G~<{g}%V9It+7FIc%;;ElWox#AJ9yf%7W#}+hqxsi!#Kh{6DfVv0V~KZi__n zfs<@uWTApFr+J4tpD9k;>vK$P#zU?3fA2@n!|#=8iR5hKRv%l_{$3Apo&3kP(3ZpF zzz6Y7$=^r&u`%^x3t=Y@3#W$-HIwFh{%*iE_d&|$TeA&s^}Bzce^`^vjU~Pdiot{) zCO=!%?ck=)u_1s=iRU)H@Vm`WY_3}AT4`$);?cCxY9@2Zgmyii7s)uDQtJ@ORWjIn z2n91@@Z=HtvNtM|n2*6mQ3GD2pbsyjQV%bvDjU(y(!CY>H+bd*vZA;?Jr|dI(_2J6 zEZo9pC~`K+NyW5}9&*4H(|9<8pfjvTEZs+T< zn}mPhD9n;5YviB!dc)67+sl)1hHRxiS_1MpeS_PM`G2|sRs!{tSXi@@?jc%#U}4HY zy}hA59*=&vubpf)a1gGp*4j-gcT8KpZuOwGS3}(Bo*-JmsP+5nF1_sA1vHdc&!{!p zWZ>R#0lK;YBYNOs?A%S%zD&Jos17apEU^`t8gz*@$cx&>aj8y^#v*x>mc9+q8|C-j4%9q7B?;C>UB$53fWMI3nkm-vmk1#~1&F&~dP?`F5r=p8wTQc&wTv#A(h2}XS8m&CYOoS+m~g36Gb70xg7O}_Ol z($E7*f+%d7I*+jmISR&U+Vqu!uoYg!E%GKdPs_u;DHQHw~uu({EA7+So5g9e@7}degK}EW5%4E5rqPoL<>qs&dYq`fJ2Hh1 zBDs0>ja7xltcmo>pr2Vi-SE=iT?*VH3dy(bcoJ76=-TBxb4lb<|RZSE|Z;4WV zXMhzywjMsuuU?fCU~?IW%upEeWfKPtiN6!TiD&JI-0ENiM{&8+&AMtF4*~4H;1Ka> z)(4!X;zH9CO&pK^oPW$#pu6Ge<*D6}Z@gOXk0#+cMe7(mlUuJdr6aaRRLG}8O?l6Q zCH@_0=qfY_7|aVUs#cJx(=qm+8y(B}T;RF@@?BYle~Dbnzyr$ZHVybfK%dT_27N~dKBvab_Q4Q; z5}kK$_b0YDTD?4ly$|d&cV=Ck$4v&P1O3tP zAWZ_u8zf=mb=G#=8&_PG*_zqw z-n)fqeYkQL@hvf$hD)_lCc@!$YJ@DzG3c{XG2A>n?VbMA&F!>UifK%K4uHQX2&Frt z#$fYzvus-?Ux2YK0Tk$v2mcRr&jrk9)U5bEM(4TdS3msB<|0xUb4PR|9v3B_guYctN8pdj!o=Tbcv|yEM_kquJd#13 z>`fHXqPuSpqo02xea0nYs{`R-OsTpe8#-{7p{v~OgeXbwvFTrl0`P0B(=7(dNl$xP z&pS)cZVcWdC%oL@W&9i$w^Hxv_;$a1^!wEAo7a(aN5%~ zu9xv&H?xsdV-|fbOG;O|UTsuVjuSsMeJ|Nf(b74!EibQjVy-E*S=MU$Syp6Wtzl}a zHalOnA`ahK+Zx9wwWx85aupOvHcmEYY*P4QpKCdP2G;y?^#7Z1(nvFg7c;#n!U-E{A}dt{g&uBlat zsNqSFDTUa_!TxA(N5q%O{Z8;(i+y2r1_2v1{Qr+Tsvp;$&erQo^w7W@hxJ64|q1&l!d!3#Zs#yG? z8XD9nBd)GjTpiH%lq?DnX7AMfW9mJ0Tvf z0is}pL5!t>QiX|+Z+%Y|Zs6n9gMA5Jf%T}RH5co9dn^(h$#C`8z`099 z?`S5{+|CmMa4K_w07xLK4`+if$}G6O2a9|^~ZQD-Rb?D9A!-+g&Q%ldDnnS*l~ z34Er>d9I2(+%)?R)L`2osanF5vndnm3K%KL~MgOI73b^QZlYN>@9Mrg(w^F!ae`$%1wk$Was~m`n+`?r~_Tsr|L+In31?K zzu9PSOnq{j=W&e=0jgX>OfJ_RQ&yl zLxX|DQe2cLr7z=05c{uEWrRo(er)j|aWlc*9LtQ^ZG@;~g7Hy0y%%2>QREMq6qBZw zK9MwHk)0G+sar`+m0Vr=s3=M^GEY$rLO(8(Gjvk^>|n4Ql2;bELg%UtDhUi|BpfWV1-=KZNkKm6AEi z?Or8?zw>b~2=Nhl@SpH9p{+NbjT6MhiL+LouD^+acxo_&hAvwB`}-$J^75*A5GD@6 zAO(Pru&^Vv1MFCJISX}af4@C%rb4r?9%|j4mj~7yo*pkp)0{(^-d7meYM~`VqQ|hU zDcm!L9KcUmYJ8qgdS9y}%q^r~7QN;WNm)AXIM`P*r84kWMd8>CkP@{^7j=NcDQ$ti zoKV)yeaEA(a>s0=@~jCjxKj$~JyMnyZKIrjtjp4#q`P}%y$mufRL?arum54Hp zD2Zed7$uH1D2P#X%-0jXu+i0SG}^U|X56|Tl-@IOQ=l35~T zog6+Y;d#=snC8xYJztJt=p&pi#u6NkCUa>?-e93uJNfn4`hg7+_l_7k$p3LMEHvOy zNgfnA76}864fO!oZwn`38}K{*GJk(8;dNK4M8bR6Tsqnp<|FI~N~E-m{jY21ncqWF z#-nQI9Yju8KaqdNe;pMXEZ|D&YR%>zF*W#Q&n*BSi)z?D1#{GIg6Ptd&Ix!C56S3S z%akuGq?nyRT@j?hl7LY0^ct1+Wo_ShnFed~O^d6fl@yFIlU`&f>XHVC_i_C`^EgE< z$Mu(ectn)EMQ;pjd9oB@rYBnn`**ZIx|7OIBEqsXEC*qcg6f@m8;nONo9p5*H6L!| zKl%tnm?H0ea&!AFBmJ!Vj#TU8aDK*6r7R&?uQw)2YYcP2MTWWZYyFjZLJT?-I?#X2 zJ0zzLMQ*n&?GF=o+fQ4$-n&9cZ3ItzVI;0)h9r6erw1;_7nlgGdWWJ0$kKKKCIdb? z8;aLG&Dp&zx!3#Q6NOwlJSGjbx3^z&Asr9`GKHan^l0%j8eydbL?7qIm~m34U9dBT zm`89O*0%&Qp$&BpDiJ@)2d?fhGUTHe?YYRj)d*V2B@X%ftsT;HcRb`qg5IAvc~js` z&`87Q$lRKb<@gZ$J5>o+<16dQtwsPI+($&*nxYJc0OZNPZ5Fd3p%9ruIUM%Qj%=>L z%ot)U5LK$np&dO0|L>x3wUn;=hwzl~X!oMZYF0=A*isX35*2q%-3ZAhMe5aP7Cy*E zvQX7MGSeL~vk_$&sjUt1UN`3ngKQ|W94K-279zk@P)VlNJ+agvEHc7cnjL?V!Y`lZEilZM+GQeF(DWa6Pk6iO5;4&9Z9 zLKO?tpzeLQhV~5HlaTUyx&pt~K)QmmIoKvmJVlf|@jaKc7$TE02Ls9UHdiamj0{sf zgHG2*L>2n^^0nhd$e{sBtSa{i>KOdcxspW!y0#h|f<(Rjb>ix@0IHpE{Q2_SBC>7z z`bOL#k~I$|KJ=(P83J>H*n!4{&F*e|sU$YFl`Ifsuip247FU-CjlV3atx6nHcdg;; zT}80suP$qW#u*q@No4BG?L62LQPQW^+DS#SPq-$9G@!H5jE0_3%CMF-{KUXRSuz8T z7eP81Y2w+a+<=!IqQT9A?alVGp;zza!N|Sul$wabP3&~sEzPBr|Bth`42$A@8@vf|NDOVyt?NF#{taj zoHN(V&Us$*JwM+G!4gJ~@`)xST1)B6HO(Y}xj;2ax>_av5kjB(~@JkAIJQBb>Z7DyYH6XW$n*S%sTsc zG*vbSP6s3!G8d*$W2>u z@!zT3Yv6s|>4NF-qoXyjAh4{Uw0j&VC_#UK=fr~F!`($G6;LYZIpsJ5+#{pFOk8xu z|JD-@gG>;92Qj`$nVXquqKO$E9u_FEK-iw`%#3_ri*`5N>?|w$K0Lg~{X|tfy(_D@H(Or!>5Tm7aS&{%skMt_G;86uZ9AQO!JFrI zp0V)Fuhrr0Th|?Wqt9R-c|e%Jfod0+I9X}G$? zkDE8jo9)_%TTsr);l2Hh8mVo?dD*VYqS#H;U6$O`v>Z#h1N(~E+``-BZwob z<78Ak@7wvj!x9G6E;H!I@bD)mnbSe;8fp{}G7cpY=(MPIaC9V=1W#l+ecP5@0T4F- zceNDtQU)!p>Tdx23NtYy!$2BsJ)my4g0QrC14|WEWUWpjSL%46!WI=OyS+l1$VmrdeiH$ z_Rujc{QDcvKX~s2q(|?bc?YoZU%^O4AQ>5dMPn92NTky73SNWA zyVwIqA4igqK3I&!kFI%-!2X@BlFM!b{|BVU84OIY3V>>4%#K$;ab$WmulWdc-4fg% zGLVOQu-gmZ^H=@dzqaaJJ##}X*KhGQjP%3jCI*R3K+2`Q2pnMACX5RZ3ptc3p)S5h zR`FWi%sl>smoJ0iOD+`B8&CE?c+?Sd7m77^@_I-zghCf11?Oq$+i>@4w9TV8wWgic zM@W4kA)z*0{T2-PIj;Z^(HR+vK>GHuTYWp-Q!E^67f(`DL<(|kq&lPD4Z{6;+jJSZ z#vVxml{UCd!P;DeRR3lC_Y(1x&BCFvCwpXMWb^3P-xGP*f0ml?m|OrIn1g#bDRLJp9 z@V_Gu!GJB!g*;-E@Z{kq{opWH?Z#jZFn`Xs5lT9>AVh#XIa$cMQ#i>JmDJQ!-mIq< z3cG;vZ83@U1zhVEXwh^AfUeIIap>Y#wNj1&3x<|{MxPi4XwGdoH8ieux4Kmd+l1615&VBN-{u$sHKKUm$%pt?RS7H_|4q>E4s6rMcdN z%2+N+`KQdTS^C|g8Mc4-8pgzo;rV})%%KyIv%?c9sJ{E&&s9)3+9Qq}ve~5DeyHB> ze2zEYV55Om0yvL?W#GjeDlI@;;2SLWVFTm#HE^}X3QYN865P><_RcW11aAJJS9s+d z?Jibl_~7WOPcNALlI&*+fO;89Lrn2-E>C5AnFkcl(g0%Fd{l9Q#9Sm$^FQ)l;01^+ zF4&!vVzn*J!l_|Ht#6roeEvY_FIXjTFIHq37R%f&_vX40jYhv6Nb2o?C&2;7q7T;X zXqPjC|Lypu-iS2RTb{HgSq-Cl{ozAO3kENo6M>Wd$Fsrb zY~~g7Pu|yG$MN5~!^%Fiqka>^-JSNq3OI1V247UTfD8v^aXg*yPKyqLaj}V(XE$@#(63fEZ`iZ1f8DKlJToBL*9>K@ z{@sK&^uTvDf$o=ODB;5}M3%k@Pv-nt7~)8#Q^~8NP8T>6EY!Wo5TXS+P;RRJy5<7Ui8*XO>Pu41 zg{mO->WBDJ2YFxpuAdsBz@@P6A#^s=L#%1jk>VXIaFUiaD%2l z!@4fqBJ09Xs%g(dq#Q3^9o%5K#3Zkz-L~J(S$icXafWhCJf?fquO2nDQEL3YGvMxv zt?Vf#6n`Riq@cYTP`Vr50 z*F4Y+b&NbaA7nY+v|mr)DZtH~i35>)8)9KvcyNg)h(B~Ng5_5|B!;n`TJPI_h`&k) zef{s@RzN@GuW{UlzsVJ;;v&H~I&if1KJL%@z)CcLoY?is`Fk>}|7UtEjg_^?;3)m8 z))7+WudS?2u2)|?T5L9)Kb8&4*Yn5K3$OOCm!z@5|PK*pUBkzXOe|S~( zH!Bp7gCkve#ooO75~)I$`W%K*K+3VKHMRatGdfq#6e?F1X0EVHIWHcwCG=A;iz;E5 zyFx=T;0JEXw})u+Kvz$M^P1hLv$5~LbUwzP@Pl0V=(eYR+=)wD)Q8*N28Ox0`^{4+ zBe87eZO=!rH9u(e110{+!dL{!dm-`?%Ts*fVllS+`1Sty8n$B?gKWBj1RFzT^&{9H z47~T3ziGtXV*sJ<+r9Poeq*B5kwHSVo&(P#g3#r(n?X=RawrKR$)Ej;%U>1toW(q4 zX`KdFOOXMW#6AF8<pu8gG2getpo?V3-U`ri|x zK%Me~*36F)S-8vMqc>4}ait-3+(Gib-@?6oN7#X|%MG+V`4(=mtuZNyiI27G$;_Rv z7uHs!A8t?lnMed%AloE~cwIsy{4=#Y5HX@W0D6~b5~=gK|An)OVn3Ga>+U8n`l)|t zPrAP)l2v`O9!KRCX{BYg-%Irdokh3W;t0UC7T7d$7hM+|zsRpOA?43p-`r>=>Ml(t zmE2K6j$VZxxH1Np@%xvFwRM!E$scKWnkN5K#t!zJ^&+bo^Ir`6CqwZ2Ijp2VDb7QY zdGg}d#uI+Jaa$DEuOkx`_smNY)>i*GjC5#LWJbpTti&h8v8Rx7ef6lmdPvKs0A@`GN|+;|j!=ay zErs$IPdbRU%}~4q7L>%COR-GXodOzGPCe&95auTAL{#QVePt;sC4@!Z|9tF?gwm8s zQrra*a^Qq2o!C}L=sDj^9{ip`yFTy!bR~j}xbAI8oZa9l+LDlp?>+GR&cI`W)4^fC z1>AP3bf-OkH;5W}e4x0q z6X&G8lQ+|4nfdlGfCblE-o!xJhoFj?&j)|zkiegWajIANW5XtV#JYT3vR@T!l2eP) zZ?@}jV6~*36lD5JT=|6gA@6VA`%gvSu<_nx>J3UbqHMQx3z?1ti?wIfFNB6fJbwz) z7NY;j%h50)ch0to;%ockyV$u=hku9CnlDxY@|IzyNK0f?gmq}(zM}kh%_6ufHzGKF z6l@TBC|O*Llus7oifV*UG`m|x5B?;odW@KU{Js92Q^S+7M=@)hZqmHTKQm2F7OO|&1TZl&_qVNUAB zrmL)wP#hO^uuv-RY#;`IoCh6pO!}cMITscf9H@qtr-*A7lb3&9UZ^*&kN3ixO>3MT zT*L59&-I}F;@wB>fYz;-`+zXtF|)9aiPpSH%uoyH)f9^y`Q|Fl4~8q(fF2d^z(qf6 z{FWW;xv3JgS#~C{%V5`Ts6Bhb+BAO%P&DewY060|x0Qz=Q4~lSAvC8!Gnpd}H3+Vj zDvOKM5;WgZi;bO7@#XAHUWS_4>5_+Rz1MY}dC3g@DlBOsMcG?_x95a>zOwpi94WrT zVu;Bsg-Ib~bZT#X-up1>H-F>yXtP}kklB4eO@^#D?qy}BMdtBFD|s|zhj4`8C=@<| z=c?M#KnW8Gp+uZCsRGT9`L~v3Ma5?XuY<7|opp7?|6%R5oqj^zL}Ar)8&D6m}!IPmde*kVR0J@ z)k_DZHpgDKJ3#5^F*WJ#O!BXCtEeui|A2(Bb#TNR(4?TPj}Nz=yxg0r_ha)@l3?W| zddXrcJ5N@1)N(qxrV4|*!NVpSiSW*7k>6FP1Yx*)>D<$i)*}@u0{%tMjOu%Nj6xFz z8DNshfW0xCyJITz%q9{hP)GY>C+^?f=6D^>n$P?@Y)o6{8J?(6^LA7R8bMO~UD(7* z8Vk~EbrS%6h(r?W4x>VU5-R1_hd7E#KmZL-IyKS?$cA+Nu;KYQi@NNCc<@nY5?add z(j4Y%yw;uA9jvjBhV|%Ll^XeSMP}!q_YKMOmFK*r5?uLKW3I>jCneZn8vlE zS*SXmC#x}#3{WE~OtvU!ffN|t(qljud_ZtGF`_5j3InCk52Ia~gC*U3z}7OrgR5Mk zt*f?>{xmBG^^{PlCkS-3!n#6R)YrsXrJy2`@-IZeyV+8E^y}GQOoggQioTe9l0BG< zSji%D+P0TC5Y*lF{DmMFQlzxL$-S@eeDJH?_{4R|(^fMvR+w+4dT{azr}D@_wExY< zs_)^!lsRlCs9aMmRn_Fnj}7yXV(s%#L?m7$`F;XYauzvwW@Cayi9Tmosuu8=hVI=cX7dt~@Ggp#1n) zne!@!^D4Job>SUAFVYGX0})P1YUXS!GNP>AQe)^<`2>Nc4L=SBEkd`62LpaHZ%?_W5YoH>f;`u zK(h2xiym&@i$PxT+`1I-Acfu?k@7WLN+S(0DmAAf#* zV8-pdL`A~&bT0Nd2y!g7W;c1l^v<-k)wBsWy{on(+2VEW6|z?|D>+aU81Uf!?O>(q zt2jeB|Cer55M|03L{l6XgDc0pcXhCd01bv*b?yY=z(qW>cI5IY;|T@b3MSjxDh_l+ z^GsU5JgDdA>t#M!T8i!xYqNyi`k(n^>7bwK4qt!d4d9 z^Jk{S7%3oMaCRI%8Jm#OV?#;o*gzB@v16g>GF5j=7wDKrOgqV>i2wN0LJzGp692~N zbaeT7VU6kfM62lENHWdX9!dAecq8@R+#Lj`|;rBkw~&TqKmya z@o&<~hEnt8%;pJFur5+FAr!hN`MYg6$AXD5hntp^Voq_?{dImN9}UDjj&$4GQM_OS zB`iy>{~0K6|Ap?RMY8sR`~tA>xWg*$UdrCJ-AK*VJZ$gQQGxJBe$EX$4n0Ze%QBV}N1K;6Sh9v8_p?uU3n`ALViM3+8nRMTj~I8$Ep7qo3OSo$0QUdqt~ zOiQgKF_9@WMiF7|)`3M5Q*WHaSl_2r;$rLQik8@8@BTD|l4`b1#+X4@8Kwh|1h# zS6t@sBkxgr8Mbj-cWXQJ`2{I;aIxk@#wVYB_Lhxftp3bWH&c>UnC=u_H* zrbF&5?eQn%g3xN`GM>=TENzvRe$yJbDjHK86;ZhIsx7vmdj$lvFA%1m*%w~ zikz(-s}S6wV;r>pX3A~kcAWx;5#kzX$dYOo6L+Rv20NKEtPFQs;nu%0F&p$Ts!3UT zcawd&6|e1wkg&RksH`%sOP4K~6__p7i^eX<6}xD1aF7u>`?27hRDZSb*%mBXqj`n; z&cCj2$8Ysj3TA#llSWWYduNCKS$-iyp`x5>QCo)h8WZ*pgBwLIxjB~(xd>&&3I)Ms zT>nKAych5(F22E_(CkTNE>kxZFSD|@vzwS;zopyizP-KM9_Nru zqsxBHtrk;Fk5>8n6}DZ1B;ppI+T08pqOFv~P{f`0U0{w9Lg}u3c6U4^&dHj<^v(&S zCg5`#?<`?_wMYmfyjO7U4Lm?#PW*5HX}!Zk$@0=KV}`N7CYdb!iMZK~AzpJ5B&xTd zhLwPl>iiZucyvV_j*-0%uN;}S9Cx%OXn}p1}xyAu38P&!Yi;2P- z(msu*`+|zEC?t%}rz?aLt+@44pP00?nRj;erk>>fsL7OMKlnK;E$x1rxGiYUu9i#7 zAbqrY{p-UtR>L50kxj8Z%`RRgo@YZTiA*7iXhZ*F93=({;&do_cBgLUGnG-fc9BRBxS%#NWPI*@-;2is48b z?A{-})QT<;hlqaX{JnT>C`}Rxb$(mWqGq3Q3PJjpisui!!rNI{HFyrq$=zzMB-UEWAKoG)h5 z2-+~@UH>R@OD<83-5Bw?RdsewBznB?K2kOHtBDN@_lyhy!v!880Sp6%2xbj7a@`oV z)4K<8O;8Uyn96_8vIvT|UJoRrr1_WD67rFicO@xHT$A6 zoWG8y;3>%%1D%++&P;7x7I#Gaiiwo(TJ;ZIkL zB*&Y_!57O}nVUoC_`8cS5si*YID2icis^UlC%<4mm_fXukK|I>@8IbNobm z-rqI2O5#{aEoElYjNlM3SBZ2YCgy?IWzM5t><#Xq>In;srozVAoM+D4uDx@1hFYT> zURUC&?G^Ht``$)kf8Y8!Y|!AqnDey3eYLQ+v{%Ipakr`abV?h8IuOd`$e5>8vP0Tw zY5v^uOPM76TX%xcB9FNWM?Soy+w&E8B@p{Xgcf7c-xi)TN5A-k-jVCsSn0+ zRzxUS+aCwHqR&n{iPw@S^wyHFA>Py<-+s}Tt-%kJ{Zw#I3}4}*^$NjM8p2f3=EZ8F zEhK8SjE$`$T*AQHnw}HMCZY3k{$@&pJ zv#uk$Y4AG)8!Pbn<4qjz*YUgBzm>vOnWkC!LSLNMZYG^o3x^s`RSpmn7oOaXX=sXN zU}IVOUWQ`e52+Xn1tos9b;$9Y&<@iwrKvJ8ey^>)r7yOx-9T1c^I{E2T2lMn*;Yk;g7@ z9${%dDTfzJ&We4vVwtA-;iTF9@$+fI#6(%;H#aMUG3rs#8@HT})0mI6IZWW`(X1l-havc13SK@_5Xn)>X78PI zYI-aQddbHmI=mB4BsP8GnwXA`m0KZ8QQVO{>CFCMPj1zFn3{`QoEH5c%!YAH1@uFjv+_Ebo$P!~3iCdD| z+;<^X?JxjT1OHu0{V=%IiVg%id@l2+OKCR-G&yQ4ueEJnN^lJ?62`)zqCiUYAmrW@ zJyM!Jn_PcCwYYvN48%x|bDDkkBGW)RE%!4UCCj8(m!B!NT@D12^t-;rFuU6v7)Q)r z_^}N6ECD#hgma!DHO}w*d#z_qDfkdjVxLb-^c5(>@+pg7RRzB(k+LMnyaducvW4E1 znx>Ge3w=I|5!nlj+%+wdoSjP(Pqvf*uHe6QP}butx31@yqf#jHs ztqe;|9(J3WyT9Nujp^%e!y%(|%Z@Pmq!gQg3;zI=KEMa5i{l=pq`;5_D>dxi4lCls zW^O9Itryeyhw0L;iOLacjAz)W=ZfT@0@YX38M5=@fU4x_Hao2F%PcmLpXIzz$M_>8H07E8xj7GV&r@F?i{r<3}Bj5gAOBg9gv-?9(^9Z<*&?M$Z zEVgmOHH=iU%dHuAdYb_gX${Rtx1>X6N>1q~I&4F5!762jGG;G-(#N}{5}?o#`?BCU z)dtINJ{zs?{0&#A!Z0u=UCAnO3qb@paI)lkEO?5S-27!`Fqlcidb&!U;aYW<_a_kIBnE9N^%c8jR*!n4UG|7s|ZzG-pjgnck+0qodK$8Pw)iWSJ5 zT`hm$;y(Bj5aPeUf4(|;wB!bc?|u_`I>3VZX@)~ypI;uVG<8+ZmGA=#B|ypC;xp5k zc`5nxSSp!L;}m1D&CSOu03$I46BMb+t*Jza%xP!Fmua-rI4l3ZYmp*ZB|tA{`VDU| zQI=zVM9)uClO#`MQivU&FU&(baE+F2T-IA`%3}VM4Ln2D7yQDRXz^V$w*(^ z(u3B)&ll-X*XlM0Jn`F2@*n>D^LJQ_fly&(SYSvHN6}7yn5Geiqxo8wl7)iLig#-# zV!G9PVeta4FVhoBB+JIe#6L+fU14aG!YS#uq1tL_{++|9B49V7KkJF5isWVfro7|F zmPlp1gmqf@o0_}ay<+SF7gUuD#! z5-sfb@L4*OZD#tjUFNg$SYgNDm+;T1^m(M(Qf+1#3`NKlOq*yN$*pDZS~JE0aaw;6 z92`hUka^gR9@xH6-$-}fIWy7j1Ro@~1&Ln_zrS+M^Igfv5DW#-TTK6NKensmS8|_3 ze*DuGh*Y_~`f4Yuq?r3qBgR>kKpKX`b7o@-&><%%udMU|kXUoBdq3+2A86?}0p{!e zGbX=3GI&gS_y*Vj-m0J;Fq7Ws*g~jy{9E)=rGd)kf(6D&xp;XUgZRY+@$vB==_*pv zTzNudz1vYcEET}=a;PxcDrG|k&+LUe(CyK|gzLeYl$&d^&GU~DcR#PX=Vu{wGFnC$ zu9dFpu8250JBy!RSV+|s)Cit?RsDM6sfk6lxU4LUTM$n+CYkAL*?NIb7*c-O6_vvZv!1d6sGVXNkZ%PO%){cwA)5DTp9YVNQhmH-7- zEI{FHZ@*dNOu905ldt`9k^V}IHVT!n3?LNw=BGs7l_=k`N*QxAT*yJ8lX6a!OC13n zD$2^8VLpA>zP!A=1PiQ3)-ytXum?-yTb;$qHbQiD~VbTg`V{DAPSt2YZNis>DNlfYjKk3)QOr@i`2>L3JBaPMJ3( z^-AR()hS56H!pmwQMQ2J9iNkT>O(Rd{^!A45;*M+{f#l`eY+R$i@?G3IP-r5hv7L| zNncnkSS(nVlRQ`s41?#EJy+;O43E>AANZqF+FZq785mpV+<`-W$MX^6|ygO3v1L~PW5pN0`q z@!&st6leI&*J~Q+L}`$dm309w)eMv);EDK%n20F*somt}u=Nu4JLkzl`RLj3@bC?J1qE43u4m6EJwC6`vwo^5 z)7H_M$(8icb#bYWijLL+T#+;Z(W%z%Y}m&d{i9cfd3h@&3F%(Lb&zbzN#J0&6n=(pS2R{B|ITr0)HqN8BM;KcHUaK>|Kng4A9An`Aayc0N6MCw{Jt+s$~>_ zNukz?O6JO#Jz4MNwJQMpRt(%&=CH>`|Jl=Ayc+Jz7IRY>$R;vuA|Ik3S9*ah%%FV| zw5Fk9Ar}{y_6X&`!rLsV*DbEfLi0~_pB@Y8>WVzy#i~OHBoJd^LCxrL`?$*Gi^KBj zs~*WhX@s|qAY^E)L^JpjBuPnrU~zIgl8oJ#^zq}17xMDWOkdA-=co`0+F_!}z!!>= zNNR!<_p|)AHVLJke5X4IQ;%=Npk-I+m=rNFaryVfIEhWdDk>~Xyv_6dg_gliDR?Tu zy8q|lVIsSZ$<#&})X~lM)Gtq!%3vV-uY_^X%e{J0Uq!o5pIdGA<6U<+aV$LZu&@x$ znx{7ZrB+r)0Xty=cnmzSG6M(vkGVkVv!I2yws+a^`Yi^NrIpn^XN`3FvyqEZ6v{2$ zGKuCyEd4~Lm>F!ZV1=1MeJtvGSxZ1@RJk#7V?2`iw+7v=EhF<`da+qX;m_Ml0=!GL ztD7<1&d#Cfe@k^`Wk`N2c&)vzitS%bEg8LZgrZxh&iT&PL{UY4K0^70K0PI+9?QPb zYF{kfzQ82ePjcv0M7tnK+)m5!;p3B6Y%c}TV3VWtX|%mSq(yS1B;#0*yG=H=&0G5H zsE^L1PfSC)xe)oiU|MJoSI;AyUjpfY5S)Rhxq%jN$_6i&x{3jahfTAXL7MSSM|qFYSSZaceaU$=?%$FR@(Uv=J90?AOO2oK0=HZ zU>7`I%>WU!QJK2_M&O(1c=n*6f&C%l=}(KE*cK_qCw&Nyh#;b&S65a}<3Au-lTY1-kN2*S^I+jeIBXNH5&P4BLi`gH1b~q zAYVM+sc=Ve;m1Up8%jva!8e}(7B`vHEg|&$gbk>BqDZlaTP#p7L}Xp2Cp;egTQa#& zVd2l$^oJJWVyz+t?}Ei}VlRM^N-{=Bj89#l1}*Ut(*d5In=<&GffTf<7k4Z-ioCk| zMzUoT+L-W<=Kn*M;a4Un?Cts&m^(>}&&Cg@|I7h=PqWI2=K(vt(m9UMo*NJxBqy0! zc1R=bpZ)Xly}5a)GrizsnL)5Jb7j zH;bh#r;TZqRm<3E?3XVpI#dE*zSPwGoe}yWHEHQYwXuqgu@xZ40HjgB zZ8>|?5N|+aNhbe6Cb?h~7ozmsogB~WkXq{Y3jr)Fp=*=-w`zICe56_=bWe;4Cyq@@O)RSUBFO4^~*pgit5)~jAALY z`LEuXkKBAq0aM0~>kz(dKh-^On4D zAQS;+r?tU&6Z^eNR!&I!np`~7BvIA#b`cA@boIXh{Q#?PFEF~*z4Pe3mydc>I%U|Y zrY^(W8;0Hv0(#7+=<1n5KZeY8zhiP)pBg4God$vABXb=SDM{;1EI-fIjHP}!iX&GD zwPTA>(19aR3aiYf=(tFp%uR{`&qNJug@|cxI8v}3j$uzW_c>O^_J3EimCUJ#Udg9d zgCqiFxGx&Rv$Ni}x%%CV@yzi76$R9ohRK-C)8~HjteW zVrGR)qEfW0Cl%swm8n(uxG*+$jeWFX*f1-iggFs?qK`0U0_&W~oB$sKooywJAh6!^&2L#G@2(rHQY7LFHUa#yECLCtK2@*#d zCx+WhARRE0{zn&zbgm_M90*Q1e8-~eL+JNoFwIY6?_C`(lKADlsRjrM8rMis6c=4X(po-z}K0w2Pa7U9pAKH54qNgv>y469?HP1PSPC zI3aiI`*&S+pXj7+u&ZLvxX7j`D+3YDw4-^#r)^9ogpp^P`Zk+A zUQ7Phnf~vx`}ZA=4dc9G_50T^#jUn)0;BXLYi{E2&MppZjhXWU6xXwPZVpWS)7(aC zovzyEF0*x))S89(55|$l;0-bzBWh zhVZA4aZtmJegZIUKOpv=D>hW1u@I!-h4Z6^8Vu+@<6A8xTaA_*{HQ`AM~Ti1Bas|o zvI|>#*pq4JJhkTUYNpTq5R;`R$4^Mh^p5D^HsATt!=sF4MD`ppr|Rt(Z`=1H**K$> z2CDwALHiCpVvPF-XoMC-|KJrzXrXV1f3_0>j@~p{nY;gYcJG6;ePD4lr@=3gtGC?k zc6;#A>hAuxTSgbVrOfV;hk_sYh!z4ZRKEVE+r=nRu+a2n7!854tloTA2)X^UBr2%!nGPk$R!JH^0As;BLBYfW={;~&GfsUe0hz`zAT z$YavR0=w2R?F)~c3&;4&)W9r_gQ}K~SCZp?mzGal=-G%n8tWDp&em6;UPE_t zR~Ns#nQrZ^uJ?2D$;Q!7nElL3>B`KvT#VV;Rs2T+4^rn&6aBUU7H4mTKCJ_nywt&7 zKWV-#Q#@}$qk22G4w|bsrF>Y2CKhKcV&seVBIqUdtJ3kHYaZ!hLZUB1DG_6%bfTkg@gmQRFp) zh~$Cx;$fx@P*=&g-q4>5v$v>)o@{Gk*eV;xi#j-SjQzZlB@R>u0D_5xN6nafkto zRAZCjyj<~iX5tgNmlNK2JscQHFdJ&KL*Yh&{EqAvkb9hI8eugoSLl$( zjGwFQtsmXykR!PuS?}vHtOIb*T=;LiXFU!m{(fPj&gi`VtY{OKDN69O;~B(m?k@JT z0v0Nqh$cxMB^LyvB{L(@H0L*9myex4RH5ytgcZ&WABGRt@_><~-_$Jlpds_=v#1M& zWZq4G0+cQ@7&(Vln07O5wmhu%t$uXcUm+VD6%XYyV3i-d%LW^>OBG= zp$FBiftSj#O!ws*m^a|U+8K>E2Evl%-*%q7^km+lDA%(LwPlOJ+YBT$BQrBpWoB9T z3w$E{l8M}p5<16jq~L&iCWlDccnzI9>Y29;RUY|~$Xt0hxFct1z*~53AQJyy%3NJw z8$ego8)DM%IQni6=)$^f(uGgm4oaPTd!;+Zc)2G`Y4!fzGYksD;MkH7DsYh!5i`p* zi+CQ6!IR;5m#JKuL!ZM z@gF?!|6m?F8QU@L7k858BvF#^^AAV9$LZcE+Y#a#vxLSM2{H|4=-fnmh1o}pcAm;5 z&Z-{AwK$uKVGuj7@C(5jS}4QwBvFgGS1LH8LyT{mtow%lefv1L3&8RKzEyRwW2o!J zBL~&JFSk$Yq{&;~?3vZ|AGGY=JVAY5=!}iiLmNr0ujVg7*xc%i6A-00m>-*;q6^tI&huPcpbHsj*#yzQE0Epd{Hn^J( z8$_Kg9h~|A7O=0IFPScWza-N zuahy?h_pHCK=*AMPvr>i?C#=42couVGL{p!nXb}oe|q{U}HTb+@H-#i`M4~{p>j&Kj9!g>#)|Bi_W zM0vB|e8yl3!f<2+S~*7F=7>BwiSZOKWtCs4x1Xud0V;U*;=SLYo@(sq{Nt}%vLo8t zOFT1kYT8`CY1Yl3^!``(aJ!K6ce^ws&-Po$G)!#h3m7ma{A5kb75ptb&%kf@l%?;3 zNs)FI0O2Mf0RV`!%wqTWy`Y>|Vz7M6Rv7S_y5O%#^nZ>R#T{=k`$a!Kh3$1H=*1hd z-Vq&$%vpM89!%{6_w}ZcBEmGWfuCb0%V##%Ht)*TK~o z8yS{hHa`$GO=+_1r7EAY4&YnHWhD5$R`!#&;J3n__%fCnqps(T8 zZ#=bVE|0FK@1_=_M){vgF8cUAKcxF+n~j*xH|<(aVTz6ibK%?#ih6wiWO*a zFYZ#@z37|%-*vy=yB6?a){va!oa~+KJp1?L_Qz6<>Zb>EoLJ$L1%65hOr^94L2?i8 z&j-`D(Ooq#iy?6af6&00Gq>(S+bKoQx6C?K8>175FOj2TOQr>{gs&Z51W;3Y7v2QB zT}h$g#WhlN6OgLi{p|7_wjQIREcAD^D$6_ighs=6#SI9U12 zBz?XJcyh8dIZ=3Va2zOD#KQCPK&%xzB0k(bTr(Kv|2y~I?ZD~jP zjcVDJCy}ARC()z5B_rQQR*Jcs{68xW7mR`Nu#L0u zr*D5AGtZ-CIj|MtK2L3{k0Vrzadl&Z6UCb;9ir!)wOScELdv;7V!}p(ui7W`a1y^2d zN`MF!AY*5ab57V}sPPylJAVpen*4KA9f)pAQNyPPJdtF|8im9pTI9V*@cJKFu)^nH zi8%h`GV+SHezN~ngs`C)A0oVu?@sOQK!&-^wKD$YBK7Cz(W$d~9j2B&_S=WUFD~;v zCO#G;P2m<7t6rP)`;RWsd9-o`I8E6JVPzTy^lT=V--}&4Vw+-o(SVla(Jf!Rahysn zm^8{I&vhe;cd)!O9%EF=c7OWY8&j_ytLEDN{I_9qHIQ~s|3m?Vo7!J+L%NTAMVhYX z-ZNIBvwGUwQ0}}aaSG^CasaKa6q-pt&VZP@V*7s#x&0iS0Fr}Y@`dZ2qbn&!Q$+oP zcNeS=|L|ed^7S~(F{d$g+gxwv>g~LJY>v0%$b*CnUND1Dp%Xi`I><@sU5NJv;o#J7 zG45dUT-04q4r+&)N_E@WfI-wiccSyu+u_iJrgw8R|8WsL5#b1y>sGO`l(kTu)6wsr z1nmc5Q8W~W95j>i6K4G`G_+YKe+$dXto}wHz8C?xvy2<8Oy$o_4+IUzlA$Gnyz08jl9b@_4R*8-bIWgm_qu`tWi%qQy2*h}82=Jvos`b&*Fl_Q z;d;?&){#~O$Kag9PizGXoC7Ku+!ztcYPU3*(X%KqVk5i3UFAd}zRUiiqAqvS`O)!T zGet;}a6fZ4yJhF^Z^vZ?)i-?3f7R-1y^61 ztlDZ*lO&8Oua}IZt&D3wi4-vibF@EIf43GGaFsFJ<%LF! z%#Y{M(o!{CDB!AmH640A7&z%{0~rzQ0M%d@<-ad~{Bjy&of4S@W6$J-!{yShO(w^yF|( zBZrC2>Kd<3dL6i4$h=3z%j>Z{i2Ti>d%M9epq=Z^A;Up+)zXc&S#R}_Wo!E1FdZQC z)3f`Of1Ky^kwHy_(+yXY9XvY5L59*E^H?Mgwi9ugMrH$;ZX+FZf`k{8kfdo$1en&A zK1-j@1z1e&Uy7o_8d03~7Ut)ZoVt!%SxGnhIby1>H9O;N9q3lNu9CI#ZK)xhbjG|* zKK0|yzC-#6pV`#T^^RDxwYLB$$tjwU;DXY+N^7nfuUi6zGlzp10YZ95mN za!h8($miw%SIUdn^G7=PsJ5DnS0Kb8|AQV{js*HX7~i-o=yySgIB_v_^BN4T`fx_c z9XyT>|15tQbhtdCOs+{1b=HFSixW1Qi^ZjY3P;Hq+D)}aE5iTrtvt*_vA7?5pkz~6NC#Rp3eKP$LW zAM9{|R(fT0N_Tw(YawoqC@~VS0kg|}vxv$u2hV8^m>*UkoS%n?t^*rZkhR13}xvL4w12>SO_j z>QRs*dlYOu^;N_Iti&Ty2hYNiE$5T|Ai0hWs{(DlBQ}Srdlnk9UsMy+e0ndG)e@zm+T$v9q(%KB$u=T1j3%@3`*%lO{(VTS_j;j_Wj$^Zk!NK<=?eE<2aVG}=Bltfr&0aY*AWYSAa*}(Wcy&(83tW4T?p!qT zml$&jS%N21=7Ua(e{&y%Okt2of0RfMFA1B{~K$NsPbs8x{e|`boMtd6@ zmS-)t?(X&Z%s(x4CfyK0a0NxSwCU+-z6iR?fj{qvYY8UH zU5bDb<{=RnA=l1#a+?niZEpVlPbXved%nTjcfR3PE)^HooI%#TJ zpFq*R@=WS~n|j2A*@VEOUN!>OxkAWO=YNKh#r?05L|+iyXzHSWUPV9jW;5_n69|s} zH>4+UKFSv>=sT2@;a863L{d0nRQ%LKhc~Pll+{S3${PE-ySH%*g0%1rctL!aJ%q-9 z0S)LTkliK}&_##hQX`I@pnBCDZe~z!40lMr{A?9`u7M#<|MB0pC2$IGWa=EDI16lfvy15dx6)hWS3set4h~m7_}V zmBf*VLhd4k-WR_4a;Tm07{YfS2;Je0YC&NP)7oWlUhO!7N&WwQb%+Iz079hI9dzfF zHes-u$S+ybMPv|VX2>R*)CGrn56`eUYz{F7ONJBa0)#+<$QMk3ti#(+ z!FJzv_;Q|D?d7^rA3*ee$dw@%xxB=G`Ahio5XE+#eA5hdo!~4t6yRZzm#azh z1Nx!Y=fS-lG7qUGxq+>$Xl_*Pwzy)aUD0UyFE@7cOmNy6F9G|-5k&bv??@rwGWTIj zjPM;<1W*8L*v|XaFu(@e$Ic9yG}3ve#i5;H+bOYep_ z1^~WPy0QOJqf@b(^KBY{hf(JS96&+J3Yls2t~RHm*`mqI-@WT|LYRr=5u8N1lk9qr zKceSl3U%zfglxRumixCTaj`B!+o+IY1f3Vcy%QoO0V$FwF&Z)%WPMT!MBpPSwfS); zTj+4OOuIw^-Nyw0mRbJ@MfNc%Yd!sJQtGC$DqNM0Ys6d42|vCBL4U(7Qy7oHk4*lS{t9UXmc zXlSSz2mr`}cUz6Krmuo2e%%3ZAC;LZlPt6s1FyK+Qz9ec#m*J$-mZ6V#fcs(x_n!Y zbOzW!S%psT(bYdXVK~~oS!rXzi#aVe{NvF0Z$!hg2t?Gq|E`NoP>h(SVcrF)Jjv~S9(pAW3kkPG_pTe}q~q9p^wHWvVr))RPWe9w>Dn6NEbar+=j}f$gyoSy4F&A9`BPI+Ek4o8pmCUG` z>AvXfK5E#0r#q9}#BbGdY>^=&ZT{O3EdO6XT2#ObudA5Db9O$U(jbw8UuiJX2KfS= z&>t_y5z!jx9bK_#@9tZnb$A+uea8TPu`tg<`Q5xtauUF>W3tQkv~|3?N&}}_&s1dm z=1Js5Rl`8kc16XFzS4pNX0b?fMPy0A^|9P>PNo4@(`@t}T%CY9>_>Bgf8j3R2l-%_ zMlmWSN4uSvWy7I5a$XR_!SvFSN)!4cnmNQJ?=N$>lj>F@J@9r!c~t!7^VY+K!ae{u zNvgHtQfV{sSx4Th1)zQOJD=T~f~UVU+dtIv7wIBs7=;q`F8CN+_R)A1NNYYfcu>?&l3n|0PSDAcgEVo&6)m3BL zsh!u;*^fgb%Y2^EO;o^CwO#VRym4)%xV;~aGXUjJ7}iIliO{@RM+eh%Gp|YA!bq;? ztm47AVp-9rq(W6y<6Qn$gd|Zik|z+d zQdxChuKi%bO?|4n`GHDJ&xeB5?^r~mZMDhn0mba02*#2iF5+(4O8VHo=YL3xi0>{I z!)}}`ap~$K3#@7UVj8`YKM3K`X#nJ&F(S5FElbd|Xg@=bdAW1xK+g1AF`UQoUt+y) zqnV13$R=cc`f&JFyI95d8er3@<@oKh@ajti{}#!CKrm!$AyV0=EdbQiI*k#Z(HuYN z1HSeq->RF+j!AdRFnY+AMWI)W9lp(3|M+_1diGhg{r-o*%5k?V!q>*N%ATrhcEjl| z8v@Ajsd5JdRRT?m_e1|BS8pF#>gELY@rY9EC(NRG1pt?SC>O^`zI=JT~OblJ8sYQ{x;FjUbKZajQ zaL@)PvbrF7?0*a_aB5;vIl!6-O$l5`j(lA>yhsJLW~6jbcSW8cmNZM=nh(_fuBYd& zaYDMJ9TsqGbEBK|Niy7XsDiRR@1`v;q;S7J;V|AN$oChi>{u^(eu73f7cCDJ{O&uM z(%6m^8kaqSDUKTroVE>r^t?Vej&FId_O5EE_C;#tw4ul9@oMjy zwpV8!5bslL0Idk$lQwEOIErG!dYK-zU&CPQ7i z9;;7JJ?_h{Z@FvynUU}gW+OU(fO^~KPXy)&b620Gb=c}TUS4*!iQ__8bVQb~OSW$T z+4#1#r)=&BuZ`KK09o8eF|BKRuEIg|5h4yp6qxYJI8rwQc$#lvzs9|y<=d@$s&th0-lk%f)IQ@I;MHxDcBQWgJ3>guG z@zI6NC`ei3S{ux)NpG!(93jG#1Tx`fLo(QQ*U#6oyeCCH;IBPnWhgL|X3(3K8_JcE z=XS3OawsdJ_A|MR`lnUXk-uI?fzPyZ!LnwlYqCzVh}C%cXc`%GNE^@n7$or+`;i@t z_oBXpWA#?~R156vP6~yLPBxIzEo^k?Yv{`YTrjPd4UFy_1s)tHR3+Q~Vx+=HaGNks zGDFWAnxBmnAKOYRCMYIks5-}fG&@-_v!7GS=J%hsGMs(ultu^pt=qvTj`tX|4H{KwFp8Ty)rkOdq`#xjS)RnOrohtK z7LEGpwz~X_<;MGGr?6lgnJS5kwFw^e$Ki8fcbA`-Wa$w$eFplB_o+>e%U@In(5fL} zXClD}G>Mo)D&&4+GxriCLM!6Uk|?@@heL!fEi#DHYxrNt<&&#`$$r*EngAKFfe_?( zxqRd%BRixQB&MPylJ{hTIPab2(PLv{33xVyZTt}$Yoj!z^}P&=u~mPP?;}m1`jn7h zR~l}zdH}ARm}9|I?GAZrg(H);_1GNF)KW1AwRU)G3ojz=T64MmXI@MHUK5Mo9*+E` z0j+%&Y-h9+7qv^cKiLiyW*9yY6yy>k67#U}KH2^>_c-lS^9MX0R=U=4B%{thz&k zxuB+1X#yv=4LA^<1nwX!36DRA67AbxP62*9h9ZiK&y|PY&&kG(#!Y;>_THCNvx6qS zVZrhw_#+Y=B}45Ezu@bl;Ps{V2-btNL;1-|+{}#rh*wUvSE75+N~P?>5GLaOyX|fv z2t++iR0wCfRJqoYTdcQ}N6EL6%`^1c0HY*szsAh>!==4up^aHA_gC?xZ9NBT&iOZa z>`me#tH5-+>ys1lO=P&Srqf(T98wUE{MJCM~SGk(hChJhog+y1^M>Od| z`MJ3OY6S}F7w|#eI=!-&9J>^D;Lfp3V z_UBl9((Qxnk>zaxv8m6Khc96lDuj~jo)P*&QIIu2JrN2WR9cO1z7(%Po4Q#BCl;MF zrWTzr{V6*6GtW_Ika{W3jbQ0h;!2Oy@yUt24eb>=` z|L|T6((+f}X??VX@j&4A;w4Zps&(;t6d4`)-jPdA;5O457dY$~RYO*<+&R15n$sSM zR<(kdpR6Wqa~iP#ixFx&x5W~}ar{65m#K#DJ39HbBLqa1zoELU3WevtsER@!BfNT_G-nbqx$8+C4le2NRdg$kg`g4K~ zDuM(7rpHEdvg*Tkd)h`0%jrt9vegQEa!6YlXUHy4jX-M#4_ri|4b?eI&Ah`l50~hz zieFmY2Kpzeai?w;vfZ**20FD38ngL3_8%JdK5fsME?qk6_IR#LogP89ufjk5a)~W0 zO_uom&d2=meb7iv^`Nf>r3sQ|SZ8jir}JpS+qlQd4fp!2MSBitHU#JSabuShLP*Fz zsFuih;U0~61)@V4GPV1Pz0z;kAWFARz)cIw|L|%2gH|vt$c-YsrW)c7HeBb74W*Y6 zd0R+~qaN+qU^W@^OvPi_8wnI$DsGTtzk8nqdYdf~4M4-%oJJ56x$!qT6zUgyo7k0a~n z^uggpXXsNpUEbte+8*3wuHByBUeS^AZ=ZkJY}q31LvA4kfbYMIXFzWx=Mdjjg3M~2#vis>3xG3FnI)GUKH!(qxgzMQ}yZyA{W!7%C1^{ zD4cCO1e`T_n_)r4QkSp4FIjOb$KDWT;YX+3Ak%h==KJFL=A`24s=RVrg!A7y-5rEq zlp|}RQ5-098P1NfAegP#Eq)m`;|ksFa>e)eSrLTRoeZf_0<|?3A33pIw4Np*&6Wp` zx$|`kBt=NgKry&*O;_g1_F9>SQV3M^oo74JDmY$+3|iRr0-U`-!|T6|t)#LFmq=;G zhW8#eev+c+c;m^1JORPiQVnk6&|nMcmo8e~{_DO>R8PTmf24Ahe!pT?KT~COGc5;c zjMV$t%J6)m$zqdBr-y4EmkR`lHOCK!;x|z(!x_XC>WSFXh>uv#_zfS|BIb-teScWi zSXoVA5-krAGFcuoeEi9!-wPsJC#NC(gS4dZ>J=u7zu-ua_gsxdwSm4~15c({sSpBM zp1{#Q;@*9ddfsc%YVx1KVdbCAw2#F9>`H{yILRmNw!WpVE8!`udjmzTOEC%`2=dnLnF8e?FVm*q<#=kFLh-VBJh(PAZIt+phUB|?m}fmNTmPcb(AOG zaj6hmyM-!m8cr$3Ycf2u6_qA!K$Wgf`z?EmWAg<+FYk>F)i}D*{8^EQ=ha6X&^fQp zBuV01b!7eY=1Dn(`R>LY^fD53urgJXjX+?ZaJU6O>x-v}FK}X5L>xEd6@|2GZ z3W1UL?%VBe#l@K?`qbkGhsr}P4N^%IF9OuXh{yV7lpb>bc3udbcA^Gl$z@20;<+vNk*?E>ih~{13eRE?}prioi z`vSwKH^uo_!ZRN2rt+L%vhyW2j6w(`=;ms>5KOy51R4mg>gdR+4C_aClYnfris6n$ zM9KTu3+GOGxljU+viPeEwQ)i}pYGWchn`JN#faV^-Nt9k*ds>PLR(NtIxvaK_=R7E8?1<-&D5#Wl*rPO$v3&H4n0f$hPV@ooghk??&i)m@xlU7rtiKmV-hDL%QMn+xM)NV&(iGg-Tk#ZnTZ`JjQL9#T3 z;ZG#m!25pPybSt3XfkQl*sF6U2D6l4J2i+!usw!+-+@pHxF9p~>U%laN3W-~VS=*q&lc)N?N}ii>WkG?+CPpNQi-xCG+lJZ#mElYcw7Ho<4;y8G!rm=Ft>2cb zBGP0Mv&j!* zRw@gL_>|r^&!GE-`<&g|H-EV}5l~<0n{jb)9D(J7e*|;eTT$SHK8U@zaPZ;vQObGC zsABncW@qTVuAI6@@~lM)Qu;dBAV_^dEEBh)+pF^1?T_Dal%iTQBLN}zFXHex>$VfF zXn3^cFE&(KR%i%x2PtI!jmsQ;j{myr2Os4Hchnpryi4l$2ed8b{x;H~MSp2Z(UMuH1^96zD?lDMk5iSyQv{jiH7M5qcB)4fm$L z+*k-g>x~?~`^B~l*9fsJB7--RIAA%CnI0cb&!PY==YKVuql7(z{3SpkOS^2S=ff+r z&wJl^>nPK0%rBKm@=0Uj1pPWnOK-=qVkDlIWdoShI~;<2*IPsKF`2nn|Ewe;qSv#| zeYv{8BBx+vPrC#M=Pk(prM5aH#2qwuOa3E@#rWK)^)#I=`sxl#!bgf^7D+~&pM8?8 z7Y+4e30MFME2Ba~_N9St(aZ~r<#mz2fYa}J{UNNIm#I_N?`|!+S$J8K5l{J7;bs~) z!rq3?_(%uGTj-Gy0a}KiU-D^1!`XYC8c!>y-szIokJnh$+76tfgeWHEKR}A^ z=ppSBV%!u6k!e?O-E15KMFKMP9TG*GPtV6np?DT#!Ud{?jl>oCax%W3k!l&T`lenn zA1g4+TV@e~-pPbpNinOaE%M=$b_8NM|TAszj1h%g-=Y?-)6jEplFxsnzpKu-Cur zZSa@L`78*jMY%d!!6!k7B{e`Gl=rV!$FX#@Sj_oK+Rc+MJoLwWFpPYA2{=`zSFB$3Ez%el!GQJ zxij}Wo+i~-cX_$si640~Q7XZ1D6oDr`?SvCe(BAfv-VRl;{W#KCfNqPi?f5N6fuS9JFv_YUursWDxJK*0BC&g~W&gqCk z&)<)I7N#D}W{BGAbHPDut^Y2Dwb>zt_{t9w?ORXVwYCJJ#~7h^Aa#dz*=P#WO7%7- znKvBGPi1erY1Wc4(7%IN*vDxMttSz*{&josubLo@v|!));f`cQ4n(tnl&`jK?sNq- zXTcSVO^7ERHL3BsmGU9M5sI%6XfyG9xMS?PC@|2WT5*a=sV(tn>UPorur1@$!gTdl zh9cIBKZ3k!($hbkDp0^);bkU1qolA%4(Xd$@>E207y0#dUe7vB6zr^m`f65alqzSMpe?hhE8I{;jVFUHH z;f^u>YYaa@-M87Y(W~_yicJUgmx^e#gIfkNd^c}5PT6smH|hc_U?eJBXRHvVNoAzO z9(du!`;rq<&qH8tox)uMi>DwueH$VS-R-civ}GZ;@l5AC~z4=&=k-7V|FItQS_A% z2!rlyX^bXM4`O#e=DN7A%dVGnuN`JW=dIFqf+CXU8?PK&U{V>v`bXO7*^$Pd@!%uLHsY+i>&(x}cvUdhUt#+VmG%E1TOv2-U=i8ymM+D8M zp4u+_?rQ?YNyoHyG-|&4EQ5s`5&yz+o+~9Mc>?%5JDom7m1O)E;q)w|ijtSgnd~R2 zS}z%u>H%)(X#!GFTUUwJG>=je{r~A_58$PHztO#+{JGqqO7jM7Jp6^cLvpz;W`2kw zjb;JtQ$EUvaz{;R)>16Kkp@ym^J`O-`kR#=LGnS!5c{I}n>SX&{LskQ*k?Gw-mJUJ z30G@JKoj-Qhcn^H3A&Tzd;d}Dn}UnSr(enc+kvszpEd8TXK?N9G}jBqiJD$Ol#&Xe zpcJ&M*Y+}HZg6@fEfAWVfxejE?7BJ)bZnUze|x*$vU3GU7PN(N`YyVd ziH|90m6ELgq^d?Ta_d#-Co00*-rzgV&(Ht8{*FYal*AssV8Bfw@&092m(TQdG2K-x zJxgJ?Y-zExJQD-MG86saASo$nOOqV|t&-MH!dG;2OPxW_S>|8>ijr%Z8OAX+_wk*@ zWeG4u*5Y*eP>z8n=f%{!)Ab%#5Ux7_3OX^?*S8u_HtTfpp{x#yeBta190MT{ zERwTQcx3G2{JcX|MTH+w1F&0$mI5FRIkBLp_dN%%$b~pLIhU&hFcRs@WMoQPkTo3! z{%j2-3nhA><$RHX@ll?2O#W&LlKrRWT@e6?GL8e1_v9<^ z1mH?`5l<<~2#oXcF%+$=AArIPxQ4>V&$5dCJsW6|2ABG{%d0|@=*zH_>o-*Y00|+b|7T(TtUBh za2OEMwS|hu4pGt)mK=&gXSPQpOnd)udL~`+!k9F0Xp`0SUgE3D{n}R4BsngX7z7x- zC&Z$McNjAdaDiM*s&GpHo%fU^p|a|(J63(|5m?J)_!hZySDxd>`Zq5n*?q_TFhQsW zIJQ5JUA}^4?MiUyIU}uP_yg#iK5dZdR>%8?7G@RpY{)_Pl~|Sf{mQ0*r}69t3B?ey zHX&CED2+=ahcvy<>vP!02suN;1z8F(Ef8RFJ;f&g#n0m(eNOYpZRdO`QoW1 z1p&VcQC!H65DSm3{=`H7n`2~bnqnB$mtXh5-3}|_{1r?P{9^?Cg_gVf?{K4Y{I68= zK#;E%F8G`?Z$qY7sYLDh&T*{^EK5sASI`$rp2ls_9UiWf%-Eg$f>G^rI(Oj1Z8)IJ zsDi`cB*bK73*Z}m&lBfeFn*p+Uok!XXD&Bb1x<{lr6mOftoXAVt&5{K1E%txK?a`d zo=Z9;yut*`(0s7{_lSfeR2u9CXw0dG%(1)^Avjj5$c?}@3PM>e{t)KtqR$x$X8*9+?hIELX z&wX2k4=@-E3n%_{$FP*HagMOp`(e|JXM|_Z`~fo@Pg=)VWW(Vj`^2}!4*Co0UjQL% zW#wb$g;+(z$0i;hsbE#(wMGV1aCa*HGRF8gZ#R5lNQ8EE!BSHXsE)x3>z%1p?c-dvxV4s))$ZMW} zps)?tU@~!_zr-vAP*DxCjy%kiBfv)R(dhsm@2og6Za)`H;F|k|@jKyH*vgANW@2&t z&`{jRpMWe&@SV0sfI5QX3^{FZx;X$L!Y{sc<|5hkWSmJh&t%U{$= z9vvruH7H8docjl`wpO5z&n@izZ1ozWqE^t@;NXVi+iung!~#r-f0wzAsm^f4T$Un7 zrN-0N&tJbX@tM@pD=NOG`Q02}bu5~@EEJFQQOnE8QCj|u$erU+(FpJV#P*t^X3Z3p z7wC`SJ)D5>BcTy#Pg3BX*sRyT>Dosz_goD9F#E##4VkEvVV(5{@L?5z@>{PSO654} zKUpJTeog`v6arJnAg`c+8k+d;`eMQMrP;a;EB{h)NAiL31VAmR2&w1i%Qsr^?v1bK z23cXyLeW@LO~b=fCB8**uZuHsa1gRMq#1no;;?P8jD9I0fwQ**&D>5?^=m~WmKloM ze7Nt9z+_)U6HT=QKwo2vKhEP~z4+U>)G~M(eD5yz7=9@Ji!fSAf1#H|#*|g<7Cn(; z6Nl}Dl;ZbXwQgVeQXUVw;bQ* zO6T(i++BJteSNJyRiIG1x6t@;Z>6353okhKaD;hG3smC~wwl>2MLVv4EWC$iPV;cv z{^pGt28#T@)rXHZFCb%z=6fftx{ll3eHXVjOyn=ko&{nK4J{%W;zWS6{4`%!0pnH) zJ>EqSx&i1yiu={RH(BV|N29NY3o8X#SXht}rZDUFb^%=)PB;jmq&BwfIYrCd+HUG! z2w)1J!OU~y4Bz*KUS?e%Jx@^K`hjVB4XOY-;dMxQD24eKYhYP6P!n}C>jXfnMC@t| ztMCPa&H`o;hr2?+ln@n)Fo$RxBb8y}RHrvC^*Z(3?~?E)ak91!>CVUy5`*xo-Lz6n zZsA8zW2RoY%$e|hOaovNi8a0?4GWf-ptWOnVhYiOuSv#`@@*8ehWAg9`;KKr^WIAAsIQ2dLLj4T)USqrV^^T zbWj6PU67v1p2U*|u^8iTZ+$pn){}4V1Qp_`EG#Y1|Ac60g7Em)*TdG|;^Rpx+)|8= z`NX0sBWX=|^u8PGh7Z7P$g<|y@xYW}m9)Nd@=4JK?F4TaTKIj>3%4AmifhfRXGsVR zd}E)}JgSPfzxw@)8mtzn73C%LPG~}5L9?w_QMneCYTzbI?vR=-3o>v*5;)4#6b%^( zBF$&57)~nUfo3}%+1(>XrF_9>+T+wNWhtysLl~0CF@;8hkT~)#)fSV8o%^2;EZB@n z+|L7}Ym2|S}9H4P*)5nIOS3>TU-@i`oaDu{mE4n}h-sKS?-S#sb4^5;!%WciQAwYyXQCVHpo z{dlu4Z7fpp5hE7O^xsDjZw!)KO=1+FuzEc>)*0eg^#b?d_#@BpGr^hsm3h$ zK_vgg5~Q-p1cGNE;r-}Gj$g`+JfR50H@Et*T}Yd1|9P^x3{69IV_Wap_O*)#aI9rm zI?AqahtiO&$Uw|yEKJO-k*F*OxKsG;xSg$S4bKQE2QK^pLZ%GmzA`tNa40Fm{=!3J zfDih7RkyvuJNkwv`_xo2CK}j!7?6X=vdkOG;D6}WE|4}$YGLGjwwKREw8N*%JKpyr zVdF@&d!2{bzA>M6JfrT_pOn}j|md9|h-rb=0c(vT%QvKUP_#=nPurT3&%9A9HN->r1VE_jaY9dyBmjNJ^;MNkpi$<}!pzi;|BFLB^bk65MapF8DJc zu$n}Q2$!!CJDt}w%5*xqNOaoI85kwHlkqA#96FbrYUtIPtOK&GQHXh)anMQo=CXai z7B9^9GMfZS7EOc>g0Tb_8bKGTb=3Ug<9G;Z$ZNAaxOiAM+B`j@%34uUq_8G3-J4li zMFMr%l>0OjpHgqYz#qX+R1FTlw9=|VEc-Y?)@nKgQUvV!t0AQ@Q}>(V=eQi>3&wE= zO5J&nFlfWh;=yVx)#@o-z|6x1`HxwDMJys&xi8>n{? zJDY~t$4JG2-}eFxljkiBnHl29c$q12iHz;_1lYT`hIp}cmrVwKk-L<$B1)g1s7+?w zypdJe9G}%2^crUJourH$Ne72+%Ny zA6A_xOnbe`)L+ENgT9=-YJz#U)$v76%+657FpdTZ+?{V1+i$T+wq)nhp>G&NmC*bBvE-4*}=F_7sb!3zF5u&b8P%bxt>< zR`*PDveTTG@TG5h5*MS%-4|`mtEEf%l8AomodSQo*|+`94_!62w~o?A-E#O(IHJjC ziappLqh76ODPLCZ9wetFCJ7kf6%^nu_dAl_B|PZK;S>tP$Scw(R0fUn=pn)m^E$K{ z9U#0u=+F8~6{xb>7)cchyTL>OYHWra+Dzy;=_H?=b{~O3%cq%`RLW!M##OS)km zC5{HIFZOD!$@TZ7_s|WJQHi$EQ(qj2%^XUz)%V%H`@@~h&*T#CT)N3lS`~-^vv}W> z8)H86GdiYc@lM>u1&MDL_d24T>aow>+xL_o+o+z!9IllR5>2xFsZPkSym}*$XlckHtK84C7=|IZy9ivpJGY^Yx z0>HF@!D6s6XEyuricy|ghZy{)2e~%&m;S9)F2-g= zb;-EzVPjEchkqZ*HKd$`$Gaq?#PfG?v5`S5aSA+6e^S!3M^cq6!-VI4nH~Nl^E9&l z0x}x8FMXT&ZojgTODlEvV zo`|rF_fn_N)J+<&trAP3X~0Y7(CAp6?mAnJWyPEBJfy#q=*ACUO6Pc&RUi=dn;bHK zqJQfbjha}L7wEWO{Jn=##%gO~=a=foK)byTMUY=g^nRjK{6nq8vv6*5er)-hr8H3f zVq}YauUBv>_=llp^5StKQoaQ-UPjZ#Q)hWv<|olaZFy5I5X?bAmZeswnh9Fh(BIPW z?tXMiTUlj?6-4{&6Z~aidT^<8`kIeps3r2~XDIXPN&1N&;L3L*f-NI3ix1a2=f??O zqN-0kh+D4It)HL#psc(0@+WwLdf@p5WF-531KD*thS{pWG85=1;&qsg89Yelgd;T` zfML_7y_1<&@0L`94%@|gnp*TCjDzPT82O2{6|7I(jm>_wq&j*x4vZ$J@cO+~^@nnw zHT4RcHnQ!%J4U$IAueYdyb&dOdHu2tnCZ-A{>9Nvr?<2I^#|29qQ{cCNVHm{opFj} zuWCJE?O;u_-*}on^M%FBBrq(M?^IIOM2dA^nYKwkQ^gJRJ5AxU^qN<`G#AB;3U%t%q>&I=Myn&zwH(!$*!p7n+(P$#uwVlXqU08jo8`C4|4wPx;)Dr} zfTrjPja#?A#tlxSL)w+o`To+SOH5fTW|8W0>EErgh|uG4?o;UWwmwS^JEWg z^Fba6@r05KAtDMEY+#3?`6FV#B)>`iHF-+@xAJdE_`T@Qtgf!!-L09`Wo7fCUAuO% zqLtvg_%4o!)C*SB%xVC4=umCq%<6|8dg%0n4?Y;Ln9*yd<6WE7s3OfH{=8~`Zgl`r zuwVl_Cf1+MXx;aJBELocH}Zc}RP<8PQ#_=r49ZhHh{X2nsZM%|2X#kn6DCYJVJl|N z()|%zF;kt<*(4C@^Gwi)f(7em%QdgsuO)H?YxzIO?<_4Xz34sH3{3{%dZ3?chCrS4 zTr+BiK2}P0TKZM25BYs&u23y_bsB)|*=9kk4i;<>Yl&RJ+8+giP9z_5=bhh9Cp_tu zXWj#i0ejNxh7Ie{lhCXDC%po+*8A_j|0HSIBab|iP0M0^$e#Rqt@EBoPaA~nX|Dl9 z!GaB%VD0Nf$?2K=E&<{P3D3S~<%-m*zn^^%gmOOnUOHBnQpl4ka6Dnl_D&&VJQU4; z(4vmh3WWGKJn1!9u)zb7rDy0wpUsn=-A;NY|BfPy=8YRSqNmuhIWUUBv~Xd$E$b%% zi8Kq)`0l|6pXBO60FEcSl8z}7iXlXLhv%8iP?@|BzJ)ymcfx_L>7fDw@qqA}h18XK|$ zc#uZl9Ww|~Xlbit=lp2M84>GGW+WOq$YZB*K{bX@ z08y}DePp^JO623@X?b;$tGI9vu7?=zQQ_boJyPet1d<=?=H4sa$iEO`? z=nw4JvE$&jZB?~I4Qtj^98stHQQd$SskjD4L`I0kL`DDt?FML6R>50VY;&g!^#v zKc}HKj;hr8&!daz{0DI8Q5Jpith6{1TB#>~y!z@YW>#NWv10j^ii*{pm6es9RaI3T zJ9hkM$J=ke)vh1hQehHuv z@(OuW$OR#D>Sm~7=DA)(HGqU0of{tjDC#&sr88C0T9w+#%`ZJ>D^Ggmp^2nKOhTj< z2+^9T2w3nhx(h%;Phy!rZiJmM;eNnGs)e|X$B~oLDKsLD{g@GL+_(YVM`;)Usz;0_ z6|>6ec-GLiZQC@6Y#9)us4)g&Rn_ZUAJ;;p#&hviXLN`qej+LKr1%&YFJ6p`CIw>t ze)}!>ZF=MZM8Sf|vJp_L-4JKap6&SQ{-3q%*tx4|`y2mJpUgL^FK5cj7dO8+uk6%}S+mbfo0dNF+;h*Ln>lOt zhr0QJL6=gW4%HX|0icCe1UL*xKmf1-CE!Lcm{zFX#7V9A7hoVlQzgwfS|A1x?Kr%q znKdq0RK!F3N0-vN3xW{uDFbK`=+3GE_KZ@w)8*w0nxz3XD`GmSDDH&PuO^iqG)mNN z5X2f(I2pUnU*B5~APV-0w=9Grxo-H(M{Czt9$vC^*@0qx(UO<(_ZBW*`rd+tOWrG6 zu;}26^XAvgE}dIDedg>#Q`0l*o}E19$Wu>0d+f2tpE&;TBa`YMd}w0hv(HUFr?w41 zbY=Yb@h7$FbxEn($ASX&JVZ1Ai713f3tflT00l6Sz5yE?@tHYC%$pXtP6<9|fe-tz zEs+-KUmOJqcvNZsLVD1t@#Dv3I3L$R@uF2xTiuX5jWMeYnMfULLvE96(1?Ns>p6tR z*iBG(5fRamMK}p= zA~f((T6PqeF&r%h5G4bG$`z$>=f;j5n*l-^;(rndaUHfw2839yH-TEwk-t&~fMOR! z0*HbI>jP1`wYLy5Cn~~;ih$AFvhtcaFP7ELm^J56diu=6&reAodFI*4!07!+k3N3< zh3PZSP}qn#%t{q7Qj`LaGU|F4kfyY$R_9}MBnihrNxf;+q;7F5hJ<6%F&t2_0tR@{ zc1XYIIV0s_MT~K=9nzG}j~)9j8O_Vi06muJ>8@8%BFAR=KOXhLDjCl&v*miXZpc>3 zEE)H{ZX6}^u+yoQ^2ZND(Tt*GCrv!)(Gy|xEv`u;q zPu3t>q9=?ZL?ETqYAYS{94lJAdNsl}^R7Fz{C-J2V`qR5#{+UYJ`g%VXFWsD82N!1 z4usULPX#p)@>8;;XefXvSg<|-QAQrU^>%e8AB2F6b(-gMAhl`B)?)&arD%fDLcwUk zHN9w>^rFenUxm@UviYYJ;Q)|M(jqh(;6QZb00{>ocpNEd+w&?iY?Zj&Dy=7W0i>1B zw3L5AP&>!Au5%oY$8kA6?Hlxwp$Tbup7f8ZZWlsUGgRwA$oxP6QLtcrvs549`5;tN zd+0(T0QnJ;!N}K(To@4L!okkD~}h=IxARKQOfd`S6- zfUW}QY7_+cC|E?8-nZ|ac$uDb%!QDv3(?BqrDOp_!GiSxh*GvnmM;==Aw$i~em(tk zlXRC=N|Ep?rA9}zWbVVLV(t1mTSZHP5oy}erLSbDF;Z&Ofk3R{$IGhs>BJ>AcWPBE z>rGdhnv%TH^~7!1SI59PCLSMOD{q}DP`u2rGxR1jrX&cV3rUMQAN7s#x7G&`1q)Ur zh|q-Gbc~g#brOw%Pm)vr1E_5K2I)qCC>M;-jFzulbwV{ktZKEhN~Nmj4k9G#g8JKa z9#-Hw=pkbY09Du{Qn}ts2MZty7OW>Aa#qKPSO85?PAi4&2h7lld>A2Mv$Rk3wNfOO z+}o+wQPkCLAi}tDd2MDlGiEouZO49Q&OUr@`}iQD9;uyFjG7~Q(45sVAY|gSfyh0F zLB>62uJ@cjfGAk7o`A@SY%Cfo%7K>c*L>o!y#c0g1#giI@PLF89n+iDthM)ajo z4NW&Yx{PkrHUp7fGr`ebQSU+I_oP{bM3bz#*m>w;o1zhb zU?A!*2L`lzG+7#kAk8%}Il!VIK%`3R`YgQ6gGLlA*dT()mg|f1y=t$p{iwLk*C4B| z{RT#9NU&}rB~oK+3?dvWkZN(0=S$t}wf{Y>AB_OW(lD-pF(v@WiWLEd2cnRg1q(LN zAR?MEpinzhEQp9M+q()g%juv?9lJ#x|mn0Rj=nXaGQ#hS^LZr%*9~C|Ix| z03yGbk;27-5CT~4KFt2Hs3^&qWds12a0n2j(+miR)M(ql`78qB8svPR4@5yD3KncI zDyudAwacj`LjUO&gjj9kbv_U=)sPXZL?eJ`AT%O`XiLFxt^qFuB3BUSwTb1nU5@vN zFb#*0zNZ`z5uc7)^g8g56XN-bC37 z&jiRCMm19Dzu$Dd7g@RXe|(p%|##E zg+GBM{}?36F^KkXH5hR+5{QOFs02y!uH^=;+BS`aiv*HDw7z*mhED#6Wx_>UGD&JC zBWr#&AaO$CLH1T=-#)YO>i(5;zRj|&dCLsK2k-En%xQcQge1@U0(O?`P6T0hx&QzG M07*qoM6N<$f~m?OYybcN diff --git a/client/iOS/Resources/icon_accessory_star_off.png b/client/iOS/Resources/icon_accessory_star_off.png index 4f246793e7955e2f819b918fc80fa53d709381f8..b0dce0e66fa089cf89ea4ab6d7f2953c25d4eb70 100644 GIT binary patch delta 527 zcmV+q0`UFo1*Zg%BYy$zNkl?#yzQ#``tpu*0S* z^K+76e&p?&c6PX0+R}`2oGDIB7git-t5F8;{zDfo-ttY%jdP49hdISw?aKA~Q7y3WK5|`l<6o5SyjkisiLh z_7Qv7`@;tu=IH?`w`Nzvkd$ahi8(Y_aN^HP^J^rpac@I{d&(m<# zXiRx7V+U4#|4kQ)apYis_l)-vEOB5byjbD%PDHLkV1liK`vm|1 literal 747 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM0wlfaz7_*1&H|4}5bXiRZYQ(tK!Rljj_E)e zteT<1XX!E^hbhV1-G$+Qd;gjJ3=E8)JzX3_DsCN}6zdV3C~^G%R#UeGR;O)8gid+w zx#*$KcCSR(HI~E4QCv_p#3Qye&@;{@pea_xRU@TCRL_3dT3My%Go55?quoxF%!n>) z3*3B#M?a>gp5O4dO|!H4-?}|}Y(CU{_+~<&!xwMOOPL|uQ(R=WT_o~GN74>{`Q0^7 zx1|>qHa+$!Xfb|sdENarw&7(0y8}7c!!%ZgC_PNkvGsMHv*?t>W22|6_b*NO-1gYp z`Lg(|#PcE|A#6Pw@fT0~T|6G>cEoU%P-&;u;+|#MvlE@!(*G5z8oKpf3gzimY%`vy zmtL}S8L#z6Zp(GE?#-MYV)>=rG3!cjsP2uaFaK{&xxBK^rNjSc&tGk?FLR<^1!#9| z;Hsba*hV&j>jS6gFIU$uLC+=a%RF{TX0P7*CHdQ?_wD?ahdwt?$~(93SEA=j5!*M9 zly}M(H1r0aXth+YZmaa4RC8s?X06okFVm09d`pSk<-OiiYtkCM`Mhu6=lx!>IbMxr z|01qsIoXx#iw#N*H|>;5z0sx2zUOZDCwZOqr-Lpem>i3}9?0U zw`!WbX_c0)i_TQ%3gi{vlwf?fe)pN*<@*@>yX8U}fi7AzZCsS>JiWody{an^LB{Ts5wq-6s diff --git a/client/iOS/Resources/icon_accessory_star_on.png b/client/iOS/Resources/icon_accessory_star_on.png index 3aaf09d34ef83c998266754ad8da96be54ebc230..b09dec7aeaf735f601fac6569e17e2d942507104 100644 GIT binary patch delta 910 zcmV;919AMQ2c!p(B!6p3L_t(|0p-*UNE>$;2JqX=Bna&amidKSVY(?6&@o2|6v_ZZ zsen*$%(617u!-0Wa7^7S+qzQSEV2*D8fH34TTIm$8+WTy7t<}S>V%{;i%Aokk2WST zMx%8!jeYhM0!%2|4#EKT!Vk#7`@Hw&e|N(Fu6EP2^dzOcWPb*O;mc4cbT=y;PrZgSy@>nDN8RXC@A;&eCu}|gZN2v z2P0nVDHCHS8HGCPi&+?XixIj!$}f zd$kOUE!!_6$bay}uL2x~Ls(f^!RYAdOlN237fnq~C(6po4zuqi+DGZMvr0-z4vM09 zbAEn4YDeXW|Bl2?5SN z0as7SaJ9P#V(($tCeC1KX$kD#=0=YOq|uI&^Z9<0Tlj(=3-Ch`aD{>6G(krCg=WY^ zQ}iQ=q~p-vdtk9x?l&|v^fT*4dTi~=$;oNZ>-BfS-W$LOhYTe{jC3u@lpL(5i!vlE zpTlak#(!&SYE;Z9dfeUb7?Pcx{no(1fG>303Jh?_B?gVrWYRbdQJ)NP+eIuaEX1p; ztJUl+q$lVfYnNOuf177=Z`0g^#5W8Zq${LP(g@f*R|KciiN?mp@7eRhzY9-RMn=Yw zxw*OR)xjn_{EC6!k&2Xbp1u_j`A~r0?LbRQ%YU?_@JCfqQE`%w9U>ne06t=1JH5XL zIJF;mPvA9f@Q#4M^>K7}ci&=5rlbM&_4PWp+l}b!41Gh+J3fJ+dl7s`5I1RoclYDL zQEoA!1kY=gEiX&@xV5*pI~NxhdBC3`Y`+1s*?hmbxp}U#vU0e;zkkKUL5Z>R_`@v1 zXn!<5U{8&d0ne*cs^!_)Sxiq)$J^T4Zsz9Zp5*m1dX8SJs;U|p9v+VI%?F{py!-=6 z1G>7py!>z7d@s)M_bc@DUk);z^67Y8UEP#Ur(0Dh6rV~NkVdbPg7*B)XIW1B=m_PI kq)L2_9DN00000Ne4wvM6N<$g1SM)o&W#< delta 914 zcmV;D18w}I2dD>-B!6#7L_t(|+U1m8OjCCl#?PdZhQw)t8DC+V3>^e7z>LK-F)_O# z5V;^R!HCf;gTxVn+Xc&jiJ7`Z*f3-|(%FnE>0GEtDONieuu``&0ZCe8Ev*#$p`|UQ zP?W`5eD+9cqFFSagk=|dlix*8^8TLl_C5c<@V~1!$=hVjzkeZ@=ybZ%fk5DXMn=Y# zRk!Elarl#+ztE&&^=jZQc-*&Q@B>uyko142+ zuh-uiA0H1)O-(I(yNC)t#kM@L(0{k?fd1=^7&#?iv6u4S2`7jR z2ynCu=sO`nUrRRhZM$I|IEm@$X|R8p6Fm(`ATN}Z-}i@{!sBY>igPEX*j1?XhR&lFuDgK;Qd32v7lYQ2Do ziHT@QNr{rZTgV&2Yt%ZaRQfS@^6-JF6|o;E>mrwlHjYZbgR|LiI2@>|s=CUat#SG5 zRZ>#Yp0Tm9<+-kEJUK(*d7>b4a*q5cAaq24*MDh8ZEfxFid;+;78V}mXNS*YMF8CV+Z8u>unI6^D)QlAs6?J!Xbj-RK6uWW` ze}9?uFc=Jv*;6Ve;2niRF*7#l=0{-Q5wMd=L~A z6nr5npt-r(&HvWPb8(Wt-zV#zTVx{1Bp;QRmk(()nmL(F_LZ1`1o8oqkqxi7mZfAf o*+bHZs7erV-%D1e`!DKmbF(H>ZPGUjKNdV{!KekJ7K~azYYWP87>Wy@1!75BSwfcK z#9Bg;;e;%qis85{p{n8Nme9m-7>K8(;bZ{-ATDS}L(f!q00000NkvXXu0mjf-B%@? diff --git a/client/iOS/Resources/icon_key_arrow_left.png b/client/iOS/Resources/icon_key_arrow_left.png index 7cd6ab73048c54ae16337a39d69c08c804c9bdbc..7cd1ed3d4b351cb43c9e44629a2eb2ad319f0e8f 100644 GIT binary patch delta 95 zcmb=go1hZq>gnPbQo)!kA(SBEap~5F&0Ea=*staN@1K46|K%eEUIvbbGgBRHp0Ww^ zT`J0objbFW@Yvkqwm{}4Q&jXJhiLCM6A4y^cM~$)wcOs$V*mnAS3j3^P6GV=ajF~I#B`$SGInMH zpW{26Nb^Dex?BROLAA wxuK=#aHeR?j5Z-gH(iOX30Il|x!rge7)l;zxF0PR3}OHRPgg&ebxsLQ01wL`Bme*a delta 95 zcmb=ao1hZq>gnPb;?bF$Ad#XV*P)u3T45>hpZ(G1EgM+UEO>&i3Y8pQnZ>Dhcx4i& z;$h8AEfI%TipAXES*j(mHQ`EAAh(;Y#3crXlE)eDb)}b08Gyjk)z4*}Q$iB}#>gX- diff --git a/client/iOS/Resources/icon_key_backspace.png b/client/iOS/Resources/icon_key_backspace.png index 552a0a0d9c776379034fea38c2902f383cb67e5f..730d3e16b1690c67259d0eb344ce5d2296e447c8 100644 GIT binary patch delta 415 zcmV;Q0bu^T1Gxi`B!7TOL_t(|0matKO2beP24ItrG?xM`ZJ^gx@7eeq0kOJv@7lFe z6qTwQA3{I`1Zi!tXa%3drx4JM@gEql2$Lh6LI!>~v^jopnn|*us=;93=kxh_p-@P4 zQ?J)QQn7Bg>!V(=OpqyZtC4p?MXcR!6ZXv5A);G1BG_uR2!C5(`HhV990iE~%mens z*s%tn2IDw(gCLl58&6X<@6~Fx@o+da{(jNx^?c9s?y%fU1+h6-E|+JFogreO1NVku zB#lPnYW4Fdil{qF(=?N6wR#|ej6E`TuIf#{-*?c738R;cxxiisYc`ulVoQNJz$T21 z5d%?Hr_;#+oqrMvXdhWHHlkLGU>JrEgyG<8852jx#qTvEl>SDkR5}r`Ul3=h4bpzj zuJS5H?;W68Ev-~47d*FL$c}O>fYRo*Tr`Ysr-Cc!zs90iEQ(`c+x8O6Ph=|<v79x)@$DegIJi$v6I!UseDB002ov JPDHLkV1j0%!5shq delta 418 zcmV;T0bTyN1H1!}B!7cRL_t(|+SS(0O2a@D1z?lVHc7ikNefMzuKJf`<8u_m=-Rz& z*Gf@Ts&0G;7ve&Y)|M8n;FI_iE_7o&7cN+YnGvQ?95^tvnS9gR+$0;S5y!DxDwU?5 z=ViKSG#c+xtlRCn7%!M+$QZfR$Qz+Ttle%C_QcpBqC0McV1KLCB5aQ77c$U5)F6JD z18m0Fu?C<9`~ALMEEcC+##71Sy?VVqOw-i({Y9_Wa~;RI!*o*$VsW8TsZ1C3{kIWexP^pDrwOV~33=>%PlbdK(?eH zH!bZ_+4$(Op{Vfzx|U^e<7?d7{^iYkEsv*lJb=}&7#le7bycqz-%$t2H#bqQo&W#< M07*qoM6N<$g5m$in*aa+ diff --git a/client/iOS/Resources/icon_key_menu.png b/client/iOS/Resources/icon_key_menu.png index 9b9dd3f999937bcc30d44a67dddb7a5671945742..61e12ed2a3a44a75f45ae36318987fc534995d51 100644 GIT binary patch delta 427 zcmV;c0aX6R1H}W7B!7%aL_t(|+QrquOTthb2XGluxCFXdUM2$}pi6{-pg>2F=$0j3 z{0r(XLYD=d0t$k>1VJZr*I)<{1f4?Y!=s|Z}f*?5UcAL`aH1+Q)IPG0@r|UX7jzfx~ zkl*ir#@Gt4U<0xo60lrqnnr_Et5phxLZ2Al{j1;th+_{}4ojsHxzlR3D49&MIj1oH zTfrhMbBMr_FMkvYG#uNuDHe;dbv3W=U^AD?kvp|ojpFe*^>^En*8(|_NDxcCUMIsa zs8Xr0^`1Z&^$xOd#<318bK!8fS1cAO5D0WqsT8rWyTZBsQ3XfP;MjseUcrPQ+^VWd zrfCw2EgVOu@ijeneJY}nNaWkHEGn1FY~6=h{4$kHCL}|$EZb}w&*G=Q05`A-z8{!) VTy*@pEinK9002ovPDHLkV1k!~!QcP@ delta 428 zcmV;d0aO0P1I7c8B!7)bL_t(|+QrquOTthb2XGluxIA>Vyi5i{hb|EYf*v}GM7J#Q z;$KjA5xOks)S)2AOAvH2cMXORLC`6LPL7;VA|>ol3>vy$-vi z460NrY`rHCM!kb9oN=rJ%Un1d?iGtg3Iqb3R4PR*?5=Qbe^kK{G&r_kkXJAv2)C-L zl4+WRVhhL7X?#u3U7w0*Bog_yEQ`wJGF$gy7Qaj-lO@TJEXy|A#QEVWTY|i~k{>*6m_2A=&PdLB&qy}hZeh*$ z-n8bB6W%qNFZ;ttF570nihrwkzSVY@f21IcFsPv+2qGe!qQ$8K1Dza{@DdqBVMEapLC`IUYLJYtXE?+CB>Z0P51#G3 z?>n5s+3}xtF~Dt_q{?p|a)h09+)+}&Jv#1Y;J`eWIl*=vK!15FfdfN)ATh@k`YH{k zdBIz(8(j82Z5> z)=33TvIYY~pEyqnI8N3~VCVr)NChqSkhR7~?$V%-Q69AoUguZfzzWLirN-839AlO# yQouzz>M-96%fHb>$92n*{}p(Wvqf@OsH5C(NA f7SdLvQ}+KKCkl2{o#=hqZ!l2JSP>XJ?T1 gmYc9zS3>dse8E*F#ALl?@E=4~-az4_ELnX$-L6yl=Ce z{U!UF`$Y--qV54p2-pe;G0ZMeB>To@P=0v=GGOfB6NCx`^hzLDcEJBOU|E5+$(k6@ z^`d13ggq)cJVHP&Z?wI0*p)Nxu;VWp&iKiNlYeEVT>AJ({oC>a#Vd9opE&p)00000 LNkvXXu0mjfo_kxq delta 210 zcmV;@04@LR0qy~iB!9I@L_t(|+Rc{12}3amhTW(mWCZugB_m`6=g8@e;waWa3qcTl zDV83-oPP4XXNU%R@37YLK!p@m#J~!@GvMI~n%Ojhm6jDuMGl!(U^gd4zJ!b*{pDlJ zj_jZ8HJ1P|NI=^KTp-|&0G&Wwq8Qu`wgfsY4vwKAeUAcr2qf` M07*qoM6N<$f;$ITj{pDw diff --git a/client/iOS/Resources/tabbar_icon_help.png b/client/iOS/Resources/tabbar_icon_help.png index 2e9569cb5f31cfee448a62c06a528feb111db4e4..4e66e5bcb2874f2eef32624854351f0a4df535e1 100644 GIT binary patch delta 251 zcmV)Q?-F%zfO=HZartkQ}zM{kQ*dYj)>Xf`-erI4Vg z{I*qSjbvdd@V)JN=5@2WUE5zc_E)C;rEmUh`2jUcU$XY{2_^sl002ovPDHLkV1gP@ Ba1Q_g delta 260 zcmV+f0sH=!0-yqrB!A~gL_t(|+O?KJ4Z|=DMZ;ha1|bjvArK0o_g)5}5DKB^o(iE5 z0-+E#AFOGzl&3gT4)4;~|657yG#tl4WMLDE@HP}(OSSxESpo}c8gMY9|L_t(|0d3Gx4#Xe`1kh1bTCLW(|7Evp$wtk-Pe@<@CS-w< zHDKW@d7+SuNPdiVH>++BbN5E^%t1rOmLf)F!@TSfGyIevNW zvC&&6d(c>TeU|{B5zHA&g6P&T0QONfEY@Xt{~eiWZjDi`envz=;2!~xdKK=vMQJqK ze}#+E8JCDA!zUQ+&7UJZ$%cveadL8nEY4vjSEV>n@7~4-C0!TT`Fr5U00000NkvXX Hu0mjfx_Vog delta 207 zcmV;=05Jc^0?GoAgMYF~L_t(|+HKHL4#OY}15iVNv`{F%|7F**Xey)cGnRq_OvnNy zYrw=;@<1UOkpvH&X5UDK*#wPG3B%4l&%4Jh^4|g6QD{q2S#S})5QLaHoGPLx&4xys z`*DyZ*@MQ)>-P}=G=gWxk|4SS1AukaSQhK_c>f)lX-c7(25^<25-5QZD1j1OLe3j(3p@O0QDVS= zgAvdGC8z|I;1X2A?7TcBnbkVj*-O5w55H$=<`etTKF$y6n3-91h+6Zm08n3){^GvMhrd01yBKAb(9$Jxr1gYm?*g7!<|9 z?)Q5jfI&baAP^7;$SM8-0bn>xY%D~d-Ah@P0Rm7I1vo$>@Z}L8(0dwZICNmKC-gi&M%VfgQHozG`|I-P(5?uc3;C`bpuU=ZFI&E<0GApj20 zcn8Y6gH}i!3xDGP`1LsWJlgB^s@{RJJidLvDN^1PH6l?Q_dbC~NrB1%#@hqsjcFqi zhEe4JLjiaL)JZZgoAp|Gd!QDJ1-}E_8~}BIU^T%_R^FnS*=)wY07PqmMoOu?O*WIs zgnt*fd&aBPZ{byi!A<5KpdDZ-VB95FtRc(AGVr>{q<`rXcT>d46ln@bGNwTjGM~)@ zuk1{cBpiW&?7;(Fv<_Lc>h-nYO$e4<;FX=hMY9gD2ynkDB&muUYY_wj0>DRAgrTS_ zJC0>%NEex1o;P+pwyE#{bFZ$u2v|~f7B^X}v#e8dL>>GCiGU@5!Mf&64^9Wm&NzT} zQH6V;aY0NqPLZXT>;Nr<;H+)1>>jX-suoXXg+RdmH~8rHu_`12n*4!AKp@a(Kb=2o WIF#RNRawaZ0000g`Ry zdcB6#Y6XkM0_L+>HJME0cs%YkY;Oh*heL0_+o?R?!ZynwO@C9U0RRC&0Foq8qd4|D z0mtLfFN%ZN@Ap6ejetOaBft?5GduwSU^I$N#QESMP?n{S02D<57ElN@UI7CA*YQ|c z01$vMj0UxUl(JWzO7k7aqyd@VZUd$wJ)h561Hd~2 zbO|A()5&@|owEN09^UbK{hK>cp|O*h11Jj^3TXStRe#$fu9hp`$s(O3ugq2vBUPj* zAV`_|ZOCH2@SU*JaU3%Qe9{Ncw9!1$Xw}C@!P*cEJKqUAjg4k3U=Uz#R0t9kw>H3r zolgMxii#lMbz#Ra>@>+Dy~}g24Z$?!4xk^!bq@hU!p>kP^G%w1HCN=}2?PR$020000jxl_l-w6^3yazvv|F@kc?Kw2AGFR_ q#g)tMdIept>$)XC{y=|nm+=cv=6Vf*ebU(g0000iLjHp?5wfY*yLe!m)_ zl%#_xVKP1iOG{#~gK}V`k@oQG|Fnl0{j1q-x2)MeDR*6$?RGoZY&PIH&ajB`JSL?J z1Rw$EygOjq_ArRQ-!tVYkW%6qfcAO~tL5sYS9x$aFyG&UQhy3H04|p+Tr3u^Hkk5ufP#Qi z58y;V(Ex9pLr(h#Rp~bGzChE#4a4Q!&|Ugvz>~5dKoB4Z5ElW>bOMx=&*!=O0T18- nJZX%IcB0wOc1)Y8M)#gCTWZjo$oFW_00000NkvXXu0mjf(`cK* delta 366 zcmV-!0g?Xj0*M2VB!5szL_t(|+U?ZYal$|h2H=#E5>!G;NC{g<);8kCG2pc^#vDGN z5lTr3DnXI+0wj>w7$z@h=GT)(-)MGbpP2cs`D#^bGMPY`isSVF-}hlUozi$bCeQQW zra%}3V2n=!umJ46d*r$<+ysbbGYEr_j4^x!usa&ja4>vr1b@WyIYiNn!Z74B01pO3 z?)UrZDj-=bAdX|2M-l%4aJSb}wSeVv2}zRBB96Hd(Cu=&(@~Xx^?D7f)rth*T0pzQ zh^T%A(lmw5WA>c?rB}O{W)Z3%@+8DNydvmgQ@0!H-A&4G4_M1wa8%0K5zw zsumC$^Kv}*03N{q0!jcB00lq+PyiI*`5S-&pa3WU3V^K(zv*4`3Gj&b;iRP?*Z=?k M07*qoM6N<$f>Ph0xc~qF diff --git a/client/iOS/Resources/toolbar_icon_keyboard.png b/client/iOS/Resources/toolbar_icon_keyboard.png index 95a57c4d007143524fcf68105025ae375792217e..622c9ec10f3dca91524c473680b7319fa6049f2f 100644 GIT binary patch delta 526 zcmV+p0`dLS1f~R#BYy$yNklRBo%q?R-Vj&hHhWP1pnkjn7l9z-k{sUla-jFh4LMt4gJ!*I}DRv%#8=O{Td0 z)MmDAYj(O_#!w^ljJeOWSe;C~dM2z)DU^wzOeCAl5`SYMb#PvjrCaNm{@&1Blk5o& zaqmaJP3W2B;cAanXjiS)_Az<2E%eNuakb^=BHL%%M(o(SU57^PnKeqWGs;9SbhX2K zMmO;JV(u_cMEz}wR3>q?^P)^=n(Mkr42g*8zwl&W_kZ)xRb1>}%qjZ-U4sy3i{esN Q00000Ne4wvM6N<$f~KAVLjV8( delta 572 zcmZ3+a)o7ray^r@r;B4q#jUs3Jo6qU2(Tu|ukD+pTp`W&S;9xcNhXcsLVdf;6Z@wA z2a7}I%{A(c@;bgq{Oz=$N#a`_etlWRWgT$!md*Vc_DT2doh!1N|MAx^;d6fvyev8N zvEszkxKp!E-gRQg(H0-Kb&~|ul#eW#)?*;4sAlSOBBf=<6$8b| zf=QQ@W?Jyg>=Bq8W#r^j(dyahnYGdQY}#s%cdO?fa;rY!myp<;#IA zkr@vK8n3Rko?PTJFZq+qB_6e guYODa*ne;j^OArs#uhox4ln?Lr>mdKI;Vst0HCf3bN~PV diff --git a/client/iOS/Resources/toolbar_icon_touchpointer.png b/client/iOS/Resources/toolbar_icon_touchpointer.png index a080bf58a1c3322f46bd4d4ad14a32ebbe7e29ff..4c738d4abc03503822e5d9d9a14b5f14a51961f7 100644 GIT binary patch delta 388 zcmV-~0ek+t1D^wsB!6Z}L_t(|+P%~5b%HP$hT)9BD2&1gnL`DE@Fm}e(;_Gkbpb|j z1V-ox8R6~wqd!_tr3qT^1+J6i33*AE%SD_{r*Rkt+V`FI9{@)H5P+`h;BYvMP1DeQ zT|WmqpU=h(00=-`*YN)KHda+dtFn9yLqOaC00Ah=67oDB(|LZ2>jT2mSs8uVh%7Z3pS=nWdMWxQj(;49LFECz{Z5tdQHjF z;$5soQ8fJl2=Yh>Xh9H6cL1?kZ*=l#eh_G$?@u>?z&Fszvtpj7xr|L;fWQ^$Mb zYuN2}U0IfRTNLOe!0~w02LK2FilTte&8Azg*La=hXfp5<0e|o(00;o`Jcl$*yEu+< z6h&wXz(xQd0Eof}RzcAD)W@FZp-}*1OjiVeQXd2Wgb+&#T+_4-p8%W*anU%SX_yKi zu83X#9Si6Rz*%9)w+MibK7sG!DF9QP0agO``@OE-A{R@6VFbVxYYMjGU|sbZF8TAC(Y1}rTLOmm4Pz%Au=%LQ=P^CU?$0dN^$m?kU? z1CIgpN8h6;*1|CSk^&0@X7f3g0P=*Z5CuWd{{!#=pcVljN@@QD;IsKc8vyF@C`GR4 z^#g#58EBFjsD-#LatP^v0WMmkNm?{5jzf@T+h_3(v>He6;H~Q$in4vQCI7{H00000 LNkvXXu0mjfF#@wB diff --git a/client/iOS/Resources/toolbar_icon_win.png b/client/iOS/Resources/toolbar_icon_win.png index 673a7ab4dc3758d19e563a177d221abc976fe3af..5c224971fc1efec75060edccbef8d5ef921b53cd 100644 GIT binary patch delta 381 zcmV-@0fPRe1DFGlB!6E?L_t&-8J)lZWRzhT0N{5S>=3YUDl!amB928uY#>C#X#-_I zs!ow5i$aJd_?dTV-$y>$+9F79m6TPr1ZvyWD4{;GS)X=~jp5slVFn@wg#eU!jw&X2D3Qc)0 za7sB-k;0O^%Xq4s?a_f@Y$)~zV`$5J6e-m48HJ% z367$UAl@kOyU3`Pe=<$b~~OrVOZc!oCMHCAvE)kxuzya#9k z-eLyhn8Y-$<8}_-VP~YUBJVtw>FIeqbNIDfSh^(Ju_4fycVG&_WZt b;~)M4KbNjH2Sa?+00000NkvXXu0mjfG-<9) delta 395 zcmV;60d)SD1Em9yB!6s4L_t&-8J)pBNYr5*0N|hD;tg#!92JCvOB_KU7(_#$Q$vu$ zkxqqM^l=n~5e79h1VKcEle9QlprBJj5gw626gCts5d>XHRD)zZ4aadWN8S79o+mnC z2S#xVb#1>ekAvuoUg40uyU{D$khg+MI2v7GUv$Enym7qOw10%lsGx!>X7LFx)PVO!o@q)?Oh0%sI687VBvyNaiZ*%>Vu#HQ~4U=$5`%aOteK4Ss1n8E~3VFg>* zzzM}nM+#+}$180OJi&2{;3RG7yUq6?wHo0Sz!2kdN07*qoLS{`Q|5eog0*3it{w8ZZ0syQH>Pqqk{-A@j z_ZqgUR0F}0vcs}{vI?{V zD8i`4m!m}|fBW(77iDaQMRpymRch&K%%>#HxH65Mj=H73Aad$->GC9qjJTD=H%5yY}`;cHL1xiPs-u%XR7% zYB=|LB`zQ!$1H{c4*QyxmR2K2*+kB^vYrQ$?~lqYy-BREsUh-+f9v)=Hr3x*5ecdJ z8+OA3bc7+*gT!cM-|jhu-~vZXiPy)!pli>aL%jK1xwHz{#J>fOqS?!GihKER+nbs$ z&7P19iH7G-Ixg`6Yqh#KvOo_JB^~X3L%s3!*RNc@o}O#1RODcw2itIf`2BYcd+!cb zl@5<&wxCS<2TYV@P*vxPS-{-NN^YKsA=d|tnm_HY(FAXS6of!MtL1dRmS=#q#{R_@ zS_mjvl80p}!P54J;=w)3l=z4x0K(;VAJt#kZBIDyE!{JO)E6tgo(@+4O zNG|M~g1%&BZH{ETnf^ie8PfCf=TA}>=3F;d*C0wcw1ay{$cluRjEseI)gzGDCcscI zLd+5RA6N?bGV)RoJ%foj@$ne1*FT_VY5z@k=~AI91c+vKK~NUs@vpyFkU;mk@j++6 zg(c|N5W9yxYbnR=n?MTYxNyp?c2+2U`1JI&!)+7=APcPB-{1ENClfG|T7V-*-s6&j z^}1Og*L7HqAwW}8lNPj~W*7oo-8*FZg)G^rl$`A(|0P z0@;1(mOL^9r9c#-_q0LrB*+rKfGi7w(Yu$#|E~Pslk{W;LpLMW(n;AXT5o}xmKG|p zpUH2m%0{!{-hpN(-avfH2WZdVzkl!8L2t}sy}qzV&81^-29U(u;KL9^utahPZ&2cM z)}!wY|Ngm+R+zE^bR1k5sPFdc-`0<_=4E>N`;`)n|5{aUK~aaRduw0GeXRhUxs&m- zAlYi7_aE>8X<}PfS8ichSq5QwxC$lE-rg=6gKnpx0kj~W0l3uTnL`dSWcK*j)8EmNy`uYNRT2QNN=iy18W#r)2jXs+Lm`NId%2;n zjgQHO=36Z4R|mXVqBnKUo}T=_R#zFZpQ0K3&O=QzSIc+tS-Z0Kmk= zWJZ-~Vi@caj`|t2D{@>9N zE|C3xa(bHd-~Rsl9p66=?t%(x!{F5+UTiSJRxB(&TK-^5kZG-q@v6lybkaiG)NY`@ z{kkJLnRIq>k=n(>L+;n|a{G4dlbJvs6;;&%Ya=5g?zHF5I^$$s5MF?G5i#Qr490Vx zg(bcOJ4gVD=s~IR>+)gO54OEg7*61IW2$QXj(G7)K}jQr3Zyc}l$nA8c$Yjp1{}^D z|Bj`TQw^J4GaW-$5-$&v30ymo#GIzP(*Ag~i2K^_QXh7V!H5fX zE!Qf~@4YoDXo7nMUZbpj>!Q472VrO6N5;rVMtxGW-2V1NwxN2=YIi#*KcwR%&_a8sp37~ZIAT;y zO&+T&;5_f`QXW7jBvlh2LGoI(&8Q_07e{)+b*zmq0r8;%Yhf<~swkm+hMr@Y_0z8T z8|jXf&cJHJ;gSee7N-JTZ79jbpKHF^6Pis+Hn}O@&ESN~-(hESs2 zCrH9C%>*7-;C?%K%LP~rE!~Q9RVAjXO!fKngwyDXG}- zpAwV0zql+MOwC5smOJ6ha2?Gxk|;YI6#8skrvVZS-ogMBK4kT_dT%?Ma#WrfIsI+V z%1KFS3VU_%jc}VPKYMV0rYu<{SYSZRowSoQdgEZp3HNzrT!QA$!<=-Q#hkP~8OjXj z@nHAzi`zc)+YZ}Pfza)<*-aN`KdYC{b|E&r+G!_8n6-)otE)`jsg!v4fhYpen7D)U zr%o{BSccem(CH8xtBg#rOdA{z_A9>z52S-R@J-~1>*5TdAi-$*w9d1uCSG^gW3}sd zY^l+}>U`~dwo98PXGK=i#LVz5)WLM%MX+^RYs)x}w{ExLR^Q`S&Cej0=buy2PP{cu zDG8h2=uh)=U*21q+VLK?PnnLb^%Hs4`e?0epondXIpII&=#{zKYraG#i*`mM1iDJFPo4=_SXyMd=NbFXI)G|pc(3i8~mj=@g8(!Dd?kZS0*%+ikkesk1y7r!o_9Fd27 z75ETI=XI|@r`@k{UIp*-$`ubP@Vzwg@DOppdl)vL>5_3|si7~PQcFFNh?|cNwi~0X z!}o;2MREP-%=iKJ1*I@gmu({gVW&wytiGhxXrKNgal7G{8RZjPF>|A%aTkk=ixg0P zI=E*&N;GyD2Pk>`$R4^UH@T@liDjseCN9UpfxYd~cM~JSaIjEoi$CTu*Y@pl-!_V| zELoEAO_K!O0O>#R_iD2GnIV0P1^vCYe(4$;-J+jagKRlFuPV!gZ>02{-q{98tILY% zS_Z0i*}I073BO^3uRFl}Ppz@7qdshbtx2bpW>=n779-e%o$0UeT@j7^_M?ut272Uh zHMN*kXtJH1T~)*)An{z46S%kgj59M(@|fO2lAnXs3t^JX9gd5OyU<}Hqv1Xa*I?XE zpb?ppUa4B1zu5534P>6wdw5H7vW@?WPVR}^j(?_X6?|tV)1r84RHk^TBY0~sf$$5h zoRs6??VsG%*SlA9hbFHkezjfawq8y{ipRnqicb$Zi>JSj;mOEe$GGM~n~^4nE9-CjN+oxgjUoVaLFD)GbTAC1u{N%F_%bGX6JZ`X)fotJFR z`nOlpXfeoAaU1~%B3v2hqXw)!8FCd_)J%yf=+MUH1eF2CE%6-U0bh7lxuf$#B#$qHq!mNn_WHms0bg#eEQ_t9xKCxAau zgTK=`x8;4>^HmC}-Q=@1f0SS_t%FJegIkuBSU`4J+66~=999A(cPn>eXk)|co>$-Y zht{e;-J|^Eao?pUyiY2ZApK6Y$J|zwglOB^3hPIj;wGT#1oo?ZDEwv zu_&E=@`s^pq;rhSaHVl(>tUsErXlAeTZsSt$>-?j{e2I;p9H&l!U=+PZa(}hgqCAW zeMBLfoR-Re`<>$igQuu=;|Pk2!Fmj3d`c$9m>g>};5BY6VEdf~+%MKxvldo+Ycn7F zoApx8hA>u!Y0jXc$TwuloOxBU8)q!FG~zVRc0b0ceN-kmiotocY=dw;lYw!yQVAC; z>ii&kU_)-j@j|i4B+$(iz6mItV{Nj+QP@@gByUSEu^o-`uo}z;e*yBP_{^_OcAC{A ziBv-k>3~mk53~Kw?=6@vrE2A3fAd_T7Hnwq8Hbg3Ool_R zT=ebwSf`(GUgmN&NBgv~ze;#|TrzKt?0E-a3Y<|oJ1Cq1%U`qD~P!i`HWwbR|nWJ$s~Gm_WV6Q^Tbk9Rkju$rIQgYKL-dHv zp45^8fva;lb$Pju>!?0x{=Hq*BnenkMbCcUi?MimiB(Jc{g61&_&}ZOo*|Zzj42=o zreKk5X814pY`;@t8!HVG=@~L%z31ONt*@`&ucv96UVS3D1%Tm59H)_ST>CgTkot$b%Vr|UE`Y-Pu;Bv)eHecz-LpV$cs zPSKAX8@F}D7lAMdiTWbo``^0;%qk>Y$IzZRc5MB-CR6<27Jv#ac93|>1fVN-HsImNC%S{<<-{?n+7>D>>aMHTT=jB*>CGxq96Nq$mJSq)_9kiKB#$ zCuBP^nDP>yKm2a`jE4mA_L1Xzzio)idWV`kq1b{pbSM^qmX5`LjZ-zIngNkR=<>%r zG}rf#qf&HxKSRSgIyz$s>(7eZyJN+RX{5Z#8UOC#Z^~3JMC2#gbD}XqJ(;m@u_Sil z6sq-w)^+u@u70={DL=RUEk?n87?HxLzcvvQ@WIUPbicYC5F2?%C;mU1XNr<fy&wZ3N6?=_Lu<3- zWYB3e!P3HBo}Zo*+fq`F~_6zz~;ER8AN-bB!tV`)HtlS8%HfP+Tb*;As9*V zF5|-44nheNrq9I=(vu$x^4{OZiqQX|D^GzG{y>qNc406O2`&doMyRWQict1N(NX>6 z;?Y@bDOUp~?iq>h_)6~Ee>*+M(zKKWICn-$Tr!>1tA zU?RyV?g=M+Cyy8Zpp0n@fB@!T_W!Veq#RM<(7f-c3|%IBJZ>HEo}IF*Vd(`_tRG)W z$szF-5mTuo0Mw8&MQg;TPynCal4AgdLD1aGN3`=kdM?6&`O#l(bUDCLTAJZc1ikIm z5X4(KRCjNHNr|nYI!W7|?PIg+Vz{FAuu@DC!2}io%z(78l;PMeEL(poZJ&a^#*Qf% zS7lH*dP1ZkMVFvXv9uk0fY@#R~BpKY^#MD+}MTXI;ESuXghGvIP@%esIudW|ZdOqFR*$vCajtox-rsY7KZt^%40}?RZPtitG!-&rd3$oU(vIDryPT zfekExCJM@eSxDqw(r3)_rU*KfExl>8&WOj#3zgeE`VdkSLdPm|X@w7b%&{h8BlkD% znFLz`J~_hM*GC-KX;kqrf_J5u#xmW!A)~}4WQ8Q208s_>F&VVx26Dl^M&^Fc#r93! zCZSh~{a57jZ?$kpDCGQz^G^86!6ZEeEB0H6A#hyZ!M!#IPRDHX^^WcBf;>K?K3!dQ zMrHSypkaG}-mlM7WO~5$=kQGiz!f{7qMQ&%lV=h2_o0Z*`YGsOrxdLMhQN zQKhfFT}pU!P5zLe^d38fTaUL-$1~6z51$@|VxD{HXum?20l=0zgzXm0>&|oXS&Dx*3K)9v+ojy|x9Q2fi-_g|UT%9x=4^7vT8oX*=Q$I6YIi04?CMuNtBbZm!-Q z#`;S-95%pRk3*a!!+;(!jKa?0^NK>UH4wt25C{d7a3TCuQ)Eccgeqvlo6W2boX?zv zz(Bc(RNSYAeLSNSaQk*b6)jB^wPKyq0p$cR4^w_JYLk{$ zh@jr}d=x>HDBtw{vnCI#b`m=#J@Yy6mhz>5_f0u)6oNqr=(++1itY9{&|+K>C4_&k zndF4r#&(g|HmaQ8rkma>tm1)qs0G_KXEsk`?HOUjkOHWbFd1z->QY10G|8Oc1S8<( zRa^W$U6GCzyD1`i$G|h~pT8^%aGZt-296#;BO@X}|75i@4(d^Yc6{J(Cc)OOpHp{0l}@n3H)h>QiFD`j-XX0Y+;@ zc8An|keZ3%cT^6v#{RMIp8d)vM|>fv34$Orx*b)a`Pal@=s(e?uj3M&Fk9QgV7*J< zBazEY`X*pI{5WL|KQsvOInQMmnj#K6#gW&9(8+BqkiW*uuHXRfF_7;FBGojNQxw~t zlspWEO=~3kFt>ca6j$>ul;Q+ZfkH4GZA1k44wbdI*jDjpuyVdzuT-(Q<<%X8O`;_uXIn z(bmbekY}nt^1TvQ@&k!J+p7%(sD#j`P5%v>H}CX~+FkQrGxTixYf@Q%Fo1GBA@{+l zr+Om>tifStD9$ly)L_}FgPwJa@R}Vcm7=C>%?N@b2m`1PxFXmFfKPnv)(S|AQ_34v zDT!4BuCbm^?JfdA9|9Ai)tAZ_XyuEH@yhn}308<>=(@%G8i~qT)`!2HxzZ%cwDI4e zhD=GEIcvgoBokE_4%8uQStlFn)_;PELViB17szeBP1TGn3LR%}G2%xL^q2hAeZ>As zRuC#0#(A!VRBsP6C3sUFW(L;0y_hZ{;x&ikJ1XvswH!e5n!_8OJfAc4{Eep&BUmHp z1bC)>JGC2`xslyRelM_k(K(uo+gytu83pR67^S?zokAaxlrZSu&Odffb*F@W6y@4^ z;pqtYH%IVZ)b!woVZN55dJgHW%&wnWDxnQ)el^h&nh;dIz!uF z&cg?QGLS+koO{A)v;sD7&mWL{OHI)t(TcwMnJyxdr;YLS4FV|=#(ur6`QI1SbL47) z!%V5J^EnTdzIUE4alw5-(5D!mS6#j#3vNg}lxSwRVSya`V_~7)5XJ?gTH2Yu`KurH z9_M!!3`76Q$xmPEvk5pdCcSngkB}WOTY`65A z-NSshzvIgjuOR*)qK_CI%Y91>hr;eEo!5)f;wt^h@i9WiH)aD>(f_r8&3)C|lUBMu zZviOsSj>_zSPa#DwrJ!ieEy*DqT3ksIx=S`b><8U%W-b8Du+-?Qe?!Eo!B z$Um0Tnu>3~AEd-(YvnEy);l4DpS*HE7OY-isQF0P<+%~d zO|z-%gZBS$>*!>x!U4pLaWd$WtdId2Ud*fkD=p#RT zVsp|HaSR5ZN&edRsot>8+~P4KTM@NZulYsm!SbJHt5jt+JK@fvt(?4n_9;JWq58P7 zd;Y{BNw^^v0Gy6ICxTpIW^D_*=h)wzSo7Cq!-@!>Oae)&4RosR8Iu@STqA1(Ir zkG)Rj_(jb*oO6;jIct@H$~jut~qj{mbciNo@Wuwpl|@LW`PL!J`po`cT?`~g)^3CP$7N$Ourlb zw=b}O@h@N(L|CPU)bVu5DR4H}p{h}?#f8az;Rpt{R z0J8D5ehRfx>N`+;VB@W`b%Zk7S~6}28lrdcf$^H1U;o+SOcLlPK~;R})V69sJv+j) zm510P;Cc&j9*9d6WzMS0HPR~DmC$9)Q=N>-621D&gP^^888h) zsg)U3FOMpQsSIg*k^lVhffoM*!#sYj`*t7;`W%8_mpPtP#dR6}6XPozL3NYd{QhB> zgLr?@p13XdTd5cT;@MbIUg5Pb+P6>?tv8I^03eg^g{-mq%_dqmB7O`65!4)u0MSRi zI#(!-Ri4PNmcKk`Aw&=X{S=TEf^)tHV!p9)PrlL-Y6|JWh3XE?778zo;aM_#q7yV3 zhI$O3KztZ<7CO^qMAw1APSkP~FD>HUTYB^_n=jFiO8k4v_<_U&Qf1}58aXa@_bcpE(U;nx0FvY) zRl}qq>tign%zrDnSFegKw|2sDv*N8qp!pc#f(m!Ud=nxw4Y@~jDvc-=Sh#g#S0L4! zFoQ7f_f&{=k>FgqxSH@6a-6uawg={S!$4lZ-11l2M5cN%ua(XTA$NX;g z{Qqd4UBZ$fYvVd&4((q^mBkrZuW$FmpBYlNyumPiYOpRJh(bUyEA*E-vPfdmqzU2d zRN_A2IxLzx<+YxDaiHQJ06TPG5rt{dd!6!eOj5@07IQ?H(64nl@AeJBwXLvrF)Grd89+CGv4DyxyJPcFb9M18w6Oq>ybDM;kVdCBhfm@)ac zMQyiE^?i?rIJZzS_0{#!Yu^h@oL;E42H6yTN_YlD(2y}OVTy-~Mvt2~oJl@s?sKm) zH$exj4`N8toTVRMT4R+zvdpsbT)kLVX8pCKBYI`Ro6fBjG(uv zmjlimNn~FO$k(;CY4RyvZc>@xAjW|=7(@+fL^zCK5+7%!7SDC~H=(DIY9KzsLD$BrkefA;E9T);)Srkn;)n1>63+xd9hiDk zoCJDmxyrC-Og1y82rmi(3x3e~{;H}Il`l*Ms~FZrx|5)MB3M|U5=08@Fd{+$ddX#f z{+B*$(BV3B!}9>!mLqR9>K1IGE?D(1W#n7l-wJ3l<+haCRciV#%;&T{yDZ=@z|r*+ z4K#eI-(56A+f^}+J6wYgh27%;2$tlqvZAcPRR5oLF>=$z!}Te9pfF#qqR}`T{jMB3 zI4OwxUW}s{IP`o&6M$bOECEA)0ay{$9{@6MoteoOz|tz2vX?D5b4v*IDYB6qB^yJw zaF8(rFDC7QE*Kqm$A`xA;#5+iUbLK3I~tHl(tPNW1o84T+)*NXzGrEbOpWohaR;@U zze*LFL1Qe#LZunRIB~7GDWupCs|wGKrPMI~opq+Td*Ld+%Wr9KYip}iy52nT7R?Z` zq*CZ+3MupkcQj2*sd@gy$bQbc+Oi{|t0_cF`IzqA*fRw?&VE0d#roQj;Mn|6Uvx7o z!W4UpJZR{ywJN7ZBl}I?f*dn*DnI8zR~ROozVk)TC0i=OGL_&cWb^75s^a j!--v6cnB>Uy2t15tgdWd?c@LNj15p%)>5icK!*PxGOxJZ literal 10041 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 P00000NkvXXu0mjfr!TOA diff --git a/client/iOS/Resources/touch_pointer_default.png b/client/iOS/Resources/touch_pointer_default.png index d0fc33417db6ff6c943e54dbb203af1d86b46796..5f419eefd580cab9ebf97475acbcec5590ab80fd 100644 GIT binary patch literal 9309 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 literal 9600 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 TrO)zsR$|jqiW(hu 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 literal 11849 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 z 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

    =)1`Y7D~zHu1b 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

    F{fHgXwY}n_`caD1CxAS5yv-y|E}5@&hFn~# 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 AZU6uP diff --git a/resources/FreeRDP_Icon_256px.png b/resources/FreeRDP_Icon_256px.png index c808c60ccf4898741906c8252e17270433d17b79..66489e1a1f93d0f88f9e89c836924d6baf433b68 100644 GIT binary patch delta 2563 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 Hu0mjfCGN<1 diff --git a/resources/FreeRDP_Logo.png b/resources/FreeRDP_Logo.png index 0006001b74cff1ce49503d55a587f64b4f976bd5..1e272627b473c8527f109af88cdcc982b6082a0f 100644 GIT binary patch literal 30329 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 literal 32463 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 Np@zPC^#cg}{{YUD5<36@ diff --git a/scripts/gprof_generate.sh.cmake b/scripts/gprof_generate.sh.cmake old mode 100755 new mode 100644 diff --git a/scripts/regenerate_jni_headers.sh.cmake b/scripts/regenerate_jni_headers.sh.cmake old mode 100755 new mode 100644 From 47d779f6a031ffbcbfbdd518e5dbb8b0e6fcb004 Mon Sep 17 00:00:00 2001 From: Rene Rheaume Date: Fri, 8 Aug 2014 20:14:56 -0400 Subject: [PATCH 082/170] Changed back the permissions to previous values --- client/Mac/en.lproj/InfoPlist.strings | 0 scripts/gprof_generate.sh.cmake | 0 scripts/regenerate_jni_headers.sh.cmake | 0 3 files changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 client/Mac/en.lproj/InfoPlist.strings mode change 100644 => 100755 scripts/gprof_generate.sh.cmake mode change 100644 => 100755 scripts/regenerate_jni_headers.sh.cmake diff --git a/client/Mac/en.lproj/InfoPlist.strings b/client/Mac/en.lproj/InfoPlist.strings old mode 100755 new mode 100644 diff --git a/scripts/gprof_generate.sh.cmake b/scripts/gprof_generate.sh.cmake old mode 100644 new mode 100755 diff --git a/scripts/regenerate_jni_headers.sh.cmake b/scripts/regenerate_jni_headers.sh.cmake old mode 100644 new mode 100755 From 54264936d1ce2f4bdffac3d1fda0906a9ed304b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 8 Aug 2014 20:51:26 -0400 Subject: [PATCH 083/170] shadow: improve synchronization barrier usage --- server/shadow/X11/x11_shadow.c | 41 +++++----------------------------- server/shadow/shadow_capture.c | 3 +++ server/shadow/shadow_client.c | 4 ++-- winpr/libwinpr/synch/barrier.c | 19 +++++++++++++++- winpr/libwinpr/synch/synch.h | 1 + 5 files changed, 30 insertions(+), 38 deletions(-) diff --git a/server/shadow/X11/x11_shadow.c b/server/shadow/X11/x11_shadow.c index a96d55d31..ffd068e60 100644 --- a/server/shadow/X11/x11_shadow.c +++ b/server/shadow/X11/x11_shadow.c @@ -298,15 +298,12 @@ void* x11_shadow_subsystem_thread(x11ShadowSubsystem* subsystem) int fps; DWORD status; DWORD nCount; - XEvent xevent; UINT64 cTime; DWORD dwTimeout; DWORD dwInterval; UINT64 frameTime; HANDLE events[32]; HANDLE StopEvent; - int x, y, width, height; - XDamageNotifyEvent* notify; StopEvent = subsystem->server->StopEvent; @@ -320,13 +317,8 @@ void* x11_shadow_subsystem_thread(x11ShadowSubsystem* subsystem) while (1) { - dwTimeout = INFINITE; - - if (!subsystem->use_xdamage) - { - cTime = GetTickCount64(); - dwTimeout = (cTime > frameTime) ? 0 : frameTime - cTime; - } + cTime = GetTickCount64(); + dwTimeout = (cTime > frameTime) ? 0 : frameTime - cTime; status = WaitForMultipleObjects(nCount, events, FALSE, dwTimeout); @@ -335,33 +327,12 @@ void* x11_shadow_subsystem_thread(x11ShadowSubsystem* subsystem) break; } - while (XPending(subsystem->display)) + if ((status == WAIT_TIMEOUT) || (GetTickCount64() > frameTime)) { - ZeroMemory(&xevent, sizeof(xevent)); - XNextEvent(subsystem->display, &xevent); + x11_shadow_screen_grab(subsystem); - if (xevent.type == subsystem->xdamage_notify_event) - { - notify = (XDamageNotifyEvent*) &xevent; - - x = notify->area.x; - y = notify->area.y; - width = notify->area.width; - height = notify->area.height; - - x11_shadow_invalidate_region(subsystem, x, y, width, height); - } - } - - if (!subsystem->use_xdamage) - { - if ((status == WAIT_TIMEOUT) || (GetTickCount64() > frameTime)) - { - x11_shadow_screen_grab(subsystem); - - dwInterval = 1000 / fps; - frameTime += dwInterval; - } + dwInterval = 1000 / fps; + frameTime += dwInterval; } } diff --git a/server/shadow/shadow_capture.c b/server/shadow/shadow_capture.c index db73a1ff6..3fa0d1774 100644 --- a/server/shadow/shadow_capture.c +++ b/server/shadow/shadow_capture.c @@ -151,6 +151,9 @@ int shadow_capture_compare(BYTE* pData1, int nStep1, int nWidth, int nHeight, BY printf("|%s|\n", rows[ty] ? "O" : "X"); } + + printf("left: %d top: %d right: %d bottom: %d ncol: %d nrow: %d\n", + l, t, r, b, ncol, nrow); } return 1; diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index 7bf20441b..8f8e319c2 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -567,8 +567,8 @@ int shadow_client_send_surface_update(rdpShadowClient* client) nWidth = extents->right - extents->left; nHeight = extents->bottom - extents->top; - printf("shadow_client_send_surface_update: x: %d y: %d width: %d height: %d right: %d bottom: %d\n", - nXSrc, nYSrc, nWidth, nHeight, nXSrc + nWidth, nYSrc + nHeight); + //printf("shadow_client_send_surface_update: x: %d y: %d width: %d height: %d right: %d bottom: %d\n", + // nXSrc, nYSrc, nWidth, nHeight, nXSrc + nWidth, nYSrc + nHeight); if (settings->RemoteFxCodec || settings->NSCodec) { diff --git a/winpr/libwinpr/synch/barrier.c b/winpr/libwinpr/synch/barrier.c index c56bfbee7..ef5571acb 100644 --- a/winpr/libwinpr/synch/barrier.c +++ b/winpr/libwinpr/synch/barrier.c @@ -29,6 +29,8 @@ #ifndef _WIN32 +#include + BOOL WINAPI InitializeSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier, LONG lTotalThreads, LONG lSpinCount) { int status; @@ -50,10 +52,22 @@ BOOL WINAPI InitializeSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier pBarrier->lTotalThreads = lTotalThreads; pBarrier->lSpinCount = lSpinCount; - status = pthread_barrier_init(&(pBarrier->barrier), NULL, pBarrier->lTotalThreads); + status = pthread_barrierattr_init(&(pBarrier->attr)); if (status != 0) { + fprintf(stderr, "pthread_barrierattr_init failure: %d\n", errno); + free(pBarrier); + return FALSE; + } + + pthread_barrierattr_setpshared(&(pBarrier->attr), PTHREAD_PROCESS_SHARED); + + status = pthread_barrier_init(&(pBarrier->barrier), &(pBarrier->attr), lTotalThreads); + + if (status != 0) + { + fprintf(stderr, "pthread_barrier_init failure: %d\n", errno); free(pBarrier); return FALSE; } @@ -89,6 +103,7 @@ BOOL WINAPI EnterSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier, DWO } else { + fprintf(stderr, "pthread_barrier_wait failure: %d\n", errno); status = FALSE; /* failure */ } @@ -113,6 +128,8 @@ BOOL WINAPI DeleteSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier) pthread_barrier_destroy(&(pBarrier->barrier)); + pthread_barrierattr_destroy(&(pBarrier->attr)); + free(pBarrier); ZeroMemory(lpBarrier, sizeof(SYNCHRONIZATION_BARRIER)); diff --git a/winpr/libwinpr/synch/synch.h b/winpr/libwinpr/synch/synch.h index 919255413..c9524e1b3 100644 --- a/winpr/libwinpr/synch/synch.h +++ b/winpr/libwinpr/synch/synch.h @@ -151,6 +151,7 @@ struct winpr_barrier #if !defined(_WIN32) pthread_barrier_t barrier; + pthread_barrierattr_t attr; #elif (defined(_WIN32) && (_WIN32_WINNT < 0x0602)) HANDLE event; DECLSPEC_ALIGN(4) LONG count; From 6c85505ecc5beb373d82d777a35aae41a71a7758 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 8 Aug 2014 21:02:15 -0400 Subject: [PATCH 084/170] libwinpr-synch: replace pthreads-based barrier implementation by interlocked operations + event and avoid deadlocks --- winpr/libwinpr/synch/barrier.c | 122 +++------------------------------ winpr/libwinpr/synch/synch.h | 8 +-- 2 files changed, 12 insertions(+), 118 deletions(-) diff --git a/winpr/libwinpr/synch/barrier.c b/winpr/libwinpr/synch/barrier.c index ef5571acb..21dabea23 100644 --- a/winpr/libwinpr/synch/barrier.c +++ b/winpr/libwinpr/synch/barrier.c @@ -27,121 +27,13 @@ #include -#ifndef _WIN32 - -#include - -BOOL WINAPI InitializeSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier, LONG lTotalThreads, LONG lSpinCount) -{ - int status; - WINPR_BARRIER* pBarrier; - - if (!lpBarrier) - return FALSE; - - ZeroMemory(lpBarrier, sizeof(SYNCHRONIZATION_BARRIER)); - - pBarrier = (WINPR_BARRIER*) calloc(1, sizeof(WINPR_BARRIER)); - - if (!pBarrier) - return FALSE; - - if (lSpinCount < 0) - lSpinCount = 2000; - - pBarrier->lTotalThreads = lTotalThreads; - pBarrier->lSpinCount = lSpinCount; - - status = pthread_barrierattr_init(&(pBarrier->attr)); - - if (status != 0) - { - fprintf(stderr, "pthread_barrierattr_init failure: %d\n", errno); - free(pBarrier); - return FALSE; - } - - pthread_barrierattr_setpshared(&(pBarrier->attr), PTHREAD_PROCESS_SHARED); - - status = pthread_barrier_init(&(pBarrier->barrier), &(pBarrier->attr), lTotalThreads); - - if (status != 0) - { - fprintf(stderr, "pthread_barrier_init failure: %d\n", errno); - free(pBarrier); - return FALSE; - } - - lpBarrier->Reserved3[0] = (ULONG_PTR) pBarrier; - - return TRUE; -} - -BOOL WINAPI EnterSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier, DWORD dwFlags) -{ - BOOL status; - int waitStatus; - WINPR_BARRIER* pBarrier; - - if (!lpBarrier) - return FALSE; - - pBarrier = (WINPR_BARRIER*) lpBarrier->Reserved3[0]; - - if (!pBarrier) - return FALSE; - - waitStatus = pthread_barrier_wait(&(pBarrier->barrier)); - - if (waitStatus == 0) - { - status = FALSE; /* success, this is not the last thread */ - } - else if (waitStatus == PTHREAD_BARRIER_SERIAL_THREAD) - { - status = TRUE; /* success, this is the last thread */ - } - else - { - fprintf(stderr, "pthread_barrier_wait failure: %d\n", errno); - status = FALSE; /* failure */ - } - - return status; -} - -BOOL WINAPI DeleteSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier) -{ - WINPR_BARRIER* pBarrier; - - /** - * According to MSDN, DeleteSynchronizationBarrier always returns TRUE - */ - - if (!lpBarrier) - return TRUE; - - pBarrier = (WINPR_BARRIER*) lpBarrier->Reserved3[0]; - - if (!pBarrier) - return TRUE; - - pthread_barrier_destroy(&(pBarrier->barrier)); - - pthread_barrierattr_destroy(&(pBarrier->attr)); - - free(pBarrier); - - ZeroMemory(lpBarrier, sizeof(SYNCHRONIZATION_BARRIER)); - - return TRUE; -} - -#elif (defined(_WIN32) && (_WIN32_WINNT < 0x0602)) +#if (!defined(_WIN32)) || (defined(_WIN32) && (_WIN32_WINNT < 0x0602)) #include #include +#ifdef _WIN32 + static HMODULE g_Kernel32 = NULL; static BOOL g_NativeBarrier = FALSE; static INIT_ONCE g_InitOnce = INIT_ONCE_STATIC_INIT; @@ -179,14 +71,18 @@ static BOOL CALLBACK InitOnce_Barrier(PINIT_ONCE once, PVOID param, PVOID *conte return TRUE; } +#endif + BOOL WINAPI InitializeSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier, LONG lTotalThreads, LONG lSpinCount) { WINPR_BARRIER* pBarrier; +#ifdef _WIN32 InitOnceExecuteOnce(&g_InitOnce, InitOnce_Barrier, NULL, NULL); if (g_NativeBarrier) return pfnInitializeSynchronizationBarrier(lpBarrier, lTotalThreads, lSpinCount); +#endif if (!lpBarrier) return FALSE; @@ -224,8 +120,10 @@ BOOL WINAPI EnterSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier, DWO BOOL status = FALSE; WINPR_BARRIER* pBarrier; +#ifdef _WIN32 if (g_NativeBarrier) return pfnEnterSynchronizationBarrier(lpBarrier, dwFlags); +#endif if (!lpBarrier) return FALSE; @@ -254,8 +152,10 @@ BOOL WINAPI DeleteSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier) { WINPR_BARRIER* pBarrier; +#ifdef _WIN32 if (g_NativeBarrier) return pfnDeleteSynchronizationBarrier(lpBarrier); +#endif if (!lpBarrier) return TRUE; diff --git a/winpr/libwinpr/synch/synch.h b/winpr/libwinpr/synch/synch.h index c9524e1b3..51810237a 100644 --- a/winpr/libwinpr/synch/synch.h +++ b/winpr/libwinpr/synch/synch.h @@ -146,16 +146,10 @@ struct winpr_timer_queue_timer struct winpr_barrier { + DECLSPEC_ALIGN(4) LONG count; LONG lTotalThreads; LONG lSpinCount; - -#if !defined(_WIN32) - pthread_barrier_t barrier; - pthread_barrierattr_t attr; -#elif (defined(_WIN32) && (_WIN32_WINNT < 0x0602)) HANDLE event; - DECLSPEC_ALIGN(4) LONG count; -#endif }; typedef struct winpr_barrier WINPR_BARRIER; From 66b8905ac64e8e3b8b84cf3c2a14e70dfa51f77b Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Mon, 11 Aug 2014 09:12:01 +0200 Subject: [PATCH 085/170] Using special log defines for channels now. --- channels/audin/client/alsa/audin_alsa.c | 6 +- channels/audin/client/audin_main.c | 14 ++-- channels/audin/client/audin_main.h | 6 +- .../audin/client/opensles/audin_opensl_es.c | 6 +- channels/audin/client/opensles/opensl_io.c | 2 +- channels/audin/client/pulse/audin_pulse.c | 16 ++-- channels/audin/server/audin.c | 3 +- channels/cliprdr/client/cliprdr_format.c | 2 +- channels/cliprdr/client/cliprdr_main.c | 20 ++--- channels/cliprdr/client/cliprdr_main.h | 6 +- channels/cliprdr/server/cliprdr_main.c | 20 ++--- channels/disp/client/disp_main.c | 22 +++--- channels/disp/client/disp_main.h | 2 +- channels/drdynvc/client/drdynvc_main.c | 12 +-- channels/drdynvc/client/drdynvc_types.h | 6 +- channels/drdynvc/client/dvcman.c | 20 ++--- channels/echo/client/echo_main.h | 6 +- channels/encomsp/client/encomsp_main.c | 18 ++--- channels/printer/client/printer_win.c | 2 +- channels/printer/client/printer_win.h | 4 +- channels/rail/client/rail_orders.c | 3 +- channels/rdpdr/client/devman.c | 4 +- channels/rdpdr/client/rdpdr_main.c | 16 ++-- channels/rdpdr/server/rdpdr_main.c | 24 +++--- channels/rdpei/client/rdpei_main.c | 34 ++++---- channels/rdpei/client/rdpei_main.h | 6 +- channels/rdpgfx/client/rdpgfx_main.c | 8 +- channels/rdpsnd/client/alsa/rdpsnd_alsa.c | 20 ++--- channels/rdpsnd/client/ios/TPCircularBuffer.c | 4 +- channels/rdpsnd/client/mac/rdpsnd_mac.c | 10 +-- .../rdpsnd/client/opensles/rdpsnd_opensles.c | 6 +- channels/rdpsnd/client/rdpsnd_main.c | 30 +++---- channels/rdpsnd/client/rdpsnd_main.h | 2 +- channels/rdpsnd/client/winmm/rdpsnd_winmm.c | 14 ++-- channels/rdpsnd/server/rdpsnd_main.c | 20 ++--- channels/remdesk/client/remdesk_main.c | 22 +++--- channels/smartcard/client/smartcard_main.c | 2 +- channels/smartcard/client/smartcard_main.h | 2 +- .../smartcard/client/smartcard_operations.c | 2 +- channels/tsmf/client/alsa/tsmf_alsa.c | 6 +- channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c | 20 ++--- channels/tsmf/client/gstreamer/tsmf_X11.c | 16 ++-- .../tsmf/client/gstreamer/tsmf_gstreamer.c | 38 ++++----- channels/tsmf/client/pulse/tsmf_pulse.c | 16 ++-- channels/tsmf/client/tsmf_audio.c | 2 +- channels/tsmf/client/tsmf_codec.c | 18 ++--- channels/tsmf/client/tsmf_decoder.c | 2 +- channels/tsmf/client/tsmf_ifman.c | 20 ++--- channels/tsmf/client/tsmf_main.c | 12 +-- channels/tsmf/client/tsmf_media.c | 14 ++-- channels/tsmf/client/tsmf_types.h | 6 +- channels/urbdrc/client/data_transfer.c | 16 ++-- .../urbdrc/client/libusb/libusb_udevice.c | 78 +++++++++---------- .../urbdrc/client/libusb/libusb_udevman.c | 2 +- channels/urbdrc/client/libusb/request_queue.c | 2 +- channels/urbdrc/client/searchman.c | 12 +-- channels/urbdrc/client/urbdrc_main.c | 11 +-- channels/urbdrc/client/urbdrc_types.h | 10 +-- include/freerdp/channels/log.h | 58 ++++++++++++++ 59 files changed, 421 insertions(+), 360 deletions(-) create mode 100644 include/freerdp/channels/log.h diff --git a/channels/audin/client/alsa/audin_alsa.c b/channels/audin/client/alsa/audin_alsa.c index e8b7259a7..1b7c3b3e9 100644 --- a/channels/audin/client/alsa/audin_alsa.c +++ b/channels/audin/client/alsa/audin_alsa.c @@ -72,7 +72,7 @@ static BOOL audin_alsa_set_params(AudinALSADevice* alsa, snd_pcm_t* capture_hand if ((error = snd_pcm_hw_params_malloc(&hw_params)) < 0) { - DEBUG_WARN("snd_pcm_hw_params_malloc (%s)", + CLOG_ERR("snd_pcm_hw_params_malloc (%s)", snd_strerror(error)); return FALSE; } @@ -206,7 +206,7 @@ static void* audin_alsa_thread_func(void* arg) { if ((error = snd_pcm_open(&capture_handle, alsa->device_name, SND_PCM_STREAM_CAPTURE, 0)) < 0) { - DEBUG_WARN("snd_pcm_open (%s)", snd_strerror(error)); + CLOG_ERR("snd_pcm_open (%s)", snd_strerror(error)); break; } @@ -226,7 +226,7 @@ static void* audin_alsa_thread_func(void* arg) } else if (error < 0) { - DEBUG_WARN("snd_pcm_readi (%s)", snd_strerror(error)); + CLOG_ERR("snd_pcm_readi (%s)", snd_strerror(error)); break; } diff --git a/channels/audin/client/audin_main.c b/channels/audin/client/audin_main.c index 38e7625bd..c2b366a4d 100644 --- a/channels/audin/client/audin_main.c +++ b/channels/audin/client/audin_main.c @@ -133,7 +133,7 @@ static int audin_process_formats(IWTSVirtualChannelCallback* pChannelCallback, w DEBUG_DVC("NumFormats %d", NumFormats); if ((NumFormats < 1) || (NumFormats > 1000)) { - DEBUG_WARN("bad NumFormats %d", NumFormats); + CLOG_ERR("bad NumFormats %d", NumFormats); return 1; } Stream_Seek_UINT32(s); /* cbSizeFormatsPacket */ @@ -262,7 +262,7 @@ static int audin_process_open(IWTSVirtualChannelCallback* pChannelCallback, wStr if (initialFormat >= (UINT32) callback->formats_count) { - DEBUG_WARN("invalid format index %d (total %d)", + CLOG_ERR("invalid format index %d (total %d)", initialFormat, callback->formats_count); return 1; } @@ -293,7 +293,7 @@ static int audin_process_format_change(IWTSVirtualChannelCallback* pChannelCallb if (NewFormat >= (UINT32) callback->formats_count) { - DEBUG_WARN("invalid format index %d (total %d)", + CLOG_ERR("invalid format index %d (total %d)", NewFormat, callback->formats_count); return 1; } @@ -340,7 +340,7 @@ static int audin_on_data_received(IWTSVirtualChannelCallback* pChannelCallback, break; default: - DEBUG_WARN("unknown MessageId=0x%x", MessageId); + CLOG_ERR("unknown MessageId=0x%x", MessageId); error = 1; break; } @@ -429,7 +429,7 @@ static void audin_register_device_plugin(IWTSPlugin* pPlugin, IAudinDevice* devi if (audin->device) { - DEBUG_WARN("existing device, abort."); + CLOG_ERR("existing device, abort."); return; } @@ -454,7 +454,7 @@ static BOOL audin_load_device_plugin(IWTSPlugin* pPlugin, const char* name, ADDI if (entry(&entryPoints) != 0) { - DEBUG_WARN("%s entry returns error.", name); + CLOG_ERR("%s entry returns error.", name); return FALSE; } @@ -613,7 +613,7 @@ int DVCPluginEntry(IDRDYNVC_ENTRY_POINTS* pEntryPoints) if (audin->device == NULL) { - DEBUG_WARN("no sound device."); + CLOG_ERR("no sound device."); } return error; diff --git a/channels/audin/client/audin_main.h b/channels/audin/client/audin_main.h index 985532b54..53c82b289 100644 --- a/channels/audin/client/audin_main.h +++ b/channels/audin/client/audin_main.h @@ -27,13 +27,13 @@ #include #include #include -#include +#include #include #ifdef WITH_DEBUG_DVC -#define DEBUG_DVC(fmt, ...) DEBUG_CLASS(DVC, fmt, ## __VA_ARGS__) +#define DEBUG_DVC(fmt, ...) CLOG_CLASS(DVC, fmt, ## __VA_ARGS__) #else -#define DEBUG_DVC(fmt, ...) DEBUG_NULL(fmt, ## __VA_ARGS__) +#define DEBUG_DVC(fmt, ...) CLOG_NULL(fmt, ## __VA_ARGS__) #endif #endif /* FREERDP_AUDIN_CLIENT_MAIN_H */ diff --git a/channels/audin/client/opensles/audin_opensl_es.c b/channels/audin/client/opensles/audin_opensl_es.c index 50dbc19d8..936e453f8 100644 --- a/channels/audin/client/opensles/audin_opensl_es.c +++ b/channels/audin/client/opensles/audin_opensl_es.c @@ -96,7 +96,7 @@ static void* audin_opensles_thread_func(void* arg) int rc = android_RecIn(opensles->stream, buffer.s, raw_size); if (rc < 0) { - DEBUG_WARN("android_RecIn %d", rc); + CLOG_ERR("android_RecIn %d", rc); continue; } @@ -250,7 +250,7 @@ static void audin_opensles_set_format(IAudinDevice* device, break; default: - DEBUG_WARN("Encoding '%d' [%08X] not supported", + CLOG_ERR("Encoding '%d' [%08X] not supported", (format->wFormatTag), format->wFormatTag); return; @@ -309,7 +309,7 @@ static void audin_opensles_close(IAudinDevice* device) * ignore duplicate requests. */ if (!opensles->stopEvent) { - DEBUG_WARN("[ERROR] function called without matching open."); + CLOG_ERR("[ERROR] function called without matching open."); return; } diff --git a/channels/audin/client/opensles/opensl_io.c b/channels/audin/client/opensles/opensl_io.c index dda834b69..970ee8265 100644 --- a/channels/audin/client/opensles/opensl_io.c +++ b/channels/audin/client/opensles/opensl_io.c @@ -362,7 +362,7 @@ int android_RecIn(OPENSL_STREAM *p,short *buffer,int size) e = Queue_Dequeue(p->queue); if (!e) { - DEBUG_WARN("[ERROR] got e=%p from queue", e); + CLOG_ERR("[ERROR] got e=%p from queue", e); return -1; } diff --git a/channels/audin/client/pulse/audin_pulse.c b/channels/audin/client/pulse/audin_pulse.c index 5dab7badb..6642b4701 100644 --- a/channels/audin/client/pulse/audin_pulse.c +++ b/channels/audin/client/pulse/audin_pulse.c @@ -94,7 +94,7 @@ static BOOL audin_pulse_connect(IAudinDevice* device) if (pa_context_connect(pulse->context, NULL, 0, NULL)) { - DEBUG_WARN("pa_context_connect failed (%d)", + CLOG_ERR("pa_context_connect failed (%d)", pa_context_errno(pulse->context)); return FALSE; } @@ -102,7 +102,7 @@ static BOOL audin_pulse_connect(IAudinDevice* device) if (pa_threaded_mainloop_start(pulse->mainloop) < 0) { pa_threaded_mainloop_unlock(pulse->mainloop); - DEBUG_WARN("pa_threaded_mainloop_start failed (%d)", + CLOG_ERR("pa_threaded_mainloop_start failed (%d)", pa_context_errno(pulse->context)); return FALSE; } @@ -113,7 +113,7 @@ static BOOL audin_pulse_connect(IAudinDevice* device) break; if (!PA_CONTEXT_IS_GOOD(state)) { - DEBUG_WARN("bad context state (%d)", + CLOG_ERR("bad context state (%d)", pa_context_errno(pulse->context)); break; } @@ -297,7 +297,7 @@ static void audin_pulse_stream_request_callback(pa_stream* stream, size_t length */ if (pulse->buffer == NULL) { - /* DEBUG_WARN( "%s: ignoring input, pulse buffer not ready.\n", __func__); */ + /* CLOG_ERR( "%s: ignoring input, pulse buffer not ready.\n", __func__); */ return; } @@ -415,7 +415,7 @@ static void audin_pulse_open(IAudinDevice* device, AudinReceive receive, void* u &buffer_attr, PA_STREAM_ADJUST_LATENCY) < 0) { pa_threaded_mainloop_unlock(pulse->mainloop); - DEBUG_WARN("pa_stream_connect_playback failed (%d)", + CLOG_ERR("pa_stream_connect_playback failed (%d)", pa_context_errno(pulse->context)); return; } @@ -427,7 +427,7 @@ static void audin_pulse_open(IAudinDevice* device, AudinReceive receive, void* u break; if (!PA_STREAM_IS_GOOD(state)) { - DEBUG_WARN("bad stream state (%d)", + CLOG_ERR("bad stream state (%d)", pa_context_errno(pulse->context)); break; } @@ -512,7 +512,7 @@ int freerdp_audin_client_subsystem_entry(PFREERDP_AUDIN_DEVICE_ENTRY_POINTS pEnt if (!pulse->mainloop) { - DEBUG_WARN("pa_threaded_mainloop_new failed"); + CLOG_ERR("pa_threaded_mainloop_new failed"); audin_pulse_free((IAudinDevice*) pulse); return 1; } @@ -521,7 +521,7 @@ int freerdp_audin_client_subsystem_entry(PFREERDP_AUDIN_DEVICE_ENTRY_POINTS pEnt if (!pulse->context) { - DEBUG_WARN("pa_context_new failed"); + CLOG_ERR("pa_context_new failed"); audin_pulse_free((IAudinDevice*) pulse); return 1; } diff --git a/channels/audin/server/audin.c b/channels/audin/server/audin.c index a7d50c73a..67f2e4c8f 100644 --- a/channels/audin/server/audin.c +++ b/channels/audin/server/audin.c @@ -34,6 +34,7 @@ #include #include #include +#include #define MSG_SNDIN_VERSION 0x01 #define MSG_SNDIN_FORMATS 0x02 @@ -385,7 +386,7 @@ static void* audin_server_thread_func(void* arg) break; default: - DEBUG_WARN( "audin_server_thread_func: unknown MessageId %d\n", MessageId); + CLOG_ERR( "audin_server_thread_func: unknown MessageId %d\n", MessageId); break; } } diff --git a/channels/cliprdr/client/cliprdr_format.c b/channels/cliprdr/client/cliprdr_format.c index 4389f5f58..1453f1cda 100644 --- a/channels/cliprdr/client/cliprdr_format.c +++ b/channels/cliprdr/client/cliprdr_format.c @@ -140,7 +140,7 @@ void cliprdr_process_short_format_names(cliprdrPlugin* cliprdr, wStream* s, UINT } if (num_formats * 36 != length) - DEBUG_WARN("dataLen %d not divided by 36!", length); + CLOG_ERR("dataLen %d not divided by 36!", length); ascii = (flags & CB_ASCII_NAMES) ? TRUE : FALSE; diff --git a/channels/cliprdr/client/cliprdr_main.c b/channels/cliprdr/client/cliprdr_main.c index 4526526c0..2c57fe2e9 100644 --- a/channels/cliprdr/client/cliprdr_main.c +++ b/channels/cliprdr/client/cliprdr_main.c @@ -87,7 +87,7 @@ void cliprdr_packet_send(cliprdrPlugin* cliprdr, wStream* s) Stream_SetPosition(s, pos); #ifdef WITH_DEBUG_CLIPRDR - printf("Cliprdr Sending (%d bytes)\n", dataLen + 8); + CLOG_DBG("Cliprdr Sending (%d bytes)\n", dataLen + 8); winpr_HexDump(Stream_Buffer(s), dataLen + 8); #endif @@ -101,18 +101,18 @@ static void cliprdr_process_connect(rdpSvcPlugin* plugin) void cliprdr_print_general_capability_flags(UINT32 flags) { - DEBUG_WARN( "generalFlags (0x%08X) {\n", flags); + CLOG_ERR( "generalFlags (0x%08X) {\n", flags); if (flags & CB_USE_LONG_FORMAT_NAMES) - DEBUG_WARN( "\tCB_USE_LONG_FORMAT_NAMES\n"); + CLOG_ERR( "\tCB_USE_LONG_FORMAT_NAMES\n"); if (flags & CB_STREAM_FILECLIP_ENABLED) - DEBUG_WARN( "\tCB_STREAM_FILECLIP_ENABLED\n"); + CLOG_ERR( "\tCB_STREAM_FILECLIP_ENABLED\n"); if (flags & CB_FILECLIP_NO_FILE_PATHS) - DEBUG_WARN( "\tCB_FILECLIP_NO_FILE_PATHS\n"); + CLOG_ERR( "\tCB_FILECLIP_NO_FILE_PATHS\n"); if (flags & CB_CAN_LOCK_CLIPDATA) - DEBUG_WARN( "\tCB_CAN_LOCK_CLIPDATA\n"); + CLOG_ERR( "\tCB_CAN_LOCK_CLIPDATA\n"); - DEBUG_WARN( "}\n"); + CLOG_ERR( "}\n"); } static void cliprdr_process_general_capability(cliprdrPlugin* cliprdr, wStream* s) @@ -198,7 +198,7 @@ static void cliprdr_process_clip_caps(cliprdrPlugin* cliprdr, wStream* s, UINT16 break; default: - DEBUG_WARN("unknown cliprdr capability set: %d", capabilitySetType); + CLOG_ERR("unknown cliprdr capability set: %d", capabilitySetType); break; } } @@ -380,7 +380,7 @@ static void cliprdr_process_receive(rdpSvcPlugin* plugin, wStream* s) break; default: - DEBUG_WARN("unknown msgType %d", msgType); + CLOG_ERR("unknown msgType %d", msgType); break; } } @@ -496,7 +496,7 @@ static void cliprdr_process_event(rdpSvcPlugin* plugin, wMessage* event) break; default: - DEBUG_WARN("unknown event type %d", GetMessageType(event->id)); + CLOG_ERR("unknown event type %d", GetMessageType(event->id)); break; } diff --git a/channels/cliprdr/client/cliprdr_main.h b/channels/cliprdr/client/cliprdr_main.h index 9aec3348a..29cc9b08d 100644 --- a/channels/cliprdr/client/cliprdr_main.h +++ b/channels/cliprdr/client/cliprdr_main.h @@ -23,7 +23,7 @@ #include -#include +#include #include struct cliprdr_plugin @@ -45,9 +45,9 @@ void cliprdr_packet_send(cliprdrPlugin* cliprdr, wStream* data_out); CliprdrClientContext* cliprdr_get_client_interface(cliprdrPlugin* cliprdr); #ifdef WITH_DEBUG_CLIPRDR -#define DEBUG_CLIPRDR(fmt, ...) DEBUG_CLASS(CLIPRDR, fmt, ## __VA_ARGS__) +#define DEBUG_CLIPRDR(fmt, ...) CLOG_CLASS(CLIPRDR, fmt, ## __VA_ARGS__) #else -#define DEBUG_CLIPRDR(fmt, ...) DEBUG_NULL(fmt, ## __VA_ARGS__) +#define DEBUG_CLIPRDR(fmt, ...) CLOG_NULL(fmt, ## __VA_ARGS__) #endif #endif /* __CLIPRDR_MAIN_H */ diff --git a/channels/cliprdr/server/cliprdr_main.c b/channels/cliprdr/server/cliprdr_main.c index 41933d6dc..a72f014a4 100644 --- a/channels/cliprdr/server/cliprdr_main.c +++ b/channels/cliprdr/server/cliprdr_main.c @@ -25,7 +25,7 @@ #include #include -#include +#include #include "cliprdr_main.h" /** @@ -71,7 +71,7 @@ static int cliprdr_server_send_capabilities(CliprdrServerContext* context) CLIPRDR_HEADER header; ULONG written; - DEBUG_MSG("CliprdrServerSendCapabilities\n"); + CLOG_DBG("CliprdrServerSendCapabilities\n"); header.msgType = CB_CLIP_CAPS; header.msgFlags = 0; @@ -112,7 +112,7 @@ static int cliprdr_server_send_monitor_ready(CliprdrServerContext* context) CLIPRDR_HEADER header; ULONG written; - DEBUG_MSG("CliprdrServerSendMonitorReady\n"); + CLOG_DBG("CliprdrServerSendMonitorReady\n"); header.msgType = CB_MONITOR_READY; header.msgFlags = 0; @@ -140,7 +140,7 @@ static int cliprdr_server_send_format_list_response(CliprdrServerContext* contex CLIPRDR_HEADER header; ULONG written; - DEBUG_MSG("CliprdrServerSendFormatListResponse\n"); + CLOG_DBG("CliprdrServerSendFormatListResponse\n"); header.msgType = CB_FORMAT_LIST_RESPONSE; header.msgFlags = CB_RESPONSE_OK; @@ -208,7 +208,7 @@ static int cliprdr_server_receive_temporary_directory(CliprdrServerContext* cont ConvertFromUnicode(CP_UTF8, 0, wszTempDir, -1, &(context->priv->ClientTemporaryDirectory), 0, NULL, NULL); - DEBUG_MSG("ClientTemporaryDirectory: %s\n", context->priv->ClientTemporaryDirectory); + CLOG_DBG("ClientTemporaryDirectory: %s\n", context->priv->ClientTemporaryDirectory); return 0; } @@ -253,7 +253,7 @@ static int cliprdr_server_receive_long_format_list(CliprdrServerContext* context int length; int position; - DEBUG_MSG("%s\n", __FUNCTION__); + CLOG_DBG("%s\n", __FUNCTION__); position = Stream_GetPosition(s); Stream_SetPosition(s, Stream_Length(s)); @@ -306,7 +306,7 @@ static int cliprdr_server_receive_long_format_list(CliprdrServerContext* context for (i = 0; i < context->priv->ClientFormatNameCount; i++) { - DEBUG_MSG("Format %d: Id: 0x%04X Name: %s Length: %d\n", i, + CLOG_DBG("Format %d: Id: 0x%04X Name: %s Length: %d\n", i, context->priv->ClientFormatNames[i].id, context->priv->ClientFormatNames[i].name, context->priv->ClientFormatNames[i].length); @@ -317,7 +317,7 @@ static int cliprdr_server_receive_long_format_list(CliprdrServerContext* context static int cliprdr_server_receive_short_format_list(CliprdrServerContext* context, wStream* s, CLIPRDR_HEADER* header) { - DEBUG_MSG("%s: unimplemented\n", __FUNCTION__); + CLOG_DBG("%s: unimplemented\n", __FUNCTION__); return 0; } @@ -341,7 +341,7 @@ static int cliprdr_server_receive_format_list(CliprdrServerContext* context, wSt static int cliprdr_server_receive_pdu(CliprdrServerContext* context, wStream* s, CLIPRDR_HEADER* header) { - DEBUG_MSG("CliprdrServerReceivePdu: msgType: %d msgFlags: 0x%08X dataLen: %d\n", + CLOG_DBG("CliprdrServerReceivePdu: msgType: %d msgFlags: 0x%08X dataLen: %d\n", header->msgType, header->msgFlags, header->dataLen); switch (header->msgType) @@ -380,7 +380,7 @@ static int cliprdr_server_receive_pdu(CliprdrServerContext* context, wStream* s, break; default: - DEBUG_MSG("Unexpected clipboard PDU type: %d\n", header->msgType); + CLOG_DBG("Unexpected clipboard PDU type: %d\n", header->msgType); break; } diff --git a/channels/disp/client/disp_main.c b/channels/disp/client/disp_main.c index b3954d078..af4065a98 100644 --- a/channels/disp/client/disp_main.c +++ b/channels/disp/client/disp_main.c @@ -101,7 +101,7 @@ int disp_send_display_control_monitor_layout_pdu(DISP_CHANNEL_CALLBACK* callback Stream_Write_UINT32(s, NumMonitors); /* NumMonitors (4 bytes) */ - //DEBUG_WARN( "NumMonitors: %d\n", NumMonitors); + //CLOG_ERR( "NumMonitors: %d\n", NumMonitors); for (index = 0; index < NumMonitors; index++) { @@ -129,14 +129,14 @@ int disp_send_display_control_monitor_layout_pdu(DISP_CHANNEL_CALLBACK* callback Stream_Write_UINT32(s, Monitors[index].Orientation); /* Orientation (4 bytes) */ #if 0 - DEBUG_WARN( "\t: Flags: 0x%04X\n", Monitors[index].Flags); - DEBUG_WARN( "\t: Left: %d\n", Monitors[index].Left); - DEBUG_WARN( "\t: Top: %d\n", Monitors[index].Top); - DEBUG_WARN( "\t: Width: %d\n", Monitors[index].Width); - DEBUG_WARN( "\t: Height: %d\n", Monitors[index].Height); - DEBUG_WARN( "\t: PhysicalWidth: %d\n", Monitors[index].PhysicalWidth); - DEBUG_WARN( "\t: PhysicalHeight: %d\n", Monitors[index].PhysicalHeight); - DEBUG_WARN( "\t: Orientation: %d\n", Monitors[index].Orientation); + CLOG_ERR( "\t: Flags: 0x%04X\n", Monitors[index].Flags); + CLOG_ERR( "\t: Left: %d\n", Monitors[index].Left); + CLOG_ERR( "\t: Top: %d\n", Monitors[index].Top); + CLOG_ERR( "\t: Width: %d\n", Monitors[index].Width); + CLOG_ERR( "\t: Height: %d\n", Monitors[index].Height); + CLOG_ERR( "\t: PhysicalWidth: %d\n", Monitors[index].PhysicalWidth); + CLOG_ERR( "\t: PhysicalHeight: %d\n", Monitors[index].PhysicalHeight); + CLOG_ERR( "\t: Orientation: %d\n", Monitors[index].Orientation); #endif Stream_Write_UINT32(s, Monitors[index].DesktopScaleFactor); /* DesktopScaleFactor (4 bytes) */ @@ -162,7 +162,7 @@ int disp_recv_display_control_caps_pdu(DISP_CHANNEL_CALLBACK* callback, wStream* Stream_Read_UINT32(s, disp->MaxMonitorWidth); /* MaxMonitorWidth (4 bytes) */ Stream_Read_UINT32(s, disp->MaxMonitorHeight); /* MaxMonitorHeight (4 bytes) */ - //DEBUG_WARN( "DisplayControlCapsPdu: MaxNumMonitors: %d MaxMonitorWidth: %d MaxMonitorHeight: %d\n", + //CLOG_ERR( "DisplayControlCapsPdu: MaxNumMonitors: %d MaxMonitorWidth: %d MaxMonitorHeight: %d\n", // disp->MaxNumMonitors, disp->MaxMonitorWidth, disp->MaxMonitorHeight); return 0; @@ -176,7 +176,7 @@ int disp_recv_pdu(DISP_CHANNEL_CALLBACK* callback, wStream* s) Stream_Read_UINT32(s, type); /* Type (4 bytes) */ Stream_Read_UINT32(s, length); /* Length (4 bytes) */ - //DEBUG_WARN( "Type: %d Length: %d\n", type, length); + //CLOG_ERR( "Type: %d Length: %d\n", type, length); switch (type) { diff --git a/channels/disp/client/disp_main.h b/channels/disp/client/disp_main.h index 1851618a0..b0268c31c 100644 --- a/channels/disp/client/disp_main.h +++ b/channels/disp/client/disp_main.h @@ -27,7 +27,7 @@ #include #include #include -#include +#include #include diff --git a/channels/drdynvc/client/drdynvc_main.c b/channels/drdynvc/client/drdynvc_main.c index 3cfda4d53..3b885097d 100644 --- a/channels/drdynvc/client/drdynvc_main.c +++ b/channels/drdynvc/client/drdynvc_main.c @@ -130,7 +130,7 @@ int drdynvc_write_data(drdynvcPlugin* drdynvc, UINT32 ChannelId, BYTE* data, UIN if (status != CHANNEL_RC_OK) { drdynvc->channel_error = status; - DEBUG_WARN("VirtualChannelWrite failed %d", status); + CLOG_ERR("VirtualChannelWrite failed %d", status); return 1; } @@ -145,7 +145,7 @@ int drdynvc_push_event(drdynvcPlugin* drdynvc, wMessage* event) if (status != CHANNEL_RC_OK) { - DEBUG_WARN("pVirtualChannelEventPush failed %d", status); + CLOG_ERR("pVirtualChannelEventPush failed %d", status); return 1; } @@ -165,7 +165,7 @@ static int drdynvc_send_capability_response(drdynvcPlugin* drdynvc) if (status != CHANNEL_RC_OK) { - DEBUG_WARN("VirtualChannelWrite failed %d", status); + CLOG_ERR("VirtualChannelWrite failed %d", status); return 1; } @@ -270,7 +270,7 @@ static int drdynvc_process_create_request(drdynvcPlugin* drdynvc, int Sp, int cb if (status != CHANNEL_RC_OK) { - DEBUG_WARN("VirtualChannelWrite failed %d", status); + CLOG_ERR("VirtualChannelWrite failed %d", status); return 1; } @@ -329,7 +329,7 @@ static int drdynvc_process_close_request(drdynvcPlugin* drdynvc, int Sp, int cbC if (error != CHANNEL_RC_OK) { - DEBUG_WARN("VirtualChannelWrite failed %d", error); + CLOG_ERR("VirtualChannelWrite failed %d", error); return 1; } @@ -376,7 +376,7 @@ static void drdynvc_process_receive(rdpSvcPlugin* plugin, wStream* s) break; default: - DEBUG_WARN("unknown drdynvc cmd 0x%x", Cmd); + CLOG_ERR("unknown drdynvc cmd 0x%x", Cmd); break; } } diff --git a/channels/drdynvc/client/drdynvc_types.h b/channels/drdynvc/client/drdynvc_types.h index b7b629dcc..2010cab65 100644 --- a/channels/drdynvc/client/drdynvc_types.h +++ b/channels/drdynvc/client/drdynvc_types.h @@ -26,12 +26,12 @@ #include #include -#include +#include #ifdef WITH_DEBUG_DVC -#define DEBUG_DVC(fmt, ...) DEBUG_CLASS(DVC, fmt, ## __VA_ARGS__) +#define DEBUG_DVC(fmt, ...) CLOG_CLASS(DVC, fmt, ## __VA_ARGS__) #else -#define DEBUG_DVC(fmt, ...) DEBUG_NULL(fmt, ## __VA_ARGS__) +#define DEBUG_DVC(fmt, ...) CLOG_NULL(fmt, ## __VA_ARGS__) #endif #endif diff --git a/channels/drdynvc/client/dvcman.c b/channels/drdynvc/client/dvcman.c index 3b936d974..d7e6fbf36 100644 --- a/channels/drdynvc/client/dvcman.c +++ b/channels/drdynvc/client/dvcman.c @@ -71,7 +71,7 @@ static int dvcman_create_listener(IWTSVirtualChannelManager* pChannelMgr, } else { - DEBUG_WARN("Maximum DVC listener number reached."); + CLOG_ERR("Maximum DVC listener number reached."); return 1; } } @@ -89,7 +89,7 @@ static int dvcman_push_event(IWTSVirtualChannelManager* pChannelMgr, wMessage* p } else { - DEBUG_WARN("event_type %d push failed.", GetMessageType(pEvent->id)); + CLOG_ERR("event_type %d push failed.", GetMessageType(pEvent->id)); } return status; @@ -108,7 +108,7 @@ static int dvcman_register_plugin(IDRDYNVC_ENTRY_POINTS* pEntryPoints, const cha } else { - DEBUG_WARN("Maximum DVC plugin number reached."); + CLOG_ERR("Maximum DVC plugin number reached."); return 1; } } @@ -218,7 +218,7 @@ int dvcman_load_addin(IWTSVirtualChannelManager* pChannelMgr, ADDIN_ARGV* args, DVCMAN_ENTRY_POINTS entryPoints; PDVC_PLUGIN_ENTRY pDVCPluginEntry = NULL; - DEBUG_WARN( "Loading Dynamic Virtual Channel %s\n", args->argv[0]); + CLOG_ERR( "Loading Dynamic Virtual Channel %s\n", args->argv[0]); pDVCPluginEntry = (PDVC_PLUGIN_ENTRY) freerdp_load_channel_addin_entry(args->argv[0], NULL, NULL, FREERDP_ADDIN_CHANNEL_DYNAMIC); @@ -388,7 +388,7 @@ int dvcman_create_channel(IWTSVirtualChannelManager* pChannelMgr, UINT32 Channel } else { - DEBUG_WARN("channel rejected by plugin"); + CLOG_ERR("channel rejected by plugin"); free(channel); return 1; @@ -409,7 +409,7 @@ int dvcman_open_channel(IWTSVirtualChannelManager* pChannelMgr, UINT32 ChannelId if (!channel) { - DEBUG_WARN("ChannelId %d not found!", ChannelId); + CLOG_ERR("ChannelId %d not found!", ChannelId); return 1; } @@ -434,7 +434,7 @@ int dvcman_close_channel(IWTSVirtualChannelManager* pChannelMgr, UINT32 ChannelI if (!channel) { - DEBUG_WARN("ChannelId %d not found!", ChannelId); + CLOG_ERR("ChannelId %d not found!", ChannelId); return 1; } @@ -468,7 +468,7 @@ int dvcman_receive_channel_data_first(IWTSVirtualChannelManager* pChannelMgr, UI if (!channel) { - DEBUG_WARN("ChannelId %d not found!", ChannelId); + CLOG_ERR("ChannelId %d not found!", ChannelId); return 1; } @@ -491,7 +491,7 @@ int dvcman_receive_channel_data(IWTSVirtualChannelManager* pChannelMgr, UINT32 C if (!channel) { - DEBUG_WARN("ChannelId %d not found!", ChannelId); + CLOG_ERR("ChannelId %d not found!", ChannelId); return 1; } @@ -500,7 +500,7 @@ int dvcman_receive_channel_data(IWTSVirtualChannelManager* pChannelMgr, UINT32 C /* Fragmented data */ if (Stream_GetPosition(channel->dvc_data) + dataSize > (UINT32) Stream_Capacity(channel->dvc_data)) { - DEBUG_WARN("data exceeding declared length!"); + CLOG_ERR("data exceeding declared length!"); Stream_Release(channel->dvc_data); channel->dvc_data = NULL; return 1; diff --git a/channels/echo/client/echo_main.h b/channels/echo/client/echo_main.h index e63eea768..fc7d88de6 100644 --- a/channels/echo/client/echo_main.h +++ b/channels/echo/client/echo_main.h @@ -27,12 +27,12 @@ #include #include #include -#include +#include #ifdef WITH_DEBUG_DVC -#define DEBUG_DVC(fmt, ...) DEBUG_CLASS(DVC, fmt, ## __VA_ARGS__) +#define DEBUG_DVC(fmt, ...) CLOG_CLASS(DVC, fmt, ## __VA_ARGS__) #else -#define DEBUG_DVC(fmt, ...) DEBUG_NULL(fmt, ## __VA_ARGS__) +#define DEBUG_DVC(fmt, ...) CLOG_NULL(fmt, ## __VA_ARGS__) #endif #endif /* __ECHO_MAIN_H */ diff --git a/channels/encomsp/client/encomsp_main.c b/channels/encomsp/client/encomsp_main.c index 74858b89d..f941974c5 100644 --- a/channels/encomsp/client/encomsp_main.c +++ b/channels/encomsp/client/encomsp_main.c @@ -24,7 +24,7 @@ #include #include -#include +#include #include #include "encomsp_main.h" @@ -44,7 +44,7 @@ int encomsp_virtual_channel_write(encomspPlugin* encomsp, wStream* s) return -1; #if 0 - DEBUG_MSG("EncomspWrite (%d)\n", Stream_Length(s)); + CLOG_DBG("EncomspWrite (%d)\n", Stream_Length(s)); winpr_HexDump(Stream_Buffer(s), Stream_Length(s)); #endif @@ -53,7 +53,7 @@ int encomsp_virtual_channel_write(encomspPlugin* encomsp, wStream* s) if (status != CHANNEL_RC_OK) { - DEBUG_WARN( "encomsp_virtual_channel_write: VirtualChannelWrite failed %d\n", status); + CLOG_ERR( "encomsp_virtual_channel_write: VirtualChannelWrite failed %d\n", status); return -1; } @@ -591,7 +591,7 @@ static int encomsp_process_receive(encomspPlugin* encomsp, wStream* s) if (encomsp_read_header(s, &header) < 0) return -1; - //DEBUG_MSG("EncomspReceive: Type: %d Length: %d\n", header.Type, header.Length); + //CLOG_DBG("EncomspReceive: Type: %d Length: %d\n", header.Type, header.Length); switch (header.Type) { @@ -723,7 +723,7 @@ int encomsp_send(encomspPlugin* encomsp, wStream* s) if (status != CHANNEL_RC_OK) { Stream_Free(s, TRUE); - DEBUG_WARN( "encomsp_send: VirtualChannelWrite failed %d\n", status); + CLOG_ERR( "encomsp_send: VirtualChannelWrite failed %d\n", status); } return status; @@ -755,7 +755,7 @@ static void encomsp_virtual_channel_event_data_received(encomspPlugin* encomsp, { if (Stream_Capacity(data_in) != Stream_GetPosition(data_in)) { - DEBUG_WARN( "encomsp_plugin_process_received: read error\n"); + CLOG_ERR( "encomsp_plugin_process_received: read error\n"); } encomsp->data_in = NULL; @@ -775,7 +775,7 @@ static VOID VCAPITYPE encomsp_virtual_channel_open_event(DWORD openHandle, UINT if (!encomsp) { - DEBUG_WARN( "encomsp_virtual_channel_open_event: error no match\n"); + CLOG_ERR( "encomsp_virtual_channel_open_event: error no match\n"); return; } @@ -835,7 +835,7 @@ static void encomsp_virtual_channel_event_connected(encomspPlugin* encomsp, LPVO if (status != CHANNEL_RC_OK) { - DEBUG_WARN( "encomsp_virtual_channel_event_connected: open failed: status: %d\n", status); + CLOG_ERR( "encomsp_virtual_channel_event_connected: open failed: status: %d\n", status); return; } @@ -873,7 +873,7 @@ static VOID VCAPITYPE encomsp_virtual_channel_init_event(LPVOID pInitHandle, UIN if (!encomsp) { - DEBUG_WARN( "encomsp_virtual_channel_init_event: error no match\n"); + CLOG_ERR( "encomsp_virtual_channel_init_event: error no match\n"); return; } diff --git a/channels/printer/client/printer_win.c b/channels/printer/client/printer_win.c index a91ddbce5..ed7e09e36 100644 --- a/channels/printer/client/printer_win.c +++ b/channels/printer/client/printer_win.c @@ -185,7 +185,7 @@ static rdpPrinter* printer_win_new_printer(rdpWinPrinterDriver* win_driver, cons win_printer->printer.FindPrintJob = printer_win_find_printjob; win_printer->printer.Free = printer_win_free_printer; - swDEBUG_MSG(wname, 256, L"%hs", name); + swCLOG_DBG(wname, 256, L"%hs", name); OpenPrinter(wname, &(win_printer->hPrinter), NULL); GetPrinter(win_printer->hPrinter, 2, (LPBYTE) prninfo, 0, &needed); diff --git a/channels/printer/client/printer_win.h b/channels/printer/client/printer_win.h index eecbb17ba..68c9e7995 100644 --- a/channels/printer/client/printer_win.h +++ b/channels/printer/client/printer_win.h @@ -23,9 +23,9 @@ rdpPrinterDriver* printer_win_get_driver(void); #ifdef WITH_DEBUG_WINPR -#define DEBUG_WINPR(fmt, ...) DEBUG_CLASS(WINPR, fmt, ## __VA_ARGS__) +#define DEBUG_WINPR(fmt, ...) CLOG_CLASS(WINPR, fmt, ## __VA_ARGS__) #else -#define DEBUG_WINPR(fmt, ...) DEBUG_NULL(fmt, ## __VA_ARGS__) +#define DEBUG_WINPR(fmt, ...) CLOG_NULL(fmt, ## __VA_ARGS__) #endif #endif diff --git a/channels/rail/client/rail_orders.c b/channels/rail/client/rail_orders.c index 0eeb7839c..6e5e0428c 100644 --- a/channels/rail/client/rail_orders.c +++ b/channels/rail/client/rail_orders.c @@ -28,6 +28,7 @@ #include #include +#include #include "rail_orders.h" @@ -522,7 +523,7 @@ BOOL rail_order_recv(railPlugin* rail, wStream* s) } default: - DEBUG_WARN( "Unknown RAIL PDU order reveived."); + CLOG_ERR( "Unknown RAIL PDU order reveived."); break; } diff --git a/channels/rdpdr/client/devman.c b/channels/rdpdr/client/devman.c index 18f326adf..784117499 100644 --- a/channels/rdpdr/client/devman.c +++ b/channels/rdpdr/client/devman.c @@ -32,7 +32,7 @@ #include #include #include -#include +#include #include "rdpdr_main.h" @@ -123,7 +123,7 @@ BOOL devman_load_device_service(DEVMAN* devman, RDPDR_DEVICE* device) if (!ServiceName) return FALSE; - DEBUG_WARN( "Loading device service %s (static)\n", ServiceName); + CLOG_ERR( "Loading device service %s (static)\n", ServiceName); entry = (PDEVICE_SERVICE_ENTRY) freerdp_load_channel_addin_entry(ServiceName, NULL, "DeviceServiceEntry", 0); if (!entry) diff --git a/channels/rdpdr/client/rdpdr_main.c b/channels/rdpdr/client/rdpdr_main.c index 0574ee8b2..4d053c14e 100644 --- a/channels/rdpdr/client/rdpdr_main.c +++ b/channels/rdpdr/client/rdpdr_main.c @@ -31,7 +31,7 @@ #include #include -#include +#include #include #ifdef _WIN32 @@ -452,7 +452,7 @@ static void* drive_hotplug_thread_func(void* arg) if (mfd < 0) { - DEBUG_WARN( "ERROR: Unable to open /proc/mounts."); + CLOG_ERR( "ERROR: Unable to open /proc/mounts."); return NULL; } @@ -663,7 +663,7 @@ static void rdpdr_send_device_list_announce_request(rdpdrPlugin* rdpdr, BOOL use count++; - DEBUG_WARN( "registered device #%d: %s (type=%d id=%d)\n", + CLOG_ERR( "registered device #%d: %s (type=%d id=%d)\n", count, device->name, device->type, device->id); } } @@ -846,7 +846,7 @@ int rdpdr_send(rdpdrPlugin* rdpdr, wStream* s) if (status != CHANNEL_RC_OK) { Stream_Free(s, TRUE); - DEBUG_WARN( "rdpdr_send: VirtualChannelWrite failed %d\n", status); + CLOG_ERR( "rdpdr_send: VirtualChannelWrite failed %d\n", status); } return status; @@ -884,7 +884,7 @@ static void rdpdr_virtual_channel_event_data_received(rdpdrPlugin* rdpdr, { if (Stream_Capacity(data_in) != Stream_GetPosition(data_in)) { - DEBUG_WARN( "svc_plugin_process_received: read error\n"); + CLOG_ERR( "svc_plugin_process_received: read error\n"); } rdpdr->data_in = NULL; @@ -904,7 +904,7 @@ static VOID VCAPITYPE rdpdr_virtual_channel_open_event(DWORD openHandle, UINT ev if (!rdpdr) { - DEBUG_WARN( "rdpdr_virtual_channel_open_event: error no match\n"); + CLOG_ERR( "rdpdr_virtual_channel_open_event: error no match\n"); return; } @@ -964,7 +964,7 @@ static void rdpdr_virtual_channel_event_connected(rdpdrPlugin* rdpdr, LPVOID pDa if (status != CHANNEL_RC_OK) { - DEBUG_WARN( "rdpdr_virtual_channel_event_connected: open failed: status: %d\n", status); + CLOG_ERR( "rdpdr_virtual_channel_event_connected: open failed: status: %d\n", status); return; } @@ -1010,7 +1010,7 @@ static VOID VCAPITYPE rdpdr_virtual_channel_init_event(LPVOID pInitHandle, UINT if (!rdpdr) { - DEBUG_WARN( "rdpdr_virtual_channel_init_event: error no match\n"); + CLOG_ERR( "rdpdr_virtual_channel_init_event: error no match\n"); return; } diff --git a/channels/rdpdr/server/rdpdr_main.c b/channels/rdpdr/server/rdpdr_main.c index 112b6b33c..a3333eb42 100644 --- a/channels/rdpdr/server/rdpdr_main.c +++ b/channels/rdpdr/server/rdpdr_main.c @@ -25,7 +25,7 @@ #include #include -#include +#include #include "rdpdr_main.h" static UINT32 g_ClientId = 0; @@ -37,7 +37,7 @@ static int rdpdr_server_send_announce_request(RdpdrServerContext* context) RDPDR_HEADER header; ULONG written; - DEBUG_MSG("RdpdrServerSendAnnounceRequest\n"); + CLOG_DBG("RdpdrServerSendAnnounceRequest\n"); header.Component = RDPDR_CTYP_CORE; header.PacketId = PAKID_CORE_SERVER_ANNOUNCE; @@ -70,7 +70,7 @@ static int rdpdr_server_receive_announce_response(RdpdrServerContext* context, w Stream_Read_UINT16(s, VersionMinor); /* VersionMinor (2 bytes) */ Stream_Read_UINT32(s, ClientId); /* ClientId (4 bytes) */ - DEBUG_MSG("Client Announce Response: VersionMajor: 0x%04X VersionMinor: 0x%04X ClientId: 0x%04X\n", + CLOG_DBG("Client Announce Response: VersionMajor: 0x%04X VersionMinor: 0x%04X ClientId: 0x%04X\n", VersionMajor, VersionMinor, ClientId); context->priv->ClientId = ClientId; @@ -110,7 +110,7 @@ static int rdpdr_server_receive_client_name_request(RdpdrServerContext* context, Stream_Seek(s, ComputerNameLen); - DEBUG_MSG("ClientComputerName: %s\n", context->priv->ClientComputerName); + CLOG_DBG("ClientComputerName: %s\n", context->priv->ClientComputerName); return 0; } @@ -299,7 +299,7 @@ static int rdpdr_server_send_core_capability_request(RdpdrServerContext* context UINT16 numCapabilities; ULONG written; - DEBUG_MSG("RdpdrServerSendCoreCapabilityRequest\n"); + CLOG_DBG("RdpdrServerSendCoreCapabilityRequest\n"); header.Component = RDPDR_CTYP_CORE; header.PacketId = PAKID_CORE_SERVER_CAPABILITY; @@ -365,7 +365,7 @@ static int rdpdr_server_receive_core_capability_response(RdpdrServerContext* con break; default: - DEBUG_MSG("Unknown capabilityType %d\n", capabilityHeader.CapabilityType); + CLOG_DBG("Unknown capabilityType %d\n", capabilityHeader.CapabilityType); Stream_Seek(s, capabilityHeader.CapabilityLength - RDPDR_CAPABILITY_HEADER_LENGTH); break; } @@ -381,7 +381,7 @@ static int rdpdr_server_send_client_id_confirm(RdpdrServerContext* context) RDPDR_HEADER header; ULONG written; - DEBUG_MSG("RdpdrServerSendClientIdConfirm\n"); + CLOG_DBG("RdpdrServerSendClientIdConfirm\n"); header.Component = RDPDR_CTYP_CORE; header.PacketId = PAKID_CORE_CLIENTID_CONFIRM; @@ -417,7 +417,7 @@ static int rdpdr_server_receive_device_list_announce_request(RdpdrServerContext* Stream_Read_UINT32(s, DeviceCount); /* DeviceCount (4 bytes) */ - DEBUG_MSG("%s: DeviceCount: %d\n", __FUNCTION__, DeviceCount); + CLOG_DBG("%s: DeviceCount: %d\n", __FUNCTION__, DeviceCount); for (i = 0; i < DeviceCount; i++) { @@ -426,7 +426,7 @@ static int rdpdr_server_receive_device_list_announce_request(RdpdrServerContext* Stream_Read(s, PreferredDosName, 8); /* PreferredDosName (8 bytes) */ Stream_Read_UINT32(s, DeviceDataLength); /* DeviceDataLength (4 bytes) */ - DEBUG_MSG("Device %d Name: %s Id: 0x%04X DataLength: %d\n", + CLOG_DBG("Device %d Name: %s Id: 0x%04X DataLength: %d\n", i, PreferredDosName, DeviceId, DeviceDataLength); switch (DeviceId) @@ -463,7 +463,7 @@ static int rdpdr_server_send_user_logged_on(RdpdrServerContext* context) RDPDR_HEADER header; ULONG written; - DEBUG_MSG("%s\n", __FUNCTION__); + CLOG_DBG("%s\n", __FUNCTION__); header.Component = RDPDR_CTYP_CORE; header.PacketId = PAKID_CORE_USER_LOGGEDON; @@ -484,7 +484,7 @@ static int rdpdr_server_send_user_logged_on(RdpdrServerContext* context) static int rdpdr_server_receive_pdu(RdpdrServerContext* context, wStream* s, RDPDR_HEADER* header) { - DEBUG_MSG("RdpdrServerReceivePdu: Component: 0x%04X PacketId: 0x%04X\n", + CLOG_DBG("RdpdrServerReceivePdu: Component: 0x%04X PacketId: 0x%04X\n", header->Component, header->PacketId); winpr_HexDump(Stream_Buffer(s), Stream_Length(s)); @@ -546,7 +546,7 @@ static int rdpdr_server_receive_pdu(RdpdrServerContext* context, wStream* s, RDP } else { - DEBUG_MSG("Unknown RDPDR_HEADER.Component: 0x%04X\n", header->Component); + CLOG_DBG("Unknown RDPDR_HEADER.Component: 0x%04X\n", header->Component); return -1; } diff --git a/channels/rdpei/client/rdpei_main.c b/channels/rdpei/client/rdpei_main.c index 18e0d29ec..46729f028 100644 --- a/channels/rdpei/client/rdpei_main.c +++ b/channels/rdpei/client/rdpei_main.c @@ -201,7 +201,7 @@ int rdpei_send_pdu(RDPEI_CHANNEL_CALLBACK* callback, wStream* s, UINT16 eventId, status = callback->channel->Write(callback->channel, (UINT32) Stream_Length(s), Stream_Buffer(s), NULL); #ifdef WITH_DEBUG_RDPEI - DEBUG_WARN( "rdpei_send_pdu: eventId: %d (%s) length: %d status: %d\n", + CLOG_ERR( "rdpei_send_pdu: eventId: %d (%s) length: %d status: %d\n", eventId, RDPEI_EVENTID_STRINGS[eventId], pduLength, status); #endif @@ -239,17 +239,17 @@ int rdpei_send_cs_ready_pdu(RDPEI_CHANNEL_CALLBACK* callback) void rdpei_print_contact_flags(UINT32 contactFlags) { if (contactFlags & CONTACT_FLAG_DOWN) - DEBUG_MSG(" CONTACT_FLAG_DOWN"); + CLOG_DBG(" CONTACT_FLAG_DOWN"); if (contactFlags & CONTACT_FLAG_UPDATE) - DEBUG_MSG(" CONTACT_FLAG_UPDATE"); + CLOG_DBG(" CONTACT_FLAG_UPDATE"); if (contactFlags & CONTACT_FLAG_UP) - DEBUG_MSG(" CONTACT_FLAG_UP"); + CLOG_DBG(" CONTACT_FLAG_UP"); if (contactFlags & CONTACT_FLAG_INRANGE) - DEBUG_MSG(" CONTACT_FLAG_INRANGE"); + CLOG_DBG(" CONTACT_FLAG_INRANGE"); if (contactFlags & CONTACT_FLAG_INCONTACT) - DEBUG_MSG(" CONTACT_FLAG_INCONTACT"); + CLOG_DBG(" CONTACT_FLAG_INCONTACT"); if (contactFlags & CONTACT_FLAG_CANCELED) - DEBUG_MSG(" CONTACT_FLAG_CANCELED"); + CLOG_DBG(" CONTACT_FLAG_CANCELED"); } int rdpei_write_touch_frame(wStream* s, RDPINPUT_TOUCH_FRAME* frame) @@ -259,8 +259,8 @@ int rdpei_write_touch_frame(wStream* s, RDPINPUT_TOUCH_FRAME* frame) RDPINPUT_CONTACT_DATA* contact; #ifdef WITH_DEBUG_RDPEI - DEBUG_MSG("contactCount: %d\n", frame->contactCount); - DEBUG_MSG("frameOffset: 0x%08X\n", (UINT32) frame->frameOffset); + CLOG_DBG("contactCount: %d\n", frame->contactCount); + CLOG_DBG("frameOffset: 0x%08X\n", (UINT32) frame->frameOffset); #endif rdpei_write_2byte_unsigned(s, frame->contactCount); /* contactCount (TWO_BYTE_UNSIGNED_INTEGER) */ @@ -284,13 +284,13 @@ int rdpei_write_touch_frame(wStream* s, RDPINPUT_TOUCH_FRAME* frame) contact->contactRectBottom = contact->y + rectSize; #ifdef WITH_DEBUG_RDPEI - DEBUG_MSG("contact[%d].contactId: %d\n", index, contact->contactId); - DEBUG_MSG("contact[%d].fieldsPresent: %d\n", index, contact->fieldsPresent); - DEBUG_MSG("contact[%d].x: %d\n", index, contact->x); - DEBUG_MSG("contact[%d].y: %d\n", index, contact->y); - DEBUG_MSG("contact[%d].contactFlags: 0x%04X", index, contact->contactFlags); + CLOG_DBG("contact[%d].contactId: %d\n", index, contact->contactId); + CLOG_DBG("contact[%d].fieldsPresent: %d\n", index, contact->fieldsPresent); + CLOG_DBG("contact[%d].x: %d\n", index, contact->x); + CLOG_DBG("contact[%d].y: %d\n", index, contact->y); + CLOG_DBG("contact[%d].contactFlags: 0x%04X", index, contact->contactFlags); rdpei_print_contact_flags(contact->contactFlags); - DEBUG_MSG("\n"); + CLOG_DBG("\n"); #endif Stream_Write_UINT8(s, contact->contactId); /* contactId (1 byte) */ @@ -371,7 +371,7 @@ int rdpei_recv_sc_ready_pdu(RDPEI_CHANNEL_CALLBACK* callback, wStream* s) #if 0 if (protocolVersion != RDPINPUT_PROTOCOL_V10) { - DEBUG_WARN( "Unknown [MS-RDPEI] protocolVersion: 0x%08X\n", protocolVersion); + CLOG_ERR( "Unknown [MS-RDPEI] protocolVersion: 0x%08X\n", protocolVersion); return -1; } #endif @@ -408,7 +408,7 @@ int rdpei_recv_pdu(RDPEI_CHANNEL_CALLBACK* callback, wStream* s) Stream_Read_UINT32(s, pduLength); /* pduLength (4 bytes) */ #ifdef WITH_DEBUG_RDPEI - DEBUG_WARN( "rdpei_recv_pdu: eventId: %d (%s) length: %d\n", + CLOG_ERR( "rdpei_recv_pdu: eventId: %d (%s) length: %d\n", eventId, RDPEI_EVENTID_STRINGS[eventId], pduLength); #endif diff --git a/channels/rdpei/client/rdpei_main.h b/channels/rdpei/client/rdpei_main.h index cf4dccee0..509517bb6 100644 --- a/channels/rdpei/client/rdpei_main.h +++ b/channels/rdpei/client/rdpei_main.h @@ -27,7 +27,7 @@ #include #include #include -#include +#include #include @@ -100,9 +100,9 @@ struct _RDPINPUT_CONTACT_POINT typedef struct _RDPINPUT_CONTACT_POINT RDPINPUT_CONTACT_POINT; #ifdef WITH_DEBUG_DVC -#define DEBUG_DVC(fmt, ...) DEBUG_CLASS(DVC, fmt, ## __VA_ARGS__) +#define DEBUG_DVC(fmt, ...) CLOG_CLASS(DVC, fmt, ## __VA_ARGS__) #else -#define DEBUG_DVC(fmt, ...) DEBUG_NULL(fmt, ## __VA_ARGS__) +#define DEBUG_DVC(fmt, ...) CLOG_NULL(fmt, ## __VA_ARGS__) #endif #endif /* FREERDP_CHANNEL_RDPEI_CLIENT_MAIN_H */ diff --git a/channels/rdpgfx/client/rdpgfx_main.c b/channels/rdpgfx/client/rdpgfx_main.c index 8bca50d4a..a132eb17b 100644 --- a/channels/rdpgfx/client/rdpgfx_main.c +++ b/channels/rdpgfx/client/rdpgfx_main.c @@ -37,7 +37,7 @@ #include #include -#include +#include #include "rdpgfx_common.h" #include "rdpgfx_codec.h" @@ -803,7 +803,7 @@ int rdpgfx_recv_pdu(RDPGFX_CHANNEL_CALLBACK* callback, wStream* s) if (status < 0) { - DEBUG_WARN( "Error while parsing GFX cmdId: %s (0x%04X)\n", + CLOG_ERR( "Error while parsing GFX cmdId: %s (0x%04X)\n", rdpgfx_get_cmd_id_string(header.cmdId), header.cmdId); return -1; } @@ -812,7 +812,7 @@ int rdpgfx_recv_pdu(RDPGFX_CHANNEL_CALLBACK* callback, wStream* s) if (end != (beg + header.pduLength)) { - DEBUG_WARN( "Unexpected gfx pdu end: Actual: %d, Expected: %d\n", + CLOG_ERR( "Unexpected gfx pdu end: Actual: %d, Expected: %d\n", end, (beg + header.pduLength)); Stream_SetPosition(s, (beg + header.pduLength)); @@ -834,7 +834,7 @@ static int rdpgfx_on_data_received(IWTSVirtualChannelCallback* pChannelCallback, if (status < 0) { - DEBUG_MSG("zgfx_decompress failure! status: %d\n", status); + CLOG_DBG("zgfx_decompress failure! status: %d\n", status); return 0; } diff --git a/channels/rdpsnd/client/alsa/rdpsnd_alsa.c b/channels/rdpsnd/client/alsa/rdpsnd_alsa.c index 0ea935f5e..70ad41c76 100644 --- a/channels/rdpsnd/client/alsa/rdpsnd_alsa.c +++ b/channels/rdpsnd/client/alsa/rdpsnd_alsa.c @@ -35,7 +35,7 @@ #include #include -#include +#include #include "rdpsnd_main.h" @@ -68,7 +68,7 @@ struct rdpsnd_alsa_plugin #define SND_PCM_CHECK(_func, _status) \ if (_status < 0) \ { \ - DEBUG_WARN( "%s: %d\n", _func, _status); \ + CLOG_ERR( "%s: %d\n", _func, _status); \ return -1; \ } @@ -106,7 +106,7 @@ static int rdpsnd_alsa_set_hw_params(rdpsndAlsaPlugin* alsa) if (alsa->buffer_size > buffer_size_max) { - DEBUG_WARN( "Warning: requested sound buffer size %d, got %d instead\n", + CLOG_ERR( "Warning: requested sound buffer size %d, got %d instead\n", (int) alsa->buffer_size, (int) buffer_size_max); alsa->buffer_size = buffer_size_max; } @@ -262,7 +262,7 @@ static void rdpsnd_alsa_open_mixer(rdpsndAlsaPlugin* alsa) if (status < 0) { - DEBUG_WARN("snd_mixer_open failed"); + CLOG_ERR("snd_mixer_open failed"); return; } @@ -270,7 +270,7 @@ static void rdpsnd_alsa_open_mixer(rdpsndAlsaPlugin* alsa) if (status < 0) { - DEBUG_WARN("snd_mixer_attach failed"); + CLOG_ERR("snd_mixer_attach failed"); snd_mixer_close(alsa->mixer_handle); return; } @@ -279,7 +279,7 @@ static void rdpsnd_alsa_open_mixer(rdpsndAlsaPlugin* alsa) if (status < 0) { - DEBUG_WARN("snd_mixer_selem_register failed"); + CLOG_ERR("snd_mixer_selem_register failed"); snd_mixer_close(alsa->mixer_handle); return; } @@ -288,7 +288,7 @@ static void rdpsnd_alsa_open_mixer(rdpsndAlsaPlugin* alsa) if (status < 0) { - DEBUG_WARN("snd_mixer_load failed"); + CLOG_ERR("snd_mixer_load failed"); snd_mixer_close(alsa->mixer_handle); return; } @@ -310,7 +310,7 @@ static void rdpsnd_alsa_open(rdpsndDevicePlugin* device, AUDIO_FORMAT* format, i if (status < 0) { - DEBUG_WARN("snd_pcm_open failed"); + CLOG_ERR("snd_pcm_open failed"); } else { @@ -579,7 +579,7 @@ static void rdpsnd_alsa_wave_play(rdpsndDevicePlugin* device, RDPSND_WAVE* wave) } else if (status < 0) { - DEBUG_WARN( "status: %d\n", status); + CLOG_ERR( "status: %d\n", status); snd_pcm_close(alsa->pcm_handle); alsa->pcm_handle = NULL; rdpsnd_alsa_open((rdpsndDevicePlugin*) alsa, NULL, alsa->latency); @@ -600,7 +600,7 @@ static void rdpsnd_alsa_wave_play(rdpsndDevicePlugin* device, RDPSND_WAVE* wave) wave->wLatency = (UINT16) (wave->wLocalTimeB - wave->wLocalTimeA); wave->wTimeStampB = wave->wTimeStampA + wave->wLatency; - //DEBUG_WARN( "wTimeStampA: %d wTimeStampB: %d wLatency: %d\n", wave->wTimeStampA, wave->wTimeStampB, wave->wLatency); + //CLOG_ERR( "wTimeStampA: %d wTimeStampB: %d wLatency: %d\n", wave->wTimeStampA, wave->wTimeStampB, wave->wLatency); } static COMMAND_LINE_ARGUMENT_A rdpsnd_alsa_args[] = diff --git a/channels/rdpsnd/client/ios/TPCircularBuffer.c b/channels/rdpsnd/client/ios/TPCircularBuffer.c index 47143ea03..44949e2e8 100644 --- a/channels/rdpsnd/client/ios/TPCircularBuffer.c +++ b/channels/rdpsnd/client/ios/TPCircularBuffer.c @@ -37,7 +37,7 @@ #define reportResult(result,operation) (_reportResult((result),(operation),__FILE__,__LINE__)) static inline bool _reportResult(kern_return_t result, const char *operation, const char* file, int line) { if ( result != ERR_SUCCESS ) { - DEBUG_MSG("%s:%d: %s: %s\n", file, line, operation, mach_error_string(result)); + CLOG_DBG("%s:%d: %s: %s\n", file, line, operation, mach_error_string(result)); return false; } return true; @@ -108,7 +108,7 @@ bool TPCircularBufferInit(TPCircularBuffer *buffer, int length) { if ( virtualAddress != bufferAddress+buffer->length ) { // If the memory is not contiguous, clean up both allocated buffers and try again if ( retries-- == 0 ) { - DEBUG_MSG("Couldn't map buffer memory to end of buffer\n"); + CLOG_DBG("Couldn't map buffer memory to end of buffer\n"); return false; } diff --git a/channels/rdpsnd/client/mac/rdpsnd_mac.c b/channels/rdpsnd/client/mac/rdpsnd_mac.c index fe2a21ef2..8bff23b0f 100644 --- a/channels/rdpsnd/client/mac/rdpsnd_mac.c +++ b/channels/rdpsnd/client/mac/rdpsnd_mac.c @@ -121,7 +121,7 @@ static void rdpsnd_mac_open(rdpsndDevicePlugin* device, AUDIO_FORMAT* format, in if (status != 0) { - DEBUG_WARN( "AudioQueueNewOutput failure\n"); + CLOG_ERR( "AudioQueueNewOutput failure\n"); return; } @@ -135,7 +135,7 @@ static void rdpsnd_mac_open(rdpsndDevicePlugin* device, AUDIO_FORMAT* format, in if (status != 0) { - DEBUG_MSG("AudioQueueGetProperty failure: kAudioQueueProperty_DecodeBufferSizeFrames\n"); + CLOG_DBG("AudioQueueGetProperty failure: kAudioQueueProperty_DecodeBufferSizeFrames\n"); } for (index = 0; index < MAC_AUDIO_QUEUE_NUM_BUFFERS; index++) @@ -144,7 +144,7 @@ static void rdpsnd_mac_open(rdpsndDevicePlugin* device, AUDIO_FORMAT* format, in if (status != 0) { - DEBUG_WARN( "AudioQueueAllocateBuffer failed\n"); + CLOG_ERR( "AudioQueueAllocateBuffer failed\n"); } } @@ -219,7 +219,7 @@ static void rdpsnd_mac_set_volume(rdpsndDevicePlugin* device, UINT32 value) if (status != 0) { - DEBUG_WARN( "AudioQueueSetParameter kAudioQueueParam_Volume failed: %f\n", fVolume); + CLOG_ERR( "AudioQueueSetParameter kAudioQueueParam_Volume failed: %f\n", fVolume); } } @@ -238,7 +238,7 @@ static void rdpsnd_mac_start(rdpsndDevicePlugin* device) if (status != 0) { - DEBUG_WARN( "AudioQueueStart failed\n"); + CLOG_ERR( "AudioQueueStart failed\n"); } mac->isPlaying = TRUE; diff --git a/channels/rdpsnd/client/opensles/rdpsnd_opensles.c b/channels/rdpsnd/client/opensles/rdpsnd_opensles.c index d836afa33..7047e46e2 100644 --- a/channels/rdpsnd/client/opensles/rdpsnd_opensles.c +++ b/channels/rdpsnd/client/opensles/rdpsnd_opensles.c @@ -35,7 +35,7 @@ #include #include -#include +#include #include "opensl_io.h" #include "rdpsnd_main.h" @@ -187,7 +187,7 @@ static void rdpsnd_opensles_open(rdpsndDevicePlugin* device, assert(opensles->stream); if (!opensles->stream) - DEBUG_WARN("android_OpenAudioDevice failed"); + CLOG_ERR("android_OpenAudioDevice failed"); else rdpsnd_opensles_set_volume(device, opensles->volume); @@ -364,7 +364,7 @@ static void rdpsnd_opensles_play(rdpsndDevicePlugin* device, ret = android_AudioOut(opensles->stream, src.s, size / 2); if (ret < 0) - DEBUG_WARN("android_AudioOut failed (%d)", ret); + CLOG_ERR("android_AudioOut failed (%d)", ret); } static void rdpsnd_opensles_start(rdpsndDevicePlugin* device) diff --git a/channels/rdpsnd/client/rdpsnd_main.c b/channels/rdpsnd/client/rdpsnd_main.c index f72ff8279..b7e9eaef5 100644 --- a/channels/rdpsnd/client/rdpsnd_main.c +++ b/channels/rdpsnd/client/rdpsnd_main.c @@ -45,7 +45,7 @@ #include #include #include -#include +#include #include #include "rdpsnd_main.h" @@ -195,13 +195,13 @@ void rdpsnd_select_supported_audio_formats(rdpsndPlugin* rdpsnd) } #if 0 - DEBUG_WARN( "Server "); + CLOG_ERR( "Server "); rdpsnd_print_audio_formats(rdpsnd->ServerFormats, rdpsnd->NumberOfServerFormats); - DEBUG_WARN( "\n"); + CLOG_ERR( "\n"); - DEBUG_WARN( "Client "); + CLOG_ERR( "Client "); rdpsnd_print_audio_formats(rdpsnd->ClientFormats, rdpsnd->NumberOfClientFormats); - DEBUG_WARN( "\n"); + CLOG_ERR( "\n"); #endif } @@ -544,7 +544,7 @@ static void rdpsnd_recv_pdu(rdpsndPlugin* rdpsnd, wStream* s) Stream_Seek_UINT8(s); /* bPad */ Stream_Read_UINT16(s, BodySize); - //DEBUG_WARN( "msgType %d BodySize %d\n", msgType, BodySize); + //CLOG_ERR( "msgType %d BodySize %d\n", msgType, BodySize); switch (msgType) { @@ -569,7 +569,7 @@ static void rdpsnd_recv_pdu(rdpsndPlugin* rdpsnd, wStream* s) break; default: - DEBUG_WARN("unknown msgType %d", msgType); + CLOG_ERR("unknown msgType %d", msgType); break; } @@ -580,7 +580,7 @@ static void rdpsnd_register_device_plugin(rdpsndPlugin* rdpsnd, rdpsndDevicePlug { if (rdpsnd->device) { - DEBUG_WARN("existing device, abort."); + CLOG_ERR("existing device, abort."); return; } @@ -606,7 +606,7 @@ static BOOL rdpsnd_load_device_plugin(rdpsndPlugin* rdpsnd, const char* name, AD if (entry(&entryPoints) != 0) { - DEBUG_WARN("%s entry returns error.", name); + CLOG_ERR("%s entry returns error.", name); return FALSE; } @@ -795,7 +795,7 @@ static void rdpsnd_process_connect(rdpsndPlugin* rdpsnd) if (!rdpsnd->device) { - DEBUG_WARN("no sound device."); + CLOG_ERR("no sound device."); return; } @@ -875,7 +875,7 @@ int rdpsnd_virtual_channel_write(rdpsndPlugin* rdpsnd, wStream* s) if (status != CHANNEL_RC_OK) { Stream_Free(s, TRUE); - DEBUG_WARN( "rdpdr_virtual_channel_write: VirtualChannelWrite failed %d\n", status); + CLOG_ERR( "rdpdr_virtual_channel_write: VirtualChannelWrite failed %d\n", status); } return status; @@ -907,7 +907,7 @@ static void rdpsnd_virtual_channel_event_data_received(rdpsndPlugin* plugin, { if (Stream_Capacity(s) != Stream_GetPosition(s)) { - DEBUG_WARN( "rdpsnd_virtual_channel_event_data_received: read error\n"); + CLOG_ERR( "rdpsnd_virtual_channel_event_data_received: read error\n"); } plugin->data_in = NULL; @@ -927,7 +927,7 @@ static VOID VCAPITYPE rdpsnd_virtual_channel_open_event(DWORD openHandle, UINT e if (!plugin) { - DEBUG_WARN( "rdpsnd_virtual_channel_open_event: error no match\n"); + CLOG_ERR( "rdpsnd_virtual_channel_open_event: error no match\n"); return; } @@ -987,7 +987,7 @@ static void rdpsnd_virtual_channel_event_connected(rdpsndPlugin* plugin, LPVOID if (status != CHANNEL_RC_OK) { - DEBUG_WARN( "rdpsnd_virtual_channel_event_connected: open failed: status: %d\n", status); + CLOG_ERR( "rdpsnd_virtual_channel_event_connected: open failed: status: %d\n", status); return; } @@ -1040,7 +1040,7 @@ static VOID VCAPITYPE rdpsnd_virtual_channel_init_event(LPVOID pInitHandle, UINT if (!plugin) { - DEBUG_WARN( "rdpsnd_virtual_channel_init_event: error no match\n"); + CLOG_ERR( "rdpsnd_virtual_channel_init_event: error no match\n"); return; } diff --git a/channels/rdpsnd/client/rdpsnd_main.h b/channels/rdpsnd/client/rdpsnd_main.h index 84508a1d5..4b7cb472c 100644 --- a/channels/rdpsnd/client/rdpsnd_main.h +++ b/channels/rdpsnd/client/rdpsnd_main.h @@ -27,7 +27,7 @@ #include #if defined(WITH_DEBUG_SND) -#define DEBUG_SND(fmt, ...) DEBUG_CLASS("rdpsnd", fmt, ## __VA_ARGS__) +#define DEBUG_SND(fmt, ...) CLOG_CLASS("rdpsnd", fmt, ## __VA_ARGS__) #else #define DEBUG_SND(fmt, ...) do { } while (0) #endif diff --git a/channels/rdpsnd/client/winmm/rdpsnd_winmm.c b/channels/rdpsnd/client/winmm/rdpsnd_winmm.c index 8c8e22bc9..bf60d566b 100644 --- a/channels/rdpsnd/client/winmm/rdpsnd_winmm.c +++ b/channels/rdpsnd/client/winmm/rdpsnd_winmm.c @@ -101,11 +101,11 @@ static void CALLBACK rdpsnd_winmm_callback_function(HWAVEOUT hwo, UINT uMsg, DWO switch (uMsg) { case MM_WOM_OPEN: - DEBUG_WARN( "MM_WOM_OPEN\n"); + CLOG_ERR( "MM_WOM_OPEN\n"); break; case MM_WOM_CLOSE: - DEBUG_WARN( "MM_WOM_CLOSE\n"); + CLOG_ERR( "MM_WOM_CLOSE\n"); break; case MM_WOM_DONE: @@ -121,7 +121,7 @@ static void CALLBACK rdpsnd_winmm_callback_function(HWAVEOUT hwo, UINT uMsg, DWO if (!wave) return; - DEBUG_WARN( "MM_WOM_DONE: dwBufferLength: %d cBlockNo: %d\n", + CLOG_ERR( "MM_WOM_DONE: dwBufferLength: %d cBlockNo: %d\n", lpWaveHdr->dwBufferLength, wave->cBlockNo); wave->wLocalTimeB = GetTickCount(); @@ -155,7 +155,7 @@ static void rdpsnd_winmm_open(rdpsndDevicePlugin* device, AUDIO_FORMAT* format, if (mmResult != MMSYSERR_NOERROR) { - DEBUG_WARN( "waveOutOpen failed: %d\n", mmResult); + CLOG_ERR( "waveOutOpen failed: %d\n", mmResult); } } @@ -172,7 +172,7 @@ static void rdpsnd_winmm_close(rdpsndDevicePlugin* device) if (mmResult != MMSYSERR_NOERROR) { - DEBUG_WARN( "waveOutClose failure: %d\n", mmResult); + CLOG_ERR( "waveOutClose failure: %d\n", mmResult); } winmm->hWaveOut = NULL; @@ -299,7 +299,7 @@ void rdpsnd_winmm_wave_play(rdpsndDevicePlugin* device, RDPSND_WAVE* wave) if (mmResult != MMSYSERR_NOERROR) { - DEBUG_WARN( "waveOutPrepareHeader failure: %d\n", mmResult); + CLOG_ERR( "waveOutPrepareHeader failure: %d\n", mmResult); return; } @@ -307,7 +307,7 @@ void rdpsnd_winmm_wave_play(rdpsndDevicePlugin* device, RDPSND_WAVE* wave) if (mmResult != MMSYSERR_NOERROR) { - DEBUG_WARN( "waveOutWrite failure: %d\n", mmResult); + CLOG_ERR( "waveOutWrite failure: %d\n", mmResult); waveOutUnprepareHeader(winmm->hWaveOut, lpWaveHdr, sizeof(WAVEHDR)); return; } diff --git a/channels/rdpsnd/server/rdpsnd_main.c b/channels/rdpsnd/server/rdpsnd_main.c index af435008c..f830a0ffc 100644 --- a/channels/rdpsnd/server/rdpsnd_main.c +++ b/channels/rdpsnd/server/rdpsnd_main.c @@ -29,7 +29,7 @@ #include #include -#include +#include #include "rdpsnd_main.h" @@ -110,7 +110,7 @@ static BOOL rdpsnd_server_recv_quality_mode(RdpsndServerContext* context, wStrea Stream_Read_UINT16(s, quality); Stream_Seek_UINT16(s); // reserved - DEBUG_WARN( "Client requested sound quality: %#0X\n", quality); + CLOG_ERR( "Client requested sound quality: %#0X\n", quality); return TRUE; } @@ -139,7 +139,7 @@ static BOOL rdpsnd_server_recv_formats(RdpsndServerContext* context, wStream* s) if (!context->num_client_formats) { - DEBUG_WARN( "%s: client doesn't support any format!\n", __FUNCTION__); + CLOG_ERR( "%s: client doesn't support any format!\n", __FUNCTION__); return FALSE; } @@ -176,7 +176,7 @@ static BOOL rdpsnd_server_recv_formats(RdpsndServerContext* context, wStream* s) if (!context->num_client_formats) { - DEBUG_WARN( "%s: client doesn't support any known format!\n", __FUNCTION__); + CLOG_ERR( "%s: client doesn't support any known format!\n", __FUNCTION__); goto out_free; } @@ -232,7 +232,7 @@ static BOOL rdpsnd_server_select_format(RdpsndServerContext* context, int client if (client_format_index < 0 || client_format_index >= context->num_client_formats) { - DEBUG_WARN( "%s: index %d is not correct.\n", __FUNCTION__, client_format_index); + CLOG_ERR( "%s: index %d is not correct.\n", __FUNCTION__, client_format_index); return FALSE; } @@ -244,7 +244,7 @@ static BOOL rdpsnd_server_select_format(RdpsndServerContext* context, int client if (format->nSamplesPerSec == 0) { - DEBUG_WARN( "%s: invalid Client Sound Format!!\n", __FUNCTION__); + CLOG_ERR( "%s: invalid Client Sound Format!!\n", __FUNCTION__); return FALSE; } @@ -477,7 +477,7 @@ static int rdpsnd_server_start(RdpsndServerContext* context) if (!WTSVirtualChannelQuery(priv->ChannelHandle, WTSVirtualEventHandle, &buffer, &bytesReturned) || (bytesReturned != sizeof(HANDLE))) { - DEBUG_WARN( "%s: error during WTSVirtualChannelQuery(WTSVirtualEventHandle) or invalid returned size(%d)\n", + CLOG_ERR( "%s: error during WTSVirtualChannelQuery(WTSVirtualEventHandle) or invalid returned size(%d)\n", __FUNCTION__, bytesReturned); if (buffer) WTSFreeMemory(buffer); @@ -633,7 +633,7 @@ BOOL rdpsnd_server_handle_messages(RdpsndServerContext *context) if (GetLastError() == ERROR_NO_DATA) return TRUE; - DEBUG_WARN( "%s: channel connection closed\n", __FUNCTION__); + CLOG_ERR( "%s: channel connection closed\n", __FUNCTION__); return FALSE; } priv->expectedBytes -= bytesReturned; @@ -661,7 +661,7 @@ BOOL rdpsnd_server_handle_messages(RdpsndServerContext *context) /* when here we have the header + the body */ #ifdef WITH_DEBUG_SND - DEBUG_WARN( "%s: message type %d\n", __FUNCTION__, priv->msgType); + CLOG_ERR( "%s: message type %d\n", __FUNCTION__, priv->msgType); #endif priv->expectedBytes = 4; priv->waitingHeader = TRUE; @@ -687,7 +687,7 @@ BOOL rdpsnd_server_handle_messages(RdpsndServerContext *context) break; default: - DEBUG_WARN( "%s: UNKOWN MESSAGE TYPE!! (%#0X)\n\n", __FUNCTION__, priv->msgType); + CLOG_ERR( "%s: UNKOWN MESSAGE TYPE!! (%#0X)\n\n", __FUNCTION__, priv->msgType); ret = FALSE; break; } diff --git a/channels/remdesk/client/remdesk_main.c b/channels/remdesk/client/remdesk_main.c index 4917b6efc..8a38c7297 100644 --- a/channels/remdesk/client/remdesk_main.c +++ b/channels/remdesk/client/remdesk_main.c @@ -26,7 +26,7 @@ #include -#include +#include #include #include "remdesk_main.h" @@ -50,7 +50,7 @@ int remdesk_virtual_channel_write(remdeskPlugin* remdesk, wStream* s) if (status != CHANNEL_RC_OK) { - DEBUG_WARN( "remdesk_virtual_channel_write: VirtualChannelWrite failed %d\n", status); + CLOG_ERR( "remdesk_virtual_channel_write: VirtualChannelWrite failed %d\n", status); return -1; } @@ -226,7 +226,7 @@ int remdesk_recv_result_pdu(remdeskPlugin* remdesk, wStream* s, REMDESK_CHANNEL_ *pResult = result; - //DEBUG_MSG("RemdeskRecvResult: 0x%04X\n", result); + //CLOG_DBG("RemdeskRecvResult: 0x%04X\n", result); return 1; } @@ -397,7 +397,7 @@ int remdesk_recv_ctl_pdu(remdeskPlugin* remdesk, wStream* s, REMDESK_CHANNEL_HEA Stream_Read_UINT32(s, msgType); /* msgType (4 bytes) */ - //DEBUG_MSG("msgType: %d\n", msgType); + //CLOG_DBG("msgType: %d\n", msgType); switch (msgType) { @@ -462,7 +462,7 @@ int remdesk_recv_ctl_pdu(remdeskPlugin* remdesk, wStream* s, REMDESK_CHANNEL_HEA break; default: - DEBUG_WARN( "remdesk_recv_control_pdu: unknown msgType: %d\n", msgType); + CLOG_ERR( "remdesk_recv_control_pdu: unknown msgType: %d\n", msgType); status = -1; break; } @@ -476,7 +476,7 @@ int remdesk_process_receive(remdeskPlugin* remdesk, wStream* s) REMDESK_CHANNEL_HEADER header; #if 0 - DEBUG_MSG("RemdeskReceive: %d\n", Stream_GetRemainingLength(s)); + CLOG_DBG("RemdeskReceive: %d\n", Stream_GetRemainingLength(s)); winpr_HexDump(Stream_Pointer(s), Stream_GetRemainingLength(s)); #endif @@ -586,7 +586,7 @@ int remdesk_send(remdeskPlugin* remdesk, wStream* s) if (status != CHANNEL_RC_OK) { Stream_Free(s, TRUE); - DEBUG_WARN( "remdesk_send: VirtualChannelWrite failed %d\n", status); + CLOG_ERR( "remdesk_send: VirtualChannelWrite failed %d\n", status); } return status; @@ -618,7 +618,7 @@ static void remdesk_virtual_channel_event_data_received(remdeskPlugin* remdesk, { if (Stream_Capacity(data_in) != Stream_GetPosition(data_in)) { - DEBUG_WARN( "remdesk_plugin_process_received: read error\n"); + CLOG_ERR( "remdesk_plugin_process_received: read error\n"); } remdesk->data_in = NULL; @@ -638,7 +638,7 @@ static VOID VCAPITYPE remdesk_virtual_channel_open_event(DWORD openHandle, UINT if (!remdesk) { - DEBUG_WARN( "remdesk_virtual_channel_open_event: error no match\n"); + CLOG_ERR( "remdesk_virtual_channel_open_event: error no match\n"); return; } @@ -698,7 +698,7 @@ static void remdesk_virtual_channel_event_connected(remdeskPlugin* remdesk, LPVO if (status != CHANNEL_RC_OK) { - DEBUG_WARN( "remdesk_virtual_channel_event_connected: open failed: status: %d\n", status); + CLOG_ERR( "remdesk_virtual_channel_event_connected: open failed: status: %d\n", status); return; } @@ -736,7 +736,7 @@ static VOID VCAPITYPE remdesk_virtual_channel_init_event(LPVOID pInitHandle, UIN if (!remdesk) { - DEBUG_WARN( "remdesk_virtual_channel_init_event: error no match\n"); + CLOG_ERR( "remdesk_virtual_channel_init_event: error no match\n"); return; } diff --git a/channels/smartcard/client/smartcard_main.c b/channels/smartcard/client/smartcard_main.c index 4d18979b9..9baf16355 100644 --- a/channels/smartcard/client/smartcard_main.c +++ b/channels/smartcard/client/smartcard_main.c @@ -372,7 +372,7 @@ void smartcard_process_irp(SMARTCARD_DEVICE* smartcard, IRP* irp) } else { - DEBUG_WARN( "Unexpected SmartCard IRP: MajorFunction 0x%08X MinorFunction: 0x%08X", + CLOG_ERR( "Unexpected SmartCard IRP: MajorFunction 0x%08X MinorFunction: 0x%08X", irp->MajorFunction, irp->MinorFunction); irp->IoStatus = STATUS_NOT_SUPPORTED; diff --git a/channels/smartcard/client/smartcard_main.h b/channels/smartcard/client/smartcard_main.h index e0172d424..c2ef362f8 100644 --- a/channels/smartcard/client/smartcard_main.h +++ b/channels/smartcard/client/smartcard_main.h @@ -21,7 +21,7 @@ #ifndef FREERDP_CHANNEL_SMARTCARD_CLIENT_MAIN_H #define FREERDP_CHANNEL_SMARTCARD_CLIENT_MAIN_H -#include +#include #include #include diff --git a/channels/smartcard/client/smartcard_operations.c b/channels/smartcard/client/smartcard_operations.c index 59155c703..9d043d1fd 100644 --- a/channels/smartcard/client/smartcard_operations.c +++ b/channels/smartcard/client/smartcard_operations.c @@ -1142,7 +1142,7 @@ UINT32 smartcard_irp_device_control_decode(SMARTCARD_DEVICE* smartcard, SMARTCAR smartcard_get_ioctl_string(ioControlCode, TRUE), ioControlCode, irp->FileId, irp->CompletionId); #if 0 - DEBUG_MSG("%s (0x%08X) FileId: %d CompletionId: %d\n", + CLOG_DBG("%s (0x%08X) FileId: %d CompletionId: %d\n", smartcard_get_ioctl_string(ioControlCode, TRUE), ioControlCode, irp->FileId, irp->CompletionId); #endif diff --git a/channels/tsmf/client/alsa/tsmf_alsa.c b/channels/tsmf/client/alsa/tsmf_alsa.c index d442dca8c..8c95b337c 100644 --- a/channels/tsmf/client/alsa/tsmf_alsa.c +++ b/channels/tsmf/client/alsa/tsmf_alsa.c @@ -56,7 +56,7 @@ static BOOL tsmf_alsa_open_device(TSMFAlsaAudioDevice *alsa) error = snd_pcm_open(&alsa->out_handle, alsa->device, SND_PCM_STREAM_PLAYBACK, 0); if(error < 0) { - DEBUG_WARN("failed to open device %s", alsa->device); + CLOG_ERR("failed to open device %s", alsa->device); return FALSE; } DEBUG_TSMF("open device %s", alsa->device); @@ -95,7 +95,7 @@ static BOOL tsmf_alsa_set_format(ITSMFAudioDevice *audio, error = snd_pcm_hw_params_malloc(&hw_params); if(error < 0) { - DEBUG_WARN("snd_pcm_hw_params_malloc failed"); + CLOG_ERR("snd_pcm_hw_params_malloc failed"); return FALSE; } snd_pcm_hw_params_any(alsa->out_handle, hw_params); @@ -115,7 +115,7 @@ static BOOL tsmf_alsa_set_format(ITSMFAudioDevice *audio, error = snd_pcm_sw_params_malloc(&sw_params); if(error < 0) { - DEBUG_WARN("snd_pcm_sw_params_malloc"); + CLOG_ERR("snd_pcm_sw_params_malloc"); return FALSE; } snd_pcm_sw_params_current(alsa->out_handle, sw_params); diff --git a/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c b/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c index df0421926..fb2921c9a 100644 --- a/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c +++ b/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c @@ -27,7 +27,7 @@ #include -#include +#include #include #include @@ -75,7 +75,7 @@ static BOOL tsmf_ffmpeg_init_context(ITSMFDecoder *decoder) mdecoder->codec_context = avcodec_alloc_context3(NULL); if(!mdecoder->codec_context) { - DEBUG_WARN("avcodec_alloc_context failed."); + CLOG_ERR("avcodec_alloc_context failed."); return FALSE; } return TRUE; @@ -129,7 +129,7 @@ static BOOL tsmf_ffmpeg_init_stream(ITSMFDecoder *decoder, const TS_AM_MEDIA_TYP mdecoder->codec = avcodec_find_decoder(mdecoder->codec_id); if(!mdecoder->codec) { - DEBUG_WARN("avcodec_find_decoder failed."); + CLOG_ERR("avcodec_find_decoder failed."); return FALSE; } mdecoder->codec_context->codec_id = mdecoder->codec_id; @@ -191,7 +191,7 @@ static BOOL tsmf_ffmpeg_prepare(ITSMFDecoder *decoder) TSMFFFmpegDecoder *mdecoder = (TSMFFFmpegDecoder *) decoder; if(avcodec_open2(mdecoder->codec_context, mdecoder->codec, NULL) < 0) { - DEBUG_WARN("avcodec_open2 failed."); + CLOG_ERR("avcodec_open2 failed."); return FALSE; } mdecoder->prepared = 1; @@ -287,13 +287,13 @@ static BOOL tsmf_ffmpeg_decode_video(ITSMFDecoder *decoder, const BYTE *data, UI #endif if(len < 0) { - DEBUG_WARN("data_size %d, avcodec_decode_video failed (%d)", data_size, len); + CLOG_ERR("data_size %d, avcodec_decode_video failed (%d)", data_size, len); ret = FALSE; } else if(!decoded) { - DEBUG_WARN("data_size %d, no frame is decoded.", data_size); + CLOG_ERR("data_size %d, no frame is decoded.", data_size); ret = FALSE; } else @@ -389,7 +389,7 @@ static BOOL tsmf_ffmpeg_decode_audio(ITSMFDecoder *decoder, const BYTE *data, UI #endif if(len <= 0 || frame_size <= 0) { - DEBUG_WARN("error decoding"); + CLOG_ERR("error decoding"); break; } src += len; @@ -429,7 +429,7 @@ static BOOL tsmf_ffmpeg_decode(ITSMFDecoder *decoder, const BYTE *data, UINT32 d case AVMEDIA_TYPE_AUDIO: return tsmf_ffmpeg_decode_audio(decoder, data, data_size, extensions); default: - DEBUG_WARN("unknown media type."); + CLOG_ERR("unknown media type."); return FALSE; } } @@ -453,7 +453,7 @@ static UINT32 tsmf_ffmpeg_get_decoded_format(ITSMFDecoder *decoder) case PIX_FMT_YUV420P: return RDP_PIXFMT_I420; default: - DEBUG_WARN("unsupported pixel format %u", + CLOG_ERR("unsupported pixel format %u", mdecoder->codec_context->pix_fmt); return (UINT32) -1; } @@ -506,7 +506,7 @@ ITSMFDecoder *freerdp_tsmf_client_decoder_subsystem_entry(void) avcodec_register_all(); initialized = TRUE; } - DEBUG_WARN( "TSMFDecoderEntry FFMPEG\n"); + CLOG_ERR( "TSMFDecoderEntry FFMPEG\n"); decoder = (TSMFFFmpegDecoder *) malloc(sizeof(TSMFFFmpegDecoder)); ZeroMemory(decoder, sizeof(TSMFFFmpegDecoder)); decoder->iface.SetFormat = tsmf_ffmpeg_set_format; diff --git a/channels/tsmf/client/gstreamer/tsmf_X11.c b/channels/tsmf/client/gstreamer/tsmf_X11.c index 6acc6eeb3..8db874b12 100644 --- a/channels/tsmf/client/gstreamer/tsmf_X11.c +++ b/channels/tsmf/client/gstreamer/tsmf_X11.c @@ -87,7 +87,7 @@ int tsmf_platform_create(TSMFGstreamerDecoder *decoder) if (!hdl) { - DEBUG_WARN("%s: Could not allocate handle.", __func__); + CLOG_ERR("%s: Could not allocate handle.", __func__); return -1; } @@ -97,7 +97,7 @@ int tsmf_platform_create(TSMFGstreamerDecoder *decoder) if (hdl->shmid < 0) { - DEBUG_WARN("%s: failed to get access to shared memory - shmget()", + CLOG_ERR("%s: failed to get access to shared memory - shmget()", __func__); return -2; } @@ -106,7 +106,7 @@ int tsmf_platform_create(TSMFGstreamerDecoder *decoder) if (hdl->xfwin == (int *)-1) { - DEBUG_WARN("%s: shmat failed!", __func__); + CLOG_ERR("%s: shmat failed!", __func__); return -3; } @@ -114,7 +114,7 @@ int tsmf_platform_create(TSMFGstreamerDecoder *decoder) if (!hdl->disp) { - DEBUG_WARN("Failed to open display"); + CLOG_ERR("Failed to open display"); return -4; } @@ -140,7 +140,7 @@ int tsmf_platform_register_handler(TSMFGstreamerDecoder *decoder) if (!bus) { - DEBUG_WARN("gst_pipeline_get_bus failed!"); + CLOG_ERR("gst_pipeline_get_bus failed!"); return 1; } @@ -193,7 +193,7 @@ int tsmf_window_create(TSMFGstreamerDecoder *decoder) if (!hdl->subwin) { - DEBUG_WARN("Could not create subwindow!"); + CLOG_ERR("Could not create subwindow!"); } XMapWindow(hdl->disp, hdl->subwin); @@ -238,14 +238,14 @@ int tsmf_window_resize(TSMFGstreamerDecoder *decoder, int x, int y, int width, if (!gst_video_overlay_set_render_rectangle(overlay, 0, 0, width, height)) { - DEBUG_WARN("Could not resize overlay!"); + CLOG_ERR("Could not resize overlay!"); } gst_video_overlay_expose(overlay); #else if (!gst_x_overlay_set_render_rectangle(overlay, 0, 0, width, height)) { - DEBUG_WARN("Could not resize overlay!"); + CLOG_ERR("Could not resize overlay!"); } gst_x_overlay_expose(overlay); diff --git a/channels/tsmf/client/gstreamer/tsmf_gstreamer.c b/channels/tsmf/client/gstreamer/tsmf_gstreamer.c index 33a609bef..b4c8635d2 100644 --- a/channels/tsmf/client/gstreamer/tsmf_gstreamer.c +++ b/channels/tsmf/client/gstreamer/tsmf_gstreamer.c @@ -120,10 +120,10 @@ int tsmf_gstreamer_pipeline_set_state(TSMFGstreamerDecoder *mdecoder, GstState d state_change = gst_element_set_state(mdecoder->pipe, desired_state); if (state_change == GST_STATE_CHANGE_FAILURE) - DEBUG_WARN("%s: (%s) GST_STATE_CHANGE_FAILURE.", sname, name); + CLOG_ERR("%s: (%s) GST_STATE_CHANGE_FAILURE.", sname, name); else if (state_change == GST_STATE_CHANGE_ASYNC) { - DEBUG_WARN("%s: (%s) GST_STATE_CHANGE_ASYNC.", sname, name); + CLOG_ERR("%s: (%s) GST_STATE_CHANGE_ASYNC.", sname, name); mdecoder->state = desired_state; } else @@ -142,7 +142,7 @@ static GstBuffer *tsmf_get_buffer_from_data(const void *raw_data, gsize size) if (!data) { - DEBUG_WARN("Could not allocate %"G_GSIZE_FORMAT" bytes of data.", size); + CLOG_ERR("Could not allocate %"G_GSIZE_FORMAT" bytes of data.", size); return NULL; } @@ -154,7 +154,7 @@ static GstBuffer *tsmf_get_buffer_from_data(const void *raw_data, gsize size) if (!buffer) { - DEBUG_WARN("Could not create GstBuffer"); + CLOG_ERR("Could not create GstBuffer"); free(data); return NULL; } @@ -346,7 +346,7 @@ static BOOL tsmf_gstreamer_set_format(ITSMFDecoder *decoder, TS_AM_MEDIA_TYPE *m NULL); break; default: - DEBUG_WARN("unknown format:(%d).", media_type->SubType); + CLOG_ERR("unknown format:(%d).", media_type->SubType); return FALSE; } @@ -358,7 +358,7 @@ static BOOL tsmf_gstreamer_set_format(ITSMFDecoder *decoder, TS_AM_MEDIA_TYPE *m if (!buffer) { - DEBUG_WARN("could not allocate GstBuffer!"); + CLOG_ERR("could not allocate GstBuffer!"); return FALSE; } @@ -416,7 +416,7 @@ BOOL tsmf_gstreamer_pipeline_build(TSMFGstreamerDecoder *mdecoder) if (!mdecoder->pipe) { - DEBUG_WARN("Failed to create new pipe"); + CLOG_ERR("Failed to create new pipe"); return FALSE; } @@ -424,7 +424,7 @@ BOOL tsmf_gstreamer_pipeline_build(TSMFGstreamerDecoder *mdecoder) if (!mdecoder->src) { - DEBUG_WARN("Failed to get appsrc"); + CLOG_ERR("Failed to get appsrc"); return FALSE; } @@ -432,7 +432,7 @@ BOOL tsmf_gstreamer_pipeline_build(TSMFGstreamerDecoder *mdecoder) if (!mdecoder->outsink) { - DEBUG_WARN("Failed to get sink"); + CLOG_ERR("Failed to get sink"); return FALSE; } @@ -442,7 +442,7 @@ BOOL tsmf_gstreamer_pipeline_build(TSMFGstreamerDecoder *mdecoder) if (!mdecoder->volume) { - DEBUG_WARN("Failed to get volume"); + CLOG_ERR("Failed to get volume"); return FALSE; } } @@ -482,7 +482,7 @@ static BOOL tsmf_gstreamer_decodeEx(ITSMFDecoder *decoder, const BYTE *data, UIN if (!mdecoder) { - DEBUG_WARN("Decoder not initialized!"); + CLOG_ERR("Decoder not initialized!"); return FALSE; } @@ -498,13 +498,13 @@ static BOOL tsmf_gstreamer_decodeEx(ITSMFDecoder *decoder, const BYTE *data, UIN if (mdecoder->gst_caps == NULL) { - DEBUG_WARN("tsmf_gstreamer_set_format not called or invalid format."); + CLOG_ERR("tsmf_gstreamer_set_format not called or invalid format."); return FALSE; } if (!mdecoder->src) { - DEBUG_WARN("failed to construct pipeline correctly. Unable to push buffer to source element."); + CLOG_ERR("failed to construct pipeline correctly. Unable to push buffer to source element."); return FALSE; } @@ -512,7 +512,7 @@ static BOOL tsmf_gstreamer_decodeEx(ITSMFDecoder *decoder, const BYTE *data, UIN if (gst_buf == NULL) { - DEBUG_WARN("tsmf_get_buffer_from_data(%p, %d) failed.", data, data_size); + CLOG_ERR("tsmf_get_buffer_from_data(%p, %d) failed.", data, data_size); return FALSE; } @@ -534,7 +534,7 @@ static BOOL tsmf_gstreamer_decodeEx(ITSMFDecoder *decoder, const BYTE *data, UIN GST_SEEK_TYPE_SET, sample_time, GST_SEEK_TYPE_NONE, GST_CLOCK_TIME_NONE)) { - DEBUG_WARN("seek failed"); + CLOG_ERR("seek failed"); } mdecoder->pipeline_start_time_valid = 0; @@ -608,7 +608,7 @@ static void tsmf_gstreamer_control(ITSMFDecoder *decoder, ITSMFControlMsg contro if (mdecoder->paused) { - DEBUG_WARN("%s: Ignoring control PAUSE, already received!", get_type(mdecoder)); + CLOG_ERR("%s: Ignoring control PAUSE, already received!", get_type(mdecoder)); return; } @@ -624,7 +624,7 @@ static void tsmf_gstreamer_control(ITSMFDecoder *decoder, ITSMFControlMsg contro if (!mdecoder->paused && !mdecoder->shutdown) { - DEBUG_WARN("%s: Ignoring control RESUME, already received!", get_type(mdecoder)); + CLOG_ERR("%s: Ignoring control RESUME, already received!", get_type(mdecoder)); return; } @@ -642,7 +642,7 @@ static void tsmf_gstreamer_control(ITSMFDecoder *decoder, ITSMFControlMsg contro if (mdecoder->shutdown) { - DEBUG_WARN("%s: Ignoring control STOP, already received!", get_type(mdecoder)); + CLOG_ERR("%s: Ignoring control STOP, already received!", get_type(mdecoder)); return; } @@ -656,7 +656,7 @@ static void tsmf_gstreamer_control(ITSMFDecoder *decoder, ITSMFControlMsg contro gst_app_src_end_of_stream((GstAppSrc *)mdecoder->src); } else - DEBUG_WARN("Unknown control message %08x", control_msg); + CLOG_ERR("Unknown control message %08x", control_msg); } static BOOL tsmf_gstreamer_buffer_filled(ITSMFDecoder *decoder) diff --git a/channels/tsmf/client/pulse/tsmf_pulse.c b/channels/tsmf/client/pulse/tsmf_pulse.c index 8b476eb23..c04c5b3ea 100644 --- a/channels/tsmf/client/pulse/tsmf_pulse.c +++ b/channels/tsmf/client/pulse/tsmf_pulse.c @@ -72,7 +72,7 @@ static BOOL tsmf_pulse_connect(TSMFPulseAudioDevice *pulse) return FALSE; if(pa_context_connect(pulse->context, NULL, 0, NULL)) { - DEBUG_WARN("pa_context_connect failed (%d)", + CLOG_ERR("pa_context_connect failed (%d)", pa_context_errno(pulse->context)); return FALSE; } @@ -80,7 +80,7 @@ static BOOL tsmf_pulse_connect(TSMFPulseAudioDevice *pulse) if(pa_threaded_mainloop_start(pulse->mainloop) < 0) { pa_threaded_mainloop_unlock(pulse->mainloop); - DEBUG_WARN("pa_threaded_mainloop_start failed (%d)", + CLOG_ERR("pa_threaded_mainloop_start failed (%d)", pa_context_errno(pulse->context)); return FALSE; } @@ -120,19 +120,19 @@ static BOOL tsmf_pulse_open(ITSMFAudioDevice *audio, const char *device) pulse->mainloop = pa_threaded_mainloop_new(); if(!pulse->mainloop) { - DEBUG_WARN("pa_threaded_mainloop_new failed"); + CLOG_ERR("pa_threaded_mainloop_new failed"); return FALSE; } pulse->context = pa_context_new(pa_threaded_mainloop_get_api(pulse->mainloop), "freerdp"); if(!pulse->context) { - DEBUG_WARN("pa_context_new failed"); + CLOG_ERR("pa_context_new failed"); return FALSE; } pa_context_set_state_callback(pulse->context, tsmf_pulse_context_state_callback, pulse); if(tsmf_pulse_connect(pulse)) { - DEBUG_WARN("tsmf_pulse_connect failed"); + CLOG_ERR("tsmf_pulse_connect failed"); return FALSE; } DEBUG_TSMF("open device %s", pulse->device); @@ -214,7 +214,7 @@ static BOOL tsmf_pulse_open_stream(TSMFPulseAudioDevice *pulse) if(!pulse->stream) { pa_threaded_mainloop_unlock(pulse->mainloop); - DEBUG_WARN("pa_stream_new failed (%d)", + CLOG_ERR("pa_stream_new failed (%d)", pa_context_errno(pulse->context)); return FALSE; } @@ -233,7 +233,7 @@ static BOOL tsmf_pulse_open_stream(TSMFPulseAudioDevice *pulse) NULL, NULL) < 0) { pa_threaded_mainloop_unlock(pulse->mainloop); - DEBUG_WARN("pa_stream_connect_playback failed (%d)", + CLOG_ERR("pa_stream_connect_playback failed (%d)", pa_context_errno(pulse->context)); return FALSE; } @@ -244,7 +244,7 @@ static BOOL tsmf_pulse_open_stream(TSMFPulseAudioDevice *pulse) break; if(!PA_STREAM_IS_GOOD(state)) { - DEBUG_WARN("bad stream state (%d)", + CLOG_ERR("bad stream state (%d)", pa_context_errno(pulse->context)); break; } diff --git a/channels/tsmf/client/tsmf_audio.c b/channels/tsmf/client/tsmf_audio.c index 6c7ab2ed6..4e43ba80f 100644 --- a/channels/tsmf/client/tsmf_audio.c +++ b/channels/tsmf/client/tsmf_audio.c @@ -41,7 +41,7 @@ static ITSMFAudioDevice* tsmf_load_audio_device_by_name(const char* name, const if (audio == NULL) { - DEBUG_WARN("failed to call export function in %s", name); + CLOG_ERR("failed to call export function in %s", name); return NULL; } diff --git a/channels/tsmf/client/tsmf_codec.c b/channels/tsmf/client/tsmf_codec.c index 65beff7c3..e56400aea 100644 --- a/channels/tsmf/client/tsmf_codec.c +++ b/channels/tsmf/client/tsmf_codec.c @@ -264,21 +264,21 @@ static void tsmf_print_guid(const BYTE *guid) #ifdef WITH_DEBUG_TSMF int i; for(i = 3; i >= 0; i--) - DEBUG_WARN( "%02X", guid[i]); - DEBUG_WARN( "-"); + CLOG_ERR( "%02X", guid[i]); + CLOG_ERR( "-"); for(i = 5; i >= 4; i--) - DEBUG_WARN( "%02X", guid[i]); - DEBUG_WARN( "-"); + CLOG_ERR( "%02X", guid[i]); + CLOG_ERR( "-"); for(i = 7; i >= 6; i--) - DEBUG_WARN( "%02X", guid[i]); - DEBUG_WARN( "-"); + CLOG_ERR( "%02X", guid[i]); + CLOG_ERR( "-"); for(i = 8; i < 16; i++) { - DEBUG_WARN( "%02X", guid[i]); + CLOG_ERR( "%02X", guid[i]); if(i == 9) - DEBUG_WARN( "-"); + CLOG_ERR( "-"); } - DEBUG_WARN( "\n"); + CLOG_ERR( "\n"); #endif } diff --git a/channels/tsmf/client/tsmf_decoder.c b/channels/tsmf/client/tsmf_decoder.c index 3d17c60d0..59262508c 100644 --- a/channels/tsmf/client/tsmf_decoder.c +++ b/channels/tsmf/client/tsmf_decoder.c @@ -42,7 +42,7 @@ static ITSMFDecoder *tsmf_load_decoder_by_name(const char *name, TS_AM_MEDIA_TYP decoder = entry(); if(decoder == NULL) { - DEBUG_WARN("failed to call export function in %s", name); + CLOG_ERR("failed to call export function in %s", name); return NULL; } if(!decoder->SetFormat(decoder, media_type)) diff --git a/channels/tsmf/client/tsmf_ifman.c b/channels/tsmf/client/tsmf_ifman.c index 40e89e439..6c2d99b9b 100644 --- a/channels/tsmf/client/tsmf_ifman.c +++ b/channels/tsmf/client/tsmf_ifman.c @@ -80,7 +80,7 @@ int tsmf_ifman_exchange_capability_request(TSMF_IFMAN *ifman) MMREDIR_CAPABILITY_PLATFORM_MF | MMREDIR_CAPABILITY_PLATFORM_DSHOW); break; default: - DEBUG_WARN("unknown capability type %d", CapabilityType); + CLOG_ERR("unknown capability type %d", CapabilityType); break; } Stream_SetPosition(ifman->output, pos + cbCapabilityLength); @@ -236,7 +236,7 @@ int tsmf_ifman_shutdown_presentation(TSMF_IFMAN *ifman) if(presentation) tsmf_presentation_free(presentation); else - DEBUG_WARN("unknown presentation id"); + CLOG_ERR("unknown presentation id"); Stream_EnsureRemainingCapacity(ifman->output, 4); Stream_Write_UINT32(ifman->output, 0); /* Result */ ifman->output_interface_id = TSMF_INTERFACE_DEFAULT | STREAM_ID_STUB; @@ -261,7 +261,7 @@ int tsmf_ifman_on_stream_volume(TSMF_IFMAN *ifman) } else { - DEBUG_WARN("unknown presentation id"); + CLOG_ERR("unknown presentation id"); } ifman->output_pending = TRUE; return 0; @@ -393,13 +393,13 @@ int tsmf_ifman_on_sample(TSMF_IFMAN *ifman) presentation = tsmf_presentation_find_by_id(ifman->presentation_id); if(presentation == NULL) { - DEBUG_WARN("unknown presentation id"); + CLOG_ERR("unknown presentation id"); return 1; } stream = tsmf_stream_find_by_id(presentation, StreamId); if(stream == NULL) { - DEBUG_WARN("unknown stream id"); + CLOG_ERR("unknown stream id"); return 1; } tsmf_stream_push_sample(stream, ifman->channel_callback, @@ -420,7 +420,7 @@ int tsmf_ifman_on_flush(TSMF_IFMAN *ifman) presentation = tsmf_presentation_find_by_id(ifman->presentation_id); if(presentation == NULL) { - DEBUG_WARN("unknown presentation id"); + CLOG_ERR("unknown presentation id"); return 1; } tsmf_presentation_flush(presentation); @@ -460,7 +460,7 @@ int tsmf_ifman_on_playback_started(TSMF_IFMAN *ifman) if(presentation) tsmf_presentation_start(presentation); else - DEBUG_WARN("unknown presentation id"); + CLOG_ERR("unknown presentation id"); Stream_EnsureRemainingCapacity(ifman->output, 16); Stream_Write_UINT32(ifman->output, CLIENT_EVENT_NOTIFICATION); /* FunctionId */ Stream_Write_UINT32(ifman->output, 0); /* StreamId */ @@ -480,7 +480,7 @@ int tsmf_ifman_on_playback_paused(TSMF_IFMAN *ifman) if(presentation) tsmf_presentation_paused(presentation); else - DEBUG_WARN("unknown presentation id"); + CLOG_ERR("unknown presentation id"); return 0; } @@ -494,7 +494,7 @@ int tsmf_ifman_on_playback_restarted(TSMF_IFMAN *ifman) if(presentation) tsmf_presentation_restarted(presentation); else - DEBUG_WARN("unknown presentation id"); + CLOG_ERR("unknown presentation id"); return 0; } @@ -506,7 +506,7 @@ int tsmf_ifman_on_playback_stopped(TSMF_IFMAN *ifman) if(presentation) tsmf_presentation_stop(presentation); else - DEBUG_WARN("unknown presentation id"); + CLOG_ERR("unknown presentation id"); Stream_EnsureRemainingCapacity(ifman->output, 16); Stream_Write_UINT32(ifman->output, CLIENT_EVENT_NOTIFICATION); /* FunctionId */ Stream_Write_UINT32(ifman->output, 0); /* StreamId */ diff --git a/channels/tsmf/client/tsmf_main.c b/channels/tsmf/client/tsmf_main.c index e6fd20530..76b0a7c32 100644 --- a/channels/tsmf/client/tsmf_main.c +++ b/channels/tsmf/client/tsmf_main.c @@ -89,14 +89,14 @@ void tsmf_playback_ack(IWTSVirtualChannelCallback *pChannelCallback, Stream_Write_UINT64(s, data_size); /* cbData */ DEBUG_TSMF("response size %d", (int) Stream_GetPosition(s)); if(!callback || !callback->channel || !callback->channel->Write) - DEBUG_WARN("callback=%p, channel=%p, write=%p", callback, + CLOG_ERR("callback=%p, channel=%p, write=%p", callback, callback->channel, callback->channel->Write); else status = callback->channel->Write(callback->channel, Stream_GetPosition(s), Stream_Buffer(s), NULL); if(status) { - DEBUG_WARN("response error %d", status); + CLOG_ERR("response error %d", status); } Stream_Free(s, TRUE); } @@ -108,7 +108,7 @@ BOOL tsmf_push_event(IWTSVirtualChannelCallback *pChannelCallback, wMessage *eve status = callback->channel_mgr->PushEvent(callback->channel_mgr, event); if(status) { - DEBUG_WARN("response error %d", status); + CLOG_ERR("response error %d", status); return FALSE; } return TRUE; @@ -130,7 +130,7 @@ static int tsmf_on_data_received(IWTSVirtualChannelCallback* pChannelCallback, w /* 2.2.1 Shared Message Header (SHARED_MSG_HEADER) */ if(cbSize < 12) { - DEBUG_WARN("invalid size. cbSize=%d", cbSize); + CLOG_ERR("invalid size. cbSize=%d", cbSize); return 1; } @@ -272,7 +272,7 @@ static int tsmf_on_data_received(IWTSVirtualChannelCallback* pChannelCallback, w } if(status == -1) { - DEBUG_WARN("InterfaceId 0x%X FunctionId 0x%X not processed.", + CLOG_ERR("InterfaceId 0x%X FunctionId 0x%X not processed.", InterfaceId, FunctionId); /* When a request is not implemented we return empty response indicating error */ } @@ -289,7 +289,7 @@ static int tsmf_on_data_received(IWTSVirtualChannelCallback* pChannelCallback, w status = callback->channel->Write(callback->channel, length, Stream_Buffer(output), NULL); if(status) { - DEBUG_WARN("response error %d", status); + CLOG_ERR("response error %d", status); } } Stream_Free(output, TRUE); diff --git a/channels/tsmf/client/tsmf_media.c b/channels/tsmf/client/tsmf_media.c index 51465554b..611f80365 100644 --- a/channels/tsmf/client/tsmf_media.c +++ b/channels/tsmf/client/tsmf_media.c @@ -271,7 +271,7 @@ TSMF_PRESENTATION *tsmf_presentation_new(const BYTE *guid, IWTSVirtualChannelCal if (!presentation) { - DEBUG_WARN("calloc failed"); + CLOG_ERR("calloc failed"); return NULL; } @@ -320,7 +320,7 @@ TSMF_PRESENTATION *tsmf_presentation_find_by_id(const BYTE *guid) ArrayList_Unlock(presentation_list); if (!found) - DEBUG_WARN("presentation id %s not found", guid_to_string(guid, guid_str, sizeof(guid_str))); + CLOG_ERR("presentation id %s not found", guid_to_string(guid, guid_str, sizeof(guid_str))); return (found) ? presentation : NULL; } @@ -902,7 +902,7 @@ TSMF_STREAM *tsmf_stream_new(TSMF_PRESENTATION *presentation, UINT32 stream_id) if (stream) { - DEBUG_WARN("duplicated stream id %d!", stream_id); + CLOG_ERR("duplicated stream id %d!", stream_id); return NULL; } @@ -910,7 +910,7 @@ TSMF_STREAM *tsmf_stream_new(TSMF_PRESENTATION *presentation, UINT32 stream_id) if (!stream) { - DEBUG_WARN("Calloc failed"); + CLOG_ERR("Calloc failed"); return NULL; } @@ -966,7 +966,7 @@ void tsmf_stream_set_format(TSMF_STREAM *stream, const char *name, wStream *s) if (stream->decoder) { - DEBUG_WARN("duplicated call"); + CLOG_ERR("duplicated call"); return; } @@ -1071,7 +1071,7 @@ void tsmf_stream_push_sample(TSMF_STREAM *stream, IWTSVirtualChannelCallback *pC if (!sample) { - DEBUG_WARN("calloc failed!"); + CLOG_ERR("calloc failed!"); return; } @@ -1087,7 +1087,7 @@ void tsmf_stream_push_sample(TSMF_STREAM *stream, IWTSVirtualChannelCallback *pC if (!sample->data) { - DEBUG_WARN("calloc failed!"); + CLOG_ERR("calloc failed!"); free(sample); return; } diff --git a/channels/tsmf/client/tsmf_types.h b/channels/tsmf/client/tsmf_types.h index 4911209d4..4afbd1434 100644 --- a/channels/tsmf/client/tsmf_types.h +++ b/channels/tsmf/client/tsmf_types.h @@ -26,12 +26,12 @@ #include #include -#include +#include #ifdef WITH_DEBUG_TSMF -#define DEBUG_TSMF(fmt, ...) DEBUG_CLASS(TSMF, fmt, ## __VA_ARGS__) +#define DEBUG_TSMF(fmt, ...) CLOG_CLASS(TSMF, fmt, ## __VA_ARGS__) #else -#define DEBUG_TSMF(fmt, ...) DEBUG_NULL(fmt, ## __VA_ARGS__) +#define DEBUG_TSMF(fmt, ...) CLOG_NULL(fmt, ## __VA_ARGS__) #endif typedef struct _TS_AM_MEDIA_TYPE diff --git a/channels/urbdrc/client/data_transfer.c b/channels/urbdrc/client/data_transfer.c index 2e6918035..dec8e547e 100644 --- a/channels/urbdrc/client/data_transfer.c +++ b/channels/urbdrc/client/data_transfer.c @@ -237,7 +237,7 @@ static int urbdrc_process_io_control(URBDRC_CHANNEL_CALLBACK* callback, BYTE* da { case IOCTL_INTERNAL_USB_SUBMIT_URB: /** 0x00220003 */ LLOGLN(urbdrc_debug, ("ioctl: IOCTL_INTERNAL_USB_SUBMIT_URB")); - DEBUG_WARN( " Function IOCTL_INTERNAL_USB_SUBMIT_URB: Unchecked\n"); + CLOG_ERR( " Function IOCTL_INTERNAL_USB_SUBMIT_URB: Unchecked\n"); break; case IOCTL_INTERNAL_USB_RESET_PORT: /** 0x00220007 */ @@ -269,12 +269,12 @@ static int urbdrc_process_io_control(URBDRC_CHANNEL_CALLBACK* callback, BYTE* da case IOCTL_INTERNAL_USB_CYCLE_PORT: /** 0x0022001F */ LLOGLN(urbdrc_debug, ("ioctl: IOCTL_INTERNAL_USB_CYCLE_PORT")); - DEBUG_WARN( " Function IOCTL_INTERNAL_USB_CYCLE_PORT: Unchecked\n"); + CLOG_ERR( " Function IOCTL_INTERNAL_USB_CYCLE_PORT: Unchecked\n"); break; case IOCTL_INTERNAL_USB_SUBMIT_IDLE_NOTIFICATION: /** 0x00220027 */ LLOGLN(urbdrc_debug, ("ioctl: IOCTL_INTERNAL_USB_SUBMIT_IDLE_NOTIFICATION")); - DEBUG_WARN( " Function IOCTL_INTERNAL_USB_SUBMIT_IDLE_NOTIFICATION: Unchecked\n"); + CLOG_ERR( " Function IOCTL_INTERNAL_USB_SUBMIT_IDLE_NOTIFICATION: Unchecked\n"); break; default: @@ -448,7 +448,7 @@ static int urb_select_configuration(URBDRC_CHANNEL_CALLBACK* callback, BYTE* dat if (transferDir == 0) { - DEBUG_WARN( "urb_select_configuration: not support transfer out\n"); + CLOG_ERR( "urb_select_configuration: not support transfer out\n"); return -1; } @@ -540,7 +540,7 @@ static int urb_select_interface(URBDRC_CHANNEL_CALLBACK* callback, BYTE* data, U if (transferDir == 0) { - DEBUG_WARN( "urb_select_interface: not support transfer out\n"); + CLOG_ERR( "urb_select_interface: not support transfer out\n"); return -1; } @@ -1297,7 +1297,7 @@ static int urb_os_feature_descriptor_request(URBDRC_CHANNEL_CALLBACK * callback, switch (transferDir) { case USBD_TRANSFER_DIRECTION_OUT: - DEBUG_WARN( "Function urb_os_feature_descriptor_request: OUT Unchecked\n"); + CLOG_ERR( "Function urb_os_feature_descriptor_request: OUT Unchecked\n"); memcpy(buffer, data + offset, OutputBufferSize); break; case USBD_TRANSFER_DIRECTION_IN: @@ -1700,7 +1700,7 @@ static int urb_control_feature_request(URBDRC_CHANNEL_CALLBACK * callback, BYTE switch (transferDir) { case USBD_TRANSFER_DIRECTION_OUT: - DEBUG_WARN( "Function urb_control_feature_request: OUT Unchecked\n"); + CLOG_ERR( "Function urb_control_feature_request: OUT Unchecked\n"); memcpy(buffer, data + offset, OutputBufferSize); bmRequestType |= 0x00; break; @@ -1718,7 +1718,7 @@ static int urb_control_feature_request(URBDRC_CHANNEL_CALLBACK * callback, BYTE bmRequest = 0x01; /* REQUEST_CLEAR_FEATURE */ break; default: - DEBUG_WARN( "urb_control_feature_request: Error Command %x\n", command); + CLOG_ERR( "urb_control_feature_request: Error Command %x\n", command); zfree(out_data); return -1; } diff --git a/channels/urbdrc/client/libusb/libusb_udevice.c b/channels/urbdrc/client/libusb/libusb_udevice.c index 3687e238a..bb1ead0ca 100644 --- a/channels/urbdrc/client/libusb/libusb_udevice.c +++ b/channels/urbdrc/client/libusb/libusb_udevice.c @@ -201,7 +201,7 @@ static void func_iso_callback(struct libusb_transfer *transfer) } else { - //DEBUG_WARN( "actual length %d \n", act_len); + //CLOG_ERR( "actual length %d \n", act_len); //exit(EXIT_FAILURE); } } @@ -362,7 +362,7 @@ static int func_config_release_all_interface(LIBUSB_DEVICE_HANDLE* libusb_handle if (ret < 0) { - DEBUG_WARN( "config_release_all_interface: error num %d\n", ret); + CLOG_ERR( "config_release_all_interface: error num %d\n", ret); return -1; } } @@ -380,7 +380,7 @@ static int func_claim_all_interface(LIBUSB_DEVICE_HANDLE* libusb_handle, int Num if (ret < 0) { - DEBUG_WARN( "claim_all_interface: error num %d\n", ret); + CLOG_ERR( "claim_all_interface: error num %d\n", ret); return -1; } } @@ -394,28 +394,28 @@ static void* print_transfer_status(enum libusb_transfer_status status) switch (status) { case LIBUSB_TRANSFER_COMPLETED: - //DEBUG_WARN( "Transfer Status: LIBUSB_TRANSFER_COMPLETED\n"); + //CLOG_ERR( "Transfer Status: LIBUSB_TRANSFER_COMPLETED\n"); break; case LIBUSB_TRANSFER_ERROR: - DEBUG_WARN( "Transfer Status: LIBUSB_TRANSFER_ERROR\n"); + CLOG_ERR( "Transfer Status: LIBUSB_TRANSFER_ERROR\n"); break; case LIBUSB_TRANSFER_TIMED_OUT: - DEBUG_WARN( "Transfer Status: LIBUSB_TRANSFER_TIMED_OUT\n"); + CLOG_ERR( "Transfer Status: LIBUSB_TRANSFER_TIMED_OUT\n"); break; case LIBUSB_TRANSFER_CANCELLED: - DEBUG_WARN( "Transfer Status: LIBUSB_TRANSFER_CANCELLED\n"); + CLOG_ERR( "Transfer Status: LIBUSB_TRANSFER_CANCELLED\n"); break; case LIBUSB_TRANSFER_STALL: - DEBUG_WARN( "Transfer Status: LIBUSB_TRANSFER_STALL\n"); + CLOG_ERR( "Transfer Status: LIBUSB_TRANSFER_STALL\n"); break; case LIBUSB_TRANSFER_NO_DEVICE: - DEBUG_WARN( "Transfer Status: LIBUSB_TRANSFER_NO_DEVICE\n"); + CLOG_ERR( "Transfer Status: LIBUSB_TRANSFER_NO_DEVICE\n"); break; case LIBUSB_TRANSFER_OVERFLOW: - DEBUG_WARN( "Transfer Status: LIBUSB_TRANSFER_OVERFLOW\n"); + CLOG_ERR( "Transfer Status: LIBUSB_TRANSFER_OVERFLOW\n"); break; default: - DEBUG_WARN( "Transfer Status: Get unknow error num %d (0x%x)\n", + CLOG_ERR( "Transfer Status: Get unknow error num %d (0x%x)\n", status, status); } return 0; @@ -426,28 +426,28 @@ static void print_status(enum libusb_transfer_status status) switch (status) { case LIBUSB_TRANSFER_COMPLETED: - DEBUG_WARN( "Transfer status: LIBUSB_TRANSFER_COMPLETED\n"); + CLOG_ERR( "Transfer status: LIBUSB_TRANSFER_COMPLETED\n"); break; case LIBUSB_TRANSFER_ERROR: - DEBUG_WARN( "Transfer status: LIBUSB_TRANSFER_ERROR\n"); + CLOG_ERR( "Transfer status: LIBUSB_TRANSFER_ERROR\n"); break; case LIBUSB_TRANSFER_TIMED_OUT: - DEBUG_WARN( "Transfer status: LIBUSB_TRANSFER_TIMED_OUT\n"); + CLOG_ERR( "Transfer status: LIBUSB_TRANSFER_TIMED_OUT\n"); break; case LIBUSB_TRANSFER_CANCELLED: - DEBUG_WARN( "Transfer status: LIBUSB_TRANSFER_CANCELLED\n"); + CLOG_ERR( "Transfer status: LIBUSB_TRANSFER_CANCELLED\n"); break; case LIBUSB_TRANSFER_STALL: - DEBUG_WARN( "Transfer status: LIBUSB_TRANSFER_STALL\n"); + CLOG_ERR( "Transfer status: LIBUSB_TRANSFER_STALL\n"); break; case LIBUSB_TRANSFER_NO_DEVICE: - DEBUG_WARN( "Transfer status: LIBUSB_TRANSFER_NO_DEVICE\n"); + CLOG_ERR( "Transfer status: LIBUSB_TRANSFER_NO_DEVICE\n"); break; case LIBUSB_TRANSFER_OVERFLOW: - DEBUG_WARN( "Transfer status: LIBUSB_TRANSFER_OVERFLOW\n"); + CLOG_ERR( "Transfer status: LIBUSB_TRANSFER_OVERFLOW\n"); break; default: - DEBUG_WARN( "Transfer status: unknow status %d(0x%x)\n", status, status); + CLOG_ERR( "Transfer status: unknow status %d(0x%x)\n", status, status); break; } } @@ -484,7 +484,7 @@ static LIBUSB_DEVICE_DESCRIPTOR* udev_new_descript(LIBUSB_DEVICE* libusb_dev) if (ret < 0) { - DEBUG_WARN( "libusb_get_device_descriptor: ERROR!!\n"); + CLOG_ERR( "libusb_get_device_descriptor: ERROR!!\n"); free(descriptor); return NULL; } @@ -654,7 +654,7 @@ static int libusb_udev_select_interface(IUDEVICE* idev, BYTE InterfaceNumber, BY if (error < 0) { - DEBUG_WARN( "%s: Set interface altsetting get error num %d\n", + CLOG_ERR( "%s: Set interface altsetting get error num %d\n", __func__, error); } } @@ -681,7 +681,7 @@ static MSUSB_CONFIG_DESCRIPTOR* libusb_udev_complete_msconfig_setup(IUDEVICE* id LibusbConfig = pdev->LibusbConfig; if (LibusbConfig->bNumInterfaces != MsConfig->NumInterfaces) { - DEBUG_WARN( "Select Configuration: Libusb NumberInterfaces(%d) is different " + CLOG_ERR( "Select Configuration: Libusb NumberInterfaces(%d) is different " "with MsConfig NumberInterfaces(%d)\n", LibusbConfig->bNumInterfaces, MsConfig->NumInterfaces); } @@ -827,7 +827,7 @@ static int libusb_udev_select_configuration(IUDEVICE* idev, UINT32 bConfiguratio ret = libusb_set_configuration(libusb_handle, bConfigurationValue); if (ret < 0){ - DEBUG_WARN( "libusb_set_configuration: ERROR number %d!!\n", ret); + CLOG_ERR( "libusb_set_configuration: ERROR number %d!!\n", ret); func_claim_all_interface(libusb_handle, (*LibusbConfig)->bNumInterfaces); return -1; } @@ -835,7 +835,7 @@ static int libusb_udev_select_configuration(IUDEVICE* idev, UINT32 bConfiguratio { ret = libusb_get_active_config_descriptor (libusb_dev, LibusbConfig); if (ret < 0){ - DEBUG_WARN( "libusb_get_config_descriptor_by_value: ERROR number %d!!\n", ret); + CLOG_ERR( "libusb_get_config_descriptor_by_value: ERROR number %d!!\n", ret); func_claim_all_interface(libusb_handle, (*LibusbConfig)->bNumInterfaces); return -1; } @@ -885,7 +885,7 @@ static int libusb_udev_control_pipe_request(IUDEVICE* idev, UINT32 RequestId, *UsbdStatus = 0; /* if(pdev->request_queue->unregister_request(pdev->request_queue, RequestId)) - DEBUG_WARN( "request_queue_unregister_request: not fount request 0x%x\n", RequestId); + CLOG_ERR( "request_queue_unregister_request: not fount request 0x%x\n", RequestId); */ return error; } @@ -980,12 +980,12 @@ static int libusb_udev_os_feature_descriptor_request(IUDEVICE* idev, UINT32 Requ ms_string_desc, 0x12, Timeout); - //DEBUG_WARN( "Get ms string: result number %d", error); + //CLOG_ERR( "Get ms string: result number %d", error); if (error > 0) { BYTE bMS_Vendorcode; data_read_BYTE(ms_string_desc + 16, bMS_Vendorcode); - //DEBUG_WARN( "bMS_Vendorcode:0x%x", bMS_Vendorcode); + //CLOG_ERR( "bMS_Vendorcode:0x%x", bMS_Vendorcode); /** get os descriptor */ error = libusb_control_transfer(pdev->libusb_handle, LIBUSB_ENDPOINT_IN |LIBUSB_REQUEST_TYPE_VENDOR | Recipient, @@ -1004,7 +1004,7 @@ static int libusb_udev_os_feature_descriptor_request(IUDEVICE* idev, UINT32 Requ *UsbdStatus = USBD_STATUS_SUCCESS; /* if(pdev->request_queue->unregister_request(pdev->request_queue, RequestId)) - DEBUG_WARN( "request_queue_unregister_request: not fount request 0x%x\n", RequestId); + CLOG_ERR( "request_queue_unregister_request: not fount request 0x%x\n", RequestId); */ return error; } @@ -1263,7 +1263,7 @@ static int libusb_udev_isoch_transfer(IUDEVICE* idev, UINT32 RequestId, UINT32 E if (iso_transfer == NULL) { - DEBUG_WARN( "Error: libusb_alloc_transfer.\n"); + CLOG_ERR( "Error: libusb_alloc_transfer.\n"); status = -1; } @@ -1368,7 +1368,7 @@ static int libusb_udev_bulk_or_interrupt_transfer(IUDEVICE* idev, UINT32 Request if (!ep_desc) { - DEBUG_WARN( "func_get_ep_desc: endpoint 0x%x is not found!!\n", EndpointAddress); + CLOG_ERR( "func_get_ep_desc: endpoint 0x%x is not found!!\n", EndpointAddress); return -1; } transfer_type = (ep_desc->bmAttributes) & 0x3; @@ -1494,7 +1494,7 @@ static int libusb_udev_bulk_or_interrupt_transfer(IUDEVICE* idev, UINT32 Request if (request) { if(pdev->request_queue->unregister_request(pdev->request_queue, RequestId)) - DEBUG_WARN( "request_queue_unregister_request: not fount request 0x%x\n", RequestId); + CLOG_ERR( "request_queue_unregister_request: not fount request 0x%x\n", RequestId); } libusb_free_transfer(transfer); @@ -1704,7 +1704,7 @@ static IUDEVICE* udev_init(UDEVICE* pdev, UINT16 bus_number, UINT16 dev_number) if (status < 0) { - DEBUG_WARN( "USB init: Error to get HUB handle!!\n"); + CLOG_ERR( "USB init: Error to get HUB handle!!\n"); pdev->hub_handle = NULL; } @@ -1712,7 +1712,7 @@ static IUDEVICE* udev_init(UDEVICE* pdev, UINT16 bus_number, UINT16 dev_number) if (!pdev->devDescriptor) { - DEBUG_WARN( "USB init: Error to get device descriptor!!\n"); + CLOG_ERR( "USB init: Error to get device descriptor!!\n"); zfree(pdev); return NULL; } @@ -1723,7 +1723,7 @@ static IUDEVICE* udev_init(UDEVICE* pdev, UINT16 bus_number, UINT16 dev_number) if (status < 0) { - DEBUG_WARN( "libusb_get_descriptor: ERROR!!ret:%d\n", status); + CLOG_ERR( "libusb_get_descriptor: ERROR!!ret:%d\n", status); zfree(pdev); return NULL; } @@ -1752,7 +1752,7 @@ static IUDEVICE* udev_init(UDEVICE* pdev, UINT16 bus_number, UINT16 dev_number) case CLASS_CONTENT_SECURITY: //case CLASS_WIRELESS_CONTROLLER: //case CLASS_ELSE_DEVICE: - DEBUG_WARN( " Device is not supported!!\n"); + CLOG_ERR( " Device is not supported!!\n"); zfree(pdev); return NULL; default: @@ -1818,7 +1818,7 @@ int udev_new_by_id(UINT16 idVendor, UINT16 idProduct, IUDEVICE*** devArray) ssize_t total_device; int i, status, num = 0; - DEBUG_WARN( "VID: 0x%04X PID: 0x%04X\n", idVendor, idProduct); + CLOG_ERR( "VID: 0x%04X PID: 0x%04X\n", idVendor, idProduct); array = (UDEVICE**) malloc(16 * sizeof(UDEVICE*)); @@ -1839,7 +1839,7 @@ int udev_new_by_id(UINT16 idVendor, UINT16 idProduct, IUDEVICE*** devArray) if (status < 0) { - DEBUG_WARN( "libusb_open: (by id) error: 0x%08X (%d)\n", status, status); + CLOG_ERR( "libusb_open: (by id) error: 0x%08X (%d)\n", status, status); zfree(descriptor); zfree(array[num]); continue; @@ -1876,7 +1876,7 @@ IUDEVICE* udev_new_by_addr(int bus_number, int dev_number) if (pDev->libusb_dev == NULL) { - DEBUG_WARN( "libusb_device_new: ERROR!!\n"); + CLOG_ERR( "libusb_device_new: ERROR!!\n"); zfree(pDev); return NULL; } @@ -1885,7 +1885,7 @@ IUDEVICE* udev_new_by_addr(int bus_number, int dev_number) if (status < 0) { - DEBUG_WARN( "libusb_open: (by addr) ERROR!!\n"); + CLOG_ERR( "libusb_open: (by addr) ERROR!!\n"); zfree(pDev); return NULL; } diff --git a/channels/urbdrc/client/libusb/libusb_udevman.c b/channels/urbdrc/client/libusb/libusb_udevman.c index 7635d039b..c395b3c37 100644 --- a/channels/urbdrc/client/libusb/libusb_udevman.c +++ b/channels/urbdrc/client/libusb/libusb_udevman.c @@ -206,7 +206,7 @@ static int udevman_register_udevice(IUDEVMAN* idevman, int bus_number, int dev_n } else { - DEBUG_WARN( "udevman_register_udevice: function error!!"); + CLOG_ERR( "udevman_register_udevice: function error!!"); return 0; } diff --git a/channels/urbdrc/client/libusb/request_queue.c b/channels/urbdrc/client/libusb/request_queue.c index 06ef4045a..5709faef2 100644 --- a/channels/urbdrc/client/libusb/request_queue.c +++ b/channels/urbdrc/client/libusb/request_queue.c @@ -100,7 +100,7 @@ TRANSFER_REQUEST* request_queue_get_request_by_endpoint(REQUEST_QUEUE* queue, BY } } pthread_mutex_unlock(&queue->request_loading); - DEBUG_WARN( "request_queue_get_request_by_id: ERROR!!\n"); + CLOG_ERR( "request_queue_get_request_by_id: ERROR!!\n"); return NULL; } diff --git a/channels/urbdrc/client/searchman.c b/channels/urbdrc/client/searchman.c index 04b9fe05b..bdf103890 100644 --- a/channels/urbdrc/client/searchman.c +++ b/channels/urbdrc/client/searchman.c @@ -156,16 +156,16 @@ static void searchman_list_show(USB_SEARCHMAN* self) int num = 0; USB_SEARCHDEV* usb; - DEBUG_WARN( "=========== Usb Search List ========= \n"); + CLOG_ERR( "=========== Usb Search List ========= \n"); self->rewind(self); while (self->has_next(self)) { usb = self->get_next(self); - DEBUG_WARN( " USB %d: \n", num++); - DEBUG_WARN( " idVendor: 0x%04X \n", usb->idVendor); - DEBUG_WARN( " idProduct: 0x%04X \n", usb->idProduct); + CLOG_ERR( " USB %d: \n", num++); + CLOG_ERR( " idVendor: 0x%04X \n", usb->idVendor); + CLOG_ERR( " idProduct: 0x%04X \n", usb->idProduct); } - DEBUG_WARN( "================= END =============== \n"); + CLOG_ERR( "================= END =============== \n"); } void searchman_free(USB_SEARCHMAN* self) @@ -202,7 +202,7 @@ USB_SEARCHMAN* searchman_new(void * urbdrc, UINT32 UsbDevice) if (ret != 0) { - DEBUG_WARN( "searchman mutex initialization: searchman->mutex failed"); + CLOG_ERR( "searchman mutex initialization: searchman->mutex failed"); exit(EXIT_FAILURE); } diff --git a/channels/urbdrc/client/urbdrc_main.c b/channels/urbdrc/client/urbdrc_main.c index a4b2a6f0a..568d0d5c6 100644 --- a/channels/urbdrc/client/urbdrc_main.c +++ b/channels/urbdrc/client/urbdrc_main.c @@ -32,6 +32,7 @@ #include #include +#include #include "urbdrc_types.h" #include "urbdrc_main.h" @@ -468,7 +469,7 @@ static void* urbdrc_search_usb_device(void* arg) if (!udev) { - DEBUG_WARN( "Can't create udev\n"); + CLOG_ERR( "Can't create udev\n"); return 0; } @@ -652,7 +653,7 @@ static void* urbdrc_search_usb_device(void* arg) } else { - DEBUG_WARN( "No Device from receive_device(). An error occured.\n"); + CLOG_ERR( "No Device from receive_device(). An error occured.\n"); } } } @@ -835,7 +836,7 @@ static int urbdrc_on_data_received(IWTSVirtualChannelCallback* pChannelCallback, if (transfer_data == NULL) { - DEBUG_WARN( "transfer_data is NULL!!"); + CLOG_ERR( "transfer_data is NULL!!"); return 0; } @@ -1000,7 +1001,7 @@ static void urbdrc_register_udevman_addin(IWTSPlugin* pPlugin, IUDEVMAN* udevman if (urbdrc->udevman) { - DEBUG_WARN("existing device, abort."); + CLOG_ERR("existing device, abort."); return; } @@ -1025,7 +1026,7 @@ static int urbdrc_load_udevman_addin(IWTSPlugin* pPlugin, const char* name, ADDI if (entry(&entryPoints) != 0) { - DEBUG_WARN("%s entry returns error.", name); + CLOG_ERR("%s entry returns error.", name); return FALSE; } diff --git a/channels/urbdrc/client/urbdrc_types.h b/channels/urbdrc/client/urbdrc_types.h index 316e0b10b..fc5a8b4c6 100644 --- a/channels/urbdrc/client/urbdrc_types.h +++ b/channels/urbdrc/client/urbdrc_types.h @@ -27,7 +27,7 @@ #include #include -#include +#include #include #include @@ -37,9 +37,9 @@ #include #ifdef WITH_DEBUG_DVC -#define DEBUG_DVC(fmt, ...) DEBUG_CLASS(DVC, fmt, ## __VA_ARGS__) +#define DEBUG_DVC(fmt, ...) CLOG_CLASS(DVC, fmt, ## __VA_ARGS__) #else -#define DEBUG_DVC(fmt, ...) DEBUG_NULL(fmt, ## __VA_ARGS__) +#define DEBUG_DVC(fmt, ...) CLOG_NULL(fmt, ## __VA_ARGS__) #endif #define CAPABILITIES_NEGOTIATOR 0x00000000 @@ -317,9 +317,9 @@ enum device_descriptor_table #define LOG_LEVEL 1 #define LLOG(_level, args) \ - do { if (_level < LOG_LEVEL) { DEBUG_MSG args ; } } while (0) + do { if (_level < LOG_LEVEL) { CLOG_DBG args ; } } while (0) #define LLOGLN(_level, args) \ - do { if (_level < LOG_LEVEL) { DEBUG_MSG args ; } } while (0) + do { if (_level < LOG_LEVEL) { CLOG_DBG args ; } } while (0) #define dummy_wait_obj(void) do{ sleep(5); } while(0) #define dummy_wait_s_obj(_s) do{ sleep(_s); } while(0) diff --git a/include/freerdp/channels/log.h b/include/freerdp/channels/log.h new file mode 100644 index 000000000..585a23669 --- /dev/null +++ b/include/freerdp/channels/log.h @@ -0,0 +1,58 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * Channel log defines + * + * Copyright 2014 Armin Novak + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FREERDP_CHANNELS_LOG_H +#define FREERDP_CHANNELS_LOG_H + +#include + +#define CLOG_PRINT(level, file, fkt, line, dbg_str, fmt, ...) \ + do { \ + char tag[1024]; \ + wLogMessage msg; \ + wLog *log; \ + \ + strcat(tag, "com.freerdp.channels."); \ + strcat(tag, dbg_str); \ + log = WLog_Get(tag); \ + \ + msg.Type = WLOG_MESSAGE_TEXT; \ + msg.Level = level; \ + msg.FormatString = fmt; \ + msg.LineNumber = line; \ + msg.FileName = file; \ + msg.FunctionName = fkt; \ + WLog_PrintMessage(log, &msg, ##__VA_ARGS__); \ + } while (0 ) + +#define CLOG_NULL(fmt, ...) do { } while (0) +#define CLOG_CLASS(_dbg_class, fmt, ...) CLOG_PRINT(WLOG_ERROR, __FILE__, \ + __FUNCTION__, __LINE__, #_dbg_class, fmt, ## __VA_ARGS__) +#define CLOG_DBG(fmt, ...) CLOG_PRINT(WLOG_DEBUG, __FILE__, __FUNCTION__, \ + __LINE__, __FUNCTION__, fmt, ## __VA_ARGS__) +#define CLOG_INFO(fmt, ...) CLOG_PRINT(WLOG_INFO, __FILE__, __FUNCTION__, \ + __LINE__, __FUNCTION__, fmt, ## __VA_ARGS__) +#define CLOG_WARN(fmt, ...) CLOG_PRINT(WLOG_WARN, __FILE__, __FUNCTION__, \ + __LINE__, __FUNCTION__, fmt, ## __VA_ARGS__) +#define CLOG_ERR(fmt, ...) CLOG_PRINT(WLOG_ERROR, __FILE__, __FUNCTION__, \ + __LINE__, __FUNCTION__, fmt, ## __VA_ARGS__) +#define CLOG_FATAL(fmt, ...) CLOG_PRINT(WLOG_FATAL, __FILE__, __FUNCTION__, \ + __LINE__, __FUNCTION__, fmt, ## __VA_ARGS__) + +#endif /* FREERDP_UTILS_DEBUG_H */ From 2436e41e635fe42aa3a96198b6c5e2a612485082 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Mon, 11 Aug 2014 09:17:56 +0200 Subject: [PATCH 086/170] Fixed warnings for comm tests. --- winpr/libwinpr/comm/test/TestCommConfig.c | 4 ++-- winpr/libwinpr/comm/test/TestControlSettings.c | 12 ++++++------ winpr/libwinpr/comm/test/TestGetCommState.c | 2 +- winpr/libwinpr/comm/test/TestHandflow.c | 2 +- winpr/libwinpr/comm/test/TestSerialChars.c | 10 +++++----- winpr/libwinpr/comm/test/TestSetCommState.c | 8 ++++---- winpr/libwinpr/comm/test/TestTimeouts.c | 10 +++++----- 7 files changed, 24 insertions(+), 24 deletions(-) diff --git a/winpr/libwinpr/comm/test/TestCommConfig.c b/winpr/libwinpr/comm/test/TestCommConfig.c index b60abd885..4d667ee7e 100644 --- a/winpr/libwinpr/comm/test/TestCommConfig.c +++ b/winpr/libwinpr/comm/test/TestCommConfig.c @@ -78,7 +78,7 @@ int TestCommConfig(int argc, char* argv[]) if (!hComm || (hComm == INVALID_HANDLE_VALUE)) { - fprintf(stderr, "CreateFileA failure: %s GetLastError() = 0x%0.8x\n", lpFileName, GetLastError()); + fprintf(stderr, "CreateFileA failure: %s GetLastError() = 0x%08x\n", lpFileName, GetLastError()); return EXIT_FAILURE; } @@ -100,7 +100,7 @@ int TestCommConfig(int argc, char* argv[]) ZeroMemory(&commProp, sizeof(COMMPROP)); if (!GetCommProperties(hComm, &commProp)) { - fprintf(stderr, "GetCommProperties failure: GetLastError(): 0x%0.8x\n", GetLastError()); + fprintf(stderr, "GetCommProperties failure: GetLastError(): 0x%08x\n", GetLastError()); return EXIT_FAILURE; } diff --git a/winpr/libwinpr/comm/test/TestControlSettings.c b/winpr/libwinpr/comm/test/TestControlSettings.c index becdae2d0..07b70117f 100644 --- a/winpr/libwinpr/comm/test/TestControlSettings.c +++ b/winpr/libwinpr/comm/test/TestControlSettings.c @@ -61,7 +61,7 @@ int TestControlSettings(int argc, char* argv[]) dcb.DCBlength = sizeof(DCB); if (!GetCommState(hComm, &dcb)) { - fprintf(stderr, "GetCommState failure; GetLastError(): %0.8x\n", GetLastError()); + fprintf(stderr, "GetCommState failure; GetLastError(): %08x\n", GetLastError()); return FALSE; } @@ -73,7 +73,7 @@ int TestControlSettings(int argc, char* argv[]) if (!SetCommState(hComm, &dcb)) { - fprintf(stderr, "SetCommState failure; GetLastError(): %0.8x\n", GetLastError()); + fprintf(stderr, "SetCommState failure; GetLastError(): %08x\n", GetLastError()); return FALSE; } @@ -81,7 +81,7 @@ int TestControlSettings(int argc, char* argv[]) dcb.DCBlength = sizeof(DCB); if (!GetCommState(hComm, &dcb)) { - fprintf(stderr, "GetCommState failure; GetLastError(): %0.8x\n", GetLastError()); + fprintf(stderr, "GetCommState failure; GetLastError(): %08x\n", GetLastError()); return FALSE; } @@ -100,7 +100,7 @@ int TestControlSettings(int argc, char* argv[]) if (!SetCommState(hComm, &dcb)) { - fprintf(stderr, "SetCommState failure; GetLastError(): %0.8x\n", GetLastError()); + fprintf(stderr, "SetCommState failure; GetLastError(): %08x\n", GetLastError()); return FALSE; } @@ -108,7 +108,7 @@ int TestControlSettings(int argc, char* argv[]) dcb.DCBlength = sizeof(DCB); if (!GetCommState(hComm, &dcb)) { - fprintf(stderr, "GetCommState failure; GetLastError(): %0.8x\n", GetLastError()); + fprintf(stderr, "GetCommState failure; GetLastError(): %08x\n", GetLastError()); return FALSE; } @@ -121,7 +121,7 @@ int TestControlSettings(int argc, char* argv[]) if (!CloseHandle(hComm)) { - fprintf(stderr, "CloseHandle failure, GetLastError()=%0.8x\n", GetLastError()); + fprintf(stderr, "CloseHandle failure, GetLastError()=%08x\n", GetLastError()); return EXIT_FAILURE; } diff --git a/winpr/libwinpr/comm/test/TestGetCommState.c b/winpr/libwinpr/comm/test/TestGetCommState.c index 3c9da67b5..2a80a5219 100644 --- a/winpr/libwinpr/comm/test/TestGetCommState.c +++ b/winpr/libwinpr/comm/test/TestGetCommState.c @@ -129,7 +129,7 @@ int TestGetCommState(int argc, char* argv[]) if (!CloseHandle(hComm)) { - fprintf(stderr, "CloseHandle failure, GetLastError()=%0.8x\n", GetLastError()); + fprintf(stderr, "CloseHandle failure, GetLastError()=%08x\n", GetLastError()); return EXIT_FAILURE; } diff --git a/winpr/libwinpr/comm/test/TestHandflow.c b/winpr/libwinpr/comm/test/TestHandflow.c index 6cdbfb673..10cb20a13 100644 --- a/winpr/libwinpr/comm/test/TestHandflow.c +++ b/winpr/libwinpr/comm/test/TestHandflow.c @@ -88,7 +88,7 @@ int TestHandflow(int argc, char* argv[]) if (!CloseHandle(hComm)) { - fprintf(stderr, "CloseHandle failure, GetLastError()=%0.8x\n", GetLastError()); + fprintf(stderr, "CloseHandle failure, GetLastError()=%08x\n", GetLastError()); return EXIT_FAILURE; } diff --git a/winpr/libwinpr/comm/test/TestSerialChars.c b/winpr/libwinpr/comm/test/TestSerialChars.c index d1a75c9c5..50912bb09 100644 --- a/winpr/libwinpr/comm/test/TestSerialChars.c +++ b/winpr/libwinpr/comm/test/TestSerialChars.c @@ -48,7 +48,7 @@ static BOOL test_SerCxSys(HANDLE hComm) dcb.DCBlength = sizeof(DCB); if (!GetCommState(hComm, &dcb)) { - fprintf(stderr, "GetCommState failure, GetLastError(): 0x%0.8x\n", GetLastError()); + fprintf(stderr, "GetCommState failure, GetLastError(): 0x%08x\n", GetLastError()); return FALSE; } @@ -74,7 +74,7 @@ static BOOL test_SerCxSys(HANDLE hComm) dcb.XoffChar = XonChar; if (!SetCommState(hComm, &dcb)) { - fprintf(stderr, "SetCommState failure, GetLastError(): 0x%0.8x\n", GetLastError()); + fprintf(stderr, "SetCommState failure, GetLastError(): 0x%08x\n", GetLastError()); return FALSE; } @@ -82,7 +82,7 @@ static BOOL test_SerCxSys(HANDLE hComm) dcb.DCBlength = sizeof(DCB); if (!GetCommState(hComm, &dcb)) { - fprintf(stderr, "GetCommState failure, GetLastError(): 0x%0.8x\n", GetLastError()); + fprintf(stderr, "GetCommState failure, GetLastError(): 0x%08x\n", GetLastError()); return FALSE; } @@ -117,7 +117,7 @@ static BOOL test_SerCx2Sys(HANDLE hComm) dcb.DCBlength = sizeof(DCB); if (!GetCommState(hComm, &dcb)) { - fprintf(stderr, "GetCommState failure; GetLastError(): %0.8x\n", GetLastError()); + fprintf(stderr, "GetCommState failure; GetLastError(): %08x\n", GetLastError()); return FALSE; } @@ -175,7 +175,7 @@ int TestSerialChars(int argc, char* argv[]) if (!CloseHandle(hComm)) { - fprintf(stderr, "CloseHandle failure, GetLastError()=%0.8x\n", GetLastError()); + fprintf(stderr, "CloseHandle failure, GetLastError()=%08x\n", GetLastError()); return EXIT_FAILURE; } diff --git a/winpr/libwinpr/comm/test/TestSetCommState.c b/winpr/libwinpr/comm/test/TestSetCommState.c index 63dbdfda8..b1e825a5a 100644 --- a/winpr/libwinpr/comm/test/TestSetCommState.c +++ b/winpr/libwinpr/comm/test/TestSetCommState.c @@ -137,7 +137,7 @@ static BOOL test_SerialSys(HANDLE hComm) result = SetCommState(hComm, &dcb); if (!result) { - fprintf(stderr, "SetCommState failure: 0x%0.8x\n", GetLastError()); + fprintf(stderr, "SetCommState failure: 0x%08x\n", GetLastError()); return FALSE; } @@ -207,7 +207,7 @@ static BOOL test_SerCxSys(HANDLE hComm) result = SetCommState(hComm, &dcb); if (!result) { - fprintf(stderr, "SetCommState failure: 0x%0.8x\n", GetLastError()); + fprintf(stderr, "SetCommState failure: 0x%08x\n", GetLastError()); return FALSE; } @@ -284,7 +284,7 @@ static BOOL test_generic(HANDLE hComm) result = SetCommState(hComm, &dcb); if (!result) { - fprintf(stderr, "SetCommState failure: 0x%0.8x\n", GetLastError()); + fprintf(stderr, "SetCommState failure: 0x%08x\n", GetLastError()); return FALSE; } @@ -389,7 +389,7 @@ int TestSetCommState(int argc, char* argv[]) if (!CloseHandle(hComm)) { - fprintf(stderr, "CloseHandle failure, GetLastError()=%0.8x\n", GetLastError()); + fprintf(stderr, "CloseHandle failure, GetLastError()=%08x\n", GetLastError()); return EXIT_FAILURE; } diff --git a/winpr/libwinpr/comm/test/TestTimeouts.c b/winpr/libwinpr/comm/test/TestTimeouts.c index 652bd47be..0ddf2775a 100644 --- a/winpr/libwinpr/comm/test/TestTimeouts.c +++ b/winpr/libwinpr/comm/test/TestTimeouts.c @@ -41,14 +41,14 @@ static BOOL test_generic(HANDLE hComm) if (!SetCommTimeouts(hComm, &timeouts)) { - fprintf(stderr, "SetCommTimeouts failure, GetLastError: 0x%0.8x\n", GetLastError()); + fprintf(stderr, "SetCommTimeouts failure, GetLastError: 0x%08x\n", GetLastError()); return FALSE; } ZeroMemory(&timeouts2, sizeof(COMMTIMEOUTS)); if (!GetCommTimeouts(hComm, &timeouts2)) { - fprintf(stderr, "GetCommTimeouts failure, GetLastError: 0x%0.8x\n", GetLastError()); + fprintf(stderr, "GetCommTimeouts failure, GetLastError: 0x%08x\n", GetLastError()); return FALSE; } @@ -63,13 +63,13 @@ static BOOL test_generic(HANDLE hComm) timeouts.ReadTotalTimeoutConstant = MAXULONG; if (SetCommTimeouts(hComm, &timeouts)) { - fprintf(stderr, "SetCommTimeouts succeeded with ReadIntervalTimeout and ReadTotalTimeoutConstant set to MAXULONG. GetLastError: 0x%0.8x\n", GetLastError()); + fprintf(stderr, "SetCommTimeouts succeeded with ReadIntervalTimeout and ReadTotalTimeoutConstant set to MAXULONG. GetLastError: 0x%08x\n", GetLastError()); return FALSE; } if (GetLastError() != ERROR_INVALID_PARAMETER) { - fprintf(stderr, "SetCommTimeouts failure, expected GetLastError to return ERROR_INVALID_PARAMETER and got: 0x%0.8x\n", GetLastError()); + fprintf(stderr, "SetCommTimeouts failure, expected GetLastError to return ERROR_INVALID_PARAMETER and got: 0x%08x\n", GetLastError()); return FALSE; } @@ -128,7 +128,7 @@ int TestTimeouts(int argc, char* argv[]) if (!CloseHandle(hComm)) { - fprintf(stderr, "CloseHandle failure, GetLastError()=%0.8x\n", GetLastError()); + fprintf(stderr, "CloseHandle failure, GetLastError()=%08x\n", GetLastError()); return EXIT_FAILURE; } From bcb5f90ee6b4bb1fe9c7dded34d8d70926307128 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Mon, 11 Aug 2014 09:19:23 +0200 Subject: [PATCH 087/170] Replaced perror with DEBUG_WARN --- libfreerdp/core/listener.c | 18 +++++++++--------- libfreerdp/core/nla.c | 4 ++-- libfreerdp/core/tcp.c | 10 +++++----- libfreerdp/utils/pcap.c | 2 +- libfreerdp/utils/tcp.c | 6 +++--- libfreerdp/utils/uds.c | 4 ++-- 6 files changed, 22 insertions(+), 22 deletions(-) diff --git a/libfreerdp/core/listener.c b/libfreerdp/core/listener.c index a2163b355..57ee3d6ec 100644 --- a/libfreerdp/core/listener.c +++ b/libfreerdp/core/listener.c @@ -104,7 +104,7 @@ static BOOL freerdp_listener_open(freerdp_listener* instance, const char* bind_a #ifdef _WIN32 _tprintf(_T("getaddrinfo error: %s\n"), gai_strerror(status)); #else - perror("getaddrinfo"); + DEBUG_WARN("getaddrinfo"); #endif return FALSE; } @@ -118,14 +118,14 @@ static BOOL freerdp_listener_open(freerdp_listener* instance, const char* bind_a if (sockfd == -1) { - perror("socket"); + DEBUG_WARN("socket"); continue; } option_value = 1; if (setsockopt(sockfd, SOL_SOCKET, SO_REUSEADDR, (void*) &option_value, sizeof(option_value)) == -1) - perror("setsockopt"); + DEBUG_WARN("setsockopt"); #ifndef _WIN32 fcntl(sockfd, F_SETFL, O_NONBLOCK); @@ -142,7 +142,7 @@ static BOOL freerdp_listener_open(freerdp_listener* instance, const char* bind_a _tprintf(L"bind() failed with error: %u\n", WSAGetLastError()); WSACleanup(); #else - perror("bind"); + DEBUG_WARN("bind"); close(sockfd); #endif continue; @@ -152,7 +152,7 @@ static BOOL freerdp_listener_open(freerdp_listener* instance, const char* bind_a if (status != 0) { - perror("listen"); + DEBUG_WARN("listen"); close(sockfd); continue; } @@ -186,7 +186,7 @@ static BOOL freerdp_listener_open_local(freerdp_listener* instance, const char* if (sockfd == -1) { - perror("socket"); + DEBUG_WARN("socket"); return FALSE; } @@ -200,7 +200,7 @@ static BOOL freerdp_listener_open_local(freerdp_listener* instance, const char* if (status != 0) { - perror("bind"); + DEBUG_WARN("bind"); close(sockfd); return FALSE; } @@ -209,7 +209,7 @@ static BOOL freerdp_listener_open_local(freerdp_listener* instance, const char* if (status != 0) { - perror("listen"); + DEBUG_WARN("listen"); close(sockfd); return FALSE; } @@ -306,7 +306,7 @@ static BOOL freerdp_listener_check_fds(freerdp_listener* instance) if (errno == EAGAIN || errno == EWOULDBLOCK) continue; #endif - perror("accept"); + DEBUG_WARN("accept"); if (client) free(client); return FALSE; diff --git a/libfreerdp/core/nla.c b/libfreerdp/core/nla.c index 5abeaeb19..8d247c637 100644 --- a/libfreerdp/core/nla.c +++ b/libfreerdp/core/nla.c @@ -460,7 +460,7 @@ int credssp_server_authenticate(rdpCredssp* credssp) if (!hSSPI) { - _tprintf(_T("Failed to load SSPI module: %s\n"), credssp->SspiModule); + DEBUG_WARN("Failed to load SSPI module: %s\n", credssp->SspiModule); return 0; } @@ -1397,7 +1397,7 @@ rdpCredssp* credssp_new(freerdp* instance, rdpTransport* transport, rdpSettings* if (status == ERROR_SUCCESS) { - _tprintf(_T("Using SSPI Module: %s\n"), credssp->SspiModule); + DEBUG_WARN("Using SSPI Module: %s\n", credssp->SspiModule); RegCloseKey(hKey); } } diff --git a/libfreerdp/core/tcp.c b/libfreerdp/core/tcp.c index a8484a38d..b82d3810a 100644 --- a/libfreerdp/core/tcp.c +++ b/libfreerdp/core/tcp.c @@ -667,7 +667,7 @@ BOOL tcp_set_keep_alive_mode(rdpTcp* tcp) if (setsockopt(tcp->sockfd, SOL_SOCKET, SO_KEEPALIVE, (void*) &option_value, option_len) < 0) { - perror("setsockopt() SOL_SOCKET, SO_KEEPALIVE:"); + DEBUG_WARN("setsockopt() SOL_SOCKET, SO_KEEPALIVE:"); return FALSE; } @@ -677,7 +677,7 @@ BOOL tcp_set_keep_alive_mode(rdpTcp* tcp) if (setsockopt(tcp->sockfd, IPPROTO_TCP, TCP_KEEPIDLE, (void*) &option_value, option_len) < 0) { - perror("setsockopt() IPPROTO_TCP, TCP_KEEPIDLE:"); + DEBUG_WARN("setsockopt() IPPROTO_TCP, TCP_KEEPIDLE:"); return FALSE; } #endif @@ -688,7 +688,7 @@ BOOL tcp_set_keep_alive_mode(rdpTcp* tcp) if (setsockopt(tcp->sockfd, SOL_TCP, TCP_KEEPCNT, (void *) &option_value, option_len) < 0) { - perror("setsockopt() SOL_TCP, TCP_KEEPCNT:"); + DEBUG_WARN("setsockopt() SOL_TCP, TCP_KEEPCNT:"); return FALSE; } #endif @@ -699,7 +699,7 @@ BOOL tcp_set_keep_alive_mode(rdpTcp* tcp) if (setsockopt(tcp->sockfd, SOL_TCP, TCP_KEEPINTVL, (void *) &option_value, option_len) < 0) { - perror("setsockopt() SOL_TCP, TCP_KEEPINTVL:"); + DEBUG_WARN("setsockopt() SOL_TCP, TCP_KEEPINTVL:"); return FALSE; } #endif @@ -710,7 +710,7 @@ BOOL tcp_set_keep_alive_mode(rdpTcp* tcp) option_len = sizeof(option_value); if (setsockopt(tcp->sockfd, SOL_SOCKET, SO_NOSIGPIPE, (void *) &option_value, option_len) < 0) { - perror("setsockopt() SOL_SOCKET, SO_NOSIGPIPE:"); + DEBUG_WARN("setsockopt() SOL_SOCKET, SO_NOSIGPIPE:"); } #endif return TRUE; diff --git a/libfreerdp/utils/pcap.c b/libfreerdp/utils/pcap.c index 5e174a847..f746e933a 100644 --- a/libfreerdp/utils/pcap.c +++ b/libfreerdp/utils/pcap.c @@ -162,7 +162,7 @@ rdpPcap* pcap_open(char* name, BOOL write) if (pcap_fp == NULL) { - perror("opening pcap dump"); + DEBUG_WARN("opening pcap dump"); return NULL; } diff --git a/libfreerdp/utils/tcp.c b/libfreerdp/utils/tcp.c index d96136832..1e9aba90a 100644 --- a/libfreerdp/utils/tcp.c +++ b/libfreerdp/utils/tcp.c @@ -156,7 +156,7 @@ int freerdp_tcp_read(int sockfd, BYTE* data, int length) if (errno == EAGAIN || errno == EWOULDBLOCK) return 0; - perror("recv"); + DEBUG_WARN("recv"); #endif return -1; } @@ -179,12 +179,12 @@ int freerdp_tcp_write(int sockfd, BYTE* data, int length) if (wsa_error == WSAEWOULDBLOCK) status = 0; else - perror("send"); + DEBUG_WARN("send"); #else if (errno == EAGAIN || errno == EWOULDBLOCK) status = 0; else - perror("send"); + DEBUG_WARN("send"); #endif } diff --git a/libfreerdp/utils/uds.c b/libfreerdp/utils/uds.c index d05f6ff32..9f88f6bb7 100644 --- a/libfreerdp/utils/uds.c +++ b/libfreerdp/utils/uds.c @@ -54,7 +54,7 @@ int freerdp_uds_connect(const char* path) sockfd = socket(AF_UNIX, SOCK_STREAM, 0); if (sockfd == -1) { - perror("socket"); + DEBUG_WARN("socket"); return -1; } @@ -63,7 +63,7 @@ int freerdp_uds_connect(const char* path) status = connect(sockfd, (struct sockaddr *) &addr, sizeof(addr)); if (status < 0) { - perror("connect"); + DEBUG_WARN("connect"); close(sockfd); return -1; } From 8d8719e1019d5ee65577dec5fbf8e4ecb7b6ffaa Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Mon, 11 Aug 2014 09:19:47 +0200 Subject: [PATCH 088/170] Replaced fprintf with DEBUG_WARN --- server/Mac/mf_info.c | 10 +++---- server/Mac/mf_mountain_lion.c | 10 +++---- server/Mac/mf_rdpsnd.c | 10 +++---- server/Sample/sf_audin.c | 8 ++++-- server/Sample/sf_rdpsnd.c | 3 +- server/Sample/sfreerdp.c | 49 +++++++++++++++++---------------- server/Windows/cli/wfreerdp.c | 12 ++++---- server/Windows/wf_directsound.c | 2 +- server/Windows/wf_info.c | 10 +++---- server/Windows/wf_interface.c | 12 ++++---- server/Windows/wf_mirage.c | 28 +++++++++---------- server/Windows/wf_peer.c | 12 ++++---- server/Windows/wf_rdpsnd.c | 10 +++---- server/Windows/wf_update.c | 8 +++--- server/Windows/wf_wasapi.c | 2 +- server/X11/xf_cursor.c | 2 ++ server/X11/xf_monitors.c | 5 ++-- server/X11/xf_peer.c | 3 +- 18 files changed, 102 insertions(+), 94 deletions(-) diff --git a/server/Mac/mf_info.c b/server/Mac/mf_info.c index 7c79eb335..dfa686a5f 100644 --- a/server/Mac/mf_info.c +++ b/server/Mac/mf_info.c @@ -43,7 +43,7 @@ int mf_info_lock(mfInfo* mfi) break; default: - printf("mf_info_lock failed with %#X\n", status); + DEBUG_MSG("mf_info_lock failed with %#X\n", status); return -1; break; } @@ -65,7 +65,7 @@ int mf_info_try_lock(mfInfo* mfi, UINT32 ms) break; default: - printf("mf_info_try_lock failed with %#X\n", status); + DEBUG_MSG("mf_info_try_lock failed with %#X\n", status); return -1; break; } @@ -82,7 +82,7 @@ int mf_info_unlock(mfInfo* mfi) break; default: - printf("mf_info_unlock failed with %#X\n", status); + DEBUG_MSG("mf_info_unlock failed with %#X\n", status); return -1; break; } @@ -110,7 +110,7 @@ mfInfo* mf_info_init() if (mutexInitStatus != 0) { - printf(_T("CreateMutex error: %#X\n"), mutexInitStatus); + DEBUG_MSG(_T("CreateMutex error: %#X\n"), mutexInitStatus); } mfi->peers = (freerdp_peer**) malloc(sizeof(freerdp_peer*) * MF_INFO_MAXPEERS); @@ -163,7 +163,7 @@ void mf_info_peer_register(mfInfo* mfi, mfPeerContext* context) int peerId; if (mfi->peerCount == MF_INFO_MAXPEERS) { - printf("TODO: socketClose on OS X\n"); + DEBUG_MSG("TODO: socketClose on OS X\n"); //context->socketClose = TRUE; mf_info_unlock(mfi); return; diff --git a/server/Mac/mf_mountain_lion.c b/server/Mac/mf_mountain_lion.c index 88d59033a..f9777a261 100644 --- a/server/Mac/mf_mountain_lion.c +++ b/server/Mac/mf_mountain_lion.c @@ -86,7 +86,7 @@ void (^streamHandler)(CGDisplayStreamFrameStatus, uint64_t, IOSurfaceRef, CGDisp switch(status) { case kCGDisplayStreamFrameStatusFrameIdle: - printf("kCGDisplayStreamFrameStatusFrameIdle\n"); + DEBUG_MSG("kCGDisplayStreamFrameStatusFrameIdle\n"); break; case kCGDisplayStreamFrameStatusStopped: @@ -95,11 +95,11 @@ void (^streamHandler)(CGDisplayStreamFrameStatus, uint64_t, IOSurfaceRef, CGDisp break; case kCGDisplayStreamFrameStatusFrameBlank: - printf("kCGDisplayStreamFrameStatusFrameBlank\n"); + DEBUG_MSG("kCGDisplayStreamFrameStatusFrameBlank\n"); break; default: - printf("Unhandled Frame Status!!!\n"); + DEBUG_MSG("Unhandled Frame Status!!!\n"); } } @@ -193,7 +193,7 @@ int mf_mlion_start_getting_screen_updates() err = CGDisplayStreamStart(stream); if(err != kCGErrorSuccess) { - printf("Failed to start displaystream!! err = %d\n", err); + DEBUG_MSG("Failed to start displaystream!! err = %d\n", err); return 1; } @@ -207,7 +207,7 @@ int mf_mlion_stop_getting_screen_updates() err = CGDisplayStreamStop(stream); if(err != kCGErrorSuccess) { - printf("Failed to stop displaystream!! err = %d\n", err); + DEBUG_MSG("Failed to stop displaystream!! err = %d\n", err); return 1; } diff --git a/server/Mac/mf_rdpsnd.c b/server/Mac/mf_rdpsnd.c index e99d3eb38..3cfbf6e90 100644 --- a/server/Mac/mf_rdpsnd.c +++ b/server/Mac/mf_rdpsnd.c @@ -44,7 +44,7 @@ static void mf_peer_rdpsnd_activated(RdpsndServerContext* context) //we should actually loop through the list of client formats here //and see if we can send the client something that it supports... - printf("Client supports the following %d formats: \n", context->num_client_formats); + DEBUG_MSG("Client supports the following %d formats: \n", context->num_client_formats); for (i = 0; i < context->num_client_formats; i++) { @@ -55,7 +55,7 @@ static void mf_peer_rdpsnd_activated(RdpsndServerContext* context) (context->client_formats[i].nChannels == context->server_formats[j].nChannels) && (context->client_formats[i].nSamplesPerSec == context->server_formats[j].nSamplesPerSec)) { - printf("agreed on format!\n"); + DEBUG_MSG("agreed on format!\n"); formatAgreed = TRUE; agreedFormat = (AUDIO_FORMAT*)&context->server_formats[j]; break; @@ -68,7 +68,7 @@ static void mf_peer_rdpsnd_activated(RdpsndServerContext* context) if (formatAgreed == FALSE) { - printf("Could not agree on a audio format with the server\n"); + DEBUG_MSG("Could not agree on a audio format with the server\n"); return; } @@ -111,7 +111,7 @@ static void mf_peer_rdpsnd_activated(RdpsndServerContext* context) if (status != noErr) { - printf("Failed to create a new Audio Queue. Status code: %d\n", status); + DEBUG_MSG("Failed to create a new Audio Queue. Status code: %d\n", status); } @@ -208,7 +208,7 @@ void mf_peer_rdpsnd_input_callback (void *inUserD if (status != noErr) { - printf("AudioQueueEnqueueBuffer() returned status = %d\n", status); + DEBUG_MSG("AudioQueueEnqueueBuffer() returned status = %d\n", status); } } diff --git a/server/Sample/sf_audin.c b/server/Sample/sf_audin.c index 3d2a5538d..5edc16357 100644 --- a/server/Sample/sf_audin.c +++ b/server/Sample/sf_audin.c @@ -21,6 +21,8 @@ #include "config.h" #endif +#include + #include "sfreerdp.h" #include "sf_audin.h" @@ -33,19 +35,19 @@ static const AUDIO_FORMAT test_audio_formats[] = static void sf_peer_audin_opening(audin_server_context* context) { - printf("AUDIN opening.\n"); + DEBUG_MSG("AUDIN opening.\n"); /* Simply choose the first format supported by the client. */ context->SelectFormat(context, 0); } static void sf_peer_audin_open_result(audin_server_context* context, UINT32 result) { - printf("AUDIN open result %d.\n", result); + DEBUG_MSG("AUDIN open result %d.\n", result); } static void sf_peer_audin_receive_samples(audin_server_context* context, const void* buf, int nframes) { - printf("AUDIN receive %d frames.\n", nframes); + DEBUG_MSG("AUDIN receive %d frames.\n", nframes); } void sf_peer_audin_init(testPeerContext* context) diff --git a/server/Sample/sf_rdpsnd.c b/server/Sample/sf_rdpsnd.c index 4f42fa946..3b5ee0126 100644 --- a/server/Sample/sf_rdpsnd.c +++ b/server/Sample/sf_rdpsnd.c @@ -22,6 +22,7 @@ #endif #include +#include #include "sf_rdpsnd.h" @@ -33,7 +34,7 @@ static const AUDIO_FORMAT test_audio_formats[] = static void sf_peer_rdpsnd_activated(RdpsndServerContext* context) { - printf("RDPSND Activated\n"); + DEBUG_MSG("RDPSND Activated\n"); } BOOL sf_peer_rdpsnd_init(testPeerContext* context) diff --git a/server/Sample/sfreerdp.c b/server/Sample/sfreerdp.c index a990d4a73..784bba1e2 100644 --- a/server/Sample/sfreerdp.c +++ b/server/Sample/sfreerdp.c @@ -33,6 +33,7 @@ #include #include +#include #include #include @@ -341,7 +342,7 @@ static BOOL test_sleep_tsdiff(UINT32 *old_sec, UINT32 *old_usec, UINT32 new_sec, if ((sec < 0) || ((sec == 0) && (usec < 0))) { - printf("Invalid time stamp detected.\n"); + DEBUG_MSG("Invalid time stamp detected.\n"); return FALSE; } @@ -451,7 +452,7 @@ static void* tf_debug_channel_thread_func(void* arg) Stream_SetPosition(s, BytesReturned); - printf("got %lu bytes\n", BytesReturned); + DEBUG_MSG("got %lu bytes\n", BytesReturned); } Stream_Free(s, TRUE); @@ -470,30 +471,30 @@ BOOL tf_peer_post_connect(freerdp_peer* client) * callback returns. */ - printf("Client %s is activated (osMajorType %d osMinorType %d)", client->local ? "(local)" : client->hostname, + DEBUG_MSG("Client %s is activated (osMajorType %d osMinorType %d)", client->local ? "(local)" : client->hostname, client->settings->OsMajorType, client->settings->OsMinorType); if (client->settings->AutoLogonEnabled) { - printf(" and wants to login automatically as %s\\%s", + DEBUG_MSG(" and wants to login automatically as %s\\%s", client->settings->Domain ? client->settings->Domain : "", client->settings->Username); /* A real server may perform OS login here if NLA is not executed previously. */ } - printf("\n"); + DEBUG_MSG("\n"); - printf("Client requested desktop: %dx%dx%d\n", + DEBUG_MSG("Client requested desktop: %dx%dx%d\n", client->settings->DesktopWidth, client->settings->DesktopHeight, client->settings->ColorDepth); #if (SAMPLE_SERVER_USE_CLIENT_RESOLUTION == 1) context->rfx_context->width = client->settings->DesktopWidth; context->rfx_context->height = client->settings->DesktopHeight; - printf("Using resolution requested by client.\n"); + DEBUG_MSG("Using resolution requested by client.\n"); #else client->settings->DesktopWidth = context->rfx_context->width; client->settings->DesktopHeight = context->rfx_context->height; - printf("Resizing client to %dx%d\n", client->settings->DesktopWidth, client->settings->DesktopHeight); + DEBUG_MSG("Resizing client to %dx%d\n", client->settings->DesktopWidth, client->settings->DesktopHeight); client->update->DesktopResize(client->update->context); #endif @@ -506,7 +507,7 @@ BOOL tf_peer_post_connect(freerdp_peer* client) if (context->debug_channel != NULL) { - printf("Open channel rdpdbg.\n"); + DEBUG_MSG("Open channel rdpdbg.\n"); context->stopEvent = CreateEvent(NULL, TRUE, FALSE, NULL); @@ -561,7 +562,7 @@ BOOL tf_peer_activate(freerdp_peer* client) void tf_peer_synchronize_event(rdpInput* input, UINT32 flags) { - printf("Client sent a synchronize event (flags:0x%X)\n", flags); + DEBUG_MSG("Client sent a synchronize event (flags:0x%X)\n", flags); } void tf_peer_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) @@ -570,7 +571,7 @@ void tf_peer_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) rdpUpdate* update = client->update; testPeerContext* context = (testPeerContext*) input->context; - printf("Client sent a keyboard event (flags:0x%X code:0x%X)\n", flags, code); + DEBUG_MSG("Client sent a keyboard event (flags:0x%X code:0x%X)\n", flags, code); if ((flags & 0x4000) && code == 0x22) /* 'g' key */ { @@ -622,7 +623,7 @@ void tf_peer_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) void tf_peer_unicode_keyboard_event(rdpInput* input, UINT16 flags, UINT16 code) { - printf("Client sent a unicode keyboard event (flags:0x%X code:0x%X)\n", flags, code); + DEBUG_MSG("Client sent a unicode keyboard event (flags:0x%X code:0x%X)\n", flags, code); } void tf_peer_mouse_event(rdpInput* input, UINT16 flags, UINT16 x, UINT16 y) @@ -641,11 +642,11 @@ static void tf_peer_refresh_rect(rdpContext* context, BYTE count, RECTANGLE_16* { BYTE i; - printf("Client requested to refresh:\n"); + DEBUG_MSG("Client requested to refresh:\n"); for (i = 0; i < count; i++) { - printf(" (%d, %d) (%d, %d)\n", areas[i].left, areas[i].top, areas[i].right, areas[i].bottom); + DEBUG_MSG(" (%d, %d) (%d, %d)\n", areas[i].left, areas[i].top, areas[i].right, areas[i].bottom); } } @@ -653,11 +654,11 @@ static void tf_peer_suppress_output(rdpContext* context, BYTE allow, RECTANGLE_1 { if (allow > 0) { - printf("Client restore output (%d, %d) (%d, %d).\n", area->left, area->top, area->right, area->bottom); + DEBUG_MSG("Client restore output (%d, %d) (%d, %d).\n", area->left, area->top, area->right, area->bottom); } else { - printf("Client minimized and suppress output.\n"); + DEBUG_MSG("Client minimized and suppress output.\n"); } } @@ -700,7 +701,7 @@ static void* test_peer_mainloop(void* arg) client->Initialize(client); context = (testPeerContext*) client->context; - printf("We've got a client %s\n", client->local ? "(local)" : client->hostname); + DEBUG_MSG("We've got a client %s\n", client->local ? "(local)" : client->hostname); while (1) { @@ -709,7 +710,7 @@ static void* test_peer_mainloop(void* arg) memset(rfds, 0, sizeof(rfds)); if (client->GetFileDescriptor(client, rfds, &rcount) != TRUE) { - printf("Failed to get FreeRDP file descriptor\n"); + DEBUG_MSG("Failed to get FreeRDP file descriptor\n"); break; } @@ -743,7 +744,7 @@ static void* test_peer_mainloop(void* arg) (wsa_error == WSAEINPROGRESS) || (wsa_error == WSAEINTR))) { - printf("select failed (WSAGetLastError: %d)\n", wsa_error); + DEBUG_MSG("select failed (WSAGetLastError: %d)\n", wsa_error); break; } #else @@ -753,7 +754,7 @@ static void* test_peer_mainloop(void* arg) (errno == EINPROGRESS) || (errno == EINTR))) /* signal occurred */ { - printf("select failed (errno: %d)\n", errno); + DEBUG_MSG("select failed (errno: %d)\n", errno); break; } #endif @@ -766,7 +767,7 @@ static void* test_peer_mainloop(void* arg) break; } - printf("Client %s disconnected.\n", client->local ? "(local)" : client->hostname); + DEBUG_MSG("Client %s disconnected.\n", client->local ? "(local)" : client->hostname); client->Disconnect(client); freerdp_peer_context_free(client); @@ -799,7 +800,7 @@ static void test_server_mainloop(freerdp_listener* instance) memset(rfds, 0, sizeof(rfds)); if (instance->GetFileDescriptor(instance, rfds, &rcount) != TRUE) { - printf("Failed to get FreeRDP file descriptor\n"); + DEBUG_MSG("Failed to get FreeRDP file descriptor\n"); break; } @@ -827,14 +828,14 @@ static void test_server_mainloop(freerdp_listener* instance) (errno == EINPROGRESS) || (errno == EINTR))) /* signal occurred */ { - printf("select failed\n"); + DEBUG_MSG("select failed\n"); break; } } if (instance->CheckFileDescriptor(instance) != TRUE) { - printf("Failed to check FreeRDP file descriptor\n"); + DEBUG_MSG("Failed to check FreeRDP file descriptor\n"); break; } } diff --git a/server/Windows/cli/wfreerdp.c b/server/Windows/cli/wfreerdp.c index 0e28c4398..48a5cd900 100644 --- a/server/Windows/cli/wfreerdp.c +++ b/server/Windows/cli/wfreerdp.c @@ -36,7 +36,7 @@ int IDcount = 0; BOOL CALLBACK moncb(HMONITOR hMonitor, HDC hdcMonitor, LPRECT lprcMonitor, LPARAM dwData) { - printf("%d\t(%d, %d), (%d, %d)\n", + DEBUG_MSG("%d\t(%d, %d), (%d, %d)\n", IDcount, lprcMonitor->left, lprcMonitor->top, lprcMonitor->right, lprcMonitor->bottom); @@ -93,10 +93,10 @@ int main(int argc, char* argv[]) vscreen_w = GetSystemMetrics(SM_CXVIRTUALSCREEN); vscreen_h = GetSystemMetrics(SM_CYVIRTUALSCREEN); - printf("\n"); + DEBUG_MSG("\n"); EnumDisplayMonitors(NULL, NULL, moncb, 0); IDcount = 0; - printf("\nVirtual Screen = %dx%d\n", vscreen_w, vscreen_h); + DEBUG_MSG("\nVirtual Screen = %dx%d\n", vscreen_w, vscreen_h); } return 0; @@ -108,7 +108,7 @@ int main(int argc, char* argv[]) index++; if (index == argc) { - printf("missing screen id parameter\n"); + DEBUG_MSG("missing screen id parameter\n"); return 0; } @@ -154,13 +154,13 @@ int main(int argc, char* argv[]) } } - printf("Starting server\n"); + DEBUG_MSG("Starting server\n"); wfreerdp_server_start(server); WaitForSingleObject(server->thread, INFINITE); - printf("Stopping server\n"); + DEBUG_MSG("Stopping server\n"); wfreerdp_server_stop(server); wfreerdp_server_free(server); diff --git a/server/Windows/wf_directsound.c b/server/Windows/wf_directsound.c index 22190c96f..74c66adb9 100644 --- a/server/Windows/wf_directsound.c +++ b/server/Windows/wf_directsound.c @@ -35,7 +35,7 @@ int wf_directsound_activate(RdpsndServerContext* context) wfi = wf_info_get_instance(); - printf("RDPSND (direct sound) Activated\n"); + DEBUG_MSG("RDPSND (direct sound) Activated\n"); hr = DirectSoundCaptureCreate8(NULL, &cap, NULL); diff --git a/server/Windows/wf_info.c b/server/Windows/wf_info.c index c49d352df..85a8162f2 100644 --- a/server/Windows/wf_info.c +++ b/server/Windows/wf_info.c @@ -52,7 +52,7 @@ int wf_info_lock(wfInfo* wfi) break; case WAIT_FAILED: - printf("wf_info_lock failed with 0x%08X\n", GetLastError()); + DEBUG_MSG("wf_info_lock failed with 0x%08X\n", GetLastError()); return -1; break; } @@ -78,7 +78,7 @@ int wf_info_try_lock(wfInfo* wfi, DWORD dwMilliseconds) break; case WAIT_FAILED: - printf("wf_info_try_lock failed with 0x%08X\n", GetLastError()); + DEBUG_MSG("wf_info_try_lock failed with 0x%08X\n", GetLastError()); return -1; break; } @@ -90,7 +90,7 @@ int wf_info_unlock(wfInfo* wfi) { if (ReleaseMutex(wfi->mutex) == 0) { - printf("wf_info_unlock failed with 0x%08X\n", GetLastError()); + DEBUG_MSG("wf_info_unlock failed with 0x%08X\n", GetLastError()); return -1; } @@ -213,7 +213,7 @@ void wf_info_peer_register(wfInfo* wfi, wfPeerContext* context) wfi->peers[peerId] = ((rdpContext*) context)->peer; wfi->peers[peerId]->pId = peerId; wfi->peerCount++; - printf("Registering Peer: id=%d #=%d\n", peerId, wfi->peerCount); + DEBUG_MSG("Registering Peer: id=%d #=%d\n", peerId, wfi->peerCount); wf_info_unlock(wfi); @@ -232,7 +232,7 @@ void wf_info_peer_unregister(wfInfo* wfi, wfPeerContext* context) wfi->peerCount--; CloseHandle(context->updateEvent); - printf("Unregistering Peer: id=%d, #=%d\n", peerId, wfi->peerCount); + DEBUG_MSG("Unregistering Peer: id=%d, #=%d\n", peerId, wfi->peerCount); #ifdef WITH_WIN8 if (wfi->peerCount == 0) diff --git a/server/Windows/wf_interface.c b/server/Windows/wf_interface.c index ea0e98d46..f0e0b61d7 100644 --- a/server/Windows/wf_interface.c +++ b/server/Windows/wf_interface.c @@ -102,7 +102,7 @@ DWORD WINAPI wf_server_main_loop(LPVOID lpParam) if (instance->GetFileDescriptor(instance, rfds, &rcount) != TRUE) { - printf("Failed to get FreeRDP file descriptor\n"); + DEBUG_MSG("Failed to get FreeRDP file descriptor\n"); break; } @@ -127,12 +127,12 @@ DWORD WINAPI wf_server_main_loop(LPVOID lpParam) if (instance->CheckFileDescriptor(instance) != TRUE) { - printf("Failed to check FreeRDP file descriptor\n"); + DEBUG_MSG("Failed to check FreeRDP file descriptor\n"); break; } } - printf("wf_server_main_loop terminating\n"); + DEBUG_MSG("wf_server_main_loop terminating\n"); instance->Close(instance); @@ -164,7 +164,7 @@ BOOL wfreerdp_server_stop(wfServer* server) wfi = wf_info_get_instance(); - printf("Stopping server\n"); + DEBUG_MSG("Stopping server\n"); wfi->force_all_disconnect = TRUE; server->instance->Close(server->instance); return TRUE; @@ -210,7 +210,7 @@ FREERDP_API BOOL wfreerdp_server_is_running(wfServer* server) bRet = GetExitCodeThread(server->thread, &tStatus); if (bRet == 0) { - printf("Error in call to GetExitCodeThread\n"); + DEBUG_MSG("Error in call to GetExitCodeThread\n"); return FALSE; } @@ -245,7 +245,7 @@ FREERDP_API UINT32 wfreerdp_server_get_peer_hostname(int pId, wchar_t * dstStr) } else { - printf("nonexistent peer id=%d\n", pId); + DEBUG_MSG("nonexistent peer id=%d\n", pId); return 0; } } diff --git a/server/Windows/wf_mirage.c b/server/Windows/wf_mirage.c index baafd031f..6c59a6977 100644 --- a/server/Windows/wf_mirage.c +++ b/server/Windows/wf_mirage.c @@ -92,9 +92,9 @@ BOOL wf_mirror_driver_display_device_attach(wfInfo* wfi, DWORD mode) if (status != ERROR_SUCCESS) { - printf("Error opening RegKey: status=%0X\n", status); + DEBUG_MSG("Error opening RegKey: status=%0X\n", status); if (status == ERROR_ACCESS_DENIED) - printf("access denied. Do you have admin privleges?\n"); + DEBUG_MSG("access denied. Do you have admin privleges?\n"); return FALSE; } @@ -104,9 +104,9 @@ BOOL wf_mirror_driver_display_device_attach(wfInfo* wfi, DWORD mode) if (status != ERROR_SUCCESS) { - printf("Error querying RegKey: status=%0X\n", status); + DEBUG_MSG("Error querying RegKey: status=%0X\n", status); if (status == ERROR_ACCESS_DENIED) - printf("access denied. Do you have admin privleges?\n"); + DEBUG_MSG("access denied. Do you have admin privleges?\n"); return FALSE; } @@ -120,10 +120,10 @@ BOOL wf_mirror_driver_display_device_attach(wfInfo* wfi, DWORD mode) if (status != ERROR_SUCCESS) { - printf("Error writing registry key: %d ", status); + DEBUG_MSG("Error writing registry key: %d ", status); if (status == ERROR_ACCESS_DENIED) - printf("access denied. Do you have admin privleges?"); - printf("\n"); + DEBUG_MSG("access denied. Do you have admin privleges?"); + DEBUG_MSG("\n"); return FALSE; } } @@ -199,7 +199,7 @@ BOOL wf_mirror_driver_update(wfInfo* wfi, int mode) if ( (mode != MIRROR_LOAD) && (mode != MIRROR_UNLOAD) ) { - printf("Invalid mirror mode!\n"); + DEBUG_MSG("Invalid mirror mode!\n"); return FALSE; } @@ -321,29 +321,29 @@ BOOL wf_mirror_driver_activate(wfInfo* wfi) { if (!wfi->mirrorDriverActive) { - printf("Activating Mirror Driver\n"); + DEBUG_MSG("Activating Mirror Driver\n"); if (wf_mirror_driver_find_display_device(wfi) == FALSE) { - printf("Could not find dfmirage mirror driver! Is it installed?\n"); + DEBUG_MSG("Could not find dfmirage mirror driver! Is it installed?\n"); return FALSE; } if (wf_mirror_driver_display_device_attach(wfi, 1) == FALSE) { - printf("Could not attach display device!\n"); + DEBUG_MSG("Could not attach display device!\n"); return FALSE; } if (wf_mirror_driver_update(wfi, MIRROR_LOAD) == FALSE) { - printf("could not update system with new display settings!\n"); + DEBUG_MSG("could not update system with new display settings!\n"); return FALSE; } if (wf_mirror_driver_map_memory(wfi) == FALSE) { - printf("Unable to map memory for mirror driver!\n"); + DEBUG_MSG("Unable to map memory for mirror driver!\n"); return FALSE; } wfi->mirrorDriverActive = TRUE; @@ -356,7 +356,7 @@ void wf_mirror_driver_deactivate(wfInfo* wfi) { if (wfi->mirrorDriverActive) { - printf("Deactivating Mirror Driver\n"); + DEBUG_MSG("Deactivating Mirror Driver\n"); wf_mirror_driver_cleanup(wfi); wf_mirror_driver_display_device_attach(wfi, 0); diff --git a/server/Windows/wf_peer.c b/server/Windows/wf_peer.c index e214a007d..5b1dd6c47 100644 --- a/server/Windows/wf_peer.c +++ b/server/Windows/wf_peer.c @@ -92,7 +92,7 @@ BOOL wf_peer_post_connect(freerdp_peer* client) if ((settings->DesktopWidth != wfi->servscreen_width) || (settings->DesktopHeight != wfi->servscreen_height)) { /* - printf("Client requested resolution %dx%d, but will resize to %dx%d\n", + DEBUG_MSG("Client requested resolution %dx%d, but will resize to %dx%d\n", settings->DesktopWidth, settings->DesktopHeight, wfi->servscreen_width, wfi->servscreen_height); */ @@ -256,7 +256,7 @@ DWORD WINAPI wf_peer_main_loop(LPVOID lpParam) if (wfi->input_disabled) { - printf("client input is disabled\n"); + DEBUG_MSG("client input is disabled\n"); client->input->KeyboardEvent = wf_peer_keyboard_event_dummy; client->input->UnicodeKeyboardEvent = wf_peer_unicode_keyboard_event_dummy; client->input->MouseEvent = wf_peer_mouse_event_dummy; @@ -268,7 +268,7 @@ DWORD WINAPI wf_peer_main_loop(LPVOID lpParam) context->socketSemaphore = CreateSemaphore(NULL, 0, 1, NULL); context->socketThread = CreateThread(NULL, 0, wf_peer_socket_listener, client, 0, NULL); - printf("We've got a client %s\n", client->local ? "(local)" : client->hostname); + DEBUG_MSG("We've got a client %s\n", client->local ? "(local)" : client->hostname); nCount = 0; handles[nCount++] = context->updateEvent; @@ -280,7 +280,7 @@ DWORD WINAPI wf_peer_main_loop(LPVOID lpParam) if ((status == WAIT_FAILED) || (status == WAIT_TIMEOUT)) { - printf("WaitForMultipleObjects failed\n"); + DEBUG_MSG("WaitForMultipleObjects failed\n"); break; } @@ -311,7 +311,7 @@ DWORD WINAPI wf_peer_main_loop(LPVOID lpParam) //force disconnect if (wfi->force_all_disconnect == TRUE) { - printf("Forcing Disconnect -> "); + DEBUG_MSG("Forcing Disconnect -> "); break; } @@ -320,7 +320,7 @@ DWORD WINAPI wf_peer_main_loop(LPVOID lpParam) break; } - printf("Client %s disconnected.\n", client->local ? "(local)" : client->hostname); + DEBUG_MSG("Client %s disconnected.\n", client->local ? "(local)" : client->hostname); if (WaitForSingleObject(context->updateEvent, 0) == 0) { diff --git a/server/Windows/wf_rdpsnd.c b/server/Windows/wf_rdpsnd.c index c37ab0570..61663c081 100644 --- a/server/Windows/wf_rdpsnd.c +++ b/server/Windows/wf_rdpsnd.c @@ -54,7 +54,7 @@ static void wf_peer_rdpsnd_activated(RdpsndServerContext* context) wfi = wf_info_get_instance(); wfi->agreed_format = NULL; - printf("Client supports the following %d formats: \n", context->num_client_formats); + DEBUG_MSG("Client supports the following %d formats: \n", context->num_client_formats); for(i = 0; i < context->num_client_formats; i++) { //TODO: improve the way we agree on a format @@ -64,7 +64,7 @@ static void wf_peer_rdpsnd_activated(RdpsndServerContext* context) (context->client_formats[i].nChannels == context->server_formats[j].nChannels) && (context->client_formats[i].nSamplesPerSec == context->server_formats[j].nSamplesPerSec)) { - printf("agreed on format!\n"); + DEBUG_MSG("agreed on format!\n"); wfi->agreed_format = (AUDIO_FORMAT*) &context->server_formats[j]; break; } @@ -76,7 +76,7 @@ static void wf_peer_rdpsnd_activated(RdpsndServerContext* context) if (wfi->agreed_format == NULL) { - printf("Could not agree on a audio format with the server\n"); + DEBUG_MSG("Could not agree on a audio format with the server\n"); return; } @@ -116,7 +116,7 @@ int wf_rdpsnd_lock() break; case WAIT_FAILED: - printf("wf_rdpsnd_lock failed with 0x%08X\n", GetLastError()); + DEBUG_MSG("wf_rdpsnd_lock failed with 0x%08X\n", GetLastError()); return -1; break; } @@ -132,7 +132,7 @@ int wf_rdpsnd_unlock() if (ReleaseMutex(wfi->snd_mutex) == 0) { - printf("wf_rdpsnd_unlock failed with 0x%08X\n", GetLastError()); + DEBUG_MSG("wf_rdpsnd_unlock failed with 0x%08X\n", GetLastError()); return -1; } diff --git a/server/Windows/wf_update.c b/server/Windows/wf_update.c index a8488557f..54992a85f 100644 --- a/server/Windows/wf_update.c +++ b/server/Windows/wf_update.c @@ -176,7 +176,7 @@ void wf_update_peer_send(wfInfo* wfi, wfPeerContext* context) /* This is an unexpected error condition */ - printf("Unexpected Frame Index: Actual: %d Expected: %d\n", + DEBUG_MSG("Unexpected Frame Index: Actual: %d Expected: %d\n", wfi->frame_idx, context->frame_idx + 1); } @@ -189,7 +189,7 @@ void wf_update_encoder_reset(wfInfo* wfi) { if (wf_info_lock(wfi) > 0) { - printf("Resetting encoder\n"); + DEBUG_MSG("Resetting encoder\n"); if (wfi->rfx_context) { @@ -226,7 +226,7 @@ void wf_update_peer_activate(wfInfo* wfi, wfPeerContext* context) wf_update_encoder_reset(wfi); wfi->activePeerCount++; - printf("Activating Peer Updates: %d\n", wfi->activePeerCount); + DEBUG_MSG("Activating Peer Updates: %d\n", wfi->activePeerCount); wf_info_unlock(wfi); } @@ -248,7 +248,7 @@ void wf_update_peer_deactivate(wfInfo* wfi, wfPeerContext* context) client->activated = FALSE; wfi->activePeerCount--; - printf("Deactivating Peer Updates: %d\n", wfi->activePeerCount); + DEBUG_MSG("Deactivating Peer Updates: %d\n", wfi->activePeerCount); } wf_info_unlock(wfi); diff --git a/server/Windows/wf_wasapi.c b/server/Windows/wf_wasapi.c index 722ac71f8..40bc419d0 100644 --- a/server/Windows/wf_wasapi.c +++ b/server/Windows/wf_wasapi.c @@ -45,7 +45,7 @@ int wf_wasapi_activate(RdpsndServerContext* context) return 1; } - printf("RDPSND (WASAPI) Activated\n"); + DEBUG_MSG("RDPSND (WASAPI) Activated\n"); CreateThread(NULL, 0, wf_rdpsnd_wasapi_thread, latestPeer, 0, NULL); diff --git a/server/X11/xf_cursor.c b/server/X11/xf_cursor.c index aae3312b8..375c4875c 100644 --- a/server/X11/xf_cursor.c +++ b/server/X11/xf_cursor.c @@ -21,6 +21,8 @@ #include "config.h" #endif +#include + #include #include diff --git a/server/X11/xf_monitors.c b/server/X11/xf_monitors.c index 2bf5d51f1..27f6ae507 100644 --- a/server/X11/xf_monitors.c +++ b/server/X11/xf_monitors.c @@ -22,6 +22,7 @@ #endif #include +#include #include #include @@ -47,7 +48,7 @@ int xf_list_monitors(xfInfo* xfi) for (i = 0; i < nmonitors; i++) { - printf(" %s [%d] %dx%d\t+%d+%d\n", + DEBUG_MSG(" %s [%d] %dx%d\t+%d+%d\n", (i == 0) ? "*" : " ", i, screen[i].width, screen[i].height, screen[i].x_org, screen[i].y_org); @@ -60,7 +61,7 @@ int xf_list_monitors(xfInfo* xfi) Screen* screen; screen = ScreenOfDisplay(xfi->display, DefaultScreen(xfi->display)); - printf(" * [0] %dx%d\t+%d+%d\n", WidthOfScreen(screen), HeightOfScreen(screen), 0, 0); + DEBUG_MSG(" * [0] %dx%d\t+%d+%d\n", WidthOfScreen(screen), HeightOfScreen(screen), 0, 0); #endif return 0; diff --git a/server/X11/xf_peer.c b/server/X11/xf_peer.c index 14ddc1f13..31c8205bb 100644 --- a/server/X11/xf_peer.c +++ b/server/X11/xf_peer.c @@ -42,6 +42,7 @@ #include #include #include +#include #include "xf_input.h" #include "xf_cursor.h" @@ -288,7 +289,7 @@ xfInfo* xf_info_init() } if (xfi->use_xshm) - printf("Using X Shared Memory Extension (XShm)\n"); + DEBUG_MSG("Using X Shared Memory Extension (XShm)\n"); #ifdef WITH_XDAMAGE xf_xdamage_init(xfi); From 784696c1cd5f737bdb352a0d7fff26f7d02d6fed Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Mon, 11 Aug 2014 09:38:08 +0200 Subject: [PATCH 089/170] Fixed missing includes and invalid replacement. --- channels/printer/client/printer_win.c | 2 +- channels/rdpsnd/client/winmm/rdpsnd_winmm.c | 1 + libfreerdp/utils/pcap.c | 1 + server/Mac/mf_audin.h | 68 +-- server/Mac/mf_info.h | 100 ++--- server/Mac/mf_peer.h | 88 ++-- server/Mac/mf_rdpsnd.h | 132 +++--- server/Mac/mfreerdp.h | 56 +-- server/Sample/sf_audin.h | 64 +-- server/Sample/sf_encomsp.h | 62 +-- server/Sample/sf_rdpsnd.h | 64 +-- server/Sample/sfreerdp.h | 128 +++--- server/Windows/CMakeLists.txt | 186 ++++---- server/Windows/wf_info.h | 90 ++-- server/Windows/wf_mirage.h | 442 ++++++++++---------- server/Windows/wf_peer.h | 102 ++--- 16 files changed, 794 insertions(+), 792 deletions(-) diff --git a/channels/printer/client/printer_win.c b/channels/printer/client/printer_win.c index ed7e09e36..fcbbbc1fd 100644 --- a/channels/printer/client/printer_win.c +++ b/channels/printer/client/printer_win.c @@ -185,7 +185,7 @@ static rdpPrinter* printer_win_new_printer(rdpWinPrinterDriver* win_driver, cons win_printer->printer.FindPrintJob = printer_win_find_printjob; win_printer->printer.Free = printer_win_free_printer; - swCLOG_DBG(wname, 256, L"%hs", name); + swprintf(wname, 256, L"%hs", name); OpenPrinter(wname, &(win_printer->hPrinter), NULL); GetPrinter(win_printer->hPrinter, 2, (LPBYTE) prninfo, 0, &needed); diff --git a/channels/rdpsnd/client/winmm/rdpsnd_winmm.c b/channels/rdpsnd/client/winmm/rdpsnd_winmm.c index bf60d566b..cb69098c8 100644 --- a/channels/rdpsnd/client/winmm/rdpsnd_winmm.c +++ b/channels/rdpsnd/client/winmm/rdpsnd_winmm.c @@ -34,6 +34,7 @@ #include #include +#include #include "rdpsnd_main.h" diff --git a/libfreerdp/utils/pcap.c b/libfreerdp/utils/pcap.c index f746e933a..347c67f8d 100644 --- a/libfreerdp/utils/pcap.c +++ b/libfreerdp/utils/pcap.c @@ -26,6 +26,7 @@ #include #include +#include #ifndef _WIN32 #include diff --git a/server/Mac/mf_audin.h b/server/Mac/mf_audin.h index 188cdaefa..d3e172b97 100644 --- a/server/Mac/mf_audin.h +++ b/server/Mac/mf_audin.h @@ -1,34 +1,34 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * FreeRDP Mac OS X Server (Audio Input) - * - * Copyright 2012 Marc-Andre Moreau - * Copyright 2013 Corey Clayton - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef MF_AUDIN_H -#define MF_AUDIN_H - -#include -#include - -#include "mf_interface.h" -#include "mfreerdp.h" - - -void mf_peer_audin_init(mfPeerContext* context); - -#endif /* MF_AUDIN_H */ - +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * FreeRDP Mac OS X Server (Audio Input) + * + * Copyright 2012 Marc-Andre Moreau + * Copyright 2013 Corey Clayton + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef MF_AUDIN_H +#define MF_AUDIN_H + +#include +#include + +#include "mf_interface.h" +#include "mfreerdp.h" + + +void mf_peer_audin_init(mfPeerContext* context); + +#endif /* MF_AUDIN_H */ + diff --git a/server/Mac/mf_info.h b/server/Mac/mf_info.h index ba2a58ed3..da420c3f5 100644 --- a/server/Mac/mf_info.h +++ b/server/Mac/mf_info.h @@ -1,50 +1,50 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * FreeRDP Mac OS X Server - * - * Copyright 2012 Corey Clayton - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef MF_INFO_H -#define MF_INFO_H - -#define MF_INFO_DEFAULT_FPS 1 -#define MF_INFO_MAXPEERS 1 - - - -#include -#include - -#include "mf_interface.h" - -int mf_info_lock(mfInfo* mfi); -int mf_info_try_lock(mfInfo* mfi, UINT32 ms); -int mf_info_unlock(mfInfo* mfi); - -mfInfo* mf_info_get_instance(void); -void mf_info_peer_register(mfInfo* mfi, mfPeerContext* context); -void mf_info_peer_unregister(mfInfo* mfi, mfPeerContext* context); - -BOOL mf_info_have_updates(mfInfo* mfi); -void mf_info_update_changes(mfInfo* mfi); -void mf_info_find_invalid_region(mfInfo* mfi); -void mf_info_clear_invalid_region(mfInfo* mfi); -void mf_info_invalidate_full_screen(mfInfo* mfi); -BOOL mf_info_have_invalid_region(mfInfo* mfi); -void mf_info_getScreenData(mfInfo* mfi, long* width, long* height, BYTE** pBits, int* pitch); -//BOOL CALLBACK mf_info_monEnumCB(HMONITOR hMonitor, HDC hdcMonitor, LPRECT lprcMonitor, LPARAM dwData); - -#endif /* mf_info_H */ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * FreeRDP Mac OS X Server + * + * Copyright 2012 Corey Clayton + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef MF_INFO_H +#define MF_INFO_H + +#define MF_INFO_DEFAULT_FPS 1 +#define MF_INFO_MAXPEERS 1 + + + +#include +#include + +#include "mf_interface.h" + +int mf_info_lock(mfInfo* mfi); +int mf_info_try_lock(mfInfo* mfi, UINT32 ms); +int mf_info_unlock(mfInfo* mfi); + +mfInfo* mf_info_get_instance(void); +void mf_info_peer_register(mfInfo* mfi, mfPeerContext* context); +void mf_info_peer_unregister(mfInfo* mfi, mfPeerContext* context); + +BOOL mf_info_have_updates(mfInfo* mfi); +void mf_info_update_changes(mfInfo* mfi); +void mf_info_find_invalid_region(mfInfo* mfi); +void mf_info_clear_invalid_region(mfInfo* mfi); +void mf_info_invalidate_full_screen(mfInfo* mfi); +BOOL mf_info_have_invalid_region(mfInfo* mfi); +void mf_info_getScreenData(mfInfo* mfi, long* width, long* height, BYTE** pBits, int* pitch); +//BOOL CALLBACK mf_info_monEnumCB(HMONITOR hMonitor, HDC hdcMonitor, LPRECT lprcMonitor, LPARAM dwData); + +#endif /* mf_info_H */ diff --git a/server/Mac/mf_peer.h b/server/Mac/mf_peer.h index 5c3f71572..f5249affe 100644 --- a/server/Mac/mf_peer.h +++ b/server/Mac/mf_peer.h @@ -1,44 +1,44 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * FreeRDP Mac OS X Server - * - * Copyright 2012 Corey Clayton - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef WF_PEER_H -#define WF_PEER_H - -#include "mf_interface.h" - -BOOL mf_peer_get_fds(freerdp_peer* client, void** rfds, int* rcount); -BOOL mf_peer_check_fds(freerdp_peer* client); - -void mf_peer_rfx_update(freerdp_peer* client); - -int mf_peer_context_new(freerdp_peer* client, mfPeerContext* context); -void mf_peer_context_free(freerdp_peer* client, mfPeerContext* context); - -void mf_peer_init(freerdp_peer* client); - -BOOL mf_peer_post_connect(freerdp_peer* client); -BOOL mf_peer_activate(freerdp_peer* client); - -void mf_peer_synchronize_event(rdpInput* input, UINT32 flags); - -void mf_peer_accepted(freerdp_listener* instance, freerdp_peer* client); - -void* mf_peer_main_loop(void* arg); - -#endif /* MF_PEER_H */ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * FreeRDP Mac OS X Server + * + * Copyright 2012 Corey Clayton + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef WF_PEER_H +#define WF_PEER_H + +#include "mf_interface.h" + +BOOL mf_peer_get_fds(freerdp_peer* client, void** rfds, int* rcount); +BOOL mf_peer_check_fds(freerdp_peer* client); + +void mf_peer_rfx_update(freerdp_peer* client); + +int mf_peer_context_new(freerdp_peer* client, mfPeerContext* context); +void mf_peer_context_free(freerdp_peer* client, mfPeerContext* context); + +void mf_peer_init(freerdp_peer* client); + +BOOL mf_peer_post_connect(freerdp_peer* client); +BOOL mf_peer_activate(freerdp_peer* client); + +void mf_peer_synchronize_event(rdpInput* input, UINT32 flags); + +void mf_peer_accepted(freerdp_listener* instance, freerdp_peer* client); + +void* mf_peer_main_loop(void* arg); + +#endif /* MF_PEER_H */ diff --git a/server/Mac/mf_rdpsnd.h b/server/Mac/mf_rdpsnd.h index 2c3c6de2d..dedc09d24 100644 --- a/server/Mac/mf_rdpsnd.h +++ b/server/Mac/mf_rdpsnd.h @@ -1,66 +1,66 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * FreeRDP Mac OS X Server (Audio Output) - * - * Copyright 2012 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef MF_RDPSND_H -#define MF_RDPSND_H - -#include -#include - -#include -#include -#include - -#include "mf_interface.h" -#include "mfreerdp.h" - -void mf_rdpsnd_derive_buffer_size (AudioQueueRef audioQueue, - AudioStreamBasicDescription *ASBDescription, - Float64 seconds, - UInt32 *outBufferSize); - -void mf_peer_rdpsnd_input_callback (void *inUserData, - AudioQueueRef inAQ, - AudioQueueBufferRef inBuffer, - const AudioTimeStamp *inStartTime, - UInt32 inNumberPacketDescriptions, - const AudioStreamPacketDescription *inPacketDescs); - - -#define SND_NUMBUFFERS 3 -struct _AQRecorderState -{ - AudioStreamBasicDescription dataFormat; - AudioQueueRef queue; - AudioQueueBufferRef buffers[SND_NUMBUFFERS]; - AudioFileID audioFile; - UInt32 bufferByteSize; - SInt64 currentPacket; - bool isRunning; - RdpsndServerContext* snd_context; - -}; - -typedef struct _AQRecorderState AQRecorderState; - -BOOL mf_peer_rdpsnd_init(mfPeerContext* context); -BOOL mf_peer_rdpsnd_stop(void); - -#endif /* MF_RDPSND_H */ - +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * FreeRDP Mac OS X Server (Audio Output) + * + * Copyright 2012 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef MF_RDPSND_H +#define MF_RDPSND_H + +#include +#include + +#include +#include +#include + +#include "mf_interface.h" +#include "mfreerdp.h" + +void mf_rdpsnd_derive_buffer_size (AudioQueueRef audioQueue, + AudioStreamBasicDescription *ASBDescription, + Float64 seconds, + UInt32 *outBufferSize); + +void mf_peer_rdpsnd_input_callback (void *inUserData, + AudioQueueRef inAQ, + AudioQueueBufferRef inBuffer, + const AudioTimeStamp *inStartTime, + UInt32 inNumberPacketDescriptions, + const AudioStreamPacketDescription *inPacketDescs); + + +#define SND_NUMBUFFERS 3 +struct _AQRecorderState +{ + AudioStreamBasicDescription dataFormat; + AudioQueueRef queue; + AudioQueueBufferRef buffers[SND_NUMBUFFERS]; + AudioFileID audioFile; + UInt32 bufferByteSize; + SInt64 currentPacket; + bool isRunning; + RdpsndServerContext* snd_context; + +}; + +typedef struct _AQRecorderState AQRecorderState; + +BOOL mf_peer_rdpsnd_init(mfPeerContext* context); +BOOL mf_peer_rdpsnd_stop(void); + +#endif /* MF_RDPSND_H */ + diff --git a/server/Mac/mfreerdp.h b/server/Mac/mfreerdp.h index 153485cb2..2008b2581 100644 --- a/server/Mac/mfreerdp.h +++ b/server/Mac/mfreerdp.h @@ -1,28 +1,28 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * FreeRDP Mac OS X Server - * - * Copyright 2012 Marc-Andre Moreau - * Copyright 2012 Corey Clayton - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef MFREERDP_SERVER_H -#define MFREERDP_SERVER_H - -#include -#include -#include - -#endif /* MFREERDP_SERVER_H */ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * FreeRDP Mac OS X Server + * + * Copyright 2012 Marc-Andre Moreau + * Copyright 2012 Corey Clayton + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef MFREERDP_SERVER_H +#define MFREERDP_SERVER_H + +#include +#include +#include + +#endif /* MFREERDP_SERVER_H */ diff --git a/server/Sample/sf_audin.h b/server/Sample/sf_audin.h index 51ec4b31a..db762fc55 100644 --- a/server/Sample/sf_audin.h +++ b/server/Sample/sf_audin.h @@ -1,32 +1,32 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * FreeRDP Sample Server (Audio Input) - * - * Copyright 2012 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef SF_AUDIN_H -#define SF_AUDIN_H - -#include -#include -#include - -#include "sfreerdp.h" - -void sf_peer_audin_init(testPeerContext* context); - -#endif /* WF_AUDIN_H */ - +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * FreeRDP Sample Server (Audio Input) + * + * Copyright 2012 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef SF_AUDIN_H +#define SF_AUDIN_H + +#include +#include +#include + +#include "sfreerdp.h" + +void sf_peer_audin_init(testPeerContext* context); + +#endif /* WF_AUDIN_H */ + diff --git a/server/Sample/sf_encomsp.h b/server/Sample/sf_encomsp.h index f2abd3116..27703145d 100644 --- a/server/Sample/sf_encomsp.h +++ b/server/Sample/sf_encomsp.h @@ -1,31 +1,31 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * FreeRDP Sample Server (Lync Multiparty) - * - * Copyright 2014 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef SF_ENCOMSP_H -#define SF_ENCOMSP_H - -#include -#include -#include - -#include "sfreerdp.h" - -BOOL sf_peer_encomsp_init(testPeerContext* context); - -#endif /* SF_ENCOMSP_H */ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * FreeRDP Sample Server (Lync Multiparty) + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef SF_ENCOMSP_H +#define SF_ENCOMSP_H + +#include +#include +#include + +#include "sfreerdp.h" + +BOOL sf_peer_encomsp_init(testPeerContext* context); + +#endif /* SF_ENCOMSP_H */ diff --git a/server/Sample/sf_rdpsnd.h b/server/Sample/sf_rdpsnd.h index ce2875f17..78e7c9bbd 100644 --- a/server/Sample/sf_rdpsnd.h +++ b/server/Sample/sf_rdpsnd.h @@ -1,32 +1,32 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * FreeRDP Sample Server (Audio Output) - * - * Copyright 2012 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef SF_RDPSND_H -#define SF_RDPSND_H - -#include -#include -#include - -#include "sfreerdp.h" - -BOOL sf_peer_rdpsnd_init(testPeerContext* context); - -#endif /* SF_RDPSND_H */ - +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * FreeRDP Sample Server (Audio Output) + * + * Copyright 2012 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef SF_RDPSND_H +#define SF_RDPSND_H + +#include +#include +#include + +#include "sfreerdp.h" + +BOOL sf_peer_rdpsnd_init(testPeerContext* context); + +#endif /* SF_RDPSND_H */ + diff --git a/server/Sample/sfreerdp.h b/server/Sample/sfreerdp.h index 0c0e1cf13..1b81d82a4 100644 --- a/server/Sample/sfreerdp.h +++ b/server/Sample/sfreerdp.h @@ -1,64 +1,64 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * FreeRDP Sample Server - * - * Copyright 2012 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef SFREERDP_SERVER_H -#define SFREERDP_SERVER_H - -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -struct test_peer_context -{ - rdpContext _p; - - RFX_CONTEXT* rfx_context; - NSC_CONTEXT* nsc_context; - wStream* s; - BYTE* icon_data; - BYTE* bg_data; - int icon_width; - int icon_height; - int icon_x; - int icon_y; - BOOL activated; - HANDLE event; - HANDLE stopEvent; - HANDLE vcm; - void* debug_channel; - HANDLE debug_channel_thread; - audin_server_context* audin; - BOOL audin_open; - UINT32 frame_id; - RdpsndServerContext* rdpsnd; - EncomspServerContext* encomsp; -}; -typedef struct test_peer_context testPeerContext; - -#endif /* SFREERDP_SERVER_H */ - +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * FreeRDP Sample Server + * + * Copyright 2012 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef SFREERDP_SERVER_H +#define SFREERDP_SERVER_H + +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +struct test_peer_context +{ + rdpContext _p; + + RFX_CONTEXT* rfx_context; + NSC_CONTEXT* nsc_context; + wStream* s; + BYTE* icon_data; + BYTE* bg_data; + int icon_width; + int icon_height; + int icon_x; + int icon_y; + BOOL activated; + HANDLE event; + HANDLE stopEvent; + HANDLE vcm; + void* debug_channel; + HANDLE debug_channel_thread; + audin_server_context* audin; + BOOL audin_open; + UINT32 frame_id; + RdpsndServerContext* rdpsnd; + EncomspServerContext* encomsp; +}; +typedef struct test_peer_context testPeerContext; + +#endif /* SFREERDP_SERVER_H */ + diff --git a/server/Windows/CMakeLists.txt b/server/Windows/CMakeLists.txt index ae9ed7c92..9bd208d9c 100644 --- a/server/Windows/CMakeLists.txt +++ b/server/Windows/CMakeLists.txt @@ -1,97 +1,97 @@ -# FreeRDP: A Remote Desktop Protocol Implementation -# FreeRDP Windows Server cmake build script -# -# Copyright 2012 Marc-Andre Moreau -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -set(MODULE_NAME "wfreerdp-server") -set(MODULE_PREFIX "FREERDP_SERVER_WINDOWS") - -include_directories(.) - -set(${MODULE_PREFIX}_SRCS - wf_update.c - wf_update.h - wf_dxgi.c - wf_dxgi.h - wf_input.c - wf_input.h - wf_interface.c - wf_interface.h - wf_mirage.c - wf_mirage.h - wf_peer.c - wf_peer.h - wf_settings.c - wf_settings.h - wf_info.c - wf_info.h) - -if(CHANNEL_RDPSND AND NOT WITH_RDPSND_DSOUND) - set(${MODULE_PREFIX}_SRCS - ${${MODULE_PREFIX}_SRCS} - wf_rdpsnd.c - wf_rdpsnd.h - wf_wasapi.c - wf_wasapi.h - ) -endif() - -if(CHANNEL_RDPSND AND WITH_RDPSND_DSOUND) - set(${MODULE_PREFIX}_SRCS - ${${MODULE_PREFIX}_SRCS} - wf_rdpsnd.c - wf_rdpsnd.h - wf_directsound.c - wf_directsound.h - ) -endif() - -if(WITH_SERVER_INTERFACE) - add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) +# FreeRDP: A Remote Desktop Protocol Implementation +# FreeRDP Windows Server cmake build script +# +# Copyright 2012 Marc-Andre Moreau +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +set(MODULE_NAME "wfreerdp-server") +set(MODULE_PREFIX "FREERDP_SERVER_WINDOWS") + +include_directories(.) + +set(${MODULE_PREFIX}_SRCS + wf_update.c + wf_update.h + wf_dxgi.c + wf_dxgi.h + wf_input.c + wf_input.h + wf_interface.c + wf_interface.h + wf_mirage.c + wf_mirage.h + wf_peer.c + wf_peer.h + wf_settings.c + wf_settings.h + wf_info.c + wf_info.h) + +if(CHANNEL_RDPSND AND NOT WITH_RDPSND_DSOUND) + set(${MODULE_PREFIX}_SRCS + ${${MODULE_PREFIX}_SRCS} + wf_rdpsnd.c + wf_rdpsnd.h + wf_wasapi.c + wf_wasapi.h + ) +endif() + +if(CHANNEL_RDPSND AND WITH_RDPSND_DSOUND) + set(${MODULE_PREFIX}_SRCS + ${${MODULE_PREFIX}_SRCS} + wf_rdpsnd.c + wf_rdpsnd.h + wf_directsound.c + wf_directsound.h + ) +endif() + +if(WITH_SERVER_INTERFACE) + add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) if (WITH_LIBRARY_VERSIONING) set_target_properties(${MODULE_NAME} PROPERTIES VERSION ${FREERDP_VERSION} SOVERSION ${FREERDP_API_VERSION}) endif() - set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "lib") -else() - set(${MODULE_PREFIX}_SRCS ${${MODULE_PREFIX}_SRCS} cli/wfreerdp.c cli/wfreerdp.h) - add_executable(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) -endif() + set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "lib") +else() + set(${MODULE_PREFIX}_SRCS ${${MODULE_PREFIX}_SRCS} cli/wfreerdp.c cli/wfreerdp.h) + add_executable(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) +endif() - -if(WITH_WIN8) - set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} d3d11 dxgi dxguid) -endif() - -set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} dsound) -set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} freerdp-server) - -set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS - MONOLITHIC ${MONOLITHIC_BUILD} - MODULE freerdp - MODULES freerdp-core freerdp-utils freerdp-codec freerdp-primitives) - -target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS}) - -if(WITH_SERVER_INTERFACE) - install(TARGETS ${MODULE_NAME} DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT libraries) -else() - install(TARGETS ${MODULE_NAME} DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT server) -endif() - -if(WITH_SERVER_INTERFACE) - add_subdirectory(cli) -endif() - -set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Server/Windows") + +if(WITH_WIN8) + set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} d3d11 dxgi dxguid) +endif() + +set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} dsound) +set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} freerdp-server) + +set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS + MONOLITHIC ${MONOLITHIC_BUILD} + MODULE freerdp + MODULES freerdp-core freerdp-utils freerdp-codec freerdp-primitives) + +target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS}) + +if(WITH_SERVER_INTERFACE) + install(TARGETS ${MODULE_NAME} DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT libraries) +else() + install(TARGETS ${MODULE_NAME} DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT server) +endif() + +if(WITH_SERVER_INTERFACE) + add_subdirectory(cli) +endif() + +set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Server/Windows") diff --git a/server/Windows/wf_info.h b/server/Windows/wf_info.h index d1dc44f2b..38a3ae6c6 100644 --- a/server/Windows/wf_info.h +++ b/server/Windows/wf_info.h @@ -1,45 +1,45 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * FreeRDP Windows Server - * - * Copyright 2012 Corey Clayton - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef WF_INFO_H -#define WF_INFO_H - -#include "wf_interface.h" - -#define WF_INFO_DEFAULT_FPS 24 -#define WF_INFO_MAXPEERS 32 - -int wf_info_lock(wfInfo* wfi); -int wf_info_try_lock(wfInfo* wfi, DWORD dwMilliseconds); -int wf_info_unlock(wfInfo* wfi); - -wfInfo* wf_info_get_instance(void); -void wf_info_peer_register(wfInfo* wfi, wfPeerContext* context); -void wf_info_peer_unregister(wfInfo* wfi, wfPeerContext* context); - -BOOL wf_info_have_updates(wfInfo* wfi); -void wf_info_update_changes(wfInfo* wfi); -void wf_info_find_invalid_region(wfInfo* wfi); -void wf_info_clear_invalid_region(wfInfo* wfi); -void wf_info_invalidate_full_screen(wfInfo* wfi); -BOOL wf_info_have_invalid_region(wfInfo* wfi); -void wf_info_getScreenData(wfInfo* wfi, long* width, long* height, BYTE** pBits, int* pitch); -BOOL CALLBACK wf_info_monEnumCB(HMONITOR hMonitor, HDC hdcMonitor, LPRECT lprcMonitor, LPARAM dwData); - -#endif /* WF_INFO_H */ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * FreeRDP Windows Server + * + * Copyright 2012 Corey Clayton + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef WF_INFO_H +#define WF_INFO_H + +#include "wf_interface.h" + +#define WF_INFO_DEFAULT_FPS 24 +#define WF_INFO_MAXPEERS 32 + +int wf_info_lock(wfInfo* wfi); +int wf_info_try_lock(wfInfo* wfi, DWORD dwMilliseconds); +int wf_info_unlock(wfInfo* wfi); + +wfInfo* wf_info_get_instance(void); +void wf_info_peer_register(wfInfo* wfi, wfPeerContext* context); +void wf_info_peer_unregister(wfInfo* wfi, wfPeerContext* context); + +BOOL wf_info_have_updates(wfInfo* wfi); +void wf_info_update_changes(wfInfo* wfi); +void wf_info_find_invalid_region(wfInfo* wfi); +void wf_info_clear_invalid_region(wfInfo* wfi); +void wf_info_invalidate_full_screen(wfInfo* wfi); +BOOL wf_info_have_invalid_region(wfInfo* wfi); +void wf_info_getScreenData(wfInfo* wfi, long* width, long* height, BYTE** pBits, int* pitch); +BOOL CALLBACK wf_info_monEnumCB(HMONITOR hMonitor, HDC hdcMonitor, LPRECT lprcMonitor, LPARAM dwData); + +#endif /* WF_INFO_H */ diff --git a/server/Windows/wf_mirage.h b/server/Windows/wf_mirage.h index 9ddfb8096..372e02bbe 100644 --- a/server/Windows/wf_mirage.h +++ b/server/Windows/wf_mirage.h @@ -1,221 +1,221 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * FreeRDP Windows Server - * - * Copyright 2012 Marc-Andre Moreau - * Copyright 2012-2013 Corey Clayton - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef WF_MIRAGE_H -#define WF_MIRAGE_H - -#include "wf_interface.h" - -enum -{ - MIRROR_LOAD = 0, - MIRROR_UNLOAD = 1 -}; - - - -enum -{ - DMF_ESCAPE_BASE_1_VB = 1030, - DMF_ESCAPE_BASE_2_VB = 1026, - DMF_ESCAPE_BASE_3_VB = 24 -}; - -#ifdef _WIN64 - -#define CLIENT_64BIT 0x8000 - -enum -{ - DMF_ESCAPE_BASE_1 = CLIENT_64BIT | DMF_ESCAPE_BASE_1_VB, - DMF_ESCAPE_BASE_2 = CLIENT_64BIT | DMF_ESCAPE_BASE_2_VB, - DMF_ESCAPE_BASE_3 = CLIENT_64BIT | DMF_ESCAPE_BASE_3_VB, -}; - -#else - -enum -{ - DMF_ESCAPE_BASE_1 = DMF_ESCAPE_BASE_1_VB, - DMF_ESCAPE_BASE_2 = DMF_ESCAPE_BASE_2_VB, - DMF_ESCAPE_BASE_3 = DMF_ESCAPE_BASE_3_VB, -}; - -#endif - -typedef enum -{ - dmf_esc_qry_ver_info = DMF_ESCAPE_BASE_2 + 0, - dmf_esc_usm_pipe_map = DMF_ESCAPE_BASE_1 + 0, - dmf_esc_usm_pipe_unmap = DMF_ESCAPE_BASE_1 + 1, - dmf_esc_test = DMF_ESCAPE_BASE_1 + 20, - dmf_esc_usm_pipe_mapping_test = DMF_ESCAPE_BASE_1 + 21, - dmf_esc_pointer_shape_get = DMF_ESCAPE_BASE_3, - -} dmf_escape; - -#define CLIP_LIMIT 50 -#define MAXCHANGES_BUF 20000 - -typedef enum -{ - dmf_dfo_IGNORE = 0, - dmf_dfo_FROM_SCREEN = 1, - dmf_dfo_FROM_DIB = 2, - dmf_dfo_TO_SCREEN = 3, - dmf_dfo_SCREEN_SCREEN = 11, - dmf_dfo_BLIT = 12, - dmf_dfo_SOLIDFILL = 13, - dmf_dfo_BLEND = 14, - dmf_dfo_TRANS = 15, - dmf_dfo_PLG = 17, - dmf_dfo_TEXTOUT = 18, - dmf_dfo_Ptr_Shape = 19, - dmf_dfo_Ptr_Engage = 48, - dmf_dfo_Ptr_Avert = 49, - dmf_dfn_assert_on = 64, - dmf_dfn_assert_off = 65, -} dmf_UpdEvent; - -#define NOCACHE 1 -#define OLDCACHE 2 -#define NEWCACHE 3 - -typedef struct -{ - ULONG type; - RECT rect; -#ifndef DFMIRAGE_LEAN - RECT origrect; - POINT point; - ULONG color; - ULONG refcolor; -#endif -} CHANGES_RECORD; - -typedef CHANGES_RECORD* PCHANGES_RECORD; - -typedef struct -{ - ULONG counter; - CHANGES_RECORD pointrect[MAXCHANGES_BUF]; -} CHANGES_BUF; - -#define EXT_DEVMODE_SIZE_MAX 3072 -#define DMF_PIPE_SEC_SIZE_DEFAULT ALIGN64K(sizeof(CHANGES_BUF)) - -typedef struct -{ - CHANGES_BUF* buffer; - PVOID Userbuffer; -} GETCHANGESBUF; - -#define dmf_sprb_ERRORMASK 0x07FF -#define dmf_sprb_STRICTSESSION_AFF 0x1FFF - -typedef enum -{ - dmf_sprb_internal_error = 0x0001, - dmf_sprb_miniport_gen_error = 0x0004, - dmf_sprb_memory_alloc_failed = 0x0008, - dmf_sprb_pipe_buff_overflow = 0x0010, - dmf_sprb_pipe_buff_insufficient = 0x0020, - dmf_sprb_pipe_not_ready = 0x0040, - dmf_sprb_gdi_err = 0x0100, - dmf_sprb_owner_died = 0x0400, - dmf_sprb_tgtwnd_gone = 0x0800, - dmf_sprb_pdev_detached = 0x2000, -} dmf_session_prob_status; - -#define DMF_ESC_RET_FAILF 0x80000000 -#define DMF_ESC_RET_SSTMASK 0x0000FFFF -#define DMF_ESC_RET_IMMMASK 0x7FFF0000 - -typedef enum -{ - dmf_escret_generic_ok = 0x00010000, - dmf_escret_bad_state = 0x00100000, - dmf_escret_access_denied = 0x00200000, - dmf_escret_bad_buffer_size = 0x00400000, - dmf_escret_internal_err = 0x00800000, - dmf_escret_out_of_memory = 0x02000000, - dmf_escret_already_connected = 0x04000000, - dmf_escret_oh_boy_too_late = 0x08000000, - dmf_escret_bad_window = 0x10000000, - dmf_escret_drv_ver_higher = 0x20000000, - dmf_escret_drv_ver_lower = 0x40000000, -} dmf_esc_retcode; - -typedef struct -{ - ULONG cbSize; - ULONG app_actual_version; - ULONG display_minreq_version; - ULONG connect_options; -} Esc_dmf_Qvi_IN; - -enum -{ - esc_qvi_prod_name_max = 16, -}; - -#define ESC_QVI_PROD_MIRAGE "MIRAGE" -#define ESC_QVI_PROD_QUASAR "QUASAR" - -typedef struct -{ - ULONG cbSize; - ULONG display_actual_version; - ULONG miniport_actual_version; - ULONG app_minreq_version; - ULONG display_buildno; - ULONG miniport_buildno; - char prod_name[esc_qvi_prod_name_max]; -} Esc_dmf_Qvi_OUT; - -typedef struct -{ - ULONG cbSize; - char* pDstBmBuf; - ULONG nDstBmBufSize; -} Esc_dmf_pointer_shape_get_IN; - -typedef struct -{ - ULONG cbSize; - POINTL BmSize; - char* pMaskBm; - ULONG nMaskBmSize; - char* pColorBm; - ULONG nColorBmSize; - char* pColorBmPal; - ULONG nColorBmPalEntries; -} Esc_dmf_pointer_shape_get_OUT; - -BOOL wf_mirror_driver_find_display_device(wfInfo* wfi); -BOOL wf_mirror_driver_display_device_attach(wfInfo* wfi, DWORD mode); -BOOL wf_mirror_driver_update(wfInfo* wfi, int mode); -BOOL wf_mirror_driver_map_memory(wfInfo* wfi); -BOOL wf_mirror_driver_cleanup(wfInfo* wfi); - -BOOL wf_mirror_driver_activate(wfInfo* wfi); -void wf_mirror_driver_deactivate(wfInfo* wfi); - -#endif /* WF_MIRAGE_H */ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * FreeRDP Windows Server + * + * Copyright 2012 Marc-Andre Moreau + * Copyright 2012-2013 Corey Clayton + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef WF_MIRAGE_H +#define WF_MIRAGE_H + +#include "wf_interface.h" + +enum +{ + MIRROR_LOAD = 0, + MIRROR_UNLOAD = 1 +}; + + + +enum +{ + DMF_ESCAPE_BASE_1_VB = 1030, + DMF_ESCAPE_BASE_2_VB = 1026, + DMF_ESCAPE_BASE_3_VB = 24 +}; + +#ifdef _WIN64 + +#define CLIENT_64BIT 0x8000 + +enum +{ + DMF_ESCAPE_BASE_1 = CLIENT_64BIT | DMF_ESCAPE_BASE_1_VB, + DMF_ESCAPE_BASE_2 = CLIENT_64BIT | DMF_ESCAPE_BASE_2_VB, + DMF_ESCAPE_BASE_3 = CLIENT_64BIT | DMF_ESCAPE_BASE_3_VB, +}; + +#else + +enum +{ + DMF_ESCAPE_BASE_1 = DMF_ESCAPE_BASE_1_VB, + DMF_ESCAPE_BASE_2 = DMF_ESCAPE_BASE_2_VB, + DMF_ESCAPE_BASE_3 = DMF_ESCAPE_BASE_3_VB, +}; + +#endif + +typedef enum +{ + dmf_esc_qry_ver_info = DMF_ESCAPE_BASE_2 + 0, + dmf_esc_usm_pipe_map = DMF_ESCAPE_BASE_1 + 0, + dmf_esc_usm_pipe_unmap = DMF_ESCAPE_BASE_1 + 1, + dmf_esc_test = DMF_ESCAPE_BASE_1 + 20, + dmf_esc_usm_pipe_mapping_test = DMF_ESCAPE_BASE_1 + 21, + dmf_esc_pointer_shape_get = DMF_ESCAPE_BASE_3, + +} dmf_escape; + +#define CLIP_LIMIT 50 +#define MAXCHANGES_BUF 20000 + +typedef enum +{ + dmf_dfo_IGNORE = 0, + dmf_dfo_FROM_SCREEN = 1, + dmf_dfo_FROM_DIB = 2, + dmf_dfo_TO_SCREEN = 3, + dmf_dfo_SCREEN_SCREEN = 11, + dmf_dfo_BLIT = 12, + dmf_dfo_SOLIDFILL = 13, + dmf_dfo_BLEND = 14, + dmf_dfo_TRANS = 15, + dmf_dfo_PLG = 17, + dmf_dfo_TEXTOUT = 18, + dmf_dfo_Ptr_Shape = 19, + dmf_dfo_Ptr_Engage = 48, + dmf_dfo_Ptr_Avert = 49, + dmf_dfn_assert_on = 64, + dmf_dfn_assert_off = 65, +} dmf_UpdEvent; + +#define NOCACHE 1 +#define OLDCACHE 2 +#define NEWCACHE 3 + +typedef struct +{ + ULONG type; + RECT rect; +#ifndef DFMIRAGE_LEAN + RECT origrect; + POINT point; + ULONG color; + ULONG refcolor; +#endif +} CHANGES_RECORD; + +typedef CHANGES_RECORD* PCHANGES_RECORD; + +typedef struct +{ + ULONG counter; + CHANGES_RECORD pointrect[MAXCHANGES_BUF]; +} CHANGES_BUF; + +#define EXT_DEVMODE_SIZE_MAX 3072 +#define DMF_PIPE_SEC_SIZE_DEFAULT ALIGN64K(sizeof(CHANGES_BUF)) + +typedef struct +{ + CHANGES_BUF* buffer; + PVOID Userbuffer; +} GETCHANGESBUF; + +#define dmf_sprb_ERRORMASK 0x07FF +#define dmf_sprb_STRICTSESSION_AFF 0x1FFF + +typedef enum +{ + dmf_sprb_internal_error = 0x0001, + dmf_sprb_miniport_gen_error = 0x0004, + dmf_sprb_memory_alloc_failed = 0x0008, + dmf_sprb_pipe_buff_overflow = 0x0010, + dmf_sprb_pipe_buff_insufficient = 0x0020, + dmf_sprb_pipe_not_ready = 0x0040, + dmf_sprb_gdi_err = 0x0100, + dmf_sprb_owner_died = 0x0400, + dmf_sprb_tgtwnd_gone = 0x0800, + dmf_sprb_pdev_detached = 0x2000, +} dmf_session_prob_status; + +#define DMF_ESC_RET_FAILF 0x80000000 +#define DMF_ESC_RET_SSTMASK 0x0000FFFF +#define DMF_ESC_RET_IMMMASK 0x7FFF0000 + +typedef enum +{ + dmf_escret_generic_ok = 0x00010000, + dmf_escret_bad_state = 0x00100000, + dmf_escret_access_denied = 0x00200000, + dmf_escret_bad_buffer_size = 0x00400000, + dmf_escret_internal_err = 0x00800000, + dmf_escret_out_of_memory = 0x02000000, + dmf_escret_already_connected = 0x04000000, + dmf_escret_oh_boy_too_late = 0x08000000, + dmf_escret_bad_window = 0x10000000, + dmf_escret_drv_ver_higher = 0x20000000, + dmf_escret_drv_ver_lower = 0x40000000, +} dmf_esc_retcode; + +typedef struct +{ + ULONG cbSize; + ULONG app_actual_version; + ULONG display_minreq_version; + ULONG connect_options; +} Esc_dmf_Qvi_IN; + +enum +{ + esc_qvi_prod_name_max = 16, +}; + +#define ESC_QVI_PROD_MIRAGE "MIRAGE" +#define ESC_QVI_PROD_QUASAR "QUASAR" + +typedef struct +{ + ULONG cbSize; + ULONG display_actual_version; + ULONG miniport_actual_version; + ULONG app_minreq_version; + ULONG display_buildno; + ULONG miniport_buildno; + char prod_name[esc_qvi_prod_name_max]; +} Esc_dmf_Qvi_OUT; + +typedef struct +{ + ULONG cbSize; + char* pDstBmBuf; + ULONG nDstBmBufSize; +} Esc_dmf_pointer_shape_get_IN; + +typedef struct +{ + ULONG cbSize; + POINTL BmSize; + char* pMaskBm; + ULONG nMaskBmSize; + char* pColorBm; + ULONG nColorBmSize; + char* pColorBmPal; + ULONG nColorBmPalEntries; +} Esc_dmf_pointer_shape_get_OUT; + +BOOL wf_mirror_driver_find_display_device(wfInfo* wfi); +BOOL wf_mirror_driver_display_device_attach(wfInfo* wfi, DWORD mode); +BOOL wf_mirror_driver_update(wfInfo* wfi, int mode); +BOOL wf_mirror_driver_map_memory(wfInfo* wfi); +BOOL wf_mirror_driver_cleanup(wfInfo* wfi); + +BOOL wf_mirror_driver_activate(wfInfo* wfi); +void wf_mirror_driver_deactivate(wfInfo* wfi); + +#endif /* WF_MIRAGE_H */ diff --git a/server/Windows/wf_peer.h b/server/Windows/wf_peer.h index a825b9652..7d96d9146 100644 --- a/server/Windows/wf_peer.h +++ b/server/Windows/wf_peer.h @@ -1,51 +1,51 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * FreeRDP Windows Server - * - * Copyright 2012 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef WF_PEER_H -#define WF_PEER_H - -#include "wf_interface.h" - -#include - - - -void wf_peer_context_new(freerdp_peer* client, wfPeerContext* context); -void wf_peer_context_free(freerdp_peer* client, wfPeerContext* context); - -void wf_peer_init(freerdp_peer* client); - -void wf_dxgi_encode(freerdp_peer* client, UINT timeout); -void wf_rfx_encode(freerdp_peer* client); - -BOOL wf_peer_post_connect(freerdp_peer* client); -BOOL wf_peer_activate(freerdp_peer* client); - -void wf_peer_synchronize_event(rdpInput* input, UINT32 flags); - -void wf_peer_send_changes(freerdp_peer* client); - -void wf_detect_win_ver(void); - -void wf_peer_accepted(freerdp_listener* instance, freerdp_peer* client); - -DWORD WINAPI wf_peer_main_loop(LPVOID lpParam); - - -#endif /* WF_PEER_H */ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * FreeRDP Windows Server + * + * Copyright 2012 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef WF_PEER_H +#define WF_PEER_H + +#include "wf_interface.h" + +#include + + + +void wf_peer_context_new(freerdp_peer* client, wfPeerContext* context); +void wf_peer_context_free(freerdp_peer* client, wfPeerContext* context); + +void wf_peer_init(freerdp_peer* client); + +void wf_dxgi_encode(freerdp_peer* client, UINT timeout); +void wf_rfx_encode(freerdp_peer* client); + +BOOL wf_peer_post_connect(freerdp_peer* client); +BOOL wf_peer_activate(freerdp_peer* client); + +void wf_peer_synchronize_event(rdpInput* input, UINT32 flags); + +void wf_peer_send_changes(freerdp_peer* client); + +void wf_detect_win_ver(void); + +void wf_peer_accepted(freerdp_listener* instance, freerdp_peer* client); + +DWORD WINAPI wf_peer_main_loop(LPVOID lpParam); + + +#endif /* WF_PEER_H */ From d0c5d9bb9e3c2ac6c5e6877b88dd0ca6dab9a773 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Mon, 11 Aug 2014 09:49:57 +0200 Subject: [PATCH 090/170] Fixed missing include. --- libfreerdp/utils/uds.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libfreerdp/utils/uds.c b/libfreerdp/utils/uds.c index 9f88f6bb7..6c872a6f1 100644 --- a/libfreerdp/utils/uds.c +++ b/libfreerdp/utils/uds.c @@ -22,6 +22,7 @@ #endif #include +#include #include #include From 7171a0b5c1cb39106bb50c2aff797ee3945352b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Mon, 11 Aug 2014 11:23:23 -0400 Subject: [PATCH 091/170] libfreerdp-core: fix reconnection using client random --- include/freerdp/settings.h | 15 ++++++++------ libfreerdp/common/settings.c | 14 +++++++++++++ libfreerdp/core/connection.c | 38 +++++++++++++++++++++--------------- libfreerdp/core/info.c | 20 ++++++++++++++++++- libfreerdp/core/settings.c | 15 +++++++++++++- 5 files changed, 78 insertions(+), 24 deletions(-) diff --git a/include/freerdp/settings.h b/include/freerdp/settings.h index ba05c81c0..5f48aeee7 100644 --- a/include/freerdp/settings.h +++ b/include/freerdp/settings.h @@ -536,6 +536,8 @@ typedef struct _RDPDR_PARALLEL RDPDR_PARALLEL; #define FreeRDP_ServerRandomLength 197 #define FreeRDP_ServerCertificate 198 #define FreeRDP_ServerCertificateLength 199 +#define FreeRDP_ClientRandom 200 +#define FreeRDP_ClientRandomLength 201 #define FreeRDP_ChannelCount 256 #define FreeRDP_ChannelDefArraySize 257 #define FreeRDP_ChannelDefArray 258 @@ -851,11 +853,12 @@ struct rdp_settings ALIGN64 UINT32 ExtEncryptionMethods; /* 194 */ ALIGN64 UINT32 EncryptionLevel; /* 195 */ ALIGN64 BYTE* ServerRandom; /* 196 */ - ALIGN64 DWORD ServerRandomLength; /* 197 */ + ALIGN64 UINT32 ServerRandomLength; /* 197 */ ALIGN64 BYTE* ServerCertificate; /* 198 */ - ALIGN64 DWORD ServerCertificateLength; /* 199 */ + ALIGN64 UINT32 ServerCertificateLength; /* 199 */ ALIGN64 BYTE* ClientRandom; /* 200 */ - UINT64 padding0256[256 - 201]; /* 201 */ + ALIGN64 UINT32 ClientRandomLength; /* 201 */ + UINT64 padding0256[256 - 202]; /* 202 */ /* Client Network Data */ ALIGN64 UINT32 ChannelCount; /* 256 */ @@ -1014,7 +1017,7 @@ struct rdp_settings /* Credentials Cache */ ALIGN64 BYTE* Password51; /* 1280 */ - ALIGN64 DWORD Password51Length; /* 1281 */ + ALIGN64 UINT32 Password51Length; /* 1281 */ UINT64 padding1344[1344 - 1282]; /* 1282 */ /* Kerberos Authentication */ @@ -1120,8 +1123,8 @@ struct rdp_settings ALIGN64 char* RemoteApplicationFile; /* 2116 */ ALIGN64 char* RemoteApplicationGuid; /* 2117 */ ALIGN64 char* RemoteApplicationCmdLine; /* 2118 */ - ALIGN64 DWORD RemoteApplicationExpandCmdLine; /* 2119 */ - ALIGN64 DWORD RemoteApplicationExpandWorkingDir; /* 2120 */ + ALIGN64 UINT32 RemoteApplicationExpandCmdLine; /* 2119 */ + ALIGN64 UINT32 RemoteApplicationExpandWorkingDir; /* 2120 */ ALIGN64 BOOL DisableRemoteAppCapsCheck; /* 2121 */ ALIGN64 UINT32 RemoteAppNumIconCaches; /* 2122 */ ALIGN64 UINT32 RemoteAppNumIconCacheEntries; /* 2123 */ diff --git a/libfreerdp/common/settings.c b/libfreerdp/common/settings.c index 739e03f70..07956bee1 100644 --- a/libfreerdp/common/settings.c +++ b/libfreerdp/common/settings.c @@ -1626,6 +1626,12 @@ UINT32 freerdp_get_param_uint32(rdpSettings* settings, int id) case FreeRDP_EncryptionLevel: return settings->EncryptionLevel; + case FreeRDP_ServerRandomLength: + return settings->ServerRandomLength; + + case FreeRDP_ClientRandomLength: + return settings->ClientRandomLength; + case FreeRDP_ChannelCount: return settings->ChannelCount; @@ -1875,6 +1881,14 @@ int freerdp_set_param_uint32(rdpSettings* settings, int id, UINT32 param) settings->EncryptionLevel = param; break; + case FreeRDP_ServerRandomLength: + settings->ServerRandomLength = param; + break; + + case FreeRDP_ClientRandomLength: + settings->ClientRandomLength = param; + break; + case FreeRDP_ChannelCount: settings->ChannelCount = param; break; diff --git a/libfreerdp/core/connection.c b/libfreerdp/core/connection.c index b19d97148..52947636a 100644 --- a/libfreerdp/core/connection.c +++ b/libfreerdp/core/connection.c @@ -388,11 +388,14 @@ static BOOL rdp_client_establish_keys(rdpRdp* rdp) wStream* s; UINT32 length; UINT32 key_len; - BYTE *crypt_client_random = NULL; - BOOL ret = FALSE; int status = 0; + BOOL ret = FALSE; + rdpSettings* settings; + BYTE* crypt_client_random = NULL; - if (!rdp->settings->DisableEncryption) + settings = rdp->settings; + + if (!settings->DisableEncryption) { /* no RDP encryption */ return TRUE; @@ -400,27 +403,30 @@ static BOOL rdp_client_establish_keys(rdpRdp* rdp) /* encrypt client random */ - if (rdp->settings->ClientRandom) - free(rdp->settings->ClientRandom); + if (settings->ClientRandom) + free(settings->ClientRandom); - rdp->settings->ClientRandom = malloc(CLIENT_RANDOM_LENGTH); + settings->ClientRandomLength = CLIENT_RANDOM_LENGTH; + settings->ClientRandom = malloc(settings->ClientRandomLength); - if (!rdp->settings->ClientRandom) + if (!settings->ClientRandom) return FALSE; + crypto_nonce(settings->ClientRandom, settings->ClientRandomLength); + key_len = settings->RdpServerCertificate->cert_info.ModulusLength; + mod = settings->RdpServerCertificate->cert_info.Modulus; + exp = settings->RdpServerCertificate->cert_info.exponent; - crypto_nonce(rdp->settings->ClientRandom, CLIENT_RANDOM_LENGTH); - key_len = rdp->settings->RdpServerCertificate->cert_info.ModulusLength; - mod = rdp->settings->RdpServerCertificate->cert_info.Modulus; - exp = rdp->settings->RdpServerCertificate->cert_info.exponent; /* * client random must be (bitlen / 8) + 8 - see [MS-RDPBCGR] 5.3.4.1 * for details */ - crypt_client_random = calloc(1,key_len+8); + crypt_client_random = calloc(1, key_len + 8); + if (!crypt_client_random) return FALSE; - crypto_rsa_public_encrypt(rdp->settings->ClientRandom, CLIENT_RANDOM_LENGTH, key_len, mod, exp, crypt_client_random); + + crypto_rsa_public_encrypt(settings->ClientRandom, settings->ClientRandomLength, key_len, mod, exp, crypt_client_random); /* send crypt client random to server */ length = RDP_PACKET_HEADER_MAX_LENGTH + RDP_SECURITY_HEADER_LENGTH + 4 + key_len + 8; @@ -441,15 +447,15 @@ static BOOL rdp_client_establish_keys(rdpRdp* rdp) goto end; /* now calculate encrypt / decrypt and update keys */ - if (!security_establish_keys(rdp->settings->ClientRandom, rdp)) + if (!security_establish_keys(settings->ClientRandom, rdp)) goto end; rdp->do_crypt = TRUE; - if (rdp->settings->SaltedChecksum) + if (settings->SaltedChecksum) rdp->do_secure_checksum = TRUE; - if (rdp->settings->EncryptionMethods == ENCRYPTION_METHOD_FIPS) + if (settings->EncryptionMethods == ENCRYPTION_METHOD_FIPS) { rdp->fips_encrypt = crypto_des3_encrypt_init(rdp->fips_encrypt_key, fips_ivec); if (!rdp->fips_encrypt) diff --git a/libfreerdp/core/info.c b/libfreerdp/core/info.c index 300b854b8..771e86bc7 100644 --- a/libfreerdp/core/info.c +++ b/libfreerdp/core/info.c @@ -105,13 +105,31 @@ BOOL rdp_read_client_auto_reconnect_cookie(wStream* s, rdpSettings* settings) void rdp_write_client_auto_reconnect_cookie(wStream* s, rdpSettings* settings) { + CryptoHmac hmac; + BYTE nullRandom[32]; + BYTE cryptSecurityVerifier[16]; ARC_CS_PRIVATE_PACKET* autoReconnectCookie; autoReconnectCookie = settings->ClientAutoReconnectCookie; + /* SecurityVerifier = HMAC(AutoReconnectRandom, ClientRandom) */ + + hmac = crypto_hmac_new(); + ZeroMemory(nullRandom, sizeof(nullRandom)); + + crypto_hmac_md5_init(hmac, autoReconnectCookie->securityVerifier, 16); + + if (settings->ClientRandomLength > 0) + crypto_hmac_update(hmac, settings->ClientRandom, settings->ClientRandomLength); + else + crypto_hmac_update(hmac, nullRandom, sizeof(nullRandom)); + + crypto_hmac_final(hmac, cryptSecurityVerifier, 16); + crypto_hmac_free(hmac); + Stream_Write_UINT32(s, autoReconnectCookie->cbLen); /* cbLen (4 bytes) */ Stream_Write_UINT32(s, autoReconnectCookie->version); /* version (4 bytes) */ Stream_Write_UINT32(s, autoReconnectCookie->logonId); /* LogonId (4 bytes) */ - Stream_Write(s, autoReconnectCookie->securityVerifier, 16); /* SecurityVerifier */ + Stream_Write(s, cryptSecurityVerifier, 16); /* SecurityVerifier */ } /** diff --git a/libfreerdp/core/settings.c b/libfreerdp/core/settings.c index f112ad452..feb811967 100644 --- a/libfreerdp/core/settings.c +++ b/libfreerdp/core/settings.c @@ -522,6 +522,7 @@ rdpSettings* freerdp_settings_clone(rdpSettings* settings) _settings->EncryptionLevel = settings->EncryptionLevel; /* 195 */ _settings->ServerRandomLength = settings->ServerRandomLength; /* 197 */ _settings->ServerCertificateLength = settings->ServerCertificateLength; /* 199 */ + _settings->ClientRandomLength = settings->ClientRandomLength; /* 201 */ _settings->ChannelCount = settings->ChannelCount; /* 256 */ _settings->ChannelDefArraySize = settings->ChannelDefArraySize; /* 257 */ _settings->ClusterInfoFlags = settings->ClusterInfoFlags; /* 320 */ @@ -725,6 +726,18 @@ rdpSettings* freerdp_settings_clone(rdpSettings* settings) * Manual Code */ + if (_settings->ServerRandomLength) + { + _settings->ServerRandom = (BYTE*) malloc(_settings->ServerRandomLength); + CopyMemory(_settings->ServerRandom, settings->ServerRandom, _settings->ServerRandomLength); + } + + if (_settings->ClientRandomLength) + { + _settings->ClientRandom = (BYTE*) malloc(_settings->ClientRandomLength); + CopyMemory(_settings->ClientRandom, settings->ClientRandom, _settings->ClientRandomLength); + } + _settings->ChannelCount = settings->ChannelCount; _settings->ChannelDefArraySize = settings->ChannelDefArraySize; _settings->ChannelDefArray = (CHANNEL_DEF*) malloc(sizeof(CHANNEL_DEF) * settings->ChannelDefArraySize); @@ -836,7 +849,7 @@ void freerdp_settings_free(rdpSettings* settings) free(settings->ClientHostname); free(settings->ClientProductId); free(settings->ServerRandom); - if (settings->ClientRandom) free(settings->ClientRandom); + free(settings->ClientRandom); free(settings->ServerCertificate); free(settings->RdpKeyFile); certificate_free(settings->RdpServerCertificate); From c41c6589e118a7c5a55395a44abc7f38455a0636 Mon Sep 17 00:00:00 2001 From: Nicholas Twerdochlib Date: Mon, 11 Aug 2014 18:48:11 -0400 Subject: [PATCH 092/170] Minor tweak to CLOG_PRINT macro. Initialalize tag buffer to NULL. Use strncat as a fail safe. --- include/freerdp/channels/log.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/include/freerdp/channels/log.h b/include/freerdp/channels/log.h index 585a23669..a2865be82 100644 --- a/include/freerdp/channels/log.h +++ b/include/freerdp/channels/log.h @@ -24,12 +24,12 @@ #define CLOG_PRINT(level, file, fkt, line, dbg_str, fmt, ...) \ do { \ - char tag[1024]; \ + char tag[1024] = {0}; \ wLogMessage msg; \ wLog *log; \ \ - strcat(tag, "com.freerdp.channels."); \ - strcat(tag, dbg_str); \ + strncat(tag, "com.freerdp.channels.", sizeof(tag)); \ + strncat(tag, dbg_str, sizeof(tag) - sizeof("com.freerdp.channels.")); \ log = WLog_Get(tag); \ \ msg.Type = WLOG_MESSAGE_TEXT; \ From 87fd839a35c194cdd568ffe2d96977ed8e611843 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Mon, 11 Aug 2014 18:48:42 -0400 Subject: [PATCH 093/170] libfreerdp-codec: cleanup and fix __lzcnt on Windows --- channels/encomsp/client/encomsp_main.c | 24 +++---- channels/rdpgfx/client/rdpgfx_main.c | 12 ++-- libfreerdp/codec/clear.c | 12 ++-- libfreerdp/codec/rfx_rlgr.c | 39 +++++++++-- libfreerdp/core/tpdu.c | 2 +- winpr/include/winpr/crt.h | 8 --- winpr/include/winpr/sysinfo.h | 29 ++++---- winpr/libwinpr/crt/test/TestIntrinsics.c | 89 +++++++++--------------- winpr/libwinpr/sysinfo/sysinfo.c | 5 ++ 9 files changed, 111 insertions(+), 109 deletions(-) diff --git a/channels/encomsp/client/encomsp_main.c b/channels/encomsp/client/encomsp_main.c index f941974c5..d801a5859 100644 --- a/channels/encomsp/client/encomsp_main.c +++ b/channels/encomsp/client/encomsp_main.c @@ -91,7 +91,7 @@ int encomsp_read_unicode_string(wStream* s, ENCOMSP_UNICODE_STRING* str) if (str->cchString > 1024) return -1; - if (Stream_GetRemainingLength(s) < (str->cchString * 2)) + if (Stream_GetRemainingLength(s) < (size_t) (str->cchString * 2)) return -1; Stream_Read(s, &(str->wString), (str->cchString * 2)); /* String (variable) */ @@ -126,7 +126,7 @@ int encomsp_recv_filter_updated_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ if ((beg + header->Length) > end) { - if (Stream_GetRemainingLength(s) < ((beg + header->Length) - end)) + if (Stream_GetRemainingLength(s) < (size_t) ((beg + header->Length) - end)) return -1; Stream_SetPosition(s, (beg + header->Length)); @@ -171,7 +171,7 @@ int encomsp_recv_application_created_pdu(encomspPlugin* encomsp, wStream* s, ENC if ((beg + header->Length) > end) { - if (Stream_GetRemainingLength(s) < ((beg + header->Length) - end)) + if (Stream_GetRemainingLength(s) < (size_t) ((beg + header->Length) - end)) return -1; Stream_SetPosition(s, (beg + header->Length)); @@ -212,7 +212,7 @@ int encomsp_recv_application_removed_pdu(encomspPlugin* encomsp, wStream* s, ENC if ((beg + header->Length) > end) { - if (Stream_GetRemainingLength(s) < ((beg + header->Length) - end)) + if (Stream_GetRemainingLength(s) < (size_t) ((beg + header->Length) - end)) return -1; Stream_SetPosition(s, (beg + header->Length)); @@ -258,7 +258,7 @@ int encomsp_recv_window_created_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ if ((beg + header->Length) > end) { - if (Stream_GetRemainingLength(s) < ((beg + header->Length) - end)) + if (Stream_GetRemainingLength(s) < (size_t) ((beg + header->Length) - end)) return -1; Stream_SetPosition(s, (beg + header->Length)); @@ -299,7 +299,7 @@ int encomsp_recv_window_removed_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ if ((beg + header->Length) > end) { - if (Stream_GetRemainingLength(s) < ((beg + header->Length) - end)) + if (Stream_GetRemainingLength(s) < (size_t) ((beg + header->Length) - end)) return -1; Stream_SetPosition(s, (beg + header->Length)); @@ -340,7 +340,7 @@ int encomsp_recv_show_window_pdu(encomspPlugin* encomsp, wStream* s, ENCOMSP_ORD if ((beg + header->Length) > end) { - if (Stream_GetRemainingLength(s) < ((beg + header->Length) - end)) + if (Stream_GetRemainingLength(s) < (size_t) ((beg + header->Length) - end)) return -1; Stream_SetPosition(s, (beg + header->Length)); @@ -386,7 +386,7 @@ int encomsp_recv_participant_created_pdu(encomspPlugin* encomsp, wStream* s, ENC if ((beg + header->Length) > end) { - if (Stream_GetRemainingLength(s) < ((beg + header->Length) - end)) + if (Stream_GetRemainingLength(s) < (size_t) ((beg + header->Length) - end)) return -1; Stream_SetPosition(s, (beg + header->Length)); @@ -429,7 +429,7 @@ int encomsp_recv_participant_removed_pdu(encomspPlugin* encomsp, wStream* s, ENC if ((beg + header->Length) > end) { - if (Stream_GetRemainingLength(s) < ((beg + header->Length) - end)) + if (Stream_GetRemainingLength(s) < (size_t) ((beg + header->Length) - end)) return -1; Stream_SetPosition(s, (beg + header->Length)); @@ -471,7 +471,7 @@ int encomsp_recv_change_participant_control_level_pdu(encomspPlugin* encomsp, wS if ((beg + header->Length) > end) { - if (Stream_GetRemainingLength(s) < ((beg + header->Length) - end)) + if (Stream_GetRemainingLength(s) < (size_t) ((beg + header->Length) - end)) return -1; Stream_SetPosition(s, (beg + header->Length)); @@ -531,7 +531,7 @@ int encomsp_recv_graphics_stream_paused_pdu(encomspPlugin* encomsp, wStream* s, if ((beg + header->Length) > end) { - if (Stream_GetRemainingLength(s) < ((beg + header->Length) - end)) + if (Stream_GetRemainingLength(s) < (size_t) ((beg + header->Length) - end)) return -1; Stream_SetPosition(s, (beg + header->Length)); @@ -567,7 +567,7 @@ int encomsp_recv_graphics_stream_resumed_pdu(encomspPlugin* encomsp, wStream* s, if ((beg + header->Length) > end) { - if (Stream_GetRemainingLength(s) < ((beg + header->Length) - end)) + if (Stream_GetRemainingLength(s) < (size_t) ((beg + header->Length) - end)) return -1; Stream_SetPosition(s, (beg + header->Length)); diff --git a/channels/rdpgfx/client/rdpgfx_main.c b/channels/rdpgfx/client/rdpgfx_main.c index 2093ad5a2..d715e65e2 100644 --- a/channels/rdpgfx/client/rdpgfx_main.c +++ b/channels/rdpgfx/client/rdpgfx_main.c @@ -203,7 +203,7 @@ int rdpgfx_recv_reset_graphics_pdu(RDPGFX_CHANNEL_CALLBACK* callback, wStream* s pad = 340 - (RDPGFX_HEADER_SIZE + 12 + (pdu.monitorCount * 20)); - if (Stream_GetRemainingLength(s) < pad) + if (Stream_GetRemainingLength(s) < (size_t) pad) return -1; Stream_Seek(s, pad); /* pad (total size is 340 bytes) */ @@ -254,7 +254,7 @@ int rdpgfx_recv_cache_import_reply_pdu(RDPGFX_CHANNEL_CALLBACK* callback, wStrea Stream_Read_UINT16(s, pdu.importedEntriesCount); /* cacheSlot (2 bytes) */ - if (Stream_GetRemainingLength(s) < (pdu.importedEntriesCount * 2)) + if (Stream_GetRemainingLength(s) < (size_t) (pdu.importedEntriesCount * 2)) return -1; pdu.cacheSlots = (UINT16*) calloc(pdu.importedEntriesCount, sizeof(UINT16)); @@ -525,7 +525,7 @@ int rdpgfx_recv_solid_fill_pdu(RDPGFX_CHANNEL_CALLBACK* callback, wStream* s) rdpgfx_read_color32(s, &(pdu.fillPixel)); /* fillPixel (4 bytes) */ Stream_Read_UINT16(s, pdu.fillRectCount); /* fillRectCount (2 bytes) */ - if (Stream_GetRemainingLength(s) < (pdu.fillRectCount * 8)) + if (Stream_GetRemainingLength(s) < (size_t) (pdu.fillRectCount * 8)) return -1; pdu.fillRects = (RDPGFX_RECT16*) calloc(pdu.fillRectCount, sizeof(RDPGFX_RECT16)); @@ -566,7 +566,7 @@ int rdpgfx_recv_surface_to_surface_pdu(RDPGFX_CHANNEL_CALLBACK* callback, wStrea rdpgfx_read_rect16(s, &(pdu.rectSrc)); /* rectSrc (8 bytes ) */ Stream_Read_UINT16(s, pdu.destPtsCount); /* destPtsCount (2 bytes) */ - if (Stream_GetRemainingLength(s) < (pdu.destPtsCount * 4)) + if (Stream_GetRemainingLength(s) < (size_t) (pdu.destPtsCount * 4)) return -1; pdu.destPts = (RDPGFX_POINT16*) calloc(pdu.destPtsCount, sizeof(RDPGFX_POINT16)); @@ -637,7 +637,7 @@ int rdpgfx_recv_cache_to_surface_pdu(RDPGFX_CHANNEL_CALLBACK* callback, wStream* Stream_Read_UINT16(s, pdu.surfaceId); /* surfaceId (2 bytes) */ Stream_Read_UINT16(s, pdu.destPtsCount); /* destPtsCount (2 bytes) */ - if (Stream_GetRemainingLength(s) < (pdu.destPtsCount * 4)) + if (Stream_GetRemainingLength(s) < (size_t) (pdu.destPtsCount * 4)) return -1; pdu.destPts = (RDPGFX_POINT16*) calloc(pdu.destPtsCount, sizeof(RDPGFX_POINT16)); @@ -847,7 +847,7 @@ static int rdpgfx_on_data_received(IWTSVirtualChannelCallback* pChannelCallback, s = Stream_New(pDstData, DstSize); - while (Stream_GetPosition(s) < Stream_Length(s)) + while (((size_t) Stream_GetPosition(s)) < Stream_Length(s)) { status = rdpgfx_recv_pdu(callback, s); diff --git a/libfreerdp/codec/clear.c b/libfreerdp/codec/clear.c index 4b93e4241..35b6c04a5 100644 --- a/libfreerdp/codec/clear.c +++ b/libfreerdp/codec/clear.c @@ -135,14 +135,14 @@ int clear_decompress(CLEAR_CONTEXT* clear, BYTE* pSrcData, UINT32 SrcSize, if (!glyphData) return -1010; - if ((nWidth * nHeight) > glyphEntry->count) + if ((nWidth * nHeight) > (int) glyphEntry->count) return -1011; nSrcStep = nWidth * 4; pSrcPixel8 = glyphData; pDstPixel8 = &pDstData[(nYDst * nDstStep) + (nXDst * 4)]; - for (y = 0; y < nHeight; y++) + for (y = 0; y < (UINT32) nHeight; y++) { CopyMemory(pDstPixel8, pSrcPixel8, nSrcStep); pSrcPixel8 += nSrcStep; @@ -177,7 +177,7 @@ int clear_decompress(CLEAR_CONTEXT* clear, BYTE* pSrcData, UINT32 SrcSize, suboffset = 0; residualData = &pSrcData[offset]; - if ((nWidth * nHeight * 4) > clear->TempSize) + if ((nWidth * nHeight * 4) > (int) clear->TempSize) { clear->TempSize = (nWidth * nHeight * 4); clear->TempBuffer = (BYTE*) realloc(clear->TempBuffer, clear->TempSize); @@ -238,7 +238,7 @@ int clear_decompress(CLEAR_CONTEXT* clear, BYTE* pSrcData, UINT32 SrcSize, if (pixelIndex != pixelCount) return -1019; - for (y = 0; y < nHeight; y++) + for (y = 0; y < (UINT32) nHeight; y++) { CopyMemory(pDstPixel8, pSrcPixel8, nSrcStep); pSrcPixel8 += nSrcStep; @@ -543,7 +543,7 @@ int clear_decompress(CLEAR_CONTEXT* clear, BYTE* pSrcData, UINT32 SrcSize, if (height > nHeight) return -1043; - if ((width * height * 4) > clear->TempSize) + if (((UINT32) (width * height * 4)) > clear->TempSize) { clear->TempSize = (width * height * 4); clear->TempBuffer = (BYTE*) realloc(clear->TempBuffer, clear->TempSize); @@ -732,7 +732,7 @@ int clear_decompress(CLEAR_CONTEXT* clear, BYTE* pSrcData, UINT32 SrcSize, pDstPixel8 = glyphData; pSrcPixel8 = &pDstData[(nYDst * nDstStep) + (nXDst * 4)]; - for (y = 0; y < nHeight; y++) + for (y = 0; y < (UINT32) nHeight; y++) { CopyMemory(pDstPixel8, pSrcPixel8, nSrcStep); pDstPixel8 += nSrcStep; diff --git a/libfreerdp/codec/rfx_rlgr.c b/libfreerdp/codec/rfx_rlgr.c index 1571dec20..b625f45c9 100644 --- a/libfreerdp/codec/rfx_rlgr.c +++ b/libfreerdp/codec/rfx_rlgr.c @@ -32,6 +32,7 @@ #include #include +#include #include #include "rfx_bitstream.h" @@ -72,6 +73,28 @@ _k = (_param >> LSGR); \ } +static BOOL g_LZCNT = FALSE; + +static INLINE UINT32 lzcnt_s(UINT32 x) +{ + if (!x) + return 32; + + if (!g_LZCNT) + { + UINT32 y; + int n = 32; + y = x >> 16; if (y != 0) { n = n - 16; x = y; } + y = x >> 8; if (y != 0) { n = n - 8; x = y; } + y = x >> 4; if (y != 0) { n = n - 4; x = y; } + y = x >> 2; if (y != 0) { n = n - 2; x = y; } + y = x >> 1; if (y != 0) return n - 2; + return n - x; + } + + return __lzcnt(x); +} + int rfx_rlgr_decode(const BYTE* pSrcData, UINT32 SrcSize, INT16* pDstData, UINT32 DstSize, int mode) { int vk; @@ -92,6 +115,8 @@ int rfx_rlgr_decode(const BYTE* pSrcData, UINT32 SrcSize, INT16* pDstData, UINT3 wBitStream* bs; wBitStream s_bs; + g_LZCNT = IsProcessorFeaturePresentEx(PF_EX_LZCNT); + k = 1; kp = k << LSGR; @@ -124,7 +149,7 @@ int rfx_rlgr_decode(const BYTE* pSrcData, UINT32 SrcSize, INT16* pDstData, UINT3 /* count number of leading 0s */ - cnt = __lzcnt(bs->accumulator); + cnt = lzcnt_s(bs->accumulator); nbits = BitStream_GetRemainingLength(bs); @@ -137,7 +162,7 @@ int rfx_rlgr_decode(const BYTE* pSrcData, UINT32 SrcSize, INT16* pDstData, UINT3 { BitStream_Shift32(bs); - cnt = __lzcnt(bs->accumulator); + cnt = lzcnt_s(bs->accumulator); nbits = BitStream_GetRemainingLength(bs); @@ -187,7 +212,7 @@ int rfx_rlgr_decode(const BYTE* pSrcData, UINT32 SrcSize, INT16* pDstData, UINT3 /* count number of leading 1s */ - cnt = __lzcnt(~(bs->accumulator)); + cnt = lzcnt_s(~(bs->accumulator)); nbits = BitStream_GetRemainingLength(bs); @@ -200,7 +225,7 @@ int rfx_rlgr_decode(const BYTE* pSrcData, UINT32 SrcSize, INT16* pDstData, UINT3 { BitStream_Shift32(bs); - cnt = __lzcnt(~(bs->accumulator)); + cnt = lzcnt_s(~(bs->accumulator)); nbits = BitStream_GetRemainingLength(bs); @@ -295,7 +320,7 @@ int rfx_rlgr_decode(const BYTE* pSrcData, UINT32 SrcSize, INT16* pDstData, UINT3 /* count number of leading 1s */ - cnt = __lzcnt(~(bs->accumulator)); + cnt = lzcnt_s(~(bs->accumulator)); nbits = BitStream_GetRemainingLength(bs); @@ -308,7 +333,7 @@ int rfx_rlgr_decode(const BYTE* pSrcData, UINT32 SrcSize, INT16* pDstData, UINT3 { BitStream_Shift32(bs); - cnt = __lzcnt(~(bs->accumulator)); + cnt = lzcnt_s(~(bs->accumulator)); nbits = BitStream_GetRemainingLength(bs); @@ -411,7 +436,7 @@ int rfx_rlgr_decode(const BYTE* pSrcData, UINT32 SrcSize, INT16* pDstData, UINT3 if (code) { mag = (UINT32) code; - nIdx = 32 - __lzcnt(mag); + nIdx = 32 - lzcnt_s(mag); } if (BitStream_GetRemainingLength(bs) < nIdx) diff --git a/libfreerdp/core/tpdu.c b/libfreerdp/core/tpdu.c index 0560d008f..d06adf0d3 100644 --- a/libfreerdp/core/tpdu.c +++ b/libfreerdp/core/tpdu.c @@ -182,7 +182,7 @@ BOOL tpdu_read_connection_confirm(wStream* s, BYTE* li) */ bytes_read = (Stream_GetPosition(s) - position) - 1; - return (Stream_GetRemainingLength(s) >= (*li - bytes_read)); + return (Stream_GetRemainingLength(s) >= (size_t) (*li - bytes_read)); } /** diff --git a/winpr/include/winpr/crt.h b/winpr/include/winpr/crt.h index ed136a2a0..4172be83f 100644 --- a/winpr/include/winpr/crt.h +++ b/winpr/include/winpr/crt.h @@ -104,10 +104,6 @@ static INLINE UINT16 __lzcnt16(UINT16 _val16) { return _val16 ? ((UINT16) (__builtin_clz((UINT32) _val16) - 16)) : 16; } -static INLINE UINT64 __lzcnt64(UINT64 _val64) { - return _val64 ? ((UINT64) __builtin_clzll(_val64)) : 64; -} - #else static INLINE UINT32 __lzcnt(UINT32 x) { @@ -125,10 +121,6 @@ static INLINE UINT16 __lzcnt16(UINT16 x) { return ((UINT16) __lzcnt((UINT32) x)); } -static INLINE UINT64 __lzcnt64(UINT64 x) { - return 0; /* TODO */ -} - #endif #endif diff --git a/winpr/include/winpr/sysinfo.h b/winpr/include/winpr/sysinfo.h index eca980a27..120009a08 100644 --- a/winpr/include/winpr/sysinfo.h +++ b/winpr/include/winpr/sysinfo.h @@ -298,20 +298,21 @@ WINPR_API ULONGLONG GetTickCount64(void); WINPR_API BOOL IsProcessorFeaturePresentEx(DWORD ProcessorFeature); /* extended flags */ -#define PF_EX_3DNOW_PREFETCH 1 -#define PF_EX_SSSE3 2 -#define PF_EX_SSE41 3 -#define PF_EX_SSE42 4 -#define PF_EX_AVX 5 -#define PF_EX_FMA 6 -#define PF_EX_AVX_AES 7 -#define PF_EX_AVX2 8 -#define PF_EX_ARM_VFP1 9 -#define PF_EX_ARM_VFP3D16 10 -#define PF_EX_ARM_VFP4 11 -#define PF_EX_ARM_IDIVA 12 -#define PF_EX_ARM_IDIVT 13 -#define PF_EX_AVX_PCLMULQDQ 14 +#define PF_EX_LZCNT 1 +#define PF_EX_3DNOW_PREFETCH 2 +#define PF_EX_SSSE3 3 +#define PF_EX_SSE41 4 +#define PF_EX_SSE42 5 +#define PF_EX_AVX 6 +#define PF_EX_FMA 7 +#define PF_EX_AVX_AES 8 +#define PF_EX_AVX2 9 +#define PF_EX_ARM_VFP1 10 +#define PF_EX_ARM_VFP3D16 11 +#define PF_EX_ARM_VFP4 12 +#define PF_EX_ARM_IDIVA 13 +#define PF_EX_ARM_IDIVT 14 +#define PF_EX_AVX_PCLMULQDQ 15 /* * some "aliases" for the standard defines diff --git a/winpr/libwinpr/crt/test/TestIntrinsics.c b/winpr/libwinpr/crt/test/TestIntrinsics.c index bb1f07b05..5bbf915f9 100644 --- a/winpr/libwinpr/crt/test/TestIntrinsics.c +++ b/winpr/libwinpr/crt/test/TestIntrinsics.c @@ -1,36 +1,53 @@ -#include #include +#include #include +static BOOL g_LZCNT = FALSE; + +static INLINE UINT32 lzcnt_s(UINT32 x) +{ + if (!x) + return 32; + + if (!g_LZCNT) + { + UINT32 y; + int n = 32; + y = x >> 16; if (y != 0) { n = n - 16; x = y; } + y = x >> 8; if (y != 0) { n = n - 8; x = y; } + y = x >> 4; if (y != 0) { n = n - 4; x = y; } + y = x >> 2; if (y != 0) { n = n - 2; x = y; } + y = x >> 1; if (y != 0) return n - 2; + return n - x; + } + + return __lzcnt(x); +} + int test_lzcnt() { - if (__lzcnt(0x0) != 32) { - fprintf(stderr, "__lzcnt(0x0) != 32\n"); + if (lzcnt_s(0x1) != 31) { + fprintf(stderr, "__lzcnt(0x1) != 31: %d\n", __lzcnt(0x1)); return -1; } - if (__lzcnt(0x1) != 31) { - fprintf(stderr, "__lzcnt(0x1) != 31\n"); - return -1; - } - - if (__lzcnt(0xFF) != 24) { + if (lzcnt_s(0xFF) != 24) { fprintf(stderr, "__lzcnt(0xFF) != 24\n"); return -1; } - if (__lzcnt(0xFFFF) != 16) { + if (lzcnt_s(0xFFFF) != 16) { fprintf(stderr, "__lzcnt(0xFFFF) != 16\n"); return -1; } - if (__lzcnt(0xFFFFFF) != 8) { + if (lzcnt_s(0xFFFFFF) != 8) { fprintf(stderr, "__lzcnt(0xFFFFFF) != 8\n"); return -1; } - if (__lzcnt(0xFFFFFFFF) != 0) { + if (lzcnt_s(0xFFFFFFFF) != 0) { fprintf(stderr, "__lzcnt(0xFFFFFFFF) != 0\n"); return -1; } @@ -40,11 +57,6 @@ int test_lzcnt() int test_lzcnt16() { - if (__lzcnt16(0x0) != 16) { - fprintf(stderr, "__lzcnt16(0x0) != 16\n"); - return -1; - } - if (__lzcnt16(0x1) != 15) { fprintf(stderr, "__lzcnt16(0x1) != 15\n"); return -1; @@ -63,47 +75,14 @@ int test_lzcnt16() return 1; } -int test_lzcnt64() -{ - if (__lzcnt64(0x0) != 64) { - fprintf(stderr, "__lzcnt64(0x0) != 64\n"); - return -1; - } - - if (__lzcnt64(0x1) != 63) { - fprintf(stderr, "__lzcnt64(0x1) != 63\n"); - return -1; - } - - if (__lzcnt64(0xFF) != 56) { - fprintf(stderr, "__lzcnt64(0xFF) != 56\n"); - return -1; - } - - if (__lzcnt64(0xFFFF) != 48) { - fprintf(stderr, "__lzcnt64(0xFFFF) != 48\n"); - return -1; - } - - if (__lzcnt64(0xFFFFFF) != 40) { - fprintf(stderr, "__lzcnt64(0xFFFFFF) != 40\n"); - return -1; - } - - if (__lzcnt64(0xFFFFFFFF) != 32) { - fprintf(stderr, "__lzcnt64(0xFFFFFFFF) != 32\n"); - return -1; - } - - return 1; -} - int TestIntrinsics(int argc, char* argv[]) { + g_LZCNT = IsProcessorFeaturePresentEx(PF_EX_LZCNT); + + printf("LZCNT available: %d\n", g_LZCNT); + test_lzcnt(); - test_lzcnt16(); - test_lzcnt64(); + //test_lzcnt16(); return 0; } - diff --git a/winpr/libwinpr/sysinfo/sysinfo.c b/winpr/libwinpr/sysinfo/sysinfo.c index fcef5b4cb..008420455 100644 --- a/winpr/libwinpr/sysinfo/sysinfo.c +++ b/winpr/libwinpr/sysinfo/sysinfo.c @@ -438,6 +438,7 @@ ULONGLONG GetTickCount64(void) #define D_BIT_3DN (1<<30) #define C_BIT_SSE3 (1<<0) #define C_BIT_PCLMULQDQ (1<<1) +#define C_BIT_LZCNT (1<<5) #define C_BIT_3DNP (1<<8) #define C_BIT_3DNP (1<<8) #define C_BIT_SSSE3 (1<<9) @@ -691,6 +692,10 @@ BOOL IsProcessorFeaturePresentEx(DWORD ProcessorFeature) switch (ProcessorFeature) { + case PF_EX_LZCNT: + if (c & C_BIT_LZCNT) + ret = TRUE; + break; case PF_EX_3DNOW_PREFETCH: if (c & C_BIT_3DNP) ret = TRUE; From b713bc1a98b393a4c7a6465f79ae19f1c4de1e82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Mon, 11 Aug 2014 18:51:22 -0400 Subject: [PATCH 094/170] freerdp: fix possible clog memory corruption --- include/freerdp/channels/log.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/freerdp/channels/log.h b/include/freerdp/channels/log.h index 585a23669..76ff6fc94 100644 --- a/include/freerdp/channels/log.h +++ b/include/freerdp/channels/log.h @@ -24,7 +24,7 @@ #define CLOG_PRINT(level, file, fkt, line, dbg_str, fmt, ...) \ do { \ - char tag[1024]; \ + char tag[1024] = { 0 }; \ wLogMessage msg; \ wLog *log; \ \ From 90d202ab8725dc0c3e3901cdd7106f6fec930e77 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Mon, 11 Aug 2014 19:31:38 -0400 Subject: [PATCH 095/170] server: fix build on Windows --- channels/encomsp/client/encomsp_main.c | 35 -------------------------- server/Windows/wf_info.c | 10 ++++---- server/Windows/wf_interface.c | 12 ++++----- server/Windows/wf_interface.h | 1 + server/Windows/wf_mirage.c | 28 ++++++++++----------- server/Windows/wf_peer.c | 12 ++++----- server/Windows/wf_rdpsnd.c | 10 ++++---- server/Windows/wf_update.c | 8 +++--- server/Windows/wf_wasapi.c | 2 +- server/shadow/Win/win_shadow.c | 4 ++- winpr/libwinpr/synch/barrier.c | 4 +-- 11 files changed, 47 insertions(+), 79 deletions(-) diff --git a/channels/encomsp/client/encomsp_main.c b/channels/encomsp/client/encomsp_main.c index b432be1f2..4752c028d 100644 --- a/channels/encomsp/client/encomsp_main.c +++ b/channels/encomsp/client/encomsp_main.c @@ -29,42 +29,7 @@ #include "encomsp_main.h" -<<<<<<< HEAD static int encomsp_read_header(wStream* s, ENCOMSP_ORDER_HEADER* header) -======= -EncomspClientContext* encomsp_get_client_interface(encomspPlugin* encomsp) -{ - EncomspClientContext* pInterface; - pInterface = (EncomspClientContext*) encomsp->channelEntryPoints.pInterface; - return pInterface; -} - -int encomsp_virtual_channel_write(encomspPlugin* encomsp, wStream* s) -{ - UINT32 status = 0; - - if (!encomsp) - return -1; - -#if 0 - CLOG_DBG("EncomspWrite (%d)\n", Stream_Length(s)); - winpr_HexDump(Stream_Buffer(s), Stream_Length(s)); -#endif - - status = encomsp->channelEntryPoints.pVirtualChannelWrite(encomsp->OpenHandle, - Stream_Buffer(s), (UINT32) Stream_Length(s), s); - - if (status != CHANNEL_RC_OK) - { - CLOG_ERR( "encomsp_virtual_channel_write: VirtualChannelWrite failed %d\n", status); - return -1; - } - - return 1; -} - -int encomsp_read_header(wStream* s, ENCOMSP_ORDER_HEADER* header) ->>>>>>> 31ac35698fe9fe0214669028098885f69e4b6a37 { if (Stream_GetRemainingLength(s) < ENCOMSP_ORDER_HEADER_SIZE) return -1; diff --git a/server/Windows/wf_info.c b/server/Windows/wf_info.c index fb156a4ee..4300c5513 100644 --- a/server/Windows/wf_info.c +++ b/server/Windows/wf_info.c @@ -52,7 +52,7 @@ int wf_info_lock(wfInfo* wfi) break; case WAIT_FAILED: - DEBUG_MSG("wf_info_lock failed with 0x%08X\n", GetLastError()); + DEBUG_WARN("wf_info_lock failed with 0x%08X\n", GetLastError()); return -1; break; } @@ -78,7 +78,7 @@ int wf_info_try_lock(wfInfo* wfi, DWORD dwMilliseconds) break; case WAIT_FAILED: - DEBUG_MSG("wf_info_try_lock failed with 0x%08X\n", GetLastError()); + DEBUG_WARN("wf_info_try_lock failed with 0x%08X\n", GetLastError()); return -1; break; } @@ -90,7 +90,7 @@ int wf_info_unlock(wfInfo* wfi) { if (ReleaseMutex(wfi->mutex) == 0) { - DEBUG_MSG("wf_info_unlock failed with 0x%08X\n", GetLastError()); + DEBUG_WARN("wf_info_unlock failed with 0x%08X\n", GetLastError()); return -1; } @@ -213,7 +213,7 @@ void wf_info_peer_register(wfInfo* wfi, wfPeerContext* context) wfi->peers[peerId] = ((rdpContext*) context)->peer; wfi->peers[peerId]->pId = peerId; wfi->peerCount++; - DEBUG_MSG("Registering Peer: id=%d #=%d\n", peerId, wfi->peerCount); + DEBUG_WARN("Registering Peer: id=%d #=%d\n", peerId, wfi->peerCount); wf_info_unlock(wfi); @@ -232,7 +232,7 @@ void wf_info_peer_unregister(wfInfo* wfi, wfPeerContext* context) wfi->peerCount--; CloseHandle(context->updateEvent); - DEBUG_MSG("Unregistering Peer: id=%d, #=%d\n", peerId, wfi->peerCount); + DEBUG_WARN("Unregistering Peer: id=%d, #=%d\n", peerId, wfi->peerCount); #ifdef WITH_DXGI_1_2 if (wfi->peerCount == 0) diff --git a/server/Windows/wf_interface.c b/server/Windows/wf_interface.c index f0e0b61d7..80262649d 100644 --- a/server/Windows/wf_interface.c +++ b/server/Windows/wf_interface.c @@ -102,7 +102,7 @@ DWORD WINAPI wf_server_main_loop(LPVOID lpParam) if (instance->GetFileDescriptor(instance, rfds, &rcount) != TRUE) { - DEBUG_MSG("Failed to get FreeRDP file descriptor\n"); + DEBUG_WARN("Failed to get FreeRDP file descriptor\n"); break; } @@ -127,12 +127,12 @@ DWORD WINAPI wf_server_main_loop(LPVOID lpParam) if (instance->CheckFileDescriptor(instance) != TRUE) { - DEBUG_MSG("Failed to check FreeRDP file descriptor\n"); + DEBUG_WARN("Failed to check FreeRDP file descriptor\n"); break; } } - DEBUG_MSG("wf_server_main_loop terminating\n"); + DEBUG_WARN("wf_server_main_loop terminating\n"); instance->Close(instance); @@ -164,7 +164,7 @@ BOOL wfreerdp_server_stop(wfServer* server) wfi = wf_info_get_instance(); - DEBUG_MSG("Stopping server\n"); + DEBUG_WARN("Stopping server\n"); wfi->force_all_disconnect = TRUE; server->instance->Close(server->instance); return TRUE; @@ -210,7 +210,7 @@ FREERDP_API BOOL wfreerdp_server_is_running(wfServer* server) bRet = GetExitCodeThread(server->thread, &tStatus); if (bRet == 0) { - DEBUG_MSG("Error in call to GetExitCodeThread\n"); + DEBUG_WARN("Error in call to GetExitCodeThread\n"); return FALSE; } @@ -245,7 +245,7 @@ FREERDP_API UINT32 wfreerdp_server_get_peer_hostname(int pId, wchar_t * dstStr) } else { - DEBUG_MSG("nonexistent peer id=%d\n", pId); + DEBUG_WARN("nonexistent peer id=%d\n", pId); return 0; } } diff --git a/server/Windows/wf_interface.h b/server/Windows/wf_interface.h index 6ab6b6f3e..9a2c72215 100644 --- a/server/Windows/wf_interface.h +++ b/server/Windows/wf_interface.h @@ -29,6 +29,7 @@ #include #include +#include #include diff --git a/server/Windows/wf_mirage.c b/server/Windows/wf_mirage.c index 6c59a6977..be1fedca1 100644 --- a/server/Windows/wf_mirage.c +++ b/server/Windows/wf_mirage.c @@ -92,9 +92,9 @@ BOOL wf_mirror_driver_display_device_attach(wfInfo* wfi, DWORD mode) if (status != ERROR_SUCCESS) { - DEBUG_MSG("Error opening RegKey: status=%0X\n", status); + DEBUG_WARN("Error opening RegKey: status=%0X\n", status); if (status == ERROR_ACCESS_DENIED) - DEBUG_MSG("access denied. Do you have admin privleges?\n"); + DEBUG_WARN("access denied. Do you have admin privleges?\n"); return FALSE; } @@ -104,9 +104,9 @@ BOOL wf_mirror_driver_display_device_attach(wfInfo* wfi, DWORD mode) if (status != ERROR_SUCCESS) { - DEBUG_MSG("Error querying RegKey: status=%0X\n", status); + DEBUG_WARN("Error querying RegKey: status=%0X\n", status); if (status == ERROR_ACCESS_DENIED) - DEBUG_MSG("access denied. Do you have admin privleges?\n"); + DEBUG_WARN("access denied. Do you have admin privleges?\n"); return FALSE; } @@ -120,10 +120,10 @@ BOOL wf_mirror_driver_display_device_attach(wfInfo* wfi, DWORD mode) if (status != ERROR_SUCCESS) { - DEBUG_MSG("Error writing registry key: %d ", status); + DEBUG_WARN("Error writing registry key: %d ", status); if (status == ERROR_ACCESS_DENIED) - DEBUG_MSG("access denied. Do you have admin privleges?"); - DEBUG_MSG("\n"); + DEBUG_WARN("access denied. Do you have admin privleges?"); + DEBUG_WARN("\n"); return FALSE; } } @@ -199,7 +199,7 @@ BOOL wf_mirror_driver_update(wfInfo* wfi, int mode) if ( (mode != MIRROR_LOAD) && (mode != MIRROR_UNLOAD) ) { - DEBUG_MSG("Invalid mirror mode!\n"); + DEBUG_WARN("Invalid mirror mode!\n"); return FALSE; } @@ -321,29 +321,29 @@ BOOL wf_mirror_driver_activate(wfInfo* wfi) { if (!wfi->mirrorDriverActive) { - DEBUG_MSG("Activating Mirror Driver\n"); + DEBUG_WARN("Activating Mirror Driver\n"); if (wf_mirror_driver_find_display_device(wfi) == FALSE) { - DEBUG_MSG("Could not find dfmirage mirror driver! Is it installed?\n"); + DEBUG_WARN("Could not find dfmirage mirror driver! Is it installed?\n"); return FALSE; } if (wf_mirror_driver_display_device_attach(wfi, 1) == FALSE) { - DEBUG_MSG("Could not attach display device!\n"); + DEBUG_WARN("Could not attach display device!\n"); return FALSE; } if (wf_mirror_driver_update(wfi, MIRROR_LOAD) == FALSE) { - DEBUG_MSG("could not update system with new display settings!\n"); + DEBUG_WARN("could not update system with new display settings!\n"); return FALSE; } if (wf_mirror_driver_map_memory(wfi) == FALSE) { - DEBUG_MSG("Unable to map memory for mirror driver!\n"); + DEBUG_WARN("Unable to map memory for mirror driver!\n"); return FALSE; } wfi->mirrorDriverActive = TRUE; @@ -356,7 +356,7 @@ void wf_mirror_driver_deactivate(wfInfo* wfi) { if (wfi->mirrorDriverActive) { - DEBUG_MSG("Deactivating Mirror Driver\n"); + DEBUG_WARN("Deactivating Mirror Driver\n"); wf_mirror_driver_cleanup(wfi); wf_mirror_driver_display_device_attach(wfi, 0); diff --git a/server/Windows/wf_peer.c b/server/Windows/wf_peer.c index b424cad0d..4a03d1bf9 100644 --- a/server/Windows/wf_peer.c +++ b/server/Windows/wf_peer.c @@ -92,7 +92,7 @@ BOOL wf_peer_post_connect(freerdp_peer* client) if ((settings->DesktopWidth != wfi->servscreen_width) || (settings->DesktopHeight != wfi->servscreen_height)) { /* - DEBUG_MSG("Client requested resolution %dx%d, but will resize to %dx%d\n", + DEBUG_WARN("Client requested resolution %dx%d, but will resize to %dx%d\n", settings->DesktopWidth, settings->DesktopHeight, wfi->servscreen_width, wfi->servscreen_height); */ @@ -248,7 +248,7 @@ DWORD WINAPI wf_peer_main_loop(LPVOID lpParam) if (wfi->input_disabled) { - DEBUG_MSG("client input is disabled\n"); + DEBUG_WARN("client input is disabled\n"); client->input->KeyboardEvent = wf_peer_keyboard_event_dummy; client->input->UnicodeKeyboardEvent = wf_peer_unicode_keyboard_event_dummy; client->input->MouseEvent = wf_peer_mouse_event_dummy; @@ -260,7 +260,7 @@ DWORD WINAPI wf_peer_main_loop(LPVOID lpParam) context->socketSemaphore = CreateSemaphore(NULL, 0, 1, NULL); context->socketThread = CreateThread(NULL, 0, wf_peer_socket_listener, client, 0, NULL); - DEBUG_MSG("We've got a client %s\n", client->local ? "(local)" : client->hostname); + DEBUG_WARN("We've got a client %s\n", client->local ? "(local)" : client->hostname); nCount = 0; handles[nCount++] = context->updateEvent; @@ -272,7 +272,7 @@ DWORD WINAPI wf_peer_main_loop(LPVOID lpParam) if ((status == WAIT_FAILED) || (status == WAIT_TIMEOUT)) { - DEBUG_MSG("WaitForMultipleObjects failed\n"); + DEBUG_WARN("WaitForMultipleObjects failed\n"); break; } @@ -303,7 +303,7 @@ DWORD WINAPI wf_peer_main_loop(LPVOID lpParam) //force disconnect if (wfi->force_all_disconnect == TRUE) { - DEBUG_MSG("Forcing Disconnect -> "); + DEBUG_WARN("Forcing Disconnect -> "); break; } @@ -312,7 +312,7 @@ DWORD WINAPI wf_peer_main_loop(LPVOID lpParam) break; } - DEBUG_MSG("Client %s disconnected.\n", client->local ? "(local)" : client->hostname); + DEBUG_WARN("Client %s disconnected.\n", client->local ? "(local)" : client->hostname); if (WaitForSingleObject(context->updateEvent, 0) == 0) { diff --git a/server/Windows/wf_rdpsnd.c b/server/Windows/wf_rdpsnd.c index 61663c081..004de3e1e 100644 --- a/server/Windows/wf_rdpsnd.c +++ b/server/Windows/wf_rdpsnd.c @@ -54,7 +54,7 @@ static void wf_peer_rdpsnd_activated(RdpsndServerContext* context) wfi = wf_info_get_instance(); wfi->agreed_format = NULL; - DEBUG_MSG("Client supports the following %d formats: \n", context->num_client_formats); + DEBUG_WARN("Client supports the following %d formats: \n", context->num_client_formats); for(i = 0; i < context->num_client_formats; i++) { //TODO: improve the way we agree on a format @@ -64,7 +64,7 @@ static void wf_peer_rdpsnd_activated(RdpsndServerContext* context) (context->client_formats[i].nChannels == context->server_formats[j].nChannels) && (context->client_formats[i].nSamplesPerSec == context->server_formats[j].nSamplesPerSec)) { - DEBUG_MSG("agreed on format!\n"); + DEBUG_WARN("agreed on format!\n"); wfi->agreed_format = (AUDIO_FORMAT*) &context->server_formats[j]; break; } @@ -76,7 +76,7 @@ static void wf_peer_rdpsnd_activated(RdpsndServerContext* context) if (wfi->agreed_format == NULL) { - DEBUG_MSG("Could not agree on a audio format with the server\n"); + DEBUG_WARN("Could not agree on a audio format with the server\n"); return; } @@ -116,7 +116,7 @@ int wf_rdpsnd_lock() break; case WAIT_FAILED: - DEBUG_MSG("wf_rdpsnd_lock failed with 0x%08X\n", GetLastError()); + DEBUG_WARN("wf_rdpsnd_lock failed with 0x%08X\n", GetLastError()); return -1; break; } @@ -132,7 +132,7 @@ int wf_rdpsnd_unlock() if (ReleaseMutex(wfi->snd_mutex) == 0) { - DEBUG_MSG("wf_rdpsnd_unlock failed with 0x%08X\n", GetLastError()); + DEBUG_WARN("wf_rdpsnd_unlock failed with 0x%08X\n", GetLastError()); return -1; } diff --git a/server/Windows/wf_update.c b/server/Windows/wf_update.c index b3d431dcd..f03763150 100644 --- a/server/Windows/wf_update.c +++ b/server/Windows/wf_update.c @@ -176,7 +176,7 @@ void wf_update_peer_send(wfInfo* wfi, wfPeerContext* context) /* This is an unexpected error condition */ - DEBUG_MSG("Unexpected Frame Index: Actual: %d Expected: %d\n", + DEBUG_WARN("Unexpected Frame Index: Actual: %d Expected: %d\n", wfi->frame_idx, context->frame_idx + 1); } @@ -189,7 +189,7 @@ void wf_update_encoder_reset(wfInfo* wfi) { if (wf_info_lock(wfi) > 0) { - DEBUG_MSG("Resetting encoder\n"); + DEBUG_WARN("Resetting encoder\n"); if (wfi->rfx_context) { @@ -226,7 +226,7 @@ void wf_update_peer_activate(wfInfo* wfi, wfPeerContext* context) wf_update_encoder_reset(wfi); wfi->activePeerCount++; - DEBUG_MSG("Activating Peer Updates: %d\n", wfi->activePeerCount); + DEBUG_WARN("Activating Peer Updates: %d\n", wfi->activePeerCount); wf_info_unlock(wfi); } @@ -248,7 +248,7 @@ void wf_update_peer_deactivate(wfInfo* wfi, wfPeerContext* context) client->activated = FALSE; wfi->activePeerCount--; - DEBUG_MSG("Deactivating Peer Updates: %d\n", wfi->activePeerCount); + DEBUG_WARN("Deactivating Peer Updates: %d\n", wfi->activePeerCount); } wf_info_unlock(wfi); diff --git a/server/Windows/wf_wasapi.c b/server/Windows/wf_wasapi.c index 40bc419d0..a0e1c0137 100644 --- a/server/Windows/wf_wasapi.c +++ b/server/Windows/wf_wasapi.c @@ -45,7 +45,7 @@ int wf_wasapi_activate(RdpsndServerContext* context) return 1; } - DEBUG_MSG("RDPSND (WASAPI) Activated\n"); + DEBUG_WARN("RDPSND (WASAPI) Activated\n"); CreateThread(NULL, 0, wf_rdpsnd_wasapi_thread, latestPeer, 0, NULL); diff --git a/server/shadow/Win/win_shadow.c b/server/shadow/Win/win_shadow.c index 46a8fa636..b2c7f4bb2 100644 --- a/server/shadow/Win/win_shadow.c +++ b/server/shadow/Win/win_shadow.c @@ -868,7 +868,7 @@ int win_shadow_surface_copy(winShadowSubsystem* subsystem) int x, y; int width; int height; - int status; + int status = 1; int nDstStep = 0; BYTE* pDstData = NULL; rdpShadowServer* server; @@ -901,7 +901,9 @@ int win_shadow_surface_copy(winShadowSubsystem* subsystem) printf("SurfaceCopy x: %d y: %d width: %d height: %d right: %d bottom: %d\n", x, y, width, height, x + width, y + height); +#ifdef WITH_DXGI_1_2 status = win_shadow_dxgi_fetch_frame_data(subsystem, &pDstData, &nDstStep, x, y, width, height); +#endif if (status < 0) return -1; diff --git a/winpr/libwinpr/synch/barrier.c b/winpr/libwinpr/synch/barrier.c index 21dabea23..f8d75cb5d 100644 --- a/winpr/libwinpr/synch/barrier.c +++ b/winpr/libwinpr/synch/barrier.c @@ -39,8 +39,8 @@ static BOOL g_NativeBarrier = FALSE; static INIT_ONCE g_InitOnce = INIT_ONCE_STATIC_INIT; typedef BOOL (WINAPI * fnInitializeSynchronizationBarrier)(LPSYNCHRONIZATION_BARRIER lpBarrier, LONG lTotalThreads, LONG lSpinCount); -typedef BOOL (WINAPI * fnEnterSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier, DWORD dwFlags); -typedef BOOL (WINAPI * fnDeleteSynchronizationBarrier(LPSYNCHRONIZATION_BARRIER lpBarrier); +typedef BOOL (WINAPI * fnEnterSynchronizationBarrier)(LPSYNCHRONIZATION_BARRIER lpBarrier, DWORD dwFlags); +typedef BOOL (WINAPI * fnDeleteSynchronizationBarrier)(LPSYNCHRONIZATION_BARRIER lpBarrier); static fnInitializeSynchronizationBarrier pfnInitializeSynchronizationBarrier = NULL; static fnEnterSynchronizationBarrier pfnEnterSynchronizationBarrier = NULL; From e5e1a75c356f6ad13c4e6fb025311c7e2ab865b3 Mon Sep 17 00:00:00 2001 From: Bernhard Miklautz Date: Tue, 12 Aug 2014 15:40:53 +0200 Subject: [PATCH 096/170] crypto: fix fingerprint Latest logging changes introduced a problem with fingerprint generation. The last byte wasn't added. --- libfreerdp/crypto/crypto.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libfreerdp/crypto/crypto.c b/libfreerdp/crypto/crypto.c index 4ef0c2dbd..b75e4eb6a 100644 --- a/libfreerdp/crypto/crypto.c +++ b/libfreerdp/crypto/crypto.c @@ -355,7 +355,7 @@ char* crypto_cert_fingerprint(X509* xcert) sprintf(p, "%02x:", fp[i]); p = &fp_buffer[(i + 1) * 3]; } - DEBUG_MSG(p, "%02x", fp[i]); + sprintf(p, "%02x", fp[i]); return fp_buffer; } From 1ba42dccf3f7d0c7fa8f35a48012e2244c1e4e41 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Tue, 12 Aug 2014 16:57:58 -0400 Subject: [PATCH 097/170] shadow: improve DXGI support --- server/CMakeLists.txt | 2 +- server/shadow/Win/win_shadow.c | 117 +++++++++++++++++++++++---------- server/shadow/shadow_capture.c | 49 ++++++++++++++ server/shadow/shadow_capture.h | 1 + winpr/libwinpr/wtsapi/wtsapi.c | 1 + 5 files changed, 136 insertions(+), 34 deletions(-) diff --git a/server/CMakeLists.txt b/server/CMakeLists.txt index 1e2ece34c..266fe93cf 100644 --- a/server/CMakeLists.txt +++ b/server/CMakeLists.txt @@ -30,7 +30,7 @@ if(FREERDP_VENDOR) add_subdirectory(Mac) endif() else() - add_subdirectory(Windows) + #add_subdirectory(Windows) endif() if(IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/FreeRDS") diff --git a/server/shadow/Win/win_shadow.c b/server/shadow/Win/win_shadow.c index b2c7f4bb2..71624021d 100644 --- a/server/shadow/Win/win_shadow.c +++ b/server/shadow/Win/win_shadow.c @@ -25,6 +25,7 @@ #include "../shadow_screen.h" #include "../shadow_surface.h" +#include "../shadow_capture.h" #include "win_shadow.h" @@ -212,6 +213,8 @@ const char* GetDxgiErrorString(HRESULT hr) return "DXGI_DDI_ERR_UNSUPPORTED"; case DXGI_DDI_ERR_NONEXCLUSIVE: return "DXGI_DDI_ERR_NONEXCLUSIVE"; + case 0x80070005: + return "DXGI_ERROR_ACCESS_DENIED"; } return "DXGI_ERROR_UNKNOWN"; @@ -368,6 +371,7 @@ int win_shadow_dxgi_init(winShadowSubsystem* subsystem) { UINT i = 0; HRESULT hr; + int status; UINT DriverTypeIndex; IDXGIDevice* DxgiDevice = NULL; IDXGIAdapter* DxgiAdapter = NULL; @@ -395,9 +399,9 @@ int win_shadow_dxgi_init(winShadowSubsystem* subsystem) return -1; } - win_shadow_dxgi_init_duplication(subsystem); + status = win_shadow_dxgi_init_duplication(subsystem); - return 1; + return status; } int win_shadow_dxgi_uninit(winShadowSubsystem* subsystem) @@ -438,12 +442,13 @@ int win_shadow_dxgi_uninit(winShadowSubsystem* subsystem) int win_shadow_dxgi_fetch_frame_data(winShadowSubsystem* subsystem, BYTE** ppDstData, int* pnDstStep, int x, int y, int width, int height) { + int status; HRESULT hr; D3D11_BOX Box; DXGI_MAPPED_RECT mappedRect; if ((width * height) < 1) - return 1; + return 0; Box.top = x; Box.left = y; @@ -453,7 +458,7 @@ int win_shadow_dxgi_fetch_frame_data(winShadowSubsystem* subsystem, Box.back = 1; subsystem->dxgiDeviceContext->lpVtbl->CopySubresourceRegion(subsystem->dxgiDeviceContext, - (ID3D11Resource*) subsystem->dxgiStage, 0, x, y, 0, (ID3D11Resource*) subsystem->dxgiDesktopImage, 0, &Box); + (ID3D11Resource*) subsystem->dxgiStage, 0, 0, 0, 0, (ID3D11Resource*) subsystem->dxgiDesktopImage, 0, &Box); hr = subsystem->dxgiStage->lpVtbl->QueryInterface(subsystem->dxgiStage, &IID_IDXGISurface, (void**) &(subsystem->dxgiSurface)); @@ -471,6 +476,19 @@ int win_shadow_dxgi_fetch_frame_data(winShadowSubsystem* subsystem, { fprintf(stderr, "IDXGISurface::Map failure: %s 0x%04X\n", GetDxgiErrorString(hr), hr); + + if (hr == DXGI_ERROR_DEVICE_REMOVED) + { + win_shadow_dxgi_uninit(subsystem); + + status = win_shadow_dxgi_init(subsystem); + + if (status < 0) + return -1; + + return 0; + } + return -1; } @@ -496,10 +514,13 @@ int win_shadow_dxgi_release_frame_data(winShadowSubsystem* subsystem) subsystem->dxgiSurface = NULL; } - if (subsystem->dxgiFrameAcquired) + if (subsystem->dxgiOutputDuplication) { - subsystem->dxgiOutputDuplication->lpVtbl->ReleaseFrame(subsystem->dxgiOutputDuplication); - subsystem->dxgiFrameAcquired = FALSE; + if (subsystem->dxgiFrameAcquired) + { + subsystem->dxgiOutputDuplication->lpVtbl->ReleaseFrame(subsystem->dxgiOutputDuplication); + subsystem->dxgiFrameAcquired = FALSE; + } } subsystem->pendingFrames = 0; @@ -512,6 +533,7 @@ int win_shadow_dxgi_get_next_frame(winShadowSubsystem* subsystem) UINT i = 0; int status; HRESULT hr = 0; + UINT timeout = 15; UINT DataBufferSize = 0; BYTE* DataBuffer = NULL; @@ -527,7 +549,7 @@ int win_shadow_dxgi_get_next_frame(winShadowSubsystem* subsystem) } hr = subsystem->dxgiOutputDuplication->lpVtbl->AcquireNextFrame(subsystem->dxgiOutputDuplication, - 0, &(subsystem->dxgiFrameInfo), &(subsystem->dxgiResource)); + timeout, &(subsystem->dxgiFrameInfo), &(subsystem->dxgiResource)); if (SUCCEEDED(hr)) { @@ -545,6 +567,8 @@ int win_shadow_dxgi_get_next_frame(winShadowSubsystem* subsystem) if (hr == DXGI_ERROR_ACCESS_LOST) { + win_shadow_dxgi_release_frame_data(subsystem); + if (subsystem->dxgiDesktopImage) { subsystem->dxgiDesktopImage->lpVtbl->Release(subsystem->dxgiDesktopImage); @@ -564,6 +588,17 @@ int win_shadow_dxgi_get_next_frame(winShadowSubsystem* subsystem) return 0; } + else if (hr == DXGI_ERROR_INVALID_CALL) + { + win_shadow_dxgi_uninit(subsystem); + + status = win_shadow_dxgi_init(subsystem); + + if (status < 0) + return -1; + + return 0; + } return -1; } @@ -868,12 +903,14 @@ int win_shadow_surface_copy(winShadowSubsystem* subsystem) int x, y; int width; int height; + int count; int status = 1; int nDstStep = 0; BYTE* pDstData = NULL; rdpShadowServer* server; rdpShadowSurface* surface; RECTANGLE_16 surfaceRect; + RECTANGLE_16 invalidRect; const RECTANGLE_16* extents; server = subsystem->server; @@ -884,19 +921,28 @@ int win_shadow_surface_copy(winShadowSubsystem* subsystem) surfaceRect.right = surface->x + surface->width; surfaceRect.bottom = surface->y + surface->height; - region16_clear(&(surface->invalidRegion)); - region16_copy(&(surface->invalidRegion), &(subsystem->invalidRegion)); - region16_intersect_rect(&(surface->invalidRegion), &(surface->invalidRegion), &surfaceRect); + region16_intersect_rect(&(subsystem->invalidRegion), &(subsystem->invalidRegion), &surfaceRect); - if (region16_is_empty(&(surface->invalidRegion))) + if (region16_is_empty(&(subsystem->invalidRegion))) return 1; - extents = region16_extents(&(surface->invalidRegion)); + extents = region16_extents(&(subsystem->invalidRegion)); + CopyMemory(&invalidRect, extents, sizeof(RECTANGLE_16)); - x = extents->left; - y = extents->top; - width = extents->right - extents->left; - height = extents->bottom - extents->top; + shadow_capture_align_clip_rect(&invalidRect, &surfaceRect); + + x = invalidRect.left; + y = invalidRect.top; + width = invalidRect.right - invalidRect.left; + height = invalidRect.bottom - invalidRect.top; + + if (0) + { + x = 0; + y = 0; + width = surface->width; + height = surface->height; + } printf("SurfaceCopy x: %d y: %d width: %d height: %d right: %d bottom: %d\n", x, y, width, height, x + width, y + height); @@ -905,16 +951,26 @@ int win_shadow_surface_copy(winShadowSubsystem* subsystem) status = win_shadow_dxgi_fetch_frame_data(subsystem, &pDstData, &nDstStep, x, y, width, height); #endif - if (status < 0) - return -1; - - EnterCriticalSection(&(surface->lock)); + if (status <= 0) + return status; freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, surface->scanline, x - surface->x, y - surface->y, width, height, - pDstData, PIXEL_FORMAT_XRGB32, nDstStep, x, y); + pDstData, PIXEL_FORMAT_XRGB32, nDstStep, 0, 0); - LeaveCriticalSection(&(surface->lock)); + count = ArrayList_Count(server->clients); + + InitializeSynchronizationBarrier(&(subsystem->barrier), count + 1, -1); + + SetEvent(subsystem->updateEvent); + + EnterSynchronizationBarrier(&(subsystem->barrier), 0); + + DeleteSynchronizationBarrier(&(subsystem->barrier)); + + ResetEvent(subsystem->updateEvent); + + region16_clear(&(subsystem->invalidRegion)); return 1; } @@ -940,8 +996,6 @@ void* win_shadow_subsystem_thread(winShadowSubsystem* subsystem) dwInterval = 1000 / fps; frameTime = GetTickCount64() + dwInterval; - win_shadow_invalidate_region(subsystem, 0, 0, subsystem->width, subsystem->height); - while (1) { dwTimeout = INFINITE; @@ -961,16 +1015,13 @@ void* win_shadow_subsystem_thread(winShadowSubsystem* subsystem) #ifdef WITH_DXGI_1_2 int dxgi_status; - //win_shadow_invalidate_region(subsystem, 0, 0, subsystem->width, subsystem->height); - dxgi_status = win_shadow_dxgi_get_next_frame(subsystem); - dxgi_status = win_shadow_dxgi_get_invalid_region(subsystem); - win_shadow_surface_copy(subsystem); + + if (dxgi_status > 0) + dxgi_status = win_shadow_dxgi_get_invalid_region(subsystem); - if (subsystem->SurfaceUpdate) - subsystem->SurfaceUpdate((rdpShadowSubsystem*) subsystem, &(subsystem->invalidRegion)); - - region16_clear(&(subsystem->invalidRegion)); + if (dxgi_status > 0) + win_shadow_surface_copy(subsystem); #endif dwInterval = 1000 / fps; diff --git a/server/shadow/shadow_capture.c b/server/shadow/shadow_capture.c index 3fa0d1774..9f07ac964 100644 --- a/server/shadow/shadow_capture.c +++ b/server/shadow/shadow_capture.c @@ -27,6 +27,55 @@ #include "shadow_capture.h" +int shadow_capture_align_clip_rect(RECTANGLE_16* rect, RECTANGLE_16* clip) +{ + int dx, dy; + + dx = (rect->left % 16); + + if (dx != 0) + { + rect->left -= dx; + rect->right += dx; + } + + dx = (rect->right % 16); + + if (dx != 0) + { + rect->right += (16 - dx); + } + + dy = (rect->top % 16); + + if (dy != 0) + { + rect->top -= dy; + rect->bottom += dy; + } + + dy = (rect->bottom % 16); + + if (dy != 0) + { + rect->bottom += (16 - dy); + } + + if (rect->left < clip->left) + rect->left = clip->left; + + if (rect->top < clip->top) + rect->top = clip->top; + + if (rect->right > clip->right) + rect->right = clip->right; + + if (rect->bottom > clip->bottom) + rect->bottom = clip->bottom; + + return 1; +} + int shadow_capture_compare(BYTE* pData1, int nStep1, int nWidth, int nHeight, BYTE* pData2, int nStep2, RECTANGLE_16* rect) { BOOL equal; diff --git a/server/shadow/shadow_capture.h b/server/shadow/shadow_capture.h index efac76c18..3ce3cddb0 100644 --- a/server/shadow/shadow_capture.h +++ b/server/shadow/shadow_capture.h @@ -38,6 +38,7 @@ struct rdp_shadow_capture extern "C" { #endif +int shadow_capture_align_clip_rect(RECTANGLE_16* rect, RECTANGLE_16* clip); int shadow_capture_compare(BYTE* pData1, int nStep1, int nWidth, int nHeight, BYTE* pData2, int nStep2, RECTANGLE_16* rect); rdpShadowCapture* shadow_capture_new(rdpShadowServer* server); diff --git a/winpr/libwinpr/wtsapi/wtsapi.c b/winpr/libwinpr/wtsapi/wtsapi.c index 144927cde..c56bff72c 100644 --- a/winpr/libwinpr/wtsapi/wtsapi.c +++ b/winpr/libwinpr/wtsapi/wtsapi.c @@ -549,6 +549,7 @@ DWORD WINAPI WTSGetActiveConsoleSessionId(void) BOOL WTSRegisterWtsApiFunctionTable(PWtsApiFunctionTable table) { g_WtsApi = table; + g_Initialized = TRUE; return TRUE; } From 142d77b8c9ff54174f5f605ebfa84f19129f7d91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Tue, 12 Aug 2014 19:22:42 -0400 Subject: [PATCH 098/170] shadow: move DXGI 1.2 code to separate file --- server/shadow/CMakeLists.txt | 4 + server/shadow/Win/win_dxgi.c | 724 +++++++++++++++++++++++++++++++++ server/shadow/Win/win_dxgi.h | 60 +++ server/shadow/Win/win_shadow.c | 698 ------------------------------- server/shadow/Win/win_shadow.h | 15 +- server/shadow/Win/win_wds.c | 27 ++ server/shadow/Win/win_wds.h | 32 ++ 7 files changed, 848 insertions(+), 712 deletions(-) create mode 100644 server/shadow/Win/win_dxgi.c create mode 100644 server/shadow/Win/win_dxgi.h create mode 100644 server/shadow/Win/win_wds.c create mode 100644 server/shadow/Win/win_wds.h diff --git a/server/shadow/CMakeLists.txt b/server/shadow/CMakeLists.txt index 620e1b979..76e23d137 100644 --- a/server/shadow/CMakeLists.txt +++ b/server/shadow/CMakeLists.txt @@ -138,6 +138,10 @@ set(${MODULE_PREFIX}_SRCS shadow.h) set(${MODULE_PREFIX}_WIN_SRCS + Win/win_wds.c + Win/win_wds.h + Win/win_dxgi.c + Win/win_dxgi.h Win/win_shadow.c Win/win_shadow.h) diff --git a/server/shadow/Win/win_dxgi.c b/server/shadow/Win/win_dxgi.c new file mode 100644 index 000000000..bb4c71a99 --- /dev/null +++ b/server/shadow/Win/win_dxgi.c @@ -0,0 +1,724 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include + +#include "win_dxgi.h" + +#ifdef WITH_DXGI_1_2 + +static D3D_DRIVER_TYPE DriverTypes[] = +{ + D3D_DRIVER_TYPE_HARDWARE, + D3D_DRIVER_TYPE_WARP, + D3D_DRIVER_TYPE_REFERENCE, +}; + +static UINT NumDriverTypes = ARRAYSIZE(DriverTypes); + +static D3D_FEATURE_LEVEL FeatureLevels[] = +{ + D3D_FEATURE_LEVEL_11_0, + D3D_FEATURE_LEVEL_10_1, + D3D_FEATURE_LEVEL_10_0, + D3D_FEATURE_LEVEL_9_1 +}; + +static UINT NumFeatureLevels = ARRAYSIZE(FeatureLevels); + +static HMODULE d3d11_module = NULL; + +typedef HRESULT (WINAPI * fnD3D11CreateDevice)( + IDXGIAdapter* pAdapter, D3D_DRIVER_TYPE DriverType, HMODULE Software, UINT Flags, + CONST D3D_FEATURE_LEVEL* pFeatureLevels, UINT FeatureLevels, UINT SDKVersion, + ID3D11Device** ppDevice, D3D_FEATURE_LEVEL* pFeatureLevel, ID3D11DeviceContext** ppImmediateContext); + +static fnD3D11CreateDevice pfnD3D11CreateDevice = NULL; + +#undef DEFINE_GUID +#define INITGUID + +#include + +/* d3d11.h GUIDs */ + +DEFINE_GUID(IID_ID3D11DeviceChild,0x1841e5c8,0x16b0,0x489b,0xbc,0xc8,0x44,0xcf,0xb0,0xd5,0xde,0xae); +DEFINE_GUID(IID_ID3D11DepthStencilState,0x03823efb,0x8d8f,0x4e1c,0x9a,0xa2,0xf6,0x4b,0xb2,0xcb,0xfd,0xf1); +DEFINE_GUID(IID_ID3D11BlendState,0x75b68faa,0x347d,0x4159,0x8f,0x45,0xa0,0x64,0x0f,0x01,0xcd,0x9a); +DEFINE_GUID(IID_ID3D11RasterizerState,0x9bb4ab81,0xab1a,0x4d8f,0xb5,0x06,0xfc,0x04,0x20,0x0b,0x6e,0xe7); +DEFINE_GUID(IID_ID3D11Resource,0xdc8e63f3,0xd12b,0x4952,0xb4,0x7b,0x5e,0x45,0x02,0x6a,0x86,0x2d); +DEFINE_GUID(IID_ID3D11Buffer,0x48570b85,0xd1ee,0x4fcd,0xa2,0x50,0xeb,0x35,0x07,0x22,0xb0,0x37); +DEFINE_GUID(IID_ID3D11Texture1D,0xf8fb5c27,0xc6b3,0x4f75,0xa4,0xc8,0x43,0x9a,0xf2,0xef,0x56,0x4c); +DEFINE_GUID(IID_ID3D11Texture2D,0x6f15aaf2,0xd208,0x4e89,0x9a,0xb4,0x48,0x95,0x35,0xd3,0x4f,0x9c); +DEFINE_GUID(IID_ID3D11Texture3D,0x037e866e,0xf56d,0x4357,0xa8,0xaf,0x9d,0xab,0xbe,0x6e,0x25,0x0e); +DEFINE_GUID(IID_ID3D11View,0x839d1216,0xbb2e,0x412b,0xb7,0xf4,0xa9,0xdb,0xeb,0xe0,0x8e,0xd1); +DEFINE_GUID(IID_ID3D11ShaderResourceView,0xb0e06fe0,0x8192,0x4e1a,0xb1,0xca,0x36,0xd7,0x41,0x47,0x10,0xb2); +DEFINE_GUID(IID_ID3D11RenderTargetView,0xdfdba067,0x0b8d,0x4865,0x87,0x5b,0xd7,0xb4,0x51,0x6c,0xc1,0x64); +DEFINE_GUID(IID_ID3D11DepthStencilView,0x9fdac92a,0x1876,0x48c3,0xaf,0xad,0x25,0xb9,0x4f,0x84,0xa9,0xb6); +DEFINE_GUID(IID_ID3D11UnorderedAccessView,0x28acf509,0x7f5c,0x48f6,0x86,0x11,0xf3,0x16,0x01,0x0a,0x63,0x80); +DEFINE_GUID(IID_ID3D11VertexShader,0x3b301d64,0xd678,0x4289,0x88,0x97,0x22,0xf8,0x92,0x8b,0x72,0xf3); +DEFINE_GUID(IID_ID3D11HullShader,0x8e5c6061,0x628a,0x4c8e,0x82,0x64,0xbb,0xe4,0x5c,0xb3,0xd5,0xdd); +DEFINE_GUID(IID_ID3D11DomainShader,0xf582c508,0x0f36,0x490c,0x99,0x77,0x31,0xee,0xce,0x26,0x8c,0xfa); +DEFINE_GUID(IID_ID3D11GeometryShader,0x38325b96,0xeffb,0x4022,0xba,0x02,0x2e,0x79,0x5b,0x70,0x27,0x5c); +DEFINE_GUID(IID_ID3D11PixelShader,0xea82e40d,0x51dc,0x4f33,0x93,0xd4,0xdb,0x7c,0x91,0x25,0xae,0x8c); +DEFINE_GUID(IID_ID3D11ComputeShader,0x4f5b196e,0xc2bd,0x495e,0xbd,0x01,0x1f,0xde,0xd3,0x8e,0x49,0x69); +DEFINE_GUID(IID_ID3D11InputLayout,0xe4819ddc,0x4cf0,0x4025,0xbd,0x26,0x5d,0xe8,0x2a,0x3e,0x07,0xb7); +DEFINE_GUID(IID_ID3D11SamplerState,0xda6fea51,0x564c,0x4487,0x98,0x10,0xf0,0xd0,0xf9,0xb4,0xe3,0xa5); +DEFINE_GUID(IID_ID3D11Asynchronous,0x4b35d0cd,0x1e15,0x4258,0x9c,0x98,0x1b,0x13,0x33,0xf6,0xdd,0x3b); +DEFINE_GUID(IID_ID3D11Query,0xd6c00747,0x87b7,0x425e,0xb8,0x4d,0x44,0xd1,0x08,0x56,0x0a,0xfd); +DEFINE_GUID(IID_ID3D11Predicate,0x9eb576dd,0x9f77,0x4d86,0x81,0xaa,0x8b,0xab,0x5f,0xe4,0x90,0xe2); +DEFINE_GUID(IID_ID3D11Counter,0x6e8c49fb,0xa371,0x4770,0xb4,0x40,0x29,0x08,0x60,0x22,0xb7,0x41); +DEFINE_GUID(IID_ID3D11ClassInstance,0xa6cd7faa,0xb0b7,0x4a2f,0x94,0x36,0x86,0x62,0xa6,0x57,0x97,0xcb); +DEFINE_GUID(IID_ID3D11ClassLinkage,0xddf57cba,0x9543,0x46e4,0xa1,0x2b,0xf2,0x07,0xa0,0xfe,0x7f,0xed); +DEFINE_GUID(IID_ID3D11CommandList,0xa24bc4d1,0x769e,0x43f7,0x80,0x13,0x98,0xff,0x56,0x6c,0x18,0xe2); +DEFINE_GUID(IID_ID3D11DeviceContext,0xc0bfa96c,0xe089,0x44fb,0x8e,0xaf,0x26,0xf8,0x79,0x61,0x90,0xda); +DEFINE_GUID(IID_ID3D11VideoDecoder,0x3C9C5B51,0x995D,0x48d1,0x9B,0x8D,0xFA,0x5C,0xAE,0xDE,0xD6,0x5C); +DEFINE_GUID(IID_ID3D11VideoProcessorEnumerator,0x31627037,0x53AB,0x4200,0x90,0x61,0x05,0xFA,0xA9,0xAB,0x45,0xF9); +DEFINE_GUID(IID_ID3D11VideoProcessor,0x1D7B0652,0x185F,0x41c6,0x85,0xCE,0x0C,0x5B,0xE3,0xD4,0xAE,0x6C); +DEFINE_GUID(IID_ID3D11AuthenticatedChannel,0x3015A308,0xDCBD,0x47aa,0xA7,0x47,0x19,0x24,0x86,0xD1,0x4D,0x4A); +DEFINE_GUID(IID_ID3D11CryptoSession,0x9B32F9AD,0xBDCC,0x40a6,0xA3,0x9D,0xD5,0xC8,0x65,0x84,0x57,0x20); +DEFINE_GUID(IID_ID3D11VideoDecoderOutputView,0xC2931AEA,0x2A85,0x4f20,0x86,0x0F,0xFB,0xA1,0xFD,0x25,0x6E,0x18); +DEFINE_GUID(IID_ID3D11VideoProcessorInputView,0x11EC5A5F,0x51DC,0x4945,0xAB,0x34,0x6E,0x8C,0x21,0x30,0x0E,0xA5); +DEFINE_GUID(IID_ID3D11VideoProcessorOutputView,0xA048285E,0x25A9,0x4527,0xBD,0x93,0xD6,0x8B,0x68,0xC4,0x42,0x54); +DEFINE_GUID(IID_ID3D11VideoContext,0x61F21C45,0x3C0E,0x4a74,0x9C,0xEA,0x67,0x10,0x0D,0x9A,0xD5,0xE4); +DEFINE_GUID(IID_ID3D11VideoDevice,0x10EC4D5B,0x975A,0x4689,0xB9,0xE4,0xD0,0xAA,0xC3,0x0F,0xE3,0x33); +DEFINE_GUID(IID_ID3D11Device,0xdb6f6ddb,0xac77,0x4e88,0x82,0x53,0x81,0x9d,0xf9,0xbb,0xf1,0x40); + +/* dxgi.h GUIDs */ + +DEFINE_GUID(IID_IDXGIObject, 0xaec22fb8, 0x76f3, 0x4639, 0x9b, 0xe0, 0x28, 0xeb, 0x43, 0xa6, 0x7a, 0x2e); +DEFINE_GUID(IID_IDXGIDeviceSubObject, 0x3d3e0379, 0xf9de, 0x4d58, 0xbb, 0x6c, 0x18, 0xd6, 0x29, 0x92, 0xf1, 0xa6); +DEFINE_GUID(IID_IDXGIResource, 0x035f3ab4, 0x482e, 0x4e50, 0xb4, 0x1f, 0x8a, 0x7f, 0x8b, 0xd8, 0x96, 0x0b); +DEFINE_GUID(IID_IDXGIKeyedMutex, 0x9d8e1289, 0xd7b3, 0x465f, 0x81, 0x26, 0x25, 0x0e, 0x34, 0x9a, 0xf8, 0x5d); +DEFINE_GUID(IID_IDXGISurface, 0xcafcb56c, 0x6ac3, 0x4889, 0xbf, 0x47, 0x9e, 0x23, 0xbb, 0xd2, 0x60, 0xec); +DEFINE_GUID(IID_IDXGISurface1, 0x4AE63092, 0x6327, 0x4c1b, 0x80, 0xAE, 0xBF, 0xE1, 0x2E, 0xA3, 0x2B, 0x86); +DEFINE_GUID(IID_IDXGIAdapter, 0x2411e7e1, 0x12ac, 0x4ccf, 0xbd, 0x14, 0x97, 0x98, 0xe8, 0x53, 0x4d, 0xc0); +DEFINE_GUID(IID_IDXGIOutput, 0xae02eedb, 0xc735, 0x4690, 0x8d, 0x52, 0x5a, 0x8d, 0xc2, 0x02, 0x13, 0xaa); +DEFINE_GUID(IID_IDXGISwapChain, 0x310d36a0, 0xd2e7, 0x4c0a, 0xaa, 0x04, 0x6a, 0x9d, 0x23, 0xb8, 0x88, 0x6a); +DEFINE_GUID(IID_IDXGIFactory, 0x7b7166ec, 0x21c7, 0x44ae, 0xb2, 0x1a, 0xc9, 0xae, 0x32, 0x1a, 0xe3, 0x69); +DEFINE_GUID(IID_IDXGIDevice, 0x54ec77fa, 0x1377, 0x44e6, 0x8c, 0x32, 0x88, 0xfd, 0x5f, 0x44, 0xc8, 0x4c); +DEFINE_GUID(IID_IDXGIFactory1, 0x770aae78, 0xf26f, 0x4dba, 0xa8, 0x29, 0x25, 0x3c, 0x83, 0xd1, 0xb3, 0x87); +DEFINE_GUID(IID_IDXGIAdapter1, 0x29038f61, 0x3839, 0x4626, 0x91, 0xfd, 0x08, 0x68, 0x79, 0x01, 0x1a, 0x05); +DEFINE_GUID(IID_IDXGIDevice1, 0x77db970f, 0x6276, 0x48ba, 0xba, 0x28, 0x07, 0x01, 0x43, 0xb4, 0x39, 0x2c); + +/* dxgi1_2.h GUIDs */ + +DEFINE_GUID(IID_IDXGIDisplayControl, 0xea9dbf1a, 0xc88e, 0x4486, 0x85, 0x4a, 0x98, 0xaa, 0x01, 0x38, 0xf3, 0x0c); +DEFINE_GUID(IID_IDXGIOutputDuplication, 0x191cfac3, 0xa341, 0x470d, 0xb2, 0x6e, 0xa8, 0x64, 0xf4, 0x28, 0x31, 0x9c); +DEFINE_GUID(IID_IDXGISurface2, 0xaba496dd, 0xb617, 0x4cb8, 0xa8, 0x66, 0xbc, 0x44, 0xd7, 0xeb, 0x1f, 0xa2); +DEFINE_GUID(IID_IDXGIResource1, 0x30961379, 0x4609, 0x4a41, 0x99, 0x8e, 0x54, 0xfe, 0x56, 0x7e, 0xe0, 0xc1); +DEFINE_GUID(IID_IDXGIDevice2, 0x05008617, 0xfbfd, 0x4051, 0xa7, 0x90, 0x14, 0x48, 0x84, 0xb4, 0xf6, 0xa9); +DEFINE_GUID(IID_IDXGISwapChain1, 0x790a45f7, 0x0d42, 0x4876, 0x98, 0x3a, 0x0a, 0x55, 0xcf, 0xe6, 0xf4, 0xaa); +DEFINE_GUID(IID_IDXGIFactory2, 0x50c83a1c, 0xe072, 0x4c48, 0x87, 0xb0, 0x36, 0x30, 0xfa, 0x36, 0xa6, 0xd0); +DEFINE_GUID(IID_IDXGIAdapter2, 0x0AA1AE0A, 0xFA0E, 0x4B84, 0x86, 0x44, 0xE0, 0x5F, 0xF8, 0xE5, 0xAC, 0xB5); +DEFINE_GUID(IID_IDXGIOutput1, 0x00cddea8, 0x939b, 0x4b83, 0xa3, 0x40, 0xa6, 0x85, 0x22, 0x66, 0x66, 0xcc); + +const char* GetDxgiErrorString(HRESULT hr) +{ + switch (hr) + { + case DXGI_STATUS_OCCLUDED: + return "DXGI_STATUS_OCCLUDED"; + case DXGI_STATUS_CLIPPED: + return "DXGI_STATUS_CLIPPED"; + case DXGI_STATUS_NO_REDIRECTION: + return "DXGI_STATUS_NO_REDIRECTION"; + case DXGI_STATUS_NO_DESKTOP_ACCESS: + return "DXGI_STATUS_NO_DESKTOP_ACCESS"; + case DXGI_STATUS_GRAPHICS_VIDPN_SOURCE_IN_USE: + return "DXGI_STATUS_GRAPHICS_VIDPN_SOURCE_IN_USE"; + case DXGI_STATUS_MODE_CHANGED: + return "DXGI_STATUS_MODE_CHANGED"; + case DXGI_STATUS_MODE_CHANGE_IN_PROGRESS: + return "DXGI_STATUS_MODE_CHANGE_IN_PROGRESS"; + case DXGI_ERROR_INVALID_CALL: + return "DXGI_ERROR_INVALID_CALL"; + case DXGI_ERROR_NOT_FOUND: + return "DXGI_ERROR_NOT_FOUND"; + case DXGI_ERROR_MORE_DATA: + return "DXGI_ERROR_MORE_DATA"; + case DXGI_ERROR_UNSUPPORTED: + return "DXGI_ERROR_UNSUPPORTED"; + case DXGI_ERROR_DEVICE_REMOVED: + return "DXGI_ERROR_DEVICE_REMOVED"; + case DXGI_ERROR_DEVICE_HUNG: + return "DXGI_ERROR_DEVICE_HUNG"; + case DXGI_ERROR_DEVICE_RESET: + return "DXGI_ERROR_DEVICE_RESET"; + case DXGI_ERROR_WAS_STILL_DRAWING: + return "DXGI_ERROR_WAS_STILL_DRAWING"; + case DXGI_ERROR_FRAME_STATISTICS_DISJOINT: + return "DXGI_ERROR_FRAME_STATISTICS_DISJOINT"; + case DXGI_ERROR_GRAPHICS_VIDPN_SOURCE_IN_USE: + return "DXGI_ERROR_GRAPHICS_VIDPN_SOURCE_IN_USE"; + case DXGI_ERROR_DRIVER_INTERNAL_ERROR: + return "DXGI_ERROR_DRIVER_INTERNAL_ERROR"; + case DXGI_ERROR_NONEXCLUSIVE: + return "DXGI_ERROR_NONEXCLUSIVE"; + case DXGI_ERROR_NOT_CURRENTLY_AVAILABLE: + return "DXGI_ERROR_NOT_CURRENTLY_AVAILABLE"; + case DXGI_ERROR_REMOTE_CLIENT_DISCONNECTED: + return "DXGI_ERROR_REMOTE_CLIENT_DISCONNECTED"; + case DXGI_ERROR_REMOTE_OUTOFMEMORY: + return "DXGI_ERROR_REMOTE_OUTOFMEMORY"; + case DXGI_ERROR_ACCESS_LOST: + return "DXGI_ERROR_ACCESS_LOST"; + case DXGI_ERROR_WAIT_TIMEOUT: + return "DXGI_ERROR_WAIT_TIMEOUT"; + case DXGI_ERROR_SESSION_DISCONNECTED: + return "DXGI_ERROR_SESSION_DISCONNECTED"; + case DXGI_ERROR_RESTRICT_TO_OUTPUT_STALE: + return "DXGI_ERROR_RESTRICT_TO_OUTPUT_STALE"; + case DXGI_ERROR_CANNOT_PROTECT_CONTENT: + return "DXGI_ERROR_CANNOT_PROTECT_CONTENT"; + case DXGI_ERROR_ACCESS_DENIED: + return "DXGI_ERROR_ACCESS_DENIED"; + case DXGI_ERROR_NAME_ALREADY_EXISTS: + return "DXGI_ERROR_NAME_ALREADY_EXISTS"; + case DXGI_ERROR_SDK_COMPONENT_MISSING: + return "DXGI_ERROR_SDK_COMPONENT_MISSING"; + case DXGI_STATUS_UNOCCLUDED: + return "DXGI_STATUS_UNOCCLUDED"; + case DXGI_STATUS_DDA_WAS_STILL_DRAWING: + return "DXGI_STATUS_DDA_WAS_STILL_DRAWING"; + case DXGI_ERROR_MODE_CHANGE_IN_PROGRESS: + return "DXGI_ERROR_MODE_CHANGE_IN_PROGRESS"; + case DXGI_DDI_ERR_WASSTILLDRAWING: + return "DXGI_DDI_ERR_WASSTILLDRAWING"; + case DXGI_DDI_ERR_UNSUPPORTED: + return "DXGI_DDI_ERR_UNSUPPORTED"; + case DXGI_DDI_ERR_NONEXCLUSIVE: + return "DXGI_DDI_ERR_NONEXCLUSIVE"; + case 0x80070005: + return "DXGI_ERROR_ACCESS_DENIED"; + } + + return "DXGI_ERROR_UNKNOWN"; +} + +static void win_shadow_d3d11_module_init() +{ + if (d3d11_module) + return; + + d3d11_module = LoadLibraryA("d3d11.dll"); + + if (!d3d11_module) + return; + + pfnD3D11CreateDevice = (fnD3D11CreateDevice) GetProcAddress(d3d11_module, "D3D11CreateDevice"); +} + +int win_shadow_dxgi_init_duplication(winShadowSubsystem* subsystem) +{ + HRESULT hr; + UINT dTop, i = 0; + IDXGIOutput* pOutput; + DXGI_OUTPUT_DESC outputDesc; + DXGI_OUTPUT_DESC* pOutputDesc; + D3D11_TEXTURE2D_DESC textureDesc; + IDXGIDevice* dxgiDevice = NULL; + IDXGIAdapter* dxgiAdapter = NULL; + IDXGIOutput* dxgiOutput = NULL; + IDXGIOutput1* dxgiOutput1 = NULL; + + hr = subsystem->dxgiDevice->lpVtbl->QueryInterface(subsystem->dxgiDevice, + &IID_IDXGIDevice, (void**) &dxgiDevice); + + if (FAILED(hr)) + { + fprintf(stderr, "ID3D11Device::QueryInterface(IDXGIDevice) failure: %s (0x%04X)\n", + GetDxgiErrorString(hr), hr); + return -1; + } + + hr = dxgiDevice->lpVtbl->GetParent(dxgiDevice, &IID_IDXGIAdapter, (void**) &dxgiAdapter); + + if (dxgiDevice) + { + dxgiDevice->lpVtbl->Release(dxgiDevice); + dxgiDevice = NULL; + } + + if (FAILED(hr)) + { + fprintf(stderr, "IDXGIDevice::GetParent(IDXGIAdapter) failure: %s (0x%04X)\n", + GetDxgiErrorString(hr), hr); + return -1; + } + + pOutput = NULL; + ZeroMemory(&outputDesc, sizeof(outputDesc)); + + while (dxgiAdapter->lpVtbl->EnumOutputs(dxgiAdapter, i, &pOutput) != DXGI_ERROR_NOT_FOUND) + { + pOutputDesc = &outputDesc; + + hr = pOutput->lpVtbl->GetDesc(pOutput, pOutputDesc); + + if (FAILED(hr)) + { + fprintf(stderr, "IDXGIOutput::GetDesc failure: %s (0x%04X)\n", + GetDxgiErrorString(hr), hr); + return -1; + } + + if (pOutputDesc->AttachedToDesktop) + dTop = i; + + pOutput->lpVtbl->Release(pOutput); + i++; + } + + dTop = 0; /* screen id */ + + hr = dxgiAdapter->lpVtbl->EnumOutputs(dxgiAdapter, dTop, &dxgiOutput); + + if (dxgiAdapter) + { + dxgiAdapter->lpVtbl->Release(dxgiAdapter); + dxgiAdapter = NULL; + } + + if (FAILED(hr)) + { + fprintf(stderr, "IDXGIAdapter::EnumOutputs failure: %s (0x%04X)\n", + GetDxgiErrorString(hr), hr); + return -1; + } + + hr = dxgiOutput->lpVtbl->QueryInterface(dxgiOutput, &IID_IDXGIOutput1, (void**) &dxgiOutput1); + + if (dxgiOutput) + { + dxgiOutput->lpVtbl->Release(dxgiOutput); + dxgiOutput = NULL; + } + + if (FAILED(hr)) + { + fprintf(stderr, "IDXGIOutput::QueryInterface(IDXGIOutput1) failure: %s (0x%04X)\n", + GetDxgiErrorString(hr), hr); + return -1; + } + + hr = dxgiOutput1->lpVtbl->DuplicateOutput(dxgiOutput1, (IUnknown*) subsystem->dxgiDevice, + &(subsystem->dxgiOutputDuplication)); + + if (dxgiOutput1) + { + dxgiOutput1->lpVtbl->Release(dxgiOutput1); + dxgiOutput1 = NULL; + } + + if (FAILED(hr)) + { + fprintf(stderr, "IDXGIOutput1::DuplicateOutput failure: %s (0x%04X)\n", + GetDxgiErrorString(hr), hr); + return -1; + } + + textureDesc.Width = subsystem->width; + textureDesc.Height = subsystem->height; + textureDesc.MipLevels = 1; + textureDesc.ArraySize = 1; + textureDesc.Format = DXGI_FORMAT_B8G8R8A8_UNORM; + textureDesc.SampleDesc.Count = 1; + textureDesc.SampleDesc.Quality = 0; + textureDesc.Usage = D3D11_USAGE_STAGING; + textureDesc.BindFlags = 0; + textureDesc.CPUAccessFlags = D3D11_CPU_ACCESS_READ; + textureDesc.MiscFlags = 0; + + hr = subsystem->dxgiDevice->lpVtbl->CreateTexture2D(subsystem->dxgiDevice, + &textureDesc, NULL, &(subsystem->dxgiStage)); + + if (FAILED(hr)) + { + fprintf(stderr, "ID3D11Device::CreateTexture2D failure: %s (0x%04X)\n", + GetDxgiErrorString(hr), hr); + return -1; + } + + return 1; +} + +int win_shadow_dxgi_init(winShadowSubsystem* subsystem) +{ + UINT i = 0; + HRESULT hr; + int status; + UINT DriverTypeIndex; + IDXGIDevice* DxgiDevice = NULL; + IDXGIAdapter* DxgiAdapter = NULL; + IDXGIOutput* DxgiOutput = NULL; + IDXGIOutput1* DxgiOutput1 = NULL; + + win_shadow_d3d11_module_init(); + + if (!pfnD3D11CreateDevice) + return -1; + + for (DriverTypeIndex = 0; DriverTypeIndex < NumDriverTypes; ++DriverTypeIndex) + { + hr = pfnD3D11CreateDevice(NULL, DriverTypes[DriverTypeIndex], NULL, 0, FeatureLevels, + NumFeatureLevels, D3D11_SDK_VERSION, &(subsystem->dxgiDevice), &(subsystem->featureLevel), + &(subsystem->dxgiDeviceContext)); + + if (SUCCEEDED(hr)) + break; + } + + if (FAILED(hr)) + { + fprintf(stderr, "D3D11CreateDevice failure: 0x%04X\n", hr); + return -1; + } + + status = win_shadow_dxgi_init_duplication(subsystem); + + return status; +} + +int win_shadow_dxgi_uninit(winShadowSubsystem* subsystem) +{ + if (subsystem->dxgiStage) + { + subsystem->dxgiStage->lpVtbl->Release(subsystem->dxgiStage); + subsystem->dxgiStage = NULL; + } + + if (subsystem->dxgiDesktopImage) + { + subsystem->dxgiDesktopImage->lpVtbl->Release(subsystem->dxgiDesktopImage); + subsystem->dxgiDesktopImage = NULL; + } + + if (subsystem->dxgiOutputDuplication) + { + subsystem->dxgiOutputDuplication->lpVtbl->Release(subsystem->dxgiOutputDuplication); + subsystem->dxgiOutputDuplication = NULL; + } + + if (subsystem->dxgiDeviceContext) + { + subsystem->dxgiDeviceContext->lpVtbl->Release(subsystem->dxgiDeviceContext); + subsystem->dxgiDeviceContext = NULL; + } + + if (subsystem->dxgiDevice) + { + subsystem->dxgiDevice->lpVtbl->Release(subsystem->dxgiDevice); + subsystem->dxgiDevice = NULL; + } + + return 1; +} + +int win_shadow_dxgi_fetch_frame_data(winShadowSubsystem* subsystem, + BYTE** ppDstData, int* pnDstStep, int x, int y, int width, int height) +{ + int status; + HRESULT hr; + D3D11_BOX Box; + DXGI_MAPPED_RECT mappedRect; + + if ((width * height) < 1) + return 0; + + Box.top = x; + Box.left = y; + Box.right = x + width; + Box.bottom = y + height; + Box.front = 0; + Box.back = 1; + + subsystem->dxgiDeviceContext->lpVtbl->CopySubresourceRegion(subsystem->dxgiDeviceContext, + (ID3D11Resource*) subsystem->dxgiStage, 0, 0, 0, 0, (ID3D11Resource*) subsystem->dxgiDesktopImage, 0, &Box); + + hr = subsystem->dxgiStage->lpVtbl->QueryInterface(subsystem->dxgiStage, + &IID_IDXGISurface, (void**) &(subsystem->dxgiSurface)); + + if (FAILED(hr)) + { + fprintf(stderr, "ID3D11Texture2D::QueryInterface(IDXGISurface) failure: %s 0x%04X\n", + GetDxgiErrorString(hr), hr); + return -1; + } + + hr = subsystem->dxgiSurface->lpVtbl->Map(subsystem->dxgiSurface, &mappedRect, DXGI_MAP_READ); + + if (FAILED(hr)) + { + fprintf(stderr, "IDXGISurface::Map failure: %s 0x%04X\n", + GetDxgiErrorString(hr), hr); + + if (hr == DXGI_ERROR_DEVICE_REMOVED) + { + win_shadow_dxgi_uninit(subsystem); + + status = win_shadow_dxgi_init(subsystem); + + if (status < 0) + return -1; + + return 0; + } + + return -1; + } + + subsystem->dxgiSurfaceMapped = TRUE; + + *ppDstData = mappedRect.pBits; + *pnDstStep = mappedRect.Pitch; + + return 1; +} + +int win_shadow_dxgi_release_frame_data(winShadowSubsystem* subsystem) +{ + if (subsystem->dxgiSurface) + { + if (subsystem->dxgiSurfaceMapped) + { + subsystem->dxgiSurface->lpVtbl->Unmap(subsystem->dxgiSurface); + subsystem->dxgiSurfaceMapped = FALSE; + } + + subsystem->dxgiSurface->lpVtbl->Release(subsystem->dxgiSurface); + subsystem->dxgiSurface = NULL; + } + + if (subsystem->dxgiOutputDuplication) + { + if (subsystem->dxgiFrameAcquired) + { + subsystem->dxgiOutputDuplication->lpVtbl->ReleaseFrame(subsystem->dxgiOutputDuplication); + subsystem->dxgiFrameAcquired = FALSE; + } + } + + subsystem->pendingFrames = 0; + + return 1; +} + +int win_shadow_dxgi_get_next_frame(winShadowSubsystem* subsystem) +{ + UINT i = 0; + int status; + HRESULT hr = 0; + UINT timeout = 15; + UINT DataBufferSize = 0; + BYTE* DataBuffer = NULL; + + if (subsystem->dxgiFrameAcquired) + { + win_shadow_dxgi_release_frame_data(subsystem); + } + + if (subsystem->dxgiDesktopImage) + { + subsystem->dxgiDesktopImage->lpVtbl->Release(subsystem->dxgiDesktopImage); + subsystem->dxgiDesktopImage = NULL; + } + + hr = subsystem->dxgiOutputDuplication->lpVtbl->AcquireNextFrame(subsystem->dxgiOutputDuplication, + timeout, &(subsystem->dxgiFrameInfo), &(subsystem->dxgiResource)); + + if (SUCCEEDED(hr)) + { + subsystem->dxgiFrameAcquired = TRUE; + subsystem->pendingFrames = subsystem->dxgiFrameInfo.AccumulatedFrames; + } + + if (hr == DXGI_ERROR_WAIT_TIMEOUT) + return 0; + + if (FAILED(hr)) + { + fprintf(stderr, "IDXGIOutputDuplication::AcquireNextFrame failure: %s (0x%04X)\n", + GetDxgiErrorString(hr), hr); + + if (hr == DXGI_ERROR_ACCESS_LOST) + { + win_shadow_dxgi_release_frame_data(subsystem); + + if (subsystem->dxgiDesktopImage) + { + subsystem->dxgiDesktopImage->lpVtbl->Release(subsystem->dxgiDesktopImage); + subsystem->dxgiDesktopImage = NULL; + } + + if (subsystem->dxgiOutputDuplication) + { + subsystem->dxgiOutputDuplication->lpVtbl->Release(subsystem->dxgiOutputDuplication); + subsystem->dxgiOutputDuplication = NULL; + } + + status = win_shadow_dxgi_init_duplication(subsystem); + + if (status < 0) + return -1; + + return 0; + } + else if (hr == DXGI_ERROR_INVALID_CALL) + { + win_shadow_dxgi_uninit(subsystem); + + status = win_shadow_dxgi_init(subsystem); + + if (status < 0) + return -1; + + return 0; + } + + return -1; + } + + hr = subsystem->dxgiResource->lpVtbl->QueryInterface(subsystem->dxgiResource, + &IID_ID3D11Texture2D, (void**) &(subsystem->dxgiDesktopImage)); + + if (subsystem->dxgiResource) + { + subsystem->dxgiResource->lpVtbl->Release(subsystem->dxgiResource); + subsystem->dxgiResource = NULL; + } + + if (FAILED(hr)) + { + fprintf(stderr, "IDXGIResource::QueryInterface(ID3D11Texture2D) failure: %s (0x%04X)\n", + GetDxgiErrorString(hr), hr); + return -1; + } + + return 1; +} + +int win_shadow_dxgi_get_invalid_region(winShadowSubsystem* subsystem) +{ + UINT i; + HRESULT hr; + POINT* pSrcPt; + RECT* pDstRect; + RECT* pDirtyRect; + UINT numMoveRects; + UINT numDirtyRects; + UINT UsedBufferSize; + RECTANGLE_16 invalidRect; + UINT MetadataBufferSize; + UINT MoveRectsBufferSize; + UINT DirtyRectsBufferSize; + RECT* pDirtyRectsBuffer; + DXGI_OUTDUPL_MOVE_RECT* pMoveRect; + DXGI_OUTDUPL_MOVE_RECT* pMoveRectBuffer; + + if (subsystem->dxgiFrameInfo.AccumulatedFrames == 0) + return 0; + + if (subsystem->dxgiFrameInfo.TotalMetadataBufferSize == 0) + return 0; + + MetadataBufferSize = subsystem->dxgiFrameInfo.TotalMetadataBufferSize; + + if (MetadataBufferSize > subsystem->MetadataBufferSize) + { + subsystem->MetadataBuffer = (BYTE*) realloc(subsystem->MetadataBuffer, MetadataBufferSize); + + if (!subsystem->MetadataBuffer) + return -1; + + subsystem->MetadataBufferSize = MetadataBufferSize; + } + + /* GetFrameMoveRects */ + + UsedBufferSize = 0; + + MoveRectsBufferSize = MetadataBufferSize - UsedBufferSize; + pMoveRectBuffer = (DXGI_OUTDUPL_MOVE_RECT*) &(subsystem->MetadataBuffer[UsedBufferSize]); + + hr = subsystem->dxgiOutputDuplication->lpVtbl->GetFrameMoveRects(subsystem->dxgiOutputDuplication, + MoveRectsBufferSize, pMoveRectBuffer, &MoveRectsBufferSize); + + if (FAILED(hr)) + { + fprintf(stderr, "IDXGIOutputDuplication::GetFrameMoveRects failure: %s (0x%04X) Size: %d Total %d Used: %d\n", + GetDxgiErrorString(hr), hr, MoveRectsBufferSize, MetadataBufferSize, UsedBufferSize); + return -1; + } + + /* GetFrameDirtyRects */ + + UsedBufferSize += MoveRectsBufferSize; + + DirtyRectsBufferSize = MetadataBufferSize - UsedBufferSize; + pDirtyRectsBuffer = (RECT*) &(subsystem->MetadataBuffer[UsedBufferSize]); + + hr = subsystem->dxgiOutputDuplication->lpVtbl->GetFrameDirtyRects(subsystem->dxgiOutputDuplication, + DirtyRectsBufferSize, pDirtyRectsBuffer, &DirtyRectsBufferSize); + + if (FAILED(hr)) + { + fprintf(stderr, "IDXGIOutputDuplication::GetFrameDirtyRects failure: %s (0x%04X) Size: %d Total %d Used: %d\n", + GetDxgiErrorString(hr), hr, DirtyRectsBufferSize, MetadataBufferSize, UsedBufferSize); + return -1; + } + + numMoveRects = MoveRectsBufferSize / sizeof(DXGI_OUTDUPL_MOVE_RECT); + + for (i = 0; i < numMoveRects; i++) + { + pMoveRect = &pMoveRectBuffer[i]; + pSrcPt = &(pMoveRect->SourcePoint); + pDstRect = &(pMoveRect->DestinationRect); + + invalidRect.left = (UINT16) pDstRect->left; + invalidRect.top = (UINT16) pDstRect->top; + invalidRect.right = (UINT16) pDstRect->right; + invalidRect.bottom = (UINT16) pDstRect->bottom; + + region16_union_rect(&(subsystem->invalidRegion), &(subsystem->invalidRegion), &invalidRect); + } + + numDirtyRects = DirtyRectsBufferSize / sizeof(RECT); + + for (i = 0; i < numDirtyRects; i++) + { + pDirtyRect = &pDirtyRectsBuffer[i]; + + invalidRect.left = (UINT16) pDirtyRect->left; + invalidRect.top = (UINT16) pDirtyRect->top; + invalidRect.right = (UINT16) pDirtyRect->right; + invalidRect.bottom = (UINT16) pDirtyRect->bottom; + + region16_union_rect(&(subsystem->invalidRegion), &(subsystem->invalidRegion), &invalidRect); + } + + return 1; +} + +#endif diff --git a/server/shadow/Win/win_dxgi.h b/server/shadow/Win/win_dxgi.h new file mode 100644 index 000000000..42c42bfbb --- /dev/null +++ b/server/shadow/Win/win_dxgi.h @@ -0,0 +1,60 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FREERDP_SHADOW_SERVER_WIN_DXGI_H +#define FREERDP_SHADOW_SERVER_WIN_DXGI_H + +#if _WIN32_WINNT >= 0x0602 +#define WITH_DXGI_1_2 1 +#endif + +#ifdef WITH_DXGI_1_2 + +#ifndef CINTERFACE +#define CINTERFACE +#endif + +#include +#include + +#endif + +#include "win_shadow.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#ifdef WITH_DXGI_1_2 + +int win_shadow_dxgi_init(winShadowSubsystem* subsystem); +int win_shadow_dxgi_uninit(winShadowSubsystem* subsystem); + +int win_shadow_dxgi_fetch_frame_data(winShadowSubsystem* subsystem, + BYTE** ppDstData, int* pnDstStep, int x, int y, int width, int height); + +int win_shadow_dxgi_get_next_frame(winShadowSubsystem* subsystem); +int win_shadow_dxgi_get_invalid_region(winShadowSubsystem* subsystem); + +#endif + +#ifdef __cplusplus +} +#endif + +#endif /* FREERDP_SHADOW_SERVER_WIN_DXGI_H */ diff --git a/server/shadow/Win/win_shadow.c b/server/shadow/Win/win_shadow.c index 71624021d..14db194cc 100644 --- a/server/shadow/Win/win_shadow.c +++ b/server/shadow/Win/win_shadow.c @@ -29,704 +29,6 @@ #include "win_shadow.h" -#ifdef WITH_DXGI_1_2 - -static D3D_DRIVER_TYPE DriverTypes[] = -{ - D3D_DRIVER_TYPE_HARDWARE, - D3D_DRIVER_TYPE_WARP, - D3D_DRIVER_TYPE_REFERENCE, -}; - -static UINT NumDriverTypes = ARRAYSIZE(DriverTypes); - -static D3D_FEATURE_LEVEL FeatureLevels[] = -{ - D3D_FEATURE_LEVEL_11_0, - D3D_FEATURE_LEVEL_10_1, - D3D_FEATURE_LEVEL_10_0, - D3D_FEATURE_LEVEL_9_1 -}; - -static UINT NumFeatureLevels = ARRAYSIZE(FeatureLevels); - -static HMODULE d3d11_module = NULL; - -typedef HRESULT (WINAPI * fnD3D11CreateDevice)( - IDXGIAdapter* pAdapter, D3D_DRIVER_TYPE DriverType, HMODULE Software, UINT Flags, - CONST D3D_FEATURE_LEVEL* pFeatureLevels, UINT FeatureLevels, UINT SDKVersion, - ID3D11Device** ppDevice, D3D_FEATURE_LEVEL* pFeatureLevel, ID3D11DeviceContext** ppImmediateContext); - -static fnD3D11CreateDevice pfnD3D11CreateDevice = NULL; - -#undef DEFINE_GUID -#define INITGUID - -#include - -/* d3d11.h GUIDs */ - -DEFINE_GUID(IID_ID3D11DeviceChild,0x1841e5c8,0x16b0,0x489b,0xbc,0xc8,0x44,0xcf,0xb0,0xd5,0xde,0xae); -DEFINE_GUID(IID_ID3D11DepthStencilState,0x03823efb,0x8d8f,0x4e1c,0x9a,0xa2,0xf6,0x4b,0xb2,0xcb,0xfd,0xf1); -DEFINE_GUID(IID_ID3D11BlendState,0x75b68faa,0x347d,0x4159,0x8f,0x45,0xa0,0x64,0x0f,0x01,0xcd,0x9a); -DEFINE_GUID(IID_ID3D11RasterizerState,0x9bb4ab81,0xab1a,0x4d8f,0xb5,0x06,0xfc,0x04,0x20,0x0b,0x6e,0xe7); -DEFINE_GUID(IID_ID3D11Resource,0xdc8e63f3,0xd12b,0x4952,0xb4,0x7b,0x5e,0x45,0x02,0x6a,0x86,0x2d); -DEFINE_GUID(IID_ID3D11Buffer,0x48570b85,0xd1ee,0x4fcd,0xa2,0x50,0xeb,0x35,0x07,0x22,0xb0,0x37); -DEFINE_GUID(IID_ID3D11Texture1D,0xf8fb5c27,0xc6b3,0x4f75,0xa4,0xc8,0x43,0x9a,0xf2,0xef,0x56,0x4c); -DEFINE_GUID(IID_ID3D11Texture2D,0x6f15aaf2,0xd208,0x4e89,0x9a,0xb4,0x48,0x95,0x35,0xd3,0x4f,0x9c); -DEFINE_GUID(IID_ID3D11Texture3D,0x037e866e,0xf56d,0x4357,0xa8,0xaf,0x9d,0xab,0xbe,0x6e,0x25,0x0e); -DEFINE_GUID(IID_ID3D11View,0x839d1216,0xbb2e,0x412b,0xb7,0xf4,0xa9,0xdb,0xeb,0xe0,0x8e,0xd1); -DEFINE_GUID(IID_ID3D11ShaderResourceView,0xb0e06fe0,0x8192,0x4e1a,0xb1,0xca,0x36,0xd7,0x41,0x47,0x10,0xb2); -DEFINE_GUID(IID_ID3D11RenderTargetView,0xdfdba067,0x0b8d,0x4865,0x87,0x5b,0xd7,0xb4,0x51,0x6c,0xc1,0x64); -DEFINE_GUID(IID_ID3D11DepthStencilView,0x9fdac92a,0x1876,0x48c3,0xaf,0xad,0x25,0xb9,0x4f,0x84,0xa9,0xb6); -DEFINE_GUID(IID_ID3D11UnorderedAccessView,0x28acf509,0x7f5c,0x48f6,0x86,0x11,0xf3,0x16,0x01,0x0a,0x63,0x80); -DEFINE_GUID(IID_ID3D11VertexShader,0x3b301d64,0xd678,0x4289,0x88,0x97,0x22,0xf8,0x92,0x8b,0x72,0xf3); -DEFINE_GUID(IID_ID3D11HullShader,0x8e5c6061,0x628a,0x4c8e,0x82,0x64,0xbb,0xe4,0x5c,0xb3,0xd5,0xdd); -DEFINE_GUID(IID_ID3D11DomainShader,0xf582c508,0x0f36,0x490c,0x99,0x77,0x31,0xee,0xce,0x26,0x8c,0xfa); -DEFINE_GUID(IID_ID3D11GeometryShader,0x38325b96,0xeffb,0x4022,0xba,0x02,0x2e,0x79,0x5b,0x70,0x27,0x5c); -DEFINE_GUID(IID_ID3D11PixelShader,0xea82e40d,0x51dc,0x4f33,0x93,0xd4,0xdb,0x7c,0x91,0x25,0xae,0x8c); -DEFINE_GUID(IID_ID3D11ComputeShader,0x4f5b196e,0xc2bd,0x495e,0xbd,0x01,0x1f,0xde,0xd3,0x8e,0x49,0x69); -DEFINE_GUID(IID_ID3D11InputLayout,0xe4819ddc,0x4cf0,0x4025,0xbd,0x26,0x5d,0xe8,0x2a,0x3e,0x07,0xb7); -DEFINE_GUID(IID_ID3D11SamplerState,0xda6fea51,0x564c,0x4487,0x98,0x10,0xf0,0xd0,0xf9,0xb4,0xe3,0xa5); -DEFINE_GUID(IID_ID3D11Asynchronous,0x4b35d0cd,0x1e15,0x4258,0x9c,0x98,0x1b,0x13,0x33,0xf6,0xdd,0x3b); -DEFINE_GUID(IID_ID3D11Query,0xd6c00747,0x87b7,0x425e,0xb8,0x4d,0x44,0xd1,0x08,0x56,0x0a,0xfd); -DEFINE_GUID(IID_ID3D11Predicate,0x9eb576dd,0x9f77,0x4d86,0x81,0xaa,0x8b,0xab,0x5f,0xe4,0x90,0xe2); -DEFINE_GUID(IID_ID3D11Counter,0x6e8c49fb,0xa371,0x4770,0xb4,0x40,0x29,0x08,0x60,0x22,0xb7,0x41); -DEFINE_GUID(IID_ID3D11ClassInstance,0xa6cd7faa,0xb0b7,0x4a2f,0x94,0x36,0x86,0x62,0xa6,0x57,0x97,0xcb); -DEFINE_GUID(IID_ID3D11ClassLinkage,0xddf57cba,0x9543,0x46e4,0xa1,0x2b,0xf2,0x07,0xa0,0xfe,0x7f,0xed); -DEFINE_GUID(IID_ID3D11CommandList,0xa24bc4d1,0x769e,0x43f7,0x80,0x13,0x98,0xff,0x56,0x6c,0x18,0xe2); -DEFINE_GUID(IID_ID3D11DeviceContext,0xc0bfa96c,0xe089,0x44fb,0x8e,0xaf,0x26,0xf8,0x79,0x61,0x90,0xda); -DEFINE_GUID(IID_ID3D11VideoDecoder,0x3C9C5B51,0x995D,0x48d1,0x9B,0x8D,0xFA,0x5C,0xAE,0xDE,0xD6,0x5C); -DEFINE_GUID(IID_ID3D11VideoProcessorEnumerator,0x31627037,0x53AB,0x4200,0x90,0x61,0x05,0xFA,0xA9,0xAB,0x45,0xF9); -DEFINE_GUID(IID_ID3D11VideoProcessor,0x1D7B0652,0x185F,0x41c6,0x85,0xCE,0x0C,0x5B,0xE3,0xD4,0xAE,0x6C); -DEFINE_GUID(IID_ID3D11AuthenticatedChannel,0x3015A308,0xDCBD,0x47aa,0xA7,0x47,0x19,0x24,0x86,0xD1,0x4D,0x4A); -DEFINE_GUID(IID_ID3D11CryptoSession,0x9B32F9AD,0xBDCC,0x40a6,0xA3,0x9D,0xD5,0xC8,0x65,0x84,0x57,0x20); -DEFINE_GUID(IID_ID3D11VideoDecoderOutputView,0xC2931AEA,0x2A85,0x4f20,0x86,0x0F,0xFB,0xA1,0xFD,0x25,0x6E,0x18); -DEFINE_GUID(IID_ID3D11VideoProcessorInputView,0x11EC5A5F,0x51DC,0x4945,0xAB,0x34,0x6E,0x8C,0x21,0x30,0x0E,0xA5); -DEFINE_GUID(IID_ID3D11VideoProcessorOutputView,0xA048285E,0x25A9,0x4527,0xBD,0x93,0xD6,0x8B,0x68,0xC4,0x42,0x54); -DEFINE_GUID(IID_ID3D11VideoContext,0x61F21C45,0x3C0E,0x4a74,0x9C,0xEA,0x67,0x10,0x0D,0x9A,0xD5,0xE4); -DEFINE_GUID(IID_ID3D11VideoDevice,0x10EC4D5B,0x975A,0x4689,0xB9,0xE4,0xD0,0xAA,0xC3,0x0F,0xE3,0x33); -DEFINE_GUID(IID_ID3D11Device,0xdb6f6ddb,0xac77,0x4e88,0x82,0x53,0x81,0x9d,0xf9,0xbb,0xf1,0x40); - -/* dxgi.h GUIDs */ - -DEFINE_GUID(IID_IDXGIObject, 0xaec22fb8, 0x76f3, 0x4639, 0x9b, 0xe0, 0x28, 0xeb, 0x43, 0xa6, 0x7a, 0x2e); -DEFINE_GUID(IID_IDXGIDeviceSubObject, 0x3d3e0379, 0xf9de, 0x4d58, 0xbb, 0x6c, 0x18, 0xd6, 0x29, 0x92, 0xf1, 0xa6); -DEFINE_GUID(IID_IDXGIResource, 0x035f3ab4, 0x482e, 0x4e50, 0xb4, 0x1f, 0x8a, 0x7f, 0x8b, 0xd8, 0x96, 0x0b); -DEFINE_GUID(IID_IDXGIKeyedMutex, 0x9d8e1289, 0xd7b3, 0x465f, 0x81, 0x26, 0x25, 0x0e, 0x34, 0x9a, 0xf8, 0x5d); -DEFINE_GUID(IID_IDXGISurface, 0xcafcb56c, 0x6ac3, 0x4889, 0xbf, 0x47, 0x9e, 0x23, 0xbb, 0xd2, 0x60, 0xec); -DEFINE_GUID(IID_IDXGISurface1, 0x4AE63092, 0x6327, 0x4c1b, 0x80, 0xAE, 0xBF, 0xE1, 0x2E, 0xA3, 0x2B, 0x86); -DEFINE_GUID(IID_IDXGIAdapter, 0x2411e7e1, 0x12ac, 0x4ccf, 0xbd, 0x14, 0x97, 0x98, 0xe8, 0x53, 0x4d, 0xc0); -DEFINE_GUID(IID_IDXGIOutput, 0xae02eedb, 0xc735, 0x4690, 0x8d, 0x52, 0x5a, 0x8d, 0xc2, 0x02, 0x13, 0xaa); -DEFINE_GUID(IID_IDXGISwapChain, 0x310d36a0, 0xd2e7, 0x4c0a, 0xaa, 0x04, 0x6a, 0x9d, 0x23, 0xb8, 0x88, 0x6a); -DEFINE_GUID(IID_IDXGIFactory, 0x7b7166ec, 0x21c7, 0x44ae, 0xb2, 0x1a, 0xc9, 0xae, 0x32, 0x1a, 0xe3, 0x69); -DEFINE_GUID(IID_IDXGIDevice, 0x54ec77fa, 0x1377, 0x44e6, 0x8c, 0x32, 0x88, 0xfd, 0x5f, 0x44, 0xc8, 0x4c); -DEFINE_GUID(IID_IDXGIFactory1, 0x770aae78, 0xf26f, 0x4dba, 0xa8, 0x29, 0x25, 0x3c, 0x83, 0xd1, 0xb3, 0x87); -DEFINE_GUID(IID_IDXGIAdapter1, 0x29038f61, 0x3839, 0x4626, 0x91, 0xfd, 0x08, 0x68, 0x79, 0x01, 0x1a, 0x05); -DEFINE_GUID(IID_IDXGIDevice1, 0x77db970f, 0x6276, 0x48ba, 0xba, 0x28, 0x07, 0x01, 0x43, 0xb4, 0x39, 0x2c); - -/* dxgi1_2.h GUIDs */ - -DEFINE_GUID(IID_IDXGIDisplayControl, 0xea9dbf1a, 0xc88e, 0x4486, 0x85, 0x4a, 0x98, 0xaa, 0x01, 0x38, 0xf3, 0x0c); -DEFINE_GUID(IID_IDXGIOutputDuplication, 0x191cfac3, 0xa341, 0x470d, 0xb2, 0x6e, 0xa8, 0x64, 0xf4, 0x28, 0x31, 0x9c); -DEFINE_GUID(IID_IDXGISurface2, 0xaba496dd, 0xb617, 0x4cb8, 0xa8, 0x66, 0xbc, 0x44, 0xd7, 0xeb, 0x1f, 0xa2); -DEFINE_GUID(IID_IDXGIResource1, 0x30961379, 0x4609, 0x4a41, 0x99, 0x8e, 0x54, 0xfe, 0x56, 0x7e, 0xe0, 0xc1); -DEFINE_GUID(IID_IDXGIDevice2, 0x05008617, 0xfbfd, 0x4051, 0xa7, 0x90, 0x14, 0x48, 0x84, 0xb4, 0xf6, 0xa9); -DEFINE_GUID(IID_IDXGISwapChain1, 0x790a45f7, 0x0d42, 0x4876, 0x98, 0x3a, 0x0a, 0x55, 0xcf, 0xe6, 0xf4, 0xaa); -DEFINE_GUID(IID_IDXGIFactory2, 0x50c83a1c, 0xe072, 0x4c48, 0x87, 0xb0, 0x36, 0x30, 0xfa, 0x36, 0xa6, 0xd0); -DEFINE_GUID(IID_IDXGIAdapter2, 0x0AA1AE0A, 0xFA0E, 0x4B84, 0x86, 0x44, 0xE0, 0x5F, 0xF8, 0xE5, 0xAC, 0xB5); -DEFINE_GUID(IID_IDXGIOutput1, 0x00cddea8, 0x939b, 0x4b83, 0xa3, 0x40, 0xa6, 0x85, 0x22, 0x66, 0x66, 0xcc); - -const char* GetDxgiErrorString(HRESULT hr) -{ - switch (hr) - { - case DXGI_STATUS_OCCLUDED: - return "DXGI_STATUS_OCCLUDED"; - case DXGI_STATUS_CLIPPED: - return "DXGI_STATUS_CLIPPED"; - case DXGI_STATUS_NO_REDIRECTION: - return "DXGI_STATUS_NO_REDIRECTION"; - case DXGI_STATUS_NO_DESKTOP_ACCESS: - return "DXGI_STATUS_NO_DESKTOP_ACCESS"; - case DXGI_STATUS_GRAPHICS_VIDPN_SOURCE_IN_USE: - return "DXGI_STATUS_GRAPHICS_VIDPN_SOURCE_IN_USE"; - case DXGI_STATUS_MODE_CHANGED: - return "DXGI_STATUS_MODE_CHANGED"; - case DXGI_STATUS_MODE_CHANGE_IN_PROGRESS: - return "DXGI_STATUS_MODE_CHANGE_IN_PROGRESS"; - case DXGI_ERROR_INVALID_CALL: - return "DXGI_ERROR_INVALID_CALL"; - case DXGI_ERROR_NOT_FOUND: - return "DXGI_ERROR_NOT_FOUND"; - case DXGI_ERROR_MORE_DATA: - return "DXGI_ERROR_MORE_DATA"; - case DXGI_ERROR_UNSUPPORTED: - return "DXGI_ERROR_UNSUPPORTED"; - case DXGI_ERROR_DEVICE_REMOVED: - return "DXGI_ERROR_DEVICE_REMOVED"; - case DXGI_ERROR_DEVICE_HUNG: - return "DXGI_ERROR_DEVICE_HUNG"; - case DXGI_ERROR_DEVICE_RESET: - return "DXGI_ERROR_DEVICE_RESET"; - case DXGI_ERROR_WAS_STILL_DRAWING: - return "DXGI_ERROR_WAS_STILL_DRAWING"; - case DXGI_ERROR_FRAME_STATISTICS_DISJOINT: - return "DXGI_ERROR_FRAME_STATISTICS_DISJOINT"; - case DXGI_ERROR_GRAPHICS_VIDPN_SOURCE_IN_USE: - return "DXGI_ERROR_GRAPHICS_VIDPN_SOURCE_IN_USE"; - case DXGI_ERROR_DRIVER_INTERNAL_ERROR: - return "DXGI_ERROR_DRIVER_INTERNAL_ERROR"; - case DXGI_ERROR_NONEXCLUSIVE: - return "DXGI_ERROR_NONEXCLUSIVE"; - case DXGI_ERROR_NOT_CURRENTLY_AVAILABLE: - return "DXGI_ERROR_NOT_CURRENTLY_AVAILABLE"; - case DXGI_ERROR_REMOTE_CLIENT_DISCONNECTED: - return "DXGI_ERROR_REMOTE_CLIENT_DISCONNECTED"; - case DXGI_ERROR_REMOTE_OUTOFMEMORY: - return "DXGI_ERROR_REMOTE_OUTOFMEMORY"; - case DXGI_ERROR_ACCESS_LOST: - return "DXGI_ERROR_ACCESS_LOST"; - case DXGI_ERROR_WAIT_TIMEOUT: - return "DXGI_ERROR_WAIT_TIMEOUT"; - case DXGI_ERROR_SESSION_DISCONNECTED: - return "DXGI_ERROR_SESSION_DISCONNECTED"; - case DXGI_ERROR_RESTRICT_TO_OUTPUT_STALE: - return "DXGI_ERROR_RESTRICT_TO_OUTPUT_STALE"; - case DXGI_ERROR_CANNOT_PROTECT_CONTENT: - return "DXGI_ERROR_CANNOT_PROTECT_CONTENT"; - case DXGI_ERROR_ACCESS_DENIED: - return "DXGI_ERROR_ACCESS_DENIED"; - case DXGI_ERROR_NAME_ALREADY_EXISTS: - return "DXGI_ERROR_NAME_ALREADY_EXISTS"; - case DXGI_ERROR_SDK_COMPONENT_MISSING: - return "DXGI_ERROR_SDK_COMPONENT_MISSING"; - case DXGI_STATUS_UNOCCLUDED: - return "DXGI_STATUS_UNOCCLUDED"; - case DXGI_STATUS_DDA_WAS_STILL_DRAWING: - return "DXGI_STATUS_DDA_WAS_STILL_DRAWING"; - case DXGI_ERROR_MODE_CHANGE_IN_PROGRESS: - return "DXGI_ERROR_MODE_CHANGE_IN_PROGRESS"; - case DXGI_DDI_ERR_WASSTILLDRAWING: - return "DXGI_DDI_ERR_WASSTILLDRAWING"; - case DXGI_DDI_ERR_UNSUPPORTED: - return "DXGI_DDI_ERR_UNSUPPORTED"; - case DXGI_DDI_ERR_NONEXCLUSIVE: - return "DXGI_DDI_ERR_NONEXCLUSIVE"; - case 0x80070005: - return "DXGI_ERROR_ACCESS_DENIED"; - } - - return "DXGI_ERROR_UNKNOWN"; -} - -static void win_shadow_d3d11_module_init() -{ - if (d3d11_module) - return; - - d3d11_module = LoadLibraryA("d3d11.dll"); - - if (!d3d11_module) - return; - - pfnD3D11CreateDevice = (fnD3D11CreateDevice) GetProcAddress(d3d11_module, "D3D11CreateDevice"); -} - -int win_shadow_dxgi_init_duplication(winShadowSubsystem* subsystem) -{ - HRESULT hr; - UINT dTop, i = 0; - IDXGIOutput* pOutput; - DXGI_OUTPUT_DESC outputDesc; - DXGI_OUTPUT_DESC* pOutputDesc; - D3D11_TEXTURE2D_DESC textureDesc; - IDXGIDevice* dxgiDevice = NULL; - IDXGIAdapter* dxgiAdapter = NULL; - IDXGIOutput* dxgiOutput = NULL; - IDXGIOutput1* dxgiOutput1 = NULL; - - hr = subsystem->dxgiDevice->lpVtbl->QueryInterface(subsystem->dxgiDevice, - &IID_IDXGIDevice, (void**) &dxgiDevice); - - if (FAILED(hr)) - { - fprintf(stderr, "ID3D11Device::QueryInterface(IDXGIDevice) failure: %s (0x%04X)\n", - GetDxgiErrorString(hr), hr); - return -1; - } - - hr = dxgiDevice->lpVtbl->GetParent(dxgiDevice, &IID_IDXGIAdapter, (void**) &dxgiAdapter); - - if (dxgiDevice) - { - dxgiDevice->lpVtbl->Release(dxgiDevice); - dxgiDevice = NULL; - } - - if (FAILED(hr)) - { - fprintf(stderr, "IDXGIDevice::GetParent(IDXGIAdapter) failure: %s (0x%04X)\n", - GetDxgiErrorString(hr), hr); - return -1; - } - - pOutput = NULL; - ZeroMemory(&outputDesc, sizeof(outputDesc)); - - while (dxgiAdapter->lpVtbl->EnumOutputs(dxgiAdapter, i, &pOutput) != DXGI_ERROR_NOT_FOUND) - { - pOutputDesc = &outputDesc; - - hr = pOutput->lpVtbl->GetDesc(pOutput, pOutputDesc); - - if (FAILED(hr)) - { - fprintf(stderr, "IDXGIOutput::GetDesc failure: %s (0x%04X)\n", - GetDxgiErrorString(hr), hr); - return -1; - } - - if (pOutputDesc->AttachedToDesktop) - dTop = i; - - pOutput->lpVtbl->Release(pOutput); - i++; - } - - dTop = 0; /* screen id */ - - hr = dxgiAdapter->lpVtbl->EnumOutputs(dxgiAdapter, dTop, &dxgiOutput); - - if (dxgiAdapter) - { - dxgiAdapter->lpVtbl->Release(dxgiAdapter); - dxgiAdapter = NULL; - } - - if (FAILED(hr)) - { - fprintf(stderr, "IDXGIAdapter::EnumOutputs failure: %s (0x%04X)\n", - GetDxgiErrorString(hr), hr); - return -1; - } - - hr = dxgiOutput->lpVtbl->QueryInterface(dxgiOutput, &IID_IDXGIOutput1, (void**) &dxgiOutput1); - - if (dxgiOutput) - { - dxgiOutput->lpVtbl->Release(dxgiOutput); - dxgiOutput = NULL; - } - - if (FAILED(hr)) - { - fprintf(stderr, "IDXGIOutput::QueryInterface(IDXGIOutput1) failure: %s (0x%04X)\n", - GetDxgiErrorString(hr), hr); - return -1; - } - - hr = dxgiOutput1->lpVtbl->DuplicateOutput(dxgiOutput1, (IUnknown*) subsystem->dxgiDevice, - &(subsystem->dxgiOutputDuplication)); - - if (dxgiOutput1) - { - dxgiOutput1->lpVtbl->Release(dxgiOutput1); - dxgiOutput1 = NULL; - } - - if (FAILED(hr)) - { - fprintf(stderr, "IDXGIOutput1::DuplicateOutput failure: %s (0x%04X)\n", - GetDxgiErrorString(hr), hr); - return -1; - } - - textureDesc.Width = subsystem->width; - textureDesc.Height = subsystem->height; - textureDesc.MipLevels = 1; - textureDesc.ArraySize = 1; - textureDesc.Format = DXGI_FORMAT_B8G8R8A8_UNORM; - textureDesc.SampleDesc.Count = 1; - textureDesc.SampleDesc.Quality = 0; - textureDesc.Usage = D3D11_USAGE_STAGING; - textureDesc.BindFlags = 0; - textureDesc.CPUAccessFlags = D3D11_CPU_ACCESS_READ; - textureDesc.MiscFlags = 0; - - hr = subsystem->dxgiDevice->lpVtbl->CreateTexture2D(subsystem->dxgiDevice, - &textureDesc, NULL, &(subsystem->dxgiStage)); - - if (FAILED(hr)) - { - fprintf(stderr, "ID3D11Device::CreateTexture2D failure: %s (0x%04X)\n", - GetDxgiErrorString(hr), hr); - return -1; - } - - return 1; -} - -int win_shadow_dxgi_init(winShadowSubsystem* subsystem) -{ - UINT i = 0; - HRESULT hr; - int status; - UINT DriverTypeIndex; - IDXGIDevice* DxgiDevice = NULL; - IDXGIAdapter* DxgiAdapter = NULL; - IDXGIOutput* DxgiOutput = NULL; - IDXGIOutput1* DxgiOutput1 = NULL; - - win_shadow_d3d11_module_init(); - - if (!pfnD3D11CreateDevice) - return -1; - - for (DriverTypeIndex = 0; DriverTypeIndex < NumDriverTypes; ++DriverTypeIndex) - { - hr = pfnD3D11CreateDevice(NULL, DriverTypes[DriverTypeIndex], NULL, 0, FeatureLevels, - NumFeatureLevels, D3D11_SDK_VERSION, &(subsystem->dxgiDevice), &(subsystem->featureLevel), - &(subsystem->dxgiDeviceContext)); - - if (SUCCEEDED(hr)) - break; - } - - if (FAILED(hr)) - { - fprintf(stderr, "D3D11CreateDevice failure: 0x%04X\n", hr); - return -1; - } - - status = win_shadow_dxgi_init_duplication(subsystem); - - return status; -} - -int win_shadow_dxgi_uninit(winShadowSubsystem* subsystem) -{ - if (subsystem->dxgiStage) - { - subsystem->dxgiStage->lpVtbl->Release(subsystem->dxgiStage); - subsystem->dxgiStage = NULL; - } - - if (subsystem->dxgiDesktopImage) - { - subsystem->dxgiDesktopImage->lpVtbl->Release(subsystem->dxgiDesktopImage); - subsystem->dxgiDesktopImage = NULL; - } - - if (subsystem->dxgiOutputDuplication) - { - subsystem->dxgiOutputDuplication->lpVtbl->Release(subsystem->dxgiOutputDuplication); - subsystem->dxgiOutputDuplication = NULL; - } - - if (subsystem->dxgiDeviceContext) - { - subsystem->dxgiDeviceContext->lpVtbl->Release(subsystem->dxgiDeviceContext); - subsystem->dxgiDeviceContext = NULL; - } - - if (subsystem->dxgiDevice) - { - subsystem->dxgiDevice->lpVtbl->Release(subsystem->dxgiDevice); - subsystem->dxgiDevice = NULL; - } - - return 1; -} - -int win_shadow_dxgi_fetch_frame_data(winShadowSubsystem* subsystem, - BYTE** ppDstData, int* pnDstStep, int x, int y, int width, int height) -{ - int status; - HRESULT hr; - D3D11_BOX Box; - DXGI_MAPPED_RECT mappedRect; - - if ((width * height) < 1) - return 0; - - Box.top = x; - Box.left = y; - Box.right = x + width; - Box.bottom = y + height; - Box.front = 0; - Box.back = 1; - - subsystem->dxgiDeviceContext->lpVtbl->CopySubresourceRegion(subsystem->dxgiDeviceContext, - (ID3D11Resource*) subsystem->dxgiStage, 0, 0, 0, 0, (ID3D11Resource*) subsystem->dxgiDesktopImage, 0, &Box); - - hr = subsystem->dxgiStage->lpVtbl->QueryInterface(subsystem->dxgiStage, - &IID_IDXGISurface, (void**) &(subsystem->dxgiSurface)); - - if (FAILED(hr)) - { - fprintf(stderr, "ID3D11Texture2D::QueryInterface(IDXGISurface) failure: %s 0x%04X\n", - GetDxgiErrorString(hr), hr); - return -1; - } - - hr = subsystem->dxgiSurface->lpVtbl->Map(subsystem->dxgiSurface, &mappedRect, DXGI_MAP_READ); - - if (FAILED(hr)) - { - fprintf(stderr, "IDXGISurface::Map failure: %s 0x%04X\n", - GetDxgiErrorString(hr), hr); - - if (hr == DXGI_ERROR_DEVICE_REMOVED) - { - win_shadow_dxgi_uninit(subsystem); - - status = win_shadow_dxgi_init(subsystem); - - if (status < 0) - return -1; - - return 0; - } - - return -1; - } - - subsystem->dxgiSurfaceMapped = TRUE; - - *ppDstData = mappedRect.pBits; - *pnDstStep = mappedRect.Pitch; - - return 1; -} - -int win_shadow_dxgi_release_frame_data(winShadowSubsystem* subsystem) -{ - if (subsystem->dxgiSurface) - { - if (subsystem->dxgiSurfaceMapped) - { - subsystem->dxgiSurface->lpVtbl->Unmap(subsystem->dxgiSurface); - subsystem->dxgiSurfaceMapped = FALSE; - } - - subsystem->dxgiSurface->lpVtbl->Release(subsystem->dxgiSurface); - subsystem->dxgiSurface = NULL; - } - - if (subsystem->dxgiOutputDuplication) - { - if (subsystem->dxgiFrameAcquired) - { - subsystem->dxgiOutputDuplication->lpVtbl->ReleaseFrame(subsystem->dxgiOutputDuplication); - subsystem->dxgiFrameAcquired = FALSE; - } - } - - subsystem->pendingFrames = 0; - - return 1; -} - -int win_shadow_dxgi_get_next_frame(winShadowSubsystem* subsystem) -{ - UINT i = 0; - int status; - HRESULT hr = 0; - UINT timeout = 15; - UINT DataBufferSize = 0; - BYTE* DataBuffer = NULL; - - if (subsystem->dxgiFrameAcquired) - { - win_shadow_dxgi_release_frame_data(subsystem); - } - - if (subsystem->dxgiDesktopImage) - { - subsystem->dxgiDesktopImage->lpVtbl->Release(subsystem->dxgiDesktopImage); - subsystem->dxgiDesktopImage = NULL; - } - - hr = subsystem->dxgiOutputDuplication->lpVtbl->AcquireNextFrame(subsystem->dxgiOutputDuplication, - timeout, &(subsystem->dxgiFrameInfo), &(subsystem->dxgiResource)); - - if (SUCCEEDED(hr)) - { - subsystem->dxgiFrameAcquired = TRUE; - subsystem->pendingFrames = subsystem->dxgiFrameInfo.AccumulatedFrames; - } - - if (hr == DXGI_ERROR_WAIT_TIMEOUT) - return 0; - - if (FAILED(hr)) - { - fprintf(stderr, "IDXGIOutputDuplication::AcquireNextFrame failure: %s (0x%04X)\n", - GetDxgiErrorString(hr), hr); - - if (hr == DXGI_ERROR_ACCESS_LOST) - { - win_shadow_dxgi_release_frame_data(subsystem); - - if (subsystem->dxgiDesktopImage) - { - subsystem->dxgiDesktopImage->lpVtbl->Release(subsystem->dxgiDesktopImage); - subsystem->dxgiDesktopImage = NULL; - } - - if (subsystem->dxgiOutputDuplication) - { - subsystem->dxgiOutputDuplication->lpVtbl->Release(subsystem->dxgiOutputDuplication); - subsystem->dxgiOutputDuplication = NULL; - } - - status = win_shadow_dxgi_init_duplication(subsystem); - - if (status < 0) - return -1; - - return 0; - } - else if (hr == DXGI_ERROR_INVALID_CALL) - { - win_shadow_dxgi_uninit(subsystem); - - status = win_shadow_dxgi_init(subsystem); - - if (status < 0) - return -1; - - return 0; - } - - return -1; - } - - hr = subsystem->dxgiResource->lpVtbl->QueryInterface(subsystem->dxgiResource, - &IID_ID3D11Texture2D, (void**) &(subsystem->dxgiDesktopImage)); - - if (subsystem->dxgiResource) - { - subsystem->dxgiResource->lpVtbl->Release(subsystem->dxgiResource); - subsystem->dxgiResource = NULL; - } - - if (FAILED(hr)) - { - fprintf(stderr, "IDXGIResource::QueryInterface(ID3D11Texture2D) failure: %s (0x%04X)\n", - GetDxgiErrorString(hr), hr); - return -1; - } - - return 1; -} - -int win_shadow_dxgi_get_invalid_region(winShadowSubsystem* subsystem) -{ - UINT i; - HRESULT hr; - POINT* pSrcPt; - RECT* pDstRect; - RECT* pDirtyRect; - UINT numMoveRects; - UINT numDirtyRects; - UINT UsedBufferSize; - RECTANGLE_16 invalidRect; - UINT MetadataBufferSize; - UINT MoveRectsBufferSize; - UINT DirtyRectsBufferSize; - RECT* pDirtyRectsBuffer; - DXGI_OUTDUPL_MOVE_RECT* pMoveRect; - DXGI_OUTDUPL_MOVE_RECT* pMoveRectBuffer; - - if (subsystem->dxgiFrameInfo.AccumulatedFrames == 0) - return 0; - - if (subsystem->dxgiFrameInfo.TotalMetadataBufferSize == 0) - return 0; - - MetadataBufferSize = subsystem->dxgiFrameInfo.TotalMetadataBufferSize; - - if (MetadataBufferSize > subsystem->MetadataBufferSize) - { - subsystem->MetadataBuffer = (BYTE*) realloc(subsystem->MetadataBuffer, MetadataBufferSize); - - if (!subsystem->MetadataBuffer) - return -1; - - subsystem->MetadataBufferSize = MetadataBufferSize; - } - - /* GetFrameMoveRects */ - - UsedBufferSize = 0; - - MoveRectsBufferSize = MetadataBufferSize - UsedBufferSize; - pMoveRectBuffer = (DXGI_OUTDUPL_MOVE_RECT*) &(subsystem->MetadataBuffer[UsedBufferSize]); - - hr = subsystem->dxgiOutputDuplication->lpVtbl->GetFrameMoveRects(subsystem->dxgiOutputDuplication, - MoveRectsBufferSize, pMoveRectBuffer, &MoveRectsBufferSize); - - if (FAILED(hr)) - { - fprintf(stderr, "IDXGIOutputDuplication::GetFrameMoveRects failure: %s (0x%04X) Size: %d Total %d Used: %d\n", - GetDxgiErrorString(hr), hr, MoveRectsBufferSize, MetadataBufferSize, UsedBufferSize); - return -1; - } - - /* GetFrameDirtyRects */ - - UsedBufferSize += MoveRectsBufferSize; - - DirtyRectsBufferSize = MetadataBufferSize - UsedBufferSize; - pDirtyRectsBuffer = (RECT*) &(subsystem->MetadataBuffer[UsedBufferSize]); - - hr = subsystem->dxgiOutputDuplication->lpVtbl->GetFrameDirtyRects(subsystem->dxgiOutputDuplication, - DirtyRectsBufferSize, pDirtyRectsBuffer, &DirtyRectsBufferSize); - - if (FAILED(hr)) - { - fprintf(stderr, "IDXGIOutputDuplication::GetFrameDirtyRects failure: %s (0x%04X) Size: %d Total %d Used: %d\n", - GetDxgiErrorString(hr), hr, DirtyRectsBufferSize, MetadataBufferSize, UsedBufferSize); - return -1; - } - - numMoveRects = MoveRectsBufferSize / sizeof(DXGI_OUTDUPL_MOVE_RECT); - - for (i = 0; i < numMoveRects; i++) - { - pMoveRect = &pMoveRectBuffer[i]; - pSrcPt = &(pMoveRect->SourcePoint); - pDstRect = &(pMoveRect->DestinationRect); - - invalidRect.left = (UINT16) pDstRect->left; - invalidRect.top = (UINT16) pDstRect->top; - invalidRect.right = (UINT16) pDstRect->right; - invalidRect.bottom = (UINT16) pDstRect->bottom; - - region16_union_rect(&(subsystem->invalidRegion), &(subsystem->invalidRegion), &invalidRect); - } - - numDirtyRects = DirtyRectsBufferSize / sizeof(RECT); - - for (i = 0; i < numDirtyRects; i++) - { - pDirtyRect = &pDirtyRectsBuffer[i]; - - invalidRect.left = (UINT16) pDirtyRect->left; - invalidRect.top = (UINT16) pDirtyRect->top; - invalidRect.right = (UINT16) pDirtyRect->right; - invalidRect.bottom = (UINT16) pDirtyRect->bottom; - - region16_union_rect(&(subsystem->invalidRegion), &(subsystem->invalidRegion), &invalidRect); - } - - return 1; -} - -#endif - void win_shadow_input_synchronize_event(winShadowSubsystem* subsystem, UINT32 flags) { diff --git a/server/shadow/Win/win_shadow.h b/server/shadow/Win/win_shadow.h index 65196c642..e31444fbc 100644 --- a/server/shadow/Win/win_shadow.h +++ b/server/shadow/Win/win_shadow.h @@ -29,20 +29,7 @@ typedef struct win_shadow_subsystem winShadowSubsystem; #include #include -#if _WIN32_WINNT >= 0x0602 -#define WITH_DXGI_1_2 1 -#endif - -#ifdef WITH_DXGI_1_2 - -#ifndef CINTERFACE -#define CINTERFACE -#endif - -#include -#include - -#endif +#include "win_dxgi.h" struct win_shadow_subsystem { diff --git a/server/shadow/Win/win_wds.c b/server/shadow/Win/win_wds.c new file mode 100644 index 000000000..e35e68c3d --- /dev/null +++ b/server/shadow/Win/win_wds.c @@ -0,0 +1,27 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include + +#include "win_wds.h" + diff --git a/server/shadow/Win/win_wds.h b/server/shadow/Win/win_wds.h new file mode 100644 index 000000000..f0f06a8fa --- /dev/null +++ b/server/shadow/Win/win_wds.h @@ -0,0 +1,32 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FREERDP_SHADOW_SERVER_WIN_WDS_H +#define FREERDP_SHADOW_SERVER_WIN_WDS_H + +#ifdef __cplusplus +extern "C" { +#endif + + + +#ifdef __cplusplus +} +#endif + +#endif /* FREERDP_SHADOW_SERVER_WIN_WDS_H */ From 93ad5b7335a55e9e66eebd7e4c86ce225ca7a050 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Wed, 13 Aug 2014 14:15:17 +0200 Subject: [PATCH 099/170] Implemented default fnObjectEquals function. Implemented ArrayList_Contains. ArrayList_IndexOf and ArrayList_LastIndexOf now use comparison function. --- winpr/libwinpr/utils/collections/ArrayList.c | 98 +++++++++++++------- 1 file changed, 62 insertions(+), 36 deletions(-) diff --git a/winpr/libwinpr/utils/collections/ArrayList.c b/winpr/libwinpr/utils/collections/ArrayList.c index 478f26b74..47d9ee7ce 100644 --- a/winpr/libwinpr/utils/collections/ArrayList.c +++ b/winpr/libwinpr/utils/collections/ArrayList.c @@ -38,7 +38,7 @@ * Gets or sets the number of elements that the ArrayList can contain. */ -int ArrayList_Capacity(wArrayList* arrayList) +int ArrayList_Capacity(wArrayList *arrayList) { return arrayList->capacity; } @@ -47,7 +47,7 @@ int ArrayList_Capacity(wArrayList* arrayList) * Gets the number of elements actually contained in the ArrayList. */ -int ArrayList_Count(wArrayList* arrayList) +int ArrayList_Count(wArrayList *arrayList) { return arrayList->size; } @@ -56,7 +56,7 @@ int ArrayList_Count(wArrayList* arrayList) * Gets a value indicating whether the ArrayList has a fixed size. */ -BOOL ArrayList_IsFixedSized(wArrayList* arrayList) +BOOL ArrayList_IsFixedSized(wArrayList *arrayList) { return FALSE; } @@ -65,7 +65,7 @@ BOOL ArrayList_IsFixedSized(wArrayList* arrayList) * Gets a value indicating whether the ArrayList is read-only. */ -BOOL ArrayList_IsReadOnly(wArrayList* arrayList) +BOOL ArrayList_IsReadOnly(wArrayList *arrayList) { return FALSE; } @@ -74,7 +74,7 @@ BOOL ArrayList_IsReadOnly(wArrayList* arrayList) * Gets a value indicating whether access to the ArrayList is synchronized (thread safe). */ -BOOL ArrayList_IsSynchronized(wArrayList* arrayList) +BOOL ArrayList_IsSynchronized(wArrayList *arrayList) { return arrayList->synchronized; } @@ -83,7 +83,7 @@ BOOL ArrayList_IsSynchronized(wArrayList* arrayList) * Lock access to the ArrayList */ -void ArrayList_Lock(wArrayList* arrayList) +void ArrayList_Lock(wArrayList *arrayList) { EnterCriticalSection(&arrayList->lock); } @@ -92,7 +92,7 @@ void ArrayList_Lock(wArrayList* arrayList) * Unlock access to the ArrayList */ -void ArrayList_Unlock(wArrayList* arrayList) +void ArrayList_Unlock(wArrayList *arrayList) { LeaveCriticalSection(&arrayList->lock); } @@ -101,9 +101,9 @@ void ArrayList_Unlock(wArrayList* arrayList) * Gets the element at the specified index. */ -void* ArrayList_GetItem(wArrayList* arrayList, int index) +void *ArrayList_GetItem(wArrayList *arrayList, int index) { - void* obj = NULL; + void *obj = NULL; if ((index >= 0) && (index < arrayList->size)) { @@ -117,7 +117,7 @@ void* ArrayList_GetItem(wArrayList* arrayList, int index) * Sets the element at the specified index. */ -void ArrayList_SetItem(wArrayList* arrayList, int index, void* obj) +void ArrayList_SetItem(wArrayList *arrayList, int index, void *obj) { if ((index >= 0) && (index < arrayList->size)) { @@ -133,7 +133,7 @@ void ArrayList_SetItem(wArrayList* arrayList, int index, void* obj) * Shift a section of the list. */ -BOOL ArrayList_Shift(wArrayList* arrayList, int index, int count) +BOOL ArrayList_Shift(wArrayList *arrayList, int index, int count) { if (count > 0) { @@ -141,24 +141,28 @@ BOOL ArrayList_Shift(wArrayList* arrayList, int index, int count) { void **newArray; int newCapacity = arrayList->capacity * arrayList->growthFactor; + newArray = (void **)realloc(arrayList->array, sizeof(void *) * newCapacity); - newArray = (void **)realloc(arrayList->array, sizeof(void*) * newCapacity); if (!newArray) return FALSE; + arrayList->array = newArray; arrayList->capacity = newCapacity; } - MoveMemory(&arrayList->array[index + count], &arrayList->array[index], (arrayList->size - index) * sizeof(void*)); + MoveMemory(&arrayList->array[index + count], &arrayList->array[index], (arrayList->size - index) * sizeof(void *)); arrayList->size += count; } else if (count < 0) { int chunk = arrayList->size - index + count; + if (chunk > 0) - MoveMemory(&arrayList->array[index], &arrayList->array[index - count], chunk * sizeof(void*)); + MoveMemory(&arrayList->array[index], &arrayList->array[index - count], chunk * sizeof(void *)); + arrayList->size += count; } + return TRUE; } @@ -166,7 +170,7 @@ BOOL ArrayList_Shift(wArrayList* arrayList, int index, int count) * Removes all elements from the ArrayList. */ -void ArrayList_Clear(wArrayList* arrayList) +void ArrayList_Clear(wArrayList *arrayList) { int index; @@ -191,22 +195,33 @@ void ArrayList_Clear(wArrayList* arrayList) * Determines whether an element is in the ArrayList. */ -BOOL ArrayList_Contains(wArrayList* arrayList, void* obj) +BOOL ArrayList_Contains(wArrayList *arrayList, void *obj) { + DWORD index; + BOOL rc = FALSE; + if (arrayList->synchronized) EnterCriticalSection(&arrayList->lock); + for (index = 0; index < arrayList->size; index++) + { + rc = arrayList->object.fnObjectEquals(arrayList->array[index], obj); + + if (rc) + break; + } + if (arrayList->synchronized) LeaveCriticalSection(&arrayList->lock); - return FALSE; + return rc; } /** * Adds an object to the end of the ArrayList. */ -int ArrayList_Add(wArrayList* arrayList, void* obj) +int ArrayList_Add(wArrayList *arrayList, void *obj) { int index = -1; @@ -217,7 +232,8 @@ int ArrayList_Add(wArrayList* arrayList, void* obj) { void **newArray; int newCapacity = arrayList->capacity * arrayList->growthFactor; - newArray = (void **)realloc(arrayList->array, sizeof(void*) * newCapacity); + newArray = (void **)realloc(arrayList->array, sizeof(void *) * newCapacity); + if (!newArray) goto out; @@ -227,8 +243,8 @@ int ArrayList_Add(wArrayList* arrayList, void* obj) arrayList->array[arrayList->size++] = obj; index = arrayList->size; - out: + if (arrayList->synchronized) LeaveCriticalSection(&arrayList->lock); @@ -239,9 +255,10 @@ out: * Inserts an element into the ArrayList at the specified index. */ -BOOL ArrayList_Insert(wArrayList* arrayList, int index, void* obj) +BOOL ArrayList_Insert(wArrayList *arrayList, int index, void *obj) { BOOL ret = TRUE; + if (arrayList->synchronized) EnterCriticalSection(&arrayList->lock); @@ -259,6 +276,7 @@ BOOL ArrayList_Insert(wArrayList* arrayList, int index, void* obj) if (arrayList->synchronized) LeaveCriticalSection(&arrayList->lock); + return ret; } @@ -266,7 +284,7 @@ BOOL ArrayList_Insert(wArrayList* arrayList, int index, void* obj) * Removes the first occurrence of a specific object from the ArrayList. */ -BOOL ArrayList_Remove(wArrayList* arrayList, void* obj) +BOOL ArrayList_Remove(wArrayList *arrayList, void *obj) { int index; BOOL found = FALSE; @@ -285,14 +303,16 @@ BOOL ArrayList_Remove(wArrayList* arrayList, void* obj) } if (found) - { + { if (arrayList->object.fnObjectFree) arrayList->object.fnObjectFree(arrayList->array[index]); + ret = ArrayList_Shift(arrayList, index, -1); - } + } if (arrayList->synchronized) LeaveCriticalSection(&arrayList->lock); + return ret; } @@ -300,7 +320,7 @@ BOOL ArrayList_Remove(wArrayList* arrayList, void* obj) * Removes the element at the specified index of the ArrayList. */ -BOOL ArrayList_RemoveAt(wArrayList* arrayList, int index) +BOOL ArrayList_RemoveAt(wArrayList *arrayList, int index) { BOOL ret = TRUE; @@ -311,11 +331,13 @@ BOOL ArrayList_RemoveAt(wArrayList* arrayList, int index) { if (arrayList->object.fnObjectFree) arrayList->object.fnObjectFree(arrayList->array[index]); + ret = ArrayList_Shift(arrayList, index, -1); } if (arrayList->synchronized) LeaveCriticalSection(&arrayList->lock); + return ret; } @@ -329,7 +351,7 @@ BOOL ArrayList_RemoveAt(wArrayList* arrayList, int index) * in the ArrayList that contains the specified number of elements and ends at the specified index. */ -int ArrayList_IndexOf(wArrayList* arrayList, void* obj, int startIndex, int count) +int ArrayList_IndexOf(wArrayList *arrayList, void *obj, int startIndex, int count) { int index; BOOL found = FALSE; @@ -345,7 +367,7 @@ int ArrayList_IndexOf(wArrayList* arrayList, void* obj, int startIndex, int coun for (index = startIndex; index < startIndex + count; index++) { - if (arrayList->array[index] == obj) + if (arrayList->object.fnObjectEquals(arrayList->array[index], obj)) { found = TRUE; break; @@ -371,7 +393,7 @@ int ArrayList_IndexOf(wArrayList* arrayList, void* obj, int startIndex, int coun * in the ArrayList that contains the specified number of elements and ends at the specified index. */ -int ArrayList_LastIndexOf(wArrayList* arrayList, void* obj, int startIndex, int count) +int ArrayList_LastIndexOf(wArrayList *arrayList, void *obj, int startIndex, int count) { int index; BOOL found = FALSE; @@ -387,7 +409,7 @@ int ArrayList_LastIndexOf(wArrayList* arrayList, void* obj, int startIndex, int for (index = startIndex + count - 1; index >= startIndex; index--) { - if (arrayList->array[index] == obj) + if (arrayList->object.fnObjectEquals(arrayList->array[index], obj)) { found = TRUE; break; @@ -403,38 +425,42 @@ int ArrayList_LastIndexOf(wArrayList* arrayList, void* obj, int startIndex, int return index; } +static BOOL ArrayList_DefaultCompare(void *objA, void *objB) +{ + return objA == objB ? TRUE : FALSE; +} + /** * Construction, Destruction */ -wArrayList* ArrayList_New(BOOL synchronized) +wArrayList *ArrayList_New(BOOL synchronized) { - wArrayList* arrayList = NULL; - + wArrayList *arrayList = NULL; arrayList = (wArrayList *)calloc(1, sizeof(wArrayList)); + if (!arrayList) return NULL; arrayList->synchronized = synchronized; arrayList->capacity = 32; arrayList->growthFactor = 2; - + arrayList->object.fnObjectEquals = ArrayList_DefaultCompare; arrayList->array = (void **)malloc(arrayList->capacity * sizeof(void *)); + if (!arrayList->array) goto out_free; InitializeCriticalSectionAndSpinCount(&arrayList->lock, 4000); return arrayList; - out_free: free(arrayList); return NULL; } -void ArrayList_Free(wArrayList* arrayList) +void ArrayList_Free(wArrayList *arrayList) { ArrayList_Clear(arrayList); - DeleteCriticalSection(&arrayList->lock); free(arrayList->array); free(arrayList); From 37c8ce48e316d24937755ee087ea08807dd376ae Mon Sep 17 00:00:00 2001 From: Mike McDonald Date: Wed, 13 Aug 2014 10:14:56 -0400 Subject: [PATCH 100/170] Fixed typo in message --- libfreerdp/core/peer.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libfreerdp/core/peer.c b/libfreerdp/core/peer.c index 8b5ac3ce9..007d4fcb8 100644 --- a/libfreerdp/core/peer.c +++ b/libfreerdp/core/peer.c @@ -49,7 +49,7 @@ static BOOL freerdp_peer_initialize(freerdp_peer* client) settings->RdpServerRsaKey = key_new(settings->RdpKeyFile); if (!settings->RdpServerRsaKey) { - fprintf(stderr, "%s: inavlid RDP key file %s\n", __FUNCTION__, settings->RdpKeyFile); + fprintf(stderr, "%s: invalid RDP key file %s\n", __FUNCTION__, settings->RdpKeyFile); return FALSE; } From 5906efc5f779e0eef6c19d4885783d54851a9e83 Mon Sep 17 00:00:00 2001 From: Mike McDonald Date: Wed, 13 Aug 2014 11:01:43 -0400 Subject: [PATCH 101/170] Fixed a FreeRDP server problem which prevented RDP security from being negotiated. --- libfreerdp/core/nego.c | 49 +++++++++++++++++++++++++----------------- 1 file changed, 29 insertions(+), 20 deletions(-) diff --git a/libfreerdp/core/nego.c b/libfreerdp/core/nego.c index c250b4be9..716a2b77d 100644 --- a/libfreerdp/core/nego.c +++ b/libfreerdp/core/nego.c @@ -890,21 +890,7 @@ BOOL nego_send_negotiation_response(rdpNego* nego) bm = Stream_GetPosition(s); Stream_Seek(s, length); - if (nego->selected_protocol > PROTOCOL_RDP) - { - flags = EXTENDED_CLIENT_DATA_SUPPORTED; - - if (settings->SupportGraphicsPipeline) - flags |= DYNVC_GFX_PROTOCOL_SUPPORTED; - - /* RDP_NEG_DATA must be present for TLS and NLA */ - Stream_Write_UINT8(s, TYPE_RDP_NEG_RSP); - Stream_Write_UINT8(s, flags); /* flags */ - Stream_Write_UINT16(s, 8); /* RDP_NEG_DATA length (8) */ - Stream_Write_UINT32(s, nego->selected_protocol); /* selectedProtocol */ - length += 8; - } - else if (!settings->RdpSecurity) + if ((nego->selected_protocol == PROTOCOL_RDP) && !settings->RdpSecurity) { flags = 0; @@ -912,14 +898,28 @@ BOOL nego_send_negotiation_response(rdpNego* nego) Stream_Write_UINT8(s, flags); /* flags */ Stream_Write_UINT16(s, 8); /* RDP_NEG_DATA length (8) */ /* - * TODO: Check for other possibilities, - * like SSL_NOT_ALLOWED_BY_SERVER. - */ + * TODO: Check for other possibilities, + * like SSL_NOT_ALLOWED_BY_SERVER. + */ fprintf(stderr, "%s: client supports only Standard RDP Security\n", __FUNCTION__); Stream_Write_UINT32(s, SSL_REQUIRED_BY_SERVER); length += 8; status = FALSE; } + else + { + flags = EXTENDED_CLIENT_DATA_SUPPORTED; + + if (settings->SupportGraphicsPipeline) + flags |= DYNVC_GFX_PROTOCOL_SUPPORTED; + + /* RDP_NEG_DATA must be present for TLS, NLA, and RDP */ + Stream_Write_UINT8(s, TYPE_RDP_NEG_RSP); + Stream_Write_UINT8(s, flags); /* flags */ + Stream_Write_UINT16(s, 8); /* RDP_NEG_DATA length (8) */ + Stream_Write_UINT32(s, nego->selected_protocol); /* selectedProtocol */ + length += 8; + } em = Stream_GetPosition(s); Stream_SetPosition(s, bm); @@ -951,13 +951,22 @@ BOOL nego_send_negotiation_response(rdpNego* nego) if (!settings->LocalConnection) { - settings->DisableEncryption = TRUE; + settings->DisableEncryption = FALSE; settings->EncryptionMethods = ENCRYPTION_METHOD_40BIT | ENCRYPTION_METHOD_56BIT | ENCRYPTION_METHOD_128BIT | ENCRYPTION_METHOD_FIPS; settings->EncryptionLevel = ENCRYPTION_LEVEL_CLIENT_COMPATIBLE; } - if (settings->DisableEncryption && !settings->RdpServerRsaKey && !settings->RdpKeyFile) + if (settings->DisableEncryption) + { + fprintf(stderr, "Encryption is disabled.\n"); return FALSE; + } + + if (!settings->RdpServerRsaKey && !settings->RdpKeyFile) + { + fprintf(stderr, "Missing server certificate\n"); + return FALSE; + } } else if (settings->SelectedProtocol == PROTOCOL_TLS) { From 53e19e0da7ecea476241abc4f25318d4f69e1e11 Mon Sep 17 00:00:00 2001 From: Pavel Tsekov Date: Thu, 14 Aug 2014 00:31:15 +0300 Subject: [PATCH 102/170] Fix conversion of 24bpp bitmaps to 32bpp fb when CLRCONV_INVERT and/or CLRCONV_ALPHA is set. * include/freerdp/codec/color.h (RGB32_to_BGR32): New inline function. * libfreerdp/codec/color.c: (freerdp_image_convert_24bpp): Fix CLRCONV_ALPHA and CLRCONV_INVERT processing for 32bpp destination. Unroll the conversion loop to process four pixels in one go using 32-bit load and store operations. --- include/freerdp/codec/color.h | 8 ++++ libfreerdp/codec/color.c | 83 ++++++++++++++++++++++++++++++++--- 2 files changed, 84 insertions(+), 7 deletions(-) diff --git a/include/freerdp/codec/color.h b/include/freerdp/codec/color.h index c0c6f1b67..47c6126e3 100644 --- a/include/freerdp/codec/color.h +++ b/include/freerdp/codec/color.h @@ -373,6 +373,14 @@ typedef CLRCONV* HCLRCONV; typedef BYTE* (*p_freerdp_image_convert)(BYTE* srcData, BYTE* dstData, int width, int height, int srcBpp, int dstBpp, HCLRCONV clrconv); +static INLINE UINT32 RGB32_to_BGR32(UINT32 pixel) +{ + UINT32 temp; + + temp = (pixel ^ (pixel >> 16)) & ((1 << 8) - 1); + return (pixel ^ (temp | (temp << 16))); +} + FREERDP_API int freerdp_get_pixel(BYTE* data, int x, int y, int width, int height, int bpp); FREERDP_API void freerdp_set_pixel(BYTE* data, int x, int y, int width, int height, int bpp, int pixel); diff --git a/libfreerdp/codec/color.c b/libfreerdp/codec/color.c index 305801de7..365bdde46 100644 --- a/libfreerdp/codec/color.c +++ b/libfreerdp/codec/color.c @@ -705,7 +705,9 @@ BYTE* freerdp_image_convert_24bpp(BYTE* srcData, BYTE* dstData, int width, int h if (dstBpp == 32) { - BYTE* dstp; + UINT32 pixel, alpha_mask, temp; + UINT32* srcp; + UINT32* dstp; if (!dstData) dstData = (BYTE*) _aligned_malloc(width * height * 4, 16); @@ -713,14 +715,81 @@ BYTE* freerdp_image_convert_24bpp(BYTE* srcData, BYTE* dstData, int width, int h if (!dstData) return NULL; - dstp = dstData; + alpha_mask = clrconv->alpha ? 0xFF000000 : 0; - for (i = width * height; i > 0; i--) + srcp = (UINT32*) srcData; + dstp = (UINT32*) dstData; + + if (clrconv->invert) { - *(dstp++) = *(srcData++); - *(dstp++) = *(srcData++); - *(dstp++) = *(srcData++); - *(dstp++) = 0xFF; + /* Each iteration handles four pixels using 32-bit load and + store operations. */ + for (i = ((width * height) / 4); i > 0; i--) + { + temp = 0; + + pixel = temp; + temp = *srcp++; + pixel |= temp & 0x00FFFFFF; + temp = temp >> 24; + *dstp++ = alpha_mask | RGB32_to_BGR32(pixel); + + pixel = temp; + temp = *srcp++; + pixel |= (temp & 0x0000FFFF) << 8; + temp = temp >> 16; + *dstp++ = alpha_mask | RGB32_to_BGR32(pixel); + + pixel = temp; + temp = *srcp++; + pixel |= (temp & 0x000000FF) << 16; + temp = temp >> 8; + *dstp++ = alpha_mask | RGB32_to_BGR32(pixel); + + *dstp++ = alpha_mask | RGB32_to_BGR32(temp); + } + + /* Handle any remainder. */ + for (i = (width * height) % 4; i > 0; i--) + { + pixel = ABGR32(alpha_mask, srcData[2], srcData[1], srcData[0]); + *dstp++ = pixel; + srcData += 3; + } + } + else + { + for (i = ((width * height) / 4); i > 0; i--) + { + temp = 0; + + pixel = temp; + temp = *srcp++; + pixel |= temp & 0x00FFFFFF; + temp = temp >> 24; + *dstp++ = alpha_mask | pixel; + + pixel = temp; + temp = *srcp++; + pixel |= (temp & 0x0000FFFF) << 8; + temp = temp >> 16; + *dstp++ = alpha_mask | pixel; + + pixel = temp; + temp = *srcp++; + pixel |= (temp & 0x000000FF) << 16; + temp = temp >> 8; + *dstp++ = alpha_mask | pixel; + + *dstp++ = alpha_mask | temp; + } + + for (i = (width * height) % 4; i > 0; i--) + { + pixel = ARGB32(alpha_mask, srcData[2], srcData[1], srcData[0]); + *dstp++ = pixel; + srcData += 3; + } } return dstData; From 86a68f0c0f5888a34f0e0edb7c50a37631be7f9f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Wed, 13 Aug 2014 17:48:57 -0400 Subject: [PATCH 103/170] shadow: start Windows Desktop Sharing API support --- include/freerdp/assistance.h | 3 + libfreerdp/common/assistance.c | 2 +- server/shadow/Win/win_dxgi.h | 2 +- server/shadow/Win/win_shadow.c | 8 +- server/shadow/Win/win_shadow.h | 11 ++ server/shadow/Win/win_wds.c | 273 +++++++++++++++++++++++++++++++++ server/shadow/Win/win_wds.h | 13 +- 7 files changed, 307 insertions(+), 5 deletions(-) diff --git a/include/freerdp/assistance.h b/include/freerdp/assistance.h index 20b183b3b..050f93363 100644 --- a/include/freerdp/assistance.h +++ b/include/freerdp/assistance.h @@ -59,6 +59,9 @@ extern "C" { FREERDP_API BYTE* freerdp_assistance_hex_string_to_bin(const char* str, int* size); FREERDP_API char* freerdp_assistance_bin_to_hex_string(const BYTE* data, int size); +FREERDP_API int freerdp_assistance_parse_connection_string1(rdpAssistanceFile* file); +FREERDP_API int freerdp_assistance_parse_connection_string2(rdpAssistanceFile* file); + FREERDP_API char* freerdp_assistance_generate_pass_stub(DWORD flags); FREERDP_API char* freerdp_assistance_construct_expert_blob(const char* name, const char* pass); FREERDP_API BYTE* freerdp_assistance_encrypt_pass_stub(const char* password, const char* passStub, int* pEncryptedSize); diff --git a/libfreerdp/common/assistance.c b/libfreerdp/common/assistance.c index 5b27afe89..e0e8ae914 100644 --- a/libfreerdp/common/assistance.c +++ b/libfreerdp/common/assistance.c @@ -388,7 +388,7 @@ char* freerdp_assistance_generate_pass_stub(DWORD flags) passStub = (char*) malloc(15); if (!passStub) - return -1; + return NULL; /** * PassStub generation: diff --git a/server/shadow/Win/win_dxgi.h b/server/shadow/Win/win_dxgi.h index 42c42bfbb..1dcdf7ac8 100644 --- a/server/shadow/Win/win_dxgi.h +++ b/server/shadow/Win/win_dxgi.h @@ -20,7 +20,7 @@ #define FREERDP_SHADOW_SERVER_WIN_DXGI_H #if _WIN32_WINNT >= 0x0602 -#define WITH_DXGI_1_2 1 +//#define WITH_DXGI_1_2 1 #endif #ifdef WITH_DXGI_1_2 diff --git a/server/shadow/Win/win_shadow.c b/server/shadow/Win/win_shadow.c index 14db194cc..77adf2a88 100644 --- a/server/shadow/Win/win_shadow.c +++ b/server/shadow/Win/win_shadow.c @@ -357,7 +357,9 @@ int win_shadow_subsystem_init(winShadowSubsystem* subsystem) DeleteDC(hdc); -#ifdef WITH_DXGI_1_2 +#if defined(WITH_WDS_API) + status = win_shadow_wds_init(subsystem); +#elif defined(WITH_DXGI_1_2) status = win_shadow_dxgi_init(subsystem); #endif @@ -389,7 +391,9 @@ int win_shadow_subsystem_uninit(winShadowSubsystem* subsystem) if (!subsystem) return -1; -#ifdef WITH_DXGI_1_2 +#if defined(WITH_WDS_API) + win_shadow_wds_uninit(subsystem); +#elif defined(WITH_DXGI_1_2) win_shadow_dxgi_uninit(subsystem); #endif diff --git a/server/shadow/Win/win_shadow.h b/server/shadow/Win/win_shadow.h index e31444fbc..d224acd40 100644 --- a/server/shadow/Win/win_shadow.h +++ b/server/shadow/Win/win_shadow.h @@ -19,6 +19,8 @@ #ifndef FREERDP_SHADOW_SERVER_WIN_H #define FREERDP_SHADOW_SERVER_WIN_H +#include + #include typedef struct win_shadow_subsystem winShadowSubsystem; @@ -29,6 +31,7 @@ typedef struct win_shadow_subsystem winShadowSubsystem; #include #include +#include "win_wds.h" #include "win_dxgi.h" struct win_shadow_subsystem @@ -39,6 +42,14 @@ struct win_shadow_subsystem int width; int height; +#ifdef WITH_WDS_API + rdpAssistanceFile* pAssistanceFile; + _IRDPSessionEvents* pSessionEvents; + IRDPSRAPISharingSession* pSharingSession; + IRDPSRAPIInvitation* pInvitation; + IRDPSRAPIInvitationManager* pInvitationMgr; +#endif + #ifdef WITH_DXGI_1_2 UINT pendingFrames; BYTE* MetadataBuffer; diff --git a/server/shadow/Win/win_wds.c b/server/shadow/Win/win_wds.c index e35e68c3d..90615c0aa 100644 --- a/server/shadow/Win/win_wds.c +++ b/server/shadow/Win/win_wds.c @@ -25,3 +25,276 @@ #include "win_wds.h" +#undef DEFINE_GUID +#define INITGUID + +#include + +DEFINE_GUID(CLSID_RDPSession,0x9B78F0E6,0x3E05,0x4A5B,0xB2,0xE8,0xE7,0x43,0xA8,0x95,0x6B,0x65); +DEFINE_GUID(DIID__IRDPSessionEvents,0x98a97042,0x6698,0x40e9,0x8e,0xfd,0xb3,0x20,0x09,0x90,0x00,0x4b); +DEFINE_GUID(IID_IRDPSRAPISharingSession,0xeeb20886,0xe470,0x4cf6,0x84,0x2b,0x27,0x39,0xc0,0xec,0x5c,0xfb); + +static HRESULT STDMETHODCALLTYPE Shadow_IRDPSessionEvents_QueryInterface( + __RPC__in _IRDPSessionEvents * This, + /* [in] */ __RPC__in REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject) +{ + GUID* pGuid = (GUID*) riid; + + printf("Shadow_IRDPSessionEvents_QueryInterface\n"); + + printf("{%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}\n", + pGuid->Data1, pGuid->Data2, pGuid->Data3, + pGuid->Data4[0], pGuid->Data4[1], + pGuid->Data4[2], pGuid->Data4[3], pGuid->Data4[4], + pGuid->Data4[5], pGuid->Data4[6], pGuid->Data4[7]); + + if (!IsEqualIID(riid, &DIID__IRDPSessionEvents)) + { + *ppvObject = NULL; + return E_NOINTERFACE; + } + + *ppvObject = This; + This->lpVtbl->AddRef(This); + + return S_OK; +} + +static ULONG STDMETHODCALLTYPE Shadow_IRDPSessionEvents_AddRef( + __RPC__in _IRDPSessionEvents * This) +{ + printf("Shadow_IRDPSessionEvents_AddRef\n"); + return 1; +} + +static ULONG STDMETHODCALLTYPE Shadow_IRDPSessionEvents_Release( + __RPC__in _IRDPSessionEvents * This) +{ + printf("Shadow_IRDPSessionEvents_Release\n"); + return 0; +} + +static HRESULT STDMETHODCALLTYPE Shadow_IRDPSessionEvents_GetTypeInfoCount( + __RPC__in _IRDPSessionEvents * This, + /* [out] */ __RPC__out UINT *pctinfo) +{ + printf("Shadow_IRDPSessionEvents_GetTypeInfoCount\n"); + *pctinfo = 1; + return S_OK; +} + +static HRESULT STDMETHODCALLTYPE Shadow_IRDPSessionEvents_GetTypeInfo( + __RPC__in _IRDPSessionEvents * This, + /* [in] */ UINT iTInfo, + /* [in] */ LCID lcid, + /* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo) +{ + printf("Shadow_IRDPSessionEvents_GetTypeInfo\n"); + return S_OK; +} + +static HRESULT STDMETHODCALLTYPE Shadow_IRDPSessionEvents_GetIDsOfNames( + __RPC__in _IRDPSessionEvents * This, + /* [in] */ __RPC__in REFIID riid, + /* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames, + /* [range][in] */ __RPC__in_range(0,16384) UINT cNames, + /* [in] */ LCID lcid, + /* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId) +{ + printf("Shadow_IRDPSessionEvents_GetIDsOfNames\n"); + return S_OK; +} + +static HRESULT STDMETHODCALLTYPE Shadow_IRDPSessionEvents_Invoke( + _IRDPSessionEvents * This, + /* [annotation][in] */ + _In_ DISPID dispIdMember, + /* [annotation][in] */ + _In_ REFIID riid, + /* [annotation][in] */ + _In_ LCID lcid, + /* [annotation][in] */ + _In_ WORD wFlags, + /* [annotation][out][in] */ + _In_ DISPPARAMS *pDispParams, + /* [annotation][out] */ + _Out_opt_ VARIANT *pVarResult, + /* [annotation][out] */ + _Out_opt_ EXCEPINFO *pExcepInfo, + /* [annotation][out] */ + _Out_opt_ UINT *puArgErr) +{ + printf("Shadow_IRDPSessionEvents_Invoke\n"); + return S_OK; +} + +static _IRDPSessionEventsVtbl Shadow_IRDPSessionEventsVtbl = +{ + /* IUnknown */ + Shadow_IRDPSessionEvents_QueryInterface, + Shadow_IRDPSessionEvents_AddRef, + Shadow_IRDPSessionEvents_Release, + + /* IDispatch */ + Shadow_IRDPSessionEvents_GetTypeInfoCount, + Shadow_IRDPSessionEvents_GetTypeInfo, + Shadow_IRDPSessionEvents_GetIDsOfNames, + Shadow_IRDPSessionEvents_Invoke +}; + +static _IRDPSessionEvents Shadow_IRDPSessionEvents = +{ + &Shadow_IRDPSessionEventsVtbl +}; + +int win_shadow_wds_init(winShadowSubsystem* subsystem) +{ + int status; + HRESULT hr; + DWORD dwCookie; + IUnknown* pUnknown; + BSTR bstrAuthString; + BSTR bstrGroupName; + BSTR bstrPassword; + BSTR bstrConnectionString; + IConnectionPoint* pCP; + IConnectionPointContainer* pCPC; + + hr = CoInitializeEx(NULL, COINIT_APARTMENTTHREADED); + + if (FAILED(hr)) + { + fprintf(stderr, "CoInitialize() failure\n"); + return -1; + } + + hr = CoCreateInstance(&CLSID_RDPSession, NULL, CLSCTX_ALL, + &IID_IRDPSRAPISharingSession, (void**) &(subsystem->pSharingSession)); + + if (FAILED(hr)) + { + fprintf(stderr, "CoCreateInstance(IRDPSRAPISharingSession) failure: 0x%08X\n", hr); + return -1; + } + + pUnknown = (IUnknown*) subsystem->pSharingSession; + hr = pUnknown->lpVtbl->QueryInterface(pUnknown, &IID_IConnectionPointContainer, (void**) &pCPC); + + if (FAILED(hr)) + { + fprintf(stderr, "QueryInterface(IID_IConnectionPointContainer) failure: 0x%08X\n", hr); + return -1; + } + + pCPC->lpVtbl->FindConnectionPoint(pCPC, &DIID__IRDPSessionEvents, &pCP); + + if (FAILED(hr)) + { + fprintf(stderr, "IConnectionPointContainer::FindConnectionPoint(_IRDPSessionEvents) failure: 0x%08X\n", hr); + return -1; + } + + hr = pCP->lpVtbl->Advise(pCP, (IUnknown*) &Shadow_IRDPSessionEvents, &dwCookie); + + if (FAILED(hr)) + { + fprintf(stderr, "IConnectionPoint::Advise(Shadow_IRDPSessionEvents) failure: 0x%08X\n", hr); + return -1; + } + + hr = subsystem->pSharingSession->lpVtbl->Open(subsystem->pSharingSession); + + if (FAILED(hr)) + { + fprintf(stderr, "IRDPSRAPISharingSession::Open() failure: 0x%08X\n", hr); + return -1; + } + + hr = subsystem->pSharingSession->lpVtbl->get_Invitations(subsystem->pSharingSession, + &(subsystem->pInvitationMgr)); + + if (FAILED(hr)) + { + fprintf(stderr, "IRDPSRAPISharingSession::get_Invitations() failure\n"); + return -1; + } + + bstrAuthString = SysAllocString(L"Shadow"); + bstrGroupName = SysAllocString(L"ShadowGroup"); + bstrPassword = SysAllocString(L"Shadow123!"); + + hr = subsystem->pInvitationMgr->lpVtbl->CreateInvitation(subsystem->pInvitationMgr, bstrAuthString, + bstrGroupName, bstrPassword, 5, &(subsystem->pInvitation)); + + SysFreeString(bstrAuthString); + SysFreeString(bstrGroupName); + SysFreeString(bstrPassword); + + if (FAILED(hr)) + { + fprintf(stderr, "IRDPSRAPIInvitationManager::CreateInvitation() failure: 0x%08X\n", hr); + return -1; + } + + subsystem->pInvitation->lpVtbl->get_ConnectionString(subsystem->pInvitation, &bstrConnectionString); + + if (FAILED(hr)) + { + fprintf(stderr, "IRDPSRAPIInvitation::get_ConnectionString() failure: 0x%08X\n", hr); + return -1; + } + + subsystem->pAssistanceFile = freerdp_assistance_file_new(); + + ConvertFromUnicode(CP_UTF8, 0, (WCHAR*) bstrConnectionString, ((UINT32*) bstrConnectionString)[-1], + &(subsystem->pAssistanceFile->ConnectionString2), 0, NULL, NULL); + + status = freerdp_assistance_parse_connection_string2(subsystem->pAssistanceFile); + + if (status < 0) + return -1; + + printf("ConnectionString: %s\n", subsystem->pAssistanceFile->ConnectionString2); + + printf("RemoteAssistanceSessionId: %s\n", subsystem->pAssistanceFile->RASessionId); + printf("RemoteAssistanceRCTicket: %s\n", subsystem->pAssistanceFile->RCTicket); + printf("RemoteAssistancePassStub: %s\n", subsystem->pAssistanceFile->PassStub); + printf("RemoteAssistanceMachineAddress: %s\n", subsystem->pAssistanceFile->MachineAddress); + printf("RemoteAssistanceMachinePort: %s\n", subsystem->pAssistanceFile->MachinePort); + + return 1; +} + +int win_shadow_wds_uninit(winShadowSubsystem* subsystem) +{ + printf("win_shadow_wds_uninit\n"); + + if (subsystem->pSharingSession) + { + subsystem->pSharingSession->lpVtbl->Close(subsystem->pSharingSession); + subsystem->pSharingSession->lpVtbl->Release(subsystem->pSharingSession); + subsystem->pSharingSession = NULL; + } + + if (subsystem->pInvitationMgr) + { + subsystem->pInvitationMgr->lpVtbl->Release(subsystem->pInvitationMgr); + subsystem->pInvitationMgr = NULL; + } + + if (subsystem->pInvitation) + { + subsystem->pInvitation->lpVtbl->Release(subsystem->pInvitation); + subsystem->pInvitation = NULL; + } + + if (subsystem->pAssistanceFile) + { + freerdp_assistance_file_free(subsystem->pAssistanceFile); + subsystem->pAssistanceFile = NULL; + } + + return 1; +} diff --git a/server/shadow/Win/win_wds.h b/server/shadow/Win/win_wds.h index f0f06a8fa..346885586 100644 --- a/server/shadow/Win/win_wds.h +++ b/server/shadow/Win/win_wds.h @@ -19,11 +19,22 @@ #ifndef FREERDP_SHADOW_SERVER_WIN_WDS_H #define FREERDP_SHADOW_SERVER_WIN_WDS_H +#define WITH_WDS_API 1 + +#ifndef CINTERFACE +#define CINTERFACE +#endif + +#include + +#include "win_shadow.h" + #ifdef __cplusplus extern "C" { #endif - +int win_shadow_wds_init(winShadowSubsystem* subsystem); +int win_shadow_wds_uninit(winShadowSubsystem* subsystem); #ifdef __cplusplus } From ec831a3ce0cceac8b3f9ba3e1b80637825a0242c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Wed, 13 Aug 2014 20:12:09 -0400 Subject: [PATCH 104/170] shadow: improve WDS subsystem --- server/shadow/Win/win_shadow.h | 4 + server/shadow/Win/win_wds.c | 175 +++++++++++++++++++++++++++++++-- 2 files changed, 173 insertions(+), 6 deletions(-) diff --git a/server/shadow/Win/win_shadow.h b/server/shadow/Win/win_shadow.h index d224acd40..a47cf3cb2 100644 --- a/server/shadow/Win/win_shadow.h +++ b/server/shadow/Win/win_shadow.h @@ -48,6 +48,10 @@ struct win_shadow_subsystem IRDPSRAPISharingSession* pSharingSession; IRDPSRAPIInvitation* pInvitation; IRDPSRAPIInvitationManager* pInvitationMgr; + IRDPSRAPISessionProperties* pSessionProperties; + IRDPSRAPIVirtualChannelManager* pVirtualChannelMgr; + IRDPSRAPIApplicationFilter* pApplicationFilter; + IRDPSRAPIAttendeeManager* pAttendeeMgr; #endif #ifdef WITH_DXGI_1_2 diff --git a/server/shadow/Win/win_wds.c b/server/shadow/Win/win_wds.c index 90615c0aa..098ab205f 100644 --- a/server/shadow/Win/win_wds.c +++ b/server/shadow/Win/win_wds.c @@ -33,6 +33,10 @@ DEFINE_GUID(CLSID_RDPSession,0x9B78F0E6,0x3E05,0x4A5B,0xB2,0xE8,0xE7,0x43,0xA8,0x95,0x6B,0x65); DEFINE_GUID(DIID__IRDPSessionEvents,0x98a97042,0x6698,0x40e9,0x8e,0xfd,0xb3,0x20,0x09,0x90,0x00,0x4b); DEFINE_GUID(IID_IRDPSRAPISharingSession,0xeeb20886,0xe470,0x4cf6,0x84,0x2b,0x27,0x39,0xc0,0xec,0x5c,0xfb); +DEFINE_GUID(IID_IRDPSRAPIAttendeeManager,0xba3a37e8,0x33da,0x4749,0x8d,0xa0,0x07,0xfa,0x34,0xda,0x79,0x44); +DEFINE_GUID(IID_IRDPSRAPISessionProperties,0x339b24f2,0x9bc0,0x4f16,0x9a,0xac,0xf1,0x65,0x43,0x3d,0x13,0xd4); +DEFINE_GUID(CLSID_RDPSRAPIApplicationFilter,0xe35ace89,0xc7e8,0x427e,0xa4,0xf9,0xb9,0xda,0x07,0x28,0x26,0xbd); +DEFINE_GUID(CLSID_RDPSRAPIInvitationManager,0x53d9c9db,0x75ab,0x4271,0x94,0x8a,0x4c,0x4e,0xb3,0x6a,0x8f,0x2b); static HRESULT STDMETHODCALLTYPE Shadow_IRDPSessionEvents_QueryInterface( __RPC__in _IRDPSessionEvents * This, @@ -50,13 +54,17 @@ static HRESULT STDMETHODCALLTYPE Shadow_IRDPSessionEvents_QueryInterface( pGuid->Data4[2], pGuid->Data4[3], pGuid->Data4[4], pGuid->Data4[5], pGuid->Data4[6], pGuid->Data4[7]); - if (!IsEqualIID(riid, &DIID__IRDPSessionEvents)) + *ppvObject = NULL; + + if (IsEqualIID(riid, &DIID__IRDPSessionEvents) || + IsEqualIID(riid, &IID_IDispatch) || IsEqualIID(riid, &IID_IUnknown)) { - *ppvObject = NULL; - return E_NOINTERFACE; + *ppvObject = This; } - *ppvObject = This; + if (!(*ppvObject)) + return E_NOINTERFACE; + This->lpVtbl->AddRef(This); return S_OK; @@ -92,7 +100,7 @@ static HRESULT STDMETHODCALLTYPE Shadow_IRDPSessionEvents_GetTypeInfo( /* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo) { printf("Shadow_IRDPSessionEvents_GetTypeInfo\n"); - return S_OK; + return E_NOTIMPL; } static HRESULT STDMETHODCALLTYPE Shadow_IRDPSessionEvents_GetIDsOfNames( @@ -104,7 +112,7 @@ static HRESULT STDMETHODCALLTYPE Shadow_IRDPSessionEvents_GetIDsOfNames( /* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId) { printf("Shadow_IRDPSessionEvents_GetIDsOfNames\n"); - return S_OK; + return E_NOTIMPL; } static HRESULT STDMETHODCALLTYPE Shadow_IRDPSessionEvents_Invoke( @@ -154,14 +162,26 @@ int win_shadow_wds_init(winShadowSubsystem* subsystem) int status; HRESULT hr; DWORD dwCookie; + long left, top; + long right, bottom; IUnknown* pUnknown; BSTR bstrAuthString; BSTR bstrGroupName; BSTR bstrPassword; BSTR bstrConnectionString; + BSTR bstrPropertyName; + VARIANT varPropertyValue; IConnectionPoint* pCP; IConnectionPointContainer* pCPC; + hr = OleInitialize(NULL); + + if (FAILED(hr)) + { + fprintf(stderr, "OleInitialize() failure\n"); + return -1; + } + hr = CoInitializeEx(NULL, COINIT_APARTMENTTHREADED); if (FAILED(hr)) @@ -204,6 +224,109 @@ int win_shadow_wds_init(winShadowSubsystem* subsystem) return -1; } + hr = subsystem->pSharingSession->lpVtbl->put_ColorDepth(subsystem->pSharingSession, 32); + + if (FAILED(hr)) + { + fprintf(stderr, "IRDPSRAPISharingSession::put_ColorDepth() failure: 0x%08X\n", hr); + return -1; + } + + hr = subsystem->pSharingSession->lpVtbl->GetDesktopSharedRect(subsystem->pSharingSession, + &left, &top, &right, &bottom); + + if (FAILED(hr)) + { + fprintf(stderr, "IRDPSRAPISharingSession::GetDesktopSharedRect() failure: 0x%08X\n", hr); + return -1; + } + + printf("GetDesktopSharedRect(): left: %d top: %d right: %d bottom: %d\n", + left, top, right, bottom); + + hr = subsystem->pSharingSession->lpVtbl->get_VirtualChannelManager(subsystem->pSharingSession, + &(subsystem->pVirtualChannelMgr)); + + if (FAILED(hr)) + { + fprintf(stderr, "IRDPSRAPISharingSession::get_VirtualChannelManager() failure: 0x%08X\n", hr); + return -1; + } + + hr = subsystem->pSharingSession->lpVtbl->get_ApplicationFilter(subsystem->pSharingSession, + &(subsystem->pApplicationFilter)); + + if (FAILED(hr)) + { + fprintf(stderr, "IRDPSRAPISharingSession::get_ApplicationFilter() failure: 0x%08X\n", hr); + return -1; + } + + hr = subsystem->pSharingSession->lpVtbl->get_Attendees(subsystem->pSharingSession, + &(subsystem->pAttendeeMgr)); + + if (FAILED(hr)) + { + fprintf(stderr, "IRDPSRAPISharingSession::get_Attendees() failure: 0x%08X\n", hr); + return -1; + } + + hr = subsystem->pSharingSession->lpVtbl->get_Properties(subsystem->pSharingSession, &(subsystem->pSessionProperties)); + + if (FAILED(hr)) + { + fprintf(stderr, "IRDPSRAPISharingSession::get_Properties() failure: 0x%08X\n", hr); + return -1; + } + + bstrPropertyName = SysAllocString(L"PortId"); + varPropertyValue.vt = VT_I4; + varPropertyValue.intVal = 40000; + + hr = subsystem->pSessionProperties->lpVtbl->put_Property(subsystem->pSessionProperties, + bstrPropertyName, varPropertyValue); + + SysFreeString(bstrPropertyName); + + if (FAILED(hr)) + { + fprintf(stderr, "IRDPSRAPISessionProperties::put_Property(PortId) failure: 0x%08X\n", hr); + return -1; + } + + bstrPropertyName = SysAllocString(L"DrvConAttach"); + varPropertyValue.vt = VT_BOOL; + varPropertyValue.boolVal = VARIANT_TRUE; + + hr = subsystem->pSessionProperties->lpVtbl->put_Property(subsystem->pSessionProperties, + bstrPropertyName, varPropertyValue); + + SysFreeString(bstrPropertyName); + + if (FAILED(hr)) + { + fprintf(stderr, "IRDPSRAPISessionProperties::put_Property(DrvConAttach) failure: 0x%08X\n", hr); + return -1; + } + + bstrPropertyName = SysAllocString(L"PortProtocol"); + varPropertyValue.vt = VT_I4; + + //varPropertyValue.intVal = 0; // AF_UNSPEC + varPropertyValue.intVal = 2; // AF_INET + //varPropertyValue.intVal = 23; // AF_INET6 + + hr = subsystem->pSessionProperties->lpVtbl->put_Property(subsystem->pSessionProperties, + bstrPropertyName, varPropertyValue); + + SysFreeString(bstrPropertyName); + + if (FAILED(hr)) + { + fprintf(stderr, "IRDPSRAPISessionProperties::put_Property(PortProtocol) failure: 0x%08X\n", hr); + return -1; + } + hr = subsystem->pSharingSession->lpVtbl->Open(subsystem->pSharingSession); if (FAILED(hr)) @@ -264,6 +387,22 @@ int win_shadow_wds_init(winShadowSubsystem* subsystem) printf("RemoteAssistanceMachineAddress: %s\n", subsystem->pAssistanceFile->MachineAddress); printf("RemoteAssistanceMachinePort: %s\n", subsystem->pAssistanceFile->MachinePort); + if (1) + { + FILE* fp; + size_t size; + + fp = fopen("inv.xml", "w+b"); + + if (fp) + { + size = strlen(subsystem->pAssistanceFile->ConnectionString2); + fwrite(subsystem->pAssistanceFile->ConnectionString2, 1, size, fp); + fwrite("\r\n", 1, 2, fp); + fclose(fp); + } + } + return 1; } @@ -278,6 +417,30 @@ int win_shadow_wds_uninit(winShadowSubsystem* subsystem) subsystem->pSharingSession = NULL; } + if (subsystem->pVirtualChannelMgr) + { + subsystem->pVirtualChannelMgr->lpVtbl->Release(subsystem->pVirtualChannelMgr); + subsystem->pVirtualChannelMgr = NULL; + } + + if (subsystem->pApplicationFilter) + { + subsystem->pApplicationFilter->lpVtbl->Release(subsystem->pApplicationFilter); + subsystem->pApplicationFilter = NULL; + } + + if (subsystem->pAttendeeMgr) + { + subsystem->pAttendeeMgr->lpVtbl->Release(subsystem->pAttendeeMgr); + subsystem->pAttendeeMgr = NULL; + } + + if (subsystem->pSessionProperties) + { + subsystem->pSessionProperties->lpVtbl->Release(subsystem->pSessionProperties); + subsystem->pSessionProperties = NULL; + } + if (subsystem->pInvitationMgr) { subsystem->pInvitationMgr->lpVtbl->Release(subsystem->pInvitationMgr); From 494ca1f1a332d0ee33bc994b42abae9e06d8850f Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Thu, 14 Aug 2014 10:36:50 +0200 Subject: [PATCH 105/170] Added winpr functions to generate a stacktrace. Added libcorkscrew headers for stacktrace on android. Added execinfo.h detection for stacktrace on linux. --- CMakeLists.txt | 1 + config.h.in | 2 +- winpr/libwinpr/utils/CMakeLists.txt | 5 + winpr/libwinpr/utils/corkscrew/backtrace.h | 118 ++++++ winpr/libwinpr/utils/corkscrew/demangle.h | 42 +++ winpr/libwinpr/utils/corkscrew/map_info.h | 74 ++++ winpr/libwinpr/utils/corkscrew/ptrace.h | 134 +++++++ winpr/libwinpr/utils/corkscrew/symbol_table.h | 59 +++ winpr/libwinpr/utils/debug.c | 339 ++++++++++++++++++ 9 files changed, 773 insertions(+), 1 deletion(-) create mode 100644 winpr/libwinpr/utils/corkscrew/backtrace.h create mode 100644 winpr/libwinpr/utils/corkscrew/demangle.h create mode 100644 winpr/libwinpr/utils/corkscrew/map_info.h create mode 100644 winpr/libwinpr/utils/corkscrew/ptrace.h create mode 100644 winpr/libwinpr/utils/corkscrew/symbol_table.h create mode 100644 winpr/libwinpr/utils/debug.c diff --git a/CMakeLists.txt b/CMakeLists.txt index 1a19ad718..a50723f86 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -263,6 +263,7 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DWINPR_EXPORTS -DFREERDP_EXPORTS") if(NOT IOS) check_include_files(fcntl.h HAVE_FCNTL_H) check_include_files(unistd.h HAVE_UNISTD_H) + check_include_files(execinfo.h HAVE_EXECINFO_H) check_include_files(stdint.h HAVE_STDINT_H) check_include_files(inttypes.h HAVE_INTTYPES_H) check_include_files(sys/modem.h HAVE_SYS_MODEM_H) diff --git a/config.h.in b/config.h.in index e0da60c6a..b196cc5ae 100644 --- a/config.h.in +++ b/config.h.in @@ -27,7 +27,7 @@ #cmakedefine HAVE_POLL_H #cmakedefine HAVE_PTHREAD_GNU_EXT #cmakedefine HAVE_VALGRIND_MEMCHECK_H - +#cmakedefine HAVE_EXECINFO_H /* Options */ #cmakedefine WITH_PROFILER diff --git a/winpr/libwinpr/utils/CMakeLists.txt b/winpr/libwinpr/utils/CMakeLists.txt index d8b758bbe..8f677937f 100644 --- a/winpr/libwinpr/utils/CMakeLists.txt +++ b/winpr/libwinpr/utils/CMakeLists.txt @@ -77,9 +77,14 @@ set(${MODULE_PREFIX}_SRCS ntlm.c print.c stream.c + debug.c cmdline.c ssl.c) +if (ANDROID) + include_directories(${CMAKE_CURRENT_SOURCE_DIR}) +endif() + winpr_module_add(${${MODULE_PREFIX}_SRCS} ${${MODULE_PREFIX}_COLLECTIONS_SRCS} ${${MODULE_PREFIX}_TRIO_SRCS} diff --git a/winpr/libwinpr/utils/corkscrew/backtrace.h b/winpr/libwinpr/utils/corkscrew/backtrace.h new file mode 100644 index 000000000..a24ac21aa --- /dev/null +++ b/winpr/libwinpr/utils/corkscrew/backtrace.h @@ -0,0 +1,118 @@ +/* + * Copyright (C) 2011 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/* A stack unwinder. */ + +#ifndef _CORKSCREW_BACKTRACE_H +#define _CORKSCREW_BACKTRACE_H + +#ifdef __cplusplus +extern "C" { +#endif + +#include +#include +#include +#include + + /* + * Describes a single frame of a backtrace. + */ + typedef struct + { + uintptr_t absolute_pc; /* absolute PC offset */ + uintptr_t stack_top; /* top of stack for this frame */ + size_t stack_size; /* size of this stack frame */ + } backtrace_frame_t; + + /* + * Describes the symbols associated with a backtrace frame. + */ + typedef struct + { + uintptr_t relative_pc; /* relative frame PC offset from the start of the library, + or the absolute PC if the library is unknown */ + uintptr_t relative_symbol_addr; /* relative offset of the symbol from the start of the + library or 0 if the library is unknown */ + char *map_name; /* executable or library name, or NULL if unknown */ + char *symbol_name; /* symbol name, or NULL if unknown */ + char *demangled_name; /* demangled symbol name, or NULL if unknown */ + } backtrace_symbol_t; + + /* + * Unwinds the call stack for the current thread of execution. + * Populates the backtrace array with the program counters from the call stack. + * Returns the number of frames collected, or -1 if an error occurred. + */ + ssize_t unwind_backtrace(backtrace_frame_t *backtrace, size_t ignore_depth, size_t max_depth); + + /* + * Unwinds the call stack for a thread within this process. + * Populates the backtrace array with the program counters from the call stack. + * Returns the number of frames collected, or -1 if an error occurred. + * + * The task is briefly suspended while the backtrace is being collected. + */ + ssize_t unwind_backtrace_thread(pid_t tid, backtrace_frame_t *backtrace, + size_t ignore_depth, size_t max_depth); + + /* + * Unwinds the call stack of a task within a remote process using ptrace(). + * Populates the backtrace array with the program counters from the call stack. + * Returns the number of frames collected, or -1 if an error occurred. + */ + ssize_t unwind_backtrace_ptrace(pid_t tid, const ptrace_context_t *context, + backtrace_frame_t *backtrace, size_t ignore_depth, size_t max_depth); + + /* + * Gets the symbols for each frame of a backtrace. + * The symbols array must be big enough to hold one symbol record per frame. + * The symbols must later be freed using free_backtrace_symbols. + */ + void get_backtrace_symbols(const backtrace_frame_t *backtrace, size_t frames, + backtrace_symbol_t *backtrace_symbols); + + /* + * Gets the symbols for each frame of a backtrace from a remote process. + * The symbols array must be big enough to hold one symbol record per frame. + * The symbols must later be freed using free_backtrace_symbols. + */ + void get_backtrace_symbols_ptrace(const ptrace_context_t *context, + const backtrace_frame_t *backtrace, size_t frames, + backtrace_symbol_t *backtrace_symbols); + + /* + * Frees the storage associated with backtrace symbols. + */ + void free_backtrace_symbols(backtrace_symbol_t *backtrace_symbols, size_t frames); + + enum + { + // A hint for how big to make the line buffer for format_backtrace_line + MAX_BACKTRACE_LINE_LENGTH = 800, + }; + + /** + * Formats a line from a backtrace as a zero-terminated string into the specified buffer. + */ + void format_backtrace_line(unsigned frameNumber, const backtrace_frame_t *frame, + const backtrace_symbol_t *symbol, char *buffer, size_t bufferSize); + +#ifdef __cplusplus +} +#endif + +#endif // _CORKSCREW_BACKTRACE_H diff --git a/winpr/libwinpr/utils/corkscrew/demangle.h b/winpr/libwinpr/utils/corkscrew/demangle.h new file mode 100644 index 000000000..04b022554 --- /dev/null +++ b/winpr/libwinpr/utils/corkscrew/demangle.h @@ -0,0 +1,42 @@ +/* + * Copyright (C) 2011 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/* C++ symbol name demangling. */ + +#ifndef _CORKSCREW_DEMANGLE_H +#define _CORKSCREW_DEMANGLE_H + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Demangles a C++ symbol name. + * If name is NULL or if the name cannot be demangled, returns NULL. + * Otherwise, returns a newly allocated string that contains the demangled name. + * + * The caller must free the returned string using free(). + */ +char* demangle_symbol_name(const char* name); + +#ifdef __cplusplus +} +#endif + +#endif // _CORKSCREW_DEMANGLE_H diff --git a/winpr/libwinpr/utils/corkscrew/map_info.h b/winpr/libwinpr/utils/corkscrew/map_info.h new file mode 100644 index 000000000..14bfad67d --- /dev/null +++ b/winpr/libwinpr/utils/corkscrew/map_info.h @@ -0,0 +1,74 @@ +/* + * Copyright (C) 2011 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/* Process memory map. */ + +#ifndef _CORKSCREW_MAP_INFO_H +#define _CORKSCREW_MAP_INFO_H + +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct map_info { + struct map_info* next; + uintptr_t start; + uintptr_t end; + bool is_readable; + bool is_writable; + bool is_executable; + void* data; // arbitrary data associated with the map by the user, initially NULL + char name[]; +} map_info_t; + +/* Loads memory map from /proc//maps. */ +map_info_t* load_map_info_list(pid_t tid); + +/* Frees memory map. */ +void free_map_info_list(map_info_t* milist); + +/* Finds the memory map that contains the specified address. */ +const map_info_t* find_map_info(const map_info_t* milist, uintptr_t addr); + +/* Returns true if the addr is in a readable map. */ +bool is_readable_map(const map_info_t* milist, uintptr_t addr); +/* Returns true if the addr is in a writable map. */ +bool is_writable_map(const map_info_t* milist, uintptr_t addr); +/* Returns true if the addr is in an executable map. */ +bool is_executable_map(const map_info_t* milist, uintptr_t addr); + +/* Acquires a reference to the memory map for this process. + * The result is cached and refreshed automatically. + * Make sure to release the map info when done. */ +map_info_t* acquire_my_map_info_list(); + +/* Releases a reference to the map info for this process that was + * previous acquired using acquire_my_map_info_list(). */ +void release_my_map_info_list(map_info_t* milist); + +/* Flushes the cached memory map so the next call to + * acquire_my_map_info_list() gets fresh data. */ +void flush_my_map_info_list(); + +#ifdef __cplusplus +} +#endif + +#endif // _CORKSCREW_MAP_INFO_H diff --git a/winpr/libwinpr/utils/corkscrew/ptrace.h b/winpr/libwinpr/utils/corkscrew/ptrace.h new file mode 100644 index 000000000..76276d89a --- /dev/null +++ b/winpr/libwinpr/utils/corkscrew/ptrace.h @@ -0,0 +1,134 @@ +/* + * Copyright (C) 2011 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/* Useful ptrace() utility functions. */ + +#ifndef _CORKSCREW_PTRACE_H +#define _CORKSCREW_PTRACE_H + +#include +#include + +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Stores information about a process that is used for several different + * ptrace() based operations. */ +typedef struct { + map_info_t* map_info_list; +} ptrace_context_t; + +/* Describes how to access memory from a process. */ +typedef struct { + pid_t tid; + const map_info_t* map_info_list; +} memory_t; + +#if __i386__ +/* ptrace() register context. */ +typedef struct pt_regs_x86 { + uint32_t ebx; + uint32_t ecx; + uint32_t edx; + uint32_t esi; + uint32_t edi; + uint32_t ebp; + uint32_t eax; + uint32_t xds; + uint32_t xes; + uint32_t xfs; + uint32_t xgs; + uint32_t orig_eax; + uint32_t eip; + uint32_t xcs; + uint32_t eflags; + uint32_t esp; + uint32_t xss; +} pt_regs_x86_t; +#endif + +#if __mips__ +/* ptrace() GET_REGS context. */ +typedef struct pt_regs_mips { + uint64_t regs[32]; + uint64_t lo; + uint64_t hi; + uint64_t cp0_epc; + uint64_t cp0_badvaddr; + uint64_t cp0_status; + uint64_t cp0_cause; +} pt_regs_mips_t; +#endif + +/* + * Initializes a memory structure for accessing memory from this process. + */ +void init_memory(memory_t* memory, const map_info_t* map_info_list); + +/* + * Initializes a memory structure for accessing memory from another process + * using ptrace(). + */ +void init_memory_ptrace(memory_t* memory, pid_t tid); + +/* + * Reads a word of memory safely. + * If the memory is local, ensures that the address is readable before dereferencing it. + * Returns false and a value of 0xffffffff if the word could not be read. + */ +bool try_get_word(const memory_t* memory, uintptr_t ptr, uint32_t* out_value); + +/* + * Reads a word of memory safely using ptrace(). + * Returns false and a value of 0xffffffff if the word could not be read. + */ +bool try_get_word_ptrace(pid_t tid, uintptr_t ptr, uint32_t* out_value); + +/* + * Loads information needed for examining a remote process using ptrace(). + * The caller must already have successfully attached to the process + * using ptrace(). + * + * The context can be used for any threads belonging to that process + * assuming ptrace() is attached to them before performing the actual + * unwinding. The context can continue to be used to decode backtraces + * even after ptrace() has been detached from the process. + */ +ptrace_context_t* load_ptrace_context(pid_t pid); + +/* + * Frees a ptrace context. + */ +void free_ptrace_context(ptrace_context_t* context); + +/* + * Finds a symbol using ptrace. + * Returns the containing map and information about the symbol, or + * NULL if one or the other is not available. + */ +void find_symbol_ptrace(const ptrace_context_t* context, + uintptr_t addr, const map_info_t** out_map_info, const symbol_t** out_symbol); + +#ifdef __cplusplus +} +#endif + +#endif // _CORKSCREW_PTRACE_H diff --git a/winpr/libwinpr/utils/corkscrew/symbol_table.h b/winpr/libwinpr/utils/corkscrew/symbol_table.h new file mode 100644 index 000000000..4998750bf --- /dev/null +++ b/winpr/libwinpr/utils/corkscrew/symbol_table.h @@ -0,0 +1,59 @@ +/* + * Copyright (C) 2011 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef _CORKSCREW_SYMBOL_TABLE_H +#define _CORKSCREW_SYMBOL_TABLE_H + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct { + uintptr_t start; + uintptr_t end; + char* name; +} symbol_t; + +typedef struct { + symbol_t* symbols; + size_t num_symbols; +} symbol_table_t; + +/* + * Loads a symbol table from a given file. + * Returns NULL on error. + */ +symbol_table_t* load_symbol_table(const char* filename); + +/* + * Frees a symbol table. + */ +void free_symbol_table(symbol_table_t* table); + +/* + * Finds a symbol associated with an address in the symbol table. + * Returns NULL if not found. + */ +const symbol_t* find_symbol(const symbol_table_t* table, uintptr_t addr); + +#ifdef __cplusplus +} +#endif + +#endif // _CORKSCREW_SYMBOL_TABLE_H diff --git a/winpr/libwinpr/utils/debug.c b/winpr/libwinpr/utils/debug.c new file mode 100644 index 000000000..d086b8207 --- /dev/null +++ b/winpr/libwinpr/utils/debug.c @@ -0,0 +1,339 @@ +/** + * WinPR: Windows Portable Runtime + * Print Utils + * + * Copyright 2012 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include + +#if defined(HAVE_EXECINFO_H) +#include +#endif + +#if defined(ANDROID) +#include +#endif + +#include +#include +#include + +#define TAG "com.winpr.utils.debug" +#define LOGT(...) do { WLog_Print(WLog_Get(TAG), WLOG_TRACE, __VA_ARGS__); } while(0) +#define LOGD(...) do { WLog_Print(WLog_Get(TAG), WLOG_DEBUG, __VA_ARGS__); } while(0) +#define LOGI(...) do { WLog_Print(WLog_Get(TAG), WLOG_INFO, __VA_ARGS__); } while(0) +#define LOGW(...) do { WLog_Print(WLog_Get(TAG), WLOG_WARN, __VA_ARGS__); } while(0) +#define LOGE(...) do { WLog_Print(WLog_Get(TAG), WLOG_ERROR, __VA_ARGS__); } while(0) +#define LOGF(...) do { WLog_Print(WLog_Get(TAG), WLOG_FATAL, __VA_ARGS__); } while(0) + +static const char *support_msg = "Invalid stacktrace buffer! check if platform is supported!"; + +#if defined(HAVE_EXECINFO_H) +typedef struct +{ + void **buffer; + size_t max; + size_t used; +} t_execinfo; +#endif + +#if defined(ANDROID) +#include +#include +#include + +typedef struct +{ + backtrace_frame_t *buffer; + size_t max; + size_t used; +} t_corkscrew_data; + +typedef struct +{ + void *hdl; + ssize_t (*unwind_backtrace)(backtrace_frame_t *backtrace, size_t ignore_depth, size_t max_depth); + ssize_t (*unwind_backtrace_thread)(pid_t tid, backtrace_frame_t *backtrace, + size_t ignore_depth, size_t max_depth); + ssize_t (*unwind_backtrace_ptrace)(pid_t tid, const ptrace_context_t *context, + backtrace_frame_t *backtrace, size_t ignore_depth, size_t max_depth); + void (*get_backtrace_symbols)(const backtrace_frame_t *backtrace, size_t frames, + backtrace_symbol_t *backtrace_symbols); + void (*get_backtrace_symbols_ptrace)(const ptrace_context_t *context, + const backtrace_frame_t *backtrace, size_t frames, + backtrace_symbol_t *backtrace_symbols); + void (*free_backtrace_symbols)(backtrace_symbol_t *backtrace_symbols, size_t frames); + void (*format_backtrace_line)(unsigned frameNumber, const backtrace_frame_t *frame, + const backtrace_symbol_t *symbol, char *buffer, size_t bufferSize); +} t_corkscrew; + +static pthread_once_t initialized = PTHREAD_ONCE_INIT; +static t_corkscrew *fkt = NULL; + +void load_library(void) +{ + static t_corkscrew lib; + { + lib.hdl = dlopen("libcorkscrew.so", RTLD_LAZY); + + if (!lib.hdl) + { + LOGF("dlopen error %s", dlerror()); + goto fail; + } + + lib.unwind_backtrace = dlsym(lib.hdl, "unwind_backtrace"); + + if (!lib.unwind_backtrace) + { + LOGF("dlsym error %s", dlerror()); + goto fail; + } + + lib.unwind_backtrace_thread = dlsym(lib.hdl, "unwind_backtrace_thread"); + + if (!lib.unwind_backtrace_thread) + { + LOGF("dlsym error %s", dlerror()); + goto fail; + } + + lib.unwind_backtrace_ptrace = dlsym(lib.hdl, "unwind_backtrace_ptrace"); + + if (!lib.unwind_backtrace_ptrace) + { + LOGF("dlsym error %s", dlerror()); + goto fail; + } + + lib.get_backtrace_symbols = dlsym(lib.hdl, "get_backtrace_symbols"); + + if (!lib.get_backtrace_symbols) + { + LOGF("dlsym error %s", dlerror()); + goto fail; + } + + lib.get_backtrace_symbols_ptrace = dlsym(lib.hdl, "get_backtrace_symbols_ptrace"); + + if (!lib.get_backtrace_symbols_ptrace) + { + LOGF("dlsym error %s", dlerror()); + goto fail; + } + + lib.free_backtrace_symbols = dlsym(lib.hdl, "free_backtrace_symbols"); + + if (!lib.free_backtrace_symbols) + { + LOGF("dlsym error %s", dlerror()); + goto fail; + } + + lib.format_backtrace_line = dlsym(lib.hdl, "format_backtrace_line"); + + if (!lib.format_backtrace_line) + { + LOGF("dlsym error %s", dlerror()); + goto fail; + } + + fkt = &lib; + return; + } +fail: + { + if (lib.hdl) + dlclose(lib.hdl); + + fkt = NULL; + } +} +#endif + +void winpr_backtrace_free(void *buffer) +{ + if (!buffer) + { + LOGF(support_msg); + return; + } + +#if defined(HAVE_EXECINFO_H) + t_execinfo *data = (t_execinfo *)buffer; + + if (data->buffer) + free(data->buffer); + + free(data); +#elif defined(ANDROID) + t_corkscrew_data *data = (t_corkscrew_data *)buffer; + + if (data->buffer) + free(data->buffer); + + free(data); +#else + LOGF(support_msg); +#endif +} + +void *winpr_backtrace(DWORD size) +{ +#if defined(HAVE_EXECINFO_H) + t_execinfo *data = calloc(1, sizeof(t_execinfo)); + + if (!data) + return NULL; + + data->buffer = calloc(size, sizeof(void *)); + + if (!data->buffer) + return NULL; + + data->max = size; + data->used = backtrace(data->buffer, size); + return data; +#elif defined(ANDROID) + t_corkscrew_data *data = calloc(1, sizeof(t_corkscrew_data)); + + if (!data) + return NULL; + + data->buffer = calloc(size, sizeof(backtrace_frame_t)); + + if (!data->buffer) + { + free(data); + return NULL; + } + + pthread_once(&initialized, load_library); + data->max = size; + data->used = fkt->unwind_backtrace(data->buffer, 0, size); + return data; +#else + LOGF(support_msg); + return NULL; +#endif +} + +char **winpr_backtrace_symbols(void *buffer, size_t *used) +{ + if (used) + *used = 0; + + if (!buffer) + { + LOGF(support_msg); + return NULL; + } + +#if defined(HAVE_EXECINFO_H) + t_execinfo *data = (t_execinfo *)buffer; + assert(data); + + if (used) + *used = data->used; + + return backtrace_symbols(data->buffer, data->used); +#elif defined(ANDROID) + t_corkscrew_data *data = (t_corkscrew_data *)buffer; + assert(data); + pthread_once(&initialized, load_library); + + if (!fkt) + { + LOGF(support_msg); + return NULL; + } + else + { + size_t line_len = (data->max > 1024) ? data->max : 1024; + size_t i; + char *lines = calloc(data->used + 1, sizeof(char *) * line_len); + char **vlines = (char **)lines; + backtrace_symbol_t *symbols = calloc(data->used, sizeof(backtrace_symbol_t));; + + if (!lines || !symbols) + { + if (lines) + free(lines); + + if (symbols) + free(symbols); + + return NULL; + } + + /* To allow a char** malloced array to be returned, allocate n+1 lines + * and fill in the first lines[i] char with the address of lines[(i+1) * 1024] */ + for (i=0; iused; i++) + vlines[i] = &lines[(i + 1) * line_len]; + + fkt->get_backtrace_symbols(data->buffer, data->used, symbols); + + for (i=0; iused; i++) + fkt->format_backtrace_line(i, &data->buffer[i], &symbols[i], vlines[i], line_len); + + fkt->free_backtrace_symbols(symbols, data->used); + + if (used) + *used = data->used; + + return (char **)lines; + } + +#else + LOGF(support_msg); + return NULL; +#endif +} + +void winpr_backtrace_symbols_fd(void *buffer, int fd) +{ + if (!buffer) + { + LOGF(support_msg); + return; + } + +#if defined(HAVE_EXECINFO_H) + t_execinfo *data = (t_execinfo *)buffer; + assert(data); + backtrace_symbols_fd(data->buffer, data->used, fd); +#elif defined(ANDROID) + size_t used; + t_corkscrew_data *data = (t_corkscrew_data *)buffer; + assert(data); + char **lines = winpr_backtrace_symbols(buffer, &used); + + if (lines) + { + DWORD i; + + for (i=0; i Date: Thu, 14 Aug 2014 10:37:48 +0200 Subject: [PATCH 106/170] Winpr stacktrace header. --- winpr/include/winpr/debug.h | 40 +++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 winpr/include/winpr/debug.h diff --git a/winpr/include/winpr/debug.h b/winpr/include/winpr/debug.h new file mode 100644 index 000000000..1d1123a80 --- /dev/null +++ b/winpr/include/winpr/debug.h @@ -0,0 +1,40 @@ +/** + * WinPR: Windows Portable Runtime + * WinPR Debugging helpers + * + * Copyright 2014 Armin Novak + * Copyright 2014 Thincast Technologies GmbH + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef WINPR_DEBUG_H +#define WINPR_DEBUG_H + +#ifdef __cplusplus +extern "C" { +#endif + +#include + +void *winpr_backtrace(DWORD size); +void winpr_backtrace_free(void *buffer); +char **winpr_backtrace_symbols(void *buffer, size_t *used); +void winpr_backtrace_symbols_fd(void *buffer, int fd); + +#ifdef __cplusplus +} +#endif + +#endif /* WINPR_WLOG_H */ + From 77ae3bc8b3963965191d8d1bf9cadbdd0cfb7615 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Thu, 14 Aug 2014 10:38:02 +0200 Subject: [PATCH 107/170] Fixed missing argument checks in logger, fixed crashes if file not created. --- winpr/libwinpr/utils/wlog/BinaryAppender.c | 8 +++ winpr/libwinpr/utils/wlog/ConsoleAppender.c | 7 ++- winpr/libwinpr/utils/wlog/FileAppender.c | 15 +++++ winpr/libwinpr/utils/wlog/PacketMessage.c | 63 +++++++++++++++------ 4 files changed, 73 insertions(+), 20 deletions(-) diff --git a/winpr/libwinpr/utils/wlog/BinaryAppender.c b/winpr/libwinpr/utils/wlog/BinaryAppender.c index f0bd1ba5f..79395d506 100644 --- a/winpr/libwinpr/utils/wlog/BinaryAppender.c +++ b/winpr/libwinpr/utils/wlog/BinaryAppender.c @@ -21,6 +21,8 @@ #include "config.h" #endif +#include + #include #include #include @@ -71,6 +73,9 @@ int WLog_BinaryAppender_Open(wLog* log, wLogBinaryAppender* appender) ProcessId = GetCurrentProcessId(); + if (!log || !appender) + return -1; + if (!appender->FilePath) { appender->FilePath = GetKnownSubPath(KNOWN_PATH_TEMP, "wlog"); @@ -122,6 +127,9 @@ int WLog_BinaryAppender_WriteMessage(wLog* log, wLogBinaryAppender* appender, wL int FunctionNameLength; int TextStringLength; + if (!log || !appender || !message) + return -1; + fp = appender->FileDescriptor; if (!fp) diff --git a/winpr/libwinpr/utils/wlog/ConsoleAppender.c b/winpr/libwinpr/utils/wlog/ConsoleAppender.c index 356ca4576..0383a823f 100644 --- a/winpr/libwinpr/utils/wlog/ConsoleAppender.c +++ b/winpr/libwinpr/utils/wlog/ConsoleAppender.c @@ -91,7 +91,7 @@ int WLog_ConsoleAppender_WriteMessage(wLog* log, wLogConsoleAppender* appender, #ifdef ANDROID (void)fp; android_LogPriority level; - switch(log->Level) + switch(message->Level) { case WLOG_TRACE: level = ANDROID_LOG_VERBOSE; @@ -181,8 +181,9 @@ int WLog_ConsoleAppender_WritePacketMessage(wLog* log, wLogConsoleAppender* appe free(FullFileName); } - WLog_PacketMessage_Write((wPcap*) appender->PacketMessageContext, - message->PacketData, message->PacketLength, message->PacketFlags); + if (appender->PacketMessageContext) + WLog_PacketMessage_Write((wPcap*) appender->PacketMessageContext, + message->PacketData, message->PacketLength, message->PacketFlags); return PacketId; } diff --git a/winpr/libwinpr/utils/wlog/FileAppender.c b/winpr/libwinpr/utils/wlog/FileAppender.c index 4e1feb006..90ce6cb56 100644 --- a/winpr/libwinpr/utils/wlog/FileAppender.c +++ b/winpr/libwinpr/utils/wlog/FileAppender.c @@ -70,6 +70,9 @@ int WLog_FileAppender_Open(wLog* log, wLogFileAppender* appender) ProcessId = GetCurrentProcessId(); + if (!log || !appender) + return -1; + if (!appender->FilePath) { appender->FilePath = GetKnownSubPath(KNOWN_PATH_TEMP, "wlog"); @@ -102,6 +105,9 @@ int WLog_FileAppender_Open(wLog* log, wLogFileAppender* appender) int WLog_FileAppender_Close(wLog* log, wLogFileAppender* appender) { + if (!log || !appender) + return -1; + if (!appender->FileDescriptor) return 0; @@ -117,6 +123,9 @@ int WLog_FileAppender_WriteMessage(wLog* log, wLogFileAppender* appender, wLogMe FILE* fp; char prefix[WLOG_MAX_PREFIX_SIZE]; + if (!log || !appender || !message) + return -1; + fp = appender->FileDescriptor; if (!fp) @@ -139,6 +148,9 @@ int WLog_FileAppender_WriteDataMessage(wLog* log, wLogFileAppender* appender, wL int DataId; char* FullFileName; + if (!log || !appender || !message) + return -1; + DataId = g_DataId++; FullFileName = WLog_Message_GetOutputFileName(DataId, "dat"); @@ -156,6 +168,9 @@ int WLog_FileAppender_WriteImageMessage(wLog* log, wLogFileAppender* appender, w int ImageId; char* FullFileName; + if (!log || !appender || !message) + return -1; + ImageId = g_ImageId++; FullFileName = WLog_Message_GetOutputFileName(ImageId, "bmp"); diff --git a/winpr/libwinpr/utils/wlog/PacketMessage.c b/winpr/libwinpr/utils/wlog/PacketMessage.c index ad6472841..9f7e5648e 100644 --- a/winpr/libwinpr/utils/wlog/PacketMessage.c +++ b/winpr/libwinpr/utils/wlog/PacketMessage.c @@ -47,35 +47,43 @@ static int gettimeofday(struct timeval* tp, void* tz) void Pcap_Read_Header(wPcap* pcap, wPcapHeader* header) { - fread((void*) header, sizeof(wPcapHeader), 1, pcap->fp); + if (pcap && pcap->fp) + fread((void*) header, sizeof(wPcapHeader), 1, pcap->fp); } void Pcap_Write_Header(wPcap* pcap, wPcapHeader* header) { - fwrite((void*) header, sizeof(wPcapHeader), 1, pcap->fp); + if (pcap && pcap->fp) + fwrite((void*) header, sizeof(wPcapHeader), 1, pcap->fp); } void Pcap_Read_RecordHeader(wPcap* pcap, wPcapRecordHeader* record) { - fread((void*) record, sizeof(wPcapRecordHeader), 1, pcap->fp); + if (pcap && pcap->fp) + fread((void*) record, sizeof(wPcapRecordHeader), 1, pcap->fp); } void Pcap_Write_RecordHeader(wPcap* pcap, wPcapRecordHeader* record) { - fwrite((void*) record, sizeof(wPcapRecordHeader), 1, pcap->fp); + if (pcap && pcap->fp) + fwrite((void*) record, sizeof(wPcapRecordHeader), 1, pcap->fp); } void Pcap_Write_RecordContent(wPcap* pcap, wPcapRecord* record) { - fwrite(record->data, record->length, 1, pcap->fp); + if (pcap && pcap->fp) + fwrite(record->data, record->length, 1, pcap->fp); } void Pcap_Read_Record(wPcap* pcap, wPcapRecord* record) { - Pcap_Read_RecordHeader(pcap, &record->header); - record->length = record->header.incl_len; - record->data = malloc(record->length); - fread(record->data, record->length, 1, pcap->fp); + if (pcap && pcap->fp) + { + Pcap_Read_RecordHeader(pcap, &record->header); + record->length = record->header.incl_len; + record->data = malloc(record->length); + fread(record->data, record->length, 1, pcap->fp); + } } void Pcap_Write_Record(wPcap* pcap, wPcapRecord* record) @@ -141,8 +149,12 @@ BOOL Pcap_GetNext_RecordHeader(wPcap* pcap, wPcapRecord* record) BOOL Pcap_GetNext_RecordContent(wPcap* pcap, wPcapRecord* record) { - fread(record->data, record->length, 1, pcap->fp); - return TRUE; + if (pcap && pcap->fp) + { + fread(record->data, record->length, 1, pcap->fp); + return TRUE; + } + return FALSE; } BOOL Pcap_GetNext_Record(wPcap* pcap, wPcapRecord* record) @@ -189,7 +201,7 @@ wPcap* Pcap_Open(char* name, BOOL write) pcap->header.network = 1; /* ethernet */ Pcap_Write_Header(pcap, &pcap->header); } - else + else if (pcap->fp) { fseek(pcap->fp, 0, SEEK_END); pcap->file_size = (int) ftell(pcap->fp); @@ -203,22 +215,26 @@ wPcap* Pcap_Open(char* name, BOOL write) void Pcap_Flush(wPcap* pcap) { + if (!pcap || !pcap->fp) + return; + while (pcap->record) { Pcap_Write_Record(pcap, pcap->record); pcap->record = pcap->record->next; } - if (pcap->fp) - fflush(pcap->fp); + fflush(pcap->fp); } void Pcap_Close(wPcap* pcap) { + if (!pcap || !pcap->fp) + return; + Pcap_Flush(pcap); - if (pcap->fp) - fclose(pcap->fp); + fclose(pcap->fp); free(pcap); } @@ -228,6 +244,9 @@ int WLog_PacketMessage_Write_EthernetHeader(wPcap* pcap, wEthernetHeader* ethern wStream* s; BYTE buffer[14]; + if (!pcap || !pcap->fp || !ethernet) + return -1; + s = Stream_New(buffer, 14); Stream_Write(s, ethernet->Destination, 6); @@ -268,6 +287,9 @@ int WLog_PacketMessage_Write_IPv4Header(wPcap* pcap, wIPv4Header* ipv4) wStream* s; BYTE buffer[20]; + if (!pcap || !pcap->fp || !ipv4) + return -1; + s = Stream_New(buffer, 20); Stream_Write_UINT8(s, (ipv4->Version << 4) | ipv4->InternetHeaderLength); @@ -298,6 +320,9 @@ int WLog_PacketMessage_Write_TcpHeader(wPcap* pcap, wTcpHeader* tcp) wStream* s; BYTE buffer[20]; + if (!pcap || !pcap->fp || !tcp) + return -1; + s = Stream_New(buffer, 20); Stream_Write_UINT16_BE(s, tcp->SourcePort); @@ -310,7 +335,8 @@ int WLog_PacketMessage_Write_TcpHeader(wPcap* pcap, wTcpHeader* tcp) Stream_Write_UINT16_BE(s, tcp->Checksum); Stream_Write_UINT16_BE(s, tcp->UrgentPointer); - fwrite(buffer, 20, 1, pcap->fp); + if (pcap->fp) + fwrite(buffer, 20, 1, pcap->fp); Stream_Free(s, FALSE); @@ -330,6 +356,9 @@ int WLog_PacketMessage_Write(wPcap* pcap, void* data, DWORD length, DWORD flags) ethernet.Type = 0x0800; + if (!pcap || !pcap->fp) + return -1; + if (flags & WLOG_PACKET_OUTBOUND) { /* 00:15:5D:01:64:04 */ From fd2c1a7508073f84ea52d88662f56b8db6b07d98 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Thu, 14 Aug 2014 10:42:10 +0200 Subject: [PATCH 108/170] Fixed license header, added correct copyright. --- winpr/libwinpr/utils/debug.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/winpr/libwinpr/utils/debug.c b/winpr/libwinpr/utils/debug.c index d086b8207..d76f1ac8a 100644 --- a/winpr/libwinpr/utils/debug.c +++ b/winpr/libwinpr/utils/debug.c @@ -1,8 +1,9 @@ /** * WinPR: Windows Portable Runtime - * Print Utils + * Debugging Utils * - * Copyright 2012 Marc-Andre Moreau + * Copyright 2014 Armin Novak + * Copyright 2014 Thincast Technologies GmbH * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. From eab69c29840331f0a73d40bf4add635743db8bf5 Mon Sep 17 00:00:00 2001 From: Pavel Tsekov Date: Thu, 14 Aug 2014 20:09:12 +0300 Subject: [PATCH 109/170] Fix 1bpp -> 16bpp image conversion. * libfreerdp/codec/color.c (freerdp_mono_image_convert): Update the 1bpp -> 16bpp conversion code to reflect the fact that the foreground and the background colors are in GDI representation now. --- libfreerdp/codec/color.c | 30 +++++++++++------------------- 1 file changed, 11 insertions(+), 19 deletions(-) diff --git a/libfreerdp/codec/color.c b/libfreerdp/codec/color.c index 365bdde46..2c1c8c2d8 100644 --- a/libfreerdp/codec/color.c +++ b/libfreerdp/codec/color.c @@ -1121,25 +1121,6 @@ BYTE* freerdp_mono_image_convert(BYTE* srcData, int width, int height, int srcBp if (dstBpp == 16) { - if (clrconv->rgb555) - { - if (srcBpp == 16) - { - /* convert 15-bit colors to 16-bit colors */ - RGB16_RGB15(redBg, greenBg, blueBg, bgcolor); - RGB16_RGB15(redFg, greenFg, blueFg, fgcolor); - } - } - else - { - if (srcBpp == 15) - { - /* convert 15-bit colors to 16-bit colors */ - RGB15_RGB16(redBg, greenBg, blueBg, bgcolor); - RGB15_RGB16(redFg, greenFg, blueFg, fgcolor); - } - } - dstData = (BYTE*) _aligned_malloc(width * height * 2, 16); if (!dstData) @@ -1147,6 +1128,17 @@ BYTE* freerdp_mono_image_convert(BYTE* srcData, int width, int height, int srcBp dst16 = (UINT16*) dstData; + if (clrconv->rgb555) + { + bgcolor = clrconv->invert ? BGR15(redBg, greenBg, blueBg) : RGB15(redBg, greenBg, blueBg); + fgcolor = clrconv->invert ? BGR15(redFg, greenFg, blueFg) : RGB15(redFg, greenFg, blueFg); + } + else + { + bgcolor = clrconv->invert ? BGR16(redBg, greenBg, blueBg) : RGB16(redBg, greenBg, blueBg); + fgcolor = clrconv->invert ? BGR16(redFg, greenFg, blueFg) : RGB16(redFg, greenFg, blueFg); + } + for (index = height; index > 0; index--) { /* each bit encodes a pixel */ From 97cd85803dd9798f39ba2b69eb1e9cee36074da5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 14 Aug 2014 13:10:43 -0400 Subject: [PATCH 110/170] shadow: initial WDS working setup --- server/shadow/CMakeLists.txt | 1 + server/shadow/Win/win_shadow.h | 1 + server/shadow/Win/win_wds.c | 396 +++++++++++++++++++++++++++++++-- server/shadow/shadow_server.c | 19 +- 4 files changed, 400 insertions(+), 17 deletions(-) diff --git a/server/shadow/CMakeLists.txt b/server/shadow/CMakeLists.txt index 76e23d137..349fdf9b8 100644 --- a/server/shadow/CMakeLists.txt +++ b/server/shadow/CMakeLists.txt @@ -176,6 +176,7 @@ elseif(WITH_SHADOW_MAC) endif() add_executable(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) + set_target_properties(${MODULE_NAME} PROPERTIES OUTPUT_NAME "freerdp-shadow") list(APPEND ${MODULE_PREFIX}_LIBS freerdp-server) diff --git a/server/shadow/Win/win_shadow.h b/server/shadow/Win/win_shadow.h index a47cf3cb2..870b9749a 100644 --- a/server/shadow/Win/win_shadow.h +++ b/server/shadow/Win/win_shadow.h @@ -43,6 +43,7 @@ struct win_shadow_subsystem int height; #ifdef WITH_WDS_API + HWND hWnd; rdpAssistanceFile* pAssistanceFile; _IRDPSessionEvents* pSessionEvents; IRDPSRAPISharingSession* pSharingSession; diff --git a/server/shadow/Win/win_wds.c b/server/shadow/Win/win_wds.c index 098ab205f..1fabb08fe 100644 --- a/server/shadow/Win/win_wds.c +++ b/server/shadow/Win/win_wds.c @@ -33,27 +33,132 @@ DEFINE_GUID(CLSID_RDPSession,0x9B78F0E6,0x3E05,0x4A5B,0xB2,0xE8,0xE7,0x43,0xA8,0x95,0x6B,0x65); DEFINE_GUID(DIID__IRDPSessionEvents,0x98a97042,0x6698,0x40e9,0x8e,0xfd,0xb3,0x20,0x09,0x90,0x00,0x4b); DEFINE_GUID(IID_IRDPSRAPISharingSession,0xeeb20886,0xe470,0x4cf6,0x84,0x2b,0x27,0x39,0xc0,0xec,0x5c,0xfb); +DEFINE_GUID(IID_IRDPSRAPIAttendee,0xec0671b3,0x1b78,0x4b80,0xa4,0x64,0x91,0x32,0x24,0x75,0x43,0xe3); DEFINE_GUID(IID_IRDPSRAPIAttendeeManager,0xba3a37e8,0x33da,0x4749,0x8d,0xa0,0x07,0xfa,0x34,0xda,0x79,0x44); DEFINE_GUID(IID_IRDPSRAPISessionProperties,0x339b24f2,0x9bc0,0x4f16,0x9a,0xac,0xf1,0x65,0x43,0x3d,0x13,0xd4); DEFINE_GUID(CLSID_RDPSRAPIApplicationFilter,0xe35ace89,0xc7e8,0x427e,0xa4,0xf9,0xb9,0xda,0x07,0x28,0x26,0xbd); DEFINE_GUID(CLSID_RDPSRAPIInvitationManager,0x53d9c9db,0x75ab,0x4271,0x94,0x8a,0x4c,0x4e,0xb3,0x6a,0x8f,0x2b); +static ULONG Shadow_IRDPSessionEvents_RefCount = 0; + +const char* GetRDPSessionEventString(DISPID id) +{ + switch (id) + { + case DISPID_RDPSRAPI_EVENT_ON_ATTENDEE_CONNECTED: + return "OnAttendeeConnected"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_ATTENDEE_DISCONNECTED: + return "OnAttendeeDisconnected"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_ATTENDEE_UPDATE: + return "OnAttendeeUpdate"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_ERROR: + return "OnError"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_VIEWER_CONNECTED: + return "OnConnectionEstablished"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_VIEWER_DISCONNECTED: + return "OnConnectionTerminated"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_VIEWER_AUTHENTICATED: + return "OnConnectionAuthenticated"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_VIEWER_CONNECTFAILED: + return "OnConnectionFailed"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_CTRLLEVEL_CHANGE_REQUEST: + return "OnControlLevelChangeRequest"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_GRAPHICS_STREAM_PAUSED: + return "OnGraphicsStreamPaused"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_GRAPHICS_STREAM_RESUMED: + return "OnGraphicsStreamResumed"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_VIRTUAL_CHANNEL_JOIN: + return "OnChannelJoin"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_VIRTUAL_CHANNEL_LEAVE: + return "OnChannelLeave"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_VIRTUAL_CHANNEL_DATARECEIVED: + return "OnChannelDataReceived"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_VIRTUAL_CHANNEL_SENDCOMPLETED: + return "OnChannelDataSent"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_APPLICATION_OPEN: + return "OnApplicationOpen"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_APPLICATION_CLOSE: + return "OnApplicationClose"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_APPLICATION_UPDATE: + return "OnApplicationUpdate"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_WINDOW_OPEN: + return "OnWindowOpen"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_WINDOW_CLOSE: + return "OnWindowClose"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_WINDOW_UPDATE: + return "OnWindowUpdate"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_APPFILTER_UPDATE: + return "OnAppFilterUpdate"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_SHARED_RECT_CHANGED: + return "OnSharedRectChanged"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_FOCUSRELEASED: + return "OnFocusReleased"; + break; + + case DISPID_RDPSRAPI_EVENT_ON_SHARED_DESKTOP_SETTINGS_CHANGED: + return "OnSharedDesktopSettingsChanged"; + break; + + case DISPID_RDPAPI_EVENT_ON_BOUNDING_RECT_CHANGED: + return "OnViewingSizeChanged"; + break; + } + + return "OnUnknown"; +} + static HRESULT STDMETHODCALLTYPE Shadow_IRDPSessionEvents_QueryInterface( __RPC__in _IRDPSessionEvents * This, /* [in] */ __RPC__in REFIID riid, /* [annotation][iid_is][out] */ _COM_Outptr_ void **ppvObject) { - GUID* pGuid = (GUID*) riid; - - printf("Shadow_IRDPSessionEvents_QueryInterface\n"); - - printf("{%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}\n", - pGuid->Data1, pGuid->Data2, pGuid->Data3, - pGuid->Data4[0], pGuid->Data4[1], - pGuid->Data4[2], pGuid->Data4[3], pGuid->Data4[4], - pGuid->Data4[5], pGuid->Data4[6], pGuid->Data4[7]); - *ppvObject = NULL; if (IsEqualIID(riid, &DIID__IRDPSessionEvents) || @@ -73,15 +178,19 @@ static HRESULT STDMETHODCALLTYPE Shadow_IRDPSessionEvents_QueryInterface( static ULONG STDMETHODCALLTYPE Shadow_IRDPSessionEvents_AddRef( __RPC__in _IRDPSessionEvents * This) { - printf("Shadow_IRDPSessionEvents_AddRef\n"); - return 1; + Shadow_IRDPSessionEvents_RefCount++; + return Shadow_IRDPSessionEvents_RefCount; } static ULONG STDMETHODCALLTYPE Shadow_IRDPSessionEvents_Release( __RPC__in _IRDPSessionEvents * This) { - printf("Shadow_IRDPSessionEvents_Release\n"); - return 0; + if (!Shadow_IRDPSessionEvents_RefCount) + return 0; + + Shadow_IRDPSessionEvents_RefCount--; + + return Shadow_IRDPSessionEvents_RefCount; } static HRESULT STDMETHODCALLTYPE Shadow_IRDPSessionEvents_GetTypeInfoCount( @@ -134,7 +243,188 @@ static HRESULT STDMETHODCALLTYPE Shadow_IRDPSessionEvents_Invoke( /* [annotation][out] */ _Out_opt_ UINT *puArgErr) { - printf("Shadow_IRDPSessionEvents_Invoke\n"); + HRESULT hr; + VARIANT vr; + UINT uArgErr; + + printf("%s (%d)\n", GetRDPSessionEventString(dispIdMember), dispIdMember); + + switch (dispIdMember) + { + case DISPID_RDPSRAPI_EVENT_ON_ATTENDEE_CONNECTED: + { + int level; + IDispatch* pDispatch; + IRDPSRAPIAttendee* pAttendee; + + vr.vt = VT_DISPATCH; + vr.pdispVal = NULL; + + hr = DispGetParam(pDispParams, 0, VT_DISPATCH, &vr, &uArgErr); + + if (FAILED(hr)) + { + printf("%s DispGetParam(0, VT_DISPATCH) failure: 0x%08X\n", + GetRDPSessionEventString(dispIdMember), hr); + return hr; + } + + pDispatch = vr.pdispVal; + + hr = pDispatch->lpVtbl->QueryInterface(pDispatch, &IID_IRDPSRAPIAttendee, (void**) &pAttendee); + + if (FAILED(hr)) + { + printf("%s IDispatch::QueryInterface(IRDPSRAPIAttendee) failure: 0x%08X\n", + GetRDPSessionEventString(dispIdMember), hr); + return hr; + } + + level = CTRL_LEVEL_VIEW; + //level = CTRL_LEVEL_INTERACTIVE; + + hr = pAttendee->lpVtbl->put_ControlLevel(pAttendee, level); + + if (FAILED(hr)) + { + printf("%s IRDPSRAPIAttendee::put_ControlLevel() failure: 0x%08X\n", + GetRDPSessionEventString(dispIdMember), hr); + return hr; + } + + pAttendee->lpVtbl->Release(pAttendee); + } + break; + + case DISPID_RDPSRAPI_EVENT_ON_ATTENDEE_DISCONNECTED: + break; + + case DISPID_RDPSRAPI_EVENT_ON_ATTENDEE_UPDATE: + break; + + case DISPID_RDPSRAPI_EVENT_ON_ERROR: + break; + + case DISPID_RDPSRAPI_EVENT_ON_VIEWER_CONNECTED: + break; + + case DISPID_RDPSRAPI_EVENT_ON_VIEWER_DISCONNECTED: + break; + + case DISPID_RDPSRAPI_EVENT_ON_VIEWER_AUTHENTICATED: + break; + + case DISPID_RDPSRAPI_EVENT_ON_VIEWER_CONNECTFAILED: + break; + + case DISPID_RDPSRAPI_EVENT_ON_CTRLLEVEL_CHANGE_REQUEST: + { + int level; + IDispatch* pDispatch; + IRDPSRAPIAttendee* pAttendee; + + vr.vt = VT_INT; + vr.pdispVal = NULL; + + hr = DispGetParam(pDispParams, 1, VT_INT, &vr, &uArgErr); + + if (FAILED(hr)) + { + printf("%s DispGetParam(1, VT_INT) failure: 0x%08X\n", + GetRDPSessionEventString(dispIdMember), hr); + return hr; + } + + level = vr.intVal; + + vr.vt = VT_DISPATCH; + vr.pdispVal = NULL; + + hr = DispGetParam(pDispParams, 0, VT_DISPATCH, &vr, &uArgErr); + + if (FAILED(hr)) + { + printf("%s DispGetParam(0, VT_DISPATCH) failure: 0x%08X\n", + GetRDPSessionEventString(dispIdMember), hr); + return hr; + } + + pDispatch = vr.pdispVal; + + hr = pDispatch->lpVtbl->QueryInterface(pDispatch, &IID_IRDPSRAPIAttendee, (void**) &pAttendee); + + if (FAILED(hr)) + { + printf("%s IDispatch::QueryInterface(IRDPSRAPIAttendee) failure: 0x%08X\n", + GetRDPSessionEventString(dispIdMember), hr); + return hr; + } + + hr = pAttendee->lpVtbl->put_ControlLevel(pAttendee, level); + + if (FAILED(hr)) + { + printf("%s IRDPSRAPIAttendee::put_ControlLevel() failure: 0x%08X\n", + GetRDPSessionEventString(dispIdMember), hr); + return hr; + } + + pAttendee->lpVtbl->Release(pAttendee); + } + break; + + case DISPID_RDPSRAPI_EVENT_ON_GRAPHICS_STREAM_PAUSED: + break; + + case DISPID_RDPSRAPI_EVENT_ON_GRAPHICS_STREAM_RESUMED: + break; + + case DISPID_RDPSRAPI_EVENT_ON_VIRTUAL_CHANNEL_JOIN: + break; + + case DISPID_RDPSRAPI_EVENT_ON_VIRTUAL_CHANNEL_LEAVE: + break; + + case DISPID_RDPSRAPI_EVENT_ON_VIRTUAL_CHANNEL_DATARECEIVED: + break; + + case DISPID_RDPSRAPI_EVENT_ON_VIRTUAL_CHANNEL_SENDCOMPLETED: + break; + + case DISPID_RDPSRAPI_EVENT_ON_APPLICATION_OPEN: + break; + + case DISPID_RDPSRAPI_EVENT_ON_APPLICATION_CLOSE: + break; + + case DISPID_RDPSRAPI_EVENT_ON_APPLICATION_UPDATE: + break; + + case DISPID_RDPSRAPI_EVENT_ON_WINDOW_OPEN: + break; + + case DISPID_RDPSRAPI_EVENT_ON_WINDOW_CLOSE: + break; + + case DISPID_RDPSRAPI_EVENT_ON_WINDOW_UPDATE: + break; + + case DISPID_RDPSRAPI_EVENT_ON_APPFILTER_UPDATE: + break; + + case DISPID_RDPSRAPI_EVENT_ON_SHARED_RECT_CHANGED: + break; + + case DISPID_RDPSRAPI_EVENT_ON_FOCUSRELEASED: + break; + + case DISPID_RDPSRAPI_EVENT_ON_SHARED_DESKTOP_SETTINGS_CHANGED: + break; + + case DISPID_RDPAPI_EVENT_ON_BOUNDING_RECT_CHANGED: + break; + } + return S_OK; } @@ -157,6 +447,68 @@ static _IRDPSessionEvents Shadow_IRDPSessionEvents = &Shadow_IRDPSessionEventsVtbl }; +static LRESULT CALLBACK ShadowWndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) +{ + switch (uMsg) + { + case WM_CLOSE: + DestroyWindow(hwnd); + break; + + case WM_DESTROY: + PostQuitMessage(0); + break; + + default: + return DefWindowProc(hwnd, uMsg, wParam, lParam); + break; + } + + return 0; +} + +int win_shadow_wds_wnd_init(winShadowSubsystem* subsystem) +{ + HMODULE hModule; + HINSTANCE hInstance; + WNDCLASSEX wndClassEx; + + hModule = GetModuleHandle(NULL); + + ZeroMemory(&wndClassEx, sizeof(WNDCLASSEX)); + wndClassEx.cbSize = sizeof(WNDCLASSEX); + wndClassEx.style = 0; + wndClassEx.lpfnWndProc = ShadowWndProc; + wndClassEx.cbClsExtra = 0; + wndClassEx.cbWndExtra = 0; + wndClassEx.hInstance = hModule; + wndClassEx.hIcon = NULL; + wndClassEx.hCursor = NULL; + wndClassEx.hbrBackground = NULL; + wndClassEx.lpszMenuName = _T("ShadowWndMenu"); + wndClassEx.lpszClassName = _T("ShadowWndClass"); + wndClassEx.hIconSm = NULL; + + if (!RegisterClassEx(&wndClassEx)) + { + printf("RegisterClassEx failure\n"); + return -1; + } + + hInstance = wndClassEx.hInstance; + + subsystem->hWnd = CreateWindowEx(0, wndClassEx.lpszClassName, + 0, 0, 0, 0, 0, 0, HWND_MESSAGE, 0, hInstance, NULL); + + if (!subsystem->hWnd) + { + printf("CreateWindowEx failure\n"); + return -1; + } + + return 1; +} + int win_shadow_wds_init(winShadowSubsystem* subsystem) { int status; @@ -174,6 +526,8 @@ int win_shadow_wds_init(winShadowSubsystem* subsystem) IConnectionPoint* pCP; IConnectionPointContainer* pCPC; + win_shadow_wds_wnd_init(subsystem); + hr = OleInitialize(NULL); if (FAILED(hr)) @@ -216,7 +570,11 @@ int win_shadow_wds_init(winShadowSubsystem* subsystem) return -1; } - hr = pCP->lpVtbl->Advise(pCP, (IUnknown*) &Shadow_IRDPSessionEvents, &dwCookie); + dwCookie = 0; + subsystem->pSessionEvents = &Shadow_IRDPSessionEvents; + subsystem->pSessionEvents->lpVtbl->AddRef(subsystem->pSessionEvents); + + hr = pCP->lpVtbl->Advise(pCP, (IUnknown*) subsystem->pSessionEvents, &dwCookie); if (FAILED(hr)) { @@ -459,5 +817,11 @@ int win_shadow_wds_uninit(winShadowSubsystem* subsystem) subsystem->pAssistanceFile = NULL; } + if (subsystem->hWnd) + { + DestroyWindow(subsystem->hWnd); + subsystem->hWnd = NULL; + } + return 1; } diff --git a/server/shadow/shadow_server.c b/server/shadow/shadow_server.c index ab9772951..9d2ecb6ec 100644 --- a/server/shadow/shadow_server.c +++ b/server/shadow/shadow_server.c @@ -21,6 +21,7 @@ #endif #include +#include #include #include #include @@ -36,6 +37,12 @@ #include "shadow.h" +#ifdef _WIN32 +static BOOL g_MessagePump = TRUE; +#else +static BOOL g_MessagePump = FALSE; +#endif + #ifdef WITH_SHADOW_X11 extern rdpShadowSubsystem* X11_ShadowCreateSubsystem(rdpShadowServer* server); #endif @@ -553,8 +560,9 @@ void shadow_server_free(rdpShadowServer* server) free(server); } -int main(int argc, char* argv[]) +int main(int argc, char** argv) { + MSG msg; int status; DWORD dwExitCode; rdpShadowServer* server; @@ -577,6 +585,15 @@ int main(int argc, char* argv[]) if (shadow_server_start(server) < 0) return 0; + if (g_MessagePump) + { + while (GetMessage(&msg, 0, 0, 0)) + { + TranslateMessage(&msg); + DispatchMessage(&msg); + } + } + WaitForSingleObject(server->thread, INFINITE); GetExitCodeThread(server->thread, &dwExitCode); From 651887c7e07cbe05e331dfb649de229ae70f1d05 Mon Sep 17 00:00:00 2001 From: Pavel Tsekov Date: Thu, 14 Aug 2014 20:21:49 +0300 Subject: [PATCH 111/170] Fix erronous use of colors in gdi_patblt(). * libfreerdp/gdi/gdi.c: (gdi_patblt): Fix a call to freerdp_mono_image_convert() which was still passed colors in drawing order representation instead of GDI representation. --- libfreerdp/gdi/gdi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libfreerdp/gdi/gdi.c b/libfreerdp/gdi/gdi.c index e76012f0c..90c5c90d2 100644 --- a/libfreerdp/gdi/gdi.c +++ b/libfreerdp/gdi/gdi.c @@ -517,7 +517,7 @@ void gdi_patblt(rdpContext* context, PATBLT_ORDER* patblt) HGDI_BITMAP hBmp; data = freerdp_mono_image_convert(GDI_BS_HATCHED_PATTERNS + 8 * brush->hatch, 8, 8, 1, - gdi->dstBpp, patblt->backColor, patblt->foreColor, gdi->clrconv); + gdi->dstBpp, backColor, foreColor, gdi->clrconv); hBmp = gdi_CreateBitmap(8, 8, gdi->drawing->hdc->bitsPerPixel, data); From 158f9856ba0ace09918953f73be68f5535b13cc3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 14 Aug 2014 18:41:22 -0400 Subject: [PATCH 112/170] shadow: start RDP client backend for WDS --- libfreerdp/common/assistance.c | 47 ++++ libfreerdp/core/tpdu.c | 2 +- server/shadow/CMakeLists.txt | 3 + server/shadow/Win/win_rdp.c | 432 +++++++++++++++++++++++++++++++++ server/shadow/Win/win_rdp.h | 50 ++++ server/shadow/Win/win_shadow.h | 2 + server/shadow/Win/win_wds.c | 71 ++++-- server/shadow/shadow_client.c | 3 +- 8 files changed, 594 insertions(+), 16 deletions(-) create mode 100644 server/shadow/Win/win_rdp.c create mode 100644 server/shadow/Win/win_rdp.h diff --git a/libfreerdp/common/assistance.c b/libfreerdp/common/assistance.c index e0e8ae914..7f2e9566e 100644 --- a/libfreerdp/common/assistance.c +++ b/libfreerdp/common/assistance.c @@ -274,6 +274,7 @@ int freerdp_assistance_parse_connection_string2(rdpAssistanceFile* file) { char* p; char* q; + int port; char* str; size_t length; @@ -345,6 +346,52 @@ int freerdp_assistance_parse_connection_string2(rdpAssistanceFile* file) p += length; } + p = strstr(p, " 8) + { + if (strncmp(p, "169.254.", 8) != 0) + { + file->MachineAddress = _strdup(p); + file->MachinePort = (UINT32) port; + break; + } + } + + p = strstr(q, " + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include + +#include +#include +#include +#include + +#include "win_rdp.h" + +void shw_OnChannelConnectedEventHandler(rdpContext* context, ChannelConnectedEventArgs* e) +{ + shwContext* shw = (shwContext*) context; + + printf("OnChannelConnected: %s\n", e->name); +} + +void shw_OnChannelDisconnectedEventHandler(rdpContext* context, ChannelDisconnectedEventArgs* e) +{ + shwContext* shw = (shwContext*) context; + + printf("OnChannelDisconnected: %s\n", e->name); +} + +void shw_begin_paint(rdpContext* context) +{ + shwContext* shw; + rdpGdi* gdi = context->gdi; + + shw = (shwContext*) context; + + gdi->primary->hdc->hwnd->invalid->null = 1; + gdi->primary->hdc->hwnd->ninvalid = 0; +} + +void shw_end_paint(rdpContext* context) +{ + INT32 x, y; + UINT32 w, h; + shwContext* shw; + HGDI_RGN invalid; + HGDI_RGN cinvalid; + rdpSettings* settings; + rdpGdi* gdi = context->gdi; + + shw = (shwContext*) context; + settings = context->settings; + + invalid = gdi->primary->hdc->hwnd->invalid; + cinvalid = gdi->primary->hdc->hwnd->cinvalid; + + x = invalid->x; + y = invalid->y; + w = invalid->w; + h = invalid->h; + + if (x < 0) + x = 0; + + if (x > settings->DesktopWidth - 1) + x = settings->DesktopWidth - 1; + + w += x % 16; + x -= x % 16; + + w += w % 16; + + if (x + w > settings->DesktopWidth) + w = settings->DesktopWidth - x; + + if (y < 0) + y = 0; + + if (y > settings->DesktopHeight - 1) + y = settings->DesktopHeight - 1; + + h += y % 16; + y -= y % 16; + + h += h % 16; + + if (h > settings->DesktopHeight) + h = settings->DesktopHeight; + + if (y + h > settings->DesktopHeight) + h = settings->DesktopHeight - y; + + if (w * h < 1) + return; +} + +void shw_desktop_resize(rdpContext* context) +{ + +} + +void shw_surface_frame_marker(rdpContext* context, SURFACE_FRAME_MARKER* surfaceFrameMarker) +{ + shwContext* shw = (shwContext*) context; +} + +void shw_OnConnectionResultEventHandler(rdpContext* context, ConnectionResultEventArgs* e) +{ + shwContext* shw = (shwContext*) context; + printf("OnConnectionResult: %d\n", e->result); +} + +BOOL shw_pre_connect(freerdp* instance) +{ + shwContext* shw; + rdpContext* context = instance->context; + + shw = (shwContext*) context; + + PubSub_SubscribeConnectionResult(context->pubSub, + (pConnectionResultEventHandler) shw_OnConnectionResultEventHandler); + + PubSub_SubscribeChannelConnected(context->pubSub, + (pChannelConnectedEventHandler) shw_OnChannelConnectedEventHandler); + + PubSub_SubscribeChannelDisconnected(context->pubSub, + (pChannelDisconnectedEventHandler) shw_OnChannelDisconnectedEventHandler); + + freerdp_client_load_addins(context->channels, instance->settings); + + freerdp_channels_pre_connect(context->channels, instance); + + return TRUE; +} + +BOOL shw_post_connect(freerdp* instance) +{ + rdpGdi* gdi; + shwContext* shw; + rdpSettings* settings; + + shw = (shwContext*) instance->context; + settings = instance->settings; + + gdi_init(instance, CLRBUF_32BPP, NULL); + gdi = instance->context->gdi; + + instance->update->BeginPaint = shw_begin_paint; + instance->update->EndPaint = shw_end_paint; + instance->update->DesktopResize = shw_desktop_resize; + instance->update->SurfaceFrameMarker = shw_surface_frame_marker; + + freerdp_channels_post_connect(instance->context->channels, instance); + + return TRUE; +} + +void* shw_client_thread(void* arg) +{ + int index; + int rcount; + int wcount; + BOOL bSuccess; + void* rfds[32]; + void* wfds[32]; + int fds_count; + HANDLE fds[64]; + shwContext* shw; + rdpContext* context; + rdpChannels* channels; + freerdp* instance = (freerdp*) arg; + + ZeroMemory(rfds, sizeof(rfds)); + ZeroMemory(wfds, sizeof(wfds)); + + context = (rdpContext*) instance->context; + shw = (shwContext*) context; + + bSuccess = freerdp_connect(instance); + + printf("freerdp_connect: %d\n", bSuccess); + + if (!freerdp_connect(instance)) + { + ExitThread(0); + return NULL; + } + + channels = instance->context->channels; + + while (1) + { + rcount = 0; + wcount = 0; + + if (!freerdp_get_fds(instance, rfds, &rcount, wfds, &wcount)) + { + fprintf(stderr, "Failed to get FreeRDP file descriptor\n"); + break; + } + + if (!freerdp_channels_get_fds(channels, instance, rfds, &rcount, wfds, &wcount)) + { + fprintf(stderr, "Failed to get channels file descriptor\n"); + break; + } + + fds_count = 0; + + for (index = 0; index < rcount; index++) + fds[fds_count++] = rfds[index]; + + for (index = 0; index < wcount; index++) + fds[fds_count++] = wfds[index]; + + if (MsgWaitForMultipleObjects(fds_count, fds, FALSE, 1000, QS_ALLINPUT) == WAIT_FAILED) + { + fprintf(stderr, "MsgWaitForMultipleObjects failure: 0x%08X", GetLastError()); + break; + } + + if (!freerdp_check_fds(instance)) + { + fprintf(stderr, "Failed to check FreeRDP file descriptor\n"); + break; + } + + if (freerdp_shall_disconnect(instance)) + { + break; + } + + if (!freerdp_channels_check_fds(channels, instance)) + { + fprintf(stderr, "Failed to check channels file descriptor\n"); + break; + } + } + + freerdp_free(instance); + + ExitThread(0); + return NULL; +} + +/** + * Client Interface + */ + +void shw_freerdp_client_global_init(void) +{ + +} + +void shw_freerdp_client_global_uninit(void) +{ + +} + +int shw_freerdp_client_start(rdpContext* context) +{ + shwContext* shw; + freerdp* instance = context->instance; + + shw = (shwContext*) context; + + shw->thread = CreateThread(NULL, 0, + (LPTHREAD_START_ROUTINE) shw_client_thread, + instance, 0, NULL); + + return 0; +} + +int shw_freerdp_client_stop(rdpContext* context) +{ + shwContext* shw = (shwContext*) context; + + SetEvent(shw->StopEvent); + + return 0; +} + +int shw_freerdp_client_new(freerdp* instance, rdpContext* context) +{ + shwContext* shw; + rdpSettings* settings; + + shw = (shwContext*) instance->context; + + instance->PreConnect = shw_pre_connect; + instance->PostConnect = shw_post_connect; + + context->channels = freerdp_channels_new(); + + shw->StopEvent = CreateEvent(NULL, TRUE, FALSE, NULL); + + settings = instance->settings; + shw->settings = instance->context->settings; + + settings->SoftwareGdi = TRUE; + settings->OrderSupport[NEG_DSTBLT_INDEX] = TRUE; + settings->OrderSupport[NEG_PATBLT_INDEX] = TRUE; + settings->OrderSupport[NEG_SCRBLT_INDEX] = TRUE; + settings->OrderSupport[NEG_OPAQUE_RECT_INDEX] = TRUE; + settings->OrderSupport[NEG_DRAWNINEGRID_INDEX] = FALSE; + settings->OrderSupport[NEG_MULTIDSTBLT_INDEX] = FALSE; + settings->OrderSupport[NEG_MULTIPATBLT_INDEX] = FALSE; + settings->OrderSupport[NEG_MULTISCRBLT_INDEX] = FALSE; + settings->OrderSupport[NEG_MULTIOPAQUERECT_INDEX] = TRUE; + settings->OrderSupport[NEG_MULTI_DRAWNINEGRID_INDEX] = FALSE; + settings->OrderSupport[NEG_LINETO_INDEX] = TRUE; + settings->OrderSupport[NEG_POLYLINE_INDEX] = TRUE; + settings->OrderSupport[NEG_MEMBLT_INDEX] = settings->BitmapCacheEnabled; + settings->OrderSupport[NEG_MEM3BLT_INDEX] = (settings->SoftwareGdi) ? TRUE : FALSE; + settings->OrderSupport[NEG_MEMBLT_V2_INDEX] = settings->BitmapCacheEnabled; + settings->OrderSupport[NEG_MEM3BLT_V2_INDEX] = FALSE; + settings->OrderSupport[NEG_SAVEBITMAP_INDEX] = FALSE; + settings->OrderSupport[NEG_GLYPH_INDEX_INDEX] = TRUE; + settings->OrderSupport[NEG_FAST_INDEX_INDEX] = TRUE; + settings->OrderSupport[NEG_FAST_GLYPH_INDEX] = TRUE; + settings->OrderSupport[NEG_POLYGON_SC_INDEX] = (settings->SoftwareGdi) ? FALSE : TRUE; + settings->OrderSupport[NEG_POLYGON_CB_INDEX] = (settings->SoftwareGdi) ? FALSE : TRUE; + settings->OrderSupport[NEG_ELLIPSE_SC_INDEX] = FALSE; + settings->OrderSupport[NEG_ELLIPSE_CB_INDEX] = FALSE; + + settings->AsyncTransport = FALSE; + settings->AsyncChannels = FALSE; + settings->AsyncUpdate = FALSE; + settings->AsyncInput = FALSE; + + settings->IgnoreCertificate = TRUE; + + settings->RdpSecurity = TRUE; + settings->TlsSecurity = TRUE; + settings->NlaSecurity = FALSE; + + settings->ColorDepth = 32; + + settings->CompressionEnabled = TRUE; + + settings->AutoReconnectionEnabled = FALSE; + + return 0; +} + +void shw_freerdp_client_free(freerdp* instance, rdpContext* context) +{ + shwContext* shw = (shwContext*) instance->context; +} + +int shw_RdpClientEntry(RDP_CLIENT_ENTRY_POINTS* pEntryPoints) +{ + pEntryPoints->Version = 1; + pEntryPoints->Size = sizeof(RDP_CLIENT_ENTRY_POINTS_V1); + + pEntryPoints->settings = NULL; + + pEntryPoints->ContextSize = sizeof(shwContext); + pEntryPoints->GlobalInit = shw_freerdp_client_global_init; + pEntryPoints->GlobalUninit = shw_freerdp_client_global_uninit; + pEntryPoints->ClientNew = shw_freerdp_client_new; + pEntryPoints->ClientFree = shw_freerdp_client_free; + pEntryPoints->ClientStart = shw_freerdp_client_start; + pEntryPoints->ClientStop = shw_freerdp_client_stop; + + return 0; +} + +int win_shadow_rdp_init(winShadowSubsystem* subsystem) +{ + rdpContext* context; + RDP_CLIENT_ENTRY_POINTS clientEntryPoints; + + ZeroMemory(&clientEntryPoints, sizeof(RDP_CLIENT_ENTRY_POINTS)); + clientEntryPoints.Size = sizeof(RDP_CLIENT_ENTRY_POINTS); + clientEntryPoints.Version = RDP_CLIENT_INTERFACE_VERSION; + + shw_RdpClientEntry(&clientEntryPoints); + + context = freerdp_client_context_new(&clientEntryPoints); + + subsystem->shw = (shwContext*) context; + subsystem->shw->settings = context->settings; + + return 1; +} + +int win_shadow_rdp_start(winShadowSubsystem* subsystem) +{ + int status; + shwContext* shw = subsystem->shw; + rdpContext* context = (rdpContext*) shw; + + status = freerdp_client_start(context); + + return status; +} + +int win_shadow_rdp_stop(winShadowSubsystem* subsystem) +{ + int status; + shwContext* shw = subsystem->shw; + rdpContext* context = (rdpContext*) shw; + + status = freerdp_client_stop(context); + + return status; +} + +int win_shadow_rdp_uninit(winShadowSubsystem* subsystem) +{ + win_shadow_rdp_stop(subsystem); + + return 1; +} diff --git a/server/shadow/Win/win_rdp.h b/server/shadow/Win/win_rdp.h new file mode 100644 index 000000000..ac7d99afa --- /dev/null +++ b/server/shadow/Win/win_rdp.h @@ -0,0 +1,50 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FREERDP_SHADOW_SERVER_WIN_RDP_H +#define FREERDP_SHADOW_SERVER_WIN_RDP_H + +typedef struct shw_context shwContext; + +#include "win_shadow.h" + +struct shw_context +{ + rdpContext context; + DEFINE_RDP_CLIENT_COMMON(); + + HANDLE StopEvent; + freerdp* instance; + rdpSettings* settings; +}; + +#ifdef __cplusplus +extern "C" { +#endif + +int win_shadow_rdp_init(winShadowSubsystem* subsystem); +int win_shadow_rdp_uninit(winShadowSubsystem* subsystem); + +int win_shadow_rdp_start(winShadowSubsystem* subsystem); +int win_shadow_rdp_stop(winShadowSubsystem* subsystem); + +#ifdef __cplusplus +} +#endif + +#endif /* FREERDP_SHADOW_SERVER_WIN_RDP_H */ diff --git a/server/shadow/Win/win_shadow.h b/server/shadow/Win/win_shadow.h index 870b9749a..337f5e518 100644 --- a/server/shadow/Win/win_shadow.h +++ b/server/shadow/Win/win_shadow.h @@ -31,6 +31,7 @@ typedef struct win_shadow_subsystem winShadowSubsystem; #include #include +#include "win_rdp.h" #include "win_wds.h" #include "win_dxgi.h" @@ -44,6 +45,7 @@ struct win_shadow_subsystem #ifdef WITH_WDS_API HWND hWnd; + shwContext* shw; rdpAssistanceFile* pAssistanceFile; _IRDPSessionEvents* pSessionEvents; IRDPSRAPISharingSession* pSharingSession; diff --git a/server/shadow/Win/win_wds.c b/server/shadow/Win/win_wds.c index 1fabb08fe..e83267efe 100644 --- a/server/shadow/Win/win_wds.c +++ b/server/shadow/Win/win_wds.c @@ -23,6 +23,8 @@ #include #include +#include "win_rdp.h" + #include "win_wds.h" #undef DEFINE_GUID @@ -516,13 +518,16 @@ int win_shadow_wds_init(winShadowSubsystem* subsystem) DWORD dwCookie; long left, top; long right, bottom; + long width, height; IUnknown* pUnknown; + rdpSettings* settings; BSTR bstrAuthString; BSTR bstrGroupName; BSTR bstrPassword; BSTR bstrConnectionString; BSTR bstrPropertyName; VARIANT varPropertyValue; + rdpAssistanceFile* file; IConnectionPoint* pCP; IConnectionPointContainer* pCPC; @@ -599,8 +604,11 @@ int win_shadow_wds_init(winShadowSubsystem* subsystem) return -1; } - printf("GetDesktopSharedRect(): left: %d top: %d right: %d bottom: %d\n", - left, top, right, bottom); + width = right - left; + height = bottom - top; + + printf("GetDesktopSharedRect(): left: %d top: %d right: %d bottom: %d width: %d height: %d\n", + left, top, right, bottom, width, height); hr = subsystem->pSharingSession->lpVtbl->get_VirtualChannelManager(subsystem->pSharingSession, &(subsystem->pVirtualChannelMgr)); @@ -727,23 +735,23 @@ int win_shadow_wds_init(winShadowSubsystem* subsystem) return -1; } - subsystem->pAssistanceFile = freerdp_assistance_file_new(); + file = subsystem->pAssistanceFile = freerdp_assistance_file_new(); - ConvertFromUnicode(CP_UTF8, 0, (WCHAR*) bstrConnectionString, ((UINT32*) bstrConnectionString)[-1], - &(subsystem->pAssistanceFile->ConnectionString2), 0, NULL, NULL); + ConvertFromUnicode(CP_UTF8, 0, (WCHAR*) bstrConnectionString, + ((UINT32*) bstrConnectionString)[-1], &(file->ConnectionString2), 0, NULL, NULL); - status = freerdp_assistance_parse_connection_string2(subsystem->pAssistanceFile); + status = freerdp_assistance_parse_connection_string2(file); if (status < 0) return -1; - printf("ConnectionString: %s\n", subsystem->pAssistanceFile->ConnectionString2); + printf("ConnectionString: %s\n", file->ConnectionString2); - printf("RemoteAssistanceSessionId: %s\n", subsystem->pAssistanceFile->RASessionId); - printf("RemoteAssistanceRCTicket: %s\n", subsystem->pAssistanceFile->RCTicket); - printf("RemoteAssistancePassStub: %s\n", subsystem->pAssistanceFile->PassStub); - printf("RemoteAssistanceMachineAddress: %s\n", subsystem->pAssistanceFile->MachineAddress); - printf("RemoteAssistanceMachinePort: %s\n", subsystem->pAssistanceFile->MachinePort); + printf("RemoteAssistanceSessionId: %s\n", file->RASessionId); + printf("RemoteAssistanceRCTicket: %s\n", file->RCTicket); + printf("RemoteAssistancePassStub: %s\n", file->PassStub); + printf("RemoteAssistanceMachineAddress: %s\n", file->MachineAddress); + printf("RemoteAssistanceMachinePort: %d\n", file->MachinePort); if (1) { @@ -754,13 +762,48 @@ int win_shadow_wds_init(winShadowSubsystem* subsystem) if (fp) { - size = strlen(subsystem->pAssistanceFile->ConnectionString2); - fwrite(subsystem->pAssistanceFile->ConnectionString2, 1, size, fp); + size = strlen(file->ConnectionString2); + fwrite(file->ConnectionString2, 1, size, fp); fwrite("\r\n", 1, 2, fp); fclose(fp); } } + status = win_shadow_rdp_init(subsystem); + + if (status < 0) + { + printf("win_shadow_rdp_init() failure: %d\n", status); + return status; + } + + settings = subsystem->shw->settings; + + freerdp_set_param_bool(settings, FreeRDP_RemoteAssistanceMode, TRUE); + + freerdp_set_param_string(settings, FreeRDP_RemoteAssistanceSessionId, file->RASessionId); + + freerdp_set_param_string(settings, FreeRDP_RemoteAssistanceRCTicket, file->ConnectionString2); + + freerdp_set_param_string(settings, FreeRDP_RemoteAssistancePassStub, "Shadow123!"); + + freerdp_set_param_string(settings, FreeRDP_Username, "Shadow"); + freerdp_set_param_string(settings, FreeRDP_RemoteAssistancePassword, "Shadow123!"); + + freerdp_set_param_string(settings, FreeRDP_ServerHostname, file->MachineAddress); + freerdp_set_param_uint32(settings, FreeRDP_ServerPort, file->MachinePort); + + freerdp_set_param_uint32(settings, FreeRDP_DesktopWidth, width); + freerdp_set_param_uint32(settings, FreeRDP_DesktopHeight, height); + + status = win_shadow_rdp_start(subsystem); + + if (status < 0) + { + printf("win_shadow_rdp_start() failure: %d\n", status); + return status; + } + return 1; } diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index 8f8e319c2..17cb13533 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -38,6 +38,7 @@ void shadow_client_context_new(freerdp_peer* peer, rdpShadowClient* client) client->server = server; settings = peer->settings; + settings->ColorDepth = 32; settings->NSCodec = TRUE; settings->RemoteFxCodec = TRUE; @@ -45,7 +46,7 @@ void shadow_client_context_new(freerdp_peer* peer, rdpShadowClient* client) settings->FrameMarkerCommandEnabled = TRUE; settings->SurfaceFrameMarkerEnabled = TRUE; - settings->RdpSecurity = FALSE; + settings->RdpSecurity = TRUE; settings->TlsSecurity = TRUE; settings->NlaSecurity = FALSE; From 9adaadb93a4c7a2bf9bce461ac610902c32d612e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 14 Aug 2014 19:23:48 -0400 Subject: [PATCH 113/170] shadow: add more virtual channels to RDP backend like WDS API --- client/common/cmdline.c | 3 +++ include/freerdp/settings.h | 3 ++- server/shadow/Win/win_rdp.c | 6 +++++- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/client/common/cmdline.c b/client/common/cmdline.c index 7e8bc649c..1c21f8200 100644 --- a/client/common/cmdline.c +++ b/client/common/cmdline.c @@ -2093,6 +2093,9 @@ int freerdp_client_load_addins(rdpChannels* channels, rdpSettings* settings) } if (settings->DynamicChannelCount) + settings->SupportDynamicChannels = TRUE; + + if (settings->SupportDynamicChannels) { freerdp_client_load_static_channel_addin(channels, settings, "drdynvc", settings); } diff --git a/include/freerdp/settings.h b/include/freerdp/settings.h index 5f48aeee7..f1002e1ce 100644 --- a/include/freerdp/settings.h +++ b/include/freerdp/settings.h @@ -1359,7 +1359,8 @@ struct rdp_settings ALIGN64 UINT32 DynamicChannelCount; /* 5056 */ ALIGN64 UINT32 DynamicChannelArraySize; /* 5057 */ ALIGN64 ADDIN_ARGV** DynamicChannelArray; /* 5058 */ - UINT64 padding5184[5184 - 5059]; /* 5059 */ + ALIGN64 BOOL SupportDynamicChannels; /* 5059 */ + UINT64 padding5184[5184 - 5060]; /* 5060 */ /** * WARNING: End of ABI stable zone! diff --git a/server/shadow/Win/win_rdp.c b/server/shadow/Win/win_rdp.c index 4881ad8a7..779128a60 100644 --- a/server/shadow/Win/win_rdp.c +++ b/server/shadow/Win/win_rdp.c @@ -197,7 +197,7 @@ void* shw_client_thread(void* arg) printf("freerdp_connect: %d\n", bSuccess); - if (!freerdp_connect(instance)) + if (!bSuccess) { ExitThread(0); return NULL; @@ -357,6 +357,10 @@ int shw_freerdp_client_new(freerdp* instance, rdpContext* context) settings->AutoReconnectionEnabled = FALSE; + settings->DeviceRedirection = TRUE; + settings->RedirectClipboard = TRUE; + settings->SupportDynamicChannels = TRUE; + return 0; } From df146fe70d437d4bd8a038eaa0b052c894cb467c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 15 Aug 2014 13:50:22 -0400 Subject: [PATCH 114/170] shadow: fix RDP security --- server/shadow/CMakeLists.txt | 2 ++ server/shadow/shadow_client.c | 2 ++ server/shadow/shadow_server.c | 7 +++++++ 3 files changed, 11 insertions(+) diff --git a/server/shadow/CMakeLists.txt b/server/shadow/CMakeLists.txt index 51b5f9089..c5a104768 100644 --- a/server/shadow/CMakeLists.txt +++ b/server/shadow/CMakeLists.txt @@ -115,6 +115,8 @@ if(WITH_X11) endif() endif() +include_directories(${OPENSSL_INCLUDE_DIR}) + set(${MODULE_PREFIX}_SRCS shadow_client.c shadow_client.h diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index 17cb13533..a66049944 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -53,6 +53,8 @@ void shadow_client_context_new(freerdp_peer* peer, rdpShadowClient* client) settings->CertificateFile = _strdup(server->CertificateFile); settings->PrivateKeyFile = _strdup(server->PrivateKeyFile); + settings->RdpKeyFile = _strdup(settings->PrivateKeyFile); + client->inLobby = TRUE; client->mayView = server->mayView; client->mayInteract = server->mayInteract; diff --git a/server/shadow/shadow_server.c b/server/shadow/shadow_server.c index 9d2ecb6ec..22949822b 100644 --- a/server/shadow/shadow_server.c +++ b/server/shadow/shadow_server.c @@ -21,6 +21,7 @@ #endif #include +#include #include #include #include @@ -30,6 +31,10 @@ #include +#ifdef _WIN32 +#include +#endif + #ifndef _WIN32 #include #include @@ -420,6 +425,8 @@ int shadow_server_init(rdpShadowServer* server) { int status; + winpr_InitializeSSL(WINPR_SSL_INIT_DEFAULT); + WTSRegisterWtsApiFunctionTable(FreeRDP_InitWtsApi()); server->StopEvent = CreateEvent(NULL, TRUE, FALSE, NULL); From 0457a29f57a1ca8bf667ac84e6929fd643b23c0d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 15 Aug 2014 14:15:53 -0400 Subject: [PATCH 115/170] shadow: fix WDS connectivity --- libfreerdp/core/info.c | 12 ++++++++++-- server/shadow/Win/win_wds.c | 10 ++-------- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/libfreerdp/core/info.c b/libfreerdp/core/info.c index 771e86bc7..217b3ff21 100644 --- a/libfreerdp/core/info.c +++ b/libfreerdp/core/info.c @@ -503,8 +503,16 @@ void rdp_write_info_packet(wStream* s, rdpSettings* settings) } else { - /* This field MUST be filled with "*" */ - cbAlternateShell = ConvertToUnicode(CP_UTF8, 0, "*", -1, &alternateShellW, 0) * 2; + if (settings->RemoteAssistancePassStub) + { + /* This field MUST be filled with "*" */ + cbAlternateShell = ConvertToUnicode(CP_UTF8, 0, "*", -1, &alternateShellW, 0) * 2; + } + else + { + /* This field must contain the remote assistance password */ + cbAlternateShell = ConvertToUnicode(CP_UTF8, 0, settings->RemoteAssistancePassword, -1, &alternateShellW, 0) * 2; + } } if (!settings->RemoteAssistanceMode) diff --git a/server/shadow/Win/win_wds.c b/server/shadow/Win/win_wds.c index e83267efe..1c6209c59 100644 --- a/server/shadow/Win/win_wds.c +++ b/server/shadow/Win/win_wds.c @@ -747,12 +747,6 @@ int win_shadow_wds_init(winShadowSubsystem* subsystem) printf("ConnectionString: %s\n", file->ConnectionString2); - printf("RemoteAssistanceSessionId: %s\n", file->RASessionId); - printf("RemoteAssistanceRCTicket: %s\n", file->RCTicket); - printf("RemoteAssistancePassStub: %s\n", file->PassStub); - printf("RemoteAssistanceMachineAddress: %s\n", file->MachineAddress); - printf("RemoteAssistanceMachinePort: %d\n", file->MachinePort); - if (1) { FILE* fp; @@ -785,10 +779,10 @@ int win_shadow_wds_init(winShadowSubsystem* subsystem) freerdp_set_param_string(settings, FreeRDP_RemoteAssistanceRCTicket, file->ConnectionString2); - freerdp_set_param_string(settings, FreeRDP_RemoteAssistancePassStub, "Shadow123!"); - + freerdp_set_param_string(settings, FreeRDP_Domain, "RDP"); freerdp_set_param_string(settings, FreeRDP_Username, "Shadow"); freerdp_set_param_string(settings, FreeRDP_RemoteAssistancePassword, "Shadow123!"); + freerdp_set_param_bool(settings, FreeRDP_AutoLogonEnabled, TRUE); freerdp_set_param_string(settings, FreeRDP_ServerHostname, file->MachineAddress); freerdp_set_param_uint32(settings, FreeRDP_ServerPort, file->MachinePort); From 09ae1ac9caa2468c632edc63d3fca425b867971e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 15 Aug 2014 14:57:09 -0400 Subject: [PATCH 116/170] shadow: initial working support for WDS+RDP backend --- server/shadow/Win/win_rdp.c | 71 ++++++++++------------------------ server/shadow/Win/win_rdp.h | 6 +++ server/shadow/Win/win_shadow.c | 57 +++++++++++++++++++++++++-- server/shadow/Win/win_shadow.h | 2 + server/shadow/Win/win_wds.c | 10 +++-- 5 files changed, 90 insertions(+), 56 deletions(-) diff --git a/server/shadow/Win/win_rdp.c b/server/shadow/Win/win_rdp.c index 779128a60..1c3635e05 100644 --- a/server/shadow/Win/win_rdp.c +++ b/server/shadow/Win/win_rdp.c @@ -23,11 +23,6 @@ #include #include -#include -#include -#include -#include - #include "win_rdp.h" void shw_OnChannelConnectedEventHandler(rdpContext* context, ChannelConnectedEventArgs* e) @@ -57,58 +52,30 @@ void shw_begin_paint(rdpContext* context) void shw_end_paint(rdpContext* context) { - INT32 x, y; - UINT32 w, h; - shwContext* shw; - HGDI_RGN invalid; + int index; + int ninvalid; HGDI_RGN cinvalid; - rdpSettings* settings; + RECTANGLE_16 invalidRect; rdpGdi* gdi = context->gdi; + shwContext* shw = (shwContext*) context; + winShadowSubsystem* subsystem = shw->subsystem; - shw = (shwContext*) context; - settings = context->settings; - - invalid = gdi->primary->hdc->hwnd->invalid; + ninvalid = gdi->primary->hdc->hwnd->ninvalid; cinvalid = gdi->primary->hdc->hwnd->cinvalid; - x = invalid->x; - y = invalid->y; - w = invalid->w; - h = invalid->h; + for (index = 0; index < ninvalid; index++) + { + invalidRect.left = cinvalid[index].x; + invalidRect.top = cinvalid[index].y; + invalidRect.right = cinvalid[index].x + cinvalid[index].w; + invalidRect.bottom = cinvalid[index].y + cinvalid[index].h; - if (x < 0) - x = 0; + region16_union_rect(&(subsystem->invalidRegion), &(subsystem->invalidRegion), &invalidRect); + } - if (x > settings->DesktopWidth - 1) - x = settings->DesktopWidth - 1; - - w += x % 16; - x -= x % 16; - - w += w % 16; - - if (x + w > settings->DesktopWidth) - w = settings->DesktopWidth - x; - - if (y < 0) - y = 0; - - if (y > settings->DesktopHeight - 1) - y = settings->DesktopHeight - 1; - - h += y % 16; - y -= y % 16; - - h += h % 16; - - if (h > settings->DesktopHeight) - h = settings->DesktopHeight; - - if (y + h > settings->DesktopHeight) - h = settings->DesktopHeight - y; - - if (w * h < 1) - return; + SetEvent(subsystem->RdpUpdateEnterEvent); + WaitForSingleObject(subsystem->RdpUpdateLeaveEvent, INFINITE); + ResetEvent(subsystem->RdpUpdateLeaveEvent); } void shw_desktop_resize(rdpContext* context) @@ -402,6 +369,10 @@ int win_shadow_rdp_init(winShadowSubsystem* subsystem) subsystem->shw = (shwContext*) context; subsystem->shw->settings = context->settings; + subsystem->shw->subsystem = subsystem; + + subsystem->RdpUpdateEnterEvent = CreateEvent(NULL, TRUE, FALSE, NULL); + subsystem->RdpUpdateLeaveEvent = CreateEvent(NULL, TRUE, FALSE, NULL); return 1; } diff --git a/server/shadow/Win/win_rdp.h b/server/shadow/Win/win_rdp.h index ac7d99afa..e48d46e6b 100644 --- a/server/shadow/Win/win_rdp.h +++ b/server/shadow/Win/win_rdp.h @@ -19,6 +19,11 @@ #ifndef FREERDP_SHADOW_SERVER_WIN_RDP_H #define FREERDP_SHADOW_SERVER_WIN_RDP_H +#include +#include +#include +#include + typedef struct shw_context shwContext; #include "win_shadow.h" @@ -31,6 +36,7 @@ struct shw_context HANDLE StopEvent; freerdp* instance; rdpSettings* settings; + winShadowSubsystem* subsystem; }; #ifdef __cplusplus diff --git a/server/shadow/Win/win_shadow.c b/server/shadow/Win/win_shadow.c index 77adf2a88..d92fe2394 100644 --- a/server/shadow/Win/win_shadow.c +++ b/server/shadow/Win/win_shadow.c @@ -249,7 +249,20 @@ int win_shadow_surface_copy(winShadowSubsystem* subsystem) printf("SurfaceCopy x: %d y: %d width: %d height: %d right: %d bottom: %d\n", x, y, width, height, x + width, y + height); -#ifdef WITH_DXGI_1_2 +#if defined(WITH_WDS_API) + { + rdpGdi* gdi; + shwContext* shw; + rdpContext* context; + + shw = subsystem->shw; + context = (rdpContext*) shw; + gdi = context->gdi; + + pDstData = gdi->primary_buffer; + nDstStep = gdi->width * 4; + } +#elif defined(WITH_DXGI_1_2) status = win_shadow_dxgi_fetch_frame_data(subsystem, &pDstData, &nDstStep, x, y, width, height); #endif @@ -277,6 +290,44 @@ int win_shadow_surface_copy(winShadowSubsystem* subsystem) return 1; } +#if defined(WITH_WDS_API) + +void* win_shadow_subsystem_thread(winShadowSubsystem* subsystem) +{ + DWORD status; + DWORD nCount; + HANDLE events[32]; + HANDLE StopEvent; + + StopEvent = subsystem->server->StopEvent; + + nCount = 0; + events[nCount++] = StopEvent; + events[nCount++] = subsystem->RdpUpdateEnterEvent; + + while (1) + { + status = WaitForMultipleObjects(nCount, events, FALSE, INFINITE); + + if (WaitForSingleObject(StopEvent, 0) == WAIT_OBJECT_0) + { + break; + } + + if (WaitForSingleObject(subsystem->RdpUpdateEnterEvent, 0) == WAIT_OBJECT_0) + { + win_shadow_surface_copy(subsystem); + ResetEvent(subsystem->RdpUpdateEnterEvent); + SetEvent(subsystem->RdpUpdateLeaveEvent); + } + } + + ExitThread(0); + return NULL; +} + +#elif defined(WITH_DXGI_1_2) + void* win_shadow_subsystem_thread(winShadowSubsystem* subsystem) { int fps; @@ -314,7 +365,6 @@ void* win_shadow_subsystem_thread(winShadowSubsystem* subsystem) if ((status == WAIT_TIMEOUT) || (GetTickCount64() > frameTime)) { -#ifdef WITH_DXGI_1_2 int dxgi_status; dxgi_status = win_shadow_dxgi_get_next_frame(subsystem); @@ -324,7 +374,6 @@ void* win_shadow_subsystem_thread(winShadowSubsystem* subsystem) if (dxgi_status > 0) win_shadow_surface_copy(subsystem); -#endif dwInterval = 1000 / fps; frameTime += dwInterval; @@ -335,6 +384,8 @@ void* win_shadow_subsystem_thread(winShadowSubsystem* subsystem) return NULL; } +#endif + int win_shadow_subsystem_init(winShadowSubsystem* subsystem) { HDC hdc; diff --git a/server/shadow/Win/win_shadow.h b/server/shadow/Win/win_shadow.h index 337f5e518..c403bd6f1 100644 --- a/server/shadow/Win/win_shadow.h +++ b/server/shadow/Win/win_shadow.h @@ -46,6 +46,8 @@ struct win_shadow_subsystem #ifdef WITH_WDS_API HWND hWnd; shwContext* shw; + HANDLE RdpUpdateEnterEvent; + HANDLE RdpUpdateLeaveEvent; rdpAssistanceFile* pAssistanceFile; _IRDPSessionEvents* pSessionEvents; IRDPSRAPISharingSession* pSharingSession; diff --git a/server/shadow/Win/win_wds.c b/server/shadow/Win/win_wds.c index 1c6209c59..97d97a472 100644 --- a/server/shadow/Win/win_wds.c +++ b/server/shadow/Win/win_wds.c @@ -747,7 +747,7 @@ int win_shadow_wds_init(winShadowSubsystem* subsystem) printf("ConnectionString: %s\n", file->ConnectionString2); - if (1) + if (0) { FILE* fp; size_t size; @@ -803,8 +803,6 @@ int win_shadow_wds_init(winShadowSubsystem* subsystem) int win_shadow_wds_uninit(winShadowSubsystem* subsystem) { - printf("win_shadow_wds_uninit\n"); - if (subsystem->pSharingSession) { subsystem->pSharingSession->lpVtbl->Close(subsystem->pSharingSession); @@ -860,5 +858,11 @@ int win_shadow_wds_uninit(winShadowSubsystem* subsystem) subsystem->hWnd = NULL; } + if (subsystem->shw) + { + win_shadow_rdp_uninit(subsystem); + subsystem->shw = NULL; + } + return 1; } From 536697d63b1a2b1bd4a147334a6e62f96cd1637d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 15 Aug 2014 16:06:08 -0400 Subject: [PATCH 117/170] shadow: fix build for Windows XP --- server/shadow/Win/win_wds.c | 14 ++++++++++++++ server/shadow/Win/win_wds.h | 4 ++++ 2 files changed, 18 insertions(+) diff --git a/server/shadow/Win/win_wds.c b/server/shadow/Win/win_wds.c index 97d97a472..52e2d1cec 100644 --- a/server/shadow/Win/win_wds.c +++ b/server/shadow/Win/win_wds.c @@ -27,6 +27,20 @@ #include "win_wds.h" +/** + * Windows Desktop Sharing API: + * http://blogs.msdn.com/b/rds/archive/2007/03/08/windows-desktop-sharing-api.aspx + * + * Windows Desktop Sharing Interfaces: + * http://msdn.microsoft.com/en-us/library/aa373871%28v=vs.85%29.aspx + * + * Offer Remote Assistance Sample C: + * http://msdn.microsoft.com/en-us/library/ms811079.aspx#remoteassistanceapi_topic2b + * + * Remote Assistance in XP: Programmatically establish an RDP session: + * http://www.codeproject.com/Articles/29939/Remote-Assistance-in-XP-Programmatically-establish + */ + #undef DEFINE_GUID #define INITGUID diff --git a/server/shadow/Win/win_wds.h b/server/shadow/Win/win_wds.h index 346885586..d8859d706 100644 --- a/server/shadow/Win/win_wds.h +++ b/server/shadow/Win/win_wds.h @@ -27,6 +27,10 @@ #include +#ifndef DISPID_RDPAPI_EVENT_ON_BOUNDING_RECT_CHANGED +#define DISPID_RDPAPI_EVENT_ON_BOUNDING_RECT_CHANGED 340 +#endif + #include "win_shadow.h" #ifdef __cplusplus From ca906503369b4799639fbe583f85a4448f794b34 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 15 Aug 2014 18:12:53 -0400 Subject: [PATCH 118/170] shadow: fix race conditions --- libfreerdp/core/listener.c | 2 + server/shadow/Win/win_rdp.c | 77 +++++++++++++++++++++------------- server/shadow/Win/win_shadow.c | 11 ++++- server/shadow/shadow_client.c | 2 + server/shadow/shadow_server.c | 4 ++ 5 files changed, 67 insertions(+), 29 deletions(-) diff --git a/libfreerdp/core/listener.c b/libfreerdp/core/listener.c index 9461551bb..4073b10ca 100644 --- a/libfreerdp/core/listener.c +++ b/libfreerdp/core/listener.c @@ -157,6 +157,8 @@ static BOOL freerdp_listener_open(freerdp_listener* instance, const char* bind_a continue; } + /* FIXME: these file descriptors do not work on Windows */ + listener->sockfds[listener->num_sockfds] = sockfd; listener->events[listener->num_sockfds] = CreateFileDescriptorEvent(NULL, FALSE, FALSE, sockfd); listener->num_sockfds++; diff --git a/server/shadow/Win/win_rdp.c b/server/shadow/Win/win_rdp.c index 1c3635e05..eef6fd724 100644 --- a/server/shadow/Win/win_rdp.c +++ b/server/shadow/Win/win_rdp.c @@ -88,6 +88,21 @@ void shw_surface_frame_marker(rdpContext* context, SURFACE_FRAME_MARKER* surface shwContext* shw = (shwContext*) context; } +BOOL shw_authenticate(freerdp* instance, char** username, char** password, char** domain) +{ + return TRUE; +} + +BOOL shw_verify_certificate(freerdp* instance, char* subject, char* issuer, char* fingerprint) +{ + return TRUE; +} + +int shw_verify_x509_certificate(freerdp* instance, BYTE* data, int length, const char* hostname, int port, DWORD flags) +{ + return 1; +} + void shw_OnConnectionResultEventHandler(rdpContext* context, ConnectionResultEventArgs* e) { shwContext* shw = (shwContext*) context; @@ -273,6 +288,9 @@ int shw_freerdp_client_new(freerdp* instance, rdpContext* context) instance->PreConnect = shw_pre_connect; instance->PostConnect = shw_post_connect; + instance->Authenticate = shw_authenticate; + instance->VerifyCertificate = shw_verify_certificate; + instance->VerifyX509Certificate = shw_verify_x509_certificate; context->channels = freerdp_channels_new(); @@ -281,48 +299,51 @@ int shw_freerdp_client_new(freerdp* instance, rdpContext* context) settings = instance->settings; shw->settings = instance->context->settings; - settings->SoftwareGdi = TRUE; - settings->OrderSupport[NEG_DSTBLT_INDEX] = TRUE; - settings->OrderSupport[NEG_PATBLT_INDEX] = TRUE; - settings->OrderSupport[NEG_SCRBLT_INDEX] = TRUE; - settings->OrderSupport[NEG_OPAQUE_RECT_INDEX] = TRUE; - settings->OrderSupport[NEG_DRAWNINEGRID_INDEX] = FALSE; - settings->OrderSupport[NEG_MULTIDSTBLT_INDEX] = FALSE; - settings->OrderSupport[NEG_MULTIPATBLT_INDEX] = FALSE; - settings->OrderSupport[NEG_MULTISCRBLT_INDEX] = FALSE; - settings->OrderSupport[NEG_MULTIOPAQUERECT_INDEX] = TRUE; - settings->OrderSupport[NEG_MULTI_DRAWNINEGRID_INDEX] = FALSE; - settings->OrderSupport[NEG_LINETO_INDEX] = TRUE; - settings->OrderSupport[NEG_POLYLINE_INDEX] = TRUE; - settings->OrderSupport[NEG_MEMBLT_INDEX] = settings->BitmapCacheEnabled; - settings->OrderSupport[NEG_MEM3BLT_INDEX] = (settings->SoftwareGdi) ? TRUE : FALSE; - settings->OrderSupport[NEG_MEMBLT_V2_INDEX] = settings->BitmapCacheEnabled; - settings->OrderSupport[NEG_MEM3BLT_V2_INDEX] = FALSE; - settings->OrderSupport[NEG_SAVEBITMAP_INDEX] = FALSE; - settings->OrderSupport[NEG_GLYPH_INDEX_INDEX] = TRUE; - settings->OrderSupport[NEG_FAST_INDEX_INDEX] = TRUE; - settings->OrderSupport[NEG_FAST_GLYPH_INDEX] = TRUE; - settings->OrderSupport[NEG_POLYGON_SC_INDEX] = (settings->SoftwareGdi) ? FALSE : TRUE; - settings->OrderSupport[NEG_POLYGON_CB_INDEX] = (settings->SoftwareGdi) ? FALSE : TRUE; - settings->OrderSupport[NEG_ELLIPSE_SC_INDEX] = FALSE; - settings->OrderSupport[NEG_ELLIPSE_CB_INDEX] = FALSE; - settings->AsyncTransport = FALSE; settings->AsyncChannels = FALSE; settings->AsyncUpdate = FALSE; settings->AsyncInput = FALSE; settings->IgnoreCertificate = TRUE; + settings->ExternalCertificateManagement = TRUE; settings->RdpSecurity = TRUE; settings->TlsSecurity = TRUE; settings->NlaSecurity = FALSE; - settings->ColorDepth = 32; + settings->BitmapCacheEnabled = FALSE; + settings->BitmapCacheV3Enabled = FALSE; + settings->OffscreenSupportLevel = FALSE; + settings->GlyphSupportLevel = GLYPH_SUPPORT_NONE; + settings->BrushSupportLevel = FALSE; - settings->CompressionEnabled = TRUE; + ZeroMemory(settings->OrderSupport, 32); + + settings->FrameMarkerCommandEnabled = TRUE; + settings->SurfaceFrameMarkerEnabled = TRUE; + settings->AltSecFrameMarkerSupport = TRUE; + + settings->ColorDepth = 32; + settings->NSCodec = TRUE; + settings->RemoteFxCodec = TRUE; + settings->FastPathInput = TRUE; + settings->FastPathOutput = TRUE; + settings->LargePointerFlag = TRUE; + + settings->CompressionEnabled = FALSE; settings->AutoReconnectionEnabled = FALSE; + settings->NetworkAutoDetect = FALSE; + settings->SupportHeartbeatPdu = FALSE; + settings->SupportMultitransport = FALSE; + settings->ConnectionType = CONNECTION_TYPE_LAN; + + settings->AllowFontSmoothing = TRUE; + settings->AllowDesktopComposition = TRUE; + settings->DisableWallpaper = FALSE; + settings->DisableFullWindowDrag = TRUE; + settings->DisableMenuAnims = TRUE; + settings->DisableThemes = FALSE; settings->DeviceRedirection = TRUE; settings->RedirectClipboard = TRUE; diff --git a/server/shadow/Win/win_shadow.c b/server/shadow/Win/win_shadow.c index d92fe2394..a2299d808 100644 --- a/server/shadow/Win/win_shadow.c +++ b/server/shadow/Win/win_shadow.c @@ -218,6 +218,12 @@ int win_shadow_surface_copy(winShadowSubsystem* subsystem) server = subsystem->server; surface = server->surface; + if (ArrayList_Count(server->clients) < 1) + { + region16_clear(&(subsystem->invalidRegion)); + return 1; + } + surfaceRect.left = surface->x; surfaceRect.top = surface->y; surfaceRect.right = surface->x + surface->width; @@ -273,6 +279,8 @@ int win_shadow_surface_copy(winShadowSubsystem* subsystem) surface->scanline, x - surface->x, y - surface->y, width, height, pDstData, PIXEL_FORMAT_XRGB32, nDstStep, 0, 0); + ArrayList_Lock(server->clients); + count = ArrayList_Count(server->clients); InitializeSynchronizationBarrier(&(subsystem->barrier), count + 1, -1); @@ -280,10 +288,11 @@ int win_shadow_surface_copy(winShadowSubsystem* subsystem) SetEvent(subsystem->updateEvent); EnterSynchronizationBarrier(&(subsystem->barrier), 0); + ResetEvent(subsystem->updateEvent); DeleteSynchronizationBarrier(&(subsystem->barrier)); - ResetEvent(subsystem->updateEvent); + ArrayList_Unlock(server->clients); region16_clear(&(subsystem->invalidRegion)); diff --git a/server/shadow/shadow_client.c b/server/shadow/shadow_client.c index a66049944..5098a35ea 100644 --- a/server/shadow/shadow_client.c +++ b/server/shadow/shadow_client.c @@ -694,6 +694,8 @@ void* shadow_client_thread(rdpShadowClient* client) } EnterSynchronizationBarrier(&(subsystem->barrier), 0); + + while (WaitForSingleObject(UpdateEvent, 0) == WAIT_OBJECT_0); } if (WaitForSingleObject(ClientEvent, 0) == WAIT_OBJECT_0) diff --git a/server/shadow/shadow_server.c b/server/shadow/shadow_server.c index 22949822b..c990d1fcf 100644 --- a/server/shadow/shadow_server.c +++ b/server/shadow/shadow_server.c @@ -313,6 +313,10 @@ void* shadow_server_thread(rdpShadowServer* server) fprintf(stderr, "Failed to check FreeRDP file descriptor\n"); break; } + +#ifdef _WIN32 + Sleep(100); /* FIXME: listener event handles */ +#endif } listener->Close(listener); From 0c84c81401c041a249834c07b8f953d5b4dcabc5 Mon Sep 17 00:00:00 2001 From: Ron Yaari Date: Mon, 18 Aug 2014 10:19:47 +0300 Subject: [PATCH 119/170] X11: fix toggle-fullscreen option functionality --- channels/client/tables.c | 186 +++++++++++++++++++++++++++++++++++++++ client/X11/xf_keyboard.c | 17 ++-- 2 files changed, 196 insertions(+), 7 deletions(-) create mode 100644 channels/client/tables.c diff --git a/channels/client/tables.c b/channels/client/tables.c new file mode 100644 index 000000000..6d406168f --- /dev/null +++ b/channels/client/tables.c @@ -0,0 +1,186 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * Static Entry Point Tables + * + * Copyright 2012 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include "tables.h" + + + +extern BOOL VCAPITYPE rdpsnd_VirtualChannelEntry(PCHANNEL_ENTRY_POINTS); +extern BOOL VCAPITYPE remdesk_VirtualChannelEntry(PCHANNEL_ENTRY_POINTS); +extern BOOL VCAPITYPE encomsp_VirtualChannelEntry(PCHANNEL_ENTRY_POINTS); +extern BOOL VCAPITYPE rdpdr_VirtualChannelEntry(PCHANNEL_ENTRY_POINTS); +extern BOOL VCAPITYPE rail_VirtualChannelEntry(PCHANNEL_ENTRY_POINTS); +extern BOOL VCAPITYPE drdynvc_VirtualChannelEntry(PCHANNEL_ENTRY_POINTS); +extern BOOL VCAPITYPE cliprdr_VirtualChannelEntry(PCHANNEL_ENTRY_POINTS); + +extern void rdpgfx_DVCPluginEntry(); +extern void tsmf_DVCPluginEntry(); +extern void rdpei_DVCPluginEntry(); +extern void disp_DVCPluginEntry(); +extern void echo_DVCPluginEntry(); +extern void audin_DVCPluginEntry(); + +extern void smartcard_DeviceServiceEntry(); +extern void parallel_DeviceServiceEntry(); +extern void drive_DeviceServiceEntry(); +extern void serial_DeviceServiceEntry(); + + +const STATIC_ENTRY CLIENT_VirtualChannelEntry_TABLE[] = +{ + + { "rdpsnd", rdpsnd_VirtualChannelEntry }, + { "remdesk", remdesk_VirtualChannelEntry }, + { "encomsp", encomsp_VirtualChannelEntry }, + { "rdpdr", rdpdr_VirtualChannelEntry }, + { "rail", rail_VirtualChannelEntry }, + { "drdynvc", drdynvc_VirtualChannelEntry }, + { "cliprdr", cliprdr_VirtualChannelEntry }, + { NULL, NULL } +}; +const STATIC_ENTRY CLIENT_DVCPluginEntry_TABLE[] = +{ + + { "rdpgfx", rdpgfx_DVCPluginEntry }, + { "tsmf", tsmf_DVCPluginEntry }, + { "rdpei", rdpei_DVCPluginEntry }, + { "disp", disp_DVCPluginEntry }, + { "echo", echo_DVCPluginEntry }, + { "audin", audin_DVCPluginEntry }, + { NULL, NULL } +}; +const STATIC_ENTRY CLIENT_DeviceServiceEntry_TABLE[] = +{ + + { "smartcard", smartcard_DeviceServiceEntry }, + { "parallel", parallel_DeviceServiceEntry }, + { "drive", drive_DeviceServiceEntry }, + { "serial", serial_DeviceServiceEntry }, + { NULL, NULL } +}; + + +const STATIC_ENTRY_TABLE CLIENT_STATIC_ENTRY_TABLES[] = +{ + { "VirtualChannelEntry", CLIENT_VirtualChannelEntry_TABLE }, + { "DVCPluginEntry", CLIENT_DVCPluginEntry_TABLE }, + { "DeviceServiceEntry", CLIENT_DeviceServiceEntry_TABLE }, + { NULL, NULL } +}; + + +extern void alsa_freerdp_rdpsnd_client_subsystem_entry(); +extern void alsa_freerdp_tsmf_client_audio_subsystem_entry(); +extern void alsa_freerdp_audin_client_subsystem_entry(); + + +const STATIC_SUBSYSTEM_ENTRY CLIENT_RDPSND_SUBSYSTEM_TABLE[] = +{ + { "alsa", "", alsa_freerdp_rdpsnd_client_subsystem_entry }, + { NULL, NULL, NULL } +}; +const STATIC_SUBSYSTEM_ENTRY CLIENT_RDPGFX_SUBSYSTEM_TABLE[] = +{ + { NULL, NULL, NULL } +}; +const STATIC_SUBSYSTEM_ENTRY CLIENT_SMARTCARD_SUBSYSTEM_TABLE[] = +{ + { NULL, NULL, NULL } +}; +const STATIC_SUBSYSTEM_ENTRY CLIENT_PARALLEL_SUBSYSTEM_TABLE[] = +{ + { NULL, NULL, NULL } +}; +const STATIC_SUBSYSTEM_ENTRY CLIENT_TSMF_SUBSYSTEM_TABLE[] = +{ + { "alsa", "audio", alsa_freerdp_tsmf_client_audio_subsystem_entry }, + { NULL, NULL, NULL } +}; +const STATIC_SUBSYSTEM_ENTRY CLIENT_REMDESK_SUBSYSTEM_TABLE[] = +{ + { NULL, NULL, NULL } +}; +const STATIC_SUBSYSTEM_ENTRY CLIENT_ENCOMSP_SUBSYSTEM_TABLE[] = +{ + { NULL, NULL, NULL } +}; +const STATIC_SUBSYSTEM_ENTRY CLIENT_RDPDR_SUBSYSTEM_TABLE[] = +{ + { NULL, NULL, NULL } +}; +const STATIC_SUBSYSTEM_ENTRY CLIENT_RDPEI_SUBSYSTEM_TABLE[] = +{ + { NULL, NULL, NULL } +}; +const STATIC_SUBSYSTEM_ENTRY CLIENT_RAIL_SUBSYSTEM_TABLE[] = +{ + { NULL, NULL, NULL } +}; +const STATIC_SUBSYSTEM_ENTRY CLIENT_DRIVE_SUBSYSTEM_TABLE[] = +{ + { NULL, NULL, NULL } +}; +const STATIC_SUBSYSTEM_ENTRY CLIENT_DISP_SUBSYSTEM_TABLE[] = +{ + { NULL, NULL, NULL } +}; +const STATIC_SUBSYSTEM_ENTRY CLIENT_SERIAL_SUBSYSTEM_TABLE[] = +{ + { NULL, NULL, NULL } +}; +const STATIC_SUBSYSTEM_ENTRY CLIENT_ECHO_SUBSYSTEM_TABLE[] = +{ + { NULL, NULL, NULL } +}; +const STATIC_SUBSYSTEM_ENTRY CLIENT_AUDIN_SUBSYSTEM_TABLE[] = +{ + { "alsa", "", alsa_freerdp_audin_client_subsystem_entry }, + { NULL, NULL, NULL } +}; +const STATIC_SUBSYSTEM_ENTRY CLIENT_DRDYNVC_SUBSYSTEM_TABLE[] = +{ + { NULL, NULL, NULL } +}; +const STATIC_SUBSYSTEM_ENTRY CLIENT_CLIPRDR_SUBSYSTEM_TABLE[] = +{ + { NULL, NULL, NULL } +}; + +const STATIC_ADDIN_TABLE CLIENT_STATIC_ADDIN_TABLE[] = +{ + { "rdpsnd", rdpsnd_VirtualChannelEntry, CLIENT_RDPSND_SUBSYSTEM_TABLE }, + { "rdpgfx", rdpgfx_DVCPluginEntry, CLIENT_RDPGFX_SUBSYSTEM_TABLE }, + { "smartcard", smartcard_DeviceServiceEntry, CLIENT_SMARTCARD_SUBSYSTEM_TABLE }, + { "parallel", parallel_DeviceServiceEntry, CLIENT_PARALLEL_SUBSYSTEM_TABLE }, + { "tsmf", tsmf_DVCPluginEntry, CLIENT_TSMF_SUBSYSTEM_TABLE }, + { "remdesk", remdesk_VirtualChannelEntry, CLIENT_REMDESK_SUBSYSTEM_TABLE }, + { "encomsp", encomsp_VirtualChannelEntry, CLIENT_ENCOMSP_SUBSYSTEM_TABLE }, + { "rdpdr", rdpdr_VirtualChannelEntry, CLIENT_RDPDR_SUBSYSTEM_TABLE }, + { "rdpei", rdpei_DVCPluginEntry, CLIENT_RDPEI_SUBSYSTEM_TABLE }, + { "rail", rail_VirtualChannelEntry, CLIENT_RAIL_SUBSYSTEM_TABLE }, + { "drive", drive_DeviceServiceEntry, CLIENT_DRIVE_SUBSYSTEM_TABLE }, + { "disp", disp_DVCPluginEntry, CLIENT_DISP_SUBSYSTEM_TABLE }, + { "serial", serial_DeviceServiceEntry, CLIENT_SERIAL_SUBSYSTEM_TABLE }, + { "echo", echo_DVCPluginEntry, CLIENT_ECHO_SUBSYSTEM_TABLE }, + { "audin", audin_DVCPluginEntry, CLIENT_AUDIN_SUBSYSTEM_TABLE }, + { "drdynvc", drdynvc_VirtualChannelEntry, CLIENT_DRDYNVC_SUBSYSTEM_TABLE }, + { "cliprdr", cliprdr_VirtualChannelEntry, CLIENT_CLIPRDR_SUBSYSTEM_TABLE }, + { NULL, NULL, NULL } +}; + diff --git a/client/X11/xf_keyboard.c b/client/X11/xf_keyboard.c index a4bbf12db..699cf7682 100644 --- a/client/X11/xf_keyboard.c +++ b/client/X11/xf_keyboard.c @@ -405,14 +405,17 @@ BOOL xf_keyboard_handle_special_keys(xfContext* xfc, KeySym keysym) return TRUE; } - if (keysym == XK_Return) + if(xfc->fullscreen_toggle) { - if (mod.Ctrl && mod.Alt) - { - /* Ctrl-Alt-Enter: toggle full screen */ - xf_toggle_fullscreen(xfc); - return TRUE; - } + if (keysym == XK_Return) + { + if (mod.Ctrl && mod.Alt) + { + /* Ctrl-Alt-Enter: toggle full screen */ + xf_toggle_fullscreen(xfc); + return TRUE; + } + } } if ((keysym == XK_c) || (keysym == XK_C)) From 27f5eaba8848d7fb5f1264771dfbf09c3634a914 Mon Sep 17 00:00:00 2001 From: Idan Freiberg Date: Mon, 18 Aug 2014 10:39:47 +0300 Subject: [PATCH 120/170] Revert "X11: fix toggle-fullscreen option functionality" This reverts commit 0c84c81401c041a249834c07b8f953d5b4dcabc5. --- channels/client/tables.c | 186 --------------------------------------- client/X11/xf_keyboard.c | 17 ++-- 2 files changed, 7 insertions(+), 196 deletions(-) delete mode 100644 channels/client/tables.c diff --git a/channels/client/tables.c b/channels/client/tables.c deleted file mode 100644 index 6d406168f..000000000 --- a/channels/client/tables.c +++ /dev/null @@ -1,186 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * Static Entry Point Tables - * - * Copyright 2012 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#include "tables.h" - - - -extern BOOL VCAPITYPE rdpsnd_VirtualChannelEntry(PCHANNEL_ENTRY_POINTS); -extern BOOL VCAPITYPE remdesk_VirtualChannelEntry(PCHANNEL_ENTRY_POINTS); -extern BOOL VCAPITYPE encomsp_VirtualChannelEntry(PCHANNEL_ENTRY_POINTS); -extern BOOL VCAPITYPE rdpdr_VirtualChannelEntry(PCHANNEL_ENTRY_POINTS); -extern BOOL VCAPITYPE rail_VirtualChannelEntry(PCHANNEL_ENTRY_POINTS); -extern BOOL VCAPITYPE drdynvc_VirtualChannelEntry(PCHANNEL_ENTRY_POINTS); -extern BOOL VCAPITYPE cliprdr_VirtualChannelEntry(PCHANNEL_ENTRY_POINTS); - -extern void rdpgfx_DVCPluginEntry(); -extern void tsmf_DVCPluginEntry(); -extern void rdpei_DVCPluginEntry(); -extern void disp_DVCPluginEntry(); -extern void echo_DVCPluginEntry(); -extern void audin_DVCPluginEntry(); - -extern void smartcard_DeviceServiceEntry(); -extern void parallel_DeviceServiceEntry(); -extern void drive_DeviceServiceEntry(); -extern void serial_DeviceServiceEntry(); - - -const STATIC_ENTRY CLIENT_VirtualChannelEntry_TABLE[] = -{ - - { "rdpsnd", rdpsnd_VirtualChannelEntry }, - { "remdesk", remdesk_VirtualChannelEntry }, - { "encomsp", encomsp_VirtualChannelEntry }, - { "rdpdr", rdpdr_VirtualChannelEntry }, - { "rail", rail_VirtualChannelEntry }, - { "drdynvc", drdynvc_VirtualChannelEntry }, - { "cliprdr", cliprdr_VirtualChannelEntry }, - { NULL, NULL } -}; -const STATIC_ENTRY CLIENT_DVCPluginEntry_TABLE[] = -{ - - { "rdpgfx", rdpgfx_DVCPluginEntry }, - { "tsmf", tsmf_DVCPluginEntry }, - { "rdpei", rdpei_DVCPluginEntry }, - { "disp", disp_DVCPluginEntry }, - { "echo", echo_DVCPluginEntry }, - { "audin", audin_DVCPluginEntry }, - { NULL, NULL } -}; -const STATIC_ENTRY CLIENT_DeviceServiceEntry_TABLE[] = -{ - - { "smartcard", smartcard_DeviceServiceEntry }, - { "parallel", parallel_DeviceServiceEntry }, - { "drive", drive_DeviceServiceEntry }, - { "serial", serial_DeviceServiceEntry }, - { NULL, NULL } -}; - - -const STATIC_ENTRY_TABLE CLIENT_STATIC_ENTRY_TABLES[] = -{ - { "VirtualChannelEntry", CLIENT_VirtualChannelEntry_TABLE }, - { "DVCPluginEntry", CLIENT_DVCPluginEntry_TABLE }, - { "DeviceServiceEntry", CLIENT_DeviceServiceEntry_TABLE }, - { NULL, NULL } -}; - - -extern void alsa_freerdp_rdpsnd_client_subsystem_entry(); -extern void alsa_freerdp_tsmf_client_audio_subsystem_entry(); -extern void alsa_freerdp_audin_client_subsystem_entry(); - - -const STATIC_SUBSYSTEM_ENTRY CLIENT_RDPSND_SUBSYSTEM_TABLE[] = -{ - { "alsa", "", alsa_freerdp_rdpsnd_client_subsystem_entry }, - { NULL, NULL, NULL } -}; -const STATIC_SUBSYSTEM_ENTRY CLIENT_RDPGFX_SUBSYSTEM_TABLE[] = -{ - { NULL, NULL, NULL } -}; -const STATIC_SUBSYSTEM_ENTRY CLIENT_SMARTCARD_SUBSYSTEM_TABLE[] = -{ - { NULL, NULL, NULL } -}; -const STATIC_SUBSYSTEM_ENTRY CLIENT_PARALLEL_SUBSYSTEM_TABLE[] = -{ - { NULL, NULL, NULL } -}; -const STATIC_SUBSYSTEM_ENTRY CLIENT_TSMF_SUBSYSTEM_TABLE[] = -{ - { "alsa", "audio", alsa_freerdp_tsmf_client_audio_subsystem_entry }, - { NULL, NULL, NULL } -}; -const STATIC_SUBSYSTEM_ENTRY CLIENT_REMDESK_SUBSYSTEM_TABLE[] = -{ - { NULL, NULL, NULL } -}; -const STATIC_SUBSYSTEM_ENTRY CLIENT_ENCOMSP_SUBSYSTEM_TABLE[] = -{ - { NULL, NULL, NULL } -}; -const STATIC_SUBSYSTEM_ENTRY CLIENT_RDPDR_SUBSYSTEM_TABLE[] = -{ - { NULL, NULL, NULL } -}; -const STATIC_SUBSYSTEM_ENTRY CLIENT_RDPEI_SUBSYSTEM_TABLE[] = -{ - { NULL, NULL, NULL } -}; -const STATIC_SUBSYSTEM_ENTRY CLIENT_RAIL_SUBSYSTEM_TABLE[] = -{ - { NULL, NULL, NULL } -}; -const STATIC_SUBSYSTEM_ENTRY CLIENT_DRIVE_SUBSYSTEM_TABLE[] = -{ - { NULL, NULL, NULL } -}; -const STATIC_SUBSYSTEM_ENTRY CLIENT_DISP_SUBSYSTEM_TABLE[] = -{ - { NULL, NULL, NULL } -}; -const STATIC_SUBSYSTEM_ENTRY CLIENT_SERIAL_SUBSYSTEM_TABLE[] = -{ - { NULL, NULL, NULL } -}; -const STATIC_SUBSYSTEM_ENTRY CLIENT_ECHO_SUBSYSTEM_TABLE[] = -{ - { NULL, NULL, NULL } -}; -const STATIC_SUBSYSTEM_ENTRY CLIENT_AUDIN_SUBSYSTEM_TABLE[] = -{ - { "alsa", "", alsa_freerdp_audin_client_subsystem_entry }, - { NULL, NULL, NULL } -}; -const STATIC_SUBSYSTEM_ENTRY CLIENT_DRDYNVC_SUBSYSTEM_TABLE[] = -{ - { NULL, NULL, NULL } -}; -const STATIC_SUBSYSTEM_ENTRY CLIENT_CLIPRDR_SUBSYSTEM_TABLE[] = -{ - { NULL, NULL, NULL } -}; - -const STATIC_ADDIN_TABLE CLIENT_STATIC_ADDIN_TABLE[] = -{ - { "rdpsnd", rdpsnd_VirtualChannelEntry, CLIENT_RDPSND_SUBSYSTEM_TABLE }, - { "rdpgfx", rdpgfx_DVCPluginEntry, CLIENT_RDPGFX_SUBSYSTEM_TABLE }, - { "smartcard", smartcard_DeviceServiceEntry, CLIENT_SMARTCARD_SUBSYSTEM_TABLE }, - { "parallel", parallel_DeviceServiceEntry, CLIENT_PARALLEL_SUBSYSTEM_TABLE }, - { "tsmf", tsmf_DVCPluginEntry, CLIENT_TSMF_SUBSYSTEM_TABLE }, - { "remdesk", remdesk_VirtualChannelEntry, CLIENT_REMDESK_SUBSYSTEM_TABLE }, - { "encomsp", encomsp_VirtualChannelEntry, CLIENT_ENCOMSP_SUBSYSTEM_TABLE }, - { "rdpdr", rdpdr_VirtualChannelEntry, CLIENT_RDPDR_SUBSYSTEM_TABLE }, - { "rdpei", rdpei_DVCPluginEntry, CLIENT_RDPEI_SUBSYSTEM_TABLE }, - { "rail", rail_VirtualChannelEntry, CLIENT_RAIL_SUBSYSTEM_TABLE }, - { "drive", drive_DeviceServiceEntry, CLIENT_DRIVE_SUBSYSTEM_TABLE }, - { "disp", disp_DVCPluginEntry, CLIENT_DISP_SUBSYSTEM_TABLE }, - { "serial", serial_DeviceServiceEntry, CLIENT_SERIAL_SUBSYSTEM_TABLE }, - { "echo", echo_DVCPluginEntry, CLIENT_ECHO_SUBSYSTEM_TABLE }, - { "audin", audin_DVCPluginEntry, CLIENT_AUDIN_SUBSYSTEM_TABLE }, - { "drdynvc", drdynvc_VirtualChannelEntry, CLIENT_DRDYNVC_SUBSYSTEM_TABLE }, - { "cliprdr", cliprdr_VirtualChannelEntry, CLIENT_CLIPRDR_SUBSYSTEM_TABLE }, - { NULL, NULL, NULL } -}; - diff --git a/client/X11/xf_keyboard.c b/client/X11/xf_keyboard.c index 699cf7682..a4bbf12db 100644 --- a/client/X11/xf_keyboard.c +++ b/client/X11/xf_keyboard.c @@ -405,17 +405,14 @@ BOOL xf_keyboard_handle_special_keys(xfContext* xfc, KeySym keysym) return TRUE; } - if(xfc->fullscreen_toggle) + if (keysym == XK_Return) { - if (keysym == XK_Return) - { - if (mod.Ctrl && mod.Alt) - { - /* Ctrl-Alt-Enter: toggle full screen */ - xf_toggle_fullscreen(xfc); - return TRUE; - } - } + if (mod.Ctrl && mod.Alt) + { + /* Ctrl-Alt-Enter: toggle full screen */ + xf_toggle_fullscreen(xfc); + return TRUE; + } } if ((keysym == XK_c) || (keysym == XK_C)) From 1b819067b04cbb0ab9eee500e6df681fa98708cf Mon Sep 17 00:00:00 2001 From: Ron Yaari Date: Mon, 18 Aug 2014 10:41:40 +0300 Subject: [PATCH 121/170] X11: fix toggle-fullscreen option functionality --- client/X11/xf_keyboard.c | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/client/X11/xf_keyboard.c b/client/X11/xf_keyboard.c index a4bbf12db..699cf7682 100644 --- a/client/X11/xf_keyboard.c +++ b/client/X11/xf_keyboard.c @@ -405,14 +405,17 @@ BOOL xf_keyboard_handle_special_keys(xfContext* xfc, KeySym keysym) return TRUE; } - if (keysym == XK_Return) + if(xfc->fullscreen_toggle) { - if (mod.Ctrl && mod.Alt) - { - /* Ctrl-Alt-Enter: toggle full screen */ - xf_toggle_fullscreen(xfc); - return TRUE; - } + if (keysym == XK_Return) + { + if (mod.Ctrl && mod.Alt) + { + /* Ctrl-Alt-Enter: toggle full screen */ + xf_toggle_fullscreen(xfc); + return TRUE; + } + } } if ((keysym == XK_c) || (keysym == XK_C)) From 60f283cffb85fc6ffe4e8597fbecf9e196943058 Mon Sep 17 00:00:00 2001 From: Zhang Zhaolong Date: Mon, 18 Aug 2014 16:00:34 +0800 Subject: [PATCH 122/170] drive: fix contents lost when cut-paste a folder. --- channels/drive/client/drive_file.c | 31 ++++++++++++++++++++++++++++++ channels/drive/client/drive_file.h | 1 + channels/drive/client/drive_main.c | 3 +++ 3 files changed, 35 insertions(+) diff --git a/channels/drive/client/drive_file.c b/channels/drive/client/drive_file.c index d7b3852fc..9e8103b06 100644 --- a/channels/drive/client/drive_file.c +++ b/channels/drive/client/drive_file.c @@ -52,6 +52,11 @@ #include #endif +#ifdef _WIN32 +#pragma comment(lib, "Shlwapi.lib") +#include +#endif + #include "drive_file.h" #ifdef _WIN32 @@ -425,6 +430,29 @@ BOOL drive_file_query_information(DRIVE_FILE* file, UINT32 FsInformationClass, w return TRUE; } +int dir_empty(const char *path) +{ +#ifdef _WIN32 + return PathIsDirectoryEmptyA(path); +#else + struct dirent *dp; + int empty = 1; + + DIR *dir = opendir(path); + if (dir == NULL) //Not a directory or doesn't exist + return 1; + + while ((dp = readdir(dir)) != NULL) { + if (strcmp(dp->d_name, ".") == 0 || strcmp(dp->d_name, "..") == 0) + continue; /* Skip . and .. */ + + empty = 0; + break; + } + closedir(dir); + return empty; +#endif +} BOOL drive_file_set_information(DRIVE_FILE* file, UINT32 FsInformationClass, UINT32 Length, wStream* input) { char* s = NULL; @@ -492,6 +520,9 @@ BOOL drive_file_set_information(DRIVE_FILE* file, UINT32 FsInformationClass, UIN case FileDispositionInformation: /* http://msdn.microsoft.com/en-us/library/cc232098.aspx */ /* http://msdn.microsoft.com/en-us/library/cc241371.aspx */ + if (file->is_dir && !dir_empty(file->fullpath)) + break; + if (Length) Stream_Read_UINT8(input, file->delete_pending); else diff --git a/channels/drive/client/drive_file.h b/channels/drive/client/drive_file.h index 28ac5780a..36b869c72 100644 --- a/channels/drive/client/drive_file.h +++ b/channels/drive/client/drive_file.h @@ -117,6 +117,7 @@ BOOL drive_file_query_information(DRIVE_FILE* file, UINT32 FsInformationClass, w BOOL drive_file_set_information(DRIVE_FILE* file, UINT32 FsInformationClass, UINT32 Length, wStream* input); BOOL drive_file_query_directory(DRIVE_FILE* file, UINT32 FsInformationClass, BYTE InitialQuery, const char* path, wStream* output); +int dir_empty(const char *path); extern UINT sys_code_page; diff --git a/channels/drive/client/drive_main.c b/channels/drive/client/drive_main.c index 0363b6b41..36dd232d4 100644 --- a/channels/drive/client/drive_main.c +++ b/channels/drive/client/drive_main.c @@ -346,6 +346,9 @@ static void drive_process_irp_set_information(DRIVE_DEVICE* drive, IRP* irp) } + if (file->is_dir && !dir_empty(file->fullpath)) + irp->IoStatus = STATUS_DIRECTORY_NOT_EMPTY; + Stream_Write_UINT32(irp->output, Length); irp->Complete(irp); From a2f0e93770014956679e2e41ce168376bae86115 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Mon, 18 Aug 2014 17:25:48 -0400 Subject: [PATCH 123/170] freerdp: fix build warnings --- channels/encomsp/server/encomsp_main.c | 4 ++++ include/freerdp/rail.h | 10 ++-------- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/channels/encomsp/server/encomsp_main.c b/channels/encomsp/server/encomsp_main.c index 3ff7dc328..18e8c44bf 100644 --- a/channels/encomsp/server/encomsp_main.c +++ b/channels/encomsp/server/encomsp_main.c @@ -38,6 +38,8 @@ static int encomsp_read_header(wStream* s, ENCOMSP_ORDER_HEADER* header) return 1; } +#if 0 + static int encomsp_write_header(wStream* s, ENCOMSP_ORDER_HEADER* header) { Stream_Write_UINT16(s, header->Type); /* Type (2 bytes) */ @@ -66,6 +68,8 @@ static int encomsp_read_unicode_string(wStream* s, ENCOMSP_UNICODE_STRING* str) return 1; } +#endif + static int encomsp_recv_change_participant_control_level_pdu(EncomspServerContext* context, wStream* s, ENCOMSP_ORDER_HEADER* header) { int beg, end; diff --git a/include/freerdp/rail.h b/include/freerdp/rail.h index d0520c244..ca9521e06 100644 --- a/include/freerdp/rail.h +++ b/include/freerdp/rail.h @@ -21,6 +21,8 @@ #ifndef FREERDP_RAIL_GLOBAL_H #define FREERDP_RAIL_GLOBAL_H +#include + #include /* RAIL PDU flags */ @@ -93,14 +95,6 @@ enum SPI_MASK /* Client Notify Event PDU */ #ifndef _WIN32 -#define WM_LBUTTONDOWN 0x00000201 -#define WM_LBUTTONUP 0x00000202 -#define WM_RBUTTONDOWN 0x00000204 -#define WM_RBUTTONUP 0x00000205 -#define WM_CONTEXTMENU 0x0000007B -#define WM_LBUTTONDBLCLK 0x00000203 -#define WM_RBUTTONDBLCLK 0x00000206 - #define NIN_SELECT 0x00000400 #define NIN_KEYSELECT 0x00000401 #define NIN_BALLOONSHOW 0x00000402 From 6744bbe7aee89595cb3e8ce64a07e3de075c5923 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Mon, 18 Aug 2014 19:12:08 -0400 Subject: [PATCH 124/170] libfreerdp-codec: start working on progressive dequantization --- libfreerdp/codec/progressive.c | 39 +++++++++++++++++++++++++++++ libfreerdp/codec/rfx_quantization.c | 23 +++++++++++++++-- libfreerdp/codec/rfx_quantization.h | 2 ++ 3 files changed, 62 insertions(+), 2 deletions(-) diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index 24d9493eb..c9e3adf1d 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -25,9 +25,13 @@ #include #include +#include #include #include +#include "rfx_differential.h" +#include "rfx_quantization.h" + const char* progressive_get_block_type_string(UINT16 blockType) { switch (blockType) @@ -72,16 +76,51 @@ const char* progressive_get_block_type_string(UINT16 blockType) return "PROGRESSIVE_WBT_UNKNOWN"; } +/* + * Band Offset Dimensions Size + * + * HL1 0 31x33 1023 + * LH1 1023 33x31 1023 + * HH1 2046 31x31 961 + * + * HL2 3007 16x17 272 + * LH2 3279 17x16 272 + * HH2 3551 16x16 256 + * + * HL3 3807 8x9 72 + * LH3 3879 9x8 72 + * HH3 3951 8x8 64 + * + * LL3 4015 9x9 81 + */ + int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPONENT_CODEC_QUANT* quant, const BYTE* data, int length, INT16* buffer) { int status; + const primitives_t* prims = primitives_get(); status = rfx_rlgr_decode(data, length, buffer, 4096, 1); if (status < 0) return status; + rfx_differential_decode(&buffer[4015], 81); /* LL3 */ + + /* Scale the values so that they are represented as 11.5 fixed-point number */ + rfx_quantization_decode_block(prims, buffer, 4096, 5); + + rfx_quantization_decode_block(prims, &buffer[0], 1023, (quant->HL1 - 6)); /* HL1 */ + rfx_quantization_decode_block(prims, &buffer[1023], 1023, (quant->LH1 - 6)); /* LH1 */ + rfx_quantization_decode_block(prims, &buffer[2046], 961, (quant->HH1 - 6)); /* HH1 */ + rfx_quantization_decode_block(prims, &buffer[3007], 272, (quant->HL2 - 6)); /* HL2 */ + rfx_quantization_decode_block(prims, &buffer[3279], 272, (quant->LH2 - 6)); /* LH2 */ + rfx_quantization_decode_block(prims, &buffer[3551], 256, (quant->HH2 - 6)); /* HH2 */ + rfx_quantization_decode_block(prims, &buffer[3807], 72, (quant->HL3 - 6)); /* HL3 */ + rfx_quantization_decode_block(prims, &buffer[3879], 72, (quant->LH3 - 6)); /* LH3 */ + rfx_quantization_decode_block(prims, &buffer[3951], 64, (quant->HH3 - 6)); /* HH3 */ + rfx_quantization_decode_block(prims, &buffer[4015], 81, (quant->LL3 - 6)); /* LL3 */ + return 1; } diff --git a/libfreerdp/codec/rfx_quantization.c b/libfreerdp/codec/rfx_quantization.c index 2cedfd91d..b5c79e5f2 100644 --- a/libfreerdp/codec/rfx_quantization.c +++ b/libfreerdp/codec/rfx_quantization.c @@ -22,9 +22,28 @@ #endif #include + #include "rfx_quantization.h" -static void rfx_quantization_decode_block(const primitives_t *prims, INT16* buffer, int buffer_size, UINT32 factor) +/* + * Band Offset Size + * + * HL1 0 1024 + * LH1 1024 1024 + * HH1 2048 1024 + * + * HL2 3072 256 + * LH2 3328 256 + * HH2 3584 256 + * + * HL3 3840 64 + * LH3 3904 64 + * HH3 3968 64 + * + * LL3 4032 64 + */ + +void rfx_quantization_decode_block(const primitives_t *prims, INT16* buffer, int buffer_size, UINT32 factor) { if (factor == 0) return; @@ -34,7 +53,7 @@ static void rfx_quantization_decode_block(const primitives_t *prims, INT16* buff void rfx_quantization_decode(INT16* buffer, const UINT32* quantization_values) { - const primitives_t *prims = primitives_get(); + const primitives_t* prims = primitives_get(); /* Scale the values so that they are represented as 11.5 fixed-point number */ rfx_quantization_decode_block(prims, buffer, 4096, 5); diff --git a/libfreerdp/codec/rfx_quantization.h b/libfreerdp/codec/rfx_quantization.h index b10aa729f..e446a098a 100644 --- a/libfreerdp/codec/rfx_quantization.h +++ b/libfreerdp/codec/rfx_quantization.h @@ -25,4 +25,6 @@ void rfx_quantization_decode(INT16* buffer, const UINT32* quantization_values); void rfx_quantization_encode(INT16* buffer, const UINT32* quantization_values); +void rfx_quantization_decode_block(const primitives_t *prims, INT16* buffer, int buffer_size, UINT32 factor); + #endif /* __RFX_QUANTIZATION_H */ From 2e672d5bdbc09d6fa34005118ecf299cf39a9a5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Mon, 18 Aug 2014 21:10:56 -0400 Subject: [PATCH 125/170] libfreerdp-codec: optimize RemoteFX dequantization and differentiation --- libfreerdp/codec/progressive.c | 23 ++++++-------- libfreerdp/codec/rfx_differential.c | 15 ++++----- libfreerdp/codec/rfx_differential.h | 4 +-- libfreerdp/codec/rfx_neon.c | 25 +++++++-------- libfreerdp/codec/rfx_quantization.c | 47 ++++++++++++++--------------- libfreerdp/codec/rfx_sse2.c | 24 +++++++-------- 6 files changed, 64 insertions(+), 74 deletions(-) diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index c9e3adf1d..c36b29a8a 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -107,19 +107,16 @@ int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, rfx_differential_decode(&buffer[4015], 81); /* LL3 */ - /* Scale the values so that they are represented as 11.5 fixed-point number */ - rfx_quantization_decode_block(prims, buffer, 4096, 5); - - rfx_quantization_decode_block(prims, &buffer[0], 1023, (quant->HL1 - 6)); /* HL1 */ - rfx_quantization_decode_block(prims, &buffer[1023], 1023, (quant->LH1 - 6)); /* LH1 */ - rfx_quantization_decode_block(prims, &buffer[2046], 961, (quant->HH1 - 6)); /* HH1 */ - rfx_quantization_decode_block(prims, &buffer[3007], 272, (quant->HL2 - 6)); /* HL2 */ - rfx_quantization_decode_block(prims, &buffer[3279], 272, (quant->LH2 - 6)); /* LH2 */ - rfx_quantization_decode_block(prims, &buffer[3551], 256, (quant->HH2 - 6)); /* HH2 */ - rfx_quantization_decode_block(prims, &buffer[3807], 72, (quant->HL3 - 6)); /* HL3 */ - rfx_quantization_decode_block(prims, &buffer[3879], 72, (quant->LH3 - 6)); /* LH3 */ - rfx_quantization_decode_block(prims, &buffer[3951], 64, (quant->HH3 - 6)); /* HH3 */ - rfx_quantization_decode_block(prims, &buffer[4015], 81, (quant->LL3 - 6)); /* LL3 */ + rfx_quantization_decode_block(prims, &buffer[0], 1023, (quant->HL1 - 1)); /* HL1 */ + rfx_quantization_decode_block(prims, &buffer[1023], 1023, (quant->LH1 - 1)); /* LH1 */ + rfx_quantization_decode_block(prims, &buffer[2046], 961, (quant->HH1 - 1)); /* HH1 */ + rfx_quantization_decode_block(prims, &buffer[3007], 272, (quant->HL2 - 1)); /* HL2 */ + rfx_quantization_decode_block(prims, &buffer[3279], 272, (quant->LH2 - 1)); /* LH2 */ + rfx_quantization_decode_block(prims, &buffer[3551], 256, (quant->HH2 - 1)); /* HH2 */ + rfx_quantization_decode_block(prims, &buffer[3807], 72, (quant->HL3 - 1)); /* HL3 */ + rfx_quantization_decode_block(prims, &buffer[3879], 72, (quant->LH3 - 1)); /* LH3 */ + rfx_quantization_decode_block(prims, &buffer[3951], 64, (quant->HH3 - 1)); /* HH3 */ + rfx_quantization_decode_block(prims, &buffer[4015], 81, (quant->LL3 - 1)); /* LL3 */ return 1; } diff --git a/libfreerdp/codec/rfx_differential.c b/libfreerdp/codec/rfx_differential.c index e80aa98f3..4429fb8c0 100644 --- a/libfreerdp/codec/rfx_differential.c +++ b/libfreerdp/codec/rfx_differential.c @@ -27,23 +27,24 @@ #include "rfx_differential.h" -void rfx_differential_decode(INT16* buffer, int buffer_size) +void rfx_differential_decode(INT16* buffer, int size) { - INT16* src; - INT16* dst; + INT16* ptr = buffer; + INT16* end = &buffer[size - 1]; - for (src = buffer, dst = buffer + 1; buffer_size > 1; src++, dst++, buffer_size--) + while (ptr != end) { - *dst += *src; + ptr[1] += ptr[0]; + ptr++; } } -void rfx_differential_encode(INT16* buffer, int buffer_size) +void rfx_differential_encode(INT16* buffer, int size) { INT16 n1, n2; INT16* dst; - for (n1 = *buffer, dst = buffer + 1; buffer_size > 1; dst++, buffer_size--) + for (n1 = *buffer, dst = buffer + 1; size > 1; dst++, size--) { n2 = *dst; *dst -= n1; diff --git a/libfreerdp/codec/rfx_differential.h b/libfreerdp/codec/rfx_differential.h index 3f6dbf623..47e1a4241 100644 --- a/libfreerdp/codec/rfx_differential.h +++ b/libfreerdp/codec/rfx_differential.h @@ -22,7 +22,7 @@ #include -void rfx_differential_decode(INT16* buffer, int buffer_size); -void rfx_differential_encode(INT16* buffer, int buffer_size); +void rfx_differential_decode(INT16* buffer, int size); +void rfx_differential_encode(INT16* buffer, int size); #endif /* __RFX_DIFFERENTIAL_H */ diff --git a/libfreerdp/codec/rfx_neon.c b/libfreerdp/codec/rfx_neon.c index 6fe8ec83d..1632f983a 100644 --- a/libfreerdp/codec/rfx_neon.c +++ b/libfreerdp/codec/rfx_neon.c @@ -51,21 +51,18 @@ rfx_quantization_decode_block_NEON(INT16 * buffer, const int buffer_size, const while(buf < buf_end); } -void -rfx_quantization_decode_NEON(INT16 * buffer, const UINT32 * quantization_values) +void rfx_quantization_decode_NEON(INT16 * buffer, const UINT32 * quantVals) { - rfx_quantization_decode_block_NEON(buffer, 4096, 5); - - rfx_quantization_decode_block_NEON(buffer, 1024, quantization_values[8] - 6); /* HL1 */ - rfx_quantization_decode_block_NEON(buffer + 1024, 1024, quantization_values[7] - 6); /* LH1 */ - rfx_quantization_decode_block_NEON(buffer + 2048, 1024, quantization_values[9] - 6); /* HH1 */ - rfx_quantization_decode_block_NEON(buffer + 3072, 256, quantization_values[5] - 6); /* HL2 */ - rfx_quantization_decode_block_NEON(buffer + 3328, 256, quantization_values[4] - 6); /* LH2 */ - rfx_quantization_decode_block_NEON(buffer + 3584, 256, quantization_values[6] - 6); /* HH2 */ - rfx_quantization_decode_block_NEON(buffer + 3840, 64, quantization_values[2] - 6); /* HL3 */ - rfx_quantization_decode_block_NEON(buffer + 3904, 64, quantization_values[1] - 6); /* LH3 */ - rfx_quantization_decode_block_NEON(buffer + 3968, 64, quantization_values[3] - 6); /* HH3 */ - rfx_quantization_decode_block_NEON(buffer + 4032, 64, quantization_values[0] - 6); /* LL3 */ + rfx_quantization_decode_block_NEON(&buffer[0], 1024, quantVals[8] - 1); /* HL1 */ + rfx_quantization_decode_block_NEON(&buffer[1024], 1024, quantVals[7] - 1); /* LH1 */ + rfx_quantization_decode_block_NEON(&buffer[2048], 1024, quantVals[9] - 1); /* HH1 */ + rfx_quantization_decode_block_NEON(&buffer[3072], 256, quantVals[5] - 1); /* HL2 */ + rfx_quantization_decode_block_NEON(&buffer[3328], 256, quantVals[4] - 1); /* LH2 */ + rfx_quantization_decode_block_NEON(&buffer[3584], 256, quantVals[6] - 1); /* HH2 */ + rfx_quantization_decode_block_NEON(&buffer[3840], 64, quantVals[2] - 1); /* HL3 */ + rfx_quantization_decode_block_NEON(&buffer[3904], 64, quantVals[1] - 1); /* LH3 */ + rfx_quantization_decode_block_NEON(&buffer[3968], 64, quantVals[3] - 1); /* HH3 */ + rfx_quantization_decode_block_NEON(&buffer[4032], 64, quantVals[0] - 1); /* LL3 */ } diff --git a/libfreerdp/codec/rfx_quantization.c b/libfreerdp/codec/rfx_quantization.c index b5c79e5f2..6c497a65a 100644 --- a/libfreerdp/codec/rfx_quantization.c +++ b/libfreerdp/codec/rfx_quantization.c @@ -26,21 +26,21 @@ #include "rfx_quantization.h" /* - * Band Offset Size + * Band Offset Dimensions Size * - * HL1 0 1024 - * LH1 1024 1024 - * HH1 2048 1024 + * HL1 0 32x32 1024 + * LH1 1024 32x32 1024 + * HH1 2048 32x32 1024 * - * HL2 3072 256 - * LH2 3328 256 - * HH2 3584 256 + * HL2 3072 16x16 256 + * LH2 3328 16x16 256 + * HH2 3584 16x16 256 * - * HL3 3840 64 - * LH3 3904 64 - * HH3 3968 64 + * HL3 3840 8x8 64 + * LH3 3904 8x8 64 + * HH3 3968 8x8 64 * - * LL3 4032 64 + * LL3 4032 8x8 64 */ void rfx_quantization_decode_block(const primitives_t *prims, INT16* buffer, int buffer_size, UINT32 factor) @@ -51,23 +51,20 @@ void rfx_quantization_decode_block(const primitives_t *prims, INT16* buffer, int prims->lShiftC_16s(buffer, factor, buffer, buffer_size); } -void rfx_quantization_decode(INT16* buffer, const UINT32* quantization_values) +void rfx_quantization_decode(INT16* buffer, const UINT32* quantVals) { const primitives_t* prims = primitives_get(); - /* Scale the values so that they are represented as 11.5 fixed-point number */ - rfx_quantization_decode_block(prims, buffer, 4096, 5); - - rfx_quantization_decode_block(prims, buffer, 1024, quantization_values[8] - 6); /* HL1 */ - rfx_quantization_decode_block(prims, buffer + 1024, 1024, quantization_values[7] - 6); /* LH1 */ - rfx_quantization_decode_block(prims, buffer + 2048, 1024, quantization_values[9] - 6); /* HH1 */ - rfx_quantization_decode_block(prims, buffer + 3072, 256, quantization_values[5] - 6); /* HL2 */ - rfx_quantization_decode_block(prims, buffer + 3328, 256, quantization_values[4] - 6); /* LH2 */ - rfx_quantization_decode_block(prims, buffer + 3584, 256, quantization_values[6] - 6); /* HH2 */ - rfx_quantization_decode_block(prims, buffer + 3840, 64, quantization_values[2] - 6); /* HL3 */ - rfx_quantization_decode_block(prims, buffer + 3904, 64, quantization_values[1] - 6); /* LH3 */ - rfx_quantization_decode_block(prims, buffer + 3968, 64, quantization_values[3] - 6); /* HH3 */ - rfx_quantization_decode_block(prims, buffer + 4032, 64, quantization_values[0] - 6); /* LL3 */ + rfx_quantization_decode_block(prims, &buffer[0], 1024, quantVals[8] - 1); /* HL1 */ + rfx_quantization_decode_block(prims, &buffer[1024], 1024, quantVals[7] - 1); /* LH1 */ + rfx_quantization_decode_block(prims, &buffer[2048], 1024, quantVals[9] - 1); /* HH1 */ + rfx_quantization_decode_block(prims, &buffer[3072], 256, quantVals[5] - 1); /* HL2 */ + rfx_quantization_decode_block(prims, &buffer[3328], 256, quantVals[4] - 1); /* LH2 */ + rfx_quantization_decode_block(prims, &buffer[3584], 256, quantVals[6] - 1); /* HH2 */ + rfx_quantization_decode_block(prims, &buffer[3840], 64, quantVals[2] - 1); /* HL3 */ + rfx_quantization_decode_block(prims, &buffer[3904], 64, quantVals[1] - 1); /* LH3 */ + rfx_quantization_decode_block(prims, &buffer[3968], 64, quantVals[3] - 1); /* HH3 */ + rfx_quantization_decode_block(prims, &buffer[4032], 64, quantVals[0] - 1); /* LL3 */ } static void rfx_quantization_encode_block(INT16* buffer, int buffer_size, UINT32 factor) diff --git a/libfreerdp/codec/rfx_sse2.c b/libfreerdp/codec/rfx_sse2.c index 47dbac32f..4f54d17cd 100644 --- a/libfreerdp/codec/rfx_sse2.c +++ b/libfreerdp/codec/rfx_sse2.c @@ -82,22 +82,20 @@ rfx_quantization_decode_block_sse2(INT16* buffer, const int buffer_size, const U } while(ptr < buf_end); } -static void rfx_quantization_decode_sse2(INT16* buffer, const UINT32* quantization_values) +static void rfx_quantization_decode_sse2(INT16* buffer, const UINT32* quantVals) { _mm_prefetch_buffer((char*) buffer, 4096 * sizeof(INT16)); - rfx_quantization_decode_block_sse2(buffer, 4096, 5); - - rfx_quantization_decode_block_sse2(buffer, 1024, quantization_values[8] - 6); /* HL1 */ - rfx_quantization_decode_block_sse2(buffer + 1024, 1024, quantization_values[7] - 6); /* LH1 */ - rfx_quantization_decode_block_sse2(buffer + 2048, 1024, quantization_values[9] - 6); /* HH1 */ - rfx_quantization_decode_block_sse2(buffer + 3072, 256, quantization_values[5] - 6); /* HL2 */ - rfx_quantization_decode_block_sse2(buffer + 3328, 256, quantization_values[4] - 6); /* LH2 */ - rfx_quantization_decode_block_sse2(buffer + 3584, 256, quantization_values[6] - 6); /* HH2 */ - rfx_quantization_decode_block_sse2(buffer + 3840, 64, quantization_values[2] - 6); /* HL3 */ - rfx_quantization_decode_block_sse2(buffer + 3904, 64, quantization_values[1] - 6); /* LH3 */ - rfx_quantization_decode_block_sse2(buffer + 3968, 64, quantization_values[3] - 6); /* HH3 */ - rfx_quantization_decode_block_sse2(buffer + 4032, 64, quantization_values[0] - 6); /* LL3 */ + rfx_quantization_decode_block_sse2(&buffer[0], 1024, quantVals[8] - 1); /* HL1 */ + rfx_quantization_decode_block_sse2(&buffer[1024], 1024, quantVals[7] - 1); /* LH1 */ + rfx_quantization_decode_block_sse2(&buffer[2048], 1024, quantVals[9] - 1); /* HH1 */ + rfx_quantization_decode_block_sse2(&buffer[3072], 256, quantVals[5] - 1); /* HL2 */ + rfx_quantization_decode_block_sse2(&buffer[3328], 256, quantVals[4] - 1); /* LH2 */ + rfx_quantization_decode_block_sse2(&buffer[3584], 256, quantVals[6] - 1); /* HH2 */ + rfx_quantization_decode_block_sse2(&buffer[3840], 64, quantVals[2] - 1); /* HL3 */ + rfx_quantization_decode_block_sse2(&buffer[3904], 64, quantVals[1] - 1); /* LH3 */ + rfx_quantization_decode_block_sse2(&buffer[3968], 64, quantVals[3] - 1); /* HH3 */ + rfx_quantization_decode_block_sse2(&buffer[4032], 64, quantVals[0] - 1); /* LL3 */ } static __inline void __attribute__((ATTRIBUTES)) From 0e18ee6de2799800fa685b7b9d2fecb16dbbfb21 Mon Sep 17 00:00:00 2001 From: Bernhard Miklautz Date: Tue, 19 Aug 2014 11:59:47 +0200 Subject: [PATCH 126/170] build: fix compilation for non monolithic builds set_complex_link_libraries isn't required anymore for winpr since it's always build monolithic. --- server/shadow/CMakeLists.txt | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/server/shadow/CMakeLists.txt b/server/shadow/CMakeLists.txt index c5a104768..e68c84589 100644 --- a/server/shadow/CMakeLists.txt +++ b/server/shadow/CMakeLists.txt @@ -190,13 +190,8 @@ set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS MODULE freerdp MODULES freerdp-core freerdp-common freerdp-codec freerdp-primitives freerdp-utils freerdp-gdi freerdp-crypto freerdp-locale) -set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS - MONOLITHIC ${MONOLITHIC_BUILD} - MODULE winpr - MODULES winpr-sspi winpr-crt winpr-utils winpr-input winpr-sysinfo) - list(APPEND ${MODULE_PREFIX}_LIBS freerdp-client) -list(APPEND ${MODULE_PREFIX}_LIBS winpr-makecert-tool) +list(APPEND ${MODULE_PREFIX}_LIBS winpr-makecert-tool winpr) target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS}) From 5bf59b08107ef0042f825e5c098e0c0bf8038314 Mon Sep 17 00:00:00 2001 From: Daryl Poe Date: Fri, 15 Aug 2014 15:45:06 -0600 Subject: [PATCH 127/170] handle user@corp.net username correctly (cherry picked from commit 248c9185084e99121ea5e99610384bb3a2c0f803) --- client/common/cmdline.c | 21 ++++++--------------- 1 file changed, 6 insertions(+), 15 deletions(-) diff --git a/client/common/cmdline.c b/client/common/cmdline.c index 6fd21c5f3..345e11cde 100644 --- a/client/common/cmdline.c +++ b/client/common/cmdline.c @@ -816,21 +816,12 @@ int freerdp_parse_username(char* username, char** user, char** domain) } else { - p = strchr(username, '@'); - - if (p) - { - length = (int) (p - username); - *user = (char*) malloc(length + 1); - strncpy(*user, username, length); - (*user)[length] = '\0'; - *domain = _strdup(&p[1]); - } - else - { - *user = _strdup(username); - *domain = NULL; - } + /* Do not break up the name for '@'; both credSSP and the + * ClientInfo PDU expect 'user@corp.net' to be transmitted + * as username 'user@corp.net', domain empty. + */ + *user = _strdup(username); + *domain = NULL; } return 0; From 68b3d0476bd54b4ccc7f71362687df02e327338f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Tue, 19 Aug 2014 14:48:09 -0400 Subject: [PATCH 128/170] libfreerdp-codec: start work on progressive inverse DWT --- client/X11/xf_gfx.c | 67 +++++++++++--- include/freerdp/codec/progressive.h | 6 ++ libfreerdp/codec/progressive.c | 131 ++++++++++++++++++++++++++++ libfreerdp/codec/rfx_decode.c | 4 +- libfreerdp/codec/rfx_dwt.c | 12 +-- libfreerdp/codec/rfx_sse2.c | 6 +- 6 files changed, 203 insertions(+), 23 deletions(-) diff --git a/client/X11/xf_gfx.c b/client/X11/xf_gfx.c index b99fd5e37..823e1fce8 100644 --- a/client/X11/xf_gfx.c +++ b/client/X11/xf_gfx.c @@ -477,10 +477,21 @@ int xf_SurfaceCommand_Alpha(xfContext* xfc, RdpgfxClientContext* context, RDPGFX int xf_SurfaceCommand_Progressive(xfContext* xfc, RdpgfxClientContext* context, RDPGFX_SURFACE_COMMAND* cmd) { - int status = 0; - BYTE* DstData = NULL; + int i, j; + int status; + BYTE* DstData; + RFX_RECT* rect; + int nXDst, nYDst; + int nWidth, nHeight; + int nbUpdateRects; xfGfxSurface* surface; - RECTANGLE_16 invalidRect; + REGION16 updateRegion; + RECTANGLE_16 updateRect; + RECTANGLE_16* updateRects; + REGION16 clippingRects; + RECTANGLE_16 clippingRect; + RFX_PROGRESSIVE_TILE* tile; + PROGRESSIVE_BLOCK_REGION* region; surface = (xfGfxSurface*) context->GetSurfaceData(context, cmd->surfaceId); @@ -500,17 +511,51 @@ int xf_SurfaceCommand_Progressive(xfContext* xfc, RdpgfxClientContext* context, printf("xf_SurfaceCommand_Progressive: status: %d\n", status); - /* fill with blue for now to distinguish from the rest */ + region = &(xfc->progressive->region); - freerdp_image_fill(surface->data, PIXEL_FORMAT_XRGB32, surface->scanline, - cmd->left, cmd->top, cmd->width, cmd->height, 0x0000FF); + region16_init(&clippingRects); - invalidRect.left = cmd->left; - invalidRect.top = cmd->top; - invalidRect.right = cmd->right; - invalidRect.bottom = cmd->bottom; + for (i = 0; i < region->numRects; i++) + { + rect = &(region->rects[i]); - region16_union_rect(&(xfc->invalidRegion), &(xfc->invalidRegion), &invalidRect); + clippingRect.left = cmd->left + rect->x; + clippingRect.top = cmd->top + rect->y; + clippingRect.right = clippingRect.left + rect->width; + clippingRect.bottom = clippingRect.top + rect->height; + + region16_union_rect(&clippingRects, &clippingRects, &clippingRect); + } + + for (i = 0; i < region->numTiles; i++) + { + tile = &(region->tiles[i]); + + updateRect.left = cmd->left + tile->x; + updateRect.top = cmd->top + tile->y; + updateRect.right = updateRect.left + 64; + updateRect.bottom = updateRect.top + 64; + + region16_init(&updateRegion); + region16_intersect_rect(&updateRegion, &clippingRects, &updateRect); + updateRects = (RECTANGLE_16*) region16_rects(&updateRegion, &nbUpdateRects); + + for (j = 0; j < nbUpdateRects; j++) + { + nXDst = updateRects[j].left; + nYDst = updateRects[j].top; + nWidth = updateRects[j].right - updateRects[j].left; + nHeight = updateRects[j].bottom - updateRects[j].top; + + freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, surface->scanline, + nXDst, nYDst, nWidth, nHeight, + tile->data, PIXEL_FORMAT_XRGB32, 64 * 4, 0, 0); + + region16_union_rect(&(xfc->invalidRegion), &(xfc->invalidRegion), &updateRects[j]); + } + + region16_uninit(&updateRegion); + } if (!xfc->inGfxFrame) xf_OutputUpdate(xfc); diff --git a/include/freerdp/codec/progressive.h b/include/freerdp/codec/progressive.h index e22ab10fc..c94d2b876 100644 --- a/include/freerdp/codec/progressive.h +++ b/include/freerdp/codec/progressive.h @@ -205,6 +205,12 @@ struct _RFX_PROGRESSIVE_TILE BYTE* cbRawData; BYTE* crSrlData; BYTE* crRawData; + + int x; + int y; + int width; + int height; + BYTE* data; }; typedef struct _RFX_PROGRESSIVE_TILE RFX_PROGRESSIVE_TILE; diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index c36b29a8a..08b3268c1 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -94,10 +94,106 @@ const char* progressive_get_block_type_string(UINT16 blockType) * LL3 4015 9x9 81 */ +static void progressive_rfx_dwt_2d_decode_block(INT16* buffer, INT16* dwt, int N) +{ + int N2; + int x, y, k; + INT16 *dst, *l, *h; + INT16 *l_dst, *h_dst; + INT16 *HL, *LH, *HH, *LL; + + N2 = N << 1; + + /* Inverse DWT in horizontal direction, results in 2 sub-bands in L, H order in tmp buffer idwt. */ + /* The 4 sub-bands are stored in HL(0), LH(1), HH(2), LL(3) order. */ + /* The lower part L uses LL(3) and HL(0). */ + /* The higher part H uses LH(1) and HH(2). */ + + LL = &buffer[(N * N) * 3]; + HL = &buffer[0]; + l_dst = &dwt[0]; + + LH = &buffer[N * N]; + HH = &buffer[(N * N) * 2]; + h_dst = &dwt[(N * N) * 2]; + + for (y = 0; y < N; y++) + { + /* Even coefficients */ + l_dst[0] = LL[0] - ((HL[0] + HL[0] + 1) >> 1); + h_dst[0] = LH[0] - ((HH[0] + HH[0] + 1) >> 1); + + for (k = 1; k < N; k++) + { + x = k << 1; + l_dst[x] = LL[k] - ((HL[k-1] + HL[k] + 1) >> 1); + h_dst[x] = LH[k] - ((HH[k-1] + HH[k] + 1) >> 1); + } + + /* Odd coefficients */ + for (k = 0; k < N-1; k++) + { + x = k << 1; + l_dst[x + 1] = (HL[k] << 1) + ((l_dst[x] + l_dst[x + 2]) >> 1); + h_dst[x + 1] = (HH[k] << 1) + ((h_dst[x] + h_dst[x + 2]) >> 1); + } + + x = k << 1; + l_dst[x + 1] = (HL[k] << 1) + (l_dst[x]); + h_dst[x + 1] = (HH[k] << 1) + (h_dst[x]); + + LL += N; + HL += N; + l_dst += N2; + + LH += N; + HH += N; + h_dst += N2; + } + + /* Inverse DWT in vertical direction, results are stored in original buffer. */ + for (x = 0; x < N2; x++) + { + /* Even coefficients */ + for (k = 0; k < N; k++) + { + y = k << 1; + dst = buffer + y * N2 + x; + l = dwt + k * N2 + x; + h = l + N * N2; + dst[0] = *l - (((k > 0 ? *(h - N2) : *h) + (*h) + 1) >> 1); + } + + /* Odd coefficients */ + for (k = 0; k < N; k++) + { + y = k << 1; + dst = buffer + y * N2 + x; + l = dwt + k * N2 + x; + h = l + N * N2; + dst[N2] = (*h << 1) + ((dst[0] + dst[k < N - 1 ? 2 * N2 : 0]) >> 1); + } + } +} + +void progressive_rfx_dwt_2d_decode(INT16* buffer, INT16* dwt) +{ +#if 0 + progressive_rfx_dwt_2d_decode_block(&buffer[3807], dwt, 8); + progressive_rfx_dwt_2d_decode_block(&buffer[3007], dwt, 16); + //progressive_rfx_dwt_2d_decode_block(&buffer[0], dwt, 32); +#else + progressive_rfx_dwt_2d_decode_block(&buffer[3840], dwt, 8); + progressive_rfx_dwt_2d_decode_block(&buffer[3072], dwt, 16); + progressive_rfx_dwt_2d_decode_block(&buffer[0], dwt, 32); +#endif +} + int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPONENT_CODEC_QUANT* quant, const BYTE* data, int length, INT16* buffer) { int status; + INT16* dwt; const primitives_t* prims = primitives_get(); status = rfx_rlgr_decode(data, length, buffer, 4096, 1); @@ -118,6 +214,12 @@ int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, rfx_quantization_decode_block(prims, &buffer[3951], 64, (quant->HH3 - 1)); /* HH3 */ rfx_quantization_decode_block(prims, &buffer[4015], 81, (quant->LL3 - 1)); /* LL3 */ + dwt = (INT16*) BufferPool_Take(progressive->bufferPool, -1); /* DWT buffer */ + + progressive_rfx_dwt_2d_decode(buffer, dwt); + + BufferPool_Return(progressive->bufferPool, dwt); + return 1; } @@ -130,6 +232,8 @@ int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROG RFX_COMPONENT_CODEC_QUANT* quantCb; RFX_COMPONENT_CODEC_QUANT* quantCr; RFX_PROGRESSIVE_CODEC_QUANT* quantProgVal; + static const prim_size_t roi_64x64 = { 64, 64 }; + const primitives_t* prims = primitives_get(); printf("ProgressiveTileFirst: quantIdx Y: %d Cb: %d Cr: %d xIdx: %d yIdx: %d flags: %d quality: %d yLen: %d cbLen: %d crLen: %d tailLen: %d\n", tile->quantIdxY, tile->quantIdxCb, tile->quantIdxCr, tile->xIdx, tile->yIdx, tile->flags, tile->quality, tile->yLen, tile->cbLen, tile->crLen, tile->tailLen); @@ -164,6 +268,7 @@ int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROG } pBuffer = (BYTE*) BufferPool_Take(progressive->bufferPool, -1); + pSrcDst[0] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 0) + 16])); /* Y/R buffer */ pSrcDst[1] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 1) + 16])); /* Cb/G buffer */ pSrcDst[2] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 2) + 16])); /* Cr/B buffer */ @@ -172,6 +277,17 @@ int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROG progressive_rfx_decode_component(progressive, quantCb, tile->cbData, tile->cbLen, pSrcDst[1]); /* Cb */ progressive_rfx_decode_component(progressive, quantCr, tile->crData, tile->crLen, pSrcDst[2]); /* Cr */ + prims->yCbCrToRGB_16s16s_P3P3((const INT16**) pSrcDst, 64 * sizeof(INT16), + pSrcDst, 64 * sizeof(INT16), &roi_64x64); + + if (!tile->data) + { + tile->data = _aligned_malloc(64 * 64 * 4, 16); + } + + prims->RGBToRGB_16s8u_P3AC4R((const INT16**) pSrcDst, 64 * sizeof(INT16), + tile->data, 64 * 4, &roi_64x64); + BufferPool_Return(progressive->bufferPool, pBuffer); return 1; @@ -296,6 +412,11 @@ int progressive_process_tiles(PROGRESSIVE_CONTEXT* progressive, BYTE* blocks, UI tile->tailData = &block[boffset]; boffset += tile->tailLen; + tile->width = 64; + tile->height = 64; + tile->x = tile->xIdx * 64; + tile->y = tile->yIdx * 64; + break; case PROGRESSIVE_WBT_TILE_FIRST: @@ -340,6 +461,11 @@ int progressive_process_tiles(PROGRESSIVE_CONTEXT* progressive, BYTE* blocks, UI tile->tailData = &block[boffset]; boffset += tile->tailLen; + tile->width = 64; + tile->height = 64; + tile->x = tile->xIdx * 64; + tile->y = tile->yIdx * 64; + break; case PROGRESSIVE_WBT_TILE_UPGRADE: @@ -397,6 +523,11 @@ int progressive_process_tiles(PROGRESSIVE_CONTEXT* progressive, BYTE* blocks, UI tile->crRawData = &block[boffset]; boffset += tile->crRawLen; + tile->width = 64; + tile->height = 64; + tile->x = tile->xIdx * 64; + tile->y = tile->yIdx * 64; + break; default: diff --git a/libfreerdp/codec/rfx_decode.c b/libfreerdp/codec/rfx_decode.c index d3baf5462..d14aff8a2 100644 --- a/libfreerdp/codec/rfx_decode.c +++ b/libfreerdp/codec/rfx_decode.c @@ -38,7 +38,7 @@ #include "rfx_decode.h" /* stride is bytes between rows in the output buffer. */ -static void rfx_decode_format_rgb(INT16* r_buf, INT16* g_buf, INT16* b_buf, +void rfx_decode_format_rgb(INT16* r_buf, INT16* g_buf, INT16* b_buf, RDP_PIXEL_FORMAT pixel_format, BYTE* dst_buf, int stride) { primitives_t *prims = primitives_get(); @@ -146,9 +146,7 @@ BOOL rfx_decode_rgb(RFX_CONTEXT* context, RFX_TILE* tile, BYTE* rgb_buffer, int pSrcDst[2] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 2) + 16])); /* cr_b_buffer */ rfx_decode_component(context, y_quants, tile->YData, tile->YLen, pSrcDst[0]); /* YData */ - rfx_decode_component(context, cb_quants, tile->CbData, tile->CbLen, pSrcDst[1]); /* CbData */ - rfx_decode_component(context, cr_quants, tile->CrData, tile->CrLen, pSrcDst[2]); /* CrData */ PROFILER_ENTER(context->priv->prof_rfx_ycbcr_to_rgb); diff --git a/libfreerdp/codec/rfx_dwt.c b/libfreerdp/codec/rfx_dwt.c index 0b8448b9e..7e3b3ccc4 100644 --- a/libfreerdp/codec/rfx_dwt.c +++ b/libfreerdp/codec/rfx_dwt.c @@ -110,9 +110,9 @@ static void rfx_dwt_2d_decode_block(INT16* buffer, INT16* idwt, int subband_widt void rfx_dwt_2d_decode(INT16* buffer, INT16* dwt_buffer) { - rfx_dwt_2d_decode_block(buffer + 3840, dwt_buffer, 8); - rfx_dwt_2d_decode_block(buffer + 3072, dwt_buffer, 16); - rfx_dwt_2d_decode_block(buffer, dwt_buffer, 32); + rfx_dwt_2d_decode_block(&buffer[3840], dwt_buffer, 8); + rfx_dwt_2d_decode_block(&buffer[3072], dwt_buffer, 16); + rfx_dwt_2d_decode_block(&buffer[0], dwt_buffer, 32); } static void rfx_dwt_2d_encode_block(INT16* buffer, INT16* dwt, int subband_width) @@ -192,7 +192,7 @@ static void rfx_dwt_2d_encode_block(INT16* buffer, INT16* dwt, int subband_width void rfx_dwt_2d_encode(INT16* buffer, INT16* dwt_buffer) { - rfx_dwt_2d_encode_block(buffer, dwt_buffer, 32); - rfx_dwt_2d_encode_block(buffer + 3072, dwt_buffer, 16); - rfx_dwt_2d_encode_block(buffer + 3840, dwt_buffer, 8); + rfx_dwt_2d_encode_block(&buffer[0], dwt_buffer, 32); + rfx_dwt_2d_encode_block(&buffer[3072], dwt_buffer, 16); + rfx_dwt_2d_encode_block(&buffer[3840], dwt_buffer, 8); } diff --git a/libfreerdp/codec/rfx_sse2.c b/libfreerdp/codec/rfx_sse2.c index 4f54d17cd..f89efe81e 100644 --- a/libfreerdp/codec/rfx_sse2.c +++ b/libfreerdp/codec/rfx_sse2.c @@ -340,9 +340,9 @@ static void rfx_dwt_2d_decode_sse2(INT16* buffer, INT16* dwt_buffer) { _mm_prefetch_buffer((char*) buffer, 4096 * sizeof(INT16)); - rfx_dwt_2d_decode_block_sse2(buffer + 3840, dwt_buffer, 8); - rfx_dwt_2d_decode_block_sse2(buffer + 3072, dwt_buffer, 16); - rfx_dwt_2d_decode_block_sse2(buffer, dwt_buffer, 32); + rfx_dwt_2d_decode_block_sse2(&buffer[3840], dwt_buffer, 8); + rfx_dwt_2d_decode_block_sse2(&buffer[3072], dwt_buffer, 16); + rfx_dwt_2d_decode_block_sse2(&buffer[0], dwt_buffer, 32); } static __inline void __attribute__((ATTRIBUTES)) From e95b6aece9cbf06d9f9f038f304a5f504889e042 Mon Sep 17 00:00:00 2001 From: erbth Date: Tue, 19 Aug 2014 22:59:22 +0200 Subject: [PATCH 129/170] (hopefully) proper window style setup in wfreerdp at startup --- client/Windows/wf_interface.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/client/Windows/wf_interface.c b/client/Windows/wf_interface.c index 6effa7cf0..3fb115d43 100644 --- a/client/Windows/wf_interface.c +++ b/client/Windows/wf_interface.c @@ -394,10 +394,12 @@ BOOL wf_post_connect(freerdp* instance) if (settings->EmbeddedWindow) settings->Decorations = FALSE; - if (!settings->Decorations) + if (wfc->fullscreen) + dwStyle = WS_POPUP; + else if (!settings->Decorations) dwStyle = WS_CHILD | WS_BORDER; else - dwStyle = 0; + dwStyle = WS_CAPTION | WS_OVERLAPPED | WS_SYSMENU | WS_MINIMIZEBOX | WS_SIZEBOX | WS_MAXIMIZEBOX; if (!wfc->hwnd) { From 27fc3ee64d82bc44d9530600c6a21930c37b69c0 Mon Sep 17 00:00:00 2001 From: Daniel Bungert Date: Wed, 20 Aug 2014 03:54:05 -0600 Subject: [PATCH 130/170] Fix multiple cases of use of uninitialized vars * Zeroing xevent helped address some erratic behavior. * valgrind complained about using xfBitmap uninitialized during shutdown, traced it back to the initialization. Bitmap_Prototype->size > sizeof(rdpBitmap). * Early exit from recv_tpkt_pdu is necessary to address a shutdown crash - the channelId value was being used without being set in the disconnect case. --- client/X11/xf_window.c | 2 ++ libfreerdp/core/graphics.c | 9 ++++++--- libfreerdp/core/peer.c | 3 +++ libfreerdp/core/rdp.c | 3 +++ 4 files changed, 14 insertions(+), 3 deletions(-) diff --git a/client/X11/xf_window.c b/client/X11/xf_window.c index 7df1f8768..51779905a 100644 --- a/client/X11/xf_window.c +++ b/client/X11/xf_window.c @@ -114,6 +114,8 @@ void xf_SendClientEvent(xfContext *xfc, xfWindow *window, Atom atom, unsigned in unsigned int i; va_list argp; va_start(argp, numArgs); + + ZeroMemory(&xevent, sizeof(XEvent)); xevent.xclient.type = ClientMessage; xevent.xclient.serial = 0; xevent.xclient.send_event = False; diff --git a/libfreerdp/core/graphics.c b/libfreerdp/core/graphics.c index 58de46834..7f991bb81 100644 --- a/libfreerdp/core/graphics.c +++ b/libfreerdp/core/graphics.c @@ -37,7 +37,8 @@ rdpBitmap* Bitmap_Alloc(rdpContext* context) if (bitmap) { - CopyMemory(bitmap, context->graphics->Bitmap_Prototype, sizeof(rdpBitmap)); + ZeroMemory(bitmap, graphics->Bitmap_Prototype->size); + CopyMemory(bitmap, graphics->Bitmap_Prototype, sizeof(rdpBitmap)); bitmap->data = NULL; } @@ -99,7 +100,8 @@ rdpPointer* Pointer_Alloc(rdpContext* context) if (pointer) { - CopyMemory(pointer, context->graphics->Pointer_Prototype, sizeof(rdpPointer)); + ZeroMemory(pointer, graphics->Pointer_Prototype->size); + CopyMemory(pointer, graphics->Pointer_Prototype, sizeof(rdpPointer)); } return pointer; @@ -165,7 +167,8 @@ rdpGlyph* Glyph_Alloc(rdpContext* context) if (glyph) { - CopyMemory(glyph, context->graphics->Glyph_Prototype, sizeof(rdpGlyph)); + ZeroMemory(glyph, graphics->Glyph_Prototype->size); + CopyMemory(glyph, graphics->Glyph_Prototype, sizeof(rdpGlyph)); } return glyph; diff --git a/libfreerdp/core/peer.c b/libfreerdp/core/peer.c index 0d0920280..e2f3f48f2 100644 --- a/libfreerdp/core/peer.c +++ b/libfreerdp/core/peer.c @@ -184,6 +184,9 @@ static int peer_recv_tpkt_pdu(freerdp_peer* client, wStream* s) return -1; } + if (rdp->disconnect) + return 0; + if (rdp->settings->DisableEncryption) { if (!rdp_read_security_header(s, &securityFlags)) diff --git a/libfreerdp/core/rdp.c b/libfreerdp/core/rdp.c index e5a2e3956..170b93b60 100644 --- a/libfreerdp/core/rdp.c +++ b/libfreerdp/core/rdp.c @@ -989,6 +989,9 @@ static int rdp_recv_tpkt_pdu(rdpRdp* rdp, wStream* s) return -1; } + if (rdp->disconnect) + return 0; + if (rdp->settings->DisableEncryption) { if (!rdp_read_security_header(s, &securityFlags)) From 5e778d6a0cc2386d6d7b4cb520924abffd8d75c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Wed, 20 Aug 2014 17:16:34 -0400 Subject: [PATCH 131/170] libfreerdp-codec: intermediate progressive rfx iDWT --- libfreerdp/codec/progressive.c | 134 +++++++++++++++++++-------------- 1 file changed, 77 insertions(+), 57 deletions(-) diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index 08b3268c1..3bebc1072 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -96,97 +96,117 @@ const char* progressive_get_block_type_string(UINT16 blockType) static void progressive_rfx_dwt_2d_decode_block(INT16* buffer, INT16* dwt, int N) { - int N2; + int width; + int height; int x, y, k; - INT16 *dst, *l, *h; - INT16 *l_dst, *h_dst; + int Nx2, Ne2; + INT16 *L, *H; INT16 *HL, *LH, *HH, *LL; - N2 = N << 1; + Nx2 = N * 2; + Ne2 = N * N; - /* Inverse DWT in horizontal direction, results in 2 sub-bands in L, H order in tmp buffer idwt. */ - /* The 4 sub-bands are stored in HL(0), LH(1), HH(2), LL(3) order. */ - /* The lower part L uses LL(3) and HL(0). */ - /* The higher part H uses LH(1) and HH(2). */ - - LL = &buffer[(N * N) * 3]; HL = &buffer[0]; - l_dst = &dwt[0]; + LH = &buffer[Ne2 - N]; /* (N^2 - N) */ + HH = &buffer[2 * (Ne2 - N)]; /* 2 * (N^2 - N) */ + LL = &buffer[(3 * Ne2) - (4 * N) + 1]; /* 3N^2 - 4N + 1) */ - LH = &buffer[N * N]; - HH = &buffer[(N * N) * 2]; - h_dst = &dwt[(N * N) * 2]; + L = &dwt[0]; + H = &dwt[(2 * Ne2) - N]; /* 2N^2 - N */ + + /* horizontal (LL + HL -> L) */ + + L[0] = LL[0] - ((HL[0] + HL[0] + 1) / 2); for (y = 0; y < N; y++) { /* Even coefficients */ - l_dst[0] = LL[0] - ((HL[0] + HL[0] + 1) >> 1); - h_dst[0] = LH[0] - ((HH[0] + HH[0] + 1) >> 1); for (k = 1; k < N; k++) { - x = k << 1; - l_dst[x] = LL[k] - ((HL[k-1] + HL[k] + 1) >> 1); - h_dst[x] = LH[k] - ((HH[k-1] + HH[k] + 1) >> 1); + L[k * 2] = LL[k] - ((HL[k - 1] + HL[k] + 1) / 2); } /* Odd coefficients */ - for (k = 0; k < N-1; k++) - { - x = k << 1; - l_dst[x + 1] = (HL[k] << 1) + ((l_dst[x] + l_dst[x + 2]) >> 1); - h_dst[x + 1] = (HH[k] << 1) + ((h_dst[x] + h_dst[x + 2]) >> 1); - } - x = k << 1; - l_dst[x + 1] = (HL[k] << 1) + (l_dst[x]); - h_dst[x + 1] = (HH[k] << 1) + (h_dst[x]); + for (k = 0; k < N - 1; k++) + { + L[(k * 2) + 1] = (HL[k] * 2) + ((L[k * 2] + L[(k * 2) + 2]) / 2); + } LL += N; - HL += N; - l_dst += N2; - - LH += N; - HH += N; - h_dst += N2; + HL += (N - 1); + L += (2 * N) - 1; } - /* Inverse DWT in vertical direction, results are stored in original buffer. */ - for (x = 0; x < N2; x++) + /* horizontal (LH + HH -> H) */ + + for (y = 0; y < N - 1; y++) { /* Even coefficients */ - for (k = 0; k < N; k++) + + H[0] = LH[0] - ((HH[0] + HH[0] + 1) / 2); + + for (k = 1; k < N; k++) { - y = k << 1; - dst = buffer + y * N2 + x; - l = dwt + k * N2 + x; - h = l + N * N2; - dst[0] = *l - (((k > 0 ? *(h - N2) : *h) + (*h) + 1) >> 1); + H[k * 2] = LH[k] - ((HH[k - 1] + HH[k] + 1) / 2); } /* Odd coefficients */ - for (k = 0; k < N; k++) + + for (k = 0; k < N - 1; k++) { - y = k << 1; - dst = buffer + y * N2 + x; - l = dwt + k * N2 + x; - h = l + N * N2; - dst[N2] = (*h << 1) + ((dst[0] + dst[k < N - 1 ? 2 * N2 : 0]) >> 1); + H[(k * 2) + 1] = (HH[k] * 2) + ((H[k * 2] + H[(k * 2) + 2]) / 2); + } + + LH += N; + HH += (N - 1); + H += (2 * N) - 1; + } + + /* vertical (L + H -> LL) */ + + LL = &buffer[0]; + + L = &dwt[0]; + H = &dwt[(2 * Ne2) - N]; /* 2N^2 - N */ + + for (x = 0; x < (2 * N) - 1; x++) + { + /* Even coefficients */ + + LL[0] = L[0] - ((H[0] + H[0] + 1) / 2); + + for (k = 1; k < N; k++) + { + LL = &buffer[(k * 2) * (N * 2) + x]; + L = &dwt[k * (N * 2) + x]; + H = &L[N * (N * 2)]; + + LL[0] = L[0] - (((H[-1 * (N * 2)]) + H[0] + 1) / 2); + } + + /* Odd coefficients */ + + for (k = 0; k < N - 1; k++) + { + LL = &buffer[(k * 2) * (N * 2) + x]; + L = &dwt[k * (N * 2) + x]; + H = &L[N * (N * 2)]; + + LL[N * 2] = (H[0] * 2) + ((LL[0] + LL[2 * (N * 2)]) / 2); } } } void progressive_rfx_dwt_2d_decode(INT16* buffer, INT16* dwt) { -#if 0 - progressive_rfx_dwt_2d_decode_block(&buffer[3807], dwt, 8); - progressive_rfx_dwt_2d_decode_block(&buffer[3007], dwt, 16); - //progressive_rfx_dwt_2d_decode_block(&buffer[0], dwt, 32); -#else - progressive_rfx_dwt_2d_decode_block(&buffer[3840], dwt, 8); - progressive_rfx_dwt_2d_decode_block(&buffer[3072], dwt, 16); - progressive_rfx_dwt_2d_decode_block(&buffer[0], dwt, 32); -#endif + if (0) + { + progressive_rfx_dwt_2d_decode_block(&buffer[3807], dwt, 9); + progressive_rfx_dwt_2d_decode_block(&buffer[3007], dwt, 17); + progressive_rfx_dwt_2d_decode_block(&buffer[0], dwt, 31); + } } int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, From e54bbdab006a8e4361397b57729650bc1e769405 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Wed, 20 Aug 2014 19:12:08 -0400 Subject: [PATCH 132/170] libfreerdp-codec: start new progressive rfx iDWT functions --- libfreerdp/codec/progressive.c | 319 ++++++++++++++++++++++++--------- 1 file changed, 238 insertions(+), 81 deletions(-) diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index 3bebc1072..23169542a 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -94,118 +94,275 @@ const char* progressive_get_block_type_string(UINT16 blockType) * LL3 4015 9x9 81 */ +static void progressive_rfx_idwt_x(INT16* pLowBand, int nLowStep, INT16* pHighBand, int nHighStep, + INT16* pDstBand, int nDstStep, int nLowCount, int nHighCount, int nDstCount) +{ + int i, j; + INT16 L0; + INT16 H0, H1; + INT16 X0, X1, X2; + INT16 *pL, *pH, *pX; + + printf("progressive_rfx_idwt_x: nLowStep: %d nHighStep: %d nDstStep: %d nLowCount: %d nHighCount: %d nCount: %d\n", + nLowStep, nHighStep, nDstStep, nLowCount, nHighCount, nDstCount); + + for (i = 0; i < nDstCount; i++) + { + pL = pLowBand; + pH = pHighBand; + pX = pDstBand; + + H0 = *pH; + pH++; + + L0 = *pL; + pL++; + + X0 = L0 - H0; + X2 = L0 - H0; + + for (j = 0; j < (nHighCount - 1); j++) + { + H1 = *pH; + pH++; + + L0 = *pL; + pL++; + + X2 = L0 - ((H0 + H1) / 2); + X1 = ((X0 + X2) / 2) + (2 * H0); + + pX[0] = X0; + pX[1] = X1; + pX += 2; + + X0 = X2; + H0 = H1; + } + + if (nLowCount <= (nHighCount + 1)) + { + if (nLowCount <= nHighCount) + { + pX[0] = X2; + pX[1] = X2 + (2 * H0); + } + else + { + L0 = *pL; + pL++; + + X0 = L0 - H0; + + pX[0] = X2; + pX[1] = ((X0 + X2) / 2) + (2 * H0); + pX[2] = X0; + } + } + else + { + L0 = *pL; + pL++; + + X0 = L0 - (H0 / 2); + + pX[0] = X2; + pX[1] = ((X0 + X2) / 2) + (2 * H0); + pX[2] = X0; + + L0 = *pL; + pL++; + + pX[3] = (X0 + L0) / 2; + } + + pLowBand += nLowStep; + pHighBand += nHighStep; + pDstBand += nDstStep; + } +} + +static void progressive_rfx_idwt_y(INT16* pLowBand, int nLowStep, INT16* pHighBand, int nHighStep, + INT16* pDstBand, int nDstStep, int nLowCount, int nHighCount, int nDstCount) +{ + int i, j; + INT16 L0; + INT16 H0, H1; + INT16 X0, X1, X2; + INT16 *pL, *pH, *pX; + + printf("progressive_rfx_idwt_y: nLowStep: %d nHighStep: %d nDstStep: %d nLowCount: %d nHighCount: %d nDstCount: %d\n", + nLowStep, nHighStep, nDstStep, nLowCount, nHighCount, nDstCount); + + for (i = 0; i < nDstCount; i++) + { + pL = pLowBand; + pH = pHighBand; + pX = pDstBand; + + H0 = *pH; + pH += nHighStep; + + L0 = *pL; + pL += nLowStep; + + X0 = L0 - H0; + X2 = L0 - H0; + + for (j = 0; j < (nHighCount - 1); j++) + { + H1 = *pH; + pH += nHighStep; + + L0 = *pL; + pL += nLowStep; + + X2 = L0 - ((H0 + H1) / 2); + X1 = ((X0 + X2) / 2) + (2 * H0); + + *pX = X0; + pX += nDstStep; + + *pX = X1; + pX += nDstStep; + + X0 = X2; + H0 = H1; + } + + if (nLowCount <= (nHighCount + 1)) + { + if (nLowCount <= nHighCount) + { + *pX = X2; + pX += nDstStep; + + *pX = X2 + (2 * H0); + pX += nDstStep; + } + else + { + L0 = *pL; + pL += nLowStep; + + X0 = L0 - H0; + + *pX = X2; + pX += nDstStep; + + *pX = ((X0 + X2) / 2) + (2 * H0); + pX += nDstStep; + + *pX = X0; + pX += nDstStep; + } + } + else + { + L0 = *pL; + pL += nLowStep; + + X0 = L0 - (H0 / 2); + + *pX = X2; + pX += nDstStep; + + *pX = ((X0 + X2) / 2) + (2 * H0); + pX += nDstStep; + + *pX = X0; + pX += nDstStep; + + L0 = *pL; + pL += nLowStep; + + *pX = (X0 + L0) / 2; + pX += nDstStep; + } + + pLowBand += 1; + pHighBand += 1; + pDstBand += 1; + } +} + static void progressive_rfx_dwt_2d_decode_block(INT16* buffer, INT16* dwt, int N) { - int width; - int height; - int x, y, k; - int Nx2, Ne2; + INT16* pLowBand; + INT16* pHighBand; + INT16* pDstBand; + int nLowStep; + int nHighStep; + int nDstStep; + int nLowCount; + int nHighCount; + int nDstCount; INT16 *L, *H; INT16 *HL, *LH, *HH, *LL; - Nx2 = N * 2; - Ne2 = N * N; - HL = &buffer[0]; - LH = &buffer[Ne2 - N]; /* (N^2 - N) */ - HH = &buffer[2 * (Ne2 - N)]; /* 2 * (N^2 - N) */ - LL = &buffer[(3 * Ne2) - (4 * N) + 1]; /* 3N^2 - 4N + 1) */ + LH = &buffer[(N * N) - N]; /* (N^2 - N) */ + HH = &buffer[2 * ((N * N) - N)]; /* 2 * (N^2 - N) */ + LL = &buffer[(3 * (N * N)) - (4 * N) + 1]; /* 3N^2 - 4N + 1) */ L = &dwt[0]; - H = &dwt[(2 * Ne2) - N]; /* 2N^2 - N */ + H = &dwt[(2 * (N * N)) - N]; /* 2N^2 - N */ /* horizontal (LL + HL -> L) */ - L[0] = LL[0] - ((HL[0] + HL[0] + 1) / 2); + pLowBand = LL; + nLowStep = N * N; + pHighBand = HL; + nHighStep = N * (N - 1); + pDstBand = L; + nDstStep = N + (N - 1); + nLowCount = N; + nHighCount = (N - 1); + nDstCount = (N - 1); - for (y = 0; y < N; y++) - { - /* Even coefficients */ - - for (k = 1; k < N; k++) - { - L[k * 2] = LL[k] - ((HL[k - 1] + HL[k] + 1) / 2); - } - - /* Odd coefficients */ - - for (k = 0; k < N - 1; k++) - { - L[(k * 2) + 1] = (HL[k] * 2) + ((L[k * 2] + L[(k * 2) + 2]) / 2); - } - - LL += N; - HL += (N - 1); - L += (2 * N) - 1; - } + progressive_rfx_idwt_x(pLowBand, nLowStep, pHighBand, nHighStep, pDstBand, nDstStep, nLowCount, nHighCount, nDstCount); /* horizontal (LH + HH -> H) */ - for (y = 0; y < N - 1; y++) - { - /* Even coefficients */ + pLowBand = LH; + nLowStep = N * (N - 1); + pHighBand = HH; + nHighStep = (N - 1) * (N - 1); + pDstBand = H; + nDstStep = N + (N - 1); + nLowCount = N; + nHighCount = (N - 1); + nDstCount = (N - 1); - H[0] = LH[0] - ((HH[0] + HH[0] + 1) / 2); - - for (k = 1; k < N; k++) - { - H[k * 2] = LH[k] - ((HH[k - 1] + HH[k] + 1) / 2); - } - - /* Odd coefficients */ - - for (k = 0; k < N - 1; k++) - { - H[(k * 2) + 1] = (HH[k] * 2) + ((H[k * 2] + H[(k * 2) + 2]) / 2); - } - - LH += N; - HH += (N - 1); - H += (2 * N) - 1; - } + progressive_rfx_idwt_x(pLowBand, nLowStep, pHighBand, nHighStep, pDstBand, nDstStep, nLowCount, nHighCount, nDstCount); /* vertical (L + H -> LL) */ LL = &buffer[0]; L = &dwt[0]; - H = &dwt[(2 * Ne2) - N]; /* 2N^2 - N */ + H = &dwt[(2 * (N * N)) - N]; /* 2N^2 - N */ - for (x = 0; x < (2 * N) - 1; x++) - { - /* Even coefficients */ + pLowBand = L; + nLowStep = N + (N - 1); + pHighBand = H; + nHighStep = N + (N - 1); + pDstBand = LL; + nDstStep = N + (N - 1); + nLowCount = N; + nHighCount = (N - 1); + nDstCount = N + (N - 1); - LL[0] = L[0] - ((H[0] + H[0] + 1) / 2); - - for (k = 1; k < N; k++) - { - LL = &buffer[(k * 2) * (N * 2) + x]; - L = &dwt[k * (N * 2) + x]; - H = &L[N * (N * 2)]; - - LL[0] = L[0] - (((H[-1 * (N * 2)]) + H[0] + 1) / 2); - } - - /* Odd coefficients */ - - for (k = 0; k < N - 1; k++) - { - LL = &buffer[(k * 2) * (N * 2) + x]; - L = &dwt[k * (N * 2) + x]; - H = &L[N * (N * 2)]; - - LL[N * 2] = (H[0] * 2) + ((LL[0] + LL[2 * (N * 2)]) / 2); - } - } + progressive_rfx_idwt_y(pLowBand, nLowStep, pHighBand, nHighStep, pDstBand, nDstStep, nLowCount, nHighCount, nDstCount); } void progressive_rfx_dwt_2d_decode(INT16* buffer, INT16* dwt) { - if (0) + if (1) { progressive_rfx_dwt_2d_decode_block(&buffer[3807], dwt, 9); progressive_rfx_dwt_2d_decode_block(&buffer[3007], dwt, 17); - progressive_rfx_dwt_2d_decode_block(&buffer[0], dwt, 31); + //progressive_rfx_dwt_2d_decode_block(&buffer[0], dwt, 33); } } From 08d60d01e0a56b339b2c1ba616d86012f42e4337 Mon Sep 17 00:00:00 2001 From: Pavel Tsekov Date: Thu, 21 Aug 2014 03:35:34 +0300 Subject: [PATCH 133/170] Adjust the code to work with the new GDI color representation. * client/X11/xf_gdi.c: Use freerdp_color_convert_drawing_order_color_to_gdi_color() to convert from drawing order color representation to GDI color representation troughout. * client/X11/xf_graphics.c: Likewise. --- client/X11/xf_gdi.c | 22 +++++++++++----------- client/X11/xf_graphics.c | 8 ++------ 2 files changed, 13 insertions(+), 17 deletions(-) diff --git a/client/X11/xf_gdi.c b/client/X11/xf_gdi.c index 1ab20af06..59414d147 100644 --- a/client/X11/xf_gdi.c +++ b/client/X11/xf_gdi.c @@ -337,8 +337,8 @@ void xf_gdi_patblt(rdpContext* context, PATBLT_ORDER* patblt) brush = &patblt->brush; xf_set_rop3(xfc, gdi_rop3_code(patblt->bRop)); - foreColor = freerdp_color_convert_var(patblt->foreColor, context->settings->ColorDepth, xfc->bpp, xfc->clrconv); - backColor = freerdp_color_convert_var(patblt->backColor, context->settings->ColorDepth, xfc->bpp, xfc->clrconv); + foreColor = freerdp_color_convert_drawing_order_color_to_gdi_color(patblt->foreColor, context->settings->ColorDepth, xfc->clrconv); + backColor = freerdp_color_convert_drawing_order_color_to_gdi_color(patblt->backColor, context->settings->ColorDepth, xfc->clrconv); if (brush->style == GDI_BS_SOLID) { @@ -457,7 +457,7 @@ void xf_gdi_opaque_rect(rdpContext* context, OPAQUE_RECT_ORDER* opaque_rect) xf_lock_x11(xfc, FALSE); - color = freerdp_color_convert_var(opaque_rect->color, context->settings->ColorDepth, xfc->bpp, xfc->clrconv); + color = freerdp_color_convert_drawing_order_color_to_gdi_color(opaque_rect->color, context->settings->ColorDepth, xfc->clrconv); XSetFunction(xfc->display, xfc->gc, GXcopy); XSetFillStyle(xfc->display, xfc->gc, FillSolid); @@ -491,7 +491,7 @@ void xf_gdi_multi_opaque_rect(rdpContext* context, MULTI_OPAQUE_RECT_ORDER* mult xf_lock_x11(xfc, FALSE); - color = freerdp_color_convert_var(multi_opaque_rect->color, context->settings->ColorDepth, xfc->bpp, xfc->clrconv); + color = freerdp_color_convert_drawing_order_color_to_gdi_color(multi_opaque_rect->color, context->settings->ColorDepth, xfc->clrconv); XSetFunction(xfc->display, xfc->gc, GXcopy); XSetFillStyle(xfc->display, xfc->gc, FillSolid); @@ -533,7 +533,7 @@ void xf_gdi_line_to(rdpContext* context, LINE_TO_ORDER* line_to) xf_lock_x11(xfc, FALSE); xf_set_rop2(xfc, line_to->bRop2); - color = freerdp_color_convert_var(line_to->penColor, context->settings->ColorDepth, xfc->bpp, xfc->clrconv); + color = freerdp_color_convert_drawing_order_color_to_gdi_color(line_to->penColor, context->settings->ColorDepth, xfc->clrconv); XSetFillStyle(xfc->display, xfc->gc, FillSolid); XSetForeground(xfc->display, xfc->gc, color); @@ -583,7 +583,7 @@ void xf_gdi_polyline(rdpContext* context, POLYLINE_ORDER* polyline) xf_lock_x11(xfc, FALSE); xf_set_rop2(xfc, polyline->bRop2); - color = freerdp_color_convert_var(polyline->penColor, context->settings->ColorDepth, xfc->bpp, xfc->clrconv); + color = freerdp_color_convert_drawing_order_color_to_gdi_color(polyline->penColor, context->settings->ColorDepth, xfc->clrconv); XSetFillStyle(xfc->display, xfc->gc, FillSolid); XSetForeground(xfc->display, xfc->gc, color); @@ -679,8 +679,8 @@ void xf_gdi_mem3blt(rdpContext* context, MEM3BLT_ORDER* mem3blt) brush = &mem3blt->brush; bitmap = (xfBitmap*) mem3blt->bitmap; xf_set_rop3(xfc, gdi_rop3_code(mem3blt->bRop)); - foreColor = freerdp_color_convert_var(mem3blt->foreColor, context->settings->ColorDepth, xfc->bpp, xfc->clrconv); - backColor = freerdp_color_convert_var(mem3blt->backColor, context->settings->ColorDepth, xfc->bpp, xfc->clrconv); + foreColor = freerdp_color_convert_drawing_order_color_to_gdi_color(mem3blt->foreColor, context->settings->ColorDepth, xfc->clrconv); + backColor = freerdp_color_convert_drawing_order_color_to_gdi_color(mem3blt->backColor, context->settings->ColorDepth, xfc->clrconv); if (brush->style == GDI_BS_PATTERN) { @@ -752,7 +752,7 @@ void xf_gdi_polygon_sc(rdpContext* context, POLYGON_SC_ORDER* polygon_sc) xf_lock_x11(xfc, FALSE); xf_set_rop2(xfc, polygon_sc->bRop2); - brush_color = freerdp_color_convert_var(polygon_sc->brushColor, context->settings->ColorDepth, xfc->bpp, xfc->clrconv); + brush_color = freerdp_color_convert_drawing_order_color_to_gdi_color(polygon_sc->brushColor, context->settings->ColorDepth, xfc->clrconv); npoints = polygon_sc->numPoints + 1; points = malloc(sizeof(XPoint) * npoints); @@ -813,8 +813,8 @@ void xf_gdi_polygon_cb(rdpContext* context, POLYGON_CB_ORDER* polygon_cb) brush = &(polygon_cb->brush); xf_set_rop2(xfc, polygon_cb->bRop2); - foreColor = freerdp_color_convert_var(polygon_cb->foreColor, context->settings->ColorDepth, xfc->bpp, xfc->clrconv); - backColor = freerdp_color_convert_var(polygon_cb->backColor, context->settings->ColorDepth, xfc->bpp, xfc->clrconv); + foreColor = freerdp_color_convert_drawing_order_color_to_gdi_color(polygon_cb->foreColor, context->settings->ColorDepth, xfc->clrconv); + backColor = freerdp_color_convert_drawing_order_color_to_gdi_color(polygon_cb->backColor, context->settings->ColorDepth, xfc->clrconv); npoints = polygon_cb->numPoints + 1; points = malloc(sizeof(XPoint) * npoints); diff --git a/client/X11/xf_graphics.c b/client/X11/xf_graphics.c index 83e815cbf..f010a5ea5 100644 --- a/client/X11/xf_graphics.c +++ b/client/X11/xf_graphics.c @@ -392,13 +392,9 @@ void xf_Glyph_BeginDraw(rdpContext* context, int x, int y, int width, int height xfContext* context_ = (xfContext*) context; xfContext* xfc = (xfContext*) context; - bgcolor = (xfc->clrconv->invert)? - freerdp_color_convert_var_bgr(bgcolor, context_->settings->ColorDepth, xfc->bpp, xfc->clrconv): - freerdp_color_convert_var_rgb(bgcolor, context_->settings->ColorDepth, xfc->bpp, xfc->clrconv); + bgcolor = freerdp_color_convert_drawing_order_color_to_gdi_color(bgcolor, context->settings->ColorDepth, xfc->clrconv); - fgcolor = (xfc->clrconv->invert)? - freerdp_color_convert_var_bgr(fgcolor, context_->settings->ColorDepth, xfc->bpp, xfc->clrconv): - freerdp_color_convert_var_rgb(fgcolor, context_->settings->ColorDepth, xfc->bpp, xfc->clrconv); + fgcolor = freerdp_color_convert_drawing_order_color_to_gdi_color(fgcolor, context->settings->ColorDepth, xfc->clrconv); xf_lock_x11(xfc, FALSE); From f77e5159651535af383b47a82d35c1253dd2dfdb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 21 Aug 2014 16:05:39 -0400 Subject: [PATCH 134/170] libfreerdp-codec: improve progressive iDWT --- libfreerdp/codec/progressive.c | 148 ++++++++++++++++++++------------- 1 file changed, 90 insertions(+), 58 deletions(-) diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index 23169542a..0ebd3b816 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -286,84 +286,116 @@ static void progressive_rfx_idwt_y(INT16* pLowBand, int nLowStep, INT16* pHighBa } } -static void progressive_rfx_dwt_2d_decode_block(INT16* buffer, INT16* dwt, int N) +static int progressive_rfx_get_band_l_count(int level) { - INT16* pLowBand; - INT16* pHighBand; - INT16* pDstBand; - int nLowStep; - int nHighStep; - int nDstStep; - int nLowCount; - int nHighCount; - int nDstCount; - INT16 *L, *H; - INT16 *HL, *LH, *HH, *LL; + return (64 >> level) + 1; +} - HL = &buffer[0]; - LH = &buffer[(N * N) - N]; /* (N^2 - N) */ - HH = &buffer[2 * ((N * N) - N)]; /* 2 * (N^2 - N) */ - LL = &buffer[(3 * (N * N)) - (4 * N) + 1]; /* 3N^2 - 4N + 1) */ +static int progressive_rfx_get_band_h_count(int level) +{ + if (level == 1) + return (64 >> 1) - 1; + else + return (64 + (1 << (level - 1))) >> level; +} + +static void progressive_rfx_dwt_2d_decode_block(INT16* buffer, INT16* dwt, int level) +{ + int offset; + int nBandL; + int nBandH; + int nDstStepX; + int nDstStepY; + INT16 *L, *H; + INT16 *HL, *LH; + INT16 *HH, *LL; + INT16* pLowBand[3]; + INT16* pHighBand[3]; + INT16* pDstBand[3]; + int nLowStep[3]; + int nHighStep[3]; + int nDstStep[3]; + int nLowCount[3]; + int nHighCount[3]; + int nDstCount[3]; + + nBandL = progressive_rfx_get_band_l_count(level); + nBandH = progressive_rfx_get_band_h_count(level); + + offset = 0; + + HL = &buffer[offset]; + offset += (nBandH * nBandL); + + LH = &buffer[offset]; + offset += (nBandL * nBandH); + + HH = &buffer[offset]; + offset += (nBandH * nBandH); + + LL = &buffer[offset]; + offset += (nBandL * nBandL); + + nDstStepX = 2 * (nBandL + nBandH); + nDstStepY = 2 * progressive_rfx_get_band_l_count(level - 1); + + if (0) + { + nDstStepX = (nDstStepX + 15) & ~0xF; + nDstStepY = (nDstStepY + 15) & ~0xF; + } L = &dwt[0]; - H = &dwt[(2 * (N * N)) - N]; /* 2N^2 - N */ + H = &dwt[nBandL * nDstStepX]; /* horizontal (LL + HL -> L) */ - pLowBand = LL; - nLowStep = N * N; - pHighBand = HL; - nHighStep = N * (N - 1); - pDstBand = L; - nDstStep = N + (N - 1); - nLowCount = N; - nHighCount = (N - 1); - nDstCount = (N - 1); + pLowBand[0] = LL; + nLowStep[0] = 2 * nBandL; + pHighBand[0] = HL; + nHighStep[0] = 2 * nBandH; + pDstBand[0] = L; + nDstStep[0] = nDstStepX; + nLowCount[0] = nBandL; + nHighCount[0] = nBandH; + nDstCount[0] = nBandL; - progressive_rfx_idwt_x(pLowBand, nLowStep, pHighBand, nHighStep, pDstBand, nDstStep, nLowCount, nHighCount, nDstCount); + progressive_rfx_idwt_x(pLowBand[0], nLowStep[0], pHighBand[0], nHighStep[0], pDstBand[0], nDstStep[0], nLowCount[0], nHighCount[0], nDstCount[0]); /* horizontal (LH + HH -> H) */ - pLowBand = LH; - nLowStep = N * (N - 1); - pHighBand = HH; - nHighStep = (N - 1) * (N - 1); - pDstBand = H; - nDstStep = N + (N - 1); - nLowCount = N; - nHighCount = (N - 1); - nDstCount = (N - 1); + pLowBand[1] = LH; + nLowStep[1] = 2 * nBandL; + pHighBand[1] = HH; + nHighStep[1] = 2 * nBandH; + pDstBand[1] = H; + nDstStep[1] = nDstStepX; + nLowCount[1] = nBandL; + nHighCount[1] = nBandH; + nDstCount[1] = nBandH; - progressive_rfx_idwt_x(pLowBand, nLowStep, pHighBand, nHighStep, pDstBand, nDstStep, nLowCount, nHighCount, nDstCount); + progressive_rfx_idwt_x(pLowBand[1], nLowStep[1], pHighBand[1], nHighStep[1], pDstBand[1], nDstStep[1], nLowCount[1], nHighCount[1], nDstCount[1]); /* vertical (L + H -> LL) */ - LL = &buffer[0]; + pLowBand[2] = pDstBand[0]; + nLowStep[2] = nDstStep[0]; + pHighBand[2] = pDstBand[1]; + nHighStep[2] = nDstStep[1]; + pDstBand[2] = &buffer[0]; + nDstStep[2] = nDstStepY; + nLowCount[2] = nBandL; + nHighCount[2] = nBandH; + nDstCount[2] = nBandL + nBandH; - L = &dwt[0]; - H = &dwt[(2 * (N * N)) - N]; /* 2N^2 - N */ - - pLowBand = L; - nLowStep = N + (N - 1); - pHighBand = H; - nHighStep = N + (N - 1); - pDstBand = LL; - nDstStep = N + (N - 1); - nLowCount = N; - nHighCount = (N - 1); - nDstCount = N + (N - 1); - - progressive_rfx_idwt_y(pLowBand, nLowStep, pHighBand, nHighStep, pDstBand, nDstStep, nLowCount, nHighCount, nDstCount); + progressive_rfx_idwt_y(pLowBand[2], nLowStep[2], pHighBand[2], nHighStep[2], pDstBand[2], nDstStep[2], nLowCount[2], nHighCount[2], nDstCount[2]); } void progressive_rfx_dwt_2d_decode(INT16* buffer, INT16* dwt) { - if (1) - { - progressive_rfx_dwt_2d_decode_block(&buffer[3807], dwt, 9); - progressive_rfx_dwt_2d_decode_block(&buffer[3007], dwt, 17); - //progressive_rfx_dwt_2d_decode_block(&buffer[0], dwt, 33); - } + progressive_rfx_dwt_2d_decode_block(&buffer[3807], dwt, 3); + progressive_rfx_dwt_2d_decode_block(&buffer[3007], dwt, 2); + progressive_rfx_dwt_2d_decode_block(&buffer[0], dwt, 1); } int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, From f79ba1b364e3e3de28dc26f7cc86d8a73366332d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 21 Aug 2014 17:14:10 -0400 Subject: [PATCH 135/170] libfreerdp-codec: fix crashes --- libfreerdp/codec/progressive.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index 0ebd3b816..26a61838b 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -280,9 +280,9 @@ static void progressive_rfx_idwt_y(INT16* pLowBand, int nLowStep, INT16* pHighBa pX += nDstStep; } - pLowBand += 1; - pHighBand += 1; - pDstBand += 1; + pLowBand += nLowStep; + pHighBand += nHighStep; + pDstBand += nDstStep; } } @@ -336,8 +336,8 @@ static void progressive_rfx_dwt_2d_decode_block(INT16* buffer, INT16* dwt, int l LL = &buffer[offset]; offset += (nBandL * nBandL); - nDstStepX = 2 * (nBandL + nBandH); - nDstStepY = 2 * progressive_rfx_get_band_l_count(level - 1); + nDstStepX = (nBandL + nBandH); + nDstStepY = (nBandL + nBandH); if (0) { @@ -348,6 +348,9 @@ static void progressive_rfx_dwt_2d_decode_block(INT16* buffer, INT16* dwt, int l L = &dwt[0]; H = &dwt[nBandL * nDstStepX]; + printf("L: %d H: %d LL: %d\n", + nBandL * nDstStepX, nBandH * nDstStepX, (nBandL + nBandH) * nDstStepY); + /* horizontal (LL + HL -> L) */ pLowBand[0] = LL; From 969d9011daed7633b88292238aaee11894c472e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 21 Aug 2014 19:02:26 -0400 Subject: [PATCH 136/170] libfreerdp-codec: partially working progressive iDWT --- libfreerdp/codec/progressive.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index 26a61838b..353dc5b50 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -280,9 +280,9 @@ static void progressive_rfx_idwt_y(INT16* pLowBand, int nLowStep, INT16* pHighBa pX += nDstStep; } - pLowBand += nLowStep; - pHighBand += nHighStep; - pDstBand += nDstStep; + pLowBand++; + pHighBand++; + pDstBand++; } } @@ -354,9 +354,9 @@ static void progressive_rfx_dwt_2d_decode_block(INT16* buffer, INT16* dwt, int l /* horizontal (LL + HL -> L) */ pLowBand[0] = LL; - nLowStep[0] = 2 * nBandL; + nLowStep[0] = nBandL; pHighBand[0] = HL; - nHighStep[0] = 2 * nBandH; + nHighStep[0] = nBandH; pDstBand[0] = L; nDstStep[0] = nDstStepX; nLowCount[0] = nBandL; @@ -368,9 +368,9 @@ static void progressive_rfx_dwt_2d_decode_block(INT16* buffer, INT16* dwt, int l /* horizontal (LH + HH -> H) */ pLowBand[1] = LH; - nLowStep[1] = 2 * nBandL; + nLowStep[1] = nBandL; pHighBand[1] = HH; - nHighStep[1] = 2 * nBandH; + nHighStep[1] = nBandH; pDstBand[1] = H; nDstStep[1] = nDstStepX; nLowCount[1] = nBandL; From ed7312501c92edd14e2dfa6cab63bd51903e8bbb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 21 Aug 2014 19:43:37 -0400 Subject: [PATCH 137/170] libfreerdp-codec: fix progressive quantization shifts --- include/freerdp/codec/progressive.h | 2 ++ libfreerdp/codec/progressive.c | 33 ++++++++++++----------------- 2 files changed, 16 insertions(+), 19 deletions(-) diff --git a/include/freerdp/codec/progressive.h b/include/freerdp/codec/progressive.h index c94d2b876..d32847496 100644 --- a/include/freerdp/codec/progressive.h +++ b/include/freerdp/codec/progressive.h @@ -23,6 +23,7 @@ #include #include +#include #include #include @@ -255,6 +256,7 @@ struct _PROGRESSIVE_CONTEXT { BOOL Compressor; + wLog* log; wBufferPool* bufferPool; UINT32 cRects; diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index 353dc5b50..13ccd422f 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -103,9 +103,6 @@ static void progressive_rfx_idwt_x(INT16* pLowBand, int nLowStep, INT16* pHighBa INT16 X0, X1, X2; INT16 *pL, *pH, *pX; - printf("progressive_rfx_idwt_x: nLowStep: %d nHighStep: %d nDstStep: %d nLowCount: %d nHighCount: %d nCount: %d\n", - nLowStep, nHighStep, nDstStep, nLowCount, nHighCount, nDstCount); - for (i = 0; i < nDstCount; i++) { pL = pLowBand; @@ -191,9 +188,6 @@ static void progressive_rfx_idwt_y(INT16* pLowBand, int nLowStep, INT16* pHighBa INT16 X0, X1, X2; INT16 *pL, *pH, *pX; - printf("progressive_rfx_idwt_y: nLowStep: %d nHighStep: %d nDstStep: %d nLowCount: %d nHighCount: %d nDstCount: %d\n", - nLowStep, nHighStep, nDstStep, nLowCount, nHighCount, nDstCount); - for (i = 0; i < nDstCount; i++) { pL = pLowBand; @@ -348,9 +342,6 @@ static void progressive_rfx_dwt_2d_decode_block(INT16* buffer, INT16* dwt, int l L = &dwt[0]; H = &dwt[nBandL * nDstStepX]; - printf("L: %d H: %d LL: %d\n", - nBandL * nDstStepX, nBandH * nDstStepX, (nBandL + nBandH) * nDstStepY); - /* horizontal (LL + HL -> L) */ pLowBand[0] = LL; @@ -415,16 +406,16 @@ int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, rfx_differential_decode(&buffer[4015], 81); /* LL3 */ - rfx_quantization_decode_block(prims, &buffer[0], 1023, (quant->HL1 - 1)); /* HL1 */ - rfx_quantization_decode_block(prims, &buffer[1023], 1023, (quant->LH1 - 1)); /* LH1 */ - rfx_quantization_decode_block(prims, &buffer[2046], 961, (quant->HH1 - 1)); /* HH1 */ - rfx_quantization_decode_block(prims, &buffer[3007], 272, (quant->HL2 - 1)); /* HL2 */ - rfx_quantization_decode_block(prims, &buffer[3279], 272, (quant->LH2 - 1)); /* LH2 */ - rfx_quantization_decode_block(prims, &buffer[3551], 256, (quant->HH2 - 1)); /* HH2 */ - rfx_quantization_decode_block(prims, &buffer[3807], 72, (quant->HL3 - 1)); /* HL3 */ - rfx_quantization_decode_block(prims, &buffer[3879], 72, (quant->LH3 - 1)); /* LH3 */ - rfx_quantization_decode_block(prims, &buffer[3951], 64, (quant->HH3 - 1)); /* HH3 */ - rfx_quantization_decode_block(prims, &buffer[4015], 81, (quant->LL3 - 1)); /* LL3 */ + rfx_quantization_decode_block(prims, &buffer[0], 1023, quant->HL1); /* HL1 */ + rfx_quantization_decode_block(prims, &buffer[1023], 1023, quant->LH1); /* LH1 */ + rfx_quantization_decode_block(prims, &buffer[2046], 961, quant->HH1); /* HH1 */ + rfx_quantization_decode_block(prims, &buffer[3007], 272, quant->HL2); /* HL2 */ + rfx_quantization_decode_block(prims, &buffer[3279], 272, quant->LH2); /* LH2 */ + rfx_quantization_decode_block(prims, &buffer[3551], 256, quant->HH2); /* HH2 */ + rfx_quantization_decode_block(prims, &buffer[3807], 72, quant->HL3); /* HL3 */ + rfx_quantization_decode_block(prims, &buffer[3879], 72, quant->LH3); /* LH3 */ + rfx_quantization_decode_block(prims, &buffer[3951], 64, quant->HH3); /* HH3 */ + rfx_quantization_decode_block(prims, &buffer[4015], 81, quant->LL3); /* LL3 */ dwt = (INT16*) BufferPool_Take(progressive->bufferPool, -1); /* DWT buffer */ @@ -502,6 +493,8 @@ int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROG BufferPool_Return(progressive->bufferPool, pBuffer); + WLog_Image(progressive->log, WLOG_TRACE, tile->data, 64, 64, 32); + return 1; } @@ -1059,6 +1052,8 @@ PROGRESSIVE_CONTEXT* progressive_context_new(BOOL Compressor) { progressive->Compressor = Compressor; + progressive->log = WLog_Get("com.freerdp.codec.progressive"); + progressive->bufferPool = BufferPool_New(TRUE, (8192 + 32) * 3, 16); progressive->cRects = 64; From 91ef3ed843927f51b3f5a1f9f4d8d92b8e185c64 Mon Sep 17 00:00:00 2001 From: erbth Date: Mon, 25 Aug 2014 15:12:44 +0200 Subject: [PATCH 138/170] WM_GETMINMAXINFO: use latest determined canvas diff --- client/Windows/wf_event.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/client/Windows/wf_event.c b/client/Windows/wf_event.c index cc54df906..1f2c9c87a 100644 --- a/client/Windows/wf_event.c +++ b/client/Windows/wf_event.c @@ -255,7 +255,10 @@ LRESULT CALLBACK wf_event_proc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam // Set maximum window size for resizing minmax = (MINMAXINFO*) lParam; - wf_update_canvas_diff(wfc); + + //always use the last determined canvas diff, because it could be + //that the window is minimized when this gets called + //wf_update_canvas_diff(wfc); if (!wfc->fullscreen) { From cd23e5c0d588b8a8b2fd7e61961293a2b04606c3 Mon Sep 17 00:00:00 2001 From: erbth Date: Mon, 25 Aug 2014 15:24:04 +0200 Subject: [PATCH 139/170] wfreerdp: WM_SIZE: only update canvas diff if window size is bigger than 0 --- client/Windows/wf_event.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/client/Windows/wf_event.c b/client/Windows/wf_event.c index 1f2c9c87a..941ff5234 100644 --- a/client/Windows/wf_event.c +++ b/client/Windows/wf_event.c @@ -284,11 +284,14 @@ LRESULT CALLBACK wf_event_proc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam wfc->client_y = windowRect.top; } - wf_size_scrollbars(wfc, LOWORD(lParam), HIWORD(lParam)); + if (wfc->client_width && wfc->client_height) + { + wf_size_scrollbars(wfc, LOWORD(lParam), HIWORD(lParam)); - // Workaround: when the window is maximized, the call to "ShowScrollBars" returns TRUE but has no effect. - if (wParam == SIZE_MAXIMIZED && !wfc->fullscreen) - SetWindowPos(wfc->hwnd, HWND_TOP, 0, 0, windowRect.right - windowRect.left, windowRect.bottom - windowRect.top, SWP_NOMOVE | SWP_FRAMECHANGED); + // Workaround: when the window is maximized, the call to "ShowScrollBars" returns TRUE but has no effect. + if (wParam == SIZE_MAXIMIZED && !wfc->fullscreen) + SetWindowPos(wfc->hwnd, HWND_TOP, 0, 0, windowRect.right - windowRect.left, windowRect.bottom - windowRect.top, SWP_NOMOVE | SWP_FRAMECHANGED); + } break; From 2cffa7d8f4450535cc70fe37a4449757618f2622 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Mon, 25 Aug 2014 17:58:38 -0400 Subject: [PATCH 140/170] libfreerdp-codec: make use of progressive quantization factors --- include/freerdp/codec/progressive.h | 18 ++++---- libfreerdp/codec/progressive.c | 68 +++++++++++++++++------------ 2 files changed, 49 insertions(+), 37 deletions(-) diff --git a/include/freerdp/codec/progressive.h b/include/freerdp/codec/progressive.h index d32847496..5c983cba0 100644 --- a/include/freerdp/codec/progressive.h +++ b/include/freerdp/codec/progressive.h @@ -48,15 +48,6 @@ #define PROGRESSIVE_BLOCKS_REGION 0x0002 #define PROGRESSIVE_BLOCKS_TILE 0x0004 -struct _RFX_PROGRESSIVE_CODEC_QUANT -{ - BYTE quality; - BYTE yQuantValues[5]; - BYTE cbQuantValues[5]; - BYTE crQuantValues[5]; -}; -typedef struct _RFX_PROGRESSIVE_CODEC_QUANT RFX_PROGRESSIVE_CODEC_QUANT; - struct _RFX_COMPONENT_CODEC_QUANT { BYTE LL3; @@ -72,6 +63,15 @@ struct _RFX_COMPONENT_CODEC_QUANT }; typedef struct _RFX_COMPONENT_CODEC_QUANT RFX_COMPONENT_CODEC_QUANT; +struct _RFX_PROGRESSIVE_CODEC_QUANT +{ + BYTE quality; + RFX_COMPONENT_CODEC_QUANT yQuantValues; + RFX_COMPONENT_CODEC_QUANT cbQuantValues; + RFX_COMPONENT_CODEC_QUANT crQuantValues; +}; +typedef struct _RFX_PROGRESSIVE_CODEC_QUANT RFX_PROGRESSIVE_CODEC_QUANT; + struct _PROGRESSIVE_BLOCK { UINT16 blockType; diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index 13ccd422f..b3974a710 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -392,8 +392,8 @@ void progressive_rfx_dwt_2d_decode(INT16* buffer, INT16* dwt) progressive_rfx_dwt_2d_decode_block(&buffer[0], dwt, 1); } -int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, - RFX_COMPONENT_CODEC_QUANT* quant, const BYTE* data, int length, INT16* buffer) +int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPONENT_CODEC_QUANT* quant, + RFX_COMPONENT_CODEC_QUANT* quantProg, const BYTE* data, int length, INT16* buffer) { int status; INT16* dwt; @@ -406,16 +406,16 @@ int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, rfx_differential_decode(&buffer[4015], 81); /* LL3 */ - rfx_quantization_decode_block(prims, &buffer[0], 1023, quant->HL1); /* HL1 */ - rfx_quantization_decode_block(prims, &buffer[1023], 1023, quant->LH1); /* LH1 */ - rfx_quantization_decode_block(prims, &buffer[2046], 961, quant->HH1); /* HH1 */ - rfx_quantization_decode_block(prims, &buffer[3007], 272, quant->HL2); /* HL2 */ - rfx_quantization_decode_block(prims, &buffer[3279], 272, quant->LH2); /* LH2 */ - rfx_quantization_decode_block(prims, &buffer[3551], 256, quant->HH2); /* HH2 */ - rfx_quantization_decode_block(prims, &buffer[3807], 72, quant->HL3); /* HL3 */ - rfx_quantization_decode_block(prims, &buffer[3879], 72, quant->LH3); /* LH3 */ - rfx_quantization_decode_block(prims, &buffer[3951], 64, quant->HH3); /* HH3 */ - rfx_quantization_decode_block(prims, &buffer[4015], 81, quant->LL3); /* LL3 */ + rfx_quantization_decode_block(prims, &buffer[0], 1023, quant->HL1 + quantProg->HL1); /* HL1 */ + rfx_quantization_decode_block(prims, &buffer[1023], 1023, quant->LH1 + quantProg->LH1); /* LH1 */ + rfx_quantization_decode_block(prims, &buffer[2046], 961, quant->HH1 + quantProg->HH1); /* HH1 */ + rfx_quantization_decode_block(prims, &buffer[3007], 272, quant->HL2 + quantProg->HL2); /* HL2 */ + rfx_quantization_decode_block(prims, &buffer[3279], 272, quant->LH2 + quantProg->LH2); /* LH2 */ + rfx_quantization_decode_block(prims, &buffer[3551], 256, quant->HH2 + quantProg->HH2); /* HH2 */ + rfx_quantization_decode_block(prims, &buffer[3807], 72, quant->HL3 + quantProg->HL3); /* HL3 */ + rfx_quantization_decode_block(prims, &buffer[3879], 72, quant->LH3 + quantProg->LH3); /* LH3 */ + rfx_quantization_decode_block(prims, &buffer[3951], 64, quant->HH3 + quantProg->HH3); /* HH3 */ + rfx_quantization_decode_block(prims, &buffer[4015], 81, quant->LL3 + quantProg->LL3); /* LL3 */ dwt = (INT16*) BufferPool_Take(progressive->bufferPool, -1); /* DWT buffer */ @@ -434,6 +434,9 @@ int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROG RFX_COMPONENT_CODEC_QUANT* quantY; RFX_COMPONENT_CODEC_QUANT* quantCb; RFX_COMPONENT_CODEC_QUANT* quantCr; + RFX_COMPONENT_CODEC_QUANT* quantProgY; + RFX_COMPONENT_CODEC_QUANT* quantProgCb; + RFX_COMPONENT_CODEC_QUANT* quantProgCr; RFX_PROGRESSIVE_CODEC_QUANT* quantProgVal; static const prim_size_t roi_64x64 = { 64, 64 }; const primitives_t* prims = primitives_get(); @@ -470,15 +473,19 @@ int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROG quantProgVal = &(region->quantProgVals[tile->quality]); } + quantProgY = &(quantProgVal->yQuantValues); + quantProgCb = &(quantProgVal->cbQuantValues); + quantProgCr = &(quantProgVal->crQuantValues); + pBuffer = (BYTE*) BufferPool_Take(progressive->bufferPool, -1); pSrcDst[0] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 0) + 16])); /* Y/R buffer */ pSrcDst[1] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 1) + 16])); /* Cb/G buffer */ pSrcDst[2] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 2) + 16])); /* Cr/B buffer */ - progressive_rfx_decode_component(progressive, quantY, tile->yData, tile->yLen, pSrcDst[0]); /* Y */ - progressive_rfx_decode_component(progressive, quantCb, tile->cbData, tile->cbLen, pSrcDst[1]); /* Cb */ - progressive_rfx_decode_component(progressive, quantCr, tile->crData, tile->crLen, pSrcDst[2]); /* Cr */ + progressive_rfx_decode_component(progressive, quantY, quantProgY, tile->yData, tile->yLen, pSrcDst[0]); /* Y */ + progressive_rfx_decode_component(progressive, quantCb, quantProgCb, tile->cbData, tile->cbLen, pSrcDst[1]); /* Cb */ + progressive_rfx_decode_component(progressive, quantCr, quantProgCr, tile->crData, tile->crLen, pSrcDst[2]); /* Cr */ prims->yCbCrToRGB_16s16s_P3P3((const INT16**) pSrcDst, 64 * sizeof(INT16), pSrcDst, 64 * sizeof(INT16), &roi_64x64); @@ -770,6 +777,20 @@ int progressive_process_tiles(PROGRESSIVE_CONTEXT* progressive, BYTE* blocks, UI return (int) offset; } +void progressive_component_codec_quant_read(BYTE* block, RFX_COMPONENT_CODEC_QUANT* quantVal) +{ + quantVal->LL3 = block[0] & 0x0F; + quantVal->HL3 = block[0] >> 4; + quantVal->LH3 = block[1] & 0x0F; + quantVal->HH3 = block[1] >> 4; + quantVal->HL2 = block[2] & 0x0F; + quantVal->LH2 = block[2] >> 4; + quantVal->HH2 = block[3] & 0x0F; + quantVal->HL1 = block[3] >> 4; + quantVal->LH1 = block[4] & 0x0F; + quantVal->HH1 = block[4] >> 4; +} + int progressive_decompress(PROGRESSIVE_CONTEXT* progressive, BYTE* pSrcData, UINT32 SrcSize, BYTE** ppDstData, DWORD DstFormat, int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight) { @@ -949,16 +970,7 @@ int progressive_decompress(PROGRESSIVE_CONTEXT* progressive, BYTE* pSrcData, UIN for (index = 0; index < region->numQuant; index++) { quantVal = &(region->quantVals[index]); - quantVal->LL3 = block[boffset + 0] & 0x0F; - quantVal->HL3 = block[boffset + 0] >> 4; - quantVal->LH3 = block[boffset + 1] & 0x0F; - quantVal->HH3 = block[boffset + 1] >> 4; - quantVal->HL2 = block[boffset + 2] & 0x0F; - quantVal->LH2 = block[boffset + 2] >> 4; - quantVal->HH2 = block[boffset + 3] & 0x0F; - quantVal->HL1 = block[boffset + 3] >> 4; - quantVal->LH1 = block[boffset + 4] & 0x0F; - quantVal->HH1 = block[boffset + 4] >> 4; + progressive_component_codec_quant_read(&block[boffset], quantVal); boffset += 5; } @@ -981,9 +993,9 @@ int progressive_decompress(PROGRESSIVE_CONTEXT* progressive, BYTE* pSrcData, UIN { quantProgVal = &(region->quantProgVals[index]); quantProgVal->quality = block[boffset + 0]; - CopyMemory(quantProgVal->yQuantValues, &block[boffset + 1], 5); - CopyMemory(quantProgVal->cbQuantValues, &block[boffset + 6], 5); - CopyMemory(quantProgVal->crQuantValues, &block[boffset + 11], 5); + progressive_component_codec_quant_read(&block[boffset + 1], &(quantProgVal->yQuantValues)); + progressive_component_codec_quant_read(&block[boffset + 6], &(quantProgVal->cbQuantValues)); + progressive_component_codec_quant_read(&block[boffset + 11], &(quantProgVal->crQuantValues)); boffset += 16; } From ec53dd612e99f9a3455341c19dc7efab37c1a8db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Mon, 25 Aug 2014 19:50:42 -0400 Subject: [PATCH 141/170] libfreerdp-codec: fix progressive codec tile drawing offset, fix dequantization --- client/X11/xf_gfx.c | 13 ++++++++--- libfreerdp/codec/progressive.c | 40 +++++++++++++++++++++++----------- 2 files changed, 37 insertions(+), 16 deletions(-) diff --git a/client/X11/xf_gfx.c b/client/X11/xf_gfx.c index 823e1fce8..a5feee0a7 100644 --- a/client/X11/xf_gfx.c +++ b/client/X11/xf_gfx.c @@ -482,6 +482,7 @@ int xf_SurfaceCommand_Progressive(xfContext* xfc, RdpgfxClientContext* context, BYTE* DstData; RFX_RECT* rect; int nXDst, nYDst; + int nXSrc, nYSrc; int nWidth, nHeight; int nbUpdateRects; xfGfxSurface* surface; @@ -531,6 +532,9 @@ int xf_SurfaceCommand_Progressive(xfContext* xfc, RdpgfxClientContext* context, { tile = &(region->tiles[i]); + if (tile->blockType == PROGRESSIVE_WBT_TILE_UPGRADE) + continue; + updateRect.left = cmd->left + tile->x; updateRect.top = cmd->top + tile->y; updateRect.right = updateRect.left + 64; @@ -547,9 +551,12 @@ int xf_SurfaceCommand_Progressive(xfContext* xfc, RdpgfxClientContext* context, nWidth = updateRects[j].right - updateRects[j].left; nHeight = updateRects[j].bottom - updateRects[j].top; - freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, surface->scanline, - nXDst, nYDst, nWidth, nHeight, - tile->data, PIXEL_FORMAT_XRGB32, 64 * 4, 0, 0); + nXSrc = nXDst - (cmd->left + tile->x); + nYSrc = nYDst - (cmd->top + tile->y); + + freerdp_image_copy(surface->data, PIXEL_FORMAT_XRGB32, + surface->scanline, nXDst, nYDst, nWidth, nHeight, + tile->data, PIXEL_FORMAT_XRGB32, 64 * 4, nXSrc, nYSrc); region16_union_rect(&(xfc->invalidRegion), &(xfc->invalidRegion), &updateRects[j]); } diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index b3974a710..d88265664 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -406,16 +406,26 @@ int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPO rfx_differential_decode(&buffer[4015], 81); /* LL3 */ - rfx_quantization_decode_block(prims, &buffer[0], 1023, quant->HL1 + quantProg->HL1); /* HL1 */ - rfx_quantization_decode_block(prims, &buffer[1023], 1023, quant->LH1 + quantProg->LH1); /* LH1 */ - rfx_quantization_decode_block(prims, &buffer[2046], 961, quant->HH1 + quantProg->HH1); /* HH1 */ - rfx_quantization_decode_block(prims, &buffer[3007], 272, quant->HL2 + quantProg->HL2); /* HL2 */ - rfx_quantization_decode_block(prims, &buffer[3279], 272, quant->LH2 + quantProg->LH2); /* LH2 */ - rfx_quantization_decode_block(prims, &buffer[3551], 256, quant->HH2 + quantProg->HH2); /* HH2 */ - rfx_quantization_decode_block(prims, &buffer[3807], 72, quant->HL3 + quantProg->HL3); /* HL3 */ - rfx_quantization_decode_block(prims, &buffer[3879], 72, quant->LH3 + quantProg->LH3); /* LH3 */ - rfx_quantization_decode_block(prims, &buffer[3951], 64, quant->HH3 + quantProg->HH3); /* HH3 */ - rfx_quantization_decode_block(prims, &buffer[4015], 81, quant->LL3 + quantProg->LL3); /* LL3 */ +#if 0 + printf("quant: HL1: %d LH1: %d HH1: %d HL2: %d LH2: %d HH2: %d HL3: %d LH3: %d HH3: %d LL3: %d\n", + quant->HL1, quant->LH1, quant->HH1, quant->HL2, quant->LH2, quant->HH2, + quant->HL3, quant->LH3, quant->HH3, quant->LL3); + + printf("quantProg: HL1: %d LH1: %d HH1: %d HL2: %d LH2: %d HH2: %d HL3: %d LH3: %d HH3: %d LL3: %d\n", + quantProg->HL1, quantProg->LH1, quantProg->HH1, quantProg->HL2, quantProg->LH2, quantProg->HH2, + quantProg->HL3, quantProg->LH3, quantProg->HH3, quantProg->LL3); +#endif + + rfx_quantization_decode_block(prims, &buffer[0], 1023, quant->HL1 - 1 + quantProg->HL1); /* HL1 */ + rfx_quantization_decode_block(prims, &buffer[1023], 1023, quant->LH1 - 1 + quantProg->LH1); /* LH1 */ + rfx_quantization_decode_block(prims, &buffer[2046], 961, quant->HH1 - 1 + quantProg->HH1); /* HH1 */ + rfx_quantization_decode_block(prims, &buffer[3007], 272, quant->HL2 - 1 + quantProg->HL2); /* HL2 */ + rfx_quantization_decode_block(prims, &buffer[3279], 272, quant->LH2 - 1 + quantProg->LH2); /* LH2 */ + rfx_quantization_decode_block(prims, &buffer[3551], 256, quant->HH2 - 1 + quantProg->HH2); /* HH2 */ + rfx_quantization_decode_block(prims, &buffer[3807], 72, quant->HL3 - 1 + quantProg->HL3); /* HL3 */ + rfx_quantization_decode_block(prims, &buffer[3879], 72, quant->LH3 - 1 + quantProg->LH3); /* LH3 */ + rfx_quantization_decode_block(prims, &buffer[3951], 64, quant->HH3 - 1 + quantProg->HH3); /* HH3 */ + rfx_quantization_decode_block(prims, &buffer[4015], 81, quant->LL3 - 1 + quantProg->LL3); /* LL3 */ dwt = (INT16*) BufferPool_Take(progressive->bufferPool, -1); /* DWT buffer */ @@ -441,7 +451,7 @@ int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROG static const prim_size_t roi_64x64 = { 64, 64 }; const primitives_t* prims = primitives_get(); - printf("ProgressiveTileFirst: quantIdx Y: %d Cb: %d Cr: %d xIdx: %d yIdx: %d flags: %d quality: %d yLen: %d cbLen: %d crLen: %d tailLen: %d\n", + printf("ProgressiveTileFirst: quantIdx Y: %d Cb: %d Cr: %d xIdx: %d yIdx: %d flags: 0x%02X quality: %d yLen: %d cbLen: %d crLen: %d tailLen: %d\n", tile->quantIdxY, tile->quantIdxCb, tile->quantIdxCr, tile->xIdx, tile->yIdx, tile->flags, tile->quality, tile->yLen, tile->cbLen, tile->crLen, tile->tailLen); region = &(progressive->region); @@ -593,7 +603,7 @@ int progressive_process_tiles(PROGRESSIVE_CONTEXT* progressive, BYTE* blocks, UI tile->quantIdxCr = block[boffset + 2]; /* quantIdxCr (1 byte) */ tile->xIdx = *((UINT16*) &block[boffset + 3]); /* xIdx (2 bytes) */ tile->yIdx = *((UINT16*) &block[boffset + 5]); /* yIdx (2 bytes) */ - tile->flags = block[boffset + 7]; /* flags (1 byte) */ + tile->flags = block[boffset + 7] & 1; /* flags (1 byte) */ tile->yLen = *((UINT16*) &block[boffset + 8]); /* yLen (2 bytes) */ tile->cbLen = *((UINT16*) &block[boffset + 10]); /* cbLen (2 bytes) */ tile->crLen = *((UINT16*) &block[boffset + 12]); /* crLen (2 bytes) */ @@ -629,6 +639,8 @@ int progressive_process_tiles(PROGRESSIVE_CONTEXT* progressive, BYTE* blocks, UI tile->x = tile->xIdx * 64; tile->y = tile->yIdx * 64; + tile->flags &= 1; + break; case PROGRESSIVE_WBT_TILE_FIRST: @@ -641,7 +653,7 @@ int progressive_process_tiles(PROGRESSIVE_CONTEXT* progressive, BYTE* blocks, UI tile->quantIdxCr = block[boffset + 2]; /* quantIdxCr (1 byte) */ tile->xIdx = *((UINT16*) &block[boffset + 3]); /* xIdx (2 bytes) */ tile->yIdx = *((UINT16*) &block[boffset + 5]); /* yIdx (2 bytes) */ - tile->flags = block[boffset + 7]; /* flags (1 byte) */ + tile->flags = block[boffset + 7] & 1; /* flags (1 byte) */ tile->quality = block[boffset + 8]; /* quality (1 byte) */ tile->yLen = *((UINT16*) &block[boffset + 9]); /* yLen (2 bytes) */ tile->cbLen = *((UINT16*) &block[boffset + 11]); /* cbLen (2 bytes) */ @@ -685,6 +697,8 @@ int progressive_process_tiles(PROGRESSIVE_CONTEXT* progressive, BYTE* blocks, UI if ((tile->blockLen - boffset) < 20) return -1032; + tile->flags = 0; + tile->quantIdxY = block[boffset + 0]; /* quantIdxY (1 byte) */ tile->quantIdxCb = block[boffset + 1]; /* quantIdxCb (1 byte) */ tile->quantIdxCr = block[boffset + 2]; /* quantIdxCr (1 byte) */ From 4773403243414fdf98b66d9b395901e56483b6db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Tue, 26 Aug 2014 14:36:33 -0400 Subject: [PATCH 142/170] libfreerdp-codec: partial YCbCr diffing support --- include/freerdp/codec/progressive.h | 1 + libfreerdp/codec/progressive.c | 79 +++++++++++++++++++---------- 2 files changed, 53 insertions(+), 27 deletions(-) diff --git a/include/freerdp/codec/progressive.h b/include/freerdp/codec/progressive.h index 5c983cba0..058415613 100644 --- a/include/freerdp/codec/progressive.h +++ b/include/freerdp/codec/progressive.h @@ -212,6 +212,7 @@ struct _RFX_PROGRESSIVE_TILE int width; int height; BYTE* data; + BYTE* yCbCrData; }; typedef struct _RFX_PROGRESSIVE_TILE RFX_PROGRESSIVE_TILE; diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index d88265664..6c8d201c6 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -293,16 +293,16 @@ static int progressive_rfx_get_band_h_count(int level) return (64 + (1 << (level - 1))) >> level; } -static void progressive_rfx_dwt_2d_decode_block(INT16* buffer, INT16* dwt, int level) +static void progressive_rfx_dwt_2d_decode_block(INT16* buffer, INT16* temp, int level) { int offset; int nBandL; int nBandH; int nDstStepX; int nDstStepY; - INT16 *L, *H; INT16 *HL, *LH; INT16 *HH, *LL; + INT16 *L, *H, *LLx; INT16* pLowBand[3]; INT16* pHighBand[3]; INT16* pDstBand[3]; @@ -333,14 +333,15 @@ static void progressive_rfx_dwt_2d_decode_block(INT16* buffer, INT16* dwt, int l nDstStepX = (nBandL + nBandH); nDstStepY = (nBandL + nBandH); - if (0) - { - nDstStepX = (nDstStepX + 15) & ~0xF; - nDstStepY = (nDstStepY + 15) & ~0xF; - } + offset = 0; - L = &dwt[0]; - H = &dwt[nBandL * nDstStepX]; + L = &temp[offset]; + offset += (nBandL * nDstStepX); + + H = &temp[offset]; + offset += (nBandH * nDstStepX); + + LLx = &buffer[0]; /* horizontal (LL + HL -> L) */ @@ -376,7 +377,7 @@ static void progressive_rfx_dwt_2d_decode_block(INT16* buffer, INT16* dwt, int l nLowStep[2] = nDstStep[0]; pHighBand[2] = pDstBand[1]; nHighStep[2] = nDstStep[1]; - pDstBand[2] = &buffer[0]; + pDstBand[2] = LLx; nDstStep[2] = nDstStepY; nLowCount[2] = nBandL; nHighCount[2] = nBandH; @@ -385,18 +386,27 @@ static void progressive_rfx_dwt_2d_decode_block(INT16* buffer, INT16* dwt, int l progressive_rfx_idwt_y(pLowBand[2], nLowStep[2], pHighBand[2], nHighStep[2], pDstBand[2], nDstStep[2], nLowCount[2], nHighCount[2], nDstCount[2]); } -void progressive_rfx_dwt_2d_decode(INT16* buffer, INT16* dwt) +void progressive_rfx_dwt_2d_decode(INT16* buffer, INT16* temp, INT16* current, BOOL diff) { - progressive_rfx_dwt_2d_decode_block(&buffer[3807], dwt, 3); - progressive_rfx_dwt_2d_decode_block(&buffer[3007], dwt, 2); - progressive_rfx_dwt_2d_decode_block(&buffer[0], dwt, 1); + const primitives_t* prims = primitives_get(); + + progressive_rfx_dwt_2d_decode_block(&buffer[3807], temp, 3); + progressive_rfx_dwt_2d_decode_block(&buffer[3007], temp, 2); + progressive_rfx_dwt_2d_decode_block(&buffer[0], temp, 1); + + if (diff) + { + prims->add_16s(buffer, current, buffer, 4096); + } + + CopyMemory(current, buffer, 4096 * 2); } int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPONENT_CODEC_QUANT* quant, - RFX_COMPONENT_CODEC_QUANT* quantProg, const BYTE* data, int length, INT16* buffer) + RFX_COMPONENT_CODEC_QUANT* quantProg, const BYTE* data, int length, INT16* buffer, INT16* current, BOOL diff) { int status; - INT16* dwt; + INT16* temp; const primitives_t* prims = primitives_get(); status = rfx_rlgr_decode(data, length, buffer, 4096, 1); @@ -427,19 +437,21 @@ int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPO rfx_quantization_decode_block(prims, &buffer[3951], 64, quant->HH3 - 1 + quantProg->HH3); /* HH3 */ rfx_quantization_decode_block(prims, &buffer[4015], 81, quant->LL3 - 1 + quantProg->LL3); /* LL3 */ - dwt = (INT16*) BufferPool_Take(progressive->bufferPool, -1); /* DWT buffer */ + temp = (INT16*) BufferPool_Take(progressive->bufferPool, -1); /* DWT buffer */ - progressive_rfx_dwt_2d_decode(buffer, dwt); + progressive_rfx_dwt_2d_decode(buffer, temp, current, diff); - BufferPool_Return(progressive->bufferPool, dwt); + BufferPool_Return(progressive->bufferPool, temp); return 1; } int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROGRESSIVE_TILE* tile) { + BOOL diff; BYTE* pBuffer; INT16* pSrcDst[3]; + INT16* pCurrent[3]; PROGRESSIVE_BLOCK_REGION* region; RFX_COMPONENT_CODEC_QUANT* quantY; RFX_COMPONENT_CODEC_QUANT* quantCb; @@ -483,28 +495,41 @@ int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROG quantProgVal = &(region->quantProgVals[tile->quality]); } + diff = tile->flags & RFX_TILE_DIFFERENCE; + quantProgY = &(quantProgVal->yQuantValues); quantProgCb = &(quantProgVal->cbQuantValues); quantProgCr = &(quantProgVal->crQuantValues); + if (!tile->data) + { + tile->data = (BYTE*) _aligned_malloc(64 * 64 * 4, 16); + } + + if (!tile->yCbCrData) + { + tile->yCbCrData = (BYTE*) _aligned_malloc((8192 + 32) * 3, 16); + } + + pBuffer = tile->yCbCrData; + + pCurrent[0] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 0) + 16])); /* Y/R buffer */ + pCurrent[1] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 1) + 16])); /* Cb/G buffer */ + pCurrent[2] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 2) + 16])); /* Cr/B buffer */ + pBuffer = (BYTE*) BufferPool_Take(progressive->bufferPool, -1); pSrcDst[0] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 0) + 16])); /* Y/R buffer */ pSrcDst[1] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 1) + 16])); /* Cb/G buffer */ pSrcDst[2] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 2) + 16])); /* Cr/B buffer */ - progressive_rfx_decode_component(progressive, quantY, quantProgY, tile->yData, tile->yLen, pSrcDst[0]); /* Y */ - progressive_rfx_decode_component(progressive, quantCb, quantProgCb, tile->cbData, tile->cbLen, pSrcDst[1]); /* Cb */ - progressive_rfx_decode_component(progressive, quantCr, quantProgCr, tile->crData, tile->crLen, pSrcDst[2]); /* Cr */ + progressive_rfx_decode_component(progressive, quantY, quantProgY, tile->yData, tile->yLen, pSrcDst[0], pCurrent[0], diff); /* Y */ + progressive_rfx_decode_component(progressive, quantCb, quantProgCb, tile->cbData, tile->cbLen, pSrcDst[1], pCurrent[1], diff); /* Cb */ + progressive_rfx_decode_component(progressive, quantCr, quantProgCr, tile->crData, tile->crLen, pSrcDst[2], pCurrent[2], diff); /* Cr */ prims->yCbCrToRGB_16s16s_P3P3((const INT16**) pSrcDst, 64 * sizeof(INT16), pSrcDst, 64 * sizeof(INT16), &roi_64x64); - if (!tile->data) - { - tile->data = _aligned_malloc(64 * 64 * 4, 16); - } - prims->RGBToRGB_16s8u_P3AC4R((const INT16**) pSrcDst, 64 * sizeof(INT16), tile->data, 64 * 4, &roi_64x64); From 656dd760c557dbac07e3d21a3c70712e2f725096 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Tue, 26 Aug 2014 16:15:22 -0400 Subject: [PATCH 143/170] libfreerdp-codec: fix sub-band diffing --- client/X11/xf_gfx.c | 9 +- include/freerdp/codec/progressive.h | 23 +++- libfreerdp/codec/progressive.c | 166 ++++++++++++++++++++++++---- 3 files changed, 173 insertions(+), 25 deletions(-) diff --git a/client/X11/xf_gfx.c b/client/X11/xf_gfx.c index a5feee0a7..6ca4acf48 100644 --- a/client/X11/xf_gfx.c +++ b/client/X11/xf_gfx.c @@ -499,10 +499,12 @@ int xf_SurfaceCommand_Progressive(xfContext* xfc, RdpgfxClientContext* context, if (!surface) return -1; + progressive_create_surface_context(xfc->progressive, cmd->surfaceId, surface->width, surface->height); + DstData = surface->data; status = progressive_decompress(xfc->progressive, cmd->data, cmd->length, &DstData, - PIXEL_FORMAT_XRGB32, surface->scanline, cmd->left, cmd->top, cmd->width, cmd->height); + PIXEL_FORMAT_XRGB32, surface->scanline, cmd->left, cmd->top, cmd->width, cmd->height, cmd->surfaceId); if (status < 0) { @@ -530,7 +532,7 @@ int xf_SurfaceCommand_Progressive(xfContext* xfc, RdpgfxClientContext* context, for (i = 0; i < region->numTiles; i++) { - tile = &(region->tiles[i]); + tile = region->tiles[i]; if (tile->blockType == PROGRESSIVE_WBT_TILE_UPGRADE) continue; @@ -649,6 +651,7 @@ int xf_CreateSurface(RdpgfxClientContext* context, RDPGFX_CREATE_SURFACE_PDU* cr int xf_DeleteSurface(RdpgfxClientContext* context, RDPGFX_DELETE_SURFACE_PDU* deleteSurface) { xfGfxSurface* surface = NULL; + xfContext* xfc = (xfContext*) context->custom; surface = (xfGfxSurface*) context->GetSurfaceData(context, deleteSurface->surfaceId); @@ -661,6 +664,8 @@ int xf_DeleteSurface(RdpgfxClientContext* context, RDPGFX_DELETE_SURFACE_PDU* de context->SetSurfaceData(context, deleteSurface->surfaceId, NULL); + progressive_delete_surface_context(xfc->progressive, deleteSurface->surfaceId); + return 1; } diff --git a/include/freerdp/codec/progressive.h b/include/freerdp/codec/progressive.h index 058415613..e7d9c4993 100644 --- a/include/freerdp/codec/progressive.h +++ b/include/freerdp/codec/progressive.h @@ -231,7 +231,7 @@ struct _PROGRESSIVE_BLOCK_REGION RFX_RECT* rects; RFX_COMPONENT_CODEC_QUANT* quantVals; RFX_PROGRESSIVE_CODEC_QUANT* quantProgVals; - RFX_PROGRESSIVE_TILE* tiles; + RFX_PROGRESSIVE_TILE** tiles; }; typedef struct _PROGRESSIVE_BLOCK_REGION PROGRESSIVE_BLOCK_REGION; @@ -253,6 +253,18 @@ struct _PROGRESSIVE_BLOCK_FRAME_END }; typedef struct _PROGRESSIVE_BLOCK_FRAME_END PROGRESSIVE_BLOCK_FRAME_END; +struct _PROGRESSIVE_SURFACE_CONTEXT +{ + UINT16 id; + UINT32 width; + UINT32 height; + UINT32 gridWidth; + UINT32 gridHeight; + UINT32 gridSize; + RFX_PROGRESSIVE_TILE* tiles; +}; +typedef struct _PROGRESSIVE_SURFACE_CONTEXT PROGRESSIVE_SURFACE_CONTEXT; + struct _PROGRESSIVE_CONTEXT { BOOL Compressor; @@ -264,7 +276,7 @@ struct _PROGRESSIVE_CONTEXT RFX_RECT* rects; UINT32 cTiles; - RFX_PROGRESSIVE_TILE* tiles; + RFX_PROGRESSIVE_TILE** tiles; UINT32 cQuant; RFX_COMPONENT_CODEC_QUANT* quantVals; @@ -274,6 +286,8 @@ struct _PROGRESSIVE_CONTEXT PROGRESSIVE_BLOCK_REGION region; RFX_PROGRESSIVE_CODEC_QUANT quantProgValFull; + + wHashTable* SurfaceContexts; }; typedef struct _PROGRESSIVE_CONTEXT PROGRESSIVE_CONTEXT; @@ -284,7 +298,10 @@ extern "C" { FREERDP_API int progressive_compress(PROGRESSIVE_CONTEXT* progressive, BYTE* pSrcData, UINT32 SrcSize, BYTE** ppDstData, UINT32* pDstSize); FREERDP_API int progressive_decompress(PROGRESSIVE_CONTEXT* progressive, BYTE* pSrcData, UINT32 SrcSize, - BYTE** ppDstData, DWORD DstFormat, int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight); + BYTE** ppDstData, DWORD DstFormat, int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight, UINT16 surfaceId); + +FREERDP_API int progressive_create_surface_context(PROGRESSIVE_CONTEXT* progressive, UINT16 surfaceId, UINT32 width, UINT32 height); +FREERDP_API int progressive_delete_surface_context(PROGRESSIVE_CONTEXT* progressive, UINT16 surfaceId); FREERDP_API void progressive_context_reset(PROGRESSIVE_CONTEXT* progressive); diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index 6c8d201c6..aca2956e4 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -76,6 +76,80 @@ const char* progressive_get_block_type_string(UINT16 blockType) return "PROGRESSIVE_WBT_UNKNOWN"; } +int progressive_set_surface_data(PROGRESSIVE_CONTEXT* progressive, UINT16 surfaceId, void* pData) +{ + ULONG_PTR key; + + key = ((ULONG_PTR) surfaceId) + 1; + + if (pData) + HashTable_Add(progressive->SurfaceContexts, (void*) key, pData); + else + HashTable_Remove(progressive->SurfaceContexts, (void*) key); + + return 1; +} + +void* progressive_get_surface_data(PROGRESSIVE_CONTEXT* progressive, UINT16 surfaceId) +{ + ULONG_PTR key; + void* pData = NULL; + + key = ((ULONG_PTR) surfaceId) + 1; + + pData = HashTable_GetItemValue(progressive->SurfaceContexts, (void*) key); + + return pData; +} + +int progressive_create_surface_context(PROGRESSIVE_CONTEXT* progressive, UINT16 surfaceId, UINT32 width, UINT32 height) +{ + PROGRESSIVE_SURFACE_CONTEXT* surface; + + surface = (PROGRESSIVE_SURFACE_CONTEXT*) progressive_get_surface_data(progressive, surfaceId); + + if (!surface) + { + surface = (PROGRESSIVE_SURFACE_CONTEXT*) malloc(sizeof(PROGRESSIVE_SURFACE_CONTEXT)); + + if (!surface) + return -1; + + surface->id = surfaceId; + surface->width = width; + surface->height = height; + surface->gridWidth = (width + (width % 64)) / 64; + surface->gridHeight = (height + (height % 64)) / 64; + surface->gridSize = surface->gridWidth * surface->gridHeight; + + surface->tiles = (RFX_PROGRESSIVE_TILE*) calloc(surface->gridSize, sizeof(RFX_PROGRESSIVE_TILE)); + + if (!surface->tiles) + return -1; + + progressive_set_surface_data(progressive, surfaceId, (void*) surface); + } + + return 1; +} + +int progressive_delete_surface_context(PROGRESSIVE_CONTEXT* progressive, UINT16 surfaceId) +{ + PROGRESSIVE_SURFACE_CONTEXT* surface; + + surface = (PROGRESSIVE_SURFACE_CONTEXT*) progressive_get_surface_data(progressive, surfaceId); + + if (surface) + { + progressive_set_surface_data(progressive, surfaceId, NULL); + + free(surface->tiles); + free(surface); + } + + return 1; +} + /* * Band Offset Dimensions Size * @@ -583,15 +657,20 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR return 1; } -int progressive_process_tiles(PROGRESSIVE_CONTEXT* progressive, BYTE* blocks, UINT32 blocksLen) +int progressive_process_tiles(PROGRESSIVE_CONTEXT* progressive, BYTE* blocks, UINT32 blocksLen, PROGRESSIVE_SURFACE_CONTEXT* surface) { BYTE* block; + UINT16 xIdx; + UINT16 yIdx; + UINT16 zIdx; UINT16 index; UINT32 boffset; + UINT16 blockType; + UINT32 blockLen; UINT32 count = 0; UINT32 offset = 0; RFX_PROGRESSIVE_TILE* tile; - RFX_PROGRESSIVE_TILE* tiles; + RFX_PROGRESSIVE_TILE** tiles; PROGRESSIVE_BLOCK_REGION* region; region = &(progressive->region); @@ -603,24 +682,35 @@ int progressive_process_tiles(PROGRESSIVE_CONTEXT* progressive, BYTE* blocks, UI boffset = 0; block = &blocks[offset]; - tile = &tiles[count]; - - tile->blockType = *((UINT16*) &block[boffset + 0]); /* blockType (2 bytes) */ - tile->blockLen = *((UINT32*) &block[boffset + 2]); /* blockLen (4 bytes) */ + blockType = *((UINT16*) &block[boffset + 0]); /* blockType (2 bytes) */ + blockLen = *((UINT32*) &block[boffset + 2]); /* blockLen (4 bytes) */ boffset += 6; - printf("%s\n", progressive_get_block_type_string(tile->blockType)); + printf("%s\n", progressive_get_block_type_string(blockType)); - if ((blocksLen - offset) < tile->blockLen) + if ((blocksLen - offset) < blockLen) return -1003; - switch (tile->blockType) + switch (blockType) { case PROGRESSIVE_WBT_TILE_SIMPLE: - if ((tile->blockLen - boffset) < 16) + if ((blockLen - boffset) < 16) return -1022; + xIdx = *((UINT16*) &block[boffset + 3]); /* xIdx (2 bytes) */ + yIdx = *((UINT16*) &block[boffset + 5]); /* yIdx (2 bytes) */ + + zIdx = (yIdx * surface->gridWidth) + xIdx; + + if (zIdx >= surface->gridSize) + return -1; + + tiles[count] = tile = &(surface->tiles[zIdx]); + + tile->blockType = blockType; + tile->blockLen = blockLen; + tile->quality = 0xFF; /* simple tiles use no progressive techniques */ tile->quantIdxY = block[boffset + 0]; /* quantIdxY (1 byte) */ @@ -670,9 +760,22 @@ int progressive_process_tiles(PROGRESSIVE_CONTEXT* progressive, BYTE* blocks, UI case PROGRESSIVE_WBT_TILE_FIRST: - if ((tile->blockLen - boffset) < 17) + if ((blockLen - boffset) < 17) return -1027; + xIdx = *((UINT16*) &block[boffset + 3]); /* xIdx (2 bytes) */ + yIdx = *((UINT16*) &block[boffset + 5]); /* yIdx (2 bytes) */ + + zIdx = (yIdx * surface->gridWidth) + xIdx; + + if (zIdx >= surface->gridSize) + return -1; + + tiles[count] = tile = &(surface->tiles[zIdx]); + + tile->blockType = blockType; + tile->blockLen = blockLen; + tile->quantIdxY = block[boffset + 0]; /* quantIdxY (1 byte) */ tile->quantIdxCb = block[boffset + 1]; /* quantIdxCb (1 byte) */ tile->quantIdxCr = block[boffset + 2]; /* quantIdxCr (1 byte) */ @@ -719,9 +822,22 @@ int progressive_process_tiles(PROGRESSIVE_CONTEXT* progressive, BYTE* blocks, UI case PROGRESSIVE_WBT_TILE_UPGRADE: - if ((tile->blockLen - boffset) < 20) + if ((blockLen - boffset) < 20) return -1032; + xIdx = *((UINT16*) &block[boffset + 3]); /* xIdx (2 bytes) */ + yIdx = *((UINT16*) &block[boffset + 5]); /* yIdx (2 bytes) */ + + zIdx = (yIdx * surface->gridWidth) + xIdx; + + if (zIdx >= surface->gridSize) + return -1; + + tiles[count] = tile = &(surface->tiles[zIdx]); + + tile->blockType = blockType; + tile->blockLen = blockLen; + tile->flags = 0; tile->quantIdxY = block[boffset + 0]; /* quantIdxY (1 byte) */ @@ -786,10 +902,10 @@ int progressive_process_tiles(PROGRESSIVE_CONTEXT* progressive, BYTE* blocks, UI break; } - if (boffset != tile->blockLen) + if (boffset != blockLen) return -1040; - offset += tile->blockLen; + offset += blockLen; count++; } @@ -798,7 +914,7 @@ int progressive_process_tiles(PROGRESSIVE_CONTEXT* progressive, BYTE* blocks, UI for (index = 0; index < region->numTiles; index++) { - tile = &tiles[index]; + tile = tiles[index]; switch (tile->blockType) { @@ -831,7 +947,7 @@ void progressive_component_codec_quant_read(BYTE* block, RFX_COMPONENT_CODEC_QUA } int progressive_decompress(PROGRESSIVE_CONTEXT* progressive, BYTE* pSrcData, UINT32 SrcSize, - BYTE** ppDstData, DWORD DstFormat, int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight) + BYTE** ppDstData, DWORD DstFormat, int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight, UINT16 surfaceId) { int status; BYTE* block; @@ -849,9 +965,15 @@ int progressive_decompress(PROGRESSIVE_CONTEXT* progressive, BYTE* pSrcData, UIN PROGRESSIVE_BLOCK_CONTEXT context; PROGRESSIVE_BLOCK_FRAME_BEGIN frameBegin; PROGRESSIVE_BLOCK_FRAME_END frameEnd; + PROGRESSIVE_SURFACE_CONTEXT* surface; RFX_COMPONENT_CODEC_QUANT* quantVal; RFX_PROGRESSIVE_CODEC_QUANT* quantProgVal; + surface = (PROGRESSIVE_SURFACE_CONTEXT*) progressive_get_surface_data(progressive, surfaceId); + + if (!surface) + return -1001; + blocks = pSrcData; blocksLen = SrcSize; @@ -1043,8 +1165,8 @@ int progressive_decompress(PROGRESSIVE_CONTEXT* progressive, BYTE* pSrcData, UIN if (region->numTiles > progressive->cTiles) { - progressive->tiles = (RFX_PROGRESSIVE_TILE*) realloc(progressive->tiles, - region->numTiles * sizeof(RFX_PROGRESSIVE_TILE)); + progressive->tiles = (RFX_PROGRESSIVE_TILE**) realloc(progressive->tiles, + region->numTiles * sizeof(RFX_PROGRESSIVE_TILE*)); progressive->cTiles = region->numTiles; } @@ -1056,7 +1178,7 @@ int progressive_decompress(PROGRESSIVE_CONTEXT* progressive, BYTE* pSrcData, UIN printf("numRects: %d numTiles: %d numQuant: %d numProgQuant: %d\n", region->numRects, region->numTiles, region->numQuant, region->numProgQuant); - status = progressive_process_tiles(progressive, &block[boffset], region->tileDataSize); + status = progressive_process_tiles(progressive, &block[boffset], region->tileDataSize, surface); if (status < 0) return status; @@ -1114,7 +1236,7 @@ PROGRESSIVE_CONTEXT* progressive_context_new(BOOL Compressor) return NULL; progressive->cTiles = 64; - progressive->tiles = (RFX_PROGRESSIVE_TILE*) malloc(progressive->cTiles * sizeof(RFX_PROGRESSIVE_TILE)); + progressive->tiles = (RFX_PROGRESSIVE_TILE**) malloc(progressive->cTiles * sizeof(RFX_PROGRESSIVE_TILE*)); if (!progressive->tiles) return NULL; @@ -1134,6 +1256,8 @@ PROGRESSIVE_CONTEXT* progressive_context_new(BOOL Compressor) ZeroMemory(&(progressive->quantProgValFull), sizeof(RFX_PROGRESSIVE_CODEC_QUANT)); progressive->quantProgValFull.quality = 100; + progressive->SurfaceContexts = HashTable_New(TRUE); + progressive_context_reset(progressive); } @@ -1152,6 +1276,8 @@ void progressive_context_free(PROGRESSIVE_CONTEXT* progressive) free(progressive->quantVals); free(progressive->quantProgVals); + HashTable_Free(progressive->SurfaceContexts); + free(progressive); } From 51d1d4261665ca739081f44757d454ac45b7c3c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Wed, 27 Aug 2014 15:15:37 -0400 Subject: [PATCH 144/170] libfreerdp-codec: fix progressive tile diffing --- libfreerdp/codec/progressive.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index aca2956e4..8979239d2 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -464,16 +464,14 @@ void progressive_rfx_dwt_2d_decode(INT16* buffer, INT16* temp, INT16* current, B { const primitives_t* prims = primitives_get(); + if (diff) + prims->add_16s(buffer, current, buffer, 4096); + + CopyMemory(current, buffer, 4096 * 2); + progressive_rfx_dwt_2d_decode_block(&buffer[3807], temp, 3); progressive_rfx_dwt_2d_decode_block(&buffer[3007], temp, 2); progressive_rfx_dwt_2d_decode_block(&buffer[0], temp, 1); - - if (diff) - { - prims->add_16s(buffer, current, buffer, 4096); - } - - CopyMemory(current, buffer, 4096 * 2); } int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPONENT_CODEC_QUANT* quant, @@ -620,6 +618,9 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR RFX_COMPONENT_CODEC_QUANT* quantY; RFX_COMPONENT_CODEC_QUANT* quantCb; RFX_COMPONENT_CODEC_QUANT* quantCr; + RFX_COMPONENT_CODEC_QUANT* quantProgY; + RFX_COMPONENT_CODEC_QUANT* quantProgCb; + RFX_COMPONENT_CODEC_QUANT* quantProgCr; RFX_PROGRESSIVE_CODEC_QUANT* quantProgVal; printf("ProgressiveTileUpgrade: quantIdx Y: %d Cb: %d Cr: %d xIdx: %d yIdx: %d quality: %d ySrlLen: %d yRawLen: %d cbSrlLen: %d cbRawLen: %d crSrlLen: %d crRawLen: %d\n", @@ -654,6 +655,10 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR quantProgVal = &(region->quantProgVals[tile->quality]); } + quantProgY = &(quantProgVal->yQuantValues); + quantProgCb = &(quantProgVal->cbQuantValues); + quantProgCr = &(quantProgVal->crQuantValues); + return 1; } @@ -686,7 +691,7 @@ int progressive_process_tiles(PROGRESSIVE_CONTEXT* progressive, BYTE* blocks, UI blockLen = *((UINT32*) &block[boffset + 2]); /* blockLen (4 bytes) */ boffset += 6; - printf("%s\n", progressive_get_block_type_string(blockType)); + //printf("%s\n", progressive_get_block_type_string(blockType)); if ((blocksLen - offset) < blockLen) return -1003; From 32766b06474e9c879a39d26a249cc4a71cd4d46e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Wed, 27 Aug 2014 17:02:15 -0400 Subject: [PATCH 145/170] libfreerdp-codec: start computing BitPos --- include/freerdp/codec/progressive.h | 6 +- libfreerdp/codec/progressive.c | 115 ++++++++++++++++++++-------- 2 files changed, 86 insertions(+), 35 deletions(-) diff --git a/include/freerdp/codec/progressive.h b/include/freerdp/codec/progressive.h index e7d9c4993..35fd37ad9 100644 --- a/include/freerdp/codec/progressive.h +++ b/include/freerdp/codec/progressive.h @@ -212,7 +212,11 @@ struct _RFX_PROGRESSIVE_TILE int width; int height; BYTE* data; - BYTE* yCbCrData; + BYTE* current; + + RFX_COMPONENT_CODEC_QUANT yBitPos; + RFX_COMPONENT_CODEC_QUANT cbBitPos; + RFX_COMPONENT_CODEC_QUANT crBitPos; }; typedef struct _RFX_PROGRESSIVE_TILE RFX_PROGRESSIVE_TILE; diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index 8979239d2..945f9284d 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -474,8 +474,8 @@ void progressive_rfx_dwt_2d_decode(INT16* buffer, INT16* temp, INT16* current, B progressive_rfx_dwt_2d_decode_block(&buffer[0], temp, 1); } -int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPONENT_CODEC_QUANT* quant, - RFX_COMPONENT_CODEC_QUANT* quantProg, const BYTE* data, int length, INT16* buffer, INT16* current, BOOL diff) +int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPONENT_CODEC_QUANT* bitPos, + const BYTE* data, int length, INT16* buffer, INT16* current, BOOL diff) { int status; INT16* temp; @@ -488,26 +488,16 @@ int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPO rfx_differential_decode(&buffer[4015], 81); /* LL3 */ -#if 0 - printf("quant: HL1: %d LH1: %d HH1: %d HL2: %d LH2: %d HH2: %d HL3: %d LH3: %d HH3: %d LL3: %d\n", - quant->HL1, quant->LH1, quant->HH1, quant->HL2, quant->LH2, quant->HH2, - quant->HL3, quant->LH3, quant->HH3, quant->LL3); - - printf("quantProg: HL1: %d LH1: %d HH1: %d HL2: %d LH2: %d HH2: %d HL3: %d LH3: %d HH3: %d LL3: %d\n", - quantProg->HL1, quantProg->LH1, quantProg->HH1, quantProg->HL2, quantProg->LH2, quantProg->HH2, - quantProg->HL3, quantProg->LH3, quantProg->HH3, quantProg->LL3); -#endif - - rfx_quantization_decode_block(prims, &buffer[0], 1023, quant->HL1 - 1 + quantProg->HL1); /* HL1 */ - rfx_quantization_decode_block(prims, &buffer[1023], 1023, quant->LH1 - 1 + quantProg->LH1); /* LH1 */ - rfx_quantization_decode_block(prims, &buffer[2046], 961, quant->HH1 - 1 + quantProg->HH1); /* HH1 */ - rfx_quantization_decode_block(prims, &buffer[3007], 272, quant->HL2 - 1 + quantProg->HL2); /* HL2 */ - rfx_quantization_decode_block(prims, &buffer[3279], 272, quant->LH2 - 1 + quantProg->LH2); /* LH2 */ - rfx_quantization_decode_block(prims, &buffer[3551], 256, quant->HH2 - 1 + quantProg->HH2); /* HH2 */ - rfx_quantization_decode_block(prims, &buffer[3807], 72, quant->HL3 - 1 + quantProg->HL3); /* HL3 */ - rfx_quantization_decode_block(prims, &buffer[3879], 72, quant->LH3 - 1 + quantProg->LH3); /* LH3 */ - rfx_quantization_decode_block(prims, &buffer[3951], 64, quant->HH3 - 1 + quantProg->HH3); /* HH3 */ - rfx_quantization_decode_block(prims, &buffer[4015], 81, quant->LL3 - 1 + quantProg->LL3); /* LL3 */ + rfx_quantization_decode_block(prims, &buffer[0], 1023, bitPos->HL1 - 1); /* HL1 */ + rfx_quantization_decode_block(prims, &buffer[1023], 1023, bitPos->LH1 - 1); /* LH1 */ + rfx_quantization_decode_block(prims, &buffer[2046], 961, bitPos->HH1 - 1); /* HH1 */ + rfx_quantization_decode_block(prims, &buffer[3007], 272, bitPos->HL2 - 1); /* HL2 */ + rfx_quantization_decode_block(prims, &buffer[3279], 272, bitPos->LH2 - 1); /* LH2 */ + rfx_quantization_decode_block(prims, &buffer[3551], 256, bitPos->HH2 - 1); /* HH2 */ + rfx_quantization_decode_block(prims, &buffer[3807], 72, bitPos->HL3 - 1); /* HL3 */ + rfx_quantization_decode_block(prims, &buffer[3879], 72, bitPos->LH3 - 1); /* LH3 */ + rfx_quantization_decode_block(prims, &buffer[3951], 64, bitPos->HH3 - 1); /* HH3 */ + rfx_quantization_decode_block(prims, &buffer[4015], 81, bitPos->LL3 - 1); /* LL3 */ temp = (INT16*) BufferPool_Take(progressive->bufferPool, -1); /* DWT buffer */ @@ -518,6 +508,34 @@ int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPO return 1; } +void progressive_rfx_quant_add(RFX_COMPONENT_CODEC_QUANT* q1, RFX_COMPONENT_CODEC_QUANT* q2, RFX_COMPONENT_CODEC_QUANT* dst) +{ + dst->HL1 = q1->HL1 + q2->HL1; /* HL1 */ + dst->LH1 = q1->LH1 + q2->LH1; /* LH1 */ + dst->HH1 = q1->HH1 + q2->HH1; /* HH1 */ + dst->HL2 = q1->HL2 + q2->HL2; /* HL2 */ + dst->LH2 = q1->LH2 + q2->LH2; /* LH2 */ + dst->HH2 = q1->HH2 + q2->HH2; /* HH2 */ + dst->HL3 = q1->HL3 + q2->HL3; /* HL3 */ + dst->LH3 = q1->LH3 + q2->LH3; /* LH3 */ + dst->HH3 = q1->HH3 + q2->HH3; /* HH3 */ + dst->LL3 = q1->LL3 + q2->LL3; /* LL3 */ +} + +void progressive_rfx_quant_sub(RFX_COMPONENT_CODEC_QUANT* q1, RFX_COMPONENT_CODEC_QUANT* q2, RFX_COMPONENT_CODEC_QUANT* dst) +{ + dst->HL1 = q1->HL1 - q2->HL1; /* HL1 */ + dst->LH1 = q1->LH1 - q2->LH1; /* LH1 */ + dst->HH1 = q1->HH1 - q2->HH1; /* HH1 */ + dst->HL2 = q1->HL2 - q2->HL2; /* HL2 */ + dst->LH2 = q1->LH2 - q2->LH2; /* LH2 */ + dst->HH2 = q1->HH2 - q2->HH2; /* HH2 */ + dst->HL3 = q1->HL3 - q2->HL3; /* HL3 */ + dst->LH3 = q1->LH3 - q2->LH3; /* LH3 */ + dst->HH3 = q1->HH3 - q2->HH3; /* HH3 */ + dst->LL3 = q1->LL3 - q2->LL3; /* LL3 */ +} + int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROGRESSIVE_TILE* tile) { BOOL diff; @@ -573,17 +591,21 @@ int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROG quantProgCb = &(quantProgVal->cbQuantValues); quantProgCr = &(quantProgVal->crQuantValues); + progressive_rfx_quant_add(quantY, quantProgY, &(tile->yBitPos)); + progressive_rfx_quant_add(quantCb, quantProgCb, &(tile->cbBitPos)); + progressive_rfx_quant_add(quantCr, quantProgCr, &(tile->crBitPos)); + if (!tile->data) { tile->data = (BYTE*) _aligned_malloc(64 * 64 * 4, 16); } - if (!tile->yCbCrData) + if (!tile->current) { - tile->yCbCrData = (BYTE*) _aligned_malloc((8192 + 32) * 3, 16); + tile->current = (BYTE*) _aligned_malloc((8192 + 32) * 3, 16); } - pBuffer = tile->yCbCrData; + pBuffer = tile->current; pCurrent[0] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 0) + 16])); /* Y/R buffer */ pCurrent[1] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 1) + 16])); /* Cb/G buffer */ @@ -595,9 +617,9 @@ int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROG pSrcDst[1] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 1) + 16])); /* Cb/G buffer */ pSrcDst[2] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 2) + 16])); /* Cr/B buffer */ - progressive_rfx_decode_component(progressive, quantY, quantProgY, tile->yData, tile->yLen, pSrcDst[0], pCurrent[0], diff); /* Y */ - progressive_rfx_decode_component(progressive, quantCb, quantProgCb, tile->cbData, tile->cbLen, pSrcDst[1], pCurrent[1], diff); /* Cb */ - progressive_rfx_decode_component(progressive, quantCr, quantProgCr, tile->crData, tile->crLen, pSrcDst[2], pCurrent[2], diff); /* Cr */ + progressive_rfx_decode_component(progressive, &(tile->yBitPos), tile->yData, tile->yLen, pSrcDst[0], pCurrent[0], diff); /* Y */ + progressive_rfx_decode_component(progressive, &(tile->crBitPos), tile->cbData, tile->cbLen, pSrcDst[1], pCurrent[1], diff); /* Cb */ + progressive_rfx_decode_component(progressive, &(tile->cbBitPos), tile->crData, tile->crLen, pSrcDst[2], pCurrent[2], diff); /* Cr */ prims->yCbCrToRGB_16s16s_P3P3((const INT16**) pSrcDst, 64 * sizeof(INT16), pSrcDst, 64 * sizeof(INT16), &roi_64x64); @@ -614,14 +636,21 @@ int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROG int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PROGRESSIVE_TILE* tile) { + RFX_COMPONENT_CODEC_QUANT* q; PROGRESSIVE_BLOCK_REGION* region; + RFX_COMPONENT_CODEC_QUANT yBitPos; + RFX_COMPONENT_CODEC_QUANT cbBitPos; + RFX_COMPONENT_CODEC_QUANT crBitPos; + RFX_COMPONENT_CODEC_QUANT yNumBits; + RFX_COMPONENT_CODEC_QUANT cbNumBits; + RFX_COMPONENT_CODEC_QUANT crNumBits; RFX_COMPONENT_CODEC_QUANT* quantY; RFX_COMPONENT_CODEC_QUANT* quantCb; RFX_COMPONENT_CODEC_QUANT* quantCr; RFX_COMPONENT_CODEC_QUANT* quantProgY; RFX_COMPONENT_CODEC_QUANT* quantProgCb; RFX_COMPONENT_CODEC_QUANT* quantProgCr; - RFX_PROGRESSIVE_CODEC_QUANT* quantProgVal; + RFX_PROGRESSIVE_CODEC_QUANT* quantProg; printf("ProgressiveTileUpgrade: quantIdx Y: %d Cb: %d Cr: %d xIdx: %d yIdx: %d quality: %d ySrlLen: %d yRawLen: %d cbSrlLen: %d cbRawLen: %d crSrlLen: %d crRawLen: %d\n", tile->quantIdxY, tile->quantIdxCb, tile->quantIdxCr, tile->xIdx, tile->yIdx, tile->quality, tile->ySrlLen, tile->yRawLen, tile->cbSrlLen, tile->cbRawLen, tile->crSrlLen, tile->crRawLen); @@ -645,19 +674,37 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR if (tile->quality == 0xFF) { - quantProgVal = &(progressive->quantProgValFull); + quantProg = &(progressive->quantProgValFull); } else { if (tile->quality >= region->numProgQuant) return -1; - quantProgVal = &(region->quantProgVals[tile->quality]); + quantProg = &(region->quantProgVals[tile->quality]); } - quantProgY = &(quantProgVal->yQuantValues); - quantProgCb = &(quantProgVal->cbQuantValues); - quantProgCr = &(quantProgVal->crQuantValues); + quantProgY = &(quantProg->yQuantValues); + quantProgCb = &(quantProg->cbQuantValues); + quantProgCr = &(quantProg->crQuantValues); + + progressive_rfx_quant_add(quantY, quantProgY, &yBitPos); + progressive_rfx_quant_add(quantCb, quantProgCb, &cbBitPos); + progressive_rfx_quant_add(quantCr, quantProgCr, &crBitPos); + + progressive_rfx_quant_sub(&(tile->yBitPos), &yBitPos, &yNumBits); + progressive_rfx_quant_sub(&(tile->cbBitPos), &cbBitPos, &cbNumBits); + progressive_rfx_quant_sub(&(tile->crBitPos), &crBitPos, &crNumBits); + + q = &(tile->yBitPos); + printf("Old yBitPos: HL1: %02d LH1: %02d HH1: %02d HL2: %02d LH2: %02d HH2: %02d HL3: %02d LH3: %02d HH3: %02d LL3: %02d\n", + q->HL1, q->LH1, q->HH1, q->HL2, q->LH2, q->HH2, q->HL3, q->LH3, q->HH3, q->LL3); + q = &(yBitPos); + printf("New yBitPos: HL1: %02d LH1: %02d HH1: %02d HL2: %02d LH2: %02d HH2: %02d HL3: %02d LH3: %02d HH3: %02d LL3: %02d\n", + q->HL1, q->LH1, q->HH1, q->HL2, q->LH2, q->HH2, q->HL3, q->LH3, q->HH3, q->LL3); + q = &(yNumBits); + printf(" yNumBits: HL1: %02d LH1: %02d HH1: %02d HL2: %02d LH2: %02d HH2: %02d HL3: %02d LH3: %02d HH3: %02d LL3: %02d\n", + q->HL1, q->LH1, q->HH1, q->HL2, q->LH2, q->HH2, q->HL3, q->LH3, q->HH3, q->LL3); return 1; } From 59b8bd0bd14304ea70b40dd4fc90536bacbbdc3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Wed, 27 Aug 2014 18:34:37 -0400 Subject: [PATCH 146/170] libfreerdp-codec: start reading progressive RAW bytes --- libfreerdp/codec/progressive.c | 130 ++++++++++++++++++++++++++++++--- 1 file changed, 120 insertions(+), 10 deletions(-) diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index 945f9284d..c81c389e8 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -508,6 +508,109 @@ int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPO return 1; } +struct _RFX_PROGRESSIVE_UPGRADE_STATE +{ + BOOL nonLL; + wBitStream* srl; + wBitStream* raw; + + /* SRL state */ + + int k; + int kp; + int nz; + BOOL mode; +}; +typedef struct _RFX_PROGRESSIVE_UPGRADE_STATE RFX_PROGRESSIVE_UPGRADE_STATE; + +int progressive_rfx_upgrade_block(RFX_PROGRESSIVE_UPGRADE_STATE* state, INT16* buffer, int length, UINT32 bitPos, UINT32 numBits) +{ + int index; + INT16 input; + wBitStream* srl; + wBitStream* raw; + + srl = state->srl; + raw = state->raw; + + if (!state->nonLL) + { + for (index = 0; index < length; index++) + { + raw->mask = ((1 << numBits) - 1); + input = (INT16) ((raw->accumulator >> (32 - numBits)) & raw->mask); + BitStream_Shift(raw, numBits); + + buffer[index] += (input << bitPos); + } + + return 1; + } + + for (index = 0; index < length; index++) + { + if (buffer[index] > 0) + { + /* sign > 0, read from raw */ + + raw->mask = ((1 << numBits) - 1); + input = (INT16) ((raw->accumulator >> (32 - numBits)) & raw->mask); + BitStream_Shift(raw, numBits); + + buffer[index] += (input << bitPos); + } + else if (buffer[index] > 0) + { + /* sign < 0, read from raw */ + + raw->mask = ((1 << numBits) - 1); + input = (INT16) ((raw->accumulator >> (32 - numBits)) & raw->mask); + BitStream_Shift(raw, numBits); + + buffer[index] -= (input << bitPos); + } + else + { + /* sign == 0, read from srl */ + } + } + + return 1; +} + +int progressive_rfx_upgrade_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPONENT_CODEC_QUANT* bitPos, + RFX_COMPONENT_CODEC_QUANT* numBits, INT16* buffer, const BYTE* srlData, int srlLen, const BYTE* rawData, int rawLen) +{ + wBitStream s_srl; + wBitStream s_raw; + RFX_PROGRESSIVE_UPGRADE_STATE state; + + state.srl = &s_srl; + state.raw = &s_raw; + + BitStream_Attach(state.srl, srlData, srlLen); + BitStream_Fetch(state.srl); + + BitStream_Attach(state.raw, rawData, rawLen); + BitStream_Fetch(state.raw); + + state.nonLL = TRUE; + progressive_rfx_upgrade_block(&state, &buffer[0], 1023, bitPos->HL1, numBits->HL1); /* HL1 */ + progressive_rfx_upgrade_block(&state, &buffer[1023], 1023, bitPos->LH1, numBits->LH1); /* LH1 */ + progressive_rfx_upgrade_block(&state, &buffer[2046], 961, bitPos->HH1, numBits->HH1); /* HH1 */ + progressive_rfx_upgrade_block(&state, &buffer[3007], 272, bitPos->HL2, numBits->HL2); /* HL2 */ + progressive_rfx_upgrade_block(&state, &buffer[3279], 272, bitPos->LH2, numBits->LH2); /* LH2 */ + progressive_rfx_upgrade_block(&state, &buffer[3551], 256, bitPos->HH2, numBits->HH2); /* HH2 */ + progressive_rfx_upgrade_block(&state, &buffer[3807], 72, bitPos->HL3, numBits->HL3); /* HL3 */ + progressive_rfx_upgrade_block(&state, &buffer[3879], 72, bitPos->LH3, numBits->LH3); /* LH3 */ + progressive_rfx_upgrade_block(&state, &buffer[3951], 64, bitPos->HH3, numBits->HH3); /* HH3 */ + + state.nonLL = FALSE; + progressive_rfx_upgrade_block(&state, &buffer[4015], 81, bitPos->LL3, numBits->LL3); /* LL3 */ + + return 1; +} + void progressive_rfx_quant_add(RFX_COMPONENT_CODEC_QUANT* q1, RFX_COMPONENT_CODEC_QUANT* q2, RFX_COMPONENT_CODEC_QUANT* dst) { dst->HL1 = q1->HL1 + q2->HL1; /* HL1 */ @@ -636,7 +739,8 @@ int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROG int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PROGRESSIVE_TILE* tile) { - RFX_COMPONENT_CODEC_QUANT* q; + BYTE* pBuffer; + INT16* pCurrent[3]; PROGRESSIVE_BLOCK_REGION* region; RFX_COMPONENT_CODEC_QUANT yBitPos; RFX_COMPONENT_CODEC_QUANT cbBitPos; @@ -696,15 +800,21 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR progressive_rfx_quant_sub(&(tile->cbBitPos), &cbBitPos, &cbNumBits); progressive_rfx_quant_sub(&(tile->crBitPos), &crBitPos, &crNumBits); - q = &(tile->yBitPos); - printf("Old yBitPos: HL1: %02d LH1: %02d HH1: %02d HL2: %02d LH2: %02d HH2: %02d HL3: %02d LH3: %02d HH3: %02d LL3: %02d\n", - q->HL1, q->LH1, q->HH1, q->HL2, q->LH2, q->HH2, q->HL3, q->LH3, q->HH3, q->LL3); - q = &(yBitPos); - printf("New yBitPos: HL1: %02d LH1: %02d HH1: %02d HL2: %02d LH2: %02d HH2: %02d HL3: %02d LH3: %02d HH3: %02d LL3: %02d\n", - q->HL1, q->LH1, q->HH1, q->HL2, q->LH2, q->HH2, q->HL3, q->LH3, q->HH3, q->LL3); - q = &(yNumBits); - printf(" yNumBits: HL1: %02d LH1: %02d HH1: %02d HL2: %02d LH2: %02d HH2: %02d HL3: %02d LH3: %02d HH3: %02d LL3: %02d\n", - q->HL1, q->LH1, q->HH1, q->HL2, q->LH2, q->HH2, q->HL3, q->LH3, q->HH3, q->LL3); + CopyMemory(&(tile->yBitPos), &yBitPos, sizeof(RFX_COMPONENT_CODEC_QUANT)); + CopyMemory(&(tile->cbBitPos), &cbBitPos, sizeof(RFX_COMPONENT_CODEC_QUANT)); + CopyMemory(&(tile->crBitPos), &crBitPos, sizeof(RFX_COMPONENT_CODEC_QUANT)); + + pBuffer = tile->current; + pCurrent[0] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 0) + 16])); /* Y/R buffer */ + pCurrent[1] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 1) + 16])); /* Cb/G buffer */ + pCurrent[2] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 2) + 16])); /* Cr/B buffer */ + + progressive_rfx_upgrade_component(progressive, &yBitPos, &yNumBits, pCurrent[0], + tile->ySrlData, tile->ySrlLen, tile->yRawData, tile->yRawLen); /* Y */ + progressive_rfx_upgrade_component(progressive, &cbBitPos, &cbNumBits, pCurrent[1], + tile->cbSrlData, tile->cbSrlLen, tile->cbRawData, tile->cbRawLen); /* Cb */ + progressive_rfx_upgrade_component(progressive, &crBitPos, &crNumBits, pCurrent[2], + tile->crSrlData, tile->crSrlLen, tile->crRawData, tile->crRawLen); /* Cr */ return 1; } From 551ee0566a83fb5b756f49f587d269ef88b7f141 Mon Sep 17 00:00:00 2001 From: Vic Lee Date: Thu, 28 Aug 2014 23:16:32 +0800 Subject: [PATCH 147/170] channels: fix memory leak in stream pools. --- channels/drdynvc/client/dvcman.c | 4 ++-- channels/drdynvc/client/dvcman.h | 1 + libfreerdp/utils/svc_plugin.c | 1 - 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/channels/drdynvc/client/dvcman.c b/channels/drdynvc/client/dvcman.c index d7e6fbf36..f9e4873b8 100644 --- a/channels/drdynvc/client/dvcman.c +++ b/channels/drdynvc/client/dvcman.c @@ -476,7 +476,7 @@ int dvcman_receive_channel_data_first(IWTSVirtualChannelManager* pChannelMgr, UI Stream_Release(channel->dvc_data); channel->dvc_data = StreamPool_Take(channel->dvcman->pool, length); - Stream_AddRef(channel->dvc_data); + channel->dvc_data_length = length; return 0; } @@ -508,7 +508,7 @@ int dvcman_receive_channel_data(IWTSVirtualChannelManager* pChannelMgr, UINT32 C Stream_Write(channel->dvc_data, Stream_Pointer(data), dataSize); - if (((size_t) Stream_GetPosition(channel->dvc_data)) >= Stream_Capacity(channel->dvc_data)) + if (((size_t) Stream_GetPosition(channel->dvc_data)) >= channel->dvc_data_length) { Stream_SealLength(channel->dvc_data); Stream_SetPosition(channel->dvc_data, 0); diff --git a/channels/drdynvc/client/dvcman.h b/channels/drdynvc/client/dvcman.h index 04781deab..20f0edeb0 100644 --- a/channels/drdynvc/client/dvcman.h +++ b/channels/drdynvc/client/dvcman.h @@ -82,6 +82,7 @@ struct _DVCMAN_CHANNEL IWTSVirtualChannelCallback* channel_callback; wStream* dvc_data; + UINT32 dvc_data_length; CRITICAL_SECTION lock; }; typedef struct _DVCMAN_CHANNEL DVCMAN_CHANNEL; diff --git a/libfreerdp/utils/svc_plugin.c b/libfreerdp/utils/svc_plugin.c index b57dc1d9d..a52763852 100644 --- a/libfreerdp/utils/svc_plugin.c +++ b/libfreerdp/utils/svc_plugin.c @@ -106,7 +106,6 @@ static void svc_plugin_process_received(rdpSvcPlugin* plugin, void* pData, UINT3 Stream_Release(plugin->data_in); plugin->data_in = StreamPool_Take(plugin->pool, totalLength); - Stream_AddRef(plugin->data_in); } s = plugin->data_in; From e15baf618425867ca45cb2ddfb6eb10baaebd708 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 28 Aug 2014 12:14:28 -0400 Subject: [PATCH 148/170] libfreerdp-codec: add code for SRL parsing --- include/freerdp/codec/progressive.h | 1 + libfreerdp/codec/progressive.c | 537 ++++++++++++++++++++-------- 2 files changed, 387 insertions(+), 151 deletions(-) diff --git a/include/freerdp/codec/progressive.h b/include/freerdp/codec/progressive.h index 35fd37ad9..f6fd26732 100644 --- a/include/freerdp/codec/progressive.h +++ b/include/freerdp/codec/progressive.h @@ -214,6 +214,7 @@ struct _RFX_PROGRESSIVE_TILE BYTE* data; BYTE* current; + int pass; RFX_COMPONENT_CODEC_QUANT yBitPos; RFX_COMPONENT_CODEC_QUANT cbBitPos; RFX_COMPONENT_CODEC_QUANT crBitPos; diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index c81c389e8..b82c84f1f 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -76,6 +76,122 @@ const char* progressive_get_block_type_string(UINT16 blockType) return "PROGRESSIVE_WBT_UNKNOWN"; } +void progressive_rfx_quant_ladd(RFX_COMPONENT_CODEC_QUANT* q, int val) +{ + q->HL1 += val; /* HL1 */ + q->LH1 += val; /* LH1 */ + q->HH1 += val; /* HH1 */ + q->HL2 += val; /* HL2 */ + q->LH2 += val; /* LH2 */ + q->HH2 += val; /* HH2 */ + q->HL3 += val; /* HL3 */ + q->LH3 += val; /* LH3 */ + q->HH3 += val; /* HH3 */ + q->LL3 += val; /* LL3 */ +} + +void progressive_rfx_quant_add(RFX_COMPONENT_CODEC_QUANT* q1, RFX_COMPONENT_CODEC_QUANT* q2, RFX_COMPONENT_CODEC_QUANT* dst) +{ + dst->HL1 = q1->HL1 + q2->HL1; /* HL1 */ + dst->LH1 = q1->LH1 + q2->LH1; /* LH1 */ + dst->HH1 = q1->HH1 + q2->HH1; /* HH1 */ + dst->HL2 = q1->HL2 + q2->HL2; /* HL2 */ + dst->LH2 = q1->LH2 + q2->LH2; /* LH2 */ + dst->HH2 = q1->HH2 + q2->HH2; /* HH2 */ + dst->HL3 = q1->HL3 + q2->HL3; /* HL3 */ + dst->LH3 = q1->LH3 + q2->LH3; /* LH3 */ + dst->HH3 = q1->HH3 + q2->HH3; /* HH3 */ + dst->LL3 = q1->LL3 + q2->LL3; /* LL3 */ +} + +void progressive_rfx_quant_lsub(RFX_COMPONENT_CODEC_QUANT* q, int val) +{ + q->HL1 -= val; /* HL1 */ + q->LH1 -= val; /* LH1 */ + q->HH1 -= val; /* HH1 */ + q->HL2 -= val; /* HL2 */ + q->LH2 -= val; /* LH2 */ + q->HH2 -= val; /* HH2 */ + q->HL3 -= val; /* HL3 */ + q->LH3 -= val; /* LH3 */ + q->HH3 -= val; /* HH3 */ + q->LL3 -= val; /* LL3 */ +} + +void progressive_rfx_quant_sub(RFX_COMPONENT_CODEC_QUANT* q1, RFX_COMPONENT_CODEC_QUANT* q2, RFX_COMPONENT_CODEC_QUANT* dst) +{ + dst->HL1 = q1->HL1 - q2->HL1; /* HL1 */ + dst->LH1 = q1->LH1 - q2->LH1; /* LH1 */ + dst->HH1 = q1->HH1 - q2->HH1; /* HH1 */ + dst->HL2 = q1->HL2 - q2->HL2; /* HL2 */ + dst->LH2 = q1->LH2 - q2->LH2; /* LH2 */ + dst->HH2 = q1->HH2 - q2->HH2; /* HH2 */ + dst->HL3 = q1->HL3 - q2->HL3; /* HL3 */ + dst->LH3 = q1->LH3 - q2->LH3; /* LH3 */ + dst->HH3 = q1->HH3 - q2->HH3; /* HH3 */ + dst->LL3 = q1->LL3 - q2->LL3; /* LL3 */ +} + +BOOL progressive_rfx_quant_lcmp_less_equal(RFX_COMPONENT_CODEC_QUANT* q, int val) +{ + if (q->HL1 > val) return FALSE; /* HL1 */ + if (q->LH1 > val) return FALSE; /* LH1 */ + if (q->HH1 > val) return FALSE; /* HH1 */ + if (q->HL2 > val) return FALSE; /* HL2 */ + if (q->LH2 > val) return FALSE; /* LH2 */ + if (q->HH2 > val) return FALSE; /* HH2 */ + if (q->HL3 > val) return FALSE; /* HL3 */ + if (q->LH3 > val) return FALSE; /* LH3 */ + if (q->HH3 > val) return FALSE; /* HH3 */ + if (q->LL3 > val) return FALSE; /* LL3 */ + return TRUE; +} + +BOOL progressive_rfx_quant_cmp_less_equal(RFX_COMPONENT_CODEC_QUANT* q1, RFX_COMPONENT_CODEC_QUANT* q2) +{ + if (q1->HL1 > q2->HL1) return FALSE; /* HL1 */ + if (q1->LH1 > q2->LH1) return FALSE; /* LH1 */ + if (q1->HH1 > q2->HH1) return FALSE; /* HH1 */ + if (q1->HL2 > q2->HL2) return FALSE; /* HL2 */ + if (q1->LH2 > q2->LH2) return FALSE; /* LH2 */ + if (q1->HH2 > q2->HH2) return FALSE; /* HH2 */ + if (q1->HL3 > q2->HL3) return FALSE; /* HL3 */ + if (q1->LH3 > q2->LH3) return FALSE; /* LH3 */ + if (q1->HH3 > q2->HH3) return FALSE; /* HH3 */ + if (q1->LL3 > q2->LL3) return FALSE; /* LL3 */ + return TRUE; +} + +BOOL progressive_rfx_quant_lcmp_greater_equal(RFX_COMPONENT_CODEC_QUANT* q, int val) +{ + if (q->HL1 < val) return FALSE; /* HL1 */ + if (q->LH1 < val) return FALSE; /* LH1 */ + if (q->HH1 < val) return FALSE; /* HH1 */ + if (q->HL2 < val) return FALSE; /* HL2 */ + if (q->LH2 < val) return FALSE; /* LH2 */ + if (q->HH2 < val) return FALSE; /* HH2 */ + if (q->HL3 < val) return FALSE; /* HL3 */ + if (q->LH3 < val) return FALSE; /* LH3 */ + if (q->HH3 < val) return FALSE; /* HH3 */ + if (q->LL3 < val) return FALSE; /* LL3 */ + return TRUE; +} + +BOOL progressive_rfx_quant_cmp_greater_equal(RFX_COMPONENT_CODEC_QUANT* q1, RFX_COMPONENT_CODEC_QUANT* q2) +{ + if (q1->HL1 < q2->HL1) return FALSE; /* HL1 */ + if (q1->LH1 < q2->LH1) return FALSE; /* LH1 */ + if (q1->HH1 < q2->HH1) return FALSE; /* HH1 */ + if (q1->HL2 < q2->HL2) return FALSE; /* HL2 */ + if (q1->LH2 < q2->LH2) return FALSE; /* LH2 */ + if (q1->HH2 < q2->HH2) return FALSE; /* HH2 */ + if (q1->HL3 < q2->HL3) return FALSE; /* HL3 */ + if (q1->LH3 < q2->LH3) return FALSE; /* LH3 */ + if (q1->HH3 < q2->HH3) return FALSE; /* HH3 */ + if (q1->LL3 < q2->LL3) return FALSE; /* LL3 */ + return TRUE; +} + int progressive_set_surface_data(PROGRESSIVE_CONTEXT* progressive, UINT16 surfaceId, void* pData) { ULONG_PTR key; @@ -474,7 +590,7 @@ void progressive_rfx_dwt_2d_decode(INT16* buffer, INT16* temp, INT16* current, B progressive_rfx_dwt_2d_decode_block(&buffer[0], temp, 1); } -int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPONENT_CODEC_QUANT* bitPos, +int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPONENT_CODEC_QUANT* shift, const BYTE* data, int length, INT16* buffer, INT16* current, BOOL diff) { int status; @@ -488,16 +604,16 @@ int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPO rfx_differential_decode(&buffer[4015], 81); /* LL3 */ - rfx_quantization_decode_block(prims, &buffer[0], 1023, bitPos->HL1 - 1); /* HL1 */ - rfx_quantization_decode_block(prims, &buffer[1023], 1023, bitPos->LH1 - 1); /* LH1 */ - rfx_quantization_decode_block(prims, &buffer[2046], 961, bitPos->HH1 - 1); /* HH1 */ - rfx_quantization_decode_block(prims, &buffer[3007], 272, bitPos->HL2 - 1); /* HL2 */ - rfx_quantization_decode_block(prims, &buffer[3279], 272, bitPos->LH2 - 1); /* LH2 */ - rfx_quantization_decode_block(prims, &buffer[3551], 256, bitPos->HH2 - 1); /* HH2 */ - rfx_quantization_decode_block(prims, &buffer[3807], 72, bitPos->HL3 - 1); /* HL3 */ - rfx_quantization_decode_block(prims, &buffer[3879], 72, bitPos->LH3 - 1); /* LH3 */ - rfx_quantization_decode_block(prims, &buffer[3951], 64, bitPos->HH3 - 1); /* HH3 */ - rfx_quantization_decode_block(prims, &buffer[4015], 81, bitPos->LL3 - 1); /* LL3 */ + rfx_quantization_decode_block(prims, &buffer[0], 1023, shift->HL1); /* HL1 */ + rfx_quantization_decode_block(prims, &buffer[1023], 1023, shift->LH1); /* LH1 */ + rfx_quantization_decode_block(prims, &buffer[2046], 961, shift->HH1); /* HH1 */ + rfx_quantization_decode_block(prims, &buffer[3007], 272, shift->HL2); /* HL2 */ + rfx_quantization_decode_block(prims, &buffer[3279], 272, shift->LH2); /* LH2 */ + rfx_quantization_decode_block(prims, &buffer[3551], 256, shift->HH2); /* HH2 */ + rfx_quantization_decode_block(prims, &buffer[3807], 72, shift->HL3); /* HL3 */ + rfx_quantization_decode_block(prims, &buffer[3879], 72, shift->LH3); /* LH3 */ + rfx_quantization_decode_block(prims, &buffer[3951], 64, shift->HH3); /* HH3 */ + rfx_quantization_decode_block(prims, &buffer[4015], 81, shift->LL3); /* LL3 */ temp = (INT16*) BufferPool_Take(progressive->bufferPool, -1); /* DWT buffer */ @@ -508,6 +624,116 @@ int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPO return 1; } +int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROGRESSIVE_TILE* tile) +{ + BOOL diff; + BYTE* pBuffer; + INT16* pSrcDst[3]; + INT16* pCurrent[3]; + PROGRESSIVE_BLOCK_REGION* region; + RFX_COMPONENT_CODEC_QUANT shiftY; + RFX_COMPONENT_CODEC_QUANT shiftCb; + RFX_COMPONENT_CODEC_QUANT shiftCr; + RFX_COMPONENT_CODEC_QUANT* quantY; + RFX_COMPONENT_CODEC_QUANT* quantCb; + RFX_COMPONENT_CODEC_QUANT* quantCr; + RFX_COMPONENT_CODEC_QUANT* quantProgY; + RFX_COMPONENT_CODEC_QUANT* quantProgCb; + RFX_COMPONENT_CODEC_QUANT* quantProgCr; + RFX_PROGRESSIVE_CODEC_QUANT* quantProgVal; + static const prim_size_t roi_64x64 = { 64, 64 }; + const primitives_t* prims = primitives_get(); + + tile->pass = 1; + + diff = tile->flags & RFX_TILE_DIFFERENCE; + + printf("ProgressiveTileFirst: quantIdx Y: %d Cb: %d Cr: %d xIdx: %d yIdx: %d flags: 0x%02X quality: %d yLen: %d cbLen: %d crLen: %d tailLen: %d\n", + tile->quantIdxY, tile->quantIdxCb, tile->quantIdxCr, tile->xIdx, tile->yIdx, tile->flags, tile->quality, tile->yLen, tile->cbLen, tile->crLen, tile->tailLen); + + region = &(progressive->region); + + if (tile->quantIdxY >= region->numQuant) + return -1; + + quantY = &(region->quantVals[tile->quantIdxY]); + + if (tile->quantIdxCb >= region->numQuant) + return -1; + + quantCb = &(region->quantVals[tile->quantIdxCb]); + + if (tile->quantIdxCr >= region->numQuant) + return -1; + + quantCr = &(region->quantVals[tile->quantIdxCr]); + + if (tile->quality == 0xFF) + { + quantProgVal = &(progressive->quantProgValFull); + } + else + { + if (tile->quality >= region->numProgQuant) + return -1; + + quantProgVal = &(region->quantProgVals[tile->quality]); + } + + quantProgY = &(quantProgVal->yQuantValues); + quantProgCb = &(quantProgVal->cbQuantValues); + quantProgCr = &(quantProgVal->crQuantValues); + + progressive_rfx_quant_add(quantY, quantProgY, &shiftY); + progressive_rfx_quant_lsub(&shiftY, 1); /* -6 + 5 = -1 */ + progressive_rfx_quant_add(quantCb, quantProgCb, &shiftCb); + progressive_rfx_quant_lsub(&shiftCb, 1); /* -6 + 5 = -1 */ + progressive_rfx_quant_add(quantCr, quantProgCr, &shiftCr); + progressive_rfx_quant_lsub(&shiftCr, 1); /* -6 + 5 = -1 */ + + CopyMemory(&(tile->yBitPos), quantProgY, sizeof(RFX_COMPONENT_CODEC_QUANT)); + CopyMemory(&(tile->cbBitPos), quantProgCb, sizeof(RFX_COMPONENT_CODEC_QUANT)); + CopyMemory(&(tile->crBitPos), quantProgCr, sizeof(RFX_COMPONENT_CODEC_QUANT)); + + if (!tile->data) + { + tile->data = (BYTE*) _aligned_malloc(64 * 64 * 4, 16); + } + + if (!tile->current) + { + tile->current = (BYTE*) _aligned_malloc((8192 + 32) * 3, 16); + } + + pBuffer = tile->current; + + pCurrent[0] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 0) + 16])); /* Y/R buffer */ + pCurrent[1] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 1) + 16])); /* Cb/G buffer */ + pCurrent[2] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 2) + 16])); /* Cr/B buffer */ + + pBuffer = (BYTE*) BufferPool_Take(progressive->bufferPool, -1); + + pSrcDst[0] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 0) + 16])); /* Y/R buffer */ + pSrcDst[1] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 1) + 16])); /* Cb/G buffer */ + pSrcDst[2] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 2) + 16])); /* Cr/B buffer */ + + progressive_rfx_decode_component(progressive, &shiftY, tile->yData, tile->yLen, pSrcDst[0], pCurrent[0], diff); /* Y */ + progressive_rfx_decode_component(progressive, &shiftCb, tile->cbData, tile->cbLen, pSrcDst[1], pCurrent[1], diff); /* Cb */ + progressive_rfx_decode_component(progressive, &shiftCr, tile->crData, tile->crLen, pSrcDst[2], pCurrent[2], diff); /* Cr */ + + prims->yCbCrToRGB_16s16s_P3P3((const INT16**) pSrcDst, 64 * sizeof(INT16), + pSrcDst, 64 * sizeof(INT16), &roi_64x64); + + prims->RGBToRGB_16s8u_P3AC4R((const INT16**) pSrcDst, 64 * sizeof(INT16), + tile->data, 64 * 4, &roi_64x64); + + BufferPool_Return(progressive->bufferPool, pBuffer); + + WLog_Image(progressive->log, WLOG_TRACE, tile->data, 64, 64, 32); + + return 1; +} + struct _RFX_PROGRESSIVE_UPGRADE_STATE { BOOL nonLL; @@ -523,6 +749,102 @@ struct _RFX_PROGRESSIVE_UPGRADE_STATE }; typedef struct _RFX_PROGRESSIVE_UPGRADE_STATE RFX_PROGRESSIVE_UPGRADE_STATE; +INT16 progressive_rfx_srl_read(RFX_PROGRESSIVE_UPGRADE_STATE* state, UINT32 numBits) +{ + UINT32 bit; + UINT32 max; + UINT32 mag; + UINT32 sign; + wBitStream* bs = state->srl; + + if (state->nz) + { + state->nz--; + return 0; + } + + state->k = state->kp / 8; + + if (!state->mode) + { + /* zero encoding */ + + bit = (bs->accumulator & 0x80000000) ? 1 : 0; + BitStream_Shift(bs, 1); + + if (!bit) + { + /* '0' bit, nz >= (1 << k), nz = (1 << k) */ + + state->nz = (1 << state->k); + + state->kp += 4; + + if (state->kp > 80) + state->kp = 80; + + state->k = state->kp / 8; + + state->nz--; + return 0; + } + else + { + /* '1' bit, nz < (1 << k), nz = next k bits */ + + bs->mask = ((1 << state->k) - 1); + state->nz = ((bs->accumulator >> (32 - state->k)) & bs->mask); + BitStream_Shift(bs, state->k); + + if (state->nz) + { + state->mode = 1; /* unary encoding is next */ + state->nz--; + return 0; + } + } + } + + state->mode = 0; /* zero encoding is next */ + + /* unary encoding */ + + /* read sign bit */ + + sign = (bs->accumulator & 0x80000000) ? 1 : 0; + BitStream_Shift(bs, 1); + + if (numBits < 2) + return sign ? -1 : 1; + + mag = 0; + max = (1 << numBits) - 1; + + if (numBits != 2) + { + do + { + bit = (bs->accumulator & 0x80000000) ? 1 : 0; + BitStream_Shift(bs, 1); + + if (bit) + break; + + mag++; + } + while (mag <= max); + } + + state->kp -= 6; + + if (state->kp < 0) + state->kp = 0; + + state->k = state->kp / 8; + + return sign ? -mag : mag; +} + int progressive_rfx_upgrade_block(RFX_PROGRESSIVE_UPGRADE_STATE* state, INT16* buffer, int length, UINT32 bitPos, UINT32 numBits) { int index; @@ -530,6 +852,11 @@ int progressive_rfx_upgrade_block(RFX_PROGRESSIVE_UPGRADE_STATE* state, INT16* b wBitStream* srl; wBitStream* raw; + printf("bitPos: %d numBits: %d\n", bitPos, numBits); + + if (numBits < 1) + return 1; + srl = state->srl; raw = state->raw; @@ -572,6 +899,10 @@ int progressive_rfx_upgrade_block(RFX_PROGRESSIVE_UPGRADE_STATE* state, INT16* b else { /* sign == 0, read from srl */ + + input = progressive_rfx_srl_read(state, numBits); + + buffer[index] += (input << bitPos); } } @@ -581,10 +912,19 @@ int progressive_rfx_upgrade_block(RFX_PROGRESSIVE_UPGRADE_STATE* state, INT16* b int progressive_rfx_upgrade_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPONENT_CODEC_QUANT* bitPos, RFX_COMPONENT_CODEC_QUANT* numBits, INT16* buffer, const BYTE* srlData, int srlLen, const BYTE* rawData, int rawLen) { + int aRawLen; + int aSrlLen; wBitStream s_srl; wBitStream s_raw; RFX_PROGRESSIVE_UPGRADE_STATE state; + ZeroMemory(&s_srl, sizeof(wBitStream)); + ZeroMemory(&s_raw, sizeof(wBitStream)); + ZeroMemory(&state, sizeof(RFX_PROGRESSIVE_UPGRADE_STATE)); + + state.kp = 8; + state.k = state.kp / 8; + state.srl = &s_srl; state.raw = &s_raw; @@ -608,131 +948,24 @@ int progressive_rfx_upgrade_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMP state.nonLL = FALSE; progressive_rfx_upgrade_block(&state, &buffer[4015], 81, bitPos->LL3, numBits->LL3); /* LL3 */ - return 1; -} + aRawLen = (state.raw->position + 7) / 8; + aSrlLen = (state.srl->position + 7) / 8; -void progressive_rfx_quant_add(RFX_COMPONENT_CODEC_QUANT* q1, RFX_COMPONENT_CODEC_QUANT* q2, RFX_COMPONENT_CODEC_QUANT* dst) -{ - dst->HL1 = q1->HL1 + q2->HL1; /* HL1 */ - dst->LH1 = q1->LH1 + q2->LH1; /* LH1 */ - dst->HH1 = q1->HH1 + q2->HH1; /* HH1 */ - dst->HL2 = q1->HL2 + q2->HL2; /* HL2 */ - dst->LH2 = q1->LH2 + q2->LH2; /* LH2 */ - dst->HH2 = q1->HH2 + q2->HH2; /* HH2 */ - dst->HL3 = q1->HL3 + q2->HL3; /* HL3 */ - dst->LH3 = q1->LH3 + q2->LH3; /* LH3 */ - dst->HH3 = q1->HH3 + q2->HH3; /* HH3 */ - dst->LL3 = q1->LL3 + q2->LL3; /* LL3 */ -} - -void progressive_rfx_quant_sub(RFX_COMPONENT_CODEC_QUANT* q1, RFX_COMPONENT_CODEC_QUANT* q2, RFX_COMPONENT_CODEC_QUANT* dst) -{ - dst->HL1 = q1->HL1 - q2->HL1; /* HL1 */ - dst->LH1 = q1->LH1 - q2->LH1; /* LH1 */ - dst->HH1 = q1->HH1 - q2->HH1; /* HH1 */ - dst->HL2 = q1->HL2 - q2->HL2; /* HL2 */ - dst->LH2 = q1->LH2 - q2->LH2; /* LH2 */ - dst->HH2 = q1->HH2 - q2->HH2; /* HH2 */ - dst->HL3 = q1->HL3 - q2->HL3; /* HL3 */ - dst->LH3 = q1->LH3 - q2->LH3; /* LH3 */ - dst->HH3 = q1->HH3 - q2->HH3; /* HH3 */ - dst->LL3 = q1->LL3 - q2->LL3; /* LL3 */ -} - -int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROGRESSIVE_TILE* tile) -{ - BOOL diff; - BYTE* pBuffer; - INT16* pSrcDst[3]; - INT16* pCurrent[3]; - PROGRESSIVE_BLOCK_REGION* region; - RFX_COMPONENT_CODEC_QUANT* quantY; - RFX_COMPONENT_CODEC_QUANT* quantCb; - RFX_COMPONENT_CODEC_QUANT* quantCr; - RFX_COMPONENT_CODEC_QUANT* quantProgY; - RFX_COMPONENT_CODEC_QUANT* quantProgCb; - RFX_COMPONENT_CODEC_QUANT* quantProgCr; - RFX_PROGRESSIVE_CODEC_QUANT* quantProgVal; - static const prim_size_t roi_64x64 = { 64, 64 }; - const primitives_t* prims = primitives_get(); - - printf("ProgressiveTileFirst: quantIdx Y: %d Cb: %d Cr: %d xIdx: %d yIdx: %d flags: 0x%02X quality: %d yLen: %d cbLen: %d crLen: %d tailLen: %d\n", - tile->quantIdxY, tile->quantIdxCb, tile->quantIdxCr, tile->xIdx, tile->yIdx, tile->flags, tile->quality, tile->yLen, tile->cbLen, tile->crLen, tile->tailLen); - - region = &(progressive->region); - - if (tile->quantIdxY >= region->numQuant) - return -1; - - quantY = &(region->quantVals[tile->quantIdxY]); - - if (tile->quantIdxCb >= region->numQuant) - return -1; - - quantCb = &(region->quantVals[tile->quantIdxCb]); - - if (tile->quantIdxCr >= region->numQuant) - return -1; - - quantCr = &(region->quantVals[tile->quantIdxCr]); - - if (tile->quality == 0xFF) + if ((aRawLen != rawLen) || (aSrlLen != srlLen)) { - quantProgVal = &(progressive->quantProgValFull); + int pRawLen = 0; + int pSrlLen = 0; + + if (rawLen) + pRawLen = (int) ((((float) aRawLen) / ((float) rawLen)) * 100.0f); + + if (srlLen) + pSrlLen = (int) ((((float) aSrlLen) / ((float) srlLen)) * 100.0f); + + printf("RAW: %d/%d %d%% SRL: %d/%d %d%%\n", + aRawLen, rawLen, pRawLen, + aSrlLen, srlLen, pSrlLen); } - else - { - if (tile->quality >= region->numProgQuant) - return -1; - - quantProgVal = &(region->quantProgVals[tile->quality]); - } - - diff = tile->flags & RFX_TILE_DIFFERENCE; - - quantProgY = &(quantProgVal->yQuantValues); - quantProgCb = &(quantProgVal->cbQuantValues); - quantProgCr = &(quantProgVal->crQuantValues); - - progressive_rfx_quant_add(quantY, quantProgY, &(tile->yBitPos)); - progressive_rfx_quant_add(quantCb, quantProgCb, &(tile->cbBitPos)); - progressive_rfx_quant_add(quantCr, quantProgCr, &(tile->crBitPos)); - - if (!tile->data) - { - tile->data = (BYTE*) _aligned_malloc(64 * 64 * 4, 16); - } - - if (!tile->current) - { - tile->current = (BYTE*) _aligned_malloc((8192 + 32) * 3, 16); - } - - pBuffer = tile->current; - - pCurrent[0] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 0) + 16])); /* Y/R buffer */ - pCurrent[1] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 1) + 16])); /* Cb/G buffer */ - pCurrent[2] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 2) + 16])); /* Cr/B buffer */ - - pBuffer = (BYTE*) BufferPool_Take(progressive->bufferPool, -1); - - pSrcDst[0] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 0) + 16])); /* Y/R buffer */ - pSrcDst[1] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 1) + 16])); /* Cb/G buffer */ - pSrcDst[2] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 2) + 16])); /* Cr/B buffer */ - - progressive_rfx_decode_component(progressive, &(tile->yBitPos), tile->yData, tile->yLen, pSrcDst[0], pCurrent[0], diff); /* Y */ - progressive_rfx_decode_component(progressive, &(tile->crBitPos), tile->cbData, tile->cbLen, pSrcDst[1], pCurrent[1], diff); /* Cb */ - progressive_rfx_decode_component(progressive, &(tile->cbBitPos), tile->crData, tile->crLen, pSrcDst[2], pCurrent[2], diff); /* Cr */ - - prims->yCbCrToRGB_16s16s_P3P3((const INT16**) pSrcDst, 64 * sizeof(INT16), - pSrcDst, 64 * sizeof(INT16), &roi_64x64); - - prims->RGBToRGB_16s8u_P3AC4R((const INT16**) pSrcDst, 64 * sizeof(INT16), - tile->data, 64 * 4, &roi_64x64); - - BufferPool_Return(progressive->bufferPool, pBuffer); - - WLog_Image(progressive->log, WLOG_TRACE, tile->data, 64, 64, 32); return 1; } @@ -742,9 +975,6 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR BYTE* pBuffer; INT16* pCurrent[3]; PROGRESSIVE_BLOCK_REGION* region; - RFX_COMPONENT_CODEC_QUANT yBitPos; - RFX_COMPONENT_CODEC_QUANT cbBitPos; - RFX_COMPONENT_CODEC_QUANT crBitPos; RFX_COMPONENT_CODEC_QUANT yNumBits; RFX_COMPONENT_CODEC_QUANT cbNumBits; RFX_COMPONENT_CODEC_QUANT crNumBits; @@ -756,8 +986,10 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR RFX_COMPONENT_CODEC_QUANT* quantProgCr; RFX_PROGRESSIVE_CODEC_QUANT* quantProg; - printf("ProgressiveTileUpgrade: quantIdx Y: %d Cb: %d Cr: %d xIdx: %d yIdx: %d quality: %d ySrlLen: %d yRawLen: %d cbSrlLen: %d cbRawLen: %d crSrlLen: %d crRawLen: %d\n", - tile->quantIdxY, tile->quantIdxCb, tile->quantIdxCr, tile->xIdx, tile->yIdx, tile->quality, tile->ySrlLen, tile->yRawLen, tile->cbSrlLen, tile->cbRawLen, tile->crSrlLen, tile->crRawLen); + tile->pass++; + + printf("ProgressiveTileUpgrade: pass: %d quantIdx Y: %d Cb: %d Cr: %d xIdx: %d yIdx: %d quality: %d ySrlLen: %d yRawLen: %d cbSrlLen: %d cbRawLen: %d crSrlLen: %d crRawLen: %d\n", + tile->pass, tile->quantIdxY, tile->quantIdxCb, tile->quantIdxCr, tile->xIdx, tile->yIdx, tile->quality, tile->ySrlLen, tile->yRawLen, tile->cbSrlLen, tile->cbRawLen, tile->crSrlLen, tile->crRawLen); region = &(progressive->region); @@ -792,28 +1024,24 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR quantProgCb = &(quantProg->cbQuantValues); quantProgCr = &(quantProg->crQuantValues); - progressive_rfx_quant_add(quantY, quantProgY, &yBitPos); - progressive_rfx_quant_add(quantCb, quantProgCb, &cbBitPos); - progressive_rfx_quant_add(quantCr, quantProgCr, &crBitPos); + progressive_rfx_quant_sub(&(tile->yBitPos), quantProgY, &yNumBits); + progressive_rfx_quant_sub(&(tile->cbBitPos), quantProgCb, &cbNumBits); + progressive_rfx_quant_sub(&(tile->crBitPos), quantProgCr, &crNumBits); - progressive_rfx_quant_sub(&(tile->yBitPos), &yBitPos, &yNumBits); - progressive_rfx_quant_sub(&(tile->cbBitPos), &cbBitPos, &cbNumBits); - progressive_rfx_quant_sub(&(tile->crBitPos), &crBitPos, &crNumBits); - - CopyMemory(&(tile->yBitPos), &yBitPos, sizeof(RFX_COMPONENT_CODEC_QUANT)); - CopyMemory(&(tile->cbBitPos), &cbBitPos, sizeof(RFX_COMPONENT_CODEC_QUANT)); - CopyMemory(&(tile->crBitPos), &crBitPos, sizeof(RFX_COMPONENT_CODEC_QUANT)); + CopyMemory(&(tile->yBitPos), quantProgY, sizeof(RFX_COMPONENT_CODEC_QUANT)); + CopyMemory(&(tile->cbBitPos), quantProgCb, sizeof(RFX_COMPONENT_CODEC_QUANT)); + CopyMemory(&(tile->crBitPos), quantProgCr, sizeof(RFX_COMPONENT_CODEC_QUANT)); pBuffer = tile->current; pCurrent[0] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 0) + 16])); /* Y/R buffer */ pCurrent[1] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 1) + 16])); /* Cb/G buffer */ pCurrent[2] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 2) + 16])); /* Cr/B buffer */ - progressive_rfx_upgrade_component(progressive, &yBitPos, &yNumBits, pCurrent[0], + progressive_rfx_upgrade_component(progressive, quantProgY, &yNumBits, pCurrent[0], tile->ySrlData, tile->ySrlLen, tile->yRawData, tile->yRawLen); /* Y */ - progressive_rfx_upgrade_component(progressive, &cbBitPos, &cbNumBits, pCurrent[1], + progressive_rfx_upgrade_component(progressive, quantProgCb, &cbNumBits, pCurrent[1], tile->cbSrlData, tile->cbSrlLen, tile->cbRawData, tile->cbRawLen); /* Cb */ - progressive_rfx_upgrade_component(progressive, &crBitPos, &crNumBits, pCurrent[2], + progressive_rfx_upgrade_component(progressive, quantProgCr, &crNumBits, pCurrent[2], tile->crSrlData, tile->crSrlLen, tile->crRawData, tile->crRawLen); /* Cr */ return 1; @@ -1295,6 +1523,12 @@ int progressive_decompress(PROGRESSIVE_CONTEXT* progressive, BYTE* pSrcData, UIN quantVal = &(region->quantVals[index]); progressive_component_codec_quant_read(&block[boffset], quantVal); boffset += 5; + + if (!progressive_rfx_quant_lcmp_greater_equal(quantVal, 6)) + return -1; + + if (!progressive_rfx_quant_lcmp_less_equal(quantVal, 15)) + return -1; } if ((blockLen - boffset) < (region->numProgQuant * 16)) @@ -1316,6 +1550,7 @@ int progressive_decompress(PROGRESSIVE_CONTEXT* progressive, BYTE* pSrcData, UIN { quantProgVal = &(region->quantProgVals[index]); quantProgVal->quality = block[boffset + 0]; + progressive_component_codec_quant_read(&block[boffset + 1], &(quantProgVal->yQuantValues)); progressive_component_codec_quant_read(&block[boffset + 6], &(quantProgVal->cbQuantValues)); progressive_component_codec_quant_read(&block[boffset + 11], &(quantProgVal->crQuantValues)); From 49cede6e019ebf2636126b7771c83dbca0decf0a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 28 Aug 2014 15:14:01 -0400 Subject: [PATCH 149/170] libfreerdp-codec: add separate sign array --- include/freerdp/codec/progressive.h | 1 + libfreerdp/codec/progressive.c | 185 ++++++++++++++++++---------- 2 files changed, 124 insertions(+), 62 deletions(-) diff --git a/include/freerdp/codec/progressive.h b/include/freerdp/codec/progressive.h index f6fd26732..708c7f57d 100644 --- a/include/freerdp/codec/progressive.h +++ b/include/freerdp/codec/progressive.h @@ -215,6 +215,7 @@ struct _RFX_PROGRESSIVE_TILE BYTE* current; int pass; + BYTE* sign; RFX_COMPONENT_CODEC_QUANT yBitPos; RFX_COMPONENT_CODEC_QUANT cbBitPos; RFX_COMPONENT_CODEC_QUANT crBitPos; diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index b82c84f1f..ae4b41014 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -576,7 +576,7 @@ static void progressive_rfx_dwt_2d_decode_block(INT16* buffer, INT16* temp, int progressive_rfx_idwt_y(pLowBand[2], nLowStep[2], pHighBand[2], nHighStep[2], pDstBand[2], nDstStep[2], nLowCount[2], nHighCount[2], nDstCount[2]); } -void progressive_rfx_dwt_2d_decode(INT16* buffer, INT16* temp, INT16* current, BOOL diff) +void progressive_rfx_dwt_2d_decode(INT16* buffer, INT16* temp, INT16* current, INT16* sign, BOOL diff) { const primitives_t* prims = primitives_get(); @@ -590,8 +590,16 @@ void progressive_rfx_dwt_2d_decode(INT16* buffer, INT16* temp, INT16* current, B progressive_rfx_dwt_2d_decode_block(&buffer[0], temp, 1); } +void progressive_rfx_decode_block(const primitives_t* prims, INT16* buffer, int length, UINT32 shift) +{ + if (!shift) + return; + + prims->lShiftC_16s(buffer, shift, buffer, length); +} + int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPONENT_CODEC_QUANT* shift, - const BYTE* data, int length, INT16* buffer, INT16* current, BOOL diff) + const BYTE* data, int length, INT16* buffer, INT16* current, INT16* sign, BOOL diff) { int status; INT16* temp; @@ -602,22 +610,24 @@ int progressive_rfx_decode_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPO if (status < 0) return status; + CopyMemory(sign, buffer, 4096 * 2); + rfx_differential_decode(&buffer[4015], 81); /* LL3 */ - rfx_quantization_decode_block(prims, &buffer[0], 1023, shift->HL1); /* HL1 */ - rfx_quantization_decode_block(prims, &buffer[1023], 1023, shift->LH1); /* LH1 */ - rfx_quantization_decode_block(prims, &buffer[2046], 961, shift->HH1); /* HH1 */ - rfx_quantization_decode_block(prims, &buffer[3007], 272, shift->HL2); /* HL2 */ - rfx_quantization_decode_block(prims, &buffer[3279], 272, shift->LH2); /* LH2 */ - rfx_quantization_decode_block(prims, &buffer[3551], 256, shift->HH2); /* HH2 */ - rfx_quantization_decode_block(prims, &buffer[3807], 72, shift->HL3); /* HL3 */ - rfx_quantization_decode_block(prims, &buffer[3879], 72, shift->LH3); /* LH3 */ - rfx_quantization_decode_block(prims, &buffer[3951], 64, shift->HH3); /* HH3 */ - rfx_quantization_decode_block(prims, &buffer[4015], 81, shift->LL3); /* LL3 */ + progressive_rfx_decode_block(prims, &buffer[0], 1023, shift->HL1); /* HL1 */ + progressive_rfx_decode_block(prims, &buffer[1023], 1023, shift->LH1); /* LH1 */ + progressive_rfx_decode_block(prims, &buffer[2046], 961, shift->HH1); /* HH1 */ + progressive_rfx_decode_block(prims, &buffer[3007], 272, shift->HL2); /* HL2 */ + progressive_rfx_decode_block(prims, &buffer[3279], 272, shift->LH2); /* LH2 */ + progressive_rfx_decode_block(prims, &buffer[3551], 256, shift->HH2); /* HH2 */ + progressive_rfx_decode_block(prims, &buffer[3807], 72, shift->HL3); /* HL3 */ + progressive_rfx_decode_block(prims, &buffer[3879], 72, shift->LH3); /* LH3 */ + progressive_rfx_decode_block(prims, &buffer[3951], 64, shift->HH3); /* HH3 */ + progressive_rfx_decode_block(prims, &buffer[4015], 81, shift->LL3); /* LL3 */ temp = (INT16*) BufferPool_Take(progressive->bufferPool, -1); /* DWT buffer */ - progressive_rfx_dwt_2d_decode(buffer, temp, current, diff); + progressive_rfx_dwt_2d_decode(buffer, temp, current, sign, diff); BufferPool_Return(progressive->bufferPool, temp); @@ -628,6 +638,7 @@ int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROG { BOOL diff; BYTE* pBuffer; + INT16* pSign[3]; INT16* pSrcDst[3]; INT16* pCurrent[3]; PROGRESSIVE_BLOCK_REGION* region; @@ -700,26 +711,34 @@ int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROG tile->data = (BYTE*) _aligned_malloc(64 * 64 * 4, 16); } + if (!tile->sign) + { + tile->sign = (BYTE*) _aligned_malloc((8192 + 32) * 3, 16); + } + if (!tile->current) { tile->current = (BYTE*) _aligned_malloc((8192 + 32) * 3, 16); } - pBuffer = tile->current; + pBuffer = tile->sign; + pSign[0] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 0) + 16])); /* Y/R buffer */ + pSign[1] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 1) + 16])); /* Cb/G buffer */ + pSign[2] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 2) + 16])); /* Cr/B buffer */ + pBuffer = tile->current; pCurrent[0] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 0) + 16])); /* Y/R buffer */ pCurrent[1] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 1) + 16])); /* Cb/G buffer */ pCurrent[2] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 2) + 16])); /* Cr/B buffer */ pBuffer = (BYTE*) BufferPool_Take(progressive->bufferPool, -1); - pSrcDst[0] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 0) + 16])); /* Y/R buffer */ pSrcDst[1] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 1) + 16])); /* Cb/G buffer */ pSrcDst[2] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 2) + 16])); /* Cr/B buffer */ - progressive_rfx_decode_component(progressive, &shiftY, tile->yData, tile->yLen, pSrcDst[0], pCurrent[0], diff); /* Y */ - progressive_rfx_decode_component(progressive, &shiftCb, tile->cbData, tile->cbLen, pSrcDst[1], pCurrent[1], diff); /* Cb */ - progressive_rfx_decode_component(progressive, &shiftCr, tile->crData, tile->crLen, pSrcDst[2], pCurrent[2], diff); /* Cr */ + progressive_rfx_decode_component(progressive, &shiftY, tile->yData, tile->yLen, pSrcDst[0], pCurrent[0], pSign[0], diff); /* Y */ + progressive_rfx_decode_component(progressive, &shiftCb, tile->cbData, tile->cbLen, pSrcDst[1], pCurrent[1], pSign[1], diff); /* Cb */ + progressive_rfx_decode_component(progressive, &shiftCr, tile->crData, tile->crLen, pSrcDst[2], pCurrent[2], pSign[2], diff); /* Cr */ prims->yCbCrToRGB_16s16s_P3P3((const INT16**) pSrcDst, 64 * sizeof(INT16), pSrcDst, 64 * sizeof(INT16), &roi_64x64); @@ -763,8 +782,6 @@ INT16 progressive_rfx_srl_read(RFX_PROGRESSIVE_UPGRADE_STATE* state, UINT32 numB return 0; } - state->k = state->kp / 8; - if (!state->mode) { /* zero encoding */ @@ -788,20 +805,23 @@ INT16 progressive_rfx_srl_read(RFX_PROGRESSIVE_UPGRADE_STATE* state, UINT32 numB state->nz--; return 0; } - else - { - /* '1' bit, nz < (1 << k), nz = next k bits */ + /* '1' bit, nz < (1 << k), nz = next k bits */ + + state->nz = 0; + + if (state->k) + { bs->mask = ((1 << state->k) - 1); state->nz = ((bs->accumulator >> (32 - state->k)) & bs->mask); BitStream_Shift(bs, state->k); + } - if (state->nz) - { - state->mode = 1; /* unary encoding is next */ - state->nz--; - return 0; - } + if (state->nz) + { + state->mode = 1; /* unary encoding is next */ + state->nz--; + return 0; } } @@ -814,9 +834,6 @@ INT16 progressive_rfx_srl_read(RFX_PROGRESSIVE_UPGRADE_STATE* state, UINT32 numB sign = (bs->accumulator & 0x80000000) ? 1 : 0; BitStream_Shift(bs, 1); - if (numBits < 2) - return sign ? -1 : 1; - mag = 0; max = (1 << numBits) - 1; @@ -845,16 +862,16 @@ INT16 progressive_rfx_srl_read(RFX_PROGRESSIVE_UPGRADE_STATE* state, UINT32 numB return sign ? -mag : mag; } -int progressive_rfx_upgrade_block(RFX_PROGRESSIVE_UPGRADE_STATE* state, INT16* buffer, int length, UINT32 bitPos, UINT32 numBits) +int progressive_rfx_upgrade_block(RFX_PROGRESSIVE_UPGRADE_STATE* state, INT16* buffer, INT16* sign, int length, UINT32 bitPos, UINT32 numBits) { int index; INT16 input; wBitStream* srl; wBitStream* raw; - printf("bitPos: %d numBits: %d\n", bitPos, numBits); + //printf("bitPos: %d numBits: %d\n", bitPos, numBits); - if (numBits < 1) + if (!numBits) return 1; srl = state->srl; @@ -876,17 +893,15 @@ int progressive_rfx_upgrade_block(RFX_PROGRESSIVE_UPGRADE_STATE* state, INT16* b for (index = 0; index < length; index++) { - if (buffer[index] > 0) + if (sign[index] > 0) { /* sign > 0, read from raw */ raw->mask = ((1 << numBits) - 1); input = (INT16) ((raw->accumulator >> (32 - numBits)) & raw->mask); BitStream_Shift(raw, numBits); - - buffer[index] += (input << bitPos); } - else if (buffer[index] > 0) + else if (sign[index] < 0) { /* sign < 0, read from raw */ @@ -894,23 +909,25 @@ int progressive_rfx_upgrade_block(RFX_PROGRESSIVE_UPGRADE_STATE* state, INT16* b input = (INT16) ((raw->accumulator >> (32 - numBits)) & raw->mask); BitStream_Shift(raw, numBits); - buffer[index] -= (input << bitPos); + input *= -1; } else { /* sign == 0, read from srl */ input = progressive_rfx_srl_read(state, numBits); - - buffer[index] += (input << bitPos); } + + buffer[index] += (input << bitPos); + sign[index] = input; } return 1; } int progressive_rfx_upgrade_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPONENT_CODEC_QUANT* bitPos, - RFX_COMPONENT_CODEC_QUANT* numBits, INT16* buffer, const BYTE* srlData, int srlLen, const BYTE* rawData, int rawLen) + RFX_COMPONENT_CODEC_QUANT* numBits, INT16* buffer, INT16* current, INT16* sign, + const BYTE* srlData, int srlLen, const BYTE* rawData, int rawLen) { int aRawLen; int aSrlLen; @@ -924,7 +941,6 @@ int progressive_rfx_upgrade_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMP state.kp = 8; state.k = state.kp / 8; - state.srl = &s_srl; state.raw = &s_raw; @@ -935,18 +951,20 @@ int progressive_rfx_upgrade_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMP BitStream_Fetch(state.raw); state.nonLL = TRUE; - progressive_rfx_upgrade_block(&state, &buffer[0], 1023, bitPos->HL1, numBits->HL1); /* HL1 */ - progressive_rfx_upgrade_block(&state, &buffer[1023], 1023, bitPos->LH1, numBits->LH1); /* LH1 */ - progressive_rfx_upgrade_block(&state, &buffer[2046], 961, bitPos->HH1, numBits->HH1); /* HH1 */ - progressive_rfx_upgrade_block(&state, &buffer[3007], 272, bitPos->HL2, numBits->HL2); /* HL2 */ - progressive_rfx_upgrade_block(&state, &buffer[3279], 272, bitPos->LH2, numBits->LH2); /* LH2 */ - progressive_rfx_upgrade_block(&state, &buffer[3551], 256, bitPos->HH2, numBits->HH2); /* HH2 */ - progressive_rfx_upgrade_block(&state, &buffer[3807], 72, bitPos->HL3, numBits->HL3); /* HL3 */ - progressive_rfx_upgrade_block(&state, &buffer[3879], 72, bitPos->LH3, numBits->LH3); /* LH3 */ - progressive_rfx_upgrade_block(&state, &buffer[3951], 64, bitPos->HH3, numBits->HH3); /* HH3 */ + progressive_rfx_upgrade_block(&state, ¤t[0], &sign[0], 1023, bitPos->HL1, numBits->HL1); /* HL1 */ + progressive_rfx_upgrade_block(&state, ¤t[1023], &sign[1023], 1023, bitPos->LH1, numBits->LH1); /* LH1 */ + progressive_rfx_upgrade_block(&state, ¤t[2046], &sign[2046], 961, bitPos->HH1, numBits->HH1); /* HH1 */ + progressive_rfx_upgrade_block(&state, ¤t[3007], &sign[3007], 272, bitPos->HL2, numBits->HL2); /* HL2 */ + progressive_rfx_upgrade_block(&state, ¤t[3279], &sign[3279], 272, bitPos->LH2, numBits->LH2); /* LH2 */ + progressive_rfx_upgrade_block(&state, ¤t[3551], &sign[3551], 256, bitPos->HH2, numBits->HH2); /* HH2 */ + progressive_rfx_upgrade_block(&state, ¤t[3807], &sign[3807], 72, bitPos->HL3, numBits->HL3); /* HL3 */ + progressive_rfx_upgrade_block(&state, ¤t[3879], &sign[3879], 72, bitPos->LH3, numBits->LH3); /* LH3 */ + progressive_rfx_upgrade_block(&state, ¤t[3951], &sign[3951], 64, bitPos->HH3, numBits->HH3); /* HH3 */ state.nonLL = FALSE; - progressive_rfx_upgrade_block(&state, &buffer[4015], 81, bitPos->LL3, numBits->LL3); /* LL3 */ + progressive_rfx_upgrade_block(&state, ¤t[4015], &sign[4015], 81, bitPos->LL3, numBits->LL3); /* LL3 */ + + CopyMemory(buffer, current, 4096 * 2); aRawLen = (state.raw->position + 7) / 8; aSrlLen = (state.srl->position + 7) / 8; @@ -965,6 +983,8 @@ int progressive_rfx_upgrade_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMP printf("RAW: %d/%d %d%% SRL: %d/%d %d%%\n", aRawLen, rawLen, pRawLen, aSrlLen, srlLen, pSrlLen); + + return -1; } return 1; @@ -972,7 +992,10 @@ int progressive_rfx_upgrade_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMP int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PROGRESSIVE_TILE* tile) { + int status; BYTE* pBuffer; + INT16* pSign[3]; + INT16* pSrcDst[3]; INT16* pCurrent[3]; PROGRESSIVE_BLOCK_REGION* region; RFX_COMPONENT_CODEC_QUANT yNumBits; @@ -985,9 +1008,14 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR RFX_COMPONENT_CODEC_QUANT* quantProgCb; RFX_COMPONENT_CODEC_QUANT* quantProgCr; RFX_PROGRESSIVE_CODEC_QUANT* quantProg; + static const prim_size_t roi_64x64 = { 64, 64 }; + const primitives_t* prims = primitives_get(); tile->pass++; + if (tile->pass > 2) + return 1; /* skip for now */ + printf("ProgressiveTileUpgrade: pass: %d quantIdx Y: %d Cb: %d Cr: %d xIdx: %d yIdx: %d quality: %d ySrlLen: %d yRawLen: %d cbSrlLen: %d cbRawLen: %d crSrlLen: %d crRawLen: %d\n", tile->pass, tile->quantIdxY, tile->quantIdxCb, tile->quantIdxCr, tile->xIdx, tile->yIdx, tile->quality, tile->ySrlLen, tile->yRawLen, tile->cbSrlLen, tile->cbRawLen, tile->crSrlLen, tile->crRawLen); @@ -1032,23 +1060,53 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR CopyMemory(&(tile->cbBitPos), quantProgCb, sizeof(RFX_COMPONENT_CODEC_QUANT)); CopyMemory(&(tile->crBitPos), quantProgCr, sizeof(RFX_COMPONENT_CODEC_QUANT)); + pBuffer = tile->sign; + pSign[0] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 0) + 16])); /* Y/R buffer */ + pSign[1] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 1) + 16])); /* Cb/G buffer */ + pSign[2] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 2) + 16])); /* Cr/B buffer */ + pBuffer = tile->current; pCurrent[0] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 0) + 16])); /* Y/R buffer */ pCurrent[1] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 1) + 16])); /* Cb/G buffer */ pCurrent[2] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 2) + 16])); /* Cr/B buffer */ - progressive_rfx_upgrade_component(progressive, quantProgY, &yNumBits, pCurrent[0], - tile->ySrlData, tile->ySrlLen, tile->yRawData, tile->yRawLen); /* Y */ - progressive_rfx_upgrade_component(progressive, quantProgCb, &cbNumBits, pCurrent[1], - tile->cbSrlData, tile->cbSrlLen, tile->cbRawData, tile->cbRawLen); /* Cb */ - progressive_rfx_upgrade_component(progressive, quantProgCr, &crNumBits, pCurrent[2], - tile->crSrlData, tile->crSrlLen, tile->crRawData, tile->crRawLen); /* Cr */ + pBuffer = (BYTE*) BufferPool_Take(progressive->bufferPool, -1); + pSrcDst[0] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 0) + 16])); /* Y/R buffer */ + pSrcDst[1] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 1) + 16])); /* Cb/G buffer */ + pSrcDst[2] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 2) + 16])); /* Cr/B buffer */ + + status = progressive_rfx_upgrade_component(progressive, quantProgY, &yNumBits, + pSrcDst[0], pCurrent[0], pSign[0], tile->ySrlData, tile->ySrlLen, tile->yRawData, tile->yRawLen); /* Y */ + + if (status < 0) + return -1; + + status = progressive_rfx_upgrade_component(progressive, quantProgCb, &cbNumBits, + pSrcDst[1], pCurrent[1], pSign[1], tile->cbSrlData, tile->cbSrlLen, tile->cbRawData, tile->cbRawLen); /* Cb */ + + if (status < 0) + return -1; + + status = progressive_rfx_upgrade_component(progressive, quantProgCr, &crNumBits, + pSrcDst[2], pCurrent[2], pSign[2], tile->crSrlData, tile->crSrlLen, tile->crRawData, tile->crRawLen); /* Cr */ + + if (status < 0) + return -1; + + prims->yCbCrToRGB_16s16s_P3P3((const INT16**) pSrcDst, 64 * sizeof(INT16), + pSrcDst, 64 * sizeof(INT16), &roi_64x64); + + prims->RGBToRGB_16s8u_P3AC4R((const INT16**) pSrcDst, 64 * sizeof(INT16), + tile->data, 64 * 4, &roi_64x64); + + BufferPool_Return(progressive->bufferPool, pBuffer); return 1; } int progressive_process_tiles(PROGRESSIVE_CONTEXT* progressive, BYTE* blocks, UINT32 blocksLen, PROGRESSIVE_SURFACE_CONTEXT* surface) { + int status; BYTE* block; UINT16 xIdx; UINT16 yIdx; @@ -1310,13 +1368,16 @@ int progressive_process_tiles(PROGRESSIVE_CONTEXT* progressive, BYTE* blocks, UI { case PROGRESSIVE_WBT_TILE_SIMPLE: case PROGRESSIVE_WBT_TILE_FIRST: - progressive_decompress_tile_first(progressive, tile); + status = progressive_decompress_tile_first(progressive, tile); break; case PROGRESSIVE_WBT_TILE_UPGRADE: - progressive_decompress_tile_upgrade(progressive, tile); + status = progressive_decompress_tile_upgrade(progressive, tile); break; } + + if (status < 0) + return -1; } return (int) offset; From 3e355c9f79df20a4626747b2ff65aab420aacb89 Mon Sep 17 00:00:00 2001 From: Bernhard Miklautz Date: Fri, 29 Aug 2014 16:37:14 +0200 Subject: [PATCH 150/170] channels: fix possible overflow in logging Fixes clang compiler warning: "warning: the value of the size argument in 'strncat' is too large, might lead to a buffer overflow [-Wstrncat-size]" strncat requires an extra byte for '\0' so dest needs to have a size of n+1 --- include/freerdp/channels/log.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/freerdp/channels/log.h b/include/freerdp/channels/log.h index 8e8d6c330..f2125a68c 100644 --- a/include/freerdp/channels/log.h +++ b/include/freerdp/channels/log.h @@ -28,8 +28,8 @@ wLogMessage msg; \ wLog *log; \ \ - strncat(tag, "com.freerdp.channels.", sizeof(tag)); \ - strncat(tag, dbg_str, sizeof(tag) - sizeof("com.freerdp.channels.")); \ + strncat(tag, "com.freerdp.channels.", sizeof(tag) - 1); \ + strncat(tag, dbg_str, sizeof(tag) - 1 - sizeof("com.freerdp.channels.")); \ log = WLog_Get(tag); \ \ msg.Type = WLOG_MESSAGE_TEXT; \ From e393499ff89eaa8c4d5dafce9d4e5f3cd5f94eea Mon Sep 17 00:00:00 2001 From: Norbert Federa Date: Tue, 2 Sep 2014 15:42:44 +0200 Subject: [PATCH 151/170] rdpdr/drive: fixes for hung peers & info requests drive_file_init: only allow directories and regular files This is fixes issue #2071 Even if the server is only interested in getting a file's or directory's attributes FreeRDP still tries to open the object with read permissions. If the FreeRDP client has no read permissions for this object the call will fail which forces the server to perform some expensive workarounds (e.g. getting to the stat buffers via a directory enumeration request). On Linux we can try to open the file or directory with the O_PATH flag in order to obtain a file descriptor who's only purpose is to perform operations that act purely at the file descriptor level. --- channels/drive/client/drive_file.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/channels/drive/client/drive_file.c b/channels/drive/client/drive_file.c index ab3e96837..5f3aa4718 100644 --- a/channels/drive/client/drive_file.c +++ b/channels/drive/client/drive_file.c @@ -49,7 +49,9 @@ #endif #ifdef HAVE_FCNTL_H +#define __USE_GNU /* for O_PATH */ #include +#undef __USE_GNU #endif #ifdef _WIN32 @@ -192,6 +194,11 @@ static BOOL drive_file_init(DRIVE_FILE* file, UINT32 DesiredAccess, UINT32 Creat if (STAT(file->fullpath, &st) == 0) { file->is_dir = (S_ISDIR(st.st_mode) ? TRUE : FALSE); + if (!file->is_dir && !S_ISREG(st.st_mode)) + { + file->err = EPERM; + return TRUE; + } #ifndef WIN32 if (st.st_size > (unsigned long) 0x07FFFFFFF) largeFile = TRUE; @@ -306,6 +313,25 @@ DRIVE_FILE* drive_file_new(const char* base_path, const char* path, UINT32 id, return NULL; } +#if defined(__linux__) && defined(O_PATH) + if (file->fd < 0 && file->err == EACCES) + { + /** + * We have no access permissions for the file or directory but if the + * peer is only interested in reading the object's attributes we can try + * to obtain a file descriptor who's only purpose is to perform + * operations that act purely at the file descriptor level. + * See open(2) + **/ + { + if ((file->fd = OPEN(file->fullpath, O_PATH)) >= 0) + { + file->err = 0; + } + } + } +#endif + return file; } From 6abd9e6be071756a41d950c1fd9f2fdb8d335038 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Tue, 2 Sep 2014 13:31:40 -0400 Subject: [PATCH 152/170] libfreerdp-codec: add more progressive test functions --- include/freerdp/codec/progressive.h | 6 + libfreerdp/codec/progressive.c | 212 +++++++++++++++++++++++----- 2 files changed, 183 insertions(+), 35 deletions(-) diff --git a/include/freerdp/codec/progressive.h b/include/freerdp/codec/progressive.h index 708c7f57d..e18310ed8 100644 --- a/include/freerdp/codec/progressive.h +++ b/include/freerdp/codec/progressive.h @@ -219,6 +219,12 @@ struct _RFX_PROGRESSIVE_TILE RFX_COMPONENT_CODEC_QUANT yBitPos; RFX_COMPONENT_CODEC_QUANT cbBitPos; RFX_COMPONENT_CODEC_QUANT crBitPos; + RFX_COMPONENT_CODEC_QUANT yQuant; + RFX_COMPONENT_CODEC_QUANT cbQuant; + RFX_COMPONENT_CODEC_QUANT crQuant; + RFX_COMPONENT_CODEC_QUANT yProgQuant; + RFX_COMPONENT_CODEC_QUANT cbProgQuant; + RFX_COMPONENT_CODEC_QUANT crProgQuant; }; typedef struct _RFX_PROGRESSIVE_TILE RFX_PROGRESSIVE_TILE; diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index ae4b41014..650031a3b 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -76,6 +76,20 @@ const char* progressive_get_block_type_string(UINT16 blockType) return "PROGRESSIVE_WBT_UNKNOWN"; } +void progressive_component_codec_quant_read(BYTE* block, RFX_COMPONENT_CODEC_QUANT* quantVal) +{ + quantVal->LL3 = block[0] & 0x0F; + quantVal->HL3 = block[0] >> 4; + quantVal->LH3 = block[1] & 0x0F; + quantVal->HH3 = block[1] >> 4; + quantVal->HL2 = block[2] & 0x0F; + quantVal->LH2 = block[2] >> 4; + quantVal->HH2 = block[3] & 0x0F; + quantVal->HL1 = block[3] >> 4; + quantVal->LH1 = block[4] & 0x0F; + quantVal->HH1 = block[4] >> 4; +} + void progressive_rfx_quant_ladd(RFX_COMPONENT_CODEC_QUANT* q, int val) { q->HL1 += val; /* HL1 */ @@ -192,6 +206,21 @@ BOOL progressive_rfx_quant_cmp_greater_equal(RFX_COMPONENT_CODEC_QUANT* q1, RFX_ return TRUE; } +BOOL progressive_rfx_quant_cmp_equal(RFX_COMPONENT_CODEC_QUANT* q1, RFX_COMPONENT_CODEC_QUANT* q2) +{ + if (q1->HL1 != q2->HL1) return FALSE; /* HL1 */ + if (q1->LH1 != q2->LH1) return FALSE; /* LH1 */ + if (q1->HH1 != q2->HH1) return FALSE; /* HH1 */ + if (q1->HL2 != q2->HL2) return FALSE; /* HL2 */ + if (q1->LH2 != q2->LH2) return FALSE; /* LH2 */ + if (q1->HH2 != q2->HH2) return FALSE; /* HH2 */ + if (q1->HL3 != q2->HL3) return FALSE; /* HL3 */ + if (q1->LH3 != q2->LH3) return FALSE; /* LH3 */ + if (q1->HH3 != q2->HH3) return FALSE; /* HH3 */ + if (q1->LL3 != q2->LL3) return FALSE; /* LL3 */ + return TRUE; +} + int progressive_set_surface_data(PROGRESSIVE_CONTEXT* progressive, UINT16 surfaceId, void* pData) { ULONG_PTR key; @@ -695,6 +724,18 @@ int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROG quantProgCb = &(quantProgVal->cbQuantValues); quantProgCr = &(quantProgVal->crQuantValues); + CopyMemory(&(tile->yQuant), quantY, sizeof(RFX_COMPONENT_CODEC_QUANT)); + CopyMemory(&(tile->cbQuant), quantCb, sizeof(RFX_COMPONENT_CODEC_QUANT)); + CopyMemory(&(tile->crQuant), quantCr, sizeof(RFX_COMPONENT_CODEC_QUANT)); + + CopyMemory(&(tile->yProgQuant), quantProgY, sizeof(RFX_COMPONENT_CODEC_QUANT)); + CopyMemory(&(tile->cbProgQuant), quantProgCb, sizeof(RFX_COMPONENT_CODEC_QUANT)); + CopyMemory(&(tile->crProgQuant), quantProgCr, sizeof(RFX_COMPONENT_CODEC_QUANT)); + + progressive_rfx_quant_add(quantY, quantProgY, &(tile->yBitPos)); + progressive_rfx_quant_add(quantCb, quantProgCb, &(tile->cbBitPos)); + progressive_rfx_quant_add(quantCr, quantProgCr, &(tile->crBitPos)); + progressive_rfx_quant_add(quantY, quantProgY, &shiftY); progressive_rfx_quant_lsub(&shiftY, 1); /* -6 + 5 = -1 */ progressive_rfx_quant_add(quantCb, quantProgCb, &shiftCb); @@ -702,10 +743,6 @@ int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROG progressive_rfx_quant_add(quantCr, quantProgCr, &shiftCr); progressive_rfx_quant_lsub(&shiftCr, 1); /* -6 + 5 = -1 */ - CopyMemory(&(tile->yBitPos), quantProgY, sizeof(RFX_COMPONENT_CODEC_QUANT)); - CopyMemory(&(tile->cbBitPos), quantProgCb, sizeof(RFX_COMPONENT_CODEC_QUANT)); - CopyMemory(&(tile->crBitPos), quantProgCr, sizeof(RFX_COMPONENT_CODEC_QUANT)); - if (!tile->data) { tile->data = (BYTE*) _aligned_malloc(64 * 64 * 4, 16); @@ -834,22 +871,21 @@ INT16 progressive_rfx_srl_read(RFX_PROGRESSIVE_UPGRADE_STATE* state, UINT32 numB sign = (bs->accumulator & 0x80000000) ? 1 : 0; BitStream_Shift(bs, 1); - mag = 0; + if (numBits == 1) + return sign ? -1 : 1; + + mag = 1; max = (1 << numBits) - 1; - if (numBits != 2) + while (mag < max) { - do - { - bit = (bs->accumulator & 0x80000000) ? 1 : 0; - BitStream_Shift(bs, 1); + bit = (bs->accumulator & 0x80000000) ? 1 : 0; + BitStream_Shift(bs, 1); - if (bit) - break; + if (bit) + break; - mag++; - } - while (mag <= max); + mag++; } state->kp -= 6; @@ -925,6 +961,102 @@ int progressive_rfx_upgrade_block(RFX_PROGRESSIVE_UPGRADE_STATE* state, INT16* b return 1; } +int progressive_rfx_upgrade_block_count_raw(BOOL nonLL, INT16* sign, int length, int numBits) +{ + int index; + int count = 0; + + if (numBits < 0) + return 0; + + if (!nonLL) + { + count = length; + return (count * numBits); + } + + for (index = 0; index < length; index++) + { + if (sign[index] != 0) + count++; + } + + return (count * numBits); +} + +int progressive_rfx_upgrade_component_count_raw(RFX_COMPONENT_CODEC_QUANT* numBits, INT16* sign, int delta) +{ + int count = 0; + + count += progressive_rfx_upgrade_block_count_raw(TRUE, &sign[0], 1023, numBits->HL1 + delta); /* HL1 */ + count += progressive_rfx_upgrade_block_count_raw(TRUE, &sign[1023], 1023, numBits->LH1 + delta); /* LH1 */ + count += progressive_rfx_upgrade_block_count_raw(TRUE, &sign[2046], 961, numBits->HH1 + delta); /* HH1 */ + count += progressive_rfx_upgrade_block_count_raw(TRUE, &sign[3007], 272, numBits->HL2 + delta); /* HL2 */ + count += progressive_rfx_upgrade_block_count_raw(TRUE, &sign[3279], 272, numBits->LH2 + delta); /* LH2 */ + count += progressive_rfx_upgrade_block_count_raw(TRUE, &sign[3551], 256, numBits->HH2 + delta); /* HH2 */ + count += progressive_rfx_upgrade_block_count_raw(TRUE, &sign[3807], 72, numBits->HL3 + delta); /* HL3 */ + count += progressive_rfx_upgrade_block_count_raw(TRUE, &sign[3879], 72, numBits->LH3 + delta); /* LH3 */ + count += progressive_rfx_upgrade_block_count_raw(TRUE, &sign[3951], 64, numBits->HH3 + delta); /* HH3 */ + count += progressive_rfx_upgrade_block_count_raw(FALSE, &sign[4015], 81, numBits->LL3 + delta); /* LL3 */ + + return (count + 7) / 8; +} + +int progressive_rfx_upgrade_component_fix_count(RFX_COMPONENT_CODEC_QUANT* numBits, INT16* sign, int rawLen) +{ + int delta = 0; + int count = 0; + int p_count = 0; + int count_n[3] = { 0 }; + int p_count_n[3] = { 0 }; + int count_p[3] = { 0 }; + int p_count_p[3] = { 0 }; + + count_n[0] = progressive_rfx_upgrade_component_count_raw(numBits, sign, -1); + count_n[1] = progressive_rfx_upgrade_component_count_raw(numBits, sign, -2); + count_n[2] = progressive_rfx_upgrade_component_count_raw(numBits, sign, -3); + + count = progressive_rfx_upgrade_component_count_raw(numBits, sign, 0); + + count_p[0] = progressive_rfx_upgrade_component_count_raw(numBits, sign, 1); + count_p[1] = progressive_rfx_upgrade_component_count_raw(numBits, sign, 2); + count_p[2] = progressive_rfx_upgrade_component_count_raw(numBits, sign, 3); + + if (rawLen) + { + p_count_n[0] = (int) ((((float) count_n[0]) / ((float) rawLen)) * 100.0f); + p_count_n[1] = (int) ((((float) count_n[1]) / ((float) rawLen)) * 100.0f); + p_count_n[2] = (int) ((((float) count_n[2]) / ((float) rawLen)) * 100.0f); + + p_count = (int) ((((float) count) / ((float) rawLen)) * 100.0f); + + p_count_p[0] = (int) ((((float) count_p[0]) / ((float) rawLen)) * 100.0f); + p_count_p[1] = (int) ((((float) count_p[1]) / ((float) rawLen)) * 100.0f); + p_count_p[2] = (int) ((((float) count_p[2]) / ((float) rawLen)) * 100.0f); + } + + if (p_count_n[0] == 100) + delta = -1; + if (p_count_n[1] == 100) + delta = -2; + if (p_count_n[2] == 100) + delta = -3; + + if (p_count_p[0] == 100) + delta = 1; + if (p_count_p[1] == 100) + delta = 2; + if (p_count_p[2] == 100) + delta = 3; + + printf("NumBitsFix: -3: %d -2: %d -1: %d 0: %d 1: %d 2: %d 3: %d\n", + p_count_n[2], p_count_n[1], p_count_n[0], p_count, p_count_p[0], p_count_p[1], p_count_p[2]); + printf("NumBitsFix HL1: %d LH1: %d HH1: %d HL2: %d LH2: %d HH2: %d HL3: %d LH3: %d HH3: %d LL3: %d\n", + numBits->HL1, numBits->LH1, numBits->HH1, numBits->HL2, numBits->LH2, numBits->HH2, numBits->HL3, numBits->LH3, numBits->HH3, numBits->LL3); + + return delta; +} + int progressive_rfx_upgrade_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPONENT_CODEC_QUANT* bitPos, RFX_COMPONENT_CODEC_QUANT* numBits, INT16* buffer, INT16* current, INT16* sign, const BYTE* srlData, int srlLen, const BYTE* rawData, int rawLen) @@ -939,6 +1071,8 @@ int progressive_rfx_upgrade_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMP ZeroMemory(&s_raw, sizeof(wBitStream)); ZeroMemory(&state, sizeof(RFX_PROGRESSIVE_UPGRADE_STATE)); + progressive_rfx_upgrade_component_fix_count(numBits, sign, rawLen); + state.kp = 8; state.k = state.kp / 8; state.srl = &s_srl; @@ -998,6 +1132,9 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR INT16* pSrcDst[3]; INT16* pCurrent[3]; PROGRESSIVE_BLOCK_REGION* region; + RFX_COMPONENT_CODEC_QUANT yBitPos; + RFX_COMPONENT_CODEC_QUANT cbBitPos; + RFX_COMPONENT_CODEC_QUANT crBitPos; RFX_COMPONENT_CODEC_QUANT yNumBits; RFX_COMPONENT_CODEC_QUANT cbNumBits; RFX_COMPONENT_CODEC_QUANT crNumBits; @@ -1052,13 +1189,32 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR quantProgCb = &(quantProg->cbQuantValues); quantProgCr = &(quantProg->crQuantValues); - progressive_rfx_quant_sub(&(tile->yBitPos), quantProgY, &yNumBits); - progressive_rfx_quant_sub(&(tile->cbBitPos), quantProgCb, &cbNumBits); - progressive_rfx_quant_sub(&(tile->crBitPos), quantProgCr, &crNumBits); + if (!progressive_rfx_quant_cmp_equal(quantY, &(tile->yQuant))) + printf("warning: non-progressive quantY has changed!\n"); + if (!progressive_rfx_quant_cmp_equal(quantCb, &(tile->cbQuant))) + printf("warning: non-progressive quantCb has changed!\n"); + if (!progressive_rfx_quant_cmp_equal(quantCr, &(tile->crQuant))) + printf("warning: non-progressive quantCr has changed!\n"); - CopyMemory(&(tile->yBitPos), quantProgY, sizeof(RFX_COMPONENT_CODEC_QUANT)); - CopyMemory(&(tile->cbBitPos), quantProgCb, sizeof(RFX_COMPONENT_CODEC_QUANT)); - CopyMemory(&(tile->crBitPos), quantProgCr, sizeof(RFX_COMPONENT_CODEC_QUANT)); + progressive_rfx_quant_add(quantY, quantProgY, &yBitPos); + progressive_rfx_quant_add(quantCb, quantProgCb, &cbBitPos); + progressive_rfx_quant_add(quantCr, quantProgCr, &crBitPos); + + progressive_rfx_quant_sub(&(tile->yBitPos), &yBitPos, &yNumBits); + progressive_rfx_quant_sub(&(tile->cbBitPos), &cbBitPos, &cbNumBits); + progressive_rfx_quant_sub(&(tile->crBitPos), &crBitPos, &crNumBits); + + CopyMemory(&(tile->yBitPos), &yBitPos, sizeof(RFX_COMPONENT_CODEC_QUANT)); + CopyMemory(&(tile->cbBitPos), &cbBitPos, sizeof(RFX_COMPONENT_CODEC_QUANT)); + CopyMemory(&(tile->crBitPos), &crBitPos, sizeof(RFX_COMPONENT_CODEC_QUANT)); + + CopyMemory(&(tile->yQuant), quantY, sizeof(RFX_COMPONENT_CODEC_QUANT)); + CopyMemory(&(tile->cbQuant), quantCb, sizeof(RFX_COMPONENT_CODEC_QUANT)); + CopyMemory(&(tile->crQuant), quantCr, sizeof(RFX_COMPONENT_CODEC_QUANT)); + + CopyMemory(&(tile->yProgQuant), quantProgY, sizeof(RFX_COMPONENT_CODEC_QUANT)); + CopyMemory(&(tile->cbProgQuant), quantProgCb, sizeof(RFX_COMPONENT_CODEC_QUANT)); + CopyMemory(&(tile->crProgQuant), quantProgCr, sizeof(RFX_COMPONENT_CODEC_QUANT)); pBuffer = tile->sign; pSign[0] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 0) + 16])); /* Y/R buffer */ @@ -1383,20 +1539,6 @@ int progressive_process_tiles(PROGRESSIVE_CONTEXT* progressive, BYTE* blocks, UI return (int) offset; } -void progressive_component_codec_quant_read(BYTE* block, RFX_COMPONENT_CODEC_QUANT* quantVal) -{ - quantVal->LL3 = block[0] & 0x0F; - quantVal->HL3 = block[0] >> 4; - quantVal->LH3 = block[1] & 0x0F; - quantVal->HH3 = block[1] >> 4; - quantVal->HL2 = block[2] & 0x0F; - quantVal->LH2 = block[2] >> 4; - quantVal->HH2 = block[3] & 0x0F; - quantVal->HL1 = block[3] >> 4; - quantVal->LH1 = block[4] & 0x0F; - quantVal->HH1 = block[4] >> 4; -} - int progressive_decompress(PROGRESSIVE_CONTEXT* progressive, BYTE* pSrcData, UINT32 SrcSize, BYTE** ppDstData, DWORD DstFormat, int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight, UINT16 surfaceId) { From f79be532f0d6b415026ff6c1ef60c17808fb4f5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Tue, 2 Sep 2014 18:15:36 -0400 Subject: [PATCH 153/170] libfreerdp-codec: fix and improve SRL decoder --- libfreerdp/codec/progressive.c | 182 ++----- .../codec/test/TestFreeRDPCodecProgressive.c | 488 +++++++++++++++++- 2 files changed, 540 insertions(+), 130 deletions(-) diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index 650031a3b..909d0886d 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -688,8 +688,10 @@ int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROG diff = tile->flags & RFX_TILE_DIFFERENCE; +#if 0 printf("ProgressiveTileFirst: quantIdx Y: %d Cb: %d Cr: %d xIdx: %d yIdx: %d flags: 0x%02X quality: %d yLen: %d cbLen: %d crLen: %d tailLen: %d\n", tile->quantIdxY, tile->quantIdxCb, tile->quantIdxCr, tile->xIdx, tile->yIdx, tile->flags, tile->quality, tile->yLen, tile->cbLen, tile->crLen, tile->tailLen); +#endif region = &(progressive->region); @@ -798,7 +800,6 @@ struct _RFX_PROGRESSIVE_UPGRADE_STATE /* SRL state */ - int k; int kp; int nz; BOOL mode; @@ -807,6 +808,7 @@ typedef struct _RFX_PROGRESSIVE_UPGRADE_STATE RFX_PROGRESSIVE_UPGRADE_STATE; INT16 progressive_rfx_srl_read(RFX_PROGRESSIVE_UPGRADE_STATE* state, UINT32 numBits) { + int k; UINT32 bit; UINT32 max; UINT32 mag; @@ -819,6 +821,8 @@ INT16 progressive_rfx_srl_read(RFX_PROGRESSIVE_UPGRADE_STATE* state, UINT32 numB return 0; } + k = state->kp / 8; + if (!state->mode) { /* zero encoding */ @@ -830,35 +834,35 @@ INT16 progressive_rfx_srl_read(RFX_PROGRESSIVE_UPGRADE_STATE* state, UINT32 numB { /* '0' bit, nz >= (1 << k), nz = (1 << k) */ - state->nz = (1 << state->k); + state->nz = (1 << k); state->kp += 4; if (state->kp > 80) state->kp = 80; - state->k = state->kp / 8; - state->nz--; return 0; } - - /* '1' bit, nz < (1 << k), nz = next k bits */ - - state->nz = 0; - - if (state->k) + else { - bs->mask = ((1 << state->k) - 1); - state->nz = ((bs->accumulator >> (32 - state->k)) & bs->mask); - BitStream_Shift(bs, state->k); - } + /* '1' bit, nz < (1 << k), nz = next k bits */ - if (state->nz) - { + state->nz = 0; state->mode = 1; /* unary encoding is next */ - state->nz--; - return 0; + + if (k) + { + bs->mask = ((1 << k) - 1); + state->nz = ((bs->accumulator >> (32 - k)) & bs->mask); + BitStream_Shift(bs, k); + } + + if (state->nz) + { + state->nz--; + return 0; + } } } @@ -871,6 +875,11 @@ INT16 progressive_rfx_srl_read(RFX_PROGRESSIVE_UPGRADE_STATE* state, UINT32 numB sign = (bs->accumulator & 0x80000000) ? 1 : 0; BitStream_Shift(bs, 1); + state->kp -= 6; + + if (state->kp < 0) + state->kp = 0; + if (numBits == 1) return sign ? -1 : 1; @@ -888,18 +897,12 @@ INT16 progressive_rfx_srl_read(RFX_PROGRESSIVE_UPGRADE_STATE* state, UINT32 numB mag++; } - state->kp -= 6; - - if (state->kp < 0) - state->kp = 0; - - state->k = state->kp / 8; - return sign ? -mag : mag; } int progressive_rfx_upgrade_block(RFX_PROGRESSIVE_UPGRADE_STATE* state, INT16* buffer, INT16* sign, int length, UINT32 bitPos, UINT32 numBits) { + int pad; int index; INT16 input; wBitStream* srl; @@ -924,6 +927,21 @@ int progressive_rfx_upgrade_block(RFX_PROGRESSIVE_UPGRADE_STATE* state, INT16* b buffer[index] += (input << bitPos); } + /* This is the last band, read padding bits from RAW and SRL bit streams */ + + pad = (raw->position % 8) ? (8 - (raw->position % 8)) : 0; + + if (pad) + BitStream_Shift(raw, pad); + + pad = (srl->position % 8) ? (8 - (srl->position % 8)) : 0; + + if (pad) + BitStream_Shift(srl, pad); + + if (BitStream_GetRemainingLength(srl) == 8) + BitStream_Shift(srl, 8); + return 1; } @@ -961,102 +979,6 @@ int progressive_rfx_upgrade_block(RFX_PROGRESSIVE_UPGRADE_STATE* state, INT16* b return 1; } -int progressive_rfx_upgrade_block_count_raw(BOOL nonLL, INT16* sign, int length, int numBits) -{ - int index; - int count = 0; - - if (numBits < 0) - return 0; - - if (!nonLL) - { - count = length; - return (count * numBits); - } - - for (index = 0; index < length; index++) - { - if (sign[index] != 0) - count++; - } - - return (count * numBits); -} - -int progressive_rfx_upgrade_component_count_raw(RFX_COMPONENT_CODEC_QUANT* numBits, INT16* sign, int delta) -{ - int count = 0; - - count += progressive_rfx_upgrade_block_count_raw(TRUE, &sign[0], 1023, numBits->HL1 + delta); /* HL1 */ - count += progressive_rfx_upgrade_block_count_raw(TRUE, &sign[1023], 1023, numBits->LH1 + delta); /* LH1 */ - count += progressive_rfx_upgrade_block_count_raw(TRUE, &sign[2046], 961, numBits->HH1 + delta); /* HH1 */ - count += progressive_rfx_upgrade_block_count_raw(TRUE, &sign[3007], 272, numBits->HL2 + delta); /* HL2 */ - count += progressive_rfx_upgrade_block_count_raw(TRUE, &sign[3279], 272, numBits->LH2 + delta); /* LH2 */ - count += progressive_rfx_upgrade_block_count_raw(TRUE, &sign[3551], 256, numBits->HH2 + delta); /* HH2 */ - count += progressive_rfx_upgrade_block_count_raw(TRUE, &sign[3807], 72, numBits->HL3 + delta); /* HL3 */ - count += progressive_rfx_upgrade_block_count_raw(TRUE, &sign[3879], 72, numBits->LH3 + delta); /* LH3 */ - count += progressive_rfx_upgrade_block_count_raw(TRUE, &sign[3951], 64, numBits->HH3 + delta); /* HH3 */ - count += progressive_rfx_upgrade_block_count_raw(FALSE, &sign[4015], 81, numBits->LL3 + delta); /* LL3 */ - - return (count + 7) / 8; -} - -int progressive_rfx_upgrade_component_fix_count(RFX_COMPONENT_CODEC_QUANT* numBits, INT16* sign, int rawLen) -{ - int delta = 0; - int count = 0; - int p_count = 0; - int count_n[3] = { 0 }; - int p_count_n[3] = { 0 }; - int count_p[3] = { 0 }; - int p_count_p[3] = { 0 }; - - count_n[0] = progressive_rfx_upgrade_component_count_raw(numBits, sign, -1); - count_n[1] = progressive_rfx_upgrade_component_count_raw(numBits, sign, -2); - count_n[2] = progressive_rfx_upgrade_component_count_raw(numBits, sign, -3); - - count = progressive_rfx_upgrade_component_count_raw(numBits, sign, 0); - - count_p[0] = progressive_rfx_upgrade_component_count_raw(numBits, sign, 1); - count_p[1] = progressive_rfx_upgrade_component_count_raw(numBits, sign, 2); - count_p[2] = progressive_rfx_upgrade_component_count_raw(numBits, sign, 3); - - if (rawLen) - { - p_count_n[0] = (int) ((((float) count_n[0]) / ((float) rawLen)) * 100.0f); - p_count_n[1] = (int) ((((float) count_n[1]) / ((float) rawLen)) * 100.0f); - p_count_n[2] = (int) ((((float) count_n[2]) / ((float) rawLen)) * 100.0f); - - p_count = (int) ((((float) count) / ((float) rawLen)) * 100.0f); - - p_count_p[0] = (int) ((((float) count_p[0]) / ((float) rawLen)) * 100.0f); - p_count_p[1] = (int) ((((float) count_p[1]) / ((float) rawLen)) * 100.0f); - p_count_p[2] = (int) ((((float) count_p[2]) / ((float) rawLen)) * 100.0f); - } - - if (p_count_n[0] == 100) - delta = -1; - if (p_count_n[1] == 100) - delta = -2; - if (p_count_n[2] == 100) - delta = -3; - - if (p_count_p[0] == 100) - delta = 1; - if (p_count_p[1] == 100) - delta = 2; - if (p_count_p[2] == 100) - delta = 3; - - printf("NumBitsFix: -3: %d -2: %d -1: %d 0: %d 1: %d 2: %d 3: %d\n", - p_count_n[2], p_count_n[1], p_count_n[0], p_count, p_count_p[0], p_count_p[1], p_count_p[2]); - printf("NumBitsFix HL1: %d LH1: %d HH1: %d HL2: %d LH2: %d HH2: %d HL3: %d LH3: %d HH3: %d LL3: %d\n", - numBits->HL1, numBits->LH1, numBits->HH1, numBits->HL2, numBits->LH2, numBits->HH2, numBits->HL3, numBits->LH3, numBits->HH3, numBits->LL3); - - return delta; -} - int progressive_rfx_upgrade_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPONENT_CODEC_QUANT* bitPos, RFX_COMPONENT_CODEC_QUANT* numBits, INT16* buffer, INT16* current, INT16* sign, const BYTE* srlData, int srlLen, const BYTE* rawData, int rawLen) @@ -1071,10 +993,8 @@ int progressive_rfx_upgrade_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMP ZeroMemory(&s_raw, sizeof(wBitStream)); ZeroMemory(&state, sizeof(RFX_PROGRESSIVE_UPGRADE_STATE)); - progressive_rfx_upgrade_component_fix_count(numBits, sign, rawLen); - state.kp = 8; - state.k = state.kp / 8; + state.mode = 0; state.srl = &s_srl; state.raw = &s_raw; @@ -1114,9 +1034,11 @@ int progressive_rfx_upgrade_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMP if (srlLen) pSrlLen = (int) ((((float) aSrlLen) / ((float) srlLen)) * 100.0f); - printf("RAW: %d/%d %d%% SRL: %d/%d %d%%\n", - aRawLen, rawLen, pRawLen, - aSrlLen, srlLen, pSrlLen); + printf("RAW: %d/%d %d%% (%d/%d:%d)\tSRL: %d/%d %d%% (%d/%d:%d)\n", + aRawLen, rawLen, pRawLen, state.raw->position, rawLen * 8, + (rawLen * 8) - state.raw->position, + aSrlLen, srlLen, pSrlLen, state.srl->position, srlLen * 8, + (srlLen * 8) - state.srl->position); return -1; } @@ -1151,10 +1073,12 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR tile->pass++; if (tile->pass > 2) - return 1; /* skip for now */ + return -1; /* skip for now */ +#if 0 printf("ProgressiveTileUpgrade: pass: %d quantIdx Y: %d Cb: %d Cr: %d xIdx: %d yIdx: %d quality: %d ySrlLen: %d yRawLen: %d cbSrlLen: %d cbRawLen: %d crSrlLen: %d crRawLen: %d\n", tile->pass, tile->quantIdxY, tile->quantIdxCb, tile->quantIdxCr, tile->xIdx, tile->yIdx, tile->quality, tile->ySrlLen, tile->yRawLen, tile->cbSrlLen, tile->cbRawLen, tile->crSrlLen, tile->crRawLen); +#endif region = &(progressive->region); @@ -1581,7 +1505,7 @@ int progressive_decompress(PROGRESSIVE_CONTEXT* progressive, BYTE* pSrcData, UIN blockLen = *((UINT32*) &block[boffset + 2]); /* blockLen (4 bytes) */ boffset += 6; - printf("%s\n", progressive_get_block_type_string(blockType)); + //printf("%s\n", progressive_get_block_type_string(blockType)); if ((blocksLen - offset) < blockLen) return -1003; diff --git a/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c b/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c index 320329300..0a5ebba5a 100644 --- a/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c +++ b/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c @@ -1,10 +1,496 @@ #include +#include #include #include -int TestFreeRDPCodecProgressive(int argc, char* argv[]) +/** + * Microsoft Progressive Codec Sample Data + * (available under NDA only) + * + * ____. + * + * readme.pdf + * + * bitmaps/ + * 1920by1080-SampleImage1.bmp + * 1920by1080-SampleImage2.bmp + * 1920by1080-SampleImage3.bmp + * + * compress/ + * enc_0_0_025_sampleimage1.bin + * enc_0_0_050_sampleimage1.bin + * enc_0_0_075_sampleimage1.bin + * enc_0_0_100_sampleimage1.bin + * enc_0_1_025_sampleimage1.bin + * enc_0_1_050_sampleimage1.bin + * enc_0_1_075_sampleimage1.bin + * enc_0_1_100_sampleimage1.bin + * enc_0_2_025_sampleimage1.bin + * enc_0_2_050_sampleimage1.bin + * enc_0_2_075_sampleimage1.bin + * enc_0_2_100_sampleimage1.bin + * enc_0_3_025_sampleimage1.bin + * enc_0_3_050_sampleimage1.bin + * enc_0_3_075_sampleimage1.bin + * enc_0_3_100_sampleimage1.bin + * enc_1_0_025_sampleimage2.bin + * enc_1_0_050_sampleimage2.bin + * enc_1_0_075_sampleimage2.bin + * enc_1_0_100_sampleimage2.bin + * enc_1_1_025_sampleimage2.bin + * enc_1_1_050_sampleimage2.bin + * enc_1_1_075_sampleimage2.bin + * enc_1_1_100_sampleimage2.bin + * enc_1_2_025_sampleimage2.bin + * enc_1_2_050_sampleimage2.bin + * enc_1_2_075_sampleimage2.bin + * enc_1_2_100_sampleimage2.bin + * enc_1_3_025_sampleimage2.bin + * enc_1_3_050_sampleimage2.bin + * enc_1_3_075_sampleimage2.bin + * enc_1_3_100_sampleimage2.bin + * enc_2_0_025_sampleimage3.bin + * enc_2_0_050_sampleimage3.bin + * enc_2_0_075_sampleimage3.bin + * enc_2_0_100_sampleimage3.bin + * enc_2_1_025_sampleimage3.bin + * enc_2_1_050_sampleimage3.bin + * enc_2_1_075_sampleimage3.bin + * enc_2_1_100_sampleimage3.bin + * enc_2_2_025_sampleimage3.bin + * enc_2_2_050_sampleimage3.bin + * enc_2_2_075_sampleimage3.bin + * enc_2_2_100_sampleimage3.bin + * enc_2_3_025_sampleimage3.bin + * enc_2_3_050_sampleimage3.bin + * enc_2_3_075_sampleimage3.bin + * enc_2_3_100_sampleimage3.bin + * + * decompress/ + * dec_0_0_025_sampleimage1.bmp + * dec_0_0_050_sampleimage1.bmp + * dec_0_0_075_sampleimage1.bmp + * dec_0_0_100_sampleimage1.bmp + * dec_0_1_025_sampleimage1.bmp + * dec_0_1_050_sampleimage1.bmp + * dec_0_1_075_sampleimage1.bmp + * dec_0_1_100_sampleimage1.bmp + * dec_0_2_025_sampleimage1.bmp + * dec_0_2_050_sampleimage1.bmp + * dec_0_2_075_sampleimage1.bmp + * dec_0_2_100_sampleimage1.bmp + * dec_0_3_025_sampleimage1.bmp + * dec_0_3_050_sampleimage1.bmp + * dec_0_3_075_sampleimage1.bmp + * dec_0_3_100_sampleimage1.bmp + * dec_1_0_025_sampleimage2.bmp + * dec_1_0_050_sampleimage2.bmp + * dec_1_0_075_sampleimage2.bmp + * dec_1_0_100_sampleimage2.bmp + * dec_1_1_025_sampleimage2.bmp + * dec_1_1_050_sampleimage2.bmp + * dec_1_1_075_sampleimage2.bmp + * dec_1_1_100_sampleimage2.bmp + * dec_1_2_025_sampleimage2.bmp + * dec_1_2_050_sampleimage2.bmp + * dec_1_2_075_sampleimage2.bmp + * dec_1_2_100_sampleimage2.bmp + * dec_1_3_025_sampleimage2.bmp + * dec_1_3_050_sampleimage2.bmp + * dec_1_3_075_sampleimage2.bmp + * dec_1_3_100_sampleimage2.bmp + * dec_2_0_025_sampleimage3.bmp + * dec_2_0_050_sampleimage3.bmp + * dec_2_0_075_sampleimage3.bmp + * dec_2_0_100_sampleimage3.bmp + * dec_2_1_025_sampleimage3.bmp + * dec_2_1_050_sampleimage3.bmp + * dec_2_1_075_sampleimage3.bmp + * dec_2_1_100_sampleimage3.bmp + * dec_2_2_025_sampleimage3.bmp + * dec_2_2_050_sampleimage3.bmp + * dec_2_2_075_sampleimage3.bmp + * dec_2_2_100_sampleimage3.bmp + * dec_2_3_025_sampleimage3.bmp + * dec_2_3_050_sampleimage3.bmp + * dec_2_3_075_sampleimage3.bmp + * dec_2_3_100_sampleimage3.bmp + */ + +struct _EGFX_SAMPLE_FILE { + BYTE* buffer; + UINT32 size; +}; +typedef struct _EGFX_SAMPLE_FILE EGFX_SAMPLE_FILE; + +BYTE* test_progressive_load_file(char* path, char* file, UINT32* size) +{ + FILE* fp; + BYTE* buffer; + char* filename; + + filename = GetCombinedPath(path, file); + + fp = fopen(filename, "r"); + + if (!fp) + return NULL; + + fseek(fp, 0, SEEK_END); + *size = ftell(fp); + fseek(fp, 0, SEEK_SET); + + buffer = (BYTE*) malloc(*size); + + if (!buffer) + return NULL; + + if (fread(buffer, *size, 1, fp) != 1) + return NULL; + + free(filename); + fclose(fp); + + return buffer; +} + +int test_progressive_load_files(char* ms_sample_path, EGFX_SAMPLE_FILE files[3][4][4]) +{ + int imageNo = 0; + int quarterNo = 0; + int passNo = 0; + + /* image 1 */ + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_0_0_025_sampleimage1.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_0_0_050_sampleimage1.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_0_0_075_sampleimage1.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_0_0_100_sampleimage1.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + quarterNo = (quarterNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_0_1_025_sampleimage1.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_0_1_050_sampleimage1.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_0_1_075_sampleimage1.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_0_1_100_sampleimage1.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + quarterNo = (quarterNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_0_2_025_sampleimage1.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_0_2_050_sampleimage1.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_0_2_075_sampleimage1.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_0_2_100_sampleimage1.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + quarterNo = (quarterNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_0_3_025_sampleimage1.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_0_3_050_sampleimage1.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_0_3_075_sampleimage1.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_0_3_100_sampleimage1.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + imageNo++; + + /* image 2 */ + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_1_0_025_sampleimage2.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_1_0_050_sampleimage2.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_1_0_075_sampleimage2.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_1_0_100_sampleimage2.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + quarterNo = (quarterNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_1_1_025_sampleimage2.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_1_1_050_sampleimage2.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_1_1_075_sampleimage2.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_1_1_100_sampleimage2.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + quarterNo = (quarterNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_1_2_025_sampleimage2.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_1_2_050_sampleimage2.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_1_2_075_sampleimage2.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_1_2_100_sampleimage2.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + quarterNo = (quarterNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_1_3_025_sampleimage2.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_1_3_050_sampleimage2.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_1_3_075_sampleimage2.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_1_3_100_sampleimage2.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + imageNo++; + + /* image 3 */ + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_2_0_025_sampleimage3.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_2_0_050_sampleimage3.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_2_0_075_sampleimage3.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_2_0_100_sampleimage3.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + quarterNo = (quarterNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_2_1_025_sampleimage3.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_2_1_050_sampleimage3.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_2_1_075_sampleimage3.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_2_1_100_sampleimage3.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + quarterNo = (quarterNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_2_2_025_sampleimage3.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_2_2_050_sampleimage3.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_2_2_075_sampleimage3.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_2_2_100_sampleimage3.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + quarterNo = (quarterNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_2_3_025_sampleimage3.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_2_3_050_sampleimage3.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_2_3_075_sampleimage3.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + files[imageNo][quarterNo][passNo].buffer = test_progressive_load_file(ms_sample_path, + "compress/enc_2_3_100_sampleimage3.bin", &(files[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + /* check if all test data has been loaded */ + + for (imageNo = 0; imageNo < 3; imageNo++) + { + for (quarterNo = 0; quarterNo < 4; quarterNo++) + { + for (passNo = 0; passNo < 4; passNo++) + { + if (!files[imageNo][quarterNo][passNo].buffer) + return -1; + } + } + } + + return 1; +} + +static int g_Width = 0; +static int g_Height = 0; +static int g_DstStep = 0; +static BYTE* g_DstData = NULL; + +int test_progressive_decode(PROGRESSIVE_CONTEXT* progressive, EGFX_SAMPLE_FILE files[4], int count) +{ + int pass; + int status; + + for (pass = 0; pass < count; pass++) + { + status = progressive_decompress(progressive, files[pass].buffer, files[pass].size, + &g_DstData, PIXEL_FORMAT_XRGB32, g_DstStep, 0, 0, g_Width, g_Height, 0); + + printf("ProgressiveDecompress: status: %d pass: %d\n", status, pass + 1); + } + + return 1; +} + +int test_progressive_ms_sample(char* ms_sample_path) +{ + int count; + int status; + EGFX_SAMPLE_FILE files[3][4][4]; + PROGRESSIVE_CONTEXT* progressive; + + g_Width = 1920; + g_Height = 1080; + g_DstStep = g_Width * 4; + + status = test_progressive_load_files(ms_sample_path, files); + + if (status < 0) + return -1; + + count = 2; + + progressive = progressive_context_new(FALSE); + + g_DstData = _aligned_malloc(g_DstStep * g_Height, 16); + + progressive_create_surface_context(progressive, 0, g_Width, g_Height); + + /* image 1 */ + + if (1) + { + test_progressive_decode(progressive, files[0][0], count); + test_progressive_decode(progressive, files[0][1], count); + test_progressive_decode(progressive, files[0][2], count); + test_progressive_decode(progressive, files[0][3], count); + } + + /* image 2 */ + + if (1) + { + test_progressive_decode(progressive, files[1][0], count); + test_progressive_decode(progressive, files[1][1], count); + test_progressive_decode(progressive, files[1][2], count); + test_progressive_decode(progressive, files[1][3], count); + } + + /* image 3 */ + + if (1) + { + test_progressive_decode(progressive, files[2][0], count); + test_progressive_decode(progressive, files[2][1], count); + test_progressive_decode(progressive, files[2][2], count); + test_progressive_decode(progressive, files[2][3], count); + } + + progressive_context_free(progressive); + + _aligned_free(g_DstData); + return 0; } +int TestFreeRDPCodecProgressive(int argc, char* argv[]) +{ + char* ms_sample_path; + + ms_sample_path = _strdup("/tmp/EGFX_PROGRESSIVE_MS_SAMPLE"); + + if (PathFileExistsA(ms_sample_path)) + return test_progressive_ms_sample(ms_sample_path); + + free(ms_sample_path); + + return 0; +} From 1491c5a7f977f641a14d5bf13017744497c457d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Tue, 2 Sep 2014 19:25:01 -0400 Subject: [PATCH 154/170] libfreerdp-codec: initial partial upgrade tile support --- client/X11/xf_gfx.c | 9 +-- libfreerdp/codec/progressive.c | 71 ++++++++++++------- .../codec/test/TestFreeRDPCodecProgressive.c | 2 +- 3 files changed, 50 insertions(+), 32 deletions(-) diff --git a/client/X11/xf_gfx.c b/client/X11/xf_gfx.c index 6ca4acf48..50e4bf8d5 100644 --- a/client/X11/xf_gfx.c +++ b/client/X11/xf_gfx.c @@ -512,7 +512,8 @@ int xf_SurfaceCommand_Progressive(xfContext* xfc, RdpgfxClientContext* context, return -1; } - printf("xf_SurfaceCommand_Progressive: status: %d\n", status); + printf("xf_SurfaceCommand_Progressive: status: %d surfaceId: %d contextId: %d\n", status, + cmd->surfaceId, cmd->contextId); region = &(xfc->progressive->region); @@ -534,9 +535,6 @@ int xf_SurfaceCommand_Progressive(xfContext* xfc, RdpgfxClientContext* context, { tile = region->tiles[i]; - if (tile->blockType == PROGRESSIVE_WBT_TILE_UPGRADE) - continue; - updateRect.left = cmd->left + tile->x; updateRect.top = cmd->top + tile->y; updateRect.right = updateRect.left + 64; @@ -616,6 +614,9 @@ int xf_SurfaceCommand(RdpgfxClientContext* context, RDPGFX_SURFACE_COMMAND* cmd) int xf_DeleteEncodingContext(RdpgfxClientContext* context, RDPGFX_DELETE_ENCODING_CONTEXT_PDU* deleteEncodingContext) { + printf("DeleteEncodingContext: surfaceId: %d codecId: %d\n", + deleteEncodingContext->surfaceId, + deleteEncodingContext->codecContextId); return 1; } diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index 909d0886d..a1b2fa216 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -787,7 +787,7 @@ int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROG BufferPool_Return(progressive->bufferPool, pBuffer); - WLog_Image(progressive->log, WLOG_TRACE, tile->data, 64, 64, 32); + //WLog_Image(progressive->log, WLOG_TRACE, tile->data, 64, 64, 32); return 1; } @@ -900,7 +900,8 @@ INT16 progressive_rfx_srl_read(RFX_PROGRESSIVE_UPGRADE_STATE* state, UINT32 numB return sign ? -mag : mag; } -int progressive_rfx_upgrade_block(RFX_PROGRESSIVE_UPGRADE_STATE* state, INT16* buffer, INT16* sign, int length, UINT32 bitPos, UINT32 numBits) +int progressive_rfx_upgrade_block(RFX_PROGRESSIVE_UPGRADE_STATE* state, INT16* buffer, + INT16* sign, int length, UINT32 shift, UINT32 bitPos, UINT32 numBits) { int pad; int index; @@ -908,8 +909,6 @@ int progressive_rfx_upgrade_block(RFX_PROGRESSIVE_UPGRADE_STATE* state, INT16* b wBitStream* srl; wBitStream* raw; - //printf("bitPos: %d numBits: %d\n", bitPos, numBits); - if (!numBits) return 1; @@ -924,7 +923,7 @@ int progressive_rfx_upgrade_block(RFX_PROGRESSIVE_UPGRADE_STATE* state, INT16* b input = (INT16) ((raw->accumulator >> (32 - numBits)) & raw->mask); BitStream_Shift(raw, numBits); - buffer[index] += (input << bitPos); + buffer[index] += (input << shift); } /* This is the last band, read padding bits from RAW and SRL bit streams */ @@ -972,17 +971,18 @@ int progressive_rfx_upgrade_block(RFX_PROGRESSIVE_UPGRADE_STATE* state, INT16* b input = progressive_rfx_srl_read(state, numBits); } - buffer[index] += (input << bitPos); + buffer[index] += (input << shift); sign[index] = input; } return 1; } -int progressive_rfx_upgrade_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPONENT_CODEC_QUANT* bitPos, - RFX_COMPONENT_CODEC_QUANT* numBits, INT16* buffer, INT16* current, INT16* sign, - const BYTE* srlData, int srlLen, const BYTE* rawData, int rawLen) +int progressive_rfx_upgrade_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMPONENT_CODEC_QUANT* shift, + RFX_COMPONENT_CODEC_QUANT* bitPos, RFX_COMPONENT_CODEC_QUANT* numBits, INT16* buffer, + INT16* current, INT16* sign, const BYTE* srlData, int srlLen, const BYTE* rawData, int rawLen) { + INT16* temp; int aRawLen; int aSrlLen; wBitStream s_srl; @@ -1005,20 +1005,18 @@ int progressive_rfx_upgrade_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMP BitStream_Fetch(state.raw); state.nonLL = TRUE; - progressive_rfx_upgrade_block(&state, ¤t[0], &sign[0], 1023, bitPos->HL1, numBits->HL1); /* HL1 */ - progressive_rfx_upgrade_block(&state, ¤t[1023], &sign[1023], 1023, bitPos->LH1, numBits->LH1); /* LH1 */ - progressive_rfx_upgrade_block(&state, ¤t[2046], &sign[2046], 961, bitPos->HH1, numBits->HH1); /* HH1 */ - progressive_rfx_upgrade_block(&state, ¤t[3007], &sign[3007], 272, bitPos->HL2, numBits->HL2); /* HL2 */ - progressive_rfx_upgrade_block(&state, ¤t[3279], &sign[3279], 272, bitPos->LH2, numBits->LH2); /* LH2 */ - progressive_rfx_upgrade_block(&state, ¤t[3551], &sign[3551], 256, bitPos->HH2, numBits->HH2); /* HH2 */ - progressive_rfx_upgrade_block(&state, ¤t[3807], &sign[3807], 72, bitPos->HL3, numBits->HL3); /* HL3 */ - progressive_rfx_upgrade_block(&state, ¤t[3879], &sign[3879], 72, bitPos->LH3, numBits->LH3); /* LH3 */ - progressive_rfx_upgrade_block(&state, ¤t[3951], &sign[3951], 64, bitPos->HH3, numBits->HH3); /* HH3 */ + progressive_rfx_upgrade_block(&state, ¤t[0], &sign[0], 1023, shift->HL1, bitPos->HL1, numBits->HL1); /* HL1 */ + progressive_rfx_upgrade_block(&state, ¤t[1023], &sign[1023], 1023, shift->LH1, bitPos->LH1, numBits->LH1); /* LH1 */ + progressive_rfx_upgrade_block(&state, ¤t[2046], &sign[2046], 961, shift->HH1, bitPos->HH1, numBits->HH1); /* HH1 */ + progressive_rfx_upgrade_block(&state, ¤t[3007], &sign[3007], 272, shift->HL2, bitPos->HL2, numBits->HL2); /* HL2 */ + progressive_rfx_upgrade_block(&state, ¤t[3279], &sign[3279], 272, shift->LH2, bitPos->LH2, numBits->LH2); /* LH2 */ + progressive_rfx_upgrade_block(&state, ¤t[3551], &sign[3551], 256, shift->HH2, bitPos->HH2, numBits->HH2); /* HH2 */ + progressive_rfx_upgrade_block(&state, ¤t[3807], &sign[3807], 72, shift->HL3, bitPos->HL3, numBits->HL3); /* HL3 */ + progressive_rfx_upgrade_block(&state, ¤t[3879], &sign[3879], 72, shift->LH3, bitPos->LH3, numBits->LH3); /* LH3 */ + progressive_rfx_upgrade_block(&state, ¤t[3951], &sign[3951], 64, shift->HH3, bitPos->HH3, numBits->HH3); /* HH3 */ state.nonLL = FALSE; - progressive_rfx_upgrade_block(&state, ¤t[4015], &sign[4015], 81, bitPos->LL3, numBits->LL3); /* LL3 */ - - CopyMemory(buffer, current, 4096 * 2); + progressive_rfx_upgrade_block(&state, ¤t[4015], &sign[4015], 81, shift->LL3, bitPos->LL3, numBits->LL3); /* LL3 */ aRawLen = (state.raw->position + 7) / 8; aSrlLen = (state.srl->position + 7) / 8; @@ -1043,6 +1041,16 @@ int progressive_rfx_upgrade_component(PROGRESSIVE_CONTEXT* progressive, RFX_COMP return -1; } + temp = (INT16*) BufferPool_Take(progressive->bufferPool, -1); /* DWT buffer */ + + CopyMemory(buffer, current, 4096 * 2); + + progressive_rfx_dwt_2d_decode_block(&buffer[3807], temp, 3); + progressive_rfx_dwt_2d_decode_block(&buffer[3007], temp, 2); + progressive_rfx_dwt_2d_decode_block(&buffer[0], temp, 1); + + BufferPool_Return(progressive->bufferPool, temp); + return 1; } @@ -1054,6 +1062,9 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR INT16* pSrcDst[3]; INT16* pCurrent[3]; PROGRESSIVE_BLOCK_REGION* region; + RFX_COMPONENT_CODEC_QUANT shiftY; + RFX_COMPONENT_CODEC_QUANT shiftCb; + RFX_COMPONENT_CODEC_QUANT shiftCr; RFX_COMPONENT_CODEC_QUANT yBitPos; RFX_COMPONENT_CODEC_QUANT cbBitPos; RFX_COMPONENT_CODEC_QUANT crBitPos; @@ -1072,9 +1083,6 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR tile->pass++; - if (tile->pass > 2) - return -1; /* skip for now */ - #if 0 printf("ProgressiveTileUpgrade: pass: %d quantIdx Y: %d Cb: %d Cr: %d xIdx: %d yIdx: %d quality: %d ySrlLen: %d yRawLen: %d cbSrlLen: %d cbRawLen: %d crSrlLen: %d crRawLen: %d\n", tile->pass, tile->quantIdxY, tile->quantIdxCb, tile->quantIdxCr, tile->xIdx, tile->yIdx, tile->quality, tile->ySrlLen, tile->yRawLen, tile->cbSrlLen, tile->cbRawLen, tile->crSrlLen, tile->crRawLen); @@ -1128,6 +1136,13 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR progressive_rfx_quant_sub(&(tile->cbBitPos), &cbBitPos, &cbNumBits); progressive_rfx_quant_sub(&(tile->crBitPos), &crBitPos, &crNumBits); + progressive_rfx_quant_add(quantY, quantProgY, &shiftY); + progressive_rfx_quant_lsub(&shiftY, 1); /* -6 + 5 = -1 */ + progressive_rfx_quant_add(quantCb, quantProgCb, &shiftCb); + progressive_rfx_quant_lsub(&shiftCb, 1); /* -6 + 5 = -1 */ + progressive_rfx_quant_add(quantCr, quantProgCr, &shiftCr); + progressive_rfx_quant_lsub(&shiftCr, 1); /* -6 + 5 = -1 */ + CopyMemory(&(tile->yBitPos), &yBitPos, sizeof(RFX_COMPONENT_CODEC_QUANT)); CopyMemory(&(tile->cbBitPos), &cbBitPos, sizeof(RFX_COMPONENT_CODEC_QUANT)); CopyMemory(&(tile->crBitPos), &crBitPos, sizeof(RFX_COMPONENT_CODEC_QUANT)); @@ -1155,19 +1170,19 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR pSrcDst[1] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 1) + 16])); /* Cb/G buffer */ pSrcDst[2] = (INT16*)((BYTE*)(&pBuffer[((8192 + 32) * 2) + 16])); /* Cr/B buffer */ - status = progressive_rfx_upgrade_component(progressive, quantProgY, &yNumBits, + status = progressive_rfx_upgrade_component(progressive, &shiftY, quantProgY, &yNumBits, pSrcDst[0], pCurrent[0], pSign[0], tile->ySrlData, tile->ySrlLen, tile->yRawData, tile->yRawLen); /* Y */ if (status < 0) return -1; - status = progressive_rfx_upgrade_component(progressive, quantProgCb, &cbNumBits, + status = progressive_rfx_upgrade_component(progressive, &shiftCb, quantProgCb, &cbNumBits, pSrcDst[1], pCurrent[1], pSign[1], tile->cbSrlData, tile->cbSrlLen, tile->cbRawData, tile->cbRawLen); /* Cb */ if (status < 0) return -1; - status = progressive_rfx_upgrade_component(progressive, quantProgCr, &crNumBits, + status = progressive_rfx_upgrade_component(progressive, &shiftCr, quantProgCr, &crNumBits, pSrcDst[2], pCurrent[2], pSign[2], tile->crSrlData, tile->crSrlLen, tile->crRawData, tile->crRawLen); /* Cr */ if (status < 0) @@ -1181,6 +1196,8 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR BufferPool_Return(progressive->bufferPool, pBuffer); + WLog_Image(progressive->log, WLOG_TRACE, tile->data, 64, 64, 32); + return 1; } diff --git a/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c b/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c index 0a5ebba5a..4192176d7 100644 --- a/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c +++ b/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c @@ -436,7 +436,7 @@ int test_progressive_ms_sample(char* ms_sample_path) if (status < 0) return -1; - count = 2; + count = 3; progressive = progressive_context_new(FALSE); From 320b1d35edd67a6c555c3669a198e2347de722f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Wed, 3 Sep 2014 16:20:50 -0400 Subject: [PATCH 155/170] libwinpr-utils: centralize bitmap utils --- include/freerdp/utils/bitmap.h | 35 -------- libfreerdp/gdi/gdi.c | 4 +- libfreerdp/utils/CMakeLists.txt | 1 - libfreerdp/utils/bitmap.c | 110 ----------------------- winpr/include/winpr/image.h | 71 +++++++++++++++ winpr/libwinpr/utils/CMakeLists.txt | 1 + winpr/libwinpr/utils/image.c | 76 ++++++++++++++++ winpr/libwinpr/utils/wlog/ImageMessage.c | 82 ++--------------- 8 files changed, 156 insertions(+), 224 deletions(-) delete mode 100644 include/freerdp/utils/bitmap.h delete mode 100644 libfreerdp/utils/bitmap.c create mode 100644 winpr/include/winpr/image.h create mode 100644 winpr/libwinpr/utils/image.c diff --git a/include/freerdp/utils/bitmap.h b/include/freerdp/utils/bitmap.h deleted file mode 100644 index b9d4dcf94..000000000 --- a/include/freerdp/utils/bitmap.h +++ /dev/null @@ -1,35 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * Bitmap File Format Utils - * - * Copyright 2011 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef FREERDP_UTILS_BITMAP_H -#define FREERDP_UTILS_BITMAP_H - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -FREERDP_API void freerdp_bitmap_write(char* filename, void* data, int width, int height, int bpp); - -#ifdef __cplusplus -} -#endif - -#endif /* FREERDP_UTILS_BITMAP_H */ diff --git a/libfreerdp/gdi/gdi.c b/libfreerdp/gdi/gdi.c index ee767cfd3..71251c518 100644 --- a/libfreerdp/gdi/gdi.c +++ b/libfreerdp/gdi/gdi.c @@ -26,11 +26,11 @@ #include #include +#include #include #include #include -#include #include #include #include @@ -828,7 +828,7 @@ void gdi_surface_bits(rdpContext* context, SURFACE_BITS_COMMAND* surface_bits_co #ifdef DUMP_REMOTEFX_TILES sprintf(tile_bitmap, "/tmp/rfx/tile_%d.bmp", tilenum++); - freerdp_bitmap_write(tile_bitmap, gdi->tile->bitmap->data, 64, 64, 32); + winpr_bitmap_write(tile_bitmap, gdi->tile->bitmap->data, 64, 64, 32); #endif diff --git a/libfreerdp/utils/CMakeLists.txt b/libfreerdp/utils/CMakeLists.txt index 1db46f1a0..ad2a419ee 100644 --- a/libfreerdp/utils/CMakeLists.txt +++ b/libfreerdp/utils/CMakeLists.txt @@ -20,7 +20,6 @@ set(MODULE_PREFIX "FREERDP_UTILS") set(${MODULE_PREFIX}_SRCS event.c - bitmap.c passphrase.c pcap.c profiler.c diff --git a/libfreerdp/utils/bitmap.c b/libfreerdp/utils/bitmap.c deleted file mode 100644 index ed316ba8f..000000000 --- a/libfreerdp/utils/bitmap.c +++ /dev/null @@ -1,110 +0,0 @@ -/** - * FreeRDP: A Remote Desktop Protocol Implementation - * Bitmap File Format Utils - * - * Copyright 2011 Marc-Andre Moreau - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include -#include - -#include - -#include -#include - -typedef struct -{ - BYTE magic[2]; -} BITMAP_MAGIC; - -typedef struct -{ - UINT32 filesz; - UINT16 creator1; - UINT16 creator2; - UINT32 bmp_offset; -} BITMAP_CORE_HEADER; - -typedef struct -{ - UINT32 header_sz; - INT32 width; - INT32 height; - UINT16 nplanes; - UINT16 bitspp; - UINT32 compress_type; - UINT32 bmp_bytesz; - INT32 hres; - INT32 vres; - UINT32 ncolors; - UINT32 nimpcolors; -} BITMAP_INFO_HEADER; - -void freerdp_bitmap_write(char* filename, void* data, int width, int height, int bpp) -{ - FILE* fp; - BITMAP_MAGIC magic; - BITMAP_CORE_HEADER header; - BITMAP_INFO_HEADER info_header; - - fp = fopen(filename, "w+b"); - - if (fp == NULL) - { - DEBUG_WARN( "failed to open file %s\n", filename); - return; - } - - magic.magic[0] = 'B'; - magic.magic[1] = 'M'; - - header.creator1 = 0; - header.creator2 = 0; - - header.bmp_offset = - sizeof(BITMAP_MAGIC) + - sizeof(BITMAP_CORE_HEADER) + - sizeof(BITMAP_INFO_HEADER); - - info_header.bmp_bytesz = width * height * (bpp / 8); - - header.filesz = - header.bmp_offset + - info_header.bmp_bytesz; - - info_header.width = width; - info_header.height = (-1) * height; - info_header.nplanes = 1; - info_header.bitspp = bpp; - info_header.compress_type = 0; - info_header.hres = width; - info_header.vres = height; - info_header.ncolors = 0; - info_header.nimpcolors = 0; - info_header.header_sz = sizeof(BITMAP_INFO_HEADER); - - fwrite((void*) &magic, sizeof(BITMAP_MAGIC), 1, fp); - fwrite((void*) &header, sizeof(BITMAP_CORE_HEADER), 1, fp); - fwrite((void*) &info_header, sizeof(BITMAP_INFO_HEADER), 1, fp); - fwrite((void*) data, info_header.bmp_bytesz, 1, fp); - - fclose(fp); -} - diff --git a/winpr/include/winpr/image.h b/winpr/include/winpr/image.h new file mode 100644 index 000000000..3dda5f7c6 --- /dev/null +++ b/winpr/include/winpr/image.h @@ -0,0 +1,71 @@ +/** + * WinPR: Windows Portable Runtime + * Image Utils + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef WINPR_IMAGE_H +#define WINPR_IMAGE_H + +#include +#include + +/* + * Bitmap data structures + */ + +struct _WINPR_BITMAP_MAGIC +{ + BYTE magic[2]; +}; +typedef struct _WINPR_BITMAP_MAGIC WINPR_BITMAP_MAGIC; + +struct _WINPR_BITMAP_CORE_HEADER +{ + UINT32 filesz; + UINT16 creator1; + UINT16 creator2; + UINT32 bmp_offset; +}; +typedef struct _WINPR_BITMAP_CORE_HEADER WINPR_BITMAP_CORE_HEADER; + +struct _WINPR_BITMAP_INFO_HEADER +{ + UINT32 header_sz; + INT32 width; + INT32 height; + UINT16 nplanes; + UINT16 bitspp; + UINT32 compress_type; + UINT32 bmp_bytesz; + INT32 hres; + INT32 vres; + UINT32 ncolors; + UINT32 nimpcolors; +}; +typedef struct _WINPR_BITMAP_INFO_HEADER WINPR_BITMAP_INFO_HEADER; + +#ifdef __cplusplus +extern "C" { +#endif + +WINPR_API int winpr_bitmap_write(char* filename, BYTE* data, int width, int height, int bpp); + +#ifdef __cplusplus +} +#endif + +#endif /* WINPR_IMAGE_H */ diff --git a/winpr/libwinpr/utils/CMakeLists.txt b/winpr/libwinpr/utils/CMakeLists.txt index 8f677937f..3b2839e68 100644 --- a/winpr/libwinpr/utils/CMakeLists.txt +++ b/winpr/libwinpr/utils/CMakeLists.txt @@ -75,6 +75,7 @@ set(${MODULE_PREFIX}_SRCS ini.c sam.c ntlm.c + image.c print.c stream.c debug.c diff --git a/winpr/libwinpr/utils/image.c b/winpr/libwinpr/utils/image.c new file mode 100644 index 000000000..31fc643b6 --- /dev/null +++ b/winpr/libwinpr/utils/image.c @@ -0,0 +1,76 @@ +/** + * WinPR: Windows Portable Runtime + * Image Utils + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include + +#include + +int winpr_bitmap_write(char* filename, BYTE* data, int width, int height, int bpp) +{ + FILE* fp; + WINPR_BITMAP_MAGIC magic; + WINPR_BITMAP_CORE_HEADER header; + WINPR_BITMAP_INFO_HEADER info_header; + + fp = fopen(filename, "w+b"); + + if (!fp) + { + fprintf(stderr, "failed to open file %s\n", filename); + return -1; + } + + magic.magic[0] = 'B'; + magic.magic[1] = 'M'; + + header.creator1 = 0; + header.creator2 = 0; + + header.bmp_offset = sizeof(WINPR_BITMAP_MAGIC) + + sizeof(WINPR_BITMAP_CORE_HEADER) + + sizeof(WINPR_BITMAP_INFO_HEADER); + + info_header.bmp_bytesz = width * height * (bpp / 8); + + header.filesz = header.bmp_offset + info_header.bmp_bytesz; + + info_header.width = width; + info_header.height = (-1) * height; + info_header.nplanes = 1; + info_header.bitspp = bpp; + info_header.compress_type = 0; + info_header.hres = width; + info_header.vres = height; + info_header.ncolors = 0; + info_header.nimpcolors = 0; + info_header.header_sz = sizeof(WINPR_BITMAP_INFO_HEADER); + + fwrite((void*) &magic, sizeof(WINPR_BITMAP_MAGIC), 1, fp); + fwrite((void*) &header, sizeof(WINPR_BITMAP_CORE_HEADER), 1, fp); + fwrite((void*) &info_header, sizeof(WINPR_BITMAP_INFO_HEADER), 1, fp); + fwrite((void*) data, info_header.bmp_bytesz, 1, fp); + + fclose(fp); + + return 1; +} diff --git a/winpr/libwinpr/utils/wlog/ImageMessage.c b/winpr/libwinpr/utils/wlog/ImageMessage.c index 89af777c5..1866ed1de 100644 --- a/winpr/libwinpr/utils/wlog/ImageMessage.c +++ b/winpr/libwinpr/utils/wlog/ImageMessage.c @@ -23,88 +23,18 @@ #include +#include + #include "wlog/ImageMessage.h" -#include -#include - -typedef struct -{ - BYTE magic[2]; -} BITMAP_MAGIC; - -typedef struct -{ - UINT32 filesz; - UINT16 creator1; - UINT16 creator2; - UINT32 bmp_offset; -} BITMAP_CORE_HEADER; - -typedef struct -{ - UINT32 header_sz; - INT32 width; - INT32 height; - UINT16 nplanes; - UINT16 bitspp; - UINT32 compress_type; - UINT32 bmp_bytesz; - INT32 hres; - INT32 vres; - UINT32 ncolors; - UINT32 nimpcolors; -} BITMAP_INFO_HEADER; - int WLog_ImageMessage_Write(char* filename, void* data, int width, int height, int bpp) { - FILE* fp; - BITMAP_MAGIC magic; - BITMAP_CORE_HEADER header; - BITMAP_INFO_HEADER info_header; + int status; - fp = fopen(filename, "w+b"); + status = winpr_bitmap_write(filename, data, width, height, bpp); - if (!fp) - { - fprintf(stderr, "failed to open file %s\n", filename); + if (status < 0) return -1; - } - magic.magic[0] = 'B'; - magic.magic[1] = 'M'; - - header.creator1 = 0; - header.creator2 = 0; - - header.bmp_offset = - sizeof(BITMAP_MAGIC) + - sizeof(BITMAP_CORE_HEADER) + - sizeof(BITMAP_INFO_HEADER); - - info_header.bmp_bytesz = width * height * (bpp / 8); - - header.filesz = - header.bmp_offset + - info_header.bmp_bytesz; - - info_header.width = width; - info_header.height = (-1) * height; - info_header.nplanes = 1; - info_header.bitspp = bpp; - info_header.compress_type = 0; - info_header.hres = width; - info_header.vres = height; - info_header.ncolors = 0; - info_header.nimpcolors = 0; - info_header.header_sz = sizeof(BITMAP_INFO_HEADER); - - fwrite((void*) &magic, sizeof(BITMAP_MAGIC), 1, fp); - fwrite((void*) &header, sizeof(BITMAP_CORE_HEADER), 1, fp); - fwrite((void*) &info_header, sizeof(BITMAP_INFO_HEADER), 1, fp); - fwrite((void*) data, info_header.bmp_bytesz, 1, fp); - - fclose(fp); - - return 0; + return 1; } From fd7b9669a507abc397d4329a710434818017c2c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Wed, 3 Sep 2014 18:46:57 -0400 Subject: [PATCH 156/170] libfreerdp-codec: improve progressive unit tests --- libfreerdp/codec/progressive.c | 2 +- .../codec/test/TestFreeRDPCodecProgressive.c | 421 +++++++++++++++++- winpr/include/winpr/image.h | 48 +- winpr/libwinpr/utils/image.c | 205 +++++++-- 4 files changed, 595 insertions(+), 81 deletions(-) diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index a1b2fa216..eb6e46ba1 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -1196,7 +1196,7 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR BufferPool_Return(progressive->bufferPool, pBuffer); - WLog_Image(progressive->log, WLOG_TRACE, tile->data, 64, 64, 32); + //WLog_Image(progressive->log, WLOG_TRACE, tile->data, 64, 64, 32); return 1; } diff --git a/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c b/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c index 4192176d7..2896fbdb6 100644 --- a/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c +++ b/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c @@ -1,7 +1,10 @@ #include #include +#include #include +#include + #include /** @@ -399,15 +402,320 @@ int test_progressive_load_files(char* ms_sample_path, EGFX_SAMPLE_FILE files[3][ return 1; } +static void fill_bitmap_alpha_channel(BYTE* data, int width, int height, BYTE value) +{ + int i, j; + UINT32* pixel; + + for (i = 0; i < height; i++) + { + for (j = 0; j < width; j++) + { + pixel = (UINT32*) &data[((i * width) + j) * 4]; + *pixel = ((*pixel & 0x00FFFFFF) | (value << 24)); + } + } +} + +BYTE* test_progressive_load_bitmap(char* path, char* file, UINT32* size) +{ + int status; + BYTE* buffer; + wImage* image; + char* filename; + + filename = GetCombinedPath(path, file); + + if (!filename) + return NULL; + + image = winpr_image_new(); + + if (!image) + return NULL; + + status = winpr_image_read(image, filename); + + if (status < 0) + return NULL; + + buffer = image->data; + *size = image->height * image->scanline; + + fill_bitmap_alpha_channel(image->data, image->width, image->height, 0xFF); + + winpr_image_free(image, FALSE); + free(filename); + + return buffer; +} + +int test_progressive_load_bitmaps(char* ms_sample_path, EGFX_SAMPLE_FILE bitmaps[3][4][4]) +{ + int imageNo = 0; + int quarterNo = 0; + int passNo = 0; + + /* image 1 */ + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_0_0_025_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_0_0_050_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_0_0_075_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_0_0_100_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + quarterNo = (quarterNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_0_1_025_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_0_1_050_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_0_1_075_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_0_1_100_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + quarterNo = (quarterNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_0_2_025_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_0_2_050_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_0_2_075_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_0_2_100_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + quarterNo = (quarterNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_0_3_025_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_0_3_050_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_0_3_075_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_0_3_100_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + imageNo++; + + /* image 2 */ + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_1_0_025_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_1_0_050_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_1_0_075_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_1_0_100_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + quarterNo = (quarterNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_1_1_025_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_1_1_050_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_1_1_075_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_1_1_100_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + quarterNo = (quarterNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_1_2_025_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_1_2_050_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_1_2_075_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_1_2_100_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + quarterNo = (quarterNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_1_3_025_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_1_3_050_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_1_3_075_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_1_3_100_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + imageNo++; + + /* image 3 */ + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_2_0_025_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_2_0_050_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_2_0_075_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_2_0_100_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + quarterNo = (quarterNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_2_1_025_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_2_1_050_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_2_1_075_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_2_1_100_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + quarterNo = (quarterNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_2_2_025_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_2_2_050_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_2_2_075_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_2_2_100_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + quarterNo = (quarterNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_2_3_025_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_2_3_050_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_2_3_075_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, + "decompress/dec_2_3_100_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + passNo = (passNo + 1) % 4; + + /* check if all test data has been loaded */ + + for (imageNo = 0; imageNo < 3; imageNo++) + { + for (quarterNo = 0; quarterNo < 4; quarterNo++) + { + for (passNo = 0; passNo < 4; passNo++) + { + if (!bitmaps[imageNo][quarterNo][passNo].buffer) + return -1; + } + } + } + + return 1; +} + static int g_Width = 0; static int g_Height = 0; static int g_DstStep = 0; static BYTE* g_DstData = NULL; -int test_progressive_decode(PROGRESSIVE_CONTEXT* progressive, EGFX_SAMPLE_FILE files[4], int count) +int test_progressive_decode(PROGRESSIVE_CONTEXT* progressive, EGFX_SAMPLE_FILE files[4], EGFX_SAMPLE_FILE bitmaps[4], int quarter, int count) { int pass; + int index; int status; + int nXSrc, nYSrc; + int nXDst, nYDst; + int nWidth, nHeight; + RECTANGLE_16 tileRect; + RECTANGLE_16 updateRect; + RECTANGLE_16 clippingRect; + RFX_PROGRESSIVE_TILE* tile; + PROGRESSIVE_BLOCK_REGION* region; + + clippingRect.left = 0; + clippingRect.top = 0; + clippingRect.right = g_Width; + clippingRect.bottom = g_Height; for (pass = 0; pass < count; pass++) { @@ -415,6 +723,80 @@ int test_progressive_decode(PROGRESSIVE_CONTEXT* progressive, EGFX_SAMPLE_FILE f &g_DstData, PIXEL_FORMAT_XRGB32, g_DstStep, 0, 0, g_Width, g_Height, 0); printf("ProgressiveDecompress: status: %d pass: %d\n", status, pass + 1); + + region = &(progressive->region); + + switch (quarter) + { + case 0: + clippingRect.left = 0; + clippingRect.top = 0; + clippingRect.right = g_Width / 2; + clippingRect.bottom = g_Height /2; + break; + + case 1: + clippingRect.left = g_Width / 2; + clippingRect.top = g_Height / 2; + clippingRect.right = g_Width; + clippingRect.bottom = g_Height; + break; + + case 2: + clippingRect.left = g_Width / 2; + clippingRect.top = 0; + clippingRect.right = g_Width; + clippingRect.bottom = g_Height / 2; + break; + + case 3: + clippingRect.left = 0; + clippingRect.top = g_Height / 2; + clippingRect.right = g_Width / 2; + clippingRect.bottom = g_Height; + break; + } + + for (index = 0; index < region->numTiles; index++) + { + tile = region->tiles[index]; + + tileRect.left = tile->x; + tileRect.top = tile->y; + tileRect.right = tile->x + tile->width; + tileRect.bottom = tile->y + tile->height; + + rectangles_intersection(&tileRect, &clippingRect, &updateRect); + + nXDst = updateRect.left; + nYDst = updateRect.top; + nWidth = updateRect.right - updateRect.left; + nHeight = updateRect.bottom - updateRect.top; + + nXSrc = nXDst - tile->x; + nYSrc = nYDst - tile->y; + + freerdp_image_copy(g_DstData, PIXEL_FORMAT_XRGB32, g_DstStep, + nXDst, nYDst, nWidth, nHeight, tile->data, + PIXEL_FORMAT_XRGB32, 64 * 4, nXSrc, nYSrc); + } + + if (memcmp(g_DstData, bitmaps[pass].buffer, bitmaps[pass].size) != 0) + { + printf("bitmap decompression error\n"); + + printf("GOOD: "); + winpr_HexDump(bitmaps[pass].buffer, 16); + + printf("BAD: "); + winpr_HexDump(g_DstData, 16); + } + else + { + printf("bitmap decompression success\n"); + } + + WLog_Image(progressive->log, WLOG_TRACE, g_DstData, g_Width, g_Height, 32); } return 1; @@ -425,6 +807,7 @@ int test_progressive_ms_sample(char* ms_sample_path) int count; int status; EGFX_SAMPLE_FILE files[3][4][4]; + EGFX_SAMPLE_FILE bitmaps[3][4][4]; PROGRESSIVE_CONTEXT* progressive; g_Width = 1920; @@ -436,7 +819,12 @@ int test_progressive_ms_sample(char* ms_sample_path) if (status < 0) return -1; - count = 3; + status = test_progressive_load_bitmaps(ms_sample_path, bitmaps); + + if (status < 0) + return -1; + + count = 2; progressive = progressive_context_new(FALSE); @@ -448,30 +836,31 @@ int test_progressive_ms_sample(char* ms_sample_path) if (1) { - test_progressive_decode(progressive, files[0][0], count); - test_progressive_decode(progressive, files[0][1], count); - test_progressive_decode(progressive, files[0][2], count); - test_progressive_decode(progressive, files[0][3], count); + test_progressive_decode(progressive, files[0][0], bitmaps[0][0], 0, count); + test_progressive_decode(progressive, files[0][1], bitmaps[0][1], 1, count); + test_progressive_decode(progressive, files[0][2], bitmaps[0][2], 2, count); + test_progressive_decode(progressive, files[0][3], bitmaps[0][3], 3, count); } /* image 2 */ - if (1) + if (0) { - test_progressive_decode(progressive, files[1][0], count); - test_progressive_decode(progressive, files[1][1], count); - test_progressive_decode(progressive, files[1][2], count); - test_progressive_decode(progressive, files[1][3], count); + /* decompressed image set is incorrect for this one */ + test_progressive_decode(progressive, files[1][0], bitmaps[1][0], 0, count); + test_progressive_decode(progressive, files[1][1], bitmaps[1][1], 1, count); + test_progressive_decode(progressive, files[1][2], bitmaps[1][2], 2, count); + test_progressive_decode(progressive, files[1][3], bitmaps[1][3], 3, count); } /* image 3 */ - if (1) + if (0) { - test_progressive_decode(progressive, files[2][0], count); - test_progressive_decode(progressive, files[2][1], count); - test_progressive_decode(progressive, files[2][2], count); - test_progressive_decode(progressive, files[2][3], count); + test_progressive_decode(progressive, files[2][0], bitmaps[2][0], 0, count); + test_progressive_decode(progressive, files[2][1], bitmaps[2][1], 1, count); + test_progressive_decode(progressive, files[2][2], bitmaps[2][2], 2, count); + test_progressive_decode(progressive, files[2][3], bitmaps[2][3], 3, count); } progressive_context_free(progressive); diff --git a/winpr/include/winpr/image.h b/winpr/include/winpr/image.h index 3dda5f7c6..313200533 100644 --- a/winpr/include/winpr/image.h +++ b/winpr/include/winpr/image.h @@ -23,46 +23,28 @@ #include #include -/* - * Bitmap data structures - */ - -struct _WINPR_BITMAP_MAGIC +struct _wImage { - BYTE magic[2]; + int width; + int height; + BYTE* data; + int scanline; + int bitsPerPixel; + int bytesPerPixel; }; -typedef struct _WINPR_BITMAP_MAGIC WINPR_BITMAP_MAGIC; - -struct _WINPR_BITMAP_CORE_HEADER -{ - UINT32 filesz; - UINT16 creator1; - UINT16 creator2; - UINT32 bmp_offset; -}; -typedef struct _WINPR_BITMAP_CORE_HEADER WINPR_BITMAP_CORE_HEADER; - -struct _WINPR_BITMAP_INFO_HEADER -{ - UINT32 header_sz; - INT32 width; - INT32 height; - UINT16 nplanes; - UINT16 bitspp; - UINT32 compress_type; - UINT32 bmp_bytesz; - INT32 hres; - INT32 vres; - UINT32 ncolors; - UINT32 nimpcolors; -}; -typedef struct _WINPR_BITMAP_INFO_HEADER WINPR_BITMAP_INFO_HEADER; +typedef struct _wImage wImage; #ifdef __cplusplus extern "C" { #endif -WINPR_API int winpr_bitmap_write(char* filename, BYTE* data, int width, int height, int bpp); +WINPR_API int winpr_bitmap_write(const char* filename, BYTE* data, int width, int height, int bpp); + +WINPR_API int winpr_image_write(wImage* image, const char* filename); +WINPR_API int winpr_image_read(wImage* image, const char* filename); + +WINPR_API wImage* winpr_image_new(); +WINPR_API void winpr_image_free(wImage* image, BOOL bFreeBuffer); #ifdef __cplusplus } diff --git a/winpr/libwinpr/utils/image.c b/winpr/libwinpr/utils/image.c index 31fc643b6..9672fed79 100644 --- a/winpr/libwinpr/utils/image.c +++ b/winpr/libwinpr/utils/image.c @@ -25,12 +25,63 @@ #include -int winpr_bitmap_write(char* filename, BYTE* data, int width, int height, int bpp) +/** + * Refer to "Compressed Image File Formats: JPEG, PNG, GIF, XBM, BMP" book + */ + +#if defined(__APPLE__) +#pragma pack(1) +#else +#pragma pack(push, 1) +#endif + +struct _WINPR_BITMAP_FILE_HEADER +{ + BYTE bfType[2]; + UINT32 bfSize; + UINT16 bfReserved1; + UINT16 bfReserved2; + UINT32 bfOffBits; +}; +typedef struct _WINPR_BITMAP_FILE_HEADER WINPR_BITMAP_FILE_HEADER; + +struct _WINPR_BITMAP_INFO_HEADER +{ + UINT32 biSize; + INT32 biWidth; + INT32 biHeight; + UINT16 biPlanes; + UINT16 biBitCount; + UINT32 biCompression; + UINT32 biSizeImage; + INT32 biXPelsPerMeter; + INT32 biYPelsPerMeter; + UINT32 biClrUsed; + UINT32 biClrImportant; +}; +typedef struct _WINPR_BITMAP_INFO_HEADER WINPR_BITMAP_INFO_HEADER; + +struct _WINPR_BITMAP_CORE_HEADER +{ + UINT32 bcSize; + UINT16 bcWidth; + UINT16 bcHeight; + UINT16 bcPlanes; + UINT16 bcBitCount; +}; +typedef struct _WINPR_BITMAP_CORE_HEADER WINPR_BITMAP_CORE_HEADER; + +#if defined(__APPLE__) +#pragma pack() +#else +#pragma pack(pop) +#endif + +int winpr_bitmap_write(const char* filename, BYTE* data, int width, int height, int bpp) { FILE* fp; - WINPR_BITMAP_MAGIC magic; - WINPR_BITMAP_CORE_HEADER header; - WINPR_BITMAP_INFO_HEADER info_header; + WINPR_BITMAP_FILE_HEADER bf; + WINPR_BITMAP_INFO_HEADER bi; fp = fopen(filename, "w+b"); @@ -40,37 +91,129 @@ int winpr_bitmap_write(char* filename, BYTE* data, int width, int height, int bp return -1; } - magic.magic[0] = 'B'; - magic.magic[1] = 'M'; + bf.bfType[0] = 'B'; + bf.bfType[1] = 'M'; + bf.bfReserved1 = 0; + bf.bfReserved2 = 0; + bf.bfOffBits = sizeof(WINPR_BITMAP_FILE_HEADER) + sizeof(WINPR_BITMAP_INFO_HEADER); + bi.biSizeImage = width * height * (bpp / 8); + bf.bfSize = bf.bfOffBits + bi.biSizeImage; - header.creator1 = 0; - header.creator2 = 0; + bi.biWidth = width; + bi.biHeight = -1 * height; + bi.biPlanes = 1; + bi.biBitCount = bpp; + bi.biCompression = 0; + bi.biXPelsPerMeter = width; + bi.biYPelsPerMeter = height; + bi.biClrUsed = 0; + bi.biClrImportant = 0; + bi.biSize = sizeof(WINPR_BITMAP_INFO_HEADER); - header.bmp_offset = sizeof(WINPR_BITMAP_MAGIC) + - sizeof(WINPR_BITMAP_CORE_HEADER) + - sizeof(WINPR_BITMAP_INFO_HEADER); - - info_header.bmp_bytesz = width * height * (bpp / 8); - - header.filesz = header.bmp_offset + info_header.bmp_bytesz; - - info_header.width = width; - info_header.height = (-1) * height; - info_header.nplanes = 1; - info_header.bitspp = bpp; - info_header.compress_type = 0; - info_header.hres = width; - info_header.vres = height; - info_header.ncolors = 0; - info_header.nimpcolors = 0; - info_header.header_sz = sizeof(WINPR_BITMAP_INFO_HEADER); - - fwrite((void*) &magic, sizeof(WINPR_BITMAP_MAGIC), 1, fp); - fwrite((void*) &header, sizeof(WINPR_BITMAP_CORE_HEADER), 1, fp); - fwrite((void*) &info_header, sizeof(WINPR_BITMAP_INFO_HEADER), 1, fp); - fwrite((void*) data, info_header.bmp_bytesz, 1, fp); + fwrite((void*) &bf, sizeof(WINPR_BITMAP_FILE_HEADER), 1, fp); + fwrite((void*) &bi, sizeof(WINPR_BITMAP_INFO_HEADER), 1, fp); + fwrite((void*) data, bi.biSizeImage, 1, fp); fclose(fp); return 1; } + +int winpr_image_write(wImage* image, const char* filename) +{ + return winpr_bitmap_write(filename, image->data, image->width, image->height, image->bitsPerPixel); +} + +int winpr_image_read(wImage* image, const char* filename) +{ + FILE* fp; + int index; + BOOL vFlip; + BYTE* pDstData; + WINPR_BITMAP_FILE_HEADER bf; + WINPR_BITMAP_INFO_HEADER bi; + + fp = fopen(filename, "r+b"); + + if (!fp) + { + fprintf(stderr, "failed to open file %s\n", filename); + return -1; + } + + fread((void*) &bf, sizeof(WINPR_BITMAP_FILE_HEADER), 1, fp); + + if ((bf.bfType[0] != 'B') || (bf.bfType[1] != 'M')) + return -1; + + fread((void*) &bi, sizeof(WINPR_BITMAP_INFO_HEADER), 1, fp); + + if (ftell(fp) != bf.bfOffBits) + { + fseek(fp, bf.bfOffBits, SEEK_SET); + } + + image->width = bi.biWidth; + + if (bi.biHeight < 0) + { + vFlip = FALSE; + image->height = -1 * bi.biHeight; + } + else + { + vFlip = TRUE; + image->height = bi.biHeight; + } + + image->bitsPerPixel = bi.biBitCount; + image->bytesPerPixel = (image->bitsPerPixel / 8); + image->scanline = (bi.biSizeImage / bi.biHeight); + + image->data = (BYTE*) malloc(bi.biSizeImage); + + if (!image->data) + return -1; + + if (!vFlip) + { + fread((void*) image->data, bi.biSizeImage, 1, fp); + } + else + { + pDstData = &(image->data[(image->height - 1) * image->scanline]); + + for (index = 0; index < image->height; index++) + { + fread((void*) pDstData, image->scanline, 1, fp); + pDstData -= image->scanline; + } + } + + fclose(fp); + + return 1; +} + +wImage* winpr_image_new() +{ + wImage* image; + + image = (wImage*) calloc(1, sizeof(wImage)); + + if (!image) + return NULL; + + return image; +} + +void winpr_image_free(wImage* image, BOOL bFreeBuffer) +{ + if (!image) + return; + + if (bFreeBuffer) + free(image->data); + + free(image); +} From cdfcbeff5ceb13044153a77150b3f720f324df23 Mon Sep 17 00:00:00 2001 From: Pavel Tsekov Date: Thu, 4 Sep 2014 12:44:03 +0300 Subject: [PATCH 157/170] X11: Convert GDI color to X11 color troughout. * client/X11/xf_client.c (xf_pre_connect): Set the field `colormap' of `struct xfContext' to the default colormap. * client/X11/xfreerdp.h (xf_gdi_get_color): Declare new external function. * client/X11/xf_gdi.c (xf_gdi_get_color): Define new external function. Use xf_gdi_get_color() to get the appropriate X color index from the GDI color representation. * client/X11/xf_graphics.c: Likewise. --- client/X11/xf_client.c | 1 + client/X11/xf_gdi.c | 33 +++++++++++++++++++++++++++++++++ client/X11/xf_graphics.c | 3 +++ client/X11/xfreerdp.h | 2 ++ 4 files changed, 39 insertions(+) diff --git a/client/X11/xf_client.c b/client/X11/xf_client.c index 56de3fcf9..4e4b674f6 100644 --- a/client/X11/xf_client.c +++ b/client/X11/xf_client.c @@ -794,6 +794,7 @@ BOOL xf_pre_connect(freerdp *instance) xfc->grab_keyboard = settings->GrabKeyboard; xfc->fullscreen_toggle = settings->ToggleFullscreen; xf_detect_monitors(xfc, settings); + xfc->colormap = DefaultColormap(xfc->display, xfc->screen_number); return TRUE; } diff --git a/client/X11/xf_gdi.c b/client/X11/xf_gdi.c index 59414d147..a376fab12 100644 --- a/client/X11/xf_gdi.c +++ b/client/X11/xf_gdi.c @@ -214,6 +214,28 @@ BOOL xf_set_rop3(xfContext* xfc, int rop3) return TRUE; } +unsigned long xf_gdi_get_color(xfContext* xfc, GDI_COLOR color) +{ + XColor x11_color; + + x11_color.flags = DoRed | DoGreen | DoBlue; + GetRGB32(x11_color.red, x11_color.green, x11_color.blue, color); + x11_color.red = x11_color.red << 8; + x11_color.green = x11_color.green << 8; + x11_color.blue = x11_color.blue << 8; + + if (XAllocColor(xfc->display, xfc->colormap, &x11_color) != 0) + { + XFreeColors(xfc->display, xfc->colormap, &x11_color.pixel, 1, 0); + } + else + { + x11_color.pixel = BlackPixel(xfc->display, xfc->screen_number); + } + + return x11_color.pixel; +} + Pixmap xf_brush_new(xfContext* xfc, int width, int height, int bpp, BYTE* data) { Pixmap bitmap; @@ -338,7 +360,9 @@ void xf_gdi_patblt(rdpContext* context, PATBLT_ORDER* patblt) xf_set_rop3(xfc, gdi_rop3_code(patblt->bRop)); foreColor = freerdp_color_convert_drawing_order_color_to_gdi_color(patblt->foreColor, context->settings->ColorDepth, xfc->clrconv); + foreColor = xf_gdi_get_color(xfc, foreColor); backColor = freerdp_color_convert_drawing_order_color_to_gdi_color(patblt->backColor, context->settings->ColorDepth, xfc->clrconv); + backColor = xf_gdi_get_color(xfc, backColor); if (brush->style == GDI_BS_SOLID) { @@ -458,6 +482,7 @@ void xf_gdi_opaque_rect(rdpContext* context, OPAQUE_RECT_ORDER* opaque_rect) xf_lock_x11(xfc, FALSE); color = freerdp_color_convert_drawing_order_color_to_gdi_color(opaque_rect->color, context->settings->ColorDepth, xfc->clrconv); + color = xf_gdi_get_color(xfc, color); XSetFunction(xfc->display, xfc->gc, GXcopy); XSetFillStyle(xfc->display, xfc->gc, FillSolid); @@ -492,6 +517,7 @@ void xf_gdi_multi_opaque_rect(rdpContext* context, MULTI_OPAQUE_RECT_ORDER* mult xf_lock_x11(xfc, FALSE); color = freerdp_color_convert_drawing_order_color_to_gdi_color(multi_opaque_rect->color, context->settings->ColorDepth, xfc->clrconv); + color = xf_gdi_get_color(xfc, color); XSetFunction(xfc->display, xfc->gc, GXcopy); XSetFillStyle(xfc->display, xfc->gc, FillSolid); @@ -534,6 +560,7 @@ void xf_gdi_line_to(rdpContext* context, LINE_TO_ORDER* line_to) xf_set_rop2(xfc, line_to->bRop2); color = freerdp_color_convert_drawing_order_color_to_gdi_color(line_to->penColor, context->settings->ColorDepth, xfc->clrconv); + color = xf_gdi_get_color(xfc, color); XSetFillStyle(xfc->display, xfc->gc, FillSolid); XSetForeground(xfc->display, xfc->gc, color); @@ -584,6 +611,7 @@ void xf_gdi_polyline(rdpContext* context, POLYLINE_ORDER* polyline) xf_set_rop2(xfc, polyline->bRop2); color = freerdp_color_convert_drawing_order_color_to_gdi_color(polyline->penColor, context->settings->ColorDepth, xfc->clrconv); + color = xf_gdi_get_color(xfc, color); XSetFillStyle(xfc->display, xfc->gc, FillSolid); XSetForeground(xfc->display, xfc->gc, color); @@ -680,7 +708,9 @@ void xf_gdi_mem3blt(rdpContext* context, MEM3BLT_ORDER* mem3blt) bitmap = (xfBitmap*) mem3blt->bitmap; xf_set_rop3(xfc, gdi_rop3_code(mem3blt->bRop)); foreColor = freerdp_color_convert_drawing_order_color_to_gdi_color(mem3blt->foreColor, context->settings->ColorDepth, xfc->clrconv); + foreColor = xf_gdi_get_color(xfc, foreColor); backColor = freerdp_color_convert_drawing_order_color_to_gdi_color(mem3blt->backColor, context->settings->ColorDepth, xfc->clrconv); + backColor = xf_gdi_get_color(xfc, backColor); if (brush->style == GDI_BS_PATTERN) { @@ -753,6 +783,7 @@ void xf_gdi_polygon_sc(rdpContext* context, POLYGON_SC_ORDER* polygon_sc) xf_set_rop2(xfc, polygon_sc->bRop2); brush_color = freerdp_color_convert_drawing_order_color_to_gdi_color(polygon_sc->brushColor, context->settings->ColorDepth, xfc->clrconv); + brush_color = xf_gdi_get_color(xfc, brush_color); npoints = polygon_sc->numPoints + 1; points = malloc(sizeof(XPoint) * npoints); @@ -814,7 +845,9 @@ void xf_gdi_polygon_cb(rdpContext* context, POLYGON_CB_ORDER* polygon_cb) brush = &(polygon_cb->brush); xf_set_rop2(xfc, polygon_cb->bRop2); foreColor = freerdp_color_convert_drawing_order_color_to_gdi_color(polygon_cb->foreColor, context->settings->ColorDepth, xfc->clrconv); + foreColor = xf_gdi_get_color(xfc, foreColor); backColor = freerdp_color_convert_drawing_order_color_to_gdi_color(polygon_cb->backColor, context->settings->ColorDepth, xfc->clrconv); + backColor = xf_gdi_get_color(xfc, backColor); npoints = polygon_cb->numPoints + 1; points = malloc(sizeof(XPoint) * npoints); diff --git a/client/X11/xf_graphics.c b/client/X11/xf_graphics.c index f010a5ea5..d9ca075a6 100644 --- a/client/X11/xf_graphics.c +++ b/client/X11/xf_graphics.c @@ -398,6 +398,9 @@ void xf_Glyph_BeginDraw(rdpContext* context, int x, int y, int width, int height xf_lock_x11(xfc, FALSE); + fgcolor = xf_gdi_get_color(xfc, fgcolor); + bgcolor = xf_gdi_get_color(xfc, bgcolor); + XSetFunction(xfc->display, xfc->gc, GXcopy); XSetFillStyle(xfc->display, xfc->gc, FillSolid); XSetForeground(xfc->display, xfc->gc, fgcolor); diff --git a/client/X11/xfreerdp.h b/client/X11/xfreerdp.h index d0a8e3cfb..bf67c1223 100644 --- a/client/X11/xfreerdp.h +++ b/client/X11/xfreerdp.h @@ -243,6 +243,8 @@ void xf_unlock_x11(xfContext* xfc, BOOL display); void xf_draw_screen_scaled(xfContext* xfc, int x, int y, int w, int h, BOOL scale); void xf_transform_window(xfContext* xfc); +unsigned long xf_gdi_get_color(xfContext* xfc, GDI_COLOR color); + FREERDP_API DWORD xf_exit_code_from_disconnect_reason(DWORD reason); #endif /* __XFREERDP_H */ From 37aabc50d1e3e1f88bc38a1344bc7cc6efac3528 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 4 Sep 2014 13:09:46 -0400 Subject: [PATCH 158/170] libfreerdp-codec: improve YCbCr to RGB color conversion --- include/freerdp/primitives.h | 5 + libfreerdp/codec/progressive.c | 10 +- .../codec/test/TestFreeRDPCodecProgressive.c | 278 +++++++++++++----- libfreerdp/primitives/prim_colors.c | 61 +++- libfreerdp/primitives/prim_colors.h | 1 + 5 files changed, 268 insertions(+), 87 deletions(-) diff --git a/include/freerdp/primitives.h b/include/freerdp/primitives.h index bb518c2d6..be0a01816 100644 --- a/include/freerdp/primitives.h +++ b/include/freerdp/primitives.h @@ -136,6 +136,10 @@ typedef pstatus_t (*__sign_16s_t)( const INT16 *pSrc, INT16 *pDst, INT32 len); +typedef pstatus_t (*__yCbCrToRGB_16s8u_P3AC4R_t)( + const INT16* pSrc[3], INT32 srcStep, + BYTE* pDst, INT32 dstStep, + const prim_size_t* roi); typedef pstatus_t (*__yCbCrToRGB_16s16s_P3P3_t)( const INT16 *pSrc[3], INT32 srcStep, INT16 *pDst[3], INT32 dstStep, @@ -199,6 +203,7 @@ typedef struct /* Sign */ __sign_16s_t sign_16s; /* Color conversions */ + __yCbCrToRGB_16s8u_P3AC4R_t yCbCrToRGB_16s8u_P3AC4R; __yCbCrToRGB_16s16s_P3P3_t yCbCrToRGB_16s16s_P3P3; __RGBToYCbCr_16s16s_P3P3_t RGBToYCbCr_16s16s_P3P3; __RGBToRGB_16s8u_P3AC4R_t RGBToRGB_16s8u_P3AC4R; diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index eb6e46ba1..f63b6896b 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -779,10 +779,7 @@ int progressive_decompress_tile_first(PROGRESSIVE_CONTEXT* progressive, RFX_PROG progressive_rfx_decode_component(progressive, &shiftCb, tile->cbData, tile->cbLen, pSrcDst[1], pCurrent[1], pSign[1], diff); /* Cb */ progressive_rfx_decode_component(progressive, &shiftCr, tile->crData, tile->crLen, pSrcDst[2], pCurrent[2], pSign[2], diff); /* Cr */ - prims->yCbCrToRGB_16s16s_P3P3((const INT16**) pSrcDst, 64 * sizeof(INT16), - pSrcDst, 64 * sizeof(INT16), &roi_64x64); - - prims->RGBToRGB_16s8u_P3AC4R((const INT16**) pSrcDst, 64 * sizeof(INT16), + prims->yCbCrToRGB_16s8u_P3AC4R((const INT16**) pSrcDst, 64 * 2, tile->data, 64 * 4, &roi_64x64); BufferPool_Return(progressive->bufferPool, pBuffer); @@ -1188,10 +1185,7 @@ int progressive_decompress_tile_upgrade(PROGRESSIVE_CONTEXT* progressive, RFX_PR if (status < 0) return -1; - prims->yCbCrToRGB_16s16s_P3P3((const INT16**) pSrcDst, 64 * sizeof(INT16), - pSrcDst, 64 * sizeof(INT16), &roi_64x64); - - prims->RGBToRGB_16s8u_P3AC4R((const INT16**) pSrcDst, 64 * sizeof(INT16), + prims->yCbCrToRGB_16s8u_P3AC4R((const INT16**) pSrcDst, 64 * 2, tile->data, 64 * 4, &roi_64x64); BufferPool_Return(progressive->bufferPool, pBuffer); diff --git a/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c b/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c index 2896fbdb6..ac466b9d3 100644 --- a/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c +++ b/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c @@ -128,6 +128,126 @@ struct _EGFX_SAMPLE_FILE }; typedef struct _EGFX_SAMPLE_FILE EGFX_SAMPLE_FILE; +static int g_Width = 0; +static int g_Height = 0; +static int g_DstStep = 0; +static BYTE* g_DstData = NULL; + +static void test_fill_image_alpha_channel(BYTE* data, int width, int height, BYTE value) +{ + int i, j; + UINT32* pixel; + + for (i = 0; i < height; i++) + { + for (j = 0; j < width; j++) + { + pixel = (UINT32*) &data[((i * width) + j) * 4]; + *pixel = ((*pixel & 0x00FFFFFF) | (value << 24)); + } + } +} + +static void* test_image_memset32(UINT32* ptr, UINT32 fill, size_t length) +{ + while (length--) + { + *ptr++ = fill; + } + + return (void*) ptr; +} + +static int test_image_fill(BYTE* pDstData, int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight, UINT32 color) +{ + int y; + UINT32* pDstPixel; + + if (nDstStep < 0) + nDstStep = 4 * nWidth; + + for (y = 0; y < nHeight; y++) + { + pDstPixel = (UINT32*) &pDstData[((nYDst + y) * nDstStep) + (nXDst * 4)]; + test_image_memset32(pDstPixel, color, nWidth); + } + + return 1; +} + +static int test_image_fill_quarter(BYTE* pDstData, int nDstStep, int nWidth, int nHeight, UINT32 color, int quarter) +{ + int x = 0; + int y = 0; + int width = 0; + int height = 0; + + switch (quarter) + { + case 0: + x = 0; + y = 0; + width = nWidth / 2; + height = nHeight /2; + break; + + case 1: + x = nWidth / 2; + y = nHeight / 2; + width = nWidth; + height = nHeight; + break; + + case 2: + x = nWidth / 2; + y = 0; + width = nWidth; + height = nHeight / 2; + break; + + case 3: + x = 0; + y = nHeight / 2; + width = nWidth / 2; + height = nHeight; + break; + } + + test_image_fill(pDstData, nDstStep, x, y, width, height, 0xFF000000); + + return 1; +} + +static int test_image_fill_unused_quarters(BYTE* pDstData, int nDstStep, int nWidth, int nHeight, UINT32 color, int quarter) +{ + if (quarter == 0) + { + test_image_fill_quarter(pDstData, nDstStep, nWidth, nHeight, color, 1); + test_image_fill_quarter(pDstData, nDstStep, nWidth, nHeight, color, 2); + test_image_fill_quarter(pDstData, nDstStep, nWidth, nHeight, color, 3); + } + else if (quarter == 1) + { + test_image_fill_quarter(pDstData, nDstStep, nWidth, nHeight, color, 0); + test_image_fill_quarter(pDstData, nDstStep, nWidth, nHeight, color, 2); + test_image_fill_quarter(pDstData, nDstStep, nWidth, nHeight, color, 3); + } + else if (quarter == 2) + { + test_image_fill_quarter(pDstData, nDstStep, nWidth, nHeight, color, 0); + test_image_fill_quarter(pDstData, nDstStep, nWidth, nHeight, color, 1); + test_image_fill_quarter(pDstData, nDstStep, nWidth, nHeight, color, 3); + } + else if (quarter == 3) + { + test_image_fill_quarter(pDstData, nDstStep, nWidth, nHeight, color, 0); + test_image_fill_quarter(pDstData, nDstStep, nWidth, nHeight, color, 1); + test_image_fill_quarter(pDstData, nDstStep, nWidth, nHeight, color, 2); + } + + return 1; +} + BYTE* test_progressive_load_file(char* path, char* file, UINT32* size) { FILE* fp; @@ -402,22 +522,7 @@ int test_progressive_load_files(char* ms_sample_path, EGFX_SAMPLE_FILE files[3][ return 1; } -static void fill_bitmap_alpha_channel(BYTE* data, int width, int height, BYTE value) -{ - int i, j; - UINT32* pixel; - - for (i = 0; i < height; i++) - { - for (j = 0; j < width; j++) - { - pixel = (UINT32*) &data[((i * width) + j) * 4]; - *pixel = ((*pixel & 0x00FFFFFF) | (value << 24)); - } - } -} - -BYTE* test_progressive_load_bitmap(char* path, char* file, UINT32* size) +BYTE* test_progressive_load_bitmap(char* path, char* file, UINT32* size, int quarter) { int status; BYTE* buffer; @@ -442,7 +547,8 @@ BYTE* test_progressive_load_bitmap(char* path, char* file, UINT32* size) buffer = image->data; *size = image->height * image->scanline; - fill_bitmap_alpha_channel(image->data, image->width, image->height, 0xFF); + test_fill_image_alpha_channel(image->data, image->width, image->height, 0xFF); + test_image_fill_unused_quarters(image->data, image->scanline, image->width, image->height, quarter, 0xFF000000); winpr_image_free(image, FALSE); free(filename); @@ -459,73 +565,73 @@ int test_progressive_load_bitmaps(char* ms_sample_path, EGFX_SAMPLE_FILE bitmaps /* image 1 */ bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_0_0_025_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_0_0_025_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_0_0_050_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_0_0_050_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_0_0_075_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_0_0_075_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_0_0_100_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_0_0_100_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; quarterNo = (quarterNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_0_1_025_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_0_1_025_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_0_1_050_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_0_1_050_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_0_1_075_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_0_1_075_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_0_1_100_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_0_1_100_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; quarterNo = (quarterNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_0_2_025_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_0_2_025_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_0_2_050_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_0_2_050_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_0_2_075_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_0_2_075_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_0_2_100_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_0_2_100_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; quarterNo = (quarterNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_0_3_025_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_0_3_025_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_0_3_050_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_0_3_050_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_0_3_075_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_0_3_075_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_0_3_100_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_0_3_100_sampleimage1.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; imageNo++; @@ -533,73 +639,73 @@ int test_progressive_load_bitmaps(char* ms_sample_path, EGFX_SAMPLE_FILE bitmaps /* image 2 */ bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_1_0_025_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_1_0_025_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_1_0_050_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_1_0_050_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_1_0_075_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_1_0_075_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_1_0_100_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_1_0_100_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; quarterNo = (quarterNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_1_1_025_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_1_1_025_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_1_1_050_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_1_1_050_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_1_1_075_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_1_1_075_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_1_1_100_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_1_1_100_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; quarterNo = (quarterNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_1_2_025_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_1_2_025_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_1_2_050_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_1_2_050_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_1_2_075_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_1_2_075_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_1_2_100_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_1_2_100_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; quarterNo = (quarterNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_1_3_025_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_1_3_025_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_1_3_050_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_1_3_050_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_1_3_075_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_1_3_075_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_1_3_100_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_1_3_100_sampleimage2.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; imageNo++; @@ -607,73 +713,73 @@ int test_progressive_load_bitmaps(char* ms_sample_path, EGFX_SAMPLE_FILE bitmaps /* image 3 */ bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_2_0_025_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_2_0_025_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_2_0_050_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_2_0_050_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_2_0_075_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_2_0_075_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_2_0_100_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_2_0_100_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; quarterNo = (quarterNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_2_1_025_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_2_1_025_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_2_1_050_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_2_1_050_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_2_1_075_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_2_1_075_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_2_1_100_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_2_1_100_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; quarterNo = (quarterNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_2_2_025_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_2_2_025_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_2_2_050_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_2_2_050_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_2_2_075_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_2_2_075_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_2_2_100_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_2_2_100_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; quarterNo = (quarterNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_2_3_025_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_2_3_025_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_2_3_050_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_2_3_050_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_2_3_075_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_2_3_075_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; bitmaps[imageNo][quarterNo][passNo].buffer = test_progressive_load_bitmap(ms_sample_path, - "decompress/dec_2_3_100_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size)); + "decompress/dec_2_3_100_sampleimage3.bmp", &(bitmaps[imageNo][quarterNo][passNo].size), quarterNo); passNo = (passNo + 1) % 4; /* check if all test data has been loaded */ @@ -693,13 +799,23 @@ int test_progressive_load_bitmaps(char* ms_sample_path, EGFX_SAMPLE_FILE bitmaps return 1; } -static int g_Width = 0; -static int g_Height = 0; -static int g_DstStep = 0; -static BYTE* g_DstData = NULL; +int test_memcmp(const BYTE* mem1, const BYTE* mem2, int size) +{ + int index = 0; + + while ((index < size) && (*mem1 == *mem2)) + { + mem1++; + mem2++; + index++; + } + + return (index == size) ? 1 : -index; +} int test_progressive_decode(PROGRESSIVE_CONTEXT* progressive, EGFX_SAMPLE_FILE files[4], EGFX_SAMPLE_FILE bitmaps[4], int quarter, int count) { + int cmp; int pass; int index; int status; @@ -773,6 +889,9 @@ int test_progressive_decode(PROGRESSIVE_CONTEXT* progressive, EGFX_SAMPLE_FILE f nWidth = updateRect.right - updateRect.left; nHeight = updateRect.bottom - updateRect.top; + if ((nWidth <= 0) || (nHeight <= 0)) + continue; + nXSrc = nXDst - tile->x; nYSrc = nYDst - tile->y; @@ -781,22 +900,22 @@ int test_progressive_decode(PROGRESSIVE_CONTEXT* progressive, EGFX_SAMPLE_FILE f PIXEL_FORMAT_XRGB32, 64 * 4, nXSrc, nYSrc); } - if (memcmp(g_DstData, bitmaps[pass].buffer, bitmaps[pass].size) != 0) + cmp = test_memcmp(g_DstData, bitmaps[pass].buffer, bitmaps[pass].size); + + if (cmp <= 0) { - printf("bitmap decompression error\n"); + cmp *= -1; + + printf("bitmap decompression error: %d/%d\n", cmp, bitmaps[pass].size); printf("GOOD: "); - winpr_HexDump(bitmaps[pass].buffer, 16); + winpr_HexDump(&bitmaps[pass].buffer[cmp], 16); printf("BAD: "); - winpr_HexDump(g_DstData, 16); - } - else - { - printf("bitmap decompression success\n"); + winpr_HexDump(&g_DstData[cmp], 16); } - WLog_Image(progressive->log, WLOG_TRACE, g_DstData, g_Width, g_Height, 32); + //WLog_Image(progressive->log, WLOG_TRACE, g_DstData, g_Width, g_Height, 32); } return 1; @@ -836,6 +955,7 @@ int test_progressive_ms_sample(char* ms_sample_path) if (1) { + test_image_fill(g_DstData, g_DstStep, 0, 0, g_Width, g_Height, 0xFF000000); test_progressive_decode(progressive, files[0][0], bitmaps[0][0], 0, count); test_progressive_decode(progressive, files[0][1], bitmaps[0][1], 1, count); test_progressive_decode(progressive, files[0][2], bitmaps[0][2], 2, count); @@ -847,6 +967,7 @@ int test_progressive_ms_sample(char* ms_sample_path) if (0) { /* decompressed image set is incorrect for this one */ + test_image_fill(g_DstData, g_DstStep, 0, 0, g_Width, g_Height, 0xFF000000); test_progressive_decode(progressive, files[1][0], bitmaps[1][0], 0, count); test_progressive_decode(progressive, files[1][1], bitmaps[1][1], 1, count); test_progressive_decode(progressive, files[1][2], bitmaps[1][2], 2, count); @@ -857,6 +978,7 @@ int test_progressive_ms_sample(char* ms_sample_path) if (0) { + test_image_fill(g_DstData, g_DstStep, 0, 0, g_Width, g_Height, 0xFF000000); test_progressive_decode(progressive, files[2][0], bitmaps[2][0], 0, count); test_progressive_decode(progressive, files[2][1], bitmaps[2][1], 1, count); test_progressive_decode(progressive, files[2][2], bitmaps[2][2], 2, count); diff --git a/libfreerdp/primitives/prim_colors.c b/libfreerdp/primitives/prim_colors.c index a7de64339..7478fceee 100644 --- a/libfreerdp/primitives/prim_colors.c +++ b/libfreerdp/primitives/prim_colors.c @@ -33,6 +33,64 @@ #endif /* !MINMAX */ /* ------------------------------------------------------------------------- */ + +pstatus_t general_yCbCrToRGB_16s8u_P3AC4R(const INT16* pSrc[3], int srcStep, + BYTE* pDst, int dstStep, const prim_size_t* roi) +{ + int x, y; + INT16 R, G, B; + double Y, Cb, Cr; + BYTE* pRGB = pDst; + const INT16* pY = pSrc[0]; + const INT16* pCb = pSrc[1]; + const INT16* pCr = pSrc[2]; + int srcPad = (srcStep - (roi->width * 2)) / 2; + int dstPad = (dstStep - (roi->width * 4)) / 4; + + for (y = 0; y < roi->height; y++) + { + for (x = 0; x < roi->width; x++) + { + Y = (double) ((*pY++ >> 1) + 2048); + Cb = (double) (*pCb++ >> 1); + Cr = (double) (*pCr++ >> 1); + + R = (INT16) (((int) (Y + (1.402524948120117L * Cr) + 8.0L)) >> 4); + G = (INT16) (((int) (Y - (0.3437300026416779L * Cb) - (0.7144010066986084L * Cr) + 8.0L)) >> 4); + B = (INT16) (((int) (Y + (1.769904971122742L * Cb) + 8.0L)) >> 4); + + if (R < 0) + R = 0; + else if (R > 255) + R = 255; + + if (G < 0) + G = 0; + else if (G > 255) + G = 255; + + if (B < 0) + B = 0; + else if (B > 255) + B = 255; + + *pRGB++ = (BYTE) B; + *pRGB++ = (BYTE) G; + *pRGB++ = (BYTE) R; + *pRGB++ = 0xFF; + } + + pY += srcPad; + pCb += srcPad; + pCr += srcPad; + pRGB += dstPad; + } + + return PRIMITIVES_SUCCESS; +} + +/* ------------------------------------------------------------------------- */ + pstatus_t general_yCbCrToRGB_16s16s_P3P3( const INT16 *pSrc[3], INT32 srcStep, INT16 *pDst[3], INT32 dstStep, @@ -217,9 +275,10 @@ pstatus_t general_RGBToRGB_16s8u_P3AC4R( /* ------------------------------------------------------------------------- */ void primitives_init_colors(primitives_t* prims) { - prims->RGBToRGB_16s8u_P3AC4R = general_RGBToRGB_16s8u_P3AC4R; + prims->yCbCrToRGB_16s8u_P3AC4R = general_yCbCrToRGB_16s8u_P3AC4R; prims->yCbCrToRGB_16s16s_P3P3 = general_yCbCrToRGB_16s16s_P3P3; prims->RGBToYCbCr_16s16s_P3P3 = general_RGBToYCbCr_16s16s_P3P3; + prims->RGBToRGB_16s8u_P3AC4R = general_RGBToRGB_16s8u_P3AC4R; primitives_init_colors_opt(prims); } diff --git a/libfreerdp/primitives/prim_colors.h b/libfreerdp/primitives/prim_colors.h index 15b76d997..773bbaeeb 100644 --- a/libfreerdp/primitives/prim_colors.h +++ b/libfreerdp/primitives/prim_colors.h @@ -22,6 +22,7 @@ #ifndef __PRIM_COLORS_H_INCLUDED__ #define __PRIM_COLORS_H_INCLUDED__ +pstatus_t general_yCbCrToRGB_16s8u_P3AC4R(const INT16* pSrc[3], int srcStep, BYTE* pDst, int dstStep, const prim_size_t* roi); pstatus_t general_yCbCrToRGB_16s16s_P3P3(const INT16 *pSrc[3], INT32 srcStep, INT16 *pDst[3], INT32 dstStep, const prim_size_t *roi); pstatus_t general_RGBToYCbCr_16s16s_P3P3(const INT16 *pSrc[3], INT32 srcStep, INT16 *pDst[3], INT32 dstStep, const prim_size_t *roi); pstatus_t general_RGBToRGB_16s8u_P3AC4R(const INT16 *pSrc[3], int srcStep, BYTE *pDst, int dstStep, const prim_size_t *roi); From ccb31efe631b47f7c778d5869b542748b6e33f7e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 4 Sep 2014 15:46:20 -0400 Subject: [PATCH 159/170] libfreerdp-primitives: migrate tests to ctest --- libfreerdp/primitives/CMakeLists.txt | 2 +- libfreerdp/primitives/test/.gitignore | 1 + libfreerdp/primitives/test/CMakeLists.txt | 178 ++----- ..._16to32bpp.c => TestPrimitives16to32bpp.c} | 25 +- .../test/{test_add.c => TestPrimitivesAdd.c} | 22 + ..._alphaComp.c => TestPrimitivesAlphaComp.c} | 22 + .../{test_andor.c => TestPrimitivesAndOr.c} | 35 ++ .../{test_colors.c => TestPrimitivesColors.c} | 35 ++ .../{test_copy.c => TestPrimitivesCopy.c} | 22 + .../test/{test_set.c => TestPrimitivesSet.c} | 48 ++ .../{test_shift.c => TestPrimitivesShift.c} | 61 +++ .../{test_sign.c => TestPrimitivesSign.c} | 22 + .../{test_YCoCg.c => TestPrimitivesYCoCg.c} | 23 +- libfreerdp/primitives/test/prim_test.c | 488 ++---------------- libfreerdp/primitives/test/prim_test.h | 23 +- 15 files changed, 390 insertions(+), 617 deletions(-) rename libfreerdp/primitives/test/{test_16to32bpp.c => TestPrimitives16to32bpp.c} (94%) rename libfreerdp/primitives/test/{test_add.c => TestPrimitivesAdd.c} (92%) rename libfreerdp/primitives/test/{test_alphaComp.c => TestPrimitivesAlphaComp.c} (95%) rename libfreerdp/primitives/test/{test_andor.c => TestPrimitivesAndOr.c} (92%) rename libfreerdp/primitives/test/{test_colors.c => TestPrimitivesColors.c} (92%) rename libfreerdp/primitives/test/{test_copy.c => TestPrimitivesCopy.c} (89%) rename libfreerdp/primitives/test/{test_set.c => TestPrimitivesSet.c} (92%) rename libfreerdp/primitives/test/{test_shift.c => TestPrimitivesShift.c} (88%) rename libfreerdp/primitives/test/{test_sign.c => TestPrimitivesSign.c} (90%) rename libfreerdp/primitives/test/{test_YCoCg.c => TestPrimitivesYCoCg.c} (91%) diff --git a/libfreerdp/primitives/CMakeLists.txt b/libfreerdp/primitives/CMakeLists.txt index f544b350e..9bc898c18 100644 --- a/libfreerdp/primitives/CMakeLists.txt +++ b/libfreerdp/primitives/CMakeLists.txt @@ -100,6 +100,6 @@ endif() set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "FreeRDP/libfreerdp") if(BUILD_TESTING AND ((NOT WIN32) AND (NOT APPLE))) -# add_subdirectory(test) + add_subdirectory(test) endif() diff --git a/libfreerdp/primitives/test/.gitignore b/libfreerdp/primitives/test/.gitignore index 082fee1c1..f25c3eed1 100644 --- a/libfreerdp/primitives/test/.gitignore +++ b/libfreerdp/primitives/test/.gitignore @@ -1,2 +1,3 @@ prim_test +TestPrimitives.c diff --git a/libfreerdp/primitives/test/CMakeLists.txt b/libfreerdp/primitives/test/CMakeLists.txt index 972cee3b8..c5fe100c8 100644 --- a/libfreerdp/primitives/test/CMakeLists.txt +++ b/libfreerdp/primitives/test/CMakeLists.txt @@ -1,155 +1,49 @@ -# FreeRDP: A Remote Desktop Protocol Client -# primitives test makefile builder -# vi:ts=4 sw=4: -# -# (c) Copyright 2012 Hewlett-Packard Development Company, L.P. -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at http://www.apache.org/licenses/LICENSE-2.0. -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. See the License for the specific language governing permissions -# and limitations under the License. -# -# TODO: Integrate this into the testing framework, in some form. -# Right now this produces a standalone test that covers both functionality -# and performance of the primitives library entrypoints. +set(MODULE_NAME "TestPrimitives") +set(MODULE_PREFIX "TEST_FREERDP_PRIMITIVES") -cmake_minimum_required(VERSION 2.8) -set(MODULE_NAME "prim_test") -set(MODULE_PREFIX "PRIMITIVES_LIBRARY_TEST") +set(${MODULE_PREFIX}_DRIVER ${MODULE_NAME}.c) -set(PRIMITIVE_TEST_CFILES +set(${MODULE_PREFIX}_TESTS + TestPrimitives16to32bpp.c + TestPrimitivesAdd.c + TestPrimitivesAlphaComp.c + TestPrimitivesAndOr.c + TestPrimitivesColors.c + TestPrimitivesCopy.c + TestPrimitivesSet.c + TestPrimitivesShift.c + TestPrimitivesSign.c + TestPrimitivesYCoCg.c) + +create_test_sourcelist(${MODULE_PREFIX}_SRCS + ${${MODULE_PREFIX}_DRIVER} + ${${MODULE_PREFIX}_TESTS}) + +set(${MODULE_PREFIX}_EXTRA_SRCS prim_test.c - test_16to32bpp.c - test_add.c - test_alphaComp.c - test_andor.c - test_colors.c - test_copy.c - test_set.c - test_shift.c - test_sign.c - test_YCoCg.c - ../prim_16to32bpp.c - ../prim_add.c - ../prim_andor.c - ../prim_alphaComp.c - ../prim_colors.c - ../prim_copy.c - ../prim_set.c - ../prim_shift.c - ../prim_sign.c - ../prim_YCoCg.c - ../prim_16to32bpp_opt.c - ../prim_add_opt.c - ../prim_alphaComp_opt.c - ../prim_andor_opt.c - ../prim_colors_opt.c - ../prim_set_opt.c - ../prim_shift_opt.c - ../prim_sign_opt.c - ../prim_YCoCg_opt.c - ../primitives.c - ) - -set(PRIMITIVE_TEST_HEADERS - measure.h prim_test.h - ../prim_internal.h -) + measure.h) -set(PRIMITIVE_TEST_SRCS - ${PRIMITIVE_TEST_CFILES} - ${PRIMITIVE_TEST_HEADERS} - ) +add_executable(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS} ${${MODULE_PREFIX}_EXTRA_SRCS}) -include_directories(. ../../.. ../../../include ../../../winpr/include) -add_definitions(-DPRIM_STATIC=auto -DALL_PRIMITIVES_VERSIONS -DHAVE_CONFIG_H) +set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS + MONOLITHIC ${MONOLITHIC_BUILD} + MODULE freerdp + MODULES freerdp-primitives) + +set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} winpr) -# If these haven't been set by the caller, set them now to defaults. -if(NOT DEFINED WITH_IPP) - set(WITH_IPP FALSE) -endif() -if(NOT DEFINED WITH_SSE2) - if (CMAKE_SYSTEM_PROCESSOR MATCHES "arm*") - set(WITH_SSE2 FALSE) - else() - set(WITH_SSE2 TRUE) - endif() -endif() -if(NOT DEFINED WITH_NEON) - if (CMAKE_SYSTEM_PROCESSOR MATCHES "arm*") - set(WITH_NEON TRUE) - else() - set(WITH_NEON FALSE) - endif() -endif() +target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS}) -if(WITH_SSE2) - if(CMAKE_COMPILER_IS_GNUCC) - set(OPTFLAGS "${OPTFLAGS} -msse2 -mssse3 -O2 -Wdeclaration-after-statement") - endif() +add_definitions(-DPRIM_STATIC=auto -DALL_PRIMITIVES_VERSIONS) - if(MSVC) - set(OPTFLAGS "${OPTFLAGS} /arch:SSE2") - endif() -elseif(WITH_NEON) - if(CMAKE_COMPILER_IS_GNUCC) - set(OPTFLAGS "${OPTFLAGS} -mfpu=neon -mfloat-abi=${ARM_FP_ABI} -O2") - endif() - # TODO: Add MSVC equivalent -endif() +set_target_properties(${MODULE_NAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${TESTING_OUTPUT_DIRECTORY}") -add_executable(prim_test ${PRIMITIVE_TEST_SRCS}) - -if(WITH_IPP) - if(NOT DEFINED IPP_FOUND) - include(../../../cmake/FindIPP.cmake) - endif() - - # IPP PATH debugging messages - message(IPP_FOUND=${IPP_FOUND}) - message(IPP_VERSION_STR=${IPP_VERSION_STR}) - message(IPP_VERSION_MAJOR=${IPP_VERSION_MAJOR}) - message(IPP_VERSION_MINOR=${IPP_VERSION_MINOR}) - message(IPP_VERSION_BUILD=${IPP_VERSION_BUILD}) - message(IPP_ROOT_DIR=${IPP_ROOT_DIR}) - message(IPP_INCLUDE_DIRS=${IPP_INCLUDE_DIRS}) - message(IPP_LIBRARY_DIRS=${IPP_LIBRARY_DIRS}) - message(IPP_LIBRARIES=${IPP_LIBRARIES}) - message(IPP_COMPILER_LIBRARY_DIRS=${IPP_COMPILER_LIBRARY_DIRS}) - message(IPP_COMPILER_LIBRARIES=${IPP_COMPILER_LIBRARIES}) - message(IPP_LIBRARY_LIST=${IPP_LIBRARY_LIST}) - message(IPP_LIB_PREFIX=${IPP_LIB_PREFIX}) - message(IPP_LIB_SUFFIX=${IPP_LIB_SUFFIX}) - message(IPP_PREFIX=${IPP_PREFIX}) - message(IPP_SUFFIX=${IPP_SUFFIX}) - message(IPPCORE=${IPPCORE}) - message(IPPS=${IPPS}) - message(IPPI=${IPPI}) - message(IPPCC=${IPPCC}) - message(IPPCV=${IPPCV}) - message(IPPVM=${IPPVM}) - - if(CMAKE_COMPILER_IS_GNUCC) - foreach(INCLDIR ${IPP_INCLUDE_DIRS}) - set(OPTFLAGS "${OPTFLAGS} -I${INCLDIR}") - endforeach(INCLDIR) - endif() - target_link_libraries(prim_test ${IPP_LIBRARY_LIST}) -endif() - -set_property(SOURCE ${PRIMITIVE_TEST_CFILES} PROPERTY COMPILE_FLAGS ${OPTFLAGS}) - -find_library(WINPR_SYSINFO NAMES winpr-sysinfo HINTS ../../../winpr/libwinpr/sysinfo) -target_link_libraries(prim_test rt ${WINPR_SYSINFO}) - -if(NOT TESTING_OUTPUT_DIRECTORY) - set(TESTING_OUTPUT_DIRECTORY .) -endif() -add_test(prim_test ${TESTING_OUTPUT_DIRECTORY}/prim_test functionality) +foreach(test ${${MODULE_PREFIX}_TESTS}) + get_filename_component(TestName ${test} NAME_WE) + add_test(${TestName} ${TESTING_OUTPUT_DIRECTORY}/${MODULE_NAME} ${TestName}) +endforeach() set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "FreeRDP/Test") + diff --git a/libfreerdp/primitives/test/test_16to32bpp.c b/libfreerdp/primitives/test/TestPrimitives16to32bpp.c similarity index 94% rename from libfreerdp/primitives/test/test_16to32bpp.c rename to libfreerdp/primitives/test/TestPrimitives16to32bpp.c index dc0c60317..03a070e40 100644 --- a/libfreerdp/primitives/test/test_16to32bpp.c +++ b/libfreerdp/primitives/test/TestPrimitives16to32bpp.c @@ -28,6 +28,8 @@ static const int RGB_TRIAL_ITERATIONS = 1000; static const float TEST_TIME = 4.0; +extern BOOL g_TestPrimitivesPerformance; + extern pstatus_t general_RGB565ToARGB_16u32u_C3C4( const UINT16* pSrc, INT32 srcStep, UINT32* pDst, INT32 dstStep, @@ -134,7 +136,7 @@ static BOOL try_16To32( /* ------------------------------------------------------------------------- */ int test_RGB565ToARGB_16u32u_C3C4_func(void) { - INT16 ALIGN(data16[4096+3]); + UINT16 ALIGN(data16[4096+3]); BOOL success; success = TRUE; @@ -176,7 +178,6 @@ int test_RGB565ToARGB_16u32u_C3C4_speed(void) { UINT16 ALIGN(src[4096]); UINT32 ALIGN(dst[4096]); - int i; int size_array[] = { 64 }; get_random_data(src, sizeof(src)); @@ -186,3 +187,23 @@ int test_RGB565ToARGB_16u32u_C3C4_speed(void) size_array, 1, RGB_TRIAL_ITERATIONS, TEST_TIME); return SUCCESS; } + +int TestPrimitives16to32bpp(int argc, char* argv[]) +{ + int status; + + status = test_RGB565ToARGB_16u32u_C3C4_func(); + + if (status != SUCCESS) + return 1; + + if (g_TestPrimitivesPerformance) + { + status = test_RGB565ToARGB_16u32u_C3C4_speed(); + + if (status != SUCCESS) + return 1; + } + + return 0; +} diff --git a/libfreerdp/primitives/test/test_add.c b/libfreerdp/primitives/test/TestPrimitivesAdd.c similarity index 92% rename from libfreerdp/primitives/test/test_add.c rename to libfreerdp/primitives/test/TestPrimitivesAdd.c index 453e2a7de..08ab41ff4 100644 --- a/libfreerdp/primitives/test/test_add.c +++ b/libfreerdp/primitives/test/TestPrimitivesAdd.c @@ -23,6 +23,8 @@ static const int ADD16S_PRETEST_ITERATIONS = 300000*64; static const int TEST_TIME = 2.0; // seconds +extern BOOL g_TestPrimitivesPerformance; + extern pstatus_t general_add_16s( const INT16 *pSrc1, const INT16 *pSrc2, INT16 *pDst, int len); extern pstatus_t sse3_add_16s( @@ -112,3 +114,23 @@ int test_add16s_speed(void) test_sizes, NUM_TEST_SIZES, ADD16S_PRETEST_ITERATIONS, TEST_TIME); return SUCCESS; } + +int TestPrimitivesAdd(int argc, char* argv[]) +{ + int status; + + status = test_add16s_func(); + + if (status != SUCCESS) + return 1; + + if (g_TestPrimitivesPerformance) + { + status = test_add16s_speed(); + + if (status != SUCCESS) + return 1; + } + + return 0; +} diff --git a/libfreerdp/primitives/test/test_alphaComp.c b/libfreerdp/primitives/test/TestPrimitivesAlphaComp.c similarity index 95% rename from libfreerdp/primitives/test/test_alphaComp.c rename to libfreerdp/primitives/test/TestPrimitivesAlphaComp.c index c3b5e9ca1..18332dcb5 100644 --- a/libfreerdp/primitives/test/test_alphaComp.c +++ b/libfreerdp/primitives/test/TestPrimitivesAlphaComp.c @@ -22,6 +22,8 @@ static const int ALPHA_PRETEST_ITERATIONS = 5000000; static const float TEST_TIME = 5.0; +extern BOOL g_TestPrimitivesPerformance; + static const int block_size[] = { 4, 64, 256 }; #define NUM_BLOCK_SIZES (sizeof(block_size)/sizeof(int)) #define MAX_BLOCK_SIZE 256 @@ -233,3 +235,23 @@ int test_alphaComp_speed(void) return SUCCESS; } + +int TestPrimitivesAlphaComp(int argc, char* argv[]) +{ + int status; + + status = test_alphaComp_func(); + + if (status != SUCCESS) + return 1; + + if (g_TestPrimitivesPerformance) + { + status = test_alphaComp_speed(); + + if (status != SUCCESS) + return 1; + } + + return 0; +} diff --git a/libfreerdp/primitives/test/test_andor.c b/libfreerdp/primitives/test/TestPrimitivesAndOr.c similarity index 92% rename from libfreerdp/primitives/test/test_andor.c rename to libfreerdp/primitives/test/TestPrimitivesAndOr.c index d82991408..24d73d43a 100644 --- a/libfreerdp/primitives/test/test_andor.c +++ b/libfreerdp/primitives/test/TestPrimitivesAndOr.c @@ -23,6 +23,8 @@ static const int ANDOR_PRETEST_ITERATIONS = 100000; static const int TEST_TIME = 2.0; // seconds +extern BOOL g_TestPrimitivesPerformance; + extern pstatus_t general_andC_32u(const UINT32 *pSrc, UINT32 val, UINT32 *pDst, int len); extern pstatus_t sse3_andC_32u(const UINT32 *pSrc, UINT32 val, @@ -185,3 +187,36 @@ int test_or_32u_speed(void) test_sizes, NUM_TEST_SIZES, ANDOR_PRETEST_ITERATIONS, TEST_TIME); return SUCCESS; } + +int TestPrimitivesAndOr(int argc, char* argv[]) +{ + int status; + + status = test_and_32u_func(); + + if (status != SUCCESS) + return 1; + + if (g_TestPrimitivesPerformance) + { + status = test_and_32u_speed(); + + if (status != SUCCESS) + return 1; + } + + status = test_or_32u_func(); + + if (status != SUCCESS) + return 1; + + if (g_TestPrimitivesPerformance) + { + status = test_or_32u_speed(); + + if (status != SUCCESS) + return 1; + } + + return 0; +} diff --git a/libfreerdp/primitives/test/test_colors.c b/libfreerdp/primitives/test/TestPrimitivesColors.c similarity index 92% rename from libfreerdp/primitives/test/test_colors.c rename to libfreerdp/primitives/test/TestPrimitivesColors.c index 628cb5d5e..717328246 100644 --- a/libfreerdp/primitives/test/test_colors.c +++ b/libfreerdp/primitives/test/TestPrimitivesColors.c @@ -23,6 +23,8 @@ static const int RGB_TRIAL_ITERATIONS = 1000; static const int YCBCR_TRIAL_ITERATIONS = 1000; static const float TEST_TIME = 4.0; +extern BOOL g_TestPrimitivesPerformance; + extern pstatus_t general_RGBToRGB_16s8u_P3AC4R(const INT16 *pSrc[3], int srcStep, BYTE *pDst, int dstStep, const prim_size_t *roi); extern pstatus_t sse2_RGBToRGB_16s8u_P3AC4R(const INT16 *pSrc[3], @@ -241,3 +243,36 @@ int test_yCbCrToRGB_16s16s_P3P3_speed(void) size_array, 1, YCBCR_TRIAL_ITERATIONS, TEST_TIME); return SUCCESS; } + +int TestPrimitivesColors(int argc, char* argv[]) +{ + int status; + + status = test_RGBToRGB_16s8u_P3AC4R_func(); + + if (status != SUCCESS) + return 1; + + if (g_TestPrimitivesPerformance) + { + status = test_RGBToRGB_16s8u_P3AC4R_speed(); + + if (status != SUCCESS) + return 1; + } + + status = test_yCbCrToRGB_16s16s_P3P3_func(); + + if (status != SUCCESS) + return 1; + + if (g_TestPrimitivesPerformance) + { + status = test_yCbCrToRGB_16s16s_P3P3_speed(); + + if (status != SUCCESS) + return 1; + } + + return 0; +} diff --git a/libfreerdp/primitives/test/test_copy.c b/libfreerdp/primitives/test/TestPrimitivesCopy.c similarity index 89% rename from libfreerdp/primitives/test/test_copy.c rename to libfreerdp/primitives/test/TestPrimitivesCopy.c index 13b4f57f2..189969d7c 100644 --- a/libfreerdp/primitives/test/test_copy.c +++ b/libfreerdp/primitives/test/TestPrimitivesCopy.c @@ -26,6 +26,8 @@ static const int TEST_TIME = 1.0; // seconds extern pstatus_t sse3_copy_8u(const BYTE *pSrc, BYTE *pDst, int len); #endif +extern BOOL g_TestPrimitivesPerformance; + /* ------------------------------------------------------------------------- */ int test_copy8u_func(void) { @@ -84,3 +86,23 @@ int test_copy8u_speed(void) test_sizes, NUM_TEST_SIZES, MEMCPY_PRETEST_ITERATIONS, TEST_TIME); return SUCCESS; } + +int TestPrimitivesCopy(int argc, char* argv[]) +{ + int status; + + status = test_copy8u_func(); + + if (status != SUCCESS) + return 1; + + if (g_TestPrimitivesPerformance) + { + status = test_copy8u_speed(); + + if (status != SUCCESS) + return 1; + } + + return 0; +} diff --git a/libfreerdp/primitives/test/test_set.c b/libfreerdp/primitives/test/TestPrimitivesSet.c similarity index 92% rename from libfreerdp/primitives/test/test_set.c rename to libfreerdp/primitives/test/TestPrimitivesSet.c index 32d22c71d..3d689eeff 100644 --- a/libfreerdp/primitives/test/test_set.c +++ b/libfreerdp/primitives/test/TestPrimitivesSet.c @@ -23,6 +23,8 @@ static const int MEMSET8_PRETEST_ITERATIONS = 100000000; static const int MEMSET32_PRETEST_ITERATIONS = 40000000; static const float TEST_TIME = 1.0; +extern BOOL g_TestPrimitivesPerformance; + extern pstatus_t general_set_8u(BYTE val, BYTE *pDst, int len); extern pstatus_t sse2_set_8u(BYTE val, BYTE *pDst, int len); extern pstatus_t general_set_32s(INT32 val, INT32 *pDst, int len); @@ -303,3 +305,49 @@ int test_set32s_speed(void) #endif return SUCCESS; } + +int TestPrimitivesSet(int argc, char* argv[]) +{ + int status; + + status = test_set8u_func(); + + if (status != SUCCESS) + return 1; + + if (g_TestPrimitivesPerformance) + { + status = test_set8u_speed(); + + if (status != SUCCESS) + return 1; + } + + status = test_set32s_func(); + + if (status != SUCCESS) + return 1; + + if (g_TestPrimitivesPerformance) + { + status = test_set32s_speed(); + + if (status != SUCCESS) + return 1; + } + + status = test_set32u_func(); + + if (status != SUCCESS) + return 1; + + if (g_TestPrimitivesPerformance) + { + status = test_set32u_speed(); + + if (status != SUCCESS) + return 1; + } + + return 0; +} diff --git a/libfreerdp/primitives/test/test_shift.c b/libfreerdp/primitives/test/TestPrimitivesShift.c similarity index 88% rename from libfreerdp/primitives/test/test_shift.c rename to libfreerdp/primitives/test/TestPrimitivesShift.c index 588187a4b..693c12b34 100644 --- a/libfreerdp/primitives/test/test_shift.c +++ b/libfreerdp/primitives/test/TestPrimitivesShift.c @@ -23,6 +23,8 @@ static const int SHIFT_PRETEST_ITERATIONS = 50000; static const float TEST_TIME = 1.0; +extern BOOL g_TestPrimitivesPerformance; + extern pstatus_t general_lShiftC_16s( const INT16 *pSrc, int val, INT16 *pDst, int len); extern pstatus_t general_rShiftC_16s( @@ -187,3 +189,62 @@ int test_rShift_16u_speed(void) test_sizes, NUM_TEST_SIZES, SHIFT_PRETEST_ITERATIONS, TEST_TIME); return SUCCESS; } + +int TestPrimitivesShift(int argc, char* argv[]) +{ + int status; + + status = test_lShift_16s_func(); + + if (status != SUCCESS) + return 1; + + if (g_TestPrimitivesPerformance) + { + status = test_lShift_16s_speed(); + + if (status != SUCCESS) + return 1; + } + + status = test_lShift_16u_func(); + + if (status != SUCCESS) + return 1; + + if (g_TestPrimitivesPerformance) + { + status = test_lShift_16u_speed(); + + if (status != SUCCESS) + return 1; + } + + status = test_rShift_16s_func(); + + if (status != SUCCESS) + return 1; + + if (g_TestPrimitivesPerformance) + { + status = test_rShift_16s_speed(); + + if (status != SUCCESS) + return 1; + } + + status = test_rShift_16u_func(); + + if (status != SUCCESS) + return 1; + + if (g_TestPrimitivesPerformance) + { + status = test_rShift_16u_speed(); + + if (status != SUCCESS) + return 1; + } + + return 0; +} diff --git a/libfreerdp/primitives/test/test_sign.c b/libfreerdp/primitives/test/TestPrimitivesSign.c similarity index 90% rename from libfreerdp/primitives/test/test_sign.c rename to libfreerdp/primitives/test/TestPrimitivesSign.c index beb22ee1d..0d06d64bc 100644 --- a/libfreerdp/primitives/test/test_sign.c +++ b/libfreerdp/primitives/test/TestPrimitivesSign.c @@ -22,6 +22,8 @@ static const int SIGN_PRETEST_ITERATIONS = 100000; static const float TEST_TIME = 1.0; +extern BOOL g_TestPrimitivesPerformance; + extern pstatus_t general_sign_16s(const INT16 *pSrc, INT16 *pDst, int len); #ifdef WITH_SSE2 extern pstatus_t ssse3_sign_16s(const INT16 *pSrc, INT16 *pDst, int len); @@ -101,3 +103,23 @@ int test_sign16s_speed(void) test_sizes, NUM_TEST_SIZES, SIGN_PRETEST_ITERATIONS, TEST_TIME); return SUCCESS; } + +int TestPrimitivesSign(int argc, char* argv[]) +{ + int status; + + status = test_sign16s_func(); + + if (status != SUCCESS) + return 1; + + if (g_TestPrimitivesPerformance) + { + status = test_sign16s_speed(); + + if (status != SUCCESS) + return 1; + } + + return 0; +} diff --git a/libfreerdp/primitives/test/test_YCoCg.c b/libfreerdp/primitives/test/TestPrimitivesYCoCg.c similarity index 91% rename from libfreerdp/primitives/test/test_YCoCg.c rename to libfreerdp/primitives/test/TestPrimitivesYCoCg.c index f09acd5de..d6f4d4289 100644 --- a/libfreerdp/primitives/test/test_YCoCg.c +++ b/libfreerdp/primitives/test/TestPrimitivesYCoCg.c @@ -26,6 +26,8 @@ static const int YCOCG_TRIAL_ITERATIONS = 20000; static const float TEST_TIME = 4.0; +extern BOOL g_TestPrimitivesPerformance; + extern pstatus_t general_YCoCgRToRGB_8u_AC4R(const BYTE *pSrc, INT32 srcStep, BYTE *pDst, INT32 dstStep, UINT32 width, UINT32 height, UINT8 shift, BOOL withAlpha, BOOL invert); @@ -97,7 +99,6 @@ int test_YCoCgRToRGB_8u_AC4R_speed(void) { INT32 ALIGN(in[4096]); INT32 ALIGN(out[4096]); - int i; int size_array[] = { 64 }; get_random_data(in, sizeof(in)); @@ -107,3 +108,23 @@ int test_YCoCgRToRGB_8u_AC4R_speed(void) size_array, 1, YCOCG_TRIAL_ITERATIONS, TEST_TIME); return SUCCESS; } + +int TestPrimitivesYCoCg(int argc, char* argv[]) +{ + int status; + + status = test_YCoCgRToRGB_8u_AC4R_func(); + + if (status != SUCCESS) + return 1; + + if (g_TestPrimitivesPerformance) + { + status = test_YCoCgRToRGB_8u_AC4R_speed(); + + if (status != SUCCESS) + return 1; + } + + return 0; +} diff --git a/libfreerdp/primitives/test/prim_test.c b/libfreerdp/primitives/test/prim_test.c index e9824a181..a19b5f64b 100644 --- a/libfreerdp/primitives/test/prim_test.c +++ b/libfreerdp/primitives/test/prim_test.c @@ -18,108 +18,22 @@ #include "prim_test.h" +#include #include #include -#include -#include + #include +#include #ifdef HAVE_UNISTD_H #include #endif -#include -#include - +BOOL g_TestPrimitivesPerformance = FALSE; int test_sizes[] = { 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096 }; -int Quiet = 0; - - /* ------------------------------------------------------------------------- */ -typedef struct -{ - UINT32 flag; - const char *str; -} flagpair_t; - -static const flagpair_t flags[] = -{ -#ifdef _M_IX86_AMD64 - { PF_MMX_INSTRUCTIONS_AVAILABLE, "MMX" }, - { PF_3DNOW_INSTRUCTIONS_AVAILABLE, "3DNow" }, - { PF_SSE_INSTRUCTIONS_AVAILABLE, "SSE" }, - { PF_SSE2_INSTRUCTIONS_AVAILABLE, "SSE2" }, - { PF_SSE3_INSTRUCTIONS_AVAILABLE, "SSE3" }, -#elif defined(_M_ARM) - { PF_ARM_VFP3, "VFP3" }, - { PF_ARM_INTEL_WMMX, "IWMMXT" }, - { PF_ARM_NEON_INSTRUCTIONS_AVAILABLE, "NEON" }, -#endif -}; - -static const flagpair_t flags_extended[] = -{ -#ifdef _M_IX86_AMD64 - { PF_EX_3DNOW_PREFETCH, "3DNow-PF" }, - { PF_EX_SSSE3, "SSSE3" }, - { PF_EX_SSE41, "SSE4.1" }, - { PF_EX_SSE42, "SSE4.2" }, - { PF_EX_AVX, "AVX" }, - { PF_EX_FMA, "FMA" }, - { PF_EX_AVX_AES, "AVX-AES" }, - { PF_EX_AVX2, "AVX2" }, -#elif defined(_M_ARM) - { PF_EX_ARM_VFP1, "VFP1"}, - { PF_EX_ARM_VFP4, "VFP4" }, -#endif -}; - -void primitives_flags_str(char* str, size_t len) -{ - int i; - - *str = '\0'; - --len; /* for the '/0' */ - - for (i = 0; i < sizeof(flags) / sizeof(flagpair_t); ++i) - { - if (IsProcessorFeaturePresent(flags[i].flag)) - { - int slen = strlen(flags[i].str) + 1; - - if (len < slen) - break; - - if (*str != '\0') - strcat(str, " "); - - strcat(str, flags[i].str); - len -= slen; - } - } - for (i = 0; i < sizeof(flags_extended) / sizeof(flagpair_t); ++i) - { - if (IsProcessorFeaturePresentEx(flags_extended[i].flag)) - { - int slen = strlen(flags_extended[i].str) + 1; - - if (len < slen) - break; - - if (*str != '\0') - strcat(str, " "); - - strcat(str, flags_extended[i].str); - len -= slen; - } - } -} - -/* ------------------------------------------------------------------------- */ -static void get_random_data_lrand( - void *buffer, - size_t size) +static void get_random_data_lrand(void *buffer, size_t size) { static int seeded = 0; long int *ptr = (long int *) buffer; @@ -145,11 +59,9 @@ static void get_random_data_lrand( } /* ------------------------------------------------------------------------- */ -void get_random_data( - void *buffer, - size_t size) +void get_random_data(void *buffer, size_t size) { -#ifdef linux +#ifdef __linux__ size_t offset = 0; int fd = open("/dev/urandom", O_RDONLY); if (fd < 0) @@ -171,373 +83,39 @@ void get_random_data( } /* ------------------------------------------------------------------------- */ -float _delta_time( - const struct timespec *t0, - const struct timespec *t1) +float _delta_time(const struct timespec *t0, const struct timespec *t1) { - INT64 secs = (INT64) (t1->tv_sec) - (INT64) (t0->tv_sec); - long nsecs = t1->tv_nsec - t0->tv_nsec; + INT64 secs = (INT64) (t1->tv_sec) - (INT64) (t0->tv_sec); + long nsecs = t1->tv_nsec - t0->tv_nsec; double retval; - if (nsecs < 0) + if (nsecs < 0) { - --secs; - nsecs += 1000000000; - } - retval = (double) secs + (double) nsecs / (double) 1000000000.0; - return (retval < 0.0) ? 0.0 : (float) retval; + --secs; + nsecs += 1000000000; + } + + retval = (double) secs + (double) nsecs / (double) 1000000000.0; + return (retval < 0.0) ? 0.0 : (float) retval; } /* ------------------------------------------------------------------------- */ -void _floatprint( - float t, - char *output) +void _floatprint(float t, char *output) { - /* I don't want to link against -lm, so avoid log,exp,... */ - float f = 10.0; + /* I don't want to link against -lm, so avoid log,exp,... */ + float f = 10.0; int i; - while (t > f) f *= 10.0; - f /= 1000.0; - i = ((int) (t/f+0.5)) * (int) f; - if (t < 0.0) sprintf(output, "%f", t); - else if (i == 0) sprintf(output, "%d", (int) (t+0.5)); - else if (t < 1e+3) sprintf(output, "%3d", i); - else if (t < 1e+6) sprintf(output, "%3d,%03d", - i/1000, i % 1000); - else if (t < 1e+9) sprintf(output, "%3d,%03d,000", - i/1000000, (i % 1000000) / 1000); - else if (t < 1e+12) sprintf(output, "%3d,%03d,000,000", - i/1000000000, (i % 1000000000) / 1000000); - else sprintf(output, "%f", t); -} - -/* ------------------------------------------------------------------------- */ -/* Specific areas to test: */ -#define TEST_COPY8 (1<<0) -#define TEST_SET8 (1<<1) -#define TEST_SET32S (1<<2) -#define TEST_SET32U (1<<3) -#define TEST_SIGN16S (1<<4) -#define TEST_ADD16S (1<<5) -#define TEST_LSHIFT16S (1<<6) -#define TEST_LSHIFT16U (1<<7) -#define TEST_RSHIFT16S (1<<8) -#define TEST_RSHIFT16U (1<<9) -#define TEST_RGB (1<<10) -#define TEST_ALPHA (1<<11) -#define TEST_AND (1<<12) -#define TEST_OR (1<<13) -#define TEST_YCOCG (1<<14) -#define TEST_16TO32 (1<<15) - -/* Specific types of testing: */ -#define TEST_FUNCTIONALITY (1<<0) -#define TEST_PERFORMANCE (1<<1) - -/* ------------------------------------------------------------------------- */ - -typedef struct -{ - const char *testStr; - UINT32 bits; -} test_t; - -static const test_t testList[] = -{ - { "all", 0xFFFFFFFFU }, - { "copy", TEST_COPY8 }, - { "copy8", TEST_COPY8 }, - { "set", TEST_SET8|TEST_SET32S|TEST_SET32U }, - { "set8", TEST_SET8 }, - { "set32", TEST_SET32S|TEST_SET32U }, - { "set32s", TEST_SET32S }, - { "set32u", TEST_SET32U }, - { "sign", TEST_SIGN16S }, - { "sign16s", TEST_SIGN16S }, - { "add", TEST_ADD16S }, - { "add16s", TEST_ADD16S }, - { "lshift", TEST_LSHIFT16S|TEST_LSHIFT16U }, - { "rshift", TEST_RSHIFT16S|TEST_RSHIFT16U }, - { "shift", TEST_LSHIFT16S|TEST_LSHIFT16U|TEST_RSHIFT16S|TEST_RSHIFT16U }, - { "lshift16s", TEST_LSHIFT16S }, - { "lshift16u", TEST_LSHIFT16U }, - { "rshift16s", TEST_RSHIFT16S }, - { "rshift16u", TEST_RSHIFT16U }, - { "rgb", TEST_RGB }, - { "color", TEST_RGB }, - { "colors", TEST_RGB }, - { "ycocg", TEST_YCOCG }, - { "alpha", TEST_ALPHA }, - { "and", TEST_AND }, - { "or", TEST_OR }, - { "16to32", TEST_16TO32 } -}; - -#define NUMTESTS (sizeof(testList)/sizeof(test_t)) - -static const test_t testTypeList[] = -{ - { "functionality", TEST_FUNCTIONALITY }, - { "performance", TEST_PERFORMANCE }, -}; - -#define NUMTESTTYPES (sizeof(testTypeList)/sizeof(test_t)) - -int main(int argc, char** argv) -{ - int i; - char hints[1024]; - UINT32 testSet = 0; - UINT32 testTypes = 0; - int results = SUCCESS; - - /* Parse command line for the test set. */ - - for (i = 1; i < argc; ++i) - { - int j; - BOOL found = 0; - - for (j=0; j f) f *= 10.0; + f /= 1000.0; + i = ((int) (t/f+0.5)) * (int) f; + if (t < 0.0) sprintf(output, "%f", t); + else if (i == 0) sprintf(output, "%d", (int) (t+0.5)); + else if (t < 1e+3) sprintf(output, "%3d", i); + else if (t < 1e+6) sprintf(output, "%3d,%03d", + i/1000, i % 1000); + else if (t < 1e+9) sprintf(output, "%3d,%03d,000", + i/1000000, (i % 1000000) / 1000); + else if (t < 1e+12) sprintf(output, "%3d,%03d,000,000", + i/1000000000, (i % 1000000000) / 1000000); + else sprintf(output, "%f", t); } diff --git a/libfreerdp/primitives/test/prim_test.h b/libfreerdp/primitives/test/prim_test.h index e336e3eb5..42f8777c9 100644 --- a/libfreerdp/primitives/test/prim_test.h +++ b/libfreerdp/primitives/test/prim_test.h @@ -20,31 +20,22 @@ #ifndef __PRIMTEST_H_INCLUDED__ #define __PRIMTEST_H_INCLUDED__ -#include -#include +#include +#include #include - -#include -#include -#include +#include #include -#include + +#include "measure.h" #ifdef WITH_IPP #include #include #endif -#define BLOCK_ALIGNMENT 16 -#ifdef __GNUC__ -#define ALIGN(x) x __attribute((aligned(BLOCK_ALIGNMENT))) -#define POSSIBLY_UNUSED(x) x __attribute((unused)) -#else -/* TODO: Someone needs to finish this for non-GNU C */ -#define ALIGN(x) x -#define POSSIBLY_UNUSED(x) x -#endif +#define ALIGN(x) x DECLSPEC_ALIGN(MEMORY_ALLOCATION_ALIGNMENT) + #define ABS(_x_) ((_x_) < 0 ? (-(_x_)) : (_x_)) #define MAX_TEST_SIZE 4096 From be60bddec0a0d38e64387acc195a2e5e18976275 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 4 Sep 2014 16:34:29 -0400 Subject: [PATCH 160/170] libfreerdp-primitives: add YCbCr color converter test --- .../codec/test/TestFreeRDPCodecProgressive.c | 2 +- libfreerdp/primitives/test/CMakeLists.txt | 1 + .../primitives/test/TestPrimitivesYCbCr.c | 2183 +++++++++++++++++ 3 files changed, 2185 insertions(+), 1 deletion(-) create mode 100644 libfreerdp/primitives/test/TestPrimitivesYCbCr.c diff --git a/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c b/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c index ac466b9d3..af35d1fc7 100644 --- a/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c +++ b/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c @@ -799,7 +799,7 @@ int test_progressive_load_bitmaps(char* ms_sample_path, EGFX_SAMPLE_FILE bitmaps return 1; } -int test_memcmp(const BYTE* mem1, const BYTE* mem2, int size) +static int test_memcmp(const BYTE* mem1, const BYTE* mem2, int size) { int index = 0; diff --git a/libfreerdp/primitives/test/CMakeLists.txt b/libfreerdp/primitives/test/CMakeLists.txt index c5fe100c8..8b7162455 100644 --- a/libfreerdp/primitives/test/CMakeLists.txt +++ b/libfreerdp/primitives/test/CMakeLists.txt @@ -14,6 +14,7 @@ set(${MODULE_PREFIX}_TESTS TestPrimitivesSet.c TestPrimitivesShift.c TestPrimitivesSign.c + TestPrimitivesYCbCr.c TestPrimitivesYCoCg.c) create_test_sourcelist(${MODULE_PREFIX}_SRCS diff --git a/libfreerdp/primitives/test/TestPrimitivesYCbCr.c b/libfreerdp/primitives/test/TestPrimitivesYCbCr.c new file mode 100644 index 000000000..0a1301ec5 --- /dev/null +++ b/libfreerdp/primitives/test/TestPrimitivesYCbCr.c @@ -0,0 +1,2183 @@ + +#include "prim_test.h" + +#include + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +static INT16 TEST_Y_COMPONENT[4096] = +{ + -32, +16, +64, +272, -32, -16, +0, -16, + -32, -24, -16, -8, +0, -24, -48, -72, + -96, -90, -84, -78, -72, -98, -124, -150, + -176, -192, -208, -224, -240, -256, -272, -288, + -304, -304, -304, -304, -304, -336, -368, -400, + -432, -450, -468, -486, -504, -522, -540, -558, + -576, -598, -620, -642, -664, -686, -708, -730, + -752, -768, -784, -800, -816, -816, -816, -816, + +68, +120, +172, +240, +53, +55, +57, +43, + +30, +32, +34, +36, +38, +20, +2, -16, + -34, -36, -38, -40, -42, -68, -94, -120, + -146, -148, -151, -186, -220, -227, -233, -240, + -247, -254, -261, -268, -275, -302, -329, -356, + -384, -403, -423, -443, -463, -484, -506, -528, + -550, -572, -594, -616, -639, -673, -707, -709, + -712, -733, -754, -775, -796, -796, -796, -796, + +168, +224, +281, +209, +138, +126, +115, +103, + +92, +88, +84, +80, +76, +64, +52, +40, + +28, +18, +8, -2, -12, -38, -64, -90, + -116, -105, -95, -148, -201, -198, -195, -192, + -190, -204, -218, -232, -247, -269, -291, -313, + -336, -357, -379, -400, -422, -447, -473, -498, + -524, -546, -569, -591, -614, -660, -707, -689, + -672, -698, -724, -750, -776, -776, -776, -776, + +268, +312, +357, +273, +191, +181, +172, +162, + +154, +144, +134, +124, +114, +108, +102, +80, + +58, +56, +54, +52, +50, +24, -2, -44, + -86, -61, -38, -93, -149, -137, -124, -144, + -165, -170, -175, -196, -218, -235, -252, -269, + -288, -310, -334, -357, -381, -409, -439, -468, + -498, -520, -543, -565, -589, -647, -706, -668, + -632, -663, -694, -725, -756, -756, -756, -756, + +368, +401, +434, +339, +244, +237, +230, +223, + +216, +200, +184, +168, +152, +152, +152, +120, + +88, +94, +100, +106, +112, +86, +60, +2, + -56, -18, +19, -39, -98, -76, -55, -97, + -140, -136, -133, -161, -190, -202, -215, -227, + -240, -265, -290, -315, -340, -373, -406, -439, + -472, -495, -518, -541, -564, -635, -706, -649, + -592, -628, -664, -700, -736, -736, -736, -736, + +404, +556, +454, +383, +313, +531, +239, +282, + +326, +304, +282, +260, +238, +246, +254, +118, + +238, +196, +154, +32, -90, -88, -86, +76, + +238, +243, +247, +29, -191, -232, -272, -121, + +29, -62, -153, -149, -145, -162, -180, -197, + -216, -240, -265, -289, -315, -345, -376, -406, + -438, -446, -456, -497, -539, -595, -653, -502, + -608, -625, -642, -675, -708, -708, -708, -708, + +440, +713, +475, +428, +382, +827, +249, +342, + +436, +408, +380, +352, +324, +340, +356, -140, + -124, +42, +208, +214, +220, +250, +280, +406, + +532, +504, +476, +352, +229, +125, +22, -146, + -314, -244, -175, -138, -101, -123, -146, -169, + -192, -216, -241, -265, -290, -318, -347, -375, + -404, -399, -395, -454, -514, -557, -601, -356, + -624, -622, -620, -650, -680, -680, -680, -680, + +604, +677, +495, +457, +419, +770, +354, +386, + +418, +416, +414, +380, +346, +258, -342, -302, + -6, +288, +582, +604, +626, +588, +550, +688, + +826, +829, +833, +724, +616, +481, +348, +181, + +15, -139, -292, -175, -56, -83, -112, -139, + -168, -192, -216, -240, -265, -291, -317, -343, + -370, -351, -333, -411, -489, -486, -484, -402, + -576, -587, -598, -625, -652, -652, -652, -652, + +1280, +1154, +1028, +998, +968, +970, +460, +430, + +400, +424, +448, +408, +368, +432, -528, -208, + +112, +534, +956, +994, +1032, +926, +820, +970, + +1120, +1155, +1190, +1097, +1004, +839, +674, +509, + +344, +223, +102, +45, -12, -45, -78, -111, + -144, -168, -192, -216, -240, -264, -288, -312, + -336, -304, -272, -368, -464, -416, -368, -448, + -528, -552, -576, -600, -624, -624, -624, -624, + +770, +671, +573, +554, +536, +629, +467, +464, + +462, +492, +523, +490, +457, +281, -405, -101, + +204, +599, +995, +1310, +1370, +1297, +1225, +1296, + +1368, +1432, +1498, +1402, +1308, +1184, +1062, +874, + +688, +586, +485, +303, +123, -82, -32, -76, + -122, -174, -226, -199, -171, -193, -216, -238, + -261, -314, -368, -325, -283, -360, -438, -451, + -465, -515, -565, -583, -601, -617, -633, -633, + +772, +701, +630, +623, +616, +545, +474, +499, + +524, +561, +599, +572, +546, +131, -283, +6, + +296, +665, +1034, +1627, +1708, +1669, +1630, +1623, + +1616, +1711, +1806, +1709, +1612, +1531, +1450, +1241, + +1032, +950, +869, +563, +258, -120, +15, -42, + -100, -180, -261, -182, -103, -123, -144, -165, + -186, -325, -464, -283, -102, -305, -508, -455, + -402, -478, -554, -566, -578, -610, -642, -642, + +774, +730, +687, +675, +664, +620, +577, +581, + +586, +597, +610, +590, +571, -147, -96, +209, + +516, +794, +1073, +1575, +1822, +1976, +1875, +1869, + +1864, +1988, +2114, +2014, +1916, +1876, +1838, +1606, + +1376, +1266, +1156, +902, +137, -61, -3, -120, + -238, -122, -7, -69, -130, -164, -200, -219, + -239, -271, -304, -128, -209, -297, -386, -426, + -467, -937, -895, -549, -459, -667, -619, -619, + +776, +760, +744, +728, +712, +696, +680, +664, + +648, +635, +622, +609, +596, -425, +90, +413, + +736, +924, +1112, +1524, +1936, +2284, +2120, +2116, + +2112, +2267, +2422, +2321, +2220, +2223, +2226, +1973, + +1720, +1582, +1444, +1242, +16, -2, -20, +58, + +136, -65, -267, -212, -158, -207, -257, -274, + -292, -218, -144, +26, -316, -290, -264, -142, + -20, +2956, +2860, -788, -852, -980, -596, -596, + +826, +807, +789, +770, +752, +749, +747, +744, + +742, +677, +613, +516, +421, -285, +288, +573, + +860, +1081, +1303, +1668, +2034, +2313, +2337, +2344, + +2352, +2452, +2554, +2574, +2596, +2506, +2418, +2248, + +2080, +1961, +1843, +925, +7, +40, +74, +748, + +654, +453, +251, +48, -154, -107, -61, -111, + -161, -28, +104, +45, -271, -274, -278, -842, + +1411, +3007, +3323, +327, -1389, -1197, -493, -493, + +876, +855, +834, +813, +792, +803, +814, +825, + +836, +720, +605, +681, +758, +110, +487, +735, + +984, +1239, +1494, +1813, +2132, +2343, +2554, +2573, + +2592, +2639, +2686, +2829, +2972, +2791, +2610, +2525, + +2440, +2341, +2243, +608, -2, +83, +169, +1438, + +1172, +970, +768, +565, +363, +249, +135, +52, + -30, -95, -160, -193, -226, -259, -292, +763, + -742, +2290, +1738, -1118, -902, -902, -390, -390, + +926, +902, +879, +855, +832, +824, +817, +809, + +802, +763, +724, +397, +2375, +970, +589, +848, + +1108, +1396, +1685, +1941, +2198, +2468, +2739, +2785, + +2832, +2888, +2946, +3178, +2900, +3058, +2962, +2848, + +2736, +2896, +2546, -364, +309, +205, +871, +1760, + +1626, +1471, +1317, +1145, +975, +844, +714, +599, + +485, +351, +216, +146, +75, -355, +750, +2687, + +529, -1067, -615, -835, -799, -847, -383, -383, + +976, +950, +924, +898, +872, +846, +820, +794, + +768, +806, +844, +882, +1432, +2598, +692, +962, + +1232, +1554, +1876, +2070, +2264, +2594, +2924, +2998, + +3072, +3139, +3206, +3273, +2316, +3071, +3314, +3173, + +3032, +2941, +1826, -57, +108, +73, +1574, +2083, + +2080, +1973, +1866, +1727, +1588, +1441, +1294, +1147, + +1000, +796, +592, +484, +376, +828, +256, +772, + -248, -72, -408, +984, -184, -536, -376, -376, + +1026, +997, +969, +941, +913, +888, +864, +840, + +816, +762, +709, +768, +1339, +2269, +2176, +1411, + +1414, +1677, +1941, +2188, +2436, +2730, +3023, +3157, + +3291, +3349, +3409, +3420, +2152, +3000, +3594, +3403, + +3213, +3233, +951, +12, +97, -303, +2883, +2755, + +2373, +2312, +2252, +2143, +2036, +1861, +1687, +1544, + +1403, +1254, +1106, +974, +842, +1229, +1105, +21, + +217, +46, -381, +1912, +3181, +2765, +301, -723, + +1076, +1045, +1015, +984, +954, +931, +909, +886, + +864, +719, +575, +654, +1246, +1685, +3149, +1604, + +1596, +1801, +2006, +2307, +2609, +2866, +3123, +3316, + +3510, +3561, +3613, +3568, +1988, +2931, +3875, +3634, + +3394, +3527, +76, +81, +86, +859, +3168, +2917, + +2666, +2652, +2639, +2561, +2484, +2282, +2081, +1943, + +1806, +1713, +1621, +1464, +1308, +1119, +931, +550, + +170, -92, -354, +1560, +3986, +1970, -558, -558, + +1126, +1092, +1060, +1027, +995, +973, +953, +932, + +912, +899, +888, -340, +1249, +1756, +2521, +2421, + +1810, +2036, +2263, +2521, +2781, +3066, +3350, +3443, + +3537, +3612, +3688, +3476, +2496, +3021, +3803, +3833, + +3863, +2843, +33, +133, -21, +2099, +3197, +3061, + +2927, +2944, +2961, +2882, +2804, +2607, +2410, +2309, + +2209, +2139, +2071, +1842, +1614, +1328, +1044, +663, + +283, +10, -263, -488, -201, -201, -457, -457, + +1176, +1141, +1106, +1071, +1036, +1017, +998, +979, + +960, +825, +690, +203, +740, +1573, +1894, +3239, + +2024, +2272, +2521, +2737, +2954, +3010, +3067, +3315, + +3564, +3664, +3764, +3384, +3004, +3112, +3732, +3776, + +3820, +1905, -10, +187, -128, +3341, +3226, +3207, + +3188, +3236, +3284, +3204, +3124, +2932, +2740, +2676, + +2612, +2567, +2522, +2221, +1920, +1539, +1158, +777, + +396, +112, -172, -488, -292, -324, -356, -356, + +1194, +1162, +1131, +1099, +1069, +1047, +1026, +972, + +920, +969, +507, +380, +767, +1428, +1834, +2799, + +2486, +2347, +2721, +2919, +3118, +3290, +3462, +3266, + +3071, +3157, +3243, +3521, +3800, +3674, +3548, +3710, + +3873, +874, +179, +91, +517, +3439, +3291, +3333, + +3377, +3403, +3430, +3361, +3292, +3174, +3057, +3004, + +2951, +2761, +2572, +2222, +1874, +1554, +1235, +883, + +533, +220, -93, -470, -335, -319, -303, -303, + +1212, +1184, +1157, +1129, +1102, +1078, +1055, +967, + +880, +1114, +325, +559, +794, +1284, +1775, +2361, + +2948, +2423, +2923, +3103, +3283, +3314, +3346, +3474, + +3602, +3674, +3747, +3659, +3572, +3980, +3877, +3901, + +3926, -157, +368, +253, +1674, +3795, +3356, +3461, + +3566, +3571, +3577, +3518, +3460, +3417, +3375, +3332, + +3290, +2956, +2623, +2225, +1828, +1570, +1313, +991, + +670, +328, -14, -452, -378, -314, -250, -250, + +1230, +1206, +1182, +1158, +1135, +1109, +1083, +1025, + +968, +779, +78, +481, +885, +1284, +1939, +2466, + +3250, +2626, +2772, +3157, +3543, +3514, +3486, +3729, + +3717, +3775, +3834, +3780, +3728, +3934, +3885, +3915, + +2667, +92, +333, +173, +2831, +3701, +3549, +3587, + +3627, +3642, +3659, +3643, +3628, +3675, +3724, +3436, + +3149, +2847, +2545, +2275, +2006, +1730, +1454, +1114, + +775, +388, +1, -402, -293, -309, -325, -325, + +1248, +1228, +1208, +1188, +1168, +1140, +1112, +1084, + +1056, +700, +344, +660, +976, +1284, +2104, +2316, + +3040, +2319, +2110, +2189, +2268, +2691, +3114, +3729, + +3832, +3877, +3922, +3903, +3884, +3889, +3894, +3931, + +1408, +341, +298, +95, +3988, +3609, +3742, +3715, + +3688, +3715, +3742, +3769, +3796, +3679, +3562, +3285, + +3008, +2738, +2468, +2326, +2184, +1890, +1596, +1238, + +880, +448, +16, -352, -208, -304, -400, -400, + +1296, +1284, +1272, +1260, +1249, +1165, +1081, +1093, + +1106, +232, +382, +677, +971, +973, +1232, +834, + +693, +537, +639, +564, +490, +563, +637, -106, + +944, +2358, +3773, +3795, +4074, +3964, +3855, +4337, + +212, +204, +197, +1341, +4023, +3813, +3860, +3810, + +3762, +3766, +3771, +3776, +3781, +3603, +3427, +3201, + +2977, +2838, +2699, +2400, +2101, +1982, +1607, +1280, + +954, +545, -120, -321, -266, -314, -362, -362, + +1344, +1340, +1337, +1333, +1330, +1190, +1051, +1103, + +1156, +20, +933, +950, +967, +919, +872, +889, + +906, +805, +705, +733, +761, +740, +720, +668, + +616, +328, +40, +1640, +3752, +3784, +3816, +3208, + +40, +581, +97, +2589, +4058, +4018, +3979, +3907, + +3836, +3818, +3801, +3784, +3767, +3529, +3292, +3375, + +3458, +3706, +3954, +3754, +3555, +2843, +1619, +1067, + +516, +386, -256, -290, -324, -324, -324, -324, + +1392, +1364, +1337, +1309, +1283, +1247, +1212, +968, + +982, +1424, +1099, +1079, +1058, +1072, +1088, +815, + +799, +1056, +802, +772, +743, +645, +547, +769, + +736, +649, +563, +332, +102, +1939, +4033, +1982, + +444, +332, -36, +4076, +4093, +4047, +4001, +3955, + +3910, +3870, +3830, +3791, +3752, +3806, +3861, +3835, + +3811, +3678, +3545, +3380, +3216, +3639, +3806, +2341, + +1134, +1091, +24, -387, -286, -286, -286, -286, + +1440, +1389, +1338, +1287, +1236, +1305, +1374, +1091, + +1320, +1037, +1267, +1208, +1150, +715, +281, +486, + +1204, +1564, +901, +1325, +1750, +1830, +1911, +1383, + +344, +459, +574, +817, +548, +351, +666, +757, + +336, +340, +856, +4028, +4128, +4076, +4024, +4004, + +3984, +3922, +3861, +3799, +3738, +3828, +3919, +3785, + +3652, +3394, +3137, +3007, +2878, +2900, +2923, +3105, + +3800, +1284, +1328, +28, -248, -248, -248, -248, + +1456, +1406, +1358, +1309, +1261, +1209, +1159, +1444, + +1218, +1265, +33, -654, -1342, -977, -356, +394, + +1401, +1753, +1338, +1738, +2140, +2575, +3009, +3524, + +3784, +2536, +1033, +265, +522, +440, +615, +629, + +388, +403, +2211, +4051, +4099, +4078, +4058, +3990, + +3922, +3910, +3898, +3886, +3875, +3805, +3735, +3553, + +3373, +3126, +2879, +2585, +2291, +2026, +1762, +2649, + +3026, +2303, +2092, +665, -250, -250, -250, -250, + +1472, +1425, +1379, +1332, +1286, +1371, +1457, +1030, + -932, -1834, -1712, -1237, -763, -621, +33, +815, + +1598, +1943, +1776, +2153, +2531, +2808, +3085, +3362, + +3640, +4102, +4052, +3042, +496, +530, +564, +502, + +440, +211, +3055, +3818, +4070, +4081, +4093, +3976, + +3860, +3898, +3936, +3974, +4013, +3783, +3553, +3323, + +3094, +2858, +2623, +2420, +2217, +1921, +1626, +915, + +2764, +250, +296, +22, -252, -252, -252, -252, + +1488, +1443, +1399, +1371, +1343, +1308, +1530, -408, + -1834, -1589, -1089, -811, -535, -281, +485, +1171, + +1859, +2132, +2150, +2503, +2857, +3105, +3352, +3536, + +3720, +3875, +3775, +4298, +4054, +2123, +449, +502, + +556, +546, +26, +2113, +3945, +4115, +4031, +3946, + +3862, +3838, +3814, +3982, +3894, +3488, +3338, +3140, + +2943, +2622, +2302, +2030, +1758, +1495, +1234, +1259, + +774, -347, -188, -189, -190, -222, -254, -254, + +1504, +1462, +1420, +1410, +1400, +1246, +1604, -1334, + -1712, -1089, -978, -643, -308, +59, +938, +1529, + +2120, +2322, +2524, +2854, +3184, +3402, +3620, +3710, + +3800, +3905, +4010, +4019, +4028, +3973, +334, +503, + +672, +627, +582, +409, +236, +2359, +3970, +3917, + +3864, +3778, +3692, +3990, +3776, +3194, +3124, +2958, + +2792, +2387, +1982, +1641, +1300, +1071, +842, +69, + -192, -176, -160, -144, -128, -192, -256, -256, + +1546, +1496, +1447, +1430, +1413, +1627, +1330, -2102, + -1184, -819, -712, -395, -80, +405, +1148, +1713, + +2280, +2486, +2692, +2995, +3297, +3467, +3638, +3712, + +3787, +3915, +4045, +3917, +4047, +3097, +357, +655, + +699, +198, +466, +381, +297, +376, +200, +1815, + +3431, +3568, +3961, +4114, +3755, +3310, +3121, +2804, + +2487, +2208, +1931, +1189, +447, +37, -116, -254, + -136, -111, -86, -109, -132, -196, -260, -260, + +1588, +1531, +1475, +1450, +1426, +1497, +33, -1591, + -1168, -807, -446, -149, +148, +753, +1358, +1899, + +2440, +2650, +2861, +3136, +3411, +3533, +3656, +3715, + +3774, +3927, +4080, +3817, +4066, +2223, +380, +553, + +214, +3610, +350, +354, +358, +442, +526, +226, + -74, +286, +1158, +1678, +1686, +1634, +1582, +1114, + +646, +239, -168, -31, +107, -228, -51, -65, + -80, -46, -12, -74, -136, -200, -264, -264, + +1630, +1565, +1502, +1470, +1439, +1590, -817, -1399, + -960, -633, -308, -14, +280, +875, +1472, +1971, + +2472, +2718, +2965, +3229, +3492, +3582, +3674, +3701, + +3729, +3793, +3859, +4147, +4181, +707, +563, +417, + +1297, +3917, +4234, +2198, +163, +267, +372, +348, + +325, +108, +147, +186, -31, +38, +107, +96, + +85, +61, +38, -162, -106, -126, +111, +876, + -152, -93, -34, -87, -140, -204, -268, -268, + +1672, +1601, +1530, +1491, +1452, +1685, -1666, -1209, + -752, -461, -170, +121, +412, +999, +1586, +2045, + +2504, +2787, +3071, +3322, +3574, +3633, +3693, +3688, + +3684, +3661, +3638, +3711, +2760, +473, +746, +283, + +2380, +4225, +4022, +4043, +4064, +2141, +218, +215, + +212, +186, +160, +230, +300, +234, +168, +102, + +36, -117, -269, +218, +1218, +2025, +2833, +1048, + -224, -140, -56, -100, -144, -208, -272, -272, + +1626, +1607, +1589, +1458, +1585, +692, -1479, -1107, + -736, -451, -168, +115, +400, +805, +1468, +1937, + +2408, +2703, +2999, +3327, +3655, +3568, +3482, +3620, + +3759, +3439, +3121, +1601, +851, +819, +533, +437, + +3415, +4252, +4066, +4055, +4045, +4084, +4124, +2995, + +1867, +1068, +269, +62, -145, -38, +69, +704, + +1339, +2183, +3028, +2816, +2861, +2953, +2790, -349, + +96, -19, -134, -137, -140, -204, -268, -268, + +1580, +1614, +1649, +1427, +1718, -300, -1293, -1006, + -720, -443, -166, +111, +388, +613, +1350, +1831, + +2312, +2620, +2928, +3076, +3225, +3249, +3273, +3297, + +3322, +3475, +3628, +3333, +1502, +655, +832, +593, + +3938, +4024, +4110, +4068, +4026, +3980, +3934, +3984, + +4034, +3998, +3962, +3990, +4018, +3786, +3554, +3610, + +3666, +3459, +3253, +3111, +2969, +2858, +2236, -210, + -96, -154, -212, -174, -136, -200, -264, -264, + +1662, +1653, +1644, +1619, +1851, -988, -1266, -985, + -704, -401, -100, +9, +120, +403, +944, +1579, + +2216, +2504, +2793, +2873, +2954, +2976, +2999, +3085, + +3173, +3237, +3303, +3575, +521, +553, +587, +1771, + +3981, +4019, +4058, +4032, +4007, +3971, +3936, +3948, + +3961, +3920, +3879, +3806, +3989, +3866, +3743, +3636, + +3529, +3375, +3222, +3069, +2916, +2907, +1362, -119, + -64, -113, -162, -147, -132, -196, -260, -260, + +1744, +1692, +1640, +1556, +1472, -1932, -1240, -964, + -688, -361, -34, +165, +364, +707, +1050, +1585, + +2120, +2389, +2658, +2671, +2684, +2705, +2726, +2875, + +3024, +3001, +2978, +2283, +564, +965, +342, +2951, + +4024, +4015, +4006, +3997, +3988, +3963, +3938, +3913, + +3888, +3842, +3796, +3622, +3960, +3946, +3932, +3662, + +3392, +3292, +3192, +3028, +2864, +2956, +488, -28, + -32, -72, -112, -120, -128, -192, -256, -256, + +1834, +1635, +1692, +1718, +208, -1663, -1229, -924, + -619, -283, +50, +256, +719, +705, +948, +1126, + +1562, +1845, +2129, +2236, +2344, +2447, +2551, +2654, + +2759, +2738, +2719, +1562, +663, +623, +327, +4207, + +3992, +4012, +4034, +3990, +3948, +3922, +3898, +3872, + +3848, +3774, +3701, +3484, +3523, +3726, +3929, +3812, + +3695, +3604, +3513, +3407, +3300, +3350, -440, -231, + -22, -48, -74, -100, -126, -174, -222, -222, + +1924, +1578, +1745, +1880, -1057, -1394, -1219, -884, + -550, -207, +135, +93, +563, +449, +847, +669, + +1004, +1302, +1600, +1802, +2005, +2191, +2377, +2435, + +2494, +2477, +2460, +843, +763, +794, +1337, +3928, + +3960, +4011, +4062, +3985, +3908, +3883, +3858, +3833, + +3808, +3707, +3607, +3603, +3599, +3506, +3414, +3706, + +3998, +3916, +3835, +3786, +3737, +2208, -345, +78, + -12, -24, -36, -80, -124, -156, -188, -188, + +1598, +1585, +1829, +2154, -1873, -1413, -1208, -556, + -417, -514, -102, +440, +214, +191, +681, +435, + +702, +870, +1039, +1224, +1409, +1709, +2010, +2039, + +2069, +2086, +1849, +795, +766, +596, +2474, +3953, + +3896, +3928, +3962, +3914, +3868, +3842, +3818, +3792, + +3768, +3687, +3608, +3577, +3546, +3462, +3379, +3312, + +3245, +3364, +3484, +3189, +2893, +858, -154, +35, + -34, -48, -62, -108, -154, -154, -154, -154, + +1784, +1849, +1915, +892, -1666, -1176, -1711, -741, + -796, -822, +175, -748, +378, +191, +517, +202, + +400, +439, +479, +646, +814, +1229, +1645, +1644, + +1644, +1697, +1239, +748, +770, +399, +3613, +3978, + +3832, +3847, +3862, +3845, +3828, +3803, +3778, +3753, + +3728, +3669, +3611, +3552, +3494, +3419, +3345, +3174, + +3004, +2813, +2623, +2592, +2562, -237, +37, -9, + -56, -72, -88, -136, -184, -152, -120, -120, + +1802, +1900, +2255, -286, -1290, -1129, -712, -391, + -327, -385, -445, +201, -178, +436, +27, -45, + -118, +204, +270, +384, +498, +685, +874, +998, + +1123, +1252, +1127, +794, +717, +1161, +3654, +3843, + +3776, +3788, +3802, +3782, +3764, +3616, +3726, +3690, + +3656, +3595, +3536, +3476, +3417, +3341, +3265, +3078, + +2891, +2687, +2484, +2617, +1982, -28, +8, +14, + +18, -18, -54, +6, +66, -30, -126, -126, + +1820, +1696, +2084, -2232, -1939, -570, -1762, -1834, + -1394, -461, -552, -387, -223, -1110, -462, -37, + -124, -31, -451, -134, +183, +143, +104, +353, + +602, +809, +1017, +841, +665, +1924, +3696, +3708, + +3720, +3731, +3742, +3721, +3700, +3431, +3674, +3629, + +3584, +3523, +3462, +3401, +3341, +3264, +3187, +2982, + +2778, +2562, +2346, +2386, +891, -77, -20, +36, + +92, +36, -20, -108, -196, -164, -132, -132, + +1710, +1955, +1177, -2833, -955, -2075, -2172, -364, + -1885, -1352, -820, -1599, -843, -1249, -887, -652, + -674, -554, -435, -636, -325, -304, -282, -101, + -175, +493, +906, +871, +580, +2767, +3674, +3653, + +3632, +3656, +3682, +3626, +3572, +3436, +3558, +3534, + +3512, +3449, +3388, +3325, +3264, +3186, +3108, +2902, + +2697, +2500, +2304, +2219, +343, +179, +271, +154, + +38, -6, -50, -110, -170, -154, -138, -138, + +1600, +1959, -242, -2667, -2020, -2557, -2582, -1455, + +696, +316, +960, +2052, +2120, +1940, +1760, +1292, + +824, -310, -932, -1394, -832, -750, -668, -298, + -440, +434, +796, +902, +496, +3610, +3652, +3598, + +3544, +3583, +3622, +3533, +3444, +3443, +3442, +3441, + +3440, +3377, +3314, +3251, +3188, +3109, +3030, +2823, + +2616, +2439, +2262, +2053, -204, +179, +50, +17, + -16, -48, -80, -112, -144, -144, -144, -144, + +1956, +1852, -2091, -3025, -1145, +322, +2045, +1672, + +1555, +1328, +1614, +1916, +1706, +1622, +1282, +1502, + +1466, +1301, +1393, +940, -792, -1548, -768, -820, + -617, +926, +934, +909, +1397, +3323, +3456, +3446, + +3436, +3393, +3351, +3388, +3426, +3373, +3321, +3444, + +3313, +3264, +3217, +3153, +3090, +2997, +2906, +2686, + +2467, +2290, +2115, +1282, -61, +136, +79, +36, + -5, -37, -69, -101, -133, -133, -133, -133, + +1800, +1746, +669, +1992, +1779, +1665, +1552, +1727, + +1390, +1317, +1245, +1269, +1293, +1560, +1316, +1456, + +1084, +1121, +1158, +971, +1297, +726, -869, -1343, + -794, +1419, +1072, +917, +2299, +3036, +3261, +3294, + +3328, +3204, +3080, +3244, +3409, +3305, +3201, +3449, + +3186, +3153, +3121, +3056, +2992, +2887, +2783, +2550, + +2318, +2143, +1968, +513, +82, +95, +108, +57, + +6, -26, -58, -90, -122, -122, -122, -122, + +1516, +1832, +1636, +1905, +1406, +1344, +1283, +1589, + +1641, +1465, +1291, +1277, +1263, +1386, +1254, +1314, + +1118, +1116, +1115, +905, +953, +1160, +1111, +118, + -363, +807, +698, +700, +2240, +3325, +2361, +2934, + +3252, +2998, +2745, +2924, +3103, +3155, +2952, +3277, + +3091, +3057, +3024, +2959, +2894, +2776, +2659, +2414, + +2169, +2074, +1981, +255, +65, +68, +73, +44, + +17, -15, -47, -79, -111, -111, -111, -111, + +1744, +1662, +1581, +1563, +1546, +1536, +1527, +1453, + +1380, +1359, +1339, +1286, +1234, +1213, +1193, +1172, + +1152, +1112, +1073, +1097, +1122, +826, +1043, +1067, + +1092, +964, +837, +741, +2182, +2078, +2487, +2831, + +2664, +2793, +2923, +2860, +2798, +3007, +2705, +3106, + +2996, +2962, +2928, +2862, +2796, +2666, +2536, +2278, + +2020, +1751, +1482, -259, +48, +43, +38, +33, + +28, -4, -36, -68, -100, -100, -100, -100, + +1684, +1640, +1596, +1584, +1573, +1543, +1513, +1451, + +1391, +1359, +1329, +1282, +1236, +1213, +1190, +1168, + +1146, +1107, +1069, +1063, +1058, +920, +1038, +996, + +955, +924, +894, +880, +1635, +1679, +2235, +2439, + +2132, +2451, +2771, +2580, +2644, +2713, +2528, +2742, + +2701, +2828, +2699, +2570, +2442, +2383, +2324, +2105, + +1887, +1732, +811, -79, +55, +62, +71, +46, + +23, -7, -37, -67, -97, -113, -129, -129, + +1624, +1618, +1612, +1606, +1601, +1551, +1501, +1451, + +1402, +1361, +1320, +1279, +1239, +1214, +1189, +1164, + +1140, +1103, +1067, +1031, +995, +1014, +1034, +926, + +818, +885, +953, +1021, +1089, +1024, +1472, +2048, + +2112, +2110, +2109, +2044, +2491, +2421, +2352, +2379, + +2406, +2694, +2471, +2279, +2088, +2100, +2113, +1933, + +1754, +1715, +140, +101, +62, +83, +104, +61, + +18, -10, -38, -66, -94, -126, -158, -158, + +1724, +1788, +1852, +1692, +1532, +1494, +1456, +1418, + +1381, +1345, +1311, +1275, +1241, +1214, +1187, +1160, + +1134, +1098, +1064, +1029, +995, +996, +998, +935, + +873, +877, +883, +792, +702, +657, +1125, +1832, + +2284, +1193, +1638, +1796, +2209, +2320, +2176, +2239, + +2047, +2560, +2562, +1891, +1734, +1673, +1613, +1744, + +1621, +1152, -83, -8, +69, +70, +73, +42, + +13, -13, -39, -65, -91, -139, -187, -187, + +1824, +1702, +1580, +1522, +1464, +1438, +1412, +1386, + +1360, +1331, +1302, +1273, +1244, +1215, +1186, +1157, + +1128, +1095, +1062, +1029, +996, +979, +962, +945, + +928, +871, +814, +821, +828, +803, +1290, +1617, + +1944, +2068, +1168, +1292, +1416, +1708, +1488, +1844, + +1688, +2171, +2142, +1249, +1380, +1503, +1626, +1045, + -48, +79, +206, +141, +76, +59, +42, +25, + +8, -16, -40, -64, -88, -152, -216, -216, + +1688, +1615, +1542, +1501, +1460, +1429, +1398, +1367, + +1336, +1309, +1284, +1257, +1232, +1205, +1180, +1153, + +1128, +1092, +1058, +1022, +988, +968, +950, +930, + +912, +861, +812, +793, +776, +595, +672, +971, + +1272, +330, +924, +1038, +1152, +1298, +1444, +1910, + +1608, +1531, +1200, +515, +344, +259, +176, +251, + +72, +122, +174, +128, +84, +64, +46, +26, + +8, -18, -44, -70, -96, -144, -192, -192, + +1552, +1528, +1504, +1480, +1456, +1420, +1384, +1348, + +1312, +1289, +1266, +1243, +1220, +1197, +1174, +1151, + +1128, +1091, +1054, +1017, +980, +959, +938, +917, + +896, +853, +810, +767, +724, +645, +566, +583, + +600, +640, +680, +528, +376, +376, +888, +1464, + +1016, +637, +258, +295, +332, +297, +262, +227, + +192, +167, +142, +117, +92, +71, +50, +29, + +8, -20, -48, -76, -104, -136, -168, -168, + +1544, +1521, +1498, +1475, +1452, +1411, +1370, +1329, + +1288, +1267, +1248, +1227, +1208, +1187, +1168, +1147, + +1128, +1088, +1050, +1010, +972, +948, +926, +902, + +880, +843, +808, +771, +736, +677, +620, +609, + +600, +614, +628, +546, +464, +238, +2060, +1690, + +1576, +1709, +308, +313, +320, +285, +252, +217, + +184, +162, +142, +120, +100, +76, +54, +30, + +8, -22, -52, -82, -112, -128, -144, -144, + +1536, +1514, +1492, +1470, +1448, +1402, +1356, +1310, + +1264, +1247, +1230, +1213, +1196, +1179, +1162, +1145, + +1128, +1087, +1046, +1005, +964, +939, +914, +889, + +864, +835, +806, +777, +748, +711, +674, +637, + +600, +588, +576, +564, +552, +612, +160, +1916, + +1112, +223, +358, +333, +308, +275, +242, +209, + +176, +159, +142, +125, +108, +83, +58, +33, + +8, -24, -56, -88, -120, -120, -120, -120, + +1536, +1514, +1492, +1470, +1448, +1402, +1356, +1310, + +1264, +1246, +1230, +1212, +1196, +1178, +1162, +1144, + +1128, +1086, +1046, +1004, +964, +938, +914, +888, + +864, +834, +806, +776, +748, +710, +674, +636, + +600, +588, +576, +564, +552, +644, +480, +108, + +504, +158, +326, +316, +308, +274, +242, +208, + +176, +158, +142, +124, +108, +82, +58, +32, + +8, -24, -56, -88, -120, -120, -120, -120, + +1536, +1514, +1492, +1470, +1448, +1402, +1356, +1310, + +1264, +1247, +1230, +1213, +1196, +1179, +1162, +1145, + +1128, +1087, +1046, +1005, +964, +939, +914, +889, + +864, +835, +806, +777, +748, +711, +674, +637, + +600, +588, +576, +564, +552, +420, +288, +348, + +408, +351, +294, +301, +308, +275, +242, +209, + +176, +159, +142, +125, +108, +83, +58, +33, + +8, -24, -56, -88, -120, -120, -120, -120, + +1536, +1514, +1492, +1470, +1448, +1402, +1356, +1310, + +1264, +1246, +1230, +1212, +1196, +1178, +1162, +1144, + +1128, +1086, +1046, +1004, +964, +938, +914, +888, + +864, +834, +806, +776, +748, +710, +674, +636, + +600, +588, +576, +564, +552, +420, +288, +348, + +408, +350, +294, +300, +308, +274, +242, +208, + +176, +158, +142, +124, +108, +82, +58, +32, + +8, -24, -56, -88, -120, -120, -120, -120 +}; + +static INT16 TEST_CB_COMPONENT[4096] = +{ + +1728, +1730, +1732, +1734, +1736, +1738, +1740, +1742, + +1744, +1740, +1736, +1732, +1728, +1796, +1864, +1804, + +1744, +1754, +1764, +1774, +1784, +1794, +1804, +1814, + +1824, +1774, +1724, +1802, +1880, +1814, +1748, +1810, + +1872, +1878, +1884, +1890, +1896, +1910, +1924, +1938, + +1952, +1938, +1924, +1910, +1896, +1914, +1932, +1950, + +1968, +1974, +1980, +1986, +1992, +1998, +2004, +2010, + +2016, +2016, +2016, +2016, +2016, +2016, +2016, +2016, + +1710, +1697, +1684, +1704, +1723, +1726, +1730, +1733, + +1737, +1738, +1740, +1741, +1743, +1758, +1774, +1757, + +1741, +1762, +1783, +1788, +1793, +1774, +1755, +1784, + +1813, +1817, +1821, +1825, +1829, +1857, +1885, +1881, + +1877, +1849, +1821, +1857, +1894, +1904, +1914, +1924, + +1935, +1928, +1922, +1915, +1909, +1922, +1936, +1949, + +1963, +1974, +1985, +1997, +2008, +2009, +2011, +2012, + +2014, +2017, +2020, +2023, +2026, +2026, +2026, +2026, + +1692, +1664, +1637, +1674, +1711, +1715, +1720, +1725, + +1730, +1737, +1744, +1751, +1758, +1721, +1684, +1711, + +1738, +1770, +1802, +1802, +1802, +1754, +1706, +1754, + +1802, +1860, +1918, +1848, +1778, +1900, +2022, +1952, + +1882, +1820, +1759, +1825, +1892, +1898, +1905, +1911, + +1918, +1919, +1920, +1921, +1922, +1931, +1940, +1949, + +1958, +1974, +1991, +2008, +2025, +2021, +2018, +2015, + +2012, +2018, +2024, +2030, +2036, +2036, +2036, +2036, + +1674, +1631, +1589, +1644, +1698, +1703, +1710, +1716, + +1723, +1735, +1748, +1760, +1773, +1763, +1754, +1760, + +1767, +1794, +1821, +1800, +1779, +1830, +1881, +1900, + +1919, +2047, +2175, +2015, +1855, +1879, +1903, +1927, + +1951, +1759, +1824, +1856, +1890, +1892, +1895, +1897, + +1901, +1909, +1918, +1926, +1935, +1939, +1944, +1948, + +1953, +1974, +1996, +2019, +2041, +2032, +2025, +2017, + +2010, +2019, +2028, +2037, +2046, +2046, +2046, +2046, + +1656, +1599, +1543, +1614, +1686, +1693, +1701, +1708, + +1716, +1734, +1752, +1770, +1788, +1806, +1824, +1810, + +1796, +1818, +1840, +2054, +2268, +1650, +1032, +510, + -12, -70, -128, +390, +908, +1602, +2296, +2158, + +2020, +1699, +1890, +1889, +1888, +1887, +1886, +1885, + +1884, +1900, +1916, +1932, +1948, +1948, +1948, +1948, + +1948, +1975, +2003, +2030, +2058, +2045, +2033, +2020, + +2008, +2020, +2032, +2044, +2056, +2056, +2056, +2056, + +1590, +1570, +1551, +1612, +1673, +1579, +1742, +1713, + +1685, +1672, +1660, +1711, +1763, +1694, +1626, +1941, + +2001, +2060, +583, -654, -1891, -2046, -2201, -2084, + -1967, -2049, -2131, -2053, -1975, -1751, -1527, +41, + +1609, +2374, +1859, +2000, +1886, +1898, +1912, +1909, + +1907, +1900, +1894, +1919, +1945, +1944, +1944, +1943, + +1943, +1967, +1992, +2017, +2042, +2032, +2023, +2014, + +2006, +2017, +2028, +2039, +2050, +2050, +2050, +2050, + +1524, +1542, +1560, +1610, +1661, +1467, +1785, +1719, + +1654, +1611, +1568, +1653, +1738, +1839, +1940, +793, + -866, -2050, -2210, -2082, -1954, -1902, -1850, -1862, + -1874, -1980, -2086, -1936, -1786, -1776, -1766, -1820, + -1874, -534, +1829, +2112, +1884, +1911, +1939, +1934, + +1930, +1901, +1872, +1907, +1942, +1941, +1940, +1939, + +1938, +1960, +1982, +2004, +2027, +2021, +2015, +2009, + +2004, +2014, +2024, +2034, +2044, +2044, +2044, +2044, + +1586, +1641, +1697, +1704, +1712, +1577, +1699, +1660, + +1623, +1613, +1604, +1642, +1681, +1791, -402, -2036, + -1877, -2144, -1899, -1942, -1985, -1918, -1851, -1880, + -1909, -1959, -2009, -1931, -1853, -1801, -1749, -1617, + -1485, -1939, -1882, +96, +2074, +1971, +1869, +1895, + +1921, +1885, +1850, +1894, +1939, +1937, +1936, +1934, + +1933, +1952, +1972, +1991, +2011, +2008, +2006, +2003, + +2002, +2011, +2020, +2029, +2038, +2038, +2038, +2038, + +1136, +1229, +1322, +1287, +1252, +1433, +1614, +1603, + +1592, +1616, +1640, +1632, +1624, +2256, -1720, -1792, + -1864, -1982, -2100, -2058, -2016, -1934, -1852, -1898, + -1944, -1938, -1932, -1926, -1920, -1826, -1732, -1670, + -1608, -1552, -1496, -1664, -1320, +2288, +1800, +1856, + +1912, +1870, +1828, +1882, +1936, +1934, +1932, +1930, + +1928, +1945, +1962, +1979, +1996, +1997, +1998, +1999, + +2000, +2008, +2016, +2024, +2032, +2032, +2032, +2032, + +1552, +1624, +1698, +1674, +1652, +1644, +1638, +1614, + +1592, +1611, +1630, +1681, +1733, +1146, -2000, -1787, + -1830, -1924, -2019, -2049, -2080, -1986, -1893, -1895, + -1898, -1896, -1894, -1860, -1827, -1779, -1731, -1667, + -1604, -1615, -1626, -1878, -594, +2063, +1903, +2016, + +1873, +2132, +1880, +1884, +1888, +1921, +1955, +1941, + +1927, +1925, +1925, +1955, +1987, +2005, +2025, +2043, + +2063, +1995, +1927, +2099, +2015, +2095, +2175, +2175, + +1456, +1509, +1562, +1551, +1540, +1601, +1662, +1627, + +1592, +1606, +1621, +1731, +1842, +37, -2281, -1782, + -1796, -1867, -1938, -2041, -2144, -2039, -1934, -1893, + -1852, -1854, -1857, -1795, -1734, -1732, -1731, -1665, + -1600, -1678, -1757, -1836, +645, +2094, +2007, +1920, + +1322, +2139, +1933, +1886, +1840, +1909, +1979, +1952, + +1926, +1907, +1888, +1933, +1978, +2015, +2052, +2089, + +2126, +1982, +1838, +2174, +1998, +2158, +2318, +2318, + +1488, +1520, +1554, +1554, +1556, +1588, +1622, +1606, + +1592, +1569, +1547, +1700, +1855, -993, -2049, -1825, + -1858, -1905, -1953, -2016, -2080, -1995, -1911, -1858, + -1806, -1812, -1819, -1729, -1641, -1685, -1730, -1678, + -1628, -1677, -1727, -2194, +1947, +2125, +2046, +945, + -2205, +114, +2177, +2144, +1856, +1912, +1970, +1963, + +1957, +1935, +1915, +1925, +1937, +1991, +2047, +2181, + +2061, +2337, +2613, +1817, +2301, +2157, +2269, +2397, + +1520, +1533, +1546, +1559, +1572, +1577, +1582, +1587, + +1592, +1533, +1474, +1671, +1868, -2023, -1818, -1869, + -1920, -1944, -1968, -1992, -2016, -1952, -1888, -1824, + -1760, -1771, -1782, -1665, -1548, -1639, -1730, -1693, + -1656, -1677, -1699, -1017, +2226, +1644, +2087, -286, + -2148, -2167, -1674, +611, +2384, +2173, +1962, +1975, + +1988, +1965, +1942, +1919, +1896, +1969, +2042, +2019, + +1484, -1916, -1220, +2484, +1068, -916, +1708, +1964, + +1504, +1514, +1526, +1536, +1548, +1550, +1554, +1556, + +1560, +1581, +1604, +1786, +689, -2138, -1894, -1905, + -1918, -1926, -1935, -1943, -1952, -1878, -1805, -1731, + -1658, -1626, -1596, -1549, -1503, -1507, -1513, -1518, + -1524, -1526, -1785, +148, +2080, +1995, +2422, -2094, + -2003, -2033, -1809, -1665, -1776, -189, +1398, +2536, + +2139, +2122, +2105, +2327, +2295, +2204, +2113, +2870, + -213, -1669, -1077, -1237, -1653, -1589, +2059, +1931, + +1488, +1497, +1506, +1515, +1524, +1525, +1526, +1527, + +1528, +1631, +1735, +1902, -490, -2254, -1971, -1943, + -1916, -1909, -1902, -1895, -1888, -1805, -1722, -1639, + -1556, -1483, -1411, -1434, -1458, -1377, -1297, -1344, + -1392, -1376, -1872, +1312, +1935, +1834, +1734, -2622, + -2370, -2157, -1945, -1892, -1840, -2039, -2239, -2022, + -782, -281, +220, +433, +134, -377, -888, -1655, + -1398, -1166, -934, -1374, -1302, -726, +2410, +1898, + +1472, +1478, +1486, +1492, +1500, +1498, +1498, +1496, + +1496, +1600, +1705, +1666, -933, -1474, -2015, -1964, + -1914, -1891, -1869, -1846, -1824, -1731, -1639, -1546, + -1454, -1387, -1321, -1191, -1317, -1150, -1240, -1250, + -1260, -1545, -1575, +2459, +1885, +2057, +182, -2429, + -2225, -2088, -1952, -1928, -1904, -1905, -1907, -2149, + -1879, -1835, -1793, -1670, -1803, -1645, -1489, -1491, + -1239, -1335, -1431, -1335, -1495, +681, +2345, +2089, + +1456, +1461, +1466, +1471, +1476, +1473, +1470, +1467, + +1464, +1570, +1676, +1174, -1888, -950, -2060, -1986, + -1912, -1874, -1836, -1798, -1760, -1658, -1556, -1454, + -1352, -1292, -1232, -1204, -1688, -1180, -1184, -1156, + -1128, -1203, -254, +2071, +1836, +2281, -1370, -2237, + -2080, -2020, -1960, -1964, -1968, -2028, -2088, -2020, + -1952, -1855, -1758, -1725, -1692, -1635, -1578, -1329, + -1592, -1504, -1416, -1040, -1688, +2088, +2280, +2280, + +1428, +1438, +1450, +1460, +1472, +1463, +1454, +1493, + +1533, +1512, +1748, -160, -2068, -1346, -1137, -1775, + -1902, -1848, -1794, -1708, -1622, -1544, -1466, -1356, + -1247, -1198, -1149, -1196, -1755, -1246, -993, -1012, + -1032, -1202, +930, +2023, +1837, +2238, -2480, -2286, + -1838, -1799, -1761, -1835, -1909, -1954, -2000, -1982, + -1964, -1908, -1853, -1829, -1807, -1749, -1692, -1538, + -1642, -1526, -1410, -638, -122, +774, +1926, +1926, + +1400, +1417, +1434, +1451, +1469, +1454, +1439, +1520, + +1602, +1455, +1820, -1239, -1737, -1743, -726, -1821, + -1892, -1822, -1752, -1618, -1485, -1431, -1377, -1259, + -1142, -1104, -1066, -1188, -1823, -1313, -803, -869, + -936, -1203, +2115, +1976, +1838, +916, -2055, -1569, + -1596, -1579, -1563, -1706, -1850, -1881, -1913, -1944, + -1976, -1962, -1949, -1935, -1922, -1864, -1807, -1749, + -1692, -1548, -1404, -1004, -92, +996, +2084, +2084, + +1372, +1394, +1418, +1441, +1465, +1444, +1423, +1483, + +1543, +1765, +1732, -2204, -1533, -1611, -1179, -1274, + -1882, -1764, -1646, -1560, -1475, -1301, -1127, -1113, + -1101, -994, -887, -1052, -1730, -1395, -804, -709, + -872, -306, +2051, +1929, +2063, -151, -1597, -1347, + -1354, -1326, -1300, -1417, -1535, -1599, -1665, -1730, + -1796, -1824, -1852, -1880, -1909, -1883, -1857, -1767, + -1678, -1570, -1462, -1434, +1154, +2402, +1858, +1858, + +1344, +1373, +1403, +1432, +1462, +1435, +1409, +1446, + +1484, +1564, +621, -1890, -1842, -1737, -1633, -728, + -1872, -1706, -1541, -1503, -1466, -1428, -1391, -1225, + -1060, -884, -709, -917, -1638, -1478, -807, -551, + -808, +590, +1988, +1882, +2288, -1218, -1140, -1126, + -1112, -1075, -1038, -1129, -1220, -1319, -1418, -1517, + -1616, -1686, -1756, -1826, -1896, -1902, -1908, -1786, + -1664, -1592, -1520, -1864, +2400, +2016, +2144, +2144, + +1348, +1372, +1398, +1424, +1450, +1463, +1477, +1491, + +1505, +1729, -607, -1838, -1790, -1735, -1681, -1003, + -1350, -1710, -1558, -1519, -1480, -1382, -1285, -1379, + -1475, -1208, -941, -611, -793, -796, -800, -611, + -680, +1364, +1872, +1932, +1481, -1150, -966, -926, + -886, -868, -851, -929, -1009, -1061, -1114, -1230, + -1348, -1521, -1695, -1805, -1915, -1900, -1886, -1792, + -1698, -1604, -1766, -744, +2326, +2134, +2198, +2198, + +1352, +1373, +1395, +1417, +1439, +1492, +1546, +1536, + +1526, +1894, -1835, -1787, -1739, -1735, -1731, -1279, + -828, -1714, -1577, -1536, -1495, -1337, -1180, -1023, + -866, -764, -663, -562, -973, -371, -282, -417, + -552, +2138, +1757, +1983, +674, -1083, -793, -726, + -660, -662, -665, -731, -798, -804, -811, -945, + -1080, -1357, -1635, -1784, -1934, -1899, -1865, -1798, + -1732, -1616, -2012, +376, +2252, +2252, +2252, +2252, + +1356, +1373, +1391, +1409, +1427, +1425, +1423, +1501, + +1579, +907, -1814, -1702, -1847, -1909, -1716, -1634, + -786, -1686, -1819, -1712, -1605, -1371, -1139, -921, + -705, -656, -608, -384, -416, -233, -308, -477, + +376, +1968, +1769, +2033, -5, -839, -651, -606, + -562, -584, -606, -660, -715, -739, -763, -963, + -1164, -1432, -1702, -1843, -1985, -1977, -1971, -1884, + -1798, -2012, -2226, +2152, +2178, +2194, +2210, +2210, + +1360, +1374, +1388, +1402, +1416, +1358, +1300, +1466, + +1632, -81, -1794, -1619, -1956, -2085, -1702, -1991, + -744, -891, -526, -353, -180, -383, -586, -821, + -1056, -805, -554, -463, -372, -353, -334, -539, + +1304, +1799, +1782, +2085, -684, -597, -510, -487, + -464, -506, -548, -590, -632, -674, -716, -982, + -1248, -1509, -1770, -1903, -2036, -2057, -2078, -1971, + -1864, -1896, -1416, +2392, +2104, +2136, +2168, +2168, + +1346, +1358, +1371, +1383, +1396, +1395, +1393, +1552, + +1711, -1177, -1762, -2203, -1364, -465, +690, +1942, + +1913, +1747, +1837, +1816, +1794, +1889, +1983, +1774, + +1564, +548, -468, -299, -386, -391, -398, -147, + +1895, +1920, +1946, +1284, -401, -397, -393, -421, + -450, -478, -507, -568, -629, -722, -815, -1068, + -1321, -1697, -2074, -2082, -2091, -2129, -2168, -2030, + -1894, -2028, +142, +2280, +2114, +2082, +2050, +2050, + +1332, +1343, +1354, +1365, +1377, +1432, +1487, +1382, + +1278, -1763, -195, +1308, +1788, +1667, +1547, +1522, + +1498, +1569, +1641, +1681, +1721, +1600, +1480, +1552, + +1624, +1901, +2179, +1145, -401, -431, -462, -12, + +1974, +1786, +2111, +484, -119, -198, -277, -356, + -436, -451, -467, -547, -627, -770, -914, -898, + -882, -606, -330, -470, -611, -1435, -2259, -2091, + -1924, -2160, +1700, +2168, +2124, +2028, +1932, +1932, + +1318, +1327, +1337, +1346, +1357, +1405, +1452, +1420, + +1389, +1381, +1629, +1748, +1356, +1495, +1635, +1631, + +1627, +1551, +1732, +1689, +1647, +1728, +1809, +1730, + +1652, +1686, +1721, +1948, +1921, +874, -430, +363, + +1925, +1764, +1859, +148, -28, -95, -160, -291, + -422, -423, -426, -557, -688, -370, -309, -280, + -251, -570, -890, -858, -826, -563, -301, -1079, + -1858, -1636, +2170, +2296, +2166, +2118, +2070, +2070, + +1304, +1312, +1321, +1329, +1338, +1378, +1419, +1459, + +1500, +1452, +1404, +1420, +1436, +1580, +1724, +1484, + +1244, +1022, +1313, +1187, +1062, +1088, +1115, +1397, + +1680, +1728, +1777, +1729, +1682, +1922, +1651, +1763, + +1876, +1742, +1609, -189, +62, +8, -45, -226, + -408, -397, -387, -568, -750, -227, -217, -430, + -644, -1047, -1451, -1502, -1554, -1229, -905, -580, + -256, -856, +1616, +1912, +2208, +2208, +2208, +2208, + +1290, +1304, +1319, +1334, +1350, +1377, +1404, +1271, + +1395, +1525, +1655, +1769, +1884, +1802, +1720, +1430, + +1141, +1026, +1168, +1037, +908, +700, +491, +331, + +172, +873, +1575, +1524, +1731, +1991, +1738, +1774, + +1811, +1914, +993, -119, +48, -74, -196, -271, + -346, -407, -470, -324, -179, -213, -503, -810, + -1117, -1273, -1430, -1636, -1841, -1823, -1551, -1246, + -686, +1194, +1026, +1610, +2194, +2194, +2194, +2194, + +1276, +1297, +1319, +1341, +1363, +1376, +1390, +1340, + +1802, +1854, +1907, +1863, +1820, +1768, +1717, +1377, + +1038, +1031, +1024, +889, +755, +568, +381, +290, + +200, +19, -162, +553, +1781, +2060, +1827, +1786, + +1746, +2086, +378, -50, +35, -156, -348, -316, + -284, -419, -554, -337, -121, -456, -791, -934, + -1078, -1244, -1411, -1514, -1617, -1907, -1686, -1657, + -1116, +1964, +1972, +2076, +2180, +2180, +2180, +2180, + +1262, +1289, +1318, +1346, +1375, +1359, +1344, +1632, + +1921, +1927, +1934, +1876, +1820, +1702, +1585, +1259, + +935, +907, +880, +724, +569, +436, +302, +217, + +132, +44, -43, -99, +102, +801, +2011, +1878, + +1745, +1426, +2131, +916, -43, -191, -340, -393, + -446, -461, -478, -237, -254, -522, -790, -962, + -1135, -1519, -1647, -1760, -1872, -1446, -2045, -1827, + -1354, +2254, +2278, +2222, +2166, +2166, +2166, +2166, + +1248, +1283, +1318, +1353, +1388, +1343, +1298, +1925, + +2040, +2001, +1962, +1891, +1820, +1637, +1454, +1143, + +832, +784, +736, +560, +384, +304, +224, +144, + +64, +70, +76, +18, -40, +54, +1684, +1714, + +1744, +1790, +1836, +1882, +1928, +798, -332, -470, + -608, -505, -402, -139, -388, -589, -790, -991, + -1192, -1794, -1884, -2006, -2128, -2266, -868, +818, + +2504, +2288, +2072, +2112, +2152, +2152, +2152, +2152, + +1238, +1263, +1290, +1332, +1375, +1301, +1484, +2002, + +2009, +1973, +1939, +1871, +1805, +1608, +1411, +1118, + +826, +751, +676, +505, +334, +273, +212, +151, + +91, +69, +48, +11, -26, +482, +1758, +1771, + +1784, +2033, +1771, +1860, +1950, +1989, +2029, +884, + -260, -1156, -261, -309, -614, -922, -975, -1411, + -1848, -2062, -2019, -697, +626, +2060, +2471, +2273, + +2076, +2051, +2026, +2081, +2136, +2136, +2136, +2136, + +1228, +1245, +1263, +1313, +1363, +1260, +1670, +2080, + +1978, +1947, +1916, +1853, +1791, +1580, +1369, +1094, + +820, +718, +616, +450, +285, +243, +201, +159, + +118, +69, +20, +4, -13, +910, +1833, +1828, + +1824, +229, +1706, +1839, +1972, +1901, +1830, +1983, + +2136, +2032, +1416, +1056, +696, +280, +376, +728, + +1080, +1767, +2454, +2405, +2356, +2035, +2226, +2193, + +2160, +2070, +1980, +2050, +2120, +2120, +2120, +2120, + +1218, +1226, +1235, +1292, +1350, +1235, +1888, +2061, + +1979, +1935, +1893, +1834, +1776, +1551, +1326, +1070, + +814, +685, +556, +395, +235, +212, +189, +166, + +145, +116, +88, -68, +33, +1306, +1811, +1949, + +1576, -200, -183, +905, +1994, +1956, +1919, +1881, + +1844, +2004, +1909, +2005, +2102, +2042, +2239, +2195, + +2152, +2043, +1935, +2370, +2038, +2697, +1821, +368, + +2244, +2121, +1998, +2051, +2104, +2104, +2104, +2104, + +1208, +1208, +1209, +1273, +1338, +1210, +2107, +2043, + +1980, +1925, +1871, +1816, +1762, +1523, +1285, +1046, + +808, +652, +497, +341, +186, +182, +179, +175, + +172, +164, +157, +117, +590, +1958, +1791, +1815, + +816, +140, -24, -28, -32, +988, +2008, +2036, + +2064, +1977, +1890, +1931, +1972, +2013, +2054, +2127, + +2200, +2320, +2440, +2080, +184, -1760, -3192, +336, + +2328, +2172, +2016, +2052, +2088, +2088, +2088, +2088, + +1222, +1215, +1209, +1266, +1325, +1459, +2104, +2046, + +1989, +1945, +1903, +1861, +1819, +1612, +1406, +1136, + +866, +715, +564, +446, +328, +295, +263, +230, + +199, +481, +764, +711, +1427, +2086, +1721, +1692, + +128, -37, +55, -14, -82, -108, -135, +335, + +804, +1293, +1783, +2272, +2250, +2197, +1889, +1356, + +568, -763, -2095, -3010, -2646, -2931, -2705, +2305, + +2196, +2159, +2122, +2117, +2112, +2112, +2112, +2112, + +1236, +1223, +1210, +1261, +1313, +1708, +2103, +2050, + +1998, +1967, +1937, +1907, +1877, +1702, +1528, +1226, + +924, +778, +633, +552, +471, +409, +348, +287, + +226, +287, +349, +283, +1241, +1702, +1652, +1826, + -48, +43, +134, +1, -132, -181, -230, -343, + -456, -670, -884, -202, -544, -946, -1860, -1718, + -2088, -2311, -2534, -2469, -2404, -2311, -1706, +2483, + +2064, +2146, +2228, +2182, +2136, +2136, +2136, +2136, + +1250, +1230, +1211, +1255, +1300, +1957, +2101, +2054, + +2007, +1956, +1906, +1856, +1806, +1696, +1586, +1284, + +982, +841, +701, +657, +613, +554, +497, +438, + +381, +412, +445, +717, +1758, +1782, +1807, +1095, + -128, -70, -11, -97, -182, -253, -325, -428, + -532, -761, -991, -580, -170, -1033, -873, -1976, + -1800, -2018, -2237, -2343, -2450, -2650, -35, +2308, + +2092, +2117, +2142, +2151, +2160, +2160, +2160, +2160, + +1264, +1238, +1212, +1250, +1288, +2206, +2100, +2058, + +2016, +1946, +1876, +1806, +1736, +1690, +1644, +1342, + +1040, +905, +770, +763, +756, +701, +646, +591, + +536, +539, +542, +897, +1764, +1607, +1962, +365, + -208, -182, -156, -194, -232, -326, -420, -514, + -608, -853, -1098, -1471, -820, -97, -910, -955, + -2024, -2238, -2452, -2474, -2496, -2990, +1636, +2134, + +2120, +2088, +2056, +2120, +2184, +2184, +2184, +2184, + +1198, +1191, +1185, +1227, +1525, +2065, +2093, +2009, + +1925, +1887, +1850, +1781, +1712, +1682, +1653, +1464, + +1275, +1130, +986, +937, +889, +840, +792, +743, + +696, +684, +674, +1335, +1741, +1839, +1939, +54, + -294, -295, -297, -298, -300, -414, -527, -641, + -755, -947, -1140, -1732, -1813, -733, -166, -1038, + -887, -1234, -1581, -1609, -1636, -1158, +2392, +2279, + +2166, +2119, +2072, +2121, +2170, +2170, +2170, +2170, + +1132, +1145, +1159, +1205, +1763, +1924, +2086, +1960, + +1834, +1829, +1825, +1756, +1688, +1675, +1663, +1586, + +1510, +1356, +1202, +1112, +1023, +981, +939, +897, + +856, +831, +807, +1774, +1718, +1817, +1405, -512, + -380, -409, -438, -403, -369, -502, -635, -768, + -902, -1042, -1182, -1482, -1782, -2138, -1982, -610, + -262, -486, -711, -744, -777, +162, +2125, +1912, + +2212, +2150, +2088, +2122, +2156, +2156, +2156, +2156, + +1194, +1146, +1100, +1182, +1776, +1927, +2079, +1863, + +1903, +1978, +1799, +1843, +1632, +1619, +1608, +1612, + +1617, +1517, +1418, +1351, +1284, +1216, +1149, +1098, + +1048, +945, +1099, +1781, +1695, +1954, +422, -566, + -530, -554, -579, -571, -565, -686, -806, -927, + -1049, -1232, -1416, -1679, -1943, -2342, -2486, -2501, + -2773, -2074, -1376, -1671, -2221, +458, +2369, +2137, + +2162, +2133, +2104, +2123, +2142, +2142, +2142, +2142, + +1256, +1149, +1043, +1160, +1790, +1931, +2073, +1766, + +1972, +2129, +1774, +1931, +1576, +1565, +1554, +1639, + +1724, +1679, +1635, +1590, +1546, +1453, +1361, +1300, + +1240, +1060, +1392, +1788, +1672, +2092, -560, -620, + -680, -700, -721, -741, -762, -870, -979, -1087, + -1196, -1423, -1650, -1877, -2104, -2291, -2478, -2857, + -2724, -2895, -3067, -3110, -3666, +2547, +2103, +2107, + +2112, +2116, +2120, +2124, +2128, +2128, +2128, +2128, + +1214, +1170, +1128, +1453, +1779, +1692, +1861, +1807, + +1753, +1732, +1712, +1803, +1640, +1759, +1623, +1710, + +1799, +1666, +1790, +1755, +1719, +1628, +1539, +1497, + +1456, +1352, +1504, +1752, +1745, +1445, -902, -898, + -894, -907, -921, -935, -950, -1070, -1190, -1310, + -1431, -1641, -1852, -2062, -2273, -2431, -2590, -2812, + -2779, -2929, -3080, -3279, -2198, +2298, +2187, +2124, + +2062, +2081, +2100, +2119, +2138, +2138, +2138, +2138, + +1172, +1193, +1214, +1747, +1769, +1710, +2163, +2360, + +2046, +1592, +1651, +1677, +1704, +1954, +1693, +1783, + +1874, +1654, +1947, +1920, +1893, +1805, +1718, +1695, + +1672, +1644, +1617, +1717, +1818, +798, -1245, -1176, + -1108, -1115, -1123, -1131, -1139, -1270, -1402, -1534, + -1666, -1860, -2054, -2248, -2442, -2572, -2702, -2768, + -2834, -2964, -3094, -3192, -219, +2306, +2272, +2142, + +2012, +2046, +2080, +2114, +2148, +2148, +2148, +2148, + +1194, +1150, +1364, +1784, +1694, +1983, +2272, +1441, + +2147, +1980, +1813, +1838, +1864, +1909, +1698, +1823, + +1949, +1818, +1943, +1989, +2034, +1933, +1833, +1812, + +1792, +1712, +1633, +1649, +1923, -536, -1459, -1390, + -1322, -1354, -1388, -1421, -1455, -1566, -1678, -1789, + -1901, -2078, -2256, -2433, -2611, -2744, -2878, -2915, + -2953, -2998, -3044, -3777, +1633, +2298, +1941, +2015, + +2090, +2107, +2124, +2141, +2158, +2158, +2158, +2158, + +1216, +1109, +1514, +1823, +1620, +2001, +1870, +1803, + +1224, +1600, +1464, +1232, +1000, +1096, +1192, +1352, + +1512, +1726, +1940, +2058, +2176, +2062, +1948, +1930, + +1912, +1781, +1650, +1583, +2028, -1871, -1674, -1605, + -1536, -1595, -1654, -1713, -1772, -1863, -1954, -2045, + -2136, -2297, -2458, -2619, -2780, -2917, -3054, -3063, + -3072, -3033, -2994, -2827, +2460, +2035, +2122, +2145, + +2168, +2168, +2168, +2168, +2168, +2168, +2168, +2168, + +1190, +1271, +1610, +1756, +1647, +1523, +1144, +1324, + +1249, +1364, +1224, +1211, +1199, +1255, +1566, +1430, + +1294, +1404, +1514, +1800, +2087, +2075, +2063, +2003, + +1944, +1654, +1621, +1811, +979, -1997, -1903, -1888, + -1874, -1927, -1982, -2036, -2091, -2163, -2236, -2308, + -2381, -2513, -2646, -2778, -2911, -3005, -3100, -3114, + -3129, -3039, -3206, -1084, +2317, +2104, +2148, +2159, + +2171, +2175, +2179, +2183, +2187, +2187, +2187, +2187, + +1164, +1179, +1195, +1179, +1163, +1302, +1442, +1358, + +1274, +1385, +1496, +1447, +1399, +1158, +1429, +1508, + +1588, +1594, +1601, +1543, +1486, +1832, +2179, +2077, + +1976, +1528, +1593, +1785, -582, -2381, -2133, -2172, + -2212, -2261, -2311, -2361, -2411, -2464, -2518, -2572, + -2626, -2730, -2834, -2938, -3042, -3094, -3146, -3166, + -3186, -3046, -3418, +658, +2174, +2174, +2174, +2174, + +2174, +2182, +2190, +2198, +2206, +2206, +2206, +2206, + +1202, +1230, +1259, +1272, +1286, +1321, +1356, +1343, + +1331, +1405, +1480, +1474, +1470, +1349, +1483, +1522, + +1562, +1576, +1591, +1573, +1557, +1589, +1622, +1718, + +1816, +1690, +1820, +1694, -2015, -2556, -2330, -2376, + -2422, -2610, -2799, -2700, -2602, -2669, -2736, -2803, + -2871, -2946, -3022, -3097, -3173, -3182, -3192, -3153, + -3115, -3324, -3278, +2256, +2159, +2147, +2136, +2156, + +2177, +2189, +2201, +2213, +2225, +2225, +2225, +2225, + +1240, +1282, +1325, +1367, +1410, +1340, +1271, +1329, + +1388, +1426, +1465, +1503, +1542, +1540, +1539, +1537, + +1536, +1559, +1582, +1605, +1628, +1603, +1578, +1617, + +1656, +1596, +1536, +1604, -2936, -2476, -2528, -2580, + -2632, -2704, -2777, -2785, -2794, -2874, -2955, -3035, + -3116, -3163, -3210, -3257, -3304, -3271, -3238, -3141, + -3044, -3091, -2114, +2319, +2144, +2121, +2098, +2139, + +2180, +2196, +2212, +2228, +2244, +2244, +2244, +2244, + +1230, +1255, +1281, +1306, +1333, +1303, +1272, +1338, + +1405, +1436, +1468, +1500, +1533, +1535, +1537, +1539, + +1542, +1562, +1584, +1605, +1627, +1601, +1577, +1616, + +1656, +1807, +1959, -417, -2793, -2797, -2545, -2581, + -2618, -2687, -2757, -2794, -2833, -2901, -2968, -3036, + -3105, -3145, -3186, -3178, -3171, -3149, -3128, -3058, + -2989, -3221, -126, +2281, +2129, +2084, +2040, +2107, + +2175, +2189, +2203, +2217, +2231, +2231, +2231, +2231, + +1220, +1229, +1238, +1247, +1257, +1266, +1275, +1348, + +1422, +1447, +1473, +1499, +1525, +1530, +1536, +1542, + +1548, +1567, +1587, +1606, +1626, +1601, +1577, +1616, + +1656, +1763, +1871, +1658, -2138, -2862, -2563, -2583, + -2604, -2671, -2738, -2805, -2873, -2928, -2983, -3038, + -3094, -3128, -3162, -3100, -3038, -3028, -3018, -2976, + -2934, -3352, +1862, +2244, +2114, +2048, +1982, +2076, + +2170, +2182, +2194, +2206, +2218, +2218, +2218, +2218, + +1210, +1234, +1259, +1283, +1308, +1325, +1341, +1390, + +1439, +1457, +1477, +1496, +1516, +1525, +1535, +1544, + +1554, +1571, +1589, +1607, +1625, +1616, +1608, +1632, + +1656, +1718, +1782, +1685, +1845, +528, -2836, -2728, + -2622, -2654, -2687, -2719, -2752, -2763, -2773, -2992, + -2955, -3030, -3106, -2813, -2777, -3226, -2908, -3134, + -3359, -971, +2186, +2270, +2099, +2075, +2052, +2108, + +2165, +2175, +2185, +2195, +2205, +2205, +2205, +2205, + +1200, +1240, +1280, +1320, +1360, +1384, +1408, +1432, + +1456, +1469, +1482, +1495, +1508, +1521, +1534, +1547, + +1560, +1576, +1592, +1608, +1624, +1632, +1640, +1648, + +1656, +1675, +1694, +1713, +1732, +1871, +986, -827, + -2640, -2638, -2636, -2634, -2632, -2598, -2564, -2946, + -2816, -2933, -3050, -2783, -3028, -3169, -1774, +293, + +2360, +2179, +1998, +2041, +2084, +2103, +2122, +2141, + +2160, +2168, +2176, +2184, +2192, +2192, +2192, +2192, + +1232, +1266, +1300, +1334, +1368, +1390, +1412, +1434, + +1456, +1468, +1482, +1494, +1508, +1520, +1534, +1546, + +1560, +1578, +1596, +1614, +1632, +1640, +1648, +1656, + +1664, +1645, +1628, +1705, +1784, +2101, +1908, +1298, + +688, +1071, -594, -1587, -2580, -2891, -3202, -2281, + -2640, -2058, -1476, -94, +1032, +2278, +2244, +2209, + +2176, +2131, +2088, +2091, +2096, +2111, +2128, +2143, + +2160, +2168, +2176, +2184, +2192, +2192, +2192, +2192, + +1264, +1292, +1320, +1348, +1376, +1396, +1416, +1436, + +1456, +1469, +1482, +1495, +1508, +1521, +1534, +1547, + +1560, +1580, +1600, +1620, +1640, +1648, +1656, +1664, + +1672, +1617, +1562, +1699, +1836, +1821, +1806, +1887, + +1968, +1964, +1960, +2020, +2080, +1936, +1792, +1200, + +1632, +1889, +2146, +2083, +2020, +2093, +2166, +2079, + +1992, +2085, +2178, +2143, +2108, +2121, +2134, +2147, + +2160, +2168, +2176, +2184, +2192, +2192, +2192, +2192, + +1296, +1318, +1340, +1362, +1384, +1402, +1420, +1438, + +1456, +1468, +1482, +1494, +1508, +1520, +1534, +1546, + +1560, +1582, +1604, +1626, +1648, +1656, +1664, +1672, + +1680, +1667, +1656, +1739, +1824, +1811, +1800, +1835, + +1872, +1881, +1890, +1819, +1748, +1995, +450, +937, + +912, +715, +2056, +2019, +1984, +2035, +2088, +2059, + +2032, +2085, +2140, +2129, +2120, +2129, +2140, +2149, + +2160, +2168, +2176, +2184, +2192, +2192, +2192, +2192, + +1328, +1344, +1360, +1376, +1392, +1408, +1424, +1440, + +1456, +1469, +1482, +1495, +1508, +1521, +1534, +1547, + +1560, +1584, +1608, +1632, +1656, +1664, +1672, +1680, + +1688, +1719, +1750, +1781, +1812, +1803, +1794, +1785, + +1776, +1798, +1820, +1874, +1928, +1798, +2180, +674, + +1216, +2103, +1966, +1957, +1948, +1979, +2010, +2041, + +2072, +2087, +2102, +2117, +2132, +2139, +2146, +2153, + +2160, +2168, +2176, +2184, +2192, +2192, +2192, +2192, + +1328, +1344, +1360, +1376, +1392, +1408, +1424, +1440, + +1456, +1468, +1482, +1494, +1508, +1520, +1534, +1546, + +1560, +1584, +1608, +1632, +1656, +1664, +1672, +1680, + +1688, +1718, +1750, +1780, +1812, +1802, +1794, +1784, + +1776, +1798, +1820, +1858, +1896, +1750, +1860, +2338, + +1792, +2134, +1966, +1956, +1948, +1978, +2010, +2040, + +2072, +2086, +2102, +2116, +2132, +2138, +2146, +2152, + +2160, +2168, +2176, +2184, +2192, +2192, +2192, +2192, + +1328, +1344, +1360, +1376, +1392, +1408, +1424, +1440, + +1456, +1469, +1482, +1495, +1508, +1521, +1534, +1547, + +1560, +1584, +1608, +1632, +1656, +1664, +1672, +1680, + +1688, +1719, +1750, +1781, +1812, +1803, +1794, +1785, + +1776, +1798, +1820, +1842, +1864, +1958, +2052, +1954, + +1856, +1911, +1966, +1957, +1948, +1979, +2010, +2041, + +2072, +2087, +2102, +2117, +2132, +2139, +2146, +2153, + +2160, +2168, +2176, +2184, +2192, +2192, +2192, +2192, + +1328, +1344, +1360, +1376, +1392, +1408, +1424, +1440, + +1456, +1468, +1482, +1494, +1508, +1520, +1534, +1546, + +1560, +1584, +1608, +1632, +1656, +1664, +1672, +1680, + +1688, +1718, +1750, +1780, +1812, +1802, +1794, +1784, + +1776, +1798, +1820, +1842, +1864, +1958, +2052, +1954, + +1856, +1910, +1966, +1956, +1948, +1978, +2010, +2040, + +2072, +2086, +2102, +2116, +2132, +2138, +2146, +2152, + +2160, +2168, +2176, +2184, +2192, +2192, +2192, +2192 +}; + +static INT16 TEST_CR_COMPONENT[4096] = +{ + -2112, -2114, -2116, -2118, -2120, -2122, -2124, -2126, + -2128, -2118, -2108, -2098, -2088, -2150, -2212, -2146, + -2080, -2100, -2120, -2140, -2160, -2164, -2168, -2172, + -2176, -2092, -2008, -2052, -2096, -2132, -2168, -2076, + -1984, -2088, -2192, -2168, -2144, -2136, -2128, -2120, + -2112, -2126, -2140, -2154, -2168, -2150, -2132, -2114, + -2096, -2096, -2096, -2096, -2096, -2096, -2096, -2096, + -2096, -2080, -2064, -2048, -2032, -2032, -2032, -2032, + -2128, -2113, -2098, -2115, -2132, -2133, -2134, -2135, + -2137, -2127, -2117, -2107, -2097, -2117, -2137, -2125, + -2114, -2134, -2154, -2159, -2163, -2135, -2108, -2128, + -2149, -2132, -2116, -2116, -2115, -2115, -2114, -2098, + -2082, -2112, -2142, -2141, -2139, -2133, -2128, -2122, + -2117, -2127, -2137, -2147, -2158, -2146, -2134, -2122, + -2111, -2108, -2106, -2104, -2102, -2101, -2101, -2101, + -2101, -2087, -2073, -2059, -2045, -2045, -2045, -2045, + -2144, -2112, -2080, -2112, -2145, -2145, -2145, -2145, + -2146, -2136, -2126, -2116, -2107, -2085, -2063, -2105, + -2148, -2168, -2189, -2178, -2167, -2107, -2048, -2085, + -2122, -2173, -2225, -2180, -2135, -2098, -2061, -2120, + -2180, -2136, -2093, -2114, -2135, -2131, -2128, -2125, + -2122, -2128, -2135, -2141, -2148, -2142, -2137, -2131, + -2126, -2121, -2117, -2112, -2108, -2107, -2107, -2106, + -2106, -2094, -2082, -2070, -2058, -2058, -2058, -2058, + -2160, -2111, -2062, -2109, -2157, -2156, -2155, -2154, + -2155, -2145, -2135, -2125, -2116, -2132, -2148, -2132, + -2118, -2154, -2191, -2181, -2170, -2494, -2308, -2393, + -2479, -2470, -2461, -2243, -2282, -2353, -2167, -2174, + -2182, -2160, -2139, -2135, -2130, -2128, -2128, -2127, + -2127, -2129, -2132, -2134, -2138, -2138, -2139, -2139, + -2141, -2133, -2127, -2120, -2114, -2112, -2112, -2111, + -2111, -2101, -2091, -2081, -2071, -2071, -2071, -2071, + -2176, -2110, -2045, -2107, -2170, -2168, -2167, -2165, + -2164, -2154, -2145, -2135, -2126, -2180, -2235, -2161, + -2088, -2141, -2195, -2440, -2686, -2371, -1033, -398, + +236, +305, +375, -3, -894, -2096, -2787, -2485, + -2184, -2185, -2187, -2156, -2126, -2127, -2129, -2130, + -2132, -2131, -2130, -2129, -2128, -2135, -2142, -2149, + -2156, -2147, -2138, -2129, -2120, -2119, -2118, -2117, + -2116, -2108, -2100, -2092, -2084, -2084, -2084, -2084, + -2112, -2085, -2058, -2112, -2166, -2067, -2225, -2190, + -2157, -2107, -2057, -2104, -2151, -2119, -2088, -2632, + -2666, -2263, -837, +844, +2526, +3327, +2847, +2847, + +2847, +2726, +2606, +2967, +3070, +2968, +2867, +397, + -2074, -2745, -2137, -2281, -2169, -2202, -2236, -2190, + -2145, -2145, -2147, -2148, -2150, -2152, -2156, -2159, + -2163, -2159, -2156, -2152, -2150, -2130, -2111, -2123, + -2137, -2127, -2117, -2107, -2097, -2097, -2097, -2097, + -2048, -2060, -2073, -2118, -2163, -1967, -2284, -2217, + -2150, -2060, -1971, -2074, -2177, -2315, -2454, -1057, + +1364, +2990, +2568, +2593, +2619, +2369, +2631, +2508, + +2386, +2332, +2278, +2352, +2427, +2913, +2888, +3022, + +3156, +1302, -2088, -2406, -2213, -2279, -2345, -2251, + -2158, -2161, -2165, -2168, -2172, -2171, -2171, -2170, + -2170, -2172, -2175, -2177, -2180, -2142, -2105, -2131, + -2158, -2146, -2134, -2122, -2110, -2110, -2110, -2110, + -2112, -2163, -2215, -2235, -2255, -1994, -2247, -2194, + -2143, -2109, -2076, -2123, -2170, -2270, +700, +3527, + +2770, +2035, +2325, +2293, +2263, +2178, +2350, +2265, + +2181, +2129, +2078, +2154, +2231, +2521, +2557, +2559, + +2562, +3221, +3113, +140, -2832, -2034, -2261, -2199, + -2139, -2160, -2182, -2188, -2194, -2189, -2185, -2181, + -2177, -2185, -2193, -2201, -2210, -2154, -2098, -2138, + -2179, -2165, -2151, -2137, -2123, -2123, -2123, -2123, + -1664, -1755, -1846, -1841, -1836, -1767, -2210, -2173, + -2136, -2159, -2182, -2173, -2164, -2739, +2830, +2735, + +2640, +2361, +2082, +1995, +1908, +1989, +2070, +2023, + +1976, +1927, +1878, +1957, +2036, +2131, +2226, +2353, + +2480, +2581, +2682, +2943, +2692, -2815, -2178, -2149, + -2120, -2160, -2200, -2208, -2216, -2208, -2200, -2192, + -2184, -2198, -2212, -2226, -2240, -2166, -2092, -2146, + -2200, -2184, -2168, -2152, -2136, -2136, -2136, -2136, + -2096, -2166, -2238, -2228, -2220, -2087, -2210, -2173, + -2137, -2189, -2243, -2152, -2318, -2031, +3375, +2861, + +2605, +2305, +2007, +1851, +1697, +1756, +1815, +1810, + +1806, +1756, +1707, +1754, +1801, +1911, +2023, +2149, + +2277, +2299, +2323, +2729, +1345, -2439, -2129, -2217, + -2307, -2349, -2136, -2179, -2222, -2223, -2224, -2193, + -2162, -2171, -2180, -2190, -2199, -2198, -2198, -2213, + -2229, -2172, -2115, -2170, -2225, -2113, -2257, -2257, + -2016, -2067, -2118, -2105, -2093, -2152, -2211, -2174, + -2138, -2221, -2305, -2132, -2472, +212, +2897, +2477, + +2570, +2251, +1932, +1709, +1487, +1524, +1561, +1598, + +1636, +1586, +1537, +1552, +1567, +1693, +1820, +1947, + +2074, +2019, +1964, +2261, -514, -2321, -2080, -2031, + -1982, -2283, -2073, -2151, -2229, -2238, -2248, -2194, + -2140, -2144, -2149, -2154, -2159, -2231, -2304, -2281, + -2258, -2160, -2062, -2188, -2314, -2090, -2378, -2378, + -2064, -2094, -2126, -2125, -2125, -2152, -2179, -2159, + -2139, -2204, -2270, -2144, -2530, +1688, +2834, +2460, + +2343, +2147, +1953, +1678, +1404, +1387, +1370, +1418, + +1466, +1416, +1366, +1349, +1332, +1442, +1553, +1663, + +1775, +1817, +1861, +2415, -2405, -2457, -1999, -2035, + -281, -1464, -2393, -2378, -2363, -2301, -2240, -2195, + -2150, -2165, -2181, -2182, -2182, -2199, -2218, -2188, + -2159, -2756, -2329, -1934, -2307, -2627, -2179, -2307, + -2112, -2123, -2135, -2146, -2158, -2153, -2149, -2144, + -2140, -2188, -2236, -2156, -2588, +3164, +2772, +2444, + +2116, +2045, +1975, +1648, +1322, +1251, +1181, +1238, + +1296, +1246, +1197, +1147, +1098, +1192, +1287, +1381, + +1476, +1617, +1758, +1291, -2760, -2083, -2430, -1273, + -628, -647, -667, -1582, -2498, -2365, -2233, -2196, + -2160, -2187, -2215, -2210, -2206, -2169, -2133, -2096, + -2060, -280, -548, -2448, -1788, -860, -1980, -2236, + -2112, -2120, -2130, -2140, -2150, -2145, -2141, -2137, + -2133, -2147, -2161, -2079, -718, +3207, +2525, +2291, + +2057, +1941, +1827, +1553, +1279, +1174, +1070, +1094, + +1118, +1044, +970, +976, +983, +1001, +1019, +1165, + +1313, +1305, +1555, -212, -2491, -2189, -2401, -867, + -615, -642, -671, -603, -536, -1354, -2172, -2271, + -2370, -2340, -2311, -2330, -2349, -2315, -2282, -2697, + -1321, -420, -543, -394, -757, -741, -2261, -2261, + -2112, -2119, -2127, -2135, -2143, -2138, -2134, -2130, + -2126, -2106, -2087, -2259, +640, +2995, +2279, +2138, + +1998, +1839, +1681, +1459, +1237, +1098, +960, +950, + +940, +842, +744, +806, +869, +811, +753, +951, + +1150, +995, +1352, -1715, -2222, -2297, -2372, -463, + -602, -639, -676, -649, -623, -600, -577, -810, + -1044, -1214, -1384, -1426, -1469, -1183, -897, -483, + -582, -560, -538, -900, -750, -1134, -2542, -2286, + -2112, -2117, -2123, -2129, -2135, -2131, -2127, -2123, + -2119, -2017, -1916, -2886, +1262, +2014, +2256, +2097, + +1939, +1736, +1534, +1364, +1194, +1022, +850, +806, + +762, +736, +710, +508, +818, +604, +646, +752, + +859, +1131, +1149, -2865, -2273, -2339, -1639, -425, + -493, -522, -553, -566, -581, -677, -773, -661, + -550, -567, -585, -586, -588, -657, -727, -572, + -675, -668, -661, -798, -679, -1799, -2407, -2151, + -2112, -2116, -2120, -2124, -2128, -2124, -2120, -2116, + -2112, -2185, -2258, -1723, +1884, +1035, +2234, +2057, + +1880, +1634, +1388, +1270, +1152, +946, +740, +662, + +584, +630, +676, +466, +1280, +654, +540, +554, + +568, +757, -78, -2481, -2324, -2383, -906, -389, + -384, -407, -430, -485, -540, -499, -458, -513, + -568, -689, -810, -771, -732, -645, -558, -663, + -768, -776, -784, -696, -608, -2464, -2272, -2016, + -2104, -2110, -2116, -2122, -2129, -2105, -2081, -2105, + -2130, -2204, -2536, -84, +1856, +1148, +1209, +1701, + +1683, +1507, +1332, +1188, +1045, +837, +630, +518, + +407, +489, +572, +398, +1249, +662, +330, +383, + +436, +589, -1304, -2350, -2117, -2615, +213, -12, + -239, -265, -293, -320, -348, -377, -407, -484, + -562, -626, -691, -675, -661, -625, -590, -682, + -776, -804, -832, -540, -248, -664, -1848, -2616, + -2096, -2104, -2113, -2121, -2130, -2086, -2043, -2095, + -2148, -2225, -2815, +1555, +1829, +1519, +697, +1603, + +1486, +1381, +1276, +1107, +938, +729, +520, +375, + +230, +349, +468, +331, +1219, +670, +121, +212, + +304, +423, -2531, -2477, -2423, -1569, +309, -149, + -94, -125, -157, -157, -157, -256, -356, -456, + -556, -564, -573, -581, -590, -606, -623, -703, + -784, -832, -880, -384, +112, -1424, -2448, -2192, + -2088, -2098, -2109, -2119, -2131, -2099, -2068, -2100, + -2134, -2485, -2325, +2921, +2025, +1536, +1048, +1088, + +1385, +1270, +1156, +993, +831, +700, +570, +407, + +245, +256, +268, +343, +932, +662, +135, +185, + +236, -337, -2445, -2346, -2504, -793, +149, -75, + -45, -64, -84, -88, -93, -183, -273, -363, + -454, -454, -454, -518, -583, -619, -655, -723, + -792, -796, -800, -868, -1960, -2296, -2376, -2248, + -2080, -2093, -2106, -2119, -2132, -2113, -2094, -2107, + -2120, -2234, -813, +2752, +2222, +1555, +1401, +574, + +1284, +1160, +1036, +880, +724, +672, +620, +440, + +260, +164, +69, +357, +646, +654, +151, +159, + +168, -1096, -2361, -2217, -2586, -18, -11, -3, + +4, -4, -13, -21, -30, -110, -191, -271, + -352, -344, -336, -456, -576, -632, -688, -744, + -800, -760, -720, -584, -2496, -2400, -2304, -2304, + -2072, -2086, -2102, -2117, -2133, -2171, -2211, -2170, + -2130, -2462, +1045, +2615, +2138, +1656, +1432, +807, + +951, +1193, +924, +734, +545, +397, +250, +486, + +723, +569, +416, +311, +207, +384, +305, +242, + +180, -1825, -2295, -2348, -1891, +69, -19, -10, + -3, -7, -12, -16, -22, -65, -107, -182, + -258, -309, -361, -477, -593, -640, -688, -736, + -784, -752, -720, -1200, -2448, -2384, -2320, -2320, + -2064, -2081, -2099, -2116, -2134, -2231, -2329, -2234, + -2140, -2691, +2902, +2478, +2055, +1759, +1464, +1041, + +618, +1227, +812, +589, +366, +379, +392, +277, + +162, +207, +253, +267, +281, +114, -52, +70, + +192, -2555, -2230, -2481, -1197, +156, -28, -19, + -10, -11, -12, -13, -15, -20, -25, -94, + -164, -275, -387, -498, -610, -649, -689, -728, + -768, -744, -720, -1816, -2400, -2368, -2336, -2336, + -2056, -2075, -2095, -2115, -2135, -2178, -2222, -2138, + -2310, -1319, +2743, +2293, +2099, +1893, +1432, +1242, + +541, +1036, +1020, +699, +379, +376, +374, +275, + +177, +196, +217, +189, +162, +100, +39, +153, + -756, -2420, -2293, -2549, -502, +131, -4, -10, + -17, -14, -12, -9, -7, -7, -6, -102, + -198, -320, -444, -519, -595, -641, -689, -720, + -752, -768, -784, -2192, -2320, -2336, -2352, -2352, + -2048, -2070, -2092, -2114, -2136, -2126, -2116, -2042, + -2480, +52, +2584, +2108, +2144, +2028, +1400, +1444, + +464, +78, -308, -470, -632, -394, -156, +18, + +192, +187, +182, +113, +44, +87, +130, +237, + -1704, -2286, -2356, -2618, +192, +106, +20, -2, + -24, -18, -12, -6, +0, +6, +12, -110, + -232, -367, -502, -541, -580, -635, -690, -713, + -736, -792, -848, -2568, -2240, -2304, -2368, -2368, + -2046, -2068, -2091, -2113, -2136, -2121, -2105, -2186, + -2523, +1999, +2681, +2740, +1518, +117, -1541, -2639, + -2457, -2465, -2474, -2466, -2459, -2498, -2536, -2303, + -2070, -995, +81, -76, +24, +35, +47, -150, + -2394, -2422, -2450, -1806, +117, +85, +53, +21, + -11, -11, -11, -11, -11, -11, -11, -107, + -203, -404, -606, -615, -625, -610, -596, -693, + -791, -757, -1491, -2401, -2287, -2303, -2319, -2319, + -2044, -2067, -2090, -2113, -2137, -2116, -2095, -2074, + -2054, +2923, +219, -1748, -2692, -2563, -2435, -2114, + -2306, -2193, -2080, -2159, -2239, -2298, -2357, -2320, + -2284, -2432, -2580, -1544, +4, -16, -36, -280, + -2572, -2302, -2544, -994, +43, +64, +86, +44, + +2, -4, -10, -16, -22, -28, -34, -104, + -174, -186, -198, -178, -158, -330, -502, -674, + -846, -722, -2134, -2234, -2334, -2302, -2270, -2270, + -2042, -2065, -2089, -2112, -2137, -2159, -2180, -2154, + -2129, -2458, -2532, -2604, -2166, -2218, -2272, -2293, + -2315, -2000, -2198, -2219, -2242, -2322, -2401, -2385, + -2370, -2285, -2201, -2452, -2704, -1411, +137, -1402, + -2174, -2502, -2830, +250, +0, +28, +55, +35, + +15, +3, -9, -21, -33, -45, -57, -101, + -145, -175, -206, -220, -235, -177, -120, -414, + -709, -191, -2489, -2547, -2349, -2349, -2349, -2349, + -2040, -2064, -2089, -2113, -2138, -2202, -2267, -2235, + -2204, -2207, -2210, -2181, -2152, -2131, -2110, -2217, + -1812, -1552, -2317, -2025, -1734, -1578, -1423, -1939, + -2456, -2395, -2334, -2081, -2340, -2551, -2250, -2013, + -2288, -2446, -2093, -43, -42, -8, +25, +26, + +28, +10, -8, -26, -44, -62, -80, -98, + -116, -165, -214, -263, -312, -281, -250, -155, + -60, -940, -1820, -2348, -2364, -2396, -2428, -2428, + -2038, -2058, -2079, -2100, -2122, -2123, -2124, -2285, + -2191, -2065, -1940, -1910, -1882, -2232, -2327, -2149, + -1717, -1485, -2022, -1759, -1497, -1242, -987, -716, + -446, -1226, -2007, -2723, -2160, -2330, -2245, -2175, + -2362, -2338, -1034, +109, -28, -19, -10, +15, + +41, +19, -3, -25, -47, -89, -131, -141, + -151, -208, -266, -355, -445, -458, -472, -405, + -83, -1135, -1163, -1895, -2371, -2387, -2403, -2403, + -2036, -2053, -2071, -2089, -2107, -2044, -1982, -2080, + -1666, -1668, -1671, -1897, -2124, -2590, -2545, -2083, + -1622, -1419, -1729, -1495, -1261, -1162, -1064, -774, + -484, -314, -144, -806, -2492, -2366, -2240, -2338, + -2436, -2486, -489, +4, -15, -30, -45, +4, + +54, +28, +2, -24, -50, -116, -182, -184, + -186, -252, -318, -448, -578, -636, -694, -656, + -106, -2098, -2042, -2210, -2378, -2378, -2378, -2378, + -2034, -2047, -2062, -2076, -2091, -2093, -2096, -1650, + -1461, -1687, -1913, -2155, -2398, -2676, -2442, -2016, + -1591, -1448, -1563, -1341, -1120, -986, -853, -623, + -394, -265, -137, +200, +24, -1554, -2363, -2324, + -2286, -2122, -2727, -1220, +31, +136, -15, +25, + +67, +37, +7, -7, -21, -111, -201, -211, + -221, -295, -370, -460, -551, -509, -468, -634, + -545, -2805, -2249, -2301, -2353, -2353, -2353, -2353, + -2032, -2043, -2054, -2065, -2076, -2143, -2210, -1477, + -1768, -1962, -2156, -2414, -2672, -2762, -2340, -1950, + -1560, -1479, -1398, -1189, -980, -811, -642, -473, + -304, -217, -130, -75, -20, +27, -2486, -2311, + -2136, -2527, -2406, -2445, -2484, -979, +14, +47, + +80, +46, +12, +10, +8, -106, -220, -238, + -256, -339, -422, -473, -524, -639, -754, -1637, + -2520, -2232, -2456, -2392, -2328, -2328, -2328, -2328, + -2012, -2030, -2049, -2052, -2055, -2191, -2073, -1585, + -1867, -2081, -2296, -2526, -2757, -2653, -2294, -1886, + -1479, -1380, -1282, -1087, -893, -748, -604, -491, + -379, -243, -109, -181, +1, -606, -2493, -2283, + -2331, -2481, -2376, -2413, -2452, -2308, -2421, -1350, + -278, -124, +30, +88, +145, +127, +109, +27, + -56, -278, -501, -1107, -1714, -2162, -2612, -2532, + -2453, -2297, -2397, -2369, -2341, -2341, -2341, -2341, + -1992, -2018, -2045, -2040, -2035, -2241, -1936, -1695, + -1966, -2201, -2436, -2639, -2842, -2545, -2248, -1823, + -1398, -1282, -1166, -986, -806, -686, -566, -510, + -454, -271, -88, -289, +22, -1239, -2500, -2257, + -2526, -388, -2346, -2383, -2421, -2358, -2296, -2490, + -2684, -2342, -2001, -1627, -1254, -1176, -1099, -1501, + -1904, -2266, -2628, -2510, -2393, -2407, -2422, -2404, + -2386, -2362, -2338, -2346, -2354, -2354, -2354, -2354, + -1972, -2006, -2040, -2043, -2046, -2194, -1831, -1835, + -2097, -2336, -2576, -2735, -2895, -2564, -2234, -1839, + -1445, -1279, -1114, -916, -719, -623, -528, -528, + -529, -425, -323, -59, -53, -2527, -2443, -2517, + -2081, +170, -140, -1312, -2485, -2440, -2395, -2382, + -2370, -2400, -2431, -2509, -2589, -2559, -2530, -2500, + -2472, -2429, -2387, -2489, -2335, -2939, -2008, -1331, + -2447, -2395, -2343, -2355, -2367, -2367, -2367, -2367, + -1952, -1994, -2037, -2047, -2058, -2148, -1727, -1977, + -2228, -2472, -2716, -2832, -2948, -2584, -2220, -1856, + -1492, -1277, -1062, -847, -632, -561, -490, -547, + -604, -581, -558, -343, -1152, -2281, -2386, -2523, + -1124, -40, +19, +15, +10, -1242, -2495, -2531, + -2568, -2459, -2350, -2369, -2388, -2407, -2426, -2477, + -2528, -2593, -2659, -2212, -1254, +369, +967, -1026, + -2508, -2428, -2348, -2364, -2380, -2380, -2380, -2380, + -1948, -1996, -2044, -2060, -2077, -1957, -1837, -2069, + -2303, -2545, -2788, -2918, -3049, -2873, -2442, -2026, + -1611, -1374, -1138, -965, -793, -732, -672, -707, + -743, -847, -953, -2017, -2059, -2441, -2313, -2327, + -295, +99, -19, +23, +65, +26, -13, -629, + -1246, -1795, -2345, -2509, -2675, -2540, -2406, -1887, + -1368, -467, +434, +439, +699, +1162, +856, -2695, + -2409, -2413, -2417, -2389, -2361, -2361, -2361, -2361, + -1944, -1998, -2052, -2074, -2097, -1767, -1949, -2163, + -2378, -2619, -2860, -3005, -3150, -3163, -2664, -2197, + -1730, -1472, -1214, -1084, -954, -904, -854, -868, + -882, -859, -836, -877, -1942, -2091, -2240, -2389, + +22, -18, -57, +32, +121, +14, -93, -9, + +76, +149, +221, +166, +110, +143, +175, +239, + +304, +379, +455, +530, +605, +676, +235, -2573, + -2310, -2398, -2486, -2414, -2342, -2342, -2342, -2342, + -1940, -2000, -2060, -2072, -2084, -1640, -1964, -2144, + -2325, -2532, -2740, -2899, -3059, -3052, -2790, -2319, + -1849, -1569, -1290, -1202, -1115, -1075, -1036, -1028, + -1021, -1077, -1135, -503, -2689, -2395, -2359, -1553, + +19, -6, -30, +25, +80, +34, -12, +37, + +86, +124, +162, +137, +111, +137, +163, +237, + +312, +393, +475, +525, +574, +654, -803, -2466, + -2339, -2383, -2427, -2375, -2323, -2323, -2323, -2323, + -1936, -2002, -2068, -2070, -2072, -1514, -1980, -2126, + -2272, -2446, -2620, -2794, -2968, -2942, -2916, -2442, + -1968, -1667, -1366, -1321, -1276, -1247, -1218, -1189, + -1160, -1041, -922, -1411, -2412, -2189, -2478, -719, + +16, +6, -4, +18, +40, +54, +68, +82, + +96, +100, +104, +108, +112, +132, +152, +236, + +320, +408, +496, +520, +544, +632, -1840, -2360, + -2368, -2368, -2368, -2336, -2304, -2304, -2304, -2304, + -1898, -1921, -1944, -2111, -1766, -1551, -1848, -1985, + -2122, -2318, -2515, -2664, -2813, -3074, -3079, -2828, + -2321, -2024, -1729, -1608, -1489, -1457, -1425, -1393, + -1362, -1246, -1131, -1879, -2372, -2532, -2693, +331, + +25, +40, +55, +54, +54, +71, +88, +105, + +123, +151, +180, +208, +237, +83, -70, +48, + +167, +248, +329, +346, +363, +733, -2738, -2577, + -2416, -2395, -2374, -2353, -2332, -2332, -2332, -2332, + -1860, -1840, -1820, -2152, -1460, -1588, -1716, -1844, + -1972, -2191, -2411, -2535, -2659, -2950, -2730, -2958, + -2674, -2383, -2092, -1897, -1703, -1668, -1633, -1598, + -1564, -1452, -1340, -2348, -2333, -2365, -1885, -157, + +34, +74, +115, +91, +68, +88, +109, +129, + +150, +203, +256, +309, +362, +291, +220, +117, + +14, +88, +162, +172, +183, -702, -2612, -2282, + -2464, -2422, -2380, -2370, -2360, -2360, -2360, -2360, + -2110, -1967, -1824, -1953, -1314, -1513, -1712, -1815, + -1918, -2207, -2242, -2453, -2408, -2602, -2541, -2752, + -2707, -2692, -2679, -2409, -2140, -2054, -1968, -1867, + -1766, -1721, -1677, -2369, -2293, -2516, -948, -53, + +75, +92, +110, +95, +82, +105, +129, +152, + +177, +222, +268, +313, +359, +354, +350, +441, + +533, +472, +411, +414, +674, -1689, -2518, -2339, + -2416, -2401, -2386, -2387, -2388, -2388, -2388, -2388, + -1848, -1838, -1828, -1754, -1168, -1438, -1708, -1786, + -1864, -2225, -2075, -2372, -2158, -2255, -2353, -2546, + -2740, -2747, -2755, -2666, -2578, -2441, -2305, -2136, + -1968, -1991, -2015, -2390, -2254, -2669, -13, +51, + +116, +111, +106, +101, +96, +123, +150, +177, + +204, +242, +280, +318, +356, +418, +480, +510, + +540, +600, +661, +657, +1166, -2677, -2425, -2396, + -2368, -2380, -2392, -2404, -2416, -2416, -2416, -2416, + -1882, -1711, -1796, -1369, -1198, -1419, -1640, -1749, + -1858, -1977, -1842, -2058, -2019, -2113, -2207, -2366, + -2525, -2478, -2689, -2836, -2983, -2759, -2536, -2393, + -2250, -2194, -2139, -2357, -2318, -2018, +72, +113, + +157, +150, +145, +139, +134, +159, +186, +212, + +239, +273, +308, +342, +377, +439, +502, +548, + +595, +632, +669, +931, +170, -2666, -2430, -2403, + -2376, -2385, -2394, -2403, -2412, -2412, -2412, -2412, + -1916, -1840, -2276, -1240, -1228, -1400, -1572, -1712, + -1852, -1731, -1610, -1745, -1881, -1972, -2063, -2186, + -2310, -2211, -2625, -2751, -2877, -2822, -2768, -2650, + -2532, -2398, -2265, -2324, -2383, -1369, +156, +177, + +198, +191, +185, +178, +172, +197, +223, +248, + +274, +305, +336, +367, +398, +461, +524, +587, + +650, +664, +679, +1206, -827, -2656, -2437, -2410, + -2384, -2390, -2396, -2402, -2408, -2408, -2408, -2408, + -1950, -1953, -1956, -1063, -1194, -1317, -1440, -1435, + -1430, -1499, -1314, -1431, -1550, -1638, -1726, -1798, + -1871, -1927, -2240, -2409, -2578, -2597, -2616, -2731, + -2846, -2554, -2262, -2259, -2511, -527, +176, +207, + +239, +231, +224, +217, +210, +234, +259, +284, + +309, +336, +364, +391, +419, +482, +546, +609, + +673, +744, +816, +936, -2015, -2485, -2187, -2289, + -2392, -2395, -2398, -2401, -2404, -2404, -2404, -2404, + -1984, -2066, -1636, -886, -1160, -1234, -1308, -1414, + -1520, -2037, -2042, -1887, -1732, -1817, -1902, -1923, + -1944, -1900, -1856, -2068, -2280, -2372, -2464, -2556, + -2648, -2454, -2260, -2194, -2640, +314, +196, +238, + +280, +272, +264, +256, +248, +272, +296, +320, + +344, +368, +392, +416, +440, +504, +568, +632, + +696, +825, +954, +923, -2692, -2315, -2450, -2425, + -2400, -2400, -2400, -2400, -2400, -2400, -2400, -2400, + -2252, -1953, -1142, -1035, -1441, -1826, -2211, -2244, + -2278, -2220, -1908, -1914, -1922, -2001, -2336, -2095, + -2111, -2171, -2231, -2131, -2031, -2143, -2255, -2303, + -2352, -2306, -2260, -2359, -1689, +442, +269, +305, + +341, +333, +325, +317, +309, +329, +349, +369, + +389, +415, +441, +468, +494, +536, +579, +669, + +760, +797, +1091, -248, -2610, -2406, -2459, -2431, + -2404, -2400, -2396, -2392, -2388, -2388, -2388, -2388, + -2008, -2096, -1673, -1953, -2234, -2162, -2091, -2051, + -2012, -2149, -2286, -2199, -2113, -1930, -2259, -2012, + -2278, -2186, -2094, -2194, -2295, -2171, -2047, -2051, + -2056, -2158, -2261, -2524, -739, +570, +343, +372, + +402, +394, +386, +378, +370, +386, +402, +418, + +434, +462, +491, +520, +549, +569, +590, +707, + +824, +770, +1228, -1418, -2528, -2498, -2468, -2438, + -2408, -2400, -2392, -2384, -2376, -2376, -2376, -2376, + -1988, -2191, -2139, -2150, -2163, -2130, -2098, -2081, + -2066, -2140, -2216, -2179, -2143, -2066, -2245, -2137, + -2285, -2233, -2181, -2225, -2270, -2326, -2382, -2166, + -1952, -2250, -2549, -2465, +180, +394, +352, +407, + +463, +455, +447, +423, +399, +523, +391, +547, + +447, +493, +540, +572, +603, +633, +665, +792, + +920, +1094, +1269, -2764, -2446, -2429, -2413, -2412, + -2412, -2400, -2388, -2376, -2364, -2364, -2364, -2364, + -1968, -2031, -2094, -2093, -2092, -2099, -2106, -2113, + -2120, -2133, -2147, -2160, -2174, -2203, -2233, -2262, + -2292, -2280, -2269, -2257, -2246, -2226, -2207, -2283, + -2360, -2343, -2327, -2406, +586, -38, +363, +443, + +524, +516, +508, +468, +428, +660, +380, +676, + +460, +525, +591, +624, +658, +699, +741, +878, + +1016, +907, +286, -2575, -2364, -2361, -2358, -2387, + -2416, -2400, -2384, -2368, -2352, -2352, -2352, -2352, + -2020, -2071, -2124, -2080, -2037, -2062, -2089, -2115, + -2142, -2152, -2164, -2176, -2188, -2211, -2235, -2259, + -2283, -2275, -2267, -2260, -2253, -2249, -2246, -2290, + -2336, -2337, -2339, -1205, -71, -16, +296, +496, + +441, +469, +497, +381, +521, +635, +493, +735, + +465, +544, +624, +640, +656, +747, +839, +899, + +960, +1115, -1033, -2493, -2418, -2378, -2339, -2379, + -2420, -2408, -2396, -2384, -2372, -2372, -2372, -2372, + -2072, -2113, -2155, -2068, -1982, -2027, -2073, -2118, + -2164, -2173, -2183, -2193, -2203, -2220, -2238, -2256, + -2274, -2270, -2267, -2264, -2261, -2273, -2286, -2299, + -2312, -2332, -2352, -2052, -729, +7, +230, +550, + +358, +422, +486, +294, +614, +610, +606, +794, + +470, +564, +658, +656, +655, +797, +939, +921, + +904, +1324, -2352, -2412, -2472, -2396, -2320, -2372, + -2424, -2416, -2408, -2400, -2392, -2392, -2392, -2392, + -1996, -1930, -1865, -1960, -2055, -2087, -2120, -2153, + -2186, -2193, -2201, -2209, -2217, -2229, -2241, -2253, + -2265, -2265, -2266, -2267, -2268, -2280, -2294, -2306, + -2320, -2342, -2365, -2707, -2538, -1491, -188, +172, + +275, +327, +379, +287, +451, +505, +559, +773, + +475, +551, +628, +512, +653, +909, +654, +1007, + +1104, -739, -2583, -2506, -2430, -2397, -2365, -2396, + -2428, -2424, -2420, -2416, -2412, -2412, -2412, -2412, + -1920, -2004, -2088, -2108, -2128, -2148, -2168, -2188, + -2208, -2214, -2220, -2226, -2232, -2238, -2244, -2250, + -2256, -2261, -2266, -2271, -2276, -2289, -2302, -2315, + -2328, -2353, -2378, -2339, -2300, -2477, -1630, -719, + +192, +232, +272, +280, +288, +400, +512, +752, + +480, +539, +598, +369, +652, +767, -142, -1211, + -2792, -2547, -2302, -2345, -2388, -2399, -2410, -2421, + -2432, -2432, -2432, -2432, -2432, -2432, -2432, -2432, + -2024, -2070, -2116, -2130, -2144, -2164, -2184, -2204, + -2224, -2228, -2232, -2236, -2240, -2244, -2248, -2252, + -2256, -2262, -2270, -2276, -2284, -2296, -2310, -2322, + -2336, -2319, -2304, -2287, -2272, -2559, -2336, -1855, + -1376, -2264, -1104, -520, +64, +384, +704, +704, + +192, -44, -280, -1236, -1936, -3018, -2564, -2349, + -2392, -2390, -2390, -2388, -2388, -2398, -2410, -2420, + -2432, -2432, -2432, -2432, -2432, -2432, -2432, -2432, + -2128, -2136, -2144, -2152, -2160, -2180, -2200, -2220, + -2240, -2242, -2244, -2246, -2248, -2250, -2252, -2254, + -2256, -2265, -2274, -2283, -2292, -2305, -2318, -2331, + -2344, -2287, -2230, -2237, -2244, -2387, -2530, -2481, + -2432, -2456, -2480, -2600, -2720, -2448, -2176, -1904, + -2144, -2419, -2694, -2585, -2476, -2451, -2426, -2465, + -2504, -2491, -2478, -2433, -2388, -2399, -2410, -2421, + -2432, -2432, -2432, -2432, -2432, -2432, -2432, -2432, + -2104, -2122, -2140, -2158, -2176, -2196, -2216, -2236, + -2256, -2256, -2256, -2256, -2256, -2256, -2256, -2256, + -2256, -2266, -2278, -2288, -2300, -2312, -2326, -2338, + -2352, -2317, -2284, -2281, -2280, -2357, -2436, -2417, + -2400, -2408, -2416, -2360, -2304, -2480, -864, -1648, + -1408, -1225, -2580, -2509, -2440, -2427, -2416, -2435, + -2456, -2446, -2438, -2412, -2388, -2398, -2410, -2420, + -2432, -2432, -2432, -2432, -2432, -2432, -2432, -2432, + -2080, -2108, -2136, -2164, -2192, -2212, -2232, -2252, + -2272, -2270, -2268, -2266, -2264, -2262, -2260, -2258, + -2256, -2269, -2282, -2295, -2308, -2321, -2334, -2347, + -2360, -2349, -2338, -2327, -2316, -2329, -2342, -2355, + -2368, -2360, -2352, -2376, -2400, -2256, -2624, -1392, + -1696, -2593, -2466, -2435, -2404, -2405, -2406, -2407, + -2408, -2403, -2398, -2393, -2388, -2399, -2410, -2421, + -2432, -2432, -2432, -2432, -2432, -2432, -2432, -2432, + -2080, -2108, -2136, -2164, -2192, -2212, -2232, -2252, + -2272, -2270, -2268, -2266, -2264, -2262, -2260, -2258, + -2256, -2268, -2282, -2294, -2308, -2320, -2334, -2346, + -2360, -2348, -2338, -2326, -2316, -2328, -2342, -2354, + -2368, -2360, -2352, -2360, -2368, -2352, -2592, -2192, + -2560, -2768, -2466, -2434, -2404, -2404, -2406, -2406, + -2408, -2402, -2398, -2392, -2388, -2398, -2410, -2420, + -2432, -2432, -2432, -2432, -2432, -2432, -2432, -2432, + -2080, -2108, -2136, -2164, -2192, -2212, -2232, -2252, + -2272, -2270, -2268, -2266, -2264, -2262, -2260, -2258, + -2256, -2269, -2282, -2295, -2308, -2321, -2334, -2347, + -2360, -2349, -2338, -2327, -2316, -2329, -2342, -2355, + -2368, -2360, -2352, -2344, -2336, -2448, -2560, -2480, + -2400, -2433, -2466, -2435, -2404, -2405, -2406, -2407, + -2408, -2403, -2398, -2393, -2388, -2399, -2410, -2421, + -2432, -2432, -2432, -2432, -2432, -2432, -2432, -2432, + -2080, -2108, -2136, -2164, -2192, -2212, -2232, -2252, + -2272, -2270, -2268, -2266, -2264, -2262, -2260, -2258, + -2256, -2268, -2282, -2294, -2308, -2320, -2334, -2346, + -2360, -2348, -2338, -2326, -2316, -2328, -2342, -2354, + -2368, -2360, -2352, -2344, -2336, -2448, -2560, -2480, + -2400, -2432, -2466, -2434, -2404, -2404, -2406, -2406, + -2408, -2402, -2398, -2392, -2388, -2398, -2410, -2420, + -2432, -2432, -2432, -2432, -2432, -2432, -2432, -2432 +}; + +/** + * 64x64 XRGB Image + */ + +static UINT32 TEST_XRGB_IMAGE[4096] = +{ + 0xFF229cdf, 0xFF249de0, 0xFF259fe2, 0xFF2ca5e8, 0xFF229cdf, 0xFF229ce0, 0xFF239de0, 0xFF229ce0, + 0xFF229cdf, 0xFF229cdf, 0xFF239ce0, 0xFF249ce0, 0xFF249ce0, 0xFF219ce3, 0xFF1e9ce6, 0xFF209ae2, + 0xFF2299dd, 0xFF2199de, 0xFF209adf, 0xFF209ae0, 0xFF1f9be0, 0xFF1e9ae0, 0xFF1d99e0, 0xFF1c98e0, + 0xFF1b97df, 0xFF1e96dc, 0xFF2194d9, 0xFF1f93dd, 0xFF1d93e0, 0xFF1b94dc, 0xFF1895d8, 0xFF1c92db, + 0xFF208fde, 0xFF1b91de, 0xFF1693df, 0xFF1793df, 0xFF1992df, 0xFF1891df, 0xFF178fdf, 0xFF178edf, + 0xFF168dde, 0xFF158cdd, 0xFF148cdc, 0xFF128cda, 0xFF118cd9, 0xFF118bd9, 0xFF128ada, 0xFF1289da, + 0xFF1288db, 0xFF1187da, 0xFF1186da, 0xFF1085da, 0xFF0f85d9, 0xFF0f84d9, 0xFF0e83d9, 0xFF0d82d8, + 0xFF0d82d8, 0xFF0d81d8, 0xFF0d80d7, 0xFF0d7fd7, 0xFF0d7ed6, 0xFF0d7ed6, 0xFF0d7ed6, 0xFF0d7ed6, + 0xFF259fe1, 0xFF27a1e2, 0xFF29a2e3, 0xFF2ba4e6, 0xFF249fe1, 0xFF249fe1, 0xFF249fe1, 0xFF249ee1, + 0xFF239ee1, 0xFF249ee1, 0xFF249ee1, 0xFF259de1, 0xFF259de2, 0xFF249de2, 0xFF229de2, 0xFF229ce1, + 0xFF229bdf, 0xFF219ce0, 0xFF209ce1, 0xFF209ce2, 0xFF209ce2, 0xFF209ae0, 0xFF2199de, 0xFF1f99df, + 0xFF1d98e0, 0xFF1e97e0, 0xFF1f97e0, 0xFF1d96df, 0xFF1c95de, 0xFF1c94e0, 0xFF1c94e1, 0xFF1d93e1, + 0xFF1d92e0, 0xFF1b93de, 0xFF1a94dc, 0xFF1a93de, 0xFF1a93e0, 0xFF1992e0, 0xFF1891df, 0xFF188fdf, + 0xFF178edf, 0xFF168ede, 0xFF158edd, 0xFF148ddc, 0xFF138ddb, 0xFF138cdb, 0xFF138bdb, 0xFF128adb, + 0xFF1289db, 0xFF1288db, 0xFF1187db, 0xFF1186db, 0xFF1085db, 0xFF0f84da, 0xFF0e83d9, 0xFF0e83d9, + 0xFF0e83d9, 0xFF0e82d9, 0xFF0e81d8, 0xFF0e80d8, 0xFF0d7fd7, 0xFF0d7fd7, 0xFF0d7fd7, 0xFF0d7fd7, + 0xFF27a3e3, 0xFF2aa4e3, 0xFF2ea6e3, 0xFF2aa4e3, 0xFF26a2e3, 0xFF26a1e3, 0xFF25a1e3, 0xFF25a0e3, + 0xFF25a0e3, 0xFF25a0e3, 0xFF259fe3, 0xFF269fe3, 0xFF269ee4, 0xFF279ee1, 0xFF279edf, 0xFF259ee0, + 0xFF239ee1, 0xFF219ee2, 0xFF209ee4, 0xFF209de4, 0xFF219de3, 0xFF229be0, 0xFF2499dc, 0xFF2299de, + 0xFF1f98e0, 0xFF1d99e4, 0xFF1b9ae7, 0xFF1c98e2, 0xFF1c96dc, 0xFF1e94e3, 0xFF2092ea, 0xFF1d94e6, + 0xFF1a96e2, 0xFF1c96de, 0xFF1d95da, 0xFF1c94de, 0xFF1b94e1, 0xFF1a93e0, 0xFF1a92e0, 0xFF1991e0, + 0xFF1890e0, 0xFF1790df, 0xFF178fde, 0xFF168fde, 0xFF158edd, 0xFF148ddd, 0xFF138cdc, 0xFF138bdc, + 0xFF128adc, 0xFF1289dc, 0xFF1188dc, 0xFF1187dd, 0xFF1086dd, 0xFF0f85db, 0xFF0e83d9, 0xFF0e84da, + 0xFF0f84da, 0xFF0e83da, 0xFF0e82d9, 0xFF0e81d9, 0xFF0e80d8, 0xFF0e80d8, 0xFF0e80d8, 0xFF0e80d8, + 0xFF2aa7e5, 0xFF2da7e4, 0xFF31a8e3, 0xFF2ca6e3, 0xFF27a4e4, 0xFF27a3e4, 0xFF27a3e4, 0xFF27a3e4, + 0xFF26a2e4, 0xFF26a2e4, 0xFF27a1e5, 0xFF27a0e5, 0xFF27a0e6, 0xFF26a0e5, 0xFF25a0e4, 0xFF259fe4, + 0xFF259ee3, 0xFF239ee5, 0xFF229fe6, 0xFF229fe5, 0xFF229fe4, 0xFF13a5e6, 0xFF1b9fe8, 0xFF16a0e8, + 0xFF11a0e7, 0xFF129fef, 0xFF139ef7, 0xFF1b99ec, 0xFF179ae2, 0xFF149ce4, 0xFF1d98e5, 0xFF1c97e6, + 0xFF1b96e7, 0xFF1c98dc, 0xFF1d97df, 0xFF1c96e1, 0xFF1c94e2, 0xFF1b94e1, 0xFF1b93e1, 0xFF1a93e0, + 0xFF1a92e0, 0xFF1991e0, 0xFF1890e0, 0xFF1790df, 0xFF168fdf, 0xFF158ede, 0xFF158dde, 0xFF148cdd, + 0xFF138bdc, 0xFF128add, 0xFF1289dd, 0xFF1188de, 0xFF1187de, 0xFF0f85dc, 0xFF0d83da, 0xFF0f85db, + 0xFF1086db, 0xFF0f84db, 0xFF0f83da, 0xFF0e82da, 0xFF0e81da, 0xFF0e81da, 0xFF0e81da, 0xFF0e81da, + 0xFF2caae7, 0xFF30aae5, 0xFF34abe3, 0xFF2ea8e4, 0xFF29a6e5, 0xFF28a6e5, 0xFF28a5e5, 0xFF28a5e5, + 0xFF28a5e6, 0xFF28a4e6, 0xFF28a3e7, 0xFF28a2e7, 0xFF28a1e8, 0xFF25a2e9, 0xFF23a3ea, 0xFF25a0e8, + 0xFF279ee6, 0xFF259fe7, 0xFF23a0e9, 0xFF18a4f5, 0xFF0ea7ff, 0xFF1ba6de, 0xFF558ebb, 0xFF6f839c, + 0xFF89797e, 0xFF8d797c, 0xFF917979, 0xFF7f7b94, 0xFF5687af, 0xFF229bd6, 0xFF04a4fd, 0xFF109df4, + 0xFF1c97eb, 0xFF1c9ada, 0xFF1c98e4, 0xFF1c97e3, 0xFF1d95e2, 0xFF1c95e2, 0xFF1c94e2, 0xFF1c94e1, + 0xFF1b94e1, 0xFF1a93e1, 0xFF1a92e1, 0xFF1991e1, 0xFF1890e1, 0xFF178fe0, 0xFF158edf, 0xFF148dde, + 0xFF138cdd, 0xFF128bde, 0xFF128adf, 0xFF1289df, 0xFF1188e0, 0xFF0f85dd, 0xFF0d83da, 0xFF0f85db, + 0xFF1187dd, 0xFF1086dc, 0xFF0f84dc, 0xFF0e83db, 0xFF0e81db, 0xFF0e81db, 0xFF0e81db, 0xFF0e81db, + 0xFF30abe5, 0xFF36afe8, 0xFF34abe4, 0xFF2faae5, 0xFF2ba8e6, 0xFF36aee8, 0xFF26a6e8, 0xFF29a7e7, + 0xFF2ca8e7, 0xFF2da7e6, 0xFF2fa5e5, 0xFF2ca5e7, 0xFF29a4e9, 0xFF2ba5e5, 0xFF2ca5e2, 0xFF10aaef, + 0xFF13adf6, 0xFF23a3f8, 0xFF6091a5, 0xFFa6755d, 0xFFec5915, 0xFFff490c, 0xFFfa5504, 0xFFff590f, + 0xFFff5d1b, 0xFFff6116, 0xFFfa6412, 0xFFff550f, 0xFFff4b0d, 0xFFfb4918, 0xFFf54823, 0xFF8e737e, + 0xFF269eda, 0xFF06a2ff, 0xFF1d97e2, 0xFF1799ea, 0xFF1c97e4, 0xFF1a98e4, 0xFF1898e4, 0xFF1a96e3, + 0xFF1b95e3, 0xFF1a94e2, 0xFF1a93e0, 0xFF1992e1, 0xFF1891e2, 0xFF1790e1, 0xFF168fe0, 0xFF158fdf, + 0xFF138ede, 0xFF138ddf, 0xFF138ce0, 0xFF128be0, 0xFF1189e0, 0xFF1087de, 0xFF0f85db, 0xFF138ae0, + 0xFF0f87dc, 0xFF0f86dc, 0xFF0f85dc, 0xFF0f84dc, 0xFF0e83db, 0xFF0e83db, 0xFF0e83db, 0xFF0e83db, + 0xFF34abe2, 0xFF3cb4ec, 0xFF34ace5, 0xFF31abe6, 0xFF2daae8, 0xFF44b6eb, 0xFF24a7ea, 0xFF29aaea, + 0xFF2face9, 0xFF32a9e6, 0xFF35a7e3, 0xFF30a7e6, 0xFF2ba8ea, 0xFF25aaf0, 0xFF20adf6, 0xFF4d8ba7, + 0xFFb8674c, 0xFFff5510, 0xFFf7650c, 0xFFf86313, 0xFFfa611b, 0xFFf0671f, 0xFFfc6222, 0xFFfb6926, + 0xFFf96f29, 0xFFf67122, 0xFFf3721b, 0xFFf26b20, 0xFFf16424, 0xFFff5622, 0xFFff531f, 0xFFff4b17, + 0xFFff440e, 0xFFb1615b, 0xFF1f95e0, 0xFF129bf0, 0xFF1c9ae5, 0xFF189ae6, 0xFF159be7, 0xFF1898e6, + 0xFF1b95e5, 0xFF1b95e2, 0xFF1995e0, 0xFF1994e1, 0xFF1892e2, 0xFF1792e1, 0xFF1691e0, 0xFF1590df, + 0xFF148fdf, 0xFF148fe0, 0xFF148fe1, 0xFF128de1, 0xFF108be0, 0xFF1189de, 0xFF1186dd, 0xFF178fe4, + 0xFF0e87db, 0xFF0e87dc, 0xFF0f87dd, 0xFF0f85dc, 0xFF0e84dc, 0xFF0e84dc, 0xFF0e84dc, 0xFF0e84dc, + 0xFF36b1eb, 0xFF36b4f0, 0xFF2eafed, 0xFF2caeec, 0xFF2aadec, 0xFF41b4ef, 0xFF29abe9, 0xFF2cabe8, + 0xFF2fabe7, 0xFF31abe6, 0xFF32aae6, 0xFF2faae7, 0xFF2ca9e8, 0xFF25a7eb, 0xFF946a5f, 0xFFff3e06, + 0xFFf95618, 0xFFe27312, 0xFFf87329, 0xFFf77427, 0xFFf77626, 0xFFf27628, 0xFFf8712b, 0xFFf9772e, + 0xFFf97e30, 0xFFf77f2e, 0xFFf5812b, 0xFFf57b2c, 0xFFf5752d, 0xFFfd6a2b, 0xFFfb652a, 0xFFf65e2c, + 0xFFf1572e, 0xFFff4810, 0xFFff460f, 0xFF817680, 0xFF02a7f1, 0xFF2496ea, 0xFF199be4, 0xFF1b98e4, + 0xFF1d96e5, 0xFF1b96e2, 0xFF1a96e0, 0xFF1995e1, 0xFF1794e3, 0xFF1793e2, 0xFF1692e1, 0xFF1691e0, + 0xFF1590df, 0xFF1591e1, 0xFF1591e3, 0xFF138fe1, 0xFF108ce0, 0xFF128be0, 0xFF158ae0, 0xFF168de2, + 0xFF0f89dd, 0xFF0f88dd, 0xFF0f88dd, 0xFF0f86dd, 0xFF0f85dc, 0xFF0f85dc, 0xFF0f85dc, 0xFF0f85dc, + 0xFF5fc1e7, 0xFF57bee8, 0xFF4fbbe9, 0xFF4ebae6, 0xFF4ebae3, 0xFF51b6ee, 0xFF2eaee8, 0xFF2eade6, + 0xFF2fabe5, 0xFF2face7, 0xFF2eade9, 0xFF2eace7, 0xFF2daae5, 0xFF15b2ff, 0xFFec4310, 0xFFf15016, + 0xFFf75d1c, 0xFFf87123, 0xFFf9862a, 0xFFf6882d, 0xFFf48b31, 0xFFf48532, 0xFFf47f33, 0xFFf78535, + 0xFFfa8c37, 0xFFf88e39, 0xFFf7903a, 0xFFf88b38, 0xFFf98635, 0xFFf87e35, 0xFFf77635, 0xFFf76d34, + 0xFFf76532, 0xFFf85e31, 0xFFf95730, 0xFFff5125, 0xFFf65237, 0xFF03a5fd, 0xFF1e9be1, 0xFF1e98e3, + 0xFF1f96e5, 0xFF1c97e2, 0xFF1a97df, 0xFF1896e1, 0xFF1795e4, 0xFF1794e3, 0xFF1793e2, 0xFF1692e1, + 0xFF1692e0, 0xFF1693e2, 0xFF1794e4, 0xFF1391e2, 0xFF0f8ee0, 0xFF148ee1, 0xFF198ee3, 0xFF148ce1, + 0xFF0f8bde, 0xFF0f8ade, 0xFF0f89de, 0xFF0f88dd, 0xFF0f86dd, 0xFF0f86dd, 0xFF0f86dd, 0xFF0f86dd, + 0xFF3cb6ee, 0xFF36b4ef, 0xFF30b2f0, 0xFF30b1ee, 0xFF2fb1ec, 0xFF38b0ef, 0xFF2eaee9, 0xFF2faee8, + 0xFF31ade6, 0xFF2fafe8, 0xFF2eb1ea, 0xFF31adec, 0xFF29afee, 0xFF30aac8, 0xFFff3d05, 0xFFfa501a, + 0xFFf96021, 0xFFf87428, 0xFFf7882f, 0xFFfa9638, 0xFFf59b38, 0xFFf5973b, 0xFFf6923e, 0xFFf89440, + 0xFFfa9742, 0xFFfa9a44, 0xFFfa9d46, 0xFFf99845, 0xFFf89444, 0xFFf98d43, 0xFFfa8641, 0xFFf97d3f, + 0xFFf9743d, 0xFFf77039, 0xFFf56d35, 0xFFff6122, 0xFFbf6c63, 0xFF129eef, 0xFF229ae8, 0xFF1c99ed, + 0xFF179ce4, 0xFF1498f0, 0xFF1b94e1, 0xFF1a96e2, 0xFF1998e3, 0xFF1897e4, 0xFF1896e5, 0xFF1895e4, + 0xFF1993e2, 0xFF1792e1, 0xFF1590df, 0xFF1692e2, 0xFF1793e5, 0xFF1490e4, 0xFF128ee2, 0xFF118de3, + 0xFF108de3, 0xFF118bde, 0xFF1289d9, 0xFF0f88e2, 0xFF0c89dd, 0xFF1085e0, 0xFF0987e4, 0xFF0987e4, + 0xFF40b5e9, 0xFF3bb4e9, 0xFF37b2ea, 0xFF37b2e9, 0xFF38b1e8, 0xFF33b0ea, 0xFF2eaeeb, 0xFF30afe9, + 0xFF33afe8, 0xFF30b2ea, 0xFF2eb5ec, 0xFF34aff2, 0xFF25b4f7, 0xFF8d7f86, 0xFFf64f00, 0xFFed5c1e, + 0xFFfa6326, 0xFFf7762d, 0xFFf58a35, 0xFFfea242, 0xFFf7ab3f, 0xFFf7a843, 0xFFf7a548, 0xFFf9a34a, + 0xFFfaa24c, 0xFFfba64f, 0xFFfcaa52, 0xFFf9a652, 0xFFf7a252, 0xFFfa9c50, 0xFFfd974e, 0xFFfc8d4b, + 0xFFfb8348, 0xFFf68341, 0xFFf1823a, 0xFFf5732c, 0xFF718cac, 0xFF179af0, 0xFF2599ef, 0xFF2697e9, + 0xFF269bc6, 0xFF1696f1, 0xFF1d91e3, 0xFF1c96e3, 0xFF1b9be3, 0xFF1a99e6, 0xFF1998e9, 0xFF1b97e7, + 0xFF1c95e5, 0xFF1891df, 0xFF138dda, 0xFF1992e2, 0xFF1e98ea, 0xFF1592e6, 0xFF0b8de2, 0xFF0e8ee5, + 0xFF108fe9, 0xFF128cdf, 0xFF1489d4, 0xFF0e88e6, 0xFF088cdc, 0xFF1184e4, 0xFF0488ec, 0xFF0488ec, + 0xFF3eb6ea, 0xFF3bb5eb, 0xFF38b4eb, 0xFF38b4eb, 0xFF38b3eb, 0xFF35b2eb, 0xFF33b1ec, 0xFF34b1eb, + 0xFF35b1ea, 0xFF32b3e9, 0xFF30b5e9, 0xFF34b0f0, 0xFF23b6f8, 0xFFc56044, 0xFFf9540c, 0xFFf26322, + 0xFFf77029, 0xFFf77d2f, 0xFFf78b35, 0xFFfba142, 0xFFf6b046, 0xFFfbb44f, 0xFFf7b051, 0xFFf9af54, + 0xFFfbad56, 0xFFfcb25a, 0xFFfeb75d, 0xFFfab35f, 0xFFf6b061, 0xFFfaac5d, 0xFFfda95a, 0xFFfb9f55, + 0xFFf99551, 0xFFf7914b, 0xFFf68d45, 0xFFff7e23, 0xFF1ba5f0, 0xFF129ef4, 0xFF2896f1, 0xFF239fb1, + 0xFF6c9600, 0xFF3c9c82, 0xFF179ef8, 0xFF169cf4, 0xFF149de3, 0xFF169ae5, 0xFF1897e7, 0xFF1995e6, + 0xFF1a93e5, 0xFF1993e3, 0xFF1793e0, 0xFF1c98e6, 0xFF1a95e5, 0xFF1692e5, 0xFF138fe5, 0xFF138ceb, + 0xFF138be3, 0xFF0087e4, 0xFF007cf5, 0xFF1a86d3, 0xFF0d8cf1, 0xFF008fe2, 0xFF0d85ea, 0xFF0886f1, + 0xFF3cb7ec, 0xFF3bb7ed, 0xFF3ab6ed, 0xFF39b6ed, 0xFF38b5ed, 0xFF37b5ed, 0xFF37b4ed, 0xFF37b3ed, + 0xFF36b3ec, 0xFF34b4e9, 0xFF31b5e5, 0xFF35b1ef, 0xFF21b8fa, 0xFFfd4203, 0xFFfc581e, 0xFFf86a26, + 0xFFf47c2d, 0xFFf78431, 0xFFf98c36, 0xFFf8a041, 0xFFf6b54d, 0xFFfec05b, 0xFFf6bc5a, 0xFFf8ba5d, + 0xFFfbb861, 0xFFfdbe65, 0xFFffc469, 0xFFfbc16c, 0xFFf5bd70, 0xFFfabc6b, 0xFFfebb66, 0xFFfab160, + 0xFFf6a75a, 0xFFf89f55, 0xFFfa984f, 0xFFdf956f, 0xFF08a6fc, 0xFF259ddb, 0xFF159ff3, 0xFF4aa172, + 0xFF69a90d, 0xFF62a406, 0xFF5a981b, 0xFF34969b, 0xFF0e99ff, 0xFF1297f2, 0xFF1695e4, 0xFF1793e5, + 0xFF1892e5, 0xFF1995e6, 0xFF1a98e7, 0xFF209deb, 0xFF1593df, 0xFF1892e4, 0xFF1a91e9, 0xFF2095eb, + 0xFF259dd1, 0xFFd0f772, 0xFFc1f396, 0xFF0083f1, 0xFF1782a0, 0xFF3c7e2f, 0xFF1787cc, 0xFF0b8ada, + 0xFF3db9ed, 0xFF3cb8ed, 0xFF3bb8ed, 0xFF3ab7ed, 0xFF39b7ed, 0xFF39b7ed, 0xFF39b6ed, 0xFF3ab6ed, + 0xFF3ab6ed, 0xFF37b4ed, 0xFF34b2ec, 0xFF35abf3, 0xFF6e96b3, 0xFFff4601, 0xFFf86520, 0xFFf67329, + 0xFFf58131, 0xFFf78b37, 0xFFf9953e, 0xFFf8a649, 0xFFf8b854, 0xFFfcc260, 0xFFf8c465, 0xFFf9c36a, + 0xFFfac26e, 0xFFfac773, 0xFFfacb77, 0xFFfbcb7b, 0xFFfccb7e, 0xFFfac87b, 0xFFf8c578, 0xFFf9bc72, + 0xFFfbb46d, 0xFFf6b069, 0xFFfeaa57, 0xFF94a0a5, 0xFF13a1f3, 0xFF219df0, 0xFF199eff, 0xFF71c124, + 0xFF79b826, 0xFF72b21e, 0xFF6aaa24, 0xFF67a125, 0xFF649a19, 0xFF419d72, 0xFF1f9fcb, 0xFF1994ff, + 0xFF1399f1, 0xFF199cf4, 0xFF1ea0f8, 0xFF1b9cff, 0xFF1193f6, 0xFF1293f1, 0xFF1393ec, 0xFF0083ff, + 0xFF72cca0, 0xFFcbf982, 0xFFd0ffac, 0xFF79a046, 0xFF337700, 0xFF3a7c03, 0xFF0d8de2, 0xFF0d8edb, + 0xFF3fbbee, 0xFF3ebaed, 0xFF3db9ed, 0xFF3cb9ed, 0xFF3bb8ed, 0xFF3bb8ed, 0xFF3cb9ee, 0xFF3cb9ee, + 0xFF3db9ef, 0xFF3ab4f1, 0xFF37aff3, 0xFF32b3fe, 0xFFb48f7d, 0xFFff5907, 0xFFf37122, 0xFFf57c2b, + 0xFFf68735, 0xFFf7923d, 0xFFf89d45, 0xFFf9ac50, 0xFFf9bb5a, 0xFFf9c465, 0xFFfacd71, 0xFFfacd76, + 0xFFfacd7b, 0xFFf7cf80, 0xFFf4d286, 0xFFfcd689, 0xFFffd98c, 0xFFfbd48b, 0xFFf3cf8a, 0xFFf9c885, + 0xFFffc17f, 0xFFf5c27d, 0xFFffbc5e, 0xFF48abdc, 0xFF1e9deb, 0xFF1ea2e8, 0xFF1da8e5, 0xFF99d31c, + 0xFF8acb22, 0xFF82c427, 0xFF7abc2c, 0xFF75b429, 0xFF70ad25, 0xFF6dab17, 0xFF6ba908, 0xFF5ea912, + 0xFF519f54, 0xFF489b6d, 0xFF3e9887, 0xFF3b9592, 0xFF389880, 0xFF449663, 0xFF509446, 0xFF83b43c, + 0xFF4f851b, 0xFFafe187, 0xFF9fcc83, 0xFF368011, 0xFF43821c, 0xFF32853c, 0xFF0492f9, 0xFF1092dd, + 0xFF40bcee, 0xFF3fbcee, 0xFF3ebbee, 0xFF3dbaed, 0xFF3cbaed, 0xFF3cb9ed, 0xFF3cb9ec, 0xFF3cb9ec, + 0xFF3cb8ec, 0xFF3fb4f0, 0xFF43aff5, 0xFF0ebbe9, 0xFFffb897, 0xFFf7814d, 0xFFf57623, 0xFFf6812e, + 0xFFf88c39, 0xFFf89943, 0xFFf8a64d, 0xFFf8b257, 0xFFf9bd60, 0xFFfac96d, 0xFFfbd47b, 0xFFfad681, + 0xFFfad788, 0xFFfbd98e, 0xFFfbda93, 0xFFfae5a1, 0xFFfed692, 0xFFfadea0, 0xFFf9db98, 0xFFfad694, + 0xFFfbd090, 0xFFffd285, 0xFFffc778, 0xFF009afd, 0xFF26a8f2, 0xFF20a4f8, 0xFF53bea5, 0xFFa4da31, + 0xFF9dd638, 0xFF97d03a, 0xFF91ca3d, 0xFF8bc539, 0xFF85c035, 0xFF7dbe31, 0xFF74bc2d, 0xFF76b81c, + 0xFF77b027, 0xFF72ab25, 0xFF6da724, 0xFF6ba328, 0xFF68a31f, 0xFF58951a, 0xFF78b745, 0xFFbbf181, + 0xFF73ad4c, 0xFF417c15, 0xFF508b1e, 0xFF43861c, 0xFF498614, 0xFF17868b, 0xFF0b90f6, 0xFF168ee8, + 0xFF42beef, 0xFF41bdee, 0xFF40bcee, 0xFF3fbced, 0xFF3ebbed, 0xFF3dbaec, 0xFF3db9eb, 0xFF3cb8ea, + 0xFF3bb7e9, 0xFF39b9f0, 0xFF37bbf7, 0xFF50b5dc, 0xFFff9744, 0xFFfec49d, 0xFFf87a24, 0xFFf88530, + 0xFFf9913d, 0xFFf8a049, 0xFFf7af55, 0xFFf8b85d, 0xFFf9c065, 0xFFface75, 0xFFfcdb85, 0xFFfbde8d, + 0xFFfae195, 0xFFfee29b, 0xFFffe2a0, 0xFFfbe9a4, 0xFFffbe6b, 0xFFfdde9f, 0xFFffe8a6, 0xFFfbe3a3, + 0xFFf8dea0, 0xFFfdd899, 0xFFb6bdab, 0xFF119ff1, 0xFF1ea4e9, 0xFF1a9fff, 0xFF89d465, 0xFFb0e245, + 0xFFb0e04e, 0xFFacdc4e, 0xFFa7d94e, 0xFFa1d649, 0xFF9ad345, 0xFF97ce3d, 0xFF94c935, 0xFF8dc534, + 0xFF86c133, 0xFF7bbc32, 0xFF6fb731, 0xFF6db330, 0xFF6cae2e, 0xFF7eba3f, 0xFF70a531, 0xFF7bb54f, + 0xFF579a20, 0xFF5c9f2b, 0xFF519425, 0xFF80b965, 0xFF609a1d, 0xFF0390e3, 0xFF118ef2, 0xFF1c89f2, + 0xFF44c0ef, 0xFF43bfef, 0xFF42beee, 0xFF40bdee, 0xFF3fbcee, 0xFF3fbbed, 0xFF40baeb, 0xFF3eb9ed, + 0xFF3cb9ee, 0xFF37b9eb, 0xFF27bcf7, 0xFF949c8f, 0xFFfb9637, 0xFFf9bc7c, 0xFFf9b585, 0xFFf7994a, + 0xFFf69b43, 0xFFf6a64e, 0xFFf7b259, 0xFFf8bc66, 0xFFfac672, 0xFFfad380, 0xFFfae08d, 0xFFf9e698, + 0xFFf9eba2, 0xFFfeeaa6, 0xFFffeaab, 0xFFfcefa9, 0xFFfaba62, 0xFFfbdc99, 0xFFfff4b9, 0xFFfbecb2, + 0xFFf7e6ab, 0xFFffe5a3, 0xFF64b1d1, 0xFF199ff0, 0xFF269fe9, 0xFF0499f2, 0xFFe3f051, 0xFFd5ef58, + 0xFFc0e364, 0xFFbde165, 0xFFbae065, 0xFFb5de5d, 0xFFb0dc56, 0xFFaad74e, 0xFFa3d346, 0xFF9bd043, + 0xFF93cd3f, 0xFF8cc93e, 0xFF84c63c, 0xFF81c139, 0xFF7dbc36, 0xFF8bc746, 0xFF89c245, 0xFF63a02c, + 0xFF65aa2c, 0xFF5ea42d, 0xFF509626, 0xFFa4cf98, 0xFFd9eadd, 0xFFb9ddff, 0xFF389ef4, 0xFF008fd4, + 0xFF46c1ef, 0xFF44c0ef, 0xFF43bfef, 0xFF42beef, 0xFF40bdef, 0xFF42bced, 0xFF43baec, 0xFF40baf0, + 0xFF3dbaf4, 0xFF35b8e7, 0xFF17bdf7, 0xFFd97f50, 0xFFf79147, 0xFFf7a554, 0xFFffdbba, 0xFFf8a24d, + 0xFFf3a549, 0xFFf5ad53, 0xFFf7b55e, 0xFFf9c16f, 0xFFfbcc7f, 0xFFf9d88a, 0xFFf8e595, 0xFFf8eda2, + 0xFFf8f5ae, 0xFFfff3b2, 0xFFfff2b6, 0xFFfef5ae, 0xFFf4b659, 0xFFf9db93, 0xFFfeffcd, 0xFFfbf6c1, + 0xFFf7edb6, 0xFFfff2ac, 0xFF13a4f7, 0xFF16a5f0, 0xFF18a5e8, 0xFF56b4cd, 0xFFf1f271, 0xFFd5ef84, + 0xFFcfe67b, 0xFFcde77c, 0xFFcbe77c, 0xFFc9e672, 0xFFc7e567, 0xFFbce15f, 0xFFb1dd57, 0xFFa9dc51, + 0xFFa0da4b, 0xFF9dd749, 0xFF9ad447, 0xFF94cf43, 0xFF8fcb3f, 0xFF88c43c, 0xFF82be39, 0xFF72b430, + 0xFF63a928, 0xFF59a028, 0xFF4e9827, 0xFFa0c479, 0xFFfffbf7, 0xFF7fd3f5, 0xFF038fe2, 0xFF0e89e2, + 0xFF48c3ef, 0xFF46c2ef, 0xFF45c1f0, 0xFF43c0f0, 0xFF42bff0, 0xFF42beee, 0xFF43bdec, 0xFF41bcef, + 0xFF3fbcf2, 0xFF2fc0fe, 0xFF36bdfc, 0xFFf54c00, 0xFFff8a52, 0xFFfaa65e, 0xFFfdc48e, 0xFFfbc185, + 0xFFf5ae50, 0xFFf7b65e, 0xFFf9be6c, 0xFFfac978, 0xFFfbd485, 0xFFfede98, 0xFFffe8aa, 0xFFfdeeae, + 0xFFf9f5b2, 0xFFfcf6ba, 0xFFfff7c2, 0xFFfcf0b2, 0xFFf7cc6e, 0xFFfbde91, 0xFFfdfcca, 0xFFfffbd1, + 0xFFfffdc8, 0xFFcae4c8, 0xFF16a1f2, 0xFF1da4ef, 0xFF12a1f1, 0xFF9fd5b9, 0xFFeaf28c, 0xFFdcf095, + 0xFFd9eb90, 0xFFd9ec93, 0xFFd9ec95, 0xFFd6eb8c, 0xFFd4ea83, 0xFFc9e779, 0xFFbfe36f, 0xFFb8e368, + 0xFFb1e262, 0xFFafe05e, 0xFFaddf5a, 0xFFa3d952, 0xFF99d449, 0xFF8ecb41, 0xFF84c33a, 0xFF75b833, + 0xFF66ac2c, 0xFF5da329, 0xFF559927, 0xFF4b9421, 0xFF2499b9, 0xFF1593fe, 0xFF0993d8, 0xFF0f90d8, + 0xFF4ac5ef, 0xFF48c4f0, 0xFF46c2f0, 0xFF45c1f1, 0xFF43c0f1, 0xFF43bfef, 0xFF43bfed, 0xFF42beee, + 0xFF41bdf0, 0xFF38bbf0, 0xFF72a1b8, 0xFFff5d1e, 0xFFf97931, 0xFFf5a151, 0xFFf9ad61, 0xFFfee0bd, + 0xFFf8b758, 0xFFfabf69, 0xFFfcc87a, 0xFFfcd282, 0xFFfcdc8b, 0xFFfbde8f, 0xFFfbe193, 0xFFfbeba4, + 0xFFfbf5b5, 0xFFfaf8c2, 0xFFf9fcce, 0xFFf9ecb7, 0xFFfae183, 0xFFfee290, 0xFFfbfac8, 0xFFfdf8d8, + 0xFFfffccb, 0xFF8bcedc, 0xFF189fee, 0xFF25a3ee, 0xFF0b9dfb, 0xFFe8f6a5, 0xFFe4f1a6, 0xFFe4f0a6, + 0xFFe4efa6, 0xFFe5f1aa, 0xFFe6f2ad, 0xFFe3f1a6, 0xFFe0ef9e, 0xFFd7ec93, 0xFFcde987, 0xFFc8ea80, + 0xFFc2eb78, 0xFFc1ea73, 0xFFc0e96e, 0xFFb1e360, 0xFFa3dd53, 0xFF94d247, 0xFF86c83b, 0xFF78bc35, + 0xFF69b030, 0xFF62a52b, 0xFF5b9b27, 0xFF57920a, 0xFF0995fc, 0xFF0d96e5, 0xFF1091eb, 0xFF1091eb, + 0xFF4ac5f0, 0xFF49c4f0, 0xFF47c3f1, 0xFF45c2f1, 0xFF44c1f2, 0xFF41c1f2, 0xFF3fc1f2, 0xFF3fbff1, + 0xFF3fbcf0, 0xFF32c3fe, 0xFFbe7f6e, 0xFFfe6526, 0xFFf67b35, 0xFFf59a4d, 0xFFf8ab5c, 0xFFfbd0a0, + 0xFFf7c783, 0xFFfec16b, 0xFFfdd17f, 0xFFfbdb87, 0xFFf9e590, 0xFFf8ed9a, 0xFFf7f4a5, 0xFFfbea9a, + 0xFFffdf8e, 0xFFfce3a0, 0xFFf7e6b1, 0xFFfceecc, 0xFFfffbcb, 0xFFfff3c7, 0xFFfcf1c3, 0xFFfef5d2, + 0xFFfffcd3, 0xFF4bb5e7, 0xFF21a5ed, 0xFF1ca2ee, 0xFF3daae2, 0xFFeef6ac, 0xFFe6f2b1, 0xFFe8f2b5, + 0xFFe9f3b8, 0xFFeaf4ba, 0xFFebf5bc, 0xFFe8f3b6, 0xFFe6f2af, 0xFFe0f0a8, 0xFFdbeea2, 0xFFd6ef9a, + 0xFFd1f092, 0xFFc9ed82, 0xFFc1eb73, 0xFFb0e362, 0xFFa1dc51, 0xFF94d347, 0xFF88ca3e, 0xFF7bbf38, + 0xFF6eb433, 0xFF66a92e, 0xFF5da01b, 0xFF3d9448, 0xFF0a93f6, 0xFF0e94ec, 0xFF1193f0, 0xFF1193f0, + 0xFF4bc5f1, 0xFF4ac5f1, 0xFF48c4f1, 0xFF47c3f2, 0xFF45c3f2, 0xFF40c3f4, 0xFF3bc4f6, 0xFF3cbff3, + 0xFF3ebbf0, 0xFF2dcaff, 0xFFff5d25, 0xFFfe6d2f, 0xFFf37d39, 0xFFf59348, 0xFFf8a958, 0xFFf7c083, + 0xFFf7d7ae, 0xFFffc36d, 0xFFffda84, 0xFFfbe48c, 0xFFf7ee94, 0xFFf8ed9e, 0xFFfaeca7, 0xFFf9f1b4, + 0xFFf8f6c1, 0xFFfcf6c8, 0xFFfff6d0, 0xFFfef2d3, 0xFFfcf4ba, 0xFFfffee8, 0xFFf7fdea, 0xFFfdfde3, + 0xFFfffcdc, 0xFF0b9df1, 0xFF2aaaed, 0xFF1baaf6, 0xFF80c8da, 0xFFfdffbb, 0xFFe8f2bd, 0xFFebf4c4, + 0xFFeff7cb, 0xFFeff7cb, 0xFFeff7cb, 0xFFedf6c5, 0xFFebf5c0, 0xFFeaf4be, 0xFFe8f3bd, 0xFFe4f4b4, + 0xFFe0f6ab, 0xFFd0f191, 0xFFc1ec77, 0xFFb0e463, 0xFF9edb4e, 0xFF95d448, 0xFF8bcc42, 0xFF7fc23b, + 0xFF73b935, 0xFF6aac31, 0xFF60a510, 0xFF229687, 0xFF0b91f1, 0xFF0e93f3, 0xFF1294f5, 0xFF1294f5, + 0xFF4cc6f1, 0xFF4bc5f2, 0xFF49c5f2, 0xFF47c4f2, 0xFF46c4f2, 0xFF43c4f1, 0xFF40c4f0, 0xFF42c0f3, + 0xFF39c1f6, 0xFF5eacca, 0xFFfb591e, 0xFFf36e31, 0xFFf88135, 0xFFfb923f, 0xFFfbaf5e, 0xFFffc373, + 0xFFfde2ba, 0xFFffcd75, 0xFFffd372, 0xFFffe584, 0xFFfff796, 0xFFfef4a2, 0xFFfdf1ae, 0xFFfff8c2, + 0xFFfcf8cd, 0xFFfef8d2, 0xFFfff9d6, 0xFFfef6e1, 0xFFfcf5dd, 0xFFfffbee, 0xFFfbfce8, 0xFFfffce0, + 0xFFb2e0e8, 0xFF19a4f0, 0xFF26abec, 0xFF16a8f6, 0xFFc2e4d8, 0xFFf9fac5, 0xFFeff6cb, 0xFFf0f7ce, + 0xFFf1f8d2, 0xFFf1f8d1, 0xFFf2f9d1, 0xFFf1f9cd, 0xFFf1f9ca, 0xFFf2fbca, 0xFFf4fdca, 0xFFe7f8b6, + 0xFFdaf3a2, 0xFFcbef8a, 0xFFbcec71, 0xFFb0e661, 0xFFa5e151, 0xFF9ad949, 0xFF8fd240, 0xFF83c73b, + 0xFF77bc35, 0xFF6ab31d, 0xFF5ea905, 0xFF138dea, 0xFF1193ef, 0xFF1093f0, 0xFF0f93f0, 0xFF0f93f0, + 0xFF4dc6f2, 0xFF4cc6f2, 0xFF4ac5f3, 0xFF48c5f3, 0xFF47c5f3, 0xFF46c4ef, 0xFF46c4eb, 0xFF48c0f3, + 0xFF34c7fb, 0xFF989591, 0xFFfc6428, 0xFFf1773b, 0xFFfc8432, 0xFFff9135, 0xFFffb564, 0xFFffbe5a, + 0xFFf3ddb6, 0xFFccd097, 0xFFb4cea5, 0xFFb0d3b1, 0xFFabd7bd, 0xFFc3e1bf, 0xFFdaebc1, 0xFFf5fdc7, + 0xFFffffbd, 0xFFfffecd, 0xFFfffcdc, 0xFFfffce0, 0xFFfbfce5, 0xFFfdfbe6, 0xFFfffae7, 0xFFfffbdd, + 0xFF61c4f4, 0xFF26aaee, 0xFF22abec, 0xFF10a7f6, 0xFFffffd7, 0xFFf5f5d0, 0xFFf6fad9, 0xFFf4f9d9, + 0xFFf2f9da, 0xFFf3fad8, 0xFFf4fbd7, 0xFFf5fcd5, 0xFFf7fdd4, 0xFFf3face, 0xFFf0f7c8, 0xFFe2f4b0, + 0xFFd4f199, 0xFFc5ee82, 0xFFb7eb6b, 0xFFb1e95f, 0xFFabe754, 0xFF9fdf49, 0xFF94d83f, 0xFF87cc3a, + 0xFF7bc034, 0xFF6bb425, 0xFF5ba332, 0xFF0495f9, 0xFF1795ee, 0xFF1293ed, 0xFF0c91eb, 0xFF0c91eb, + 0xFF4fc8f3, 0xFF4dc8f3, 0xFF4cc8f4, 0xFF4bc8f4, 0xFF49c8f4, 0xFF47c5f2, 0xFF45c2ef, 0xFF42c2f8, + 0xFF34c8ff, 0xFFdf6746, 0xFFff632a, 0xFFff701b, 0xFFe18b53, 0xFFa4a185, 0xFF63c1cd, 0xFF26c0ff, + 0xFF2ab8ff, 0xFF25b5f1, 0xFF27b7f9, 0xFF26b5f6, 0xFF23b3f2, 0xFF24b5fa, 0xFF25b7ff, 0xFF189ddf, + 0xFF43bbf4, 0xFF9edae8, 0xFFf9f9dc, 0xFFf3fbe6, 0xFFffffea, 0xFFfdffe6, 0xFFfafce2, 0xFFffffff, + 0xFF1ea8ef, 0xFF1ca8f1, 0xFF1ba8f2, 0xFF5bc4f1, 0xFFffffe7, 0xFFfbf9e1, 0xFFfbfce3, 0xFFf8fbe0, + 0xFFf5fadd, 0xFFf5fbdb, 0xFFf5fbda, 0xFFf6fcd7, 0xFFf6fdd3, 0xFFf0f8c9, 0xFFebf4be, 0xFFdff2a9, + 0xFFd4f094, 0xFFc7f47b, 0xFFbaf862, 0xFFb0ef58, 0xFFa6e64e, 0xFFa3e248, 0xFF98d73a, 0xFF8acd38, + 0xFF7bc435, 0xFF70b821, 0xFF3b9c84, 0xFF0d93f4, 0xFF1394ed, 0xFF1193e9, 0xFF0f92e6, 0xFF0f92e6, + 0xFF50c9f4, 0xFF4fcaf4, 0xFF4ecaf5, 0xFF4dcaf5, 0xFF4ccaf6, 0xFF48c5f4, 0xFF45c0f3, 0xFF47c2ef, + 0xFF4ac4eb, 0xFFff521f, 0xFFa79a92, 0xFF51b7e6, 0xFF28c7ff, 0xFF2cc4f9, 0xFF31c1f1, 0xFF3fbbf0, + 0xFF37c0ef, 0xFF39b9f0, 0xFF3bb3f1, 0xFF38b5f4, 0xFF36b7f7, 0xFF32b9f0, 0xFF2fbbe8, 0xFF2fb8eb, + 0xFF2fb5ed, 0xFF20acf3, 0xFF10a3fa, 0xFF70c9f3, 0xFFf5f9df, 0xFFf6fbde, 0xFFf6fdde, 0xFFd8ebe4, + 0xFF11a5ee, 0xFF2db2f5, 0xFF14a5f8, 0xFFa5e2ec, 0xFFfffff8, 0xFFfffef3, 0xFFfffded, 0xFFfcfde6, + 0xFFf8fce0, 0xFFf7fcde, 0xFFf6fcdd, 0xFFf6fcd8, 0xFFf5fdd3, 0xFFedf7c4, 0xFFe5f1b4, 0xFFe5f5b8, + 0xFFe4f9bb, 0xFFecfed2, 0xFFf3ffe9, 0xFFedfedb, 0xFFe8f9cd, 0xFFcaef89, 0xFF9cd636, 0xFF84c72e, + 0xFF6bb826, 0xFF6cb315, 0xFF1a95d6, 0xFF1591ef, 0xFF1093eb, 0xFF1193e6, 0xFF1294e1, 0xFF1294e1, + 0xFF52cbf4, 0xFF50caf4, 0xFF4ecaf4, 0xFF4ccaf3, 0xFF4ac9f3, 0xFF48c8f5, 0xFF46c7f6, 0xFF40bfed, + 0xFF41bfeb, 0xFF41d4f9, 0xFF33c9fc, 0xFF2fc9ff, 0xFF42c3ec, 0xFF40c3f4, 0xFF3ec3fc, 0xFF35bbf4, + 0xFF33bbf3, 0xFF49bdf7, 0xFF39b7f9, 0xFF37b7f6, 0xFF35b7f2, 0xFF2eb5f4, 0xFF28b3f5, 0xFF2fbbf8, + 0xFF2fbaf2, 0xFF30b5f2, 0xFF31b0f1, 0xFF1facf6, 0xFF0dabed, 0xFF7fd2ed, 0xFFffffe6, 0xFF80d9d2, + 0xFF2faaf8, 0xFF1dafec, 0xFF03aae6, 0xFFfff8ff, 0xFFfffffe, 0xFFfffff9, 0xFFfffdf4, 0xFFfdfeeb, + 0xFFfbfee3, 0xFFf9fde1, 0xFFf7fce0, 0xFFf5fdd8, 0xFFf4fdcf, 0xFFf5fce2, 0xFFf6fde8, 0xFFf3fde8, + 0xFFf1fde9, 0xFFebfdd3, 0xFFe6fdbe, 0xFFe0f8ba, 0xFFdaf2b7, 0xFFeafcd2, 0xFFf2fde6, 0xFFb7de8d, + 0xFF84c73d, 0xFF9ab848, 0xFF14a1f9, 0xFF0494f3, 0xFF1094ef, 0xFF1095ec, 0xFF1095e9, 0xFF1095e9, + 0xFF54ccf5, 0xFF51cbf4, 0xFF4ecaf3, 0xFF4cc9f2, 0xFF49c8f1, 0xFF48cbf5, 0xFF48cef9, 0xFF40c4f3, + 0xFF49cafc, 0xFF40c2f1, 0xFF47caf5, 0xFF46c7f4, 0xFF46c4f3, 0xFF39b5ee, 0xFF2ca5e8, 0xFF2eb1e1, + 0xFF56c1ea, 0xFF6dc9e9, 0xFF37c2e5, 0xFF51caeb, 0xFF6bd2f1, 0xFF74d1f5, 0xFF7dcff9, 0xFF56c7f8, + 0xFF1fafe8, 0xFF25b1ee, 0xFF2cb3f4, 0xFF3eb5f9, 0xFF2bb3ee, 0xFF1baff5, 0xFF32b5f0, 0xFF3fb2f9, + 0xFF26a9f2, 0xFF1faeeb, 0xFF3fb8f4, 0xFFfcfff3, 0xFFffffff, 0xFFffffff, 0xFFfffefb, 0xFFfefff1, + 0xFFfeffe6, 0xFFfbffe5, 0xFFf8fde3, 0xFFf5fdd7, 0xFFf3fecb, 0xFFf5fbeb, 0xFFf7feee, 0xFFf2fdde, + 0xFFedfccf, 0xFFe3f9b0, 0xFFd9f692, 0xFFd2f48b, 0xFFccf184, 0xFFceee97, 0xFFd0eaa9, 0xFFdaebc1, + 0xFFf4fbe9, 0xFF7fc679, 0xFF5ac1ff, 0xFF1aa1eb, 0xFF1195f2, 0xFF0f96f2, 0xFF0e97f2, 0xFF0e97f2, + 0xFF54cdf5, 0xFF52ccf4, 0xFF4fcbf3, 0xFF4dc9f3, 0xFF4ac8f2, 0xFF49c6f2, 0xFF47c4f2, 0xFF49d2f3, + 0xFF46c8f3, 0xFF4dc5fc, 0xFF2c9add, 0xFF1883cd, 0xFF046cbe, 0xFF0080c5, 0xFF0f96d4, 0xFF2eaddb, + 0xFF60c6eb, 0xFF76cdef, 0xFF51caea, 0xFF69d2f0, 0xFF81daf5, 0xFF9ae4f7, 0xFFb3eff9, 0xFFcffaff, + 0xFFe3feff, 0xFF9ae1ff, 0xFF48bcf7, 0xFF11b5dd, 0xFF32aef0, 0xFF28acfc, 0xFF31b2f3, 0xFF34b1f6, + 0xFF25adf0, 0xFF26acf6, 0xFF98d1fc, 0xFFfffdf8, 0xFFffffff, 0xFFfffffb, 0xFFfefff4, 0xFFfdffee, + 0xFFfcfde7, 0xFFfbfee4, 0xFFfaffe0, 0xFFf8fde7, 0xFFf7fcef, 0xFFf3fbeb, 0xFFeffdd9, 0xFFe9fbc2, + 0xFFe3f9ac, 0xFFd9f49b, 0xFFceef8b, 0xFFc1ea76, 0xFFb4e562, 0xFFabdd5a, 0xFFa2d261, 0xFFc1e98e, + 0xFFdbe8b9, 0xFF96d4ff, 0xFF8ed0fa, 0xFF42aeee, 0xFF1095f1, 0xFF1096f1, 0xFF0f96f1, 0xFF0f96f1, + 0xFF55cef5, 0xFF53ccf4, 0xFF50cbf4, 0xFF4ecaf4, 0xFF4cc8f4, 0xFF51caf7, 0xFF57cbfa, 0xFF45c0ea, + 0xFF1a75c7, 0xFF0058ad, 0xFF015bb4, 0xFF066fc0, 0xFF0b84cd, 0xFF0093ce, 0xFF11a7e0, 0xFF3eb9e6, + 0xFF6bcbeb, 0xFF7ed1f6, 0xFF6cd3f0, 0xFF82dbf4, 0xFF98e3f9, 0xFFa5ecf7, 0xFFb2f4f5, 0xFFc7f7f9, + 0xFFddfafd, 0xFFf2ffff, 0xFFf8fff6, 0xFFbcebfe, 0xFF22b4f2, 0xFF29afff, 0xFF2fb0f7, 0xFF29b1f2, + 0xFF23b1ee, 0xFF1aa7fa, 0xFFcae6f4, 0xFFf7f8f4, 0xFFfeffff, 0xFFfefff7, 0xFFfeffed, 0xFFfcffeb, + 0xFFfbfae9, 0xFFfbfee3, 0xFFfbffdc, 0xFFfbffe9, 0xFFfbfff7, 0xFFf1fedd, 0xFFe7fbc3, 0xFFe0f6b4, + 0xFFd8f0a5, 0xFFceec94, 0xFFc4e884, 0xFFb8e678, 0xFFace36c, 0xFFa0df53, 0xFF94d455, 0xFF80bd41, + 0xFFd2e599, 0xFF2ca1f4, 0xFF30a2f6, 0xFF209cf3, 0xFF1096f1, 0xFF1096f1, 0xFF1096f1, 0xFF1096f1, + 0xFF55cef4, 0xFF53cdf4, 0xFF51cbf5, 0xFF50cbf5, 0xFF4ecaf6, 0xFF4dc9f4, 0xFF54d0fa, 0xFF2b86ce, + 0xFF0752b1, 0xFF045fb9, 0xFF0a74c9, 0xFF0882ce, 0xFF0691d4, 0xFF02a0d5, 0xFF24b5e7, 0xFF4cc4ea, + 0xFF74d3ee, 0xFF83d9f5, 0xFF7fddf4, 0xFF93e4f6, 0xFFa8ecf9, 0xFFb6f2f9, 0xFFc3f9f9, 0xFFd3fafb, + 0xFFe3fcfc, 0xFFedfefb, 0xFFf0f9f3, 0xFFffffff, 0xFFfffdff, 0xFF7edcef, 0xFF26adfd, 0xFF2aaff7, + 0xFF2db2f2, 0xFF34b1e0, 0xFF09a7f7, 0xFF8dd3f5, 0xFFfdfbf9, 0xFFfffff6, 0xFFfdffeb, 0xFFfcffe6, + 0xFFfcfce0, 0xFFf9fcde, 0xFFf7fcdd, 0xFFfcffef, 0xFFf9fdec, 0xFFe8f5d0, 0xFFdff5bd, 0xFFd9f1ad, + 0xFFd2ed9d, 0xFFc5e97e, 0xFFb8e26d, 0xFFabdd5e, 0xFF9fd74f, 0xFF98c95f, 0xFF92c735, 0xFF8bc942, + 0xFF80b34d, 0xFF009bf2, 0xFF1894f8, 0xFF1595f5, 0xFF1397f2, 0xFF1296f1, 0xFF1195f0, 0xFF1195f0, + 0xFF56cff4, 0xFF54cdf5, 0xFF52ccf5, 0xFF51cbf7, 0xFF51cbf9, 0xFF49c8f1, 0xFF51d5fa, 0xFF1662c1, + 0xFF005cbb, 0xFF0874cd, 0xFF037cce, 0xFF028dd4, 0xFF019edb, 0xFF09aedc, 0xFF37c2ee, 0xFF5acfef, + 0xFF7edcf0, 0xFF88e1f4, 0xFF92e6f8, 0xFFa5eef8, 0xFFb9f5f9, 0xFFc7f9fb, 0xFFd5fdfe, 0xFFdffdfc, + 0xFFe9fdfa, 0xFFf0fefe, 0xFFf8ffff, 0xFFfafffe, 0xFFfdfffc, 0xFFfdfbff, 0xFF1db0e8, 0xFF2ab1ee, + 0xFF37b2f5, 0xFF25b9f7, 0xFF29b4f8, 0xFF22aff5, 0xFF1baaf2, 0xFF9fd7f6, 0xFFfdffea, 0xFFfcfee0, + 0xFFfcfdd7, 0xFFf8fada, 0xFFf4f7dd, 0xFFfdfef5, 0xFFf6fae1, 0xFFdfecc3, 0xFFd8efb6, 0xFFd2eca6, + 0xFFccea95, 0xFFbce567, 0xFFabdb56, 0xFF9fd344, 0xFF92cb33, 0xFF85c824, 0xFF79b46a, 0xFF3a9eaf, + 0xFF0c97ff, 0xFF1994f9, 0xFF0f9bee, 0xFF139af0, 0xFF1699f3, 0xFF1497f1, 0xFF1295ef, 0xFF1295ef, + 0xFF58d0f5, 0xFF56cef5, 0xFF53cdf4, 0xFF53ccf6, 0xFF52cbf8, 0xFF53d6fb, 0xFF4fc8fc, 0xFF004cad, + 0xFF096fca, 0xFF0b80d4, 0xFF0588d5, 0xFF0598db, 0xFF05a8e1, 0xFF18b6e6, 0xFF3fc8f2, 0xFF63d3f3, + 0xFF86dff5, 0xFF91e4f7, 0xFF9ce9fa, 0xFFaef0f9, 0xFFc0f7f9, 0xFFcbfafb, 0xFFd7fdfd, 0xFFdefdfc, + 0xFFe6fefb, 0xFFf0fffe, 0xFFfaffff, 0xFFf2fefb, 0xFFfefffd, 0xFFc6e9fb, 0xFF1eb0ec, 0xFF30b4f6, + 0xFF30b7f8, 0xFF19a8f7, 0xFF26b0f0, 0xFF22aef3, 0xFF1eabf5, 0xFF27aafa, 0xFF1ca6f6, 0xFF7dcdea, + 0xFFdff4dd, 0xFFeaffb0, 0xFFfdfeed, 0xFFffffef, 0xFFfcf9d3, 0xFFedeeb4, 0xFFe6e9ac, 0xFFd9e68a, + 0xFFcbe367, 0xFFb9e153, 0xFFa6dd4d, 0xFF75c57f, 0xFF43adb0, 0xFF229bf3, 0xFF0a9cff, 0xFF0998f6, + 0xFF109cef, 0xFF189aee, 0xFF149ded, 0xFF159bf0, 0xFF1599f2, 0xFF1397f0, 0xFF1195ee, 0xFF1195ee, + 0xFF5ad1f6, 0xFF57cff5, 0xFF54cef4, 0xFF54cdf6, 0xFF53cbf8, 0xFF4dd3f4, 0xFF2c9add, 0xFF045ec1, + 0xFF0572c9, 0xFF0683d2, 0xFF0794dc, 0xFF08a2e2, 0xFF08b1e8, 0xFF28bfef, 0xFF48cef6, 0xFF6bd8f8, + 0xFF8fe3fa, 0xFF9be8fa, 0xFFa6edfb, 0xFFb7f3fb, 0xFFc7f9fa, 0xFFd0fbfc, 0xFFd9fdfd, 0xFFdefefd, + 0xFFe2fffc, 0xFFeffffe, 0xFFfcffff, 0xFFebfef7, 0xFFfffffe, 0xFF8fd7f8, 0xFF1eb0f1, 0xFF2eb0f6, + 0xFF18abec, 0xFFe0f7fd, 0xFF24ade9, 0xFF23acf1, 0xFF21acf8, 0xFF26aef7, 0xFF2cb0f6, 0xFF1aa9f5, + 0xFF08a3f4, 0xFF22a7f9, 0xFF4cc2f2, 0xFF6dcdef, 0xFF7ec9db, 0xFF7fcac2, 0xFF81c6c6, 0xFF61bccb, + 0xFF41b3d0, 0xFF24a7e9, 0xFF089bff, 0xFF119dff, 0xFF1a9fff, 0xFF0f99e9, 0xFF149cf9, 0xFF159cf7, + 0xFF159cf5, 0xFF179df1, 0xFF199eed, 0xFF179cef, 0xFF1599f1, 0xFF1397ef, 0xFF1195ed, 0xFF1195ed, + 0xFF5cd2f6, 0xFF59d0f5, 0xFF55cff3, 0xFF54cdf5, 0xFF53ccf8, 0xFF51d5f6, 0xFF167bcf, 0xFF0467c6, + 0xFF067bcf, 0xFF068bd7, 0xFF059cdf, 0xFF08a9e5, 0xFF0ab6eb, 0xFF2bc4f1, 0xFF4cd2f7, 0xFF6ddbf9, + 0xFF8ee5fa, 0xFF9deafb, 0xFFaceffb, 0xFFbdf5fb, 0xFFcefbfa, 0xFFd5fbfc, 0xFFdcfcfd, 0xFFdcfefd, + 0xFFddfffd, 0xFFe4fffd, 0xFFeafffd, 0xFFfffffe, 0xFFffffff, 0xFF27c0de, 0xFF26b5f6, 0xFF1fb0f9, + 0xFF4dc6ff, 0xFFfff9ef, 0xFFfefffa, 0xFF8bd8f7, 0xFF18a7f3, 0xFF1daaf4, 0xFF23acf6, 0xFF22acf3, + 0xFF22abf0, 0xFF1aa3f2, 0xFF1aa6ee, 0xFF18a8f5, 0xFF0ea2f3, 0xFF11a4f2, 0xFF14a4ff, 0xFF15a3fc, + 0xFF16a3fa, 0xFF17a2f3, 0xFF19a2ec, 0xFF0e99fe, 0xFF169bed, 0xFF00a1ff, 0xFF2b9de8, 0xFF61b5b0, + 0xFF109af7, 0xFF149cf2, 0xFF189eed, 0xFF169cef, 0xFF149af0, 0xFF1298ee, 0xFF1096ec, 0xFF1096ec, + 0xFF5fd3f7, 0xFF5bd2f5, 0xFF56d0f3, 0xFF55cef5, 0xFF53cdf7, 0xFF56d8f8, 0xFF005cc0, 0xFF0370cb, + 0xFF0785d6, 0xFF0594dc, 0xFF04a3e2, 0xFF08afe8, 0xFF0cbcee, 0xFF2ec8f3, 0xFF50d5f9, 0xFF6fdefa, + 0xFF8de7fb, 0xFF9fecfb, 0xFFb1f2fb, 0xFFc3f7fb, 0xFFd4fcfa, 0xFFd9fcfc, 0xFFdefcfd, 0xFFdbfdfd, + 0xFFd9fffd, 0xFFd9fdfb, 0xFFd9fcfa, 0xFFe5fafa, 0xFFa4eaf7, 0xFF2badfb, 0xFF2fb9fa, 0xFF1aaeed, + 0xFF99dbf8, 0xFFffffff, 0xFFfefdfc, 0xFFfffefd, 0xFFfffffd, 0xFF8cd4fa, 0xFF19a9f6, 0xFF18a9f7, + 0xFF16aaf9, 0xFF1aa7f3, 0xFF1ea5ee, 0xFF1fa7f2, 0xFF21a9f6, 0xFF1ea7f7, 0xFF1ba5f7, 0xFF17a4f9, + 0xFF12a2fb, 0xFF0b9dfd, 0xFF0399fe, 0xFF26a2fa, 0xFF6fc0b0, 0xFFcfca5e, 0xFFffe528, 0xFF74b4b3, + 0xFF0b98fa, 0xFF119af4, 0xFF179dee, 0xFF159cee, 0xFF139aef, 0xFF1198ed, 0xFF0f96eb, 0xFF0f96eb, + 0xFF5dd1f6, 0xFF5bd2f5, 0xFF58d2f4, 0xFF53cef4, 0xFF56d2fb, 0xFF40b2e6, 0xFF0164c6, 0xFF0376cf, + 0xFF0487d7, 0xFF0296dd, 0xFF01a4e4, 0xFF04b1ea, 0xFF07bdf1, 0xFF1bc8f2, 0xFF43d5fc, 0xFF64ddfb, + 0xFF85e6fb, 0xFF98ebfc, 0xFFacf1fd, 0xFFbef9ff, 0xFFcfffff, 0xFFcffdff, 0xFFcff9fb, 0xFFd2fefe, + 0xFFd5ffff, 0xFFc6f9ff, 0xFFb8efff, 0xFF5ad7d9, 0xFF40b9e9, 0xFF2fb9ff, 0xFF2bb2f0, 0xFF28afeb, + 0xFFdef0f2, 0xFFffffff, 0xFFfeffff, 0xFFfffefe, 0xFFfffefa, 0xFFfffffa, 0xFFfffff9, 0xFFc2e8f0, + 0xFF84cde7, 0xFF53bbe9, 0xFF22a9eb, 0xFF14a1ff, 0xFF069ff8, 0xFF0fa0f8, 0xFF19a3eb, 0xFF43b1e1, + 0xFF6ec2c9, 0xFFb0d79a, 0xFFf2eb6b, 0xFFebee32, 0xFFf8e647, 0xFFffe23a, 0xFFfde142, 0xFF0098f4, + 0xFF19a1fc, 0xFF169ef7, 0xFF129bf1, 0xFF139af1, 0xFF149af0, 0xFF1298ee, 0xFF1096ec, 0xFF1096ec, + 0xFF5ccff6, 0xFF5bd2f6, 0xFF5ad4f6, 0xFF52cdf2, 0xFF5ad6fe, 0xFF298cd5, 0xFF026ccc, 0xFF027bd2, + 0xFF0189d8, 0xFF0097df, 0xFF00a6e6, 0xFF00b2ed, 0xFF02bef4, 0xFF09c7f1, 0xFF35d5ff, 0xFF59ddfd, + 0xFF7ce5fb, 0xFF91eafd, 0xFFa6f0ff, 0xFFb1f2ff, 0xFFbbf5ff, 0xFFbef5fc, 0xFFc1f6f9, 0xFFc1f7f7, + 0xFFc1f9f4, 0xFFc7fdfc, 0xFFcdffff, 0xFFc2f9f8, 0xFF5acdf4, 0xFF39b1f3, 0xFF38baf5, 0xFF2ab4f7, + 0xFFfcfbf8, 0xFFfdfeff, 0xFFfeffff, 0xFFfffeff, 0xFFfffcf6, 0xFFfdfef2, 0xFFf7ffee, 0xFFfcffea, + 0xFFffffe5, 0xFFffffd8, 0xFFffffcb, 0xFFfffbf1, 0xFFffffdf, 0xFFfdfdc2, 0xFFf7ff88, 0xFFfbfe92, + 0xFFffff7f, 0xFFfdfc6c, 0xFFfaf759, 0xFFf8f059, 0xFFf7e958, 0xFFf7e359, 0xFFd0d368, 0xFF0998ff, + 0xFF189aef, 0xFF129af2, 0xFF0c99f5, 0xFF1199f3, 0xFF1599f2, 0xFF1397f0, 0xFF1195ee, 0xFF1195ee, + 0xFF5fd2f9, 0xFF5cd3f8, 0xFF59d4f6, 0xFF58d3f8, 0xFF5edaff, 0xFF1971cd, 0xFF026ecd, 0xFF037bd3, + 0xFF0488d9, 0xFF0497e0, 0xFF05a6e6, 0xFF01ade7, 0xFF00b5e8, 0xFF07beea, 0xFF23cbf5, 0xFF4cd7f8, + 0xFF74e4fc, 0xFF89e8fd, 0xFF9fecfe, 0xFFa5edfe, 0xFFabeffe, 0xFFaeeffc, 0xFFb0eff9, 0xFFb3f3f9, + 0xFFb6f6f8, 0xFFb6f9fc, 0xFFb5fcff, 0xFFdaf3ff, 0xFF1ab9f1, 0xFF28b3f4, 0xFF2bb3f6, 0xFF73cef4, + 0xFFfdfdf5, 0xFFfdfefa, 0xFFfdfffe, 0xFFfffef9, 0xFFfffdf3, 0xFFfdfeee, 0xFFfaffe9, 0xFFfdffe4, + 0xFFffffde, 0xFFffffd0, 0xFFffffc2, 0xFFfdfad7, 0xFFfffcf3, 0xFFffffc0, 0xFFfcfbc5, 0xFFfcff84, + 0xFFfcfb8b, 0xFFfbf67a, 0xFFf9f269, 0xFFf7ed5e, 0xFFf4e954, 0xFFf7e948, 0xFF87bda9, 0xFF109afc, + 0xFF179cf2, 0xFF149bf1, 0xFF119af1, 0xFF1399f2, 0xFF1698f3, 0xFF1496f1, 0xFF1294ef, 0xFF1294ef, + 0xFF62d4fc, 0xFF5dd4f9, 0xFF59d4f6, 0xFF56d1f6, 0xFF53cef5, 0xFF014ebe, 0xFF026fcd, 0xFF057bd4, + 0xFF0787da, 0xFF0996e0, 0xFF0ca5e7, 0xFF0bb0e9, 0xFF09bbeb, 0xFF15c5f3, 0xFF21d0fc, 0xFF46dafc, + 0xFF6ce3fc, 0xFF82e6fd, 0xFF97e9fe, 0xFF99e9fe, 0xFF9ce8fe, 0xFF9ee9fb, 0xFFa0e9f9, 0xFFa6eefa, + 0xFFacf3fc, 0xFFb0effc, 0xFFb5ecfb, 0xFF89ddf9, 0xFF28b4f3, 0xFF3ebef7, 0xFF1eadf7, 0xFFbde8f0, + 0xFFfefff2, 0xFFfefff3, 0xFFfdfff4, 0xFFfefef2, 0xFFfefef0, 0xFFfefeea, 0xFFfefee4, 0xFFfefede, + 0xFFfefed8, 0xFFfcffc9, 0xFFfbffba, 0xFFf6fea0, 0xFFffffce, 0xFFfff9f6, 0xFFffffc9, 0xFFfdf7be, + 0xFFf8f87a, 0xFFf9f66b, 0xFFf9f35c, 0xFFf5ee56, 0xFFf1e84f, 0xFFf8ee37, 0xFF3fa7ea, 0xFF189df5, + 0xFF179df4, 0xFF169cf1, 0xFF159bee, 0xFF169af2, 0xFF1798f5, 0xFF1596f3, 0xFF1394f1, 0xFF1394f1, + 0xFF66d7fc, 0xFF5fd1f5, 0xFF60d4f6, 0xFF59d8f9, 0xFF399ddb, 0xFF0858be, 0xFF096ccd, 0xFF0c7ad2, + 0xFF1087d7, 0xFF1296df, 0xFF13a6e8, 0xFF13b0eb, 0xFF1bc3f5, 0xFF0fc8f3, 0xFF17d0f9, 0xFF27d3f4, + 0xFF4bd7f7, 0xFF61dbf8, 0xFF77def9, 0xFF7fe0fa, 0xFF88e1fa, 0xFF8de4fb, 0xFF91e7fb, 0xFF96eafc, + 0xFF9aedfd, 0xFF9feafb, 0xFFa3e7fa, 0xFF5eccfb, 0xFF2db7f5, 0xFF24b8f9, 0xFF14b1f5, 0xFFfffbff, + 0xFFfeffec, 0xFFffffed, 0xFFffffee, 0xFFffffec, 0xFFfefdeb, 0xFFfefde4, 0xFFfefddd, 0xFFfefed6, + 0xFFfefece, 0xFFfcfdc1, 0xFFfcfcb5, 0xFFf6fb8d, 0xFFf8fc8a, 0xFFf8facc, 0xFFf8fef2, 0xFFf9ffbe, + 0xFFfbf9c2, 0xFFfbf8ac, 0xFFfcf796, 0xFFfaf491, 0xFFf7f18d, 0xFFffe5a9, 0xFF0096f7, 0xFF089af7, + 0xFF159ef7, 0xFF169df4, 0xFF169cf0, 0xFF169bf2, 0xFF1699f4, 0xFF1497f3, 0xFF1396f1, 0xFF1396f1, + 0xFF6bd9fb, 0xFF61cef1, 0xFF67d3f7, 0xFF5cdefd, 0xFF1f6cc0, 0xFF0f63bf, 0xFF0f6acd, 0xFF1478d1, + 0xFF1887d4, 0xFF1997df, 0xFF1aa6e9, 0xFF14a9e4, 0xFF1dbbef, 0xFF0dbeeb, 0xFF23c5f6, 0xFF13c6ed, + 0xFF2acbf3, 0xFF40cff4, 0xFF56d4f4, 0xFF65d7f6, 0xFF74daf7, 0xFF7bdffb, 0xFF83e5fe, 0xFF86e6fe, + 0xFF89e8fd, 0xFF8ee5fb, 0xFF92e2fa, 0xFF33bcfc, 0xFF32b9f7, 0xFF31bafd, 0xFF57c5f7, 0xFFf4ffde, + 0xFFfdffe7, 0xFFffffe7, 0xFFffffe7, 0xFFffffe6, 0xFFfdfce6, 0xFFfdfddd, 0xFFfdfdd5, 0xFFfdfdcd, + 0xFFfefdc5, 0xFFfdfaba, 0xFFfcf8af, 0xFFfef99f, 0xFFfffb8e, 0xFFfafe77, 0xFFf4fb7d, 0xFFf9f8d2, + 0xFFfdffee, 0xFFfefedf, 0xFFfffcd0, 0xFFfefacd, 0xFFfdf9ca, 0xFFa6d3ce, 0xFF0399eb, 0xFF1ea1ec, + 0xFF149ffa, 0xFF159ef6, 0xFF179ef2, 0xFF169cf3, 0xFF159af3, 0xFF1499f2, 0xFF1398f1, 0xFF1398f1, + 0xFF55d4f4, 0xFF5bd1f1, 0xFF69d6f6, 0xFF6ee2ff, 0xFF0c50a8, 0xFF1161be, 0xFF0f6acd, 0xFF1f83d6, + 0xFF1f89dc, 0xFF0f8cdd, 0xFF1a9be0, 0xFF22b1f4, 0xFF1dabe1, 0xFF14aedf, 0xFF26bdee, 0xFF15bae7, + 0xFF1fc1ef, 0xFF25c7ef, 0xFF2bcdef, 0xFF3dcdf1, 0xFF4ecef3, 0xFF5bd6f9, 0xFF68defe, 0xFF6eddfc, + 0xFF73ddfb, 0xFF76ddf5, 0xFF70d3f7, 0xFF31bafb, 0xFF33b9f6, 0xFF24b6ff, 0xFFa4dee5, 0xFFf9ffdc, + 0xFFfdfedc, 0xFFffffdc, 0xFFffffdc, 0xFFfefedb, 0xFFfcfdda, 0xFFfdfdd2, 0xFFfdfdcb, 0xFFfdfdc3, + 0xFFfefdbc, 0xFFfdfbaf, 0xFFfcfaa2, 0xFFfdfb93, 0xFFfefb83, 0xFFfcfd6b, 0xFFf9fc60, 0xFFfbf85d, + 0xFFfdf74c, 0xFFfef576, 0xFFfff2a1, 0xFFf6ec87, 0xFFf8e360, 0xFF51bbb4, 0xFF0d9afe, 0xFF1a9ef7, + 0xFF159ef6, 0xFF159df4, 0xFF159df2, 0xFF149bf2, 0xFF1299f2, 0xFF1299f2, 0xFF1299f2, 0xFF1299f2, + 0xFF67d4fd, 0xFF69d6f9, 0xFF6cd9f5, 0xFF4fb7dc, 0xFF1953af, 0xFF1c67c6, 0xFF005abd, 0xFF1a7eca, + 0xFF157bd4, 0xFF0581dc, 0xFF2aa1e7, 0xFF0189d3, 0xFF2dabe3, 0xFF23a7dc, 0xFF29b4e6, 0xFF17ade1, + 0xFF14b7ec, 0xFF15b9ea, 0xFF16bbe9, 0xFF1fbfec, 0xFF28c2ef, 0xFF3bcdf7, 0xFF4ed8ff, 0xFF56d5fb, + 0xFF5dd2f8, 0xFF5ed6f0, 0xFF4ec5f4, 0xFF2fb9fa, 0xFF35b8f4, 0xFF17b1ff, 0xFFf0f7d2, 0xFFfeffda, + 0xFFfdfcd2, 0xFFfdfdd1, 0xFFfdfed1, 0xFFfdfecf, 0xFFfcfecd, 0xFFfcfdc7, 0xFFfdfdc0, 0xFFfdfdb9, + 0xFFfdfdb2, 0xFFfdfca4, 0xFFfdfc95, 0xFFfdfc87, 0xFFfdfc79, 0xFFfdfa6c, 0xFFfef85f, 0xFFf9f645, + 0xFFf6ef47, 0xFFf2e938, 0xFFefe428, 0xFFeee425, 0xFFffdd05, 0xFF0399ff, 0xFF17a1f5, 0xFF179ef4, + 0xFF169cf3, 0xFF159cf3, 0xFF149cf3, 0xFF129bf1, 0xFF1099f0, 0xFF119af1, 0xFF129bf2, 0xFF129bf2, + 0xFF66d5fb, 0xFF70d5fc, 0xFF78e2ff, 0xFF3b86c7, 0xFF235fba, 0xFF1e6aba, 0xFF227ad1, 0xFF2787d8, + 0xFF248cd7, 0xFF1d8dd4, 0xFF2189d1, 0xFF2ca1ea, 0xFF2296d5, 0xFF31aaef, 0xFF20a1db, 0xFF17a1dd, + 0xFF0ea1e0, 0xFF1aace3, 0xFF13b1eb, 0xFF10b8ed, 0xFF0dc0ef, 0xFF1cc1ef, 0xFF2cc3f0, 0xFF36c4f2, + 0xFF40c5f4, 0xFF47c9f2, 0xFF45c3f6, 0xFF31bafa, 0xFF31b7f7, 0xFF4cc2f4, 0xFFf5fac0, 0xFFfdffc6, + 0xFFfdfcc5, 0xFFfdfdc4, 0xFFfdfdc4, 0xFFfcfdc2, 0xFFfbfdc1, 0xFFf8f9b6, 0xFFfdfdb3, 0xFFfdfdab, + 0xFFfdfca3, 0xFFfcfc95, 0xFFfcfb88, 0xFFfcfb7b, 0xFFfbfb6d, 0xFFfcf962, 0xFFfcf757, 0xFFf8f245, + 0xFFf4eb41, 0xFFf0e532, 0xFFebe023, 0xFFfbe01c, 0xFFc5d244, 0xFF0aa2fe, 0xFF169ff9, 0xFF179ff6, + 0xFF189ff3, 0xFF179ef2, 0xFF159df2, 0xFF179ff5, 0xFF18a1f8, 0xFF159ef5, 0xFF129bf2, 0xFF129bf2, + 0xFF65d7fa, 0xFF64d1f7, 0xFF5de7ff, 0xFF04439b, 0xFF0e4ca5, 0xFF317bcd, 0xFF0455c1, 0xFF0053c9, + 0xFF0368c6, 0xFF2687ca, 0xFF2881ca, 0xFF2789d1, 0xFF2791d7, 0xFF0774c9, 0xFF178dcf, 0xFF1f9ce1, + 0xFF179be4, 0xFF1e9eda, 0xFF0097de, 0xFF03a5e6, 0xFF08b1ee, 0xFF09b0e8, 0xFF0aafe2, 0xFF17b4e9, + 0xFF24b9ef, 0xFF30bdf4, 0xFF3cc1f9, 0xFF34bcf9, 0xFF2cb6f9, 0xFF80d2e8, 0xFFfafdaf, 0xFFfcfdb3, + 0xFFfdfcb7, 0xFFfdfcb7, 0xFFfdfdb7, 0xFFfcfcb6, 0xFFfbfcb5, 0xFFf4f4a5, 0xFFfdfda5, 0xFFfcfc9d, + 0xFFfcfc94, 0xFFfbfb87, 0xFFfbfb7b, 0xFFfafa6e, 0xFFfafa61, 0xFFfaf758, 0xFFfaf54e, 0xFFf7ee44, + 0xFFf3e73a, 0xFFede12c, 0xFFe7db1e, 0xFFffd21a, 0xFF78b090, 0xFF09a0fd, 0xFF159dfd, 0xFF18a0f8, + 0xFF1aa2f2, 0xFF18a0f2, 0xFF169ef2, 0xFF139bf2, 0xFF1099f1, 0xFF119af2, 0xFF129bf3, 0xFF129bf3, + 0xFF60d4f7, 0xFF67dcfd, 0xFF4fc2f0, 0xFF002c8a, 0xFF2e6bc0, 0xFF0547ad, 0xFF0044ba, 0xFF3685c4, + 0xFF064ebc, 0xFF1462c3, 0xFF2d70cb, 0xFF0f5ab4, 0xFF2274cd, 0xFF1169c2, 0xFF1979c2, 0xFF1d80d0, + 0xFF1980d7, 0xFF1a86d3, 0xFF1090de, 0xFF038dda, 0xFF0599e6, 0xFF059ce1, 0xFF049edd, 0xFF05a6e1, + 0xFF00a7de, 0xFF1fb6ee, 0xFF39bdf7, 0xFF38bcf6, 0xFF24b5fc, 0xFFbfe8b9, 0xFFfafea2, 0xFFfbfca5, + 0xFFfcfaa8, 0xFFfcfca7, 0xFFfdfda6, 0xFFfbfca3, 0xFFf9fb9f, 0xFFf6f795, 0xFFfafb92, 0xFFfbfb8b, + 0xFFfbfb85, 0xFFfafa79, 0xFFfafa6d, 0xFFf9f961, 0xFFf8f956, 0xFFf9f64c, 0xFFf9f442, 0xFFf5ec39, + 0xFFf2e531, 0xFFefde28, 0xFFecd620, 0xFFeed900, 0xFF32a6e5, 0xFF19a4ff, 0xFF29a4f4, 0xFF20a2f4, + 0xFF18a0f5, 0xFF179ef4, 0xFF159df4, 0xFF139bf3, 0xFF1199f2, 0xFF129af2, 0xFF129af3, 0xFF129af3, + 0xFF5bd1f5, 0xFF63dffa, 0xFF318dcc, 0xFF062d91, 0xFF0e499a, 0xFF00369f, 0xFF003897, 0xFF155fb6, + 0xFF53aad9, 0xFF31a6e2, 0xFF45bcef, 0xFF6dddff, 0xFF76defa, 0xFF6dd9f9, 0xFF64d5f9, 0xFF54c5f3, + 0xFF45b5ed, 0xFF238ed6, 0xFF1277ce, 0xFF006cc6, 0xFF0282de, 0xFF0187db, 0xFF008dd7, 0xFF079be1, + 0xFF0099dc, 0xFF22b1f0, 0xFF36baf4, 0xFF3cbcf4, 0xFF1cb5ff, 0xFFfffe89, 0xFFfbff96, 0xFFfbfc98, + 0xFFfbf99a, 0xFFfcfb98, 0xFFfdfd96, 0xFFfafb90, 0xFFf6f98a, 0xFFf7f984, 0xFFf8fa7f, 0xFFfafa7a, + 0xFFfbfb75, 0xFFfafa6a, 0xFFf9f960, 0xFFf8f855, 0xFFf7f84a, 0xFFf7f540, 0xFFf8f336, 0xFFf4eb2f, + 0xFFf0e328, 0xFFf0da24, 0xFFf0d121, 0xFFe9ca24, 0xFF049bff, 0xFF20a3f6, 0xFF16a1f7, 0xFF16a0f7, + 0xFF169ef7, 0xFF159df6, 0xFF149cf5, 0xFF139bf4, 0xFF129af3, 0xFF129af3, 0xFF129af3, 0xFF129af3, + 0xFF5ae3ff, 0xFF64d8ff, 0xFF0d4798, 0xFF002682, 0xFF1d6bb7, 0xFF3aa2de, 0xFF5fe5ff, 0xFF52d8fd, + 0xFF4dd6f6, 0xFF48ccf5, 0xFF5fd0f6, 0xFF68d9ff, 0xFF61d3f8, 0xFF5bd2f8, 0xFF42cbff, 0xFF53cefe, + 0xFF51cff5, 0xFF49caf6, 0xFF4acdff, 0xFF40baff, 0xFF0e7edb, 0xFF0069c2, 0xFF0584da, 0xFF0184d5, + 0xFF068cd8, 0xFF38bef8, 0xFF3abef7, 0xFF35beff, 0xFF62c7e2, 0xFFfbf379, 0xFFf8fa83, 0xFFf9f983, + 0xFFfaf884, 0xFFf9f77f, 0xFFf7f77b, 0xFFf8f979, 0xFFf9fa77, 0xFFf8f972, 0xFFf7f86c, 0xFFfcfc6c, + 0xFFf9f864, 0xFFf8f85b, 0xFFf8f752, 0xFFf7f649, 0xFFf6f53f, 0xFFf5f237, 0xFFf4ef2f, 0xFFf1e628, + 0xFFeede20, 0xFFead61f, 0xFFf2cc11, 0xFF9db96c, 0xFF0c9ffe, 0xFF1ba3f9, 0xFF17a2f9, 0xFF17a0f9, + 0xFF169ef8, 0xFF169df7, 0xFF159cf6, 0xFF149bf5, 0xFF139af5, 0xFF139af5, 0xFF139af5, 0xFF139af5, + 0xFF60d8f9, 0xFF5bd9f8, 0xFF4cadd7, 0xFF69ddff, 0xFF56ddf8, 0xFF55d6fc, 0xFF55d0ff, 0xFF5cd5ff, + 0xFF53cbf2, 0xFF4bcaf6, 0xFF43cafa, 0xFF47c9f8, 0xFF4cc8f6, 0xFF5ccff1, 0xFF46ccf8, 0xFF55caff, + 0xFF3ec4fa, 0xFF43c3fb, 0xFF48c2fd, 0xFF3ebff4, 0xFF44ccfb, 0xFF37b3fc, 0xFF0b7bdd, 0xFF006dc9, + 0xFF0d80d4, 0xFF4eccff, 0xFF3ec3fa, 0xFF2ec2ff, 0xFFa7dea8, 0xFFf8ec5b, 0xFFf5f570, 0xFFf7f66f, + 0xFFfaf76e, 0xFFf5f467, 0xFFf1f060, 0xFFf6f663, 0xFFfbfc65, 0xFFf8f95f, 0xFFf6f659, 0xFFfefe5d, + 0xFFf7f652, 0xFFf7f54c, 0xFFf7f545, 0xFFf6f33d, 0xFFf6f235, 0xFFf3ef2f, 0xFFf1eb29, 0xFFefe221, + 0xFFecd818, 0xFFe5d21a, 0xFFf3c700, 0xFF52a9b4, 0xFF14a4fb, 0xFF15a3fb, 0xFF17a3fc, 0xFF17a1fa, + 0xFF179ff8, 0xFF169df8, 0xFF159cf7, 0xFF159bf7, 0xFF1499f6, 0xFF1499f6, 0xFF1499f6, 0xFF1499f6, + 0xFF58cff2, 0xFF59ddfd, 0xFF55d5f9, 0xFF5ddeff, 0xFF4dcef3, 0xFF4dcbf3, 0xFF4cc8f3, 0xFF56d2fc, + 0xFF59d3fd, 0xFF50cefb, 0xFF47cafa, 0xFF48c9f9, 0xFF49c7f9, 0xFF51cbf6, 0xFF45c9f9, 0xFF4bc8fd, + 0xFF3fc5f9, 0xFF41c4fa, 0xFF43c2fb, 0xFF3bbdf3, 0xFF3ac0f4, 0xFF3ec7fc, 0xFF3ac6fc, 0xFF25a1e3, + 0xFF1f8dd9, 0xFF37b9f7, 0xFF26bbfa, 0xFF2abbf4, 0xFFced857, 0xFFf9fa5b, 0xFFd9db49, 0xFFedec58, + 0xFFfaf560, 0xFFf2ef4d, 0xFFe9ea3b, 0xFFeeef46, 0xFFf2f451, 0xFFf9f34f, 0xFFedf145, 0xFFfef84b, + 0xFFf4f542, 0xFFf5f43d, 0xFFf6f337, 0xFFf5f131, 0xFFf5ef2b, 0xFFf2eb27, 0xFFf0e622, 0xFFeedb1d, + 0xFFecd117, 0xFFf1cc09, 0xFFf5c509, 0xFF0fadff, 0xFF17a1f9, 0xFF18a1f9, 0xFF18a1f8, 0xFF18a0f9, + 0xFF179ff9, 0xFF169df9, 0xFF169cf8, 0xFF159bf8, 0xFF1599f8, 0xFF1599f8, 0xFF1599f8, 0xFF1599f8, + 0xFF60d5fb, 0xFF5bd3fb, 0xFF56d2fb, 0xFF55d1fc, 0xFF55d0fe, 0xFF54d0fa, 0xFF53d1f6, 0xFF51cef7, + 0xFF4ecbf8, 0xFF4dcbf9, 0xFF4ccafb, 0xFF49c8fb, 0xFF47c6fc, 0xFF45c6fb, 0xFF43c6fa, 0xFF41c6fa, + 0xFF40c7f9, 0xFF3fc5f9, 0xFF3ec3f9, 0xFF3fc3fb, 0xFF41c4fd, 0xFF38baf2, 0xFF40c1f8, 0xFF3dc3fb, + 0xFF3bc5fe, 0xFF37c1f6, 0xFF34beef, 0xFF2ebcf0, 0xFFded722, 0xFFbfdc38, 0xFFdee142, 0xFFecea4a, + 0xFFeae442, 0xFFeee942, 0xFFf2ee42, 0xFFeeed3f, 0xFFeaec3d, 0xFFfbee3f, 0xFFe5ec31, 0xFFfff239, + 0xFFf2f531, 0xFFf4f32e, 0xFFf5f12a, 0xFFf5ee25, 0xFFf4ec21, 0xFFf2e71e, 0xFFf0e11c, 0xFFeed519, + 0xFFecc917, 0xFFdec40c, 0xFFbbbe39, 0xFF0798f8, 0xFF1a9ff8, 0xFF1a9ff7, 0xFF1a9ff5, 0xFF189ff7, + 0xFF179ff9, 0xFF179ef9, 0xFF169cf9, 0xFF169bf9, 0xFF1699f9, 0xFF1699f9, 0xFF1699f9, 0xFF1699f9, + 0xFF5cd4f9, 0xFF58d4f9, 0xFF55d3f9, 0xFF56d2fa, 0xFF58d0fb, 0xFF56d0f8, 0xFF54d0f6, 0xFF51cef7, + 0xFF4dccf9, 0xFF4ccbfa, 0xFF4bcafb, 0xFF49c8fb, 0xFF47c7fb, 0xFF45c7fb, 0xFF43c6fa, 0xFF41c6fa, + 0xFF40c6f9, 0xFF3fc4f9, 0xFF3ec3f9, 0xFF3ec2fa, 0xFF3ec2fb, 0xFF3abef5, 0xFF3ec2f8, 0xFF3bc1f9, + 0xFF37c0f9, 0xFF36beff, 0xFF35bbff, 0xFF67bb84, 0xFFb0d219, 0xFFb4d31a, 0xFFd3da39, 0xFFe2dd3d, + 0xFFd6d532, 0xFFe1df38, 0xFFece93e, 0xFFe1e636, 0xFFe9e536, 0xFFf1e634, 0xFFe5e42b, 0xFFf6e62e, + 0xFFe9eb29, 0xFFf0ee2a, 0xFFf0e824, 0xFFece420, 0xFFe9e01d, 0xFFebdb1c, 0xFFedd71c, 0xFFe9ce19, + 0xFFe5c516, 0xFFe7c004, 0xFF6cb292, 0xFF109dfc, 0xFF18a1f7, 0xFF1aa0f5, 0xFF1ca0f3, 0xFF19a0f6, + 0xFF179ff9, 0xFF169ef9, 0xFF169cf9, 0xFF159bf8, 0xFF159af8, 0xFF1499f8, 0xFF1499f7, 0xFF1499f7, + 0xFF58d4f6, 0xFF56d4f6, 0xFF54d5f7, 0xFF57d3f7, 0xFF5bd1f8, 0xFF58d0f6, 0xFF54cff5, 0xFF50cef8, + 0xFF4dcdfa, 0xFF4bcbfb, 0xFF4acafb, 0xFF48c9fb, 0xFF46c7fb, 0xFF45c7fa, 0xFF43c7fa, 0xFF42c6fa, + 0xFF40c6f9, 0xFF3fc4f9, 0xFF3ec3f9, 0xFF3dc1f9, 0xFF3cc0f9, 0xFF3cc1f8, 0xFF3cc2f7, 0xFF38bff6, + 0xFF34bbf5, 0xFF35bdfd, 0xFF37beff, 0xFF46bcfc, 0xFF82c92c, 0xFFa0be02, 0xFFb8c420, 0xFFd8cf31, + 0xFFd2d632, 0xFFd4d52e, 0xFFd7d42a, 0xFFcdd725, 0xFFe9df2f, 0xFFe6dd2a, 0xFFe4dc25, 0xFFedd922, + 0xFFe0e220, 0xFFede927, 0xFFeae01e, 0xFFe4da1c, 0xFFded319, 0xFFe5d01a, 0xFFebcd1b, 0xFFe5c818, + 0xFFdec214, 0xFFf0bc00, 0xFF1da5eb, 0xFF19a1ff, 0xFF16a2f7, 0xFF19a2f4, 0xFF1ea2f1, 0xFF1aa0f5, + 0xFF169ff9, 0xFF169ef8, 0xFF159df8, 0xFF159cf8, 0xFF149bf8, 0xFF139af7, 0xFF1299f6, 0xFF1299f6, + 0xFF5ed5f9, 0xFF63d6fc, 0xFF68d6ff, 0xFF5fd3fc, 0xFF56d0f8, 0xFF53cff8, 0xFF51cef8, 0xFF4ecdf9, + 0xFF4bccfb, 0xFF4acbfb, 0xFF48cafb, 0xFF47c9fa, 0xFF46c8fb, 0xFF44c7fa, 0xFF43c7fa, 0xFF42c6fa, + 0xFF40c5f9, 0xFF3fc4f9, 0xFF3ec3f9, 0xFF3dc1f9, 0xFF3cc0f9, 0xFF3bc1f9, 0xFF3bc1f8, 0xFF38bff7, + 0xFF36bdf7, 0xFF35bdfa, 0xFF34bdfe, 0xFF22c3f6, 0xFF27bbfc, 0xFF53b0b2, 0xFF9bc606, 0xFFc1d322, + 0xFFd3dd36, 0xFFb4ba12, 0xFFc4c71f, 0xFFc5cf22, 0xFFd9d82d, 0xFFdfdb30, 0xFFdcd52b, 0xFFe8d520, + 0xFFd5d51c, 0xFFe8e428, 0xFFece324, 0xFFd1ce1f, 0xFFd3c51d, 0xFFdcc302, 0xFFcfc312, 0xFFe3c209, + 0xFFe3be00, 0xFF84bf6e, 0xFF0ca0f6, 0xFF129ffd, 0xFF18a2f6, 0xFF19a1f5, 0xFF1ba1f4, 0xFF18a0f6, + 0xFF169ff8, 0xFF159ef8, 0xFF159df8, 0xFF149cf7, 0xFF139bf7, 0xFF129af6, 0xFF1098f4, 0xFF1098f4, + 0xFF65d7fb, 0xFF5dd4fa, 0xFF56d2f8, 0xFF53d0f9, 0xFF50cff9, 0xFF4fcef9, 0xFF4dcdfa, 0xFF4bcdfa, + 0xFF4accfb, 0xFF48cbfb, 0xFF47cafb, 0xFF46c9fa, 0xFF45c8fa, 0xFF44c7fa, 0xFF43c7fa, 0xFF42c6fa, + 0xFF40c5fa, 0xFF3fc4f9, 0xFF3ec3f9, 0xFF3dc1f9, 0xFF3bc0f9, 0xFF3ac0f9, 0xFF39c0f9, 0xFF38bff9, + 0xFF37bff9, 0xFF34bef8, 0xFF31bcf7, 0xFF33bbf8, 0xFF35bbfa, 0xFF2cbcff, 0xFF61c2df, 0xFF93cb85, + 0xFFc5d52b, 0xFFcbd82f, 0xFFb0bb13, 0xFFb5be17, 0xFFb9c21b, 0xFFc7c826, 0xFFc5bf21, 0xFFdbc817, + 0xFFcac819, 0xFFdbd722, 0xFFddd61a, 0xFFb7bd0d, 0xFFc8bd04, 0xFFd0c000, 0xFFadc951, 0xFF6cb8b1, + 0xFF04a3ff, 0xFF13a4fb, 0xFF21a4f5, 0xFF1ea3f5, 0xFF1aa1f6, 0xFF19a1f6, 0xFF18a0f7, 0xFF17a0f7, + 0xFF169ff8, 0xFF159ef7, 0xFF149ef7, 0xFF139df7, 0xFF139cf6, 0xFF119af4, 0xFF0f98f2, 0xFF0f98f2, + 0xFF5cd5f9, 0xFF58d3f8, 0xFF53d1f8, 0xFF52d0f9, 0xFF50cff9, 0xFF4ecefa, 0xFF4ccdfa, 0xFF4accfa, + 0xFF48ccfa, 0xFF47cbfa, 0xFF46cafa, 0xFF45c9fa, 0xFF44c8fa, 0xFF43c7fa, 0xFF42c7fa, 0xFF41c6fa, + 0xFF40c5fa, 0xFF3fc4f9, 0xFF3ec2f9, 0xFF3cc1f9, 0xFF3bc0f9, 0xFF3ac0f9, 0xFF38bff9, 0xFF37bff9, + 0xFF36bff9, 0xFF35bdf6, 0xFF34bbf3, 0xFF35b9f7, 0xFF35b8fb, 0xFF22b5ff, 0xFF2fb5ff, 0xFF4dbae6, + 0xFF6bbfce, 0xFF27b1c5, 0xFF6cbc7c, 0xFF8abd49, 0xFFa7be15, 0xFFb9bf09, 0xFFccc000, 0xFFdac43d, + 0xFFbbca20, 0xFFaec73e, 0xFF99bc54, 0xFF5aad8b, 0xFF36abc4, 0xFF04b3ff, 0xFF15a7ff, 0xFF21a4ff, + 0xFF19a0fb, 0xFF1ba2fa, 0xFF1da4f9, 0xFF1ba3f8, 0xFF1aa1f7, 0xFF19a1f7, 0xFF18a0f7, 0xFF17a0f7, + 0xFF169ff8, 0xFF159ef7, 0xFF149ef7, 0xFF139df7, 0xFF129cf6, 0xFF119af5, 0xFF0f99f3, 0xFF0f99f3, + 0xFF53d2f6, 0xFF52d1f7, 0xFF51d1f8, 0xFF50d0f9, 0xFF4fcffa, 0xFF4dcefa, 0xFF4bcdfa, 0xFF49ccfa, + 0xFF47cbfa, 0xFF46caf9, 0xFF45caf9, 0xFF44c9f9, 0xFF44c8fa, 0xFF43c7fa, 0xFF42c6f9, 0xFF41c6f9, + 0xFF40c5fa, 0xFF3fc4f9, 0xFF3dc2f9, 0xFF3cc1f9, 0xFF3ac0f9, 0xFF39c0f9, 0xFF38bff9, 0xFF36bff9, + 0xFF35bef8, 0xFF36bcf4, 0xFF38baf0, 0xFF36b8f6, 0xFF34b5fc, 0xFF2cb6f9, 0xFF23b7f6, 0xFF25b5fa, + 0xFF28b4ff, 0xFF28b6ff, 0xFF29b7ff, 0xFF1fb5ff, 0xFF15b2ff, 0xFF20aef7, 0xFF3cb9ff, 0xFF5acbf0, + 0xFF42befa, 0xFF2ab6fc, 0xFF12adff, 0xFF18acfc, 0xFF1eacfa, 0xFF1ea9fd, 0xFF1ea7ff, 0xFF1ba8fa, + 0xFF18a8f4, 0xFF18a6f8, 0xFF18a4fd, 0xFF19a3fa, 0xFF1aa1f7, 0xFF19a1f7, 0xFF18a0f8, 0xFF17a0f8, + 0xFF169ff8, 0xFF159ef7, 0xFF149df7, 0xFF139cf6, 0xFF129bf6, 0xFF119af5, 0xFF1099f4, 0xFF1099f4, + 0xFF54d1f8, 0xFF52d1f8, 0xFF51d0f9, 0xFF4fcff9, 0xFF4ecffa, 0xFF4ccefa, 0xFF4acdf9, 0xFF48ccf9, + 0xFF45cbf9, 0xFF45caf9, 0xFF44c9f9, 0xFF43c8f9, 0xFF43c8f9, 0xFF42c7f9, 0xFF42c6f9, 0xFF41c5f9, + 0xFF40c5fa, 0xFF3fc4f9, 0xFF3dc2f9, 0xFF3bc1f9, 0xFF3ac0fa, 0xFF38bff9, 0xFF37bff9, 0xFF36bef9, + 0xFF34bef8, 0xFF35bcf6, 0xFF35baf5, 0xFF34b8f8, 0xFF33b6fc, 0xFF2eb6f9, 0xFF29b6f7, 0xFF29b5f8, + 0xFF2ab4fa, 0xFF2ab5fb, 0xFF2ab5fc, 0xFF2ab2f6, 0xFF2aafef, 0xFF1ba9f6, 0xFF9bcfd9, 0xFF6dcfe9, + 0xFF74c7e4, 0xFF80c9dd, 0xFF19adfb, 0xFF1cacf9, 0xFF1fabf8, 0xFF1fa9f9, 0xFF1ea7fb, 0xFF1ca7f9, + 0xFF1aa7f6, 0xFF1aa5f8, 0xFF1aa4fb, 0xFF1aa3fa, 0xFF1aa2f8, 0xFF19a1f8, 0xFF18a0f8, 0xFF17a0f8, + 0xFF169ff8, 0xFF159ef7, 0xFF149df7, 0xFF139cf6, 0xFF129bf6, 0xFF119bf5, 0xFF119af5, 0xFF119af5, + 0xFF55d0f9, 0xFF53d0fa, 0xFF51d0fa, 0xFF4fcffa, 0xFF4dcffa, 0xFF4bcefa, 0xFF49cdf9, 0xFF46ccf9, + 0xFF44caf8, 0xFF43caf8, 0xFF43c9f8, 0xFF43c8f9, 0xFF42c8f9, 0xFF42c7f9, 0xFF41c6f9, 0xFF41c6f9, + 0xFF40c5fa, 0xFF3ec3f9, 0xFF3dc2fa, 0xFF3bc1fa, 0xFF39c0fa, 0xFF38bff9, 0xFF36bff9, 0xFF35bef9, + 0xFF34bdf8, 0xFF33bcf9, 0xFF33bafa, 0xFF32b9fb, 0xFF32b8fc, 0xFF30b7fa, 0xFF2eb6f8, 0xFF2db5f7, + 0xFF2bb4f5, 0xFF2bb4f6, 0xFF2bb3f7, 0xFF29b2f9, 0xFF28b2fc, 0xFF30b2f7, 0xFF12a8fe, 0xFF7fd4e1, + 0xFF58bbe6, 0xFF15aafb, 0xFF1fadf8, 0xFF20acf7, 0xFF20aaf5, 0xFF1fa9f6, 0xFF1ea8f7, 0xFF1da6f7, + 0xFF1ca5f8, 0xFF1ca4f8, 0xFF1ba3f9, 0xFF1ba3f9, 0xFF1ba2f9, 0xFF19a1f9, 0xFF18a0f8, 0xFF17a0f8, + 0xFF169ff8, 0xFF159ef7, 0xFF149df7, 0xFF139cf6, 0xFF129bf5, 0xFF129bf5, 0xFF129bf5, 0xFF129bf5, + 0xFF55d0f9, 0xFF53d0fa, 0xFF51d0fa, 0xFF4fcffa, 0xFF4dcffa, 0xFF4bcefa, 0xFF49cdf9, 0xFF46ccf9, + 0xFF44caf8, 0xFF43caf8, 0xFF43c9f8, 0xFF43c8f9, 0xFF42c8f9, 0xFF42c7f9, 0xFF41c6f9, 0xFF41c6f9, + 0xFF40c5fa, 0xFF3ec3f9, 0xFF3dc2fa, 0xFF3bc1fa, 0xFF39c0fa, 0xFF38bff9, 0xFF36bff9, 0xFF35bef9, + 0xFF34bdf8, 0xFF33bcf9, 0xFF33bafa, 0xFF32b9fb, 0xFF32b8fc, 0xFF30b7fa, 0xFF2eb6f8, 0xFF2db5f7, + 0xFF2bb4f5, 0xFF2bb4f6, 0xFF2bb3f7, 0xFF2ab2f8, 0xFF29b2fa, 0xFF2db6f5, 0xFF1db5f6, 0xFF239bff, + 0xFF20b6f3, 0xFF0cacfb, 0xFF1eacf7, 0xFF1fabf6, 0xFF20aaf5, 0xFF1fa9f6, 0xFF1ea8f7, 0xFF1da6f7, + 0xFF1ca5f8, 0xFF1ca4f8, 0xFF1ba3f9, 0xFF1ba3f9, 0xFF1ba2f9, 0xFF19a1f9, 0xFF18a0f8, 0xFF17a0f8, + 0xFF169ff8, 0xFF159ef7, 0xFF149df7, 0xFF139cf6, 0xFF129bf5, 0xFF129bf5, 0xFF129bf5, 0xFF129bf5, + 0xFF55d0f9, 0xFF53d0fa, 0xFF51d0fa, 0xFF4fcffa, 0xFF4dcffa, 0xFF4bcefa, 0xFF49cdf9, 0xFF46ccf9, + 0xFF44caf8, 0xFF43caf8, 0xFF43c9f8, 0xFF43c8f9, 0xFF42c8f9, 0xFF42c7f9, 0xFF41c6f9, 0xFF41c6f9, + 0xFF40c5fa, 0xFF3ec3f9, 0xFF3dc2fa, 0xFF3bc1fa, 0xFF39c0fa, 0xFF38bff9, 0xFF36bff9, 0xFF35bef9, + 0xFF34bdf8, 0xFF33bcf9, 0xFF33bafa, 0xFF32b9fb, 0xFF32b8fc, 0xFF30b7fa, 0xFF2eb6f8, 0xFF2db5f7, + 0xFF2bb4f5, 0xFF2bb4f6, 0xFF2bb3f7, 0xFF2bb2f8, 0xFF2bb1f8, 0xFF22aff9, 0xFF19acfa, 0xFF1eadf7, + 0xFF24aef3, 0xFF20adf5, 0xFF1dabf6, 0xFF1fabf6, 0xFF20aaf5, 0xFF1fa9f6, 0xFF1ea8f7, 0xFF1da6f7, + 0xFF1ca5f8, 0xFF1ca4f8, 0xFF1ba3f9, 0xFF1ba3f9, 0xFF1ba2f9, 0xFF19a1f9, 0xFF18a0f8, 0xFF17a0f8, + 0xFF169ff8, 0xFF159ef7, 0xFF149df7, 0xFF139cf6, 0xFF129bf5, 0xFF129bf5, 0xFF129bf5, 0xFF129bf5, + 0xFF55d0f9, 0xFF53d0fa, 0xFF51d0fa, 0xFF4fcffa, 0xFF4dcffa, 0xFF4bcefa, 0xFF49cdf9, 0xFF46ccf9, + 0xFF44caf8, 0xFF43caf8, 0xFF43c9f8, 0xFF43c8f9, 0xFF42c8f9, 0xFF42c7f9, 0xFF41c6f9, 0xFF41c6f9, + 0xFF40c5fa, 0xFF3ec3f9, 0xFF3dc2fa, 0xFF3bc1fa, 0xFF39c0fa, 0xFF38bff9, 0xFF36bff9, 0xFF35bef9, + 0xFF34bdf8, 0xFF33bcf9, 0xFF33bafa, 0xFF32b9fb, 0xFF32b8fc, 0xFF30b7fa, 0xFF2eb6f8, 0xFF2db5f7, + 0xFF2bb4f5, 0xFF2bb4f6, 0xFF2bb3f7, 0xFF2bb2f8, 0xFF2bb1f8, 0xFF22aff9, 0xFF19acfa, 0xFF1eadf7, + 0xFF24aef3, 0xFF20adf5, 0xFF1dabf6, 0xFF1fabf6, 0xFF20aaf5, 0xFF1fa9f6, 0xFF1ea8f7, 0xFF1da6f7, + 0xFF1ca5f8, 0xFF1ca4f8, 0xFF1ba3f9, 0xFF1ba3f9, 0xFF1ba2f9, 0xFF19a1f9, 0xFF18a0f8, 0xFF17a0f8, + 0xFF169ff8, 0xFF159ef7, 0xFF149df7, 0xFF139cf6, 0xFF129bf5, 0xFF129bf5, 0xFF129bf5, 0xFF129bf5 +}; + +static int test_memcmp_offset(const BYTE* mem1, const BYTE* mem2, int size) +{ + int index = 0; + + while ((index < size) && (*mem1 == *mem2)) + { + mem1++; + mem2++; + index++; + } + + return (index == size) ? 1 : -index; +} + +static int test_memcmp_count(const BYTE* mem1, const BYTE* mem2, int size) +{ + int count = 0; + int index = 0; + + for (index = 0; index < size; index++) + { + if (*mem1 != *mem2) + count++; + + mem1++; + mem2++; + } + + return count; +} + +int TestPrimitivesYCbCr(int argc, char* argv[]) +{ + int cmp; + int cnt; + int size; + BYTE* actual; + BYTE* expected; + INT16* pYCbCr[3]; + const primitives_t* prims = primitives_get(); + static const prim_size_t roi_64x64 = { 64, 64 }; + + expected = (BYTE*) TEST_XRGB_IMAGE; + + size = 64 * 64 * 4; + actual = _aligned_malloc(size, 16); + + if (!actual) + return 1; + + ZeroMemory(actual, size); + + pYCbCr[0] = TEST_Y_COMPONENT; + pYCbCr[1] = TEST_CB_COMPONENT; + pYCbCr[2] = TEST_CR_COMPONENT; + + if (1) + { + prims->yCbCrToRGB_16s8u_P3AC4R((const INT16**) pYCbCr, 64 * 2, + actual, 64 * 4, &roi_64x64); + } + else + { + INT16* pSrcDst[3]; + + pSrcDst[0] = _aligned_malloc(4096 * 2, 16); + pSrcDst[1] = _aligned_malloc(4096 * 2, 16); + pSrcDst[2] = _aligned_malloc(4096 * 2, 16); + + CopyMemory(pSrcDst[0], pYCbCr[0], 4096 * 2); + CopyMemory(pSrcDst[1], pYCbCr[1], 4096 * 2); + CopyMemory(pSrcDst[2], pYCbCr[2], 4096 * 2); + + prims->yCbCrToRGB_16s16s_P3P3((const INT16**) pSrcDst, 64 * 2, + pSrcDst, 64 * 2, &roi_64x64); + + prims->RGBToRGB_16s8u_P3AC4R((const INT16**) pSrcDst, 64 * 2, + actual, 64 * 4, &roi_64x64); + + _aligned_free(pSrcDst[0]); + _aligned_free(pSrcDst[1]); + _aligned_free(pSrcDst[2]); + } + + cmp = test_memcmp_offset(actual, expected, size); + cnt = test_memcmp_count(actual, expected, size); + + if (cmp <= 0) + { + cmp *= -1; + float rate = ((float) cnt) / ((float) size) * 100.0f; + + printf("YCbCr to RGB conversion failure\n"); + + printf("Actual, Expected (offset: %d diff: %d/%d = %d%%):\n", + cmp, cnt, size, (int) rate); + + winpr_HexDump(&actual[cmp], 16); + winpr_HexDump(&expected[cmp], 16); + } + + _aligned_free(actual); + + return 0; +} + From 510a02ea94f7d7d114e21f1ec57a70e3e35e7581 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 4 Sep 2014 16:52:41 -0400 Subject: [PATCH 161/170] libfreerdp-codec: improve progressive unit test --- .../codec/test/TestFreeRDPCodecProgressive.c | 43 +++++++++++++++---- 1 file changed, 34 insertions(+), 9 deletions(-) diff --git a/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c b/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c index af35d1fc7..03533d2c1 100644 --- a/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c +++ b/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c @@ -799,7 +799,7 @@ int test_progressive_load_bitmaps(char* ms_sample_path, EGFX_SAMPLE_FILE bitmaps return 1; } -static int test_memcmp(const BYTE* mem1, const BYTE* mem2, int size) +static int test_memcmp_offset(const BYTE* mem1, const BYTE* mem2, int size) { int index = 0; @@ -813,10 +813,29 @@ static int test_memcmp(const BYTE* mem1, const BYTE* mem2, int size) return (index == size) ? 1 : -index; } +static int test_memcmp_count(const BYTE* mem1, const BYTE* mem2, int size) +{ + int count = 0; + int index = 0; + + for (index = 0; index < size; index++) + { + if (*mem1 != *mem2) + count++; + + mem1++; + mem2++; + } + + return count; +} + int test_progressive_decode(PROGRESSIVE_CONTEXT* progressive, EGFX_SAMPLE_FILE files[4], EGFX_SAMPLE_FILE bitmaps[4], int quarter, int count) { int cmp; + int cnt; int pass; + int size; int index; int status; int nXSrc, nYSrc; @@ -900,19 +919,23 @@ int test_progressive_decode(PROGRESSIVE_CONTEXT* progressive, EGFX_SAMPLE_FILE f PIXEL_FORMAT_XRGB32, 64 * 4, nXSrc, nYSrc); } - cmp = test_memcmp(g_DstData, bitmaps[pass].buffer, bitmaps[pass].size); + size = bitmaps[pass].size; + cmp = test_memcmp_offset(g_DstData, bitmaps[pass].buffer, size); + cnt = test_memcmp_count(g_DstData, bitmaps[pass].buffer, size); if (cmp <= 0) { + float rate = ((float) cnt) / ((float) size) * 100.0f; + cmp *= -1; - printf("bitmap decompression error: %d/%d\n", cmp, bitmaps[pass].size); + printf("Progressive RemoteFX decompression failure\n"); - printf("GOOD: "); - winpr_HexDump(&bitmaps[pass].buffer[cmp], 16); + printf("Actual, Expected (offset: %d diff: %d/%d = %.3f%%):\n", + cmp, cnt, size, rate); - printf("BAD: "); winpr_HexDump(&g_DstData[cmp], 16); + winpr_HexDump(&bitmaps[pass].buffer[cmp], 16); } //WLog_Image(progressive->log, WLOG_TRACE, g_DstData, g_Width, g_Height, 32); @@ -943,7 +966,7 @@ int test_progressive_ms_sample(char* ms_sample_path) if (status < 0) return -1; - count = 2; + count = 1; progressive = progressive_context_new(FALSE); @@ -955,6 +978,7 @@ int test_progressive_ms_sample(char* ms_sample_path) if (1) { + printf("Sample Image 1\n"); test_image_fill(g_DstData, g_DstStep, 0, 0, g_Width, g_Height, 0xFF000000); test_progressive_decode(progressive, files[0][0], bitmaps[0][0], 0, count); test_progressive_decode(progressive, files[0][1], bitmaps[0][1], 1, count); @@ -962,11 +986,11 @@ int test_progressive_ms_sample(char* ms_sample_path) test_progressive_decode(progressive, files[0][3], bitmaps[0][3], 3, count); } - /* image 2 */ + /* image 2 (incorrect) */ if (0) { - /* decompressed image set is incorrect for this one */ + printf("Sample Image 2\n"); test_image_fill(g_DstData, g_DstStep, 0, 0, g_Width, g_Height, 0xFF000000); test_progressive_decode(progressive, files[1][0], bitmaps[1][0], 0, count); test_progressive_decode(progressive, files[1][1], bitmaps[1][1], 1, count); @@ -978,6 +1002,7 @@ int test_progressive_ms_sample(char* ms_sample_path) if (0) { + printf("Sample Image 3\n"); test_image_fill(g_DstData, g_DstStep, 0, 0, g_Width, g_Height, 0xFF000000); test_progressive_decode(progressive, files[2][0], bitmaps[2][0], 0, count); test_progressive_decode(progressive, files[2][1], bitmaps[2][1], 1, count); From 66bbbf0519b145b0df26771fd7570e9570bbb0b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 5 Sep 2014 16:06:19 -0400 Subject: [PATCH 162/170] libfreerdp-gdi: enable altsec frame markers --- client/X11/xf_client.c | 69 +++++++++++++++++++++++--------------- client/X11/xf_gdi.c | 7 ++++ client/X11/xf_graphics.c | 1 - libfreerdp/core/settings.c | 2 +- libfreerdp/core/update.c | 2 ++ libfreerdp/gdi/gdi.c | 7 ++++ 6 files changed, 59 insertions(+), 29 deletions(-) diff --git a/client/X11/xf_client.c b/client/X11/xf_client.c index 4df36d82f..a803edf74 100644 --- a/client/X11/xf_client.c +++ b/client/X11/xf_client.c @@ -180,31 +180,41 @@ void xf_draw_screen_scaled(xfContext *xfc, int x, int y, int w, int h, BOOL scal void xf_sw_begin_paint(rdpContext *context) { - rdpGdi *gdi = context->gdi; + rdpGdi* gdi = context->gdi; gdi->primary->hdc->hwnd->invalid->null = 1; gdi->primary->hdc->hwnd->ninvalid = 0; } void xf_sw_end_paint(rdpContext *context) { - rdpGdi *gdi; + int i; INT32 x, y; UINT32 w, h; - xfContext *xfc = (xfContext *) context; - gdi = context->gdi; - if(!xfc->remote_app) + int ninvalid; + HGDI_RGN cinvalid; + xfContext* xfc = (xfContext*) context; + rdpGdi* gdi = context->gdi; + + x = gdi->primary->hdc->hwnd->invalid->x; + y = gdi->primary->hdc->hwnd->invalid->y; + w = gdi->primary->hdc->hwnd->invalid->w; + h = gdi->primary->hdc->hwnd->invalid->h; + + ninvalid = gdi->primary->hdc->hwnd->ninvalid; + cinvalid = gdi->primary->hdc->hwnd->cinvalid; + + if (!xfc->remote_app) { - if(!xfc->complex_regions) + if (!xfc->complex_regions) { - if(gdi->primary->hdc->hwnd->invalid->null) + if (gdi->primary->hdc->hwnd->invalid->null) return; - x = gdi->primary->hdc->hwnd->invalid->x; - y = gdi->primary->hdc->hwnd->invalid->y; - w = gdi->primary->hdc->hwnd->invalid->w; - h = gdi->primary->hdc->hwnd->invalid->h; + xf_lock_x11(xfc, FALSE); + XPutImage(xfc->display, xfc->primary, xfc->gc, xfc->image, x, y, x, y, w, h); - if((xfc->settings->ScalingFactor != 1.0) || (xfc->offset_x) || (xfc->offset_y)) + + if ((xfc->settings->ScalingFactor != 1.0) || (xfc->offset_x) || (xfc->offset_y)) { xf_draw_screen_scaled(xfc, x, y, w, h, TRUE); } @@ -212,27 +222,27 @@ void xf_sw_end_paint(rdpContext *context) { XCopyArea(xfc->display, xfc->primary, xfc->window->handle, xfc->gc, x, y, w, h, x, y); } + xf_unlock_x11(xfc, FALSE); } else { - int i; - int ninvalid; - HGDI_RGN cinvalid; - if(gdi->primary->hdc->hwnd->ninvalid < 1) + if (gdi->primary->hdc->hwnd->ninvalid < 1) return; - ninvalid = gdi->primary->hdc->hwnd->ninvalid; - cinvalid = gdi->primary->hdc->hwnd->cinvalid; + xf_lock_x11(xfc, FALSE); - for(i = 0; i < ninvalid; i++) + + for (i = 0; i < ninvalid; i++) { x = cinvalid[i].x; y = cinvalid[i].y; w = cinvalid[i].w; h = cinvalid[i].h; + //combine xfc->primary with xfc->image XPutImage(xfc->display, xfc->primary, xfc->gc, xfc->image, x, y, x, y, w, h); - if((xfc->settings->ScalingFactor != 1.0) || (xfc->offset_x) || (xfc->offset_y)) + + if ((xfc->settings->ScalingFactor != 1.0) || (xfc->offset_x) || (xfc->offset_y)) { xf_draw_screen_scaled(xfc, x, y, w, h, TRUE); } @@ -241,20 +251,21 @@ void xf_sw_end_paint(rdpContext *context) XCopyArea(xfc->display, xfc->primary, xfc->window->handle, xfc->gc, x, y, w, h, x, y); } } + XFlush(xfc->display); + xf_unlock_x11(xfc, FALSE); } } else { - if(gdi->primary->hdc->hwnd->invalid->null) + if (gdi->primary->hdc->hwnd->invalid->null) return; - x = gdi->primary->hdc->hwnd->invalid->x; - y = gdi->primary->hdc->hwnd->invalid->y; - w = gdi->primary->hdc->hwnd->invalid->w; - h = gdi->primary->hdc->hwnd->invalid->h; + xf_lock_x11(xfc, FALSE); + xf_rail_paint(xfc, context->rail, x, y, x + w - 1, y + h - 1); + xf_unlock_x11(xfc, FALSE); } } @@ -264,12 +275,15 @@ void xf_sw_desktop_resize(rdpContext *context) rdpSettings *settings; xfContext *xfc = (xfContext *) context; settings = xfc->instance->settings; + xf_lock_x11(xfc, TRUE); - if(!xfc->fullscreen) + + if (!xfc->fullscreen) { rdpGdi *gdi = context->gdi; gdi_resize(gdi, xfc->width, xfc->height); - if(xfc->image) + + if (xfc->image) { xfc->image->data = NULL; XDestroyImage(xfc->image); @@ -277,6 +291,7 @@ void xf_sw_desktop_resize(rdpContext *context) (char *) gdi->primary_buffer, gdi->width, gdi->height, xfc->scanline_pad, 0); } } + xf_unlock_x11(xfc, TRUE); } diff --git a/client/X11/xf_gdi.c b/client/X11/xf_gdi.c index efd536d7f..c18846370 100644 --- a/client/X11/xf_gdi.c +++ b/client/X11/xf_gdi.c @@ -949,6 +949,11 @@ void xf_gdi_ellipse_cb(rdpContext* context, ELLIPSE_CB_ORDER* ellipse_cb) DEBUG_WARN( "EllipseCB\n"); } +void xf_gdi_frame_marker(rdpContext* context, FRAME_MARKER_ORDER* frameMarker) +{ + +} + void xf_gdi_surface_frame_marker(rdpContext* context, SURFACE_FRAME_MARKER* surface_frame_marker) { rdpSettings* settings; @@ -1187,5 +1192,7 @@ void xf_gdi_register_update_callbacks(rdpUpdate* update) update->SurfaceBits = xf_gdi_surface_bits; update->SurfaceFrameMarker = xf_gdi_surface_frame_marker; + + update->altsec->FrameMarker = xf_gdi_frame_marker; } diff --git a/client/X11/xf_graphics.c b/client/X11/xf_graphics.c index 971302ff3..330977684 100644 --- a/client/X11/xf_graphics.c +++ b/client/X11/xf_graphics.c @@ -389,7 +389,6 @@ void xf_Glyph_Draw(rdpContext* context, rdpGlyph* glyph, int x, int y) void xf_Glyph_BeginDraw(rdpContext* context, int x, int y, int width, int height, UINT32 bgcolor, UINT32 fgcolor) { - xfContext* context_ = (xfContext*) context; xfContext* xfc = (xfContext*) context; bgcolor = freerdp_color_convert_drawing_order_color_to_gdi_color(bgcolor, context->settings->ColorDepth, xfc->clrconv); diff --git a/libfreerdp/core/settings.c b/libfreerdp/core/settings.c index feb811967..0eec9b087 100644 --- a/libfreerdp/core/settings.c +++ b/libfreerdp/core/settings.c @@ -321,7 +321,7 @@ rdpSettings* freerdp_settings_new(DWORD flags) settings->DrawGdiPlusEnabled = FALSE; - settings->FrameMarkerCommandEnabled = FALSE; + settings->FrameMarkerCommandEnabled = TRUE; settings->SurfaceFrameMarkerEnabled = TRUE; settings->BitmapCacheV3Enabled = FALSE; diff --git a/libfreerdp/core/update.c b/libfreerdp/core/update.c index b400aaeed..11ff7c0a7 100644 --- a/libfreerdp/core/update.c +++ b/libfreerdp/core/update.c @@ -164,6 +164,8 @@ BOOL update_read_bitmap_update(rdpUpdate* update, wStream* s, BITMAP_UPDATE* bit Stream_Read_UINT16(s, bitmapUpdate->number); /* numberRectangles (2 bytes) */ + WLog_Print(update->log, WLOG_DEBUG, "BitmapUpdate: %d", bitmapUpdate->number); + if (bitmapUpdate->number > bitmapUpdate->count) { UINT16 count; diff --git a/libfreerdp/gdi/gdi.c b/libfreerdp/gdi/gdi.c index ee767cfd3..d78d780d9 100644 --- a/libfreerdp/gdi/gdi.c +++ b/libfreerdp/gdi/gdi.c @@ -764,6 +764,11 @@ void gdi_ellipse_cb(rdpContext* context, ELLIPSE_CB_ORDER* ellipse_cb) DEBUG_WARN( "EllipseCB\n"); } +void gdi_frame_marker(rdpContext* context, FRAME_MARKER_ORDER* frameMarker) +{ + +} + void gdi_surface_frame_marker(rdpContext* context, SURFACE_FRAME_MARKER* surface_frame_marker) { DEBUG_GDI("frameId %d frameAction %d", @@ -943,6 +948,8 @@ void gdi_register_update_callbacks(rdpUpdate* update) update->SurfaceBits = gdi_surface_bits; update->SurfaceFrameMarker = gdi_surface_frame_marker; + + update->altsec->FrameMarker = gdi_frame_marker; } void gdi_init_primary(rdpGdi* gdi) From f14b0e01959bfe249daed4fdba772fe1b93d1daa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 5 Sep 2014 19:11:03 -0400 Subject: [PATCH 163/170] libfreerdp-codec: cleanup h264 decoder --- client/X11/xf_gfx.c | 6 - include/freerdp/codec/h264.h | 42 +- libfreerdp/codec/h264.c | 783 ++++++++++++++++++++++----------- libfreerdp/codec/progressive.c | 4 +- libfreerdp/utils/svc_plugin.c | 5 - 5 files changed, 555 insertions(+), 285 deletions(-) diff --git a/client/X11/xf_gfx.c b/client/X11/xf_gfx.c index 50e4bf8d5..3efdfdc8c 100644 --- a/client/X11/xf_gfx.c +++ b/client/X11/xf_gfx.c @@ -512,9 +512,6 @@ int xf_SurfaceCommand_Progressive(xfContext* xfc, RdpgfxClientContext* context, return -1; } - printf("xf_SurfaceCommand_Progressive: status: %d surfaceId: %d contextId: %d\n", status, - cmd->surfaceId, cmd->contextId); - region = &(xfc->progressive->region); region16_init(&clippingRects); @@ -614,9 +611,6 @@ int xf_SurfaceCommand(RdpgfxClientContext* context, RDPGFX_SURFACE_COMMAND* cmd) int xf_DeleteEncodingContext(RdpgfxClientContext* context, RDPGFX_DELETE_ENCODING_CONTEXT_PDU* deleteEncodingContext) { - printf("DeleteEncodingContext: surfaceId: %d codecId: %d\n", - deleteEncodingContext->surfaceId, - deleteEncodingContext->codecContextId); return 1; } diff --git a/include/freerdp/codec/h264.h b/include/freerdp/codec/h264.h index 3c445d61a..61bfa1355 100644 --- a/include/freerdp/codec/h264.h +++ b/include/freerdp/codec/h264.h @@ -23,21 +23,22 @@ #include #include -#ifdef WITH_LIBAVCODEC -#ifdef WITH_OPENH264 -#undef WITH_OPENH264 -#endif -#endif +typedef struct _H264_CONTEXT H264_CONTEXT; -#ifdef WITH_OPENH264 -#include "wels/codec_def.h" -#include "wels/codec_api.h" -#endif +typedef BOOL (*pfnH264SubsystemInit)(H264_CONTEXT* h264); +typedef void (*pfnH264SubsystemUninit)(H264_CONTEXT* h264); -#ifdef WITH_LIBAVCODEC -#include -#include -#endif +typedef int (*pfnH264SubsystemDecompress)(H264_CONTEXT* h264, BYTE* pSrcData, UINT32 SrcSize, + BYTE* pDstData, DWORD DstFormat, int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight); + +struct _H264_CONTEXT_SUBSYSTEM +{ + const char* name; + pfnH264SubsystemInit Init; + pfnH264SubsystemUninit Uninit; + pfnH264SubsystemDecompress Decompress; +}; +typedef struct _H264_CONTEXT_SUBSYSTEM H264_CONTEXT_SUBSYSTEM; struct _H264_CONTEXT { @@ -49,18 +50,9 @@ struct _H264_CONTEXT UINT32 height; int scanline; -#ifdef WITH_OPENH264 - ISVCDecoder* pDecoder; -#endif - -#ifdef WITH_LIBAVCODEC - AVCodec* codec; - AVCodecContext* codecContext; - AVCodecParserContext* codecParser; - AVFrame* videoFrame; -#endif + void* pSystemData; + H264_CONTEXT_SUBSYSTEM* subsystem; }; -typedef struct _H264_CONTEXT H264_CONTEXT; #ifdef __cplusplus extern "C" { @@ -71,8 +63,6 @@ FREERDP_API int h264_compress(H264_CONTEXT* h264, BYTE* pSrcData, UINT32 SrcSize FREERDP_API int h264_decompress(H264_CONTEXT* h264, BYTE* pSrcData, UINT32 SrcSize, BYTE** ppDstData, DWORD DstFormat, int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight); -FREERDP_API void h264_context_reset(H264_CONTEXT* h264); - FREERDP_API H264_CONTEXT* h264_context_new(BOOL Compressor); FREERDP_API void h264_context_free(H264_CONTEXT* h264); diff --git a/libfreerdp/codec/h264.c b/libfreerdp/codec/h264.c index 9a5afb4ab..84095e7e7 100644 --- a/libfreerdp/codec/h264.c +++ b/libfreerdp/codec/h264.c @@ -28,65 +28,17 @@ #include #include -#define USE_GRAY_SCALE 0 -#define USE_UPCONVERT 0 - -#ifdef WITH_OPENH264 -static BYTE clip(int x) +static INLINE BYTE clip(int x) { if (x < 0) return 0; if (x > 255) return 255; - return (BYTE)x; + return (BYTE) x; } -static UINT32 YUV_to_RGB(BYTE Y, BYTE U, BYTE V) +static INLINE UINT32 YUV_to_RGB(BYTE Y, BYTE U, BYTE V) { - BYTE R, G, B; - -#if USE_GRAY_SCALE - /* - * Displays the Y plane as a gray-scale image. - */ - R = Y; - G = Y; - B = Y; -#else int C, D, E; - -#if 0 - /* - * Documented colorspace conversion from YUV to RGB. - * See http://msdn.microsoft.com/en-us/library/ms893078.aspx - */ - - C = Y - 16; - D = U - 128; - E = V - 128; - - R = clip(( 298 * C + 409 * E + 128) >> 8); - G = clip(( 298 * C - 100 * D - 208 * E + 128) >> 8); - B = clip(( 298 * C + 516 * D + 128) >> 8); -#endif - -#if 0 - /* - * These coefficients produce better results. - * See http://www.microchip.com/forums/m599060.aspx - */ - - C = Y; - D = U - 128; - E = V - 128; - - R = clip(( 256 * C + 359 * E + 128) >> 8); - G = clip(( 256 * C - 88 * D - 183 * E + 128) >> 8); - B = clip(( 256 * C + 454 * D + 128) >> 8); -#endif - -#if 1 - /* - * These coefficients produce excellent results. - */ + BYTE R, G, B; C = Y; D = U - 128; @@ -95,87 +47,524 @@ static UINT32 YUV_to_RGB(BYTE Y, BYTE U, BYTE V) R = clip(( 256 * C + 403 * E + 128) >> 8); G = clip(( 256 * C - 48 * D - 120 * E + 128) >> 8); B = clip(( 256 * C + 475 * D + 128) >> 8); -#endif - -#endif return RGB32(R, G, B); } -#endif /* WITH_OPENH264 */ -#if USE_UPCONVERT -static BYTE* convert_420_to_444(BYTE* chroma420, int chroma420Width, int chroma420Height, int chroma420Stride) +static int g_H264FrameId = 0; +static BOOL g_H264DumpFrames = FALSE; + +static void h264_dump_h264_data(BYTE* data, int size) { - BYTE *chroma444, *src, *dst; - int chroma444Width; - int chroma444Height; - int i, j; + FILE* fp; + char buf[4096]; - chroma444Width = chroma420Width * 2; - chroma444Height = chroma420Height * 2; - - chroma444 = (BYTE*) malloc(chroma444Width * chroma444Height); - - if (!chroma444) - return NULL; - - /* Upconvert in the horizontal direction. */ - - for (j = 0; j < chroma420Height; j++) - { - src = chroma420 + j * chroma420Stride; - dst = chroma444 + j * chroma444Width; - dst[0] = src[0]; - for (i = 1; i < chroma420Width; i++) - { - dst[2*i-1] = (3 * src[i-1] + src[i] + 2) >> 2; - dst[2*i] = (src[i-1] + 3 * src[i] + 2) >> 2; - } - dst[chroma444Width-1] = src[chroma420Width-1]; - } - - /* Upconvert in the vertical direction (in-place, bottom-up). */ - - for (i = 0; i < chroma444Width; i++) - { - src = chroma444 + i + (chroma420Height-2) * chroma444Width; - dst = chroma444 + i + (2*(chroma420Height-2)+1) * chroma444Width; - dst[2*chroma444Width] = src[chroma444Width]; - for (j = chroma420Height - 2; j >= 0; j--) - { - dst[chroma444Width] = (src[0] + 3 * src[chroma444Width] + 2) >> 2; - dst[0] = (3 * src[0] + src[chroma444Width] + 2) >> 2; - dst -= 2 * chroma444Width; - src -= chroma444Width; - } - } - - return chroma444; + snprintf(buf, sizeof(buf), "/tmp/wlog/bs_%d.h264", g_H264FrameId); + fp = fopen(buf, "wb"); + fwrite(data, 1, size, fp); + fflush(fp); + fclose(fp); } + +void h264_dump_yuv_data(BYTE* yuv[], int width, int height, int stride[]) +{ + FILE* fp; + BYTE* srcp; + char buf[4096]; + int j; + + snprintf(buf, sizeof(buf), "/tmp/wlog/H264_%d.ppm", g_H264FrameId); + fp = fopen(buf, "wb"); + fwrite("P5\n", 1, 3, fp); + snprintf(buf, sizeof(buf), "%d %d\n", width, height); + fwrite(buf, 1, strlen(buf), fp); + fwrite("255\n", 1, 4, fp); + + srcp = yuv[0]; + + for (j = 0; j < height; j++) + { + fwrite(srcp, 1, width, fp); + srcp += stride[0]; + } + + fflush(fp); + fclose(fp); +} + +int h264_prepare_rgb_buffer(H264_CONTEXT* h264, int width, int height) +{ + UINT32 size; + + h264->width = width; + h264->height = height; + h264->scanline = h264->width * 4; + size = h264->scanline * h264->height; + + if (size > h264->size) + { + h264->size = size; + h264->data = (BYTE*) realloc(h264->data, h264->size); + memset(h264->data, 0, h264->size); + } + + if (!h264->data) + return -1; + + return 1; +} + +int freerdp_image_copy_yuv420p_to_xrgb(BYTE* pDstData, int nDstStep, int nXDst, int nYDst, + int nWidth, int nHeight, BYTE* pSrcData[3], int nSrcStep[2], int nXSrc, int nYSrc) +{ + int x, y; + BYTE* pDstPixel8; + BYTE *pY, *pU, *pV; + int shift = 1; + + pY = pSrcData[0] + (nYSrc * nSrcStep[0]) + nXSrc; + + pDstPixel8 = &pDstData[(nYDst * nDstStep) + (nXDst * 4)]; + + for (y = 0; y < nHeight; y++) + { + pU = pSrcData[1] + ((nYSrc + y) >> shift) * nSrcStep[1]; + pV = pSrcData[2] + ((nYSrc + y) >> shift) * nSrcStep[1]; + + for (x = 0; x < nWidth; x++) + { + BYTE Y, U, V; + + Y = *pY; + U = pU[(nXSrc + x) >> shift]; + V = pV[(nXSrc + x) >> shift]; + + *((UINT32*) pDstPixel8) = YUV_to_RGB(Y, U, V); + + pDstPixel8 += 4; + pY++; + } + + pDstPixel8 += (nDstStep - (nWidth * 4)); + pY += (nSrcStep[0] - nWidth); + } + + return 1; +} + +/** + * Dummy subsystem + */ + +static int dummy_decompress(H264_CONTEXT* h264, BYTE* pSrcData, UINT32 SrcSize, + BYTE* pDstData, DWORD DstFormat, int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight) +{ + return -1; +} + +static void dummy_uninit(H264_CONTEXT* h264) +{ + +} + +static BOOL dummy_init(H264_CONTEXT* h264) +{ + return TRUE; +} + +static H264_CONTEXT_SUBSYSTEM g_Subsystem_dummy = +{ + "dummy", + dummy_init, + dummy_uninit, + dummy_decompress +}; + +/** + * OpenH264 subsystem + */ + +#ifdef WITH_OPENH264 + +#include "wels/codec_def.h" +#include "wels/codec_api.h" + +struct _H264_CONTEXT_OPENH264 +{ + ISVCDecoder* pDecoder; +}; +typedef struct _H264_CONTEXT_OPENH264 H264_CONTEXT_OPENH264; + +static BOOL g_openh264_trace_enabled = FALSE; + +static void openh264_trace_callback(H264_CONTEXT* h264, int level, const char* message) +{ + printf("%d - %s\n", level, message); +} + +static int openh264_decompress(H264_CONTEXT* h264, BYTE* pSrcData, UINT32 SrcSize, + BYTE* pDstData, DWORD DstFormat, int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight) +{ + BYTE* pYUVData[3]; + DECODING_STATE state; + SBufferInfo sBufferInfo; + SSysMEMBuffer* pSystemBuffer; + H264_CONTEXT_OPENH264* sys = (H264_CONTEXT_OPENH264*) h264->pSystemData; + + if (!sys->pDecoder) + return -1; + + /* + * Decompress the image. The RDP host only seems to send I420 format. + */ + + pYUVData[0] = NULL; + pYUVData[1] = NULL; + pYUVData[2] = NULL; + + ZeroMemory(&sBufferInfo, sizeof(sBufferInfo)); + + state = (*sys->pDecoder)->DecodeFrame2( + sys->pDecoder, + pSrcData, + SrcSize, + pYUVData, + &sBufferInfo); + + /** + * Calling DecodeFrame2 twice apparently works around Openh264 issue #1136: + * https://github.com/cisco/openh264/issues/1136 + * + * This is a hack, but it works and it is only necessary for the first frame. + */ + + if (sBufferInfo.iBufferStatus != 1) + state = (*sys->pDecoder)->DecodeFrame2(sys->pDecoder, NULL, 0, pYUVData, &sBufferInfo); + + pSystemBuffer = &sBufferInfo.UsrData.sSystemBuffer; + +#if 0 + printf("h264_decompress: state=%u, pYUVData=[%p,%p,%p], bufferStatus=%d, width=%d, height=%d, format=%d, stride=[%d,%d]\n", + state, pYUVData[0], pYUVData[1], pYUVData[2], sBufferInfo.iBufferStatus, + pSystemBuffer->iWidth, pSystemBuffer->iHeight, pSystemBuffer->iFormat, + pSystemBuffer->iStride[0], pSystemBuffer->iStride[1]); +#endif + + if (state != 0) + return -1; + + if (!pYUVData[0] || !pYUVData[1] || !pYUVData[2]) + return -1; + + if (sBufferInfo.iBufferStatus != 1) + return -1; + + if (pSystemBuffer->iFormat != videoFormatI420) + return -1; + + /* Convert I420 (same as IYUV) to XRGB. */ + + if (g_H264DumpFrames) + { + h264_dump_yuv_data(pYUVData, pSystemBuffer->iWidth, pSystemBuffer->iHeight, pSystemBuffer->iStride); + } + + g_H264FrameId++; + + if (h264_prepare_rgb_buffer(h264, pSystemBuffer->iWidth, pSystemBuffer->iHeight) < 0) + return -1; + + freerdp_image_copy_yuv420p_to_xrgb(h264->data, h264->scanline, 0, 0, + h264->width, h264->height, pYUVData, pSystemBuffer->iStride, 0, 0); + + return 1; +} + +static void openh264_uninit(H264_CONTEXT* h264) +{ + H264_CONTEXT_OPENH264* sys = (H264_CONTEXT_OPENH264*) h264->pSystemData; + + if (sys) + { + if (sys->pDecoder) + { + (*sys->pDecoder)->Uninitialize(sys->pDecoder); + WelsDestroyDecoder(sys->pDecoder); + sys->pDecoder = NULL; + } + + free(sys); + h264->pSystemData = NULL; + } +} + +static BOOL openh264_init(H264_CONTEXT* h264) +{ + long status; + SDecodingParam sDecParam; + H264_CONTEXT_OPENH264* sys; + static int traceLevel = WELS_LOG_DEBUG; + static EVideoFormatType videoFormat = videoFormatI420; + static WelsTraceCallback traceCallback = (WelsTraceCallback) openh264_trace_callback; + + sys = (H264_CONTEXT_OPENH264*) calloc(1, sizeof(H264_CONTEXT_OPENH264)); + + if (!sys) + { + goto EXCEPTION; + } + + h264->pSystemData = (void*) sys; + + WelsCreateDecoder(&sys->pDecoder); + + if (!sys->pDecoder) + { + printf("Failed to create OpenH264 decoder\n"); + goto EXCEPTION; + } + + ZeroMemory(&sDecParam, sizeof(sDecParam)); + sDecParam.iOutputColorFormat = videoFormatI420; + sDecParam.uiEcActiveFlag = 1; + sDecParam.sVideoProperty.eVideoBsType = VIDEO_BITSTREAM_DEFAULT; + + status = (*sys->pDecoder)->Initialize(sys->pDecoder, &sDecParam); + + if (status != 0) + { + printf("Failed to initialize OpenH264 decoder (status=%ld)\n", status); + goto EXCEPTION; + } + + status = (*sys->pDecoder)->SetOption(sys->pDecoder, DECODER_OPTION_DATAFORMAT, &videoFormat); + + if (status != 0) + { + printf("Failed to set data format option on OpenH264 decoder (status=%ld)\n", status); + } + + if (g_openh264_trace_enabled) + { + status = (*sys->pDecoder)->SetOption(sys->pDecoder, DECODER_OPTION_TRACE_LEVEL, &traceLevel); + + if (status != 0) + { + printf("Failed to set trace level option on OpenH264 decoder (status=%ld)\n", status); + } + + status = (*sys->pDecoder)->SetOption(sys->pDecoder, DECODER_OPTION_TRACE_CALLBACK, &traceCallback); + + if (status != 0) + { + printf("Failed to set trace callback option on OpenH264 decoder (status=%ld)\n", status); + } + + status = (*sys->pDecoder)->SetOption(sys->pDecoder, DECODER_OPTION_TRACE_CALLBACK_CONTEXT, &h264); + + if (status != 0) + { + printf("Failed to set trace callback context option on OpenH264 decoder (status=%ld)\n", status); + } + } + + return TRUE; + +EXCEPTION: + openh264_uninit(h264); + + return FALSE; +} + +static H264_CONTEXT_SUBSYSTEM g_Subsystem_OpenH264 = +{ + "OpenH264", + openh264_init, + openh264_uninit, + openh264_decompress +}; + +#endif + +/** + * libavcodec subsystem + */ + +#ifdef WITH_LIBAVCODEC + +#include +#include + +struct _H264_CONTEXT_LIBAVCODEC +{ + AVCodec* codec; + AVCodecContext* codecContext; + AVCodecParserContext* codecParser; + AVFrame* videoFrame; +}; +typedef struct _H264_CONTEXT_LIBAVCODEC H264_CONTEXT_LIBAVCODEC; + +static int libavcodec_decompress(H264_CONTEXT* h264, BYTE* pSrcData, UINT32 SrcSize, + BYTE* pDstData, DWORD DstFormat, int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight) +{ + int status; + int gotFrame = 0; + AVPacket packet; + H264_CONTEXT_LIBAVCODEC* sys = (H264_CONTEXT_LIBAVCODEC*) h264->pSystemData; + + av_init_packet(&packet); + + packet.data = pSrcData; + packet.size = SrcSize; + + status = avcodec_decode_video2(sys->codecContext, sys->videoFrame, &gotFrame, &packet); + + if (status < 0) + { + printf("Failed to decode video frame (status=%d)\n", status); + return -1; + } + + printf("libavcodec_decompress: frame decoded (status=%d, gotFrame=%d, width=%d, height=%d, Y=[%p,%d], U=[%p,%d], V=[%p,%d])\n", + status, gotFrame, sys->videoFrame->width, sys->videoFrame->height, + sys->videoFrame->data[0], sys->videoFrame->linesize[0], + sys->videoFrame->data[1], sys->videoFrame->linesize[1], + sys->videoFrame->data[2], sys->videoFrame->linesize[2]); + + fflush(stdout); + + if (gotFrame) + { + if (g_H264DumpFrames) + { + h264_dump_yuv_data(sys->videoFrame->data, sys->videoFrame->width, sys->videoFrame->height, sys->videoFrame->linesize); + } + + if (h264_prepare_rgb_buffer(h264, sys->videoFrame->width, sys->videoFrame->height) < 0) + return -1; + + freerdp_image_copy_yuv420p_to_xrgb(h264->data, h264->scanline, 0, 0, + h264->width, h264->height, sys->videoFrame->data, sys->videoFrame->linesize, 0, 0); + } + + return 1; +} + +static void libavcodec_uninit(H264_CONTEXT* h264) +{ + H264_CONTEXT_LIBAVCODEC* sys = (H264_CONTEXT_LIBAVCODEC*) h264->pSystemData; + + if (!sys) + return; + + if (sys->videoFrame) + { + av_free(sys->videoFrame); + } + + if (sys->codecParser) + { + av_parser_close(sys->codecParser); + } + + if (sys->codecContext) + { + avcodec_close(sys->codecContext); + av_free(sys->codecContext); + } + + free(sys); + h264->pSystemData = NULL; +} + +static BOOL libavcodec_init(H264_CONTEXT* h264) +{ + H264_CONTEXT_LIBAVCODEC* sys; + + sys = (H264_CONTEXT_LIBAVCODEC*) calloc(1, sizeof(H264_CONTEXT_LIBAVCODEC)); + + if (!sys) + { + goto EXCEPTION; + } + + h264->pSystemData = (void*) sys; + + avcodec_register_all(); + + sys->codec = avcodec_find_decoder(CODEC_ID_H264); + + if (!sys->codec) + { + printf("Failed to find libav H.264 codec\n"); + goto EXCEPTION; + } + + sys->codecContext = avcodec_alloc_context3(sys->codec); + + if (!sys->codecContext) + { + printf("Failed to allocate libav codec context\n"); + goto EXCEPTION; + } + + if (sys->codec->capabilities & CODEC_CAP_TRUNCATED) + { + sys->codecContext->flags |= CODEC_FLAG_TRUNCATED; + } + + if (avcodec_open2(sys->codecContext, sys->codec, NULL) < 0) + { + printf("Failed to open libav codec\n"); + goto EXCEPTION; + } + + sys->codecParser = av_parser_init(CODEC_ID_H264); + + if (!sys->codecParser) + { + printf("Failed to initialize libav parser\n"); + goto EXCEPTION; + } + + sys->videoFrame = avcodec_alloc_frame(); + + if (!sys->videoFrame) + { + printf("Failed to allocate libav frame\n"); + goto EXCEPTION; + } + + return TRUE; + +EXCEPTION: + libavcodec_uninit(h264); + + return FALSE; +} + +static H264_CONTEXT_SUBSYSTEM g_Subsystem_libavcodec = +{ + "libavcodec", + libavcodec_init, + libavcodec_uninit, + libavcodec_decompress +}; + #endif int h264_decompress(H264_CONTEXT* h264, BYTE* pSrcData, UINT32 SrcSize, BYTE** ppDstData, DWORD DstFormat, int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight) { -#ifdef WITH_OPENH264 - DECODING_STATE state; - SBufferInfo sBufferInfo; - SSysMEMBuffer* pSystemBuffer; - UINT32 UncompressedSize; BYTE* pDstData; - BYTE* pYUVData[3]; - BYTE* pY; - BYTE* pU; - BYTE* pV; - int Y, U, V; - int i, j; + UINT32 UncompressedSize; - if (!h264 || !h264->pDecoder) + if (!h264) return -1; #if 0 - DEBUG_MSG("h264_decompress: pSrcData=%p, SrcSize=%u, pDstData=%p, DstFormat=%lx, nDstStep=%d, nXDst=%d, nYDst=%d, nWidth=%d, nHeight=%d)\n", - pSrcData, SrcSize, *ppDstData, DstFormat, nDstStep, nXDst, nYDst, nWidth, nHeight); + printf("h264_decompress: pSrcData=%p, SrcSize=%u, pDstData=%p, nDstStep=%d, nXDst=%d, nYDst=%d, nWidth=%d, nHeight=%d)\n", + pSrcData, SrcSize, *ppDstData, nDstStep, nXDst, nYDst, nWidth, nHeight); #endif /* Allocate a destination buffer (if needed). */ @@ -197,87 +586,13 @@ int h264_decompress(H264_CONTEXT* h264, BYTE* pSrcData, UINT32 SrcSize, *ppDstData = pDstData; } - /* - * Decompress the image. The RDP host only seems to send I420 format. - */ - - pYUVData[0] = NULL; - pYUVData[1] = NULL; - pYUVData[2] = NULL; - - ZeroMemory(&sBufferInfo, sizeof(sBufferInfo)); - - state = (*h264->pDecoder)->DecodeFrame2( - h264->pDecoder, - pSrcData, - SrcSize, - pYUVData, - &sBufferInfo); - - pSystemBuffer = &sBufferInfo.UsrData.sSystemBuffer; - -#if 0 - DEBUG_MSG("h264_decompress: state=%u, pYUVData=[%p,%p,%p], bufferStatus=%d, width=%d, height=%d, format=%d, stride=[%d,%d]\n", - state, pYUVData[0], pYUVData[1], pYUVData[2], sBufferInfo.iBufferStatus, - pSystemBuffer->iWidth, pSystemBuffer->iHeight, pSystemBuffer->iFormat, - pSystemBuffer->iStride[0], pSystemBuffer->iStride[1]); -#endif - - if (state != 0) - return -1; - - if (!pYUVData[0] || !pYUVData[1] || !pYUVData[2]) - return -1; - - if (sBufferInfo.iBufferStatus != 1) - return -1; - - if (pSystemBuffer->iFormat != videoFormatI420) - return -1; - - /* Convert I420 (same as IYUV) to XRGB. */ - - pY = pYUVData[0]; - pU = pYUVData[1]; - pV = pYUVData[2]; - -#if USE_UPCONVERT - /* Convert 4:2:0 YUV to 4:4:4 YUV. */ - pU = convert_420_to_444(pU, pSystemBuffer->iWidth / 2, pSystemBuffer->iHeight / 2, pSystemBuffer->iStride[1]); - pV = convert_420_to_444(pV, pSystemBuffer->iWidth / 2, pSystemBuffer->iHeight / 2, pSystemBuffer->iStride[1]); -#endif - - for (j = 0; j < nHeight; j++) + if (g_H264DumpFrames) { - BYTE *pXRGB = pDstData + ((nYDst + j) * nDstStep) + (nXDst * 4); - int y = nYDst + j; - - for (i = 0; i < nWidth; i++) - { - int x = nXDst + i; - - Y = pY[(y * pSystemBuffer->iStride[0]) + x]; -#if USE_UPCONVERT - U = pU[(y * pSystemBuffer->iWidth) + x]; - V = pV[(y * pSystemBuffer->iWidth) + x]; -#else - U = pU[(y/2) * pSystemBuffer->iStride[1] + (x/2)]; - V = pV[(y/2) * pSystemBuffer->iStride[1] + (x/2)]; -#endif - - *(UINT32*)pXRGB = YUV_to_RGB(Y, U, V); - - pXRGB += 4; - } + h264_dump_h264_data(pSrcData, SrcSize); } -#if USE_UPCONVERT - free(pU); - free(pV); -#endif -#endif - - return 1; + return h264->subsystem->Decompress(h264, pSrcData, SrcSize, + pDstData, DstFormat, nDstStep, nXDst, nYDst, nWidth, nHeight); } int h264_compress(H264_CONTEXT* h264, BYTE* pSrcData, UINT32 SrcSize, BYTE** ppDstData, UINT32* pDstSize) @@ -285,9 +600,25 @@ int h264_compress(H264_CONTEXT* h264, BYTE* pSrcData, UINT32 SrcSize, BYTE** ppD return 1; } -void h264_context_reset(H264_CONTEXT* h264) +BOOL h264_context_init(H264_CONTEXT* h264) { +#ifdef WITH_LIBAVCODEC + if (g_Subsystem_libavcodec.Init(h264)) + { + h264->subsystem = &g_Subsystem_libavcodec; + return TRUE; + } +#endif +#ifdef WITH_OPENH264 + if (g_Subsystem_OpenH264.Init(h264)) + { + h264->subsystem = &g_Subsystem_OpenH264; + return TRUE; + } +#endif + + return FALSE; } H264_CONTEXT* h264_context_new(BOOL Compressor) @@ -300,69 +631,29 @@ H264_CONTEXT* h264_context_new(BOOL Compressor) { h264->Compressor = Compressor; -#ifdef WITH_OPENH264 + h264->subsystem = &g_Subsystem_dummy; + + if (h264_prepare_rgb_buffer(h264, 256, 256) < 0) + return NULL; + + if (!h264_context_init(h264)) { - static EVideoFormatType videoFormat = videoFormatI420; - - SDecodingParam sDecParam; - long status; - - WelsCreateDecoder(&h264->pDecoder); - - if (!h264->pDecoder) - { - DEBUG_MSG("Failed to create OpenH264 decoder\n"); - goto EXCEPTION; - } - - ZeroMemory(&sDecParam, sizeof(sDecParam)); - sDecParam.iOutputColorFormat = videoFormatARGB; - status = (*h264->pDecoder)->Initialize(h264->pDecoder, &sDecParam); - if (status != 0) - { - DEBUG_MSG("Failed to initialize OpenH264 decoder (status=%ld)\n", status); - goto EXCEPTION; - } - - status = (*h264->pDecoder)->SetOption(h264->pDecoder, DECODER_OPTION_DATAFORMAT, &videoFormat); - if (status != 0) - { - DEBUG_MSG("Failed to set data format option on OpenH264 decoder (status=%ld)\n", status); - } + free(h264); + return NULL; } -#endif - - h264_context_reset(h264); } return h264; - -#ifdef WITH_OPENH264 -EXCEPTION: - if (h264->pDecoder) - { - WelsDestroyDecoder(h264->pDecoder); - } -#endif - - free(h264); - - return NULL; } void h264_context_free(H264_CONTEXT* h264) { if (h264) { -#ifdef WITH_OPENH264 - if (h264->pDecoder) - { - (*h264->pDecoder)->Uninitialize(h264->pDecoder); - WelsDestroyDecoder(h264->pDecoder); - } -#endif + free(h264->data); + + h264->subsystem->Uninit(h264); free(h264); } } - diff --git a/libfreerdp/codec/progressive.c b/libfreerdp/codec/progressive.c index f63b6896b..69092d161 100644 --- a/libfreerdp/codec/progressive.c +++ b/libfreerdp/codec/progressive.c @@ -1710,8 +1710,8 @@ int progressive_decompress(PROGRESSIVE_CONTEXT* progressive, BYTE* pSrcData, UIN if (!region->tiles) return -1; - printf("numRects: %d numTiles: %d numQuant: %d numProgQuant: %d\n", - region->numRects, region->numTiles, region->numQuant, region->numProgQuant); + //printf("numRects: %d numTiles: %d numQuant: %d numProgQuant: %d\n", + // region->numRects, region->numTiles, region->numQuant, region->numProgQuant); status = progressive_process_tiles(progressive, &block[boffset], region->tileDataSize, surface); diff --git a/libfreerdp/utils/svc_plugin.c b/libfreerdp/utils/svc_plugin.c index a52763852..a96c36079 100644 --- a/libfreerdp/utils/svc_plugin.c +++ b/libfreerdp/utils/svc_plugin.c @@ -114,11 +114,6 @@ static void svc_plugin_process_received(rdpSvcPlugin* plugin, void* pData, UINT3 if (dataFlags & CHANNEL_FLAG_LAST) { - if (Stream_Capacity(s) != Stream_GetPosition(s)) - { - DEBUG_WARN( "svc_plugin_process_received: read error\n"); - } - plugin->data_in = NULL; Stream_SealLength(s); Stream_SetPosition(s, 0); From fe75405d5c59a273d9a5f71c5a2c90873ade5d40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 5 Sep 2014 19:38:33 -0400 Subject: [PATCH 164/170] libfreerdp-codec: fix build on Windows --- libfreerdp/codec/h264.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libfreerdp/codec/h264.c b/libfreerdp/codec/h264.c index 84095e7e7..c32fc9727 100644 --- a/libfreerdp/codec/h264.c +++ b/libfreerdp/codec/h264.c @@ -59,7 +59,7 @@ static void h264_dump_h264_data(BYTE* data, int size) FILE* fp; char buf[4096]; - snprintf(buf, sizeof(buf), "/tmp/wlog/bs_%d.h264", g_H264FrameId); + sprintf_s(buf, sizeof(buf), "/tmp/wlog/bs_%d.h264", g_H264FrameId); fp = fopen(buf, "wb"); fwrite(data, 1, size, fp); fflush(fp); @@ -73,10 +73,10 @@ void h264_dump_yuv_data(BYTE* yuv[], int width, int height, int stride[]) char buf[4096]; int j; - snprintf(buf, sizeof(buf), "/tmp/wlog/H264_%d.ppm", g_H264FrameId); + sprintf_s(buf, sizeof(buf), "/tmp/wlog/H264_%d.ppm", g_H264FrameId); fp = fopen(buf, "wb"); fwrite("P5\n", 1, 3, fp); - snprintf(buf, sizeof(buf), "%d %d\n", width, height); + sprintf_s(buf, sizeof(buf), "%d %d\n", width, height); fwrite(buf, 1, strlen(buf), fp); fwrite("255\n", 1, 4, fp); From 5f37e768f0751659f1b9ea3c7f4028157e7aafc7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Fri, 5 Sep 2014 20:16:56 -0400 Subject: [PATCH 165/170] libfreerdp-codec: improve YUV to RGB color conversion --- libfreerdp/codec/h264.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/libfreerdp/codec/h264.c b/libfreerdp/codec/h264.c index 84095e7e7..0688bb038 100644 --- a/libfreerdp/codec/h264.c +++ b/libfreerdp/codec/h264.c @@ -37,16 +37,16 @@ static INLINE BYTE clip(int x) static INLINE UINT32 YUV_to_RGB(BYTE Y, BYTE U, BYTE V) { - int C, D, E; BYTE R, G, B; + int Yp, Up, Vp; - C = Y; - D = U - 128; - E = V - 128; + Yp = Y * 256; + Up = U - 128; + Vp = V - 128; - R = clip(( 256 * C + 403 * E + 128) >> 8); - G = clip(( 256 * C - 48 * D - 120 * E + 128) >> 8); - B = clip(( 256 * C + 475 * D + 128) >> 8); + R = clip((Yp + (403 * Vp)) >> 8); + G = clip((Yp - (48 * Up) - (120 * Vp)) >> 8); + B = clip((Yp + (475 * Up)) >> 8); return RGB32(R, G, B); } From 437583aa9ae388ac6f256ad8fc4edb8e0aca8621 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Sat, 6 Sep 2014 17:10:27 -0400 Subject: [PATCH 166/170] libfreerdp-primitives: add YUV420 to RGB conversion --- include/freerdp/primitives.h | 5 + libfreerdp/codec/h264.c | 169 ++++++-------------------- libfreerdp/primitives/CMakeLists.txt | 1 + libfreerdp/primitives/prim_YUV.c | 97 +++++++++++++++ libfreerdp/primitives/prim_YUV.h | 27 ++++ libfreerdp/primitives/prim_internal.h | 63 ++++------ libfreerdp/primitives/primitives.c | 10 +- 7 files changed, 197 insertions(+), 175 deletions(-) create mode 100644 libfreerdp/primitives/prim_YUV.c create mode 100644 libfreerdp/primitives/prim_YUV.h diff --git a/include/freerdp/primitives.h b/include/freerdp/primitives.h index be0a01816..e75e8c69c 100644 --- a/include/freerdp/primitives.h +++ b/include/freerdp/primitives.h @@ -164,6 +164,10 @@ typedef pstatus_t (*__RGB565ToARGB_16u32u_C3C4_t)( UINT32* pDst, INT32 dstStep, UINT32 width, UINT32 height, BOOL alpha, BOOL invert); +typedef pstatus_t (*__YUV420ToRGB_8u_P3AC4R_t)( + const BYTE* pSrc[3], INT32 srcStep[3], + BYTE* pDst, INT32 dstStep, + const prim_size_t* roi); typedef pstatus_t (*__andC_32u_t)( const UINT32 *pSrc, UINT32 val, @@ -209,6 +213,7 @@ typedef struct __RGBToRGB_16s8u_P3AC4R_t RGBToRGB_16s8u_P3AC4R; __YCoCgRToRGB_8u_AC4R_t YCoCgRToRGB_8u_AC4R; __RGB565ToARGB_16u32u_C3C4_t RGB565ToARGB_16u32u_C3C4; + __YUV420ToRGB_8u_P3AC4R_t YUV420ToRGB_8u_P3AC4R; } primitives_t; #ifdef __cplusplus diff --git a/libfreerdp/codec/h264.c b/libfreerdp/codec/h264.c index c607a4895..1a02887e2 100644 --- a/libfreerdp/codec/h264.c +++ b/libfreerdp/codec/h264.c @@ -25,73 +25,10 @@ #include #include -#include +#include + #include -static INLINE BYTE clip(int x) -{ - if (x < 0) return 0; - if (x > 255) return 255; - return (BYTE) x; -} - -static INLINE UINT32 YUV_to_RGB(BYTE Y, BYTE U, BYTE V) -{ - BYTE R, G, B; - int Yp, Up, Vp; - - Yp = Y * 256; - Up = U - 128; - Vp = V - 128; - - R = clip((Yp + (403 * Vp)) >> 8); - G = clip((Yp - (48 * Up) - (120 * Vp)) >> 8); - B = clip((Yp + (475 * Up)) >> 8); - - return RGB32(R, G, B); -} - -static int g_H264FrameId = 0; -static BOOL g_H264DumpFrames = FALSE; - -static void h264_dump_h264_data(BYTE* data, int size) -{ - FILE* fp; - char buf[4096]; - - sprintf_s(buf, sizeof(buf), "/tmp/wlog/bs_%d.h264", g_H264FrameId); - fp = fopen(buf, "wb"); - fwrite(data, 1, size, fp); - fflush(fp); - fclose(fp); -} - -void h264_dump_yuv_data(BYTE* yuv[], int width, int height, int stride[]) -{ - FILE* fp; - BYTE* srcp; - char buf[4096]; - int j; - - sprintf_s(buf, sizeof(buf), "/tmp/wlog/H264_%d.ppm", g_H264FrameId); - fp = fopen(buf, "wb"); - fwrite("P5\n", 1, 3, fp); - sprintf_s(buf, sizeof(buf), "%d %d\n", width, height); - fwrite(buf, 1, strlen(buf), fp); - fwrite("255\n", 1, 4, fp); - - srcp = yuv[0]; - - for (j = 0; j < height; j++) - { - fwrite(srcp, 1, width, fp); - srcp += stride[0]; - } - - fflush(fp); - fclose(fp); -} - int h264_prepare_rgb_buffer(H264_CONTEXT* h264, int width, int height) { UINT32 size; @@ -104,8 +41,11 @@ int h264_prepare_rgb_buffer(H264_CONTEXT* h264, int width, int height) if (size > h264->size) { h264->size = size; - h264->data = (BYTE*) realloc(h264->data, h264->size); - memset(h264->data, 0, h264->size); + + if (!h264->data) + h264->data = (BYTE*) _aligned_malloc(h264->size, 16); + else + h264->data = (BYTE*) _aligned_realloc(h264->data, h264->size, 16); } if (!h264->data) @@ -114,44 +54,6 @@ int h264_prepare_rgb_buffer(H264_CONTEXT* h264, int width, int height) return 1; } -int freerdp_image_copy_yuv420p_to_xrgb(BYTE* pDstData, int nDstStep, int nXDst, int nYDst, - int nWidth, int nHeight, BYTE* pSrcData[3], int nSrcStep[2], int nXSrc, int nYSrc) -{ - int x, y; - BYTE* pDstPixel8; - BYTE *pY, *pU, *pV; - int shift = 1; - - pY = pSrcData[0] + (nYSrc * nSrcStep[0]) + nXSrc; - - pDstPixel8 = &pDstData[(nYDst * nDstStep) + (nXDst * 4)]; - - for (y = 0; y < nHeight; y++) - { - pU = pSrcData[1] + ((nYSrc + y) >> shift) * nSrcStep[1]; - pV = pSrcData[2] + ((nYSrc + y) >> shift) * nSrcStep[1]; - - for (x = 0; x < nWidth; x++) - { - BYTE Y, U, V; - - Y = *pY; - U = pU[(nXSrc + x) >> shift]; - V = pV[(nXSrc + x) >> shift]; - - *((UINT32*) pDstPixel8) = YUV_to_RGB(Y, U, V); - - pDstPixel8 += 4; - pY++; - } - - pDstPixel8 += (nDstStep - (nWidth * 4)); - pY += (nSrcStep[0] - nWidth); - } - - return 1; -} - /** * Dummy subsystem */ @@ -205,10 +107,13 @@ static void openh264_trace_callback(H264_CONTEXT* h264, int level, const char* m static int openh264_decompress(H264_CONTEXT* h264, BYTE* pSrcData, UINT32 SrcSize, BYTE* pDstData, DWORD DstFormat, int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight) { + int srcStep[3]; + prim_size_t roi; BYTE* pYUVData[3]; DECODING_STATE state; SBufferInfo sBufferInfo; SSysMEMBuffer* pSystemBuffer; + primitives_t* prims = primitives_get(); H264_CONTEXT_OPENH264* sys = (H264_CONTEXT_OPENH264*) h264->pSystemData; if (!sys->pDecoder) @@ -262,20 +167,18 @@ static int openh264_decompress(H264_CONTEXT* h264, BYTE* pSrcData, UINT32 SrcSiz if (pSystemBuffer->iFormat != videoFormatI420) return -1; - /* Convert I420 (same as IYUV) to XRGB. */ - - if (g_H264DumpFrames) - { - h264_dump_yuv_data(pYUVData, pSystemBuffer->iWidth, pSystemBuffer->iHeight, pSystemBuffer->iStride); - } - - g_H264FrameId++; - if (h264_prepare_rgb_buffer(h264, pSystemBuffer->iWidth, pSystemBuffer->iHeight) < 0) return -1; - freerdp_image_copy_yuv420p_to_xrgb(h264->data, h264->scanline, 0, 0, - h264->width, h264->height, pYUVData, pSystemBuffer->iStride, 0, 0); + roi.width = h264->width; + roi.height = h264->height; + + /* convert iStride[2] to srcStep[3] */ + srcStep[0] = pSystemBuffer->iStride[0]; + srcStep[1] = pSystemBuffer->iStride[1]; + srcStep[2] = pSystemBuffer->iStride[1]; + + prims->YUV420ToRGB_8u_P3AC4R((const BYTE**) pYUVData, srcStep, h264->data, h264->scanline, &roi); return 1; } @@ -408,8 +311,12 @@ static int libavcodec_decompress(H264_CONTEXT* h264, BYTE* pSrcData, UINT32 SrcS BYTE* pDstData, DWORD DstFormat, int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight) { int status; + int srcStep[3]; int gotFrame = 0; AVPacket packet; + prim_size_t roi; + const BYTE* pSrc[3]; + primitives_t* prims = primitives_get(); H264_CONTEXT_LIBAVCODEC* sys = (H264_CONTEXT_LIBAVCODEC*) h264->pSystemData; av_init_packet(&packet); @@ -425,26 +332,31 @@ static int libavcodec_decompress(H264_CONTEXT* h264, BYTE* pSrcData, UINT32 SrcS return -1; } +#if 0 printf("libavcodec_decompress: frame decoded (status=%d, gotFrame=%d, width=%d, height=%d, Y=[%p,%d], U=[%p,%d], V=[%p,%d])\n", status, gotFrame, sys->videoFrame->width, sys->videoFrame->height, sys->videoFrame->data[0], sys->videoFrame->linesize[0], sys->videoFrame->data[1], sys->videoFrame->linesize[1], sys->videoFrame->data[2], sys->videoFrame->linesize[2]); - - fflush(stdout); +#endif if (gotFrame) { - if (g_H264DumpFrames) - { - h264_dump_yuv_data(sys->videoFrame->data, sys->videoFrame->width, sys->videoFrame->height, sys->videoFrame->linesize); - } - if (h264_prepare_rgb_buffer(h264, sys->videoFrame->width, sys->videoFrame->height) < 0) return -1; - freerdp_image_copy_yuv420p_to_xrgb(h264->data, h264->scanline, 0, 0, - h264->width, h264->height, sys->videoFrame->data, sys->videoFrame->linesize, 0, 0); + roi.width = h264->width; + roi.height = h264->height; + + pSrc[0] = sys->videoFrame->data[0]; + pSrc[1] = sys->videoFrame->data[1]; + pSrc[2] = sys->videoFrame->data[2]; + + srcStep[0] = sys->videoFrame->linesize[0]; + srcStep[1] = sys->videoFrame->linesize[1]; + srcStep[2] = sys->videoFrame->linesize[2]; + + prims->YUV420ToRGB_8u_P3AC4R(pSrc, srcStep, h264->data, h264->scanline, &roi); } return 1; @@ -586,11 +498,6 @@ int h264_decompress(H264_CONTEXT* h264, BYTE* pSrcData, UINT32 SrcSize, *ppDstData = pDstData; } - if (g_H264DumpFrames) - { - h264_dump_h264_data(pSrcData, SrcSize); - } - return h264->subsystem->Decompress(h264, pSrcData, SrcSize, pDstData, DstFormat, nDstStep, nXDst, nYDst, nWidth, nHeight); } @@ -650,7 +557,7 @@ void h264_context_free(H264_CONTEXT* h264) { if (h264) { - free(h264->data); + _aligned_free(h264->data); h264->subsystem->Uninit(h264); diff --git a/libfreerdp/primitives/CMakeLists.txt b/libfreerdp/primitives/CMakeLists.txt index 9bc898c18..2c4ef7414 100644 --- a/libfreerdp/primitives/CMakeLists.txt +++ b/libfreerdp/primitives/CMakeLists.txt @@ -26,6 +26,7 @@ set(${MODULE_PREFIX}_SRCS prim_set.c prim_shift.c prim_sign.c + prim_YUV.c prim_YCoCg.c primitives.c prim_internal.h) diff --git a/libfreerdp/primitives/prim_YUV.c b/libfreerdp/primitives/prim_YUV.c new file mode 100644 index 000000000..000f14d8e --- /dev/null +++ b/libfreerdp/primitives/prim_YUV.c @@ -0,0 +1,97 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include +#include + +#include "prim_internal.h" +#include "prim_YUV.h" + +static INLINE BYTE clip(int x) +{ + if (x < 0) return 0; + if (x > 255) return 255; + return (BYTE) x; +} + +static INLINE UINT32 YUV_to_RGB(BYTE Y, BYTE U, BYTE V) +{ + BYTE R, G, B; + int Yp, Up, Vp; + + Yp = Y * 256; + Up = U - 128; + Vp = V - 128; + + R = clip((Yp + (403 * Vp)) >> 8); + G = clip((Yp - (48 * Up) - (120 * Vp)) >> 8); + B = clip((Yp + (475 * Up)) >> 8); + + return ARGB32(0xFF, R, G, B); +} + +pstatus_t general_YUV420ToRGB_8u_P3AC4R(const BYTE* pSrc[3], int srcStep[3], + BYTE* pDst, int dstStep, const prim_size_t* roi) +{ + int x, y; + BYTE Y, U, V; + const BYTE* pY; + const BYTE* pU; + const BYTE* pV; + BYTE* pRGB = pDst; + + pY = pSrc[0]; + + for (y = 0; y < roi->height; y++) + { + pU = pSrc[1] + (y / 2) * srcStep[1]; + pV = pSrc[2] + (y / 2) * srcStep[2]; + + for (x = 0; x < roi->width; x++) + { + Y = *pY; + U = pU[x / 2]; + V = pV[x / 2]; + + *((UINT32*) pRGB) = YUV_to_RGB(Y, U, V); + + pRGB += 4; + pY++; + } + + pRGB += (dstStep - (roi->width * 4)); + pY += (srcStep[0] - roi->width); + } + + return PRIMITIVES_SUCCESS; +} + +void primitives_init_YUV(primitives_t* prims) +{ + prims->YUV420ToRGB_8u_P3AC4R = general_YUV420ToRGB_8u_P3AC4R; +} + +void primitives_deinit_YUV(primitives_t* prims) +{ + +} diff --git a/libfreerdp/primitives/prim_YUV.h b/libfreerdp/primitives/prim_YUV.h new file mode 100644 index 000000000..12f796b61 --- /dev/null +++ b/libfreerdp/primitives/prim_YUV.h @@ -0,0 +1,27 @@ +/** + * FreeRDP: A Remote Desktop Protocol Implementation + * + * Copyright 2014 Marc-Andre Moreau + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FREERDP_PRIMITIVES_YUV_H +#define FREERDP_PRIMITIVES_YUV_H + +pstatus_t general_yCbCrToRGB_16s8u_P3AC4R(const INT16* pSrc[3], int srcStep, BYTE* pDst, int dstStep, const prim_size_t* roi); + +void primitives_init_YUV(primitives_t* prims); +void primitives_deinit_YUV(primitives_t* prims); + +#endif /* FREERDP_PRIMITIVES_YUV_H */ diff --git a/libfreerdp/primitives/prim_internal.h b/libfreerdp/primitives/prim_internal.h index e1a248c69..04c830a1c 100644 --- a/libfreerdp/primitives/prim_internal.h +++ b/libfreerdp/primitives/prim_internal.h @@ -35,54 +35,37 @@ : _mm_load_si128((__m128i *) (_ptr_))) /* Function prototypes for all the init/deinit routines. */ -extern void primitives_init_copy( - primitives_t *prims); -extern void primitives_deinit_copy( - primitives_t *prims); +extern void primitives_init_copy(primitives_t *prims); +extern void primitives_deinit_copy(primitives_t *prims); -extern void primitives_init_set( - primitives_t *prims); -extern void primitives_deinit_set( - primitives_t *prims); +extern void primitives_init_set(primitives_t *prims); +extern void primitives_deinit_set(primitives_t *prims); -extern void primitives_init_add( - primitives_t *prims); -extern void primitives_deinit_add( - primitives_t *prims); +extern void primitives_init_add(primitives_t *prims); +extern void primitives_deinit_add(primitives_t *prims); -extern void primitives_init_andor( - primitives_t *prims); -extern void primitives_deinit_andor( - primitives_t *prims); +extern void primitives_init_andor(primitives_t *prims); +extern void primitives_deinit_andor(primitives_t *prims); -extern void primitives_init_shift( - primitives_t *prims); -extern void primitives_deinit_shift( - primitives_t *prims); +extern void primitives_init_shift(primitives_t *prims); +extern void primitives_deinit_shift(primitives_t *prims); -extern void primitives_init_sign( - primitives_t *prims); -extern void primitives_deinit_sign( - primitives_t *prims); +extern void primitives_init_sign(primitives_t *prims); +extern void primitives_deinit_sign(primitives_t *prims); -extern void primitives_init_alphaComp( - primitives_t *prims); -extern void primitives_deinit_alphaComp( - primitives_t *prims); +extern void primitives_init_alphaComp(primitives_t *prims); +extern void primitives_deinit_alphaComp(primitives_t *prims); -extern void primitives_init_colors( - primitives_t *prims); -extern void primitives_deinit_colors( - primitives_t *prims); +extern void primitives_init_colors(primitives_t *prims); +extern void primitives_deinit_colors(primitives_t *prims); -extern void primitives_init_YCoCg( - primitives_t *prims); -extern void primitives_deinit_YCoCg( - primitives_t *prims); +extern void primitives_init_YCoCg(primitives_t *prims); +extern void primitives_deinit_YCoCg(primitives_t *prims); -extern void primitives_init_16to32bpp( - primitives_t *prims); -extern void primitives_deinit_16to32bpp( - primitives_t *prims); +extern void primitives_init_YUV(primitives_t *prims); +extern void primitives_deinit_YUV(primitives_t *prims); + +extern void primitives_init_16to32bpp(primitives_t *prims); +extern void primitives_deinit_16to32bpp(primitives_t *prims); #endif /* !__PRIM_INTERNAL_H_INCLUDED__ */ diff --git a/libfreerdp/primitives/primitives.c b/libfreerdp/primitives/primitives.c index dc8d038b9..dcdd5941a 100644 --- a/libfreerdp/primitives/primitives.c +++ b/libfreerdp/primitives/primitives.c @@ -32,11 +32,11 @@ static primitives_t* pPrimitives = NULL; /* ------------------------------------------------------------------------- */ void primitives_init(void) { - if (pPrimitives == NULL) + if (!pPrimitives) { pPrimitives = calloc(1, sizeof(primitives_t)); - if (pPrimitives == NULL) + if (!pPrimitives) return; } @@ -50,13 +50,14 @@ void primitives_init(void) primitives_init_sign(pPrimitives); primitives_init_colors(pPrimitives); primitives_init_YCoCg(pPrimitives); + primitives_init_YUV(pPrimitives); primitives_init_16to32bpp(pPrimitives); } /* ------------------------------------------------------------------------- */ primitives_t* primitives_get(void) { - if (pPrimitives == NULL) + if (!pPrimitives) primitives_init(); return pPrimitives; @@ -65,7 +66,7 @@ primitives_t* primitives_get(void) /* ------------------------------------------------------------------------- */ void primitives_deinit(void) { - if (pPrimitives == NULL) + if (!pPrimitives) return; /* Call each section's de-initialization routine. */ @@ -78,6 +79,7 @@ void primitives_deinit(void) primitives_deinit_sign(pPrimitives); primitives_deinit_colors(pPrimitives); primitives_deinit_YCoCg(pPrimitives); + primitives_deinit_YUV(pPrimitives); primitives_deinit_16to32bpp(pPrimitives); free((void*) pPrimitives); From 3203d37bdfed491709f30880f6aa78bd293b7e6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Sat, 6 Sep 2014 20:15:40 -0400 Subject: [PATCH 167/170] libfreerdp-primitives: optimize YUV420p to RGB conversion --- libfreerdp/primitives/prim_YUV.c | 206 +++++++++++++++++++++++++------ 1 file changed, 170 insertions(+), 36 deletions(-) diff --git a/libfreerdp/primitives/prim_YUV.c b/libfreerdp/primitives/prim_YUV.c index 000f14d8e..c57b122b8 100644 --- a/libfreerdp/primitives/prim_YUV.c +++ b/libfreerdp/primitives/prim_YUV.c @@ -27,60 +27,194 @@ #include "prim_internal.h" #include "prim_YUV.h" -static INLINE BYTE clip(int x) -{ - if (x < 0) return 0; - if (x > 255) return 255; - return (BYTE) x; -} - -static INLINE UINT32 YUV_to_RGB(BYTE Y, BYTE U, BYTE V) -{ - BYTE R, G, B; - int Yp, Up, Vp; - - Yp = Y * 256; - Up = U - 128; - Vp = V - 128; - - R = clip((Yp + (403 * Vp)) >> 8); - G = clip((Yp - (48 * Up) - (120 * Vp)) >> 8); - B = clip((Yp + (475 * Up)) >> 8); - - return ARGB32(0xFF, R, G, B); -} - pstatus_t general_YUV420ToRGB_8u_P3AC4R(const BYTE* pSrc[3], int srcStep[3], BYTE* pDst, int dstStep, const prim_size_t* roi) { int x, y; + int dstPad; + int srcPad[3]; BYTE Y, U, V; + int halfWidth; + int halfHeight; const BYTE* pY; const BYTE* pU; const BYTE* pV; + int R, G, B; + int Yp, Up, Vp; + int Up48, Up475; + int Vp403, Vp120; BYTE* pRGB = pDst; pY = pSrc[0]; + pU = pSrc[1]; + pV = pSrc[2]; - for (y = 0; y < roi->height; y++) + halfWidth = roi->width / 2; + halfHeight = roi->height / 2; + + srcPad[0] = (srcStep[0] - roi->width); + srcPad[1] = (srcStep[1] - halfWidth); + srcPad[2] = (srcStep[2] - halfWidth); + + dstPad = (dstStep - (roi->width * 4)); + + for (y = 0; y < halfHeight; y++) { - pU = pSrc[1] + (y / 2) * srcStep[1]; - pV = pSrc[2] + (y / 2) * srcStep[2]; - - for (x = 0; x < roi->width; x++) + for (x = 0; x < halfWidth; x++) { - Y = *pY; - U = pU[x / 2]; - V = pV[x / 2]; + U = *pU++; + V = *pV++; - *((UINT32*) pRGB) = YUV_to_RGB(Y, U, V); + Up = U - 128; + Vp = V - 128; - pRGB += 4; - pY++; + Up48 = 48 * Up; + Up475 = 475 * Up; + + Vp403 = Vp * 403; + Vp120 = Vp * 120; + + /* 1st pixel */ + + Y = *pY++; + Yp = Y << 8; + + R = (Yp + Vp403) >> 8; + G = (Yp - Up48 - Vp120) >> 8; + B = (Yp + Up475) >> 8; + + if (R < 0) + R = 0; + else if (R > 255) + R = 255; + + if (G < 0) + G = 0; + else if (G > 255) + G = 255; + + if (B < 0) + B = 0; + else if (B > 255) + B = 255; + + *pRGB++ = (BYTE) B; + *pRGB++ = (BYTE) G; + *pRGB++ = (BYTE) R; + *pRGB++ = 0xFF; + + /* 2nd pixel */ + + Y = *pY++; + Yp = Y << 8; + + R = (Yp + Vp403) >> 8; + G = (Yp - Up48 - Vp120) >> 8; + B = (Yp + Up475) >> 8; + + if (R < 0) + R = 0; + else if (R > 255) + R = 255; + + if (G < 0) + G = 0; + else if (G > 255) + G = 255; + + if (B < 0) + B = 0; + else if (B > 255) + B = 255; + + *pRGB++ = (BYTE) B; + *pRGB++ = (BYTE) G; + *pRGB++ = (BYTE) R; + *pRGB++ = 0xFF; } - pRGB += (dstStep - (roi->width * 4)); - pY += (srcStep[0] - roi->width); + pY += srcPad[0]; + pU -= halfWidth; + pV -= halfWidth; + pRGB += dstPad; + + for (x = 0; x < halfWidth; x++) + { + U = *pU++; + V = *pV++; + + Up = U - 128; + Vp = V - 128; + + Up48 = 48 * Up; + Up475 = 475 * Up; + + Vp403 = Vp * 403; + Vp120 = Vp * 120; + + /* 3rd pixel */ + + Y = *pY++; + Yp = Y << 8; + + R = (Yp + Vp403) >> 8; + G = (Yp - Up48 - Vp120) >> 8; + B = (Yp + Up475) >> 8; + + if (R < 0) + R = 0; + else if (R > 255) + R = 255; + + if (G < 0) + G = 0; + else if (G > 255) + G = 255; + + if (B < 0) + B = 0; + else if (B > 255) + B = 255; + + *pRGB++ = (BYTE) B; + *pRGB++ = (BYTE) G; + *pRGB++ = (BYTE) R; + *pRGB++ = 0xFF; + + /* 4th pixel */ + + Y = *pY++; + Yp = Y << 8; + + R = (Yp + Vp403) >> 8; + G = (Yp - Up48 - Vp120) >> 8; + B = (Yp + Up475) >> 8; + + if (R < 0) + R = 0; + else if (R > 255) + R = 255; + + if (G < 0) + G = 0; + else if (G > 255) + G = 255; + + if (B < 0) + B = 0; + else if (B > 255) + B = 255; + + *pRGB++ = (BYTE) B; + *pRGB++ = (BYTE) G; + *pRGB++ = (BYTE) R; + *pRGB++ = 0xFF; + } + + pY += srcPad[0]; + pU += srcPad[1]; + pV += srcPad[2]; + pRGB += dstPad; } return PRIMITIVES_SUCCESS; From bd516e04fa6726c3a69966209a0d8f0575c6cd44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Sat, 6 Sep 2014 21:13:37 -0400 Subject: [PATCH 168/170] libfreerdp-primitives: cleanup YCoCg --- client/X11/xf_client.c | 1 + include/freerdp/primitives.h | 4 +- libfreerdp/codec/planar.c | 4 +- libfreerdp/core/capabilities.c | 13 ++- libfreerdp/core/settings.c | 4 + libfreerdp/primitives/prim_YCoCg.c | 102 ++++++++++-------- libfreerdp/primitives/prim_YCoCg.h | 2 +- libfreerdp/primitives/prim_YCoCg_opt.c | 14 +-- .../primitives/test/TestPrimitivesYCoCg.c | 8 +- 9 files changed, 86 insertions(+), 66 deletions(-) diff --git a/client/X11/xf_client.c b/client/X11/xf_client.c index a803edf74..d43ed6359 100644 --- a/client/X11/xf_client.c +++ b/client/X11/xf_client.c @@ -810,6 +810,7 @@ BOOL xf_pre_connect(freerdp *instance) xfc->fullscreen_toggle = settings->ToggleFullscreen; xf_detect_monitors(xfc, settings); xfc->colormap = DefaultColormap(xfc->display, xfc->screen_number); + return TRUE; } diff --git a/include/freerdp/primitives.h b/include/freerdp/primitives.h index e75e8c69c..d47300c01 100644 --- a/include/freerdp/primitives.h +++ b/include/freerdp/primitives.h @@ -152,7 +152,7 @@ typedef pstatus_t (*__RGBToRGB_16s8u_P3AC4R_t)( const INT16 *pSrc[3], INT32 srcStep, BYTE *pDst, INT32 dstStep, const prim_size_t *roi); -typedef pstatus_t (*__YCoCgRToRGB_8u_AC4R_t)( +typedef pstatus_t (*__YCoCgToRGB_8u_AC4R_t)( const BYTE *pSrc, INT32 srcStep, BYTE *pDst, INT32 dstStep, UINT32 width, UINT32 height, @@ -211,7 +211,7 @@ typedef struct __yCbCrToRGB_16s16s_P3P3_t yCbCrToRGB_16s16s_P3P3; __RGBToYCbCr_16s16s_P3P3_t RGBToYCbCr_16s16s_P3P3; __RGBToRGB_16s8u_P3AC4R_t RGBToRGB_16s8u_P3AC4R; - __YCoCgRToRGB_8u_AC4R_t YCoCgRToRGB_8u_AC4R; + __YCoCgToRGB_8u_AC4R_t YCoCgToRGB_8u_AC4R; __RGB565ToARGB_16u32u_C3C4_t RGB565ToARGB_16u32u_C3C4; __YUV420ToRGB_8u_P3AC4R_t YUV420ToRGB_8u_P3AC4R; } primitives_t; diff --git a/libfreerdp/codec/planar.c b/libfreerdp/codec/planar.c index a48795a21..5a3e35e6a 100644 --- a/libfreerdp/codec/planar.c +++ b/libfreerdp/codec/planar.c @@ -336,7 +336,7 @@ int planar_decompress(BITMAP_PLANAR_CONTEXT* planar, BYTE* pSrcData, UINT32 SrcS { static BOOL been_warned = FALSE; if (!been_warned) - DEBUG_WARN( "Chroma-Subsampling is not implemented.\n"); + DEBUG_WARN("Chroma-Subsampling is not implemented.\n"); been_warned = TRUE; } else @@ -346,7 +346,7 @@ int planar_decompress(BITMAP_PLANAR_CONTEXT* planar, BYTE* pSrcData, UINT32 SrcS alpha = (FormatHeader & PLANAR_FORMAT_HEADER_NA) ? FALSE : TRUE; cll = FormatHeader & PLANAR_FORMAT_HEADER_CLL_MASK; - primitives_get()->YCoCgRToRGB_8u_AC4R( + primitives_get()->YCoCgToRGB_8u_AC4R( pDstData, nDstStep, pDstData, nDstStep, nWidth, nHeight, cll, alpha, FALSE); } diff --git a/libfreerdp/core/capabilities.c b/libfreerdp/core/capabilities.c index 168f05d8e..91bc8a931 100644 --- a/libfreerdp/core/capabilities.c +++ b/libfreerdp/core/capabilities.c @@ -361,7 +361,15 @@ void rdp_write_bitmap_capability_set(wStream* s, rdpSettings* settings) header = rdp_capability_set_start(s); - drawingFlags |= DRAW_ALLOW_SKIP_ALPHA; + if (settings->DrawAllowSkipAlpha) + drawingFlags |= DRAW_ALLOW_SKIP_ALPHA; + + if (settings->DrawAllowColorSubsampling) + drawingFlags |= DRAW_ALLOW_DYNAMIC_COLOR_FIDELITY; + + if (settings->DrawAllowDynamicColorFidelity) + drawingFlags |= DRAW_ALLOW_COLOR_SUBSAMPLING; /* currently unimplemented */ + /* While bitmap_decode.c now implements YCoCg, in turning it * on we have found Microsoft is inconsistent on whether to invert R & B. * And it's not only from one server to another; on Win7/2008R2, it appears @@ -370,9 +378,6 @@ void rdp_write_bitmap_capability_set(wStream* s, rdpSettings* settings) * will not send it. YCoCg is still needed for EGFX, but it at least * appears consistent in its use. */ - /* drawingFlags |= DRAW_ALLOW_DYNAMIC_COLOR_FIDELITY; */ - /* YCoCg with chroma subsampling is not implemented in bitmap_decode.c. */ - /* drawingFlags |= DRAW_ALLOW_COLOR_SUBSAMPLING; */ if (settings->RdpVersion > 5) preferredBitsPerPixel = settings->ColorDepth; diff --git a/libfreerdp/core/settings.c b/libfreerdp/core/settings.c index 0eec9b087..3c070827d 100644 --- a/libfreerdp/core/settings.c +++ b/libfreerdp/core/settings.c @@ -321,6 +321,10 @@ rdpSettings* freerdp_settings_new(DWORD flags) settings->DrawGdiPlusEnabled = FALSE; + settings->DrawAllowSkipAlpha = TRUE; + settings->DrawAllowColorSubsampling = FALSE; + settings->DrawAllowDynamicColorFidelity = FALSE; + settings->FrameMarkerCommandEnabled = TRUE; settings->SurfaceFrameMarkerEnabled = TRUE; settings->BitmapCacheV3Enabled = FALSE; diff --git a/libfreerdp/primitives/prim_YCoCg.c b/libfreerdp/primitives/prim_YCoCg.c index 3e7505676..ca6484795 100644 --- a/libfreerdp/primitives/prim_YCoCg.c +++ b/libfreerdp/primitives/prim_YCoCg.c @@ -33,7 +33,7 @@ #endif /* !MINMAX */ /* ------------------------------------------------------------------------- */ -pstatus_t general_YCoCgRToRGB_8u_AC4R( +pstatus_t general_YCoCgToRGB_8u_AC4R( const BYTE *pSrc, INT32 srcStep, BYTE *pDst, INT32 dstStep, UINT32 width, UINT32 height, @@ -41,75 +41,85 @@ pstatus_t general_YCoCgRToRGB_8u_AC4R( BOOL withAlpha, BOOL invert) { - const BYTE *sptr = pSrc; + BYTE A; + int x, y; BYTE *dptr = pDst; + const BYTE *sptr = pSrc; + INT16 Cg, Co, Y, T, R, G, B; int cll = shift - 1; /* -1 builds in the /2's */ - int x,y; - int srcRowBump = srcStep - width*sizeof(UINT32); - int dstRowBump = dstStep - width*sizeof(UINT32); + int srcPad = srcStep - (width * 4); + int dstPad = dstStep - (width * 4); + if (invert) { - for (y=0; yINT16 */ - a = *sptr++; - if (!withAlpha) a = 0xFFU; - t = y - cg; - r = t + co; - g = y + cg; - b = t - co; - *dptr++ = (BYTE) MINMAX(r, 0, 255); - *dptr++ = (BYTE) MINMAX(g, 0, 255); - *dptr++ = (BYTE) MINMAX(b, 0, 255); - *dptr++ = a; + Cg = (INT16) ((INT8) ((*sptr++) << cll)); + Co = (INT16) ((INT8) ((*sptr++) << cll)); + Y = (INT16) (*sptr++); /* UINT8->INT16 */ + + A = *sptr++; + + if (!withAlpha) + A = 0xFFU; + + T = Y - Cg; + R = T + Co; + G = Y + Cg; + B = T - Co; + + *dptr++ = (BYTE) MINMAX(R, 0, 255); + *dptr++ = (BYTE) MINMAX(G, 0, 255); + *dptr++ = (BYTE) MINMAX(B, 0, 255); + *dptr++ = A; } - sptr += srcRowBump; - dptr += dstRowBump; + + sptr += srcPad; + dptr += dstPad; } } else { - for (y=0; yINT16 */ - a = *sptr++; - if (!withAlpha) a = 0xFFU; - t = y - cg; - r = t + co; - g = y + cg; - b = t - co; - *dptr++ = (BYTE) MINMAX(b, 0, 255); - *dptr++ = (BYTE) MINMAX(g, 0, 255); - *dptr++ = (BYTE) MINMAX(r, 0, 255); - *dptr++ = a; + Cg = (INT16) ((INT8) ((*sptr++) << cll)); + Co = (INT16) ((INT8) ((*sptr++) << cll)); + Y = (INT16) (*sptr++); /* UINT8->INT16 */ + + A = *sptr++; + + if (!withAlpha) + A = 0xFFU; + + T = Y - Cg; + R = T + Co; + G = Y + Cg; + B = T - Co; + + *dptr++ = (BYTE) MINMAX(B, 0, 255); + *dptr++ = (BYTE) MINMAX(G, 0, 255); + *dptr++ = (BYTE) MINMAX(R, 0, 255); + *dptr++ = A; } - sptr += srcRowBump; - dptr += dstRowBump; + + sptr += srcPad; + dptr += dstPad; } } + return PRIMITIVES_SUCCESS; } /* ------------------------------------------------------------------------- */ void primitives_init_YCoCg(primitives_t* prims) { - prims->YCoCgRToRGB_8u_AC4R = general_YCoCgRToRGB_8u_AC4R; + prims->YCoCgToRGB_8u_AC4R = general_YCoCgToRGB_8u_AC4R; primitives_init_YCoCg_opt(prims); } diff --git a/libfreerdp/primitives/prim_YCoCg.h b/libfreerdp/primitives/prim_YCoCg.h index aa3929aff..c03715bda 100644 --- a/libfreerdp/primitives/prim_YCoCg.h +++ b/libfreerdp/primitives/prim_YCoCg.h @@ -24,7 +24,7 @@ #ifndef __PRIM_YCOCG_H_INCLUDED__ #define __PRIM_YCOCG_H_INCLUDED__ -pstatus_t general_YCoCgRToRGB_8u_AC4R(const BYTE *pSrc, INT32 srcStep, BYTE *pDst, INT32 dstStep, UINT32 width, UINT32 height, UINT8 shift, BOOL withAlpha, BOOL invert); +pstatus_t general_YCoCgToRGB_8u_AC4R(const BYTE *pSrc, INT32 srcStep, BYTE *pDst, INT32 dstStep, UINT32 width, UINT32 height, UINT8 shift, BOOL withAlpha, BOOL invert); void primitives_init_YCoCg_opt(primitives_t* prims); diff --git a/libfreerdp/primitives/prim_YCoCg_opt.c b/libfreerdp/primitives/prim_YCoCg_opt.c index 51fce1fc3..e022662b3 100644 --- a/libfreerdp/primitives/prim_YCoCg_opt.c +++ b/libfreerdp/primitives/prim_YCoCg_opt.c @@ -69,7 +69,7 @@ static pstatus_t ssse3_YCoCgRToRGB_8u_AC4R_invert( if ((width < 8) || (ULONG_PTR) dptr & 0x03) { /* Too small, or we'll never hit a 16-byte boundary. Punt. */ - return general_YCoCgRToRGB_8u_AC4R(pSrc, srcStep, + return general_YCoCgToRGB_8u_AC4R(pSrc, srcStep, pDst, dstStep, width, height, shift, withAlpha, TRUE); } @@ -83,7 +83,7 @@ static pstatus_t ssse3_YCoCgRToRGB_8u_AC4R_invert( { int startup = (16 - ((ULONG_PTR) dptr & 0x0f)) / 4; if (startup > width) startup = width; - general_YCoCgRToRGB_8u_AC4R(sptr, srcStep, dptr, dstStep, + general_YCoCgToRGB_8u_AC4R(sptr, srcStep, dptr, dstStep, startup, 1, shift, withAlpha, TRUE); sptr += startup * sizeof(UINT32); dptr += startup * sizeof(UINT32); @@ -185,7 +185,7 @@ static pstatus_t ssse3_YCoCgRToRGB_8u_AC4R_invert( /* Handle any remainder pixels. */ if (w > 0) { - general_YCoCgRToRGB_8u_AC4R(sptr, srcStep, dptr, dstStep, + general_YCoCgToRGB_8u_AC4R(sptr, srcStep, dptr, dstStep, w, 1, shift, withAlpha, TRUE); sptr += w * sizeof(UINT32); dptr += w * sizeof(UINT32); @@ -228,7 +228,7 @@ static pstatus_t ssse3_YCoCgRToRGB_8u_AC4R_no_invert( if ((width < 8) || (ULONG_PTR) dptr & 0x03) { /* Too small, or we'll never hit a 16-byte boundary. Punt. */ - return general_YCoCgRToRGB_8u_AC4R(pSrc, srcStep, + return general_YCoCgToRGB_8u_AC4R(pSrc, srcStep, pDst, dstStep, width, height, shift, withAlpha, FALSE); } @@ -242,7 +242,7 @@ static pstatus_t ssse3_YCoCgRToRGB_8u_AC4R_no_invert( { int startup = (16 - ((ULONG_PTR) dptr & 0x0f)) / 4; if (startup > width) startup = width; - general_YCoCgRToRGB_8u_AC4R(sptr, srcStep, dptr, dstStep, + general_YCoCgToRGB_8u_AC4R(sptr, srcStep, dptr, dstStep, startup, 1, shift, withAlpha, FALSE); sptr += startup * sizeof(UINT32); dptr += startup * sizeof(UINT32); @@ -348,7 +348,7 @@ static pstatus_t ssse3_YCoCgRToRGB_8u_AC4R_no_invert( /* Handle any remainder pixels. */ if (w > 0) { - general_YCoCgRToRGB_8u_AC4R(sptr, srcStep, dptr, dstStep, + general_YCoCgToRGB_8u_AC4R(sptr, srcStep, dptr, dstStep, w, 1, shift, withAlpha, FALSE); sptr += w * sizeof(UINT32); dptr += w * sizeof(UINT32); @@ -393,7 +393,7 @@ void primitives_init_YCoCg_opt(primitives_t* prims) if (IsProcessorFeaturePresentEx(PF_EX_SSSE3) && IsProcessorFeaturePresent(PF_SSE3_INSTRUCTIONS_AVAILABLE)) { - prims->YCoCgRToRGB_8u_AC4R = ssse3_YCoCgRToRGB_8u_AC4R; + prims->YCoCgToRGB_8u_AC4R = ssse3_YCoCgRToRGB_8u_AC4R; } #endif /* WITH_SSE2 */ } diff --git a/libfreerdp/primitives/test/TestPrimitivesYCoCg.c b/libfreerdp/primitives/test/TestPrimitivesYCoCg.c index d6f4d4289..c280b5be3 100644 --- a/libfreerdp/primitives/test/TestPrimitivesYCoCg.c +++ b/libfreerdp/primitives/test/TestPrimitivesYCoCg.c @@ -28,7 +28,7 @@ static const float TEST_TIME = 4.0; extern BOOL g_TestPrimitivesPerformance; -extern pstatus_t general_YCoCgRToRGB_8u_AC4R(const BYTE *pSrc, INT32 srcStep, +extern pstatus_t general_YCoCgToRGB_8u_AC4R(const BYTE *pSrc, INT32 srcStep, BYTE *pDst, INT32 dstStep, UINT32 width, UINT32 height, UINT8 shift, BOOL withAlpha, BOOL invert); extern pstatus_t ssse3_YCoCgRToRGB_8u_AC4R(const BYTE *pSrc, INT32 srcStep, @@ -48,9 +48,9 @@ int test_YCoCgRToRGB_8u_AC4R_func(void) testStr[0] = '\0'; get_random_data(in, sizeof(in)); - general_YCoCgRToRGB_8u_AC4R((const BYTE *) (in+1), 63*4, + general_YCoCgToRGB_8u_AC4R((const BYTE *) (in+1), 63*4, (BYTE *) out_c, 63*4, 63, 61, 2, TRUE, FALSE); - general_YCoCgRToRGB_8u_AC4R((const BYTE *) (in+1), 63*4, + general_YCoCgToRGB_8u_AC4R((const BYTE *) (in+1), 63*4, (BYTE *) out_c_inv, 63*4, 63, 61, 2, TRUE, TRUE); #ifdef WITH_SSE2 if (IsProcessorFeaturePresentEx(PF_EX_SSSE3)) @@ -86,7 +86,7 @@ int test_YCoCgRToRGB_8u_AC4R_func(void) /* ------------------------------------------------------------------------- */ STD_SPEED_TEST( ycocg_to_rgb_speed, const BYTE, BYTE, PRIM_NOP, - TRUE, general_YCoCgRToRGB_8u_AC4R(src1, 64*4, dst, 64*4, 64, 64, 2, FALSE, FALSE), + TRUE, general_YCoCgToRGB_8u_AC4R(src1, 64*4, dst, 64*4, 64, 64, 2, FALSE, FALSE), #ifdef WITH_SSE2 TRUE, ssse3_YCoCgRToRGB_8u_AC4R(src1, 64*4, dst, 64*4, 64, 64, 2, FALSE, FALSE), PF_EX_SSSE3, TRUE, From 5b8fb70e8cc9d3c132d1802a02ef0c6c048956c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Sun, 7 Sep 2014 14:08:29 -0400 Subject: [PATCH 169/170] libfreerdp-codec: simplify and optimize planar raw rgb decoding --- libfreerdp/codec/planar.c | 233 ++++++++++++++++++++++++++++++++++---- 1 file changed, 209 insertions(+), 24 deletions(-) diff --git a/libfreerdp/codec/planar.c b/libfreerdp/codec/planar.c index 5a3e35e6a..d6727f610 100644 --- a/libfreerdp/codec/planar.c +++ b/libfreerdp/codec/planar.c @@ -24,9 +24,9 @@ #include #include +#include #include #include -#include #include "planar.h" @@ -204,15 +204,78 @@ static int planar_decompress_plane_raw(BYTE* pSrcData, UINT32 SrcSize, BYTE* pDs return (int) (srcp - pSrcData); } +static int planar_decompress_rgb_planes_raw(const BYTE* pSrcData[4], int nSrcStep, BYTE* pDstData, + int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight, BOOL alpha, BOOL vFlip) +{ + int x, y; + int beg, end, inc; + BYTE* pRGB = pDstData; + const BYTE* pR = pSrcData[0]; + const BYTE* pG = pSrcData[1]; + const BYTE* pB = pSrcData[2]; + const BYTE* pA = pSrcData[3]; + + if (vFlip) + { + beg = nHeight - 1; + end = -1; + inc = -1; + } + else + { + beg = 0; + end = nHeight; + inc = 1; + } + + if (alpha) + { + for (y = beg; y != end; y += inc) + { + pRGB = &pDstData[((nYDst + y) * nDstStep) + (nXDst * 4)]; + + for (x = 0; x < nWidth; x++) + { + *pRGB++ = *pB++; + *pRGB++ = *pG++; + *pRGB++ = *pR++; + *pRGB++ = *pA++; + } + } + } + else + { + for (y = beg; y != end; y += inc) + { + pRGB = &pDstData[((nYDst + y) * nDstStep) + (nXDst * 4)]; + + for (x = 0; x < nWidth; x++) + { + *pRGB++ = *pB++; + *pRGB++ = *pG++; + *pRGB++ = *pR++; + *pRGB++ = 0xFF; + } + } + } + + return 1; +} + int planar_decompress(BITMAP_PLANAR_CONTEXT* planar, BYTE* pSrcData, UINT32 SrcSize, BYTE** ppDstData, DWORD DstFormat, int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight) { + BOOL cs; + BOOL rle; + UINT32 cll; + BOOL alpha; int status; BYTE* srcp; BOOL vFlip; BYTE FormatHeader; BYTE* pDstData = NULL; UINT32 UncompressedSize; + const primitives_t* prims = primitives_get(); if ((nWidth * nHeight) <= 0) return -1; @@ -237,11 +300,142 @@ int planar_decompress(BITMAP_PLANAR_CONTEXT* planar, BYTE* pSrcData, UINT32 SrcS FormatHeader = *srcp; srcp++; + cll = (FormatHeader & PLANAR_FORMAT_HEADER_CLL_MASK); + cs = (FormatHeader & PLANAR_FORMAT_HEADER_CS) ? TRUE : FALSE; + rle = (FormatHeader & PLANAR_FORMAT_HEADER_RLE) ? TRUE : FALSE; + alpha = (FormatHeader & PLANAR_FORMAT_HEADER_NA) ? FALSE : TRUE; + + //printf("CLL: %d CS: %d RLE: %d ALPHA: %d\n", cll, cs, rle, alpha); + + if (!cll) /* RGB */ + { + if (!rle) /* RAW */ + { + int planeSize; + const BYTE* planes[4]; + + planeSize = nWidth * nHeight; + + if (alpha) + { + if ((SrcSize - (srcp - pSrcData)) < (planeSize * 4)) + return -1; + + planes[3] = &srcp[planeSize * 0]; /* AlphaPlane */ + planes[0] = &srcp[planeSize * 1]; /* RedPlane */ + planes[1] = &srcp[planeSize * 2]; /* GreenPlane */ + planes[2] = &srcp[planeSize * 3]; /* BluePlane */ + + planar_decompress_rgb_planes_raw(planes, nWidth, pDstData, nDstStep, + nXDst, nYDst, nWidth, nHeight, alpha, vFlip); + + srcp += (planeSize * 4); + srcp++; /* pad */ + } + else /* NoAlpha */ + { + if ((SrcSize - (srcp - pSrcData)) < (planeSize * 3)) + return -1; + + planes[0] = &srcp[planeSize * 0]; /* RedPlane */ + planes[1] = &srcp[planeSize * 1]; /* GreenPlane */ + planes[2] = &srcp[planeSize * 2]; /* BluePlane */ + + planar_decompress_rgb_planes_raw(planes, nWidth, pDstData, nDstStep, + nXDst, nYDst, nWidth, nHeight, alpha, vFlip); + + srcp += (planeSize * 3); + srcp++; /* pad */ + } + } + else /* RLE */ + { + if (alpha) + { + /* AlphaPlane */ + + status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 3, vFlip); + + if (status < 0) + return -1; + + srcp += status; + + /* RedPlane */ + + status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 2, vFlip); + + if (status < 0) + return -1; + + srcp += status; + + /* GreenPlane */ + + status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 1, vFlip); + + if (status < 0) + return -1; + + srcp += status; + + /* BluePlane */ + + status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 0, vFlip); + + if (status < 0) + return -1; + + srcp += status; + } + else /* NoAlpha */ + { + /* RedPlane */ + + status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 2, vFlip); + + if (status < 0) + return -1; + + srcp += status; + + /* GreenPlane */ + + status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 1, vFlip); + + if (status < 0) + return -1; + + srcp += status; + + /* BluePlane */ + + status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 0, vFlip); + + if (status < 0) + return -1; + + srcp += status; + } + } + + status = (SrcSize == (srcp - pSrcData)) ? 1 : -1; + + return status; + } + /* AlphaPlane */ - if (!(FormatHeader & PLANAR_FORMAT_HEADER_NA)) + if (alpha) { - if (FormatHeader & PLANAR_FORMAT_HEADER_RLE) + if (rle) { status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 3, vFlip); @@ -263,9 +457,9 @@ int planar_decompress(BITMAP_PLANAR_CONTEXT* planar, BYTE* pSrcData, UINT32 SrcS } } - if (FormatHeader & PLANAR_FORMAT_HEADER_RLE) + if (rle) { - /* LumaOrRedPlane */ + /* LumaPlane */ status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 2, vFlip); @@ -275,7 +469,7 @@ int planar_decompress(BITMAP_PLANAR_CONTEXT* planar, BYTE* pSrcData, UINT32 SrcS srcp += status; - /* OrangeChromaOrGreenPlane */ + /* OrangeChromaPlane */ status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 1, vFlip); @@ -285,7 +479,7 @@ int planar_decompress(BITMAP_PLANAR_CONTEXT* planar, BYTE* pSrcData, UINT32 SrcS srcp += status; - /* GreenChromeOrBluePlane */ + /* GreenChromaPlane */ status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 0, vFlip); @@ -297,7 +491,7 @@ int planar_decompress(BITMAP_PLANAR_CONTEXT* planar, BYTE* pSrcData, UINT32 SrcS } else { - /* LumaOrRedPlane */ + /* LumaPlane */ status = planar_decompress_plane_raw(srcp, SrcSize - (srcp - pSrcData), pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 2, vFlip); @@ -307,7 +501,7 @@ int planar_decompress(BITMAP_PLANAR_CONTEXT* planar, BYTE* pSrcData, UINT32 SrcS srcp += status; - /* OrangeChromaOrGreenPlane */ + /* OrangeChromaPlane */ status = planar_decompress_plane_raw(srcp, SrcSize - (srcp - pSrcData), pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 1, vFlip); @@ -317,7 +511,7 @@ int planar_decompress(BITMAP_PLANAR_CONTEXT* planar, BYTE* pSrcData, UINT32 SrcS srcp += status; - /* GreenChromeOrBluePlane */ + /* GreenChromaPlane */ status = planar_decompress_plane_raw(srcp, SrcSize - (srcp - pSrcData), pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 0, vFlip); @@ -329,26 +523,17 @@ int planar_decompress(BITMAP_PLANAR_CONTEXT* planar, BYTE* pSrcData, UINT32 SrcS srcp++; } - if (FormatHeader & PLANAR_FORMAT_HEADER_CLL_MASK) + if (cll) { /* The data is in YCoCg colorspace rather than RGB. */ - if (FormatHeader & PLANAR_FORMAT_HEADER_CS) + if (cs) { - static BOOL been_warned = FALSE; - if (!been_warned) - DEBUG_WARN("Chroma-Subsampling is not implemented.\n"); - been_warned = TRUE; + DEBUG_WARN("Chroma-Subsampling is not implemented"); } else { - BOOL alpha; - int cll; - - alpha = (FormatHeader & PLANAR_FORMAT_HEADER_NA) ? FALSE : TRUE; - cll = FormatHeader & PLANAR_FORMAT_HEADER_CLL_MASK; - primitives_get()->YCoCgToRGB_8u_AC4R( - pDstData, nDstStep, pDstData, nDstStep, - nWidth, nHeight, cll, alpha, FALSE); + prims->YCoCgToRGB_8u_AC4R(pDstData, nDstStep, + pDstData, nDstStep, nWidth, nHeight, cll, alpha, FALSE); } } From ad9092baf957037e8d6d5a0ac9d26cba1f32e864 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Sun, 7 Sep 2014 15:40:36 -0400 Subject: [PATCH 170/170] libfreerdp-codec: cleanup and restructure planar decompressor for chroma subsampling --- libfreerdp/codec/planar.c | 500 ++++++++++++++++++++------------------ 1 file changed, 269 insertions(+), 231 deletions(-) diff --git a/libfreerdp/codec/planar.c b/libfreerdp/codec/planar.c index d6727f610..37ce3ed7e 100644 --- a/libfreerdp/codec/planar.c +++ b/libfreerdp/codec/planar.c @@ -30,11 +30,60 @@ #include "planar.h" -static int planar_decompress_plane_rle(BYTE* pSrcData, UINT32 SrcSize, BYTE* pDstData, +static int planar_skip_plane_rle(const BYTE* pSrcData, UINT32 SrcSize, int nWidth, int nHeight) +{ + int x, y; + int cRawBytes; + int nRunLength; + BYTE controlByte; + const BYTE* pRLE = pSrcData; + const BYTE* pEnd = &pSrcData[SrcSize]; + + for (y = 0; y < nHeight; y++) + { + for (x = 0; x < nWidth; ) + { + if (pRLE >= pEnd) + return -1; + + controlByte = *pRLE++; + + nRunLength = PLANAR_CONTROL_BYTE_RUN_LENGTH(controlByte); + cRawBytes = PLANAR_CONTROL_BYTE_RAW_BYTES(controlByte); + + if (nRunLength == 1) + { + nRunLength = cRawBytes + 16; + cRawBytes = 0; + } + else if (nRunLength == 2) + { + nRunLength = cRawBytes + 32; + cRawBytes = 0; + } + + pRLE += cRawBytes; + x += cRawBytes; + cRawBytes = 0; + + x += nRunLength; + nRunLength = 0; + + if (x > nWidth) + return -1; + + if (pRLE > pEnd) + return -1; + } + } + + return (int) (pRLE - pSrcData); +} + +static int planar_decompress_plane_rle(const BYTE* pSrcData, UINT32 SrcSize, BYTE* pDstData, int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight, int nChannel, BOOL vFlip) { int x, y; - BYTE* srcp; BYTE* dstp; UINT32 pixel; int cRawBytes; @@ -44,8 +93,8 @@ static int planar_decompress_plane_rle(BYTE* pSrcData, UINT32 SrcSize, BYTE* pDs BYTE controlByte; BYTE* currentScanline; BYTE* previousScanline; + const BYTE* srcp = pSrcData; - srcp = pSrcData; dstp = pDstData; previousScanline = NULL; @@ -168,43 +217,7 @@ static int planar_decompress_plane_rle(BYTE* pSrcData, UINT32 SrcSize, BYTE* pDs return (int) (srcp - pSrcData); } -static int planar_decompress_plane_raw(BYTE* pSrcData, UINT32 SrcSize, BYTE* pDstData, - int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight, int nChannel, BOOL vFlip) -{ - int x, y; - int beg, end, inc; - BYTE* dstp = NULL; - BYTE* srcp = pSrcData; - - if (vFlip) - { - beg = nHeight - 1; - end = -1; - inc = -1; - } - else - { - beg = 0; - end = nHeight; - inc = 1; - } - - for (y = beg; y != end; y += inc) - { - dstp = &pDstData[((nYDst + y) * nDstStep) + (nXDst * 4) + nChannel]; - - for (x = 0; x < nWidth; x++) - { - *dstp = *srcp; - dstp += 4; - srcp++; - } - } - - return (int) (srcp - pSrcData); -} - -static int planar_decompress_rgb_planes_raw(const BYTE* pSrcData[4], int nSrcStep, BYTE* pDstData, +static int planar_decompress_planes_raw(const BYTE* pSrcData[4], int nSrcStep, BYTE* pDstData, int nDstStep, int nXDst, int nYDst, int nWidth, int nHeight, BOOL alpha, BOOL vFlip) { int x, y; @@ -272,8 +285,17 @@ int planar_decompress(BITMAP_PLANAR_CONTEXT* planar, BYTE* pSrcData, UINT32 SrcS int status; BYTE* srcp; BOOL vFlip; + int subSize; + int subWidth; + int subHeight; + int planeSize; + BYTE* pDstData; + int rleSizes[4]; + int rawSizes[4]; + int rawWidths[4]; + int rawHeights[4]; BYTE FormatHeader; - BYTE* pDstData = NULL; + const BYTE* planes[4]; UINT32 UncompressedSize; const primitives_t* prims = primitives_get(); @@ -297,8 +319,7 @@ int planar_decompress(BITMAP_PLANAR_CONTEXT* planar, BYTE* pSrcData, UINT32 SrcS *ppDstData = pDstData; } - FormatHeader = *srcp; - srcp++; + FormatHeader = *srcp++; cll = (FormatHeader & PLANAR_FORMAT_HEADER_CLL_MASK); cs = (FormatHeader & PLANAR_FORMAT_HEADER_CS) ? TRUE : FALSE; @@ -307,234 +328,251 @@ int planar_decompress(BITMAP_PLANAR_CONTEXT* planar, BYTE* pSrcData, UINT32 SrcS //printf("CLL: %d CS: %d RLE: %d ALPHA: %d\n", cll, cs, rle, alpha); + if (!cll && cs) + return -1; /* Chroma subsampling requires YCoCg */ + + subWidth = (nWidth / 2) + (nWidth % 2); + subHeight = (nHeight / 2) + (nHeight % 2); + + planeSize = nWidth * nHeight; + subSize = subWidth * subHeight; + + if (!cs) + { + rawSizes[0] = planeSize; /* LumaOrRedPlane */ + rawWidths[0] = nWidth; + rawHeights[0] = nHeight; + + rawSizes[1] = planeSize; /* OrangeChromaOrGreenPlane */ + rawWidths[1] = nWidth; + rawHeights[1] = nHeight; + + rawSizes[2] = planeSize; /* GreenChromaOrBluePlane */ + rawWidths[2] = nWidth; + rawHeights[2] = nHeight; + + rawSizes[3] = planeSize; /* AlphaPlane */ + rawWidths[3] = nWidth; + rawHeights[3] = nHeight; + } + else /* Chroma Subsampling */ + { + rawSizes[0] = planeSize; /* LumaOrRedPlane */ + rawWidths[0] = nWidth; + rawHeights[0] = nHeight; + + rawSizes[1] = subSize; /* OrangeChromaOrGreenPlane */ + rawWidths[1] = subWidth; + rawHeights[1] = subHeight; + + rawSizes[2] = subSize; /* GreenChromaOrBluePlane */ + rawWidths[2] = subWidth; + rawHeights[2] = subHeight; + + rawSizes[3] = planeSize; /* AlphaPlane */ + rawWidths[3] = nWidth; + rawHeights[3] = nHeight; + } + + if (!rle) /* RAW */ + { + if (alpha) + { + planes[3] = srcp; /* AlphaPlane */ + planes[0] = planes[3] + rawSizes[3]; /* LumaOrRedPlane */ + planes[1] = planes[0] + rawSizes[0]; /* OrangeChromaOrGreenPlane */ + planes[2] = planes[1] + rawSizes[1]; /* GreenChromaOrBluePlane */ + + if ((planes[2] + rawSizes[2]) > &pSrcData[SrcSize]) + return -1; + } + else + { + if ((SrcSize - (srcp - pSrcData)) < (planeSize * 3)) + return -1; + + planes[0] = srcp; /* LumaOrRedPlane */ + planes[1] = planes[0] + rawSizes[0]; /* OrangeChromaOrGreenPlane */ + planes[2] = planes[1] + rawSizes[1]; /* GreenChromaOrBluePlane */ + + if ((planes[2] + rawSizes[2]) > &pSrcData[SrcSize]) + return -1; + } + } + else /* RLE */ + { + if (alpha) + { + planes[3] = srcp; + rleSizes[3] = planar_skip_plane_rle(planes[3], SrcSize - (planes[3] - pSrcData), + rawWidths[3], rawHeights[3]); /* AlphaPlane */ + + if (rleSizes[3] < 0) + return -1; + + planes[0] = planes[3] + rleSizes[3]; + rleSizes[0] = planar_skip_plane_rle(planes[0], SrcSize - (planes[0] - pSrcData), + rawWidths[0], rawHeights[0]); /* RedPlane */ + + if (rleSizes[0] < 0) + return -1; + + planes[1] = planes[0] + rleSizes[0]; + rleSizes[1] = planar_skip_plane_rle(planes[1], SrcSize - (planes[1] - pSrcData), + rawWidths[1], rawHeights[1]); /* GreenPlane */ + + if (rleSizes[1] < 1) + return -1; + + planes[2] = planes[1] + rleSizes[1]; + rleSizes[2] = planar_skip_plane_rle(planes[2], SrcSize - (planes[2] - pSrcData), + rawWidths[2], rawHeights[2]); /* BluePlane */ + + if (rleSizes[2] < 1) + return -1; + } + else + { + planes[0] = srcp; + rleSizes[0] = planar_skip_plane_rle(planes[0], SrcSize - (planes[0] - pSrcData), + rawWidths[0], rawHeights[0]); /* RedPlane */ + + if (rleSizes[0] < 0) + return -1; + + planes[1] = planes[0] + rleSizes[0]; + rleSizes[1] = planar_skip_plane_rle(planes[1], SrcSize - (planes[1] - pSrcData), + rawWidths[1], rawHeights[1]); /* GreenPlane */ + + if (rleSizes[1] < 1) + return -1; + + planes[2] = planes[1] + rleSizes[1]; + rleSizes[2] = planar_skip_plane_rle(planes[2], SrcSize - (planes[2] - pSrcData), + rawWidths[2], rawHeights[2]); /* BluePlane */ + + if (rleSizes[2] < 1) + return -1; + } + } + if (!cll) /* RGB */ { if (!rle) /* RAW */ { - int planeSize; - const BYTE* planes[4]; - - planeSize = nWidth * nHeight; - if (alpha) { - if ((SrcSize - (srcp - pSrcData)) < (planeSize * 4)) - return -1; - - planes[3] = &srcp[planeSize * 0]; /* AlphaPlane */ - planes[0] = &srcp[planeSize * 1]; /* RedPlane */ - planes[1] = &srcp[planeSize * 2]; /* GreenPlane */ - planes[2] = &srcp[planeSize * 3]; /* BluePlane */ - - planar_decompress_rgb_planes_raw(planes, nWidth, pDstData, nDstStep, + planar_decompress_planes_raw(planes, nWidth, pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, alpha, vFlip); - srcp += (planeSize * 4); - srcp++; /* pad */ + srcp += rawSizes[0] + rawSizes[1] + rawSizes[2] + rawSizes[3]; } else /* NoAlpha */ { - if ((SrcSize - (srcp - pSrcData)) < (planeSize * 3)) - return -1; - - planes[0] = &srcp[planeSize * 0]; /* RedPlane */ - planes[1] = &srcp[planeSize * 1]; /* GreenPlane */ - planes[2] = &srcp[planeSize * 2]; /* BluePlane */ - - planar_decompress_rgb_planes_raw(planes, nWidth, pDstData, nDstStep, + planar_decompress_planes_raw(planes, nWidth, pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, alpha, vFlip); - srcp += (planeSize * 3); - srcp++; /* pad */ + srcp += rawSizes[0] + rawSizes[1] + rawSizes[2]; } + + if ((SrcSize - (srcp - pSrcData)) == 1) + srcp++; /* pad */ } else /* RLE */ { if (alpha) { - /* AlphaPlane */ + status = planar_decompress_plane_rle(planes[3], rleSizes[3], + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 3, vFlip); /* AlphaPlane */ - status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), - pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 3, vFlip); + status = planar_decompress_plane_rle(planes[0], rleSizes[0], + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 2, vFlip); /* RedPlane */ - if (status < 0) - return -1; + status = planar_decompress_plane_rle(planes[1], rleSizes[1], + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 1, vFlip); /* GreenPlane */ - srcp += status; + status = planar_decompress_plane_rle(planes[2], rleSizes[2], + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 0, vFlip); /* BluePlane */ - /* RedPlane */ - - status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), - pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 2, vFlip); - - if (status < 0) - return -1; - - srcp += status; - - /* GreenPlane */ - - status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), - pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 1, vFlip); - - if (status < 0) - return -1; - - srcp += status; - - /* BluePlane */ - - status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), - pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 0, vFlip); - - if (status < 0) - return -1; - - srcp += status; + srcp += rleSizes[0] + rleSizes[1] + rleSizes[2] + rleSizes[3]; } else /* NoAlpha */ { - /* RedPlane */ + status = planar_decompress_plane_rle(planes[0], rleSizes[0], + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 2, vFlip); /* RedPlane */ - status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), - pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 2, vFlip); + status = planar_decompress_plane_rle(planes[1], rleSizes[1], + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 1, vFlip); /* GreenPlane */ - if (status < 0) - return -1; + status = planar_decompress_plane_rle(planes[2], rleSizes[2], + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 0, vFlip); /* BluePlane */ - srcp += status; + srcp += rleSizes[0] + rleSizes[1] + rleSizes[2]; + } + } + } + else /* YCoCg */ + { + if (cs) + { + fprintf(stderr, "Chroma subsampling unimplemented\n"); + return -1; + } - /* GreenPlane */ + if (!rle) /* RAW */ + { + if (alpha) + { + planar_decompress_planes_raw(planes, nWidth, pDstData, nDstStep, + nXDst, nYDst, nWidth, nHeight, alpha, vFlip); - status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), - pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 1, vFlip); + srcp += rawSizes[0] + rawSizes[1] + rawSizes[2] + rawSizes[3]; + } + else /* NoAlpha */ + { + planar_decompress_planes_raw(planes, nWidth, pDstData, nDstStep, + nXDst, nYDst, nWidth, nHeight, alpha, vFlip); - if (status < 0) - return -1; + srcp += rawSizes[0] + rawSizes[1] + rawSizes[2]; + } - srcp += status; + if ((SrcSize - (srcp - pSrcData)) == 1) + srcp++; /* pad */ + } + else /* RLE */ + { + if (alpha) + { + status = planar_decompress_plane_rle(planes[3], rleSizes[3], + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 3, vFlip); /* AlphaPlane */ - /* BluePlane */ + status = planar_decompress_plane_rle(planes[0], rleSizes[0], + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 2, vFlip); /* LumaPlane */ - status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), - pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 0, vFlip); + status = planar_decompress_plane_rle(planes[1], rleSizes[1], + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 1, vFlip); /* OrangeChromaPlane */ - if (status < 0) - return -1; + status = planar_decompress_plane_rle(planes[2], rleSizes[2], + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 0, vFlip); /* GreenChromaPlane */ - srcp += status; + srcp += rleSizes[0] + rleSizes[1] + rleSizes[2] + rleSizes[3]; + } + else /* NoAlpha */ + { + status = planar_decompress_plane_rle(planes[0], rleSizes[0], + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 2, vFlip); /* LumaPlane */ + + status = planar_decompress_plane_rle(planes[1], rleSizes[1], + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 1, vFlip); /* OrangeChromaPlane */ + + status = planar_decompress_plane_rle(planes[2], rleSizes[2], + pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 0, vFlip); /* GreenChromaPlane */ + + srcp += rleSizes[0] + rleSizes[1] + rleSizes[2]; } } - status = (SrcSize == (srcp - pSrcData)) ? 1 : -1; - - return status; - } - - /* AlphaPlane */ - - if (alpha) - { - if (rle) - { - status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), - pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 3, vFlip); - - if (status < 0) - return -1; - - srcp += status; - } - else - { - status = planar_decompress_plane_raw(srcp, SrcSize - (srcp - pSrcData), - pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 3, vFlip); - - if (status < 0) - return -1; - - srcp += status; - } - } - - if (rle) - { - /* LumaPlane */ - - status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), - pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 2, vFlip); - - if (status < 0) - return -1; - - srcp += status; - - /* OrangeChromaPlane */ - - status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), - pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 1, vFlip); - - if (status < 0) - return -1; - - srcp += status; - - /* GreenChromaPlane */ - - status = planar_decompress_plane_rle(srcp, SrcSize - (srcp - pSrcData), - pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 0, vFlip); - - if (status < 0) - return -1; - - srcp += status; - } - else - { - /* LumaPlane */ - - status = planar_decompress_plane_raw(srcp, SrcSize - (srcp - pSrcData), - pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 2, vFlip); - - if (status < 0) - return -1; - - srcp += status; - - /* OrangeChromaPlane */ - - status = planar_decompress_plane_raw(srcp, SrcSize - (srcp - pSrcData), - pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 1, vFlip); - - if (status < 0) - return -1; - - srcp += status; - - /* GreenChromaPlane */ - - status = planar_decompress_plane_raw(srcp, SrcSize - (srcp - pSrcData), - pDstData, nDstStep, nXDst, nYDst, nWidth, nHeight, 0, vFlip); - - if (status < 0) - return -1; - - srcp += status; - srcp++; - } - - if (cll) - { - /* The data is in YCoCg colorspace rather than RGB. */ - if (cs) - { - DEBUG_WARN("Chroma-Subsampling is not implemented"); - } - else - { - prims->YCoCgToRGB_8u_AC4R(pDstData, nDstStep, - pDstData, nDstStep, nWidth, nHeight, cll, alpha, FALSE); - } + prims->YCoCgToRGB_8u_AC4R(pDstData, nDstStep, pDstData, nDstStep, nWidth, nHeight, cll, alpha, FALSE); } status = (SrcSize == (srcp - pSrcData)) ? 1 : -1;

  • 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ℜHZ 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�(yAh_^|7ffMJf`Ugg4YSbe=a$d~NB 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 literal 143173 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�JXu^bCXK$%u{8Ati7jE$rLY_#bf&j=apMI(4>$%v zd$H7sW3#)fSWdIvlHa~)>R{flaK+h8foL`jP1Z4^ZR`ALjq6S0hAl0)%HzCXOAG$H zU1`hVljZtoqh05}^E!)cCam_rdIV@jt^)cl$X~Tem~I;sP!qZG(Z8nxA3rWkPHusTn2tG9VB$wT&C;X-~ts1VWkN+zetCd?{~lBWXeeQ}C zVdSaOkul^-MKkE0Lait{cUq!PAMIM8^iHIx5|soFI?5KUaFBV7D3-}Pqj5vvTKn>L zH|OwWCjB+t$-DbSzDOe?Yq;_uhg`6FLqA0I3WWxTk>hD;CndKN>oaW>rb*DwHa!kj zR;(MX zDQ9sI&53t3NTvO>%F;r+YD&0EN|fF|(G?k(9g0Z5xcBD^KPxty=p-+=*ASSOS7(_$ zm}2zCJ=burF=X7z^n9*y@%%d3VePA4LAn4LdT!B!x0zBu5!4@LNyEoeZN`*n@Hpd` zSJ1L#L8|$1uUjtz5-A)x#^A-ISQk91c5E1re>@)RP*Yg!cn4>=oz}sqg-CGHoMYH= zN6A?4G^e@)%gta%|5A>XBWq|WfCo8}8U${grVM|4tPaIp#!js|qDm{tarO@B za_AJ9jw^i>QhTCy1cINnvF6Rw z?_Wd*2p1KulYRqlTGnMg5%~?2mI>dQJ)qthC@pub_C}SFaXz2*BytjyH7z}-+KT0MB_h)m?0+to|@QaVnl*X$<7Qr zDPTlv$Tt}IHwc07_r;TsDACQUyx=9cFaI_4iKxAecJ%n)PCtA{{hL#?r6!ETM%a&H z5Ywuj&+j!bfoDz@Gcy`r!Ahh+vr*Gn(E|!Xp6LbBg0n2@%C=FFb6? zd=FN*A`lwJdgN-a8qUgJa3P6Hf?sJm#$JUorv=I4LoH zC>@(h)WxlgEUgW~{mgjgB*F12=Irh{VD01wlS>4jUQLNmqR}I7$J_<8DMNoUyl6qi zwkB;Vfco7#oivUn-hz`fCBjK>DOeYia1`yD{$Qs{74cT**p!vES8}vSH8Mdn(7{hS z8QNF9vsuy~BfJtbTw5nV1vr}sN1lO81G6~~dL+QUlu@fgX`fi<`y+PiA@UO~TUTz; z49=oC$VSG#QQgg=3cYx+u&%+z;z<@U8#8^cn}@d!zR;4FPL~h1eevmIWV`Vne{weq zUoR45lKw*=?N?XWGrcKRR^ebM2*AAQSOMHyds}B0lOTP@%|j(0iqW@__Ad<=2kuQY zwkGx(Fd@%TV2oiCuSlPuou|nw5}QZ?vAoAo;G%2tfpKyzG7MO!^F+cb3;2NltWCIz3YkrW zgXeqoUBtjyZ_SB72BwopW#C{NUlno#FsyAdv{qv-SooHI)H{C>*7@nG?|P5!=t#Vr zhBRSfOFDGy)mvm=#LS#`t9A>19%Q%*nd9{A9UzRopl+@8$_VnURyE4H18Voz%zw+% z3AR|;9L)QaVu`-dfm*DQ&}@tGzxJIBC;K=D~syxdcoB<)iY# zuitdw#q-Cc*}on7{p-Ft6ZM__sy!($+*`Wz#@br(8{dylX5TM|vIalYyCFu&1DJ%_ zsCJwe%6;dB+>dDzH4T*z#x}2+DPLv+9lkHI)I{~I%%#=A6wT1Bf>MPT<*CxBHRDSCds9OoS zTm#Yp@`050Xe$N2vM-=IJD%2sCq{m-@DOAc%pHh6DIdqQ>J@l34or z@u#0Haj<1)K*sm`A1;=>Si$hu$Q)LESY`<|DeQwcrv$&HpTxB5V8?kL!G$?2Rz?1t zBu|pB&WIiu{&dpWUqDp9WnP~|uMc+=7#uTNEZC{+)QFpwzYpjiVa?#;1s&{;aEE}H z$5!}FpZ7ji=)?%EvgZ zWyf6f@F{!xQIWLi%jS&`Ak*zry}nFaN;J)>@nN2J3Tip|^XkOZ{KPm5XV@bnz5K<-T0J!Yl7%s>HR(d0>_%K3v1^=;J~G3u(!40|3Nqm#YMI;edirX11USM=$E|`^Tmj^ zsyR;am%qOQi1m=&5y2Q7E!O?RH)mGaspoT}ju`)R1bfM0Y;YVv%-vn}5FTQ^#%{*W zjl}L2)v<4(unhX3;AAiO^R7m?fSvBx)WezSGiI5^TAy|_5nj422C>DCnZl}db)w)|5frBK+u@p zpTCp-+rakfHlfVL;lj^K_Xa7Av4|%kgGmx{C^^V1KTP|@)u5wV<#H-*7*w7|8At)* zq@@~fI%3!d4>{Dd3=|_EBLFevl0ycF%3f*9RXDGQ4XEedcT#XfPnXc@cF0bbNT7wN zDFSUxhS%fE-W&H>WVB#~L^DC0x*uvuQ)2I-lA*^qUjpDI%%EX`o{}%_zn$5Dk)Cz1 zT_s4QY`YqH^HuGucuT(IH~DUpaI^AXI&8y%#!6*IKA`cd^+DZfm4LBLZ{9RXEuppY z0 ztC>}}&}>MLdMMYyoJ>^|thtAZLR|Tg0Q;3r9Mo@(CI7!eD}~kh`VexJ zYO_ALC=84K8tIw3(D;AeTL>WzzA{-#58tVufwUrMl=e?eljsR8)(I_ENSsRam6hJg zA(g3}shyy8fL4b?wxM3@4h$md1-lA%Nh`ghkKm8Jk+3o+UB=Vi;EJ;t6$U{UFcqT4 z%ILm^8>fCQa#t#%$Uu|dVr^+MZzbF0uB@plQmf#-&LfM^5=eH%-G!5lS0rYwwUP^; za(H?lAUH4Nx%QTd)2)c-PnVSq!eUH zlNjlqWtYjcH#_ZrtJkY4*TiB+Tr~UXgwTuP%vm$0`;S&6M{wUjTtbLXBF@SgvU{@f zZiYWV%-T5pkjYUhl{A7xdY%Gkh}Hm6UK2we+F~{_T>FC5cI-LCBbP#&cK`KG|FTE< z&hwM1P9N!+iH=h|`Cy#1qlV4c#>5?kW}$tRytB}A^S8zHS}Qe; za+>_-B+Mv1v{;g1^!CYpCdEl@&7hr>&)_m<(Hf$k{Dm95#a9uf8TrF=P6>L2b|ry- zT_`I9hbF)7ujk0>A*T7^+4-+~H*|a;={dVDCbKu(nPfR82nJE_wbpl`1?FOSru*ex zqDfa)IOk(_jS2#J@4Z5f?CXNoSGB$u#_lS0VxL(b$Zcw6R$bU=SGWt5Jo;d=U}x1< znl~|+99UJC6vq>>H+VPse6@NjaTZ%euRA@Uv<*EC1eUfx@1U+uhKZ9`pb%sUO#R>uFcRS?dRs4br!#N+)2SCuwq$VF_Q6!QJ=@O`JMU?uO-) zgG-beuG{5THyEGINu3AbE=ySMU_D++V_flUt9nUZ#}M}!n`UEH0m;?4W9!waFUO_4 z^e^!o5joF>xDT#Cd`^gE^JMs^d@KDcMEv5(?^B2ALUSroSCQf=hGVbZx)=05XD44N zLg73woO%R!=}Yo)pvJDi^wzR|Bv6y*qo3>bgFt2t_y7X%^a_j86YZxZn=oDa#!i{g zq1U8JiYL1ZfRL1ZXxCGN-v(T@H?tdSX7=te)FU?mP;dKccSV8%h-#18nG4nmgN?7um(q4u;O0FA zkuTb3n%JYl;$7$^J#M#PK2%eFKL5IfX&kL_UH*0Jl>d4MzldzCrt18%xBbQ$T9bE^ zH!mp-UDUUpZKyt!qHW&RQ7x$rrMmR)CVLhoX}zOg_DU0(H6P>dG{Fz+GTNhl%O7M!QfStV^QA(~QYyG|q#O#uCH z(3SX;_(v~!Ty}-}l(WK8l16h6)tDxc4VS0L_-rb_-#Q4zEHL$qaI*J8xx6lejPPlW zoLb(7Dg(vj<7qIglISA>Nf)xbWmaSjQx3YD|6DAdcL~?nJjTn;D7%Y;aWHW!jLKnN z!iu+Y40FIx!R{c#Q>a~~{Q|o{BJ}CvU!Y;f`AyTP%c$ViG7Y40a>+I@f&kqWSTCom zo|MYziJhO@GR>?=lvS4eyrW*u>a<>fLAsaebN@5d5tU{9u$ARK+3{1B&1Q)X>D@Uk zE2+TObke25rGi%H8z4cNZP zXnh#p&Xi~@ZFYFb^tEutkx*ZU6vIiH?f^Y0&K!Y0>Go^dayXVudEe^Yd&qfhB^5u^ z4~Kw*4lt%ftORtM-f$wEuXs(x;?5_xff}ZB$gXlk1Fi@AoIhj&ae>#(la->)IrC!g8~nO{zzE6HYA*I`X#0!Ca!9S5kkVwB zbm?;&vgSo3xfEB0BUEn991u|87wStO!mr0&j^A(VLw$;X#X~8-x1hlGYKPf~DgyP# z&ywGmJwT)W(3bMdd0PaZ?+osp8E(pEWuw-8?o>?A&5<=RzTIUvM=&{CBbiB9?&M~T z%bjOX-to5Lt@ecZkqe0gg6HazHHWCH`czY;Nw6}O2-jRBLsRpvy=Bk}`1 zEB06Jm?2Rrn+u(EEs;874MLVvDXkM z+GYpw05SB`?5RMED+;*?$;)U^7t2iTB04fq2b7sT4jG`hc(y@b0*Bvbz&SW+^n)gh zmu-8egtsW}NE_bHY@v*GQ>@tb5jz*qV8T+;T$dz}Fe~_3*f#!tOU9;IMyK2=!3f); z(#_$!zJE<>jIrXM4?L6unba=1k-nJh-+m-9Uv)Vl~WHmzlvEE`j* z;gW~m>^LA#hiQSba>L=4*At(;pJ$ww6u)CyR9Qc-9Cn%){WuD?`RRvT-~XiXsecCL(V&8A;) zdPO*x5xK&;;91%C6&P(ul2E3l?!8S%bw(3MX-!8Bl<)&dtB)Gw>5L+r;k%9TQfVj% zEg?n2C|G%0hyLT586X8X@PkK7tfYcE`7afDMH%~-s`|}JolY9`=m@tiKOkvTi)`s6 zCX{&p@eE9Fj|uYpee1nP=jlInXQ>r7(qZ! zC+p(o11(Q9=y(lyOSxMcvZcro!agFY&6-5Im>9811^4-Q8*a29*d`MiMzmwZ2!j2rl-8H zRc}5o+X4xb8fnsrP!TM0TlOo+I*jJSMD1&UaOYMU#CJWEzjVY)!Pv9(set9txi4S( zgm^0OtW9?g65+4SkNSjJL33DpKhj0|_Z+MGojr|o%!0&~RVQIA>rNJUUHt}4ZqIc; zqPl_<{a^fW9C2LyBpNso+)SBGlP#$MfJrvOMPz-y%#K2S%uvWr%2Bu}##-Z~=&r_J zJeOP;&Bf`a>j!tP6|aR3MgKByofRy^6uWfmAn(5Ap6OA|xu9)xqL+@d;EU&s$q?W7 z#_2#F#=6t@*3uLiZP7HDV4M0jqepQnz$I!#>Y~ShoBMTuhXdv{O<`a_F{j+Q>fIz# z&)2@nZ4$K{V@P^l_;sbycyVRvVp3Kv&=z#5cc_!!4R5!r+%l9yvz=zMU?E+QEV=63 zN1U+yfh)I3+H|NM(ZPb9m!_h9fwn1opQ<)`uF$J6QnTLomdM2`IZqqWC#7V{MKmrV z1P?Te9%#9u=fL2Hg0t78iYMC*IKV$bDH+*ofbDYVs*(?+(6SS4f1*6A|Yq^ zZ-X1ahCz|q^I~e$ZdVDpGvcFgt2(E7SNw~&wdxeCIbtjoMCW+q3z^iUy1U*Cs!Jy; zaR#htjjAM$80SHa^N(?zCu#f)KKo6_8BT2f7su$+()+tze)zCQ_MFMM8r*rd zSMz?W5$3Kvwn38Y9k^UDueS{n4@0k2;@$KI^NN|u^q?y9`vG8p)ORh|G8t30O!s^& z*${WeMn{TMKhLgw%JVq4*dA$+agecq(JsRuDeBebD$gD=mf6_s_NLgFCb4N2>aCfI z1SNsb>+@SBBBSTG3a)FBFc!7@c^}lT|CbZOwk)V36W`CfPOy?(H`UIAy|0SyJ)2oO zA9eRIwF6n28=7}T&AAz7BY9`A{>(a!u8opD+;=wX92xy$53WMBI~U*87eq^3uL7#O z+{0@|uoL@tvYs0Ii>prjchcf(lY(27y-+bB2p3UU5E(|@AHb=mPm6xYEeTRF2mD8; zeZG>FSNLmio`5tez(D7soUt>1XCd4+Y5WZVMWaB*2{GY0xbdlDEb}JT*NVH2!y@xn zQ3wXy-Z#*{c9qA|Q_J!*%EUZKO`{%YI;xEZU5a!x8pAJ`SJ6GhusBnI;Qr{dfYFi> zf$a0B(cui%$SUC*=GFN?Z^-}1i_hbv_cwr#Kh127FhQN@j?zz>A5372nDt!G<4KbPLfWX2^NHs`Hxnr4H-8ke@|{6(UjN*W3*T zv18Q702cwUajhicS%az}8Hn2Uf(q3|$^$%e0S#G?{LA{db*%btKdk^O-X zmvP|kQJ+|3F*(NSt!GFNxGqd7dvfvKCW2~^!|t|7Y$0qx^Bd`DQRyT}ewAE^S=B-y zEGW2jt~$UC2Oikuf-tKpZmj_@Zcm%(!T*_{+4Iixe*0(JkrG(i^%h-1+8>CDIcq@$ zsg8)%&(qH{XqZQMm#D-_!Ls=V3ol+?7dq3`+|zu6!d^d6`HB6r8wOz$ns(_C;&k@G z*56{aD`vps=NE>F#D?yjq-I>?j+U9v%{u)CDOewF574|GT3f0O(Gz#3Y%xlcVy#uX zRUD3rszDy#NZM;}mp|L}ZLBJ;E7hdtnz5`nSMgV(FH0kr)|l%RdCC46 zxug@h#JR0mM7+k#IGL?An1=n;AEWW7jq4zA;G8x@YM+`6pBBO3>JpBz+O>Q2iYTAk zYGE<{RPC&-7IMGs6kFs3|L-E;R?Q{MVq1P3=9<&y#|vj+ysgXS}6b6L1> znx{V=moGaL~f)2a*YIJ{qXSswHeT1_p5T_y01AO*rJTUccj-qdXD<3 z&XcZGn{cY|mfo0dqcJ!DjPpi06dcE-?K?RrVx=Mk&5A1`u!zOX25NSsrH|n?45`<~ zpPnJFP+L6H*AMoTk0r;F;p9{tNb|8s$%o0Fr7LSOF{*+R4wk*4sPb4FV>pW0^jxfS zbH+}@$KuezlT_tW?#b?*NW1tZk2+Lj>R@9VBSMU#aJ)l}Q#s%S@R|1X8)^<3*3!^?3+JK7*EMq)1-FwgnG{pZ#9 z%(X=yuS2lC7|)Mws?6onQVaf{L^Gq?LYI~0HFt}$N|Ca_`ACc;aXvC`5_lS?Am5@{ zvvX2Ea|+*pMxg)t?p$D}sMdJa;OFWr>MTyTlDB8UnZ%v?;idxRRi5a76LAB*+>wEx zqV(+)P$aV<9^3N+Fl?yQc^u|#js~c-Q$j1cE=s(TDQea`M%8i z2tLng{wZsve((qT3vUD+*-*WnJd^!K=a|YFQJaqJf}4cd-40}NvVq=FF{=y~1^FKf zal|RzU2~Ibm1|X_HK;+e;?^J>V`ZVft^Z<1XCkR9Tk?L*iXEGxA!i2R0j#82OFjc* zCEr}!PmMzf?D2xxBqiFr(bBAEOuAC?3&7A~RrxJu)mn(?o`_s30^L8HO{_Hnp5W&3 z4s?9WGniMXL*Fewj+`vMVm3;h`|X9<%MNmtpx&KoW*I=9zI|cdChVWd)K*JuOl7C^ ztQE?TcJ-5BsjeWZMI&OVjWKpSM9()CWbQfgeaRM?abWx9LzmMmI7c`~h@OhS1va0a z(YSrqbmKtAO^c|)vl*}uaZs<>(|=)10fXRK%nP+-^@V4TYZWXgIcKT^Zvq#Cr@jqB zWU|k3n7NkT%L6T`!nMLNQ<(`pb9}ZpeCSHOkM$G6`)yy~yn)-aMQ_abK91m+U6o@` zvVo@tEn#3TeW(s;n9@;?kfBN7B~DA0w%LI)Mln}T3W9N5MpO@PnfC=m{O13}+7Akm zTIAXKP=rQfZo$ zJAiyKo^hr)mbkwpGyvEI$-C1@(Rgsfyjs5{*hnmr-sPl0zQ$C$bCJ};>owa-9Nf90 z;iM6)GJi{BUSo}57B(KOaup4Mh&L|B-p*4wO4E}!Uxbd^rzW8Mw1d<-Bzbq^w*^mW z!S$OtHdE2w8+^~73PSTYza#tbhXV0o>fZE6SEou-Zy#Tz8MV-ia&?yd|0HIR=k|>h zAu2B`$9lT`79-N@^DEK$hohz6KbQ*YHrV3OyCn?~ve@CUnX?aN=XOZ(aO71-l!McV zQ;~lS;J221qq8W&1+&Kv-At+bAM8DOWG+wA%ZtSXFNXMn8CX-al%oFivk_ zoT0Ge=+AB#`VHul9lD+jD-|SFcx>CNPSr;zlORT5_&IA`I*H+6VSWL|W6uH}&?1wl znVt`fbmj`6LbDRhEgtv zH57P#f7+z`9i?3Fg>A@y7;~Aw`8Uf(G;rEq;X2X0R+IOcs=_gCDT^}4bl*4OA(;!K zetEy`>wOd0`OMSCstYbcSoHPabMw}XjgGHvuN><|$`8f+?!9kJhHAPS+R)J0Gw6Qs z=1kL*FtY~|tCpKH?cd{$@%)gZe(A*P7LT$mWNIz%W5G)@N8pjCv8-0zKNZ-WBzReK z#6&vWkFl<=WJnE$6|sSlGLaTk!L2idg97iv*-vK#Xpy2(^o18AJYD%=ZGh_+*0PJ1FTTbDwLwuYG zB?piiDXw*nwe;WG7gNg=_yIGDRTBq;SxWt>iIRKHtb5MXuEH`XraVMZrzXBEmFUbw zEZWw)i|#8kH{r94%_6Y$xUxP*jJKXW4bR0!73T~hqL%pqpH8jXQuVn2SRYwSQk>h~ zPb>x<7?*=?fqYnQnD~e`;VMrcb0yRd1{31yJ55`pqsLKJ;HM-#BH2IBVdiV}v$6MBQ}UVSU5RO;e|2r)7mEZQFr zHbW1_$Uzi-0vbEk@qub)S7=KbiZ=Tu|87cjA$i4&AjU*v^B$ z&mi94<#4ZP4TrR?vsq`O7CW?^W=;H?c@e9TV1d88^xsy!2N%c z29Z9oz`#N2LJhnC%QopN7`p1~D3@Q%UdYW}U|gH@8?4Ua$dvE&7Pp5c zE23_djiwSH^+&p;u_F^>pGEAFnIYgWoNPw-{)YPX_^y!zMPOrK)5MtARP^t}}(ek7v^3_wcal7VE5zjHGxQ1hI-ttq}Lm-*;y z2AV)sWv%*Q^Dgt@t<}Wvo(k5n?Jk`L3WFG*e+|}`rzy4{6}_GL_q9i9ihu~{HF0%# zQe&KzY5%;VT3V9HsXxrTMoq41t^?zq(Usp-xT}np#*aqwM@$}`@0>{~@c&dlS7M)| z?*FMaxv%mc4C&eet~b#@tMx5w|&)2Y3k#ksgwg12inixJ!(+9s8)SVGIyZjRPAE; z90sO(-c8p+R!()aTZGVsSS=atnACV%g81)g zlj2l*HEuW?1rhdyw5iNp}N2BXRJ`yKZ?MqAQss{6hcjnXl~ z=-nN-3MIi=EB%y@zLU zKF6rG^q2r#5`lWG9w~W7uJdX}0}=E1?)xc< z%k#JVKAt=SPXi3jS~YuFThyPfr8Pm5+nP4TPQs*N=o!6w3u_Bj=`_(Boe|-L26-p-mFAGcO+pap`!gQ6rn@cU>#$ejdeR_Aro`7)C2~y!++0s4v@&qM$aq<+A1bnM+-#-%wkmYH3NR=G zXnU=-C|Eh(uHaQ31?3wW*)YT=0m`00crui(JQ3=N?IwrOTIs!;jN9&Zc3b1au|$2_ zP4h0}q%TVwq|-KRB;HZKD|#aspK*ByX+6U~5!)0r`?Aia)Eu8BIb4k+dYm+RouBG>pho&O5gnp#_@G!Lt zW^%l5dhSV0g)rDzt4*O2}+l5g#b6NTS!IzVgUrVo86QI*D$H^kSRLSh&}g?`2VN7I>r zHFf9R|0aPzFag;rVW(`7AVLZSaV!B8*`xuHO+l8VRj`P>!P3$~B0EA^B%oH>1hE8$ zy;70d8U<;9z8zEqTCoFy^CBRlOvS2b|K~c-|7mD$fLaX6y}#f2p7S|Y%G~pUXCw=B zmtN)$Rma8n{PsdH?xS1#`zrmky&K#GG^;G@~#sZuYyOl6^dHmcIqQ~|3uqI zpVp$4Qq&TgiZo^pry-k_VamA)44|}bqXvu_%&rrO^s=DJM3*uPPSfdzIRUom>EQfr zShN~EjM`dyf`@KZBbFi(3mg9?4q>6y9&EwUc-m=m>w*lJ0@5;*kJSp|&f_&*c<)E{ zw74Uk^kV$e@yf(CDk)6($G#eD z;NMnYsEF_~*4PvCcBVu3D_!qF0&T!p z6?TPjUCW?=z@!x$0!pKAqd)g?Xa@z2B-6rZDz7M_UyE=12_1J&KagERK@*`-n$nV-lgNg=M)&CH25FrXJ$EWKYE((X>u=!yJDZg$}(w> zt&#ygS*f2m59| z#i~AP^|IN>eI(3@(afIdn%Dl0tCTvJ;fL3Yx)?}*y~*}Wob1Ya9i0qvjL&nyS_JNQ z)P|Lz7IimCX?h$F<62fTtXus8?{MNQa%C&91&0o;?i;y8g) zH9Z680yI5dvPyiI{@#rYoZ`vD$O@gMBv;!%e{&~4Jlwpc^&#L_+*Gt+a;p6h6hBb! zqvE8cf__s`3!DE-zW)&d*)@MYvxm$skBPh3Y1TqTbBNXgUF2(*21awvsUsMu6PCZ0PTthQ@7dZ z<62%7Wxtw-gaeje+|9+MTD1Q$VG=s895Ztw!8DS4R-37H7R^r? z77)*LdkqVmRbTYNnimVFhy*S@LzKPA8w4A?YqAVm8Fw?lJupN_sAu9`l3iD5_}vUU zJv8#8zPlMNc7xv*5^l`KmvUkQn%g%yOv+(b~!Ib3EpX}*px|XjC_Za{nc$( z&JLM){7LnU;2mhs#U3vG{4s?D{b-oIyZ2AM2e|}qpgi)8OOhBdLFteZWoJqC;h4|M)8wS}EKRXrLA>R+&zibu zIX}&tW+71c^8ykB^sk=uO?dJ~cQG&FOE!VOM{_?pfE=IRMg?G5eT)fDZhPQ8|1GK= zLyG>QMOq}Y7mPy?Edvx_6UrSEP+Yd5V!R>?iI)Iw1ag(Fcz0vU4%`%P6093AEZcf# z%6n%R$joUhsm?f1+DxxqIXvZA?n;8T1Cz=FH^{5c1y~=hG3WW8AscX!0DLd9yirX3 zX{6YeWc+tHevS-Yji-$Gws8e|_!e3Wz095I21HG=8!;i62rn6$agQ%53r##k zJ-lMz0GL-eZT&RTN)?gu9N9BM1qU6)sYY-iy<3i(A%cTfUI*Vx;ZIgbQ1IUI^?175 zqT3?%;8^|Bf6S+hCs&c-!n3lfWQm7E_vK?nCURCv#-z!>X1ADKpo@DtaCK2$*w-F_ z-=KdHwHF(WDNhhY9AD{ou=(G1+DtTwOu!D&?RBtE)a})KAQ;%Fix(wXZr~%^-5cQK z22vlgKLK$hc}LWF>=E*Yg(7NBbl+Mh&V0OS#v`1uffK~<+cDC13tA{QNw-Vu&BJX zM>$S0jn&KG$up||A^>^TJeONA_Xl3`S0ro2FZB-PbtjCtQ*#8^T5&HBl@D~W-Rh{- zmArq**9-RGyp6VP)>#Exl}}M+C;_~BaR>hka(S_~wZ&>^21V`2aFBU4h-A3vdHWGr zS1A+gT7mp$Gc>Z7K=)0tw{Dk8*gJ!YCc=xoB^#fkwGYkbJcj3xvW#iiM(;_9DNFnD zwMQTUvl!fE`(0BT8Y>u18El^_R&p<ct6w6 z3nm@p@c~U(9*w8&?#se&-u6J4Le&<~hm3enQN)e``CEw+9c;qpta1Kf`=5fOaKK}@ z#;@M45dBUWk7s99NCW)MOH5JTp`+}{j8*bbu%J2RRaK=w(DFGP!-gDVFBl_NWjU@unwqB4&1 z4PX5M09~ZP7Nb8(TU7AJZ?4;WFS`XpQ&`pzHqyHj26HfywK#01b@2!;q|#-3vRzea zAIA46$`A98LAQpqU7g6R<^S%^wI*wUn1xeEG=$7}jTSSC2@e4*s2S`k4>@2r6=f#O zg?OF8G>Jjw%{XZOGMYVPz)+e!eY4*$O%42%Is7p*q#KEreftF9O3dCFEDevEX6!h8 zEjGyq8re(o5%8_BW%2DXE2pobXKcnk%m?0cPiO+a3(7Pr3t7yjwPH))s0Cvq?|)jE z`i!=R+4!E(Kf2bGrsv)+Dst?`h)F&et(AT z%omFB4OX-;GC-^}y)E_5_#jL0OyIs0Mr)~nhW63GX%IJ+W*PrVShQTEH_(1%{s5OB zYox?}=eGWR;A*o*Q1V#w=IGPg(j~~J5u))8TjzV4HN<^6%D2e$2Ffb>QGlj#^(%&Q ze1lVl+0e;u554SZ9rBsjTZmLiRvTQ6Lx?hqLF#E{t6t^X_Uy@y@ZwL(&9lcW<^xgD%-gl0>L<{r{4Vuy|m%6eF zsE5r;{#++j&vTCRVTP-K#==Ip5!b2!ghZ?lkNZ@kEIq3+T{F+dyGFcca2f1qWkbG_ zfpcmWR|;ozu`V^sd2u&RE2l7-PDR(~9SywOmo*v+mZLA(EPp9COlnD(E^k*GM*M(= zv~BGDRc2ZX7Ms=LLQ2;i4d4}sN#9oO=NQ=^RI>!B=g9j*c{of{2@AQ_IA?DtHKEa& zY`$wEf!feSX1w~EBt3Sz+$|=2JYf4l_MWCG2UX|RG zUMMu6k_`PG;zPfO*ZBH>5&zH-zurTqZGD5~@=(4xNZ;V*YJ0&8L%(m^(j8-_$rIJJ z4`ZgkRq8)d4sf1JSqx+ix0i(UeukGm4^jKoOzPJ1z{ zME5PA)=P$Ia+JuD!(Q0- zsaZX?GKQZIes)%j)%VYz6<>9@kT{(9PN(g@Y1q&}sz2L-4RH_JD34P?|LU{{XsAoI z=M%f7;m)|@mKT@lS@WrfuOt<>y-jHd_@>DYk2`aBw`)ke$15|{f!Y8Bgjj1#)-0)Y zX$V1-5{8{Nbyr}VuhRZ~-#l-8f@2Ds_LcIeD`$m`N5IYQGPH79b&ESYG~6YW18(D5 z>`q2ns=k)IQ|>i*+s<)@=a)K(bnH)>iQ-sbUbiR=?*sa=z*oo;mwiZXmNsv-0RH!7tC1gy zLbQ1?7z0Fi}&J&QEuIJHG(p9k$%a^Q9&EX_kJO7K`Sxgvh66QESN<<5pz428d zCJ*I@`)06>Vf$+p!LNLrKf3Q%9kMXjh_)qKGMcMV%B92}Rf#&2kGxCmeMv86Z9GE7 zc9Yyw(o6Bs@EG0!hpH+S>_gJJ5>3%nnsMV}AdIjIt(G&RfX>|{nFt*7ICWI@Un)H* z1>-My_pyeku{`QTWMi4wtqD6=r8h`4LYoFB!%d^+{%lm-Z}=z%4>jSRZdCGdr7fkBPgYc+6Q-wbfSxmMF+if$;$$byBF zv_Ihdp>Z1GE%XurpwQU3DH;!E+}zqn4qxTMqL)R1iO9T=pQ&|a?Ay?7pYbrmxy{4h zlTqj;XBF$%Y5TF_u$^Qo3=W{J-sV zLxGfbb()rMeF?}zR)eSjWh%zJAXb@oP-?%FjU#$|R*CL;5RWwyhrS*eT*G?)5^R3! zl8SN92yz0F<-8JYJFPvMF`D_qfZX6?=M_v4B-80Tl8l1Q>2sNZfjYAi&HZ<&8l zHG4nlexk+JVNq^SbH+oy%lfHYe|Z(_xxrPN0l8Mls{Jt=gl+0s<35r<2(qno;h@0e zsmW8zUR1`g#ythUd*Hz2sl$$s-QOI(Q+9xN;5L$R`}jY%DsFvqcF}YZc+#fL-^3}W zne+K}l{Y`0IjUlh4t5m&Q*3yZ2(3B)_Al%7p2r#)i%~t*ZE`U9(l|Fbnv;FCUN<x03-jM!HJqWQw7Jh?a>9q1{@wt+kF_lv=0tWXEiB+# z=TzDhy|nLcmh%#h7?*65e;UKR+(oWY5_=#}8_Ss2*1o(K)$9DrTZ}~GU(|!P`vBP+ z?|q->%Hk!WabZ`1_{VE6q?s`wNS|_1ym)g-+r1dQNV8r;ks*i{ZYDZwh6*;#j$=ee zonexz+Jwfrkwo0#qw1mU2$DWv+FU6*FEDu?=~*?NN`di(^dzwxO5e#e4N!fMG(Ntw z;Gr3%e*Y%>?hmaLazp!Wiz8{|LSybRJ^qNrk=VVJ*F<4H1S-|7M()<((->LlueV>$ zjQeJuEbw7o`TJbo=tv9t1C~)?fXwfg<>aTJstPIfvc1Rfk=X-T)FENto*{gUs7)9M zRiLr-9?Q*y9+H5B{@8VXXvcvLa*=4qyPAZS-hs+EI+Rqs>?v5cfMwT$T{2EDj>uVi zsTH^O65^=r$|3n~9O5BsZr2o63&heZmcRX`qbmF;Ung4q;qhpVYrjcoOMXf#7#El; z^kA1kd{L7e=e6Lc#bdSR9qbnW`)xw%rHD&=w}_@Z1@5C6BLN}RH8Y37_CF)MykBWt z*K&2{RNE1=7Bj4p4V7S|zLYfh-=l4L2DCJOR59-E@ljLY9p}yhKbClfn9uHoKv!m! zP(sOkauI%pZu?_>o9vJa!bgE@P}!|SmLXtJ+;qf#SH(`H9OXSSqaHctAe(lXNvmQH z1eZaya<*v+4{~x*?a4NM94pu%IYlaM9bf+gf&G6F9(&*yvGDnd*8CrpaorViiv4iC zIGFOGU^K#8a0n%<4M9!>uti$}WB!DDM2Xiyhlgo#A1mNI@+yX%lmQ8;o}<^JA)DD% zka?BwJg^yM8L@#XFXMcDjG3e{yegbJ$}bQB5xlc!AT6*me-1Ozp42?&wxd%;%>A~m zm-d*tt9Bb6tz9Ley3z}>u2SEVM1?Rm9+JoUmHM6HPY7H}`_gR8lxPau$P3rL_pxAD zS5t^g5~Iw&JUKBooZ)obWB|r*455TYw#FTls$hK@okA`n?CdDF&S|02K|=yTcP+j^ zvBBC-iFt&}4Qw-Rm08}91z97i8dlx)w3sO)P?C5S4LUP>wts%o8h>Z39v<$Txrzy_ z_QRdd?N?_~J&1>Bgt{re1KR@dHAk$51|T56ehc+MdKrkd%q1=D)IGtsPja%x|ACa; z3HWY9jJ))LB8v3F)+dwTqS(3|g2aKX-_J!60 z&8Sa!IsORVLsGVjnR0aGZt?1OGf`mRHsv{eGrQg@iGulk_iC%wYAfh8co&gjBeu@q z@JD^P8Ruu|AxOe>!({-G;)3L>&~VY3Ljo%t-VHCyv(G{!EVRa8#u&C5G<%2`Jb}Ak zu^}MrekLfcg`O=N1}2K(*sJ?#_M2)@40N2Nh2d0@t5_)R3F(k+vlb^@*Lzg zk^(|>4zEa8Byh&Foi{flTg4tR|4{evz#p`2;%Om>eCHaCF7MoYV28wetmC4?-Pg2x zp2WrLJQ6 zd!_Mu{&W2oE9dR5T1T(y&4<>kSKnHfHVaVkwO)F#%6%!*d-_XRza;Cb%>F#{*-sM33!s-b~4?nY}gJapBI#=-V6Y@R$#zHMxo#ALE_KtZ6tY`(9r?bD(|d zZ-HUvVdk{EmvEE=G@3-|Pj)Y~&jaDZM}Vju<%-%5Kd<`g(yuHylx#1c zz~crOvU0R~aFKrrDARa)S#(UEL;N$T4~z)8{tMU`gSCR;_RRY6hS+vcBD@&keKUB? zlmH-aztoDa_u$y}k{5*8WA|l(wOzk`O0JEDihC#DR^y(1cna|F{atCtos~fp(|h^* zyN`3&HZJt! zS?N+jo=wda$r+0fvW7U4QKjzbbn@7vIF%Jo3 z_3FBYlU|8Hj0n(4t|4v(9=WC=Kd(v`eQZn;V#)W8@y5{HrsmBcgUxwAj@%(Q71XcV zuS?NKh;T9*wfHX4dxoO-4ExOEPsQ|2JzJs2m<NIAwMhBNhOYCMN!_3iU!@FBG zsvCof%d(Ur396yp*-t5HCO=2V%@Im$A2Zl zq;)5b|4P40h`5}a@3Mrb0bIksJx(QB4os0a3qzIx^Sdb&SGkI8!Dx8*yQJRZ zT`b^o8Uhz%?`D{mj-P5wcl=28Z6_epmcxBnjYRh8$-ah-p-7Rod7aLpdf(XwpjsAT z`Reuj$uec2iYS?z?zXdBd_A&Sc*n?-yPC$q77T*6f zbH_t9nD;IP&zfz2KPSy(>tA`OKI)w*j|L0m|Mej+eQA|`hQoIG@a}W` zPH)=}*x8%`(e`l7MvtF=IgzI}u4&vi^Co*(<%|e3Xw?3H5mhj&c}GkCBK{@^9zqoq zEdewH#%r^6WX~;h{`mlT9wHF3UmEiW`ZU{6680UQ3J-H z5C9U2X4xo})zA~AxbG)ffyoqhqA$D7oUz)CB&X^V5(~a_v05%oGstOt&X;Itvkqs$qy^ zCBq+;P0V{-hU-UAn3id(3StQQV1k+;wMV7|71n!CfOKM~AcTE4T&RK*k>sLZFL7;# z+;-RwXg%!y*g&cO;)r=0hO8FORti!#yQ!fpOe-BHN8;_79xBoaztLmJlX|}vTBfJT zw9bTWjK|0%I#lU><2n<*jasO6k-(5;W4T_xZ<-cM6YE~ml?S~4pDy8F#CGF>e^%K# zJ~x1ke&R}T+^VLym9bCz8A-l&ZiS^zntpsFmX=d0`+%9B^H*-wwZ>u!vcuik*Uu74^wlaiw*F>jIVeHg^KN638`ZT`&L|npiaF zF$l6^u&RnhKe6*E^_S|d25_v6$2146%7OhY80MM1}UWo27$S8!mhEjA0ciHR3 zaZjETYo_`WS8_v8Ac8{%xiZy|(F@-Um$mJ!dVbj$$^@;_d2sf%YB#rZ;8g(*%ozi( z@)71E#>sXxt7Xk`!{5wv{H2O_aLW0X9-nTJPQM8J_Iw^!+Pq+;I9E4k-zaVCXM#*P zhl<0td>1J^j4zS%b8yt9OV5zbDpu8K`(+fV&@bq?zw=1<;GqonvDvl{e>eYXZ04v@ zv#n9%nLH=3uU6>Y!7g(~%?<}g!0n@V`<5N}d4OY#*;By&qW#iiOMO4JI5?mU=BE}7 zRh!AF7DoZcvDg1O#eeD)5-n(G?nRH^SJ&`#OuH({K+)K1ozhqXwv?EUhT)W&MPS8z;x3%eD@&{tSAF6b&)xd+| z!*_9=Gs*N0_hQ@kQOdoBEc`F@>DJvNQgjvVBgKJ{x>XRyzf_8v-xetCbtGu*5h0&l ziJqf(O^>5sl@9Tnb+X%Rz3BaUoqO~_TzmO0O+sKe^lwShlJ(co9xsV4t%-D&cu#px z1xv5+aTS39{18Qj!n$ChVdn@WF<=FH^)eUSDt_%LX;7dBf5p+99H`#OBsa7OrBCmJ@EPAB(9B=-tj<}#Ce!z;#h z))HvH1|rTT;Qks=Mp^<)vCjJN*k44~Cclva*-z~#rIRtZm2sR+{58jRqfc-0&-;CP zb2s{^l}wmc00U)Kw$9e!6nwH~$Kf)~LtTBO1bs zsUChmhsi(K7dXz_$09Rv%okI-aY!zSNF4M&UIWH{Ar15fd+&rg)8q`1y+x| zNt91c4=&KnhOl*goG!MFVfI8zogN=13tT_ghbvS*+C{x+F0z>p+03`i@HlHfOrTxJ zc7BMo1eMHnK+%sUDsvgKKRvu{9Qh8>dbu0CZNz-u?8>2XdM0b%uh!xo<;CYS38tZbrZp}{Zcu7(Niz|K@O#1&1{(juU%LZyo2TR z<21V;2kd^tf=5wvLHy(O=qYV=R3PBYAQyO+V+6shcka-rwH6mRcVH*C@r$ZLVt1fl zzu(3lIVNR~uamxsXS(O@6ue+ceBd)**-5-6F#PtvK)XQf7)w17=?sxPQcvvMKD^^2 zHOs$6q|0{JK+=i}uRXsq$kmOf5Zam50vXc%bj zQ-*K491V|cFJ84AlYql~<^v7k@I70>aqrf^GHv?+80$N*&b z7U&G;`rAj>c<-%x7={%{WO=>q0MNTm=|rg(76ddG~+i9xEMqG_5MkWxFH@~w-M#ka5_oQ z>>Kykgg`P&q^!zd!sw}M!6ye~-jlWHrl8RmNZ%1Eh=OsAPEZArM%W)-8n4hl)OFOp zkRw~6r_A~fY))9}8g|jh7O}H_4XHVpRFCeU$0NL@9+ak+gRwK(ac#EbwWsAJ&^2Yl zOUITn@LK$E;(qizEAWu0W?k05s;QCIi4YnQ${Q$!M|gYbZJAkxD(svxtJ!IT74m!A z1g|3>gm`5VS%nea*IN#FX~pc*?P@juLNn{f`x#9mR;v~^{BH{lTP)50=7mw}7XP-~ zfwo)~Z?bD>cETrVV$&+gy+50sr_L^v&Ae=nH z?&EB`+<`wT_`#}RpJaY41945{W!~a{$ui7vQPh6Pn9`Y?ar>|Ao>WTStK3XrIxf*n zquVWnPi}?% z?Fz!N8_qe--kFbSIi>2DD@Fal`7=sAQo};)n|| zK{yzfp@HWezat!3*brxMy^O9Hd5D~tMowF*g%fg)Ak2b_=*{q_h{8E3E>$m5#_n*Mc*c{x_HWMVp&77H^ZU_d&v%Vu&w&@5e?08Lug`{=YpJNO(!UOa` zaSYzW>jnMWP%F-Dof%&U8e;&YY*@H%3NaI(0cCH)b_3LZhP!Ro+E0m157=KE*KC*7 znyD!=X&?6fW-fAiL!~UhY0usaaDw{Ub50qRNASaUkDk-_qSC*17PeKdO% z!zB(!8nhCLH)Me%1V75JhtfblhjIf9TGh8XX_R{Y!r^?11x*oW7f?#E&{;6G^H>G} zdE~X-xa9D9(l94es}DnWjMdS)l|}9SzI5+pvL}fioT0dK_#-S#s2%|EGn&`GF*BqDZ#G^xJ_G`q`c^AKwWd zekkf;?Xzs#v#E3U-Tb_6tf2Q<|%qvKpYlnG;7u-$-Qg?J4wo<#>)}KeGv7qWtOJRq zoM)&lWR3Ce5Ge*O`fodJ5u{|ecrJ&2`k0;ShW_7cjsC_aN`^nMtEDJRjTDGla&H%rvq1UbQ9xr+S$K3y5>f!|93 zCghoyWZ0*iGVDygf6-)6H3}4V_cx_LsMt2Sj=U-x)ny;i7)}GNt$RN-i``cfml8I5 z`gXx7ES;_T9;dX&YD<$gglqtWU|fIexZN`Cw~e0F#|^vmYkAWh-(l0fzbGc+XOxb4 zJa^tXV3(_^$n{6LT+DQvtU`5m)jpypy05az_JaR~l*~(e)c1(s?miiuMj&kjD{ft3 zqRtw0T?Q%I&``Gmmn?`HSS_FE&5vO?RRj-%heJ`iaNPJj^NDv^iM%D?%pC3Uf6D4PoV(Rd4i8|$w`*66zZ;1S_tdT3qw?Ng&CRsf z(kK3I1`$c!|9@n=h$7q<=~ThYjw+E5TW|~Q1@so8hBh>G2ZU0tGGoSKr+QYUs4YBA z58qx|EHE^LDz&xQy66biUZ zT;UgSCi@y#dlSQ5?LN~&?yPGH{4?vS(^(WNzujZs!pwPgjb(s3x*W-&s@q)+Ii-_* zC}JvQOkVat>AL~T0FD5NjhN#Lo5^-~jLjs&yJqm3ZmSgxXL=O9JEJqaYby9;x7#I} zaWfHnF!AB%rDeCJWw#}|^;5wwHyIbOn3P*5yTpylrudmcmJtU>{2z#RYlKQQ6nvj@ z*E};^cVSZ3A_4dxslcn?1sxL}y!{`y_pKc~K^h3*eydj5qH=mLCF z3kG5SSE9z56ujm&O5X-1=PqC=8-Kj$>jlz`<#(*PB=1bPag1w}_Q`+q%Eka4)8pA? z`h^Jfz};$WiL0v5071?QKA*tsAM=(f|D=BqD+SjujxnZ#*bdo0EQatPoq$s2fTWpP@==3RIR?#~of0gURS1n3Oo!4cQ%D zxuVrCtt(|lncRJ9`;@i?e$rf)53Gu#&aR>&_t_Uf^s7XTkE8dO*8=~=&6@TREYdy) zF2Vbhi#%%4bP(QGY20*CH<;?ib<)~XeP6$z{>&RN_*idz!=qfSi*BA%N0H#sib?wM zTK_U-TzLNTqL;+T9JgZ4@JH1XIM_-$nlldCC!`+YTg()TW>5uE=}Wr_DV2|gng*>2qH9r;jKsPBc}j^KUT9p z<6$Ib4U{+R&vXl?6HzD`Lsdwf-hB;>oBpids$XA%QdHC}lI6r>TCc4CBARd@tcAt| z%w{?da}@$aiP!lTHq;O~)hh=uiM2rOT|K9o7n8`|lEdskC?zHlwwX8?{A3In6gsaQ zBB%IacLJg-ACi%|Xc*Yf>`xvk?dIzPwZjvB_L>rwjac*VK>e!6n8z4BXjer*kRR_3?UQ}PW%~^^?4L%?TRF*1#R|Zj zDrJI{|BIyd=h>jr)9pX4%+FdSR_n6c&mG>|=Ud#s$DG^H%BHf4AqY&tWD4r-XdhgK z0y)5bQNb>=Fa-F))&ZbsW$G#oZjUe{1PTWepXp^lx1QE9|3YTaN;zNu4)b8c2$|T8Vx$p`-ff`WL1=*O*f8$CC5@kKQL5; zH+pKcR^jBe=ItMnPCUU82bMqNoRi>ku(ROr46NK(n4K}RyTtE`pB7hYX+!({U6%qe zATdWga3axp$am=OlBFd7P$UW3cYIxIG5V5i7(ew&MWnaD+fM>G;9!|X#;cIao@9my zB<6U&_sxJ1CZ@Q;RtY571b-uPY{;B2`Ov@wb30UH1KQM((U!0IWJ9znQOoLc)fb|FT$Z&*Kr@s?LW`;|MT3#TPbRl z)|W)|)8mw)J}q6cquJb>-m~Hs>@tHX2G&(()R@NMP~N5v{~rtXe*p zl4yrJks|KeRkfjUvyZe4%V1n9^SAzIicwY`N#;)0I|IJ zyr!!$=$hFtH92AtO!^sP1vPSd94h*P7?fE5&F-d@55v7rz23bp-46=H->)Hf4ZG() z(!Xk_w7f@J?0J(X4ujOT!Mk+w#P0E6b13IQlTuFRivg)4rrZy;FVwy*wNhmEGyE&~ zBC$iXUtfm9$G$a@9hR!l4qiXmP@6*!-CoMLE%-KD@WDF;DlA<{;1h1ZT!=sV8jjo zuGWjwdMp=SwHIEs-u+l%b-n1!R`rdoYEoJq?7Q$BK(HDE7f(o?+6(4=(*Rb*r*-UDSb^*laGxSK@F2uqQH~B>k&FfBZ#7*#zZDrKC#_)Sm9%NmT*8b6Jt*gSc6$o+#YwndsN`>!-b3@?}-blXQ zZ(cA4VnfBTxT001UTWr!7BynWpHLp@>?rk$_{B)8cbnz-Jmg|a$XK}QkdMa{b+z+G0nSM(=)|*^wCefm$vqzrbMf^xO+z%+DHzj=_Tjv+wdrnHE%X@ z{zupe3AZ@(M7n`kmP z@K(kNa%$TV^QU0}H5s_V`SDqXcZS9du6k&_PCRo;&a@eFeb7LcgeDDa@>`(C&7PFs zme~3ip^g3oZ?A-8wsz(X9AR{Tkk-|{p;&744Q<9SZ~ zw7aXYfKnSMthzxOMwfgmynezCLZ-iRp1H$)z%?f4k+PI zRDl1oY`=F4=p!2?v5|olho*QD?^4x)<+cA_W7e){R*7xxx65jPUnzGL7a24kvnKzb zb%t@x$$qJ&oq4-xy1agx_Efi50P5^Ctvz^YA8Rrb;w7q`vf7RWV!w}!#n810pPiyY zq)f9a$Ffl0Fg6ptzk1x=E78! z-4`1+BEshu?rnXONLJJyLXU4R_mjx8BoFIN>?GKb|0Y6y*5)_?jHYg(xJ$po?W+Av z+7zQ=$P?8qlGEiOvZ5%eTa57Hqi1>sFC~e1N?;b>92+Fh!Hyp24dOHfRCPuX$?+gY z0wU%whRbTTCr!&yjs86`UgHvfTyHWFW=*BV(eC)8UHZ3Q=ze`ObEzvk(e_V>D(k7y zMS4t)VXkVJdoAJqd&KFfj?}`2KMhgFE)#ru zXM=Z#+GCdZ>N|t(EQcQ?!8c^!+>)(3J*d6Gk*cTbjyBO>m-XK)@LtrErJ0?XtnRcv zJozGUJninvhY47v@Z)n>dr!Ro!glLZwJFLMuhks{!hjZWiI&bBec^mnZt6&>DFF=a z8MXIR=B4L*eqNdm{z27F+B5uu_5JO+?YSclQ-D^nCvJ5%Mh;gas%?%IA|Z zAaTeNjpfKN?Jm_SHLls{?rQK}e!>k>HVn9$)S2A-CyS{u*)`c6x6aC@f>F{FEt#BQ zxW3XEyQYwwEtQcWTMDfu&cs!J{9DM$1%NkMK!Y6_)n+FVl^f4zUaB@5*{HFosB3)_ z8K>`8rtB?1B2eg21_WSDv+b_w4#hYFJNXbdZ=wMmHai#GiKSh-7bAW-A%1fZzJ0}k z0;X{6*jFk`gd!XqC@W1l9S<=4)5vMb3g2F_MrkcQuv?X#$gH=uAAwgM{4r%3x_Z|v zY}Y7lO~S_dttQ}!J}G)BjTP)TSgu{DcI$p`vI< zkd;rh*Fp6r%WkEx@>j*u1Uw20OnH&1-%z2f|JrT9a>wE(>YZ7qtd*x^HEt&w*n;brm;_pS0V7} z&FNYVnUh(!`ijf!?5T1^Ezr^rlXr#geKJ$5MeZUJ2Vkl%A zlUz#{Y6z()2E?u7;+~PUJ*rQ5`*P)!T$h{fTAO-F?SDTD7j?q?iUszm0>~U@2^mkKQ=)t@&!q{=REd! zG4%EN+|V8zuu{+O`@dyTjS(-p%A@r^Yj&+yUX=jXU4v5y9va}o);@46 zZL_c;8xY9MYm^_)Uy_A7(g(t;Z%5B-0~fbi7|va_|Gbvg=2UvU1r~J_8=?eJ$6nVC z1e9}|?ZMI{yVm!FI7#q0S0beFyk+?@+Q^n}sK}4yS8kNv-`ICyxNNV4wEQz`XZ`KH zu=<*q@#v%G`01r?Mzl)0qqF@zc{Zw;ug_gUdt#$52IF`vFcRiSP40oE~&~Hx^dqhTusv^|&F$Y0dfXQ@p8DaI5~1Z=YjuT=zR_548Ov+dp*c zs6G27!_3_w=~mw?XbQPD_8$%1MQsJlIp5608u;G2TO5*38S{=L#hPC|0Y0~#&Raqf zSugX4;Vuj^R`wLBplmngRx5EcGEC~)bnNXkvx*dOmSdTVu&mA~ZC#?V@2L#nD$0i{y#M*bX@N0!R6J>3|Y8KrXG)-QaB?CiZxdt*Z{Cl{j|H z`=1#O=Qf4Wo{|XnbI`}5msGjm%k|q#Z=i@*MUH2WP-Tem@l9}`88VX58;z+E&R`41^R)@|RgEj9@ zvEMlpd}DM-$$O$?>_6cdw&ClFfCLZf5!)FM?qQ`FBl&wYJJ+Ko$=+Jj`}sz;5*LQH zYoH&!h&q$6!6PT9tYkOj$){NNLqq$gd@xhaV(#wOqIRV>sfF~@Z1mJ}GSRpE2Njf1D1H#Ls!D>-$D9g>wZg5fa2A#7fKz<-XQI+aJ{dDZpG2ULt8}Mh-01Xbi zR&!E?$c<2bGuz-twWg366n@;`NA&hti+>!<{hkt&l6kaS^tmM2q^6O~tLmu8l`hld zkmb!TIx87gZ1j}(8`s^%20%{Vf5h!!R|D<2fX*eWdPY`w_l?~ny zw7uwRA|M)2jJ|}c888FAAG7aeW!%tAJZJ<0S96PP)S<8Vt0EIiSx9tgnTI4tFJJ7RLH| zaOz7+bKKB?eaq=m2G)YIm!B7f#7rTV;21Ntp=RP;y$3NdFMe`A^%eYF)gB4=nIX3Dc6WLcv&x0LhB6wY40Xr)@7({$+YcqsFS(Nc81E)A+Ll}PMEgKgX_u&xV);O<6gATK6PT@%wW{oo zy0n5z0jW0~?qUf%@crPkpkdiVJ>hrJl@-vGRLOTyl-#3S&tOUlJ`wzpFhQ}@=iVa`WTErsTiE?Z9RvBAMsTI80f^*@i zZMGzbBQqi+Yv_D5DzAkyhm|!kyvw=dcX#-ioC_3cgq5?U_PVx<2g9wA7fQJA$46a@ z{Ar(z|3&?L$BA84`q$#M7YHr>0ulIT@?PA=ks;(sy;Kg$CGwsIQ2NQzMtkkRKZ&tf z(Auf*5fz4}&p6qM4nGY2@cKc9COwN>g1Mu33^h9Nwe3xM6p4i+=_RQDLvncFLTC>J zT6SL3G%Iya;AjGnyBmp&?A+F~HF$qZ1d-S+5mPJ%%o1 zwH~oZ)sW>dB0IXIv$%Na&Fu|;O#Iwx&x~eMJeCm`V%xcDVY|SrF}ZB5f8Y21F0tNy zS~`6i85%;?hi%E2Xii{C$`w8p!LL2|b}duECY^KS9tvAthM)%pzObsUA2zEa_fUpg zO}I=_4HaYNbU8asP3e-DDY4;~%? zv|i_^Ckm{pEu1Z!560mlLyzY~2V0Aqb&$)a{dtqTUC>!W(qOy(`r)bDum&-&R_MHT zcW${}ed`>7Q3)C+X&|scunnHE_jRH_=@a%b_IA~;x`iy`MuqwBbq@2hqg_7@AtwGG zoB~tkJ}=t*xg@wyhRx%e%X^+E(XrsTJ?T4YhS!-`epJ7*grVhIS#orvu5=8wTyX0d z_*qZ_~+Cq;>9A%=tD;Sd~5gJz|p}esp0U?x@nxqm{Y@JXD0IOy)I9=HA zr&DTqMIq@y`!l$o(Bn$?X9nLT#l*TM;dc*Y64D?PSo5Z*U8=&2E1PV6fmdC}1L(lw z;E$DN~9Y3Ya*=hsg1D5D-nuN#$^36bxt4|1eyPrr~HC->(r6>mcPk517 zFr-2c0k##rq|QEVAh=Mw+49;8>GA0bA(jf2;~N^&-Tl(zRXDkrfiU6=G>0KtIN+peHN z@xsy7CM;7xL5iz8sKybHkqHlg$@Q5Buq3jrtJR&AXzMSl{T7Wm<&DX>rZTQqTr!k5 zY@=S?GgNxnF>L3;_Y!eqx}`c6CEIYWOLDA7)MQ4z+1gTVaYzcM%q447>ujVT&fq6W zV-X^X{N_%0PFO}BwXSIhK2#X-%A+Li;f<%PoQ$t1X&H;5QRj+Qo2{b-Pk1R0!UDJ` zw>8wuoku$gs3-eYEV$FB+v)E`;@M6cIYo{dHYEgg+FWU4^V@R+C+Blwawu6Ed2joW z)inoy#+?XBVJo#y6*|qd5Zj@OeZ8&oxW%g!Z)+?MHci36I`wUlVG$K((mNZxKqRt1 zAI=R>tbDK4zf46vUrxt}N4$jGqwM$-r)FW7up8E|9I1!jVnI$Z1tF3_F;}jo`<>-^ zG*xk6L46`8%!V+JClFX{Cd?G?a?v+17e*Y}BWSCIQ$pgPeAgMYEtC%Cd~>5x%HiAI zdsk09)lqdq@HNKF-#NE;)#eV^pN9wFJJ2V;XGy&Gi*W3L(1iDXY*a_C3uc01f^Qr; zedsh>R`xLYVyJtlHbM)27egtQ3l_nXT>D7o&tX0RXP1Uem(++e;znN@j?rGin8T_O zO}%Zo`R#LlFv|0mvd6q{ruc`lZB#$QaDBGcspPrf9oNOw_d=|<{rnB6l_satA)Oi0 zoMj0x7M|Km9<8vQuADtB>SN2ItGTO(Q4=}i`!+Buqq*;?*o?P(20qVs_ME~#zGndM zLK}Pky+ww7?6E^dXJEViapuFF6#+L}zKOv=^&M_NOdV=f#95QI6ppBf}P@~1oy+(b1e3{=Z7fnd`s@Tg@479geIoT^z>jehN-o*{Ya zKGy#@U#bZ4%In({UZEbyoSjU5lfA!%2Lv>?GJPxspXpO0+?&ntenv7nTd(@Upbm^n@+|5r@s}zLXe^(e=kv zYX9v%n9-@*;&(2bBa?*|{>A$ls4QhnOVQwc*~Im&k2R7dV_#g1fNAKEJBND6(GR!- z{Op(8t7N2UtuT1Vorijc!6rc|i5xaeaH$#8DRf>pWG=DzN39~xmmAx+A zFLmXI+|Eca8ZX9r%!iM{oX}F4q|HrtH?<2^!BkpOE3;0?i<2X0YLCN>8JrjZ_6Zkb( zZD1!QVN(GitL&}Aaf=>E)W7*6nvmS#E|t}o>>k5u-H11NIc33vO5QCxhPxUTM1<*M z{|i!g*$#yf2W-?LcSNJT%oW6cZ0*ImN-xsG12`b&2dU)&szE1ThOMmfe~UWU^?XA+QU&{*5rb0vS{Qm^m2)_oUt7P_lUC$8Dwy0YSP3BvK%$yhf=P= z!Fkq>k~O=lxKNF={ua9J>sJA)!*EX&9hB!nQ_Qz-wgVrNk{QRWD z`ppcg80YuwMaWoh-XdUt+}{k|mE5%6Eau&`Dfgx{8k&er2Bc7^3$Q3L9#F6mWpsUu zU*2_NnpRBm;l0d?7ZEM?%C4exWy4y@mY9$)VX(k z?+gZl3CL6l$W*3C6eR_rSV|aV2#5ihMFb=j!6Nd3VyO~jrXV2_&{j?pl!_cCJ+%U* zH3%X@pB_{M&JimpyblOc zr$bQhCC+1y#=-?7e0IkIE2wN z)|3i925OTdAMU{Vh=U&P7p)h~Vh5zGr;?R~!<_mR-GB*Q1 zKTr`R2`mIxG;ow-&?t`q5Ygg^#Lmf};!lhXR2$)r43KrQWQyn%`&;z?vHe7t6NO$F z9Px29S#|k;Yy;5rR(iwQ(~A1fcj$2D zxJK_Nf~V+LkHAasF5}3v*x~84z)jyRT1*qoKH5tt!GUHI*jb(^;*gl7RnaAQEj$(E zJ`R?`{RpLy4xP;)j!V(L4({}RZy_B8R56w&mh{Ta37cGhCdnBwkAIyUsgaaQmD1)P zEznV(P@kpN%4qwmK|YW6_`gi*$n=nQr)Oq0K)H!@d7I8nRPdF|2`rmb@-`l@J%sEg zH6#%E3#P4^e8WiI1F3b_{X6ASm5+ZameDMFIww=!Y@ohsvCS||MDOPsb1_{l5x!@}bq&(l0mS_kI!@i;`%(j{9uU>Z z+km_z|BNPV1rs2u)g@pHf*8f!`NnEi^_co<(0i>ZgGS)AQ&&Zk61Am5-doR#+^qyK zY-WQVt>mhX9Kg8T*6(0YoZVd(4fqt371;m6Sd_`UuNj1mx=kF}O{v>jvjOi;(7QJ@ z|H%JvQcIV%XWGMM=q#)N%%QV6_hH8JFZ502O0x})@s>yrBHBNP)MrD>=zqUE(Tt@$ zvwrkU2iXP8e0Y3?9ez}m^%|6=<0~J9?!Se2NR|Z08$%y022|CXpn>58;7>S1?e8t| znK4yt+-11AI?Aj+QLTqYGQEx#cZ;bCrxypFS?`MVi#`4S(u3E8BlbL)j2w=IuP9RUe8m2!#li~i{lA7WE zLbPhWl0>OO?K(uL7*F&to7{V^HEr7ZhodzYD7&6N4GRQ))DvYwcyhVxp2RK($LH!% zf2kA?pI4>|I9}XL=^d_jtNv5>{t^+N5@YV!vl$@+q8Z)j<^STS_mO`|U%xu0Z$lTV zP-ic2#B2Z0rng&^stz`5VAFMUG}LeUt)VU%EH53U;nUDRUsJJ0m<^=={mFt~2;(9b z`&$^i6@UhP#xH0$oQU+`R(>oC4fJZb2rh z*KTNlBr~Sg9IheOWN?h{EZzH-On2Mum}-j0u1o;LM0}+O6eKR9+@})r#Camv8~;+e zCWbAw9yPORqM3hz%PzyCH93c~8FkU5gTcb=Zcp1de;C_nu-blfPE56Cy62aSPJ4RR zvyO1ws1-L)I?=ttvG|~Smnt2F=DuRlltJUG9i9>%2k6~pNSqH+`CWv z9mS{~q=pG^kL&D`*;os+iv6~ESrVyq_z2Y_#E3b@s41u^xcxanE^PCjf5&`?Bc0=R zDw6DIpLbx%ppe6?hWJ~QdY~>Mca520q7py+FBbV z#$5EBf9C7bO~`d)mnY7)c5}fYzX)5w6NC;z=+a^pH=p~P&=(@;3l;EWf@T8@2uo$QV@$D~RrLzlb1*<%n~1pzqKW)+CZ zg7OsFqcgurOvYg=Jbxa~Qr%zNS-XB@>VBUI^A^3 zTq~kYamT!`-{WZ|1>6x7%vBn^8Deb4__?p&y+lOfgPV;oc-+BFgQ4Z3QTBb`<0Q-Km>3;@CS$0~e_fOhT1 zG_qwak#6yr)+GAJs%Hy0*rLEY8EZ#aWx)_`?Y|-++pW|7Ls(`nA&i^N(|^&Il}2A~ z#YI;GPK0yUK;6tYQTaVwzf&ujIkt9+;s3^LNVOv2Zr0=MZ}73FH~K}8?~U(Z{fW|_ zSNO~Xbfg}hzXb8iz1nk6>@p}GoOIs5Je%~Gs0{b$fE)tPq{~B%51w_Za}Dfoc*O@& z@p^f6*S$7cP#9Vpe&~H)|0IJLUEsv^zAt+%Vzo}z#v>Y_ja*1~RXTQ?$hFk8Z&?7= zrnROF{=?g7n~l6Ji`D2kFU9}?^{$1W9$0eYiWq`^QI{k>Kf!_<%W~u~s7WT%$)InO zQ}{@vDw*=(LutQX5?T9&a`p@1VYChxy$*(V)u*GdqgwQO0f>o0;nj=XS zxGw9sR!UFiQB|c4+RX!dvW{>0`ZN>q+86k=rdUkSmEUmVKigg|;T2jc-Ke7P$%BTU znbEW|Po)*IV$FWhzU%9U0qycD2KlTuMJX%pkbRy{j7+2O8KV&C$P`~*HR0VFfBi{3 z|4A%w3%6XxA8))#JU(HOG2Tex$Y~klWf|LAm#KVwHvgdupA?47!_QtJ(ED3MZiu6{ zIrjs})T^<0WnxZz3!KhN_3$>`)pI%jA^h%+wPfft zw0aAhSDlPK&v)3>X5cS(D)V`*){`EJ39 zcc67tV)oDkj z4eRCMGRM*EK1g=@_c0R({3(MLC|~gNtdKRh3WiU4oeFqYE^rvN&>i}U5)n`~VRTy+ ziM^uaRjXl5Na+pi8Vj2wjWrCw(UD{hS*Ye{wJ59Wt_ z`&wsJ(kSOe{}Uj6+V0fe>^Vet8Q&WG<7#pEnSl-PJr2tdx2Nr`U;c#aZb~GN1$J^O z%__|dm-9?|qs%=ir*hvi!}HmxT2rQdNlJ;E+_OnQ_+YQ-N2FghUT-!-v#jr@t$`T< zf)`+;>@h@0j)Tj*aXB>K6R(|L8s?x%CiVGX)q1+{u+6G?TQoJUDZKX((6`ZPXvQ;H4Cni@Xl zd>;AjF`#qhDp_0Qrzj$Xg{F}GEQa*LFvKxWy=y${ITZ=f1p+_M0^w^8OQxsZuW8i# z%l{xeY&$>1Q#Xbtj4b(_SsD{k*<@TZ+`Ndptp5I2Av2W5GC1RT`#sTCZXe z9^}@knxD43fToJf#1We>CH!Lf!gp#|7+m0wT+cbmD_Cl8Nh(juG5Wp1br3%i=AY`OzrX(| z!&>3mg7fIS=%tzEB(2dr#?qKLdvgp!{SFbvKtH2H?0(LD2^hw=_2+S7z0Jl+Aml}YsSrEw)!uObUqfiCUUqRTSgR9I9w|Msa6Vfu;@52 zkhiSR^|(=ZWBm)v&Ad@SmOK`K%B-9h?zpbJP&fAKnW4tw=}XM7Smcl`Sdgk(bx)su zdg95FgCUXf^Q!mDwQb{^p}eD4`L1GQA`HH&ee=W`JUquMw?3nd$;1~Mt@0@5=Ca$m zRwysZE3V|rCncr%ah3Lnac&p$E`MBcUt6%f$Hjx2DaKe(4Hz5L9d#AkzScn_G&f$j zQXG1c`lB!3QztaW`|pT}+zts;e=>WLy;@1HSNp(4p$O5FptV|=eP4ngIe9QjaA@hK zuS`~mIQs@>1kKAl%A918XpBN}#*9K+$9i*INyK_>vzO`tUu`szSeYuhA6O~gZTjGN z2EDU50BaiiD_PJx>&}fa1m9-{kdHN}jKrYFtOslvnFn#ln-{{#ysf)!gWcz025&=Y zZ-(5;i1TkF4o-iW`$p}hg7tM%>s^2v6OFkvQ{Iv2ut(%rOZ-z;)uYq2LISq7!|(+4 z+fq}%&)NCnjh!EAd6+MlZ+MNT3;e({TN9TRuL+oYO$RDkr5FmUMWg~62BxTIquJ15 z)y6M#UyZG;Osd9&JvA1`!08Wf8~V&cBF97;n?Bs=4OT(hpHp{LfL%)!h*KCsYHY$K zD+T2m1fE7LVov90sYRh=ikRqKR70TkZOJP?wHTe$bKga)OdOgkT~fI=oHb)?rzeL!_Cal(j<;-f%t!Yc-Q1^CkT0!4TLu5zA6Ul2D#F7VsSE|~%9g`2}`4&{QHM`yri0rb4w9?X(hXkeg7Wt!NQYV>&v zW;IQ$DNtLbAn4(r=ry04Z3lJ!XpZ zY8dH=&r_}$^#!bNwd_${N(%^B&pX2(4q)VG;UppQlW?ss7VnjAb}~$Jm|Cw8!&H0I zEKD>)dXlL(iWTJ*rd(<|TWpkS6AONLF?Of?p}^d@R%YQ+TTR}K#B|`soho#T1H@`507c^;TSpe-bL{6cKRoG6PbeRQ z6Y*-rh{U(J0H5GtmmEWLPc_j5$IGjyTe7Uk1~TKJUxOsu_V|1GNX@TP4?$}0xbH+3 z)%`UE_k8o^Olig~s~T1LsN{qHPT2`Eb4h|L2;r1`aQl!-5b;KPk#7D&0h0g3#ii?|1{L6a#H#NOjZL9PJrN8jK91KE{Wc8ce|3ftp4IEozsZ$+W6 zMC?t5`;G#CnTH@c_?cciCf<}|{sqFTR)TdTr|+tzF&DPjPzy!Bx#Z`vkh4pD_7xfe$JfPLbr@IxOPMt9ekd=f(5kQAFx8 z=`%-T1NPhX=ha#>zaMLC?W$CN>DHPFi}D?`Rwb;(u3;IQl$76hz&r^90>Eu&#^e@LLhIK^k*x8iznJtw09%10n z`+LfvxSig)R)z0bYYl#7v@NF#g4|jMj0NW|AF=TrYtd9r4zq4tinH~;lbHc%2VHJ~ z0-@@z)c3o|x6JlovhI>?YqfIqkh?bvqSrmc+BaIJf)uJAAnUeNd=!7s@`?pF6$6p3`xi@PdbFn8R~)OGxKSw;X;ds; zN-JF?M-5<0Ae-GRol`oC#{$*^APNwa@B*Kv@6MZ5 zF_sEZAn+d|4f@Xm30Z&Fk_H@HSk!CQjRhaX8zYmSEO7A4f$;83F=+g8o)af2)fj}m zDnG6S9#Mj#gp`9G5RTW^5_BEQy&A~+VaFibdWL(6nh^ib zKoUE$Q+2M1;~jfDDd{>&$BASWQ{)O#Ui>foo9Pp_1A*4wDNDhcs4+EtxF zu**EnWeEBtd~feTaQj8~BH66&uc>?M1`$5*tvV|@K{qh5ovRpT!EQpw`sEAa_9 zjzDn$5RyeRR)Q_{7h$h-mAXpT^B{6y)ET>l96pddp8q}qN&owSoJbH?d|s}4zJZe} z*9t2z@uYwp6j;0wx#bgWb-??KyOrT_niYz0f=)m?d^4ocpT-Y5!K+iB6|ky}$`}$f z!r_JVR-xX;cW$NkP7M)w>ED+T6eZBf?Iicb8327Vo?A25WJ+86;6w-D7TZB=lN_#6 zHj5h_utOZ>1ME4jFdPp2A@cA5Bg$@ufvv=aWV;#iQCL>Qpkty&w!X%fDw)q-EaIHvKqGz z@dz649Pf&GN5Pzm)yx-Ou}V=&66BgWDCT+s=!nOUz7Bi}PLcW@i-wkT(n(RPU+X0< zApUSbiG>G@1WUI_EbhyjfI6_kR)~ZG9a#Go4Ii(?OGb341NEl8^?QPzqr6!m4|q59 z>yH4N6^F>KzzWCxC{(9GM^pl+_W5GtGV~CCh1^or?_`~#Ww68&BxUD_1;Q_#id{jj7 z-iGbqZGCM4Wv1~6*3Q;8r&KPWVK_|$LV`e@wB)5aqeca#J>Ra#TWH1-@ex-kOBe%X zo))q!40-G-@1GNQ=DCTW$jk5@AtRL~P!@{~6XV#A%fi=A~s>UDP zUCgnS<89r*zo$NeOJdb{d6GH#<_L>26JJT=i(pd0=l0^KhU0Jn|K2q`h++?rRMF!= zy(P`IMXj$SJnA@L;Mk+_n&>m$*CMh03xv+Z&$h&ZhWdMcjYZm?w_8Y$(HfL!&~0kZ zTPjxf&6gg%1&0ntZqnsd&$rny`#kqqx{`KFz7x?`b%YwQn4_5Xxm5o<_umqqr99qS z4@Q)Bl_Y#APitD;8{UpUk;a_5i9ujZ-s~9JTc>-4^n`r$IbF$gIc`@Y5pH0kU6Kq| zVeLtmCXlC8ZK;DZ*4@g!Q4}`dYJH%h?5z$QNHhRoJgs)Z;z9Ho@X;G+;0SASVtv-G7tG<;VkYywGb-T5LV($SaOkAF#GM#zXP-h)x?yl>P{t zLiM8u$kL1%V3L%B$Y7yF?1;rw5~brv*md2Ydi}xS2Y#KnX<`Y>(FfnSLQj>#~+iR%Dos>qDHrJldMPO#P)d94RvR^?76J?@)^z zI~#NR^PG-UYG@$S_6pL-*-0V(zqFY{5H3xo?K+8$|3 zn{Q#BNyl>5(%kd|s~L=NrUz`*rLqPrp3?KIPdn}}@CzLyBQGs9%Z7RW%ND{a24D8u z{>+kfQVvcCH{jcTNamzHT ziRm<#Xg3kBVgXkcw1iDUw^=ixdgNGzu+veD0U1wY)WS+YChz%Vl!it=(jQb3qCVH{+_!)%{n?FC2b8FEWm7=(`V`V2z}tJ0tjY+g!7yJN|y#p>c_3z!CbP6^3vvgCS;B}zaie1)4RzWw0DQFHlMY+Vnd zJje7J_dvf@;B=)k!}mac)L^^CwC~V!#V}+^IAU0t+w<#Gwt-;PaYAF3wdrrIxg(vF z1NB)g^uJnYIE|$S2%AT?y;5 z6yLwf1F_d_CVNO4tF>DAf#GhOW1QVg`w!8)o{M^9de))|X6sWZ%9%)zPh4+2Vg)di zUyyu|`+@0knz#_%9xc>e{MZtbGrv9F(g5xfd9Imu*S>nH&KEbV6?@`bpy@xSpT7__ z*OuIj%P#Xay2=4$uM8-ai&WOu$d@q3e%6*vC$zD1x8`QBkX33;(4oAD&x*LF3r?AK zXQNI0?{0A&y$bIcT&BCXs?aJjL7M2dTc6oQ5*_LF*yX}Wy+wnb-g+9HiEe_q`1hhL zkvciW_jr#mUg7nR;!{<-HzejS-=h6nk6FuzGCR6+!F5tZ+q%I~n$@k98OsI`Xj`W} z)K|fX0NxL9Qga&fUqeqD3G_^#$|_GHdi(qBq51-bPczBCtH}P?<-QZ8OnMN6>lLNo zV1nId4;P8uX7{p7X;|?+OB_EBKF}lV=ipM!C4HJw}KJu z@adJct8P_Wg2QTv$uNztdOeEj}7bo-JstK>)Y@BKW!Gsb6f21=^*G)Tf z#34G@j1P||{I~$a-cciPbVlD&-wg@#`m;$VvRR}^n6q+A3gx&>-s``z6maXGW(OjI zxIyv)KY>om$Dvc=lxJ2%f9SZd!PxUJ3U>Z2>o7y0$S&!@Sy4RB*c{VsAQiVQx3S_q z4WwvZzhbsF_SQ0PxKR+HTX^xny4(i=%}WT#DCd&luI)0Qcl zO>CAi=r(*Nn)Mw+Gc2Pv1DE5&MkK4E0vChGGvYW{7;muC;M!bYpIq45N89SD#>pVM z3if-4Q*ZRwgEX-*I7x{MqQWtFpus1qVnmS~bhSFFDmD@+Gz}-zlT&{$vGLeW?HF<` z>XNj?2j=8rA*l;IS@TW0G`+=4c zOB0-jPC5-K>vXKILe5eFgdgFwyL-PArP^Kk(8(x;W{x|P8&eEncre-h%n%xTHCR$c zE{(b92o7MPQGr(414;EqZDk>%zIAs8F5ewcN*g5sUpLq<)yMYHOl?cQ&b1ooPqqHs zy|bjxUI6d;63N7}IH{Ga-fpb9y z6C1rba{tH28Gr)kBmU8CW8w?u6IsVNcnCgSSN6$HP)xy#1&J1zSTKV!5NXiNCAEf+ z`(zE}QS~2rrJLLc{%V-*>-*0p&o{&CA<>sV6RkQ@%ZgAL7+y(OTE*NBormv@oyE?= z_zLb`fr&N0SVDO!&b&a2(3sWq@l6GNhj_VtPSYxO7DUUZsgw7+?iW#0L0z@-0veby zvI#5oV%0roVpTMi%}txPNx{xlGd$v$bNo$#YbV;CRo`WU@mM&$P*SesERPXfdmu*Bq7%D}hB%^JkkebBQ_z>%1d9e1|r6s0L@h$%4`7gm|zOI+j$RbjhyL117aovzjYkI2- z`-ycv36JU1byprh6L-m)+OeOjy#GxbJ{u@2S6Ew{g6XfOrK6*>Hu9%YVjdUN6h#sb zTID+_W;%)?K0|pu`Fe!OZI;79#qlZwmAFb-2dfQRdh)FW%Mbr z560SA=p-9$j2L5B_FC^h7-wdUmRRdZCZ#GOZFU^e9P5{#k*IO#vt;bwe7n#y7?CMX z|9Tlt5?Emcbb7~F-LbXbGsB3{=VX=!Ipq5m#ii`!v1-e$+ z-QnbM^~tBZ%JEh(1u5}H_f|p0E1d%53stfL?N>Yoh+1cPp~1QtbR!1vV8rEttQz*KjmXaqvc1S&+?tDf0XBw7#$ zMDQ37vY&YwjKzQ7r!Bi9FW6x)#ML@Z_1 z2GpT6P&je4E#_a?#9D04)V&%Bprz$=!)et2NlO3AdQ8~V9&sTZm#gUF>fOWQ2N~41 z%rxBD?RO$3Cws$o?}l zmpt(_uSpDMTJNU5e?@9$B%e-SSy0@nlRcENT7p_ZGt!b(mvH$A41&N+@!PL5{8Jb) zlYicwcmVOm_00-PS<+{y0(1;Zi3btebs&egXDFs&Y2v3kvW6ScVX4d)Dlm)1RY;t?v)sBLz^&j zFEUA57?WkPq&c#S#OY4<8y1pFLB}aAaSe-TGShEV>_%T>C@<180>Of=syY&{F6s@KBiK7_Qc+KB$x zp3|AE(#e<#)N89N*bF;;pST5Q2*g;cIswJS3ZH@Bllw905m;>D9_0pK#{fxscc3nI zlzMPFsJzm)%v)ig^v_>w8_#Zyi8tNz$paQ`&O2U6F_`nXtu1#* z9piz&eB-iA{j%-!cU2jr!=L%nr0fw64L?XqtHzNt8|Fh7irnHI0j>|u4oHoHSI!Z{ zSI*lD8OUNA^{O~&VTo9krQ5ses9isl&+v?5{`+XFHw$iYkJ4q6} z*8;-2O?i}ky`81Om+xSvF9{H}DM&syk(g(2`E=2s2GZjFrpgjg85yBtLuOPOP@=jT zcMHk7lZd9%Q^`3|-Ch(7p|w0i05OSYr0Kdz_Q(5?*PiR=cFwBk|Pz6Kp<)qjgBP-XZPS;_4p}kO-Re#6U zaKhNOHZ+*5nHgxX3Y|JXj;ujLC)^_jb-tst;D#koE285ik)d7Rca@cmBh`>CTTLGbmxl@^%~Dv23mR8+Sf zH6;GBY5J6hL-|ID<<$W&!P?2Q1<@bqnK@K?Mi2&baxF%I{k*gikTSE~W?`3W)yhEo_myL^v4k4}ohxYrHT|-O%x@nO56nKnV~V7> zs+!-Xr=mM0jmoN?!9MZSI^YSS%=t@Lcu=oHmiSwud zxoA}%1v)M|5I)cyCJ#M;q*d%ml6N-P0Hhpb@ABI4H8Bu|-TN=y5YZk!TZ|mp0d%rU z?``D3a1k>E%I;cgjhD)0WQXPr@;k-D0ZCNw%*T@qU_@1k70f4+xzqF+*Q-X78a*T{ z-|x+{xq%I0NbvihgTZccXKb{#-O%G#tkj$Sj)t7O^X32RA^u;1qdniPh7pra{SCF? z{3XTUfW)z^2PIU41G(E=PEc$Wa#8!qz3upxPADv#!H!_0a83ffUDg}!JKVn2nG?aR z#zA_SAM6Rv)D9p>GJfhwzk-&ZPicWaJz6pyxN0a1*9;7qby|78^gGaspNi(Nq=VnuGcjuSE^Faq)PlqN?jzmL$`_Xn)H7` zPH8K2*IhIN-y`w-#ZM#SG*Ib~j+&C`2WMu!qf|!$S=64sJGV|Z*1D$qQF{Uk3Qkyu zEhLGa3IdeFpSgT1rP)avjM>B|re;Glmx8Eoi!L}&ai+JsNT4rcYbIC9fmguw?_CKN z6Y8s>6K-;UQ_3Xzxm|{@E&6#7&_Az<)h+4Em}zU0+ld^bflYyTGBMpC)4ODLlQ~xU z)0VICq)C8DLw-iyO2vro67|?ST|f!*G!?FwUXgIwGytIkE3P4=ul8dKY?_#dibpQW zMDD=G?Gh-|xMm!O+7$4edNT4gTVX^!lX|&a$`xC8qQ?cjd2ajhdDZx1 zS4}DQgD0rJ*JgmeKdkXuE8PNrpd+IBi_|*2#$Hm=)5gR~1~L)RALD6>3KRv$+lq%t*C{0!V6p}A(ryUTLHdBvUewz5!Etr^sji|zF#A_rfmGEXakz5TW(zc~?T zZdy_0QIZ!b4$tImyA@wm!W&Pw8;;Q#Z}4BC*_5&>|d@*?jgYA{kbExxPsh(VwmYI zENJ`abBbe7Lk?^Rq-%j1Vz}|&z|x|TS*|e%t!gL{qM#vLFS&12YR2=FSmzAa3P>!t zo-^=8s0RnkdM@~P#qOPeaX>t9n70b-4t`EWfm#pdhLz}316fTXf1`7Yik|pzDf_8k z$OEgB?9-^Qw$ex@Wj>DlrpZrEz^Q03&^9~#$dW5RNi$Kd>=t&GM=jA`nMf~T^7gV` z%Rj{xo8LM?_S^FR5cb<z1pU%?mS{*PCR&{w)hF@K3$h>1pjtL zcTO6T$$X*qh@1P<4eP7RERI!|F)KavpKf5pIAA+L>oFT_#GoPPey-g$MZfJeh1#Ae znKDiI`aP@pnt~~E5s5SYcb?yQgjA9y4rPuVTD=sj`Taj>tC^f_e~l;H8cj7!b(l!F zb)QxJPJnMy6KT}Bpq)fNO#zrN)VhekJ2jH>1dD&M18*NE_50XK6WU+9|w+0Z+Uzyl_QNt@ z0S2(ns&FR{zvMQ@v%;DZL)I4dE`w{LceQNtK&?j6T z(x2zZas|2#x(9<5a^m;ywY%?_g+jZomBTm@2Y@%3ZAgf6y$Q|#S z2NFZe#E4>Wa8&85nbhCGjm=w8dwGSn%`g?VhehwGMZBTXuMlC_cg3jB29ob$MkhN{ zvl1j9XX-C+G;dhoZ34yOTN!Jwc;RC@0j%H(RtWD++p#s1S`a6gDoCITQ1;MP8 zJ0fw7^L%sr+(^EBC-S56m1N9lZzC^P=DX^sgO|^(%&UQ;(GTCWBQFAdnn{r%K7H_^ zd&-rn(!BWA1SA%Pa*3{~;iCP^7MfjWX@}%)?x0w} zsQKgvd5@R1W1ZgBH0HljoGrz?8PVn|Z^vBrK`+{cn`RY`u_F`p@6sV_8Csb^UiFto zid*HnNBfvT-X&IEkCxy*-}Pk42ER<;^Ix}I`zIVD`+xhLw0p3#g3urxwIxYB0&mAf z$`4W7=&%6!MA=a0@pIf}3L))DnmB=DC3z6R&vq@Hs?ua!+cR~3>}>eVx;t*N_)4uI zmob_ZEdme;vwPE^38fG|?j3Jxi6UvJ`*YG?PuPDp|gcGMWN&Og_OO zGmjAz&So?s1{ddW%tIUkYQuq8=s01tfQ{yIG0J$mcI~H(TSEF{#sCiPUYMM@i^J!?t{+1bv8d5G9VQX0RcUAJT!zeqIL?g|0 zp_`O(D0Cw5|6G8efyJd~)8ICsaH+1tuER~MdAAf6O#^esw#~`>-|bhm47&y6zUP)g zYuGKutHF_&J?;6}@2bEpr~z6ZE!3zqxSM{{40e@LolSAi1hiv?WegLCDH@aY+2Q_U zFY^gYdtb<>Ly7hVxJcQvXddv*Zq-dSa~O>0kEz3?HyCS?&c5$}Hd#mM`fH8?fGH(S zL*FWr83iknhZcel7J@-0@XV6%8RH`mF$UJvh+H134}^&{ZwTf>NUJ8LfsHk9tk#g5 z2U43Ug65xeuW`QY6W=tmiQCDT?Mt~RsmYC`H}%PHiZB%Y(fz0AMn62qj~UyeeLpWz-tKb;5db3Jks=Q zQ|zOxpTZ4sCoxyQmMx@{f{7kw?Fm?=PT(mo4!~NEYB%l0I-q?x<@s8yy3@)9Sn{zh zW4j>er8s1j$Jt_jg&fBPbmqQ=V`YJ!ZT9>yvVP)WLrm@9!0EjRN4Ii+BFgQNWFY@a z^pu9X+b+@nhmjZ=?K8xzDLAfEK=5x`nDrSjE1ge&Cr7TmTr=V=%2Wm9-udXqH>Dfw z_YJrufJ7E=Gc3j#{=tXR z$OKXiVw1mg*Q-S-9@3hM=3=)rn4b6!)VBRT&Y z7n_gMsZRO1nGyf6JS9K^t*+$d_Ltk?QZAX*#5GX1CAZKwm2mMq2XASyF82bzI7czy zQ(RaKXeY?1;O*Ocd=zW%aquZ!)%IqzqQv8zXk9`+%Sj7o4NZOlLF-m4pwwTq)#YLW zO1)L1=O))v$0i2%p9&nhlxwgbJ(?xl-X=ZE`2r-@Ez!D%8D{3~iV?lfd>Nl_zhr6< z1U$LK{$;+wo7;u%GU9Gee8qc?6$9CBpZRzUk&o5D0(6f{(<^*m8f?1o$xYgJ1LZNB z{}8+EV#!POL31f9KCby$4qR-w$nMx&JhS;e-;PC$~ zrFvmno8@^bH)FyHw3V)^nxe--6?vI3*v^RZ?y7Qg&&?nPO%;R36hpMFKrW%N9GI5K zq)r(Ic=}|Z@T4yJt?-J5B?lnlH-=6nkAKT(WuFXcF>f?rz(3u&iWVOB!8mLxcfomB zRy1gODQJl!7^Lk*MI&uXotShPL$~e(83W);=+@=;PSx-E%8V5fe`(z5JnQRAuk4q~ z@9pbDF?89qY3N4L%qpEfF2n_0>~+W4l8FNFH51HYi=^z zM&3ueuK3O!*udNB^*k@5wf_k1-*vCC2Iv}5?fL45J4bDQ=s^`!l-b6AUu|7(ID(aY zEAvt8bDQ`8jk)-MKsVqUhdxR-Ooi2Xj=c=)vfSDFmtVVMp2Tjss**EJ_gp)KV>}76 zItBve*7c@>duA5gWc`92RQ?bjSx`L%N6h*GdH-NZg5e#;=GadZa&~+bOHSh}6F5Aa zz6Clu%1Co$JO6gmq>k|OEY>?q6Tu3k6$>hC6P+x)+V81!n8zp-ASJbS)0Hw^3GXos zt(YCA_Z}>|2OF4EzgRvg9=3J zz4c|qWnhq?7bMYMqzO}bNvR&g&%L^gVH+L7#NA!l&gZ}+zT&*rg4WhGMv{Om`u zFe;-eU<_q%^!oh;D!;w0a`ur;tQiL$ifcw{5H$wNLV`QWaV2xU z<8ZW4G3k78=9dD00p~z#zd7#b1n37qiBpDFtk$#G)g79f)S3#Lauum2Kba`IC4c4H zG;WS|mHe&sR>j=f*7Hgw%p zCB}l1^LnDufC=2B#y!3d2w1#s?WWsh&LUnh36oXx1)|YST*JgJqI|5M4weZC$ebJ@ z?d_V?I&C#reVaSLIHRl3bw|1h=4&T(mVIg$#=&$X(3__bU6nH;v0u7kUWNL|jXa9s zc+p$(yUbson>J7PbNQ{hp^yD+o1Z81PH-Ym()c7#`oX`vFypiipX)#5UYm0Pdx>xF zc~5*HnwHZSBFE8~`GDFDZzl zrqd8liET}4P3oXmgWjOtpLU%{wy{j8)o-@%kfh|sm7r&aQhUS!zQaCPk8(4MJ-CeG zf{0^WkAV&9_qN~LzQ*m?-h&}U1j7|kW~-9N_{f114a4hgLflrykoXTGeEKhpO6FpSaiy0s;Ir*ni>SM{nELJOk76U45}L%fJp8n;B7Gz z=V7aEC0b8vM(X_`s8+jv8*`I@uNX7y#6XW2DU!`TI#K33cdXRrR&xHLxBQ#i!(5KCGiV~$AAMqcg1|< zB5Jb$jXaW9^QmFlx`ZpB+g~(y07K#W6?NC_zimM5Rj}pi7=Q0I8+R9qSkUhQ8IyvK zvSV(fK=_`$%*HDE{(Jp*$k$NrKMiN=vLu$4q#F&xw>_$(+H;yz4-e5~XCiIb*QxYV z&epzkHxS&$Kq>~`@7ZhAuwigr`~2n`g@hH5<%q4#OQeyJfX91S+6GYnqH zRQyju*3=}x(Ss37B1Dwj*q)MO69!` zg0^(_r^oac9h6grpi7Dl58&V$4w`?Qr;0D2fChn%r6jWo!4)~Bux0+}!)}klxYkgEVQYK+L%TUIs4q3K<3*WWhvtHK{F5i}Q zsS^NVsRVa(FwT0toOWlrA*^ z2mUP42ihx&Y&=2PBS|oM*(#Ny{>kL2M+otH-sD4xfjaJ1l$g`TWK%!SrbzjeL+&oR zJjKAwy7L))lui$^oj)PPjMnT|k|g(`UjGl~`?D|80;M_kH*~kW`cCb@4Erv&qzvP1 zrP~aSH^Ib0MTYk2*?sR^}wd$Lu zvW{T5g2par-*<}}(wOWfor1(C99zucxs%`R6zjOqmv4O}gA!XEi(? zTCOqoXEmYSo$~rv%le<$dQD=sn3{NLmjijR6@5}$y^Ck1#}5+xHuL`;<2&IIVF`WQ zCAxzv2U=G&n|A#`oEa&kVusGvB>>B8Q9sxR#-~#m zAqLTb&%ni>yw}=CK>D}RG5Lui?L$*b>qfJw1on`|jFpFzpg(pC%+ll;o?ag&H0PiP zk9s|LhxHCa#TdE8+VVU%1i1N{!G<))KtaV{>$0v`X1ykYUBXeuLO3pj-vW@r@|3@+ ztyRoa0$@(4-&tXhChtkIf+udEA9^L?@dr@n@bL*vpp#MuPYq0{4`T2A{{HB*~2<}y5Tbo_upz7#%%TjAU7qkq2YC#sQ_Y}8SW-T#l>`bp#!(YO=j0_@NUm z>)ftS8oX;We23W!PWB+CH&A}*{Xa0ppkgZQxeZCPMt|%-+QjXgBiF diff --git a/client/iOS/Resources/help_page/gestures.png b/client/iOS/Resources/help_page/gestures.png index e49a45b8fd29f9fd5e24d88fb18b1c180ee87fd2..7a62212dbe3a37a711377ea439cbfb4920157881 100644 GIT binary patch literal 45123 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 NXX?6Ya22b_{{x6Z7Ks1= literal 63377 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 diff --git a/client/iOS/Resources/help_page/gestures_phone.png b/client/iOS/Resources/help_page/gestures_phone.png index 1b90a1f65ab124907828e2af525bf7b2105f88f4..31f99f13e591859d2164fe89e307f8886bfddd22 100644 GIT binary patch literal 28173 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 literal 40104 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 GgZ>AEqZg?F diff --git a/client/iOS/Resources/help_page/nav_gestures.png b/client/iOS/Resources/help_page/nav_gestures.png index ab1b36fbab3381961c70741ffc084df1d20dad7a..50bfaa232f82698e2801f616fd290c3517b4cc80 100644 GIT binary patch delta 2384 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 diff --git a/client/iOS/Resources/help_page/nav_toolbar.png b/client/iOS/Resources/help_page/nav_toolbar.png index 703c0013a865d2850598e34bbe36613d816b5743..a3102ee33a2c6d0fc0e3264a39b5eeeac8783d09 100644 GIT binary patch delta 2010 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 LC8kQ>?aKcFh>A-A diff --git a/client/iOS/Resources/help_page/toolbar.png b/client/iOS/Resources/help_page/toolbar.png index 10c23b62b78c4f39cff927a99b5fa5c7ddb12a84..964cd59f4c9ab9cf9da7dbcfd9a245e727b1384d 100644 GIT binary patch literal 7261 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 XJYQt2bsUZY9-rrm8Vbd7ra}J)joiaL literal 10926 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 literal 8780 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 @9t4PQ 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%0A6td#NFxHGaoR|w9Bt!990uNLk9b# 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

  • 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ℜHZ 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�(yAh_^|7ffMJf`Ugg4YSbe=a$d~NB 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 literal 143173 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�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 diff --git a/client/iOS/Resources/about_page/background_transparent.png b/client/iOS/Resources/about_page/background_transparent.png index 0eba5b5d2dc374f683ba01a38d0d3c71a97cb2cf..c6d2fe64c87a786287d9f181b1f5750e407f2786 100644 GIT binary patch delta 45 zcmaFK;XOe`UC7hLF+^f&vPJE$FX|;{9GD#$*meiY*emQVWdH(CS3j3^P6&M2D{Z10C9-6gqY9UOIMYr%pXNwv$3k1*iMqdB5NHb?fl)_SWq!MNzh!2Toh= z>-pN;kpFXj=eyi)iAGl(@xGYQgeg^@_ZVn~bimq-`qO7$SVd9RegvJa=( zL2N)&)-WQ)GC>&3KUG>w{61+r`*U0JW~)OXVgli0GSMdmohJi`Ez5$)fQF$-LQAKS zpqUn>I|~gCOT8qBMZhDFYot9s7Pcxqy$B(UmujPQo+g{x;R%Xd{m-w}6!*EHbqRlR2yOvHn)0n|FOZhnQWRd$jxmz)*CyWZ7 zbT}U^GTs_;!P6m+LH($xV{jZqKA)slc;-;SY*l98(2%JaW(Su@0THwG02u_K3)JO) z(4SsKiyA6)3`CGgjN(72EWJ+!{V(i$q|cL(%KQg;x579Y%&fUCX-27_k;j^jt;*2! zAn-}4>NqvoELPF1V%)&H4QIbvz-6;;nY*<{Z6WJ$Z=6?QA?shtR#(dA{hZf{I4lXC zGk-tfA(+*I1gm{1uhch}^;i3{yHXZPXJFo)SGslaBu5}WE@w|(meb23IkJhI&986o z6FJv6n@+Wped|?T{P}%%!~FQ^<$CMh=8Y5Ocw_D9=QroS^5Jhb4xM+klUIKMbW2w7 diff --git a/client/iOS/Resources/alert-black-button.png b/client/iOS/Resources/alert-black-button.png index d06b66df18233a13c822fb93eb10e252d986dbf3..6f925683e06a16514467bd83189b3bb7c69cd2e7 100644 GIT binary patch literal 638 zcmeAS@N?(olHy`uVBq!ia0vp^%0R5c!3-pC1b*Ddz`$r4;1l9%V4!Dc2t@jYg*hc9 z`K6`#|Ns97sv#0^aIkZ5aBy;R@bmMDi3v+diAzaINJ&XbOH0bgNXg1d%E|&sX*oF= zd3hj`RZx&oP>@wrlv7fYS5i_?Rt6$P6%`;-QdLz_Qv)Jpb#-M84OLA|HEnHmZEX!5 z9U#)w)z#F~(>5^BF*4FKH8n6bH8wLdG&3_YHwPjUD=RZ=YcpG03p+b&M@JyCadNVC zcD8qMad3Bca(8$3^mOs^a`E5MB{N(wE&z_fyP6NfCc)B=-RNUHo(Kqjqfe6cklMXTty)IYtEEu!PWExms z7yUPO;bIH=zc=ncZC&@O`;5mv+r0T*XZ+6o^|!~zEZrX#?6|k@Ro?aH*A9{M^&T5t z*M0nS3tM~t;_n-;xW4ayul?=0z^C_4Hs533&RbNuXYENnQQub{Di>7+f=ZYcb*yVR z;X2*XgS#W5KGywD7sAbRabVH_r4&U?Cm|nWiH;(6Iw+y#=t+CPS<^WF(a!Ate&65k`}us| zyV{yHD>~}6C;$MW&9e>J;+iPF$&oLM-=1~DJ{6aE!Dtt9xB|gP@HC*KxO^HkGlYZA zrU|O#{S$O50K8D(ve^Z@B@-t(MoNTqq<+RDq5&W^-R~jDLRtXxX@`r|LOq9?A<#u> zp?L}mV)5u{r)zd8Pv?|o*~rpDQbR%MX<(`!7YP_zAV5FkX1%yy3k~q%;y!c?L*Rgl zP^g6low8f3pq}GtP$5N9NJNQ%N>qx<rD(Z7-%oayF7x6 zW5Ez3kke7FLg`Oc{D5f?}A+VMKK@RB4jyR2dn1gGqxZ!dNrw z6$qB3!**Sw-9fCv^js{i=V?OVcpJyL!yRCCasuadavo5hqW~=g>0(22s62zw8fe~C zOj9PFW59v@;;v`dH>v*gNYL0(3OZZ6az|i(- z>x;tE;h|Y^Vt8>h($2Qb1AqvJ*`TxeFWt7EDQuq^S7x5_pziCDwd_$Q7}H)89M)LU ztxHXggRd=Jzs#Q`>67@K@QVEYh?ls=$S1>B)K5RUa86Hd;9z~;wJ8@Vtm(5~^UjsG zQeBKwAJHDD<$nN4pv8^Mj#?_x*Z;LK2 zPHVY!tKpmRYa16VEb~vb}8y+=x-s=oBsU7cCJXUA7blBKzqgh|b@wiTzeP$IS~G4aU;^9Jg+dz|iJ zD@E6vi_mBqbg~^hcp{J z?o?Rby<_QbShkcIPN+XP0_K{I$!qp@yeUk(GpW5|m_@4(-mROOI~HpwYqQ4e*>Gy- z8}2^CoWKMJNSkOy|Os1Mm9^ZQhA%kyd&Wf zV!HQRMnUdJ+tpc<1IClKRkr=fWASb8wU;)@9gd#nm~v0x@#T|Q6XVHV`(Epqs#U#n ze?vw!SeM7RuU}W33FOU<`>wL`mCVff`eXYJU&&khVnp}-CEw2yB#oOY+{&Ic>3Hg6 rXkB2!=!U4cn=|rbY7@@)k6r{E{Hb?O+X3&9(68KV%rewwEGqvS5XD=- diff --git a/client/iOS/Resources/alert-black-button@2x.png b/client/iOS/Resources/alert-black-button@2x.png index 4caec8ea3433e36d506619f740521d5d65564cab..4ae404eeeeeda86c06db3f83ad6aa8c4fb2a03da 100644 GIT binary patch literal 1142 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ℜHZ z5UsO+w5N#0UrHv|HZGR!Y_C4nBA%XNocCQ}5d`9082@$m63!wetP66SEY08Zy9kU1 zrDut-H@@HcF>qphvD2yz$upgJH^FP3#gja>{0fY9n&R0V*H3WwfxcQtk@{5+ z;qw;e72`SV4jOEG$oDG8z)aWqu;P`AI7uph8`-t0LJnn6Ghh0upg_IfG0+4#%$W<) zL%+mh6tbn}Ny$v3cbB^o%94%&t2k-3a+94J=Q-hWVF=jDIQi+uC^~FfS9kEW0E#b)h|rV}=k(lH|y_ipCt7fhWF^MM8z5o18`(Vh_6J z9)G@zJ&Er2p4gLsX6Tx%^O7i1V?y^6&)?XLSoIUk1ey0gEXa&+5C{$i*Ws3+UR0@R z9^|AY%j*+7wK0#>Gfc`DH+TN;gHtbQCPN&9qHhXQ3Hq!BB|MyiT+jr@N##;livGYq zl726Bp8cOw_IhO5Mc9icJN(wG^R6O~Xq>fh9_d^l8~y!njJKMXiSW^5D3_>f9;%aO zY+C4&%P3Ezzili_Ox;SUeza1fp0NoPA2uFV)un$mM*P*VK+uu7(B;o?v&}^k5)F&> zf|Jr_mrH~0*U?9yISvzr_GWa(12=(OD;NJF0gt)z$A;LR1~Gc+T8IKE#)Y6=h)8I?*i9fM(Ll5E9-kX13V0VQ3F@L zgk>3WR#>CqD1$uKb%qlBuJfJ86;M&Y0xk{-7PVgg!|Um^XvxC5vb1tquo66^sc_iQ zUTVG1W*)Wj<<;+r0Ry>7I4JB9fD6X+sf;4wKV+Iur>k5>QU!dTw@Snz+5N@RWHI1? zNAu5u3`+ zm%i$yuqQ%_f^^8T%x2G#u;*3?UQvImnDp3uRd^uVKi&px@wfGcKejKE?S1q;f*5yn zx)|d%8RI&o;nA%wN$kO1oEOE5htig2&zQH@rSJ-#h*XwuS?=6M zCK%ksos3lDqTUot`(8}~@*57L7PmbVYP*<_YlNnVGzqLx;awr}h=S3$N*pS-GzH|) z%PxT<3j2~NWzxq;gCDwG(gVWsRLQ}zgJtr97v^O-BZw#6Xkf7_Y%Ij#JK`wWneXB# znXUM~`!xgS$`uB!Izw@cNNH{pDmaSlNAw`)E_WPsc=($iF{PB@4h4N5rf%XxMR!i8 zp(%chHx}zUvf~;>ce$qL^;?i~eZY;azF|B}6Yrcc+DnszWqpGq7c1X?LajCPM$_0e ze7P3SwLg2j&4}{9lb8xt2#Z)|3I|0bfg(5_?n$z7alM0NOVhRtWz2P~;jiJjq(o;L z={IGug!*ImY!u6#JoR3mWF)wvKY8I?8YlAeIA1Uk{4^Rmu)Z0sX9fbJ? z8%x^J`7YI)qg@d4-5b;17*V;Z{WumwNh3pW2Zc*X^lj#&e0s73s!vc~3bH zRtl!q9hKivkfLK!Y9K5?;rXPZFX02gKv5P4Z4$<&3?8NQW$W{cYF2-~lTX&%=j&pT z0(Js1>+k!_br>(McNDJvpY(s%UnJj4z3^T5H_0D$2cIf{Z;Iatdp)^&yc-is{Gi>? zqWv8yKC+x1NWBqgsy@?*KAp-X%D4X79{_la+_()77+z0~0kF0M#~T>r5iYi+kCQILSfqrQPX$w`!ZYdDqv zI!>qN332E|w!dvav*9wVa5FsfU+*!F=UMsh?f1#y31Im^GYAv{#-HCf!yk zd;TV&l#I0xq`3Ah(1mGpaRm0WA?1z3^Evg6Ec|9=B&Xigz&n7lnwfgeG!qvMDrGfGU^TQ>DI3L1eQY6l>}9C+ zM)U>81&YCS!iD8+=vSyrBxr-TUofkOTx?+5jLXyzMv!J93S&V$wjKhMe4#b(54yW9 zk&E73WUE2}EeTzJ0beBhsn1`x*-VV-gW=SZgmM32d_oIU`;c&zC+ix^VIU|V#oM?afJkKmfv@UA^)~5wR^PmyOyzJHQ;38!@d@_8=+AlHAl}oOt3|wPHm9f8GXqVqk zV8a2We|myszMj^L|9RP?gr`BYbqM|TByYA2kX;zisY9TzPDi5jbnobe!ARTS_!`ls znzq(jw+S@Kk$;J=O&rE`#nUakknG~ts&d|mW4<`@f5fAtCi`3U(-r8zz=LJh5FKrSBdpv z!_785$d&J>+O%`Oi)?-5a)DPQDe;_uW41)l^>xChO+)#mk}FZi^RJXE$&UHji^<~C zNhw;w2<8P@(zv(Ib6^mtulYx1p*_M7#j-h&+7%vv#~6rYj|&pYHVX~}|l6fQntw>uKP1eyE4Vzx}tp7@ujTRS^H37-?I zprWRrB0ObG6#YFb`d!0SNM=qj)Mk|dqplIGVUn)^KJ^8eXGPsr{ILTjjMho^Yv}=8 zF~2vjxmq}oqq{>K2+$u_ zVJmkWwzheKell&jURGZfZK_vU`kl|w5p<`~cfSw6!&HWT-aw;jZ3 zd=j$|1_pbqI}Di#WW;g&!Rw;D(KQM5=5_mg^&&?R9)kJ^daIOWaGZ2Wk&X zA$rNG+3XEx9!ERr8J(Kzs6L5|+B(`}KIwr1k&EFyhaUvQFwC!B@L>BLXGJCzMK6Lz z=!&kx&PPZ0qU4ZE)jV&i-_kIi8{EWmj|=vg@6MOXf(5yUxwmjfp%ln(1bAW!r;yzG z3RXWorwv&{3Bx?=Ye$fE-oQDTM`^q>G+M&bN>xwYe-Ei={%&naInXI-wcGaIb9*dd zm$;q#@1o!HTy(snq5nNzKQh+al6@TYONS5f27cbK?4^w|=mm^2E1;{lRTO2P5S?>| zQ7dcp4q@P3UdP)?KnD2TPa+=k@9}|1>}yMV#RkOxkss;NoXvhW!2&?->Tuye5fO4NLDg? zb*vLgGHzA%f{#i=fs5jJ;G>hwcVrQ!Mn|iso^+e#()4#u4 z9V^pZwVHg8u#>76kCy6{>S?ucL0oJp_``#AEMFL1PJW{R&0TP$rre`WZ&d3aGoqJbjH|y*n^)AKQkD)MyO-Mbwh%9g z_I=?{XNkYnW`%)~mCH$V9&Ge|hno}xFd~iQJ#z6*kD@XAb!vyRrfClSs{L?%)tOR` zO(5RY?rUMH&{})^P@*D&9t3DE-pRlPwMJgIpciB{Q`O2&i;@#JR z9-owmV+*D!a4uCGU1=x3QG7r=BwjqW_6iSHOdpA_DFt~4wBLko(um(zCz2$fS-Y3b zUxa04Z*Lg3ETVVZ-nF1$+?Al^VSly8u0N$$UhwM7Q&L#y(Eik`o+bc&28c3h46yCf zv_xsihGSn?JD=)@fMl zY!e2yP%gAt6M+pS4orn<>c7PO3Y->#;6q7bLLXazqnzW?-uz4I%N!_47DrAT&)zx4 zzl2n%rq5w?T$VWyeTDY&_-fO~JZ7uVIwtbwP{h=SLu7}xNhp5pUPOYh-QDY?XCa5= zbs20@I7&+zt}XH7OWUy4Rq6)D9_D4w*ExtYXK!HZmAYgFr!=JzJ8%X+mUZ0h8f$#Qk;|j zoC-F-rm$-aN}k}jYb+fTd129YVHz2gD+_B^~qx|a%p0TBEa~&d7owF2O ztZ$wr^dzu4jCa{VVsM+7wRU>qLtnFx`DaS6dJ%@64?++OM!zx%lhD)u5|kp;a!%?c zRmP=9or`nxq;PlTK*EmQBw@cPq8V9Z(aIqxMd`2;>nzxnW}wDSSTW)p%p*Cd3Q<(x zmJgE?%_s8SPWpN(N7rSI@5z^aT}z2l@JH1WF4 zLwiwPic*at-;cX;rqzQL&EmKbtOxi$avh=9!aXQIQTc93%@LVOZ`YEVFY=q-QPD6F z4SdlW_(CZ~d4vH|C60=Yzl*`fO`BY#RSOO4^pJsPQ0)uvp&mpz))>}?Z2l?X*E6r& zOQXN`k1DMqsqh#^}1boxBZO9=U*w`VeEvIS;lo? zf6Y3NdhxTddG&^2?$5?-XGZ5q_8{U%itgEa>@}Jz0F2cea~HTglq=vk*i~v`0z~KzbC~H1~yWC?m_=KfJ~gZ0{Tlw%^voBl$$0B`tD}e$;-R`l_`C5ZK~!eieeFFDT_Nd;<;~;JG~c z#&}w-pVy(Kf<^JTi8pXbzhA;-%KztoA z;`3SFYg@%bnQ`Lk!iP6G%`tLNqFym*+E(%A)FB>(3;jR6{HZIa`-CXerB2_V;lK}6 zM5#7A+m{S3q)D<9)83QxLVRZc%Qa=Zh37LtvZ%=2l{|^%0_+fGVBlW35irwoW! z*NA3nL<5qwn-b)bYZRYELcl269)X!G;J_-)s{KI|9aOwF^y|>!aAb5laq#x zkOxsQ4B~qB@X-~R%E|~MBT6sIwD*NCTPp^{w3qT53kSqOH>l>}9}S<{Qs!G` zHF7s3E)c5AtB2BtX*i`6A2>I%$ll*IX&3}TrEyKHpdjHQ6dh7}t=S*r$s=rABTO2DUv}4lJW72g*+A)W6zak9d|5kPhng*_ziO zkBg0wR?+jKk#+R3s@?iUBOVXJrtdOv%Uz>@GaEh>_#ryU&8eBkZ`Ew~AS;Opm($s^p_tRQva%3PUe~ zt75+)U31#>oPk&F1Fv}QwIzlj`+O@ukhV+CEwm7_Bh@I;S?hk3SD^vh&rgv{YLIVz z7t~tBsgd_QPb{8TJfUlPN-@BW_~?t+>I~-1ztyb$z|GOoCF(~t)(E!u;=!_Kd+$nj zC4dCQiltHLu`K!W!Ev-cd}J+FPzWYPs&jciMgE$GKEFRB)w#3J&lR=83hSxh)))g% zk@Xb!5ZtCP7brr+SRHE04dWHbm3+^tnWU?P1h|M6t>UTUJsu7EhQjOh(aGl>5Y9_3I@GgVOz`Wo#bQ&K!>))57+`t*TyO@K;0f z^)9M4#GSgx)Z&s;9qDZUXfN`T9qx6y@w)L;EWr&nWnB|RdWw^(4O-#+1iJ6tSO2I1 z!h0$Dlj22uSV&vnQ6>#;i0AgRC~Ao}-~gk9nqntIHi4AJINmc0P$1Ae`Of$dG0;Jl z2QbY`d*kyua{_UCt=x~By_uF<(Hq(?+gZo{zXPxm-=b}l4Bvg9Ha@0=|H_f#^CqjS zak*a=(IsxQSRNAgfiH}WDkCZ_BlgdtG{n8M3!gM@(GoOn>9%9VrrR#HE%<{+!qNY5 zAtoD6TZYSwbB%MgX^^Vi((Q~;Q1AC{$l?`inClCRK~feK{Ks2DrLST7xtmz&D-_EJ z177O*%{ky?PW?w^v9_AqtMi6&N$2>3y=E5{gj+nn+xlRy`Pfx(^jS%vX=CCbXM2@5 z&Udl=Z1s8y;wIJgp?mAPebD79ccdRV`|Hhc_oBz*6zvLduDh1BMXE2u{vEyxq2+F! zOfq4#DPB9#^ZEOJ1!RZJK$bHVt>onS9NsV9=InMpoDs!|*^k&&PE}Bn7BbFyu{v%`K3`bws zw~V}4VJX{LdX2I1T}H5_R_QgpXbJie3W1WqjYT@=V%Xy+Fl^GFs0JY)FXC1ap`Z|0 zsf98{^9wb#3;WII`8n(H%#jo7FVGX2$fd`&>9@w|tBE3Rah7J0C~Wiu5>2I}1F;+vL=$NmLMB#8(RR%-y-r*GBqh9p zV3&v|zNW(PF0PHJlojE?Pegg z330%ph9}|d1y|{85sg;hPvYw0V>XLVIC74UYXm6)gkSi+vQd0Uwm}VIboRk>@9>tHu z0KFV%Ty={;)Gb{0k%q=v@$zLK0U=>0Os`g0Q0dBQsuY%gQzqs?1A12d!rbv0KAZ;RITsqR(_$Vsa<{YdlkMj576MoUAM^U~rvt%pYA5)8MQ z+&@1GXE@b6E|dnYOfq;ZU1O9FTZ;bd%}*6r{75Sn$U#H6n_ot4%|kOC!r6J^z6bc= zQ{Aw@c?T}6ULak7n*F*VE*$)eztO_YrAfV4 zS}|@YAd6dn6K`#yv7iTwQ#GqWp@!tNNnH5gi2PoY_*&n3xj`XW1xQ@ybM`b2JFvek z-G4Y7oq(ZN_rdLN`STs+7z#1F?~h#lKcUBq+<(~BAu(b%X1;O25SSo}k=c;|0V!V& z6?$TwP%s#pffqLvn(he=3Lgv=<{lmOJXM+;nhiNb$tts|Rmv?xq^o?7?$WN3jvAB{ z7Y}D6v?E?ToY`WqWlwehZ;joNMKP5@)Xx01x6Sl0DDnOWt+Ap`-!ojZukD4B99hIM zEtmaI*ENJ&{$a};d7{AUSh}l6bzPpbJFf>q_dMrgYE`maQ7eC`s~Q)WbV}l{{7wTld1^ zghG)puyxXHW8Djm7$mQ{t9jq6bM27kVPFe}ho!=^F`L=>`f31Id0x+XF3T^O(lre- z#2&5W;n~6iJ1CRuynbKHQ{8g~opY`B!rms#;5-bvNV74a8>0(o@Om};Lc@%ro2c+Q zD^M9daGH-&oA5-!Iy>tQ2nAb^jAk^XBmXSKyatRBqT9#Ospu32)cN{eAMm?}avo>7 z?}=PghT>vg+2KWHnMRb0YBudr?Ix)44c^P?K{Fk>|7i1WOATcbt8&;m5=-1CPOuV+ zlf=l$bQ17OIDPB4FH#iks&Y(2qh1dQiVj4WdG?#_P-WeD)Hc=pviXGEZc1(1K+hjID}8A7Psi$R?0HA2 zbu*uPHDW*8BU97*ml&jlsVOk7=_fyjp4H|P^AI3}%tHuN<2h{e3Bi`$3-OBf@9^CR zJ-~qBvi-`JN9G~Jd>Q!^N)pbsY>ci^YVknbwk07+!YlOE!?CAmEX_3Y<@D=;ei;ZE-2tn?QS%(hUyaxlU~fV8>M(@b+h^v z&F4x(X4N-4$hLWJ^9JqthL}xeY#iF33DIUn2*=@*O34V_EBmwh)2hjFAA-lTOA_2vw({EDb~KHWw}Nn8;1IZ)R+!=4#My|ON@fNKF}lY<{uli-%?=S zakmxFD5ibphHv^X#J8T%^`7o`bmjGT+`ZxIGUd>>^t)CW!j)endLBqP-G^`2j66@z-!2S$^x zMEmtPir0Qv(j6U7ucaU9O5v8MS^2`o5U*__DmpFnc~w4bm{RcU&))e_<@C9JjY^_i z=`}e4S_VJ~rYg9#0@lwyRHN8?_r1XWg;)m);~m=~!*>pd-jE;K&*_&cGs@|?I4(oP z)jS;_l&qWKA&T138aOtO)h;XlNLv?CaU3H&oGocjO3P)vg~oe)M*MozdX}|Qsw0&@ z83qI4&cd;QqEY_`m0GfIOlRSp#WD-j#tt!=5i@ef65P^9!i9*5H@ALPg} zv|h?zvg{pKNvD*BzTrlTo2xBkVH59+!xVLoMd(Tq8v{4`gZo=q-clLLSVw(+={E3G zxF*^jFp6hsiorME66O0<6BnGO^A>+msK1%X8>5;>%(ukY?i<4J7ALqfM*FNOI!lgf_K&Ao54BSSux~0};!HQ?N_Y1fQWUwKg>x$2xXO6XiZt*hV z>+ogwsNKS-4pzs?kA}m_JtV9Z(&fvvRYlrG*0TYsk2Vi0cjab0li2qI4eWU$8N?J( zDX%*}wv{xYlFQYY#Wh(!2yqnH@Hb;K4-RYRri=-iWkm!T+@hH;>`PW}#qNXq)tiWI z6RIxCmvIblTh!EVBg-4LEkY&$5YZZZwz?hIgUsd$; zAzn|iztv!>H<2qnoE)07VpP$-?q>2xD=U0S4T6c;rQsg^b(gh2=q#cm+n>)KhKjG; zWot&meC#tswbm4SP-aqjYzUI9i9w{?^~wpGTOH`m;yK`1i0}Nbj|K+$Snw=pBH;V; z#VL8osJ%a$W>qd#{2C5ra`DSc?g}3@s-w6V#w_6k@y6&l;rG&c2Ou_z@?Hz=QobeL z-qO7^wWKS#Mznh8*sqtSjNx{tJX!B@5r&Z)oXPuRBx9}ksw0`~lLK~g)hzRo;Az0- ze);%s-jugIn+}{H5pJxYXVW3Dlub&@6t_?99XvBsPA1jxM4BSA14}B?4jl$FkrQgI zp459aPv-g+H4VVzjdiptMWuc#=z-NA<{*J4PvUDnkj4q|lKTchqZmE0uIw{hs~ezv*2_yO!-QQ$q={(D4!_psah6O8vK&|d3;MGB0D?%~yI zcgRne{jG7ST)ea2{y09#QrXU#)W5ag-eTP#Vx`_aRi9LjjWE5D3N5?Isl<-5XN5Yq zy-GH?*Yfo8vI71w+6K^Lf8coJ7>rYfbtG0~mPB+Qdl)I|=F_r$DsOx-FK<3&qVh)Y zH2CM{Q%fPLF2p8hy_XKCrw*VuT_D{IBV@KGa*V;dbm&49@fz- zcliXP;Q)_AlOUmW32WAf6xO zyTEsmoz_hDf+9%0(x31m%fyT zCw@1tORk{Ay$ew!(ujf4fk>N1;ZL}kZ35gsyMJY*y0GrDM)g7@fWw|oy8U&6iT0#YQmb_r@cbhR!XC83l?!xK4st7xIiOPr8x?^pcq;D^X< z9>z(Kyp*NY{6eew)q!Gx`5IfbPs8a{uZ32dQUyZ=RY>lcanqKG>4X%*bZRoi)z z!i_Nd>d?hS(vZk;E_JVwH+N!{$ zfC?ugD%%hw$2je@i#aAdZUD0+xn=!p#uj%Ez0!Tv$m!2e1lE%ot2Nh$F5~R z_@4S37+lSFJRX3%iz#Uqi1SOop61AJb~URrz?t`jVya`HUHKI=i&ff*GN0k1y`!~c zX&JTip$m^t`jn;brZlApA3MsheA~3gX4+<&QaYS5(PEH1y`)BrPEM;tH^x}NeB}HQ zOdsSIK4J$_TrUTO+f#p32Uq_ho0KT_4V62<;vy`kcYyYzTv2DlGuv#_O}Z*bX!e>H zJ_zN@?Z(jW2Sd!aWVJW;iF^DU0}V1ayHcBGZzdb!poM(apqRI%=9&r9W%#E@SwR!G ziRbNgtCsw-Na=a|-&+d@7b$&u{=VyVzHW@%!GzIdB1oECy<%h+Aa>W&Cbk1MWW5eO=?u@K;j34QZLfo$BnMZE# zrB%_y36z=dJ{gSH#W4;Fk5twyIak928#v~xRSBkVtSVqHWxYzbpmHRLoA|w;OR+e` ze5yBNA~>FY;QtW&?O}Glf(bd{9jIe*CN%c3n&q<>t+GIxi zOrQ5~9z8Rmb@xNSs-c>9?L-_8}n>=~_b8)Zl8P7ohr zf}|Sjx2_S#P=j9tKd&>A!;;dpH~?dmmZoO!6V)~X8+d*EVty8wMRl0vuVqQKjxDl! zSrlZ3V;gCWcH*5eq)(;Ko1(Fa?nGM|b8%wOaC76%H4F5`F_3e19Sve`vnUtOV=#oS>% zdN)L0ja{OVFuv=qH2D_IhvX1*ymH--EoAb`Dmk6b{7OA@j~w0Q9%@-ikr~a%rmmV0}o^@owseT1(zZ>QM5>Y9u0rfJ&pG(mLZHrcCl1#4j z1QSM-hd*!GQb3%T`BL(irn@~J2jswv{yyV$>L(S-z-f#N>=KkOX`C0oN~Zb%$)7W^ zmLfhN|4uiKP977wCO1HHw4oPf@4NY8+%u~jC+im>FZ=xT5 z*6LGJ>iKAKGue+Ye~my9=e?TMOLVp9uiK2lQ}hGL@@rYAsi+j0;rT)5-1AnRRZu~9PVf)$ped;rYvz`nJ8t35%Pp&P z&3KhD;-MI9(@q$EGQ)Zlg;zAHh&kF*nn~<;GZd}%3ocvdQn%^Jx5h92l5y8bY5O}A zXX{+fKRub{ccnpON_kjS;-Td4Tte-cWPMIe$`a6Pxc-pKEETXCN>aHwU3A3Sbk4#* zii5?}qz8(odh-Ky;7sp<-pm@qTWM4$3sC0p?#LcZPZ)GhDsD<7A@Mw`VAR6-U`=D} z+aHTF<6xvQ$&hWG&Z2pESmoto2LXGgA>%gn*VLiBeD)U+XmQ%4u0kX!I?S=cJ_UWg zR`1KbH>QNat^80RpE75O?0GCEBGB_W>iRZ542fJeJ(N?Dxl5olzTWBK>FnQ^oK^bA zV2!(@tHP`%`iULMw_xN0#+eeDm|AD~)uN^%?L1hhYr^H3jiy$k$*a}RKig+(AzWm4 z_c)9}^3G#O{e*S&T5TxQW9ubji8*%*EOZ~y8}5EzyD)L-|vjF#e6^C z&-?v;y`C>gk`UU0vh(kGYHMFIP}s1cL|0NU`oQiT zhX&T6{-L@A&1wpH;`_?`SoKajZvZQIn!DJMo0NM~=CR&$9lLw4Iuoy%o&F4`TlCE4 z`*Vt~M<}>0W{=WD4DCt%Tj1n`Iq2%(R`W=9%&07d0~x!91PL(%^% zNm_#A;%;+S>l6TNk>R)B8d^1OAJkgmWHO<*1JhxFHH;JHvmZ6Zhw^?0(_NewPMn`H zolWO~$*%Fq`SAJ8k6W4(C`f*AWs4K2hr5q|z%pFUJG~^q-z7x&{n+WBtlR^P%Z0w$ zzS{6n@s2}j-?hM*6XCw$xHRFKesVLGck;A)>ygBI;H7t+CO>pemhgJYFZ0HC_Vxpn zLQi=3!qnO8DtjrfLlVy9^k<2;Ih8gMkqMfmh!5J1iPm;*h%#Jzg1+*U_cV?;?-~)^ zr@gJW4^!GsHgb7Tf7H;!11MI0244c;?kUS&xTm#mD04f#FR#+bwA2WSOI%G?sGXkL z$0OvxFe^1-Ss+soY{M1Q>`Z3r3Z8Yli*YC|l)yhElbI4S4->FiFdKs5*gmI|7&Ys})X4}`oLZmaCv8xkZ0I*Zlp5`eDT$+XuXJ&=Yj$?M} zM$AJQe3wG+Oq~!WN2_2_$6hC`Tqcyb9UJMM5%x*}cK14(FdM+E9co%pv%BKS;t|s_ z@&r?Vkls&d=ZKZMS#Cs4Kg-SQBlccJh3%s$qL$24d%RG*pDIa}4tH^EVENZvJYPT1_M;@}SF89PBL-_((|pXyz08t7ZlQoJKN5 zp*zk%%c?k%`7}=Xnu+C#;a$xOH29$-LbWu%W#th~J~>2OY8uV@x%IRB#7%+~-(fkYixfsH>meKwH`4lJof)*H0=r&P zZD!Y7BNNUuw9KU>s_uzp#ex*}dTRnq0yN(P!#mEL0!ns+C=spy*o#H2weaqx-xKug z;SAF!&lC+@Ael9bUkd(k{*hA6Sf2*vET#Bo!65$AtfNQQ$)y4D1(QpeRu!z2PjGQ# zw5|yn;0|eY9W^o{X#Mn>_0x3tEw*&7(W{w)+gDf(+H*gdXH{JaaQ z)r%!NT8~Lfq&-UoSy!EZXf6R(t6FjJx6s|v2$MJT?yk75IFkuIkIv9AFaqq@+0uKj z@e?_0U>>Mb6&`CIx13u$lDN)y)S(cK(U+}%qT`Haef*}*!v;RGFRtWMGApEeJZ@HC z;$gI2>+vW&^ytl?IrxZ&^wqwhM{cv=SkW<{7maNOb(Pj*;o6D2piBmP$n(tiLXu0O+SGyj99ei}?;N4JQtp+WcrCfN__XlK@xD0C zvP{@ENDCTC#+XYM#?*!y=5M=O`u zW0ML3{~BdE`l+qpFt>jmH?P(lS?0!JE0aWkLoa^OJI{tEhYBoS z4eL)vL)QZI6Ldy1mw9SL3h^@1GGx&I>o4LG{V~ZV>ITfT4pdRpsYPyX3NQM9g+^Er z8Y-(y1N<|cjQ;MXU<~H)>wL<|OM2UPtOhJFdMdafoIO@s^p*i^cWHAz#OT_2q4P8X zT;mK)Vj-tuuxRjOgd60(tb1EV$oYXLo!YcB-MfIqc@%30M zr;@H!1qymZ3`hA;j#aSpO zur&l)N$(2uDCf&KFTaw{lnZ5~6bqrtJ~Yf6>gqKr^-C?|bkPxrz2r*$`&QZ=f8fkz z>@5~Mqs8^Fu#|UtX$5OBuR76i7A9#8q#i@n zd|z67MdgY~@V_6_!}n7=uE<;?T@%^Qcn+82X76`t^*4m`R!3%ap@Z3xSUn|o@8rEx z2y$4!mMC{+A`m2Th&w{Dy?^JxA+qP`t2t|)`3Zbjq)uhvX0@F3h1gE$OLDG^av#|v zaSgX+Q?`ee{PW!YG~(l3b#1XxahIaot#M{1T-djFP0uEfT`@KxwGEA ziuL_ zq$pQmQ29t|79|DzQEeN-mZXqck48xCtzNHDt6jNZpYnwWX^_8Nhmjgaic8%UQkBTf zwM_(ji8eHpv9H8~{F zJU)xDU+AE{W^F8;T&ynF#)kGQkX$aEY@Wwc#YpB4aUYKU&*{+85*|Y@2C~NrGk+nx z9Ob zN3jwRYOBAkK{2fUIlBkdjN*-#tG&6nlDDmPeqP`Yt`=)BulhCgXCCH+cQ7jAP(S%y z4ipv}W98YGD#HhL#>-;tFJoqLMj6A)VwJlL5 zFofJR&86<>N*tA^!1~}KR2!KWWeiWEgxmlg9Y)MMB!swQq-K8K7XCek5_RG)fp3i_I@A** zA$$L*`eYN|v_sw6KQc_Zpfh`PoFu9{yG=Lk|G-iysb@2;8 zlDOE&SYO+TG^i~^boDeU8HI+FmrzFjVt};aBMES-9i_W6nhaT#D|9LA zzotZ`WvrMB|Hco37KNvo&A14f5Vn(bh1cUkZG0|LdbA(lB3tDvUcGcS0sw$hHruX) zE-;wGB#j=uVArU!T_35OM=oq9OS9*t_z){!k=Y?&!270Ce&)3?Ksuc_?9IpR%{Kz$GkE)my*W=a(L$z~wi~<>pZJ{)nKGF63j$;c zU7PsxtD-YlL{{>A1A#7N5AxAy8Pl%LoT$dc!KiWmQ72w^KCjcNmUN(*J zg9Uuv8sDqVrt^O-{m9GSOx9pD-m0Cec2XnvCkJWND~{klB#x_G^-if-7lG-kS3j+0 z-Da)6h^~P9&in84ToY7^cz-PSYeJNeM31%=Owuvb#)99z>D+l@lpMbbI9m=mn;{cA zy&11~YSXKa4COZ`G%pC!DLvt2U{`;b0clQMg7uwE(!~0On;Z0;|D{AnbZxONKX!3G z)1#wEEzcs82kLsGpTdNZfNcuVh{A{oF)(VEB0hEjEiTo^dIUzJV~eoKRtYA$y}Kvi zIQ9;3t9ughC5URX#rH|%KJ4i?bdpgaK;CwdBM_vSvh!Zkqno2!HooXpTvfbJ1tWx5 zd%fnPra83u784UW@Rr9GDUIi>^@{so^T9^t#AxG9lfIz@@xnvyHw}B;7@spY<-R~S z`GZDt?kfqyGi^p+yqDN*q;E3y&353X59IuwHZEbz=yt}Q#)-m#eEn6Y=T2EitXbCI z!wzRD-Wn(vU+103Or%*O{;+RpKrAEDNn_jeFVpri<=c;g`TuEEd@eL`_fy|?h!(mZ zl1Fx^+kil&wBN3fUr3#t@?69(gfNdx19VX&K^|btcUTzk*tiC{Tk`2@23oz2?gpM2 z0w5TQ`sU}Bzk{HU8##CSUakB+wN?JE$&z?g@A*hL|5mMhKK}%z(y*p8syPZ7TYE4% z5i`GK?%tdd#yBhK%Nd0S2O;= z{y!c)8E#m*ZVx�(yAh_^|7ffMJf`Ugg4YSbe=a$d~NB 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 literal 143173 zcmagF3tUp!+CRQGAc}!Ev;^~(q9o;oku*Avc*zSHgNE1Aym7{~lpHL}NjGVbj*duT zHR&9%9MSPYPEBSuVwib3Z^z8gGcl!QzgN>d~SBKui;uYF;$ z)_R`j`~9wu6CbCbw(a@*{s=+g;ck!-1VL!X3r0b9z@o4I1Dg!CT=2h7f`MSL%>@6e zuYmNNRK5c@BS)C?RYs1$A!rxF-OC|%Uv_%V;jbXNrx$&*Cu6ghH_z)crne81&Y*eH znVy~y27;u9tDlf3o$iT~p+8-fTL?iY#qW1meGv4&*`IE=`f$+4dB{9CFD>f`IA`?= z;5k1|p0sX;0UyzcP#TPoH^1s}d?YH4? z*LpTM>`V9C5X;!nrz*lMzYV`PMchuVLr_jG-+|%oxjD^qi6<}~&0ihK7N+EH&i=~jpH~Rxf0dTIPaxcvlkKp2#gx>XJfYtP z@T9+gg#&_rUG{%%tAAEZPy1IrL0<0uPd86b^Wg92AK+&TzXI**wfgn{dC{Fa|5g2e zz3hPl|Em3!FpB^GzT5v=`zziN0pBBv|5Z+2ZWVJqKYOF+R-V@uCg_l#efE2A{JrYVob-KvJn}!Q{(m~|KdOSCK0QU4 z^8Z^oJ&pOtoZJH`p#Aq9NcocQktyJR`RN)vcQV7XzY?Zor}4vs{WgH_=Du%VI&AK$IPfdO7#+r0t;eLvgo9k?|(*wfe7C(!es=LYAb<*oh<|2#MS|DC(_Kc2hV zp$`baorC$g`wsEbLvnKtIDGmsnEU?ovuyc~*Zar0>HqmzeE#FP9^hd-R=elFb=QCH z0%Ks+{MX>dW449T~jV+1WW!Tq#a=9v+{4=HbEmpD)H$vcsY5}++AH=-DwPlrzeBKV)_63B|d5(b0Z@#ccI}85Xu}zo5LUb zz-$SxzQAMt>jk6G*#Eg_^^h3^qYTg(*Z>?te>wv;f9@EWVj-$h9=wR!;1zIZ>P1xQ z@mv|v2~9WuA6HyG|KqO^9u0#Vqs<|I=ykb`N*>${(e;@p?m^{O@K;RarYnd~l)5gc zl~r!tzEZ3=;=bn2M#J_HGdf5QjreIFN-=Wdr?#wbrJ_-@whMXCtdX5{oAMp(G#T1^ zh^Qu2itMpJxM2CmN|c09%{cOzJvxbywQBeV*kd)Mapd*nUA>=X_+bfYZ;5+-G>Tt{ zet3MSo)wz#oZe#~l@e*?vhKC9HX?ctnpPtuDu~YQXxj6b1Z)Bfb~(2j@Rjiy*hIJ3 z9=JwSgV-&b|E)JZgOmaPO;fO1twVIWv*0x?kHFXCufLac z-p)aqeynLg4&4rqx<2ga1~bS?p@o9TBmZzys1Twu&lz^@k2g(#3V!HaI9C{4qJl@8 z)IzmXitpY}f1$2&HW=>Lde~S5$n>JzFxIS5MAUt87?;-IYj?@Tb4sb{P{_^BXv=d3 za9nn=&ElRE&3D*~2PM`mRPz?H-b$$r5|Pl33G2Om&6wm$*}ehu(OSbR26yEajcyph z^P9pGCQ?P{75JG(*y!Y8&2?%pUW$|jO2W9NsTo<$CrGe!h?sGDXFqq6FKUsVrLfrd z&Aax;26n+Uv%QCCdS7A+%}RU0(|ojd^rlekbivbbhauZRXo66JEfhkNYS<08tJ*Yq zX&#fl!X6B~e$D*Z1e${0eNi|Mm0!YNqK+61<4HNaLMUYSf~e-bG6Vs}@xzmhZ`@$l zLd@T~uxu>r;&= z;iPe|^xI35oLcy>`Sb9*BBsE={CVi2q7JJ69N#0y%wW$?hW&ZQmBpY2hLv9;q@#w8 z^Cr){v=;F>n5JIOgj_EPYRIhPvl3qofoXOo=(Obt*kRB9h)s}hzt#rc!#rh!-}M%n z()p+K3?5XQYbRRM3E8a5aS&g{SD8PDYtGwL_&No_2YXT~21a_7NNX;ATz1Jb zBiU)M?2>P#s2y^et}sd5mC9*STY=WopGsQ8MEZMMu9c2u!Y#@c*GMLkMa|mCAdBKN zF7U4=P3g>xhDh15abIZiN|s^LzJVNSRM)K;f2n!5lKp_I9An;q_$P=aYSA(hVYpag z`ozcpQ{?vCeyAHVvCY!tHP0IeO-jHfG@(tiZ{*wKhbR2y`LKib*KX6y=WsFj@cU7N z#oG*ZV;6tX#3o3t+6<}o3QTja4?IZeo;Mi#VfVoInjCK0ui6KiEbh4Lb;)INaW$ z1lV}D`siI>WMgY#M&woDB*zSYyP1*rU(AQebH|X1JVKtneLSUJM1D%1>rEPR-42aM zF~)xCtg|#4clRN7)@jb@Qxml!Piwh`XzAq0k0z_kiya$#FrZ~H>DJ1mIdwssCL+o* zwR*ZeZ=&m;c30bt=tShqL>gb;)uxS}z*SUtPGnOA)(zN=f$S%84XB@5ZBq5l=|UmW z+4%QCvR)GQ!SE!@`mcv0E3Qc{?YFz5#;2y4Ged41d!P0WyPIu>6q$MCrkX|2o5*98xr{f2La3v;H1@b>GK~^M3F}2VRKg}}Ppbu6 zw-CI65ELM?u(_0XyO`xY%bnfz8MJSKLFZD_95r|I@S$u&HXQFbV7n2_ED*MCV3sw@ zakp5bA!T5O9@FGCqSgtt{_38JWZgWP_L}tD zR1?3Zzz7kK-dUf1oD7}fC@VvoT?1Ve+MFgk3!gg?%*15IRs zN2R97>RGOV^gC;w`mw%q&LH1>Wv2*H%h${uq=}rZJ6u&*qKDEC;)rVegGP=*wZ65! zFBPv8I7!0c_ofL%9TJ;xnAn(mRKCpO)b-bC-$-64uvY|HooJaw$8nk53<#A&7KNP8 zAIl*l$v0vxIirfsr3~rWz4OafwAAAdPG1b1p#@w#E z(m4+6yTcZ%W)(9R1Dr$rUFq-v4ZC(Dh4X~(B!uTUk9Bogq4i7Dm5OcR7mc|-feb0Z z=XaYPiBTajFO)X@BH3{s^uU|&I6yIi&gc46V9UIdSVu>Wax<CW(}fWEJpD0+KiUD!kh=4Aoe*3yTx9y(M`06jW(qx4uO_h52y;=NmOQATPl77{LpnojI>GAE7pg zX~-I%q{kvo3ZcgbL1I3b;TU6#F^tlT9_Y~j)T;~0u}+yY^6Dy&`mqa1FQGX*lIJ>a zW?mB|Sf@%$_`ghbEg1A$r{Q;M@KN9#Llan5AFyCIgJSuO_<^BI4-4!p5YgF!&#qwW z+|E@koKq2Lf;}=3FbWnGbduF*cWJEDC5A-Vwk|288&o~CYDTK?vby5?YB{$}zEe|a zVG_%hutl~;|EJE)7W%eCNRvQI)0NrmNt{w>zUVX!JI6?zV1B>`M)BsYr~%-vcMjb# zg77KYAY_blo)bKS5-4lB!DJVzUYkdBl505KrQ_1)Q_lu)W1I%yRT~}nx^B5{)s&!^ zV@$bDq^lLVxWwNmy& z-=4x;LZx1gEYp7X``!p1UEiYC7!8Fm>{*liV#>~*D8Fj_BRO8qVB$uM2DyW~5(v<3 zA42ZTd4Us{M0e)&+O$ID!gHl}Ff;JGY*(J1b6f~Be|VI)Q`>5m z{`0DNNS}V*!Tr9Zi%2n1*k+1!O0CM!RE>(c}{REOI_}^$6^zJz}LRse^o~-NcJ0qHc>ccP#@0m<&6f7-}f;L0UyPdVZ{Cas!843jPd?i^EKl0OOiaJX|1nDCL z=BRJ>D3j*o3&JYi=DNPG{?baey1;9*^T5} znPk5&G(LIW-c974*n{4F|9Q+J?Fd}AF7-;{H(tIh`frDJ)s|DgQ5K)fj&0QLHyeer`Xxvt!3UpQWKcYNh{QV60D=bZA+jdIqS&%t-r~w~*%(m9?ZT=_H>o6QjJgggueMM&CYa&h zRqkTpdrlS+S$Kb>2)!Q~2Cm6_oGhyCPFu2dTFT;L_xAhqg;W&Ne6(!e&PJ z1Q~8MnhVN4&PvgJLoU^W9h$1EIJgu?uHG1j59?@3SkJhMIy!b#-)alH3%6IZ4LhKrYjj~kY4%~xfKnz&)ZSag)S z$~p|)VAzT&L5`02oRp&IR#IO9K`=hQ#e5MVe<%(v?km% zzOok%&Qm2*WiK47!!T3D)WUAVISrPpb*`7Nsn{sGyl)1sE(cQpXphU>@u=I!lS8`1 zU8g4^aLuLnc6fO@Z4TPJgC2oC!fSmJ#k|8_;^OPm3(tc{eST+unZc6X$n>2MWN*en z-`tGz+fjf1Uc23*UUaOP6kcCpiRtSvqktTw+OPPpte@}~>}TCn}uW`E2J!sBG;uMNf4Z_2so`=Ulzc7x^0 z!AxP!FZmrHBefe!Z&2mm&|p`idO?}9AB*!Icju6W>QzfNN*KxX*bw>N;!>u;og=3F z>GG=g)(z*m?#DyoH^uCL6VY$Zrj)^rtl1!6MLL>OB2C9vgK2b_velx|A>K;*msZ18 z&0PZi$_Z^g+=?xEX@?}jepElI0safNDT`)a-9BmGhx5Ey1g$uPAAj&ZJ(;{bu2Z_T3?l)rS10+X{PMbzA ziKK2v?kwi)Nnrhl?^_a#xGz3U0gyV4In^yj@($lWH}3_5GlHp4a} zR7|3<+Af)<@(;>2T_JsUdnVG?uW2k&1H(5DZamm100Rx=S!0~~Jk+f*^X2Bf0_c0~ z#2PQ(zyiZX)!NkbA~y-xrk|+`z0C5pyJz}@ixQkzB9=fi_I>5@Np?59x3BWC5hV%J zd=4tI+3$A%csI5R^XliDuYSG}%|SQpLhRJVIx}XpuPF#e4oF(LSBox?C|siz25W^8 zI4$4VAI{VNTPcab0`oK}|Gr?g#uiu>cb2m2cvsxFauzu4DupX+-fzq z^L`3%V$B@SwN>1t&OQgpxg8f7J4>1o3XiOim$aaH?yB%OdYtiiV5UfRNA)WMZpPii z-f22i!TRviBWa%r5=>k91ypG_?`3L-a#EWo6z(wl^n%)1EiU3)G*x3f0tE!GyI zwS`a`(Ym!jB3?FRzjy9A1L=F(_OxMhO^FPtz^TEKX*JS@ zO>_*pu(6RfgH814l8?TZYelvmox-bom^>U!vP0fK$$z(C-?UdH*Hn%%_jFt(PujYJ z^rBsp^&DLo^lIAMa~!c*^qKBD#dTk*u|J@4w0F0(r3)cbJ6-;1w9=h8K4a(8XNBlgMY0 zUfUMn?x!JtZ%Ui4S_GEO?S{Km_6{L`S1qY3Ww$MH&mx&M!f6f?4x*J{vIA~h#_5)K zVP`P>ruYy)^k&2}LomD&v>B-o48`nSv;n^I)UP)ud{!JtndB)@5uNlXZ^1?}fo=`b z@81HwHa+;W_5kAdIC(a1f^jN&I2d{zH9!CnNBHVGgySDj&AD+1dJy@} z?#{bS^RCIRmkK49(^9r&Z_$HUu7GzfJ9M_wH02rI{)ee|+2~)bE1x9w|7q36CT7O& zwtBaE+;FzD@SJ4z1NpQS{ya5miEb@^X~KX$7|*6=G7>dyH5SdJdxyzwGuZ35@~bl-I1 z9(bFYxNg^TzUeeHH9Ia$?3=lU)D{-E6pFv;%%YkmuLNgNZ)O;r{nF%1n~h#-n=@z2 z_y4{*aBG^;xh%R`Ovv`9WF&iA4{vffLzY%SYq|A2^XE>J=mvBHREbz9`}xdS!?VHLJOMoXKmGqu8|sU-$6H z)8*7v;4Lih$>XGuaAQo7b+GAUJpIK9)5pdzi1;VM*tN)TfA6S@vgR$m>ODNiGm*1& z|Gns4q3LMG#hn6ft3@72$Bi%$y3U7S)=(fprFsQk*XoT1Z2Iqmp1gp`vB5sSxSGnn zQs>z0kL@z-%ErilwgJE67ClZq@zc*!y89y66sBTuKRw}x$(V%aq%iPf#In4H@gWII zz<7pE{zVj9b7V|<3)3-uV9 znxYy*!{!cmjNp=EK~z3$AJrXEF->B%6P;JfDx-JeIKeOgviK5weI6O%*NY?FN_oaZ zn}$* z>wl6sy^Ujvj!7<_UIf!VW1H-->t)~tt}P_K{_I)gGp_fnv8`jcm**yBaQjskSG!n8r( z88LS_*}6Pts-_o71@p|LXEx%s*aLUBYm&#I2eFg%hsY4wkwt$f+V-53wq!F@)w%ZY zBxf1Bcp>`>!KS$h&V?Li$W-^Njp)lrX8&}K8z{6H)P-E&0}Se?rZ0DW)~P4Z$4;rT zm0d_351ctiE=^*ip&kE(e$AhuKW2UTv>UH<(ekD#}=su zd9sRv#1;)r*A5!ht9C?D9GtFNAZpjk<6d9Pf91Hx9lf5y~JL?cZANgRJ{W+!XF|k z%vO)ay({)DXN?WgQ;RK8w;vsLq1=QxQ}4>TbOVWvc;V~IS6H* zs|calD~9bA1RZ6+@(g(rQ@qDJ45KWY#fNZ*3`YD;f}E!JSzc%m9tOQO8eim(aFY4&6`J-^ty`aql574^x#>3IXU;3(j zU!l5Iq25w}2r?h0{G!!eztvhGI&3;7yW)S420dU9J16!V)C~*^egni)woNo#1ije3s_ zV}ZOcq9YI(3}zD}>Ztfd{k%be>fT|e{5yvTkGD?{7~_KR#DNFiiN%z4Qd*wAb^I%O z<3YE>s4I!u&99v(>tr2~N1)#h6UGID+o#K`7Ywr8r&_L6Yy(ku|1fZhm8wb=wxj&0 zq_h;uR+f|?<<=cg039KkFIs!Tp1nxKDP^1|u5<*1ICf(oqsA-3M}AV0QY`5=;4fKo zsq}JI`;!zVJ_xGA3=Ad@CU5GS3L8wN#}PO;&x&`fjnNYb_;(<5^;E>F<@k3uD&x2e zzylT2!Cc7dXf&ugEiu711UR{`U*iy_S-A+Itvw`+bRmL z8P2KkU4}EEyXWb1YO68k#M!(F{&+G?62%`+ISpu-&LJ%g%5LDFaGLPN$5{F#YA5^< z@EIf@`4;Y4uxXpjKpz`s=I+EI@pomM+6q9^Faf}5K5wUquSp-tFgR0(Q)Gc3HJq87 zXrzONIYB{)#!EsA65|0om99wEPy!UGo&=1_nltGf#VPYs!SCRCSC)x#3;-$6^vF+& zB~%6_@IAKxrUZ7FCO_bzJmmzRDiTYkkQ;-ZE>pZx?jDFRn&q%(IYCFTi_ntOuUlwG zuv{m}3@N2V;~&tB)8a%4Go(xex`$2#Nitc#0@3en!C&4fu08n{8sAx*xCK0u1V!JS zQWn>uR@PXeDWx>4?)J_c+5!e72QiDkOm!<+GPS(yK|r@grWRf?cwIS?#! z(vIAk@i~LD*uJDLq5<~6c7Nz@_)G3w6!RWd16ZR{Fj`T0L{(NP5A!tqBeY#QX7nH$ zf7u-bC4il3Y6NIB{?X6YFDJ&H*5{#pTYt80t>B#JepXh_)2;4M-Q3Ah)+qR0`(wm3 zkcac|9XGIXK|AvRPf}w>mlwm>T5JFf0bGHFlFxFfB>+GxR1Eu1XT)B?6bR6)rA@QF zt{jLt0vdMGuamoJ#+4IvA6Y_yvMHZTHC${=?Yeu>|4DF<9Mv^a`6L+sry(($itkq0 z4;|k-R0`lH-H9T%+|VzcfQ)@lO>LF#r2mr;5LI?q&F@^7N334}eL0tT=P>aEsxy~k z2`4$P|MS-XKx_njZ>evjFV{VGKC~2fLwp7Be_%#7$j|+QZx(((nwmQ;Rki@s&mk6Y zAj9B~L;<1YW-M(P5h|1VZe~P$4aTE-sPEQLo%nO!yaDK%=G{#bKJsmF?v)hzwSN?# z!4z>8p0sbG{L;L^VAe$XWvAWh3@KiBp0QG(BDwYCtcd=lk<`ei0S!$^6} zR=RF0oqyn=3h28Zw7iMdC#mn_@IyCZJT6PrM4eW5a|vWB|7P4QGJ6nBc*3=?0QpVX z7=*u!zdVon9NUdes7xl7ke~ZC`!%CJM{99o%yGp0Ifa9M8w-NDM1);y$OiN6kLux} z_mHp=9xe88YtvGG(b)HkM$00quTl-!?!BXBbnc|RO886fJhVC(6On4F;nVf|1}ded z2UV3-)M!`*XiwSaJOIsw4xM}_;-@&wap$=BVx6TQ0MFQ#%xE9?fCY?DEicx0iJYC| zd2Gdcwo*!mq}9}$xH6b;?DRB(oA$`S{FTe+PWIL;YHq5u7;I@0myJeVVpJ!9%V8zr zS6mv1gOhqkO9%p!YLjZbjmoe?(jk6IqAKXXC@I zX*e;c6+gozD$d-&ZG#iDZL`BAaUYPnK5a|ktxJU(pjt3}k}*~ghgRj;=_-Qf4bGgI zI0w0xO!%;D2xeUl6POkXC+vgq2Z&u;8Yqj=vo)FA^JC`>6BJgFv4K z?;dQ1ugNb2ty3h!$G3A9Pz(fV7w0EoLvGVl33@%?nCdGb+Zph2$|H ze+$!cDWE(Whq(a$iYu*Zxz-dqU9Cid{-O}wnopnl+W>UY^Vh?IhRb zJJ0p5XY$rCWgz__+7NcAh{1#rWwnuxr3;{oygKkPC%KrL87FQH6(1=3098B*rXAs) z!$m`_PgoCl&dtEwf&wmy`~Bse#c%E>)829`pDasWH1GGzG$`_z{^IRt)PSeh#z0QV zE5c(gZMTeZ6))e^j7e{#q&IGewg7Qltz2fwzNi+qCtF{j_OE9aB^EcntcCg=gK$OR zfS$TA3As0EWa z*i@-+^20ac8CYk{DYH>zBX+}@yn6ABHTsp)D;ney8z~=av!!AN-IU9j4TBp8hK4)M zN1JWk_OuQR=@Fr-=w(FfU~UKOKeOYVJK(a+Fg=RdNEz1;0UD)?iPTUQ?YAJkuMnDz zVn*+9qyd_%TviWAUHnKo1wh2eU{Fh8iRxNuB+w5_l+#q>!ICV2ib?MCvea3eoC{>2|5fmr%Hk%Lev%jdn_UF z34ByRtcWS^5_6s2@_y;9X(nYV{3Mqg_|4)3)w+oS9ss(Bk0HO@v+JwtdkQewzOkQF zrm0cn(5|ydoG9sH1JOeP(+N2xN^H4+%!?s;fgxLttm-df zt2aW-*wwDUfPhRO>XznyGT-eIFMD4Z7Q6lqE`pi8BPsB4=GRdZuugi?Wtc1Zw(E*!@N5SIC6ko1YF7_IcgoS zvt;pZY*_B42>ccKdG3Q4?>ltwh~J@2QvNy*$T@iMv-o_;i%!y+vyCrIPNO0U0O0dE z>-*mB^GmT3;NE?z3$>dHZ(TlOcMqi94;O8Q-mipS4!wQ^5E?^2lErZ!PW{@{bxd;k z$QNp>8vm3Ue}E7#{waAS`pM@SkeHLQ{xa<^2hui9_e$_oP%E&00=%S7;d;;$V9hwm zZV8vzssDqQtC2xn-$M8e+zmL+>rAOpDcr(MEzxZ;&7UwHAc1EFvjfs1y^t;e8V~S> z?YXv2FZamSZBq@Y)SW$hbym}hbt6j;D(zKsGDeqOu4d)W9w zMxIk^L1iXrq{K0w#If)1E%^NifPfn+{)t_mgF>?bVE0Y_n3^1~Ej@eY40-H3nczvK ziV)Ngd@T4Fi^)ruo4>*Zw5Ds3;XeN3sE+YYe!IX4a7eUZ?H;sZ5bFbg00cl zi9v6zmb2p{S;I|($EzZX5sb=~8q1o2 zM@x#xRwIB%LpR_YpBl(9O?nXABQ4cV6s$HG|EE9ir*Qm1jtWpOU+y5svSP%CMWgse zr2!QkWUZz4ySR{8X{nDwB0Xu?Kmz3HQkH0mCZJET+-oZ=Pl2pQm^fH3X0PROojyWx zebHYw@FLwHz_ng^>)cc21`F}k^OOKLDC^LB!nR|@u8Yd<42AczCGsk4svwilK@O`F z8LX6g14+!$5ui$7o3EK$uIkP}b3m;BLXoa8Z@qzK3-%_g<)P_~;6XR3C@g2yHQb&y z5T~Kok78*J7!@ion)`f8Q!eKYMqMwy5B4{V`4u-nKB1ed)jt*%t>jDFN>X`U)e`O-0T#;V%a%$O1m#DxmXG>D43( z)S;4x%ed)CJjk}gW^AEf>Vt(QQcXP0d~|Ab8BRBvEkrlGL9>P%-q_3|S%Dehk%w4= z+b50Z0+{BqZ!}pRQ2ZSqr&cq@X;J-ic)7JR@8`#yzPoBG-Tf+^<-Uo1fP2_#az1#H zdB+!;6M(-1Bfx~2syZInngA(4J1Q>;@B*!7n7{RYnd={j)M=>>R@D{LPBT!;&-kBR zO39})#?YIKj}SV^u8_?@+BA85UcEFC)j(^C~C6du`gpsmh5nz*kzN3Mbb*GjdJB`37v8 zH>l%sRN)U(Iq#|Dd$=ao?SBpaTZbqQQ@0d#C9!&q=PF{Oh{a?#WGkTT3#ftY5DV0T zjS9$h^%jAwc)btcJn4b(ZdKOCPbiO7i&FN@An;`CwiEaj;XnwSFci|!U(d6E-Kclc zq6WfnZksYG+cyDr%2`FR?-**314V$h`+2TQN!B{Ml=C|2d&KlTFoByhl|z<+=kQ zL)GZ@;)VkFU_j-`0+1bOyk1zpk@O_b0-?(biS-+;guO(f6hOE7i|xsVFWQq=Ji&o_ z?2CHCu;f`hT34(S0mlx#sy9slLQ50GFXM{@s}Z&y219;r%p_YAZn}$8a^-*t$n zFz-$JtyG5G32s*pX3!I$^v=qr+}-oG8BoQz>~<|~1ZU43Hi;hrB4414cZp39*zVJq z*C+q9O7X8@0u47TBs&lT=riXk%#4P?w6ZQmOh2rlf>gPaO=J%mrVr_ zlg9*jr`?RLe?7B^70Xr>C~f^OSgauJLepGkQNXAowo}+di3Ff42r_rFtVRK6E~UeX z0K&~NGks*==W{Y0nz2RaS8_=XLc7aA2Q;N^2yVvmlPuZYRKPUD?Z%WOOOAi4;7?L= zDKGTaba2EPhmg202KX1U4Jt*{K>DZ;Q9-VDkmGNkbPYyxj)#01z=VO&f{;>y5C$v6 zRD(k0yG1Xy!%ZqGb~jGtGIS>K{~tHx8hf-I-o&7p-Oee$upR%j ztXj^&8-Rx*55(Vrz?i9X%DpUQNR8$KZ`Td!SOb{4Z8BlfPR6O+G@#2l$UJQQS1iy- z9v51d9|a&`zYhmjaTjqf-tI!3()>`=N-KuAt9VMQ< zj({}!)8dI2I^tGrLL~v7)_(;Q6vth@0 zs==%JwY(s@LJp0oj`M;5gChH;XPS^v984eF{&0~*y$14#k5IK!kqo37WU5u`p!YPR zny$x+iU9?6vcI<)$}UcZ!j4w-wP9YGK8oD|G$)2HOaVc=-K3gpagh?dscD+Bf&eG{ zjmJyBY>c$3J%ReFUUU{{55?#D%WV3~un7aCjT3kC^*$AvVG0q^aR^5r%Gf^+;NsYN zT=bDmKk6~9n)}DWo_j}7UAvJN8*&B;uZj4^6l43gDNP4PFbNI#0=VG1Ye>%3Q1v=9j;zM&tcJZ;+w^-v&^sl2~ z0kVS!gq)vSl=&_{wQvvOe|sT0-c z#k*Inc~?MdT!j@Q^a+l}n@p_($yr9dkUN~3Hex)-LANfs_@RZUZqLFC*(G#w+ zf2O#Lc+W&ghwme^97q>NXP*T!>>{$j;4l5>{mE6!`!uVCPlQDkU{cuvcsY~Kmb@sT zy%E{Et^eh`PQ!3%c&UD+#*IZBonQm{AUt}Fn*y@$SAjPa3fyJT8>CVJX1quC{ff}l zsq9m%WX-k)T1gABh1f&{<`mYQ4FlgH8PXJ$6wgf?3(G{jT)d1EgY>xa!15TtyRt=I z3H?uUUg^O~l?Im2yM+*-pB+_@r+P*TB%OqihJwWinSzw*%AK)wLq`HFpW|pZGDer| z$hQAs(nggffk@#@`8z|d^HbNT_i+VrxNY;Klr_&%o+Ud``B#s%*x%NK>m%C#j~~Lk zVHo+$UcJIve<9CA5oH+ZX+d*z0rFP7sAT3`Rm(Xf^^zBPurteLGRDcgrP#({-LaB| zi2cB@(mlz$S{rkcJYZ0VZnf+Js>(=(VA7jxs4j5MKnK*HN~wnr+br(H)*>UE;($g6 zSJqrWqoY#eF9j+)r)jYGCT%GkOtqE(zFHMxq9v=J##18|g*^JW95q1SLm!t88>1~< zs4;QeAxtmU2%y2Q;p5zt#~f|aR2v%8m{PV&y(;hW>cC#iBa3R{K9t_CyqagBGTa@a z)ZGDjr<~;$BrJ@#qHQ-eXrmEKYNc~TJ7>QPaO{oac}PLDl5x8!`Ru#bN=p7n<>=IvaU z@F1PNH3Qy2K;Pmz`K|f{6dD)URS}}F4cQ@p(yx#<4+FiK3P4FqD#NGtz-xcnHrWjL z$dPNObA9THkHmpgLh#^_(-F~Oq7%UXQSVJtSLKlji;BG|&+I$E4=@5!`^t%>5|^gV zaVhOcU}4xW?ybwJ^wxXWC`9c1;{cEYvs&>n;?LTh??E#oz2%t-nX#>3S@VCA^oCcUePAWY4@vs9yh&pn_qT920fhs#^6{6PCNd28 z^;O*}5F}8si;5gKt5MO2(F5-JUoG3JofM`Sk@<)(~fb}`0k%ue* zah9jF4R>?b0@f@d;?E#?*oAmM#m{Q81lTjh95YU>gHb6i5X6@z08t0NGvBFo8=wl3 z-QO2t+OJH0ul*H?*-=V-Q2YR~UiWLQOgIhV(qov}A)qoae+k#8S)ak;tKL~_RW}`Z zXdrS4*+Ss|#;VAlpvP?a1R2UMs$Z$}o@=8CkH|o!NphobhXXSV#=esz7^(^E*G>~m zIO$QebE$*(&Ot{v>bhh7k9Dj50CkwynM0$Vbp?Bn!(-Q~pvPlJp@TBw$k9MiE^FqC9oc>9(=<>#V`u{fZbiHT{?A9I|qEzb1rDO@6S2@R*0{ z;L;<*9yoUIH^`!Mh>G(0Bn&EnCbM zfmL-sbY_WaSpDBk8V!U5s zRm59FzQcQU;zDP#Z1CCVt(rv}oHsb{$v$rboc2K=zsF=%q@_+BtkB3VWl%CkIvet> z8}d>66UDg5G9Ffs+kO0zeBKL8Zp_`tY_{?EJoy76y8@5u*V!ytKU5R5vH!3vKp?KS zY9oOwy27m!EkK`qyHt}F(ZEOJVnpR@YzRZ&KknDLsRa2>;L2I!hB(h^Mikgu3*KbQ zaUP0&oEL>StLkIjj|)-kZ#wVnU>d3|c#-v|S3&^pYg2(meDvoQVml0H(8v0|mdw~I zuupx!@{loHGib2eeS8%mE&2IJ2xLW=r|`lxm9U3W7yJ|>1d;b{u(}MaKZ_7=&jL{8 zAU2FV)n))TAy*S7Bc%MX7C>;JdOE8e?8`%#Oz+`K0uP;Fk?G%Kiz1`z4*OV)ZTW?*qL|av#s+a5*{c&ed z>%a$A*KyxGg{5IaE|ALWx(ySadz&VksEaA>@I1(deqU!}sLoU1?rkBefs2R0!W~XA z3&hUBGxkFWgK&^ZU8+a2%Cr4c-IbYCq77g|hC!+vrZ>9d-0vSZL& zpmu^7TEhe)i-vV-MYk^+WMMDb7Rjz7t;v1E%cndRv1idl%1THK)T`9CVrKP5!ym98 zp^&;w_6pLi57?`XI}FvNoR=3qLJeD%OsdiLFB|fj5~;RS?A{NCJuVM^6UU%E3WFZX zy1)W3dXK+I7W*fS+z>o=(Vi7Fa8X68D|ZYEet68&hp`dH&cSxdD@6_&W)O0(RG{-m zj2_OUtw>uR#jrlBd>2qQrrWq32$_MJsomwfA#40?u;}AdM0Hdu&{?(@hHNyB0ZR~W ztOT_lSuT&N1#hHav0+^9vM~@Wnp@NEU)AoMe!_jDG2H%_X|PZ-?Xj`VjdkE#W|G1y zPh259Ha55!;ui9v$);biCpE}gnnM=9P~lU9Gpcs?pVuiOqV!f>0x;4~ns*6En|tGp z2H@_LvImU$kQdestQPsaP5*_PZX`Fbw5TcGjW1J?XRr;CbGtSJDQMHc+GrEG^V8bW zds|UmJobgUU9#I3)r4TlJS}+h@w=+cpL@e@x$(PX z8Q!RlUDCnr`tOY1a5t&0RjkVm9jkhUj{4;hK&$`wc|A}b#p-jep4FD#?IfpnruSfg z4;VHvNbiB`gZUBy5z?|i6c3_6CiV*4dTSaz;a9x-I9Q2yz4)(2x=DatBxZk<+8V4x9M;YBj3Yd5gIy#%&a+EV?gPOAmGX&^!SQL`?RS*80?Q?P`3 z%5aIDr}re2OUL+yT8~!%bPAs9rT3)B-@`!Ac8b!T`lL`}n`s-=;+fZO1dsXMm357m zIJM?Ob6~ORdca1{8NsXD&dTGrG{mIGNdPu(Lw&BSPXmkH;vKa?8!3@L_= z;K7RF3QYv_l=(?3kX(h}kyv$}60F3Wr_+aXJMOUBlYzFs)slXPbr&GMmcyI1n>BZV zemXMZ_LDkIN2h#nTVo+MOMvWm^L4>V?JKbnFKIaMrsfD1FHgnoR;llOc8mR zdT$F5^FZhJyB;W;8pHkE`)+^iMLSKRxTL@k$Xew%1!@Sat79da;oJ_>oHtaM?T2OW zHd(}T~z z*9wSD3WcSW{^`LE@!yloc%D0gq%LSI3t$!7;xTY&1qM9Es#%C({AE7}$ z$N0B!CL(M^b1+X`jZi!b1(=>2?WJ~?CXe1lmL4zK=?hu@6}}cL`KHJRxQA`v=gGp#gK2dC<)=-kL-R8RU6cx6|UOMuyO8$nl7qKWY ze@vg(5 zIpXcf2e7PAjg12f4ViKL$6UO1`y*#ewz9gz0+48tSDOM$14Yu`cCrD8r6Q#_i`m}+ z3LmU8BxM0Jt8F@K5eNk2ZD7y6!+_F}lNZ4~*-9DEje;|Y=$j#%knly`)8 zgfUnnViMBhMqWl<*(uu+S>K=6S$gtShA)13QoRu*WQOcEK#|u{YpG!Mp`^$8OkOjb zv@DU3B{QhcL%ORLL<>l4k5f|EEYAdqdrNG0UZp$l%YAPj~X zlz>bPlLQe`5R88$0y0FT0ht8^gd>7t;DFjvB@tvQlrcEcCMXJ&(K;ZtH4Gv{PY)_0 zt!SD2U#42*RGg6BwLSMfrO8KZc@VPq_kQbL>-Pqab3@zJUaP4`mfyC{(%(Vl>-um# zBr8eMf4Fu{l(+*xa%k-TA=e43!fgL-VqJToul#xl@-Z88iN_DQutV87wx!U z(wnWBafL2Kjd9~!Sq2uKFzVXZ!orSbj_s{N0#*&UG04_ z>|$CTSwOM#Nb%UcBX1AIHLDa^)#e*4k;Fw~iZ?N=Q0JN$DnL+n@Yv87LnAx=eXuT` z;yttf-)}nQgQk^RBDte*cbF$zs4JA=QA3@6+`InDO;aSs(j8gTj1Ij?O>S3Sm;f&O zPu#b8&h}Bb1!UkB&ac+$Eo@{nGd1FV(XBwJsG$7Fn7=%9k4nK4;Rp{Mu=p{j3ZZe= z5iHJGj)xZvorfnK-3NyoQ=XIs*KE_fgmdY#rL}`k3|vV+=Jzw0>`^Ep3ts%?_jLSA zIo{~nkaO5zF(f`Ty;5|-5GA9n83J{T-HIkEEr*J6gW!+3V=EwFkPjoFys5M zd}`WZiOR(;@vwaI5}K0tkMibsJf+*%3)HVgE4*+Bi!JOXGH`s3YVgTipNq-EK~RBbx=II&!%KURIM80hW$KqGMz{Eo_1-vma48gvTE1V2p#>2 z@+;J!@x%-3{N=t`{{w+4YU|qc1^P#xME%3ohpk#GEv;EL&3#7J7M{d>@UOJDSv#+) zkl|yaB-!J4(Q8cQ-Vx}hG!5D7{MOdK+?Wy)u$AKaonc8*@AHHkomKiOe}s+sx7`Xq zXcc2VZ&+||0s3Ci_2TZ0`_g7k2Ju)M_ocQdN;LWM{iuPHNAg`0&r_0fBE(j#UJW}x1Syk?j-r!v)uBE&@kXUDi% zuoO)R`lFwx*DQJS2{@0i&a}?7)++z8cSDeET}@Dws3-)jK$ywoAv1s6|1|O7tB%uTaK&QBbaN%rFNfQe z_(#<%qrKke?h$1fVEKZX!sKxSKG$9iE$wWkJbWAYWBy|U(NLnnbc|iLJEWs92mPy5 zUA_#Z!V14rR5Eo4rkuE|1ZQ%IoNas(g^a>I>D@z+@}xR?t#=P1pG09EG?axOgeHt` z)Ki)*cnFLy7++{4rY_Ko#T^>4Tq2?EAHMfJHtMe7_;K!g&PXl8%hLrT(F6{q`6E$7 z&e8B5AxTvd)$7XpzV0lU`O&MARTkaU`Dr|44}HdW%>O$B${uM#n^oE`<5n?)hx)e` zjHwPD>P{c~`liOPYNxF4gV%V-Y?~jaHN(KR zF_hKUyOMjy)Zl4%R{6dYJB#HUL0qN&n3KF6Pz{fb!pGBU9D!5O^|#tBrU$Z-AFdti zs56M^g?M>cFtC3$_eT*7|D-8q%~qAsbGaRqBjZUq$BRBy4sMca%Zy$O=(!- zMHHv)4G>u?f@~WoRY)`qcZd>hxi)_+LZ7GIEHff`47a;K&x4X(hvU>cjnsMA;a{u$ zuSLM78Kw4R?bVzH+NfXBXYb(H;baB0$FGX)WBSRX7tatejyps5K2TD9g!ehv0I0vL z_g{bRBQ$2%haj`kMrLl52bwgve+4rfo|?MB`h?Uo^gOl4si+Cet>as4IB0R<8naaVt^$p0=>f zmTHa2UYMIJWEKQnC47T?q$*}MO9A#s=tb{B6qCjwH__oaW)iw!p0ZuaZ)tXtX>Mpm z07PiUk8d?j?BaCgh6y;Yqq={u@RL>k|JTZ@bd_IEb03#q?JB^T&uQ9!x?0|W=L&>i zI!?l&q3Wn#ChAbz!ZJ;fMo|pwVu{ro>MjgK*6-P z!9;UTy2kUsJCaPXky-bpEqe#*K1&j%=do-1{|MUjBd*Q|r(UCtViHF7fHSb_#aVa)&ev9tRoc)t`n z?%thaKB22pQ*eK$33Zz;ErXRY`hAP4RkW@OY+>)$X1uV926k(-iD4yBcqrbw5YQk- zB2q2LS)fx>Fy<_H%1d!(oMxP+zVID`s2@pd>Y2IC_@d|w@$nYP-0k zmm3yM`ZQJNyajh-SZ`G%Eu)S;DqCNe4CprMGv4n_!^hPi4#nzt&!4x#>D!#BNwVhJ zyEYDdu@wyAQGY|yN7}A<{a+bZ z1?5shaFpV(H_^{^8!};S5hd$hI>@w6$fjIwjh9um#?$;N8I_#==)00k%JD?k#Qo8C zEA7{jdvs2Tba)MRD$R4{!Kg6Qt012d!!nx8h$ht=!uv}6pjvcQ-J7o>powjum#M-1 z=*<^`RRReBb}oMPS4ari#~WWm1z9cHrw-^5nT%3o)oxXKdF60B#dOutpN6;;;hK0s zBf^SUkH-D0R<-VoVtSNHsb2X+`NV>6m}r-Y*+c3nL#M%YAu@8gp9TV&K{4F;1Au z$;j9#NHM9Q|WM{LYnwGzERLC|hrYyOr%<%8WMl8*S_}Agu-_(}T6Qv~QY5 z28t`*2J%f_xW>wxrdAr0nAVphc}=3G1eS#^zw^NpO1L%b6m3QuujcJMNDT@cDD-}L zqjMz*spsxm+8bD6oyJj@p?!??Y&5~$Em|ITD>8kRBVdp6b6%myQC7@U5fqi46o|qF zi8XL4iyQ-Ls)EM(T0G}ykBn*ldj5KaKl@T{7bx+tdj!CzNXyWF#XOeB)0f`e)R(0% zTs3vrUWgwrWhIfOs}Ir{%|x3M#&y?K?&pnImui*g>(>b6UcCOedqWg+bK~_cdNr}x zwJN8JiAJVMIpcOB6g7(?#OZl#vv5X-0Ne}+@%)c(+C|W+41i>LEd7Fz@~iqBaBO-Kk=f)t>X>nHIl>^s-E|!>`mP6 z!n5Ra0)Ii>Pl4uQox!ft8qxJ@mdPtxs|)p2u>Z+KMY76+n~QmHy}_N3`rc0N+jYWo zLbW@_@&YnADcL-Y$FU}qg$qh}-?7Hq7QJs;hw_gQi=7WNOJbG*Su4*`uQVV)^HVih z$%`OLPX3}<5?e#QK;u!jDZH>WN~9kB)pzR>SuFZK`rPijzG?-z)BA!v!MNov{=`Tj zrDe>i8{{2Gol&}pQoo>mLl83}RZ6xO4>h0G7*;89pBmz?5c;*g1rg@@bZb9BQ%YAT z)j9u_ZHxSOkyU-dq5eBG@UCu59qL_CiBxE6$2;y`lbqkRclwL5Z*EctSBi6*ErfR6 zahw2tztB)E+oE@Tv!U8DzIt65Y5gaZ_T=pm2|v)9x|`%=x03tF;}tO<#A*^W-z-+1 z7iy#bYKchEN59_A+1&~`r z+{a~-w>npl4T>fbPIw&!d1RfKn{q_lZji83-WKfn($*`0)GI>cCgU2}7OAVT* zj(2-}T+BH|d)V5bZZK$`vp7EN=u%P&B2`VWU}$n1I$fUG9(9RAhPc$xCE*m&hjZHi zGnN-uHC|N3wzY=misGC*3*H4}Qx4t$Zsr$2Dgf#_q>2<1MlV`5`$Tlw5NbzPU4Lv)iFzp9_x_W@>0`pz(`&fEZ>37!g1JZks_*{ic;><-yNR^}&t>cv zv>m_h{As{@zCHb?@$kI~?^ObPW_OImS4PQy_|G!y*U#TG%5~#UkI}GFTlZ}%S;p&< zp8%@{X#tPp{?hd>$nGa82JY?B{*T zU9<}PnLDH~XOv{cTc&XHB8qZ(5HgcT6NYbXlz$zneiPDItM;~&N5(sv2fRBLq~TA* zTZKkRKR|wzTPf#UFpK){+P7;h2z1}IR)@xzPbf^NzK+Vh4JPLKg#!;Xx$YF_(Zg*~ zX3C_tCmERJ`9?Np3#gu1+COu|CP?*OJ~x?xI!e2~e%N2?8^o_Y8_xR~hV~Bz2>JbE z?}LIYen{X|@!2fC+str}{Fj8&XVq z>j6`^1hc%sk}J&53Jpdr-n zofXFCivo4m6h_9K9zWB4TKC4d174n&-@81eFVufEe&*G9d%c0lBG5gzwaN>b`~G6` zH~}6Ox_(>{8V%kNc@g4tZ5anF(2fPg`}BP84#^9tL1&|p&F#F7C89$oSVL%AhvWTD z1kVyJQprcs*RQ6VHBb=jCACp`fH{;v} zXR2HAR=t%2qe&#@i`<5voSc^@H zB?C^)F`8*@IXqTa zQKeI17bD~erON&4I=vg+daYWyEWH}=D0mmhJ(V8upO-QaZWd7KS|TE#MSFZ7%V#J0O&Fst@?VrqJDqaD6Q7ZH^BY_&$aKh zU4un16-g^#@c@w-v>|b2Nk&;U9gy=+@11GBbN{%fXt3o~Uj|xM#;tPiJ7y2x?HYiz zTCS-)`$6fmIRr52xs*-w-*#FA{k|CDv%QdFWOH8fpuYVsie!q-Wndvx0w+cLgT|8k zQ|(N>BbK~(hXL1PCmVhkd8U?k*1A72GVsS-``<;RMIkKin)A4$^SJUn!zi|JR^^R` z+8gvhkl5JfrdT4f{4w{(uS}>yk@1I|`BCqCNJLV&%LdCDDbtyh477~%mji0V5g)QQ zzA>M{a14LypV?MS@iu~G-P9t1jJ50&*AP z3D4Y!W_{R(c%`j29r7Onw*_|JVY3BFOJ8zH(%N*YQ-6JZNuq%BSS@4IHEUG-EQ_E< z3Ctl@FlW~#*In3vMX*|i?S!w3z_55=*;Hx%-=l~BJ(|e0ro8JFPy9_NLbSk#*2ua= zPTtrMvoEkS8SMOL9Xo@ z4C)S6qnYs-#WOokpe+lx_6|6W5?frJ1MnFyTqUez+N4hbUiMY@BSb&SL;t$)N1G`~ z=2ltOx1Kmp3AgpyNfI=Wg^RBzkwS{exgFZU+SKbqoM4=h#o;yv@SD-ia^VhUY1N~L z?PVPjQ2_99;W}O0c{yy9aSrUJW9qFU_#986{d|mOdn&#js^A1sJQW1rgYAUUHB+tf z&hom@Fy6c}i4J+$78R>>{TS7`IQ!V6HKfPYs%f{_=87V0Ne!@0y(uUV@9lBRKXXRu zWxYwyPhBy7U@;I(yz(5|{JBs8 z(z#z>qqd(lI?z|Wg=d#Ti!p$COElDyphFlB7o|Qjxq0Daw1UI^KL>eyO z=Va7nG^QxVOXFom$%c6mz2hMWU+P$(hg*JcVNIbR&O7Wwo&ZUOc#eR)&{$*%)(F*m zO}$k>dx=y9ZkEHHCUtsM7X!EKdrrWbw>SeQ+kk6emp+>-V?jQ={D z+KksjLaOvTpMr~29PaaM`-3_o8~UC;=gJL7eqY=S+~d&2(KcCnfm26qoS?6xJzexiqT&SNyfMpe5t2ctWyeiVTd!MM(Q7EGQZXrBiI!=sWP zcT)nOND)&l6HFe)^~!w-PJaa0bDnx+*miH^6%RWHUWG$}wzYVfjmBP(%1_8n9c!d(nZnOL}$EL}cp zoxLhxbY!79CUN?kuy&-`eLJvdgP#UGB>Ue7v9_Z6Lm#^g}Km2*42ZM%%Su3q1w# zkTO!8Gm-sf*sYl7=XdtlBd=&D!KQ2W7woePP&3r2bkXl9kWRoRNOU?QXs<^dGgw4< zB6W(&{jPQRYMsvUoR&5qBD6!bYfi(?&YuhlB;hw7JbvX*nX-QMtgG!;DJQUJ8czuf zgsky%uwug7Z9FkV7dMKBnnhl%L(QQG_o$M<7T(XE1Ciwyif;47gXb9KZZY0KfxGQ9 zFBw%*=lJaH>o?0XHKILb1ys5h)#xhEBIFt3Y!{$vY{ugTD>PU|yP03GnpP$AY_MWG z+N1c%GAN48WkXCwL%Fyjwz!o3UHjv*;!?irNX)z8l1UDqQ7*#8T2u;uK51y>x{K18W>E^HKy^2r zHKvNjSI%&g&^#x5Z)@)dk z!7)Zdn}nDQb1O!hrm68~5{%I}7gyD}=E#wkc%%lUjl^C35%}}>v`;?@P{T8h0+Ps9 zOfvIa+nHw315u!%Z!Z^gY>1Zcca;9iI+QKG@F3gGKnMg_zcqNGq3zYYvwLu6{~k8* zvmRO#g%IMx#*~-Gn?oZ2en={-(@Y5;aaOR8(UfAM7>&2nmh)!g0Be~ZUQyPQ_d+0`aVwsemDnq zPj`>}Os-vk{ql33eGm7cME%-x9xxd5s(x{t; zDORdhJVP|YG6nu+tvZ`ji*DN_xkCk@y;&Ppp3STqdTO5QaWPjHZW^Emne>P> z8LWiy*DQC!?%&TP{uMh|K2#icU6i2CK``*zG~M&(#%t5gQS!5q328S2OiVfL1Ctrk z6)mQb<+2BtmRrnL8UTs)=F3b5WGf9Yc1zRiUHevpX@Pa=ZKwa!Li_DD<;qUAqW3|W zp(3Z&6S?8BnoTe|%xt!FFe`L7)f?jK=-#C1=2DU0PoZx}A)1YpKVDO8DH2)Z{$rHA zy(fdr|Bx@Y>XmYIe#>{QBZ-q_0!Xja!L`nc=P2*HPYi!q5$%H{G|%pKu?NIKT6CAN zr?hl!#&$0Bwpzg&Zq+}cY|a-T4b3pnF9C`;F{WSHn>XdUgJ6 zkZ~)vBKQW&L#8<%;#9u%UF%DS(So{beNnfjtQ<<&=WrO7!^O0OB4^$37iFYN#5EB( zgi<2Q03O-0rLebDezyB9V>wRj3Zld)>6wOO?R6mU{C%9uvXde;j+6cdb7ona# z@>RbH;sVvQTE9ER-L>+EG9w%K1I7WDI9~8K(Rz4AbTvo&3M>|*73dNq39^qD{rkh( zteG_c=AHfa9ed+zsH!Ey9AHFguh_3F-=97%cMIeO{qVx1dEA>XdGKR5tW(IeTsotK ztWa%+#x&(YO|bD$_bBZRAdi_IAXpjMSOor3=sTp);DikGeO{82S_0zo=Zg6wfiqIT zL3T%M07Jn$Vp;vp<2dk3$CT%z?`G6x+Rd0W&nRTnRr5a_-F`Z12vEBU^A;9+i8Aa5 zeIpbOTY7bY3!)mGFZzyU|*!YNBdIDNmiI2WR@jR^hl` zNOj?$e`l{RPc5ahY4p~flL-l3Y;NYWh1&c%#%^o-6Ro&{dTReCVg6Y&ZO_B;puONr^);x?KfxbODQx% zp~Fp83;*9!ZLCa$`b}Gl4vp~(?jd*YLMi^C$d(k4_Z$@2-%QQ%0}6XnlctKOb0_$Boy%obYw6ap<;?nouvECP{Py>0+T@kP8at^JCgzOfYbSdz2h*7 z+Yk0m4|YN44CQ-GXRXOwq_$htLbHQyUB{~FUY*L&_cbtg6V&dFrJ!QTR+7i)zW#Unt-bkVkBeq@)`&gE zmqzxNMcEjc$y>5HE;zt|RBH|oasuD?q}TO;I%dp>6M7ZQo-^mFJwZjFI^}Lgt_)RS@mKlP9&dx_ zY!g`_IdEZ_0E=tTLg$zwpB9eAUH(=o#B<|KYpQeL zWVjNKMV~{QMj=Hilb_sy00)Gj9NPj@4d7zyFwdm?QooJhF*RPowD2G;-*n#~a#dFR zmQs#e%|3O9JBY{T@pI=pioU=mCwl;ZFbiHm83@mExRLA6j{P8xo->}?)lY&uAKcc4 z3uQMrI5vLemr5$%L*}$2VGduH${y&_Lj!*tMk{k#bzU&%^A-a;zP@zgR3@k@7ymLD zC~K=0a7WeLB&^u-dozPgd_+1980!6D$RyDk^{wmJUft$0C#}Dz)0M@!zV08Jz2$(e zGUg1%lg-ul3m((_*B1*1RSEyjs@u6sbxKRE%Qyd|7pRPV`cB4?eN{CCRlh)k6+@1cX#IH9#6!9}KYK(J@QGV7-IvEUP1ah8^>_oJF3jl%ECtP_a)VA; z!RaDgjQXl*OW33DWO*^5CAEcQHY2mC?0(xNUH7yh$Jo zAo7-%66WTt=|shNmT4xzD4i%@-=Rj7-vN&8KdZ`4dgv|j-bKePeq`bFh+9KMu6o-iWI>svD~%l$$$_c20A5|2YJqxIAY z@jD9B%O(`Yc&(~a35IGSr;D*yvH(c>i*hBa&G>%XUg-&ucUyFy({?t+FPq6|-vUIJLOTWyK&%bB4a(bJRcozz~;m_Wow$;a$Z(TuRka%|X|?Q<8S$ z8&v-%YmbaxZF4;&SJR2b%ZKEzZW309veQSuc#=9FqxLZ7>1OR4e-mQ-D`HfQa`wbt zOJr^|ASyq}_1U4NZR;s2&k+m_gptS#rwPw5H|)n?lD%^6ZMxs*>3oddD!eNbu7tW&wKIv+;{_T=0rsW+y~8}e{Q<(mQD^0EPF8&PSx^uI?@CA>+v z!Jgk467g!27Ga}4s?Y4ZJWD0K#*+wYxS(mj&Rp7WeJNS5@xLtL?NYr5g~kKEXkmr&t}O>lr2E3O}e7kjCMp>=;-pDGeY+d%;mD!r@^jBT&{% z5|xr=;fLC_hOV+U-ZUPPhQo@7ys6T5mjLdPf)ID0^;`C%zEa4{yA`pX0(?=_Yec7E z+5ITg)3zu%4ox)mX?53n>?yNJqYSx7Xrr{A?6L>wO-~F$xGrVMqUaZL`DrxsQ|gt| z2zE%;3DrwwfAmRSuK)tPJnhqlyR?dp+M1K@Itl=~`Dg3u*UG=IfitT(pS&!;zjV;b zXS4`R|A*hotGBFZRh6|STso+jUz%UWJYYzV@RCP)Hk?0;*FqvFQ8;51eOc!aLG-(! ztHJm(*M{=&9Uv7oR|~|(Q$bD+t;~$pEY@cjEW)@`n#JKcI|RER%GSJ&5;Wf?2>y5NlFyBY^1V z_Jnq=+*9Ne2p+QisawTX+qr9xn#;eJo>h>44}+L*F@a>l?TYO+;wX0CWBB+HL|{ex za_uIMQlUF8S*5mXHG?<7N}G{-`FzNApD_a9AG3Zs@&v&8pA_8Ms2hKi<{}fmwA;CZ z8O}TNW(f0tZmQp;Km|Khty@7U+*?){N#`+6vn~4inAVDL|KD1VcZ}9n58`lL7CklVI%odVJ`)xU6`u zg=W~IP?#ef;geAXOD}{z)kI;TepnS2oC(Z!+*&jHsDTJmz*2M8&sw=%bG80Pm**6 zSqrA80Jwc!Fx0gTP(zQ6p<*~(Fi4Iw<_(>bfJmm3qmx5zjmz8YZH3*1(aXtWk6Mr!BHQj;}2*4PR{#4ZC*NhQ_%LtHP0#bWy;rLlbo5Hd2rE#w+VA zS_mWFzzU;Ey523IeE4hJSJD9Z8dm*)xay@$afW#|X3BBsWLGixC_3@ALFJ^ds8??h zJnf1Are5VB84`X?^ShM5`n~EWC&|ArU&y{4IY=ZSVnishri4V+ie$0 z?Z8+6dOZpi@Dv%hW97|cxqjB%rQZz8OBqb8*aPAy@|0x5$sfTPKvP8l;zw(QlG_6TA55+;6rQJst`S@Vxvr*y`V~F&LABdQC z&Ke0CF@{SPCp<=7RFD?z7D@io; zog)gpWsD9nbhb>6{~$}>fKuFkL-}X>&Afcop@dlM z-tzG`JPgv4w;fWV=A=6@BUD=`+7EHHF zcqTYO<*S178VpeS6wV=SN7`q?*X9@h0vt*)v+TtMrI#f`gS~D%z*1j7S2kG2^6`B+F!$ zO=|v+I{^xA4&+cJ%DnQ$ktZ8?I(Rsqc-}hIUTw-BO2-Wybt!Wra>3TeGAK8|nLO0~ zM5yr)-j9wHFW^ECWjEbmh11fhzdTXt(rOw@RLsa>HJUOgBNvpe9%QB&)rU;viN zG)_>wufH8iUv0NTtHtSsLYB!qX?bdv_#@Rou_;jT$nz1hr4nD8*V-*uq?>;?RwSX` z;eBwngkcms_|QEmUhRJqQn(HWRzt>q{+p1w&8V)z)@+T=#r^OsDf_KER8DdxiU6XOtqeg|*dyC74)T*ns>M z0n_DR3pHb08T@kRN(V9ybVL4Ga=}>RjZqFra2vZbP+toMm8D*DhV|jG3KP1tjeP?l zvscTHjM6AB@E~cu(pqB1(yZxuKoR4(tWuC0fw6xipLlfN^BCZO=-Wc{ao+dO)@w_h z0oninxCr9D&q&~;tWu>WH)2D$2j*cSmwvvUX{R7r>twLus3Bb0+BH=k$V`}rEAhqV zu6$tqf>h>AhEOV3_yjfkcOO&Y;q4nZC;+z1~qE&XCxe;?q)GrN8Sx`Ij0{_9Gwhy26 zU{u0Uadtx#&tG=C!30^Kdjl6uOy?m6+yha`N-!wE+$wzNG^hZVf7jzF?e|tjh?|F= z#))qBG8HL^L=JO|?By4|_;jb}u7~x%)|`Wd+bZsVvmL4a-Q-i9PTbWn@}$n=2spdj zK5hSHJj5rapW)Y>&6etw>*F;}2X@Gim#`%{E_e&(poqrWXdyrrZ{f}@fPvGac8mFp zxGG=Kv|0hlo0Hp4#t?BGqhH@31`O_Iv}UyGta`6VMmkqS-!56KEQaD#d-^}}(@UXC zbx7>EO=tB-C2=Ce|8LQ*9mHF9|8dxLm@$*>IYv%({kiE@g69~hq%_+qSPh3UtdSm$ z7$!d4nma4rQTb1#l{T#3Mno@I|Zzgti^ z@k8GHttRkxK295nm=bc-_>(+$r>TDiYPT~JN=BV*3Mf`4t%D|4MdlMfO{TuzU?tQ6 zx~=5b{b_zQPwT`}I%?CD8r?>(C5AMFDjKPp)6J!1p*`|cK z5kbuIRvn2sBkwv1;Xip481)xM2r|$B3Um{E@bc_i!`-ldhvm+gIYmC9t1}7<@|oQGu8d7yVzO#R;oMTp{Zttp=Bk-JpS`CCheFQ zfnB6`Ps#0Lp6SBIO6dRB*-F!@bS@rv<_rb7X)28qsoIrcxy@N$syEVLbhsZ~B)xZ4 zM>+k6vMopehWbqo6oiL|0cCB^xMTk0aNmU!@|Iz@KyP`8i2bX_uO8i66QY&`)~`o2 zV#bXQw`L&Vofl!v_*4GN3Zt=1nrX^-@hNj-c9ZBE5c>>!UExIS3=GGOU;Sw~ke8(o`?){BzU|rHsK9#YZkE7kRb~7gR#q zpg61z)~+Y}AvDN;vry^;^Z-@hU^qK5n3(cz!FUjz|0hM|W1@_j1*_EZU}yX%z{E)V zZ8-KK4Rw{2f!KjbTsm;{-LFAmE~IGi)*ISW-N^hViAX*ZkGo`K#j8Mg2Eg z9ZQBSrXepaw>jEQ^gR=dGcn@LaA1A$b9Kcbr@U)hpblS2<3QY1ms%-fD5CY5Gb)cy zF|Lne=ETNhg28C?b8`zs@hvdjbmbOQDnD~ln+k-t#Wl$_DP*=U{hzU0^FV>mr5eM%s`S&Q2i zrHTx19;oW9RPGP>q&0#1MOT4)6~=aJ3u;TxEECVnys7$7D47>N4< zMhFYmLSAD{JT^_ynKNX#td1akhlCRFHtH&M$xDi7SbIx0gI-AC&hw+Bso8<6w)r1{fr8M@A8ODyvT!2tG=EV>D2f9SSkHh#56D< z@EUbTp54>he_(VCzSY(I<>xf8HUB1tAf)^ccb&y4o(6&&jH<6XIeT7+_P#UuE9b-y z((2c|O=L33^MVaJgjtwmiLdpXL1{i2y!{V`5sy!*nI6DHcZIMelf3;S-NO%i3NWuP zr!L!^X-Z}x0Tyg7ty8#9Kb3xpH>)bzr2uf#k{BaxwU026NDDs7n~mmuGmH}fV!aq} zlu)Cl*^-XbppU|R7o8emD0Y0452kAEz{pv7z(1bEK#2Peb|~to5*5 z;~4VvD5Vq+>?q#X9JLHPQ$Ja+;CXWIWJa<4tnG%V*qtsP3Pzj}JH=qyosB70VPlNx zYtzlw5N2|sZL#i0O9^IsPK5BlpZ&%wVo(b+t|*q2E{=P*W+Js*29q(O=H$q&I=ux) zR?|(L8)T}n-{?>W^0c+y~M*$ zCi=y74e*k=)O|zF?l%PrDdOf+hGMHAo%*8$CYaUcmk~*UPPw8$CHANaXze*7PFS26 z<1k=XYeNqkCckv)V6P~g?#>l_U5N(&@F1uJ#E7gp0d5q^<@RbnOjf@k4|IUL3a4U9 zDaS)aN5D3BfL|Ob+Sr=KD2O-J>qN6Vtc9#!J!;pTY{z)Fl+MW=zo#26DhTJI-rxyo zgs~LLaK%RpzYa=D$s29JOGi4pUyZk<$W3I%{kNjKP0?yto=%9Bh+J14Ka$fNuD-x`Of$5bGZ<{oRBENqcfkLL-XM9+SAK1dbn$g_ksis_L_kgH`o7dZ zqTN1m=aD5*2%v|^=wgwpwWv_NJ>fVY-xU33r0Dr@=eDTBZyOId6{sLk{598&T%bec z2M~3NjN5X$=mCZ9XiB0o3}~T{yf~((h|Z7_XDD*lx9s1`UD9)?KfYy+@iqCHs%Sz6 zaxfES2X&yqiDmvtE?-E$u5p6#aZU^y)0oGLN(=F2I~MV$rtx{yIdfl+k}#od&X+pF zUx+;mW?XsA;-PP@8N+~Q)kL$WUKY zCf`5QU1dRPUpzw7|C^x(tX0X=kkvJtlB6^#CN5lB&NChw-y2a9vE)kz!`W{hm#!ja z$A(Sdcj4^u?olMFYG1>~0N}9qXVbLW?%M7vOUR~^&W2)@`IVBr@K7Ba;zm1KwUDo~ zYkOpFA2Bczk7t_^X6M=c*wb(+U7C)9B*3QZL3MZSR&m6f!JLsbI;_?j?*iOr_wisG5A4H^?M!!m-X4sq0JfImbVv>dMnbJU->Q-bbR zxl7LRpl`o1fgHki*i2BJRO!+;PtZ4ybBDNabTG7Yj=}LGZuGK@N(@EMZ1SQW3xi@B zWtCr(QVKH49ezwpftw_3k*=i)ok=DKd5P*4U4a&ULE!C z`4{~_3?lPiopWbA0HE6MA60e-zydTGxM*IV)~3Maj8$;(qp1zW>QJA3q|oG_iEdhwflj!txm3XeY^sB2e+#Urn;oP z*d^x%9AR~@3oy0BEYuuZk&a^v&COuZr0)Jv>i?Mv__oM2qvnNo9u+wxch_55ONy}3 z1%Z4(_YJ&Lfb$0F1K}e5G}e;F4Fc|a%ysY+BD1KOHbxI+Mk2@{PTO8)loUQp_dIc- zV2ty)U2gBE=GKB!6?=X@Jb%Ht8ArC+#&!Zo`pS_+R`%W`kr1u&*j0V2KV^{0f%|p;>m5q*OsBM|0 z+$RN9F}tu0JU`3i9cmvX=XldQJLv7nr1OiBb>9I#ALOL>cwIDsj)b^%YGBsm)W3;H zq9@L6cIV#&U!fXoN`P(xfs~Z0-0$mzFA)F;sJnfo4-)diRD+Tj@ z(QrVQ_Nth_T>SG*$riQe{=6aZHDW=1Sj($GKNh&-db%j8cX~+bq^;drszTpxW~$vT z>B$i}3;K_v^N;@?0V&Or=RTuwph+rH%b%nnh!0?B%;Ge;xw!}(iN(onyi(=2E85$3nweTo zbX09GRetL8bQg!t`;;x|kd$IhS?*j2qxJu(NgnCc!v+{~r`JK>Nil3pG%!;o$5p9m zidzg-!miS|y5bHaDNnUNTJz!XYJ3do$)VAJG zjTQ6hANZbkf0j7yzeo&+T4PnxGXd5<5w5h z9HH%+HthQuV}OdcQZ6s4O(#Hk*&}is42-+;Z<2mV4F$oUQ{RDAQr?bX0e6ZKUp>kHCbD4nU?~Z^ z&-x$jplEV*K$P1z3U|Kw81#a9*){vh%h4b5fPGudRQj86EnE(0*ZQ0Icib=4*?E*J zvD_o%kaaBVXE9Kn!s)1RGbma~g7pkq{W08Q(%bv(h(ylZdXgi8Sq+E)=+yHnWc%HL zVz5ru%Eo}tMz1@uHsUY`GR40k?B7k^bq1t2{o4Sx_%dIsJf{*NCe+G(Lq(;vSdsWZ z__VAQKvWCId5s!mjvK?tZQ@+HfjP|KEl?9J*#X4^ALw#}sesl|+D4zjzy*jyXe#ZM zrc*E_t9h3QpBbnToZO}MA>y!EiG&AtRxdl)nu@kq6n__p_emFd{XA{_;CQ5W3J=9R z>fA2Rokb>NK;N` zVD`me>{h7b!wLYN=;#oTWuNf^q-27F7RJflL&R9cw$gd>^OP{hElltqcuglf3$~_& zL|Ben#IosEF`_W1!OA4g`MeMc4jZ)VsKmoYm9A&M4g0?F;4a9h*>6Xa+N8;K8p73p z_c*@@jHgDE48~o*`a{{z!+PCsQ@^>z$6>ZBE*q;h*3@Fyn-xm9#|GB8x15d($#MLg zP!WF*4}X~3!JQ#9wU|QB&3~h{NX{`U5#NwQCQG~5m76P2zp2xZJ9{<%jlgix>iCc& zr+k~P>W8E5ccS`l3~U}H`K*NhxQZy|zUi_?BG7u9+EXqZA9$&1e7{{s|CIidw&?rq znO@^wH_>5*H%-0mJ=M|2sonjydtSZ(48UAAMzeM4RcR823(liS#^WZ<-NB<|&yoIJ z>!Ty;*T=b{$Kn>61^!Qp&7yDU$&Pyq_(C*W$%IlL-`*2O@G=Jse*p2{eVgCsp#9g!SO?@a78vxbY~DV z=48YMjsWyr2ZO0(48HL?Tw(%s7Dmj;sv4;7p$rns;hM5{PZ@4N(r^Uyi$aLmRCZY@ zCu|Kn_vI~U620=sFH@Lyeu3S(HvrVElk}syx@&XZR1ZVfU-$*yHjM|st@(%C_TeF?=GUN;+oj9Bn8c^OXX4-@Yowd%$ zqYhlEv_5vGq)vrG+NunTgOcE4k8}=9isCs7ob06AZ-t4R6*J2-DD`M*3$@il`7$G0 zO1D&U(+aubKA&%Hz_U{j#P8zaM^m80Q_L^J&qFW2rP2Xh;gM9t0u~4* zXvGRciJ?nKd@ne%>y2W0uGxPRrI;5%WG$Jj6w^kPR!ZKYg`7am0$=!>=l8ut22Xnd z0Ur?=^i-3BB}}!20EB<9F8wSq^$*zBFv>{z;%{0z|A+weV4QO)UFSld4A z4=c)`a2eB5$P<_KeV=~vMAuv?nBBqYR}R^EP%*ux>_H)#p?5d7YCZVsRvJIeVdp{o zfdbk7RmH+<=Rum|DWpJ+K%~>07us80GVVVxsB{UrLinuI~Y`(~@$4tz_ ze<=>karTroGi?;f(O~g)cWo$$4Xcna4J5AS-LD3ruEd~1j8pM}wKT}_{wJK@<0&@4 zUFhU&cZo5+^Y7SA&t24ID@7m6j)-%lO_PDh-vuq%_kGljXaT@54iP(1a6I}zOpBYPd-mS7;zJLnyha5FHw z$njcE3#^%4xtMCa?w?!L1Zv7}KE+n_Fz*&7o+%3Fc=QW7rO9HCFsGgdocrn9!RhGV z-l9+Jx5a69 zC=YIvfNmvzp7u{Y5cZK0>G@L4g?MQ{tL`{{K(4f*dR;8nP7YoW$r2<&*c-kjiHDa1 zorWub!;6j$>2PZT=ET7Ed=DU>k9xFW9iZ~0>i$aIB1pR> z##-wyjF%us9=Zr&WJU01%+C)yPB5eO67D14$(QS$raLZ=yP{ce39~puBl4EWNhxln zXPLIR2jikEIw>GQY@>Wl?0ILZ3u+D;^tY}(VmxA5(3&iy+|K@-9)XzdVfMP;dd^T0 zzX&Q4mnvP)yPl0K_7zjtMyr6r-DsP<{=Y=M30zYLzV?5z7zidHAWDL4h5!{{M37N# z#SNYJIrP7LiakdbTjAuK-|{@)hZqdqfP?wjmlWZwe;|r{ou;@fraS6usuJcNuz)s7 zr_&50@_A<=rsp`@445aTJ`%VLEbIH*28ijk_{o54&|--j<@e;bb@w!6j6FxO$Lb(s zDOH-A;)aaT4y}6$NKVKm3V32QfQ+J@?3JltPnk87EBx}CHN9VQu|UaeW1!#B+c|3u zcBgOTslu`4nxQ4YkL^a&s_Ru5k;9BUHM8panLzR*N%k~v4WK*XU}1i!D>m^L(OU_R z%3kuumb*S7$M>J1?Y0^ZkRpuSkWMnHG0{3&YHc^9(r}NeZuFl3wKnqgx(XzCy0wih zO|u{?MW^*1$cc54R^?^VyD3i7^|+C{38_Bk8n|>3~)}mBOG|T+cZ$H1=J|Wtzz^ zP<{&LzIc;r)kjyql-~c^C592h6Z6);ln#c3xAXIZk^p`WXHWS|LXgu&3@+wJv)hb@ zXzN!9N4>Tdz1u_;js`bg8vPPkcRiVIEnm?fAN!*_RXm8W#q*bKN5){l1_1P)awdF| zp`GZyzu72*m>5dV2}cEE^*HJdp%_F$qm*gwZSC`0l`KH~d@W`s&)0fw3(*d<`nboB zb26*cZ`9q2iYF0Ib^#?J+9eA0Cyi;evy394&!jw{wcv@+kV3{N2sxS5-@M{Ki*4+E zAam|=A3dcwXPDSgfrpHJotspk-8Bep+b*{LYayZncP(!lE3PnUTb04(lqM`2N(y3# zUGm1d8MIGayE+uL1>4r&mES)=+h!^p*=+y}+Id3+w5Mt?ct~-)c>v4Zq?}L2JpxAQoI_e|ZFA)|nM>$~vfyKvx@9iXM}l-Z{9K&%1f&Jg#!6R!WrvIN z5{St|dGYaOluNz$;`hWAA<671zA_HE>|QcA@`7}6!ssANYxVdGvi3`yQ;gJnQC^)0 zztA08gYjnt+jEE?B20{55D&w-=xmZU&Tb8N!;&mA zVCZBMU#;61C@kEiYFlltj2G^5D>LX)mdGAV8uYXL#Si}VBUzec+hA1t>1zyq&6M%E zS^xDKLR4fCxdfohJFSRv@kd%q`k9f_HLP#*w-jzuo1AlkYBIGtBQLDOM`7+xZUBh| zBN@`M$;t7mkAtjjpZ2FW>lqma=P3LYJ>SW1`i=(lA;h*hL!(5@awe<%{uUKE{udXk zw+>5cI|?q_KJ8;}cbDGXim7NA>C@}G>(ddo3AWAToOr;0!Zy)F>i-r6JU(G}NKVT7 zd_WqpsYDVJh5Inm#n%SJM_8Yy`Vy#_B`_=(D--092K%l@ZaYgW$3`i%4S9LH@&oCW zd-jX2PaV?gikly#4W=6K#`OnNY3ogaM5ekSv`51%Q6dV?Q6}Isi^w5@CRi%VORUXA zAhU0=bfkJ%zu&sKFUB8`>oX=#+~6`_=2lnuK(-+_aL@1?o$t9nz1VNCcqSp0mYCgY-q41?{;o57XZji{LFo1>*VGvvw@u;$-{!%harGZ3_j0 zhRcSR#+XlGXc_nmo+Iimh{VJQZ)q-mP|P6Qwo{IrT8Va-r|tw_nxGa>M~>p#%Lt15 zu_Q;6(X@PlqKZr?H&j1*W+~9EcFA$c&1kZgKX8Od4>2L;C3%zBZ(80 zVp}twoCz`KRena3P1LYwKRRs4`@&F<|J;2xcmQ;qjnjzZNxTJBALDFD5CoS6pFTGD zV4tw|(>RP-k?SqMvFAE1!ob@dm=Lpmw$|D;-cE|}ZF1kDGHcP>Tj5k5BUt8p}H2nQeO*Vv@9J^#)A1A?T zcs}6_?|00)KJjl0Ibdcu6m+Ii>a`s>xPh2RVpKxTR_;mT@o7vXH_lkd$<7AXpMSI> zD&<;fdFN^~=ve59O~BdK<8h0DZkCT(BX>M;vFN=tFJ&H!Tk8RUrC2*U(PK9sPE(Yh z?cE2%INrC~Jbh2*7(?2<_EF~8@rH0(x1QwLhUnr{vJSgS!JiUwmF6hB{}ubLjI$K$ ze&5%IrOoMPi2ME$k+9^EuS|J1J<+99pUc8Y6_$-cGQIJV5u$)kR$0UpK#%UOUPl)0+N*&EfQcvY#B$ z{PG0rR}dlO?&RXG7c(JR`dpAy0?eC6t=}KgrNWsuV{(wM-@mB%nUT-EkD{H@zM{Bn zcH`_aH7IFzx0{bDog4b@Y_P^aQl(vZV4p~R-&Q2{sS*%c7VLRh7wfhWfMr@@RLG403u=W^^+^{1hr9q(}9 zr9w@mEVN#Q@J`eT7-k zOi0%(Ch18UXns2!(Kzz>xc2`;@Wd>vv}ZqkZ9TuN*EWA03zAm;zIh5Jo3Zi-|5A<+ z{fB6Ft|>Ox`zTePB$aN6w&_hOtziVlIr^D5n7ElY@Y1ZBdtc<+3j)XXtkA?p0$|SLCOK7AY=8`}ZVjPk)#54do})yT^X_ z^6r$^Up8%D3fnnf1s>@izN7TVos6B&>>XsR3(~<)3@@Q8_M6C;;O|w6ycCcjMcu11 zOLG0>KZF|FP|8Bg!GJhAv_dj<;xk4J;z7SC3ue6;Yi&PR&}@ulo8X&OvcyHWee=)3 z4N&n+lWkxI|LJ(ZbB)>n(siJGL}p6K_*QyPZX+efkp${9!dj0(H#rXKS>&67LWQMo zZH#SC-4#a;DCz4mcVmNM`iT)_>`-otkD3}HYix_c(kZxUtPx8!Ox5QiB-guc{oVW4 z-^G>!3%#rRoxTClkYv#C&ixtjyy|G|6y&2fW4tu|i!}-F#iHyjTs=wtr<1~L8w6@W zw!!#xYH965J}V3+ZdE7cv6j*@cK+8()}<10yB=>n)`VWNl(4-)H)hWt9c7N{7nTq! z`%);HXV;^96ROBWI!L+B*{W79x2A>Y_kY=K=eXKi%dz!$pIi>|Iul%W>f^1n-R@l6 zYvP)RiBUc2_zqB3l!5evTdYF?S~NKaB`2Zo7gRtOo=T0dC|MDLJR5$x@Ft=ViFbhu zVXZgyE}BAGR2A{TMbrIHztpMP5`LMg#HM6?D+CWa!i4fl#N}|dxY|9wQd<6fdu>5v zns8)Ncw6<`n!g332Ayn}3i0i^z6iB2xm+rFZDdN|y+YvP3Vr2?nnaEIwX;?S){#kp zi^iXYha!-E1~>#Ueahj`Ke3(E$bB(~8~*M^^}qYmy;Z2!+wQ75d<&>4eMsp>9JFTZ zH>S0*Jqhy9GM%67!jn5_*lkdSG(}!)TMBpuOKDYZZ%eY^y)J0jCjYSJ4%@5PRmr)t zye31SF%7LV8%n0*2|&2{JfWLvGmX+r4Xq|_zd@#K;ZdkB5OMG@J{Fo_q+faYTs`_H zlE=bJ{GoBu-m0T+7x#z%MM2~7rS3?IEeMq2Oi~jOD1Gm$*(!DGu6E40G`=Gm6TMsa z5LC7_hQrx(n@Og{^|OagL3m*Qymn`OvV%d?H3fH&Te8Z{dBSg&esfP~)%CN))>Uo* zbBJ|8p4xJnMl~Y2ClyE4(Hr#UZfYSA8`G z4|qe)`paxXN_Y9kz|JYwh*qW5S*<}zLa}Pi?e2mC>4z01A3<;SuHWb}+?`8Y1*N?mF;@m~9^i~Y@5ymyn)zx1_>6DyZD^ImtW7bkQZU6W+*r4x(V zrL!4BAtLcqDod=+8iHD^jJ&ca?XI^c+v5c8q$di(B)hWQAsm38W@!RCtF84A=6y zy`1DzrU<7jui+%;LKTi~5>Jw?@Io5G{jeRr8-^f!l&qk_DMfeS=M*fl--<6{18V7n zv8RsFVccOxhKe2#W3Ln;fw-CQXGLvi)KIiJd=I;NK5EU?vi=aJlV;eUKZM5jus@s7 z%*bc6NIbQ`*H{Z3Nkb~lSm`FO=LBw|{(6kdMC!Oh8~{OfPh#VcqT`y_6t}@c%DQ@2 zHW(^`lxJyAaszd@F=|-6hFTSzZ0*x`s|6%0oYZWPPCE_kDYd%?tOn?nfiv4a#lVvG zVeRK(9XEX&R+4}H^VlpNvjE5*$tLLA{ys8xK99gk5fea%5X@J5a5usIEM@mY)!RX-|_sQDUm7D1mk?-b?&`CHcn5 z;A9w0$lh3*Ar0hXjW&ev?>Mimshsk zsPzP)mb84CwIfeJ$`Bj^tmuGYnbD&(Q#1nmXZFvenUa&pwin3Co3q^4rVdX={|cp1 zBQ^eOcKRN}WtDyReZie3Em~{@MvC2#JSM#Mp62|)IK$K5lg#He1F0DwW;I`xLs%v^ zf59Ghm9Z1Kj&VoWtK7J(RPMOdV7pM_@;@#1Ho>az+xkCf-)|0M&WgSFx~LJ`03(2I6?M91n8 zVF0F8a~mZ2*zR6An#>?bNQl(#v4hXgIipMw1HNO~Oo)!#y;5@<( zf5bd7@OW2w4H;)#ou$drAlSWh4mNm38!Q@tE1A})zcB%Q$uYBu8aq^h$B0Ih?Q8d5 z&h`&_$HL@mB4;dt>a9!=N?8ik89v96AwfKLrY6n&0i64W#72Xn@jc)KZDYGTHha+y7^|XZHhG9UwS$*nN$} z{^hLCA~Ks~0IN0WQWgLV>>UpIIbUNn@$XSE(Tvg@!hX|W7+N?SQbPj}>r5#8DRy9g zVgw{YEO;`+9N-4SV2Lc%v$;>~X~RtqN%sdV?;%hEaGypR2wzj`83s~8jksPsbGE>_?i)3{ao=k!8L)gCmIs4HPs<>4uqzIe) zgptBXaCmF*h}4jS`vh$QePBS?s=j5eq9!JCA`zRwUw(3B663!DLsdQ}hm!Ced^Sa3 zB=of3H>6}^iD|6z@p@%XRzWmm*0TOovbGT;!FQ(|+bN2`KPL{vKK_?I_1s4m za+u^~I?KHQJ3*V%fB#9gW7lYHo6OEt0GB%;QI#QXd5{@$&68%>KzK7VZ z<}`C>hVw!F!9#>_XNF0hc&X>tF+<%=s!|;=IjoT5gzq;NvS>E4Na6e4r`fIh{1E-$ zNOc&K+$+zVb=a-jx|y4fiG%!hsfJV&oj&Gs5wy9J=^G~-(vV$;#hA38MX%iK{Fq~# zW9L3bukFKwPuW!^-ZxjV5(zLEAl$ z(7N0SzWQ^-R^-oo*>&(sovHUZ{)>E`oh#D^Q#U@#j`Fk*KV!n>`?ku}>4>Fp{&%}) zQyUf&jTQqF*EODvo;9%3wweB3S?;~|2~m7F+>v5y)1{>6=Ge$shrM&wivvaMZKZXDGMz0x zPs2Cwrhk#c?uVH`3UeJ7ny{j=z{V-7R9BzdOMkRL#8;TV8mgAz+Wcc9I}Q18dp-AZ zXnZ*q*Q4Yms@ITPk4+#yocd-I?Cx^sx>H0(v%1jfr(O^tZJjg#n^CuW3t*oSX%GW_ z4U{UmItQ;jyaXlP;jlhm(jj4jc`rWX9wl>Y&V$3kdkDvnHyxq@=egp1)m|hAGVdzR z5wwN_rcKK#8S)@xr0q5!j)EI%Fqo#ZxAa}f>L@YjlFREifZ4*@fbsK|BQl5PY{zu? zXzD#qZ;nJB%^ENDLTC{yOhbBDei=XnW}C^L-zx|1A~LbzBgD+53Apbk&WQK?+c#Xc`j;fuz8@|5p z_gxL=#bxS_@!{{lh<;1q%cjF{U1VIf36K;5YgP4eIMb;l93Rb~Cc6o=cIc##Xo}X$ zgy1eRu2R?ftQGrr;0FPyqtOa^04ns3FJBq1(SPal^UzUK;NZBLtY=pC!pJnEL$tAk zGkhp)wR6GcYee0Oz^Nfuf)N9&c>K9*bA2@5fy2B5L-Cr=L!D0c`U}Lue(4`>8wbUMEXKj) z(+7L%P9OYlVCY=?Q$LH3E$EVpV{(g7-m%HPP?)a?j2Tbdpk)k2U zJJ}I(!Ft*^+uGe`-KcN3wVn1DPO*?@Vjb{M#@J#gjC_YqRo=hn&krx`^*poSAm;GF z-eC>}GXjNMm`9WRh{u-Bp1BipFY!AD;I(qmsF!!mUAfWF50_k)mKTT|c^%&IQ&;0D z3fQ~J*rD@fc70Ehv5q=TvGje-9Xd&|?(-_m;8JkUKyB7~PG)s2;dV;~W!8QpmsrRH z9vEuT_~78AWdWv;QU!;c@rE4O@5veQ2+1RM%UMrKFoi=%)Ee{bKl<8blNivA5|o+e zYbt|E@@;lR=g-^oEU=!O$4%#$ak1-aYp3Gx>Z*I<|H8budLJfwQ#U->WsBmkg7}mTV1}s@dtLlz`c{H5mft#0 zc%*z_Ti+?C)K`T|u};_Lhddgo)CnKR2GgcPCT`*Mj%09~*L>bh;(X2B!;&L>Kk5@^ zm0l}l58!D5t=Kc!MENp(O|l1=LtqY$i?%b-BQ>J^ix(A0of~u+`MjD;Dtb^!>G0o# z@~rA)tH-4ATTt@I$t^!QgEwm2r#%Th4_kTk{T z=^^9f_I$q(onq>aC*~zAN=M0{HK8B6)c-SW*Y*U0;;qau8rf)+NKEuCl;rf-m<@}D zJkks=@EQy@&e1b901x*}k1<^bqHedL8OUc{Vh_<6PdL8L9t`n)zrJO%zMy;vbR-i; z`j)*gdT3`yS&Ykh)y)L;5!mmab6(vo6Cep$6z)|b0S-MYqTOQP>~X4lrQ{C`7h&&E z^1c~vmO=7Qe%nvsudf3AfP^2=U)gOs5`RRLjN5GHfZj_k9D!h zN0X1dIfyC&BE5i%e%fDp;d*vgZ?T3&;w8SuqUT#VS$48K^{QR<3h~eLeBP@egXcDr z*(;`5%hG080fBMWV#7;~v|OntP!;wx6}izePkry{}U+iT@wgCIRJ4;T8c zi#d@$l=03Iw~dcH7j`^QvUY@tZUgRNR_5*#Fbtq*SE18O;I0t0gtCTAFM%c6R&}~m zWj(heFuRSt+2ow9QV2{mFC?(vy2TMY1>67vrwa@w6hgyY+Ur3El!tx?lml!2=E17+>MFnAxQB*f~jhK%d76(Me z|4qbI(`+~gGF+sOL0J~tWBcj2qd8R`ATj=L+{F+BI8^VCyEScHlz32+v2oDQe?Cvj zgTsfH-g>PjF;6O-wr-xbJ|EmXQKmm_-Lm#Fgyv(46Oa!;!0$ib%-k98zO`sjHYnpU z1nYCw%S-kb`KlrGAbJ3lS>dLnF<2MG_X*deJob<%nMDIO97N1e5 z%^%yzt*gAuv20xwkmht;IWJx8u8(sqeKYS%$TBGNzOVDTOx_rsM5jhPS;G|m>XGHh zyh-ow#;~(;dCQtcs_X};iH4wSS2CI4OAQA~H0~u#b+sV$v+D($*r~E zRx(8tZkH+#?s-_E6SOJRC>j{k@Fljuo`e>g$&Fj#QarA!Wlvzth>%rH&*HVK8!RX*pR&=WgetUF^{gUQA zG+2MAyZ#UoXKC6KV<9Wq9eTd3%j_xZW;dHebm8jqmbTUD5&-c)EYR@NpH%M?K*hXj zJ4zTgi4EzbG*& zqoTVlWX(rJL@!|c+yheHB7uz5r=d;Y<%6Fa_lB01htydB^yze366mO=>9 zwmQ^l0jb7F>oAz!-IL9Qda=7fr$PYlA;y;U$;(s`5axByBBEL4@*q&eM%zgwy4^p} zoP4huO3(yFG^-^~g5+wytD0vzdfnmJTWJJ)oBS?l-Z^I@;7uKMduy_tgkFOj3~~6$ z#;#kPl+Q^@ZB}D%Rt+OkHh4&X8v5V}xy$#u%GDXX2V}<4mAS1SVKw@19aAdF5j+!K zCHOv)yngZ-pd;b)ijfr_3<;wdtrQN=(eok62^@ULYH9q<(BPH44tuEHEr#Q?!e!m| zNuf`TvC_Q|k;#5KmDSkhD#bB(Uh&#!m3Hh+#MKw&7my9ob};!(Yj0 zX-4D(OOD1eU*f1HfgmxB7Mn?{xHcHtw zIO@UO&s!@?N&BDA+$PyxVP0Vnbbs-tp!GzhKT^RRGpY)Q;XerVJK`pG&OL%wP3(No z*BAm6%??&>rr||ebYb{ly=&G2Eg1IdfUC0SHUd5*CDNC(R(2HCKiZHtdsK5kxjMAT z?m+1-M(44E0}GH}>}z|FPDYY%eQEm3;~1L4Aw*g_AHlJ6H4V8IJ_{nK$d`hsFdsH!|Xa0m?m#Zofk=TgYU@^)f2 zWKbRB{trzXM$|pQbbgd>cPwM8xln&N=kY~0$m&;@4e;EhY zVCzfc7t{`xvOm(`ae%l>PWnwr#T)^zDB7_y9)AVx9v0H9GI77(IIX8>n&mIC#Sase z$8(#07FQR5Vq~=s`TEMVpHRJ3WEyflXy-Ux(XhAFl5w3dkk7g!V@(%A4l7Fx6)H1g zcxLq2ReG`9>hTZfk1tdVwzKF3M1 z$VYSmECeBMwH#n@nylfD!I=mSr#r+#(|Kc4Q&*=f91L3S@ zHGGnfHo=o@9yXt7QSYULB z@O+JJ{jP$xEZlh;L5U#k2q4L1Etu8}(;Bk$uEy1(PK#dPz4m2G5!e)n@M%#u^quWc zD!wNmFcjQ(=RHsw(jF*ZP7+3NXy3)pp9~SpTN2B3Tr1c)2N0HGF8_0c1$I!*b-)D` zbi0h34nm?fR$KWIdo%6Rp&!(C6I(o_M(IEIP3RicCN=w2k<6J;rwTi$r$H!?%nQ9$ zq~*!0#6N;#L&nf@iwgnZ`nE9qx1fX9gAVFiP3(8Ok9n26q=lJ$sEXZR0V+2fR{g4o zQWfe!{zs*%%I;U!jz(@LMy7mss;!#q5Iy%r|HjE*ny1PS@Iqs4kmPb^?HPu%KN%Zr<#`zgu!vjog2 zceVdbZESTC9RY691v~u}BZXW7C?wM==1rcMRQpwBl;l48lhRp-D~qrgK(*gQQP$)0 zpK&BT!~ld_dfs`gY{$FrMd1|8UJaeg^|keQl?I9rvBi{m4H3^owtgS-hl78(LgjBaCQE zD4|5yoX(+i@{j`zgMo+>@;{V?vK48bow-4EJe8MAuV-J^pc8Qi;R{UE7F2E{3j z?+piG6(9hO0ngi3g>Nl%N{e`ojg!ea>c=#Ioy7sV+lO13$hr#9B{<7VpIMEq@`=uE#4~Yz??FkK$V~dGznx%bg8so$!%-MfD*E47yj=$P82=ldW3RXsO-XgH z|0ZNSd^>!6RCw#Jvto1hx5KJ@9)mhy9$3QST0C2(CiBjUl|Le*nNl0^V_!y-*D+%g z464~35h~GkchJP;So;Tb=sjj!G^ss-B?2zZTKF=b%Y_k#A1ZS()nC?S z%UDN7#{%H(1gW#>N_Y>1lH$%}8odSro}k^!RTK<3Rfne&;@)=M+viCb2siX-ka)bEqBPDtl&-h#jb_W$=NHN@C z%Fdjm)%5$XLwUJdoFHuBIFaUK!DwQ9%7Zz#IYw)9rgmv)y9}+o_C)v5q%=VTtpQ>} zYqTi`QSW}5lJ42i2Sx0Eh<*pZ$&kXn)jmo7u~VC&Qr*#fGwA4RYz@Dr&c*Z>ZENdw z1XC$E3}UVb=!N|y1X!LncZf#q@JY=fIk;AdBQ=)E@-IfT!@q3_M*<)lqo%?8j2gzd z&^k`40?zOw_YHI$XVMkIqNwgMw(RBXS-=~Gd^Z1orA#_T4jbDWg16pZuzN)Zn>gNZz`P-AwU~b0ZdbhcB*4&$ zrfW>##b_i13)~O#z+uVH=W~xaDi0``!^vwza?Cmxp~rC>4^9w5xpzMI)3(fWlo7du zzFb5~73fD!#O!O;i}ZUdKXUvus{geIdnUYW?1Mnr)sF(F8aT1v-s(jw9IRWOTDSgI zl}Q!;?#60)3%BBp*@h{f8^e+{`h(&DnjE~;c2r#!H8=N!wT+QTeV7Tj1Sabd(Z<7! z@3{qA3Zl)1^_To~_=#!sj!0*$TTnlUip##x-Ig1k;dAw<9{pQ>>Dw41KjG|}nJ;)@ zF-z}{%c)HS;Z2S&f=_9fJ}6A6Ffx?e+ea9s@oHm&>QmR+Q@=7rH1#lj)^aZdFd|Jv;f-qIJ#SbPe)J(`L64-5t*@`7y{hvpO8_TDCMvUo$@7$bih5U6W-^qdq+u^02vrm z6yES?w~mx-m3F3#N;D)g>iSu97LB@q=QSBk@t_6DfD&YNV0Et+V4XVi4zUe@tVb7@ zYlQaF-hK>H>HUHm=fCQyfT`*@9V1C@-Pz$Rc-X zOs1ZAob!P$p{~FX7|{(|3cOWBFOH-lc>^dZ{UC+oMd*sLcZ}bY0P$l$o4+EHQw=Yf zUS2D`Cbs;tFI$k#_eS;9ZrVa3n9td4Vh@S7sRm9f%Dsy~3j3nZSSjTGrJ#mJ{1He| ze3((Ld7TqmQbDnnsp_q&A>ZEp|qXKkx4qnSQ{?e zUj08d9Gb1gVm=uSVqCvbOa`t#J{&th`H9P^n2*Y~kp^Y+-itf1{VI9y3l7Do=aC0f zzS(LjmXLT?c>Iq8iq8?W85~yRDse&KlWv(5EPA#}^o(2qcQ?_yn~12PB-fcPBoMC3 z*v));h~Xa79rHEi=^?#~uh@rt`C@lUsJPM_czxAaRN+L^#O}P3#W(sqP}7d$)USfi0;Ueq^YKIKg|eBbq@?(GAyc5ZgmE6z_^cenEB9f1XSJr?&JnmVys@<1-T9~>CNSx_!wVH% zA73Ln2Kik}8#z1vL5-9atYN@#Oi-6x4_X2a2LUx{@I)AvnD!F>L_O5mS$ZwzME3vo zXa7qT7)ZxF*Xv)UPD}!-PZJ-pgLl;`KQ)nbsv;zaj7Hh*e@ zjA|twBwEaBL2JV1v{PX5oT{Vx+U_ zVz(IWH2KQ;iQLoKGw36>{Fk#YKD=z(k&YN5z304)$>MTM9FDx;@yYn<*vL@FFbVRX zmpi5N4WRNQ2eq{WrMJv{s~s7a`B1k8`KTv!?pwS0EB@wjAdQ`XK69i~CDq`<%L6H1 zRkbSI+o>>|UUOP+OByHvyTzhNRm(Ztsec*|!q}Ru_pyq1FS)$9I+RovU`p8n-?_<- zamm;!Oz$FFo54t%hG-LkCAky7j0aqe!~Fcv#}gyw&;WYD-5t5FEi?bEJlj$Be)|O8 z-_i!5i`AW{FWFPOAME#d2ejMvS^xPa{ZJ1vtNDmSNOvewDl`k&XwhoYq&7;jmc_li z5W$h|MkaVJa+0yBXyi^T`o5B@0L(Ynl3tAs zZ~*S!0(+I1$M@xDF|i7m_(f-N9XUZa-vIgrJrSNb?-4C9wfq$Y?I@5fR}~)bh&%pO z``?%@0S3#%9$uynXpT4d3${~RVSD&Zu-&{NoV_9V(eUvXG@pbUHBj)+`m;2i+JFm= zXpR0lIi3jWOS*%>Mj|RddWBE{Yd^=A@|k(DLWN;abwX{F6Q#^G0iEhD*Gk{@;*CDW zRV&Unt<9X&zp2l)T`rn;z@)3?jkDkPqItJT){WbXe?nM38NbFo_`@~Zm82F2Jh-vc&ACF4X zQE7mg1|!mJ$YTZKt_Y}9$!93w($H=J9@qq0i2RE=tN+3DDe;gl>W+VP)&lQAGxyE` zm%2T`%EUHXB-Z7393OZG#x-Q_@DZOFSk&MR{!>nJHBPeT<(Mmkqq}#M;dD?jzAt zxhL*vh~MKY^3#WM>JK5!djC^09Lk!!SezeUDSVK|Lo8Y1)PbQT61x8Th!VyY>#B}| zofOMGe@2y#biJW`rvJ|19nrzopN{W{B;qACZq()kySk`wET$zZ8K$X1Wu-XjJTDRBf#FI z)Bv3$-SDCSTK+jV!CBg<{!6a<)@i+FlS~{Hvvk1F(#FA(yz>nR4v;ry3Q#^WoczN; zS|*CMMKjsa*|2qJeM$y`xHFalLz_ z3$SaD0K1g!eE*;{9+;Odfx&Y3BlsC`C{gr6m7dtdxz3WQLPYr)yS76bRIa2bL=(}L zS!evFV5Zp&E!C-6jONUPQ;Fc<;NoS+k0CzuzPDr^+FAXKBeV9{ap8{45Z?onZ5-poyCB*EX&6zNzA&$TVM2tG{@QrBcz_h zDzoyptQ~bgFs{lF-wiFfi@a#@pq~pISKGzKs3J%hL#gVC*FB(4T-kgW#jM@*@@lM+nBeCXpCNq9YMkbj%ExR`UkNCW>fX zOzH+6QMs_ld>})bN=x%`na)07UcmfIP2z1M1Y#!PVhOxr82k9y2D##LRQ>$D$SB!g zhY4e3a2AmPP0!b+ZDtR>C;B%$HCUEm^2@|xZQp4pLfvu(^hs z83u>r?dHmlC=R>3?!IxJ9>p}=ctksLb|DXQTzSBJ6Zzy`?h$UK3%aw(TlDO3{MQr_ zU?|hA3;^yZ9eWj8eAi<7?#Af$uyV{3Sn8N=engsi^;%Y(a!;oD7{j%1N1(6ASQ~h$ z%ENxwp}qFm&Qc@m1uWL?T?EUHSmiscZx^j%Vy~x-x@= z%~GK&wCQ!EA3xrUZNGJ&D8D&{fOhBX&`BbbqAjA64F7zJHQ}mcSd>SwDyTx_e)0I- zpa=rr&MJ$+4@&G-mZVh``AcB(FS5kxTbqPjF&9$&6c@5F_bl@)JIN+G9JAJ;-X;b4 zTj`JGQKSt27)pLhRmtkoD(vVSDYHnhExkIx0OeWY2z{s;n+###ewCC>B+3?~Q3|WE z3W4JgHr((pZ?+G$RVmT|css^#?%#`JZ5PE}VI8}EQ0Ca>B3Kbgiaso*!8_j< z_CYM6Sn$HM{X_2`VH6$S{GkM_DM(RBce#T>(6x%S9?X10>l((BjWGk0eFh_8Ze?Ja z3^BfMOTD7Tw=tFefCP=cz|$$_8{P{JWzS@eV_cc*${d#~W)t!}44G-$DNQ`-%a|iC z$H7+$KMLia99lzkfmzR>jBe_K6N^CjBpA6cPfDIqG3>)|=PI#dr|RqRj%WPc#HnZQ z3pvHL$6r)?4hHpUI38v}7geN3qG$vYp#)A!YA0}Gk<@sFABSZC^=ouH1tZeE382k2a8%)sec-{yysGFyOBwffg zyY&yuG$F?+$$f17?rWp>SLE1PTV^*-+|4w`gj?=oSkuAp$_b%0_&uR! zAV^F>hFY6ytnRQb&S67Qh=1g#Js?hcm)pk`Zl`im&nd*$osp5`QRP~dCKTY+oZzDA?IDp-)fGtM2B~>`xh6Ip~ zRJc}AT6D&CXXLCo2$O#H@j8JPOeU=h3YhY84`PH zvd;0sCzqEDAHN^;(WN3*C!*y4WieR2H7 z(4spq(a7w{?kFN1QY8Js?PJ0_Ukh-35`(*g>eQ%GNQ72tgDxd)nXId!3-DP6>u~tE z(1(aSDg~g3*n0UyQPvhr9>C1f>7fT4FgLRo;nOmu!5 zPF|do-IexH7V8v?g-+$$iT6^)q80^bLLJ5l`Wz=kquc>Oy#3*$Lg2mNHFXbRj8Qm_ zc?nf}H;wOweRNrZW+`wAlW_mmRUc>bkN()lNz_!b1NyK<6y9#z=Y$~BH1M-DAa#zM zE+I;$#D9cy*+j#XAMYFAlI0rX@-=P8#H7ioh1Q&08kr=W7C@Z8EiD@ysCOD1%2dyHQ7!p{Q{X! zeSXW?Uc&eXm#Czz$1J2XiJr(hn^KF#4GI|TRZ7#1al+nx95>qy+(i~*wfv(ChYj>+ z-WlJ0LlghD1;}m97iGc|{n=Wz?zZEJ({sBJ=u+MZtB6zZ)uI06Wl3p6lbGuwbAD(l z>Azeq&SFVR^c(P|d>fEsgP9vFKX#ZY$Xn(e4)#Ay)w?LaG8g#T;bNQVWg_|GY-(C{ zWspcwi;3z9GWn*Nd)o2D34jO&%!4(-ao72>`^51-%^#?mAywGD1q-YZ9wo}jA4zna zy>!$dJ05S9ORBb0hUsC+^+*L34htYeb zrq_|QPLawOxkX>`S==CSsZ=Euwr1(Sf#Re8z!3c(Py#Ww zwo!@B9KC0pfJgwyZ!%=nZI{!0( zt@w3E(w}k*rn&h73MpuovpV$9-O$|GcB{Q-De(&O6w68S>SLe2FFIr7!ISE7tRuIVKs zxPnTGMyLQDUA$tfI!(a4C(QmELjqYJdHrssLFz)*BV1bu`zQ{6W1>-TB#0j_86}Lh zo};S?Q7B2e#<)^)gfe>yrtX`|F&+*egR%eTTnJO6N4m&xkgzus3`LjtC}0oZM~^c_ zwx4@Dk$4m~BUgRE_!*KHd@+!1OAqMUZO(WYVZ;i^r}hbBLC9uaqwH*28^No$#foB8 z1YSooA+&l|2IA4*hl{S+Waf%_4)bSk+;}aWVL7lU$6ibO7gcFpy80jc_RUwD{GyA> zcCxtfI&6t|{)g8<{`2?YziO8|f*1kSQ;?&#HL+t${*%C0Ml2|-13*Z|@LJh(K=w?x zBM{+40r}vdvrSk_#jUyVNT(UZa4SzfgH@*L<6II%(n(2V*uVy!&wA7c43+X- z`F`pHp-#`1^(9mT>q$gJzB7KfB1NY@K%F`;ns{JT1xj$uvVnK+y9F=p>JB5k=Rv!h zNgX?jP-kJ2{oH06i3-|A?Je^klsb#r=mAp1L|h*Ll;@%Mn`d;K#ZE~`h0}+S0STIK zEH++$1Zh7bDqB73*5>9YV?>WJT4$3eCmzIEGfsPOj-RMyQj~YY;7+Bug$-zLoz`UJ zQQF-FpaSGkJu`dO-Bhz2%ZpZk>1Vh?fK--#j_d{zw9@-a&PeRXy8zz6d6_#K%2hwoRYv}oRU*&58 zckb=uA&W4b{G1cpe7rIX2B5KHP5WI<+LXsD#r5)E2VEV9kFoI6kPeMUF^#p|zKR(A zmuy4-0*H!gxoa8>sd2*_JrLEFzinrU?$^1P@TOr^mBKBwt~|n7{(s&%rqmt`s4dEd!$cf$&!N8!A)QiJLJ?fh_9!mdiE(>;eocZep|nqzg0XbrYG z!^ODu0p)3R$Na(JJs=xMaStSOM=q4#YuoW13a9sUpA8pn7Y8>6 ztKb3Fgtm}KhEB?^grEpgx7p5WJar7-`#DR5)w&JSUWbd&yYs=g^=a=FjZGth^p%7$xUbZ{8IwL?SEz$n-2W4Dj^AwU2p|`k0>$3>w&@ zUfb`qZqHGXXT^W>KxP#LN}-~8tV z0&-WY|A*^Dr)>{uGbH|4J&BzA7w34xdi9$R#`Tf8ioaYin(+CH(Kz+c`g-obU~94J zt)t#EB#b`+sByI&hoAGp@G>=_+$Dyj^4iBNS1w`IY;~z;6WUCqXF`j1#aH02y5!5F zDUOx^z%)mNCwarO_gVSR&ZRjw^3&b(Xa}TA%KJ`WY~^1J2{`+>U$d0sQM)9Q3Fp#V zedP&lW6;MYrBSrq44`{!67gQS-Sj}=ZS^{^!l%d1YoK?fX3PcMZcp^qusjERsxO+T!bbu5B&2@f(+6< zBz70yhh=E#NUL|u#`Cl}0W1A9>j87dCZCJSzjyz>(%?SLwqicd=wC?qPOuub8YcQU z|CgpWfot+izrUX(5D0`FlmyvKSR{y$5}{ZmEM*gEL=;3oK&S|o1_l(%sEONq4Pfv^S+-(p9gSjNbdW-uIrrdK|&ol zTT6KBtC#vr4J&Ovi5@lRN;d0jz7|VsGS-Br5g_h0j)JwrdYihE>N9E;iEAPrKApg)y_l2a~^3;e>PwquSOauzqU_Ac2)Rn=#@4J?mSP) zfYP!@c;C<&o7F17gF=mO^clo>5OMWb8Hhfz}WWm z^f8O}*`L~HHOZdRuL8XO?M((|?is^{pyv0b!A3OfvnRCO-!aCvaY#;*92F&t z7@hvo{UFX1)wGi%x5WKs{XLbcG%@aM;vM8>wS(LGzdO+1vnm`#)A``ar+b}LxFE|8 z-`u!O=4xnfcxZS-pCz;f{LtrXvR!n@KE3M0@0e;s8xqUwiI7U;q%{+W7ChQ(wBtR+6u*gn9auFuwXkgy7PG&p#&zH}ZIah0d{ zI-=9eA53W5rR`BFEUD(%=!2XFV+RPZ*8d)WEeh3wLHqMDT66S_NLc;~g>V@u2HuOFh@V?=t{l>P$*#gy9OWay7WkAc+wv2S4?l0ei(Q+r4=uV5;;Yuz!6aSGx9HQM{05_HiJH7<0D z!U|qY--c-+hz*+RxcK$|_|vUDOC;dvYDZ$hTZS)@SvHX!H_tRDNG}$tCPiS*&MJ3| z&?kbgwCc7>1l|~yjOlw-SsBIByG&LUwAT?}8}0nkLxHYePPn!b(LS@M99~jyZt#G4 z1|3Fz>(IOYh^KJB9G*x@m%YUVSTF5%_PGIueB`FVm=<`(2hq)Saz>FE!p5r6t5dGaG4sl{R^kT4N&R(K)KezGP0avbNy z8)Isxyxgd#Wa+Y z-X5DaxUWNY`-R3_o)x>6c3gCRGpz~DB-pS6uHt2&edb}JY14J#B5?4Ry6rIr7jnF6(d+QgBFR_J!IA>-_%`G^*? z6@DvvC$uZMHi&4r(u!y|O}44l_%uYBeS9MIEDZM|Edevvm>6fe2nQ$yHi-%r;p$PL z7;TiI!TTB*Bt>I>Duopv&c7wgg<>0LfJSLKqxE41l+u>p%{YBi?ITfh3W ziYKsb8y*F33vJ!&(_;@M$>pif%s=ZuFr!O>DLI)Qdgn%szaL+?^UIo@{X0HWo%>^g ze|M`>j2p{W3Sf28Wp&c!XaM_4{xJTpB>qt*)w$f(K_V2XB7^qdNWJ;Nw$rQ0-$QfFnMQ%ljvzG0jG#m#BNq zdok>bQ5|xK#RNH&whvA*U&s7J<$CK1mV*sspOqKG_>{&Mb^I~KyivTr@1UV+A13yn8x-9p4$j1%i3GWOyMX$*9Mj$Y?IxzL z9tac4XN;Y;3&IZ0?4dr+yG^%nGqq7ARGa=&`!rJo4DG>$$GK`$!A0?~4_*mWelI=p z^PA}frj1st3vQFp3Zs&0Y?UNcdnF}ZLb6DKh_iV{G@Q|fSUb#(9FRzaO~o#DiskQM zCmNzb*Uuz>ic^vH8AWa;G8Nn^_J7yYiT8-_rl^6K>og{m8BYMnDu|L*e|LWKpyy`; z23=={%=#y5##H{Ip#zcWi@IuL7|MzGJB@hF=_g#D`03)<2F96(@n;?;+$eERq~cQv z^{~O+_IC&)@JtYELTWalbFw#9)vPvNr7L@)H7nNrcHG|Fs}6{v-XY7SDZ|UBbAlFKn$ZoX8~be7ET4>~ zkEooLIYrR6=n7ns^Z<}qIBzmhtyYu*gD~TPM!U#!v}Ihv|8)=Vcz6m)Wx&9GIKG>@ zUBdFseGsgZ&_W~NTlj;;@!P36C1g7QuU`5bpQ0v7YMjCdMR3cS$WuQH*zE2 zyd!fO5J7js+dOr$S;5WH$Uk{s(aPuCrhqDytpsrlQ2y%Kawe!(S@PqAa}>outK02!C5F&q zd@ARFWYEvBj&hLlO^5){hnUsXCEdSA9)RWRIzuFs~YM}B^*lTGdNFc~u*J|JyaqW@)s zSInTL77AvF=CaU^qlzUFwzv+a8gk(3COBJ~JDnB_9{x$d;N3Bb1H2iJj_GAhBG$LE2)@$A4jsC5 zYlmi|=L#T{7d`SvLY*>8k&cc(vU1H2_Xt@C z$*py_FUPF*`^%OUmg;3_xtW!v_&+I=0*Z$2Msmz`qw7QPJo-;}U0e}7zov(5orcxU`K{egOu?Yu1h=wGH zJ-)wHda9bTCci-;BnO-)^-Ao9M730s5Rw>DIYox2LMchW3Tkd|ZoM|*sVTv;0I4lM zyo`xYbuQBs=0wwI=_nx4L=qx3B#(|EkE(&v`P6MPQ5Mr5Au=mm2x-2m_*1Zwf%na) zvR$=fu2dA!d!`O$Puz^j#=TCqQ$#F10^KeseY`MLD6Yg1IHC;WhE)hZIv5d>k)Eg0 zrx%FCJSHw0!7BugndD`s*8DD|AttKHB<*%XX_@k5X!uG16uehknVg z)gsQyM=pwVug!XlK<0d>75`VX2^>(gm011R$P;Z%e`~ zpHdoedo9Ifhris#w7~le(SJMDpmGDBNRp@0gI_wiICCNo#*IH^Pr0;04L4(=G^xx( zoxKNnXl!v1NDUBAz^rQ7e}NvQtVM0$I^|XBj<1f3SlPEUo?oWza@L#CG`FTtt2}%d zK7@LeHA_v!pi_nZI{NwL5IdIAHs?;Zbr@6^vke+66iq@_DmR%u$TsP%7k=%3``%W^ z1_9O8ZHgZ-SGS!gVR8P5(1oo-6c|VfgaI4`;AF`^_^6>FL9*gcgC!+g@y5i@OSrOz zS4U1zF^C4pY;HJWLo%+mB4*v4Ev5ny_h{=b58Gb933?a3lW`Y*9cuf)U|7!n_-#kj z6C3ckTZVBMF`T0gU5pi$6Mf~0)YjCJKl^XDLO|G^zJre`Rs0fB$1ACeY000DM2D&T zO$&C=cTm!G68Mpg)s!>4=$nLOZ_%`#W}{D1?r1jJ4%XGrfx^?Sqqi|XB8AFOMWr(T ze0VaUiWv53tEiMVLjTZ+W_(=0Xfh=?8e=r}lhn$DIMWncTbk%4$DZ2dvH=l{g$p|g zlU@aWRDfUqYP{nV`z5ogbhs1)4!Ap`kNCH0bc+{vmFC)$FYhF#+)|#wmsJ6+`v-Ty z^RE+HFENP29325y6`*1sBL>X+FQD=6hHqkdu1~8$r9R(8Vr1NL+bMo_O2nEA!D`34uUs<4E* z91@PvK6G>*{H*7@t87(B^95$}g%hQMJS9DL{tkc@xX;~R{z2vV)r_bWa^?aMd~08p z>)6gwx1FQR&YEA0n{+Rg!LTU0_=|DCQ1LCLUh*!IGf;oQL2}Ao^gev{Y(B!+(B=Rx za~9*gF89oQAAofA#>I{bQNT#qxEQ!D)T4p%bx$pDJ_c(9qr%?$4=H7(jIvU#`Ou)s z-LN|&VELmDV>d8LJDBwuAGy<`;7PqzBKcl^o$}B@*Ocw;0n9)o z{5-(0)%f05i09zKT6s#JXV7Tbzrlk@UGL+8d3Yx@n`KN3Q&_b! z^_WCxMQhf3zd2W8(WhIcxx%Jo9Kh1}RbF-yihRvQ@0y(jLi1$1k9Dg`bAN$0**@v! z0lC=7NLMkYq{ct?6@fyTWuGI#oV4CbL$n~kP;+2`UrdSqkYCK~e5Q^htdKfi`*JpE zp1n}H%B)1vWmLg#r- z-N}d#!=n?Q!GU=xvrbZb-Ek=Z!0bB7`5*^e5E|~VDd}UvXU>%x5;}urWHJ;!d6j=u z3)s4YfI{w>#YnGF+9)}6a>usiz0mINBtjeP_Mok$(OKA8fV5M!lZrR8v#*)o4j8;C z9r|rnAPIgP!8U|qkawEDyRyv({^2V3#C)d2M%PA{MdR8t0+!slFw|nKNHmvEkB|xo z@*@|a6U^Z|&KjG_VUA%z4NdLT5Q36u#od5~v2X#LVQa!8+DinBkJ&TIy%}ytV%{o! z$7io7l^Qz=;HoA7v3P)@0FzxAbd$79ro=oYA8vvID|0d;qrJFP(kZXa77pS+X8SbF zaU(gCAd>RX|06+YcA9pY?4D|g9n%gK9?hNv?)0#NhiD{l2kWBb=T)O^FL|5umehWJ z*MB&6y1J(t2Hlq|u6wPhQ;Je&4)zahkNb+j!}4XKEvT z2tN`oJ?dAW`gFVgM|?JjpmKw;+T4d%n{eRF*+Th!;(opFB=g4~G>X|dg|sb(dWNnq zb?LF(m{*v9#L{fmpDv_1uIcyg7t%JT^)wzHfOR7d!WT95@)uN%EqD>zeheOC!1LBq zW<(Yo@MMJr$ioZeiw0sua53(^K!^wPT50ZPPTV}^;lyy@1WvWqPxErVQ|)a{)e(6B zUjx4R9-m;<-YDb&8>~(Lm+SOWGXi#KP+`66gMo?MhBSQ8Z1?t1M7xt0*_f9f!d*?O z>$13hNYnUUIa*-|(k<*^j5~8gYGwKx=G8aU1s2pn)PW-*UtoVZAVM0IZ;l&+CKdEh)5epM&MSz?Bmeamg}OJUJbsf5>#Q(a zRdy$7uMbG@{ltj<6?|%}z#;YFA=AW53D?|>Y@i`&#hzi#n+P^_t3U>}HcxC5k0lTu zwuW_kd>wC;f|`n;`&Rg?F$j{W+FIg)ggPGGc!Qcc(YeCK;8~B%{I)$~s`YY--<{x0 zeUgzR-hf6iKT?FT#8a9LD#VMtvs@*cR6;a_oPEQJ)_N~etSW+PaH}?rsnpO6PlDz# zLYiJuewywq>>$R%o(2>^f-~Y4W=zXMK%#wi9@%2=ExZ}6_UD2^&adz-0J&{k(s~hP z{N{skI=XvraI+fWY`-cuQS|PwOv);yM?{WjjWI*2r$@;kP4S}Gp7X-7nP5bJF+$O3 z0<1}+`0QBj*agbLg~&JO|F}%MCrJ&RuH5jCCig99h0kayy5a{>uv7MJn&j`kX>M;5 zI0>TvbmfbIFsb}t?&Y|a-sXTX1BQT-U*I+dd zJQr^7aY~GXO&CJU!*X^BN2S$}-rBP(6633<8|7&}{_G+45dDd0KHR0Q_^$ANeeipM zi-&!!F>o0_wL1@gjC>aXZ=F9#q0RJ14mP`Wo`{FV0=S-n&P*mCptoQFjX)4W>#~Sp zT{~R?TT-TUx+t>B`1#gRst04;QM-0w3fD9DI8kL)WxapEt(?(YQN5uP;DwxmsF!bL zDth;+n=B9~_6mQs@{fASY+y(Om!Kp{zIMn>1QHo6YjSip(Lr&i!bxxPiU>^Vj>}5?_Fn5 zeOIyXGdAAs<@{e<5$Ymz$_<@Ox&{D-KfdWRq5rpk2n$$h=+rO*qvPD+JB_?XAT6WU?8vE?Bzm=<=K8b0-p_Ji>r{i>93!w)=)rAK+J zBw)l^6WqLE#7~gfDlO*FhPjEL!b+vOT8=!k;fT5+ryht90^*)~U3gHgX!u~4*74Br z)f;IU(Fr!LA%?_r z>XUTY;5NntJ%SaD9&-nR5&2;xl_K$?jboqcy!~MEz5-Tm&Na0XYVVs z@@QLTLWAeEA|i$Fg#p1C0lu-LQywFla{+<7_Z=6N%~I|ef8>73-n*vCirF&A@3w7= z^sbchyE(k&2x!CtItJr=FCnXeg|vj5e%3Z0PqgJxJxZ#dR9Tf9*>nu*5*qEJY!j^3=fkRP4E z-&HA1=RkdhG`_Iz3dm(+o4^$?zEM~U24x+3aln5L%15*YcU`f#okNVKz=fnfniAB@_)UTi@Zv;{=r3r; zD3dzQ(K|*%8s$jp8S1HGAfP$2v5Mvhj+Wqz=v+Nfaw+LbW0loqy1LviUue2m#pPnQG&xpAKx<$$Q*7bWRD!D2vQ)kt`&7x%$7 z`dsQn4y9KA8?%){qe2>+n_}bpr$Qr|PV(eovu|p1m8SRHoGNZ!-fys^h9;HA?yE^? zKXK~ah4Vf?7D$kjlKW~TSURH7GB52oE-RcRs=Da2%OiLx_xyYWC zGiUh%Yb*Zr-`$E{y+l^$vg78|m^ToDutD>Y-_r=*AG8l{9@86vhc?ZBzwF*a#{M{teeI0TP;slw zC=SOJJPfb*ekKXMaFUM4LnCCbqrz7E7B6!V|{p;Dz z6~}+K(u4o=iv6EgWOklJ@ULfh*lF6*Vo#Bei5z15TUF|RUg^zR4lqD+D|^FxjR;F+ zZNQI(?F9BUQsyNz0#-S?2ywI`})J0Kyi?T_e(g z>mYqWnGJ{n`{8V8!0NJkcE;l1c}T~E0!waLWinAe^7D+?bvDCI^hnsrD18YiQD1Lm z95RM9+KEPP&9pcno+PW^RO_5;+~&`F)oen5LQ(Ofn4RkhW%9#!5$*J^9|ZkQkd4lza9{Qmx`Tv& zOdiywjm<#Wn=H1d3lF=7E5}AH_dxmhtQykaz}NA`s7sOe=Za}nTY*j-0OB>1v`9D6 zd^#9p?BeL)1{!ofj05Ssr)sIs_8N9%b{L%Lx%W7N>U>8LRe_1>wc8k2qRt~<^!rO`=E+yD z(B%DHq*h@g}YKrRuBM5h5L zzRzDeiHbMq>wvk$iZ|5GO7RT0Y$W@XN+ar}QA>KIPs>DN`G1Kxr@HOTS==PdLX28` z%ZOXZ!c?kN+NCf)Zv#nU)2tc(RNKQM9>hhz`VBfpS1QR4xQ`L{N`}y41Q1EEsmey6 z5*m)B$IvF!7F8FlvgA2yNIm!;B42SXS$|4=C4&;nL@_WjWuqxTcGH&bS%O(J8Ej0h zYhSh|q8^b<;@eorq@{OY2pm!5lMDksLxS^)FEQHL--j{SRYSF8@t_uV{UXR2*i(Cp ze1PFVRFC{{ojyyp!$Eq;vMvPcLO2K~ClJrmWu^H>^Nminx6*KXewkcHY*b+O47ddP zffjYyD_Gq+3?r~wXEU({uLaQmc&0~Eda|b+Lp!7sl?#xmEQA`t6b)LPEXsn7mb4Sb zR)*EQR!sj};^Ys79ALpHy~vf&SZrmC=7f92*o_B<3Q(&P>yskp)7C#eKarPX#h*!9aAA(rr=gz|?(Az97oF7P1BE#opsP7-M zf?i1Au20|V!8>5>=3(`A%|}~>hNO1VZD(%ggj!RF>_*t{SGQ6c(js4z*>e<22Mcq* z-vKf(SVlm`XRT@95MyqfShp=ruPtuOYL1uo+8oRns_j#%$quGFTuRxuyQ9jTvDb~; zP;mvZ%<-zPKz1n0p1kk);l9s1rG>$TH?J=aq;*M4n)$fvELa?1p^W`Ht?U24lf5?V zwmQUn$%;Ad#v}79haVl+dtY-ltb1d`EVKK~Q!r!Oa5V9JTiBh>E7&2)K|VX=Oq%nt zwEApjxk91xDh11Iid6XHSfueBqU(aFW7O`VOwMMck6?jT*o8huN>)Y4{A98^Q?X>B zLf;y5XgQ-87#7cRwWY0wAVd9ua70&INyJ=8r;ghE0JE~!>9kmZ8Gj83LZQYGh{n#d zE8fr}!5WB|3ouwl+*~2l?txm*wa}WfS4Td@qK{jVhVGi+*4#R`uV51-FtoyAI@;kx zc6pW@Ro4yzI{fmNKLju(?I`Z!48v7 zipvd-Sw?rp4WY{a2JfX#+9?~7D6ta+d7I<}fy!fdMdj|w3Q1DZWKt4yFBN%4`+|GL zwtIKUsuZJ|D`7t(M^vuSR@k=YM%-zfT%TOQ=F&c9Z;Il=26E_Qqq?szIM?P->^?TS zNus4yL6c_%?(yA3($JjS)aNR&ERY^umhs~&-5N8zt1+XpmvhMjSPhf_OA`ug{Z{zhxw4V@+;K z>&vd0{0P15{a0CsCt3{O76Y)H%)+!4I@xcYNfxbAiCnE~~z28}2MOHI-Ott3Xg)NX`R;40$P=l;QMs5>ySKJJm`;5&M-bpL+| zgZ~m>)vz4s*KPavVJS+Dzgp|pK)-HgxJOq;oy+yJt(OTKt3h!}5v8Wm9ICjv(PGJ*sy`bGF~KFu;}0T(UT(S-%bhx+aK0v;1UWU0$?0kics z6qrJksG>#0p++XS2D&4ytr!QJ`LND#O#pDY4K$y&-K{d;NzFl@Hj(Em9MX}kE5sNx zmO$HX4FC3QVvMs{+v6FcB;90;vWl2^`i@v~(l*fCKIJhkv1>=o-rNq%?_VC+weS4M zIrAsgpcv|ZrK*+%G%rZiv9 zwww&--^XBCPggPBH?4+cHD9;R7lT`{&=NG+1THUTU7OlBsfbRtD@y)&k2p;C( zvoG?tG`SOGNA7bzIrcA)MmQ zv3O?mt|K&W`Pf!=zse4*&e<|WELUv}%Nbt;`YHm8K^^lLZ)NU%l5`Ws;_qAHn5Jty zY?@799yV_RL545X#60;RL8&Pk?ju;Q&TcWB9{|)F5kq7Ikt49*m#spYE0hR}A>oOK z2Q>EkU&_vh_XW24fH|$jP~QnCVs$bnLf1dDvy^iezG2)lsrK@&f-dFRZ8C`0U^=%K zS}&TDY^qtd^Gg>G3XF*-$%F*@f$w^zOUVL8#O!j3HEltr?`x{83p1@d*Ztu#O z&@Sq?4qV|WnL*M+p{J;sJ5}d4!|(Kq0Kv!^A#_h#rcv2QQrU=(=*Yf1a{|>jNa11m zV>p^4W`kdxBj&dq*`+k%iOo0lB#H2`#iX&jQ7Fw<;|3`s!v+M!GufXhaqdSl!en!6 zce!crda$F{FPk6!2M7=aTS>psDXZusAx9t+79g0h(Pp*uI3AQOv%&f3LX>m6D;8I4 zVi76ues{cs*e>3g40&EcA`}e@r%P#`SInfgd&6?V+|apKA@6F~vUNCgij|_MZt#yf z#@mmfdBff)B^fr4anuv?Y9uyw)_g^&ODa?9EAsFUAdz2XCxbCPc+TM>5`~_{w_2Z zrXqGcGk5YQMZ{@vuV3UgoHedXW7$ihJI^}(ur?n0M|0obKgX<#tM+&Q6mqMSpkGyp zshWhpEFT_{-YZsR%9&kC{(t0|m*eJf97M%!csbtTDCSUVa{<9y)MeXB%Xxr;zzanXG=^0Y4^5i1F|#3_LJkGX7e(dk{}HAZ}DF zY}R9WiDeUs=(T47UJw+p)Ld1n@~Sv6l$Ya};u<-sT{&`obALt0uL4TtWa6b?1!mHW zu*4gBK#;JG2P~C6v25!Wy%U~4ZnB!&WbASGDDmEV)U)REfgF2{T^>MgWnLyQ%~6uC z4$_M*#S&{52ZhT{|1}aCYPyfjq?oE_E$#cQd{N9@5Fj7p1vSNMuK5NsGth|e{`bW9 zc}D2RywxCg1~03f{y%<+nq3I+FlS28K><C#3? zitT%l&8&t_>elu=Vjr?Jau~(E#0zo+V^m;NKyg6uaJ-ANMf(zqH}QReQQlhgMtxEN z^V*Wy3+3m?BB?FdI!*kg-J;#exkvJkmOngG4(C#;L6*EvZv{aMMzgdje*{O7hgQ0f zZSL>(L`a_6#-I55Dor}+93(fLPAFHDleC=@DK7Xs6ZmxM(2uz`fwxmhO%G^pBJC>{ zkHZaKP+DlQ49i`XA|ujv95DJ(2pN&&+c)ssc}qJI%{~fA8ZXC|?fXyP7Zi^b-FDr2 z#KMny_A0aFI==NeNUl`{g{O$r)F*?dd{XvBdqfjSESvrqVW=Yak#AEtImOw-T~JS@ zdwb1&@@9%=6}R|K3?2@FgY#b=So}6(Qhx4LSqjQ?A%qv7vvqc0tRQWS=*W>G_BXnj z-(h5YSv;mEp2CM*E=@RQ@C?8*37>S6uyxd?HPC6Ix2_;mQKWKx>S{4^`h^Oyx5=?!ub%rqmY zSw?WWx+vjo5Kg(FnA0&%h9piHeA;`=^sDPr+8YCr94BPUnnOC7lE$EtI{hSl2_=T} zM*zBI1lOGRk15aB6f20)x{eTxTkqATPZ2gBbCpmy0AMLnQ(k&eR}(4<7y?SdE_8Ny zsP7bya^?O_+@IoUEMG_AUHmY8TbkU~7J24-ms_lC%>##H!<$ZGcse}b>QPWEJuu)^ zo}8s)M7;MqweebrYX}Yf>@^(zd*8``(J~|I+p>&+(a;SV9WOyd27D;@waBBlQarT} zCk~&0Taem*YRg$*KT?H!6e#$ipg^Q&__lEV&SZcpIZn5F=4nLmr4;`HjxXE+UGD>5 z{%e_S>guc!{GZqC?`CVS^EO{6-nkhp+kKYzdn+*~@E>$|QeVusyI}Z$HJ>6VT;F zWJ7*#@6#5^-!I|*yKUXEe^pQ)yosP$Z9f*<5|hp8lp#H^vmwYy@L*7U8av$D6LNtT4d+*<6DD!@}PTLb+0)E zB|OO_XCJjgFJa0~y!O=m@Z^0mf!v+ubdA>pJybZA%;Gwq6gMBo>FaHDKbe105)g$9 zx#@cdD2Eyfwdr#T-%FRB(mMK$Fx3pR%}}D&j{=C zsZhn`q7$So>0#h!j0N)s64iScr$sP_*fYa&4Jx7;WxLA4Zt^MQL~B{?p7U&%d(RL zY04uS{YB%{id+*3-jxn&GJ;i<|K}KC)W{ai`rm_0XRleI>Pw$=30h_#D|8IB?APNAt44zS( z>xy0)bIAtRY2SzWTqyi__3oni&x%NyJ?^igqss)}IGmXOtjc4567G1}qs*ZzZN+=G z?vBN7M%&)LGq2$rHsl*hmTY&zn+IF*E8I$jm5=~__NCPTJw|&W#+Tw5P#=6d?t{gI zH?q!(a>jyLe||zM4DJTyV?c={mA94s^SfX}p)f_HPz^?+d=R)eTOs%4cDjqRnh~#w z04+6-ctp$8tun+|XNW)vRLsEmhxz$nqPYV-y^!ZC8=+Je@;1ro`w)nxaQ>k5rfJiM z_;WruGm>yku=GjtJE=<)^T>hZcLmF36GoK$Gry+4)%llYtL-||$e+eaeUI<2vokx<|FwUta?yO_P9vQ96`%0w}2X?r3$cTAN6i|oVmFIrz*pE^ADu=wGhwqKw8 z;+C|DUXb(|0B4u4T3FM2nkD=qpILuoy;7f~p?8{;HeDBA7stPLgntzpCf+fYZ-H=t z24BYw>#iN7*f_d6?{k9%;5j}C8=w_lwFzqr2f=rQACA^bVWhV*Rg#s*X|zf{zrV#Q zV6pXNee$_PYO*WOnnfhLGNt82y7dB#alZ5&#l$Jo_yw-N(D6$iEAi$&Cyex}OBp-} zcp+W90dV)hxOe_j=DdeX=GH&;iYfQJe0IH|sQdy0y+jMd*Rrwcv8kQ@UDd}N(Y0P? zuYyXHp>~^u`EAUM>6;&*cRR3Gi%Bg%Mn$p~R9sNuB7zWU4dkgk4&Htbq)A4*90G6` zRmEmf9?onJPn|V7*0`kwupt?8F%~lWt1&Dj8-)B$4Dc64O*|%I}3Y^^qiCB-vt8 zKJ-Y!xU&Rq<1DT5^uL)ZEa!uHk0bv z+7;^0Ae$9$>py*ra@n5q1mVNwN)EhO#JraDUY8<}^6w#}9MN7-WUqzKtro@agdYVa z8R}l!wQWf~yF9zX@`|O>Wa$46eXM(f<`d2*3vx1j>g-KBvA~+gs--o}2n9Ti9jvU5 zNv(HU|95Qm`);cZ&7Wq)`Yp&YC*&@mWz>-o3gWVSmj~(<_7vDUsRaZaOTuv{xvLqa zRb#(~PNtQHF6L(udOENFziRH)$U$9~LP{ANbtNCVM2dLXw-C9**?b&GZ{dBiQQ+ey zJI-vM)m{|;%0(2=veKl>ujto3MoM;tO(?^oECsCcp32&i&e89cI@@&Iy_J;9@gCy5 z+MMF?j&+$ha5I0tC=$2}7a6bl=%uv_d5w0^I?P}Q0}n{U1;mM7IO+R3VCk!N?@EAA zFg-lKd3Su}gRRu=@+{jO;j>9kVvV)oD>#2VBA?ZiBW+?R_>t+Az0yo1ZuIZaRj=Ae z5A?GoGk?WQ*)-{9eRy+&cIhkc(pNt2VnnjhgP-Ma0 zAg2QPLY<8Ek^jv>#CPgB3Hz7i?8%@t%zjYK`wCUn)N9^Kw^srFU z4{jp09MVs0mC$VZgZUz6exmJ;xT(Fuo!6nYiVJ*Y@Qi+OLGUzbTEZUhD7#{#$(ho2 zv9!%1QWC`9`AJ5neS6PmbW&nB08asEcUHb|QA;}FRm8YoWpo+Q7P=Di!$TT3>`CTl zzzuuzO%pBRmrJCDJN8}C%W0B4%w3!a#nu;Jxl3~~_I6eQrE-@W%O-ESU={eNfVr4g zdSnptHzseM@fTG_@%9Pbv9uRc4EqERUp8KZ42Kn+@zXzpY@10HyftW<82vZGG@nZR zJD&++wT4g9Hou~#bTMEf_nlB{xELGI3f$4MO|0*6y*NXpWtGJ{!&hJ&^3^rUqLyd8 zFV3PP8kaU9Efr2J&0n!9qID+ZU^gj_y`4j;ey;Nv17bDc7HqO~uK~D_n=K<@AD`?u zS@qvxd9_^Qx!&Vw@Xi?Poi18&bFE`HxC6|w-fGHUI6#&irU?-pW##<4{A(UXubFak z1BT{~y;@LcWK=ex`I?vcD9FW`=X(X&n)ZMU-l}LBICsIF-fi77RJcsi*4V4c1T>Rjucf%3|_L}032S@d?h{ex(n^0Iyk}c;Ao+|KIc!fgloL%UXOs?ene9@v- zolxzB-wEM4;yFK|{#n2^Qr(%`svPpYnT08V05E#P`0LOz5Tfr|j`GbX)Bu`wd8nN^G&(hdjp< z15k4*IJ0T$5X)rovZ$Uv$d=5SXT+R|4>MzW_Z_1q2DGseQ)ZR4lz&$XOr90tyRB;u zC-;mWUvvNbUg(ZUfPzS*R;-%5If5v<;xRY0r3F8LWe!!de=s9F5Gp=>K?lNa0dGsA z`5M66tzEV=muqbfH?q?vKW3Hp6&sPxj2|z1!sC?p{Wrv~TP?10K>444XSIH;cLaQD zjZfx@mdBp<0iVp%F8_h$?PnhUbz%gQ@*nv0?SJD7+F zm(2)Sj`o9iq5Hne#Sckh>qVP<*74ol6G=~Wq0Yothle&KJrU_f*zUj?QZLPy1V8|S zhSUzCcH6qlrI0RPsKEj8@jyY2<*)*8{c~Bmq$UjZrKm#q=qbR@rViv}L==+s{LnLG z4Qs4HYO3tZ%2DUH6Pk;ng~;N9A`wTKam`((8ZOldo?_0q`utp%CF1N;Qx=@ZfPkLl zGn9|4H>Du}Gi%YaGHnNX6k^Az;ks3(O~^O!DmC`l|`}J0{JqK5!_uf@% zh!z7U4(coFj1i3GVNz#YVMGEW{6bO?cXR0o5NlBgzL^TWpb;s2rsAOQw|~3cN!c@DbC>Q41$_-R8ACV{H2?({_>RPS z$to*4s!poTHWWYD0pr)|!4;_r&r+#_1P{7DD>&PB~QGZAV8*;YsGr*C zQ2^TDet+~ET=p}=wfs$$w}nt9o@=5zz=mw!-)nZ1;ymQi+KSewLokT@okK|H$8b}jdu1&aM10kbDuG!Sb*gzfRjw$Ka*sN1#8qXm5w5uufOs{`>*E#0fg#Bu zV<&s0eT~1SCgd95j5$>fpfTv;;my~U_)$lxP=EmV(aWR2-(15x%8Fzby%NZBrRQ%M zZrAB7q#>|3&&{R7^n%sht!^FXSa-MTF;m2KaY@q!1)$rJ-AXoIOw3M^SE-I?4NiQ+ zuaGu%RX#_L*))Nh%L{Har*HoeHy`@jpF(T&V1%&th_wFh)TOR~9NMjsr!lx=5o(f`AZ4F|ZaCY-dtPs$-@UJm()|!V# zldFKX<&^$=YsG&F3Z}A;J%dN4tBn~}gQ3Adyo%u)@U{66FfIP>^1;xZd|(RAnx_>* zL+mLM*P2>DMN^`RMn^-RuFcfI)8+cC7x@ zvs=u*CX!&FxG6-?!oofsqAW{KyaMgyqwKc^Pf6V*R_h#tCG|{f2!H@m5byFnS1#s) z_*!oWtzAo&VGDK76z!3Bl4g*PJwwN@0Xs*=Oa@*)A|7U8`gt-Dz&s|+EQg>yTMc2J zl~&a*Ewz6%nPw>@JO{>@E%036+i& z9Ox%;e2^!#8QjA^4vAmITjr3r@MAf7;}MR5ZU6#%q=E0${yHE#PPqzTUnSz>1w49i zMP*$CwQUd0S^yze<7xl>SE8o&dT(@&bIfb>w`VZI+zg)CXwm{FzxIDDIxUiT{hu3e zqB2kCv3ib1u|avD)*{n99vvB?KL|Q168|cAu zlU%=|!MFi+uvS)((G#sTzQpGGcgKxW+xxrDnlv!O5rktN@9#DR*oxNdxjWyX@k-!G zr*j{`4_L8k>7HA4?#E%lXZLg-F_Y6;1A_>aypss|FjFTE$0sdUK<#dr=@=t8Uic@N#5_St`lwI9ZaG}!j}D}(>MV#;)8L`HR=zcRY)CBYLI zdI8mMNl1bO$;$JC=`a~iV4n|OTrCkLR1=G<6=V6Nr2vT?t4gxfi3y>{hzrCJHW-iy zLbV$xdG z-D>L3AoP4CT@`+x53WVoOx*je)VBMTh(bn7WWcJLUHjMAICiWAKp)%rIa z%ozAeMmaOu*sd${Nx49z${zrbIZ20no`juh;_Y`YE#i}T&6hDaT-85(rat`6YG^K? zb4d^*0W9s&hnz=#&FVSJmvUYjb|iLaz?u+i_mY$STlwHgVT+Nj|BhwWmI0H;#vkGW z0Z)utaree!Sbn@K4aOP*qLk~ox_PG@V0~1Yj3jzCT>NDUgojgB?}g@0=1!h>Iy80^ z?kJ02qDDA2e}XZ=R0QcGs{pJ=60u{+=1(6e4hex){F9@iT6OrI;@+hs3pDcH3+&qS z$Teg`2w%c0E|z2@lIb`DAEq;}!2nlRW5zt9HZ){06zy+?SIBz(VIk+CWbxyP#%nqt z-_x4h)oUeZ>k6a9=12IQ5Zb80AwD$6@3snvge+6L(x;^Ip%gUQtUO-*?u^boSmduw zeV@m&*`3k7Q*{=*2Jer_;NlKLF_dv_b!nfx-l@XWqd@2VZt<9qS)Y{0*{6jYMHNXW zr#V`kw^?H~CO02e%JL>^vAmD&4dy;zK9Wh@0`1ZEvEgl;ir+=;r}yVxOeT>d7kg*^L`tA%GpQ=cGg7i_q!fDC*p&qyd3_MH(W=1 z@C`BckbG(jcJ05gk-xtND8qse*rDr@nn1wsTBjl+J%zYByP=b|gA`vB?4<0xmBD={ z`RpC_Y7XA@W72S@-_AAG3I>yWqk~}gQHl6GXSOv(aeSSJ96kUz0&QX>((sPBa#HPy z1FXMaL05rhk%S0SCc-Docrq}7GattFcq|lrug8wfhqsA_H*C=aqxdY4J$pqO!%X+0 zp(t5Zh~Qfc266JYzP>ybSjJ#SE+ZdxiDKirSiykPwuLBAy4k#L#>yLzjuj!9 zSye49E_;tsbs`C0(W^pmVAUV|4TgdF|fV zK@p|bA_4hQ1ebkJgz8fTBZ2LC`qXSqu(B`>_hqFyTnKUL-5_djC=ZkThQ|Ui9^)N- z)clplQ?2nB-+v9d=qyW{GG|=ISr4)pltkHEdoD2h(ssqpX*O95%-LXD+{18T$1&i5Hy2DA*wh z9+>(qGnJ%0#6ijEx?S41&IVt(aVcxeg*E=qj_NE_4me49AZu7nL%@N!L|oO&da|V` zjr#4M9lxF0bd!2yigj>cyz`$a3+#g`4%#+VI}hU=JtfAc;l|l`pa9D378#R7#&RdT z!TSjqg0=r*J_xN)Z=HSyOK1OH1`5EE}xV!Z4d8CN7r zJj4r$zhFe|@&1v34-Yl@)nOA7pV_AWipOA0ukYoN^gIAqYF-@Iji=0&3gA zj!CS%S0Ax?v{lr2-DZlIOofDY@*>{*)>_tDYl({WyYR?@7HL=i#RNR-#Xu9*CDfC5 zAGMUSn%=shr}QLwe3$w*>1|(r?Cde|(ouXFG=}$nhS|1YIF!F3#DyGlGp~9UJ)phj zD4F3sU9A2olS@4{Ig_PnET(Zw7Lox$qDGBb9CBsMXxSjv!^?jAfpl@c{T;&9Y+1D5 z)qwJ_&B6Ew8QaiogB7IEnu%<^j|a%2@dwSaduxT1&u#ofvl17lO%4bGQS-TziD|q< zn{6?Vt#S7cgo{(GcIJ(Z*nD7>(BNm;$D(BshBalK$j^%N5KWtXA%VTjY%yc_!Qhu*`MX3)@oVx5SsHIVp7w?$VPj;5>L z?#3f46>e6wn-$o$L|_VojQ66GEh$G*W|jTLvCI&?B1nBJ#qSCrY{ z|2s9-+PsFhq%N7VHm?;Mx(#S8{7IYu@+U!X-NMX#A;Le*CVZxImmG7!zTwJF(40yQ z;Op>ImA4+tJEUh}6U~U$BK}_WpLs#yQjsgw!++!eXLW?O)W1-p&wsB*$M9D;8#@ zgem{$iFN}MW&bm^ct%$xhFd8Z1Q%b$f=n&7rmMInr_lnaT3w;c#x|tuK8Q`R+}~vN zUj*IGf=OQ1LLN-Z^(q9nR+D~-fQcYwc(Cv=F-|6XPa&l)a&QNjZQ>N*^&PJ!_A<9K zq~!f$dw-EyN*a58k8^N`Q6p(^4cIOIKsnS7RYSm@IJ;)DwtG7%xAG0}>*2c?y9~x) zZTfzIf)RXA_rcbKCi7|}2aUb4wek(7J;QORooP_2dd+0raWpFn=9i485RKeDOewm{ z;QMeKdOw}eEENsM|M*Rt?blMlgka*|WND>1oHgpAa_lQP1nhZ&;^Sz@-InN4#}4IY|pHE(~ek&tz2`14Ud;BcinkEwW^5WB{;qtr^adt9jO-+T4;t! zBk<2JqWNXiB}FmZq$D&xN0*Zi7dHa8DQ{TEum?5iS8=B0;-2?J0u!iyDQCL8W>k2K zNGWSJjf16{9*c4wK3HB}%+-0K!2qYmc@B3@`U9T^8(R%Zc?0JeIl|Q|$63Q-#Li1S zWA%6nt&K-ve7|id6`8tKMJx%CU|d)zWAA+x9=Sw;Jk7(iRu`jo1ztgltv3y=AOp1M zNDX!A$oXUW->6a!Q{0wTZ}lIW=S)%}oe;WEJ2O%ehtLjvBuTBbOpxSEZ9U7Fin>*J z>QD#j|Iw>mScxS-H2{Cy2m|g0ZW@`i5|h~|^HwXgh1W;zedC0~J<#x0Uj8-s1C^vf zH?H89aG4!Zjz*Tn%D;vT`w!E8SJqz&X_tY2Gl#A6qqM2SvF~!4vN@%QR-h+1Sc7{(YqeBRSU3^5$}wQ%-wI-g+#cm@$W>ZHvd63q)mJdk(XAvHOobyR?#3>v z#%l&`SevNDCvm2w-^xs*BeH`H-znuF2Dd$PyFn*f*1{Z|R<$Rbc|Mm+b=5N+O`# zHz+aB%$xi0{2(GQ>%4(ONQKdROyAmod7?xggm|qSFRAb3W!4sePEQiaPK|zv?Q^NwGm$G?;PC(o${NBT*Dp*sH!PRT@n>iy^#B@ph9ioxN{>lU?@0 zH&QaJ#c1!qBq8f6$5dAO~1lzj}6`T*}fuO}#FE!>#*6 zze6X^33L*5>-tP@5Ita=`5HfGZh9ZG+e^Yg9DU}3Y$Ha>fGW_0e{of*w}_iuzR z-)UccyhtH=%BwRUL+c9z)PbC%yW-n#9rHoXZ)_sy;p$k;Et(a@)cC_FOC*&k?sC1Z zVr_rU;;xp8A#1c@i%R0#QD%3oMCRXSGuX>00ns)j@T176p2+dGeRzmKn!uD*LHmIy zZVs&9Bdq*hy_2jQ>%t)^Ma#X{G;2P%{u{4U|iRB^9BK5-9 ziBN=e=t?V!+#i?}{N*e!6KopGP4p&)aMVfEiPg3a>LJUKen4v_=quIH>RuhDPurNG zli@rYS01TZ*&pE$fD4VMH-j72IOJH^TmX%fn#_4JkQmD;@eOB3(!Vl18=06$EcDEO z3zVe*JUBM9v1VQ&@GOrcZA5JA{BY5d_d~=`XibIXyAvuTeE4Sz%Y(h^47KLsgL>xi zry=q@Fo65WP99@d`pRX0ZH5Hy+^V%fMYf+3zc6lP#H{*$fc}6{SN+E8Z;qO*oYxb7 zb0nq_4JWWeNlaygPZ1M|ag|bO=LR?JD^pOw=O79~5cf%qd4iR75WQYys2>`gW4$I8 z2ktloiN9X*hInS`yVdpKLSV=TO0-X}bry>WAQezh-o%-+)?riP@1!-&0TFF3^Ne#d zx8wZZ&YLYsI~v_?rzXBQZ}j^FEB-q3>JI&u*r$x2pRto~oXwJ#=F%cxPr63`a7Dn# z7delSb2`DWMqW}Z$KlD{0CP%>6k*fE$r2`c-!OTBCqN1>Wj*ftE3aD>G)cR7cLNZ( z^Pv{%huSNtp130d*;zVKNzauECCwE!Plz{wfZJa?uC&Y$g zLz=Z4vtnxBz{p=0NrYg>iS`{*!cTQyY8}f;rO&ER)eFkaHp(GJgp%5=qQ9T`bfRR0 zesUlj&mT-}k$8Pd8`H%RWq3P7Y++z->{;Z+((SSUCku4IT1|<@2yn_>ni4Xa?uBD= ztFIXOyh)9bzS2L5!Am$8{j>wiuP~Q{Sii zo~wpGHmd^nJGHObxOl?={}8wLJ4yZ|{v##-0c^TNUb>v6vz$c+*K|^~$XB_MC3`&To3w?7$%*q)-M42LmIQV+t&XU8E#9E;349s8MDBkfNT_QMc4CL_Sd0QW4UU|XZ z2Rh_Y(V$lN^+Q4|D+cUmCxfH`q3uePSg2lJ=;Nr#<(XU*=*ur=@|AdZb|L~rIV3Iy zL>-{o+m@PJ)Flo)Hopf9;5CN1HoTR(Bh3&6!r#hnTCnYn4|bKjmGDx}m!~ywpNO0e zb#kBhOouYS&A95)oPxHD~w^n?8T#ZGdqM8E9~3_JxwwkVpnQa?U1DU&G;C~&Da zrk%q0bvH(`0HTZRpSiF`Tt!$OEdcyFo@YOI3*w^HnfN|jsA=9V(HhpM&74Y>y`ZKQ z*=o3GU!}Ntc~n?NC;RP`;;1-W`|6BvT(0vZ4tidAlo;FMPK)M(%SUN{5|8|L{&9Mv zUBRN#z`CU{I^~i1k2s}NQhtAAuE=bQ-cLU!d%ybdPbjOZ;~`bu$-D;F>YBJM`)kvt zJZn?KIdAcd^tvJ_^p@Ub+}c{3`GQ`V6YYw0Y%+`>$<`r-w)2}z@`rW zvh4vW7|)qhaSr6mwi+}q_iyT5h&S4{!Af-??^$W%#7iwRW0wz01LMEHrQY0rlY8JK zuE05F`SqA;48}Z3k-`ZrYj&Z0-!p%MP&rQ}87GrddHs6pNYH0I0i&+VP*UuU=vzt0 zPWUEprjosU6EXRAHm^S$A^*jdwyR`d1gBo34YgrAwlF024HwdbjQ^ca;g`HKP-aqp zA9S4wG8T@~TL!WcQKz7GJ7(6H&5W{yWHh>@u-@Y-dC6_!#-n`U`GQfs50#v0*3H6XPT z#zNw*Z;_QXlb!ILx z?Q)zOaK0$rBv$;lT`t_1Zj|ycMg&q@IUBAKZ#~PyG=??85xJfXof6lp5_7!-w=7nN z&70c$F6N4U4gZPw{+ih}o2}s!d!K|--}h>IL*Tnp`a0jNhO8C1C%Gq~YlMS(jb+EY zM1xlKgMca)a9VF2n;`^j$l&D!Dj+~So^$ytj*?8gej z{GWn4fs@Y9y+kR?6@sw9fp+RpgKt-%y1xVvn}J!a&BX0^1Yk&H5{Y8FAes%u`c3jU zu2sGDP@9PY-H|?WdLPkVfNtyF1SC^JaNf2-SL>N+vhPl-bRUH zEJ!=Q@Iinw_bDkgRluYBCt-!LSQ6#tz-C>K9W?*X z32{*b_w^K53|Lt~S52#16Z=hPFI$o=$P5cV_pTEfQjZWg`r)H|S z_XTsEjg6-3Rcxq56bx9`>y>0yj||8p`Kizw-5p-12N~XDll*)@ryePwo(y@A?5%?J<1fn(nqsfO!(8usc1Gp{7@I)+5edLrc zwAgX}#P@)VUu3GCU;l+xVh�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 diff --git a/client/Android/aFreeRDP/assets/de_about_page/background_transparent.png b/client/Android/aFreeRDP/assets/de_about_page/background_transparent.png index 0eba5b5d2dc374f683ba01a38d0d3c71a97cb2cf..c6d2fe64c87a786287d9f181b1f5750e407f2786 100644 GIT binary patch delta 45 zcmaFK;XOe`UC7hLF+^f&vPJE$FX|;{9GD#$*meiY*emQVWdH(CS3j3^P6&M2D{Z10C9-6gqY9UOIMYr%pXNwv$3k1*iMqdB5NHb?fl)_SWq!MNzh!2Toh= z>-pN;kpFXj=eyi)iAGl(@xGYQgeg^@_ZVn~bimq-`qO7$SVd9RegvJa=( zL2N)&)-WQ)GC>&3KUG>w{61+r`*U0JW~)OXVgli0GSMdmohJi`Ez5$)fQF$-LQAKS zpqUn>I|~gCOT8qBMZhDFYot9s7Pcxqy$B(UmujPQo+g{x;R%Xd{m-w}6!*EHbqRlR2yOvHn)0n|FOZhnQWRd$jxmz)*CyWZ7 zbT}U^GTs_;!P6m+LH($xV{jZqKA)slc;-;SY*l98(2%JaW(Su@0THwG02u_K3)JO) z(4SsKiyA6)3`CGgjN(72EWJ+!{V(i$q|cL(%KQg;x579Y%&fUCX-27_k;j^jt;*2! zAn-}4>NqvoELPF1V%)&H4QIbvz-6;;nY*<{Z6WJ$Z=6?QA?shtR#(dA{hZf{I4lXC zGk-tfA(+*I1gm{1uhch}^;i3{yHXZPXJFo)SGslaBu5}WE@w|(meb23IkJhI&986o z6FJv6n@+Wped|?T{P}%%!~FQ^<$CMh=8Y5Ocw_D9=QroS^5Jhb4xM+klUIKMbW2w7 diff --git a/client/Android/aFreeRDP/assets/de_help_page/gestures.png b/client/Android/aFreeRDP/assets/de_help_page/gestures.png index e49a45b8fd29f9fd5e24d88fb18b1c180ee87fd2..7a62212dbe3a37a711377ea439cbfb4920157881 100644 GIT binary patch literal 45123 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 NXX?6Ya22b_{{x6Z7Ks1= literal 63377 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 diff --git a/client/Android/aFreeRDP/assets/de_help_page/gestures_phone.png b/client/Android/aFreeRDP/assets/de_help_page/gestures_phone.png index 1b90a1f65ab124907828e2af525bf7b2105f88f4..31f99f13e591859d2164fe89e307f8886bfddd22 100644 GIT binary patch literal 28173 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 literal 40104 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 GgZ>AEqZg?F diff --git a/client/Android/aFreeRDP/assets/de_help_page/nav_gestures.png b/client/Android/aFreeRDP/assets/de_help_page/nav_gestures.png index ab1b36fbab3381961c70741ffc084df1d20dad7a..50bfaa232f82698e2801f616fd290c3517b4cc80 100644 GIT binary patch delta 2384 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 diff --git a/client/Android/aFreeRDP/assets/de_help_page/nav_toolbar.png b/client/Android/aFreeRDP/assets/de_help_page/nav_toolbar.png index 703c0013a865d2850598e34bbe36613d816b5743..a3102ee33a2c6d0fc0e3264a39b5eeeac8783d09 100644 GIT binary patch delta 2010 zcmV<02POEJ80Qa=BYy|3NklxuMg&E0gWilH{Vt?Y9SSE(qsPa(Rz^r3* zOgIzFXqf?w591)sRT^?vCbBWyV@&Gp+qaMWb^W@*TvPjNWtGubQCV4ewW6{@&aMyM-LU=$Q=W(BHRi<<-{y{=2dI8X1k%R8?i9 zipnbD0aP9`<$ss2&~Fzn(J$xDQ*p@|$}ccbR(6i*Sk{SY9Hl+uNJJitvovIHW<7I| zNvQkd&r8)Du-RNg=9(JftB4O;MutwPUPmRJY;g1ypx4gU?{R=l6E+Qe%PNt zTRxBdo+ItW^dO=Rj7A9Ao|()XVB)WtOy#^hlgVVZTz@s`8JYCWci+>V_Q;^Sr z#3ajh(`G%*o425pqYY*T5|I;QhoHMNJD4ww#%oz+7k;G*p23BNQxw1NJKDZumx=<| zv2zc_@BNnaTei~7S>ZHbz`#NdI)Zr?vl>B%GO>Kq6;)^`x^@118S$2O#OAMyHor2?av@=1g%X-N)E-{ zTKv9mDB{Cav_coDqF_GYrTgipdy&6?069B11^s;Nm)pjz{wRugON*Dh|3KNc{VQrk z4|II!PLzvo_LbFcJ0PNJ6nV9#cR5D`3fCv)^DM?^AfNdeNdK+9`Y$MDX3( zxN+lU1u8B5S=6?7?>>SW8X71gBg0bX<>fb?)EWv8pJTHhf=4<&d>}C~Nz@<5Tz|TB znbnVDp$&ouUi3jaL$-Tpi8G{qX&;2(0p~HvMMYX7{mHyaA8(x$8aSTDywjX~y zfLb=NYCJuV`tZ?m{Z%&}ai+`5TsF9;(1u7{ivDVnHuWz`k|Kq5S3BuMEKa_Sb zO*FpAWNNj)UcW_ptQNtsAfd)s(B#l5sAZ#5CvWob@St|>+BF3oHhqS6>>J}~!Tg2v z((nqPq(Y~Z^y+45N;T3r#wXAqO=0)yq?tkK-r%axz z#dM!DXD$sMG(=XQqM{;ejo^+SKi+Del;ji}{GxqH-Fklj-NTFbBJzm($cU$>C%L-1 zk%L3CphH4Jv_WHnX!h*c)c?i)vH}?l25XJ|`Wy9k_3Lyxg0Qv44<#ifiN>$4uD+lC z(qpv<-U}qu7)z+-1k1LIi+>9T?a&l-@LLnLue>~xW`xb4=lb@O6{xVV&|1ICcePMv zX67BV)pfB2SEJ*NUETNVYS65f+(4hm_+uJtU+QEYcQ|P2n z>iJYpS%LEN^Y3U6n;u5#>FL&!T2)m=adB~2mhigGerW#>`$cukrWhJMYBbtK{ZXS` zI+oyt2SOjzLOUdQMSrz?U^e3?N>R{(Lx&Cv>f84@nlNDk1qME@qI@u$@ynGcXcs>} zzaal^{xssH5yV>+<%1tH$VuZwZQHi}FKCtnC*RB4+sE>?nXhkWY*iEtz7=zH)BsV? z8m13FT$?=HJuDB}oxD1!C>Pv_;foRr2w4c)of*Tk`XJVIJb!z+ySu9>6gM|FJW>IC zKG!u5+MAigQ+yqN0gma8|1;tb^NuRY1Nk9f3wCyP!m_;!LAPhdGn+W<(~QN0&@~#3 zih{r_=KKIcZa$kwA!s}1DJGgpW5acZ1h|um0zg*HXy7b!8$(WFTo{WqOc0aMXsBaI zMUgZQ8T4jELR0F~n;9-J|Flt0oKiqmSCL&ahBEeyNOp`H^A=2!z|G8cmH#DXWF(oz s;00;OQnh2AVLn9%6~*xpVFt698H}wAH#;TUO^6mP$I@a+ z_KHH5lPFZORJO*6vCT>D=v3$aal7y5^S;03^E}V@`7VFF$u7>e(h|xN002PR-p<-p zuto}AO>t4dH=VQIE?AUUHdvM$&7T#HXAl7x0?n5Qw5Q+$h^|CDAtI!MXbJ!bfynMy z7S_oTQjMI@2! zA{j)tNN0Dy$RIxx0?6D9Xv#(j1Smun9>}HyQ<*3>8uU#UCD?CXLqWiA5LOTx^tUOj zlMB#_#vlR>ATT{Ym?0c!s1Jeb!%Xx|bb$yM90r9WpfDpnI1FWAgo43=-ye`58iU}E zaptA66Jt`CYL&2KJ z^kb0eEHaG>+*HK-(n48ikihBRDNyJ?WvR^XWfBw&%Er^7a0qNOr5`{ir~eP7P=2DB zELY+`e*dR1(>;Ptgt`)$v`~hhpmF}-%}{id6@!Rp(HQPDTJVo5x{zor8k0n$1FhT) zAaI~3nM$CAGr!@ToKW^uCJRsXBidV|K>`H`nM^<#8e)(}MsT>X4IBf9+rW)2O%PT{ zj0w^jjtSe?}2LS-_G<$1| zJ9~KUI62teL*DFOHL?(L&c!>f-R}BhyH`@jwzL65?Zs_w$=W?mdXdvMo+63e`7Y5n zS^0{>*jXJ&rl^p?xg?hx;;pXxB&r5#o;gmtbUkCeeb&&;Z{~h zK?gyOx65%Ga5Ofr?P)mZVy0E5od)=ENIW=`B-s$pKb z3R*k1+X8pb#mg$jX&XAms$_eE-aSh?+vY3EQGC~64rsLinEK2s=IG=#Vu0WZ!q`@? znr+A=EnRB}*nEDOUAky`G8^9&YXK84r%>K477FPitD@4+cl!&~qqCH*zMSRMuC z#I^-%dYXkjzuM9J8;Z9W#&{#XyhoU)Pxvjqq6o=FYMKlUz56s1*WRwBs*blxofbA8 ze{TWyc*7^uzX^e;egL$Z*;|aJy&mL^d{#298@UoKpP?3HdFk}qzT?VrV@4Y0dxSZO z4VZ}9GmWZar;=hzWgDs+uS}e2jfi+>Ho@U?sR~0%*+tpuK10EXcyzy+@V)Jm7le7E zK9xp&6SGQz_q<)>{OPQI8!Ru$K}UMi!^@qxlJ5?^(DA0 zr$2g{h`0mv&LwSF?E@FXK`XDe-rvrA^{M5Ir4U~hY^(4n>#*r5n+u&Dz0%l?0a~+& zn2cddO=VLP;cKKiM%Lmy>AHKymhPqHqK{-@++;T!*fH_>VfaXp-&!4!NiXEauP=$Q zy3TN7L>I7pGr7f=LdoaF&+E4N>gibR0UIn#n?i3>syQ09Bi&dTo|n|uu(?$;@}c6) zijBhLwOP)TQReJm(iXM!g<$K&XnjravG&A6{>>X=sanNKuOd@R|9FP{pq?MM=b7&Q zlF>h|*gh)rLJkc~vn)MddXY$^*iTc-fART{z=^=gA&$k?zN&F;t9b;mQ(jwpcjt_e zfdPg>(Q}wh9zIz`QlHg164p~-vZ@;18Yd!oA=swPRjZcVuXQxwang?4gpTK&mpAQz z4xbgAsK@S*%mi*M6|c;Pzis#n|9LzSxLe9HCI)>l^@NMN`_-**rNOcYwVaUwT7-Q{ z?Yl2uqF>#{t2wyE1SZbx#JQjTG`ycgCgWEmB_wbY?M6f1)xS-oJa~Z0Ei$C+&l=$W zF?_wLphuVeJ}2)^`q9-77in3SCmg)>E4}r*2X59(eV%v%?_2&fBBL@$OUh#Is>iMK zLtQ+o6>?1%NX?VGBr{fkeorzug$Kf0>*pJyI{3Zj8^L8})izbWZHJ6wW>}74%x-^d zlds9^@X^N3?K#6{OEyAdI%zYt)S-OB%NTryVUU6vamxj{G|j9bRXvA0(Q88QWyOU{ zW|nTH5-y%Knqb^emXMSzxk@-Bh*+!DzBK=tjhi^8Qi*Nmaa{*RuiZ@JYIeG*yvQ|F zlXI9Uvet7}?|AXMZ?~fEa9MfXlw(%KAzq>B(KxtCE))Vu04K_vJbG${i!STAA2Pw$ ztV|D!*+@LSw!(+7-oFstk#oYiX!v#8f=P50D+YV!83*YcH5*biR#l$Q0!jOMY*t2>u_^2)@#Cqp1RcK6@3eV*sJs_)&r z*SR1zd8d}ovI+MgAo<4FM^P83d|SWopKEZ)=Beo45y?Bac@>&Y?oy+&e#c-d_2SxckF$fdxkIa8tfu)!q< zpVWn=b(uY8szuQ=H&2%zb|mk=5|z9FZQ{vADYV7qAoPHTYJ4>9GY)X70!N4q#Sggh zSbevK;rXxpb(a$-q;qm|Zm(SL(Dh#WtM^fPZAM%aw@zi(n{5txM|sE0KHLh87@mbd zFNs~dc8^}ivpOErJSy}1(ejiIx5&j0%Byqt4qpgnE`~hq?)JM|S65f2Co!zQ_U~Ee z2R073Jf2WEmuD5^Qx#U-?^E|xjLMj=%I0Snw0;p;9BUQZgOiw>nu^WOSH7`!BVpgk z!=5^aIVnxeLifXb7KejejvU$Hd3q#o1gnxgIED2CXZPv^+|_h*@QueSLVE3TbHII; zx_#~^!tZ`0y;06DB;oxZ^QLR-<63crT^_==XTJs(ES?a1G4Ot1`Onk4Z0_XgKBzA* zA0Sp^TVEFD$)y^SaLbGPwx`xnBOUt2=&Z@f$%h?o*I!Aa?i*^qk4ZGM9UHFN6$lvsO2Xi$Y3BJ>S0@cl~VF;1Suy=HJQuF#fp&U#$hH z$tUL|E!F_1l1iGYG#2`*lrG1JH>XK?r9PPIde+v85(R zZe)&o>|%M%=j|&@J)ZKVs-nR~|C8E6zFsKNWQsD{M<+@R;;XGX+xQpiO7+$fzTtFG$y67vALw`#*b9TXK-2hCCbh{ zNc++hm&T7LZyz5Mi+qxq4xu+NvyT)UZ7V4`OD9g8qWJ9zv@QORI@$$W zH~IUI{E0XqYXraWrn+i{w9YBn=!m@G8WH z(1yJHf^gieW#=BC=#M|8jZvF)G|V4(>wfOJ(d6gnPfku2pxPlC`(D!>3P3&&VX0HDi0T z`hWTc#Iz=s>NxAyZ#_>31d#8rVSMN9Xc2nLmRJLhf`lE3cn0gi*0^}e;cXpMR#g#9 zs_*+E4L*GW=7(7`7KU69L&)v_>&mcGWS~uitubeI7d0S1$CXO`jNW6vSb1a-i`ahs`gP)W{C`i#`mJY#pC5U9`;dc!gGK1|>o*$kkR21V zh33tBN0l>YiU}sRA3XRMYHe*J*u#epskF3|R;~I_<^wYtcT07JKINF0d-3A;yZZO< zPbXMZR5aDr-d6Hcnh$=x<^i)dFO=}dnyy{DW*!5>`r>$Jgb&6GhB3X(i4t{LK7W`4 zhIojJdBi-14I55gUS4vcSFc`cSja~~G~ca-gv?f@sHlk8WNj4{f1?Kv9?%hf-@0ed zKFZ0-rJ9-=bKAOg>%075=$FNm_o>C?q+88xk&(;bgLVv)`JqG|l|rA0clkrVMP`o}Qj$Z*OlAdd2b& z4Db9dj5e&_K)-q2pvuXUrwAt1vof>H6E1#lNe|yESFRF2qj%L|$w|pFAE8e*X6W2` zRDG)&pbmdArmS5yUI2#m!B+xx*!KAC*5swOCV+Kgthi3`w?v*|-e^a^Y=0cqsgxhK zZ4Zy93_EyMSG9T1oTVuB>=Fywoym<>_tjtS&O(4DVQX|#bS60XT3UgvC z)}%Ox$dDmkjd!Sd}IdkR`?88;7QSZE#?d{$sYzD9QFWt-AFeeplqxaB7}7Y=2gu?n^dlFs-I~0l zxzyKW=~JxdWapT33x5g<>M^$XOfl9Zj#C8NwzIP{3vFi+nlJW-U%wheOBOGo7sifL zB`@y?vB}!X%F5{e{ri-~&xLVY<0xr&5>-`JncKp`=6Cu1p6`}n@P{8jJoo|B)nej* z*UKN$gYf4Gf$_85x;U z-YBsKw5yI2aer}fp+SQNk*%$*Md(>?&N2i}45aY+;WX;mQ99ZOXEQ!g%7hM>Jb6m+ z*s(A0O~xDw2>6+f_QBbVFIO_5oqc_MgZ)PM(X>~l5tlmJ2Ol%Y(ZP}W_wWB-q1o(M z`O#ip-sab4K0ZTH>S!3e6|=W@05YK+nCJQ7y2ahi-GBU`J;ZZ}j&{L~7+#c^fyk23 zZp;imtB+w{$FrB4o12bCadmaYBNf2)xxKs4Ud((x#kcVbaGdV=KO?@F57yBh&<_He zv9Ym{w(SfEJ&>8rB(m677_$?Lj&GSd8UklA>jxlm_p^CAgtlRxW#XCR>~N1E2_B@Q z0iabk9&oUh=Q~BtXPg46d5uoQzy+{O^lJTBITO!^)*sqVM2>|Q^dtn{v zjuz%<0+kHG?_nT8WM2*&0MOJ4^2HOpiFD9KqNf){3%t_Y4hDI-Yk?ht zFN!;r;r|!j!UAnd@u%Y{1fnTM3(Qe~czL;_QAS2cH6#MAW(e1V!wunT z7$X%7OifMMKp6%{8L9o`VyJ`wGLb_6$#wq^7x7E(o)yTxoX8j=%`1@TZbYM!L4TEu z_WETmaHC)9{mpg%buO@9a-p1LpnHS;e}n#c#c|Kx_8;4F4*wXRNa47h#<8_rbCePQ zz-wZP(ZdE!EINl;V_CvFihTVBn3KVV2qks|3R}@_Bq3Z>f-Gm3slbtB@WhZzVZyjd zfyFc9?|n~6m+XW`B0(XhS@_*!6?h_dj}G}yj}y-&dX>*K^c1|xLf@uusF>&6*( znd$*8r02@FBIlGAZBHPYLX! z$v6s7QljdHSkI)y zO>U5T${~E|aQTPeYW%#P?$doJ-Rhx{OWuZI-`UvtU8`ynwe+jfE7#qeG5KqFu4xR3e0`HaYO7Y}NDSLPZS9XW7JM$aw`qPp{j5=%pSd|5g_Db+Yq&dQ@)oVn=>|K6&W7B4r#l zSYNLf5WqhmSW(zz4HRFyW+eH3YFo(0W=O)mV!z-b8i?j^teFp73d6lAT0Elhrs-U? zcDwTs?%=T*RrxbqY6DzrlJ82L14N#*UW+ObY$;e+o|2H9oh>k&F6Ros>u!Oih`Q8b{`uDIr>$wpNMAsWweZpM-0;^A~lNA zNPmCH*1<{?LjsR)SGFj`vnw1N#rO)RAQL}UH6`=mU}_@lU8o}+`FfC5QA8g9$FCvm&)yn5hM5b)rJdW00jtd!Dx1yA zo$cZuK3A46Kys?eq8_wuTeVMaSC=(Re{Jh$N2d(G=gydv?mmAhPTT0x+_1!vo8*eV z@{)O#FJHb??;J-)@TSRHT#-B-`Q-J7AK{~0+H%LHPdXK=cYI$7`=*R*k1#M#^C@O; zHX69Tina-D&ULbm>{)Z^Ii1j()fd25yg{FHOJDRI4?j8-0!^Cob@ z6x7_Jl=bFOPoadKXGZ_~MI;|%IZUGahH3n8sRFFl`{`zbVXo>s82oG;{ zv@aTBFBxR9Dqh|*%gDd7q37zVEuWvLq>SN=idTX05vwjGD_fHZK68d^Cqk=CalOX; z4k9)&BUbnC(qF6eRUt7k&%(`xmB;BBX0}6?jNBHL7>-NTemaJkE>@t&PUKM zHWG}JI!|FuA|g&zhQfCu!Ux*N1lM=#o$Swd-^yv%N_rU~Z-uqR0WU-Z|E^d{ro_Ee z&z|9tG!7Zbu+!HED?Z1`m9Pe~;I6dO6*X6=Kz0-#kL>U^C*HgF;#vmu z!jZ8*s^F)-_DU)yE#GS@4z!R-bKKl*^tZ;@KI^9MvZoCj%aiy-AqRY?HpfV}-G%~1 zl7oTQbQh1|RP!RXSyl#4Oi{5Km9J-aItvWcG}7=N|17`Q(YeMdqovPpc@Mk6{&fQy z^STz1KF_Yf+S`ZRE<)LypGew$u7@H|SdGUBX5tpBp16FFSKv|1Xonxo(}~RedbU{o z4utjMZvVEF`g__icM;t5)46l!wtD*B`%S&IQLPG~mza*Z^`zu7kb?d9ii>rT=aV0V z)Ymh{m5+{{IFmPO7#V&r`0|8Qmyp@){^)|?iW|u{Z(cnlXSJYXHuF+-di{>7b>nX0 z)v}7_Ni&AN(;2OZUA694+B*vEgd?Nzx|9nxj{z{&qRybwgougd@9R!0HiuIamf!7^ zC!d}**z)u9bA8VHr_AlUYJOl`bKw1?!d;6T-CB14$^#rNKYS#O)i-QZbX0yQ8*85% z3d-O2JZ|(w+ZN3Xr^+gRE>1vyJ@^cwohtNN)-tz44u0J*VZBx(a4y=uqDzjAFiWfG z!!=Y}HSXt||C~~YBxN@Tiasf^IH^UL*}tJ|=@lCB*+wLC>syN1ghM{O@AKS3nylrM zm_tJU3MBJ;J3sID4L_wC;WMbs9f(YBWpodcHJICrb2%5KK27t!+4Wh!rLbKs<}r|S zC_YI%?v;*CC$M1VY5dc7UDxsSkEHPizcj~34Q1SKe@tGO=?LY?2NoF?nx@GTn5E-! zH+tmN+R0V8dfo?qtGg2{tyy7D7155u#;CpelW?!wfQhELvR0zP!Ui&J_7d7*+}iSI zJMS6rm5-0f-^wl%oQ>y6aZa`f0hWtA>K7MZX=>!5Po>hB%ugv}GoN1BX70Y@JB$j+ zcscbb@xDLMrG=i-x-vgMuiu%+>!^NyW%R)`fZF~|gdP}hZHbp$<=T28)`Cdv@3$&K zTzjTc-V&y0oBD_~7QoXRY28>HzW+p;rd94TjNXx@>|OoJCx~lDvavjGwkN5MCWe{x_rZED8UD}!-U}9=@ zT|oP6Vb4RQq=hq}a%H}%=GK}Td?gykzr7KJdvN=K*69NmKQ)|OZl(Y=(C82x?#-&k z7YSA3U}wF4f!SQGhK5FL@2*VAoli#|J1Wj(nOGYL)Nj1ZdghBr>6p!sg%cK~(}%?Fo~s!7=-HbsGc`%hnSQ1v(7Lpt!qjcETq+TH|GuC5zoP3x8wj+8ueVf>H`euvRmUQ1|_fxBKh8YH_ zy&x~8QM1ZSl7>L79l*izXzy%tWVEK)5TSP{cupYMxme%_v;%->DA9e``G@7+f0n7C LC8kQ>?aKcFh>A-A diff --git a/client/Android/aFreeRDP/assets/de_help_page/toolbar.png b/client/Android/aFreeRDP/assets/de_help_page/toolbar.png index 10c23b62b78c4f39cff927a99b5fa5c7ddb12a84..964cd59f4c9ab9cf9da7dbcfd9a245e727b1384d 100644 GIT binary patch literal 7261 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 XJYQt2bsUZY9-rrm8Vbd7ra}J)joiaL literal 10926 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 literal 8780 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 @9t4PQ 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%0A6td#NFxHGaoR|w9Bt!990uNLk9b# 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