From 31dc7ad77c0d93405a9f23f5732f9632f4cf322a Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 21 Mar 2026 12:45:38 +0000 Subject: [PATCH 01/29] Initial plan From 1bc3bbbc949ab59e37ad9a5f8c1ff60b65181528 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 21 Mar 2026 12:54:13 +0000 Subject: [PATCH 02/29] Add RetroArch WebSocket client in src/retro-achievements Co-authored-by: kzryzstof <38137839+kzryzstof@users.noreply.github.com> Agent-Logs-Url: https://github.com/Octelys/achievements-tracker-plugin/sessions/aa14e230-8237-4006-9a8b-eb203e951ab2 --- CMakeLists.txt | 1 + .../retro_achievements_monitor.c | 604 ++++++++++++++++++ .../retro_achievements_monitor.h | 155 +++++ 3 files changed, 760 insertions(+) create mode 100644 src/retro-achievements/retro_achievements_monitor.c create mode 100644 src/retro-achievements/retro_achievements_monitor.h diff --git a/CMakeLists.txt b/CMakeLists.txt index 93dea14..4571de7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -500,6 +500,7 @@ target_sources( src/xbox/xbox_session.c src/xbox/xbox_client.c src/xbox/xbox_monitor.c + src/retro-achievements/retro_achievements_monitor.c src/ui/xbox_account_config.cpp src/io/state.c src/io/cache.c diff --git a/src/retro-achievements/retro_achievements_monitor.c b/src/retro-achievements/retro_achievements_monitor.c new file mode 100644 index 0000000..0436288 --- /dev/null +++ b/src/retro-achievements/retro_achievements_monitor.c @@ -0,0 +1,604 @@ +#include "retro_achievements_monitor.h" + +/** + * @file retro_achievements_monitor.c + * @brief WebSocket client implementation for the RetroArch game-state server. + * + * When built with libwebsockets (HAVE_LIBWEBSOCKETS), this module: + * - Connects to the RetroArch WebSocket server on 127.0.0.1:55437. + * - Receives JSON game-state messages and dispatches them to subscribers. + * - Automatically reconnects with exponential back-off on disconnect. + * + * Build variants: + * - If HAVE_LIBWEBSOCKETS is not defined, stub implementations are provided + * that report monitoring is unavailable. + */ + +#include +#include + +#ifdef HAVE_LIBWEBSOCKETS + +#include +#include +#include +#include +#include + +#include "external/cjson/cJSON.h" + +/* ------------------------------------------------------------------------- + * Constants + * ---------------------------------------------------------------------- */ + +#define RA_WS_PATH "/" +#define RA_PROTOCOL_NAME "retroarch" + +#define RA_LOOP_CHECK_MS 50 +#define RA_INITIAL_RETRY_DELAY_MS 1000 +#define RA_MAX_RETRY_DELAY_MS 60000 + +/* ------------------------------------------------------------------------- + * Subscriber linked-list nodes + * ---------------------------------------------------------------------- */ + +typedef struct game_playing_subscription { + on_retro_game_playing_t callback; + struct game_playing_subscription *next; +} game_playing_subscription_t; + +static game_playing_subscription_t *g_game_playing_subscriptions = NULL; + +typedef struct no_game_subscription { + on_retro_no_game_t callback; + struct no_game_subscription *next; +} no_game_subscription_t; + +static no_game_subscription_t *g_no_game_subscriptions = NULL; + +typedef struct connection_changed_subscription { + on_retro_connection_changed_t callback; + struct connection_changed_subscription *next; +} connection_changed_subscription_t; + +static connection_changed_subscription_t *g_connection_changed_subscriptions = NULL; + +/* ------------------------------------------------------------------------- + * Monitor context + * ---------------------------------------------------------------------- */ + +/** + * @brief Internal state for the monitor background thread. + */ +typedef struct monitor_context { + /** libwebsockets event-loop context. */ + struct lws_context *context; + + /** Active WebSocket connection instance. */ + struct lws *wsi; + + /** Background thread running lws_service(). */ + pthread_t thread; + + /** True while the monitor should remain active. */ + bool running; + + /** True once the WebSocket handshake has completed. */ + bool connected; + + /** Last connection status notified to subscribers. */ + bool last_status_notified; + + /** Receive buffer used to accumulate WebSocket fragments. */ + char *rx_buffer; + size_t rx_buffer_size; + size_t rx_buffer_used; +} monitor_context_t; + +static monitor_context_t *g_monitor_context = NULL; + +/* ------------------------------------------------------------------------- + * Notification helpers + * ---------------------------------------------------------------------- */ + +static void notify_game_playing(const retro_game_t *game) +{ + obs_log(LOG_INFO, "[RetroAchievements] Game playing: %s (%s)", game->game_name, game->game_id); + + game_playing_subscription_t *node = g_game_playing_subscriptions; + while (node) { + node->callback(game); + node = node->next; + } +} + +static void notify_no_game(void) +{ + obs_log(LOG_INFO, "[RetroAchievements] No game playing"); + + no_game_subscription_t *node = g_no_game_subscriptions; + while (node) { + node->callback(); + node = node->next; + } +} + +static void notify_connection_changed(const char *error_message) +{ + if (!g_monitor_context) { + return; + } + + if (g_monitor_context->last_status_notified == g_monitor_context->connected) { + return; + } + + obs_log(LOG_INFO, + "[RetroAchievements] Connection changed: %s", + g_monitor_context->connected ? "connected" : "disconnected"); + + if (error_message) { + obs_log(LOG_ERROR, "[RetroAchievements] Connection error: %s", error_message); + } + + connection_changed_subscription_t *node = g_connection_changed_subscriptions; + while (node) { + node->callback(g_monitor_context->connected, error_message); + node = node->next; + } + + g_monitor_context->last_status_notified = g_monitor_context->connected; +} + +/* ------------------------------------------------------------------------- + * Message parsing + * ---------------------------------------------------------------------- */ + +/** + * @brief Parse and dispatch a complete JSON message from the RetroArch server. + * + * Expected shapes: + * { "type": "game_playing", "game_id": "...", "game_name": "...", + * "game_path": "...", "console_id": "...", "console_name": "...", + * "core_name": "...", "db_name": "..." } + * + * { "type": "no_game" } + */ +static void on_message_received(const char *buffer) +{ + if (!buffer) { + return; + } + + obs_log(LOG_DEBUG, "[RetroAchievements] Message received: %s", buffer); + + cJSON *root = cJSON_Parse(buffer); + if (!root) { + obs_log(LOG_WARNING, "[RetroAchievements] Failed to parse JSON message"); + return; + } + + cJSON *type_item = cJSON_GetObjectItemCaseSensitive(root, "type"); + if (!cJSON_IsString(type_item) || !type_item->valuestring) { + obs_log(LOG_WARNING, "[RetroAchievements] Missing or invalid \"type\" field"); + cJSON_Delete(root); + return; + } + + if (strcmp(type_item->valuestring, "game_playing") == 0) { + retro_game_t game; + memset(&game, 0, sizeof(game)); + + cJSON *field; + + field = cJSON_GetObjectItemCaseSensitive(root, "game_id"); + if (cJSON_IsString(field) && field->valuestring) + strncpy(game.game_id, field->valuestring, sizeof(game.game_id) - 1); + + field = cJSON_GetObjectItemCaseSensitive(root, "game_name"); + if (cJSON_IsString(field) && field->valuestring) + strncpy(game.game_name, field->valuestring, sizeof(game.game_name) - 1); + + field = cJSON_GetObjectItemCaseSensitive(root, "game_path"); + if (cJSON_IsString(field) && field->valuestring) + strncpy(game.game_path, field->valuestring, sizeof(game.game_path) - 1); + + field = cJSON_GetObjectItemCaseSensitive(root, "console_id"); + if (cJSON_IsString(field) && field->valuestring) + strncpy(game.console_id, field->valuestring, sizeof(game.console_id) - 1); + + field = cJSON_GetObjectItemCaseSensitive(root, "console_name"); + if (cJSON_IsString(field) && field->valuestring) + strncpy(game.console_name, field->valuestring, sizeof(game.console_name) - 1); + + field = cJSON_GetObjectItemCaseSensitive(root, "core_name"); + if (cJSON_IsString(field) && field->valuestring) + strncpy(game.core_name, field->valuestring, sizeof(game.core_name) - 1); + + field = cJSON_GetObjectItemCaseSensitive(root, "db_name"); + if (cJSON_IsString(field) && field->valuestring) + strncpy(game.db_name, field->valuestring, sizeof(game.db_name) - 1); + + notify_game_playing(&game); + + } else if (strcmp(type_item->valuestring, "no_game") == 0) { + notify_no_game(); + + } else { + obs_log(LOG_DEBUG, "[RetroAchievements] Unknown message type: %s", type_item->valuestring); + } + + cJSON_Delete(root); +} + +/* ------------------------------------------------------------------------- + * Connection event handlers + * ---------------------------------------------------------------------- */ + +static void on_websocket_connected(void) +{ + g_monitor_context->connected = true; + notify_connection_changed(NULL); +} + +static void on_websocket_disconnected(void) +{ + g_monitor_context->connected = false; + g_monitor_context->wsi = NULL; + notify_connection_changed(NULL); +} + +static void on_websocket_error(const char *in) +{ + g_monitor_context->connected = false; + g_monitor_context->wsi = NULL; + notify_connection_changed(in ? in : "Connection error"); +} + +/* ------------------------------------------------------------------------- + * libwebsockets callback + * ---------------------------------------------------------------------- */ + +static int websocket_callback(struct lws *wsi, enum lws_callback_reasons reason, void *user, void *in, + size_t len) +{ + UNUSED_PARAMETER(user); + + monitor_context_t *ctx = lws_context_user(lws_get_context(wsi)); + + if (!ctx) { + return 0; + } + + switch (reason) { + + case LWS_CALLBACK_CLIENT_ESTABLISHED: + obs_log(LOG_DEBUG, "[RetroAchievements] WebSocket connection established"); + on_websocket_connected(); + break; + + case LWS_CALLBACK_CLIENT_RECEIVE: + obs_log(LOG_DEBUG, "[RetroAchievements] Received %zu bytes", len); + + /* Grow the receive buffer if needed. */ + { + size_t needed = ctx->rx_buffer_used + len + 1; + if (needed > ctx->rx_buffer_size) { + size_t new_size = needed * 2; + char *new_buffer = (char *)brealloc(ctx->rx_buffer, new_size); + if (!new_buffer) { + obs_log(LOG_ERROR, "[RetroAchievements] Failed to grow receive buffer"); + return -1; + } + ctx->rx_buffer = new_buffer; + ctx->rx_buffer_size = new_size; + } + + memcpy(ctx->rx_buffer + ctx->rx_buffer_used, in, len); + ctx->rx_buffer_used += len; + + /* Process the message once all fragments have arrived. */ + if (lws_is_final_fragment(wsi)) { + ctx->rx_buffer[ctx->rx_buffer_used] = '\0'; + obs_log(LOG_DEBUG, "[RetroAchievements] Complete message: %s", ctx->rx_buffer); + on_message_received(ctx->rx_buffer); + ctx->rx_buffer_used = 0; + } + } + break; + + case LWS_CALLBACK_CLIENT_CONNECTION_ERROR: + obs_log(LOG_ERROR, "[RetroAchievements] Connection error: %s", in ? (char *)in : "unknown"); + on_websocket_error(in ? (char *)in : "Connection error"); + break; + + case LWS_CALLBACK_CLIENT_CLOSED: + obs_log(LOG_DEBUG, "[RetroAchievements] Connection closed"); + on_websocket_disconnected(); + break; + + case LWS_CALLBACK_WSI_DESTROY: + ctx->wsi = NULL; + break; + + default: + break; + } + + return 0; +} + +/* ------------------------------------------------------------------------- + * Protocol table + * ---------------------------------------------------------------------- */ + +static const struct lws_protocols protocols[] = { + {RA_PROTOCOL_NAME, websocket_callback, 0, 4096, 0, NULL, 0}, + {NULL, NULL, 0, 0, 0, NULL, 0}, +}; + +/* ------------------------------------------------------------------------- + * Background thread + * ---------------------------------------------------------------------- */ + +static void *monitor_thread(void *arg) +{ + monitor_context_t *ctx = arg; + + struct lws_context_creation_info info; + memset(&info, 0, sizeof(info)); + + info.port = CONTEXT_PORT_NO_LISTEN; + info.protocols = protocols; + info.user = ctx; + + ctx->context = lws_create_context(&info); + if (!ctx->context) { + obs_log(LOG_ERROR, "[RetroAchievements] Failed to create WebSocket context"); + ctx->connected = false; + notify_connection_changed("Failed to create WebSocket context"); + return (void *)1; + } + + struct lws_client_connect_info ccinfo; + memset(&ccinfo, 0, sizeof(ccinfo)); + + ccinfo.context = ctx->context; + ccinfo.address = RETRO_ACHIEVEMENTS_WS_HOST; + ccinfo.port = RETRO_ACHIEVEMENTS_WS_PORT; + ccinfo.path = RA_WS_PATH; + ccinfo.host = ccinfo.address; + ccinfo.origin = ccinfo.address; + ccinfo.protocol = RA_PROTOCOL_NAME; + + obs_log(LOG_DEBUG, + "[RetroAchievements] Connecting to ws://%s:%d%s", + RETRO_ACHIEVEMENTS_WS_HOST, + RETRO_ACHIEVEMENTS_WS_PORT, + RA_WS_PATH); + + ctx->wsi = lws_client_connect_via_info(&ccinfo); + if (!ctx->wsi) { + obs_log(LOG_ERROR, "[RetroAchievements] Failed to initiate connection"); + ctx->connected = false; + notify_connection_changed("Failed to initiate connection"); + lws_context_destroy(ctx->context); + ctx->context = NULL; + return (void *)1; + } + + int retry_delay_ms = RA_INITIAL_RETRY_DELAY_MS; + + while (ctx->running && ctx->context) { + lws_service(ctx->context, RA_LOOP_CHECK_MS); + + /* Reconnect if the connection dropped while the monitor is still active. */ + if (ctx->running && !ctx->wsi && ctx->context) { + obs_log(LOG_INFO, + "[RetroAchievements] Connection lost, retrying in %d ms...", + retry_delay_ms); + + int iterations = retry_delay_ms / RA_LOOP_CHECK_MS; + for (int i = 0; i < iterations && ctx->running; i++) { + sleep_ms(RA_LOOP_CHECK_MS); + } + + obs_log(LOG_INFO, "[RetroAchievements] Reconnecting..."); + + ctx->wsi = lws_client_connect_via_info(&ccinfo); + + if (!ctx->wsi) { + obs_log(LOG_ERROR, "[RetroAchievements] Reconnect attempt failed"); + retry_delay_ms = retry_delay_ms * 2; + if (retry_delay_ms > RA_MAX_RETRY_DELAY_MS) { + retry_delay_ms = RA_MAX_RETRY_DELAY_MS; + } + } else { + obs_log(LOG_INFO, "[RetroAchievements] Connection reestablished"); + retry_delay_ms = RA_INITIAL_RETRY_DELAY_MS; + } + } + } + + if (ctx->context) { + lws_context_destroy(ctx->context); + ctx->context = NULL; + } + + obs_log(LOG_INFO, "[RetroAchievements] Monitor thread stopped"); + + return 0; +} + +/* ------------------------------------------------------------------------- + * Public API + * ---------------------------------------------------------------------- */ + +bool retro_achievements_monitor_start(void) +{ + bool succeeded = false; + + if (g_monitor_context) { + obs_log(LOG_INFO, "[RetroAchievements] Monitor already running"); + goto done; + } + + g_monitor_context = (monitor_context_t *)bzalloc(sizeof(monitor_context_t)); + if (!g_monitor_context) { + obs_log(LOG_ERROR, "[RetroAchievements] Failed to allocate context"); + goto error; + } + + g_monitor_context->running = true; + g_monitor_context->connected = false; + g_monitor_context->last_status_notified = false; + + g_monitor_context->rx_buffer_size = 4096; + g_monitor_context->rx_buffer = (char *)bmalloc(g_monitor_context->rx_buffer_size); + g_monitor_context->rx_buffer_used = 0; + + if (!g_monitor_context->rx_buffer) { + obs_log(LOG_ERROR, "[RetroAchievements] Failed to allocate receive buffer"); + goto error; + } + + if (pthread_create(&g_monitor_context->thread, NULL, monitor_thread, g_monitor_context) != 0) { + obs_log(LOG_ERROR, "[RetroAchievements] Failed to create background thread"); + goto error; + } + + obs_log(LOG_INFO, "[RetroAchievements] Monitor started"); + succeeded = true; + goto done; + +error: + bfree(g_monitor_context->rx_buffer); + bfree(g_monitor_context); + g_monitor_context = NULL; + +done: + return succeeded; +} + +void retro_achievements_monitor_stop(void) +{ + if (!g_monitor_context) { + return; + } + + obs_log(LOG_DEBUG, "[RetroAchievements] Stopping monitor"); + + g_monitor_context->running = false; + + if (g_monitor_context->context) { + lws_cancel_service(g_monitor_context->context); + } + + if (g_monitor_context->thread) { + pthread_join(g_monitor_context->thread, NULL); + } + + bfree(g_monitor_context->rx_buffer); + bfree(g_monitor_context); + g_monitor_context = NULL; + + obs_log(LOG_INFO, "[RetroAchievements] Monitor stopped"); +} + +bool retro_achievements_monitor_is_active(void) +{ + if (!g_monitor_context) { + return false; + } + + return g_monitor_context->running; +} + +void retro_achievements_subscribe_game_playing(on_retro_game_playing_t callback) +{ + if (!callback) { + return; + } + + game_playing_subscription_t *node = bzalloc(sizeof(game_playing_subscription_t)); + if (!node) { + obs_log(LOG_ERROR, "[RetroAchievements] Failed to allocate subscription node"); + return; + } + + node->callback = callback; + node->next = g_game_playing_subscriptions; + g_game_playing_subscriptions = node; +} + +void retro_achievements_subscribe_no_game(on_retro_no_game_t callback) +{ + if (!callback) { + return; + } + + no_game_subscription_t *node = bzalloc(sizeof(no_game_subscription_t)); + if (!node) { + obs_log(LOG_ERROR, "[RetroAchievements] Failed to allocate subscription node"); + return; + } + + node->callback = callback; + node->next = g_no_game_subscriptions; + g_no_game_subscriptions = node; +} + +void retro_achievements_subscribe_connection_changed(on_retro_connection_changed_t callback) +{ + if (!callback) { + return; + } + + connection_changed_subscription_t *node = bzalloc(sizeof(connection_changed_subscription_t)); + if (!node) { + obs_log(LOG_ERROR, "[RetroAchievements] Failed to allocate subscription node"); + return; + } + + node->callback = callback; + node->next = g_connection_changed_subscriptions; + g_connection_changed_subscriptions = node; +} + +#else /* !HAVE_LIBWEBSOCKETS */ + +/* ----------------------------------------------------------------- + * Stub implementations when libwebsockets is not available. + * ----------------------------------------------------------------- */ + +bool retro_achievements_monitor_start(void) +{ + obs_log(LOG_WARNING, "[RetroAchievements] Built without libwebsockets support – monitor unavailable"); + return false; +} + +void retro_achievements_monitor_stop(void) +{ +} + +bool retro_achievements_monitor_is_active(void) +{ + return false; +} + +void retro_achievements_subscribe_game_playing(on_retro_game_playing_t callback) +{ + UNUSED_PARAMETER(callback); +} + +void retro_achievements_subscribe_no_game(on_retro_no_game_t callback) +{ + UNUSED_PARAMETER(callback); +} + +void retro_achievements_subscribe_connection_changed(on_retro_connection_changed_t callback) +{ + UNUSED_PARAMETER(callback); +} + +#endif /* HAVE_LIBWEBSOCKETS */ diff --git a/src/retro-achievements/retro_achievements_monitor.h b/src/retro-achievements/retro_achievements_monitor.h new file mode 100644 index 0000000..ffcfb50 --- /dev/null +++ b/src/retro-achievements/retro_achievements_monitor.h @@ -0,0 +1,155 @@ +#pragma once + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @file retro_achievements_monitor.h + * @brief WebSocket client that connects to the RetroArch game-state server. + * + * This module connects to the RetroArch WebSocket server introduced in + * https://github.com/Octelys/retro-arch/pull/4. That server runs on + * 127.0.0.1 and sends a JSON game-state message whenever a game starts or + * stops. The same message is pushed to every newly connected client. + * + * Message shapes: + * - Game playing : { "type":"game_playing", "game_id":"...", + * "game_name":"...", "game_path":"...", + * "console_id":"...", "console_name":"...", + * "core_name":"...", "db_name":"..." } + * - No game : { "type":"no_game" } + * + * Threading: + * - Callbacks may be invoked from the monitor's background thread. + * - Callbacks must return quickly and must not perform OBS graphics + * operations directly (use obs_enter_graphics/obs_leave_graphics or + * schedule work on the OBS main thread). + * + * Ownership/lifetime: + * - Pointers passed to callbacks are owned by the monitor and remain valid + * only for the duration of the callback. Make a deep copy if you need to + * keep the data beyond the callback return. + */ + +/** Default TCP port used by the RetroArch WebSocket server. */ +#define RETRO_ACHIEVEMENTS_WS_PORT 55437 + +/** Default host (loopback only – the server never binds on a public interface). */ +#define RETRO_ACHIEVEMENTS_WS_HOST "127.0.0.1" + +/* ------------------------------------------------------------------------- + * Game-state record + * ---------------------------------------------------------------------- */ + +/** + * @brief Game information received from the RetroArch WebSocket server. + * + * Field sizes mirror those defined in the RetroArch game_state.h header so + * that messages always fit without truncation. + */ +typedef struct { + char game_id[64]; /**< CRC-32 checksum of the ROM as a hex string. */ + char game_name[512]; /**< Base filename of the ROM without extension. */ + char game_path[4096]; /**< Full filesystem path to the ROM. */ + char console_id[64]; /**< Short platform identifier (e.g. "snes"). */ + char console_name[256];/**< Human-readable platform name. */ + char core_name[256]; /**< Name of the libretro core running the game. */ + char db_name[512]; /**< Playlist/database name for the content. */ +} retro_game_t; + +/* ------------------------------------------------------------------------- + * Callback types + * ---------------------------------------------------------------------- */ + +/** + * @brief Invoked when a game is being played. + * + * @param game Non-NULL pointer to the current game information. + * Valid only for the duration of the callback. + */ +typedef void (*on_retro_game_playing_t)(const retro_game_t *game); + +/** + * @brief Invoked when no game is currently being played. + */ +typedef void (*on_retro_no_game_t)(void); + +/** + * @brief Invoked when the connection status changes. + * + * @param connected true if the connection was just established; + * false if it was lost. + * @param error_message Human-readable error description when @p connected is + * false; NULL when the disconnect was clean. + */ +typedef void (*on_retro_connection_changed_t)(bool connected, const char *error_message); + +/* ------------------------------------------------------------------------- + * Lifecycle + * ---------------------------------------------------------------------- */ + +/** + * @brief Start the RetroArch WebSocket monitor. + * + * Spawns a background thread that connects to the RetroArch WebSocket server + * and begins processing incoming game-state messages. Reconnection is + * attempted automatically with exponential back-off if the connection is + * lost. + * + * @return true if the monitor started successfully; false otherwise. + */ +bool retro_achievements_monitor_start(void); + +/** + * @brief Stop the RetroArch WebSocket monitor. + * + * Signals the background thread to exit, waits for it to finish, and + * releases all resources. Safe to call when the monitor is not running. + */ +void retro_achievements_monitor_stop(void); + +/** + * @brief Check whether the monitor is currently active. + * + * @return true if the background thread is running; false otherwise. + */ +bool retro_achievements_monitor_is_active(void); + +/* ------------------------------------------------------------------------- + * Subscriptions + * ---------------------------------------------------------------------- */ + +/** + * @brief Subscribe to game-playing events. + * + * Ignored if @p callback is NULL. + * + * @param callback Invoked whenever a "game_playing" message is received. + */ +void retro_achievements_subscribe_game_playing(on_retro_game_playing_t callback); + +/** + * @brief Subscribe to no-game events. + * + * Ignored if @p callback is NULL. + * + * @param callback Invoked whenever a "no_game" message is received. + */ +void retro_achievements_subscribe_no_game(on_retro_no_game_t callback); + +/** + * @brief Subscribe to connection-state change events. + * + * Ignored if @p callback is NULL. + * + * @param callback Invoked whenever the WebSocket connection is established or + * lost. + */ +void retro_achievements_subscribe_connection_changed(on_retro_connection_changed_t callback); + +#ifdef __cplusplus +} +#endif From 56bfe5447e1e38e01edeafa3a2ba726c2b1b7337 Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Sat, 21 Mar 2026 09:14:40 -0400 Subject: [PATCH 03/29] Refactor and streamline JSON parsing logic; adjust formatting for consistency across source and header files. --- src/oauth/xbox-live.c | 22 ++-- .../retro_achievements_monitor.c | 118 ++++++++---------- .../retro_achievements_monitor.h | 14 +-- src/xbox/xbox_client.c | 7 +- 4 files changed, 73 insertions(+), 88 deletions(-) diff --git a/src/oauth/xbox-live.c b/src/oauth/xbox-live.c index de3d7ab..66ee367 100644 --- a/src/oauth/xbox-live.c +++ b/src/oauth/xbox-live.c @@ -285,10 +285,11 @@ static void complete(authentication_ctx_t *ctx) { static bool retrieve_sisu_token(authentication_ctx_t *ctx) { bool succeeded = false; - uint8_t *signature = NULL; char *signature_b64 = NULL; char *sisu_token_response = NULL; + uint8_t *signature = NULL; char *proof_key = NULL; + cJSON *sisu_token_json = NULL; /* Creates the request */ proof_key = crypto_to_string(ctx->device->keys, false); @@ -361,7 +362,7 @@ static bool retrieve_sisu_token(authentication_ctx_t *ctx) { goto cleanup; } - cJSON *sisu_token_json = cJSON_Parse(sisu_token_response); + sisu_token_json = cJSON_Parse(sisu_token_response); if (!sisu_token_json) { ctx->result.error_message = "Unable retrieve a sisu token: unable to parse the JSON response"; @@ -509,6 +510,7 @@ static bool retrieve_device_token(struct authentication_ctx *ctx) { char *device_token_response = NULL; uint8_t *signature = NULL; char *proof_key = NULL; + cJSON *device_token_json = NULL; obs_log(LOG_INFO, "No device token cached found. Requesting a new device token"); @@ -582,7 +584,7 @@ static bool retrieve_device_token(struct authentication_ctx *ctx) { } /* Retrieves the device token */ - cJSON *device_token_json = cJSON_Parse(device_token_response); + device_token_json = cJSON_Parse(device_token_response); if (!device_token_json) { ctx->result.error_message = "Unable retrieve a device token: unable to parse the JSON response"; @@ -682,8 +684,9 @@ static bool retrieve_device_token(struct authentication_ctx *ctx) { */ static bool refresh_user_token(authentication_ctx_t *ctx) { - bool succeeded = false; - char *refresh_token_response = NULL; + bool succeeded = false; + char *refresh_token_response = NULL; + cJSON *refresh_token_json = NULL; /* URL-encode both refresh_token and scope to prevent injection attacks * and ensure proper form-urlencoded format. The refresh_token may contain @@ -724,7 +727,7 @@ static bool refresh_user_token(authentication_ctx_t *ctx) { obs_log(LOG_DEBUG, "Response received: %s", refresh_token_response); - cJSON *refresh_token_json = cJSON_Parse(refresh_token_response); + refresh_token_json = cJSON_Parse(refresh_token_response); if (!refresh_token_json) { ctx->result.error_message = "Unable to refresh the user token: unable to parse the JSON response"; @@ -951,8 +954,9 @@ static void poll_for_user_token(authentication_ctx_t *ctx) { */ static void *start_authentication_flow(void *param) { - char *scope_enc = NULL; - char *token_response = NULL; + char *scope_enc = NULL; + char *token_response = NULL; + cJSON *token_json = NULL; authentication_ctx_t *ctx = param; @@ -1009,7 +1013,7 @@ static void *start_authentication_flow(void *param) { obs_log(LOG_DEBUG, "Response received: %s", token_response); - cJSON *token_json = cJSON_Parse(token_response); + token_json = cJSON_Parse(token_response); if (!token_json) { obs_log(LOG_ERROR, "Failed to retrieve the user token: unable to parse the JSON response"); diff --git a/src/retro-achievements/retro_achievements_monitor.c b/src/retro-achievements/retro_achievements_monitor.c index 0436288..aa1ed6e 100644 --- a/src/retro-achievements/retro_achievements_monitor.c +++ b/src/retro-achievements/retro_achievements_monitor.c @@ -25,6 +25,7 @@ #include #include +#include "common/types.h" #include "external/cjson/cJSON.h" /* ------------------------------------------------------------------------- @@ -43,26 +44,30 @@ * ---------------------------------------------------------------------- */ typedef struct game_playing_subscription { - on_retro_game_playing_t callback; - struct game_playing_subscription *next; + on_retro_game_playing_t callback; + struct game_playing_subscription *next; } game_playing_subscription_t; static game_playing_subscription_t *g_game_playing_subscriptions = NULL; typedef struct no_game_subscription { - on_retro_no_game_t callback; - struct no_game_subscription *next; + on_retro_no_game_t callback; + struct no_game_subscription *next; } no_game_subscription_t; static no_game_subscription_t *g_no_game_subscriptions = NULL; typedef struct connection_changed_subscription { - on_retro_connection_changed_t callback; - struct connection_changed_subscription *next; + on_retro_connection_changed_t callback; + struct connection_changed_subscription *next; } connection_changed_subscription_t; static connection_changed_subscription_t *g_connection_changed_subscriptions = NULL; +static bool json_item_is_string(const cJSON *item) { + return item != NULL && (item->type & 0xFF) == cJSON_String && item->valuestring != NULL; +} + /* ------------------------------------------------------------------------- * Monitor context * ---------------------------------------------------------------------- */ @@ -101,8 +106,7 @@ static monitor_context_t *g_monitor_context = NULL; * Notification helpers * ---------------------------------------------------------------------- */ -static void notify_game_playing(const retro_game_t *game) -{ +static void notify_game_playing(const retro_game_t *game) { obs_log(LOG_INFO, "[RetroAchievements] Game playing: %s (%s)", game->game_name, game->game_id); game_playing_subscription_t *node = g_game_playing_subscriptions; @@ -112,8 +116,7 @@ static void notify_game_playing(const retro_game_t *game) } } -static void notify_no_game(void) -{ +static void notify_no_game(void) { obs_log(LOG_INFO, "[RetroAchievements] No game playing"); no_game_subscription_t *node = g_no_game_subscriptions; @@ -123,8 +126,7 @@ static void notify_no_game(void) } } -static void notify_connection_changed(const char *error_message) -{ +static void notify_connection_changed(const char *error_message) { if (!g_monitor_context) { return; } @@ -164,8 +166,7 @@ static void notify_connection_changed(const char *error_message) * * { "type": "no_game" } */ -static void on_message_received(const char *buffer) -{ +static void on_message_received(const char *buffer) { if (!buffer) { return; } @@ -179,7 +180,7 @@ static void on_message_received(const char *buffer) } cJSON *type_item = cJSON_GetObjectItemCaseSensitive(root, "type"); - if (!cJSON_IsString(type_item) || !type_item->valuestring) { + if (!json_item_is_string(type_item)) { obs_log(LOG_WARNING, "[RetroAchievements] Missing or invalid \"type\" field"); cJSON_Delete(root); return; @@ -192,31 +193,31 @@ static void on_message_received(const char *buffer) cJSON *field; field = cJSON_GetObjectItemCaseSensitive(root, "game_id"); - if (cJSON_IsString(field) && field->valuestring) + if (json_item_is_string(field)) strncpy(game.game_id, field->valuestring, sizeof(game.game_id) - 1); field = cJSON_GetObjectItemCaseSensitive(root, "game_name"); - if (cJSON_IsString(field) && field->valuestring) + if (json_item_is_string(field)) strncpy(game.game_name, field->valuestring, sizeof(game.game_name) - 1); field = cJSON_GetObjectItemCaseSensitive(root, "game_path"); - if (cJSON_IsString(field) && field->valuestring) + if (json_item_is_string(field)) strncpy(game.game_path, field->valuestring, sizeof(game.game_path) - 1); field = cJSON_GetObjectItemCaseSensitive(root, "console_id"); - if (cJSON_IsString(field) && field->valuestring) + if (json_item_is_string(field)) strncpy(game.console_id, field->valuestring, sizeof(game.console_id) - 1); field = cJSON_GetObjectItemCaseSensitive(root, "console_name"); - if (cJSON_IsString(field) && field->valuestring) + if (json_item_is_string(field)) strncpy(game.console_name, field->valuestring, sizeof(game.console_name) - 1); field = cJSON_GetObjectItemCaseSensitive(root, "core_name"); - if (cJSON_IsString(field) && field->valuestring) + if (json_item_is_string(field)) strncpy(game.core_name, field->valuestring, sizeof(game.core_name) - 1); field = cJSON_GetObjectItemCaseSensitive(root, "db_name"); - if (cJSON_IsString(field) && field->valuestring) + if (json_item_is_string(field)) strncpy(game.db_name, field->valuestring, sizeof(game.db_name) - 1); notify_game_playing(&game); @@ -235,21 +236,18 @@ static void on_message_received(const char *buffer) * Connection event handlers * ---------------------------------------------------------------------- */ -static void on_websocket_connected(void) -{ +static void on_websocket_connected(void) { g_monitor_context->connected = true; notify_connection_changed(NULL); } -static void on_websocket_disconnected(void) -{ +static void on_websocket_disconnected(void) { g_monitor_context->connected = false; g_monitor_context->wsi = NULL; notify_connection_changed(NULL); } -static void on_websocket_error(const char *in) -{ +static void on_websocket_error(const char *in) { g_monitor_context->connected = false; g_monitor_context->wsi = NULL; notify_connection_changed(in ? in : "Connection error"); @@ -259,9 +257,7 @@ static void on_websocket_error(const char *in) * libwebsockets callback * ---------------------------------------------------------------------- */ -static int websocket_callback(struct lws *wsi, enum lws_callback_reasons reason, void *user, void *in, - size_t len) -{ +static int websocket_callback(struct lws *wsi, enum lws_callback_reasons reason, void *user, void *in, size_t len) { UNUSED_PARAMETER(user); monitor_context_t *ctx = lws_context_user(lws_get_context(wsi)); @@ -284,8 +280,8 @@ static int websocket_callback(struct lws *wsi, enum lws_callback_reasons reason, { size_t needed = ctx->rx_buffer_used + len + 1; if (needed > ctx->rx_buffer_size) { - size_t new_size = needed * 2; - char *new_buffer = (char *)brealloc(ctx->rx_buffer, new_size); + size_t new_size = needed * 2; + char *new_buffer = (char *)brealloc(ctx->rx_buffer, new_size); if (!new_buffer) { obs_log(LOG_ERROR, "[RetroAchievements] Failed to grow receive buffer"); return -1; @@ -341,8 +337,7 @@ static const struct lws_protocols protocols[] = { * Background thread * ---------------------------------------------------------------------- */ -static void *monitor_thread(void *arg) -{ +static void *monitor_thread(void *arg) { monitor_context_t *ctx = arg; struct lws_context_creation_info info; @@ -394,9 +389,7 @@ static void *monitor_thread(void *arg) /* Reconnect if the connection dropped while the monitor is still active. */ if (ctx->running && !ctx->wsi && ctx->context) { - obs_log(LOG_INFO, - "[RetroAchievements] Connection lost, retrying in %d ms...", - retry_delay_ms); + obs_log(LOG_INFO, "[RetroAchievements] Connection lost, retrying in %d ms...", retry_delay_ms); int iterations = retry_delay_ms / RA_LOOP_CHECK_MS; for (int i = 0; i < iterations && ctx->running; i++) { @@ -434,8 +427,7 @@ static void *monitor_thread(void *arg) * Public API * ---------------------------------------------------------------------- */ -bool retro_achievements_monitor_start(void) -{ +bool retro_achievements_monitor_start(void) { bool succeeded = false; if (g_monitor_context) { @@ -449,8 +441,8 @@ bool retro_achievements_monitor_start(void) goto error; } - g_monitor_context->running = true; - g_monitor_context->connected = false; + g_monitor_context->running = true; + g_monitor_context->connected = false; g_monitor_context->last_status_notified = false; g_monitor_context->rx_buffer_size = 4096; @@ -480,8 +472,7 @@ bool retro_achievements_monitor_start(void) return succeeded; } -void retro_achievements_monitor_stop(void) -{ +void retro_achievements_monitor_stop(void) { if (!g_monitor_context) { return; } @@ -505,8 +496,7 @@ void retro_achievements_monitor_stop(void) obs_log(LOG_INFO, "[RetroAchievements] Monitor stopped"); } -bool retro_achievements_monitor_is_active(void) -{ +bool retro_achievements_monitor_is_active(void) { if (!g_monitor_context) { return false; } @@ -514,8 +504,7 @@ bool retro_achievements_monitor_is_active(void) return g_monitor_context->running; } -void retro_achievements_subscribe_game_playing(on_retro_game_playing_t callback) -{ +void retro_achievements_subscribe_game_playing(on_retro_game_playing_t callback) { if (!callback) { return; } @@ -531,8 +520,7 @@ void retro_achievements_subscribe_game_playing(on_retro_game_playing_t callback) g_game_playing_subscriptions = node; } -void retro_achievements_subscribe_no_game(on_retro_no_game_t callback) -{ +void retro_achievements_subscribe_no_game(on_retro_no_game_t callback) { if (!callback) { return; } @@ -543,13 +531,12 @@ void retro_achievements_subscribe_no_game(on_retro_no_game_t callback) return; } - node->callback = callback; - node->next = g_no_game_subscriptions; + node->callback = callback; + node->next = g_no_game_subscriptions; g_no_game_subscriptions = node; } -void retro_achievements_subscribe_connection_changed(on_retro_connection_changed_t callback) -{ +void retro_achievements_subscribe_connection_changed(on_retro_connection_changed_t callback) { if (!callback) { return; } @@ -560,8 +547,8 @@ void retro_achievements_subscribe_connection_changed(on_retro_connection_changed return; } - node->callback = callback; - node->next = g_connection_changed_subscriptions; + node->callback = callback; + node->next = g_connection_changed_subscriptions; g_connection_changed_subscriptions = node; } @@ -571,33 +558,26 @@ void retro_achievements_subscribe_connection_changed(on_retro_connection_changed * Stub implementations when libwebsockets is not available. * ----------------------------------------------------------------- */ -bool retro_achievements_monitor_start(void) -{ +bool retro_achievements_monitor_start(void) { obs_log(LOG_WARNING, "[RetroAchievements] Built without libwebsockets support – monitor unavailable"); return false; } -void retro_achievements_monitor_stop(void) -{ -} +void retro_achievements_monitor_stop(void) {} -bool retro_achievements_monitor_is_active(void) -{ +bool retro_achievements_monitor_is_active(void) { return false; } -void retro_achievements_subscribe_game_playing(on_retro_game_playing_t callback) -{ +void retro_achievements_subscribe_game_playing(on_retro_game_playing_t callback) { UNUSED_PARAMETER(callback); } -void retro_achievements_subscribe_no_game(on_retro_no_game_t callback) -{ +void retro_achievements_subscribe_no_game(on_retro_no_game_t callback) { UNUSED_PARAMETER(callback); } -void retro_achievements_subscribe_connection_changed(on_retro_connection_changed_t callback) -{ +void retro_achievements_subscribe_connection_changed(on_retro_connection_changed_t callback) { UNUSED_PARAMETER(callback); } diff --git a/src/retro-achievements/retro_achievements_monitor.h b/src/retro-achievements/retro_achievements_monitor.h index ffcfb50..705edf7 100644 --- a/src/retro-achievements/retro_achievements_monitor.h +++ b/src/retro-achievements/retro_achievements_monitor.h @@ -51,13 +51,13 @@ extern "C" { * that messages always fit without truncation. */ typedef struct { - char game_id[64]; /**< CRC-32 checksum of the ROM as a hex string. */ - char game_name[512]; /**< Base filename of the ROM without extension. */ - char game_path[4096]; /**< Full filesystem path to the ROM. */ - char console_id[64]; /**< Short platform identifier (e.g. "snes"). */ - char console_name[256];/**< Human-readable platform name. */ - char core_name[256]; /**< Name of the libretro core running the game. */ - char db_name[512]; /**< Playlist/database name for the content. */ + char game_id[64]; /**< CRC-32 checksum of the ROM as a hex string. */ + char game_name[512]; /**< Base filename of the ROM without extension. */ + char game_path[4096]; /**< Full filesystem path to the ROM. */ + char console_id[64]; /**< Short platform identifier (e.g. "snes"). */ + char console_name[256]; /**< Human-readable platform name. */ + char core_name[256]; /**< Name of the libretro core running the game. */ + char db_name[512]; /**< Playlist/database name for the content. */ } retro_game_t; /* ------------------------------------------------------------------------- diff --git a/src/xbox/xbox_client.c b/src/xbox/xbox_client.c index cd325e8..2541db3 100644 --- a/src/xbox/xbox_client.c +++ b/src/xbox/xbox_client.c @@ -382,6 +382,7 @@ game_t *xbox_get_current_game(void) { char *presence_response = NULL; game_t *game = NULL; + cJSON *presence_json = NULL; char headers[4096]; snprintf(headers, @@ -414,7 +415,7 @@ game_t *xbox_get_current_game(void) { obs_log(LOG_DEBUG, "Response: %s", presence_response); - cJSON *presence_json = cJSON_Parse(presence_response); + presence_json = cJSON_Parse(presence_response); if (!presence_json) { obs_log(LOG_ERROR, "Failed to fetch the current game: unable to parse the JSON response"); @@ -431,8 +432,8 @@ game_t *xbox_get_current_game(void) { goto cleanup; } - char current_game_title[128]; - char current_game_id[128]; + char current_game_title[128] = ""; + char current_game_id[128] = ""; for (int title_game_index = 0; title_game_index < 10; title_game_index++) { From 5c30d57393f0753ffad35f70cfe6103845122ff9 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 21 Mar 2026 13:23:46 +0000 Subject: [PATCH 04/29] Wire retro_achievements_monitor start/stop into OBS plugin lifecycle Co-authored-by: kzryzstof <38137839+kzryzstof@users.noreply.github.com> Agent-Logs-Url: https://github.com/Octelys/achievements-tracker-plugin/sessions/535a824b-b304-4402-8315-320169e150a6 --- src/main.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main.c b/src/main.c index b572da9..a8e2d5b 100644 --- a/src/main.c +++ b/src/main.c @@ -15,6 +15,7 @@ #include "sources/xbox/achievements_count.h" #include "drawing/image.h" #include "xbox/xbox_monitor.h" +#include "retro-achievements/retro_achievements_monitor.h" OBS_DECLARE_MODULE() OBS_MODULE_USE_DEFAULT_LOCALE(PLUGIN_NAME, "en-US") @@ -25,6 +26,7 @@ bool obs_module_load(void) { xbox_account_config_register(); xbox_monitoring_start(); + retro_achievements_monitor_start(); xbox_gamerpic_source_register(); xbox_game_cover_source_register(); @@ -60,6 +62,7 @@ void obs_module_unload(void) { xbox_gamerscore_source_cleanup(); xbox_gamertag_source_cleanup(); + retro_achievements_monitor_stop(); io_cleanup(); obs_log(LOG_INFO, "Plugin unloaded"); From 9c4971c468ee8a5c3675ba06c1baa19219f753ae Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 21 Mar 2026 15:00:39 +0000 Subject: [PATCH 05/29] Handle "achievements" WebSocket message from retro-arch#4 Co-authored-by: kzryzstof <38137839+kzryzstof@users.noreply.github.com> Agent-Logs-Url: https://github.com/Octelys/achievements-tracker-plugin/sessions/8ede68ae-61b0-41cc-872f-292c772bedb3 --- .../retro_achievements_monitor.c | 103 ++++++++++++++++++ .../retro_achievements_monitor.h | 51 ++++++++- 2 files changed, 149 insertions(+), 5 deletions(-) diff --git a/src/retro-achievements/retro_achievements_monitor.c b/src/retro-achievements/retro_achievements_monitor.c index aa1ed6e..044f0c6 100644 --- a/src/retro-achievements/retro_achievements_monitor.c +++ b/src/retro-achievements/retro_achievements_monitor.c @@ -64,6 +64,13 @@ typedef struct connection_changed_subscription { static connection_changed_subscription_t *g_connection_changed_subscriptions = NULL; +typedef struct achievements_subscription { + on_retro_achievements_t callback; + struct achievements_subscription *next; +} achievements_subscription_t; + +static achievements_subscription_t *g_achievements_subscriptions = NULL; + static bool json_item_is_string(const cJSON *item) { return item != NULL && (item->type & 0xFF) == cJSON_String && item->valuestring != NULL; } @@ -152,6 +159,16 @@ static void notify_connection_changed(const char *error_message) { g_monitor_context->last_status_notified = g_monitor_context->connected; } +static void notify_achievements(const retro_achievement_t *achievements, size_t count) { + obs_log(LOG_INFO, "[RetroAchievements] Achievements received: %zu", count); + + achievements_subscription_t *node = g_achievements_subscriptions; + while (node) { + node->callback(achievements, count); + node = node->next; + } +} + /* ------------------------------------------------------------------------- * Message parsing * ---------------------------------------------------------------------- */ @@ -165,6 +182,10 @@ static void notify_connection_changed(const char *error_message) { * "core_name": "...", "db_name": "..." } * * { "type": "no_game" } + * + * { "type": "achievements", + * "items": [ { "id": 1, "name": "...", "points": 5, + * "status": "unlocked", "badge_url": "..." }, ... ] } */ static void on_message_received(const char *buffer) { if (!buffer) { @@ -225,6 +246,68 @@ static void on_message_received(const char *buffer) { } else if (strcmp(type_item->valuestring, "no_game") == 0) { notify_no_game(); + } else if (strcmp(type_item->valuestring, "achievements") == 0) { + cJSON *items = cJSON_GetObjectItemCaseSensitive(root, "items"); + if (!cJSON_IsArray(items)) { + obs_log(LOG_WARNING, "[RetroAchievements] \"achievements\" message missing \"items\" array"); + cJSON_Delete(root); + return; + } + + int count = cJSON_GetArraySize(items); + if (count < 0) { + cJSON_Delete(root); + return; + } + + retro_achievement_t *achievements = NULL; + if (count > 0) { + if ((size_t)count > SIZE_MAX / sizeof(retro_achievement_t)) { + obs_log(LOG_ERROR, "[RetroAchievements] Achievement count too large"); + cJSON_Delete(root); + return; + } + achievements = (retro_achievement_t *)bzalloc(sizeof(retro_achievement_t) * (size_t)count); + if (!achievements) { + obs_log(LOG_ERROR, "[RetroAchievements] Failed to allocate achievements array"); + cJSON_Delete(root); + return; + } + } + + int idx = 0; + cJSON *item = NULL; + cJSON_ArrayForEach(item, items) { + if (idx >= count) + break; + retro_achievement_t *ach = &achievements[idx++]; + + cJSON *field; + + field = cJSON_GetObjectItemCaseSensitive(item, "id"); + if (field != NULL && cJSON_IsNumber(field)) + ach->id = (uint32_t)field->valuedouble; + + field = cJSON_GetObjectItemCaseSensitive(item, "name"); + if (json_item_is_string(field)) + strncpy(ach->name, field->valuestring, sizeof(ach->name) - 1); + + field = cJSON_GetObjectItemCaseSensitive(item, "points"); + if (field != NULL && cJSON_IsNumber(field)) + ach->points = (uint32_t)field->valuedouble; + + field = cJSON_GetObjectItemCaseSensitive(item, "status"); + if (json_item_is_string(field)) + strncpy(ach->status, field->valuestring, sizeof(ach->status) - 1); + + field = cJSON_GetObjectItemCaseSensitive(item, "badge_url"); + if (json_item_is_string(field)) + strncpy(ach->badge_url, field->valuestring, sizeof(ach->badge_url) - 1); + } + + notify_achievements(achievements, (size_t)count); + bfree(achievements); + } else { obs_log(LOG_DEBUG, "[RetroAchievements] Unknown message type: %s", type_item->valuestring); } @@ -552,6 +635,22 @@ void retro_achievements_subscribe_connection_changed(on_retro_connection_changed g_connection_changed_subscriptions = node; } +void retro_achievements_subscribe_achievements(on_retro_achievements_t callback) { + if (!callback) { + return; + } + + achievements_subscription_t *node = bzalloc(sizeof(achievements_subscription_t)); + if (!node) { + obs_log(LOG_ERROR, "[RetroAchievements] Failed to allocate subscription node"); + return; + } + + node->callback = callback; + node->next = g_achievements_subscriptions; + g_achievements_subscriptions = node; +} + #else /* !HAVE_LIBWEBSOCKETS */ /* ----------------------------------------------------------------- @@ -581,4 +680,8 @@ void retro_achievements_subscribe_connection_changed(on_retro_connection_changed UNUSED_PARAMETER(callback); } +void retro_achievements_subscribe_achievements(on_retro_achievements_t callback) { + UNUSED_PARAMETER(callback); +} + #endif /* HAVE_LIBWEBSOCKETS */ diff --git a/src/retro-achievements/retro_achievements_monitor.h b/src/retro-achievements/retro_achievements_monitor.h index 705edf7..debbbfb 100644 --- a/src/retro-achievements/retro_achievements_monitor.h +++ b/src/retro-achievements/retro_achievements_monitor.h @@ -1,6 +1,8 @@ #pragma once #include +#include +#include #ifdef __cplusplus extern "C" { @@ -16,11 +18,15 @@ extern "C" { * stops. The same message is pushed to every newly connected client. * * Message shapes: - * - Game playing : { "type":"game_playing", "game_id":"...", - * "game_name":"...", "game_path":"...", - * "console_id":"...", "console_name":"...", - * "core_name":"...", "db_name":"..." } - * - No game : { "type":"no_game" } + * - Game playing : { "type":"game_playing", "game_id":"...", + * "game_name":"...", "game_path":"...", + * "console_id":"...", "console_name":"...", + * "core_name":"...", "db_name":"..." } + * - No game : { "type":"no_game" } + * - Achievements : { "type":"achievements", + * "items":[{ "id":1, "name":"...", "points":5, + * "status":"unlocked", + * "badge_url":"..." }, ...] } * * Threading: * - Callbacks may be invoked from the monitor's background thread. @@ -60,6 +66,22 @@ typedef struct { char db_name[512]; /**< Playlist/database name for the content. */ } retro_game_t; +/* ------------------------------------------------------------------------- + * Achievement record + * ---------------------------------------------------------------------- */ + +/** + * @brief A single achievement entry received from the RetroArch WebSocket + * server inside an @c "achievements" message. + */ +typedef struct { + uint32_t id; /**< Numeric achievement ID. */ + char name[256]; /**< Achievement title. */ + uint32_t points; /**< Point value of the achievement. */ + char status[16]; /**< "unlocked" or "locked". */ + char badge_url[512]; /**< Unlocked badge image URL; empty when absent. */ +} retro_achievement_t; + /* ------------------------------------------------------------------------- * Callback types * ---------------------------------------------------------------------- */ @@ -87,6 +109,15 @@ typedef void (*on_retro_no_game_t)(void); */ typedef void (*on_retro_connection_changed_t)(bool connected, const char *error_message); +/** + * @brief Invoked when the achievements list is received. + * + * @param achievements Pointer to an array of @p count achievement records. + * Valid only for the duration of the callback. + * @param count Number of entries in @p achievements. + */ +typedef void (*on_retro_achievements_t)(const retro_achievement_t *achievements, size_t count); + /* ------------------------------------------------------------------------- * Lifecycle * ---------------------------------------------------------------------- */ @@ -150,6 +181,16 @@ void retro_achievements_subscribe_no_game(on_retro_no_game_t callback); */ void retro_achievements_subscribe_connection_changed(on_retro_connection_changed_t callback); +/** + * @brief Subscribe to achievements-list events. + * + * Ignored if @p callback is NULL. + * + * @param callback Invoked whenever an "achievements" message is received, + * passing the full list of achievement records. + */ +void retro_achievements_subscribe_achievements(on_retro_achievements_t callback); + #ifdef __cplusplus } #endif From 0f8d2a5a8a3ce9ee9a8c2b7681d1d9385240631e Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 21 Mar 2026 17:54:24 +0000 Subject: [PATCH 06/29] Handle "user"/"no_user" WebSocket messages from retro-arch#4 Co-authored-by: kzryzstof <38137839+kzryzstof@users.noreply.github.com> Agent-Logs-Url: https://github.com/Octelys/achievements-tracker-plugin/sessions/18b1240d-5837-4e48-b3ee-4e9d4bec7849 --- .../retro_achievements_monitor.c | 110 ++++++++++++++++++ .../retro_achievements_monitor.h | 53 +++++++++ 2 files changed, 163 insertions(+) diff --git a/src/retro-achievements/retro_achievements_monitor.c b/src/retro-achievements/retro_achievements_monitor.c index 044f0c6..93454e6 100644 --- a/src/retro-achievements/retro_achievements_monitor.c +++ b/src/retro-achievements/retro_achievements_monitor.c @@ -71,6 +71,20 @@ typedef struct achievements_subscription { static achievements_subscription_t *g_achievements_subscriptions = NULL; +typedef struct user_subscription { + on_retro_user_t callback; + struct user_subscription *next; +} user_subscription_t; + +static user_subscription_t *g_user_subscriptions = NULL; + +typedef struct no_user_subscription { + on_retro_no_user_t callback; + struct no_user_subscription *next; +} no_user_subscription_t; + +static no_user_subscription_t *g_no_user_subscriptions = NULL; + static bool json_item_is_string(const cJSON *item) { return item != NULL && (item->type & 0xFF) == cJSON_String && item->valuestring != NULL; } @@ -169,6 +183,26 @@ static void notify_achievements(const retro_achievement_t *achievements, size_t } } +static void notify_user(const retro_user_t *user) { + obs_log(LOG_INFO, "[RetroAchievements] User: %s (%s)", user->username, user->display_name); + + user_subscription_t *node = g_user_subscriptions; + while (node) { + node->callback(user); + node = node->next; + } +} + +static void notify_no_user(void) { + obs_log(LOG_INFO, "[RetroAchievements] No user logged in"); + + no_user_subscription_t *node = g_no_user_subscriptions; + while (node) { + node->callback(); + node = node->next; + } +} + /* ------------------------------------------------------------------------- * Message parsing * ---------------------------------------------------------------------- */ @@ -186,6 +220,11 @@ static void notify_achievements(const retro_achievement_t *achievements, size_t * { "type": "achievements", * "items": [ { "id": 1, "name": "...", "points": 5, * "status": "unlocked", "badge_url": "..." }, ... ] } + * + * { "type": "user", "username": "...", "display_name": "...", + * "score": N, "score_softcore": N, "avatar_url": "..." } + * + * { "type": "no_user" } */ static void on_message_received(const char *buffer) { if (!buffer) { @@ -308,6 +347,37 @@ static void on_message_received(const char *buffer) { notify_achievements(achievements, (size_t)count); bfree(achievements); + } else if (strcmp(type_item->valuestring, "user") == 0) { + retro_user_t user; + memset(&user, 0, sizeof(user)); + + cJSON *field; + + field = cJSON_GetObjectItemCaseSensitive(root, "username"); + if (json_item_is_string(field)) + strncpy(user.username, field->valuestring, sizeof(user.username) - 1); + + field = cJSON_GetObjectItemCaseSensitive(root, "display_name"); + if (json_item_is_string(field)) + strncpy(user.display_name, field->valuestring, sizeof(user.display_name) - 1); + + field = cJSON_GetObjectItemCaseSensitive(root, "score"); + if (field != NULL && cJSON_IsNumber(field)) + user.score = (uint32_t)field->valuedouble; + + field = cJSON_GetObjectItemCaseSensitive(root, "score_softcore"); + if (field != NULL && cJSON_IsNumber(field)) + user.score_softcore = (uint32_t)field->valuedouble; + + field = cJSON_GetObjectItemCaseSensitive(root, "avatar_url"); + if (json_item_is_string(field)) + strncpy(user.avatar_url, field->valuestring, sizeof(user.avatar_url) - 1); + + notify_user(&user); + + } else if (strcmp(type_item->valuestring, "no_user") == 0) { + notify_no_user(); + } else { obs_log(LOG_DEBUG, "[RetroAchievements] Unknown message type: %s", type_item->valuestring); } @@ -651,6 +721,38 @@ void retro_achievements_subscribe_achievements(on_retro_achievements_t callback) g_achievements_subscriptions = node; } +void retro_achievements_subscribe_user(on_retro_user_t callback) { + if (!callback) { + return; + } + + user_subscription_t *node = bzalloc(sizeof(user_subscription_t)); + if (!node) { + obs_log(LOG_ERROR, "[RetroAchievements] Failed to allocate subscription node"); + return; + } + + node->callback = callback; + node->next = g_user_subscriptions; + g_user_subscriptions = node; +} + +void retro_achievements_subscribe_no_user(on_retro_no_user_t callback) { + if (!callback) { + return; + } + + no_user_subscription_t *node = bzalloc(sizeof(no_user_subscription_t)); + if (!node) { + obs_log(LOG_ERROR, "[RetroAchievements] Failed to allocate subscription node"); + return; + } + + node->callback = callback; + node->next = g_no_user_subscriptions; + g_no_user_subscriptions = node; +} + #else /* !HAVE_LIBWEBSOCKETS */ /* ----------------------------------------------------------------- @@ -684,4 +786,12 @@ void retro_achievements_subscribe_achievements(on_retro_achievements_t callback) UNUSED_PARAMETER(callback); } +void retro_achievements_subscribe_user(on_retro_user_t callback) { + UNUSED_PARAMETER(callback); +} + +void retro_achievements_subscribe_no_user(on_retro_no_user_t callback) { + UNUSED_PARAMETER(callback); +} + #endif /* HAVE_LIBWEBSOCKETS */ diff --git a/src/retro-achievements/retro_achievements_monitor.h b/src/retro-achievements/retro_achievements_monitor.h index debbbfb..dec70d9 100644 --- a/src/retro-achievements/retro_achievements_monitor.h +++ b/src/retro-achievements/retro_achievements_monitor.h @@ -27,6 +27,10 @@ extern "C" { * "items":[{ "id":1, "name":"...", "points":5, * "status":"unlocked", * "badge_url":"..." }, ...] } + * - User : { "type":"user", "username":"...", + * "display_name":"...", "score":N, + * "score_softcore":N, "avatar_url":"..." } + * - No user : { "type":"no_user" } * * Threading: * - Callbacks may be invoked from the monitor's background thread. @@ -82,6 +86,22 @@ typedef struct { char badge_url[512]; /**< Unlocked badge image URL; empty when absent. */ } retro_achievement_t; +/* ------------------------------------------------------------------------- + * User record + * ---------------------------------------------------------------------- */ + +/** + * @brief Logged-in RetroAchievements user information received from the + * RetroArch WebSocket server inside a @c "user" message. + */ +typedef struct { + char username[128]; /**< RA account username. */ + char display_name[128]; /**< Display name (may differ from username). */ + uint32_t score; /**< Hardcore points earned. */ + uint32_t score_softcore; /**< Softcore points earned. */ + char avatar_url[512]; /**< URL of the user's avatar image. */ +} retro_user_t; + /* ------------------------------------------------------------------------- * Callback types * ---------------------------------------------------------------------- */ @@ -118,6 +138,19 @@ typedef void (*on_retro_connection_changed_t)(bool connected, const char *error_ */ typedef void (*on_retro_achievements_t)(const retro_achievement_t *achievements, size_t count); +/** + * @brief Invoked when the logged-in user information is received. + * + * @param user Non-NULL pointer to the current user information. + * Valid only for the duration of the callback. + */ +typedef void (*on_retro_user_t)(const retro_user_t *user); + +/** + * @brief Invoked when no user is logged in. + */ +typedef void (*on_retro_no_user_t)(void); + /* ------------------------------------------------------------------------- * Lifecycle * ---------------------------------------------------------------------- */ @@ -191,6 +224,26 @@ void retro_achievements_subscribe_connection_changed(on_retro_connection_changed */ void retro_achievements_subscribe_achievements(on_retro_achievements_t callback); +/** + * @brief Subscribe to user-info events. + * + * Ignored if @p callback is NULL. + * + * @param callback Invoked whenever a "user" message is received with the + * current logged-in user's information. + */ +void retro_achievements_subscribe_user(on_retro_user_t callback); + +/** + * @brief Subscribe to no-user events. + * + * Ignored if @p callback is NULL. + * + * @param callback Invoked whenever a "no_user" message is received, + * indicating that no user is currently logged in. + */ +void retro_achievements_subscribe_no_user(on_retro_no_user_t callback); + #ifdef __cplusplus } #endif From 43081732cc692bffe3dc3ad30f9a2930c637898c Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Sat, 21 Mar 2026 13:55:43 -0400 Subject: [PATCH 07/29] Refactor JSON parsing for achievements; replace `cJSON` type checks with bitwise operations, improve logging, and streamline iteration. --- .../retro_achievements_monitor.c | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/retro-achievements/retro_achievements_monitor.c b/src/retro-achievements/retro_achievements_monitor.c index 044f0c6..78aed38 100644 --- a/src/retro-achievements/retro_achievements_monitor.c +++ b/src/retro-achievements/retro_achievements_monitor.c @@ -248,7 +248,7 @@ static void on_message_received(const char *buffer) { } else if (strcmp(type_item->valuestring, "achievements") == 0) { cJSON *items = cJSON_GetObjectItemCaseSensitive(root, "items"); - if (!cJSON_IsArray(items)) { + if (!items || !(items->type & cJSON_Array)) { obs_log(LOG_WARNING, "[RetroAchievements] \"achievements\" message missing \"items\" array"); cJSON_Delete(root); return; @@ -275,17 +275,15 @@ static void on_message_received(const char *buffer) { } } - int idx = 0; + int idx = 0; cJSON *item = NULL; - cJSON_ArrayForEach(item, items) { - if (idx >= count) - break; + for (item = items->child; item != NULL && idx < count; item = item->next) { retro_achievement_t *ach = &achievements[idx++]; cJSON *field; field = cJSON_GetObjectItemCaseSensitive(item, "id"); - if (field != NULL && cJSON_IsNumber(field)) + if (field != NULL && (field->type & cJSON_Number)) ach->id = (uint32_t)field->valuedouble; field = cJSON_GetObjectItemCaseSensitive(item, "name"); @@ -293,7 +291,7 @@ static void on_message_received(const char *buffer) { strncpy(ach->name, field->valuestring, sizeof(ach->name) - 1); field = cJSON_GetObjectItemCaseSensitive(item, "points"); - if (field != NULL && cJSON_IsNumber(field)) + if (field != NULL && (field->type & cJSON_Number)) ach->points = (uint32_t)field->valuedouble; field = cJSON_GetObjectItemCaseSensitive(item, "status"); @@ -303,6 +301,8 @@ static void on_message_received(const char *buffer) { field = cJSON_GetObjectItemCaseSensitive(item, "badge_url"); if (json_item_is_string(field)) strncpy(ach->badge_url, field->valuestring, sizeof(ach->badge_url) - 1); + + obs_log(LOG_INFO, "[RetroAchievements] Achievement: %s (%u points)", ach->name, ach->points); } notify_achievements(achievements, (size_t)count); @@ -646,9 +646,9 @@ void retro_achievements_subscribe_achievements(on_retro_achievements_t callback) return; } - node->callback = callback; - node->next = g_achievements_subscriptions; - g_achievements_subscriptions = node; + node->callback = callback; + node->next = g_achievements_subscriptions; + g_achievements_subscriptions = node; } #else /* !HAVE_LIBWEBSOCKETS */ From a7621f6a3f57cd58387e94294af45ac23014acec Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Sat, 21 Mar 2026 14:37:30 -0400 Subject: [PATCH 08/29] Refactor and reorganize Xbox and RetroAchievements integrations; migrate related files to `integrations` directory, introduce `identity` abstraction, and clean up includes. --- CMakeLists.txt | 19 ++-- src/common/identity.c | 83 ++++++++++++++ src/common/identity.h | 106 ++++++++++++++++++ src/common/types.h | 1 + .../retro_achievements_monitor.c | 4 +- .../retro_achievements_monitor.h | 8 +- src/{ => integrations}/xbox/account_manager.c | 6 +- src/{ => integrations}/xbox/account_manager.h | 0 src/{ => integrations/xbox}/oauth/util.c | 3 +- src/{ => integrations/xbox}/oauth/util.h | 0 src/{ => integrations/xbox}/oauth/xbox-live.c | 2 +- src/{ => integrations/xbox}/oauth/xbox-live.h | 0 src/{ => integrations}/xbox/xbox_client.c | 2 +- src/{ => integrations}/xbox/xbox_client.h | 0 src/{ => integrations}/xbox/xbox_monitor.c | 2 +- src/{ => integrations}/xbox/xbox_monitor.h | 0 src/{ => integrations}/xbox/xbox_session.c | 4 +- src/{ => integrations}/xbox/xbox_session.h | 0 src/main.c | 4 +- src/sources/common/achievement_cycle.c | 2 +- src/sources/xbox/achievement_icon.c | 2 +- src/sources/xbox/achievements_count.c | 4 +- src/sources/xbox/game_cover.c | 6 +- src/sources/xbox/gamerpic.c | 6 +- src/sources/xbox/gamerscore.c | 4 +- src/sources/xbox/gamertag.c | 4 +- src/ui/xbox_account_config.cpp | 2 +- test/test_xbox_session.c | 2 +- 28 files changed, 234 insertions(+), 42 deletions(-) create mode 100644 src/common/identity.c create mode 100644 src/common/identity.h rename src/{ => integrations}/retro-achievements/retro_achievements_monitor.c (99%) rename src/{ => integrations}/retro-achievements/retro_achievements_monitor.h (96%) rename src/{ => integrations}/xbox/account_manager.c (89%) rename src/{ => integrations}/xbox/account_manager.h (100%) rename src/{ => integrations/xbox}/oauth/util.c (99%) rename src/{ => integrations/xbox}/oauth/util.h (100%) rename src/{ => integrations/xbox}/oauth/xbox-live.c (99%) rename src/{ => integrations/xbox}/oauth/xbox-live.h (100%) rename src/{ => integrations}/xbox/xbox_client.c (99%) rename src/{ => integrations}/xbox/xbox_client.h (100%) rename src/{ => integrations}/xbox/xbox_monitor.c (99%) rename src/{ => integrations}/xbox/xbox_monitor.h (100%) rename src/{ => integrations}/xbox/xbox_session.c (99%) rename src/{ => integrations}/xbox/xbox_session.h (100%) diff --git a/CMakeLists.txt b/CMakeLists.txt index 4571de7..af8a9c6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -494,13 +494,13 @@ target_sources( src/net/browser/browser.c src/net/http/http.c src/net/json/json.c - src/oauth/util.c - src/oauth/xbox-live.c - src/xbox/account_manager.c - src/xbox/xbox_session.c - src/xbox/xbox_client.c - src/xbox/xbox_monitor.c - src/retro-achievements/retro_achievements_monitor.c + src/integrations/xbox/oauth/util.c + src/integrations/xbox/oauth/xbox-live.c + src/integrations/xbox/account_manager.c + src/integrations/xbox/xbox_session.c + src/integrations/xbox/xbox_client.c + src/integrations/xbox/xbox_monitor.c + src/integrations/retro-achievements/retro_achievements_monitor.c src/ui/xbox_account_config.cpp src/io/state.c src/io/cache.c @@ -514,6 +514,7 @@ target_sources( src/common/device.c src/common/game.c src/common/gamerscore.c + src/common/identity.c src/common/token.c src/common/unlocked_achievement.c src/common/xbox_identity.c @@ -729,7 +730,7 @@ if(BUILD_TESTING) test_xbox_session test/test_xbox_session.c ${unity_SOURCE_DIR}/src/unity.c - src/xbox/xbox_session.c + src/integrations/xbox/xbox_session.c src/common/achievement.c src/common/achievement_progress.c src/common/game.c @@ -769,7 +770,7 @@ if(BUILD_TESTING) test_types test/test_types.c ${unity_SOURCE_DIR}/src/unity.c - src/xbox/xbox_session.c + src/integrations/xbox/xbox_session.c src/common/achievement.c src/common/achievement_progress.c src/common/game.c diff --git a/src/common/identity.c b/src/common/identity.c new file mode 100644 index 0000000..f239360 --- /dev/null +++ b/src/common/identity.c @@ -0,0 +1,83 @@ +#include "common/identity.h" + +#include "common/gamerscore.h" +#include "common/memory.h" + +#include + +/* -------------------------------------------------------------------------- + * Internal helper + * ----------------------------------------------------------------------- */ + +/** + * Allocates and zero-initialises a new identity_t. + */ +static identity_t *alloc_identity(void) { + return bzalloc(sizeof(identity_t)); +} + +/* -------------------------------------------------------------------------- + * Public API + * ----------------------------------------------------------------------- */ + +identity_t *copy_identity(const identity_t *identity) { + if (!identity) { + return NULL; + } + + identity_t *copy = alloc_identity(); + copy->name = identity->name ? bstrdup(identity->name) : NULL; + copy->avatar_url = identity->avatar_url ? bstrdup(identity->avatar_url) : NULL; + copy->score = identity->score; + + return copy; +} + +identity_t *identity_from_xbox(const xbox_identity_t *xbox_identity, const gamerscore_t *gamerscore) { + if (!xbox_identity) { + return NULL; + } + + identity_t *identity = alloc_identity(); + + identity->name = xbox_identity->gamertag ? bstrdup(xbox_identity->gamertag) : NULL; + identity->avatar_url = NULL; /* Xbox identity does not carry an avatar URL. */ + + int computed = gamerscore_compute(gamerscore); + identity->score = (computed > 0) ? (uint32_t)computed : 0; + + return identity; +} + +identity_t *identity_from_retro(const retro_user_t *user) { + if (!user) { + return NULL; + } + + identity_t *identity = alloc_identity(); + + /* Prefer display_name; fall back to username when it is empty. */ + const char *name = (user->display_name[0] != '\0') ? user->display_name : user->username; + identity->name = bstrdup(name); + + identity->avatar_url = (user->avatar_url[0] != '\0') ? bstrdup(user->avatar_url) : NULL; + + /* Pick the higher of hardcore and softcore scores. */ + identity->score = (user->score >= user->score_softcore) ? user->score : user->score_softcore; + + return identity; +} + +void free_identity_t(identity_t **identity) { + if (!identity || !*identity) { + return; + } + + identity_t *current = *identity; + + free_memory((void **)¤t->name); + free_memory((void **)¤t->avatar_url); + + bfree(current); + *identity = NULL; +} diff --git a/src/common/identity.h b/src/common/identity.h new file mode 100644 index 0000000..1a284a2 --- /dev/null +++ b/src/common/identity.h @@ -0,0 +1,106 @@ +#pragma once + +#include "common/gamerscore.h" +#include "common/xbox_identity.h" +#include "integrations/retro-achievements/retro_achievements_monitor.h" + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @file identity.h + * @brief Source-agnostic user identity record. + * + * @c identity_t is an intermediary type that normalises user information from + * both Xbox Live and RetroAchievements into a single, uniform representation. + * Consumers that display user information (name, avatar, score) should depend + * on this type rather than on the source-specific types. + * + * Ownership: + * - Instances returned by @ref copy_identity, @ref identity_from_xbox, or + * @ref identity_from_retro are owned by the caller and must be freed with + * @ref free_identity_t. + * - All string fields are heap-allocated (via @c bstrdup / @c bzalloc) and + * freed by @ref free_identity_t. + */ +typedef struct identity { + /** + * Display name shown to the user. + * + * - Xbox: the gamertag from @c xbox_identity_t. + * - Retro: the @c display_name field from @c retro_user_t (falls back to + * @c username when @c display_name is empty). + */ + char *name; + + /** + * URL of the user's avatar/icon image, or NULL when unavailable. + * + * - Xbox: not provided by @c xbox_identity_t; set to NULL. + * - Retro: the @c avatar_url field from @c retro_user_t. + */ + char *avatar_url; + + /** + * Aggregate score / points. + * + * - Xbox: total gamerscore computed via @ref gamerscore_compute from the + * @c gamerscore_t passed to @ref identity_from_xbox. + * Pass NULL for @p gamerscore to store 0. + * - Retro: @c max(score, score_softcore) from @c retro_user_t, choosing + * the higher of the two values. + */ + uint32_t score; +} identity_t; + +/** + * @brief Creates a deep copy of an identity. + * + * @param identity Source identity to copy (may be NULL). + * + * @return Newly allocated copy, or NULL if @p identity is NULL. + * The caller owns the returned object and must free it with + * @ref free_identity_t. + */ +identity_t *copy_identity(const identity_t *identity); + +/** + * @brief Builds an @c identity_t from an Xbox identity and its gamerscore. + * + * @param xbox_identity Xbox identity supplying the display name. Must not be + * NULL. + * @param gamerscore Gamerscore used to populate @c score. May be NULL, in + * which case @c score is set to 0. + * + * @return Newly allocated @c identity_t. The caller owns it and must free it + * with @ref free_identity_t. Returns NULL if @p xbox_identity is NULL. + */ +identity_t *identity_from_xbox(const xbox_identity_t *xbox_identity, const gamerscore_t *gamerscore); + +/** + * @brief Builds an @c identity_t from a RetroAchievements user record. + * + * The score is set to @c max(user->score, user->score_softcore). + * + * @param user RetroAchievements user record. Must not be NULL. + * + * @return Newly allocated @c identity_t. The caller owns it and must free it + * with @ref free_identity_t. Returns NULL if @p user is NULL. + */ +identity_t *identity_from_retro(const retro_user_t *user); + +/** + * @brief Frees an identity and sets the caller's pointer to NULL. + * + * Safe to call with NULL or with @c *identity == NULL. + * + * @param[in,out] identity Address of the @c identity_t pointer to free. + */ +void free_identity_t(identity_t **identity); + +#ifdef __cplusplus +} +#endif diff --git a/src/common/types.h b/src/common/types.h index cf8be4c..c6cbb7f 100644 --- a/src/common/types.h +++ b/src/common/types.h @@ -17,6 +17,7 @@ #include "common/device.h" #include "common/game.h" #include "common/gamerscore.h" +#include "common/identity.h" #include "common/token.h" #include "common/unlocked_achievement.h" #include "common/xbox_identity.h" diff --git a/src/retro-achievements/retro_achievements_monitor.c b/src/integrations/retro-achievements/retro_achievements_monitor.c similarity index 99% rename from src/retro-achievements/retro_achievements_monitor.c rename to src/integrations/retro-achievements/retro_achievements_monitor.c index e64ff1f..f295af8 100644 --- a/src/retro-achievements/retro_achievements_monitor.c +++ b/src/integrations/retro-achievements/retro_achievements_monitor.c @@ -362,11 +362,11 @@ static void on_message_received(const char *buffer) { strncpy(user.display_name, field->valuestring, sizeof(user.display_name) - 1); field = cJSON_GetObjectItemCaseSensitive(root, "score"); - if (field != NULL && cJSON_IsNumber(field)) + if (field != NULL && (field->type & cJSON_Number)) user.score = (uint32_t)field->valuedouble; field = cJSON_GetObjectItemCaseSensitive(root, "score_softcore"); - if (field != NULL && cJSON_IsNumber(field)) + if (field != NULL && (field->type & cJSON_Number)) user.score_softcore = (uint32_t)field->valuedouble; field = cJSON_GetObjectItemCaseSensitive(root, "avatar_url"); diff --git a/src/retro-achievements/retro_achievements_monitor.h b/src/integrations/retro-achievements/retro_achievements_monitor.h similarity index 96% rename from src/retro-achievements/retro_achievements_monitor.h rename to src/integrations/retro-achievements/retro_achievements_monitor.h index dec70d9..b96e1f5 100644 --- a/src/retro-achievements/retro_achievements_monitor.h +++ b/src/integrations/retro-achievements/retro_achievements_monitor.h @@ -79,10 +79,10 @@ typedef struct { * server inside an @c "achievements" message. */ typedef struct { - uint32_t id; /**< Numeric achievement ID. */ - char name[256]; /**< Achievement title. */ - uint32_t points; /**< Point value of the achievement. */ - char status[16]; /**< "unlocked" or "locked". */ + uint32_t id; /**< Numeric achievement ID. */ + char name[256]; /**< Achievement title. */ + uint32_t points; /**< Point value of the achievement. */ + char status[16]; /**< "unlocked" or "locked". */ char badge_url[512]; /**< Unlocked badge image URL; empty when absent. */ } retro_achievement_t; diff --git a/src/xbox/account_manager.c b/src/integrations/xbox/account_manager.c similarity index 89% rename from src/xbox/account_manager.c rename to src/integrations/xbox/account_manager.c index 5988318..98c6365 100644 --- a/src/xbox/account_manager.c +++ b/src/integrations/xbox/account_manager.c @@ -1,4 +1,4 @@ -#include "xbox/account_manager.h" +#include "integrations/xbox/account_manager.h" #include #include @@ -6,8 +6,8 @@ #include #include "io/state.h" -#include "oauth/xbox-live.h" -#include "xbox/xbox_monitor.h" +#include "integrations/xbox/oauth/xbox-live.h" +#include "integrations/xbox/xbox_monitor.h" static void on_xbox_signed_in(void *data) { UNUSED_PARAMETER(data); diff --git a/src/xbox/account_manager.h b/src/integrations/xbox/account_manager.h similarity index 100% rename from src/xbox/account_manager.h rename to src/integrations/xbox/account_manager.h diff --git a/src/oauth/util.c b/src/integrations/xbox/oauth/util.c similarity index 99% rename from src/oauth/util.c rename to src/integrations/xbox/oauth/util.c index 4e382c1..7dafacd 100644 --- a/src/oauth/util.c +++ b/src/integrations/xbox/oauth/util.c @@ -1,4 +1,5 @@ -#include "oauth/util.h" + +#include "integrations/xbox/oauth/util.h" /** * @file util.c diff --git a/src/oauth/util.h b/src/integrations/xbox/oauth/util.h similarity index 100% rename from src/oauth/util.h rename to src/integrations/xbox/oauth/util.h diff --git a/src/oauth/xbox-live.c b/src/integrations/xbox/oauth/xbox-live.c similarity index 99% rename from src/oauth/xbox-live.c rename to src/integrations/xbox/oauth/xbox-live.c index 66ee367..64b661e 100644 --- a/src/oauth/xbox-live.c +++ b/src/integrations/xbox/oauth/xbox-live.c @@ -1,4 +1,4 @@ -#include "oauth/xbox-live.h" +#include "integrations/xbox/oauth/xbox-live.h" /** * @file xbox-live.c diff --git a/src/oauth/xbox-live.h b/src/integrations/xbox/oauth/xbox-live.h similarity index 100% rename from src/oauth/xbox-live.h rename to src/integrations/xbox/oauth/xbox-live.h diff --git a/src/xbox/xbox_client.c b/src/integrations/xbox/xbox_client.c similarity index 99% rename from src/xbox/xbox_client.c rename to src/integrations/xbox/xbox_client.c index 2541db3..e02bdbc 100644 --- a/src/xbox/xbox_client.c +++ b/src/integrations/xbox/xbox_client.c @@ -27,7 +27,7 @@ #include "io/state.h" #include "net/http/http.h" #include "net/json/json.h" -#include "oauth/xbox-live.h" +#include "integrations/xbox/oauth/xbox-live.h" #include "text/parsers.h" #include diff --git a/src/xbox/xbox_client.h b/src/integrations/xbox/xbox_client.h similarity index 100% rename from src/xbox/xbox_client.h rename to src/integrations/xbox/xbox_client.h diff --git a/src/xbox/xbox_monitor.c b/src/integrations/xbox/xbox_monitor.c similarity index 99% rename from src/xbox/xbox_monitor.c rename to src/integrations/xbox/xbox_monitor.c index 85a71fa..fda5ce8 100644 --- a/src/xbox/xbox_monitor.c +++ b/src/integrations/xbox/xbox_monitor.c @@ -41,7 +41,7 @@ #include "external/cjson/cJSON.h" #include "io/state.h" -#include "oauth/xbox-live.h" +#include "integrations/xbox/oauth/xbox-live.h" #include diff --git a/src/xbox/xbox_monitor.h b/src/integrations/xbox/xbox_monitor.h similarity index 100% rename from src/xbox/xbox_monitor.h rename to src/integrations/xbox/xbox_monitor.h diff --git a/src/xbox/xbox_session.c b/src/integrations/xbox/xbox_session.c similarity index 99% rename from src/xbox/xbox_session.c rename to src/integrations/xbox/xbox_session.c index f4d33ff..e0dd259 100644 --- a/src/xbox/xbox_session.c +++ b/src/integrations/xbox/xbox_session.c @@ -1,11 +1,11 @@ -#include "xbox/xbox_session.h" +#include "integrations/xbox/xbox_session.h" #include #include "common/types.h" #include "io/cache.h" #include "util/bmem.h" -#include "xbox/xbox_client.h" +#include "integrations/xbox/xbox_client.h" #include #include diff --git a/src/xbox/xbox_session.h b/src/integrations/xbox/xbox_session.h similarity index 100% rename from src/xbox/xbox_session.h rename to src/integrations/xbox/xbox_session.h diff --git a/src/main.c b/src/main.c index a8e2d5b..2999dda 100644 --- a/src/main.c +++ b/src/main.c @@ -14,8 +14,8 @@ #include "sources/xbox/achievement_icon.h" #include "sources/xbox/achievements_count.h" #include "drawing/image.h" -#include "xbox/xbox_monitor.h" -#include "retro-achievements/retro_achievements_monitor.h" +#include "integrations/xbox/xbox_monitor.h" +#include "integrations/retro-achievements/retro_achievements_monitor.h" OBS_DECLARE_MODULE() OBS_MODULE_USE_DEFAULT_LOCALE(PLUGIN_NAME, "en-US") diff --git a/src/sources/common/achievement_cycle.c b/src/sources/common/achievement_cycle.c index 554e1b1..4020a1f 100644 --- a/src/sources/common/achievement_cycle.c +++ b/src/sources/common/achievement_cycle.c @@ -4,7 +4,7 @@ #include #include "common/achievement.h" -#include "xbox/xbox_monitor.h" +#include "integrations/xbox/xbox_monitor.h" /** Duration to show the last unlocked achievement (seconds). */ #define LAST_UNLOCKED_DISPLAY_DURATION 45.0f diff --git a/src/sources/xbox/achievement_icon.c b/src/sources/xbox/achievement_icon.c index 2cb0354..d896f45 100644 --- a/src/sources/xbox/achievement_icon.c +++ b/src/sources/xbox/achievement_icon.c @@ -5,7 +5,7 @@ #include #include "common/achievement.h" -#include "oauth/xbox-live.h" +#include "integrations/xbox/oauth/xbox-live.h" #include "sources/common/achievement_cycle.h" #include "sources/common/image_source.h" diff --git a/src/sources/xbox/achievements_count.c b/src/sources/xbox/achievements_count.c index da9e61f..9aebf94 100644 --- a/src/sources/xbox/achievements_count.c +++ b/src/sources/xbox/achievements_count.c @@ -27,8 +27,8 @@ #include "common/achievement.h" #include "io/state.h" -#include "oauth/xbox-live.h" -#include "xbox/xbox_monitor.h" +#include "integrations/xbox/oauth/xbox-live.h" +#include "integrations/xbox/xbox_monitor.h" #define NO_FLIP 0 diff --git a/src/sources/xbox/game_cover.c b/src/sources/xbox/game_cover.c index ad44d26..54d2af2 100644 --- a/src/sources/xbox/game_cover.c +++ b/src/sources/xbox/game_cover.c @@ -21,10 +21,10 @@ #include #include -#include "oauth/xbox-live.h" +#include "integrations/xbox/oauth/xbox-live.h" #include "sources/common/image_source.h" -#include "xbox/xbox_client.h" -#include "xbox/xbox_monitor.h" +#include "integrations/xbox/xbox_client.h" +#include "integrations/xbox/xbox_monitor.h" /** * @brief Global singleton cover cache. diff --git a/src/sources/xbox/gamerpic.c b/src/sources/xbox/gamerpic.c index ef360c7..4ebd212 100644 --- a/src/sources/xbox/gamerpic.c +++ b/src/sources/xbox/gamerpic.c @@ -3,11 +3,11 @@ #include #include -#include "oauth/xbox-live.h" +#include "integrations/xbox/oauth/xbox-live.h" #include "sources/common/image_source.h" #include "common/memory.h" -#include "xbox/xbox_client.h" -#include "xbox/xbox_monitor.h" +#include "integrations/xbox/xbox_client.h" +#include "integrations/xbox/xbox_monitor.h" /** * @brief Global singleton gamerpic cache. diff --git a/src/sources/xbox/gamerscore.c b/src/sources/xbox/gamerscore.c index 9a3759a..96e2aeb 100644 --- a/src/sources/xbox/gamerscore.c +++ b/src/sources/xbox/gamerscore.c @@ -28,8 +28,8 @@ #include #include "io/state.h" -#include "oauth/xbox-live.h" -#include "xbox/xbox_monitor.h" +#include "integrations/xbox/oauth/xbox-live.h" +#include "integrations/xbox/xbox_monitor.h" #define NO_FLIP 0 diff --git a/src/sources/xbox/gamertag.c b/src/sources/xbox/gamertag.c index f4f1291..62fb639 100644 --- a/src/sources/xbox/gamertag.c +++ b/src/sources/xbox/gamertag.c @@ -14,8 +14,8 @@ #include #include "io/state.h" -#include "oauth/xbox-live.h" -#include "xbox/xbox_monitor.h" +#include "integrations/xbox/oauth/xbox-live.h" +#include "integrations/xbox/xbox_monitor.h" /** Current gamertag text to display. */ static char g_gamertag[256]; diff --git a/src/ui/xbox_account_config.cpp b/src/ui/xbox_account_config.cpp index 98c4a6e..a4c15dc 100644 --- a/src/ui/xbox_account_config.cpp +++ b/src/ui/xbox_account_config.cpp @@ -18,7 +18,7 @@ #include extern "C" { -#include "xbox/account_manager.h" +#include "integrations/xbox/account_manager.h" } namespace { diff --git a/test/test_xbox_session.c b/test/test_xbox_session.c index 95895c8..086ca34 100644 --- a/test/test_xbox_session.c +++ b/test/test_xbox_session.c @@ -2,7 +2,7 @@ #include "stubs/xbox/xbox_client.h" #include "util/bmem.h" #include "common/types.h" -#include "xbox/xbox_session.h" +#include "integrations/xbox/xbox_session.h" #define OUTER_WORLD_2_ID "outer_worlds_2_id" #define FALLOUT_4_ID "fallout_4_id" From 77974a46253fab27b287b79473d967c14149fc4b Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Sat, 21 Mar 2026 15:57:49 -0400 Subject: [PATCH 09/29] Introduce unified monitoring service for Xbox and RetroAchievements integrations, centralize event handling, and simplify source dependencies. --- CMakeLists.txt | 1 + src/common/game.c | 8 +- src/common/game.h | 2 + src/common/identity.c | 5 +- src/common/identity.h | 13 + src/integrations/monitoring_service.c | 231 ++++++++++++++++++ src/integrations/monitoring_service.h | 87 +++++++ .../retro_achievements_monitor.c | 35 +++ .../retro_achievements_monitor.h | 13 +- src/integrations/xbox/xbox_client.c | 8 +- src/integrations/xbox/xbox_monitor.c | 14 ++ src/main.c | 8 +- src/sources/xbox/gamerpic.c | 67 ++--- src/sources/xbox/gamerscore.c | 87 ++----- src/sources/xbox/gamertag.c | 35 +-- src/text/parsers.c | 8 +- 16 files changed, 458 insertions(+), 164 deletions(-) create mode 100644 src/integrations/monitoring_service.c create mode 100644 src/integrations/monitoring_service.h diff --git a/CMakeLists.txt b/CMakeLists.txt index af8a9c6..163545c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -500,6 +500,7 @@ target_sources( src/integrations/xbox/xbox_session.c src/integrations/xbox/xbox_client.c src/integrations/xbox/xbox_monitor.c + src/integrations/monitoring_service.c src/integrations/retro-achievements/retro_achievements_monitor.c src/ui/xbox_account_config.cpp src/io/state.c diff --git a/src/common/game.c b/src/common/game.c index 5eb28b5..0396d14 100644 --- a/src/common/game.c +++ b/src/common/game.c @@ -9,9 +9,10 @@ game_t *copy_game(const game_t *game) { return NULL; } - game_t *copy = bzalloc(sizeof(game_t)); - copy->id = bstrdup(game->id); - copy->title = bstrdup(game->title); + game_t *copy = bzalloc(sizeof(game_t)); + copy->id = bstrdup(game->id); + copy->title = bstrdup(game->title); + copy->console_name = bstrdup(game->console_name); return copy; } @@ -26,6 +27,7 @@ void free_game(game_t **game) { free_memory((void **)¤t->id); free_memory((void **)¤t->title); + free_memory((void **)¤t->console_name); bfree(current); *game = NULL; diff --git a/src/common/game.h b/src/common/game.h index dd880c6..c57518e 100644 --- a/src/common/game.h +++ b/src/common/game.h @@ -19,6 +19,8 @@ typedef struct game { const char *id; /** Human-readable title. */ const char *title; + /** Name of the console / platform the game belongs to. */ + const char *console_name; } game_t; /** diff --git a/src/common/identity.c b/src/common/identity.c index f239360..f910178 100644 --- a/src/common/identity.c +++ b/src/common/identity.c @@ -39,9 +39,9 @@ identity_t *identity_from_xbox(const xbox_identity_t *xbox_identity, const gamer } identity_t *identity = alloc_identity(); - + identity->source = IDENTITY_SOURCE_XBOX; identity->name = xbox_identity->gamertag ? bstrdup(xbox_identity->gamertag) : NULL; - identity->avatar_url = NULL; /* Xbox identity does not carry an avatar URL. */ + identity->avatar_url = NULL; int computed = gamerscore_compute(gamerscore); identity->score = (computed > 0) ? (uint32_t)computed : 0; @@ -55,6 +55,7 @@ identity_t *identity_from_retro(const retro_user_t *user) { } identity_t *identity = alloc_identity(); + identity->source = IDENTITY_SOURCE_RETRO; /* Prefer display_name; fall back to username when it is empty. */ const char *name = (user->display_name[0] != '\0') ? user->display_name : user->username; diff --git a/src/common/identity.h b/src/common/identity.h index 1a284a2..2d5f496 100644 --- a/src/common/identity.h +++ b/src/common/identity.h @@ -10,6 +10,14 @@ extern "C" { #endif +/** + * @brief Identifies which integration produced an @c identity_t. + */ +typedef enum { + IDENTITY_SOURCE_XBOX = 0, /**< Xbox Live. */ + IDENTITY_SOURCE_RETRO = 1, /**< RetroAchievements. */ +} identity_source_t; + /** * @file identity.h * @brief Source-agnostic user identity record. @@ -27,6 +35,11 @@ extern "C" { * freed by @ref free_identity_t. */ typedef struct identity { + /** + * Which integration produced this identity. + */ + identity_source_t source; + /** * Display name shown to the user. * diff --git a/src/integrations/monitoring_service.c b/src/integrations/monitoring_service.c new file mode 100644 index 0000000..bf2ca0b --- /dev/null +++ b/src/integrations/monitoring_service.c @@ -0,0 +1,231 @@ +#include "integrations/monitoring_service.h" + +#include +#include + +#include "integrations/xbox/xbox_monitor.h" +#include "integrations/xbox/xbox_client.h" +#include "integrations/retro-achievements/retro_achievements_monitor.h" +#include "common/identity.h" +#include "common/game.h" +#include "common/gamerscore.h" +#include "common/memory.h" +#include "io/state.h" + +/* -------------------------------------------------------------------------- + * Active-identity subscription list + * ----------------------------------------------------------------------- */ + +typedef struct active_identity_subscription { + on_monitoring_active_identity_changed_t callback; + struct active_identity_subscription *next; +} active_identity_subscription_t; + +static active_identity_subscription_t *g_active_identity_subscriptions = NULL; + +static void notify_active_identity(const identity_t *identity) { + active_identity_subscription_t *node = g_active_identity_subscriptions; + while (node) { + node->callback(identity); + node = node->next; + } +} + +static void clear_active_identity_subscriptions(void) { + active_identity_subscription_t *node = g_active_identity_subscriptions; + while (node) { + active_identity_subscription_t *next = node->next; + bfree(node); + node = next; + } + g_active_identity_subscriptions = NULL; +} + +/* -------------------------------------------------------------------------- + * Module state + * ----------------------------------------------------------------------- */ + +static on_monitoring_connection_changed_t g_connection_changed_callback = NULL; + +static identity_t *g_xbox_identity = NULL; +static identity_t *g_retro_identity = NULL; + +static game_t *g_xbox_game = NULL; +static game_t *g_retro_game = NULL; + +/* -------------------------------------------------------------------------- + * Xbox callbacks + * ----------------------------------------------------------------------- */ + +/** + * @brief Compute the current Xbox gamerscore and store it into @p identity. + * + * Centralises the call to get_current_gamerscore() + gamerscore_compute() so + * the same logic is shared between the connection-changed and + * achievements-progressed paths. + */ +static void refresh_xbox_score(identity_t *identity) { + if (!identity) + return; + + const gamerscore_t *gs = get_current_gamerscore(); + identity->score = gs ? (uint32_t)gamerscore_compute(gs) : 0; +} + +static void on_xbox_connection_changed(bool connected, const char *error_message) { + if (connected) { + free_identity_t(&g_xbox_identity); + + xbox_identity_t *xbox = state_get_xbox_identity(); + if (xbox) { + g_xbox_identity = identity_from_xbox(xbox, get_current_gamerscore()); + free_identity(&xbox); + + if (g_xbox_identity) { + free_memory((void **)&g_xbox_identity->avatar_url); + g_xbox_identity->avatar_url = xbox_fetch_gamerpic(); + obs_log(LOG_INFO, + "[MonitoringService] Xbox identity cached: %s (score: %u, avatar: %s)", + g_xbox_identity->name, + g_xbox_identity->score, + g_xbox_identity->avatar_url ? g_xbox_identity->avatar_url : "(none)"); + } + } + } else { + free_identity_t(&g_xbox_identity); + } + + if (g_connection_changed_callback) + g_connection_changed_callback(connected, error_message); +} + +static void on_xbox_achievements_progressed(const gamerscore_t *gamerscore, const achievement_progress_t *progress) { + UNUSED_PARAMETER(gamerscore); + UNUSED_PARAMETER(progress); + + if (!g_xbox_identity) + return; + + refresh_xbox_score(g_xbox_identity); + obs_log(LOG_INFO, "[MonitoringService] Xbox score updated: %u", g_xbox_identity->score); + + if (g_xbox_game) + notify_active_identity(g_xbox_identity); +} + +static void on_xbox_game_played(const game_t *game) { + free_game(&g_xbox_game); + g_xbox_game = copy_game(game); + obs_log(LOG_INFO, "[MonitoringService] Xbox game cached: %s", g_xbox_game ? g_xbox_game->title : "(null)"); + + notify_active_identity(g_xbox_identity); +} + +/* -------------------------------------------------------------------------- + * RetroAchievements callbacks + * ----------------------------------------------------------------------- */ + +static void on_retro_connection_changed(bool connected, const char *error_message) { + if (!connected) + free_identity_t(&g_retro_identity); + + if (g_connection_changed_callback) + g_connection_changed_callback(connected, error_message); +} + +static void on_retro_user(const retro_user_t *user) { + free_identity_t(&g_retro_identity); + g_retro_identity = identity_from_retro(user); + obs_log(LOG_INFO, + "[MonitoringService] Retro identity cached: %s (avatar: %s)", + g_retro_identity ? g_retro_identity->name : "(null)", + g_retro_identity ? g_retro_identity->avatar_url : "(none)"); + + /* Fire if a game is already active so sources update regardless of + * whether the user message arrives before or after the game message. */ + if (g_retro_game) + notify_active_identity(g_retro_identity); +} + +static void on_retro_no_user(void) { + free_identity_t(&g_retro_identity); +} + +static void on_retro_game_playing(const retro_game_t *retro_game) { + free_game(&g_retro_game); + + g_retro_game = bzalloc(sizeof(game_t)); + g_retro_game->id = bstrdup(retro_game->game_id); + g_retro_game->title = bstrdup(retro_game->game_name); + g_retro_game->console_name = bstrdup(retro_game->console_name); + + obs_log(LOG_INFO, "[MonitoringService] Retro game cached: %s (%s)", g_retro_game->title, g_retro_game->console_name); + + notify_active_identity(g_retro_identity); +} + +static void on_retro_no_game(void) { + free_game(&g_retro_game); +} + +/* -------------------------------------------------------------------------- + * Public API + * ----------------------------------------------------------------------- */ + +void monitoring_start(void) { + xbox_subscribe_connected_changed(on_xbox_connection_changed); + xbox_subscribe_achievements_progressed(on_xbox_achievements_progressed); + xbox_subscribe_game_played(on_xbox_game_played); + + retro_achievements_subscribe_connection_changed(on_retro_connection_changed); + retro_achievements_subscribe_user(on_retro_user); + retro_achievements_subscribe_no_user(on_retro_no_user); + retro_achievements_subscribe_game_playing(on_retro_game_playing); + retro_achievements_subscribe_no_game(on_retro_no_game); + + xbox_monitoring_start(); + retro_achievements_monitor_start(); +} + +void monitoring_stop(void) { + retro_achievements_monitor_stop(); + xbox_monitoring_stop(); + + xbox_subscribe_connected_changed(NULL); + xbox_subscribe_achievements_progressed(NULL); + xbox_subscribe_game_played(NULL); + + retro_achievements_subscribe_connection_changed(NULL); + retro_achievements_subscribe_user(NULL); + retro_achievements_subscribe_no_user(NULL); + retro_achievements_subscribe_game_playing(NULL); + retro_achievements_subscribe_no_game(NULL); + + free_identity_t(&g_xbox_identity); + free_identity_t(&g_retro_identity); + free_game(&g_xbox_game); + free_game(&g_retro_game); + + clear_active_identity_subscriptions(); +} + +void monitoring_subscribe_connection_changed(on_monitoring_connection_changed_t callback) { + g_connection_changed_callback = callback; +} + +void monitoring_subscribe_active_identity(on_monitoring_active_identity_changed_t callback) { + if (!callback) { + clear_active_identity_subscriptions(); + return; + } + + active_identity_subscription_t *node = bzalloc(sizeof(active_identity_subscription_t)); + if (!node) { + obs_log(LOG_ERROR, "[MonitoringService] Failed to allocate active identity subscription"); + return; + } + + node->callback = callback; + node->next = g_active_identity_subscriptions; + g_active_identity_subscriptions = node; +} diff --git a/src/integrations/monitoring_service.h b/src/integrations/monitoring_service.h new file mode 100644 index 0000000..25042b0 --- /dev/null +++ b/src/integrations/monitoring_service.h @@ -0,0 +1,87 @@ +#pragma once + +#include "common/identity.h" + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @file monitoring_service.h + * @brief Unified entry point that starts and stops all integration monitors. + * + * Wraps @ref xbox_monitoring_start / @ref xbox_monitoring_stop and + * @ref retro_achievements_monitor_start / @ref retro_achievements_monitor_stop + * so that callers do not need to depend on each integration directly. + */ + +/** + * @brief Callback invoked when the connection status of any monitor changes. + * + * Mirrors the individual monitor connection-changed signatures so a single + * handler can cover both Xbox and RetroAchievements. + * + * @param connected true if the monitor just connected; false if it + * disconnected. + * @param error_message Human-readable error description when @p connected is + * false and the disconnect was caused by an error; NULL + * for a clean disconnect or a successful connection. + */ +typedef void (*on_monitoring_connection_changed_t)(bool connected, const char *error_message); + +/** + * @brief Callback invoked when the active identity changes. + * + * Fired whenever either integration receives a new-game-playing notification. + * The identity is resolved from whichever source produced the game event. + * May be called with NULL when no identity is available for that source. + * + * @param identity The currently active identity, or NULL if unavailable. + */ +typedef void (*on_monitoring_active_identity_changed_t)(const identity_t *identity); + +/** + * @brief Start all integration monitors. + * + * Starts the Xbox Live RTA monitor and the RetroAchievements WebSocket + * monitor. Safe to call even if a monitor is already running (each + * individual monitor is idempotent on double-start). + */ +void monitoring_start(void); + +/** + * @brief Stop all integration monitors. + * + * Stops the RetroAchievements WebSocket monitor and the Xbox Live RTA + * monitor. Safe to call when monitors are not running. + */ +void monitoring_stop(void); + +/** + * @brief Subscribe to connection-state change events from any monitor. + * + * The same callback is registered with both the Xbox and RetroAchievements + * monitors. Passing NULL unsubscribes from both. + * + * @param callback Function to invoke on any connection change, or NULL to + * unsubscribe. + */ +void monitoring_subscribe_connection_changed(on_monitoring_connection_changed_t callback); + +/** + * @brief Subscribe to active identity change events. + * + * The callback is fired whenever either integration receives a new-game-playing + * notification, carrying the identity associated with that source. + * Passing NULL unsubscribes. + * + * @param callback Function to invoke when the active identity changes, or NULL + * to unsubscribe. + */ +void monitoring_subscribe_active_identity(on_monitoring_active_identity_changed_t callback); + +#ifdef __cplusplus +} +#endif diff --git a/src/integrations/retro-achievements/retro_achievements_monitor.c b/src/integrations/retro-achievements/retro_achievements_monitor.c index f295af8..d99f7f6 100644 --- a/src/integrations/retro-achievements/retro_achievements_monitor.c +++ b/src/integrations/retro-achievements/retro_achievements_monitor.c @@ -659,6 +659,13 @@ bool retro_achievements_monitor_is_active(void) { void retro_achievements_subscribe_game_playing(on_retro_game_playing_t callback) { if (!callback) { + game_playing_subscription_t *node = g_game_playing_subscriptions; + while (node) { + game_playing_subscription_t *next = node->next; + bfree(node); + node = next; + } + g_game_playing_subscriptions = NULL; return; } @@ -675,6 +682,13 @@ void retro_achievements_subscribe_game_playing(on_retro_game_playing_t callback) void retro_achievements_subscribe_no_game(on_retro_no_game_t callback) { if (!callback) { + no_game_subscription_t *node = g_no_game_subscriptions; + while (node) { + no_game_subscription_t *next = node->next; + bfree(node); + node = next; + } + g_no_game_subscriptions = NULL; return; } @@ -691,6 +705,13 @@ void retro_achievements_subscribe_no_game(on_retro_no_game_t callback) { void retro_achievements_subscribe_connection_changed(on_retro_connection_changed_t callback) { if (!callback) { + connection_changed_subscription_t *node = g_connection_changed_subscriptions; + while (node) { + connection_changed_subscription_t *next = node->next; + bfree(node); + node = next; + } + g_connection_changed_subscriptions = NULL; return; } @@ -723,6 +744,13 @@ void retro_achievements_subscribe_achievements(on_retro_achievements_t callback) void retro_achievements_subscribe_user(on_retro_user_t callback) { if (!callback) { + user_subscription_t *node = g_user_subscriptions; + while (node) { + user_subscription_t *next = node->next; + bfree(node); + node = next; + } + g_user_subscriptions = NULL; return; } @@ -739,6 +767,13 @@ void retro_achievements_subscribe_user(on_retro_user_t callback) { void retro_achievements_subscribe_no_user(on_retro_no_user_t callback) { if (!callback) { + no_user_subscription_t *node = g_no_user_subscriptions; + while (node) { + no_user_subscription_t *next = node->next; + bfree(node); + node = next; + } + g_no_user_subscriptions = NULL; return; } diff --git a/src/integrations/retro-achievements/retro_achievements_monitor.h b/src/integrations/retro-achievements/retro_achievements_monitor.h index b96e1f5..2ab844c 100644 --- a/src/integrations/retro-achievements/retro_achievements_monitor.h +++ b/src/integrations/retro-achievements/retro_achievements_monitor.h @@ -207,10 +207,10 @@ void retro_achievements_subscribe_no_game(on_retro_no_game_t callback); /** * @brief Subscribe to connection-state change events. * - * Ignored if @p callback is NULL. + * Passing NULL clears/unsubscribes the current callback. * * @param callback Invoked whenever the WebSocket connection is established or - * lost. + * lost, or NULL to unsubscribe. */ void retro_achievements_subscribe_connection_changed(on_retro_connection_changed_t callback); @@ -227,20 +227,21 @@ void retro_achievements_subscribe_achievements(on_retro_achievements_t callback) /** * @brief Subscribe to user-info events. * - * Ignored if @p callback is NULL. + * Passing NULL clears/unsubscribes the current callback. * * @param callback Invoked whenever a "user" message is received with the - * current logged-in user's information. + * current logged-in user's information, or NULL to unsubscribe. */ void retro_achievements_subscribe_user(on_retro_user_t callback); /** * @brief Subscribe to no-user events. * - * Ignored if @p callback is NULL. + * Passing NULL clears/unsubscribes the current callback. * * @param callback Invoked whenever a "no_user" message is received, - * indicating that no user is currently logged in. + * indicating that no user is currently logged in, or NULL to + * unsubscribe. */ void retro_achievements_subscribe_no_user(on_retro_no_user_t callback); diff --git a/src/integrations/xbox/xbox_client.c b/src/integrations/xbox/xbox_client.c index e02bdbc..d17bc99 100644 --- a/src/integrations/xbox/xbox_client.c +++ b/src/integrations/xbox/xbox_client.c @@ -479,9 +479,11 @@ game_t *xbox_get_current_game(void) { obs_log(LOG_INFO, "Game is '%s' (%s)", current_game_title, current_game_id); - game = bzalloc(sizeof(game_t)); - game->id = bstrdup(current_game_id); - game->title = bstrdup(current_game_title); + game = bzalloc(sizeof(game_t)); + game->id = bstrdup(current_game_id); + game->title = bstrdup(current_game_title); + /* TODO Figure out if it is Xbox one, Xbox series S, Xbox series X */ + game->console_name = bstrdup("xbox"); cleanup: free_json_memory((void **)&presence_json); diff --git a/src/integrations/xbox/xbox_monitor.c b/src/integrations/xbox/xbox_monitor.c index fda5ce8..02f2ca8 100644 --- a/src/integrations/xbox/xbox_monitor.c +++ b/src/integrations/xbox/xbox_monitor.c @@ -977,6 +977,13 @@ const achievement_t *get_current_game_achievements() { void xbox_subscribe_game_played(const on_xbox_game_played_t callback) { if (!callback) { + game_played_subscription_t *node = g_game_played_subscriptions; + while (node) { + game_played_subscription_t *next = node->next; + bfree(node); + node = next; + } + g_game_played_subscriptions = NULL; return; } @@ -1000,6 +1007,13 @@ void xbox_subscribe_game_played(const on_xbox_game_played_t callback) { void xbox_subscribe_achievements_progressed(on_xbox_achievements_progressed_t callback) { if (!callback) { + achievements_updated_subscription_t *node = g_achievements_updated_subscriptions; + while (node) { + achievements_updated_subscription_t *next = node->next; + bfree(node); + node = next; + } + g_achievements_updated_subscriptions = NULL; return; } diff --git a/src/main.c b/src/main.c index 2999dda..13c28a4 100644 --- a/src/main.c +++ b/src/main.c @@ -14,8 +14,7 @@ #include "sources/xbox/achievement_icon.h" #include "sources/xbox/achievements_count.h" #include "drawing/image.h" -#include "integrations/xbox/xbox_monitor.h" -#include "integrations/retro-achievements/retro_achievements_monitor.h" +#include "integrations/monitoring_service.h" OBS_DECLARE_MODULE() OBS_MODULE_USE_DEFAULT_LOCALE(PLUGIN_NAME, "en-US") @@ -25,8 +24,7 @@ bool obs_module_load(void) { io_load(); xbox_account_config_register(); - xbox_monitoring_start(); - retro_achievements_monitor_start(); + monitoring_start(); xbox_gamerpic_source_register(); xbox_game_cover_source_register(); @@ -62,7 +60,7 @@ void obs_module_unload(void) { xbox_gamerscore_source_cleanup(); xbox_gamertag_source_cleanup(); - retro_achievements_monitor_stop(); + monitoring_stop(); io_cleanup(); obs_log(LOG_INFO, "Plugin unloaded"); diff --git a/src/sources/xbox/gamerpic.c b/src/sources/xbox/gamerpic.c index 4ebd212..f430edb 100644 --- a/src/sources/xbox/gamerpic.c +++ b/src/sources/xbox/gamerpic.c @@ -3,11 +3,9 @@ #include #include -#include "integrations/xbox/oauth/xbox-live.h" #include "sources/common/image_source.h" #include "common/memory.h" -#include "integrations/xbox/xbox_client.h" -#include "integrations/xbox/xbox_monitor.h" +#include "integrations/monitoring_service.h" /** * @brief Global singleton gamerpic cache. @@ -21,43 +19,25 @@ static image_t g_gamerpic; // Event handlers // -------------------------------------------------------------------------------------------------------------------- -/** - * @brief Xbox monitor callback invoked when connection state changes. - * - * When connected, this refreshes the gamerscore display. - * - * @param is_connected Whether the account is currently connected. - * @param error_message Optional error message if disconnected (ignored here). - */ -static void on_connection_changed(bool is_connected, const char *error_message) { +static void on_active_identity_changed(const identity_t *identity) { - UNUSED_PARAMETER(error_message); - - if (!is_connected) { - obs_log(LOG_DEBUG, "[Gamerpic] Not connected - clearing"); + if (!identity || !identity->avatar_url || identity->avatar_url[0] == '\0') { + obs_log(LOG_DEBUG, "[Gamerpic] No avatar URL - clearing"); image_source_clear(&g_gamerpic); return; } - obs_log(LOG_DEBUG, "[Gamerpic] Connected to Xbox Live - fetching Gamerpic URL %s", g_gamerpic.type); - - char *gamerpic_url = xbox_fetch_gamerpic(); - - if (!gamerpic_url || gamerpic_url[0] == '\0') { - obs_log(LOG_INFO, "[Gamerpic] No Gamerpic URL - clearing"); - image_source_clear(&g_gamerpic); - goto cleanup; - } - - if (strcasecmp(gamerpic_url, g_gamerpic.url) != 0) { - obs_log(LOG_DEBUG, "[Gamerpic] Gamerpic URL changed - downloading"); - snprintf(g_gamerpic.url, sizeof(g_gamerpic.url), "%s", gamerpic_url); - snprintf(g_gamerpic.id, sizeof(g_gamerpic.id), "%s", "default"); + if (strcasecmp(identity->avatar_url, g_gamerpic.url) != 0) { + obs_log(LOG_DEBUG, "[Gamerpic] Avatar URL changed - downloading"); + snprintf(g_gamerpic.url, sizeof(g_gamerpic.url), "%s", identity->avatar_url); + /* Use the identity name as the cache id so Xbox and RA avatars + * never share the same cache file. */ + snprintf(g_gamerpic.id, + sizeof(g_gamerpic.id), + "%s", + (identity->name && identity->name[0] != '\0') ? identity->name : "default"); image_source_download(&g_gamerpic); } - -cleanup: - free_memory((void **)&gamerpic_url); } // -------------------------------------------------------------------------------------------------------------------- @@ -160,25 +140,8 @@ static obs_properties_t *source_get_properties(void *data) { UNUSED_PARAMETER(data); - /* Gets or refreshes the token */ - xbox_identity_t *xbox_identity = xbox_live_get_identity(); - - /* Lists all the UI components of the properties page */ obs_properties_t *p = obs_properties_create(); - - if (xbox_identity != NULL) { - char status[4096]; - snprintf(status, 4096, "Connected to your xbox account as %s", xbox_identity->gamertag); - obs_properties_add_text(p, "connected_status_info", status, OBS_TEXT_INFO); - } else { - obs_properties_add_text(p, - "disconnected_status_info", - "You are not connected to your xbox account", - OBS_TEXT_INFO); - } - - free_identity(&xbox_identity); - + obs_properties_add_text(p, "info", "Displays the active user's profile picture.", OBS_TEXT_INFO); return p; } @@ -219,7 +182,7 @@ void xbox_gamerpic_source_register(void) { obs_register_source(xbox_gamerpic_source_get()); - xbox_subscribe_connected_changed(&on_connection_changed); + monitoring_subscribe_active_identity(on_active_identity_changed); } void xbox_gamerpic_source_cleanup(void) { diff --git a/src/sources/xbox/gamerscore.c b/src/sources/xbox/gamerscore.c index 96e2aeb..d123efa 100644 --- a/src/sources/xbox/gamerscore.c +++ b/src/sources/xbox/gamerscore.c @@ -2,23 +2,11 @@ /** * @file gamerscore.c - * @brief OBS source that renders the currently authenticated Xbox account's gamerscore. + * @brief OBS source that renders the active user's score. * - * This source displays a numeric gamerscore by drawing digits from a pre-baked - * font sheet (atlas). Digits are extracted as subregions from the atlas texture - * and drawn sequentially. - * - * Data flow: - * - The Xbox monitor notifies this module when connection state changes and/or - * achievement progress updates. - * - The module computes the latest gamerscore and stores it in a global. - * - During rendering, the current gamerscore is formatted to text and each - * digit is drawn from the font sheet texture. - * - * Threading notes: - * - Event handlers may be invoked from non-graphics threads. - * - Texture creation must happen on the OBS graphics thread; this file lazily - * initializes the texture in the video_render callback. + * Subscribes to the monitoring service's active-identity event so it works for + * both Xbox Live (gamerscore) and RetroAchievements (higher of hardcore vs + * softcore score, resolved by identity_from_retro()). */ #include "sources/common/text_source.h" @@ -28,74 +16,38 @@ #include #include "io/state.h" -#include "integrations/xbox/oauth/xbox-live.h" -#include "integrations/xbox/xbox_monitor.h" +#include "integrations/monitoring_service.h" #define NO_FLIP 0 static char g_gamerscore[64]; static bool g_must_reload; -/** - * @brief Configuration for rendering digits from the font sheet. - * - * Stored as a module-global pointer and initialized during - * xbox_gamerscore_source_register(). - */ static gamerscore_configuration_t *g_default_configuration; /** - * @brief Recompute and store the latest gamerscore. - * - * @param gamerscore Gamerscore snapshot received from the Xbox monitor. - */ -static void update_gamerscore(const gamerscore_t *gamerscore) { - - int total_gamerscore = gamerscore_compute(gamerscore); - - // Computes the total gamerscore and activate the switch to reload the texture with the new number. - snprintf(g_gamerscore, sizeof(g_gamerscore), "%dG", total_gamerscore); - g_must_reload = true; - - obs_log(LOG_INFO, "[Gamerscore] Gamerscore is %" PRId64, total_gamerscore); -} - -/** - * @brief Xbox monitor callback invoked when connection state changes. - * - * When connected, this refreshes the gamerscore display. - * - * @param is_connected Whether the account is currently connected. - * @param error_message Optional error message if disconnected (ignored here). + * @brief Update the score display from the active identity. */ -static void on_connection_changed(bool is_connected, const char *error_message) { - - UNUSED_PARAMETER(error_message); +static void update_gamerscore(const identity_t *identity) { - if (!is_connected) { + if (!identity) { g_gamerscore[0] = '\0'; - g_must_reload = true; - return; + } else if (identity->source == IDENTITY_SOURCE_XBOX) { + snprintf(g_gamerscore, sizeof(g_gamerscore), "%u G", identity->score); + obs_log(LOG_INFO, "[Gamerscore] Xbox score: %uG", identity->score); + } else { + snprintf(g_gamerscore, sizeof(g_gamerscore), "%u", identity->score); + obs_log(LOG_INFO, "[Gamerscore] Retro score: %u Hardcore", identity->score); } - const gamerscore_t *gamerscore = get_current_gamerscore(); - - update_gamerscore(gamerscore); + g_must_reload = true; } /** - * @brief Xbox monitor callback invoked when achievements progress. - * - * Recomputes the gamerscore based on the updated snapshot. - * - * @param gamerscore Updated gamerscore snapshot. - * @param progress Achievement progress details (unused). + * @brief Monitoring service callback for active identity changes. */ -static void on_achievements_progressed(const gamerscore_t *gamerscore, const achievement_progress_t *progress) { - - UNUSED_PARAMETER(progress); - - update_gamerscore(gamerscore); +static void on_active_identity_changed(const identity_t *identity) { + update_gamerscore(identity); } // -------------------------------------------------------------------------------------------------------------------- @@ -258,8 +210,7 @@ void xbox_gamerscore_source_register(void) { obs_register_source(xbox_source_get()); - xbox_subscribe_connected_changed(&on_connection_changed); - xbox_subscribe_achievements_progressed(&on_achievements_progressed); + monitoring_subscribe_active_identity(on_active_identity_changed); } void xbox_gamerscore_source_cleanup(void) { diff --git a/src/sources/xbox/gamertag.c b/src/sources/xbox/gamertag.c index 62fb639..927901f 100644 --- a/src/sources/xbox/gamertag.c +++ b/src/sources/xbox/gamertag.c @@ -2,10 +2,10 @@ /** * @file gamertag.c - * @brief OBS source that displays the authenticated Xbox account's gamertag. + * @brief OBS source that displays the authenticated user's gamertag / display name. * - * Uses the text_source infrastructure for rendering and configuration management. - * Updates automatically when connection state changes via Xbox monitor callbacks. + * Subscribes to the monitoring service's active-identity event so it works for + * both Xbox Live and RetroAchievements sessions. */ #include "sources/common/text_source.h" @@ -14,8 +14,7 @@ #include #include "io/state.h" -#include "integrations/xbox/oauth/xbox-live.h" -#include "integrations/xbox/xbox_monitor.h" +#include "integrations/monitoring_service.h" /** Current gamertag text to display. */ static char g_gamertag[256]; @@ -27,32 +26,24 @@ static bool g_must_reload; static gamertag_configuration_t *g_configuration; /** - * @brief Update the gamertag display from Xbox identity. + * @brief Update the gamertag display from the active identity. */ -static void update_gamertag(void) { +static void update_gamertag(const identity_t *identity) { - xbox_identity_t *identity = xbox_live_get_identity(); - - if (!identity || !identity->gamertag) { + if (!identity || !identity->name) { snprintf(g_gamertag, sizeof(g_gamertag), "Not connected"); } else { - snprintf(g_gamertag, sizeof(g_gamertag), "%s", identity->gamertag); + snprintf(g_gamertag, sizeof(g_gamertag), "%s", identity->name); } g_must_reload = true; - - free_identity(&identity); } /** - * @brief Xbox monitor callback for connection state changes. + * @brief Monitoring service callback for active identity changes. */ -static void on_connection_changed(bool is_connected, const char *error_message) { - - UNUSED_PARAMETER(is_connected); - UNUSED_PARAMETER(error_message); - - update_gamertag(); +static void on_active_identity_changed(const identity_t *identity) { + update_gamertag(identity); } // -------------------------------------------------------------------------------------------------------------------- @@ -62,7 +53,7 @@ static void on_connection_changed(bool is_connected, const char *error_message) static void *on_source_create(obs_data_t *settings, obs_source_t *source) { UNUSED_PARAMETER(settings); - update_gamertag(); + snprintf(g_gamertag, sizeof(g_gamertag), "Not connected"); return text_source_create(source, "Gamertag"); } @@ -147,7 +138,7 @@ void xbox_gamertag_source_register(void) { obs_register_source(&xbox_gamertag_source); - xbox_subscribe_connected_changed(&on_connection_changed); + monitoring_subscribe_active_identity(on_active_identity_changed); } void xbox_gamertag_source_cleanup(void) { diff --git a/src/text/parsers.c b/src/text/parsers.c index 2ac1f2d..a49b3a7 100644 --- a/src/text/parsers.c +++ b/src/text/parsers.c @@ -191,9 +191,11 @@ game_t *parse_game(const char *json_string) { obs_log(LOG_DEBUG, "Game is %s (%s)", current_game_title, current_game_id); - game = bzalloc(sizeof(game_t)); - game->id = bstrdup(current_game_id); - game->title = bstrdup(current_game_title); + game = bzalloc(sizeof(game_t)); + game->id = bstrdup(current_game_id); + game->title = bstrdup(current_game_title); + /* TODO Figure out if it is Xbox one, Xbox series S, Xbox series X */ + game->console_name = bstrdup("xbox"); cleanup: free_json_memory((void **)&json_root); From 5e0444196d4af955fcc186fecae5db6ba625a821 Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Sun, 22 Mar 2026 10:30:19 -0400 Subject: [PATCH 10/29] Refactor achievements handling: consolidate Xbox and RetroAchievements into a unified, platform-agnostic abstraction; migrate platform-specific logic to `integrations/*`; update monitoring service to centralize game and achievement event handling. --- CMakeLists.txt | 23 +- src/common/achievement.c | 133 +------ src/common/achievement.h | 161 +++----- src/common/achievement_progress.c | 61 --- src/common/achievement_progress.h | 55 --- src/common/gamerscore.c | 8 +- src/common/gamerscore.h | 6 +- src/common/identity.h | 2 +- src/common/types.h | 9 +- src/common/unlocked_achievement.c | 58 --- src/common/unlocked_achievement.h | 49 --- src/integrations/monitoring_service.c | 127 ++++++- src/integrations/monitoring_service.h | 75 ++++ .../retro_achievements_monitor.c | 6 +- .../retro_achievements_monitor.h | 11 +- .../xbox/contracts/xbox_achievement.c | 344 +++++++++++++++++ .../xbox/contracts/xbox_achievement.h | 217 +++++++++++ .../contracts/xbox_achievement_progress.c | 60 +++ .../contracts/xbox_achievement_progress.h | 56 +++ .../contracts/xbox_unlocked_achievement.c | 57 +++ .../contracts/xbox_unlocked_achievement.h | 49 +++ .../xbox/entities}/xbox_identity.c | 4 +- .../xbox/entities}/xbox_identity.h | 2 +- .../xbox/entities}/xbox_session.c | 6 +- .../xbox/entities}/xbox_session.h | 8 +- src/integrations/xbox/xbox_client.c | 14 +- src/integrations/xbox/xbox_client.h | 4 +- src/integrations/xbox/xbox_monitor.c | 16 +- src/integrations/xbox/xbox_monitor.h | 6 +- src/integrations/xbox/xbox_session.c | 93 ++--- src/integrations/xbox/xbox_session.h | 2 +- src/sources/common/achievement_cycle.c | 72 ++-- src/sources/xbox/achievement_icon.c | 24 +- src/sources/xbox/achievement_name.c | 8 +- src/sources/xbox/achievements_count.c | 27 +- src/text/parsers.c | 51 ++- src/text/parsers.h | 8 +- test/stubs/xbox/xbox_client.h | 4 +- test/stubs/xbox/xbox_client_stub.c | 6 +- test/test_parsers.c | 16 +- test/test_types.c | 358 +++++++++--------- test/test_xbox_session.c | 72 ++-- 42 files changed, 1435 insertions(+), 933 deletions(-) delete mode 100644 src/common/achievement_progress.c delete mode 100644 src/common/achievement_progress.h delete mode 100644 src/common/unlocked_achievement.c delete mode 100644 src/common/unlocked_achievement.h create mode 100644 src/integrations/xbox/contracts/xbox_achievement.c create mode 100644 src/integrations/xbox/contracts/xbox_achievement.h create mode 100644 src/integrations/xbox/contracts/xbox_achievement_progress.c create mode 100644 src/integrations/xbox/contracts/xbox_achievement_progress.h create mode 100644 src/integrations/xbox/contracts/xbox_unlocked_achievement.c create mode 100644 src/integrations/xbox/contracts/xbox_unlocked_achievement.h rename src/{common => integrations/xbox/entities}/xbox_identity.c (90%) rename src/{common => integrations/xbox/entities}/xbox_identity.h (98%) rename src/{common => integrations/xbox/entities}/xbox_session.c (81%) rename src/{common => integrations/xbox/entities}/xbox_session.h (91%) diff --git a/CMakeLists.txt b/CMakeLists.txt index 163545c..295542d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -511,15 +511,16 @@ target_sources( src/text/parsers.c src/time/time.c src/common/achievement.c - src/common/achievement_progress.c src/common/device.c src/common/game.c src/common/gamerscore.c src/common/identity.c src/common/token.c - src/common/unlocked_achievement.c - src/common/xbox_identity.c - src/common/xbox_session.c + src/integrations/xbox/contracts/xbox_achievement.c + src/integrations/xbox/contracts/xbox_achievement_progress.c + src/integrations/xbox/contracts/xbox_unlocked_achievement.c + src/integrations/xbox/entities/xbox_identity.c + src/integrations/xbox/entities/xbox_session.c ) # Link vendored deps @@ -733,12 +734,13 @@ if(BUILD_TESTING) ${unity_SOURCE_DIR}/src/unity.c src/integrations/xbox/xbox_session.c src/common/achievement.c - src/common/achievement_progress.c src/common/game.c src/common/gamerscore.c src/common/token.c - src/common/unlocked_achievement.c - src/common/xbox_session.c + src/integrations/xbox/contracts/xbox_achievement.c + src/integrations/xbox/contracts/xbox_achievement_progress.c + src/integrations/xbox/contracts/xbox_unlocked_achievement.c + src/integrations/xbox/entities/xbox_session.c test/stubs/bmem_stub.c test/stubs/xbox/xbox_client_stub.c test/stubs/time/time_stub.c @@ -773,12 +775,13 @@ if(BUILD_TESTING) ${unity_SOURCE_DIR}/src/unity.c src/integrations/xbox/xbox_session.c src/common/achievement.c - src/common/achievement_progress.c src/common/game.c src/common/gamerscore.c src/common/token.c - src/common/unlocked_achievement.c - src/common/xbox_session.c + src/integrations/xbox/contracts/xbox_achievement.c + src/integrations/xbox/contracts/xbox_achievement_progress.c + src/integrations/xbox/contracts/xbox_unlocked_achievement.c + src/integrations/xbox/entities/xbox_session.c test/stubs/bmem_stub.c test/stubs/xbox/xbox_client_stub.c test/stubs/time/time_stub.c diff --git a/src/common/achievement.c b/src/common/achievement.c index 7a554c8..9d4cf9d 100644 --- a/src/common/achievement.c +++ b/src/common/achievement.c @@ -4,114 +4,8 @@ #include #include - #include -media_asset_t *copy_media_asset(const media_asset_t *media_asset) { - if (!media_asset) { - return NULL; - } - - media_asset_t *root_copy = NULL; - media_asset_t *previous_copy = NULL; - - const media_asset_t *current = media_asset; - - while (current) { - const media_asset_t *next = current->next; - - media_asset_t *copy = bzalloc(sizeof(media_asset_t)); - copy->url = bstrdup(current->url); - - if (previous_copy) { - previous_copy->next = copy; - } - - previous_copy = copy; - current = next; - - if (!root_copy) { - root_copy = copy; - } - } - - return root_copy; -} - -void free_media_asset(media_asset_t **media_asset) { - - if (!media_asset || !*media_asset) { - return; - } - - media_asset_t *current = *media_asset; - - while (current) { - media_asset_t *next = current->next; - - free_memory((void **)¤t->url); - free_memory((void **)¤t); - - current = next; - } - - *media_asset = NULL; -} - -reward_t *copy_reward(const reward_t *reward) { - - if (!reward) { - return NULL; - } - - reward_t *root_copy = NULL; - reward_t *previous_copy = NULL; - - const reward_t *current = reward; - - while (current) { - const reward_t *next = current->next; - - reward_t *copy = bzalloc(sizeof(reward_t)); - - copy->value = bstrdup(current->value); - - if (previous_copy) { - previous_copy->next = copy; - } - - previous_copy = copy; - current = next; - - if (!root_copy) { - root_copy = copy; - } - } - - return root_copy; -} - -void free_reward(reward_t **reward) { - - if (!reward || !*reward) { - return; - } - - reward_t *current = *reward; - - while (current) { - - reward_t *next = current->next; - - free_memory((void **)¤t->value); - free_memory((void **)¤t); - - current = next; - } - - *reward = NULL; -} - achievement_t *copy_achievement(const achievement_t *achievement) { if (!achievement) { @@ -129,16 +23,13 @@ achievement_t *copy_achievement(const achievement_t *achievement) { achievement_t *copy = bzalloc(sizeof(achievement_t)); copy->id = bstrdup(current->id); - copy->description = bstrdup(current->description); - copy->locked_description = bstrdup(current->locked_description); copy->name = bstrdup(current->name); - copy->progress_state = bstrdup(current->progress_state); - copy->service_config_id = bstrdup(current->service_config_id); + copy->description = bstrdup(current->description); copy->icon_url = bstrdup(current->icon_url); - copy->media_assets = copy_media_asset(current->media_assets); - copy->rewards = copy_reward(current->rewards); copy->is_secret = current->is_secret; + copy->value = current->value; copy->unlocked_timestamp = current->unlocked_timestamp; + copy->source = current->source; if (previous_copy) { previous_copy->next = copy; @@ -166,15 +57,10 @@ void free_achievement(achievement_t **achievement) { while (current) { achievement_t *next = current->next; - free_memory((void **)¤t->service_config_id); free_memory((void **)¤t->id); free_memory((void **)¤t->name); free_memory((void **)¤t->description); - free_memory((void **)¤t->locked_description); - free_memory((void **)¤t->progress_state); free_memory((void **)¤t->icon_url); - free_media_asset(¤t->media_assets); - free_reward(¤t->rewards); free_memory((void **)¤t); current = next; @@ -212,7 +98,6 @@ const achievement_t *find_latest_unlocked_achievement(const achievement_t *achie } int count_locked_achievements(const achievement_t *achievements) { - int count = 0; for (const achievement_t *a = achievements; a != NULL; a = a->next) { @@ -271,44 +156,35 @@ void sort_achievements(achievement_t **achievements) { achievement_t *sorted = NULL; achievement_t *current = *achievements; - /* Insertion sort: take each node from the original list and insert it in sorted order */ + /* Insertion sort: unlocked first, then by timestamp descending */ while (current) { achievement_t *next = current->next; - /* Insert current into the sorted list at the correct position */ if (!sorted) { - /* First node in the sorted list */ sorted = current; sorted->next = NULL; } else { - /* Determine if current should go before sorted head */ bool should_insert_before_head = false; if (sorted->unlocked_timestamp == 0 && current->unlocked_timestamp != 0) { - /* Current is unlocked, head is locked */ should_insert_before_head = true; } else if (current->unlocked_timestamp != 0 && sorted->unlocked_timestamp != 0 && current->unlocked_timestamp > sorted->unlocked_timestamp) { - /* Both unlocked, current has more recent timestamp */ should_insert_before_head = true; } if (should_insert_before_head) { - /* Insert at head */ current->next = sorted; sorted = current; } else { - /* Find the correct position in the sorted list */ achievement_t *search = sorted; while (search->next) { bool should_insert_here = false; if (search->next->unlocked_timestamp == 0 && current->unlocked_timestamp != 0) { - /* Current is unlocked, next is locked */ should_insert_here = true; } else if (current->unlocked_timestamp != 0 && search->next->unlocked_timestamp != 0 && current->unlocked_timestamp > search->next->unlocked_timestamp) { - /* Both unlocked, current has more recent timestamp */ should_insert_here = true; } @@ -318,7 +194,6 @@ void sort_achievements(achievement_t **achievements) { search = search->next; } - /* Insert current after search */ current->next = search->next; search->next = current; } diff --git a/src/common/achievement.h b/src/common/achievement.h index 672adff..c04c080 100644 --- a/src/common/achievement.h +++ b/src/common/achievement.h @@ -1,7 +1,5 @@ #pragma once -#include "time/time.h" - #include #include @@ -10,124 +8,64 @@ extern "C" { #endif /** - * @brief Linked-list node describing a media asset for an achievement. + * @file achievement.h + * @brief Generic achievement abstraction shared across all integrations. * - * Notes on ownership: - * - In objects created by the copy_* helpers, @c url points to an allocated - * NUL-terminated string that must be freed by @ref free_media_asset. - * - The list is singly-linked via @c next. + * This header provides a platform-agnostic representation of an achievement + * that can be populated from any integration (Xbox Live, RetroAchievements, + * etc.). Platform-specific contract types are kept in their respective + * integration folders (e.g. @c integrations/xbox/contracts/). */ -typedef struct media_asset { - /** Media URL (typically UTF-8). */ - const char *url; - /** Next node in the list, or NULL. */ - struct media_asset *next; -} media_asset_t; /** - * @brief Linked-list node describing a reward associated with an achievement. - * - * Notes on ownership: - * - In objects created by the copy_* helpers, @c value points to an allocated - * NUL-terminated string that must be freed by @ref free_reward. - * - The list is singly-linked via @c next. + * @brief Source platform for an achievement. */ -typedef struct reward { - /** Reward value (the format depends on upstream service). */ - const char *value; - /** Next node in the list, or NULL. */ - struct reward *next; -} reward_t; +typedef enum achievement_source { + ACHIEVEMENT_SOURCE_UNKNOWN = 0, /**< Source not set / unknown. */ + ACHIEVEMENT_SOURCE_XBOX = 1, /**< Achievement originates from Xbox Live. */ + ACHIEVEMENT_SOURCE_RETRO = 2, /**< Achievement originates from RetroAchievements. */ +} achievement_source_t; /** - * @brief Linked-list node describing an achievement and its metadata. + * @brief Generic, platform-agnostic achievement. * - * This type is used as a singly linked list (@c next). Most fields are strings - * coming from the service. When an @c achievement_t is produced by - * @ref copy_achievement, all strings and nested lists are deep-copied. + * Fields are the common denominator across Xbox Live and RetroAchievements. + * All string fields are NUL-terminated and heap-allocated; use + * @ref copy_achievement / @ref free_achievement to manage lifetime. + * + * This type forms a singly-linked list via @c next. * * Ownership: - * - Instances returned by @ref copy_achievement are owned by the caller and must - * be freed with @ref free_achievement. - * - @c media_assets and @c rewards are nested linked lists and are freed by - * @ref free_achievement. + * - Instances returned by @ref copy_achievement are owned by the caller and + * must be freed with @ref free_achievement. */ typedef struct achievement { - /** Achievement id. */ - char *id; - /** Service configuration id. Used for monitoring. */ - char *service_config_id; - /** Display name. */ - char *name; - /** Progress state (service-provided string). */ - char *progress_state; - /** Linked list of media assets associated with this achievement. */ - media_asset_t *media_assets; - /** Whether the achievement is secret. */ - bool is_secret; - /** Description shown when not secret/unlocked. */ - char *description; - /** Description shown when locked/secret. */ - char *locked_description; - /** Linked list of rewards associated with this achievement. */ - reward_t *rewards; - /** Unix timestamp (seconds since epoch) when the achievement was unlocked, or 0 if locked. */ - int64_t unlocked_timestamp; + /** Platform-agnostic string identifier for the achievement. */ + char *id; + /** Human-readable display name. */ + char *name; + /** Description shown when the achievement is unlocked or not secret. */ + char *description; + /** Whether the achievement is secret / hidden. */ + bool is_secret; + /** Point / score value (gamerscore, retro-points, …). */ + int value; /** - * Small icon or tile image URL for the achievement. + * Icon URL (PNG/JPEG). * - * Typically points to a PNG/JPEG hosted by the service. + * Typically the unlocked-badge image. May be NULL if unavailable. */ - char *icon_url; + char *icon_url; + /** Unix timestamp (seconds since epoch) when unlocked; 0 if still locked. */ + int64_t unlocked_timestamp; + /** Which integration produced this achievement. */ + achievement_source_t source; /** Next achievement in the list, or NULL. */ - struct achievement *next; + struct achievement *next; } achievement_t; /** - * @brief Deep-copies a linked list of media assets. - * - * @param media_asset Head of the source list (may be NULL). - * - * @return Head of the newly allocated list, or NULL if @p media_asset is NULL. - * The caller owns the returned list and must free it with - * @ref free_media_asset. - */ -media_asset_t *copy_media_asset(const media_asset_t *media_asset); - -/** - * @brief Frees a linked list of media assets and sets the caller's pointer to NULL. - * - * Safe to call with NULL or with @c *media_asset == NULL. - * - * @param[in,out] media_asset Address of the head pointer to free. - */ -void free_media_asset(media_asset_t **media_asset); - -/** - * @brief Deep-copies a linked list of rewards. - * - * @param reward Head of the source list (may be NULL). - * - * @return Head of the newly allocated list, or NULL if @p reward is NULL. - * The caller owns the returned list and must free it with - * @ref free_reward. - */ -reward_t *copy_reward(const reward_t *reward); - -/** - * @brief Frees a linked list of rewards and sets the caller's pointer to NULL. - * - * Safe to call with NULL or with @c *reward == NULL. - * - * @param[in,out] reward Address of the head pointer to free. - */ -void free_reward(reward_t **reward); - -/** - * @brief Deep-copies a linked list of achievements. - * - * Performs a deep copy of the list, including all strings and nested - * @c media_assets and @c rewards lists. + * @brief Deep-copies a linked list of generic achievements. * * @param achievement Head of the source list (may be NULL). * @@ -138,9 +76,9 @@ void free_reward(reward_t **reward); achievement_t *copy_achievement(const achievement_t *achievement); /** - * @brief Frees a linked list of achievements and sets the caller's pointer to NULL. + * @brief Frees a linked list of generic achievements and sets the caller's pointer to NULL. * - * Frees all strings and nested lists, then frees the list nodes. + * Frees all string fields and list nodes. * Safe to call with NULL or with @c *achievement == NULL. * * @param[in,out] achievement Address of the head pointer to free. @@ -152,18 +90,16 @@ void free_achievement(achievement_t **achievement); * * @param achievements Head of the list (may be NULL). * - * @return Number of nodes in the list. Returns 0 if @p achievements is NULL. + * @return Number of nodes. Returns 0 if @p achievements is NULL. */ int count_achievements(const achievement_t *achievements); /** * @brief Find the most recently unlocked achievement. * - * Iterates through the achievements list and returns the one with the highest - * unlocked_timestamp (most recent unlock). - * * @param achievements Head of the achievements linked list. - * @return Pointer to the most recently unlocked achievement, or NULL if none are unlocked. + * @return Pointer to the achievement with the highest @c unlocked_timestamp, + * or NULL if none are unlocked. */ const achievement_t *find_latest_unlocked_achievement(const achievement_t *achievements); @@ -171,7 +107,7 @@ const achievement_t *find_latest_unlocked_achievement(const achievement_t *achie * @brief Count the number of locked achievements. * * @param achievements Head of the achievements linked list. - * @return Number of locked achievements (unlocked_timestamp == 0). + * @return Number of locked achievements (@c unlocked_timestamp == 0). */ int count_locked_achievements(const achievement_t *achievements); @@ -179,7 +115,7 @@ int count_locked_achievements(const achievement_t *achievements); * @brief Count the number of unlocked achievements. * * @param achievements Head of the achievements linked list. - * @return Number of unlocked achievements (unlocked_timestamp != 0). + * @return Number of unlocked achievements (@c unlocked_timestamp != 0). */ int count_unlocked_achievements(const achievement_t *achievements); @@ -191,6 +127,11 @@ int count_unlocked_achievements(const achievement_t *achievements); */ const achievement_t *get_random_locked_achievement(const achievement_t *achievements); +/** + * @brief Sort achievements in place (unlocked first, then by timestamp descending). + * + * @param achievements Address of the head pointer to sort. + */ void sort_achievements(achievement_t **achievements); #ifdef __cplusplus diff --git a/src/common/achievement_progress.c b/src/common/achievement_progress.c deleted file mode 100644 index f2255ad..0000000 --- a/src/common/achievement_progress.c +++ /dev/null @@ -1,61 +0,0 @@ -#include "achievement_progress.h" - -#include "memory.h" -#include - -achievement_progress_t *copy_achievement_progress(const achievement_progress_t *achievement_progress) { - - if (!achievement_progress) { - return NULL; - } - - achievement_progress_t *root_copy = NULL; - achievement_progress_t *previous_copy = NULL; - - const achievement_progress_t *current = achievement_progress; - - while (current) { - const achievement_progress_t *next = current->next; - - achievement_progress_t *copy = bzalloc(sizeof(achievement_progress_t)); - copy->id = bstrdup(current->id); - copy->progress_state = bstrdup(current->progress_state); - copy->service_config_id = bstrdup(current->service_config_id); - copy->unlocked_timestamp = current->unlocked_timestamp; - - if (previous_copy) { - previous_copy->next = copy; - } - - previous_copy = copy; - current = next; - - if (!root_copy) { - root_copy = copy; - } - } - - return root_copy; -} - -void free_achievement_progress(achievement_progress_t **achievement_progress) { - - if (!achievement_progress || !*achievement_progress) { - return; - } - - achievement_progress_t *current = *achievement_progress; - - while (current) { - achievement_progress_t *next = current->next; - - free_memory((void **)¤t->id); - free_memory((void **)¤t->progress_state); - free_memory((void **)¤t->service_config_id); - free_memory((void **)¤t); - - current = next; - } - - *achievement_progress = NULL; -} diff --git a/src/common/achievement_progress.h b/src/common/achievement_progress.h deleted file mode 100644 index 5d3f1cf..0000000 --- a/src/common/achievement_progress.h +++ /dev/null @@ -1,55 +0,0 @@ -#pragma once -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * @brief Linked-list node describing an achievement progress entry. - * - * This is a lightweight representation used to track an achievement's progress - * state. It is used as a singly-linked list via @c next. - * - * Ownership: - * - Instances returned by @ref copy_achievement_progress are owned by the caller - * and must be freed with @ref free_achievement_progress. - * - All string fields are deep-copied by the copy helper and freed by the free - * helper. - */ -typedef struct achievement_progress { - /** Service configuration id. */ - const char *service_config_id; - /** Achievement id. */ - const char *id; - /** Progress state. */ - const char *progress_state; - /** Unix timestamp (seconds since epoch) when the achievement was unlocked, or 0 if locked. */ - int64_t unlocked_timestamp; - /** Next progress entry in the list, or NULL. */ - struct achievement_progress *next; -} achievement_progress_t; - -/** - * @brief Deep-copies a linked list of achievement progress entries. - * - * @param progress Head of the source list (may be NULL). - * - * @return Head of the newly allocated list, or NULL if @p progress is NULL. - * The caller owns the returned list and must free it with - * @ref free_achievement_progress. - */ -achievement_progress_t *copy_achievement_progress(const achievement_progress_t *progress); - -/** - * @brief Frees a linked list of achievement progress entries and sets the caller's pointer to NULL. - * - * Safe to call with NULL or with @c *progress == NULL. - * - * @param[in,out] progress Address of the head pointer to free. - */ -void free_achievement_progress(achievement_progress_t **progress); - -#ifdef __cplusplus -} -#endif diff --git a/src/common/gamerscore.c b/src/common/gamerscore.c index 6a135c9..6dc20a2 100644 --- a/src/common/gamerscore.c +++ b/src/common/gamerscore.c @@ -1,5 +1,5 @@ #include "gamerscore.h" - +#include "integrations/xbox/contracts/xbox_unlocked_achievement.h" #include gamerscore_t *copy_gamerscore(const gamerscore_t *gamerscore) { @@ -11,7 +11,7 @@ gamerscore_t *copy_gamerscore(const gamerscore_t *gamerscore) { gamerscore_t *copy = bzalloc(sizeof(gamerscore_t)); copy->base_value = gamerscore->base_value; - copy->unlocked_achievements = copy_unlocked_achievement(gamerscore->unlocked_achievements); + copy->unlocked_achievements = xbox_copy_unlocked_achievement(gamerscore->unlocked_achievements); return copy; } @@ -23,7 +23,7 @@ void free_gamerscore(gamerscore_t **gamerscore) { } gamerscore_t *current = *gamerscore; - free_unlocked_achievement(¤t->unlocked_achievements); + xbox_free_unlocked_achievement(¤t->unlocked_achievements); bfree(current); *gamerscore = NULL; @@ -37,7 +37,7 @@ int gamerscore_compute(const gamerscore_t *gamerscore) { int total_value = gamerscore->base_value; - const unlocked_achievement_t *current = gamerscore->unlocked_achievements; + const xbox_unlocked_achievement_t *current = gamerscore->unlocked_achievements; while (current) { total_value += current->value; diff --git a/src/common/gamerscore.h b/src/common/gamerscore.h index 18b8e31..de866b0 100644 --- a/src/common/gamerscore.h +++ b/src/common/gamerscore.h @@ -1,6 +1,6 @@ #pragma once -#include "common/unlocked_achievement.h" +#include "integrations/xbox/contracts/xbox_unlocked_achievement.h" #ifdef __cplusplus extern "C" { @@ -23,9 +23,9 @@ extern "C" { */ typedef struct gamerscore { /** Base gamerscore value. */ - int base_value; + int base_value; /** Linked list of unlocked achievements used to compute additional score. */ - unlocked_achievement_t *unlocked_achievements; + xbox_unlocked_achievement_t *unlocked_achievements; } gamerscore_t; /** diff --git a/src/common/identity.h b/src/common/identity.h index 2d5f496..62462ff 100644 --- a/src/common/identity.h +++ b/src/common/identity.h @@ -1,7 +1,7 @@ #pragma once #include "common/gamerscore.h" -#include "common/xbox_identity.h" +#include "integrations/xbox/entities/xbox_identity.h" #include "integrations/retro-achievements/retro_achievements_monitor.h" #include diff --git a/src/common/types.h b/src/common/types.h index c6cbb7f..109b3f8 100644 --- a/src/common/types.h +++ b/src/common/types.h @@ -13,15 +13,16 @@ */ #include "common/memory.h" #include "common/achievement.h" -#include "common/achievement_progress.h" +#include "integrations/xbox/contracts/xbox_achievement.h" +#include "integrations/xbox/contracts/xbox_achievement_progress.h" +#include "integrations/xbox/contracts/xbox_unlocked_achievement.h" #include "common/device.h" #include "common/game.h" #include "common/gamerscore.h" #include "common/identity.h" #include "common/token.h" -#include "common/unlocked_achievement.h" -#include "common/xbox_identity.h" -#include "common/xbox_session.h" +#include "integrations/xbox/entities/xbox_identity.h" +#include "integrations/xbox/entities/xbox_session.h" #ifdef __cplusplus extern "C" { diff --git a/src/common/unlocked_achievement.c b/src/common/unlocked_achievement.c deleted file mode 100644 index fccd53f..0000000 --- a/src/common/unlocked_achievement.c +++ /dev/null @@ -1,58 +0,0 @@ -#include "unlocked_achievement.h" -#include "memory.h" -#include - -unlocked_achievement_t *copy_unlocked_achievement(const unlocked_achievement_t *unlocked_achievement) { - - if (!unlocked_achievement) { - return NULL; - } - - unlocked_achievement_t *root_copy = NULL; - unlocked_achievement_t *previous_copy = NULL; - - const unlocked_achievement_t *current = unlocked_achievement; - - while (current) { - const unlocked_achievement_t *next = current->next; - - unlocked_achievement_t *copy = bzalloc(sizeof(unlocked_achievement_t)); - - copy->id = bstrdup(current->id); - copy->value = current->value; - - if (previous_copy) { - previous_copy->next = copy; - } - - previous_copy = copy; - current = next; - - if (!root_copy) { - root_copy = copy; - } - } - - return root_copy; -} - -void free_unlocked_achievement(unlocked_achievement_t **unlocked_achievement) { - - if (!unlocked_achievement || !*unlocked_achievement) { - return; - } - - unlocked_achievement_t *current = *unlocked_achievement; - - while (current) { - - unlocked_achievement_t *next = current->next; - - free_memory((void **)¤t->id); - free_memory((void **)¤t); - - current = next; - } - - *unlocked_achievement = NULL; -} diff --git a/src/common/unlocked_achievement.h b/src/common/unlocked_achievement.h deleted file mode 100644 index dbf5a65..0000000 --- a/src/common/unlocked_achievement.h +++ /dev/null @@ -1,49 +0,0 @@ -#pragma once - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * @brief Linked-list node describing an unlocked achievement and its value. - * - * This type is used as a singly-linked list via @c next. - * - * Ownership: - * - Instances returned by @ref copy_unlocked_achievement are owned by the caller - * and must be freed with @ref free_unlocked_achievement. - * - @c id is deep-copied by @ref copy_unlocked_achievement and freed by - * @ref free_unlocked_achievement. - */ -typedef struct unlocked_achievement { - /** Achievement id. */ - const char *id; - /** Gamerscore value contributed by this unlocked achievement. */ - int value; - /** Next node in the list, or NULL. */ - struct unlocked_achievement *next; -} unlocked_achievement_t; - -/** - * @brief Deep-copies a linked list of unlocked achievements. - * - * @param unlocked_achievement Head of the source list (may be NULL). - * - * @return Head of the newly allocated list, or NULL if @p unlocked_achievement - * is NULL. The caller owns the returned list and must free it with - * @ref free_unlocked_achievement. - */ -unlocked_achievement_t *copy_unlocked_achievement(const unlocked_achievement_t *unlocked_achievement); - -/** - * @brief Frees a linked list of unlocked achievements and sets the caller's pointer to NULL. - * - * Safe to call with NULL or with @c *unlocked_achievement == NULL. - * - * @param[in,out] unlocked_achievement Address of the head pointer to free. - */ -void free_unlocked_achievement(unlocked_achievement_t **unlocked_achievement); - -#ifdef __cplusplus -} -#endif diff --git a/src/integrations/monitoring_service.c b/src/integrations/monitoring_service.c index bf2ca0b..3564c63 100644 --- a/src/integrations/monitoring_service.c +++ b/src/integrations/monitoring_service.c @@ -5,6 +5,7 @@ #include "integrations/xbox/xbox_monitor.h" #include "integrations/xbox/xbox_client.h" +#include "integrations/xbox/contracts/xbox_achievement.h" #include "integrations/retro-achievements/retro_achievements_monitor.h" #include "common/identity.h" #include "common/game.h" @@ -53,6 +54,65 @@ static identity_t *g_retro_identity = NULL; static game_t *g_xbox_game = NULL; static game_t *g_retro_game = NULL; +/** Cached generic achievements for the current game (owned by this module). */ +static achievement_t *g_current_achievements = NULL; + +static on_monitoring_game_played_t g_game_played_callback = NULL; +static on_monitoring_achievements_changed_t g_achievements_changed_callback = NULL; +static on_monitoring_session_ready_t g_session_ready_callback = NULL; + +/** + * @brief Replace the cached achievements list with a new one. + * + * Frees the old list and stores @p new_achievements. Then fires the + * achievements-changed callback if one is registered. + * + * @param new_achievements New list to cache (ownership transferred to this module). + */ +static void replace_current_achievements(achievement_t *new_achievements) { + free_achievement(&g_current_achievements); + g_current_achievements = new_achievements; + + if (g_achievements_changed_callback) + g_achievements_changed_callback(); +} + +/** + * @brief Convert RetroAchievements records to a generic achievement_t linked list. + */ +static achievement_t *retro_to_achievements(const retro_achievement_t *retro, size_t count) { + achievement_t *root = NULL; + achievement_t *previous = NULL; + + for (size_t i = 0; i < count; i++) { + const retro_achievement_t *r = &retro[i]; + + achievement_t *a = bzalloc(sizeof(achievement_t)); + + /* retro_achievement_t.id is a uint32_t – convert to string */ + char id_buf[16]; + snprintf(id_buf, sizeof(id_buf), "%u", r->id); + a->id = bstrdup(id_buf); + + a->name = bstrdup(r->name); + a->description = bstrdup(r->description); + a->icon_url = bstrdup(r->badge_url); + a->is_secret = false; + a->value = (int)r->points; + a->unlocked_timestamp = (strcmp(r->status, "unlocked") == 0) ? 1 : 0; + a->source = ACHIEVEMENT_SOURCE_RETRO; + + if (previous) { + previous->next = a; + } else { + root = a; + } + previous = a; + } + + return root; +} + /* -------------------------------------------------------------------------- * Xbox callbacks * ----------------------------------------------------------------------- */ @@ -99,7 +159,8 @@ static void on_xbox_connection_changed(bool connected, const char *error_message g_connection_changed_callback(connected, error_message); } -static void on_xbox_achievements_progressed(const gamerscore_t *gamerscore, const achievement_progress_t *progress) { +static void on_xbox_achievements_progressed(const gamerscore_t *gamerscore, + const xbox_achievement_progress_t *progress) { UNUSED_PARAMETER(gamerscore); UNUSED_PARAMETER(progress); @@ -109,6 +170,9 @@ static void on_xbox_achievements_progressed(const gamerscore_t *gamerscore, cons refresh_xbox_score(g_xbox_identity); obs_log(LOG_INFO, "[MonitoringService] Xbox score updated: %u", g_xbox_identity->score); + /* Refresh the cached generic achievements */ + replace_current_achievements(xbox_to_achievements(get_current_game_achievements())); + if (g_xbox_game) notify_active_identity(g_xbox_identity); } @@ -118,7 +182,26 @@ static void on_xbox_game_played(const game_t *game) { g_xbox_game = copy_game(game); obs_log(LOG_INFO, "[MonitoringService] Xbox game cached: %s", g_xbox_game ? g_xbox_game->title : "(null)"); + /* Clear cached achievements — they belong to the previous game */ + replace_current_achievements(NULL); + notify_active_identity(g_xbox_identity); + + if (g_game_played_callback) + g_game_played_callback(game); +} + +/** + * @brief Xbox monitor callback invoked when the session is fully ready. + * + * Converts the Xbox achievements to generic form and caches them, then + * notifies subscribers. + */ +static void on_xbox_session_ready(void) { + replace_current_achievements(xbox_to_achievements(get_current_game_achievements())); + + if (g_session_ready_callback) + g_session_ready_callback(); } /* -------------------------------------------------------------------------- @@ -161,11 +244,28 @@ static void on_retro_game_playing(const retro_game_t *retro_game) { obs_log(LOG_INFO, "[MonitoringService] Retro game cached: %s (%s)", g_retro_game->title, g_retro_game->console_name); + /* Clear cached achievements — they belong to the previous game */ + replace_current_achievements(NULL); + notify_active_identity(g_retro_identity); + + if (g_game_played_callback) + g_game_played_callback(g_retro_game); } static void on_retro_no_game(void) { free_game(&g_retro_game); + replace_current_achievements(NULL); +} + +/** + * @brief RetroAchievements callback invoked when the achievements list is received. + */ +static void on_retro_achievements(const retro_achievement_t *achievements, size_t count) { + replace_current_achievements(retro_to_achievements(achievements, count)); + + if (g_session_ready_callback) + g_session_ready_callback(); } /* -------------------------------------------------------------------------- @@ -176,12 +276,14 @@ void monitoring_start(void) { xbox_subscribe_connected_changed(on_xbox_connection_changed); xbox_subscribe_achievements_progressed(on_xbox_achievements_progressed); xbox_subscribe_game_played(on_xbox_game_played); + xbox_subscribe_session_ready(on_xbox_session_ready); retro_achievements_subscribe_connection_changed(on_retro_connection_changed); retro_achievements_subscribe_user(on_retro_user); retro_achievements_subscribe_no_user(on_retro_no_user); retro_achievements_subscribe_game_playing(on_retro_game_playing); retro_achievements_subscribe_no_game(on_retro_no_game); + retro_achievements_subscribe_achievements(on_retro_achievements); xbox_monitoring_start(); retro_achievements_monitor_start(); @@ -194,19 +296,26 @@ void monitoring_stop(void) { xbox_subscribe_connected_changed(NULL); xbox_subscribe_achievements_progressed(NULL); xbox_subscribe_game_played(NULL); + xbox_subscribe_session_ready(NULL); retro_achievements_subscribe_connection_changed(NULL); retro_achievements_subscribe_user(NULL); retro_achievements_subscribe_no_user(NULL); retro_achievements_subscribe_game_playing(NULL); retro_achievements_subscribe_no_game(NULL); + retro_achievements_subscribe_achievements(NULL); free_identity_t(&g_xbox_identity); free_identity_t(&g_retro_identity); free_game(&g_xbox_game); free_game(&g_retro_game); + free_achievement(&g_current_achievements); clear_active_identity_subscriptions(); + + g_game_played_callback = NULL; + g_achievements_changed_callback = NULL; + g_session_ready_callback = NULL; } void monitoring_subscribe_connection_changed(on_monitoring_connection_changed_t callback) { @@ -229,3 +338,19 @@ void monitoring_subscribe_active_identity(on_monitoring_active_identity_changed_ node->next = g_active_identity_subscriptions; g_active_identity_subscriptions = node; } + +void monitoring_subscribe_game_played(on_monitoring_game_played_t callback) { + g_game_played_callback = callback; +} + +void monitoring_subscribe_achievements_changed(on_monitoring_achievements_changed_t callback) { + g_achievements_changed_callback = callback; +} + +void monitoring_subscribe_session_ready(on_monitoring_session_ready_t callback) { + g_session_ready_callback = callback; +} + +const achievement_t *monitoring_get_current_game_achievements(void) { + return g_current_achievements; +} diff --git a/src/integrations/monitoring_service.h b/src/integrations/monitoring_service.h index 25042b0..ca5955b 100644 --- a/src/integrations/monitoring_service.h +++ b/src/integrations/monitoring_service.h @@ -1,5 +1,7 @@ #pragma once +#include "common/achievement.h" +#include "common/game.h" #include "common/identity.h" #include @@ -42,6 +44,33 @@ typedef void (*on_monitoring_connection_changed_t)(bool connected, const char *e */ typedef void (*on_monitoring_active_identity_changed_t)(const identity_t *identity); +/** + * @brief Callback invoked when the current game changes. + * + * Fired by whichever integration detects a new game being played. + * May be called with NULL when no game is active. + * + * @param game The currently played game, or NULL. + */ +typedef void (*on_monitoring_game_played_t)(const game_t *game); + +/** + * @brief Callback invoked when the achievements list for the current game changes. + * + * Fired whenever an integration receives new or updated achievements (e.g. + * after an unlock or when the full list is first fetched). + */ +typedef void (*on_monitoring_achievements_changed_t)(void); + +/** + * @brief Callback invoked when the session is fully ready. + * + * "Ready" means the current game's achievements have been fetched and all + * achievement icons have been prefetched to the local cache. This is the + * appropriate moment to start the achievement display cycle. + */ +typedef void (*on_monitoring_session_ready_t)(void); + /** * @brief Start all integration monitors. * @@ -82,6 +111,52 @@ void monitoring_subscribe_connection_changed(on_monitoring_connection_changed_t */ void monitoring_subscribe_active_identity(on_monitoring_active_identity_changed_t callback); +/** + * @brief Subscribe to game-played events from any integration. + * + * The callback is fired whenever either integration detects a new game. + * Passing NULL unsubscribes. + * + * @param callback Function to invoke when the current game changes, or NULL + * to unsubscribe. + */ +void monitoring_subscribe_game_played(on_monitoring_game_played_t callback); + +/** + * @brief Subscribe to achievements-changed events from any integration. + * + * The callback is fired whenever the cached achievements list is updated + * (new game, unlock, progress). Passing NULL unsubscribes. + * + * @param callback Function to invoke when achievements change, or NULL + * to unsubscribe. + */ +void monitoring_subscribe_achievements_changed(on_monitoring_achievements_changed_t callback); + +/** + * @brief Subscribe to session-ready events from any integration. + * + * The callback is fired once per game change after all achievement icons have + * been prefetched. Passing NULL unsubscribes. + * + * @param callback Function to invoke when the session is ready, or NULL + * to unsubscribe. + */ +void monitoring_subscribe_session_ready(on_monitoring_session_ready_t callback); + +/** + * @brief Get the cached generic achievements list for the current game. + * + * Returns the achievements converted to generic @ref achievement_t form, + * regardless of which integration provided them. + * + * Ownership/lifetime: the returned pointer is owned by the monitoring service + * and may be replaced on the next update. Copy if you need to keep it. + * + * @return Head of the generic achievements linked list, or NULL if unavailable. + */ +const achievement_t *monitoring_get_current_game_achievements(void); + #ifdef __cplusplus } #endif diff --git a/src/integrations/retro-achievements/retro_achievements_monitor.c b/src/integrations/retro-achievements/retro_achievements_monitor.c index d99f7f6..a255782 100644 --- a/src/integrations/retro-achievements/retro_achievements_monitor.c +++ b/src/integrations/retro-achievements/retro_achievements_monitor.c @@ -329,6 +329,10 @@ static void on_message_received(const char *buffer) { if (json_item_is_string(field)) strncpy(ach->name, field->valuestring, sizeof(ach->name) - 1); + field = cJSON_GetObjectItemCaseSensitive(item, "description"); + if (json_item_is_string(field)) + strncpy(ach->description, field->valuestring, sizeof(ach->description) - 1); + field = cJSON_GetObjectItemCaseSensitive(item, "points"); if (field != NULL && (field->type & cJSON_Number)) ach->points = (uint32_t)field->valuedouble; @@ -341,7 +345,7 @@ static void on_message_received(const char *buffer) { if (json_item_is_string(field)) strncpy(ach->badge_url, field->valuestring, sizeof(ach->badge_url) - 1); - obs_log(LOG_INFO, "[RetroAchievements] Achievement: %s (%u points)", ach->name, ach->points); + obs_log(LOG_INFO, "[RetroAchievements] %d - Achievement: %s (%u points)", idx, ach->name, ach->points); } notify_achievements(achievements, (size_t)count); diff --git a/src/integrations/retro-achievements/retro_achievements_monitor.h b/src/integrations/retro-achievements/retro_achievements_monitor.h index 2ab844c..ab7cee7 100644 --- a/src/integrations/retro-achievements/retro_achievements_monitor.h +++ b/src/integrations/retro-achievements/retro_achievements_monitor.h @@ -79,11 +79,12 @@ typedef struct { * server inside an @c "achievements" message. */ typedef struct { - uint32_t id; /**< Numeric achievement ID. */ - char name[256]; /**< Achievement title. */ - uint32_t points; /**< Point value of the achievement. */ - char status[16]; /**< "unlocked" or "locked". */ - char badge_url[512]; /**< Unlocked badge image URL; empty when absent. */ + uint32_t id; /**< Numeric achievement ID. */ + char name[256]; /**< Achievement title. */ + char description[1024]; /**< Achievement title. */ + uint32_t points; /**< Point value of the achievement. */ + char status[16]; /**< "unlocked" or "locked". */ + char badge_url[512]; /**< Unlocked badge image URL; empty when absent. */ } retro_achievement_t; /* ------------------------------------------------------------------------- diff --git a/src/integrations/xbox/contracts/xbox_achievement.c b/src/integrations/xbox/contracts/xbox_achievement.c new file mode 100644 index 0000000..6be4edf --- /dev/null +++ b/src/integrations/xbox/contracts/xbox_achievement.c @@ -0,0 +1,344 @@ +#include "integrations/xbox/contracts/xbox_achievement.h" +#include "common/memory.h" +#include "diagnostics/log.h" + +#include +#include +#include + +xbox_media_asset_t *xbox_copy_media_asset(const xbox_media_asset_t *media_asset) { + if (!media_asset) { + return NULL; + } + + xbox_media_asset_t *root_copy = NULL; + xbox_media_asset_t *previous_copy = NULL; + + const xbox_media_asset_t *current = media_asset; + + while (current) { + const xbox_media_asset_t *next = current->next; + + xbox_media_asset_t *copy = bzalloc(sizeof(xbox_media_asset_t)); + copy->url = bstrdup(current->url); + + if (previous_copy) { + previous_copy->next = copy; + } + + previous_copy = copy; + current = next; + + if (!root_copy) { + root_copy = copy; + } + } + + return root_copy; +} + +void xbox_free_media_asset(xbox_media_asset_t **media_asset) { + + if (!media_asset || !*media_asset) { + return; + } + + xbox_media_asset_t *current = *media_asset; + + while (current) { + xbox_media_asset_t *next = current->next; + + free_memory((void **)¤t->url); + free_memory((void **)¤t); + + current = next; + } + + *media_asset = NULL; +} + +xbox_reward_t *xbox_copy_reward(const xbox_reward_t *reward) { + + if (!reward) { + return NULL; + } + + xbox_reward_t *root_copy = NULL; + xbox_reward_t *previous_copy = NULL; + + const xbox_reward_t *current = reward; + + while (current) { + const xbox_reward_t *next = current->next; + + xbox_reward_t *copy = bzalloc(sizeof(xbox_reward_t)); + copy->value = bstrdup(current->value); + + if (previous_copy) { + previous_copy->next = copy; + } + + previous_copy = copy; + current = next; + + if (!root_copy) { + root_copy = copy; + } + } + + return root_copy; +} + +void xbox_free_reward(xbox_reward_t **reward) { + + if (!reward || !*reward) { + return; + } + + xbox_reward_t *current = *reward; + + while (current) { + xbox_reward_t *next = current->next; + + free_memory((void **)¤t->value); + free_memory((void **)¤t); + + current = next; + } + + *reward = NULL; +} + +xbox_achievement_t *xbox_copy_achievement(const xbox_achievement_t *achievement) { + + if (!achievement) { + return NULL; + } + + xbox_achievement_t *root_copy = NULL; + xbox_achievement_t *previous_copy = NULL; + + const xbox_achievement_t *current = achievement; + + while (current) { + const xbox_achievement_t *next = current->next; + + xbox_achievement_t *copy = bzalloc(sizeof(xbox_achievement_t)); + + copy->id = bstrdup(current->id); + copy->description = bstrdup(current->description); + copy->locked_description = bstrdup(current->locked_description); + copy->name = bstrdup(current->name); + copy->progress_state = bstrdup(current->progress_state); + copy->service_config_id = bstrdup(current->service_config_id); + copy->icon_url = bstrdup(current->icon_url); + copy->media_assets = xbox_copy_media_asset(current->media_assets); + copy->rewards = xbox_copy_reward(current->rewards); + copy->is_secret = current->is_secret; + copy->unlocked_timestamp = current->unlocked_timestamp; + + if (previous_copy) { + previous_copy->next = copy; + } + + previous_copy = copy; + current = next; + + if (!root_copy) { + root_copy = copy; + } + } + + return root_copy; +} + +void xbox_free_achievement(xbox_achievement_t **achievement) { + + if (!achievement || !*achievement) { + return; + } + + xbox_achievement_t *current = *achievement; + + while (current) { + xbox_achievement_t *next = current->next; + + free_memory((void **)¤t->service_config_id); + free_memory((void **)¤t->id); + free_memory((void **)¤t->name); + free_memory((void **)¤t->description); + free_memory((void **)¤t->locked_description); + free_memory((void **)¤t->progress_state); + free_memory((void **)¤t->icon_url); + xbox_free_media_asset(¤t->media_assets); + xbox_free_reward(¤t->rewards); + free_memory((void **)¤t); + + current = next; + } + + *achievement = NULL; +} + +int xbox_count_achievements(const xbox_achievement_t *achievements) { + int count = 0; + const xbox_achievement_t *current = achievements; + + while (current) { + count++; + current = current->next; + } + + obs_log(LOG_DEBUG, "Found %d Xbox achievements", count); + + return count; +} + +const xbox_achievement_t *xbox_find_latest_unlocked_achievement(const xbox_achievement_t *achievements) { + const xbox_achievement_t *last_unlocked = NULL; + int64_t latest_timestamp = 0; + + for (const xbox_achievement_t *a = achievements; a != NULL; a = a->next) { + if (a->unlocked_timestamp > latest_timestamp) { + latest_timestamp = a->unlocked_timestamp; + last_unlocked = a; + } + } + + return last_unlocked; +} + +int xbox_count_locked_achievements(const xbox_achievement_t *achievements) { + int count = 0; + + for (const xbox_achievement_t *a = achievements; a != NULL; a = a->next) { + if (a->unlocked_timestamp == 0) { + count++; + } + } + + obs_log(LOG_DEBUG, "Found %d locked Xbox achievements", count); + + return count; +} + +int xbox_count_unlocked_achievements(const xbox_achievement_t *achievements) { + int count = 0; + + for (const xbox_achievement_t *a = achievements; a != NULL; a = a->next) { + if (a->unlocked_timestamp > 0) { + count++; + } + } + + obs_log(LOG_DEBUG, "Found %d unlocked Xbox achievements", count); + + return count; +} + +const xbox_achievement_t *xbox_get_random_locked_achievement(const xbox_achievement_t *achievements) { + const int locked_count = xbox_count_locked_achievements(achievements); + + if (locked_count == 0) { + return NULL; + } + + const int target_index = rand() % locked_count; + int current_index = 0; + + for (const xbox_achievement_t *a = achievements; a != NULL; a = a->next) { + if (a->unlocked_timestamp == 0) { + if (current_index == target_index) { + return a; + } + current_index++; + } + } + + return NULL; +} + +void xbox_sort_achievements(xbox_achievement_t **achievements) { + + if (!achievements || !*achievements || !(*achievements)->next) { + return; + } + + xbox_achievement_t *sorted = NULL; + xbox_achievement_t *current = *achievements; + + /* Insertion sort: take each node from the original list and insert it in sorted order */ + while (current) { + xbox_achievement_t *next = current->next; + + if (!sorted) { + sorted = current; + sorted->next = NULL; + } else { + bool should_insert_before_head = false; + + if (sorted->unlocked_timestamp == 0 && current->unlocked_timestamp != 0) { + should_insert_before_head = true; + } else if (current->unlocked_timestamp != 0 && sorted->unlocked_timestamp != 0 && + current->unlocked_timestamp > sorted->unlocked_timestamp) { + should_insert_before_head = true; + } + + if (should_insert_before_head) { + current->next = sorted; + sorted = current; + } else { + xbox_achievement_t *search = sorted; + while (search->next) { + bool should_insert_here = false; + + if (search->next->unlocked_timestamp == 0 && current->unlocked_timestamp != 0) { + should_insert_here = true; + } else if (current->unlocked_timestamp != 0 && search->next->unlocked_timestamp != 0 && + current->unlocked_timestamp > search->next->unlocked_timestamp) { + should_insert_here = true; + } + + if (should_insert_here) { + break; + } + search = search->next; + } + + current->next = search->next; + search->next = current; + } + } + + current = next; + } + + *achievements = sorted; +} + +achievement_t *xbox_to_achievements(const xbox_achievement_t *xbox) { + + achievement_t *root = NULL; + achievement_t *previous = NULL; + + for (const xbox_achievement_t *x = xbox; x != NULL; x = x->next) { + achievement_t *a = bzalloc(sizeof(achievement_t)); + a->id = bstrdup(x->id); + a->name = bstrdup(x->name); + a->description = bstrdup(x->description); + a->icon_url = bstrdup(x->icon_url); + a->is_secret = x->is_secret; + a->value = (x->rewards && x->rewards->value) ? atoi(x->rewards->value) : 0; + a->unlocked_timestamp = x->unlocked_timestamp; + a->source = ACHIEVEMENT_SOURCE_XBOX; + + if (previous) { + previous->next = a; + } else { + root = a; + } + previous = a; + } + + return root; +} diff --git a/src/integrations/xbox/contracts/xbox_achievement.h b/src/integrations/xbox/contracts/xbox_achievement.h new file mode 100644 index 0000000..0ed6ef0 --- /dev/null +++ b/src/integrations/xbox/contracts/xbox_achievement.h @@ -0,0 +1,217 @@ +#pragma once + +#include "common/achievement.h" +#include "time/time.h" + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @brief Linked-list node describing a media asset for an Xbox achievement. + * + * Notes on ownership: + * - In objects created by the copy_* helpers, @c url points to an allocated + * NUL-terminated string that must be freed by @ref xbox_free_media_asset. + * - The list is singly-linked via @c next. + */ +typedef struct xbox_media_asset { + /** Media URL (typically UTF-8). */ + const char *url; + /** Next node in the list, or NULL. */ + struct xbox_media_asset *next; +} xbox_media_asset_t; + +/** + * @brief Linked-list node describing a reward associated with an Xbox achievement. + * + * Notes on ownership: + * - In objects created by the copy_* helpers, @c value points to an allocated + * NUL-terminated string that must be freed by @ref xbox_free_reward. + * - The list is singly-linked via @c next. + */ +typedef struct xbox_reward { + /** Reward value (the format depends on upstream service). */ + const char *value; + /** Next node in the list, or NULL. */ + struct xbox_reward *next; +} xbox_reward_t; + +/** + * @brief Linked-list node describing an Xbox achievement and its metadata. + * + * This type is used as a singly linked list (@c next). Most fields are strings + * coming from the Xbox Live service. When an @c xbox_achievement_t is produced + * by @ref xbox_copy_achievement, all strings and nested lists are deep-copied. + * + * Ownership: + * - Instances returned by @ref xbox_copy_achievement are owned by the caller + * and must be freed with @ref xbox_free_achievement. + * - @c media_assets and @c rewards are nested linked lists and are freed by + * @ref xbox_free_achievement. + */ +typedef struct xbox_achievement { + /** Achievement id. */ + char *id; + /** Service configuration id. Used for monitoring. */ + char *service_config_id; + /** Display name. */ + char *name; + /** Progress state (service-provided string). */ + char *progress_state; + /** Linked list of media assets associated with this achievement. */ + xbox_media_asset_t *media_assets; + /** Whether the achievement is secret. */ + bool is_secret; + /** Description shown when not secret/unlocked. */ + char *description; + /** Description shown when locked/secret. */ + char *locked_description; + /** Linked list of rewards associated with this achievement. */ + xbox_reward_t *rewards; + /** Unix timestamp (seconds since epoch) when the achievement was unlocked, or 0 if locked. */ + int64_t unlocked_timestamp; + /** + * Small icon or tile image URL for the achievement. + * + * Typically points to a PNG/JPEG hosted by the service. + */ + char *icon_url; + /** Next achievement in the list, or NULL. */ + struct xbox_achievement *next; +} xbox_achievement_t; + +/** + * @brief Deep-copies a linked list of Xbox media assets. + * + * @param media_asset Head of the source list (may be NULL). + * + * @return Head of the newly allocated list, or NULL if @p media_asset is NULL. + * The caller owns the returned list and must free it with + * @ref xbox_free_media_asset. + */ +xbox_media_asset_t *xbox_copy_media_asset(const xbox_media_asset_t *media_asset); + +/** + * @brief Frees a linked list of Xbox media assets and sets the caller's pointer to NULL. + * + * Safe to call with NULL or with @c *media_asset == NULL. + * + * @param[in,out] media_asset Address of the head pointer to free. + */ +void xbox_free_media_asset(xbox_media_asset_t **media_asset); + +/** + * @brief Deep-copies a linked list of Xbox rewards. + * + * @param reward Head of the source list (may be NULL). + * + * @return Head of the newly allocated list, or NULL if @p reward is NULL. + * The caller owns the returned list and must free it with + * @ref xbox_free_reward. + */ +xbox_reward_t *xbox_copy_reward(const xbox_reward_t *reward); + +/** + * @brief Frees a linked list of Xbox rewards and sets the caller's pointer to NULL. + * + * Safe to call with NULL or with @c *reward == NULL. + * + * @param[in,out] reward Address of the head pointer to free. + */ +void xbox_free_reward(xbox_reward_t **reward); + +/** + * @brief Deep-copies a linked list of Xbox achievements. + * + * Performs a deep copy of the list, including all strings and nested + * @c media_assets and @c rewards lists. + * + * @param achievement Head of the source list (may be NULL). + * + * @return Head of the newly allocated list, or NULL if @p achievement is NULL. + * The caller owns the returned list and must free it with + * @ref xbox_free_achievement. + */ +xbox_achievement_t *xbox_copy_achievement(const xbox_achievement_t *achievement); + +/** + * @brief Frees a linked list of Xbox achievements and sets the caller's pointer to NULL. + * + * Frees all strings and nested lists, then frees the list nodes. + * Safe to call with NULL or with @c *achievement == NULL. + * + * @param[in,out] achievement Address of the head pointer to free. + */ +void xbox_free_achievement(xbox_achievement_t **achievement); + +/** + * @brief Counts the number of Xbox achievements in a linked list. + * + * @param achievements Head of the list (may be NULL). + * + * @return Number of nodes in the list. Returns 0 if @p achievements is NULL. + */ +int xbox_count_achievements(const xbox_achievement_t *achievements); + +/** + * @brief Find the most recently unlocked Xbox achievement. + * + * Iterates through the achievements list and returns the one with the highest + * unlocked_timestamp (most recent unlock). + * + * @param achievements Head of the achievements linked list. + * @return Pointer to the most recently unlocked achievement, or NULL if none are unlocked. + */ +const xbox_achievement_t *xbox_find_latest_unlocked_achievement(const xbox_achievement_t *achievements); + +/** + * @brief Count the number of locked Xbox achievements. + * + * @param achievements Head of the achievements linked list. + * @return Number of locked achievements (unlocked_timestamp == 0). + */ +int xbox_count_locked_achievements(const xbox_achievement_t *achievements); + +/** + * @brief Count the number of unlocked Xbox achievements. + * + * @param achievements Head of the achievements linked list. + * @return Number of unlocked achievements (unlocked_timestamp != 0). + */ +int xbox_count_unlocked_achievements(const xbox_achievement_t *achievements); + +/** + * @brief Get a random locked Xbox achievement. + * + * @param achievements Head of the achievements linked list. + * @return Pointer to a random locked achievement, or NULL if none are locked. + */ +const xbox_achievement_t *xbox_get_random_locked_achievement(const xbox_achievement_t *achievements); + +/** + * @brief Sort Xbox achievements in place (unlocked first, then by timestamp descending). + * + * @param achievements Address of the head pointer to sort. + */ +void xbox_sort_achievements(xbox_achievement_t **achievements); + +/** + * @brief Convert a linked list of Xbox achievements to generic achievements. + * + * Maps the common fields from the Xbox contract type to the platform-agnostic + * @ref achievement_t type. The caller owns the returned list and must free it + * with @ref free_achievement. + * + * @param xbox Head of the Xbox achievements list (may be NULL). + * + * @return Head of the newly allocated generic list, or NULL if @p xbox is NULL. + */ +achievement_t *xbox_to_achievements(const xbox_achievement_t *xbox); + +#ifdef __cplusplus +} +#endif diff --git a/src/integrations/xbox/contracts/xbox_achievement_progress.c b/src/integrations/xbox/contracts/xbox_achievement_progress.c new file mode 100644 index 0000000..bf1d2c9 --- /dev/null +++ b/src/integrations/xbox/contracts/xbox_achievement_progress.c @@ -0,0 +1,60 @@ +#include "integrations/xbox/contracts/xbox_achievement_progress.h" +#include "common/memory.h" +#include + +xbox_achievement_progress_t *xbox_copy_achievement_progress(const xbox_achievement_progress_t *achievement_progress) { + + if (!achievement_progress) { + return NULL; + } + + xbox_achievement_progress_t *root_copy = NULL; + xbox_achievement_progress_t *previous_copy = NULL; + + const xbox_achievement_progress_t *current = achievement_progress; + + while (current) { + const xbox_achievement_progress_t *next = current->next; + + xbox_achievement_progress_t *copy = bzalloc(sizeof(xbox_achievement_progress_t)); + copy->id = bstrdup(current->id); + copy->progress_state = bstrdup(current->progress_state); + copy->service_config_id = bstrdup(current->service_config_id); + copy->unlocked_timestamp = current->unlocked_timestamp; + + if (previous_copy) { + previous_copy->next = copy; + } + + previous_copy = copy; + current = next; + + if (!root_copy) { + root_copy = copy; + } + } + + return root_copy; +} + +void xbox_free_achievement_progress(xbox_achievement_progress_t **achievement_progress) { + + if (!achievement_progress || !*achievement_progress) { + return; + } + + xbox_achievement_progress_t *current = *achievement_progress; + + while (current) { + xbox_achievement_progress_t *next = current->next; + + free_memory((void **)¤t->id); + free_memory((void **)¤t->progress_state); + free_memory((void **)¤t->service_config_id); + free_memory((void **)¤t); + + current = next; + } + + *achievement_progress = NULL; +} diff --git a/src/integrations/xbox/contracts/xbox_achievement_progress.h b/src/integrations/xbox/contracts/xbox_achievement_progress.h new file mode 100644 index 0000000..e696bb2 --- /dev/null +++ b/src/integrations/xbox/contracts/xbox_achievement_progress.h @@ -0,0 +1,56 @@ +#pragma once + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @brief Linked-list node describing an Xbox achievement progress entry. + * + * This is a lightweight representation used to track an Xbox achievement's + * progress state. It is used as a singly-linked list via @c next. + * + * Ownership: + * - Instances returned by @ref xbox_copy_achievement_progress are owned by the + * caller and must be freed with @ref xbox_free_achievement_progress. + * - All string fields are deep-copied by the copy helper and freed by the free + * helper. + */ +typedef struct xbox_achievement_progress { + /** Service configuration id. */ + const char *service_config_id; + /** Achievement id. */ + const char *id; + /** Progress state. */ + const char *progress_state; + /** Unix timestamp (seconds since epoch) when the achievement was unlocked, or 0 if locked. */ + int64_t unlocked_timestamp; + /** Next progress entry in the list, or NULL. */ + struct xbox_achievement_progress *next; +} xbox_achievement_progress_t; + +/** + * @brief Deep-copies a linked list of Xbox achievement progress entries. + * + * @param progress Head of the source list (may be NULL). + * + * @return Head of the newly allocated list, or NULL if @p progress is NULL. + * The caller owns the returned list and must free it with + * @ref xbox_free_achievement_progress. + */ +xbox_achievement_progress_t *xbox_copy_achievement_progress(const xbox_achievement_progress_t *progress); + +/** + * @brief Frees a linked list of Xbox achievement progress entries and sets the caller's pointer to NULL. + * + * Safe to call with NULL or with @c *progress == NULL. + * + * @param[in,out] progress Address of the head pointer to free. + */ +void xbox_free_achievement_progress(xbox_achievement_progress_t **progress); + +#ifdef __cplusplus +} +#endif diff --git a/src/integrations/xbox/contracts/xbox_unlocked_achievement.c b/src/integrations/xbox/contracts/xbox_unlocked_achievement.c new file mode 100644 index 0000000..5fc7e08 --- /dev/null +++ b/src/integrations/xbox/contracts/xbox_unlocked_achievement.c @@ -0,0 +1,57 @@ +#include "integrations/xbox/contracts/xbox_unlocked_achievement.h" +#include "common/memory.h" +#include + +xbox_unlocked_achievement_t *xbox_copy_unlocked_achievement(const xbox_unlocked_achievement_t *unlocked_achievement) { + + if (!unlocked_achievement) { + return NULL; + } + + xbox_unlocked_achievement_t *root_copy = NULL; + xbox_unlocked_achievement_t *previous_copy = NULL; + + const xbox_unlocked_achievement_t *current = unlocked_achievement; + + while (current) { + const xbox_unlocked_achievement_t *next = current->next; + + xbox_unlocked_achievement_t *copy = bzalloc(sizeof(xbox_unlocked_achievement_t)); + + copy->id = bstrdup(current->id); + copy->value = current->value; + + if (previous_copy) { + previous_copy->next = copy; + } + + previous_copy = copy; + current = next; + + if (!root_copy) { + root_copy = copy; + } + } + + return root_copy; +} + +void xbox_free_unlocked_achievement(xbox_unlocked_achievement_t **unlocked_achievement) { + + if (!unlocked_achievement || !*unlocked_achievement) { + return; + } + + xbox_unlocked_achievement_t *current = *unlocked_achievement; + + while (current) { + xbox_unlocked_achievement_t *next = current->next; + + free_memory((void **)¤t->id); + free_memory((void **)¤t); + + current = next; + } + + *unlocked_achievement = NULL; +} diff --git a/src/integrations/xbox/contracts/xbox_unlocked_achievement.h b/src/integrations/xbox/contracts/xbox_unlocked_achievement.h new file mode 100644 index 0000000..8790065 --- /dev/null +++ b/src/integrations/xbox/contracts/xbox_unlocked_achievement.h @@ -0,0 +1,49 @@ +#pragma once + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @brief Linked-list node describing an unlocked Xbox achievement and its value. + * + * This type is used as a singly-linked list via @c next. + * + * Ownership: + * - Instances returned by @ref xbox_copy_unlocked_achievement are owned by the + * caller and must be freed with @ref xbox_free_unlocked_achievement. + * - @c id is deep-copied by @ref xbox_copy_unlocked_achievement and freed by + * @ref xbox_free_unlocked_achievement. + */ +typedef struct xbox_unlocked_achievement { + /** Achievement id. */ + const char *id; + /** Gamerscore value contributed by this unlocked achievement. */ + int value; + /** Next node in the list, or NULL. */ + struct xbox_unlocked_achievement *next; +} xbox_unlocked_achievement_t; + +/** + * @brief Deep-copies a linked list of unlocked Xbox achievements. + * + * @param unlocked_achievement Head of the source list (may be NULL). + * + * @return Head of the newly allocated list, or NULL if @p unlocked_achievement + * is NULL. The caller owns the returned list and must free it with + * @ref xbox_free_unlocked_achievement. + */ +xbox_unlocked_achievement_t *xbox_copy_unlocked_achievement(const xbox_unlocked_achievement_t *unlocked_achievement); + +/** + * @brief Frees a linked list of unlocked Xbox achievements and sets the caller's pointer to NULL. + * + * Safe to call with NULL or with @c *unlocked_achievement == NULL. + * + * @param[in,out] unlocked_achievement Address of the head pointer to free. + */ +void xbox_free_unlocked_achievement(xbox_unlocked_achievement_t **unlocked_achievement); + +#ifdef __cplusplus +} +#endif diff --git a/src/common/xbox_identity.c b/src/integrations/xbox/entities/xbox_identity.c similarity index 90% rename from src/common/xbox_identity.c rename to src/integrations/xbox/entities/xbox_identity.c index 3c271a0..afdd69e 100644 --- a/src/common/xbox_identity.c +++ b/src/integrations/xbox/entities/xbox_identity.c @@ -1,6 +1,6 @@ -#include "xbox_identity.h" +#include "integrations/xbox/entities/xbox_identity.h" -#include "memory.h" +#include "common/memory.h" xbox_identity_t *copy_xbox_identity(const xbox_identity_t *identity) { diff --git a/src/common/xbox_identity.h b/src/integrations/xbox/entities/xbox_identity.h similarity index 98% rename from src/common/xbox_identity.h rename to src/integrations/xbox/entities/xbox_identity.h index f796b17..69eaf0a 100644 --- a/src/common/xbox_identity.h +++ b/src/integrations/xbox/entities/xbox_identity.h @@ -1,6 +1,6 @@ #pragma once -#include "token.h" +#include "common/token.h" #ifdef __cplusplus extern "C" { diff --git a/src/common/xbox_session.c b/src/integrations/xbox/entities/xbox_session.c similarity index 81% rename from src/common/xbox_session.c rename to src/integrations/xbox/entities/xbox_session.c index c9cfc99..b9e9cf1 100644 --- a/src/common/xbox_session.c +++ b/src/integrations/xbox/entities/xbox_session.c @@ -1,4 +1,4 @@ -#include "common/xbox_session.h" +#include "integrations/xbox/entities/xbox_session.h" #include @@ -11,7 +11,7 @@ xbox_session_t *copy_xbox_session(const xbox_session_t *session) { xbox_session_t *copy = bzalloc(sizeof(xbox_session_t)); copy->game = copy_game(session->game); copy->gamerscore = copy_gamerscore(session->gamerscore); - copy->achievements = copy_achievement(session->achievements); + copy->achievements = xbox_copy_achievement(session->achievements); return copy; } @@ -26,7 +26,7 @@ void free_xbox_session(xbox_session_t **session) { free_game(¤t->game); free_gamerscore(¤t->gamerscore); - free_achievement(¤t->achievements); + xbox_free_achievement(¤t->achievements); bfree(current); *session = NULL; diff --git a/src/common/xbox_session.h b/src/integrations/xbox/entities/xbox_session.h similarity index 91% rename from src/common/xbox_session.h rename to src/integrations/xbox/entities/xbox_session.h index fbb0124..4c61528 100644 --- a/src/common/xbox_session.h +++ b/src/integrations/xbox/entities/xbox_session.h @@ -1,6 +1,6 @@ #pragma once -#include "common/achievement.h" +#include "integrations/xbox/contracts/xbox_achievement.h" #include "common/game.h" #include "common/gamerscore.h" @@ -22,11 +22,11 @@ extern "C" { */ typedef struct xbox_session { /** Current game information. */ - game_t *game; + game_t *game; /** Gamerscore container (base value + unlocked achievements). */ - gamerscore_t *gamerscore; + gamerscore_t *gamerscore; /** Linked list of achievements for the game. */ - achievement_t *achievements; + xbox_achievement_t *achievements; } xbox_session_t; /** diff --git a/src/integrations/xbox/xbox_client.c b/src/integrations/xbox/xbox_client.c index d17bc99..1b0916f 100644 --- a/src/integrations/xbox/xbox_client.c +++ b/src/integrations/xbox/xbox_client.c @@ -493,7 +493,7 @@ game_t *xbox_get_current_game(void) { return game; } -achievement_t *xbox_get_game_achievements(const game_t *game) { +xbox_achievement_t *xbox_get_game_achievements(const game_t *game) { if (!game) { return NULL; @@ -506,9 +506,9 @@ achievement_t *xbox_get_game_achievements(const game_t *game) { return NULL; } - achievement_t *all_achievements = NULL; - achievement_t *last_achievement = NULL; - char *continuation_token = NULL; + xbox_achievement_t *all_achievements = NULL; + xbox_achievement_t *last_achievement = NULL; + char *continuation_token = NULL; char headers[4096]; snprintf(headers, @@ -523,8 +523,8 @@ achievement_t *xbox_get_game_achievements(const game_t *game) { /* Pagination loop: keep fetching until no continuation token */ do { - char *response_json = NULL; - achievement_t *page_achievements = NULL; + char *response_json = NULL; + xbox_achievement_t *page_achievements = NULL; /* Build the URL with or without continuation token */ char achievements_url[1024]; @@ -590,7 +590,7 @@ achievement_t *xbox_get_game_achievements(const game_t *game) { } while (continuation_token); - obs_log(LOG_INFO, "Received %d achievements for game %s", count_achievements(all_achievements), game->title); + obs_log(LOG_INFO, "Received %d achievements for game %s", xbox_count_achievements(all_achievements), game->title); free_identity(&identity); diff --git a/src/integrations/xbox/xbox_client.h b/src/integrations/xbox/xbox_client.h index c596399..d2063e6 100644 --- a/src/integrations/xbox/xbox_client.h +++ b/src/integrations/xbox/xbox_client.h @@ -36,9 +36,9 @@ game_t *xbox_get_current_game(void); * * @return Head of a newly allocated linked list of achievements, or NULL on * error. The caller owns the returned list and must free it with - * @ref free_achievement. + * @ref xbox_free_achievement. */ -achievement_t *xbox_get_game_achievements(const game_t *game); +xbox_achievement_t *xbox_get_game_achievements(const game_t *game); /** * @brief Fetches a cover image URL for a given game. diff --git a/src/integrations/xbox/xbox_monitor.c b/src/integrations/xbox/xbox_monitor.c index 02f2ca8..e08fa70 100644 --- a/src/integrations/xbox/xbox_monitor.c +++ b/src/integrations/xbox/xbox_monitor.c @@ -229,7 +229,7 @@ static void notify_game_played(const game_t *game) { /** * @brief Invoke all registered achievement progressed subscribers. */ -static void notify_achievements_progressed(const achievement_progress_t *achievements_progress) { +static void notify_achievements_progressed(const xbox_achievement_progress_t *achievements_progress) { obs_log(LOG_INFO, "[Monitoring] Notifying achievements progress: %s", achievements_progress->service_config_id); @@ -398,7 +398,7 @@ static bool xbox_achievements_progress_subscribe(const xbox_session_t *session) return false; } - const achievement_t *achievements = session->achievements; + const xbox_achievement_t *achievements = session->achievements; if (!achievements) { obs_log(LOG_ERROR, "[Monitoring] No achievements specified"); @@ -443,7 +443,7 @@ static bool xbox_achievements_progress_unsubscribe(const xbox_session_t *session return false; } - const achievement_t *achievements = session->achievements; + const xbox_achievement_t *achievements = session->achievements; if (!achievements) { obs_log(LOG_ERROR, "[Monitoring] No achievements specified"); @@ -511,7 +511,7 @@ static void on_game_update_received(game_t *game) { /** * @brief Handle a parsed achievement progress message. */ -static void on_achievement_progress_received(const achievement_progress_t *progress) { +static void on_achievement_progress_received(const xbox_achievement_progress_t *progress) { if (!progress) { /* No change */ @@ -633,9 +633,9 @@ static void on_buffer_received(const char *buffer) { if (is_achievement_message(message)) { obs_log(LOG_DEBUG, "[Monitoring] Message is an achievement message"); - achievement_progress_t *progress = parse_achievement_progress(message); + xbox_achievement_progress_t *progress = parse_achievement_progress(message); on_achievement_progress_received(progress); - free_achievement_progress(&progress); + xbox_free_achievement_progress(&progress); } cleanup: @@ -970,7 +970,7 @@ const gamerscore_t *get_current_gamerscore(void) { return g_current_session.gamerscore; } -const achievement_t *get_current_game_achievements() { +const xbox_achievement_t *get_current_game_achievements() { return g_current_session.achievements; } @@ -1094,7 +1094,7 @@ const game_t *get_current_game() { return NULL; } -const achievement_t *get_current_game_achievements() { +const xbox_achievement_t *get_current_game_achievements() { return NULL; } diff --git a/src/integrations/xbox/xbox_monitor.h b/src/integrations/xbox/xbox_monitor.h index 3f8e56f..94b29af 100644 --- a/src/integrations/xbox/xbox_monitor.h +++ b/src/integrations/xbox/xbox_monitor.h @@ -46,8 +46,8 @@ typedef void (*on_xbox_game_played_t)(const game_t *game); * @param gamerscore Current gamerscore snapshot. * @param achievements_progress Linked list of achievement progress items. */ -typedef void (*on_xbox_achievements_progressed_t)(const gamerscore_t *gamerscore, - const achievement_progress_t *achievements_progress); +typedef void (*on_xbox_achievements_progressed_t)(const gamerscore_t *gamerscore, + const xbox_achievement_progress_t *achievements_progress); /** * @brief Callback invoked when the connection status changes. @@ -99,7 +99,7 @@ const game_t *get_current_game(void); * * @return Pointer to the cached achievements list, or NULL if not available. */ -const achievement_t *get_current_game_achievements(void); +const xbox_achievement_t *get_current_game_achievements(void); /** * @brief Start monitoring the Xbox Live RTA endpoint. diff --git a/src/integrations/xbox/xbox_session.c b/src/integrations/xbox/xbox_session.c index e0dd259..4ae59bc 100644 --- a/src/integrations/xbox/xbox_session.c +++ b/src/integrations/xbox/xbox_session.c @@ -6,6 +6,9 @@ #include "io/cache.h" #include "util/bmem.h" #include "integrations/xbox/xbox_client.h" +#include "integrations/xbox/contracts/xbox_achievement.h" +#include "integrations/xbox/contracts/xbox_achievement_progress.h" +#include "integrations/xbox/contracts/xbox_unlocked_achievement.h" #include #include @@ -18,26 +21,18 @@ /** * @brief Context passed to the prefetch background thread. - * - * Bundles the deep-copied achievements list (owned by the thread) and the - * optional completion callback. */ typedef struct prefetch_context { /** Deep-copied achievement list. Freed by the thread when done. */ - achievement_t *achievements; + xbox_achievement_t *achievements; /** Optional callback invoked after all icons have been downloaded. */ xbox_session_ready_callback_t on_ready; } prefetch_context_t; /** * @brief Download a single achievement icon to the local file cache. - * - * Uses the same cache-path convention as image_source_download() so that later - * display requests hit the on-disk cache instead of making another HTTP call. - * - * @param achievement */ -static bool download_icon_to_cache(const achievement_t *achievement) { +static bool download_icon_to_cache(const xbox_achievement_t *achievement) { if (!achievement->icon_url || achievement->icon_url[0] == '\0') { return false; @@ -52,23 +47,14 @@ static bool download_icon_to_cache(const achievement_t *achievement) { /** * @brief Background thread entry point: prefetches all achievement icons. - * - * Receives a prefetch_context_t (deep-copied achievement list + optional - * callback), downloads every icon to the local cache, invokes the callback, - * then frees all resources. The thread is created detached, so no join is - * required. - * - * @param arg Pointer to a heap-allocated prefetch_context_t. Ownership is - * transferred to this thread. - * @return NULL (unused). */ static void *prefetch_icons_thread(void *arg) { prefetch_context_t *ctx = arg; - achievement_t *achievements = ctx->achievements; + xbox_achievement_t *achievements = ctx->achievements; int count = 0; - for (const achievement_t *achievement = achievements; achievement != NULL; achievement = achievement->next) { + for (const xbox_achievement_t *achievement = achievements; achievement != NULL; achievement = achievement->next) { if (download_icon_to_cache(achievement)) { sleep_ms(5000); } @@ -81,23 +67,15 @@ static void *prefetch_icons_thread(void *arg) { ctx->on_ready(); } - free_achievement(&achievements); + xbox_free_achievement(&achievements); free_memory((void **)&ctx); return NULL; } /** * @brief Starts a background thread to prefetch all achievement icons. - * - * Deep-copies the given achievements list and passes ownership to a detached - * pthread that downloads each icon to the local file cache. When finished, - * @p on_ready is invoked (if non-NULL) from the background thread. - * - * @param achievements Head of the achievements list to prefetch icons for. - * The caller retains ownership; the function makes its own copy. - * @param on_ready Optional callback invoked when all icons have been downloaded. */ -static void prefetch_achievement_icons(const achievement_t *achievements, xbox_session_ready_callback_t on_ready) { +static void prefetch_achievement_icons(const xbox_achievement_t *achievements, xbox_session_ready_callback_t on_ready) { if (!achievements) { if (on_ready) { @@ -106,7 +84,7 @@ static void prefetch_achievement_icons(const achievement_t *achievements, xbox_s return; } - achievement_t *copy = copy_achievement(achievements); + xbox_achievement_t *copy = xbox_copy_achievement(achievements); if (!copy) { obs_log(LOG_WARNING, "[Prefetch] Failed to copy achievements for icon prefetch"); @@ -126,7 +104,7 @@ static void prefetch_achievement_icons(const achievement_t *achievements, xbox_s obs_log(LOG_INFO, "[Prefetch] Started background icon prefetch thread"); } else { obs_log(LOG_ERROR, "[Prefetch] Failed to create icon prefetch thread"); - free_achievement(©); + xbox_free_achievement(©); free_memory((void **)&ctx); if (on_ready) { on_ready(); @@ -139,27 +117,17 @@ static void prefetch_achievement_icons(const achievement_t *achievements, xbox_s // -------------------------------------------------------------------------------------------------------------------- /** - * @brief Finds an achievement definition by id. - * - * Performs a case-insensitive search of the @p achievements linked list for an - * entry whose @c id matches @c progress->id. - * - * @param progress Progress item containing the achievement id to look up. - * @param achievements Head of the achievements linked list. - * - * @return Pointer to the matching achievement node within @p achievements, or - * NULL if not found. + * @brief Finds an Xbox achievement definition by id. */ -static achievement_t *find_achievement_by_id(const achievement_progress_t *progress, achievement_t *achievements) { +static xbox_achievement_t *find_achievement_by_id(const xbox_achievement_progress_t *progress, + xbox_achievement_t *achievements) { - achievement_t *current = achievements; + xbox_achievement_t *current = achievements; while (current) { - if (strcasecmp(current->id, progress->id) == 0) { return current; } - current = current->next; } @@ -192,10 +160,9 @@ void xbox_session_change_game(xbox_session_t *session, game_t *game, xbox_sessio return; } - free_achievement(&session->achievements); + xbox_free_achievement(&session->achievements); free_game(&session->game); - /* Let's get the achievements of the game */ if (!game) { if (on_ready) { on_ready(); @@ -206,22 +173,18 @@ void xbox_session_change_game(xbox_session_t *session, game_t *game, xbox_sessio session->game = copy_game(game); session->achievements = xbox_get_game_achievements(game); - /* Sort the achievements from the most recent unlocked to the locked ones */ - sort_achievements(&session->achievements); + xbox_sort_achievements(&session->achievements); - /* Prefetch all achievement icons in the background; on_ready fires when done */ prefetch_achievement_icons(session->achievements, on_ready); } -void xbox_session_unlock_achievement(xbox_session_t *session, const achievement_progress_t *progress) { +void xbox_session_unlock_achievement(xbox_session_t *session, const xbox_achievement_progress_t *progress) { if (!session || !progress) { return; } - /* TODO Let's make sure the progress is achieved */ - - achievement_t *achievement = find_achievement_by_id(progress, session->achievements); + xbox_achievement_t *achievement = find_achievement_by_id(progress, session->achievements); if (!achievement) { obs_log(LOG_ERROR, @@ -235,10 +198,9 @@ void xbox_session_unlock_achievement(xbox_session_t *session, const achievement_ achievement->progress_state = bstrdup(progress->progress_state); achievement->unlocked_timestamp = progress->unlocked_timestamp; - /* Sort the achievements from the most recent unlocked to the locked ones */ - sort_achievements(&session->achievements); + xbox_sort_achievements(&session->achievements); - const reward_t *reward = achievement->rewards; + const xbox_reward_t *reward = achievement->rewards; if (!reward) { obs_log(LOG_ERROR, "Failed to unlock achievement %s: no reward found", progress->id ? progress->id : "(null)"); @@ -249,8 +211,8 @@ void xbox_session_unlock_achievement(xbox_session_t *session, const achievement_ gamerscore_t *gamerscore = session->gamerscore; - unlocked_achievement_t *unlocked_achievement = bzalloc(sizeof(unlocked_achievement_t)); - unlocked_achievement->id = bstrdup(progress->id); + xbox_unlocked_achievement_t *unlocked_achievement = bzalloc(sizeof(xbox_unlocked_achievement_t)); + unlocked_achievement->id = bstrdup(progress->id); long parsed_value = 0; char *endptr = NULL; @@ -270,21 +232,18 @@ void xbox_session_unlock_achievement(xbox_session_t *session, const achievement_ unlocked_achievement->value = (int)parsed_value; - unlocked_achievement_t *unlocked_achievements = gamerscore->unlocked_achievements; + xbox_unlocked_achievement_t *unlocked_achievements = gamerscore->unlocked_achievements; - /* Appends the unlocked achievement to the list */ if (!unlocked_achievements) { gamerscore->unlocked_achievements = unlocked_achievement; } else { - unlocked_achievement_t *last_unlocked_achievement = unlocked_achievements; + xbox_unlocked_achievement_t *last_unlocked_achievement = unlocked_achievements; while (last_unlocked_achievement->next) { last_unlocked_achievement = last_unlocked_achievement->next; } last_unlocked_achievement->next = unlocked_achievement; } - /* Sort achievements from the most recent unlocked achievement first and then locked achievements */ - obs_log(LOG_INFO, "New achievement unlocked: %s (%d G)! Gamerscore is now %d", achievement->name, @@ -298,7 +257,7 @@ void xbox_session_clear(xbox_session_t *session) { return; } - free_achievement(&session->achievements); + xbox_free_achievement(&session->achievements); free_game(&session->game); free_gamerscore(&session->gamerscore); } diff --git a/src/integrations/xbox/xbox_session.h b/src/integrations/xbox/xbox_session.h index bb55f02..d507af8 100644 --- a/src/integrations/xbox/xbox_session.h +++ b/src/integrations/xbox/xbox_session.h @@ -70,7 +70,7 @@ void xbox_session_change_game(xbox_session_t *session, game_t *game, xbox_sessio * @param session Session to update. * @param progress Progress information for the achievement being unlocked. */ -void xbox_session_unlock_achievement(xbox_session_t *session, const achievement_progress_t *progress); +void xbox_session_unlock_achievement(xbox_session_t *session, const xbox_achievement_progress_t *progress); /** * @brief Clears all session state. diff --git a/src/sources/common/achievement_cycle.c b/src/sources/common/achievement_cycle.c index 4020a1f..0438c40 100644 --- a/src/sources/common/achievement_cycle.c +++ b/src/sources/common/achievement_cycle.c @@ -4,7 +4,9 @@ #include #include "common/achievement.h" -#include "integrations/xbox/xbox_monitor.h" +#include "integrations/monitoring_service.h" + +#include /** Duration to show the last unlocked achievement (seconds). */ #define LAST_UNLOCKED_DISPLAY_DURATION 45.0f @@ -55,7 +57,7 @@ static bool g_initialized = false; /** * @brief Whether the session is fully ready (achievements fetched + icons prefetched). * - * Set to true by on_session_ready, reset to false by on_xbox_game_played. + * Set to true by on_session_ready, reset to false by on_game_played. * While false, achievement_cycle_tick and reset_display_cycle are no-ops so * the cycle does not start before all icons are available in the local cache. */ @@ -86,7 +88,7 @@ static void notify_subscribers(const achievement_t *achievement) { * * Finds the last unlocked achievement and resets all timers to start * a fresh display cycle. Makes a deep copy of the achievement to avoid - * dangling pointers when the xbox_monitor session changes. + * dangling pointers when the session changes. */ static void reset_display_cycle(void) { @@ -97,7 +99,7 @@ static void reset_display_cycle(void) { /* Free the old cached copy */ free_achievement(&g_last_unlocked); - const achievement_t *achievements = get_current_game_achievements(); + achievement_t *achievements = copy_achievement(monitoring_get_current_game_achievements()); /* Find the last unlocked achievement */ const achievement_t *latest_unlocked = find_latest_unlocked_achievement(achievements); @@ -105,6 +107,8 @@ static void reset_display_cycle(void) { g_last_unlocked = copy_achievement(latest_unlocked); } + free_achievement(&achievements); + /* Reset display cycle to show the last unlocked achievement */ g_display_phase = DISPLAY_PHASE_LAST_UNLOCKED; g_phase_timer = LAST_UNLOCKED_DISPLAY_DURATION; @@ -114,13 +118,13 @@ static void reset_display_cycle(void) { } // -------------------------------------------------------------------------------------------------------------------- -// Xbox monitor event handlers +// Monitoring service event handlers // -------------------------------------------------------------------------------------------------------------------- /** - * @brief Xbox monitor callback invoked when Xbox Live connection state changes. + * @brief Monitoring service callback invoked when connection state changes. * - * @param is_connected Whether the Xbox account is currently connected (unused). + * @param is_connected Whether the account is currently connected (unused). * @param error_message Optional error message if disconnected (unused). */ static void on_connection_changed(bool is_connected, const char *error_message) { @@ -139,7 +143,7 @@ static void on_connection_changed(bool is_connected, const char *error_message) * * @param game Currently played game information. */ -static void on_xbox_game_played(const game_t *game) { +static void on_game_played(const game_t *game) { UNUSED_PARAMETER(game); @@ -152,25 +156,17 @@ static void on_xbox_game_played(const game_t *game) { } /** - * @brief Xbox monitor callback invoked when achievement progress is updated. - * - * @param gamerscore Updated gamerscore snapshot (unused). - * @param progress Achievement progress details (unused). + * @brief Monitoring service callback invoked when achievements are updated. */ -static void on_achievements_progressed(const gamerscore_t *gamerscore, const achievement_progress_t *progress) { - - UNUSED_PARAMETER(gamerscore); - UNUSED_PARAMETER(progress); - +static void on_achievements_changed(void) { reset_display_cycle(); } /** - * @brief Xbox monitor callback invoked when the session is fully ready. + * @brief Monitoring service callback invoked when the session is fully ready. * - * Called from the prefetch background thread once all achievement icons have - * been downloaded to the local cache. This is the signal to start (or restart) - * the achievement display cycle. + * Called once all achievement icons have been downloaded to the local cache. + * This is the signal to start (or restart) the achievement display cycle. */ static void on_session_ready(void) { @@ -195,10 +191,10 @@ void achievement_cycle_init(void) { g_current_achievement = NULL; g_subscriber_count = 0; - xbox_subscribe_connected_changed(&on_connection_changed); - xbox_subscribe_game_played(&on_xbox_game_played); - xbox_subscribe_achievements_progressed(&on_achievements_progressed); - xbox_subscribe_session_ready(&on_session_ready); + monitoring_subscribe_connection_changed(&on_connection_changed); + monitoring_subscribe_game_played(&on_game_played); + monitoring_subscribe_achievements_changed(&on_achievements_changed); + monitoring_subscribe_session_ready(&on_session_ready); g_initialized = true; } @@ -209,7 +205,7 @@ void achievement_cycle_destroy(void) { return; } - /* TODO: Add xbox_unsubscribe_* functions if available */ + /* TODO: Add monitoring_unsubscribe_* functions if available */ /* Free the owned achievement copy */ free_achievement(&g_last_unlocked); @@ -265,8 +261,8 @@ void achievement_cycle_tick(float seconds) { return; } - /* Get the current achievements list */ - const achievement_t *achievements = get_current_game_achievements(); + /* Get the current achievements */ + achievement_t *achievements = copy_achievement(monitoring_get_current_game_achievements()); if (!achievements) { return; @@ -277,57 +273,53 @@ void achievement_cycle_tick(float seconds) { switch (g_display_phase) { case DISPLAY_PHASE_LAST_UNLOCKED: - /* Check if it's time to switch to locked achievements rotation */ if (g_phase_timer <= 0.0f) { obs_log(LOG_DEBUG, "Achievement Cycle: Switching to locked achievements rotation"); - /* Only switch if there are locked achievements to show */ if (count_locked_achievements(achievements) > 0) { g_display_phase = DISPLAY_PHASE_LOCKED_ROTATION; g_phase_timer = LOCKED_CYCLE_TOTAL_DURATION; g_locked_display_timer = LOCKED_ACHIEVEMENT_DISPLAY_DURATION; - /* Show the first random locked achievement */ const achievement_t *locked = get_random_locked_achievement(achievements); if (locked) { obs_log(LOG_DEBUG, "Achievement Cycle: Showing random locked achievement: %s", locked->name); - notify_subscribers(locked); + /* Store a copy so g_current_achievement survives beyond this tick */ + free_achievement(&g_last_unlocked); + g_last_unlocked = copy_achievement(locked); + notify_subscribers(g_last_unlocked); } else { obs_log(LOG_WARNING, "Achievement Cycle: No locked achievements to show"); } } else { obs_log(LOG_DEBUG, "Achievement Cycle: No locked achievements, keeping last unlocked"); - /* No locked achievements, keep showing last unlocked */ g_phase_timer = LAST_UNLOCKED_DISPLAY_DURATION; } } break; case DISPLAY_PHASE_LOCKED_ROTATION: - /* Update the locked achievement display timer */ g_locked_display_timer -= seconds; if (g_locked_display_timer <= 0.0f) { - /* Time for the next random locked achievement */ g_locked_display_timer = LOCKED_ACHIEVEMENT_DISPLAY_DURATION; const achievement_t *locked = get_random_locked_achievement(achievements); if (locked) { - notify_subscribers(locked); + free_achievement(&g_last_unlocked); + g_last_unlocked = copy_achievement(locked); + notify_subscribers(g_last_unlocked); } } - /* Check if the locked rotation phase is complete */ if (g_phase_timer <= 0.0f) { obs_log(LOG_DEBUG, "Achievement Cycle: Locked achievements rotation complete"); g_display_phase = DISPLAY_PHASE_LAST_UNLOCKED; g_phase_timer = LAST_UNLOCKED_DISPLAY_DURATION; - /* Switch back to our owned copy of the last unlocked achievement */ if (g_last_unlocked) { notify_subscribers(g_last_unlocked); } else { - /* If we don't have a cached copy, refresh it */ const achievement_t *latest_unlocked = find_latest_unlocked_achievement(achievements); if (latest_unlocked) { g_last_unlocked = copy_achievement(latest_unlocked); @@ -337,6 +329,8 @@ void achievement_cycle_tick(float seconds) { } break; } + + free_achievement(&achievements); } const achievement_t *achievement_cycle_get_current(void) { diff --git a/src/sources/xbox/achievement_icon.c b/src/sources/xbox/achievement_icon.c index d896f45..daffe89 100644 --- a/src/sources/xbox/achievement_icon.c +++ b/src/sources/xbox/achievement_icon.c @@ -5,7 +5,6 @@ #include #include "common/achievement.h" -#include "integrations/xbox/oauth/xbox-live.h" #include "sources/common/achievement_cycle.h" #include "sources/common/image_source.h" @@ -140,11 +139,7 @@ static void update_achievement_icon(const achievement_t *achievement) { // OBS video/render thread with HTTP I/O. g_transition.pending_is_unlocked = is_new_unlocked_achievement; g_pending_has_state_changed = has_state_changed; - snprintf(g_next_achievement_icon->id, - sizeof(g_next_achievement_icon->id), - "%s_%s", - achievement->service_config_id, - achievement->id); + snprintf(g_next_achievement_icon->id, sizeof(g_next_achievement_icon->id), "%s", achievement->id); snprintf(g_next_achievement_icon->url, sizeof(g_next_achievement_icon->url), "%s", achievement->icon_url); pthread_t thread; @@ -396,25 +391,8 @@ static obs_properties_t *source_get_properties(void *data) { UNUSED_PARAMETER(data); - /* Gets or refreshes the token */ - xbox_identity_t *xbox_identity = xbox_live_get_identity(); - - /* Lists all the UI components of the properties page */ obs_properties_t *p = obs_properties_create(); - if (xbox_identity != NULL) { - char status[4096]; - snprintf(status, 4096, "Connected to your xbox account as %s", xbox_identity->gamertag); - obs_properties_add_text(p, "connected_status_info", status, OBS_TEXT_INFO); - } else { - obs_properties_add_text(p, - "disconnected_status_info", - "You are not connected to your xbox account", - OBS_TEXT_INFO); - } - - free_identity(&xbox_identity); - return p; } diff --git a/src/sources/xbox/achievement_name.c b/src/sources/xbox/achievement_name.c index 2b8ec9a..6c98dbd 100644 --- a/src/sources/xbox/achievement_name.c +++ b/src/sources/xbox/achievement_name.c @@ -139,12 +139,8 @@ static void update_achievement_name(const achievement_t *achievement) { g_must_reload = true; } - if (achievement->rewards && achievement->rewards->value) { - snprintf(g_achievement_name, - sizeof(g_achievement_name), - "%sG - %s", - achievement->rewards->value, - achievement->name); + if (achievement->value > 0) { + snprintf(g_achievement_name, sizeof(g_achievement_name), "%dG - %s", achievement->value, achievement->name); } else { snprintf(g_achievement_name, sizeof(g_achievement_name), "%s", achievement->name); } diff --git a/src/sources/xbox/achievements_count.c b/src/sources/xbox/achievements_count.c index 9aebf94..c7b70ff 100644 --- a/src/sources/xbox/achievements_count.c +++ b/src/sources/xbox/achievements_count.c @@ -5,11 +5,11 @@ * @brief OBS source that renders the total number of achievements for the current game. * * This source displays the total count of achievements available for the currently - * played Xbox game. The count is updated when the game changes. + * played game. The count is updated when the game changes or achievements progress. * * Data flow: - * - The Xbox monitor notifies this module when the connection state changes or - * when the game changes. + * - The monitoring service notifies this module when the connection state changes, + * when the game changes, or when achievements are updated. * - The module counts total achievements and stores the result in a global. * - During rendering, the count is formatted to text and rendered. * @@ -27,8 +27,7 @@ #include "common/achievement.h" #include "io/state.h" -#include "integrations/xbox/oauth/xbox-live.h" -#include "integrations/xbox/xbox_monitor.h" +#include "integrations/monitoring_service.h" #define NO_FLIP 0 @@ -47,7 +46,7 @@ static achievements_count_configuration_t *g_configuration; * @brief Recompute and store the total achievements count. */ static void update_count(void) { - const achievement_t *achievements = get_current_game_achievements(); + const achievement_t *achievements = monitoring_get_current_game_achievements(); int unlocked = count_unlocked_achievements(achievements); int total = count_achievements(achievements); @@ -59,7 +58,7 @@ static void update_count(void) { } /** - * @brief Xbox monitor callback invoked when a new game is played. + * @brief Monitoring service callback invoked when a new game is played. * * @param game Current game information. */ @@ -74,15 +73,9 @@ static void on_game_played(const game_t *game) { } /** - * @brief Xbox monitor callback invoked when achievements progress. - * - * @param gamerscore Updated gamerscore snapshot (unused). - * @param progress Achievement progress details (unused). + * @brief Monitoring service callback invoked when achievements change. */ -static void on_achievements_progressed(const gamerscore_t *gamerscore, const achievement_progress_t *progress) { - UNUSED_PARAMETER(gamerscore); - UNUSED_PARAMETER(progress); - +static void on_achievements_changed(void) { update_count(); } @@ -228,8 +221,8 @@ void xbox_achievements_count_source_register(void) { obs_register_source(xbox_source_get()); - xbox_subscribe_achievements_progressed(&on_achievements_progressed); - xbox_subscribe_game_played(&on_game_played); + monitoring_subscribe_achievements_changed(&on_achievements_changed); + monitoring_subscribe_game_played(&on_game_played); } void xbox_achievements_count_source_cleanup(void) { diff --git a/src/text/parsers.c b/src/text/parsers.c index a49b3a7..95d5738 100644 --- a/src/text/parsers.c +++ b/src/text/parsers.c @@ -203,10 +203,10 @@ game_t *parse_game(const char *json_string) { return game; } -achievement_progress_t *parse_achievement_progress(const char *json_string) { +xbox_achievement_progress_t *parse_achievement_progress(const char *json_string) { - cJSON *json_root = NULL; - achievement_progress_t *achievement_progress = NULL; + cJSON *json_root = NULL; + xbox_achievement_progress_t *achievement_progress = NULL; if (!json_string || strlen(json_string) == 0) { return NULL; @@ -270,17 +270,17 @@ achievement_progress_t *parse_achievement_progress(const char *json_string) { continue; } - achievement_progress_t *progress = bzalloc(sizeof(achievement_progress_t)); - progress->service_config_id = bstrdup(current_service_config_id); - progress->id = bstrdup(id_node->valuestring); - progress->progress_state = bstrdup(progress_state_node->valuestring); - progress->unlocked_timestamp = unlocked_timestamp; - progress->next = NULL; + xbox_achievement_progress_t *progress = bzalloc(sizeof(xbox_achievement_progress_t)); + progress->service_config_id = bstrdup(current_service_config_id); + progress->id = bstrdup(id_node->valuestring); + progress->progress_state = bstrdup(progress_state_node->valuestring); + progress->unlocked_timestamp = unlocked_timestamp; + progress->next = NULL; if (!achievement_progress) { achievement_progress = progress; } else { - achievement_progress_t *last_progress = achievement_progress; + xbox_achievement_progress_t *last_progress = achievement_progress; while (last_progress->next) { last_progress = last_progress->next; } @@ -294,10 +294,10 @@ achievement_progress_t *parse_achievement_progress(const char *json_string) { return achievement_progress; } -achievement_t *parse_achievements(const char *json_string) { +xbox_achievement_t *parse_achievements(const char *json_string) { - cJSON *json_root = NULL; - achievement_t *achievements = NULL; + cJSON *json_root = NULL; + xbox_achievement_t *achievements = NULL; if (!json_string || strlen(json_string) == 0) { return NULL; @@ -319,7 +319,7 @@ achievement_t *parse_achievements(const char *json_string) { break; } - achievement_t *achievement = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); achievement->id = id; achievement->service_config_id = get_node_string(json_root, achievement_index, "serviceConfigId"); achievement->name = get_node_string(json_root, achievement_index, "name"); @@ -332,7 +332,7 @@ achievement_t *parse_achievements(const char *json_string) { achievement->icon_url = get_node_string(json_root, achievement_index, "mediaAssets/0/url"); /* Reads the media assets */ - media_asset_t *media_assets = NULL; + xbox_media_asset_t *media_assets = NULL; for (int media_asset_index = 0;; media_asset_index++) { @@ -346,19 +346,18 @@ achievement_t *parse_achievements(const char *json_string) { cJSON *media_asset_url_node = cJSONUtils_GetPointer(json_root, media_asset_url_key); if (!media_asset_url_node) { - /* There is nothing more */ obs_log(LOG_DEBUG, "No more media asset at %d/%d", achievement_index, media_asset_index); break; } - media_asset_t *media_asset = bzalloc(sizeof(media_asset_t)); - media_asset->url = bstrdup(media_asset_url_node->valuestring); - media_asset->next = NULL; + xbox_media_asset_t *media_asset = bzalloc(sizeof(xbox_media_asset_t)); + media_asset->url = bstrdup(media_asset_url_node->valuestring); + media_asset->next = NULL; if (!media_assets) { media_assets = media_asset; } else { - media_asset_t *last_media_asset = media_assets; + xbox_media_asset_t *last_media_asset = media_assets; while (last_media_asset->next) { last_media_asset = last_media_asset->next; } @@ -369,7 +368,7 @@ achievement_t *parse_achievements(const char *json_string) { achievement->media_assets = media_assets; /* Reads the rewards */ - reward_t *rewards = NULL; + xbox_reward_t *rewards = NULL; for (int reward_index = 0;; reward_index++) { @@ -383,13 +382,11 @@ achievement_t *parse_achievements(const char *json_string) { cJSON *reward_type_node = cJSONUtils_GetPointer(json_root, reward_type_key); if (!reward_type_node) { - /* There is nothing more */ obs_log(LOG_DEBUG, "No more reward at %d/%d", achievement_index, reward_index); break; } if (!reward_type_node->type || strcasecmp(reward_type_node->valuestring, "Gamerscore") != 0) { - /* Ignores the non-gamerscore reward */ obs_log(LOG_DEBUG, "Not a Gamerscore reward at %d/%d", achievement_index, reward_index); continue; } @@ -408,13 +405,13 @@ achievement_t *parse_achievements(const char *json_string) { continue; } - reward_t *reward = bzalloc(sizeof(reward_t)); - reward->value = bstrdup(reward_value_node->valuestring); + xbox_reward_t *reward = bzalloc(sizeof(xbox_reward_t)); + reward->value = bstrdup(reward_value_node->valuestring); if (!rewards) { rewards = reward; } else { - reward_t *last_reward = rewards; + xbox_reward_t *last_reward = rewards; while (last_reward->next) { last_reward = last_reward->next; } @@ -434,7 +431,7 @@ achievement_t *parse_achievements(const char *json_string) { if (!achievements) { achievements = achievement; } else { - achievement_t *last_achievement = achievements; + xbox_achievement_t *last_achievement = achievements; while (last_achievement->next) { last_achievement = last_achievement->next; } diff --git a/src/text/parsers.h b/src/text/parsers.h index 9e70b61..e40b8a5 100644 --- a/src/text/parsers.h +++ b/src/text/parsers.h @@ -58,9 +58,9 @@ game_t *parse_game(const char *json_string); * @brief Parse achievement progress information from a JSON message. * * @param json_string NUL-terminated JSON string. - * @return Newly allocated achievement_progress_t on success; NULL on failure. + * @return Newly allocated xbox_achievement_progress_t on success; NULL on failure. */ -achievement_progress_t *parse_achievement_progress(const char *json_string); +xbox_achievement_progress_t *parse_achievement_progress(const char *json_string); /** * @brief Parse achievements information from a JSON message. @@ -69,9 +69,9 @@ achievement_progress_t *parse_achievement_progress(const char *json_string); * container describing multiple achievements. * * @param json_string NUL-terminated JSON string. - * @return Newly allocated achievement_t on success; NULL on failure. + * @return Newly allocated xbox_achievement_t on success; NULL on failure. */ -achievement_t *parse_achievements(const char *json_string); +xbox_achievement_t *parse_achievements(const char *json_string); #ifdef __cplusplus } diff --git a/test/stubs/xbox/xbox_client.h b/test/stubs/xbox/xbox_client.h index 64e6e83..e097d3b 100644 --- a/test/stubs/xbox/xbox_client.h +++ b/test/stubs/xbox/xbox_client.h @@ -8,7 +8,7 @@ extern "C" { #endif -void mock_xbox_client_set_achievements(achievement_t *achievements); +void mock_xbox_client_set_achievements(xbox_achievement_t *achievements); void mock_xbox_client_reset(void); /* Stub for xbox_fetch_gamerscore - does nothing in unit tests */ @@ -22,7 +22,7 @@ static inline game_t *xbox_get_current_game(void) { return NULL; } -achievement_t *xbox_get_game_achievements(const game_t *game); +xbox_achievement_t *xbox_get_game_achievements(const game_t *game); /* Stub for xbox_get_game_cover - returns NULL in unit tests */ static inline char *xbox_get_game_cover(const game_t *game) { diff --git a/test/stubs/xbox/xbox_client_stub.c b/test/stubs/xbox/xbox_client_stub.c index 43e8d85..b40b4bc 100644 --- a/test/stubs/xbox/xbox_client_stub.c +++ b/test/stubs/xbox/xbox_client_stub.c @@ -1,8 +1,8 @@ #include "test/stubs/xbox/xbox_client.h" -static achievement_t *mock_achievements = NULL; +static xbox_achievement_t *mock_achievements = NULL; -void mock_xbox_client_set_achievements(achievement_t *achievements) { +void mock_xbox_client_set_achievements(xbox_achievement_t *achievements) { mock_achievements = achievements; } @@ -10,7 +10,7 @@ void mock_xbox_client_reset(void) { mock_achievements = NULL; } -achievement_t *xbox_get_game_achievements(const game_t *game) { +xbox_achievement_t *xbox_get_game_achievements(const game_t *game) { (void)game; return mock_achievements; } diff --git a/test/test_parsers.c b/test/test_parsers.c index d8ea56a..ac479a3 100644 --- a/test/test_parsers.c +++ b/test/test_parsers.c @@ -193,7 +193,7 @@ static void parse_achievements_progress__message_is_null_null_returned(void) { const char *message = NULL; // Act. - achievement_progress_t *actual = parse_achievement_progress(message); + xbox_achievement_progress_t *actual = parse_achievement_progress(message); // Assert. TEST_ASSERT_NULL(actual); @@ -204,7 +204,7 @@ static void parse_achievements_progress__message_is_empty_null_returned(void) { const char *message = " "; // Act. - achievement_progress_t *actual = parse_achievement_progress(message); + xbox_achievement_progress_t *actual = parse_achievement_progress(message); // Assert. TEST_ASSERT_NULL(actual); @@ -215,7 +215,7 @@ static void parse_achievements_progress__message_is_not_json_null_returned(void) const char *message = "this-is-not-a-json"; // Act. - achievement_progress_t *actual = parse_achievement_progress(message); + xbox_achievement_progress_t *actual = parse_achievement_progress(message); // Assert. TEST_ASSERT_NULL(actual); @@ -227,7 +227,7 @@ static void parse_achievements_progress__message_is_achievement_achievement_retu "{\"serviceConfigId\":\"00000000-0000-0000-0000-00007972ac43\",\"progression\":[{\"id\":\"1\",\"requirements\":[{\"id\":\"00000000-0000-0000-0000-000000000000\",\"current\":\"100\",\"target\":\"100\",\"operationType\":\"Sum\",\"valueType\":\"Integer\",\"ruleParticipationType\":\"Individual\"}],\"progressState\":\"Achieved\",\"timeUnlocked\":\"2026-01-18T02:48:21.707Z\"}],\"contractVersion\":1}"; // Act. - achievement_progress_t *actual = parse_achievement_progress(message); + xbox_achievement_progress_t *actual = parse_achievement_progress(message); // Assert. TEST_ASSERT_NOT_NULL(actual); @@ -244,7 +244,7 @@ static void parse_achievements_progress__message_is_multiple_achievements_achiev "{\"serviceConfigId\":\"00000000-0000-0000-0000-00007972ac43\",\"progression\":[{\"id\":\"1\",\"requirements\":[{\"id\":\"00000000-0000-0000-0000-000000000000\",\"current\":\"100\",\"target\":\"100\",\"operationType\":\"Sum\",\"valueType\":\"Integer\",\"ruleParticipationType\":\"Individual\"}],\"progressState\":\"Achieved\",\"timeUnlocked\":\"2026-01-18T02:48:21.707Z\"}, {\"id\":\"2\",\"requirements\":[{\"id\":\"00000000-0000-0000-0000-000000000000\",\"current\":\"100\",\"target\":\"100\",\"operationType\":\"Sum\",\"valueType\":\"Integer\",\"ruleParticipationType\":\"Individual\"}],\"progressState\":\"NotAchieved\",\"timeUnlocked\":\"2026-01-18T02:48:21.707Z\"}],\"contractVersion\":1}"; // Act. - achievement_progress_t *actual = parse_achievement_progress(message); + xbox_achievement_progress_t *actual = parse_achievement_progress(message); // Assert. TEST_ASSERT_NOT_NULL(actual); @@ -265,7 +265,7 @@ static void parse_achievements__message_is_one_achievement_achievement_returned( "{\"achievements\":[{\"id\":\"1\",\"serviceConfigId\":\"00000000-0000-0000-0000-00007972ac43\",\"name\":\"Daddy's Glasses\",\"titleAssociations\":[{\"name\":\"My Friend Peppa Pig\",\"id\":2037558339}],\"progressState\":\"Achieved\",\"progression\":{\"requirements\":[],\"timeUnlocked\":\"2026-01-18T02:48:21.7070000Z\"},\"mediaAssets\":[{\"name\":\"cf486b2a-3a9e-4c14-b18c-c91e0bb56926\",\"type\":\"Icon\",\"url\":\"https://images-eds-ssl.xboxlive.com/image?url=27S1DHqE.cHkmFg4nspsdzttpqR9mABLoi_h264Ah_brT_74D18wvss1Tpl1Hv0V.ZRAXkfWjJILaiyZZyI_J2paDrXdC_1Gly_3Cnd9yC7IDl0y2ssMo_dvyQ_OhHyuW60ck5614OfHrmzXJvVaS2vM4efPU6iwu2_vBB1TeAE-\"}],\"platforms\":[\"XboxOne\"],\"isSecret\":false,\"description\":\"You found Daddy Pig's Glasses.\",\"lockedDescription\":\"Find Daddy Pig's Glasses.\",\"productId\":\"00000000-0000-0000-0000-00007972ac43\",\"achievementType\":\"Persistent\",\"participationType\":\"Individual\",\"timeWindow\":null,\"rewards\":[{\"name\":null,\"description\":null,\"value\":\"80\",\"type\":\"Gamerscore\",\"mediaAsset\":null,\"valueType\":\"Int\"}],\"estimatedTime\":\"00:00:00\",\"deeplink\":\"\",\"isRevoked\":false}]}"; // Act. - achievement_t *actual = parse_achievements(message); + xbox_achievement_t *actual = parse_achievements(message); // Assert. TEST_ASSERT_NOT_NULL(actual); @@ -288,12 +288,12 @@ static void parse_achievements__message_is_multiple_achievements_achievements_re "{\"achievements\":[{\"id\":\"1\",\"serviceConfigId\":\"00000000-0000-0000-0000-00007972ac43\",\"name\":\"Daddy's Glasses\",\"titleAssociations\":[{\"name\":\"My Friend Peppa Pig\",\"id\":2037558339}],\"progressState\":\"Achieved\",\"progression\":{\"requirements\":[],\"timeUnlocked\":\"2026-01-18T02:48:21.7070000Z\"},\"mediaAssets\":[{\"name\":\"cf486b2a-3a9e-4c14-b18c-c91e0bb56926\",\"type\":\"Icon\",\"url\":\"https://images-eds-ssl.xboxlive.com/image?url=27S1DHqE.cHkmFg4nspsdzttpqR9mABLoi_h264Ah_brT_74D18wvss1Tpl1Hv0V.ZRAXkfWjJILaiyZZyI_J2paDrXdC_1Gly_3Cnd9yC7IDl0y2ssMo_dvyQ_OhHyuW60ck5614OfHrmzXJvVaS2vM4efPU6iwu2_vBB1TeAE-\"}],\"platforms\":[\"XboxOne\"],\"isSecret\":false,\"description\":\"You found Daddy Pig's Glasses.\",\"lockedDescription\":\"Find Daddy Pig's Glasses.\",\"productId\":\"00000000-0000-0000-0000-00007972ac43\",\"achievementType\":\"Persistent\",\"participationType\":\"Individual\",\"timeWindow\":null,\"rewards\":[{\"name\":null,\"description\":null,\"value\":\"80\",\"type\":\"Gamerscore\",\"mediaAsset\":null,\"valueType\":\"Int\"}],\"estimatedTime\":\"00:00:00\",\"deeplink\":\"\",\"isRevoked\":false},{\"id\":\"2\",\"serviceConfigId\":\"00000000-0000-0000-0000-00007972ac43\",\"name\":\"Where's Mr. Dinosaur?\",\"titleAssociations\":[{\"name\":\"My Friend Peppa Pig\",\"id\":2037558339}],\"progressState\":\"NotStarted\",\"progression\":{\"requirements\":[{\"id\":\"00000000-0000-0000-0000-000000000000\",\"current\":\"0\",\"target\":\"100\",\"operationType\":\"Sum\",\"valueType\":\"Integer\",\"ruleParticipationType\":\"Individual\"}],\"timeUnlocked\":\"0001-01-01T00:00:00.0000000Z\"},\"mediaAssets\":[{\"name\":\"09f94026-8896-4c8a-9b0c-aeb6371e88f0\",\"type\":\"Icon\",\"url\":\"https://images-eds-ssl.xboxlive.com/image?url=27S1DHqE.cHkmFg4nspsdzokISnshkl.YcYqCmweQJubIDDIVJtokZHSoEQgyASVwuVT1yj8cEV8HdUg07CxZIU7xq2U11afQQ26YbPJi4Hr0GTE81qqxgULNGGK4HLbQoUFccQ4orGzYT5WJdvS3Rj.19DADjcNoFcU9ugzoEk-\"}],\"platforms\":[\"XboxOne\"],\"isSecret\":false,\"description\":\"You recovered Mr. Dinosaur for George.\",\"lockedDescription\":\"Recover Mr. Dinosaur for George.\",\"productId\":\"00000000-0000-0000-0000-00007972ac43\",\"achievementType\":\"Persistent\",\"participationType\":\"Individual\",\"timeWindow\":null,\"rewards\":[{\"name\":null,\"description\":null,\"value\":\"80\",\"type\":\"Gamerscore\",\"mediaAsset\":null,\"valueType\":\"Int\"}],\"estimatedTime\":\"00:00:00\",\"deeplink\":\"\",\"isRevoked\":false},{\"id\":\"3\",\"serviceConfigId\":\"00000000-0000-0000-0000-00007972ac43\",\"name\":\"Whose tracks are these?\",\"titleAssociations\":[{\"name\":\"My Friend Peppa Pig\",\"id\":2037558339}],\"progressState\":\"NotStarted\",\"progression\":{\"requirements\":[{\"id\":\"00000000-0000-0000-0000-000000000000\",\"current\":\"0\",\"target\":\"100\",\"operationType\":\"Sum\",\"valueType\":\"Integer\",\"ruleParticipationType\":\"Individual\"}],\"timeUnlocked\":\"0001-01-01T00:00:00.0000000Z\"},\"mediaAssets\":[{\"name\":\"f0045535-229f-43fa-a597-7221cc75a49e\",\"type\":\"Icon\",\"url\":\"https://images-eds-ssl.xboxlive.com/image?url=27S1DHqE.cHkmFg4nspsd5XrL8tQY.MwWYIrfIlaoTapO0RHdDXslvnCBWfl8yoo0ZWDVpcYOKq2azXdVdxQiCKgnAZuGvvtQ33u632vocTNfQkynPR2EgVhYK51rjukn1CH232.4s4mJ859BihrO4wC3sc9NFfV.qv9ykMyqyM-\"}],\"platforms\":[\"XboxOne\"],\"isSecret\":false,\"description\":\"You followed the tracks in the forest and find out who left them.\",\"lockedDescription\":\"Follow the tracks in the forest and find out who left them.\",\"productId\":\"00000000-0000-0000-0000-00007972ac43\",\"achievementType\":\"Persistent\",\"participationType\":\"Individual\",\"timeWindow\":null,\"rewards\":[{\"name\":null,\"description\":null,\"value\":\"80\",\"type\":\"Gamerscore\",\"mediaAsset\":null,\"valueType\":\"Int\"}],\"estimatedTime\":\"00:00:00\",\"deeplink\":\"\",\"isRevoked\":false},{\"id\":\"4\",\"serviceConfigId\":\"00000000-0000-0000-0000-00007972ac43\",\"name\":\"The Best Snowman Ever!\",\"titleAssociations\":[{\"name\":\"My Friend Peppa Pig\",\"id\":2037558339}],\"progressState\":\"NotStarted\",\"progression\":{\"requirements\":[{\"id\":\"00000000-0000-0000-0000-000000000000\",\"current\":\"0\",\"target\":\"100\",\"operationType\":\"Sum\",\"valueType\":\"Integer\",\"ruleParticipationType\":\"Individual\"}],\"timeUnlocked\":\"0001-01-01T00:00:00.0000000Z\"},\"mediaAssets\":[{\"name\":\"06131097-0d93-4b3c-9bf3-2df074c9d7da\",\"type\":\"Icon\",\"url\":\"https://images-eds-ssl.xboxlive.com/image?url=27S1DHqE.cHkmFg4nspsdwidOMhIK6i8yoxIzzG_hp2nj0JqLJgmdEkolMM7aQLA6ffb.9TCmrB5mYexWdu59xwWID84Gu9yiP6yhpgX2ARtT.uvKjV2V51TSqfyiLsH0JAUQBXTmVBXAqK0Q0dc4iGFdJhGBdEm7vzWVyTtrzs-\"}],\"platforms\":[\"XboxOne\"],\"isSecret\":false,\"description\":\"You built a snowman in Snowy Mountain.\",\"lockedDescription\":\"Build a snowman in Snowy Mountain.\",\"productId\":\"00000000-0000-0000-0000-00007972ac43\",\"achievementType\":\"Persistent\",\"participationType\":\"Individual\",\"timeWindow\":null,\"rewards\":[{\"name\":null,\"description\":null,\"value\":\"80\",\"type\":\"Gamerscore\",\"mediaAsset\":null,\"valueType\":\"Int\"}],\"estimatedTime\":\"00:00:00\",\"deeplink\":\"\",\"isRevoked\":false}],\"pagingInfo\":{\"continuationToken\":null,\"totalRecords\":11}}"; // Act. - achievement_t *actual = parse_achievements(message); + xbox_achievement_t *actual = parse_achievements(message); // Assert. TEST_ASSERT_NOT_NULL(actual); - achievement_t *current_achievement = actual; + xbox_achievement_t *current_achievement = actual; int achievements_count = 0; while (current_achievement != NULL) { achievements_count++; diff --git a/test/test_types.c b/test/test_types.c index 942338f..941cbdc 100644 --- a/test/test_types.c +++ b/test/test_types.c @@ -255,11 +255,11 @@ static void free_gamerscore__gamerscore_is_null__null_gamerscore_returned(void) static void free_gamerscore__gamerscore_is_not_null__null_gamerscore_returned(void) { // Arrange. - unlocked_achievement_t *unlocked_achievement_2 = bzalloc(sizeof(unlocked_achievement_t)); + xbox_unlocked_achievement_t *unlocked_achievement_2 = bzalloc(sizeof(xbox_unlocked_achievement_t)); unlocked_achievement_2->value = 200; unlocked_achievement_2->next = NULL; - unlocked_achievement_t *unlocked_achievement_1 = bzalloc(sizeof(unlocked_achievement_t)); + xbox_unlocked_achievement_t *unlocked_achievement_1 = bzalloc(sizeof(xbox_unlocked_achievement_t)); unlocked_achievement_1->value = 100; unlocked_achievement_1->next = unlocked_achievement_2; @@ -300,11 +300,11 @@ static void copy_gamerscore__gamerscore_is_null__null_copy_returned(void) { static void copy_gamerscore__gamerscore_is_not_null__copy_returned(void) { // Arrange. - unlocked_achievement_t *unlocked_achievement_2 = bzalloc(sizeof(unlocked_achievement_t)); + xbox_unlocked_achievement_t *unlocked_achievement_2 = bzalloc(sizeof(xbox_unlocked_achievement_t)); unlocked_achievement_2->value = 200; unlocked_achievement_2->next = NULL; - unlocked_achievement_t *unlocked_achievement_1 = bzalloc(sizeof(unlocked_achievement_t)); + xbox_unlocked_achievement_t *unlocked_achievement_1 = bzalloc(sizeof(xbox_unlocked_achievement_t)); unlocked_achievement_1->value = 100; unlocked_achievement_1->next = unlocked_achievement_2; @@ -353,7 +353,7 @@ static void copy_gamerscore__no_unlocked_achievements__base_value_returned(void) static void copy_gamerscore__one_unlocked_achievement__total_returned(void) { // Arrange. - unlocked_achievement_t *unlocked_achievement = bzalloc(sizeof(unlocked_achievement_t)); + xbox_unlocked_achievement_t *unlocked_achievement = bzalloc(sizeof(xbox_unlocked_achievement_t)); unlocked_achievement->id = bstrdup("achievement-id"); unlocked_achievement->value = 200; unlocked_achievement->next = NULL; @@ -371,12 +371,12 @@ static void copy_gamerscore__one_unlocked_achievement__total_returned(void) { static void copy_gamerscore__two_unlocked_achievements__total_returned(void) { // Arrange. - unlocked_achievement_t *unlocked_achievement_2 = bzalloc(sizeof(unlocked_achievement_t)); + xbox_unlocked_achievement_t *unlocked_achievement_2 = bzalloc(sizeof(xbox_unlocked_achievement_t)); unlocked_achievement_2->id = bstrdup("achievement-id-2"); unlocked_achievement_2->value = 200; unlocked_achievement_2->next = NULL; - unlocked_achievement_t *unlocked_achievement_1 = bzalloc(sizeof(unlocked_achievement_t)); + xbox_unlocked_achievement_t *unlocked_achievement_1 = bzalloc(sizeof(xbox_unlocked_achievement_t)); unlocked_achievement_1->id = bstrdup("achievement-id-1"); unlocked_achievement_1->value = 100; unlocked_achievement_1->next = unlocked_achievement_2; @@ -394,66 +394,66 @@ static void copy_gamerscore__two_unlocked_achievements__total_returned(void) { // Tests unlocked_achievement.c -static void free_unlocked_achievement__unlocked_achievement_is_null__null_unlocked_achievement_returned(void) { +static void xbox_free_unlocked_achievement__unlocked_achievement_is_null__null_unlocked_achievement_returned(void) { // Arrange. - unlocked_achievement_t *unlocked_achievement = NULL; + xbox_unlocked_achievement_t *unlocked_achievement = NULL; // Act. - free_unlocked_achievement(&unlocked_achievement); + xbox_free_unlocked_achievement(&unlocked_achievement); // Assert. TEST_ASSERT_NULL(unlocked_achievement); } -static void free_unlocked_achievement__unlocked_achievement_is_not_null__null_unlocked_achievement_returned(void) { +static void xbox_free_unlocked_achievement__unlocked_achievement_is_not_null__null_unlocked_achievement_returned(void) { // Arrange. - unlocked_achievement_t *unlocked_achievement_2 = bzalloc(sizeof(unlocked_achievement_t)); + xbox_unlocked_achievement_t *unlocked_achievement_2 = bzalloc(sizeof(xbox_unlocked_achievement_t)); unlocked_achievement_2->id = bstrdup("achievement-id-2"); unlocked_achievement_2->value = 200; unlocked_achievement_2->next = NULL; - unlocked_achievement_t *unlocked_achievement_1 = bzalloc(sizeof(unlocked_achievement_t)); + xbox_unlocked_achievement_t *unlocked_achievement_1 = bzalloc(sizeof(xbox_unlocked_achievement_t)); unlocked_achievement_1->id = bstrdup("achievement-id-1"); unlocked_achievement_1->value = 100; unlocked_achievement_1->next = unlocked_achievement_2; // Act. - free_unlocked_achievement(&unlocked_achievement_1); + xbox_free_unlocked_achievement(&unlocked_achievement_1); // Assert. TEST_ASSERT_NULL(unlocked_achievement_1); - /* The `free_unlocked_achievement` cannot set other references to `NULL` so + /* The `xbox_free_unlocked_achievement` cannot set other references to `NULL` so * the C codebase should never hold-on to these achievements. */ TEST_ASSERT_NOT_NULL(unlocked_achievement_2); } -static void copy_unlocked_achievement__unlocked_achievement_is_null__null_copy_returned(void) { +static void xbox_copy_unlocked_achievement__unlocked_achievement_is_null__null_copy_returned(void) { // Arrange. - unlocked_achievement_t *unlocked_achievement = NULL; + xbox_unlocked_achievement_t *unlocked_achievement = NULL; // Act. - const unlocked_achievement_t *copy = copy_unlocked_achievement(unlocked_achievement); + const xbox_unlocked_achievement_t *copy = xbox_copy_unlocked_achievement(unlocked_achievement); // Assert. TEST_ASSERT_NULL(copy); } -static void copy_unlocked_achievement__unlocked_achievement_is_not_null__copy_returned(void) { +static void xbox_copy_unlocked_achievement__unlocked_achievement_is_not_null__copy_returned(void) { // Arrange. - unlocked_achievement_t *unlocked_achievement_2 = bzalloc(sizeof(unlocked_achievement_t)); + xbox_unlocked_achievement_t *unlocked_achievement_2 = bzalloc(sizeof(xbox_unlocked_achievement_t)); unlocked_achievement_2->id = bstrdup("achievement-id-2"); unlocked_achievement_2->value = 200; unlocked_achievement_2->next = NULL; - unlocked_achievement_t *unlocked_achievement_1 = bzalloc(sizeof(unlocked_achievement_t)); + xbox_unlocked_achievement_t *unlocked_achievement_1 = bzalloc(sizeof(xbox_unlocked_achievement_t)); unlocked_achievement_1->id = bstrdup("achievement-id-1"); unlocked_achievement_1->value = 100; unlocked_achievement_1->next = unlocked_achievement_2; // Act. - const unlocked_achievement_t *copy = copy_unlocked_achievement(unlocked_achievement_1); + const xbox_unlocked_achievement_t *copy = xbox_copy_unlocked_achievement(unlocked_achievement_1); // Assert. TEST_ASSERT_NOT_NULL(copy); @@ -469,10 +469,10 @@ static void copy_unlocked_achievement__unlocked_achievement_is_not_null__copy_re static void free_reward__reward_is_null__null_reward_returned(void) { // Arrange. - reward_t *reward = NULL; + xbox_reward_t *reward = NULL; // Act. - free_reward(&reward); + xbox_free_reward(&reward); // Assert. TEST_ASSERT_NULL(reward); @@ -480,12 +480,12 @@ static void free_reward__reward_is_null__null_reward_returned(void) { static void free_reward__one_reward___null_reward_returned(void) { // Arrange. - reward_t *reward = bzalloc(sizeof(reward_t)); + xbox_reward_t *reward = bzalloc(sizeof(xbox_reward_t)); reward->value = bstrdup("1000"); reward->next = NULL; // Act. - free_reward(&reward); + xbox_free_reward(&reward); // Assert. TEST_ASSERT_NULL(reward); @@ -493,16 +493,16 @@ static void free_reward__one_reward___null_reward_returned(void) { static void free_reward__two_rewards___null_reward_returned(void) { // Arrange. - reward_t *reward2 = bzalloc(sizeof(reward_t)); + xbox_reward_t *reward2 = bzalloc(sizeof(xbox_reward_t)); reward2->value = bstrdup("1000"); reward2->next = NULL; - reward_t *reward1 = bzalloc(sizeof(reward_t)); + xbox_reward_t *reward1 = bzalloc(sizeof(xbox_reward_t)); reward1->value = bstrdup("1000"); reward1->next = reward2; // Act. - free_reward(&reward1); + xbox_free_reward(&reward1); // Assert. TEST_ASSERT_NULL(reward1); @@ -510,10 +510,10 @@ static void free_reward__two_rewards___null_reward_returned(void) { static void copy_reward__reward_is_null__null_copy_returned(void) { // Arrange. - reward_t *reward = NULL; + xbox_reward_t *reward = NULL; // Act. - const reward_t *copy = copy_reward(reward); + const xbox_reward_t *copy = xbox_copy_reward(reward); // Assert. TEST_ASSERT_NULL(copy); @@ -521,12 +521,12 @@ static void copy_reward__reward_is_null__null_copy_returned(void) { static void copy_reward__one_reward__copy_returned(void) { // Arrange. - reward_t *reward = bzalloc(sizeof(reward_t)); + xbox_reward_t *reward = bzalloc(sizeof(xbox_reward_t)); reward->value = bstrdup("1000"); reward->next = NULL; // Act. - const reward_t *copy = copy_reward(reward); + const xbox_reward_t *copy = xbox_copy_reward(reward); // Assert. TEST_ASSERT_NOT_NULL(copy); @@ -536,16 +536,16 @@ static void copy_reward__one_reward__copy_returned(void) { static void copy_reward__two_rewards__copy_returned(void) { // Arrange. - reward_t *reward2 = bzalloc(sizeof(reward_t)); + xbox_reward_t *reward2 = bzalloc(sizeof(xbox_reward_t)); reward2->value = bstrdup("1000"); reward2->next = NULL; - reward_t *reward1 = bzalloc(sizeof(reward_t)); + xbox_reward_t *reward1 = bzalloc(sizeof(xbox_reward_t)); reward1->value = bstrdup("1000"); reward1->next = reward2; // Act. - const reward_t *copy = copy_reward(reward1); + const xbox_reward_t *copy = xbox_copy_reward(reward1); // Assert. TEST_ASSERT_NOT_NULL(copy); @@ -557,10 +557,10 @@ static void copy_reward__two_rewards__copy_returned(void) { static void free_media_asset__media_asset_is_null__null_media_asset_returned(void) { // Arrange. - media_asset_t *media_asset = NULL; + xbox_media_asset_t *media_asset = NULL; // Act. - free_media_asset(&media_asset); + xbox_free_media_asset(&media_asset); // Assert. TEST_ASSERT_NULL(media_asset); @@ -568,11 +568,11 @@ static void free_media_asset__media_asset_is_null__null_media_asset_returned(voi static void free_media_asset__one_media_asset__null_media_asset_returned(void) { // Arrange. - media_asset_t *media_asset = bzalloc(sizeof(media_asset_t)); + xbox_media_asset_t *media_asset = bzalloc(sizeof(xbox_media_asset_t)); media_asset->url = bstrdup("https://www.example.com/image.png"); // Act. - free_media_asset(&media_asset); + xbox_free_media_asset(&media_asset); // Assert. TEST_ASSERT_NULL(media_asset); @@ -580,15 +580,15 @@ static void free_media_asset__one_media_asset__null_media_asset_returned(void) { static void free_media_asset__two_media_assets__null_media_asset_returned(void) { // Arrange. - media_asset_t *media_asset2 = bzalloc(sizeof(media_asset_t)); + xbox_media_asset_t *media_asset2 = bzalloc(sizeof(xbox_media_asset_t)); media_asset2->url = bstrdup("https://www.example.com/image-1.png"); - media_asset_t *media_asset1 = bzalloc(sizeof(media_asset_t)); + xbox_media_asset_t *media_asset1 = bzalloc(sizeof(xbox_media_asset_t)); media_asset1->url = bstrdup("https://www.example.com/image-2.png"); media_asset1->next = media_asset2; // Act. - free_media_asset(&media_asset1); + xbox_free_media_asset(&media_asset1); // Assert. TEST_ASSERT_NULL(media_asset1); @@ -596,10 +596,10 @@ static void free_media_asset__two_media_assets__null_media_asset_returned(void) static void copy_media_asset__media_asset_is_null__null_copy_returned(void) { // Arrange. - media_asset_t *media_asset = NULL; + xbox_media_asset_t *media_asset = NULL; // Act. - media_asset_t *copy = copy_media_asset(media_asset); + xbox_media_asset_t *copy = xbox_copy_media_asset(media_asset); // Assert. TEST_ASSERT_NULL(copy); @@ -607,11 +607,11 @@ static void copy_media_asset__media_asset_is_null__null_copy_returned(void) { static void copy_media_asset__one_media_asset__copy_returned(void) { // Arrange. - media_asset_t *media_asset = bzalloc(sizeof(media_asset_t)); + xbox_media_asset_t *media_asset = bzalloc(sizeof(xbox_media_asset_t)); media_asset->url = bstrdup("https://www.example.com/image.png"); // Act. - const media_asset_t *copy = copy_media_asset(media_asset); + const xbox_media_asset_t *copy = xbox_copy_media_asset(media_asset); // Assert. TEST_ASSERT_NOT_NULL(copy); @@ -621,15 +621,15 @@ static void copy_media_asset__one_media_asset__copy_returned(void) { static void copy_media_asset__two_media_assets__copy_returned(void) { // Arrange. - media_asset_t *media_asset2 = bzalloc(sizeof(media_asset_t)); + xbox_media_asset_t *media_asset2 = bzalloc(sizeof(xbox_media_asset_t)); media_asset2->url = bstrdup("https://www.example.com/image-1.png"); - media_asset_t *media_asset1 = bzalloc(sizeof(media_asset_t)); + xbox_media_asset_t *media_asset1 = bzalloc(sizeof(xbox_media_asset_t)); media_asset1->url = bstrdup("https://www.example.com/image-2.png"); media_asset1->next = media_asset2; // Act. - const media_asset_t *copy = copy_media_asset(media_asset1); + const xbox_media_asset_t *copy = xbox_copy_media_asset(media_asset1); // Assert. TEST_ASSERT_NOT_NULL(copy); @@ -641,10 +641,10 @@ static void copy_media_asset__two_media_assets__copy_returned(void) { static void free_achievement__achievement_is_null__null_achievement_returned(void) { // Arrange. - achievement_t *achievement = NULL; + xbox_achievement_t *achievement = NULL; // Act. - free_achievement(&achievement); + xbox_free_achievement(&achievement); // Assert. TEST_ASSERT_NULL(achievement); @@ -652,22 +652,22 @@ static void free_achievement__achievement_is_null__null_achievement_returned(voi static void free_achievement__one_achievement__null_achievement_returned(void) { // Arrange. - reward_t *reward2 = bzalloc(sizeof(reward_t)); + xbox_reward_t *reward2 = bzalloc(sizeof(xbox_reward_t)); reward2->value = bstrdup("1000"); reward2->next = NULL; - reward_t *reward1 = bzalloc(sizeof(reward_t)); + xbox_reward_t *reward1 = bzalloc(sizeof(xbox_reward_t)); reward1->value = bstrdup("1000"); reward1->next = reward2; - media_asset_t *media_asset2 = bzalloc(sizeof(media_asset_t)); + xbox_media_asset_t *media_asset2 = bzalloc(sizeof(xbox_media_asset_t)); media_asset2->url = bstrdup("https://www.example.com/image-1.png"); - media_asset_t *media_asset1 = bzalloc(sizeof(media_asset_t)); + xbox_media_asset_t *media_asset1 = bzalloc(sizeof(xbox_media_asset_t)); media_asset1->url = bstrdup("https://www.example.com/image-2.png"); media_asset1->next = media_asset2; - achievement_t *achievement = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); achievement->id = bstrdup("achievement-id"); achievement->service_config_id = bstrdup("service-config-id"); achievement->name = bstrdup("Achievement Name"); @@ -680,7 +680,7 @@ static void free_achievement__one_achievement__null_achievement_returned(void) { achievement->next = NULL; // Act. - free_achievement(&achievement); + xbox_free_achievement(&achievement); // Assert. TEST_ASSERT_NULL(achievement); @@ -688,7 +688,7 @@ static void free_achievement__one_achievement__null_achievement_returned(void) { static void free_achievement__two_achievements__null_achievement_returned(void) { // Arrange. - achievement_t *achievement2 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id"); achievement2->service_config_id = bstrdup("service-config-id"); achievement2->name = bstrdup("Achievement Name"); @@ -700,22 +700,22 @@ static void free_achievement__two_achievements__null_achievement_returned(void) achievement2->rewards = NULL; achievement2->next = NULL; - reward_t *reward2 = bzalloc(sizeof(reward_t)); + xbox_reward_t *reward2 = bzalloc(sizeof(xbox_reward_t)); reward2->value = bstrdup("1000"); reward2->next = NULL; - reward_t *reward1 = bzalloc(sizeof(reward_t)); + xbox_reward_t *reward1 = bzalloc(sizeof(xbox_reward_t)); reward1->value = bstrdup("1000"); reward1->next = reward2; - media_asset_t *media_asset2 = bzalloc(sizeof(media_asset_t)); + xbox_media_asset_t *media_asset2 = bzalloc(sizeof(xbox_media_asset_t)); media_asset2->url = bstrdup("https://www.example.com/image-1.png"); - media_asset_t *media_asset1 = bzalloc(sizeof(media_asset_t)); + xbox_media_asset_t *media_asset1 = bzalloc(sizeof(xbox_media_asset_t)); media_asset1->url = bstrdup("https://www.example.com/image-2.png"); media_asset1->next = media_asset2; - achievement_t *achievement1 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id"); achievement1->service_config_id = bstrdup("service-config-id"); achievement1->name = bstrdup("Achievement Name"); @@ -728,7 +728,7 @@ static void free_achievement__two_achievements__null_achievement_returned(void) achievement1->next = achievement2; // Act. - free_achievement(&achievement1); + xbox_free_achievement(&achievement1); // Assert. TEST_ASSERT_NULL(achievement1); @@ -736,10 +736,10 @@ static void free_achievement__two_achievements__null_achievement_returned(void) static void copy_achievement__achievement_is_null__null_copy_returned(void) { // Arrange. - achievement_t *achievement = NULL; + xbox_achievement_t *achievement = NULL; // Act. - const achievement_t *copy = copy_achievement(achievement); + const xbox_achievement_t *copy = xbox_copy_achievement(achievement); // Assert. TEST_ASSERT_NULL(copy); @@ -747,22 +747,22 @@ static void copy_achievement__achievement_is_null__null_copy_returned(void) { static void copy_achievement__one_achievement__copy_returned(void) { // Arrange. - reward_t *reward2 = bzalloc(sizeof(reward_t)); + xbox_reward_t *reward2 = bzalloc(sizeof(xbox_reward_t)); reward2->value = bstrdup("1000"); reward2->next = NULL; - reward_t *reward1 = bzalloc(sizeof(reward_t)); + xbox_reward_t *reward1 = bzalloc(sizeof(xbox_reward_t)); reward1->value = bstrdup("1000"); reward1->next = reward2; - media_asset_t *media_asset2 = bzalloc(sizeof(media_asset_t)); + xbox_media_asset_t *media_asset2 = bzalloc(sizeof(xbox_media_asset_t)); media_asset2->url = bstrdup("https://www.example.com/image-1.png"); - media_asset_t *media_asset1 = bzalloc(sizeof(media_asset_t)); + xbox_media_asset_t *media_asset1 = bzalloc(sizeof(xbox_media_asset_t)); media_asset1->url = bstrdup("https://www.example.com/image-2.png"); media_asset1->next = media_asset2; - achievement_t *achievement = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); achievement->id = bstrdup("achievement-id"); achievement->service_config_id = bstrdup("service-config-id"); achievement->name = bstrdup("Achievement Name"); @@ -775,7 +775,7 @@ static void copy_achievement__one_achievement__copy_returned(void) { achievement->next = NULL; // Act. - const achievement_t *copy = copy_achievement(achievement); + const xbox_achievement_t *copy = xbox_copy_achievement(achievement); // Assert. TEST_ASSERT_NOT_NULL(achievement); @@ -795,7 +795,7 @@ static void copy_achievement__one_achievement__copy_returned(void) { static void copy_achievement__two_achievements__copy_returned(void) { // Arrange. - achievement_t *achievement2 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id"); achievement2->service_config_id = bstrdup("service-config-id"); achievement2->name = bstrdup("Achievement Name"); @@ -807,22 +807,22 @@ static void copy_achievement__two_achievements__copy_returned(void) { achievement2->rewards = NULL; achievement2->next = NULL; - reward_t *reward2 = bzalloc(sizeof(reward_t)); + xbox_reward_t *reward2 = bzalloc(sizeof(xbox_reward_t)); reward2->value = bstrdup("1000"); reward2->next = NULL; - reward_t *reward1 = bzalloc(sizeof(reward_t)); + xbox_reward_t *reward1 = bzalloc(sizeof(xbox_reward_t)); reward1->value = bstrdup("1000"); reward1->next = reward2; - media_asset_t *media_asset2 = bzalloc(sizeof(media_asset_t)); + xbox_media_asset_t *media_asset2 = bzalloc(sizeof(xbox_media_asset_t)); media_asset2->url = bstrdup("https://www.example.com/image-1.png"); - media_asset_t *media_asset1 = bzalloc(sizeof(media_asset_t)); + xbox_media_asset_t *media_asset1 = bzalloc(sizeof(xbox_media_asset_t)); media_asset1->url = bstrdup("https://www.example.com/image-2.png"); media_asset1->next = media_asset2; - achievement_t *achievement1 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id"); achievement1->service_config_id = bstrdup("service-config-id"); achievement1->name = bstrdup("Achievement Name"); @@ -835,7 +835,7 @@ static void copy_achievement__two_achievements__copy_returned(void) { achievement1->next = achievement2; // Act. - const achievement_t *copy = copy_achievement(achievement1); + const xbox_achievement_t *copy = xbox_copy_achievement(achievement1); // Assert. TEST_ASSERT_NOT_NULL(copy); @@ -866,10 +866,10 @@ static void copy_achievement__two_achievements__copy_returned(void) { static void count_achievements__achievement_is_null__0_returned(void) { // Arrange. - achievement_t *achievement = NULL; + xbox_achievement_t *achievement = NULL; // Act. - int total = count_achievements(achievement); + int total = xbox_count_achievements(achievement); // Assert. TEST_ASSERT_EQUAL_INT(total, 0); @@ -877,22 +877,22 @@ static void count_achievements__achievement_is_null__0_returned(void) { static void count_achievements__one_achievement__1_returned(void) { // Arrange. - reward_t *reward2 = bzalloc(sizeof(reward_t)); + xbox_reward_t *reward2 = bzalloc(sizeof(xbox_reward_t)); reward2->value = bstrdup("1000"); reward2->next = NULL; - reward_t *reward1 = bzalloc(sizeof(reward_t)); + xbox_reward_t *reward1 = bzalloc(sizeof(xbox_reward_t)); reward1->value = bstrdup("1000"); reward1->next = reward2; - media_asset_t *media_asset2 = bzalloc(sizeof(media_asset_t)); + xbox_media_asset_t *media_asset2 = bzalloc(sizeof(xbox_media_asset_t)); media_asset2->url = bstrdup("https://www.example.com/image-1.png"); - media_asset_t *media_asset1 = bzalloc(sizeof(media_asset_t)); + xbox_media_asset_t *media_asset1 = bzalloc(sizeof(xbox_media_asset_t)); media_asset1->url = bstrdup("https://www.example.com/image-2.png"); media_asset1->next = media_asset2; - achievement_t *achievement = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); achievement->id = bstrdup("achievement-id"); achievement->service_config_id = bstrdup("service-config-id"); achievement->name = bstrdup("Achievement Name"); @@ -905,7 +905,7 @@ static void count_achievements__one_achievement__1_returned(void) { achievement->next = NULL; // Act. - int total = count_achievements(achievement); + int total = xbox_count_achievements(achievement); // Assert. TEST_ASSERT_EQUAL_INT(total, 1); @@ -913,7 +913,7 @@ static void count_achievements__one_achievement__1_returned(void) { static void count_achievements__two_achievements__2_returned(void) { // Arrange. - achievement_t *achievement2 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id"); achievement2->service_config_id = bstrdup("service-config-id"); achievement2->name = bstrdup("Achievement Name"); @@ -925,22 +925,22 @@ static void count_achievements__two_achievements__2_returned(void) { achievement2->rewards = NULL; achievement2->next = NULL; - reward_t *reward2 = bzalloc(sizeof(reward_t)); + xbox_reward_t *reward2 = bzalloc(sizeof(xbox_reward_t)); reward2->value = bstrdup("1000"); reward2->next = NULL; - reward_t *reward1 = bzalloc(sizeof(reward_t)); + xbox_reward_t *reward1 = bzalloc(sizeof(xbox_reward_t)); reward1->value = bstrdup("1000"); reward1->next = reward2; - media_asset_t *media_asset2 = bzalloc(sizeof(media_asset_t)); + xbox_media_asset_t *media_asset2 = bzalloc(sizeof(xbox_media_asset_t)); media_asset2->url = bstrdup("https://www.example.com/image-1.png"); - media_asset_t *media_asset1 = bzalloc(sizeof(media_asset_t)); + xbox_media_asset_t *media_asset1 = bzalloc(sizeof(xbox_media_asset_t)); media_asset1->url = bstrdup("https://www.example.com/image-2.png"); media_asset1->next = media_asset2; - achievement_t *achievement1 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id"); achievement1->service_config_id = bstrdup("service-config-id"); achievement1->name = bstrdup("Achievement Name"); @@ -953,20 +953,20 @@ static void count_achievements__two_achievements__2_returned(void) { achievement1->next = achievement2; // Act. - int total = count_achievements(achievement1); + int total = xbox_count_achievements(achievement1); // Assert. TEST_ASSERT_EQUAL_INT(total, 2); } -// Tests count_locked_achievements +// Tests xbox_count_locked_achievements static void count_locked_achievements__achievement_is_null__0_returned(void) { // Arrange. - achievement_t *achievement = NULL; + xbox_achievement_t *achievement = NULL; // Act. - int total = count_locked_achievements(achievement); + int total = xbox_count_locked_achievements(achievement); // Assert. TEST_ASSERT_EQUAL_INT(0, total); @@ -974,14 +974,14 @@ static void count_locked_achievements__achievement_is_null__0_returned(void) { static void count_locked_achievements__one_locked_achievement__1_returned(void) { // Arrange. - achievement_t *achievement = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); achievement->id = bstrdup("achievement-id"); achievement->name = bstrdup("Achievement Name"); achievement->unlocked_timestamp = 0; // Locked achievement->next = NULL; // Act. - int total = count_locked_achievements(achievement); + int total = xbox_count_locked_achievements(achievement); // Assert. TEST_ASSERT_EQUAL_INT(1, total); @@ -989,14 +989,14 @@ static void count_locked_achievements__one_locked_achievement__1_returned(void) static void count_locked_achievements__one_unlocked_achievement__0_returned(void) { // Arrange. - achievement_t *achievement = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); achievement->id = bstrdup("achievement-id"); achievement->name = bstrdup("Achievement Name"); achievement->unlocked_timestamp = 1234567890; // Unlocked achievement->next = NULL; // Act. - int total = count_locked_achievements(achievement); + int total = xbox_count_locked_achievements(achievement); // Assert. TEST_ASSERT_EQUAL_INT(0, total); @@ -1004,20 +1004,20 @@ static void count_locked_achievements__one_unlocked_achievement__0_returned(void static void count_locked_achievements__two_locked_achievements__2_returned(void) { // Arrange. - achievement_t *achievement2 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id-2"); achievement2->name = bstrdup("Achievement Name 2"); achievement2->unlocked_timestamp = 0; // Locked achievement2->next = NULL; - achievement_t *achievement1 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id-1"); achievement1->name = bstrdup("Achievement Name 1"); achievement1->unlocked_timestamp = 0; // Locked achievement1->next = achievement2; // Act. - int total = count_locked_achievements(achievement1); + int total = xbox_count_locked_achievements(achievement1); // Assert. TEST_ASSERT_EQUAL_INT(2, total); @@ -1025,20 +1025,20 @@ static void count_locked_achievements__two_locked_achievements__2_returned(void) static void count_locked_achievements__two_unlocked_achievements__0_returned(void) { // Arrange. - achievement_t *achievement2 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id-2"); achievement2->name = bstrdup("Achievement Name 2"); achievement2->unlocked_timestamp = 1234567890; // Unlocked achievement2->next = NULL; - achievement_t *achievement1 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id-1"); achievement1->name = bstrdup("Achievement Name 1"); achievement1->unlocked_timestamp = 1234567800; // Unlocked achievement1->next = achievement2; // Act. - int total = count_locked_achievements(achievement1); + int total = xbox_count_locked_achievements(achievement1); // Assert. TEST_ASSERT_EQUAL_INT(0, total); @@ -1046,39 +1046,39 @@ static void count_locked_achievements__two_unlocked_achievements__0_returned(voi static void count_locked_achievements__mixed_achievements__locked_count_returned(void) { // Arrange. - achievement_t *achievement3 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement3 = bzalloc(sizeof(xbox_achievement_t)); achievement3->id = bstrdup("achievement-id-3"); achievement3->name = bstrdup("Achievement Name 3"); achievement3->unlocked_timestamp = 0; // Locked achievement3->next = NULL; - achievement_t *achievement2 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id-2"); achievement2->name = bstrdup("Achievement Name 2"); achievement2->unlocked_timestamp = 1234567890; // Unlocked achievement2->next = achievement3; - achievement_t *achievement1 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id-1"); achievement1->name = bstrdup("Achievement Name 1"); achievement1->unlocked_timestamp = 0; // Locked achievement1->next = achievement2; // Act. - int total = count_locked_achievements(achievement1); + int total = xbox_count_locked_achievements(achievement1); // Assert. TEST_ASSERT_EQUAL_INT(2, total); } -// Tests find_latest_unlocked_achievement +// Tests xbox_find_latest_unlocked_achievement static void find_latest_unlocked_achievement__achievement_is_null__null_returned(void) { // Arrange. - achievement_t *achievement = NULL; + xbox_achievement_t *achievement = NULL; // Act. - const achievement_t *result = find_latest_unlocked_achievement(achievement); + const xbox_achievement_t *result = xbox_find_latest_unlocked_achievement(achievement); // Assert. TEST_ASSERT_NULL(result); @@ -1086,14 +1086,14 @@ static void find_latest_unlocked_achievement__achievement_is_null__null_returned static void find_latest_unlocked_achievement__one_locked_achievement__null_returned(void) { // Arrange. - achievement_t *achievement = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); achievement->id = bstrdup("achievement-id"); achievement->name = bstrdup("Achievement Name"); achievement->unlocked_timestamp = 0; // Locked achievement->next = NULL; // Act. - const achievement_t *result = find_latest_unlocked_achievement(achievement); + const xbox_achievement_t *result = xbox_find_latest_unlocked_achievement(achievement); // Assert. TEST_ASSERT_NULL(result); @@ -1101,14 +1101,14 @@ static void find_latest_unlocked_achievement__one_locked_achievement__null_retur static void find_latest_unlocked_achievement__one_unlocked_achievement__achievement_returned(void) { // Arrange. - achievement_t *achievement = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); achievement->id = bstrdup("achievement-id"); achievement->name = bstrdup("Achievement Name"); achievement->unlocked_timestamp = 1234567890; // Unlocked achievement->next = NULL; // Act. - const achievement_t *result = find_latest_unlocked_achievement(achievement); + const xbox_achievement_t *result = xbox_find_latest_unlocked_achievement(achievement); // Assert. TEST_ASSERT_NOT_NULL(result); @@ -1117,20 +1117,20 @@ static void find_latest_unlocked_achievement__one_unlocked_achievement__achievem static void find_latest_unlocked_achievement__two_unlocked_achievements__latest_returned(void) { // Arrange. - achievement_t *achievement2 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id-2"); achievement2->name = bstrdup("Achievement Name 2"); achievement2->unlocked_timestamp = 1234567900; // Unlocked later achievement2->next = NULL; - achievement_t *achievement1 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id-1"); achievement1->name = bstrdup("Achievement Name 1"); achievement1->unlocked_timestamp = 1234567800; // Unlocked earlier achievement1->next = achievement2; // Act. - const achievement_t *result = find_latest_unlocked_achievement(achievement1); + const xbox_achievement_t *result = xbox_find_latest_unlocked_achievement(achievement1); // Assert. TEST_ASSERT_NOT_NULL(result); @@ -1139,20 +1139,20 @@ static void find_latest_unlocked_achievement__two_unlocked_achievements__latest_ static void find_latest_unlocked_achievement__latest_is_first_in_list__first_returned(void) { // Arrange. - achievement_t *achievement2 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id-2"); achievement2->name = bstrdup("Achievement Name 2"); achievement2->unlocked_timestamp = 1234567800; // Unlocked earlier achievement2->next = NULL; - achievement_t *achievement1 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id-1"); achievement1->name = bstrdup("Achievement Name 1"); achievement1->unlocked_timestamp = 1234567900; // Unlocked later achievement1->next = achievement2; // Act. - const achievement_t *result = find_latest_unlocked_achievement(achievement1); + const xbox_achievement_t *result = xbox_find_latest_unlocked_achievement(achievement1); // Assert. TEST_ASSERT_NOT_NULL(result); @@ -1161,20 +1161,20 @@ static void find_latest_unlocked_achievement__latest_is_first_in_list__first_ret static void find_latest_unlocked_achievement__all_locked__null_returned(void) { // Arrange. - achievement_t *achievement2 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id-2"); achievement2->name = bstrdup("Achievement Name 2"); achievement2->unlocked_timestamp = 0; // Locked achievement2->next = NULL; - achievement_t *achievement1 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id-1"); achievement1->name = bstrdup("Achievement Name 1"); achievement1->unlocked_timestamp = 0; // Locked achievement1->next = achievement2; // Act. - const achievement_t *result = find_latest_unlocked_achievement(achievement1); + const xbox_achievement_t *result = xbox_find_latest_unlocked_achievement(achievement1); // Assert. TEST_ASSERT_NULL(result); @@ -1182,40 +1182,40 @@ static void find_latest_unlocked_achievement__all_locked__null_returned(void) { static void find_latest_unlocked_achievement__mixed_achievements__latest_unlocked_returned(void) { // Arrange. - achievement_t *achievement3 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement3 = bzalloc(sizeof(xbox_achievement_t)); achievement3->id = bstrdup("achievement-id-3"); achievement3->name = bstrdup("Achievement Name 3"); achievement3->unlocked_timestamp = 0; // Locked achievement3->next = NULL; - achievement_t *achievement2 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id-2"); achievement2->name = bstrdup("Achievement Name 2"); achievement2->unlocked_timestamp = 1234567900; // Unlocked (latest) achievement2->next = achievement3; - achievement_t *achievement1 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id-1"); achievement1->name = bstrdup("Achievement Name 1"); achievement1->unlocked_timestamp = 1234567800; // Unlocked (earlier) achievement1->next = achievement2; // Act. - const achievement_t *result = find_latest_unlocked_achievement(achievement1); + const xbox_achievement_t *result = xbox_find_latest_unlocked_achievement(achievement1); // Assert. TEST_ASSERT_NOT_NULL(result); TEST_ASSERT_EQUAL_STRING("achievement-id-2", result->id); } -// Tests get_random_locked_achievement +// Tests xbox_get_random_locked_achievement static void get_random_locked_achievement__achievement_is_null__null_returned(void) { // Arrange. - achievement_t *achievement = NULL; + xbox_achievement_t *achievement = NULL; // Act. - const achievement_t *result = get_random_locked_achievement(achievement); + const xbox_achievement_t *result = xbox_get_random_locked_achievement(achievement); // Assert. TEST_ASSERT_NULL(result); @@ -1223,14 +1223,14 @@ static void get_random_locked_achievement__achievement_is_null__null_returned(vo static void get_random_locked_achievement__one_locked_achievement__achievement_returned(void) { // Arrange. - achievement_t *achievement = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); achievement->id = bstrdup("achievement-id"); achievement->name = bstrdup("Achievement Name"); achievement->unlocked_timestamp = 0; // Locked achievement->next = NULL; // Act. - const achievement_t *result = get_random_locked_achievement(achievement); + const xbox_achievement_t *result = xbox_get_random_locked_achievement(achievement); // Assert. TEST_ASSERT_NOT_NULL(result); @@ -1239,14 +1239,14 @@ static void get_random_locked_achievement__one_locked_achievement__achievement_r static void get_random_locked_achievement__one_unlocked_achievement__null_returned(void) { // Arrange. - achievement_t *achievement = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); achievement->id = bstrdup("achievement-id"); achievement->name = bstrdup("Achievement Name"); achievement->unlocked_timestamp = 1234567890; // Unlocked achievement->next = NULL; // Act. - const achievement_t *result = get_random_locked_achievement(achievement); + const xbox_achievement_t *result = xbox_get_random_locked_achievement(achievement); // Assert. TEST_ASSERT_NULL(result); @@ -1254,20 +1254,20 @@ static void get_random_locked_achievement__one_unlocked_achievement__null_return static void get_random_locked_achievement__all_unlocked__null_returned(void) { // Arrange. - achievement_t *achievement2 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id-2"); achievement2->name = bstrdup("Achievement Name 2"); achievement2->unlocked_timestamp = 1234567900; // Unlocked achievement2->next = NULL; - achievement_t *achievement1 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id-1"); achievement1->name = bstrdup("Achievement Name 1"); achievement1->unlocked_timestamp = 1234567800; // Unlocked achievement1->next = achievement2; // Act. - const achievement_t *result = get_random_locked_achievement(achievement1); + const xbox_achievement_t *result = xbox_get_random_locked_achievement(achievement1); // Assert. TEST_ASSERT_NULL(result); @@ -1275,26 +1275,26 @@ static void get_random_locked_achievement__all_unlocked__null_returned(void) { static void get_random_locked_achievement__mixed_achievements__locked_returned(void) { // Arrange. - achievement_t *achievement3 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement3 = bzalloc(sizeof(xbox_achievement_t)); achievement3->id = bstrdup("achievement-id-3"); achievement3->name = bstrdup("Achievement Name 3"); achievement3->unlocked_timestamp = 0; // Locked achievement3->next = NULL; - achievement_t *achievement2 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id-2"); achievement2->name = bstrdup("Achievement Name 2"); achievement2->unlocked_timestamp = 1234567890; // Unlocked achievement2->next = achievement3; - achievement_t *achievement1 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id-1"); achievement1->name = bstrdup("Achievement Name 1"); achievement1->unlocked_timestamp = 0; // Locked achievement1->next = achievement2; // Act. - const achievement_t *result = get_random_locked_achievement(achievement1); + const xbox_achievement_t *result = xbox_get_random_locked_achievement(achievement1); // Assert. TEST_ASSERT_NOT_NULL(result); @@ -1305,13 +1305,13 @@ static void get_random_locked_achievement__mixed_achievements__locked_returned(v static void get_random_locked_achievement__multiple_calls__returns_locked_achievement(void) { // Arrange. - achievement_t *achievement2 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("locked-2"); achievement2->name = bstrdup("Locked Achievement 2"); achievement2->unlocked_timestamp = 0; // Locked achievement2->next = NULL; - achievement_t *achievement1 = bzalloc(sizeof(achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("locked-1"); achievement1->name = bstrdup("Locked Achievement 1"); achievement1->unlocked_timestamp = 0; // Locked @@ -1319,7 +1319,7 @@ static void get_random_locked_achievement__multiple_calls__returns_locked_achiev // Act & Assert - call multiple times, each should return a locked achievement for (int i = 0; i < 10; i++) { - const achievement_t *result = get_random_locked_achievement(achievement1); + const xbox_achievement_t *result = xbox_get_random_locked_achievement(achievement1); TEST_ASSERT_NOT_NULL(result); TEST_ASSERT_EQUAL_INT64(0, result->unlocked_timestamp); } @@ -1327,74 +1327,74 @@ static void get_random_locked_achievement__multiple_calls__returns_locked_achiev // Tests achievement_progress.c -static void free_achievement_progress__achievement_progress_is_null__null_achievement_progress_returned(void) { +static void xbox_free_achievement_progress__achievement_progress_is_null__null_achievement_progress_returned(void) { // Arrange. - achievement_progress_t *achievement_progress = NULL; + xbox_achievement_progress_t *achievement_progress = NULL; // Act. - free_achievement_progress(&achievement_progress); + xbox_free_achievement_progress(&achievement_progress); // Assert. TEST_ASSERT_NULL(achievement_progress); } -static void free_achievement_progress__one_achievement_progress__null_achievement_progress_returned(void) { +static void xbox_free_achievement_progress__one_achievement_progress__null_achievement_progress_returned(void) { // Arrange. - achievement_progress_t *achievement_progress = bzalloc(sizeof(achievement_progress_t)); + xbox_achievement_progress_t *achievement_progress = bzalloc(sizeof(xbox_achievement_progress_t)); achievement_progress->id = bstrdup("achievement-progress-id"); achievement_progress->service_config_id = bstrdup("service-config-id"); achievement_progress->progress_state = bstrdup("unlocked"); achievement_progress->next = NULL; // Act. - free_achievement_progress(&achievement_progress); + xbox_free_achievement_progress(&achievement_progress); // Assert. TEST_ASSERT_NULL(achievement_progress); } -static void free_achievement_progress__two_achievement_progresses__null_achievement_progress_returned(void) { +static void xbox_free_achievement_progress__two_achievement_progresses__null_achievement_progress_returned(void) { // Arrange. - achievement_progress_t *achievement_progress2 = bzalloc(sizeof(achievement_progress_t)); + xbox_achievement_progress_t *achievement_progress2 = bzalloc(sizeof(xbox_achievement_progress_t)); achievement_progress2->id = bstrdup("achievement-progress-id-2"); achievement_progress2->service_config_id = bstrdup("service-config-id"); achievement_progress2->progress_state = bstrdup("unlocked"); achievement_progress2->next = NULL; - achievement_progress_t *achievement_progress1 = bzalloc(sizeof(achievement_progress_t)); + xbox_achievement_progress_t *achievement_progress1 = bzalloc(sizeof(xbox_achievement_progress_t)); achievement_progress1->id = bstrdup("achievement-progress-id-1"); achievement_progress1->service_config_id = bstrdup("service-config-id"); achievement_progress1->progress_state = bstrdup("unlocked"); achievement_progress1->next = achievement_progress2; // Act. - free_achievement_progress(&achievement_progress1); + xbox_free_achievement_progress(&achievement_progress1); // Assert. TEST_ASSERT_NULL(achievement_progress1); } -static void copy_achievement_progress__achievement_progress_is_null__null_copy_returned(void) { +static void xbox_copy_achievement_progress__achievement_progress_is_null__null_copy_returned(void) { // Arrange. - achievement_progress_t *achievement_progress = NULL; + xbox_achievement_progress_t *achievement_progress = NULL; // Act. - const achievement_progress_t *copy = copy_achievement_progress(achievement_progress); + const xbox_achievement_progress_t *copy = xbox_copy_achievement_progress(achievement_progress); // Assert. TEST_ASSERT_NULL(copy); } -static void copy_achievement_progress__one_achievement_progress__copy_returned(void) { +static void xbox_copy_achievement_progress__one_achievement_progress__copy_returned(void) { // Arrange. - achievement_progress_t *achievement_progress = bzalloc(sizeof(achievement_progress_t)); + xbox_achievement_progress_t *achievement_progress = bzalloc(sizeof(xbox_achievement_progress_t)); achievement_progress->id = bstrdup("achievement-progress-id"); achievement_progress->service_config_id = bstrdup("service-config-id"); achievement_progress->progress_state = bstrdup("unlocked"); achievement_progress->next = NULL; // Act. - const achievement_progress_t *copy = copy_achievement_progress(achievement_progress); + const xbox_achievement_progress_t *copy = xbox_copy_achievement_progress(achievement_progress); // Assert. TEST_ASSERT_NOT_NULL(copy); @@ -1404,22 +1404,22 @@ static void copy_achievement_progress__one_achievement_progress__copy_returned(v TEST_ASSERT_NULL(copy->next); } -static void copy_achievement_progress__two_achievement_progresses__copy_returned(void) { +static void xbox_copy_achievement_progress__two_achievement_progresses__copy_returned(void) { // Arrange. - achievement_progress_t *achievement_progress2 = bzalloc(sizeof(achievement_progress_t)); + xbox_achievement_progress_t *achievement_progress2 = bzalloc(sizeof(xbox_achievement_progress_t)); achievement_progress2->id = bstrdup("achievement-progress-id-2"); achievement_progress2->service_config_id = bstrdup("service-config-id"); achievement_progress2->progress_state = bstrdup("unlocked"); achievement_progress2->next = NULL; - achievement_progress_t *achievement_progress1 = bzalloc(sizeof(achievement_progress_t)); + xbox_achievement_progress_t *achievement_progress1 = bzalloc(sizeof(xbox_achievement_progress_t)); achievement_progress1->id = bstrdup("achievement-progress-id-1"); achievement_progress1->service_config_id = bstrdup("service-config-id"); achievement_progress1->progress_state = bstrdup("unlocked"); achievement_progress1->next = achievement_progress2; // Act. - const achievement_progress_t *copy = copy_achievement_progress(achievement_progress1); + const xbox_achievement_progress_t *copy = xbox_copy_achievement_progress(achievement_progress1); // Assert. TEST_ASSERT_NOT_NULL(copy); @@ -1525,20 +1525,20 @@ int main(void) { RUN_TEST(copy_gamerscore__two_unlocked_achievements__total_returned); // Tests unlocked_achievement.c - RUN_TEST(free_unlocked_achievement__unlocked_achievement_is_null__null_unlocked_achievement_returned); - RUN_TEST(free_unlocked_achievement__unlocked_achievement_is_not_null__null_unlocked_achievement_returned); + RUN_TEST(xbox_free_unlocked_achievement__unlocked_achievement_is_null__null_unlocked_achievement_returned); + RUN_TEST(xbox_free_unlocked_achievement__unlocked_achievement_is_not_null__null_unlocked_achievement_returned); - RUN_TEST(copy_unlocked_achievement__unlocked_achievement_is_null__null_copy_returned); - RUN_TEST(copy_unlocked_achievement__unlocked_achievement_is_not_null__copy_returned); + RUN_TEST(xbox_copy_unlocked_achievement__unlocked_achievement_is_null__null_copy_returned); + RUN_TEST(xbox_copy_unlocked_achievement__unlocked_achievement_is_not_null__copy_returned); // Tests achievement_progress.c - RUN_TEST(free_achievement_progress__achievement_progress_is_null__null_achievement_progress_returned); - RUN_TEST(free_achievement_progress__one_achievement_progress__null_achievement_progress_returned); - RUN_TEST(free_achievement_progress__two_achievement_progresses__null_achievement_progress_returned); + RUN_TEST(xbox_free_achievement_progress__achievement_progress_is_null__null_achievement_progress_returned); + RUN_TEST(xbox_free_achievement_progress__one_achievement_progress__null_achievement_progress_returned); + RUN_TEST(xbox_free_achievement_progress__two_achievement_progresses__null_achievement_progress_returned); - RUN_TEST(copy_achievement_progress__achievement_progress_is_null__null_copy_returned); - RUN_TEST(copy_achievement_progress__one_achievement_progress__copy_returned); - RUN_TEST(copy_achievement_progress__two_achievement_progresses__copy_returned); + RUN_TEST(xbox_copy_achievement_progress__achievement_progress_is_null__null_copy_returned); + RUN_TEST(xbox_copy_achievement_progress__one_achievement_progress__copy_returned); + RUN_TEST(xbox_copy_achievement_progress__two_achievement_progresses__copy_returned); return UNITY_END(); } diff --git a/test/test_xbox_session.c b/test/test_xbox_session.c index 086ca34..34ba249 100644 --- a/test/test_xbox_session.c +++ b/test/test_xbox_session.c @@ -9,14 +9,14 @@ static game_t *game_outer_worlds_2; static game_t *game_fallout_4; -static xbox_session_t *session; -static achievement_t *achievement_1; -static achievement_t *achievement_2; -static achievement_progress_t *achievement_progress_1; -static achievement_progress_t *achievement_progress_2; -static gamerscore_t *gamerscore; -static reward_t *reward_1; -static reward_t *reward_2; +static xbox_session_t *session; +static xbox_achievement_t *achievement_1; +static xbox_achievement_t *achievement_2; +static xbox_achievement_progress_t *achievement_progress_1; +static xbox_achievement_progress_t *achievement_progress_2; +static gamerscore_t *gamerscore; +static xbox_reward_t *reward_1; +static xbox_reward_t *reward_2; void setUp(void) { @@ -28,11 +28,11 @@ void setUp(void) { session->gamerscore = copy_gamerscore(gamerscore); session->achievements = NULL; - reward_1 = bzalloc(sizeof(reward_t)); + reward_1 = bzalloc(sizeof(xbox_reward_t)); reward_1->value = bstrdup("80"); reward_1->next = NULL; - reward_2 = bzalloc(sizeof(reward_t)); + reward_2 = bzalloc(sizeof(xbox_reward_t)); reward_2->value = bstrdup("500"); reward_2->next = NULL; @@ -47,7 +47,7 @@ void setUp(void) { game_fallout_4->id = bstrdup(FALLOUT_4_ID); game_fallout_4->title = bstrdup("Fallout 4"); - achievement_2 = bzalloc(sizeof(achievement_t)); + achievement_2 = bzalloc(sizeof(xbox_achievement_t)); achievement_2->id = bstrdup("achievement-2"); achievement_2->service_config_id = NULL; achievement_2->name = NULL; @@ -55,11 +55,11 @@ void setUp(void) { achievement_2->locked_description = NULL; achievement_2->progress_state = NULL; achievement_2->description = NULL; - achievement_2->rewards = copy_reward(reward_2); + achievement_2->rewards = xbox_copy_reward(reward_2); achievement_2->media_assets = NULL; achievement_2->next = NULL; - achievement_1 = bzalloc(sizeof(achievement_t)); + achievement_1 = bzalloc(sizeof(xbox_achievement_t)); achievement_1->id = bstrdup("achievement-1"); achievement_1->service_config_id = NULL; achievement_1->name = NULL; @@ -67,17 +67,17 @@ void setUp(void) { achievement_1->locked_description = NULL; achievement_1->progress_state = NULL; achievement_1->description = NULL; - achievement_1->rewards = copy_reward(reward_1); + achievement_1->rewards = xbox_copy_reward(reward_1); achievement_1->media_assets = NULL; achievement_1->next = NULL; - achievement_progress_1 = bzalloc(sizeof(achievement_progress_t)); + achievement_progress_1 = bzalloc(sizeof(xbox_achievement_progress_t)); achievement_progress_1->id = bstrdup(achievement_1->id); achievement_progress_1->progress_state = bstrdup("Achieved"); achievement_progress_1->service_config_id = NULL; achievement_progress_1->next = NULL; - achievement_progress_2 = bzalloc(sizeof(achievement_progress_t)); + achievement_progress_2 = bzalloc(sizeof(xbox_achievement_progress_t)); achievement_progress_2->id = bstrdup(achievement_2->id); achievement_progress_2->progress_state = bstrdup("Achieved"); achievement_progress_2->service_config_id = NULL; @@ -92,14 +92,14 @@ void tearDown(void) { free_game(&game_outer_worlds_2); free_game(&game_fallout_4); - free_achievement(&achievement_2); - free_achievement(&achievement_1); + xbox_free_achievement(&achievement_2); + xbox_free_achievement(&achievement_1); - free_achievement_progress(&achievement_progress_1); - free_achievement_progress(&achievement_progress_2); + xbox_free_achievement_progress(&achievement_progress_1); + xbox_free_achievement_progress(&achievement_progress_2); - free_reward(&reward_1); - free_reward(&reward_2); + xbox_free_reward(&reward_1); + xbox_free_reward(&reward_2); free_gamerscore(&gamerscore); } @@ -195,7 +195,7 @@ static void xbox_session_change_game__session_has_no_game_and_game_is_null__no_g static void xbox_session_change_game__session_has_game_and_game_is_null__no_game_selected(void) { // Arrange. session->game = copy_game(game_outer_worlds_2); - session->achievements = copy_achievement(achievement_1); + session->achievements = xbox_copy_achievement(achievement_1); game_t *game = NULL; @@ -209,7 +209,7 @@ static void xbox_session_change_game__session_has_game_and_game_is_null__no_game static void xbox_session_change_game__session_has_no_game_and_game_is_not_null__game_selected(void) { // Arrange. - mock_xbox_client_set_achievements(copy_achievement(achievement_1)); + mock_xbox_client_set_achievements(xbox_copy_achievement(achievement_1)); game_t *game = copy_game(game_fallout_4); @@ -226,10 +226,10 @@ static void xbox_session_change_game__session_has_no_game_and_game_is_not_null__ static void xbox_session_change_game__session_has_game_and_game_is_not_null__new_game_selected(void) { // Arrange. - mock_xbox_client_set_achievements(copy_achievement(achievement_2)); + mock_xbox_client_set_achievements(xbox_copy_achievement(achievement_2)); session->game = copy_game(game_outer_worlds_2); - session->achievements = copy_achievement(achievement_1); + session->achievements = xbox_copy_achievement(achievement_1); game_t *game = copy_game(game_fallout_4); @@ -275,7 +275,7 @@ static void xbox_session_compute_gamerscore__session_has_one_unlocked_achievemen session->gamerscore = bzalloc(sizeof(gamerscore_t)); session->gamerscore->base_value = 1000; - session->gamerscore->unlocked_achievements = bzalloc(sizeof(unlocked_achievement_t)); + session->gamerscore->unlocked_achievements = bzalloc(sizeof(xbox_unlocked_achievement_t)); session->gamerscore->unlocked_achievements->value = 50; session->gamerscore->unlocked_achievements->next = NULL; @@ -291,10 +291,10 @@ static void xbox_session_compute_gamerscore__session_has_two_unlocked_achievemen session->gamerscore = bzalloc(sizeof(gamerscore_t)); session->gamerscore->base_value = 1000; - session->gamerscore->unlocked_achievements = bzalloc(sizeof(unlocked_achievement_t)); + session->gamerscore->unlocked_achievements = bzalloc(sizeof(xbox_unlocked_achievement_t)); session->gamerscore->unlocked_achievements->value = 50; - session->gamerscore->unlocked_achievements->next = bzalloc(sizeof(unlocked_achievement_t)); + session->gamerscore->unlocked_achievements->next = bzalloc(sizeof(xbox_unlocked_achievement_t)); session->gamerscore->unlocked_achievements->next->value = 80; session->gamerscore->unlocked_achievements->next->next = NULL; @@ -309,8 +309,8 @@ static void xbox_session_compute_gamerscore__session_has_two_unlocked_achievemen static void xbox_session_unlock_achievement__one_achievement_unlocked__gamerscore_incremented(void) { // Arrange. - achievement_t *achievements = copy_achievement(achievement_1); - achievements->next = copy_achievement(achievement_2); + xbox_achievement_t *achievements = xbox_copy_achievement(achievement_1); + achievements->next = xbox_copy_achievement(achievement_2); session->achievements = achievements; @@ -324,8 +324,8 @@ static void xbox_session_unlock_achievement__one_achievement_unlocked__gamerscor static void xbox_session_unlock_achievement__two_achievements_unlocked__gamerscore_incremented(void) { // Arrange. - achievement_t *achievements = copy_achievement(achievement_1); - achievements->next = copy_achievement(achievement_2); + xbox_achievement_t *achievements = xbox_copy_achievement(achievement_1); + achievements->next = xbox_copy_achievement(achievement_2); session->achievements = achievements; @@ -349,12 +349,12 @@ static void xbox_session_unlock_achievement__unknown_achievements_unlocked__game static void xbox_session_unlock_achievement__no_reward_found__gamerscore_unchanged(void) { // Arrange. - achievement_t *achievements = copy_achievement(achievement_1); - achievements->next = copy_achievement(achievement_2); + xbox_achievement_t *achievements = xbox_copy_achievement(achievement_1); + achievements->next = xbox_copy_achievement(achievement_2); session->achievements = achievements; - free_reward((reward_t **)&achievements->rewards); + xbox_free_reward(&achievements->rewards); // Act. xbox_session_unlock_achievement(session, achievement_progress_1); From ab8fbdf7632cb6fe1f2a3f75e47543c82cbb7a4b Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Sun, 22 Mar 2026 20:20:32 -0400 Subject: [PATCH 11/29] Refactor: rename and generalize Xbox-specific sources to platform-agnostic components; introduce game cover URL support, centralized event handling, and HTTP URL normalization. --- CMakeLists.txt | 16 +-- src/common/game.c | 2 + src/common/game.h | 2 + src/integrations/monitoring_service.c | 54 +++++++- .../retro_achievements_monitor.c | 16 +-- .../retro_achievements_monitor.h | 8 +- src/io/cache.c | 14 +- src/main.c | 20 +-- src/net/http/http.c | 72 ++++++++++ src/net/http/http.h | 13 ++ .../{xbox => }/achievement_description.c | 2 +- .../{xbox => }/achievement_description.h | 0 src/sources/{xbox => }/achievement_icon.c | 2 +- src/sources/{xbox => }/achievement_icon.h | 0 src/sources/{xbox => }/achievement_name.c | 2 +- src/sources/{xbox => }/achievement_name.h | 0 src/sources/{xbox => }/achievements_count.c | 2 +- src/sources/{xbox => }/achievements_count.h | 0 src/sources/{xbox => }/game_cover.c | 125 ++++++------------ src/sources/game_cover.h | 35 +++++ src/sources/{xbox => }/gamerpic.c | 2 +- src/sources/{xbox => }/gamerpic.h | 0 src/sources/{xbox => }/gamerscore.c | 2 +- src/sources/{xbox => }/gamerscore.h | 0 src/sources/{xbox => }/gamertag.c | 2 +- src/sources/{xbox => }/gamertag.h | 0 src/sources/xbox/game_cover.h | 34 ----- 27 files changed, 254 insertions(+), 171 deletions(-) rename src/sources/{xbox => }/achievement_description.c (99%) rename src/sources/{xbox => }/achievement_description.h (100%) rename src/sources/{xbox => }/achievement_icon.c (99%) rename src/sources/{xbox => }/achievement_icon.h (100%) rename src/sources/{xbox => }/achievement_name.c (99%) rename src/sources/{xbox => }/achievement_name.h (100%) rename src/sources/{xbox => }/achievements_count.c (99%) rename src/sources/{xbox => }/achievements_count.h (100%) rename src/sources/{xbox => }/game_cover.c (57%) create mode 100644 src/sources/game_cover.h rename src/sources/{xbox => }/gamerpic.c (99%) rename src/sources/{xbox => }/gamerpic.h (100%) rename src/sources/{xbox => }/gamerscore.c (99%) rename src/sources/{xbox => }/gamerscore.h (100%) rename src/sources/{xbox => }/gamertag.c (99%) rename src/sources/{xbox => }/gamertag.h (100%) delete mode 100644 src/sources/xbox/game_cover.h diff --git a/CMakeLists.txt b/CMakeLists.txt index 295542d..d3d52bb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -477,14 +477,14 @@ target_sources( ${CMAKE_PROJECT_NAME} PRIVATE src/main.c - src/sources/xbox/gamerpic.c - src/sources/xbox/game_cover.c - src/sources/xbox/gamerscore.c - src/sources/xbox/gamertag.c - src/sources/xbox/achievement_name.c - src/sources/xbox/achievement_description.c - src/sources/xbox/achievement_icon.c - src/sources/xbox/achievements_count.c + src/sources/gamerpic.c + src/sources/game_cover.c + src/sources/gamerscore.c + src/sources/gamertag.c + src/sources/achievement_name.c + src/sources/achievement_description.c + src/sources/achievement_icon.c + src/sources/achievements_count.c src/sources/common/text_source.c src/sources/common/image_source.c src/sources/common/achievement_cycle.c diff --git a/src/common/game.c b/src/common/game.c index 0396d14..094a33c 100644 --- a/src/common/game.c +++ b/src/common/game.c @@ -13,6 +13,7 @@ game_t *copy_game(const game_t *game) { copy->id = bstrdup(game->id); copy->title = bstrdup(game->title); copy->console_name = bstrdup(game->console_name); + copy->cover_url = bstrdup(game->cover_url); return copy; } @@ -28,6 +29,7 @@ void free_game(game_t **game) { free_memory((void **)¤t->id); free_memory((void **)¤t->title); free_memory((void **)¤t->console_name); + free_memory((void **)¤t->cover_url); bfree(current); *game = NULL; diff --git a/src/common/game.h b/src/common/game.h index c57518e..6a07c41 100644 --- a/src/common/game.h +++ b/src/common/game.h @@ -21,6 +21,8 @@ typedef struct game { const char *title; /** Name of the console / platform the game belongs to. */ const char *console_name; + /** URL of the game cover image; NULL when unavailable. */ + const char *cover_url; } game_t; /** diff --git a/src/integrations/monitoring_service.c b/src/integrations/monitoring_service.c index 3564c63..86ff671 100644 --- a/src/integrations/monitoring_service.c +++ b/src/integrations/monitoring_service.c @@ -42,6 +42,35 @@ static void clear_active_identity_subscriptions(void) { g_active_identity_subscriptions = NULL; } +/* -------------------------------------------------------------------------- + * Game-played subscription list + * ----------------------------------------------------------------------- */ + +typedef struct game_played_subscription { + on_monitoring_game_played_t callback; + struct game_played_subscription *next; +} game_played_subscription_t; + +static game_played_subscription_t *g_game_played_subscriptions = NULL; + +static void notify_game_played(const game_t *game) { + game_played_subscription_t *node = g_game_played_subscriptions; + while (node) { + node->callback(game); + node = node->next; + } +} + +static void clear_game_played_subscriptions(void) { + game_played_subscription_t *node = g_game_played_subscriptions; + while (node) { + game_played_subscription_t *next = node->next; + bfree(node); + node = next; + } + g_game_played_subscriptions = NULL; +} + /* -------------------------------------------------------------------------- * Module state * ----------------------------------------------------------------------- */ @@ -57,7 +86,6 @@ static game_t *g_retro_game = NULL; /** Cached generic achievements for the current game (owned by this module). */ static achievement_t *g_current_achievements = NULL; -static on_monitoring_game_played_t g_game_played_callback = NULL; static on_monitoring_achievements_changed_t g_achievements_changed_callback = NULL; static on_monitoring_session_ready_t g_session_ready_callback = NULL; @@ -187,8 +215,7 @@ static void on_xbox_game_played(const game_t *game) { notify_active_identity(g_xbox_identity); - if (g_game_played_callback) - g_game_played_callback(game); + notify_game_played(game); } /** @@ -241,6 +268,7 @@ static void on_retro_game_playing(const retro_game_t *retro_game) { g_retro_game->id = bstrdup(retro_game->game_id); g_retro_game->title = bstrdup(retro_game->game_name); g_retro_game->console_name = bstrdup(retro_game->console_name); + g_retro_game->cover_url = bstrdup(retro_game->cover_url); obs_log(LOG_INFO, "[MonitoringService] Retro game cached: %s (%s)", g_retro_game->title, g_retro_game->console_name); @@ -249,8 +277,7 @@ static void on_retro_game_playing(const retro_game_t *retro_game) { notify_active_identity(g_retro_identity); - if (g_game_played_callback) - g_game_played_callback(g_retro_game); + notify_game_played(g_retro_game); } static void on_retro_no_game(void) { @@ -312,8 +339,8 @@ void monitoring_stop(void) { free_achievement(&g_current_achievements); clear_active_identity_subscriptions(); + clear_game_played_subscriptions(); - g_game_played_callback = NULL; g_achievements_changed_callback = NULL; g_session_ready_callback = NULL; } @@ -340,7 +367,20 @@ void monitoring_subscribe_active_identity(on_monitoring_active_identity_changed_ } void monitoring_subscribe_game_played(on_monitoring_game_played_t callback) { - g_game_played_callback = callback; + if (!callback) { + clear_game_played_subscriptions(); + return; + } + + game_played_subscription_t *node = bzalloc(sizeof(game_played_subscription_t)); + if (!node) { + obs_log(LOG_ERROR, "[MonitoringService] Failed to allocate game-played subscription"); + return; + } + + node->callback = callback; + node->next = g_game_played_subscriptions; + g_game_played_subscriptions = node; } void monitoring_subscribe_achievements_changed(on_monitoring_achievements_changed_t callback) { diff --git a/src/integrations/retro-achievements/retro_achievements_monitor.c b/src/integrations/retro-achievements/retro_achievements_monitor.c index a255782..7458c73 100644 --- a/src/integrations/retro-achievements/retro_achievements_monitor.c +++ b/src/integrations/retro-achievements/retro_achievements_monitor.c @@ -212,8 +212,8 @@ static void notify_no_user(void) { * * Expected shapes: * { "type": "game_playing", "game_id": "...", "game_name": "...", - * "game_path": "...", "console_id": "...", "console_name": "...", - * "core_name": "...", "db_name": "..." } + * "console_id": "...", "console_name": "...", + * "cover_url": "..." } * * { "type": "no_game" } * @@ -260,10 +260,6 @@ static void on_message_received(const char *buffer) { if (json_item_is_string(field)) strncpy(game.game_name, field->valuestring, sizeof(game.game_name) - 1); - field = cJSON_GetObjectItemCaseSensitive(root, "game_path"); - if (json_item_is_string(field)) - strncpy(game.game_path, field->valuestring, sizeof(game.game_path) - 1); - field = cJSON_GetObjectItemCaseSensitive(root, "console_id"); if (json_item_is_string(field)) strncpy(game.console_id, field->valuestring, sizeof(game.console_id) - 1); @@ -272,13 +268,9 @@ static void on_message_received(const char *buffer) { if (json_item_is_string(field)) strncpy(game.console_name, field->valuestring, sizeof(game.console_name) - 1); - field = cJSON_GetObjectItemCaseSensitive(root, "core_name"); - if (json_item_is_string(field)) - strncpy(game.core_name, field->valuestring, sizeof(game.core_name) - 1); - - field = cJSON_GetObjectItemCaseSensitive(root, "db_name"); + field = cJSON_GetObjectItemCaseSensitive(root, "cover_url"); if (json_item_is_string(field)) - strncpy(game.db_name, field->valuestring, sizeof(game.db_name) - 1); + strncpy(game.cover_url, field->valuestring, sizeof(game.cover_url) - 1); notify_game_playing(&game); diff --git a/src/integrations/retro-achievements/retro_achievements_monitor.h b/src/integrations/retro-achievements/retro_achievements_monitor.h index ab7cee7..18a0229 100644 --- a/src/integrations/retro-achievements/retro_achievements_monitor.h +++ b/src/integrations/retro-achievements/retro_achievements_monitor.h @@ -19,9 +19,9 @@ extern "C" { * * Message shapes: * - Game playing : { "type":"game_playing", "game_id":"...", - * "game_name":"...", "game_path":"...", + * "game_name":"...", * "console_id":"...", "console_name":"...", - * "core_name":"...", "db_name":"..." } + * "cover_url":"..." } * - No game : { "type":"no_game" } * - Achievements : { "type":"achievements", * "items":[{ "id":1, "name":"...", "points":5, @@ -63,11 +63,9 @@ extern "C" { typedef struct { char game_id[64]; /**< CRC-32 checksum of the ROM as a hex string. */ char game_name[512]; /**< Base filename of the ROM without extension. */ - char game_path[4096]; /**< Full filesystem path to the ROM. */ char console_id[64]; /**< Short platform identifier (e.g. "snes"). */ char console_name[256]; /**< Human-readable platform name. */ - char core_name[256]; /**< Name of the libretro core running the game. */ - char db_name[512]; /**< Playlist/database name for the content. */ + char cover_url[512]; /**< URL of the game cover image; empty if absent. */ } retro_game_t; /* ------------------------------------------------------------------------- diff --git a/src/io/cache.c b/src/io/cache.c index c24e316..05f9ee4 100644 --- a/src/io/cache.c +++ b/src/io/cache.c @@ -86,13 +86,21 @@ bool cache_download(const char *url, const char *type, const char *id, char *out uint8_t *data = NULL; size_t size = 0; - obs_log(LOG_INFO, "[Cache] Downloading '%s'", url); + /* Normalize the URL so that any unencoded characters in the path or query + * (e.g. spaces, Unicode) are properly percent-encoded. */ + char *encoded_url = http_encode_url(url); + const char *download_url = encoded_url ? encoded_url : url; - if (!http_download(url, &data, &size)) { - obs_log(LOG_WARNING, "[Cache] Failed to download '%s'", url); + obs_log(LOG_INFO, "[Cache] Downloading '%s'", download_url); + + if (!http_download(download_url, &data, &size)) { + obs_log(LOG_WARNING, "[Cache] Failed to download '%s'", download_url); + bfree(encoded_url); return false; } + bfree(encoded_url); + /* Write to disk */ FILE *file = fopen(path_buf, "wb"); if (!file) { diff --git a/src/main.c b/src/main.c index 13c28a4..4a8fde7 100644 --- a/src/main.c +++ b/src/main.c @@ -3,16 +3,16 @@ #include "sources/common/achievement_cycle.h" #include "ui/xbox_account_config.h" -#include "sources/xbox/gamerpic.h" -#include "sources/xbox/game_cover.h" -#include "sources/xbox/gamerscore.h" -#include "sources/xbox/gamertag.h" +#include "sources/gamerpic.h" +#include "sources/game_cover.h" +#include "sources/gamerscore.h" +#include "sources/gamertag.h" #include "io/state.h" -#include "sources/xbox/achievement_name.h" -#include "sources/xbox/achievement_description.h" -#include "sources/xbox/achievement_icon.h" -#include "sources/xbox/achievements_count.h" +#include "sources/achievement_name.h" +#include "sources/achievement_description.h" +#include "sources/achievement_icon.h" +#include "sources/achievements_count.h" #include "drawing/image.h" #include "integrations/monitoring_service.h" @@ -27,7 +27,7 @@ bool obs_module_load(void) { monitoring_start(); xbox_gamerpic_source_register(); - xbox_game_cover_source_register(); + game_cover_source_register(); xbox_gamerscore_source_register(); xbox_gamertag_source_register(); @@ -55,7 +55,7 @@ void obs_module_unload(void) { xbox_achievement_description_source_cleanup(); xbox_achievement_icon_source_cleanup(); xbox_achievements_count_source_cleanup(); - xbox_game_cover_source_cleanup(); + game_cover_source_cleanup(); xbox_gamerpic_source_cleanup(); xbox_gamerscore_source_cleanup(); xbox_gamertag_source_cleanup(); diff --git a/src/net/http/http.c b/src/net/http/http.c index e90aa56..ac6263c 100644 --- a/src/net/http/http.c +++ b/src/net/http/http.c @@ -394,6 +394,78 @@ char *http_urlencode(const char *in) { return out; } +char *http_encode_url(const char *url) { + + if (!url) + return NULL; + + /* Find the start of the path component. + * We look for "://" and then the next '/' after the host. */ + const char *scheme_end = strstr(url, "://"); + if (!scheme_end) + return bstrdup(url); + + const char *host_start = scheme_end + 3; + const char *path_start = strchr(host_start, '/'); + if (!path_start) + return bstrdup(url); /* No path — nothing to encode */ + + size_t prefix_len = (size_t)(path_start - url); + + CURL *curl = curl_easy_init(); + if (!curl) + return NULL; + + /* Estimate output size: worst case every byte becomes %XX (×3). + * Add prefix length + NUL. */ + size_t path_len = strlen(path_start); + size_t buf_size = prefix_len + path_len * 3 + 1; + char *out = bzalloc(buf_size); + if (!out) { + curl_easy_cleanup(curl); + return NULL; + } + + /* Copy scheme + host verbatim */ + memcpy(out, url, prefix_len); + size_t pos = prefix_len; + + /* Encode path segment-by-segment, preserving '/' separators. */ + const char *p = path_start; + while (*p) { + if (*p == '/') { + out[pos++] = '/'; + p++; + continue; + } + + /* Collect one segment (until next '/' or end) */ + const char *seg_start = p; + while (*p && *p != '/') + p++; + + size_t seg_len = (size_t)(p - seg_start); + char *segment = bzalloc(seg_len + 1); + memcpy(segment, seg_start, seg_len); + segment[seg_len] = '\0'; + + char *encoded = curl_easy_escape(curl, segment, (int)seg_len); + bfree(segment); + + if (encoded) { + size_t enc_len = strlen(encoded); + memcpy(out + pos, encoded, enc_len); + pos += enc_len; + curl_free(encoded); + } + } + + out[pos] = '\0'; + curl_easy_cleanup(curl); + + return out; +} + bool http_download(const char *url, uint8_t **out_data, size_t *out_size) { if (!url || !out_data || !out_size) diff --git a/src/net/http/http.h b/src/net/http/http.h index ee9f5a5..c318cec 100644 --- a/src/net/http/http.h +++ b/src/net/http/http.h @@ -89,6 +89,19 @@ bool http_download(const char *url, uint8_t **out_data, size_t *out_size); */ char *http_urlencode(const char *in); +/** + * @brief Normalize and percent-encode a full URL. + * + * Parses @p url to locate the path component and percent-encodes each path + * segment individually while preserving the scheme, host, and '/' separators. + * This is safe to call on a complete URL — unlike @ref http_urlencode which + * would escape structural delimiters like '/' and ':'. + * + * @param url The raw URL to normalize. + * @return Newly allocated encoded URL (caller must bfree()), or NULL on error. + */ +char *http_encode_url(const char *url); + #ifdef __cplusplus } #endif diff --git a/src/sources/xbox/achievement_description.c b/src/sources/achievement_description.c similarity index 99% rename from src/sources/xbox/achievement_description.c rename to src/sources/achievement_description.c index 8f36bb3..30256c9 100644 --- a/src/sources/xbox/achievement_description.c +++ b/src/sources/achievement_description.c @@ -1,4 +1,4 @@ -#include "sources/xbox/achievement_description.h" +#include "sources/achievement_description.h" #include "sources/common/achievement_cycle.h" #include "sources/common/text_source.h" diff --git a/src/sources/xbox/achievement_description.h b/src/sources/achievement_description.h similarity index 100% rename from src/sources/xbox/achievement_description.h rename to src/sources/achievement_description.h diff --git a/src/sources/xbox/achievement_icon.c b/src/sources/achievement_icon.c similarity index 99% rename from src/sources/xbox/achievement_icon.c rename to src/sources/achievement_icon.c index daffe89..b5f17fa 100644 --- a/src/sources/xbox/achievement_icon.c +++ b/src/sources/achievement_icon.c @@ -1,4 +1,4 @@ -#include "sources/xbox/achievement_icon.h" +#include "sources/achievement_icon.h" #include #include diff --git a/src/sources/xbox/achievement_icon.h b/src/sources/achievement_icon.h similarity index 100% rename from src/sources/xbox/achievement_icon.h rename to src/sources/achievement_icon.h diff --git a/src/sources/xbox/achievement_name.c b/src/sources/achievement_name.c similarity index 99% rename from src/sources/xbox/achievement_name.c rename to src/sources/achievement_name.c index 6c98dbd..21a49ea 100644 --- a/src/sources/xbox/achievement_name.c +++ b/src/sources/achievement_name.c @@ -21,7 +21,7 @@ * @see text_source.h for the common text rendering infrastructure */ -#include "sources/xbox/achievement_name.h" +#include "sources/achievement_name.h" #include "sources/common/achievement_cycle.h" #include "sources/common/text_source.h" diff --git a/src/sources/xbox/achievement_name.h b/src/sources/achievement_name.h similarity index 100% rename from src/sources/xbox/achievement_name.h rename to src/sources/achievement_name.h diff --git a/src/sources/xbox/achievements_count.c b/src/sources/achievements_count.c similarity index 99% rename from src/sources/xbox/achievements_count.c rename to src/sources/achievements_count.c index c7b70ff..447ec66 100644 --- a/src/sources/xbox/achievements_count.c +++ b/src/sources/achievements_count.c @@ -1,4 +1,4 @@ -#include "sources/xbox/achievements_count.h" +#include "sources/achievements_count.h" /** * @file achievements_total_count.c diff --git a/src/sources/xbox/achievements_count.h b/src/sources/achievements_count.h similarity index 100% rename from src/sources/xbox/achievements_count.h rename to src/sources/achievements_count.h diff --git a/src/sources/xbox/game_cover.c b/src/sources/game_cover.c similarity index 57% rename from src/sources/xbox/game_cover.c rename to src/sources/game_cover.c index 54d2af2..998f23c 100644 --- a/src/sources/xbox/game_cover.c +++ b/src/sources/game_cover.c @@ -1,17 +1,17 @@ -#include "sources/xbox/game_cover.h" +#include "sources/game_cover.h" /** * @file game_cover.c - * @brief OBS source that renders the cover art for the currently played Xbox game. + * @brief OBS source that renders the cover art for the currently played game. * * Responsibilities: - * - Subscribe to Xbox game-played events. - * - Download cover art when the game changes. + * - Subscribe to game-played events via the monitoring service. + * - Download cover art when the game changes (using the cover_url from game_t). * - Load the image into an OBS gs_texture_t on the graphics thread. * - Render the texture in the source's video_render callback. * * Threading notes: - * - Downloading happens on the calling thread of on_xbox_game_played() (currently + * - Downloading happens on the calling thread of on_game_played() (currently * synchronous). * - Texture creation/destruction must happen on the OBS graphics thread; this * file uses obs_enter_graphics()/obs_leave_graphics() to ensure that. @@ -19,12 +19,10 @@ #include #include -#include -#include "integrations/xbox/oauth/xbox-live.h" #include "sources/common/image_source.h" -#include "integrations/xbox/xbox_client.h" -#include "integrations/xbox/xbox_monitor.h" +#include "integrations/monitoring_service.h" +#include "common/game.h" /** * @brief Global singleton cover cache. @@ -41,11 +39,11 @@ static image_t g_game_cover; /** * @brief Event handler called when a new game starts being played. * - * Fetches the cover-art URL for the given game and triggers a download. + * Uses the cover_url from the game_t to download the cover art. * * @param game Currently played game information. */ -static void on_xbox_game_played(const game_t *game) { +static void on_game_played(const game_t *game) { if (!game) { obs_log(LOG_DEBUG, "[Game Cover] No game played"); @@ -53,15 +51,20 @@ static void on_xbox_game_played(const game_t *game) { return; } - obs_log(LOG_DEBUG, "[Game Cover] Playing game %s (%s)", game->title, game->id); + obs_log(LOG_INFO, "[Game Cover] Playing game %s (%s)", game->title, game->id); - char *game_cover_url = xbox_get_game_cover(game); - snprintf(g_game_cover.url, sizeof(g_game_cover.url), "%s", game_cover_url); + if (!game->cover_url || game->cover_url[0] == '\0') { + obs_log(LOG_INFO, "[Game Cover] No cover URL available"); + image_source_clear(&g_game_cover); + return; + } + + obs_log(LOG_INFO, "[Game Cover] Cover URL is %s", game->cover_url); + + snprintf(g_game_cover.url, sizeof(g_game_cover.url), "%s", game->cover_url); snprintf(g_game_cover.id, sizeof(g_game_cover.id), "%s", game->id); image_source_download(&g_game_cover); - - free_memory((void **)&game_cover_url); } // -------------------------------------------------------------------------------------------------------------------- @@ -85,7 +88,7 @@ static const char *source_get_name(void *unused) { UNUSED_PARAMETER(unused); - return "Xbox Game Cover"; + return "Game Cover"; } /** @@ -93,7 +96,7 @@ static const char *source_get_name(void *unused) { * * @param settings OBS settings object (currently unused). * @param source OBS source instance. - * @return Newly allocated image_source_data_t. + * @return Newly allocated image_source_t. */ static void *on_source_create(obs_data_t *settings, obs_source_t *source) { @@ -156,92 +159,44 @@ static void on_source_video_render(void *data, gs_effect_t *effect) { } /** - * @brief OBS callback to construct the properties UI. - * - * Shows connection status, gamerscore, and the currently played game. - */ -static obs_properties_t *source_get_properties(void *data) { - - UNUSED_PARAMETER(data); - - /* Gets or refreshes the token */ - xbox_identity_t *xbox_identity = xbox_live_get_identity(); - - /* Lists all the UI components of the properties page */ - obs_properties_t *p = obs_properties_create(); - - if (xbox_identity != NULL) { - char status[4096]; - snprintf(status, 4096, "Connected to your xbox account as %s", xbox_identity->gamertag); - - int64_t gamerscore = 0; - xbox_fetch_gamerscore(&gamerscore); - - char gamerscore_text[4096]; - snprintf(gamerscore_text, 4096, "Gamerscore %" PRId64, gamerscore); - - obs_properties_add_text(p, "connected_status_info", status, OBS_TEXT_INFO); - obs_properties_add_text(p, "gamerscore_info", gamerscore_text, OBS_TEXT_INFO); - - const game_t *game = get_current_game(); - - if (game) { - char game_played[4096]; - snprintf(game_played, sizeof(game_played), "Playing %s (%s)", game->title, game->id); - obs_properties_add_text(p, "game_played", game_played, OBS_TEXT_INFO); - } - } else { - obs_properties_add_text(p, - "disconnected_status_info", - "You are not connected to your xbox account", - OBS_TEXT_INFO); - } - - free_identity(&xbox_identity); - - return p; -} - -/** - * @brief obs_source_info for the Xbox Game Cover source. + * @brief obs_source_info for the Game Cover source. */ -static struct obs_source_info xbox_game_cover_source_info = { - .id = "xbox_game_cover_source", - .type = OBS_SOURCE_TYPE_INPUT, - .output_flags = OBS_SOURCE_VIDEO, - .get_name = source_get_name, - .create = on_source_create, - .destroy = on_source_destroy, - .update = on_source_update, - .video_render = on_source_video_render, - .get_properties = source_get_properties, - .get_width = source_get_width, - .get_height = source_get_height, - .video_tick = NULL, +static struct obs_source_info game_cover_source_info = { + .id = "xbox_game_cover_source", + .type = OBS_SOURCE_TYPE_INPUT, + .output_flags = OBS_SOURCE_VIDEO, + .get_name = source_get_name, + .create = on_source_create, + .destroy = on_source_destroy, + .update = on_source_update, + .video_render = on_source_video_render, + .get_width = source_get_width, + .get_height = source_get_height, + .video_tick = NULL, }; /** * @brief Get a pointer to this source type's obs_source_info. */ -static const struct obs_source_info *xbox_game_cover_source_get(void) { - return &xbox_game_cover_source_info; +static const struct obs_source_info *game_cover_source_get(void) { + return &game_cover_source_info; } // -------------------------------------------------------------------------------------------------------------------- // Public functions // -------------------------------------------------------------------------------------------------------------------- -void xbox_game_cover_source_register(void) { +void game_cover_source_register(void) { snprintf(g_game_cover.display_name, sizeof(g_game_cover.display_name), "Game Cover"); g_game_cover.id[0] = '\0'; snprintf(g_game_cover.type, sizeof(g_game_cover.type), "game_cover"); - obs_register_source(xbox_game_cover_source_get()); + obs_register_source(game_cover_source_get()); - xbox_subscribe_game_played(&on_xbox_game_played); + monitoring_subscribe_game_played(&on_game_played); } -void xbox_game_cover_source_cleanup(void) { +void game_cover_source_cleanup(void) { image_source_destroy(&g_game_cover); } diff --git a/src/sources/game_cover.h b/src/sources/game_cover.h new file mode 100644 index 0000000..8ab57ce --- /dev/null +++ b/src/sources/game_cover.h @@ -0,0 +1,35 @@ +#pragma once + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @file game_cover.h + * @brief OBS source type that renders the cover art for the currently played game. + * + * This module registers an OBS source that displays cover art for the active + * game. It subscribes to the monitoring service and works with any integration + * (Xbox, RetroAchievements, etc.) through the common @c game_t type. + */ + +/** + * @brief Register the "Game Cover" source with OBS. + * + * Call once during plugin/module initialization. + */ +void game_cover_source_register(void); + +/** + * @brief Clean up resources allocated by the game cover source. + * + * Frees the global cover image cache and destroys associated textures. + * Should be called during plugin shutdown (obs_module_unload()). + */ +void game_cover_source_cleanup(void); + +#ifdef __cplusplus +} +#endif diff --git a/src/sources/xbox/gamerpic.c b/src/sources/gamerpic.c similarity index 99% rename from src/sources/xbox/gamerpic.c rename to src/sources/gamerpic.c index f430edb..642e8ae 100644 --- a/src/sources/xbox/gamerpic.c +++ b/src/sources/gamerpic.c @@ -1,4 +1,4 @@ -#include "sources/xbox/gamerpic.h" +#include "sources/gamerpic.h" #include #include diff --git a/src/sources/xbox/gamerpic.h b/src/sources/gamerpic.h similarity index 100% rename from src/sources/xbox/gamerpic.h rename to src/sources/gamerpic.h diff --git a/src/sources/xbox/gamerscore.c b/src/sources/gamerscore.c similarity index 99% rename from src/sources/xbox/gamerscore.c rename to src/sources/gamerscore.c index d123efa..0f62a43 100644 --- a/src/sources/xbox/gamerscore.c +++ b/src/sources/gamerscore.c @@ -1,4 +1,4 @@ -#include "sources/xbox/gamerscore.h" +#include "sources/gamerscore.h" /** * @file gamerscore.c diff --git a/src/sources/xbox/gamerscore.h b/src/sources/gamerscore.h similarity index 100% rename from src/sources/xbox/gamerscore.h rename to src/sources/gamerscore.h diff --git a/src/sources/xbox/gamertag.c b/src/sources/gamertag.c similarity index 99% rename from src/sources/xbox/gamertag.c rename to src/sources/gamertag.c index 927901f..4abb73e 100644 --- a/src/sources/xbox/gamertag.c +++ b/src/sources/gamertag.c @@ -1,4 +1,4 @@ -#include "sources/xbox/gamertag.h" +#include "sources/gamertag.h" /** * @file gamertag.c diff --git a/src/sources/xbox/gamertag.h b/src/sources/gamertag.h similarity index 100% rename from src/sources/xbox/gamertag.h rename to src/sources/gamertag.h diff --git a/src/sources/xbox/game_cover.h b/src/sources/xbox/game_cover.h deleted file mode 100644 index 51c28a9..0000000 --- a/src/sources/xbox/game_cover.h +++ /dev/null @@ -1,34 +0,0 @@ -#pragma once - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * @file game_cover.h - * @brief OBS source type that renders an Xbox game's cover art. - * - * This module registers an OBS source that can display cover art for the - * currently selected/active Xbox title. - */ - -/** - * @brief Register the "Xbox Game Cover" source with OBS. - * - * Call once during plugin/module initialization. - */ -void xbox_game_cover_source_register(void); - -/** - * @brief Clean up resources allocated by the game cover source. - * - * Frees the global cover image cache and destroys associated textures. - * Should be called during plugin shutdown (obs_module_unload()). - */ -void xbox_game_cover_source_cleanup(void); - -#ifdef __cplusplus -} -#endif From 18481e8e1a71680e3e87236c93eefeaee8ae7f49 Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Sun, 22 Mar 2026 20:32:55 -0400 Subject: [PATCH 12/29] Adjust achievement name formatting: remove redundant "G" suffix before values --- src/sources/achievement_name.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sources/achievement_name.c b/src/sources/achievement_name.c index 21a49ea..407e50e 100644 --- a/src/sources/achievement_name.c +++ b/src/sources/achievement_name.c @@ -140,7 +140,7 @@ static void update_achievement_name(const achievement_t *achievement) { } if (achievement->value > 0) { - snprintf(g_achievement_name, sizeof(g_achievement_name), "%dG - %s", achievement->value, achievement->name); + snprintf(g_achievement_name, sizeof(g_achievement_name), "%d - %s", achievement->value, achievement->name); } else { snprintf(g_achievement_name, sizeof(g_achievement_name), "%s", achievement->name); } From 01fe2f97c395b89b1c4f3b665af8baa38bd8d348 Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Tue, 24 Mar 2026 20:54:01 -0400 Subject: [PATCH 13/29] Improve logging levels and achievement count handling; add 'Mastered' status and notify on no game played. --- src/integrations/monitoring_service.c | 1 + .../retro-achievements/retro_achievements_monitor.c | 3 +-- src/sources/achievements_count.c | 9 ++++++++- src/sources/game_cover.c | 2 +- 4 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/integrations/monitoring_service.c b/src/integrations/monitoring_service.c index 86ff671..95febab 100644 --- a/src/integrations/monitoring_service.c +++ b/src/integrations/monitoring_service.c @@ -283,6 +283,7 @@ static void on_retro_game_playing(const retro_game_t *retro_game) { static void on_retro_no_game(void) { free_game(&g_retro_game); replace_current_achievements(NULL); + notify_game_played(NULL); } /** diff --git a/src/integrations/retro-achievements/retro_achievements_monitor.c b/src/integrations/retro-achievements/retro_achievements_monitor.c index 7458c73..2202ace 100644 --- a/src/integrations/retro-achievements/retro_achievements_monitor.c +++ b/src/integrations/retro-achievements/retro_achievements_monitor.c @@ -231,7 +231,7 @@ static void on_message_received(const char *buffer) { return; } - obs_log(LOG_DEBUG, "[RetroAchievements] Message received: %s", buffer); + obs_log(LOG_WARNING, "[RetroAchievements] Message received: %s", buffer); cJSON *root = cJSON_Parse(buffer); if (!root) { @@ -276,7 +276,6 @@ static void on_message_received(const char *buffer) { } else if (strcmp(type_item->valuestring, "no_game") == 0) { notify_no_game(); - } else if (strcmp(type_item->valuestring, "achievements") == 0) { cJSON *items = cJSON_GetObjectItemCaseSensitive(root, "items"); if (!items || !(items->type & cJSON_Array)) { diff --git a/src/sources/achievements_count.c b/src/sources/achievements_count.c index 447ec66..741807d 100644 --- a/src/sources/achievements_count.c +++ b/src/sources/achievements_count.c @@ -51,7 +51,14 @@ static void update_count(void) { int unlocked = count_unlocked_achievements(achievements); int total = count_achievements(achievements); - snprintf(g_total_count, sizeof(g_total_count), "%d / %d", unlocked, total); + if (unlocked != total) { + snprintf(g_total_count, sizeof(g_total_count), "%d / %d", unlocked, total); + } else if (total > 0) { + snprintf(g_total_count, sizeof(g_total_count), "Mastered"); + } else { + g_total_count[0] = '\0'; + } + g_must_reload = true; obs_log(LOG_INFO, "[Achievements Counter] %d achievements unlocked out of %d", unlocked, total); diff --git a/src/sources/game_cover.c b/src/sources/game_cover.c index 998f23c..6e8b963 100644 --- a/src/sources/game_cover.c +++ b/src/sources/game_cover.c @@ -46,7 +46,7 @@ static image_t g_game_cover; static void on_game_played(const game_t *game) { if (!game) { - obs_log(LOG_DEBUG, "[Game Cover] No game played"); + obs_log(LOG_INFO, "[Game Cover] No game played"); image_source_clear(&g_game_cover); return; } From 6c2d957ae50528f60a843c3fd99de459f2c219e9 Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Tue, 24 Mar 2026 20:57:00 -0400 Subject: [PATCH 14/29] Adjust struct member alignment in tests for consistent formatting across test cases. --- test/test_parsers.c | 2 +- test/test_types.c | 306 +++++++++++++++++++-------------------- test/test_xbox_session.c | 20 +-- 3 files changed, 164 insertions(+), 164 deletions(-) diff --git a/test/test_parsers.c b/test/test_parsers.c index ac479a3..6e05ff5 100644 --- a/test/test_parsers.c +++ b/test/test_parsers.c @@ -294,7 +294,7 @@ static void parse_achievements__message_is_multiple_achievements_achievements_re TEST_ASSERT_NOT_NULL(actual); xbox_achievement_t *current_achievement = actual; - int achievements_count = 0; + int achievements_count = 0; while (current_achievement != NULL) { achievements_count++; current_achievement = current_achievement->next; diff --git a/test/test_types.c b/test/test_types.c index 941cbdc..16dd6e2 100644 --- a/test/test_types.c +++ b/test/test_types.c @@ -256,12 +256,12 @@ static void free_gamerscore__gamerscore_is_null__null_gamerscore_returned(void) static void free_gamerscore__gamerscore_is_not_null__null_gamerscore_returned(void) { // Arrange. xbox_unlocked_achievement_t *unlocked_achievement_2 = bzalloc(sizeof(xbox_unlocked_achievement_t)); - unlocked_achievement_2->value = 200; - unlocked_achievement_2->next = NULL; + unlocked_achievement_2->value = 200; + unlocked_achievement_2->next = NULL; xbox_unlocked_achievement_t *unlocked_achievement_1 = bzalloc(sizeof(xbox_unlocked_achievement_t)); - unlocked_achievement_1->value = 100; - unlocked_achievement_1->next = unlocked_achievement_2; + unlocked_achievement_1->value = 100; + unlocked_achievement_1->next = unlocked_achievement_2; gamerscore_t *gamerscore = bzalloc(sizeof(gamerscore_t)); gamerscore->base_value = 1000; @@ -301,12 +301,12 @@ static void copy_gamerscore__gamerscore_is_null__null_copy_returned(void) { static void copy_gamerscore__gamerscore_is_not_null__copy_returned(void) { // Arrange. xbox_unlocked_achievement_t *unlocked_achievement_2 = bzalloc(sizeof(xbox_unlocked_achievement_t)); - unlocked_achievement_2->value = 200; - unlocked_achievement_2->next = NULL; + unlocked_achievement_2->value = 200; + unlocked_achievement_2->next = NULL; xbox_unlocked_achievement_t *unlocked_achievement_1 = bzalloc(sizeof(xbox_unlocked_achievement_t)); - unlocked_achievement_1->value = 100; - unlocked_achievement_1->next = unlocked_achievement_2; + unlocked_achievement_1->value = 100; + unlocked_achievement_1->next = unlocked_achievement_2; gamerscore_t *gamerscore = bzalloc(sizeof(gamerscore_t)); gamerscore->base_value = 1000; @@ -354,9 +354,9 @@ static void copy_gamerscore__no_unlocked_achievements__base_value_returned(void) static void copy_gamerscore__one_unlocked_achievement__total_returned(void) { // Arrange. xbox_unlocked_achievement_t *unlocked_achievement = bzalloc(sizeof(xbox_unlocked_achievement_t)); - unlocked_achievement->id = bstrdup("achievement-id"); - unlocked_achievement->value = 200; - unlocked_achievement->next = NULL; + unlocked_achievement->id = bstrdup("achievement-id"); + unlocked_achievement->value = 200; + unlocked_achievement->next = NULL; gamerscore_t *gamerscore = bzalloc(sizeof(gamerscore_t)); gamerscore->base_value = 400; @@ -372,14 +372,14 @@ static void copy_gamerscore__one_unlocked_achievement__total_returned(void) { static void copy_gamerscore__two_unlocked_achievements__total_returned(void) { // Arrange. xbox_unlocked_achievement_t *unlocked_achievement_2 = bzalloc(sizeof(xbox_unlocked_achievement_t)); - unlocked_achievement_2->id = bstrdup("achievement-id-2"); - unlocked_achievement_2->value = 200; - unlocked_achievement_2->next = NULL; + unlocked_achievement_2->id = bstrdup("achievement-id-2"); + unlocked_achievement_2->value = 200; + unlocked_achievement_2->next = NULL; xbox_unlocked_achievement_t *unlocked_achievement_1 = bzalloc(sizeof(xbox_unlocked_achievement_t)); - unlocked_achievement_1->id = bstrdup("achievement-id-1"); - unlocked_achievement_1->value = 100; - unlocked_achievement_1->next = unlocked_achievement_2; + unlocked_achievement_1->id = bstrdup("achievement-id-1"); + unlocked_achievement_1->value = 100; + unlocked_achievement_1->next = unlocked_achievement_2; gamerscore_t *gamerscore = bzalloc(sizeof(gamerscore_t)); gamerscore->base_value = 400; @@ -408,14 +408,14 @@ static void xbox_free_unlocked_achievement__unlocked_achievement_is_null__null_u static void xbox_free_unlocked_achievement__unlocked_achievement_is_not_null__null_unlocked_achievement_returned(void) { // Arrange. xbox_unlocked_achievement_t *unlocked_achievement_2 = bzalloc(sizeof(xbox_unlocked_achievement_t)); - unlocked_achievement_2->id = bstrdup("achievement-id-2"); - unlocked_achievement_2->value = 200; - unlocked_achievement_2->next = NULL; + unlocked_achievement_2->id = bstrdup("achievement-id-2"); + unlocked_achievement_2->value = 200; + unlocked_achievement_2->next = NULL; xbox_unlocked_achievement_t *unlocked_achievement_1 = bzalloc(sizeof(xbox_unlocked_achievement_t)); - unlocked_achievement_1->id = bstrdup("achievement-id-1"); - unlocked_achievement_1->value = 100; - unlocked_achievement_1->next = unlocked_achievement_2; + unlocked_achievement_1->id = bstrdup("achievement-id-1"); + unlocked_achievement_1->value = 100; + unlocked_achievement_1->next = unlocked_achievement_2; // Act. xbox_free_unlocked_achievement(&unlocked_achievement_1); @@ -443,14 +443,14 @@ static void xbox_copy_unlocked_achievement__unlocked_achievement_is_null__null_c static void xbox_copy_unlocked_achievement__unlocked_achievement_is_not_null__copy_returned(void) { // Arrange. xbox_unlocked_achievement_t *unlocked_achievement_2 = bzalloc(sizeof(xbox_unlocked_achievement_t)); - unlocked_achievement_2->id = bstrdup("achievement-id-2"); - unlocked_achievement_2->value = 200; - unlocked_achievement_2->next = NULL; + unlocked_achievement_2->id = bstrdup("achievement-id-2"); + unlocked_achievement_2->value = 200; + unlocked_achievement_2->next = NULL; xbox_unlocked_achievement_t *unlocked_achievement_1 = bzalloc(sizeof(xbox_unlocked_achievement_t)); - unlocked_achievement_1->id = bstrdup("achievement-id-1"); - unlocked_achievement_1->value = 100; - unlocked_achievement_1->next = unlocked_achievement_2; + unlocked_achievement_1->id = bstrdup("achievement-id-1"); + unlocked_achievement_1->value = 100; + unlocked_achievement_1->next = unlocked_achievement_2; // Act. const xbox_unlocked_achievement_t *copy = xbox_copy_unlocked_achievement(unlocked_achievement_1); @@ -481,8 +481,8 @@ static void free_reward__reward_is_null__null_reward_returned(void) { static void free_reward__one_reward___null_reward_returned(void) { // Arrange. xbox_reward_t *reward = bzalloc(sizeof(xbox_reward_t)); - reward->value = bstrdup("1000"); - reward->next = NULL; + reward->value = bstrdup("1000"); + reward->next = NULL; // Act. xbox_free_reward(&reward); @@ -494,12 +494,12 @@ static void free_reward__one_reward___null_reward_returned(void) { static void free_reward__two_rewards___null_reward_returned(void) { // Arrange. xbox_reward_t *reward2 = bzalloc(sizeof(xbox_reward_t)); - reward2->value = bstrdup("1000"); - reward2->next = NULL; + reward2->value = bstrdup("1000"); + reward2->next = NULL; xbox_reward_t *reward1 = bzalloc(sizeof(xbox_reward_t)); - reward1->value = bstrdup("1000"); - reward1->next = reward2; + reward1->value = bstrdup("1000"); + reward1->next = reward2; // Act. xbox_free_reward(&reward1); @@ -522,8 +522,8 @@ static void copy_reward__reward_is_null__null_copy_returned(void) { static void copy_reward__one_reward__copy_returned(void) { // Arrange. xbox_reward_t *reward = bzalloc(sizeof(xbox_reward_t)); - reward->value = bstrdup("1000"); - reward->next = NULL; + reward->value = bstrdup("1000"); + reward->next = NULL; // Act. const xbox_reward_t *copy = xbox_copy_reward(reward); @@ -537,12 +537,12 @@ static void copy_reward__one_reward__copy_returned(void) { static void copy_reward__two_rewards__copy_returned(void) { // Arrange. xbox_reward_t *reward2 = bzalloc(sizeof(xbox_reward_t)); - reward2->value = bstrdup("1000"); - reward2->next = NULL; + reward2->value = bstrdup("1000"); + reward2->next = NULL; xbox_reward_t *reward1 = bzalloc(sizeof(xbox_reward_t)); - reward1->value = bstrdup("1000"); - reward1->next = reward2; + reward1->value = bstrdup("1000"); + reward1->next = reward2; // Act. const xbox_reward_t *copy = xbox_copy_reward(reward1); @@ -569,7 +569,7 @@ static void free_media_asset__media_asset_is_null__null_media_asset_returned(voi static void free_media_asset__one_media_asset__null_media_asset_returned(void) { // Arrange. xbox_media_asset_t *media_asset = bzalloc(sizeof(xbox_media_asset_t)); - media_asset->url = bstrdup("https://www.example.com/image.png"); + media_asset->url = bstrdup("https://www.example.com/image.png"); // Act. xbox_free_media_asset(&media_asset); @@ -581,11 +581,11 @@ static void free_media_asset__one_media_asset__null_media_asset_returned(void) { static void free_media_asset__two_media_assets__null_media_asset_returned(void) { // Arrange. xbox_media_asset_t *media_asset2 = bzalloc(sizeof(xbox_media_asset_t)); - media_asset2->url = bstrdup("https://www.example.com/image-1.png"); + media_asset2->url = bstrdup("https://www.example.com/image-1.png"); xbox_media_asset_t *media_asset1 = bzalloc(sizeof(xbox_media_asset_t)); - media_asset1->url = bstrdup("https://www.example.com/image-2.png"); - media_asset1->next = media_asset2; + media_asset1->url = bstrdup("https://www.example.com/image-2.png"); + media_asset1->next = media_asset2; // Act. xbox_free_media_asset(&media_asset1); @@ -608,7 +608,7 @@ static void copy_media_asset__media_asset_is_null__null_copy_returned(void) { static void copy_media_asset__one_media_asset__copy_returned(void) { // Arrange. xbox_media_asset_t *media_asset = bzalloc(sizeof(xbox_media_asset_t)); - media_asset->url = bstrdup("https://www.example.com/image.png"); + media_asset->url = bstrdup("https://www.example.com/image.png"); // Act. const xbox_media_asset_t *copy = xbox_copy_media_asset(media_asset); @@ -622,11 +622,11 @@ static void copy_media_asset__one_media_asset__copy_returned(void) { static void copy_media_asset__two_media_assets__copy_returned(void) { // Arrange. xbox_media_asset_t *media_asset2 = bzalloc(sizeof(xbox_media_asset_t)); - media_asset2->url = bstrdup("https://www.example.com/image-1.png"); + media_asset2->url = bstrdup("https://www.example.com/image-1.png"); xbox_media_asset_t *media_asset1 = bzalloc(sizeof(xbox_media_asset_t)); - media_asset1->url = bstrdup("https://www.example.com/image-2.png"); - media_asset1->next = media_asset2; + media_asset1->url = bstrdup("https://www.example.com/image-2.png"); + media_asset1->next = media_asset2; // Act. const xbox_media_asset_t *copy = xbox_copy_media_asset(media_asset1); @@ -653,21 +653,21 @@ static void free_achievement__achievement_is_null__null_achievement_returned(voi static void free_achievement__one_achievement__null_achievement_returned(void) { // Arrange. xbox_reward_t *reward2 = bzalloc(sizeof(xbox_reward_t)); - reward2->value = bstrdup("1000"); - reward2->next = NULL; + reward2->value = bstrdup("1000"); + reward2->next = NULL; xbox_reward_t *reward1 = bzalloc(sizeof(xbox_reward_t)); - reward1->value = bstrdup("1000"); - reward1->next = reward2; + reward1->value = bstrdup("1000"); + reward1->next = reward2; xbox_media_asset_t *media_asset2 = bzalloc(sizeof(xbox_media_asset_t)); - media_asset2->url = bstrdup("https://www.example.com/image-1.png"); + media_asset2->url = bstrdup("https://www.example.com/image-1.png"); xbox_media_asset_t *media_asset1 = bzalloc(sizeof(xbox_media_asset_t)); - media_asset1->url = bstrdup("https://www.example.com/image-2.png"); - media_asset1->next = media_asset2; + media_asset1->url = bstrdup("https://www.example.com/image-2.png"); + media_asset1->next = media_asset2; - xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); achievement->id = bstrdup("achievement-id"); achievement->service_config_id = bstrdup("service-config-id"); achievement->name = bstrdup("Achievement Name"); @@ -688,7 +688,7 @@ static void free_achievement__one_achievement__null_achievement_returned(void) { static void free_achievement__two_achievements__null_achievement_returned(void) { // Arrange. - xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id"); achievement2->service_config_id = bstrdup("service-config-id"); achievement2->name = bstrdup("Achievement Name"); @@ -701,21 +701,21 @@ static void free_achievement__two_achievements__null_achievement_returned(void) achievement2->next = NULL; xbox_reward_t *reward2 = bzalloc(sizeof(xbox_reward_t)); - reward2->value = bstrdup("1000"); - reward2->next = NULL; + reward2->value = bstrdup("1000"); + reward2->next = NULL; xbox_reward_t *reward1 = bzalloc(sizeof(xbox_reward_t)); - reward1->value = bstrdup("1000"); - reward1->next = reward2; + reward1->value = bstrdup("1000"); + reward1->next = reward2; xbox_media_asset_t *media_asset2 = bzalloc(sizeof(xbox_media_asset_t)); - media_asset2->url = bstrdup("https://www.example.com/image-1.png"); + media_asset2->url = bstrdup("https://www.example.com/image-1.png"); xbox_media_asset_t *media_asset1 = bzalloc(sizeof(xbox_media_asset_t)); - media_asset1->url = bstrdup("https://www.example.com/image-2.png"); - media_asset1->next = media_asset2; + media_asset1->url = bstrdup("https://www.example.com/image-2.png"); + media_asset1->next = media_asset2; - xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id"); achievement1->service_config_id = bstrdup("service-config-id"); achievement1->name = bstrdup("Achievement Name"); @@ -748,21 +748,21 @@ static void copy_achievement__achievement_is_null__null_copy_returned(void) { static void copy_achievement__one_achievement__copy_returned(void) { // Arrange. xbox_reward_t *reward2 = bzalloc(sizeof(xbox_reward_t)); - reward2->value = bstrdup("1000"); - reward2->next = NULL; + reward2->value = bstrdup("1000"); + reward2->next = NULL; xbox_reward_t *reward1 = bzalloc(sizeof(xbox_reward_t)); - reward1->value = bstrdup("1000"); - reward1->next = reward2; + reward1->value = bstrdup("1000"); + reward1->next = reward2; xbox_media_asset_t *media_asset2 = bzalloc(sizeof(xbox_media_asset_t)); - media_asset2->url = bstrdup("https://www.example.com/image-1.png"); + media_asset2->url = bstrdup("https://www.example.com/image-1.png"); xbox_media_asset_t *media_asset1 = bzalloc(sizeof(xbox_media_asset_t)); - media_asset1->url = bstrdup("https://www.example.com/image-2.png"); - media_asset1->next = media_asset2; + media_asset1->url = bstrdup("https://www.example.com/image-2.png"); + media_asset1->next = media_asset2; - xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); achievement->id = bstrdup("achievement-id"); achievement->service_config_id = bstrdup("service-config-id"); achievement->name = bstrdup("Achievement Name"); @@ -795,7 +795,7 @@ static void copy_achievement__one_achievement__copy_returned(void) { static void copy_achievement__two_achievements__copy_returned(void) { // Arrange. - xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id"); achievement2->service_config_id = bstrdup("service-config-id"); achievement2->name = bstrdup("Achievement Name"); @@ -808,21 +808,21 @@ static void copy_achievement__two_achievements__copy_returned(void) { achievement2->next = NULL; xbox_reward_t *reward2 = bzalloc(sizeof(xbox_reward_t)); - reward2->value = bstrdup("1000"); - reward2->next = NULL; + reward2->value = bstrdup("1000"); + reward2->next = NULL; xbox_reward_t *reward1 = bzalloc(sizeof(xbox_reward_t)); - reward1->value = bstrdup("1000"); - reward1->next = reward2; + reward1->value = bstrdup("1000"); + reward1->next = reward2; xbox_media_asset_t *media_asset2 = bzalloc(sizeof(xbox_media_asset_t)); - media_asset2->url = bstrdup("https://www.example.com/image-1.png"); + media_asset2->url = bstrdup("https://www.example.com/image-1.png"); xbox_media_asset_t *media_asset1 = bzalloc(sizeof(xbox_media_asset_t)); - media_asset1->url = bstrdup("https://www.example.com/image-2.png"); - media_asset1->next = media_asset2; + media_asset1->url = bstrdup("https://www.example.com/image-2.png"); + media_asset1->next = media_asset2; - xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id"); achievement1->service_config_id = bstrdup("service-config-id"); achievement1->name = bstrdup("Achievement Name"); @@ -878,21 +878,21 @@ static void count_achievements__achievement_is_null__0_returned(void) { static void count_achievements__one_achievement__1_returned(void) { // Arrange. xbox_reward_t *reward2 = bzalloc(sizeof(xbox_reward_t)); - reward2->value = bstrdup("1000"); - reward2->next = NULL; + reward2->value = bstrdup("1000"); + reward2->next = NULL; xbox_reward_t *reward1 = bzalloc(sizeof(xbox_reward_t)); - reward1->value = bstrdup("1000"); - reward1->next = reward2; + reward1->value = bstrdup("1000"); + reward1->next = reward2; xbox_media_asset_t *media_asset2 = bzalloc(sizeof(xbox_media_asset_t)); - media_asset2->url = bstrdup("https://www.example.com/image-1.png"); + media_asset2->url = bstrdup("https://www.example.com/image-1.png"); xbox_media_asset_t *media_asset1 = bzalloc(sizeof(xbox_media_asset_t)); - media_asset1->url = bstrdup("https://www.example.com/image-2.png"); - media_asset1->next = media_asset2; + media_asset1->url = bstrdup("https://www.example.com/image-2.png"); + media_asset1->next = media_asset2; - xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); achievement->id = bstrdup("achievement-id"); achievement->service_config_id = bstrdup("service-config-id"); achievement->name = bstrdup("Achievement Name"); @@ -913,7 +913,7 @@ static void count_achievements__one_achievement__1_returned(void) { static void count_achievements__two_achievements__2_returned(void) { // Arrange. - xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id"); achievement2->service_config_id = bstrdup("service-config-id"); achievement2->name = bstrdup("Achievement Name"); @@ -926,21 +926,21 @@ static void count_achievements__two_achievements__2_returned(void) { achievement2->next = NULL; xbox_reward_t *reward2 = bzalloc(sizeof(xbox_reward_t)); - reward2->value = bstrdup("1000"); - reward2->next = NULL; + reward2->value = bstrdup("1000"); + reward2->next = NULL; xbox_reward_t *reward1 = bzalloc(sizeof(xbox_reward_t)); - reward1->value = bstrdup("1000"); - reward1->next = reward2; + reward1->value = bstrdup("1000"); + reward1->next = reward2; xbox_media_asset_t *media_asset2 = bzalloc(sizeof(xbox_media_asset_t)); - media_asset2->url = bstrdup("https://www.example.com/image-1.png"); + media_asset2->url = bstrdup("https://www.example.com/image-1.png"); xbox_media_asset_t *media_asset1 = bzalloc(sizeof(xbox_media_asset_t)); - media_asset1->url = bstrdup("https://www.example.com/image-2.png"); - media_asset1->next = media_asset2; + media_asset1->url = bstrdup("https://www.example.com/image-2.png"); + media_asset1->next = media_asset2; - xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id"); achievement1->service_config_id = bstrdup("service-config-id"); achievement1->name = bstrdup("Achievement Name"); @@ -974,7 +974,7 @@ static void count_locked_achievements__achievement_is_null__0_returned(void) { static void count_locked_achievements__one_locked_achievement__1_returned(void) { // Arrange. - xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); achievement->id = bstrdup("achievement-id"); achievement->name = bstrdup("Achievement Name"); achievement->unlocked_timestamp = 0; // Locked @@ -989,7 +989,7 @@ static void count_locked_achievements__one_locked_achievement__1_returned(void) static void count_locked_achievements__one_unlocked_achievement__0_returned(void) { // Arrange. - xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); achievement->id = bstrdup("achievement-id"); achievement->name = bstrdup("Achievement Name"); achievement->unlocked_timestamp = 1234567890; // Unlocked @@ -1004,13 +1004,13 @@ static void count_locked_achievements__one_unlocked_achievement__0_returned(void static void count_locked_achievements__two_locked_achievements__2_returned(void) { // Arrange. - xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id-2"); achievement2->name = bstrdup("Achievement Name 2"); achievement2->unlocked_timestamp = 0; // Locked achievement2->next = NULL; - xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id-1"); achievement1->name = bstrdup("Achievement Name 1"); achievement1->unlocked_timestamp = 0; // Locked @@ -1025,13 +1025,13 @@ static void count_locked_achievements__two_locked_achievements__2_returned(void) static void count_locked_achievements__two_unlocked_achievements__0_returned(void) { // Arrange. - xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id-2"); achievement2->name = bstrdup("Achievement Name 2"); achievement2->unlocked_timestamp = 1234567890; // Unlocked achievement2->next = NULL; - xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id-1"); achievement1->name = bstrdup("Achievement Name 1"); achievement1->unlocked_timestamp = 1234567800; // Unlocked @@ -1046,19 +1046,19 @@ static void count_locked_achievements__two_unlocked_achievements__0_returned(voi static void count_locked_achievements__mixed_achievements__locked_count_returned(void) { // Arrange. - xbox_achievement_t *achievement3 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement3 = bzalloc(sizeof(xbox_achievement_t)); achievement3->id = bstrdup("achievement-id-3"); achievement3->name = bstrdup("Achievement Name 3"); achievement3->unlocked_timestamp = 0; // Locked achievement3->next = NULL; - xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id-2"); achievement2->name = bstrdup("Achievement Name 2"); achievement2->unlocked_timestamp = 1234567890; // Unlocked achievement2->next = achievement3; - xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id-1"); achievement1->name = bstrdup("Achievement Name 1"); achievement1->unlocked_timestamp = 0; // Locked @@ -1086,7 +1086,7 @@ static void find_latest_unlocked_achievement__achievement_is_null__null_returned static void find_latest_unlocked_achievement__one_locked_achievement__null_returned(void) { // Arrange. - xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); achievement->id = bstrdup("achievement-id"); achievement->name = bstrdup("Achievement Name"); achievement->unlocked_timestamp = 0; // Locked @@ -1101,7 +1101,7 @@ static void find_latest_unlocked_achievement__one_locked_achievement__null_retur static void find_latest_unlocked_achievement__one_unlocked_achievement__achievement_returned(void) { // Arrange. - xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); achievement->id = bstrdup("achievement-id"); achievement->name = bstrdup("Achievement Name"); achievement->unlocked_timestamp = 1234567890; // Unlocked @@ -1117,13 +1117,13 @@ static void find_latest_unlocked_achievement__one_unlocked_achievement__achievem static void find_latest_unlocked_achievement__two_unlocked_achievements__latest_returned(void) { // Arrange. - xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id-2"); achievement2->name = bstrdup("Achievement Name 2"); achievement2->unlocked_timestamp = 1234567900; // Unlocked later achievement2->next = NULL; - xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id-1"); achievement1->name = bstrdup("Achievement Name 1"); achievement1->unlocked_timestamp = 1234567800; // Unlocked earlier @@ -1139,13 +1139,13 @@ static void find_latest_unlocked_achievement__two_unlocked_achievements__latest_ static void find_latest_unlocked_achievement__latest_is_first_in_list__first_returned(void) { // Arrange. - xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id-2"); achievement2->name = bstrdup("Achievement Name 2"); achievement2->unlocked_timestamp = 1234567800; // Unlocked earlier achievement2->next = NULL; - xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id-1"); achievement1->name = bstrdup("Achievement Name 1"); achievement1->unlocked_timestamp = 1234567900; // Unlocked later @@ -1161,13 +1161,13 @@ static void find_latest_unlocked_achievement__latest_is_first_in_list__first_ret static void find_latest_unlocked_achievement__all_locked__null_returned(void) { // Arrange. - xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id-2"); achievement2->name = bstrdup("Achievement Name 2"); achievement2->unlocked_timestamp = 0; // Locked achievement2->next = NULL; - xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id-1"); achievement1->name = bstrdup("Achievement Name 1"); achievement1->unlocked_timestamp = 0; // Locked @@ -1182,19 +1182,19 @@ static void find_latest_unlocked_achievement__all_locked__null_returned(void) { static void find_latest_unlocked_achievement__mixed_achievements__latest_unlocked_returned(void) { // Arrange. - xbox_achievement_t *achievement3 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement3 = bzalloc(sizeof(xbox_achievement_t)); achievement3->id = bstrdup("achievement-id-3"); achievement3->name = bstrdup("Achievement Name 3"); achievement3->unlocked_timestamp = 0; // Locked achievement3->next = NULL; - xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id-2"); achievement2->name = bstrdup("Achievement Name 2"); achievement2->unlocked_timestamp = 1234567900; // Unlocked (latest) achievement2->next = achievement3; - xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id-1"); achievement1->name = bstrdup("Achievement Name 1"); achievement1->unlocked_timestamp = 1234567800; // Unlocked (earlier) @@ -1223,7 +1223,7 @@ static void get_random_locked_achievement__achievement_is_null__null_returned(vo static void get_random_locked_achievement__one_locked_achievement__achievement_returned(void) { // Arrange. - xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); achievement->id = bstrdup("achievement-id"); achievement->name = bstrdup("Achievement Name"); achievement->unlocked_timestamp = 0; // Locked @@ -1239,7 +1239,7 @@ static void get_random_locked_achievement__one_locked_achievement__achievement_r static void get_random_locked_achievement__one_unlocked_achievement__null_returned(void) { // Arrange. - xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement = bzalloc(sizeof(xbox_achievement_t)); achievement->id = bstrdup("achievement-id"); achievement->name = bstrdup("Achievement Name"); achievement->unlocked_timestamp = 1234567890; // Unlocked @@ -1254,13 +1254,13 @@ static void get_random_locked_achievement__one_unlocked_achievement__null_return static void get_random_locked_achievement__all_unlocked__null_returned(void) { // Arrange. - xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id-2"); achievement2->name = bstrdup("Achievement Name 2"); achievement2->unlocked_timestamp = 1234567900; // Unlocked achievement2->next = NULL; - xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id-1"); achievement1->name = bstrdup("Achievement Name 1"); achievement1->unlocked_timestamp = 1234567800; // Unlocked @@ -1275,19 +1275,19 @@ static void get_random_locked_achievement__all_unlocked__null_returned(void) { static void get_random_locked_achievement__mixed_achievements__locked_returned(void) { // Arrange. - xbox_achievement_t *achievement3 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement3 = bzalloc(sizeof(xbox_achievement_t)); achievement3->id = bstrdup("achievement-id-3"); achievement3->name = bstrdup("Achievement Name 3"); achievement3->unlocked_timestamp = 0; // Locked achievement3->next = NULL; - xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("achievement-id-2"); achievement2->name = bstrdup("Achievement Name 2"); achievement2->unlocked_timestamp = 1234567890; // Unlocked achievement2->next = achievement3; - xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("achievement-id-1"); achievement1->name = bstrdup("Achievement Name 1"); achievement1->unlocked_timestamp = 0; // Locked @@ -1305,13 +1305,13 @@ static void get_random_locked_achievement__mixed_achievements__locked_returned(v static void get_random_locked_achievement__multiple_calls__returns_locked_achievement(void) { // Arrange. - xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement2 = bzalloc(sizeof(xbox_achievement_t)); achievement2->id = bstrdup("locked-2"); achievement2->name = bstrdup("Locked Achievement 2"); achievement2->unlocked_timestamp = 0; // Locked achievement2->next = NULL; - xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); + xbox_achievement_t *achievement1 = bzalloc(sizeof(xbox_achievement_t)); achievement1->id = bstrdup("locked-1"); achievement1->name = bstrdup("Locked Achievement 1"); achievement1->unlocked_timestamp = 0; // Locked @@ -1341,10 +1341,10 @@ static void xbox_free_achievement_progress__achievement_progress_is_null__null_a static void xbox_free_achievement_progress__one_achievement_progress__null_achievement_progress_returned(void) { // Arrange. xbox_achievement_progress_t *achievement_progress = bzalloc(sizeof(xbox_achievement_progress_t)); - achievement_progress->id = bstrdup("achievement-progress-id"); - achievement_progress->service_config_id = bstrdup("service-config-id"); - achievement_progress->progress_state = bstrdup("unlocked"); - achievement_progress->next = NULL; + achievement_progress->id = bstrdup("achievement-progress-id"); + achievement_progress->service_config_id = bstrdup("service-config-id"); + achievement_progress->progress_state = bstrdup("unlocked"); + achievement_progress->next = NULL; // Act. xbox_free_achievement_progress(&achievement_progress); @@ -1356,16 +1356,16 @@ static void xbox_free_achievement_progress__one_achievement_progress__null_achie static void xbox_free_achievement_progress__two_achievement_progresses__null_achievement_progress_returned(void) { // Arrange. xbox_achievement_progress_t *achievement_progress2 = bzalloc(sizeof(xbox_achievement_progress_t)); - achievement_progress2->id = bstrdup("achievement-progress-id-2"); - achievement_progress2->service_config_id = bstrdup("service-config-id"); - achievement_progress2->progress_state = bstrdup("unlocked"); - achievement_progress2->next = NULL; + achievement_progress2->id = bstrdup("achievement-progress-id-2"); + achievement_progress2->service_config_id = bstrdup("service-config-id"); + achievement_progress2->progress_state = bstrdup("unlocked"); + achievement_progress2->next = NULL; xbox_achievement_progress_t *achievement_progress1 = bzalloc(sizeof(xbox_achievement_progress_t)); - achievement_progress1->id = bstrdup("achievement-progress-id-1"); - achievement_progress1->service_config_id = bstrdup("service-config-id"); - achievement_progress1->progress_state = bstrdup("unlocked"); - achievement_progress1->next = achievement_progress2; + achievement_progress1->id = bstrdup("achievement-progress-id-1"); + achievement_progress1->service_config_id = bstrdup("service-config-id"); + achievement_progress1->progress_state = bstrdup("unlocked"); + achievement_progress1->next = achievement_progress2; // Act. xbox_free_achievement_progress(&achievement_progress1); @@ -1388,10 +1388,10 @@ static void xbox_copy_achievement_progress__achievement_progress_is_null__null_c static void xbox_copy_achievement_progress__one_achievement_progress__copy_returned(void) { // Arrange. xbox_achievement_progress_t *achievement_progress = bzalloc(sizeof(xbox_achievement_progress_t)); - achievement_progress->id = bstrdup("achievement-progress-id"); - achievement_progress->service_config_id = bstrdup("service-config-id"); - achievement_progress->progress_state = bstrdup("unlocked"); - achievement_progress->next = NULL; + achievement_progress->id = bstrdup("achievement-progress-id"); + achievement_progress->service_config_id = bstrdup("service-config-id"); + achievement_progress->progress_state = bstrdup("unlocked"); + achievement_progress->next = NULL; // Act. const xbox_achievement_progress_t *copy = xbox_copy_achievement_progress(achievement_progress); @@ -1407,16 +1407,16 @@ static void xbox_copy_achievement_progress__one_achievement_progress__copy_retur static void xbox_copy_achievement_progress__two_achievement_progresses__copy_returned(void) { // Arrange. xbox_achievement_progress_t *achievement_progress2 = bzalloc(sizeof(xbox_achievement_progress_t)); - achievement_progress2->id = bstrdup("achievement-progress-id-2"); - achievement_progress2->service_config_id = bstrdup("service-config-id"); - achievement_progress2->progress_state = bstrdup("unlocked"); - achievement_progress2->next = NULL; + achievement_progress2->id = bstrdup("achievement-progress-id-2"); + achievement_progress2->service_config_id = bstrdup("service-config-id"); + achievement_progress2->progress_state = bstrdup("unlocked"); + achievement_progress2->next = NULL; xbox_achievement_progress_t *achievement_progress1 = bzalloc(sizeof(xbox_achievement_progress_t)); - achievement_progress1->id = bstrdup("achievement-progress-id-1"); - achievement_progress1->service_config_id = bstrdup("service-config-id"); - achievement_progress1->progress_state = bstrdup("unlocked"); - achievement_progress1->next = achievement_progress2; + achievement_progress1->id = bstrdup("achievement-progress-id-1"); + achievement_progress1->service_config_id = bstrdup("service-config-id"); + achievement_progress1->progress_state = bstrdup("unlocked"); + achievement_progress1->next = achievement_progress2; // Act. const xbox_achievement_progress_t *copy = xbox_copy_achievement_progress(achievement_progress1); diff --git a/test/test_xbox_session.c b/test/test_xbox_session.c index 34ba249..b4c2cab 100644 --- a/test/test_xbox_session.c +++ b/test/test_xbox_session.c @@ -7,16 +7,16 @@ #define OUTER_WORLD_2_ID "outer_worlds_2_id" #define FALLOUT_4_ID "fallout_4_id" -static game_t *game_outer_worlds_2; -static game_t *game_fallout_4; -static xbox_session_t *session; -static xbox_achievement_t *achievement_1; -static xbox_achievement_t *achievement_2; -static xbox_achievement_progress_t *achievement_progress_1; -static xbox_achievement_progress_t *achievement_progress_2; -static gamerscore_t *gamerscore; -static xbox_reward_t *reward_1; -static xbox_reward_t *reward_2; +static game_t *game_outer_worlds_2; +static game_t *game_fallout_4; +static xbox_session_t *session; +static xbox_achievement_t *achievement_1; +static xbox_achievement_t *achievement_2; +static xbox_achievement_progress_t *achievement_progress_1; +static xbox_achievement_progress_t *achievement_progress_2; +static gamerscore_t *gamerscore; +static xbox_reward_t *reward_1; +static xbox_reward_t *reward_2; void setUp(void) { From ffa9de7cb6992ca58877262e3af769c4f806eb3c Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Tue, 24 Mar 2026 21:15:37 -0400 Subject: [PATCH 15/29] Refactor game copy logic and improve Xbox game monitoring: handle null cover URLs, adjust logging levels in RetroAchievements integration. --- src/common/game.c | 2 +- src/integrations/monitoring_service.c | 7 ++++++- .../retro-achievements/retro_achievements_monitor.c | 12 ++++++------ 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/src/common/game.c b/src/common/game.c index 094a33c..3de0df7 100644 --- a/src/common/game.c +++ b/src/common/game.c @@ -13,7 +13,7 @@ game_t *copy_game(const game_t *game) { copy->id = bstrdup(game->id); copy->title = bstrdup(game->title); copy->console_name = bstrdup(game->console_name); - copy->cover_url = bstrdup(game->cover_url); + copy->cover_url = game->cover_url ? bstrdup(game->cover_url) : NULL; return copy; } diff --git a/src/integrations/monitoring_service.c b/src/integrations/monitoring_service.c index 95febab..248b07b 100644 --- a/src/integrations/monitoring_service.c +++ b/src/integrations/monitoring_service.c @@ -208,6 +208,11 @@ static void on_xbox_achievements_progressed(const gamerscore_t *g static void on_xbox_game_played(const game_t *game) { free_game(&g_xbox_game); g_xbox_game = copy_game(game); + + if (g_xbox_game && (!g_xbox_game->cover_url || g_xbox_game->cover_url[0] == '\0')) { + g_xbox_game->cover_url = xbox_get_game_cover(g_xbox_game); + } + obs_log(LOG_INFO, "[MonitoringService] Xbox game cached: %s", g_xbox_game ? g_xbox_game->title : "(null)"); /* Clear cached achievements — they belong to the previous game */ @@ -215,7 +220,7 @@ static void on_xbox_game_played(const game_t *game) { notify_active_identity(g_xbox_identity); - notify_game_played(game); + notify_game_played(g_xbox_game); } /** diff --git a/src/integrations/retro-achievements/retro_achievements_monitor.c b/src/integrations/retro-achievements/retro_achievements_monitor.c index 2202ace..a05dbea 100644 --- a/src/integrations/retro-achievements/retro_achievements_monitor.c +++ b/src/integrations/retro-achievements/retro_achievements_monitor.c @@ -161,7 +161,7 @@ static void notify_connection_changed(const char *error_message) { g_monitor_context->connected ? "connected" : "disconnected"); if (error_message) { - obs_log(LOG_ERROR, "[RetroAchievements] Connection error: %s", error_message); + obs_log(LOG_DEBUG, "[RetroAchievements] Connection error: %s", error_message); } connection_changed_subscription_t *node = g_connection_changed_subscriptions; @@ -231,7 +231,7 @@ static void on_message_received(const char *buffer) { return; } - obs_log(LOG_WARNING, "[RetroAchievements] Message received: %s", buffer); + obs_log(LOG_DEBUG, "[RetroAchievements] Message received: %s", buffer); cJSON *root = cJSON_Parse(buffer); if (!root) { @@ -452,7 +452,7 @@ static int websocket_callback(struct lws *wsi, enum lws_callback_reasons reason, break; case LWS_CALLBACK_CLIENT_CONNECTION_ERROR: - obs_log(LOG_ERROR, "[RetroAchievements] Connection error: %s", in ? (char *)in : "unknown"); + obs_log(LOG_DEBUG, "[RetroAchievements] Connection error: %s", in ? (char *)in : "unknown"); on_websocket_error(in ? (char *)in : "Connection error"); break; @@ -537,14 +537,14 @@ static void *monitor_thread(void *arg) { /* Reconnect if the connection dropped while the monitor is still active. */ if (ctx->running && !ctx->wsi && ctx->context) { - obs_log(LOG_INFO, "[RetroAchievements] Connection lost, retrying in %d ms...", retry_delay_ms); + obs_log(LOG_DEBUG, "[RetroAchievements] Connection lost, retrying in %d ms...", retry_delay_ms); int iterations = retry_delay_ms / RA_LOOP_CHECK_MS; for (int i = 0; i < iterations && ctx->running; i++) { sleep_ms(RA_LOOP_CHECK_MS); } - obs_log(LOG_INFO, "[RetroAchievements] Reconnecting..."); + obs_log(LOG_DEBUG, "[RetroAchievements] Reconnecting..."); ctx->wsi = lws_client_connect_via_info(&ccinfo); @@ -555,7 +555,7 @@ static void *monitor_thread(void *arg) { retry_delay_ms = RA_MAX_RETRY_DELAY_MS; } } else { - obs_log(LOG_INFO, "[RetroAchievements] Connection reestablished"); + obs_log(LOG_DEBUG, "[RetroAchievements] Connection reestablished"); retry_delay_ms = RA_INITIAL_RETRY_DELAY_MS; } } From ba55ab93682012a89a711c6860a2ab907b2f49a7 Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Tue, 31 Mar 2026 21:08:36 -0400 Subject: [PATCH 16/29] Refactor logging levels, enhance HTTP URL normalization, improve session and cache handling in Xbox and platform integrations. --- src/integrations/xbox/xbox_client.c | 4 +- src/integrations/xbox/xbox_monitor.c | 13 +++ src/io/cache.c | 120 ++++++++++++++-------- src/io/cache.h | 16 +-- src/net/http/http.c | 142 ++++++++++++++++++++------- src/net/http/http.h | 10 +- src/text/parsers.c | 6 +- 7 files changed, 222 insertions(+), 89 deletions(-) diff --git a/src/integrations/xbox/xbox_client.c b/src/integrations/xbox/xbox_client.c index 1b0916f..aaa974b 100644 --- a/src/integrations/xbox/xbox_client.c +++ b/src/integrations/xbox/xbox_client.c @@ -413,7 +413,7 @@ game_t *xbox_get_current_game(void) { goto cleanup; } - obs_log(LOG_DEBUG, "Response: %s", presence_response); + obs_log(LOG_WARNING, "PRESENCE Response: %s", presence_response); presence_json = cJSON_Parse(presence_response); @@ -557,6 +557,8 @@ xbox_achievement_t *xbox_get_game_achievements(const game_t *game) { obs_log(LOG_DEBUG, "Response length: %zu bytes", strlen(response_json)); + obs_log(LOG_WARNING, "Achievemnet response: %s", response_json); + /* Parse achievements from this page */ page_achievements = parse_achievements(response_json); diff --git a/src/integrations/xbox/xbox_monitor.c b/src/integrations/xbox/xbox_monitor.c index e08fa70..c21dc60 100644 --- a/src/integrations/xbox/xbox_monitor.c +++ b/src/integrations/xbox/xbox_monitor.c @@ -626,7 +626,20 @@ static void on_buffer_received(const char *buffer) { if (is_presence_message(message)) { obs_log(LOG_DEBUG, "[Monitoring] Message is a presence message"); + + /* Parse the rich presence information however, we only want the game ID since + * the presence game does not provide the game title; just a rich presence text */ game = parse_game(message); + + if (g_current_session.game != NULL && strcasecmp(game->id, g_current_session.game->id) == 0) { + obs_log(LOG_WARNING, "[Monitoring] Game ID has not changed: %s %s", game->id, game->title); + goto cleanup; + } + + free_game(&game); + + game = xbox_get_current_game(); + on_game_update_received(game); goto cleanup; } diff --git a/src/io/cache.c b/src/io/cache.c index 05f9ee4..ce73909 100644 --- a/src/io/cache.c +++ b/src/io/cache.c @@ -5,60 +5,78 @@ #include #include #include +#include -#ifdef _WIN32 -#include -#define CACHE_MAX_PATH MAX_PATH -#else #include + #define CACHE_MAX_PATH PATH_MAX -#endif #include #include #include "common/memory.h" -static const char *get_temp_dir(char *buf, size_t buf_size) { - // TMPDIR — macOS and most Linux distros - const char *dir = getenv("TMPDIR"); - if (dir && dir[0] != '\0') - return dir; - - // TEMP / TMP — Windows (and some Linux environments) - dir = getenv("TEMP"); - if (dir && dir[0] != '\0') - return dir; - - dir = getenv("TMP"); - if (dir && dir[0] != '\0') - return dir; - -#ifdef _WIN32 - // Last resort on Windows: ask the OS directly - DWORD len = GetTempPathA((DWORD)buf_size, buf); - if (len > 0 && len < buf_size) - return buf; -#endif - UNUSED_PARAMETER(buf); - UNUSED_PARAMETER(buf_size); - // Last resort on POSIX - return "/tmp/"; +#define CACHE_DIRECTORY "cache" + +static uint32_t cache_hash_source(const char *source) { + /* FNV-1a 32-bit: small, stable, and sufficient for cache keying. */ + const unsigned char *p = (const unsigned char *)(source ? source : ""); + uint32_t h = 2166136261u; + + while (*p) { + h ^= (uint32_t)*p++; + h *= 16777619u; + } + + return h; } -void cache_build_path(const char *type, const char *id, char *out_path, size_t path_size) { +static bool get_cache_dir(char *buf, size_t buf_size) { + + char *cache_dir = obs_module_config_path(CACHE_DIRECTORY); + + if (!cache_dir) { + if (buf && buf_size > 0) { + buf[0] = '\0'; + } + + return false; + } + + os_mkdirs(cache_dir); + snprintf(buf, buf_size, "%s", cache_dir); + bfree(cache_dir); + return true; +} - char tmpbuf[CACHE_MAX_PATH] = {0}; - const char *tmpdir = get_temp_dir(tmpbuf, sizeof(tmpbuf)); +void cache_build_path(const char *type, const char *id, const char *source, char *out_path, size_t path_size) { - // Ensure the temp dir ends with a separator - size_t dirlen = strlen(tmpdir); - char sep = (dirlen > 0 && (tmpdir[dirlen - 1] == '/' || tmpdir[dirlen - 1] == '\\')) ? '\0' : '/'; + char cache_dir[CACHE_MAX_PATH] = {0}; + uint32_t source_hash = cache_hash_source(source); + + if (!get_cache_dir(cache_dir, sizeof(cache_dir))) { + if (out_path && path_size > 0) { + out_path[0] = '\0'; + } + + return; + } + + // Ensure the cache dir ends with a separator + size_t dirlen = strlen(cache_dir); + char sep = (dirlen > 0 && (cache_dir[dirlen - 1] == '/' || cache_dir[dirlen - 1] == '\\')) ? '\0' : '/'; if (sep) - snprintf(out_path, path_size, "%s%cobs_achievement_tracker_%s_%s.png", tmpdir, sep, type, id); + snprintf(out_path, + path_size, + "%s%cobs_achievement_tracker_%s_%s_%08x.png", + cache_dir, + sep, + type, + id, + source_hash); else - snprintf(out_path, path_size, "%sobs_achievement_tracker_%s_%s.png", tmpdir, type, id); + snprintf(out_path, path_size, "%sobs_achievement_tracker_%s_%s_%08x.png", cache_dir, type, id, source_hash); } bool cache_download(const char *url, const char *type, const char *id, char *out_path, size_t path_size) { @@ -68,7 +86,12 @@ bool cache_download(const char *url, const char *type, const char *id, char *out } char path_buf[1024]; - cache_build_path(type, id, path_buf, sizeof(path_buf)); + cache_build_path(type, id, url, path_buf, sizeof(path_buf)); + + if (path_buf[0] == '\0') { + obs_log(LOG_ERROR, "[Cache] Failed to resolve the OBS module cache directory"); + return false; + } /* Copy the resolved path to the caller's buffer when provided */ if (out_path) { @@ -78,8 +101,17 @@ bool cache_download(const char *url, const char *type, const char *id, char *out /* Already cached — nothing to do */ struct stat st; if (stat(path_buf, &st) == 0) { - obs_log(LOG_DEBUG, "[Cache] Hit: %s", path_buf); - return false; + if (st.st_size == 0) { + obs_log(LOG_WARNING, "[Cache] Discarding zero-byte cached file '%s'", path_buf); + + if (remove(path_buf) != 0) { + obs_log(LOG_WARNING, "[Cache] Failed to delete zero-byte cached file '%s'", path_buf); + return false; + } + } else { + obs_log(LOG_DEBUG, "[Cache] Hit: %s", path_buf); + return true; + } } /* Download into memory */ @@ -101,6 +133,12 @@ bool cache_download(const char *url, const char *type, const char *id, char *out bfree(encoded_url); + if (size == 0) { + obs_log(LOG_WARNING, "[Cache] Downloaded zero bytes from '%s'", download_url); + free_memory((void **)&data); + return false; + } + /* Write to disk */ FILE *file = fopen(path_buf, "wb"); if (!file) { diff --git a/src/io/cache.h b/src/io/cache.h index 625370a..7a99036 100644 --- a/src/io/cache.h +++ b/src/io/cache.h @@ -17,7 +17,7 @@ extern "C" { * that the path convention is defined in exactly one place. * * Cache path format: - * `/obs_achievement_tracker__.png` + * `/cache/obs_achievement_tracker___.png` * * Thread safety: * All functions are safe to call from any thread. Two concurrent downloads @@ -26,23 +26,24 @@ extern "C" { */ /** - * @brief Build the canonical cache file path for a given type and id. + * @brief Build the canonical cache file path for a given type, id, and source URL. * * Writes the path into @p out_path using the naming convention: - * `/obs_achievement_tracker__.png` + * `/cache/obs_achievement_tracker___.png` * * @param type Category suffix (e.g. "achievement_icon", "gamerpic", "game_cover"). * @param id Unique identifier for this resource. + * @param source Source URL used to derive a stable hash for cache busting. * @param out_path Destination buffer for the resulting path. * @param path_size Size of @p out_path in bytes. */ -void cache_build_path(const char *type, const char *id, char *out_path, size_t path_size); +void cache_build_path(const char *type, const char *id, const char *source, char *out_path, size_t path_size); /** * @brief Download a remote resource to the local file cache (if not already cached). * - * Builds the cache path from @p type and @p id, checks whether the file already - * exists on disk, and downloads it from @p url only when necessary. + * Builds the cache path from @p type, @p id, and @p url, checks whether the file + * already exists on disk, and downloads it from @p url only when necessary. * * On success the resulting file path is written into @p out_path (if non-NULL) * so that the caller can use it immediately (e.g. for texture creation). @@ -55,7 +56,8 @@ void cache_build_path(const char *type, const char *id, char *out_path, size_t p * @param path_size Size of @p out_path in bytes (ignored when @p out_path is NULL). * * @return true if the file is present in the cache after this call (either - * already existed or was successfully downloaded); false on failure. + * already existed or was successfully downloaded); false on failure, + * including when the OBS module cache directory cannot be resolved. */ bool cache_download(const char *url, const char *type, const char *id, char *out_path, size_t path_size); diff --git a/src/net/http/http.c b/src/net/http/http.c index ac6263c..4d94309 100644 --- a/src/net/http/http.c +++ b/src/net/http/http.c @@ -394,69 +394,132 @@ char *http_urlencode(const char *in) { return out; } +static bool http_is_hex_digit(char c) { + return (c >= '0' && c <= '9') || (c >= 'a' && c <= 'f') || (c >= 'A' && c <= 'F'); +} + +static bool http_is_unreserved(unsigned char c) { + return (c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') || (c >= '0' && c <= '9') || c == '-' || c == '.' || + c == '_' || c == '~'; +} + +static void http_append_pct(char *out, size_t *pos, unsigned char c) { + static const char hex[] = "0123456789ABCDEF"; + out[(*pos)++] = '%'; + out[(*pos)++] = hex[(c >> 4) & 0x0F]; + out[(*pos)++] = hex[c & 0x0F]; +} + char *http_encode_url(const char *url) { if (!url) return NULL; - /* Find the start of the path component. - * We look for "://" and then the next '/' after the host. */ const char *scheme_end = strstr(url, "://"); if (!scheme_end) return bstrdup(url); - const char *host_start = scheme_end + 3; - const char *path_start = strchr(host_start, '/'); - if (!path_start) - return bstrdup(url); /* No path — nothing to encode */ + const char *host_start = scheme_end + 3; + const char *path_start = strchr(host_start, '/'); + const char *query_start = strchr(host_start, '?'); + const char *fragment_start = strchr(host_start, '#'); + const char *first_delim = NULL; - size_t prefix_len = (size_t)(path_start - url); + if (path_start) + first_delim = path_start; + if (query_start && (!first_delim || query_start < first_delim)) + first_delim = query_start; + if (fragment_start && (!first_delim || fragment_start < first_delim)) + first_delim = fragment_start; + + if (!first_delim) + return bstrdup(url); + + size_t prefix_len = (size_t)(first_delim - url); CURL *curl = curl_easy_init(); if (!curl) return NULL; - /* Estimate output size: worst case every byte becomes %XX (×3). - * Add prefix length + NUL. */ - size_t path_len = strlen(path_start); - size_t buf_size = prefix_len + path_len * 3 + 1; - char *out = bzalloc(buf_size); + /* Worst case: every remaining byte is percent-encoded. */ + size_t suffix_len = strlen(first_delim); + size_t buf_size = prefix_len + suffix_len * 3 + 1; + char *out = bzalloc(buf_size); if (!out) { curl_easy_cleanup(curl); return NULL; } - /* Copy scheme + host verbatim */ + /* Copy scheme + authority verbatim. */ memcpy(out, url, prefix_len); size_t pos = prefix_len; - /* Encode path segment-by-segment, preserving '/' separators. */ - const char *p = path_start; - while (*p) { - if (*p == '/') { + const char *p = first_delim; + + /* Path: preserve '/', preserve existing %XX escapes, encode the rest of + * unsafe bytes. Stop at '?' or '#'. */ + while (*p && *p != '?' && *p != '#') { + unsigned char c = (unsigned char)*p; + + if (c == '/') { out[pos++] = '/'; p++; - continue; - } - - /* Collect one segment (until next '/' or end) */ - const char *seg_start = p; - while (*p && *p != '/') + } else if (c == '%' && http_is_hex_digit(p[1]) && http_is_hex_digit(p[2])) { + out[pos++] = p[0]; + out[pos++] = p[1]; + out[pos++] = p[2]; + p += 3; + } else if (http_is_unreserved(c)) { + out[pos++] = (char)c; p++; + } else { + http_append_pct(out, &pos, c); + p++; + } + } - size_t seg_len = (size_t)(p - seg_start); - char *segment = bzalloc(seg_len + 1); - memcpy(segment, seg_start, seg_len); - segment[seg_len] = '\0'; - - char *encoded = curl_easy_escape(curl, segment, (int)seg_len); - bfree(segment); + /* Query: preserve '?', '&', '=', and existing %XX escapes. Encode only + * unsafe bytes like spaces. Stop at '#'. */ + if (*p == '?') { + out[pos++] = *p++; + while (*p && *p != '#') { + unsigned char c = (unsigned char)*p; + + if (c == '%' && http_is_hex_digit(p[1]) && http_is_hex_digit(p[2])) { + out[pos++] = p[0]; + out[pos++] = p[1]; + out[pos++] = p[2]; + p += 3; + } else if (http_is_unreserved(c) || c == '&' || c == '=' || c == ';' || c == ':' || c == ',' || c == '+' || + c == '/' || c == '@' || c == '?' || c == '-') { + out[pos++] = (char)c; + p++; + } else { + http_append_pct(out, &pos, c); + p++; + } + } + } - if (encoded) { - size_t enc_len = strlen(encoded); - memcpy(out + pos, encoded, enc_len); - pos += enc_len; - curl_free(encoded); + /* Fragment: preserve '#' and existing %XX escapes; encode only unsafe + * bytes. */ + if (*p == '#') { + out[pos++] = *p++; + while (*p) { + unsigned char c = (unsigned char)*p; + + if (c == '%' && http_is_hex_digit(p[1]) && http_is_hex_digit(p[2])) { + out[pos++] = p[0]; + out[pos++] = p[1]; + out[pos++] = p[2]; + p += 3; + } else if (http_is_unreserved(c) || c == '/' || c == '?' || c == '&' || c == '=' || c == '-' || c == '.') { + out[pos++] = (char)c; + p++; + } else { + http_append_pct(out, &pos, c); + p++; + } } } @@ -492,6 +555,9 @@ bool http_download(const char *url, uint8_t **out_data, size_t *out_size) { CURLcode res = curl_easy_perform(curl); + long http_code = 0; + curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &http_code); + curl_easy_cleanup(curl); if (res != CURLE_OK) { @@ -500,6 +566,12 @@ bool http_download(const char *url, uint8_t **out_data, size_t *out_size) { return false; } + if (http_code < 200 || http_code >= 300) { + obs_log(LOG_ERROR, "Download failed: server returned HTTP %ld for '%s'", http_code, url); + bfree(buf.data); + return false; + } + *out_data = buf.data; *out_size = buf.size; diff --git a/src/net/http/http.h b/src/net/http/http.h index c318cec..e5b71d2 100644 --- a/src/net/http/http.h +++ b/src/net/http/http.h @@ -92,10 +92,12 @@ char *http_urlencode(const char *in); /** * @brief Normalize and percent-encode a full URL. * - * Parses @p url to locate the path component and percent-encodes each path - * segment individually while preserving the scheme, host, and '/' separators. - * This is safe to call on a complete URL — unlike @ref http_urlencode which - * would escape structural delimiters like '/' and ':'. + * Preserves the URL structure (scheme, authority, path separators, query + * delimiters, fragment delimiters, and existing %XX escapes) while + * percent-encoding only unsafe bytes inside the path/query/fragment + * components. This is safe to call on a complete URL — unlike + * @ref http_urlencode which would escape structural delimiters like '/', '?', + * and ':'. * * @param url The raw URL to normalize. * @return Newly allocated encoded URL (caller must bfree()), or NULL on error. diff --git a/src/text/parsers.c b/src/text/parsers.c index 95d5738..ecb7def 100644 --- a/src/text/parsers.c +++ b/src/text/parsers.c @@ -130,6 +130,8 @@ game_t *parse_game(const char *json_string) { return NULL; } + obs_log(LOG_WARNING, "GAME Received: %s", json_string); + json_root = cJSON_Parse(json_string); if (!json_root) { @@ -212,6 +214,8 @@ xbox_achievement_progress_t *parse_achievement_progress(const char *json_string) return NULL; } + obs_log(LOG_WARNING, "Received: %s", json_string); + json_root = cJSON_Parse(json_string); if (!json_root) { @@ -266,7 +270,7 @@ xbox_achievement_progress_t *parse_achievement_progress(const char *json_string) int64_t unlocked_timestamp = 0; if (!convert_iso8601_utc_to_unix(time_unlocked_node->valuestring, &unlocked_timestamp, &fraction)) { - obs_log(LOG_ERROR, "No time unlocked at %d", detail_index); + obs_log(LOG_ERROR, "No time unlocked at %d (received %s)", detail_index, time_unlocked_node->valuestring); continue; } From c30bbda2f44c5fe7d140a98475227789492de15a Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Wed, 1 Apr 2026 20:51:58 -0400 Subject: [PATCH 17/29] Implement active identity retrieval and notification improvements; ensure consistent setup and initialization across monitoring and game-played events. --- src/integrations/monitoring_service.c | 33 ++++++++++++++++++++++++++- src/integrations/monitoring_service.h | 14 ++++++++++++ src/integrations/xbox/xbox_monitor.c | 9 ++++++-- src/sources/gamertag.c | 6 ++++- test/stubs/io/cache_stub.c | 7 ------ 5 files changed, 58 insertions(+), 11 deletions(-) diff --git a/src/integrations/monitoring_service.c b/src/integrations/monitoring_service.c index 248b07b..4087e46 100644 --- a/src/integrations/monitoring_service.c +++ b/src/integrations/monitoring_service.c @@ -83,6 +83,22 @@ static identity_t *g_retro_identity = NULL; static game_t *g_xbox_game = NULL; static game_t *g_retro_game = NULL; +static const identity_t *get_current_active_identity(void) { + if (g_retro_game && g_retro_identity) + return g_retro_identity; + + if (g_xbox_game && g_xbox_identity) + return g_xbox_identity; + + if (g_retro_identity) + return g_retro_identity; + + if (g_xbox_identity) + return g_xbox_identity; + + return NULL; +} + /** Cached generic achievements for the current game (owned by this module). */ static achievement_t *g_current_achievements = NULL; @@ -177,10 +193,15 @@ static void on_xbox_connection_changed(bool connected, const char *error_message g_xbox_identity->name, g_xbox_identity->score, g_xbox_identity->avatar_url ? g_xbox_identity->avatar_url : "(none)"); + + notify_active_identity(get_current_active_identity()); } } } else { free_identity_t(&g_xbox_identity); + + if (g_xbox_game || !g_retro_identity) + notify_active_identity(get_current_active_identity()); } if (g_connection_changed_callback) @@ -218,7 +239,11 @@ static void on_xbox_game_played(const game_t *game) { /* Clear cached achievements — they belong to the previous game */ replace_current_achievements(NULL); - notify_active_identity(g_xbox_identity); + /* Use get_current_active_identity() rather than g_xbox_identity directly: + * during the initial connection the game-played notification may arrive + * before the connection-changed notification (which sets g_xbox_identity), + * so g_xbox_identity might still be NULL at this point. */ + notify_active_identity(get_current_active_identity()); notify_game_played(g_xbox_game); } @@ -370,6 +395,8 @@ void monitoring_subscribe_active_identity(on_monitoring_active_identity_changed_ node->callback = callback; node->next = g_active_identity_subscriptions; g_active_identity_subscriptions = node; + + callback(get_current_active_identity()); } void monitoring_subscribe_game_played(on_monitoring_game_played_t callback) { @@ -397,6 +424,10 @@ void monitoring_subscribe_session_ready(on_monitoring_session_ready_t callback) g_session_ready_callback = callback; } +const identity_t *monitoring_get_current_active_identity(void) { + return get_current_active_identity(); +} + const achievement_t *monitoring_get_current_game_achievements(void) { return g_current_achievements; } diff --git a/src/integrations/monitoring_service.h b/src/integrations/monitoring_service.h index ca5955b..69f8b7f 100644 --- a/src/integrations/monitoring_service.h +++ b/src/integrations/monitoring_service.h @@ -144,6 +144,20 @@ void monitoring_subscribe_achievements_changed(on_monitoring_achievements_change */ void monitoring_subscribe_session_ready(on_monitoring_session_ready_t callback); +/** + * @brief Get the currently active identity, if any. + * + * Returns the same identity that would be delivered to active-identity + * subscribers right now. Useful for sources that need to seed their initial + * state at creation time, after the monitor has already connected. + * + * Ownership/lifetime: the returned pointer is owned by the monitoring service + * and may be replaced on the next identity update. Do not free it. + * + * @return The active identity, or NULL if no session is established. + */ +const identity_t *monitoring_get_current_active_identity(void); + /** * @brief Get the cached generic achievements list for the current game. * diff --git a/src/integrations/xbox/xbox_monitor.c b/src/integrations/xbox/xbox_monitor.c index c21dc60..0593206 100644 --- a/src/integrations/xbox/xbox_monitor.c +++ b/src/integrations/xbox/xbox_monitor.c @@ -544,6 +544,13 @@ static void on_websocket_connected() { xbox_presence_subscribe(); + /* Notify subscribers that we are connected BEFORE fetching the current + * game. This ensures that monitoring_service.c has g_xbox_identity set + * (via on_xbox_connection_changed) when the subsequent game-played and + * session-ready notifications arrive, so the gamertag source never + * briefly shows "Not connected". */ + notify_connection_changed(NULL); + /* Immediately retrieves the game being played, if any */ game_t *current_game = xbox_get_current_game(); xbox_change_game(current_game); @@ -553,8 +560,6 @@ static void on_websocket_connected() { if (g_current_session.game != NULL) { xbox_achievements_progress_subscribe(&g_current_session); } - - notify_connection_changed(NULL); } /** diff --git a/src/sources/gamertag.c b/src/sources/gamertag.c index 4abb73e..2635965 100644 --- a/src/sources/gamertag.c +++ b/src/sources/gamertag.c @@ -53,7 +53,11 @@ static void on_active_identity_changed(const identity_t *identity) { static void *on_source_create(obs_data_t *settings, obs_source_t *source) { UNUSED_PARAMETER(settings); - snprintf(g_gamertag, sizeof(g_gamertag), "Not connected"); + /* Populate immediately with the current identity so the source does not + * briefly show "Not connected" when added to a scene after the monitor + * has already connected. The subscription callback won't fire again for + * an already-established identity. */ + update_gamertag(monitoring_get_current_active_identity()); return text_source_create(source, "Gamertag"); } diff --git a/test/stubs/io/cache_stub.c b/test/stubs/io/cache_stub.c index d6661ae..6fc58e1 100644 --- a/test/stubs/io/cache_stub.c +++ b/test/stubs/io/cache_stub.c @@ -1,12 +1,5 @@ #include "io/cache.h" -void cache_build_path(const char *type, const char *id, char *out_path, size_t path_size) { - (void)type; - (void)id; - (void)out_path; - (void)path_size; -} - bool cache_download(const char *url, const char *type, const char *id, char *out_path, size_t path_size) { (void)url; (void)type; From 4a44974e7b37f6c218789c1b2eb5ab11cdf31528 Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Wed, 1 Apr 2026 21:01:52 -0400 Subject: [PATCH 18/29] Update GitHub Actions workflow: ensure vcpkg definitions are up-to-date before installing dependencies --- .github/workflows/build-project.yaml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/.github/workflows/build-project.yaml b/.github/workflows/build-project.yaml index 4b575e3..f52b34a 100644 --- a/.github/workflows/build-project.yaml +++ b/.github/workflows/build-project.yaml @@ -420,6 +420,13 @@ jobs: - name: Install Dependencies 🔐 run: | + # Update vcpkg to the latest port definitions before installing. + # The port snapshots bundled with the windows-2022 runner image can + # become stale: if GitHub regenerates a release tarball the recorded + # SHA-512 hash in the port no longer matches and the download fails. + # Pulling the latest vcpkg tree ensures we get corrected hashes. + git -C "$env:VCPKG_INSTALLATION_ROOT" pull --ff-only + # Install OpenSSL and libwebsockets for x64 via vcpkg. # The obs-deps prebuilt package does not ship either on Windows. # The system OpenSSL must be replaced with the vcpkg one: the system @@ -471,6 +478,10 @@ jobs: - name: Install OpenSSL for ARM64 🔐 run: | + # Update vcpkg to the latest port definitions before installing. + # See the x64 step for the full explanation. + git -C "$env:VCPKG_INSTALLATION_ROOT" pull --ff-only + # Install OpenSSL and libwebsockets for ARM64 via vcpkg. # The windows-2022 runner ships vcpkg at $env:VCPKG_INSTALLATION_ROOT. # The system OpenSSL is x64-only; we need an arm64-windows build. From 33d4038085007c69dd8a23c02ab5084a206d52fb Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Wed, 1 Apr 2026 21:13:33 -0400 Subject: [PATCH 19/29] Define PATH_MAX fallback for non-POSIX systems; use MAX_PATH for Windows. --- src/io/cache.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/io/cache.c b/src/io/cache.c index ce73909..f993a64 100644 --- a/src/io/cache.c +++ b/src/io/cache.c @@ -9,6 +9,16 @@ #include +/* PATH_MAX is a POSIX constant absent from Windows / MSVC's limits.h. + * MAX_PATH (260) is the traditional Win32 limit; use it as a fallback. */ +#ifndef PATH_MAX +#ifdef MAX_PATH +#define PATH_MAX MAX_PATH +#else +#define PATH_MAX 4096 +#endif +#endif + #define CACHE_MAX_PATH PATH_MAX #include From c5af97a6ecbfe5198dd0315f7e6e1fd175b3f9ac Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Thu, 2 Apr 2026 20:53:30 -0400 Subject: [PATCH 20/29] Refactor: simplify game ID parsing and improve identity source prioritization in monitoring events. --- src/integrations/monitoring_service.c | 60 ++++++++++++++++++--------- src/integrations/xbox/xbox_monitor.c | 12 +++--- src/sources/gamertag.c | 2 +- src/text/parsers.c | 32 ++++---------- src/text/parsers.h | 2 +- test/test_parsers.c | 13 +++--- 6 files changed, 61 insertions(+), 60 deletions(-) diff --git a/src/integrations/monitoring_service.c b/src/integrations/monitoring_service.c index 4087e46..822a8fa 100644 --- a/src/integrations/monitoring_service.c +++ b/src/integrations/monitoring_service.c @@ -83,18 +83,30 @@ static identity_t *g_retro_identity = NULL; static game_t *g_xbox_game = NULL; static game_t *g_retro_game = NULL; -static const identity_t *get_current_active_identity(void) { - if (g_retro_game && g_retro_identity) - return g_retro_identity; - - if (g_xbox_game && g_xbox_identity) - return g_xbox_identity; - - if (g_retro_identity) - return g_retro_identity; +/** + * @brief Tracks which integration produced the most recent game event. + * + * Updated every time on_xbox_game_played or on_retro_game_playing fires. + * Used by get_current_active_identity() to return the identity that belongs + * to the last active game rather than applying a fixed source priority. + */ +static identity_source_t g_last_game_source = IDENTITY_SOURCE_XBOX; - if (g_xbox_identity) - return g_xbox_identity; +static const identity_t *get_current_active_identity(void) { + /* Return the identity for whichever integration last reported a game. + * Fall back to the other source if the primary one has no identity yet, + * and return NULL only when neither source has an active game. */ + if (g_last_game_source == IDENTITY_SOURCE_XBOX) { + if (g_xbox_game && g_xbox_identity) + return g_xbox_identity; + if (g_retro_game && g_retro_identity) + return g_retro_identity; + } else { + if (g_retro_game && g_retro_identity) + return g_retro_identity; + if (g_xbox_game && g_xbox_identity) + return g_xbox_identity; + } return NULL; } @@ -199,9 +211,11 @@ static void on_xbox_connection_changed(bool connected, const char *error_message } } else { free_identity_t(&g_xbox_identity); + free_game(&g_xbox_game); - if (g_xbox_game || !g_retro_identity) - notify_active_identity(get_current_active_identity()); + /* Xbox is gone – re-evaluate: retro identity takes over if a retro + * game is active, otherwise sources will show "Not connected". */ + notify_active_identity(get_current_active_identity()); } if (g_connection_changed_callback) @@ -223,7 +237,7 @@ static void on_xbox_achievements_progressed(const gamerscore_t *g replace_current_achievements(xbox_to_achievements(get_current_game_achievements())); if (g_xbox_game) - notify_active_identity(g_xbox_identity); + notify_active_identity(get_current_active_identity()); } static void on_xbox_game_played(const game_t *game) { @@ -236,11 +250,13 @@ static void on_xbox_game_played(const game_t *game) { obs_log(LOG_INFO, "[MonitoringService] Xbox game cached: %s", g_xbox_game ? g_xbox_game->title : "(null)"); + g_last_game_source = IDENTITY_SOURCE_XBOX; + /* Clear cached achievements — they belong to the previous game */ replace_current_achievements(NULL); /* Use get_current_active_identity() rather than g_xbox_identity directly: - * during the initial connection the game-played notification may arrive + * during the initial connection, the game-played notification may arrive * before the connection-changed notification (which sets g_xbox_identity), * so g_xbox_identity might still be NULL at this point. */ notify_active_identity(get_current_active_identity()); @@ -281,10 +297,10 @@ static void on_retro_user(const retro_user_t *user) { g_retro_identity ? g_retro_identity->name : "(null)", g_retro_identity ? g_retro_identity->avatar_url : "(none)"); - /* Fire if a game is already active so sources update regardless of - * whether the user message arrives before or after the game message. */ - if (g_retro_game) - notify_active_identity(g_retro_identity); + /* Fire if a retro game is already active so sources update regardless + * of whether the user message arrives before or after the game message. */ + if (g_retro_game && g_last_game_source == IDENTITY_SOURCE_RETRO) + notify_active_identity(get_current_active_identity()); } static void on_retro_no_user(void) { @@ -302,10 +318,14 @@ static void on_retro_game_playing(const retro_game_t *retro_game) { obs_log(LOG_INFO, "[MonitoringService] Retro game cached: %s (%s)", g_retro_game->title, g_retro_game->console_name); + g_last_game_source = IDENTITY_SOURCE_RETRO; + /* Clear cached achievements — they belong to the previous game */ replace_current_achievements(NULL); - notify_active_identity(g_retro_identity); + /* This is now the most recent game source, so get_current_active_identity() + * will return the retro identity. */ + notify_active_identity(get_current_active_identity()); notify_game_played(g_retro_game); } diff --git a/src/integrations/xbox/xbox_monitor.c b/src/integrations/xbox/xbox_monitor.c index 0593206..79c52af 100644 --- a/src/integrations/xbox/xbox_monitor.c +++ b/src/integrations/xbox/xbox_monitor.c @@ -598,6 +598,7 @@ static void on_buffer_received(const char *buffer) { cJSON *presence_item = NULL; game_t *game = NULL; + char *game_id = NULL; char *message = NULL; cJSON *root = NULL; @@ -630,21 +631,19 @@ static void on_buffer_received(const char *buffer) { } if (is_presence_message(message)) { + obs_log(LOG_DEBUG, "[Monitoring] Message is a presence message"); /* Parse the rich presence information however, we only want the game ID since * the presence game does not provide the game title; just a rich presence text */ - game = parse_game(message); + game_id = parse_presence_game_id(message); - if (g_current_session.game != NULL && strcasecmp(game->id, g_current_session.game->id) == 0) { - obs_log(LOG_WARNING, "[Monitoring] Game ID has not changed: %s %s", game->id, game->title); + if (g_current_session.game != NULL && game_id != NULL && strcasecmp(game_id, g_current_session.game->id) == 0) { + obs_log(LOG_WARNING, "[Monitoring] Game ID has not changed: %s", game_id); goto cleanup; } - free_game(&game); - game = xbox_get_current_game(); - on_game_update_received(game); goto cleanup; } @@ -660,6 +659,7 @@ static void on_buffer_received(const char *buffer) { if (message) { free(message); } + free_memory((void **)&game_id); free_game(&game); free_json_memory((void **)&root); } diff --git a/src/sources/gamertag.c b/src/sources/gamertag.c index 2635965..0e9dae1 100644 --- a/src/sources/gamertag.c +++ b/src/sources/gamertag.c @@ -53,7 +53,7 @@ static void on_active_identity_changed(const identity_t *identity) { static void *on_source_create(obs_data_t *settings, obs_source_t *source) { UNUSED_PARAMETER(settings); - /* Populate immediately with the current identity so the source does not + /* Populate immediately with the current identity, so the source does not * briefly show "Not connected" when added to a scene after the monitor * has already connected. The subscription callback won't fire again for * an already-established identity. */ diff --git a/src/text/parsers.c b/src/text/parsers.c index ecb7def..526a13d 100644 --- a/src/text/parsers.c +++ b/src/text/parsers.c @@ -121,10 +121,10 @@ bool is_presence_message(const char *json_string) { return contains_node(json_string, "/presenceDetails"); } -game_t *parse_game(const char *json_string) { +char *parse_presence_game_id(const char *json_string) { - cJSON *json_root = NULL; - game_t *game = NULL; + cJSON *json_root = NULL; + char *game_id = NULL; if (!json_string || strlen(json_string) == 0) { return NULL; @@ -138,8 +138,7 @@ game_t *parse_game(const char *json_string) { return NULL; } - char current_game_title[128] = ""; - char current_game_id[128] = ""; + char current_game_id[128] = ""; for (int detail_index = 0; detail_index < 3; detail_index++) { @@ -163,18 +162,6 @@ game_t *parse_game(const char *json_string) { obs_log(LOG_DEBUG, "Game at %d. Is game = %s", detail_index, is_game_value->valuestring); - /* Retrieve the game title and its ID */ - char game_title_key[512]; - snprintf(game_title_key, sizeof(game_title_key), "/presenceDetails/%d/presenceText", detail_index); - - cJSON *game_title_value = cJSONUtils_GetPointer(json_root, game_title_key); - - if (game_title_value->valuestring[0] == '\0') { - continue; - } - - obs_log(LOG_DEBUG, "Game title: %s %s", game_title_value->string, game_title_value->valuestring); - char game_id_key[512]; snprintf(game_id_key, sizeof(game_id_key), "/presenceDetails/%d/titleId", detail_index); @@ -182,7 +169,6 @@ game_t *parse_game(const char *json_string) { obs_log(LOG_DEBUG, "Game ID: %s %s", game_id_value->string, game_id_value->valuestring); - snprintf(current_game_title, sizeof(current_game_title), "%s", game_title_value->valuestring); snprintf(current_game_id, sizeof(current_game_id), "%s", game_id_value->valuestring); } @@ -191,18 +177,14 @@ game_t *parse_game(const char *json_string) { goto cleanup; } - obs_log(LOG_DEBUG, "Game is %s (%s)", current_game_title, current_game_id); + obs_log(LOG_DEBUG, "Game ID is %s", current_game_id); - game = bzalloc(sizeof(game_t)); - game->id = bstrdup(current_game_id); - game->title = bstrdup(current_game_title); - /* TODO Figure out if it is Xbox one, Xbox series S, Xbox series X */ - game->console_name = bstrdup("xbox"); + game_id = bstrdup(current_game_id); cleanup: free_json_memory((void **)&json_root); - return game; + return game_id; } xbox_achievement_progress_t *parse_achievement_progress(const char *json_string) { diff --git a/src/text/parsers.h b/src/text/parsers.h index e40b8a5..71ca29f 100644 --- a/src/text/parsers.h +++ b/src/text/parsers.h @@ -52,7 +52,7 @@ bool is_achievement_message(const char *json_string); * @param json_string NUL-terminated JSON string. * @return Newly allocated game_t on success; NULL on failure. */ -game_t *parse_game(const char *json_string); +char *parse_presence_game_id(const char *json_string); /** * @brief Parse achievement progress information from a JSON message. diff --git a/test/test_parsers.c b/test/test_parsers.c index 6e05ff5..98f0eea 100644 --- a/test/test_parsers.c +++ b/test/test_parsers.c @@ -132,7 +132,7 @@ static void parse_game__message_is_null_null_returned(void) { const char *message = NULL; // Act. - game_t *actual = parse_game(message); + char *actual = parse_presence_game_id(message); // Assert. TEST_ASSERT_NULL(actual); @@ -143,7 +143,7 @@ static void parse_game__message_is_empty_null_returned(void) { const char *message = " "; // Act. - game_t *actual = parse_game(message); + char *actual = parse_presence_game_id(message); // Assert. TEST_ASSERT_NULL(actual); @@ -154,7 +154,7 @@ static void parse_game__message_is_not_json_null_returned(void) { const char *message = "this-is-not-a-json"; // Act. - game_t *actual = parse_game(message); + char *actual = parse_presence_game_id(message); // Assert. TEST_ASSERT_NULL(actual); @@ -166,7 +166,7 @@ static void parse_game__message_is_achievement_null_returned(void) { "{\"serviceConfigId\":\"00000000-0000-0000-0000-00007972ac43\",\"progression\":[{\"id\":\"1\",\"requirements\":[{\"id\":\"00000000-0000-0000-0000-000000000000\",\"current\":\"100\",\"target\":\"100\",\"operationType\":\"Sum\",\"valueType\":\"Integer\",\"ruleParticipationType\":\"Individual\"}],\"progressState\":\"Achieved\",\"timeUnlocked\":\"2026-01-18T02:48:21.707Z\"}],\"contractVersion\":1}"; // Act. - game_t *actual = parse_game(message); + char *actual = parse_presence_game_id(message); // Assert. TEST_ASSERT_NULL(actual); @@ -178,12 +178,11 @@ static void parse_game__message_is_presence_game_returned(void) { "{\"devicetype\":\"XboxOne\",\"titleid\":0,\"string1\":\"The Outer Worlds 2\",\"string2\":\"\",\"presenceState\":\"Online\",\"presenceText\":\"The Outer Worlds 2\",\"presenceDetails\":[{\"isBroadcasting\":false,\"device\":\"Scarlett\",\"presenceText\":\"Accueil\",\"state\":\"Active\",\"titleId\":\"750323071\",\"isGame\":false,\"isPrimary\":false,\"richPresenceText\":\"\"},{\"isBroadcasting\":false,\"device\":\"Scarlett\",\"presenceText\":\"The Outer Worlds 2\",\"state\":\"Active\",\"titleId\":\"1879711255\",\"isGame\":true,\"isPrimary\":true,\"richPresenceText\":\"\"}],\"xuid\":2533274953419891}"; // Act. - game_t *actual = parse_game(message); + char *actual = parse_presence_game_id(message); // Assert. TEST_ASSERT_NOT_NULL(actual); - TEST_ASSERT_EQUAL_STRING(actual->id, "1879711255"); - TEST_ASSERT_EQUAL_STRING(actual->title, "The Outer Worlds 2"); + TEST_ASSERT_EQUAL_STRING("1879711255", actual); } // Test parse_achievement From 8cde15b16cb581b5a2e8a931a3421e718cce6acd Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Fri, 3 Apr 2026 09:24:15 -0400 Subject: [PATCH 21/29] Add unit tests for `monitoring_service`; adjust identity notification logic and add `UNUSED_PARAMETER` macro --- CMakeLists.txt | 44 ++++++++++++++++++++++++++- src/integrations/monitoring_service.c | 4 ++- test/stubs/obs-module.h | 6 ++++ 3 files changed, 52 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index d3d52bb..467692e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -725,6 +725,48 @@ if(BUILD_TESTING) target_link_test_deps(test_parsers) + # ------------------------------ + # test_monitoring_service + # ------------------------------ + add_executable( + test_monitoring_service + test/test_monitoring_service.c + ${unity_SOURCE_DIR}/src/unity.c + src/integrations/monitoring_service.c + src/common/achievement.c + src/common/game.c + src/common/gamerscore.c + src/common/identity.c + src/common/token.c + src/integrations/xbox/contracts/xbox_achievement.c + src/integrations/xbox/contracts/xbox_achievement_progress.c + src/integrations/xbox/contracts/xbox_unlocked_achievement.c + src/integrations/xbox/entities/xbox_identity.c + test/stubs/bmem_stub.c + test/stubs/integrations/xbox_monitor_stub.c + test/stubs/integrations/retro_achievements_monitor_stub.c + test/stubs/io/cache_stub.c + ) + + add_test(NAME test_monitoring_service COMMAND test_monitoring_service) + + if(ENABLE_COVERAGE) + enable_coverage(test_monitoring_service) + endif() + + target_include_directories( + test_monitoring_service + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR}/test/stubs + ${CMAKE_CURRENT_SOURCE_DIR}/src + ${unity_SOURCE_DIR}/src + ${CMAKE_CURRENT_SOURCE_DIR}/test + ) + + target_compile_definitions(test_monitoring_service PRIVATE UNITY_INCLUDE_CONFIG_H) + + target_link_test_deps(test_monitoring_service) + # ------------------------------ # test_xbox_session # ------------------------------ @@ -811,6 +853,6 @@ if(BUILD_TESTING) # Coverage target (must be after all test targets are defined) # ------------------------------ if(ENABLE_COVERAGE) - add_coverage_target(test_encoder test_crypto test_convert test_parsers test_xbox_session test_types) + add_coverage_target(test_encoder test_crypto test_convert test_parsers test_monitoring_service test_xbox_session test_types) endif() endif() diff --git a/src/integrations/monitoring_service.c b/src/integrations/monitoring_service.c index 822a8fa..41842fd 100644 --- a/src/integrations/monitoring_service.c +++ b/src/integrations/monitoring_service.c @@ -206,7 +206,9 @@ static void on_xbox_connection_changed(bool connected, const char *error_message g_xbox_identity->score, g_xbox_identity->avatar_url ? g_xbox_identity->avatar_url : "(none)"); - notify_active_identity(get_current_active_identity()); + /* Do not notify here — identity is only meaningful once a game + * is being played. The notification will fire from + * on_xbox_game_played when the first game event arrives. */ } } } else { diff --git a/test/stubs/obs-module.h b/test/stubs/obs-module.h index 290ff59..d68a7c2 100644 --- a/test/stubs/obs-module.h +++ b/test/stubs/obs-module.h @@ -4,3 +4,9 @@ /* Include the memory functions */ #include + +/* OBS utility macro used throughout the plugin source. */ +#ifndef UNUSED_PARAMETER +#define UNUSED_PARAMETER(param) (void)(param) +#endif + From 349d5a3fdf3747a8ae99a1ef2f27fe6f76e0214d Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Fri, 3 Apr 2026 10:00:39 -0400 Subject: [PATCH 22/29] Add RetroAchievements integration and unify monitoring logic for Xbox and Retro sources; rename and generalize source types --- README.md | 101 +++++++++++++++++++------- src/integrations/monitoring_service.c | 45 +++++++----- src/sources/achievement_description.c | 2 +- src/sources/achievement_icon.c | 2 +- src/sources/achievement_name.c | 2 +- src/sources/achievements_count.c | 2 +- src/sources/gamerpic.c | 2 +- src/sources/gamerscore.c | 2 +- src/sources/gamertag.c | 2 +- test/stubs/obs-module.h | 1 - 10 files changed, 107 insertions(+), 54 deletions(-) diff --git a/README.md b/README.md index 1a52b5a..41038b3 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,13 @@ # OBS Achievements Tracker -A cross-platform OBS Studio plugin that displays Xbox Live profile data, current game information, and achievement progress for the signed-in Xbox user. +A cross-platform OBS Studio plugin that displays Xbox Live and RetroAchievements profile data, current game information, and achievement progress for the signed-in user. ## Features - **Global Xbox account configuration dialog** using Microsoft's device-code flow - **Real-time game and achievement tracking** through Xbox Live RTA monitoring when available +- **RetroAchievements integration** via a local RetroArch WebSocket server for retro game tracking +- **Unified monitoring service** that handles both Xbox and RetroAchievements sessions with last-game-received priority - **Profile sources** for gamertag, gamerpic, and gamerscore - **Achievement sources** for name, description, icon, and progress count - **Customizable text sources** with persisted font and gradient color settings @@ -59,9 +61,9 @@ After installation, restart OBS Studio. 3. Use the global Xbox Account dialog to review the current status and click **Sign in with Xbox**. 4. A browser window opens for Microsoft account authentication. 5. Once authentication succeeds, return to OBS. The dialog will update to show the connected account. -6. Add any of the Xbox display sources you want to use in your scene. +6. Add any of the display sources you want to use in your scene. -All Xbox sources in the plugin share the same authenticated account. +All Xbox sources in the plugin share the same authenticated account. RetroAchievements sources connect automatically when a RetroArch WebSocket server is detected on the local machine. ![Xbox Account dialog](plugin-xbox-account.png) @@ -69,9 +71,9 @@ All Xbox sources in the plugin share the same authenticated account. #### Account & profile -- **Xbox Gamertag**: text source for the current gamertag -- **Xbox Gamerpic**: image source for the current gamerpic -- **Xbox Gamerscore**: text source for the current gamerscore +- **Xbox Gamertag**: text source for the current gamertag or RetroAchievements display name +- **Xbox Gamerpic**: image source for the current gamerpic or RetroAchievements avatar +- **Xbox Gamerscore**: text source for the current gamerscore or RetroAchievements score Account sign-in and sign-out are managed globally from **Tools** → **Xbox Account**. @@ -93,6 +95,14 @@ When Xbox Live monitoring is available, the plugin subscribes to: - current game / presence changes - achievement progression updates +When a local RetroArch WebSocket server is detected, the plugin additionally tracks: + +- current retro game changes +- achievement list and unlock updates +- user identity (display name, score, avatar) + +The active identity shown in profile sources is determined by whichever integration last reported a game change. If only one integration has an active game, that integration's identity is used. + Profile-derived sources such as gamerscore, gamertag, and gamerpic refresh from the authenticated session data used by the plugin. --- @@ -104,27 +114,63 @@ Profile-derived sources such as gamerscore, gamertag, and gamerpic refresh from ```text achievements-tracker-plugin/ ├── src/ -│ ├── main.c # OBS module entry point -│ ├── common/ # Shared types and value objects -│ ├── crypto/ # Proof-of-possession signing helpers -│ ├── diagnostics/ # Logging helpers -│ ├── drawing/ # Color and image rendering helpers -│ ├── encoding/ # Base64 helpers -│ ├── io/ # Persistent state and cache helpers -│ ├── net/ # Browser, HTTP, and JSON helpers -│ ├── oauth/ # Xbox/Microsoft authentication flow +│ ├── main.c # OBS module entry point +│ ├── common/ # Shared platform-agnostic types and value objects +│ │ ├── achievement.{c,h} # Generic achievement abstraction +│ │ ├── game.{c,h} # Generic game abstraction +│ │ ├── gamerscore.{c,h} # Gamerscore value object +│ │ ├── identity.{c,h} # Unified user identity (Xbox + RetroAchievements) +│ │ └── token.{c,h} # Auth token value object +│ ├── crypto/ # Proof-of-possession signing helpers +│ ├── diagnostics/ # Logging helpers +│ ├── drawing/ # Color and image rendering helpers +│ ├── encoding/ # Base64 helpers +│ ├── integrations/ +│ │ ├── monitoring_service.{c,h} # Unified event fan-out for all integrations +│ │ ├── retro-achievements/ # RetroAchievements WebSocket monitor +│ │ └── xbox/ +│ │ ├── account_manager.{c,h} # Xbox account lifecycle +│ │ ├── contracts/ # Xbox-specific wire types (achievements, progress) +│ │ ├── entities/ # Xbox identity and session value objects +│ │ ├── oauth/ # Xbox/Microsoft authentication flow +│ │ ├── xbox_client.{c,h} # Xbox REST API client +│ │ ├── xbox_monitor.{c,h} # Xbox Live RTA WebSocket monitor +│ │ └── xbox_session.{c,h} # Xbox session state +│ ├── io/ # Persistent state and cache helpers +│ ├── net/ +│ │ ├── browser/ # System browser launcher +│ │ ├── http/ # HTTP client helpers +│ │ └── json/ # JSON helpers │ ├── sources/ -│ │ ├── common/ # Shared text/image source helpers -│ │ └── xbox/ # OBS source implementations -│ ├── text/ # Conversion and parsing helpers -│ ├── time/ # Time parsing utilities -│ ├── util/ # UUID and portability helpers -│ └── xbox/ # Xbox client, monitor, and session logic -├── test/ # Unity-based unit tests and stubs -├── data/ # Locale files and effects/resources -├── external/cjson/ # Vendored cJSON -├── cmake/ # Platform-specific CMake helpers -├── .github/ # CI workflows and composite actions +│ │ ├── common/ # Shared text/image source helpers and achievement cycle +│ │ ├── achievement_description.{c,h} +│ │ ├── achievement_icon.{c,h} +│ │ ├── achievement_name.{c,h} +│ │ ├── achievements_count.{c,h} +│ │ ├── game_cover.{c,h} +│ │ ├── gamerpic.{c,h} +│ │ ├── gamerscore.{c,h} +│ │ └── gamertag.{c,h} +│ ├── text/ # Conversion and parsing helpers +│ ├── time/ # Time parsing utilities +│ └── util/ # UUID and portability helpers +├── test/ # Unity-based unit tests and stubs +│ ├── stubs/ +│ │ ├── integrations/ # Stubs for xbox_monitor and retro_achievements_monitor +│ │ ├── io/ # Stub for cache +│ │ ├── xbox/ # Stub for xbox_client +│ │ └── ... +│ ├── test_convert.c +│ ├── test_crypto.c +│ ├── test_encoder.c +│ ├── test_monitoring_service.c # Tests for the unified monitoring service +│ ├── test_parsers.c +│ ├── test_types.c +│ └── test_xbox_session.c +├── data/ # Locale files and effects/resources +├── external/cjson/ # Vendored cJSON +├── cmake/ # Platform-specific CMake helpers +├── .github/ # CI workflows and composite actions ├── CMakeLists.txt ├── CMakePresets.json └── buildspec.json @@ -421,6 +467,9 @@ cmake --build build_macos_dev --target test_convert --config Debug cmake --build build_macos_dev --target test_parsers --config Debug ./build_macos_dev/Debug/test_parsers + +cmake --build build_macos_dev --target test_monitoring_service --config Debug +./build_macos_dev/Debug/test_monitoring_service ``` --- diff --git a/src/integrations/monitoring_service.c b/src/integrations/monitoring_service.c index 41842fd..a4a2e46 100644 --- a/src/integrations/monitoring_service.c +++ b/src/integrations/monitoring_service.c @@ -93,9 +93,8 @@ static game_t *g_retro_game = NULL; static identity_source_t g_last_game_source = IDENTITY_SOURCE_XBOX; static const identity_t *get_current_active_identity(void) { - /* Return the identity for whichever integration last reported a game. - * Fall back to the other source if the primary one has no identity yet, - * and return NULL only when neither source has an active game. */ + /* When both sources have an active game, the one that reported a game + * most recently takes priority. */ if (g_last_game_source == IDENTITY_SOURCE_XBOX) { if (g_xbox_game && g_xbox_identity) return g_xbox_identity; @@ -108,6 +107,7 @@ static const identity_t *get_current_active_identity(void) { return g_xbox_identity; } + /* No game is active on either source. */ return NULL; } @@ -206,17 +206,17 @@ static void on_xbox_connection_changed(bool connected, const char *error_message g_xbox_identity->score, g_xbox_identity->avatar_url ? g_xbox_identity->avatar_url : "(none)"); - /* Do not notify here — identity is only meaningful once a game - * is being played. The notification will fire from - * on_xbox_game_played when the first game event arrives. */ + /* Identity is cached here but not notified yet — a game must + * start before the identity becomes active. The notification + * will fire from on_xbox_game_played. */ } } } else { free_identity_t(&g_xbox_identity); free_game(&g_xbox_game); - /* Xbox is gone – re-evaluate: retro identity takes over if a retro - * game is active, otherwise sources will show "Not connected". */ + /* Xbox disconnected — re-evaluate the active identity. If a retro + * game is active it will take over; otherwise NULL is notified. */ notify_active_identity(get_current_active_identity()); } @@ -235,9 +235,10 @@ static void on_xbox_achievements_progressed(const gamerscore_t *g refresh_xbox_score(g_xbox_identity); obs_log(LOG_INFO, "[MonitoringService] Xbox score updated: %u", g_xbox_identity->score); - /* Refresh the cached generic achievements */ + /* Refresh the cached generic achievements. */ replace_current_achievements(xbox_to_achievements(get_current_game_achievements())); + /* Re-notify so subscribers receive the updated score. */ if (g_xbox_game) notify_active_identity(get_current_active_identity()); } @@ -254,13 +255,12 @@ static void on_xbox_game_played(const game_t *game) { g_last_game_source = IDENTITY_SOURCE_XBOX; - /* Clear cached achievements — they belong to the previous game */ + /* Clear cached achievements — they belong to the previous game. */ replace_current_achievements(NULL); - /* Use get_current_active_identity() rather than g_xbox_identity directly: - * during the initial connection, the game-played notification may arrive - * before the connection-changed notification (which sets g_xbox_identity), - * so g_xbox_identity might still be NULL at this point. */ + /* Notify with the current active identity. g_xbox_identity may be NULL + * here if the game-played event arrives before the connection-changed + * event (which caches the identity), in which case NULL is notified. */ notify_active_identity(get_current_active_identity()); notify_game_played(g_xbox_game); @@ -299,8 +299,9 @@ static void on_retro_user(const retro_user_t *user) { g_retro_identity ? g_retro_identity->name : "(null)", g_retro_identity ? g_retro_identity->avatar_url : "(none)"); - /* Fire if a retro game is already active so sources update regardless - * of whether the user message arrives before or after the game message. */ + /* The user message may arrive before or after the game message. Only + * notify if a retro game is already active and retro is the last game + * source, otherwise the notification will come from on_retro_game_playing. */ if (g_retro_game && g_last_game_source == IDENTITY_SOURCE_RETRO) notify_active_identity(get_current_active_identity()); } @@ -322,11 +323,12 @@ static void on_retro_game_playing(const retro_game_t *retro_game) { g_last_game_source = IDENTITY_SOURCE_RETRO; - /* Clear cached achievements — they belong to the previous game */ + /* Clear cached achievements — they belong to the previous game. */ replace_current_achievements(NULL); - /* This is now the most recent game source, so get_current_active_identity() - * will return the retro identity. */ + /* Retro is now the last game source. get_current_active_identity() will + * return the retro identity if it is cached, or NULL if the user message + * has not arrived yet (it will re-notify via on_retro_user). */ notify_active_identity(get_current_active_identity()); notify_game_played(g_retro_game); @@ -334,12 +336,15 @@ static void on_retro_game_playing(const retro_game_t *retro_game) { static void on_retro_no_game(void) { free_game(&g_retro_game); + /* Clear achievements and notify game-played subscribers that no game is + * active. The active-identity is not re-notified here; callers can query + * monitoring_get_current_active_identity() to confirm it is now NULL. */ replace_current_achievements(NULL); notify_game_played(NULL); } /** - * @brief RetroAchievements callback invoked when the achievements list is received. + * @brief RetroAchievements callback invoked when the achievements' list is received. */ static void on_retro_achievements(const retro_achievement_t *achievements, size_t count) { replace_current_achievements(retro_to_achievements(achievements, count)); diff --git a/src/sources/achievement_description.c b/src/sources/achievement_description.c index 30256c9..abe0e35 100644 --- a/src/sources/achievement_description.c +++ b/src/sources/achievement_description.c @@ -270,7 +270,7 @@ static obs_properties_t *source_get_properties(void *data) { static const char *source_get_name(void *unused) { UNUSED_PARAMETER(unused); - return "Xbox Achievement (Description)"; + return "Achievement (Description)"; } /** diff --git a/src/sources/achievement_icon.c b/src/sources/achievement_icon.c index b5f17fa..1faf01d 100644 --- a/src/sources/achievement_icon.c +++ b/src/sources/achievement_icon.c @@ -203,7 +203,7 @@ static const char *source_get_name(void *unused) { UNUSED_PARAMETER(unused); - return "Xbox Achievement (Icon)"; + return "Achievement (Icon)"; } /** diff --git a/src/sources/achievement_name.c b/src/sources/achievement_name.c index 407e50e..576cf70 100644 --- a/src/sources/achievement_name.c +++ b/src/sources/achievement_name.c @@ -352,7 +352,7 @@ static obs_properties_t *source_get_properties(void *data) { static const char *source_get_name(void *unused) { UNUSED_PARAMETER(unused); - return "Xbox Achievement (Name)"; + return "Achievement (Name)"; } /** diff --git a/src/sources/achievements_count.c b/src/sources/achievements_count.c index 741807d..cd8e7d1 100644 --- a/src/sources/achievements_count.c +++ b/src/sources/achievements_count.c @@ -189,7 +189,7 @@ static obs_properties_t *source_get_properties(void *data) { static const char *source_get_name(void *unused) { UNUSED_PARAMETER(unused); - return "Xbox Achievements Count"; + return "Achievements Count"; } /** diff --git a/src/sources/gamerpic.c b/src/sources/gamerpic.c index 642e8ae..62a16f6 100644 --- a/src/sources/gamerpic.c +++ b/src/sources/gamerpic.c @@ -61,7 +61,7 @@ static const char *source_get_name(void *unused) { UNUSED_PARAMETER(unused); - return "Xbox Gamerpic"; + return "Gamerpic"; } /** diff --git a/src/sources/gamerscore.c b/src/sources/gamerscore.c index 0f62a43..28427bd 100644 --- a/src/sources/gamerscore.c +++ b/src/sources/gamerscore.c @@ -171,7 +171,7 @@ static obs_properties_t *source_get_properties(void *data) { static const char *source_get_name(void *unused) { UNUSED_PARAMETER(unused); - return "Xbox Gamerscore"; + return "Gamerscore"; } /** diff --git a/src/sources/gamertag.c b/src/sources/gamertag.c index 0e9dae1..bf4c673 100644 --- a/src/sources/gamertag.c +++ b/src/sources/gamertag.c @@ -112,7 +112,7 @@ static obs_properties_t *source_get_properties(void *data) { static const char *source_get_name(void *unused) { UNUSED_PARAMETER(unused); - return "Xbox Gamertag"; + return "Gamertag"; } /** OBS source type definition for Xbox Gamertag display. */ diff --git a/test/stubs/obs-module.h b/test/stubs/obs-module.h index d68a7c2..3c80849 100644 --- a/test/stubs/obs-module.h +++ b/test/stubs/obs-module.h @@ -9,4 +9,3 @@ #ifndef UNUSED_PARAMETER #define UNUSED_PARAMETER(param) (void)(param) #endif - From 5fb4b44da36cb37962d6790deccd60ca7f5ae248 Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Fri, 3 Apr 2026 10:04:04 -0400 Subject: [PATCH 23/29] Add comprehensive unit tests for `monitoring_service` to verify active identity notifications and source prioritization across Xbox and RetroAchievements integrations. --- test/test_monitoring_service.c | 465 +++++++++++++++++++++++++++++++++ 1 file changed, 465 insertions(+) create mode 100644 test/test_monitoring_service.c diff --git a/test/test_monitoring_service.c b/test/test_monitoring_service.c new file mode 100644 index 0000000..187a6b1 --- /dev/null +++ b/test/test_monitoring_service.c @@ -0,0 +1,465 @@ +/** + * @file test_monitoring_service.c + * @brief Unit tests for monitoring_service.c — active-identity notifications. + * + * The xbox_monitor, xbox_client, and retro_achievements_monitor are fully + * stubbed. Tests drive their callbacks directly via the mock_* helpers and + * assert that on_monitoring_active_identity_changed_t subscribers receive the + * correct identity (or NULL) in every scenario. + * + * Scenarios covered: + * Xbox: + * 1. Xbox connects without a game → no identity notification + * 2. Xbox connects, game played → identity notified + * 3. Xbox game played before connection → NULL (identity not cached yet) + * 4. Xbox disconnects → NULL notified + * 5. Xbox disconnects with retro game active → retro identity takes over + * 6. Xbox game stops (game_played NULL) → active identity becomes NULL + * + * RetroAchievements: + * 7. Retro user + game → retro identity notified + * 8. Retro game before user → NULL, then identity once user arrives + * 9. Retro user before game → NULL, then identity once game arrives + * 10. Retro no_game → active identity becomes NULL + * 11. Retro no_user → active identity becomes NULL + * 12. Retro game stops (no_game) after active identity → NULL notified + * + * Last-game-source priority: + * 13. Xbox game then retro game → retro identity active + * 14. Retro game then Xbox game → Xbox identity active + * 15. Xbox game, then retro game, then Xbox game again → Xbox identity active + */ + +#include "unity.h" + +#include "test/stubs/integrations/xbox_monitor_stub.h" +#include "test/stubs/integrations/retro_achievements_monitor_stub.h" + +#include "integrations/monitoring_service.h" +#include "integrations/xbox/entities/xbox_identity.h" +#include "common/game.h" +#include "common/token.h" + +#include +#include + +/* ------------------------------------------------------------------------- + * Helpers — build lightweight test fixtures + * ---------------------------------------------------------------------- */ + +static xbox_identity_t *make_xbox_identity(const char *gamertag) { + token_t *token = bzalloc(sizeof(token_t)); + token->value = bstrdup("test-token"); + token->expires = 9999999999LL; + + xbox_identity_t *id = bzalloc(sizeof(xbox_identity_t)); + id->gamertag = bstrdup(gamertag); + id->xid = bstrdup("xuid-123"); + id->uhs = bstrdup("uhs-abc"); + id->token = token; + return id; +} + +static game_t *make_xbox_game(const char *id, const char *title) { + game_t *g = bzalloc(sizeof(game_t)); + g->id = bstrdup(id); + g->title = bstrdup(title); + return g; +} + +static void fill_retro_user(retro_user_t *u, const char *username, const char *display_name) { + memset(u, 0, sizeof(*u)); + strncpy(u->username, username, sizeof(u->username) - 1); + strncpy(u->display_name, display_name, sizeof(u->display_name) - 1); + u->score = 1500; + u->score_softcore = 800; +} + +static void fill_retro_game(retro_game_t *g, const char *id, const char *name) { + memset(g, 0, sizeof(*g)); + strncpy(g->game_id, id, sizeof(g->game_id) - 1); + strncpy(g->game_name, name, sizeof(g->game_name) - 1); + strncpy(g->console_name, "SNES", sizeof(g->console_name) - 1); +} + +/* ------------------------------------------------------------------------- + * Subscriber spy + * ---------------------------------------------------------------------- */ + +static int s_identity_cb_count = 0; +static const identity_t *s_last_identity = NULL; + +static void on_identity_changed(const identity_t *identity) { + s_identity_cb_count++; + s_last_identity = identity; +} + +/* ------------------------------------------------------------------------- + * setUp / tearDown + * ---------------------------------------------------------------------- */ + +void setUp(void) { + s_identity_cb_count = 0; + s_last_identity = NULL; + + mock_xbox_monitor_reset(); + mock_retro_monitor_reset(); + + monitoring_start(); + monitoring_subscribe_active_identity(on_identity_changed); + + /* Consume the immediate callback fired by monitoring_subscribe_active_identity + * (returns current identity, which is NULL at start). */ + s_identity_cb_count = 0; + s_last_identity = NULL; +} + +void tearDown(void) { + monitoring_stop(); + mock_xbox_monitor_reset(); + mock_retro_monitor_reset(); +} + +/* ========================================================================= + * Xbox tests + * ====================================================================== */ + +/* 1. Xbox connects without a game → no identity notification yet */ +static void monitoring_subscribe_active_identity__xbox_connected_without_game__identity_not_notified(void) { + + mock_xbox_monitor_set_identity(make_xbox_identity("MasterChief")); + + mock_xbox_monitor_fire_connection_changed(true, NULL); + + TEST_ASSERT_EQUAL_INT(0, s_identity_cb_count); + TEST_ASSERT_NULL(s_last_identity); +} + +/* 2. Xbox connects, then game played → identity is still Xbox */ +static void monitoring_subscribe_active_identity__xbox_connected_and_game_played__xbox_identity_notified(void) { + mock_xbox_monitor_set_identity(make_xbox_identity("MasterChief")); + mock_xbox_monitor_fire_connection_changed(true, NULL); + + s_identity_cb_count = 0; + + game_t *game = make_xbox_game("game-1", "Halo Infinite"); + mock_xbox_monitor_fire_game_played(game); + free_game(&game); + + TEST_ASSERT_EQUAL_INT(1, s_identity_cb_count); + TEST_ASSERT_NOT_NULL(s_last_identity); + TEST_ASSERT_EQUAL_STRING("MasterChief", s_last_identity->name); +} + +/* 3. Game played before connection (no identity cached yet) → NULL */ +static void monitoring_subscribe_active_identity__xbox_game_played_before_connect__null_notified(void) { + /* No identity set in the stub — state_get_xbox_identity() returns NULL. */ + game_t *game = make_xbox_game("game-1", "Halo Infinite"); + mock_xbox_monitor_fire_game_played(game); + free_game(&game); + + TEST_ASSERT_EQUAL_INT(1, s_identity_cb_count); + TEST_ASSERT_NULL(s_last_identity); +} + +/* 4. Xbox disconnects → NULL notified */ +static void monitoring_subscribe_active_identity__xbox_disconnected__null_notified(void) { + mock_xbox_monitor_set_identity(make_xbox_identity("MasterChief")); + mock_xbox_monitor_fire_connection_changed(true, NULL); + s_identity_cb_count = 0; + + mock_xbox_monitor_fire_connection_changed(false, NULL); + + TEST_ASSERT_EQUAL_INT(1, s_identity_cb_count); + TEST_ASSERT_NULL(s_last_identity); +} + +/* 5. Xbox disconnects while a retro game is active → retro identity takes over */ +static void +monitoring_subscribe_active_identity__xbox_disconnected_with_retro_game_active__retro_identity_notified(void) { + /* Set up retro first */ + retro_user_t retro_user; + fill_retro_user(&retro_user, "RetroUser", "Retro User"); + mock_retro_monitor_fire_connection_changed(true, NULL); + mock_retro_monitor_fire_user(&retro_user); + + retro_game_t retro_game; + fill_retro_game(&retro_game, "rom-crc-01", "Super Metroid"); + mock_retro_monitor_fire_game_playing(&retro_game); + + /* Then Xbox connects and plays */ + mock_xbox_monitor_set_identity(make_xbox_identity("MasterChief")); + mock_xbox_monitor_fire_connection_changed(true, NULL); + + game_t *xbox_game = make_xbox_game("game-1", "Halo Infinite"); + mock_xbox_monitor_fire_game_played(xbox_game); + free_game(&xbox_game); + + s_identity_cb_count = 0; + + /* Xbox disconnects → retro should become active */ + mock_xbox_monitor_fire_connection_changed(false, NULL); + + TEST_ASSERT_EQUAL_INT(1, s_identity_cb_count); + TEST_ASSERT_NOT_NULL(s_last_identity); + TEST_ASSERT_EQUAL_STRING("Retro User", s_last_identity->name); + TEST_ASSERT_EQUAL_INT(IDENTITY_SOURCE_RETRO, s_last_identity->source); +} + +/* 6. Xbox game stops (game_played NULL) → active identity becomes NULL */ +static void monitoring_subscribe_active_identity__xbox_no_game__null_notified(void) { + mock_xbox_monitor_set_identity(make_xbox_identity("MasterChief")); + mock_xbox_monitor_fire_connection_changed(true, NULL); + + game_t *game = make_xbox_game("game-1", "Halo Infinite"); + mock_xbox_monitor_fire_game_played(game); + free_game(&game); + + s_identity_cb_count = 0; + + /* Xbox signals no game by firing game_played with NULL */ + mock_xbox_monitor_fire_game_played(NULL); + + TEST_ASSERT_EQUAL_INT(1, s_identity_cb_count); + TEST_ASSERT_NULL(s_last_identity); +} + +/* ========================================================================= + * RetroAchievements tests + * ====================================================================== */ + +/* 7. Retro user + game → retro identity notified */ +static void monitoring_subscribe_active_identity__retro_user_and_game__retro_identity_notified(void) { + retro_user_t user; + fill_retro_user(&user, "octelys", "Octelys"); + mock_retro_monitor_fire_connection_changed(true, NULL); + mock_retro_monitor_fire_user(&user); + + retro_game_t game; + fill_retro_game(&game, "crc-abc", "Chrono Trigger"); + mock_retro_monitor_fire_game_playing(&game); + + TEST_ASSERT_NOT_NULL(s_last_identity); + TEST_ASSERT_EQUAL_STRING("Octelys", s_last_identity->name); + TEST_ASSERT_EQUAL_INT(IDENTITY_SOURCE_RETRO, s_last_identity->source); +} + +/* 8. Retro game arrives before user: NULL while waiting, correct identity after */ +static void monitoring_subscribe_active_identity__retro_game_before_user__null_then_identity_notified(void) { + retro_game_t game; + fill_retro_game(&game, "crc-abc", "Chrono Trigger"); + mock_retro_monitor_fire_game_playing(&game); + + /* No user yet → NULL */ + TEST_ASSERT_EQUAL_INT(1, s_identity_cb_count); + TEST_ASSERT_NULL(s_last_identity); + + s_identity_cb_count = 0; + + /* User arrives → identity now known */ + retro_user_t user; + fill_retro_user(&user, "octelys", "Octelys"); + mock_retro_monitor_fire_user(&user); + + TEST_ASSERT_EQUAL_INT(1, s_identity_cb_count); + TEST_ASSERT_NOT_NULL(s_last_identity); + TEST_ASSERT_EQUAL_STRING("Octelys", s_last_identity->name); +} + +/* 9. Retro user arrives before game: no notification until the game arrives */ +static void monitoring_subscribe_active_identity__retro_user_before_game__identity_notified_on_game(void) { + retro_user_t user; + fill_retro_user(&user, "octelys", "Octelys"); + mock_retro_monitor_fire_connection_changed(true, NULL); + mock_retro_monitor_fire_user(&user); + + /* User arrived but no game yet → no active-identity notification */ + TEST_ASSERT_EQUAL_INT(0, s_identity_cb_count); + + /* Game arrives → identity notified */ + retro_game_t game; + fill_retro_game(&game, "crc-abc", "Chrono Trigger"); + mock_retro_monitor_fire_game_playing(&game); + + TEST_ASSERT_EQUAL_INT(1, s_identity_cb_count); + TEST_ASSERT_NOT_NULL(s_last_identity); + TEST_ASSERT_EQUAL_STRING("Octelys", s_last_identity->name); +} + +/* 10. Retro no_game → active identity becomes NULL */ +static void monitoring_subscribe_active_identity__retro_no_game__null_returned(void) { + retro_user_t user; + fill_retro_user(&user, "octelys", "Octelys"); + mock_retro_monitor_fire_connection_changed(true, NULL); + mock_retro_monitor_fire_user(&user); + + retro_game_t game; + fill_retro_game(&game, "crc-abc", "Chrono Trigger"); + mock_retro_monitor_fire_game_playing(&game); + + s_identity_cb_count = 0; + mock_retro_monitor_fire_no_game(); + + /* no_game clears the game; next notify_game_played(NULL) should follow. + * The active-identity callback itself is not fired by on_retro_no_game, + * but monitoring_get_current_active_identity() must now return NULL. */ + TEST_ASSERT_NULL(monitoring_get_current_active_identity()); +} + +/* 11. Retro no_user → active identity becomes NULL */ +static void monitoring_subscribe_active_identity__retro_no_user__null_returned(void) { + retro_user_t user; + fill_retro_user(&user, "octelys", "Octelys"); + mock_retro_monitor_fire_connection_changed(true, NULL); + mock_retro_monitor_fire_user(&user); + + retro_game_t game; + fill_retro_game(&game, "crc-abc", "Chrono Trigger"); + mock_retro_monitor_fire_game_playing(&game); + + s_identity_cb_count = 0; + mock_retro_monitor_fire_no_user(); + + /* Identity is gone → current should be NULL */ + TEST_ASSERT_NULL(monitoring_get_current_active_identity()); +} + +/* 12. Retro game stops (no_game) after having an active identity → NULL notified */ +static void monitoring_subscribe_active_identity__retro_no_game_after_active__null_notified(void) { + retro_user_t user; + fill_retro_user(&user, "octelys", "Octelys"); + mock_retro_monitor_fire_connection_changed(true, NULL); + mock_retro_monitor_fire_user(&user); + + retro_game_t game; + fill_retro_game(&game, "crc-abc", "Chrono Trigger"); + mock_retro_monitor_fire_game_playing(&game); + + /* Verify identity was active */ + TEST_ASSERT_NOT_NULL(s_last_identity); + TEST_ASSERT_EQUAL_STRING("Octelys", s_last_identity->name); + + s_identity_cb_count = 0; + s_last_identity = NULL; + + mock_retro_monitor_fire_no_game(); + + /* After no_game the active identity must be NULL */ + TEST_ASSERT_NULL(monitoring_get_current_active_identity()); +} + +/* ========================================================================= + * Last-game-source priority tests + * ====================================================================== */ + +/* 13. Xbox game then retro game → retro identity is active */ +static void monitoring_subscribe_active_identity__xbox_game_then_retro_game__retro_identity_active(void) { + mock_xbox_monitor_set_identity(make_xbox_identity("MasterChief")); + mock_xbox_monitor_fire_connection_changed(true, NULL); + + game_t *xbox_game = make_xbox_game("game-1", "Halo Infinite"); + mock_xbox_monitor_fire_game_played(xbox_game); + free_game(&xbox_game); + + /* Now retro connects */ + retro_user_t user; + fill_retro_user(&user, "octelys", "Octelys"); + mock_retro_monitor_fire_connection_changed(true, NULL); + mock_retro_monitor_fire_user(&user); + + s_identity_cb_count = 0; + + retro_game_t retro_game; + fill_retro_game(&retro_game, "crc-abc", "Chrono Trigger"); + mock_retro_monitor_fire_game_playing(&retro_game); + + TEST_ASSERT_EQUAL_INT(1, s_identity_cb_count); + TEST_ASSERT_NOT_NULL(s_last_identity); + TEST_ASSERT_EQUAL_STRING("Octelys", s_last_identity->name); + TEST_ASSERT_EQUAL_INT(IDENTITY_SOURCE_RETRO, s_last_identity->source); +} + +/* 14. Retro game then Xbox game → Xbox identity is active */ +static void monitoring_subscribe_active_identity__retro_game_then_xbox_game__xbox_identity_active(void) { + retro_user_t user; + fill_retro_user(&user, "octelys", "Octelys"); + mock_retro_monitor_fire_connection_changed(true, NULL); + mock_retro_monitor_fire_user(&user); + + retro_game_t retro_game; + fill_retro_game(&retro_game, "crc-abc", "Chrono Trigger"); + mock_retro_monitor_fire_game_playing(&retro_game); + + mock_xbox_monitor_set_identity(make_xbox_identity("MasterChief")); + mock_xbox_monitor_fire_connection_changed(true, NULL); + + s_identity_cb_count = 0; + + game_t *xbox_game = make_xbox_game("game-1", "Halo Infinite"); + mock_xbox_monitor_fire_game_played(xbox_game); + free_game(&xbox_game); + + TEST_ASSERT_EQUAL_INT(1, s_identity_cb_count); + TEST_ASSERT_NOT_NULL(s_last_identity); + TEST_ASSERT_EQUAL_STRING("MasterChief", s_last_identity->name); + TEST_ASSERT_EQUAL_INT(IDENTITY_SOURCE_XBOX, s_last_identity->source); +} + +/* 15. Xbox → retro → Xbox again → Xbox identity is active */ +static void monitoring_subscribe_active_identity__xbox_retro_xbox__xbox_identity_active(void) { + mock_xbox_monitor_set_identity(make_xbox_identity("MasterChief")); + mock_xbox_monitor_fire_connection_changed(true, NULL); + game_t *xbox_game = make_xbox_game("game-1", "Halo Infinite"); + mock_xbox_monitor_fire_game_played(xbox_game); + free_game(&xbox_game); + + retro_user_t user; + fill_retro_user(&user, "octelys", "Octelys"); + mock_retro_monitor_fire_connection_changed(true, NULL); + mock_retro_monitor_fire_user(&user); + retro_game_t retro_game; + fill_retro_game(&retro_game, "crc-abc", "Chrono Trigger"); + mock_retro_monitor_fire_game_playing(&retro_game); + + s_identity_cb_count = 0; + + game_t *xbox_game2 = make_xbox_game("game-2", "Forza Horizon 5"); + mock_xbox_monitor_fire_game_played(xbox_game2); + free_game(&xbox_game2); + + TEST_ASSERT_EQUAL_INT(1, s_identity_cb_count); + TEST_ASSERT_NOT_NULL(s_last_identity); + TEST_ASSERT_EQUAL_STRING("MasterChief", s_last_identity->name); + TEST_ASSERT_EQUAL_INT(IDENTITY_SOURCE_XBOX, s_last_identity->source); +} + +/* ------------------------------------------------------------------------- + * Test runner + * ---------------------------------------------------------------------- */ + +int main(void) { + UNITY_BEGIN(); + + /* Xbox */ + RUN_TEST(monitoring_subscribe_active_identity__xbox_connected_without_game__identity_not_notified); + RUN_TEST(monitoring_subscribe_active_identity__xbox_connected_and_game_played__xbox_identity_notified); + RUN_TEST(monitoring_subscribe_active_identity__xbox_game_played_before_connect__null_notified); + RUN_TEST(monitoring_subscribe_active_identity__xbox_disconnected__null_notified); + RUN_TEST(monitoring_subscribe_active_identity__xbox_disconnected_with_retro_game_active__retro_identity_notified); + RUN_TEST(monitoring_subscribe_active_identity__xbox_no_game__null_notified); + + /* RetroAchievements */ + RUN_TEST(monitoring_subscribe_active_identity__retro_user_and_game__retro_identity_notified); + RUN_TEST(monitoring_subscribe_active_identity__retro_game_before_user__null_then_identity_notified); + RUN_TEST(monitoring_subscribe_active_identity__retro_user_before_game__identity_notified_on_game); + RUN_TEST(monitoring_subscribe_active_identity__retro_no_game__null_returned); + RUN_TEST(monitoring_subscribe_active_identity__retro_no_user__null_returned); + RUN_TEST(monitoring_subscribe_active_identity__retro_no_game_after_active__null_notified); + + /* Priority */ + RUN_TEST(monitoring_subscribe_active_identity__xbox_game_then_retro_game__retro_identity_active); + RUN_TEST(monitoring_subscribe_active_identity__retro_game_then_xbox_game__xbox_identity_active); + RUN_TEST(monitoring_subscribe_active_identity__xbox_retro_xbox__xbox_identity_active); + + return UNITY_END(); +} From 90496f2950aac119d71eca8c1182f2f450703094 Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Fri, 3 Apr 2026 10:04:19 -0400 Subject: [PATCH 24/29] Add comprehensive unit tests for `monitoring_service` to verify active identity notifications and source prioritization across Xbox and RetroAchievements integrations. --- .../retro_achievements_monitor_stub.c | 100 ++++++++++++ .../retro_achievements_monitor_stub.h | 49 ++++++ test/stubs/integrations/xbox_monitor_stub.c | 148 ++++++++++++++++++ test/stubs/integrations/xbox_monitor_stub.h | 49 ++++++ 4 files changed, 346 insertions(+) create mode 100644 test/stubs/integrations/retro_achievements_monitor_stub.c create mode 100644 test/stubs/integrations/retro_achievements_monitor_stub.h create mode 100644 test/stubs/integrations/xbox_monitor_stub.c create mode 100644 test/stubs/integrations/xbox_monitor_stub.h diff --git a/test/stubs/integrations/retro_achievements_monitor_stub.c b/test/stubs/integrations/retro_achievements_monitor_stub.c new file mode 100644 index 0000000..20cb2ed --- /dev/null +++ b/test/stubs/integrations/retro_achievements_monitor_stub.c @@ -0,0 +1,100 @@ +/** + * @file retro_achievements_monitor_stub.c + * @brief Stub implementations for retro_achievements_monitor.h. + * + * Stores the callbacks that monitoring_service.c installs via + * retro_achievements_subscribe_*() and exposes mock_retro_monitor_fire_*() + * helpers so tests can drive those callbacks directly. + */ + +#include "test/stubs/integrations/retro_achievements_monitor_stub.h" +#include "integrations/retro-achievements/retro_achievements_monitor.h" + +/* ------------------------------------------------------------------------- + * Registered callbacks + * ---------------------------------------------------------------------- */ + +static on_retro_connection_changed_t s_cb_connection_changed = NULL; +static on_retro_user_t s_cb_user = NULL; +static on_retro_no_user_t s_cb_no_user = NULL; +static on_retro_game_playing_t s_cb_game_playing = NULL; +static on_retro_no_game_t s_cb_no_game = NULL; +static on_retro_achievements_t s_cb_achievements = NULL; + +/* ------------------------------------------------------------------------- + * retro_achievements_subscribe_* — called by monitoring_service + * ---------------------------------------------------------------------- */ + +void retro_achievements_subscribe_connection_changed(on_retro_connection_changed_t callback) { + s_cb_connection_changed = callback; +} + +void retro_achievements_subscribe_user(on_retro_user_t callback) { + s_cb_user = callback; +} + +void retro_achievements_subscribe_no_user(on_retro_no_user_t callback) { + s_cb_no_user = callback; +} + +void retro_achievements_subscribe_game_playing(on_retro_game_playing_t callback) { + s_cb_game_playing = callback; +} + +void retro_achievements_subscribe_no_game(on_retro_no_game_t callback) { + s_cb_no_game = callback; +} + +void retro_achievements_subscribe_achievements(on_retro_achievements_t callback) { + s_cb_achievements = callback; +} + +/* ------------------------------------------------------------------------- + * Lifecycle stubs — no-ops in tests + * ---------------------------------------------------------------------- */ + +bool retro_achievements_monitor_start(void) { + return true; +} +void retro_achievements_monitor_stop(void) {} +bool retro_achievements_monitor_is_active(void) { + return false; +} + +/* ------------------------------------------------------------------------- + * Mock control helpers + * ---------------------------------------------------------------------- */ + +void mock_retro_monitor_fire_connection_changed(bool connected, const char *error_message) { + if (s_cb_connection_changed) + s_cb_connection_changed(connected, error_message); +} + +void mock_retro_monitor_fire_user(const retro_user_t *user) { + if (s_cb_user) + s_cb_user(user); +} + +void mock_retro_monitor_fire_no_user(void) { + if (s_cb_no_user) + s_cb_no_user(); +} + +void mock_retro_monitor_fire_game_playing(const retro_game_t *game) { + if (s_cb_game_playing) + s_cb_game_playing(game); +} + +void mock_retro_monitor_fire_no_game(void) { + if (s_cb_no_game) + s_cb_no_game(); +} + +void mock_retro_monitor_reset(void) { + s_cb_connection_changed = NULL; + s_cb_user = NULL; + s_cb_no_user = NULL; + s_cb_game_playing = NULL; + s_cb_no_game = NULL; + s_cb_achievements = NULL; +} diff --git a/test/stubs/integrations/retro_achievements_monitor_stub.h b/test/stubs/integrations/retro_achievements_monitor_stub.h new file mode 100644 index 0000000..97a3747 --- /dev/null +++ b/test/stubs/integrations/retro_achievements_monitor_stub.h @@ -0,0 +1,49 @@ +#pragma once + +/** + * @file retro_achievements_monitor_stub.h + * @brief Test controls for the retro_achievements_monitor stub. + * + * Lets tests drive monitoring_service.c's retro callbacks without a real + * WebSocket connection to the RetroArch server. + */ + +#include "integrations/retro-achievements/retro_achievements_monitor.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @brief Simulate a RetroAchievements connection-changed event. + */ +void mock_retro_monitor_fire_connection_changed(bool connected, const char *error_message); + +/** + * @brief Simulate a "user" message arriving from the RetroArch server. + */ +void mock_retro_monitor_fire_user(const retro_user_t *user); + +/** + * @brief Simulate a "no_user" message arriving from the RetroArch server. + */ +void mock_retro_monitor_fire_no_user(void); + +/** + * @brief Simulate a "game_playing" message arriving from the RetroArch server. + */ +void mock_retro_monitor_fire_game_playing(const retro_game_t *game); + +/** + * @brief Simulate a "no_game" message arriving from the RetroArch server. + */ +void mock_retro_monitor_fire_no_game(void); + +/** + * @brief Reset all stub state. Call from tearDown(). + */ +void mock_retro_monitor_reset(void); + +#ifdef __cplusplus +} +#endif diff --git a/test/stubs/integrations/xbox_monitor_stub.c b/test/stubs/integrations/xbox_monitor_stub.c new file mode 100644 index 0000000..1e6fab5 --- /dev/null +++ b/test/stubs/integrations/xbox_monitor_stub.c @@ -0,0 +1,148 @@ +/** + * @file xbox_monitor_stub.c + * @brief Stub implementations for xbox_monitor.h, xbox_client.h, and the + * state_get_xbox_identity() / xbox_fetch_gamerpic() calls made by + * monitoring_service.c. + * + * Registers/stores the callbacks that monitoring_service.c installs via + * xbox_subscribe_*() and lets tests fire them on demand via the mock_* helpers. + */ + +#include "test/stubs/integrations/xbox_monitor_stub.h" + +#include "integrations/xbox/xbox_monitor.h" +#include "integrations/xbox/xbox_client.h" +#include "integrations/xbox/entities/xbox_identity.h" +#include "io/state.h" +#include "common/game.h" +#include "common/gamerscore.h" + +#include +#include + +/* ------------------------------------------------------------------------- + * Registered callbacks (set by monitoring_service via xbox_subscribe_*) + * ---------------------------------------------------------------------- */ + +static on_xbox_connection_changed_t s_cb_connection_changed = NULL; +static on_xbox_game_played_t s_cb_game_played = NULL; +static on_xbox_achievements_progressed_t s_cb_achievements_progressed = NULL; +static on_xbox_session_ready_t s_cb_session_ready = NULL; + +/* Identity returned by state_get_xbox_identity() */ +static xbox_identity_t *s_xbox_identity = NULL; + +/* ------------------------------------------------------------------------- + * xbox_subscribe_* — called by monitoring_service during monitoring_start() + * ---------------------------------------------------------------------- */ + +void xbox_subscribe_connected_changed(on_xbox_connection_changed_t callback) { + s_cb_connection_changed = callback; +} + +void xbox_subscribe_game_played(on_xbox_game_played_t callback) { + s_cb_game_played = callback; +} + +void xbox_subscribe_achievements_progressed(on_xbox_achievements_progressed_t callback) { + s_cb_achievements_progressed = callback; +} + +void xbox_subscribe_session_ready(on_xbox_session_ready_t callback) { + s_cb_session_ready = callback; +} + +/* ------------------------------------------------------------------------- + * Lifecycle stubs — no-ops in tests + * ---------------------------------------------------------------------- */ + +bool xbox_monitoring_start(void) { + return true; +} +void xbox_monitoring_stop(void) {} +bool xbox_monitoring_is_active(void) { + return false; +} + +/* ------------------------------------------------------------------------- + * xbox_monitor.h data getters — return NULL / 0 in tests + * ---------------------------------------------------------------------- */ + +const gamerscore_t *get_current_gamerscore(void) { + return NULL; +} +const game_t *get_current_game(void) { + return NULL; +} +const xbox_achievement_t *get_current_game_achievements(void) { + return NULL; +} + +/* ------------------------------------------------------------------------- + * xbox_client.h stubs + * ---------------------------------------------------------------------- */ + +bool xbox_fetch_gamerscore(int64_t *out_gamerscore) { + if (out_gamerscore) + *out_gamerscore = 0; + return false; +} + +game_t *xbox_get_current_game(void) { + return NULL; +} + +xbox_achievement_t *xbox_get_game_achievements(const game_t *game) { + (void)game; + return NULL; +} + +char *xbox_get_game_cover(const game_t *game) { + (void)game; + return NULL; +} + +char *xbox_fetch_gamerpic(void) { + return NULL; +} + +/* ------------------------------------------------------------------------- + * state_get_xbox_identity() — returns the identity set by the test + * ---------------------------------------------------------------------- */ + +xbox_identity_t *state_get_xbox_identity(void) { + if (!s_xbox_identity) + return NULL; + + /* Return a fresh copy each time — monitoring_service.c calls free_identity() + * on the pointer it receives, so we must not return the original. */ + return copy_xbox_identity(s_xbox_identity); +} + +/* ------------------------------------------------------------------------- + * Mock control helpers + * ---------------------------------------------------------------------- */ + +void mock_xbox_monitor_set_identity(xbox_identity_t *identity) { + /* Free the previously stored identity before replacing it. */ + free_identity(&s_xbox_identity); + s_xbox_identity = identity; /* Takes ownership. */ +} + +void mock_xbox_monitor_fire_connection_changed(bool connected, const char *error_message) { + if (s_cb_connection_changed) + s_cb_connection_changed(connected, error_message); +} + +void mock_xbox_monitor_fire_game_played(const game_t *game) { + if (s_cb_game_played) + s_cb_game_played(game); +} + +void mock_xbox_monitor_reset(void) { + free_identity(&s_xbox_identity); + s_cb_connection_changed = NULL; + s_cb_game_played = NULL; + s_cb_achievements_progressed = NULL; + s_cb_session_ready = NULL; +} diff --git a/test/stubs/integrations/xbox_monitor_stub.h b/test/stubs/integrations/xbox_monitor_stub.h new file mode 100644 index 0000000..ca26551 --- /dev/null +++ b/test/stubs/integrations/xbox_monitor_stub.h @@ -0,0 +1,49 @@ +#pragma once + +/** + * @file xbox_monitor_stub.h + * @brief Test controls for the xbox_monitor / xbox_client stubs. + * + * Call these from setUp / individual tests to drive the monitoring_service + * callbacks without a real WebSocket connection or HTTP client. + */ + +#include "common/game.h" +#include "integrations/xbox/xbox_monitor.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @brief Set the xbox_identity that state_get_xbox_identity() will return. + * + * The stub takes ownership of the provided identity; pass NULL to make the + * stub return NULL (simulates "not logged in"). + */ +void mock_xbox_monitor_set_identity(xbox_identity_t *identity); + +/** + * @brief Simulate an Xbox connection-changed event. + * + * Invokes the callback registered via xbox_subscribe_connected_changed(). + */ +void mock_xbox_monitor_fire_connection_changed(bool connected, const char *error_message); + +/** + * @brief Simulate an Xbox game-played event. + * + * Invokes the callback registered via xbox_subscribe_game_played(). + */ +void mock_xbox_monitor_fire_game_played(const game_t *game); + +/** + * @brief Reset all stub state (callbacks, stored identity, etc.). + * + * Call from tearDown() to prevent state leaking between tests. + */ +void mock_xbox_monitor_reset(void); + +#ifdef __cplusplus +} +#endif From a8a03962e245c561a8d4dbe629a2efae0fa29fb0 Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Fri, 3 Apr 2026 10:09:34 -0400 Subject: [PATCH 25/29] Add `time_stub.c` to monitoring service test stubs --- CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 467692e..53be809 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -746,6 +746,7 @@ if(BUILD_TESTING) test/stubs/integrations/xbox_monitor_stub.c test/stubs/integrations/retro_achievements_monitor_stub.c test/stubs/io/cache_stub.c + test/stubs/time/time_stub.c ) add_test(NAME test_monitoring_service COMMAND test_monitoring_service) From a81951ee290e78041b22befbd3746746e57811d0 Mon Sep 17 00:00:00 2001 From: kzryzstof Date: Fri, 3 Apr 2026 10:23:37 -0400 Subject: [PATCH 26/29] Add `test_monitoring_service` to macOS build tests; update README and assets for Xbox plugin sources --- .github/scripts/build-macos | 2 +- README.md | 18 +++++++++--------- images/plugin-xbox-account.png | Bin 0 -> 2602285 bytes 3 files changed, 10 insertions(+), 10 deletions(-) create mode 100644 images/plugin-xbox-account.png diff --git a/.github/scripts/build-macos b/.github/scripts/build-macos index 1004c23..74bf7a9 100755 --- a/.github/scripts/build-macos +++ b/.github/scripts/build-macos @@ -170,7 +170,7 @@ build() { # Run tests if requested if (( run_tests )) { log_group "Building test targets..." - cmake --build build_macos --config ${config} --target test_encoder test_crypto test_convert test_parsers test_xbox_session test_types + cmake --build build_macos --config ${config} --target test_encoder test_crypto test_convert test_parsers test_monitoring_service test_xbox_session test_types log_group "Running tests..." ctest --test-dir build_macos --build-config ${config} --output-on-failure diff --git a/README.md b/README.md index 41038b3..fb64c6b 100644 --- a/README.md +++ b/README.md @@ -65,28 +65,28 @@ After installation, restart OBS Studio. All Xbox sources in the plugin share the same authenticated account. RetroAchievements sources connect automatically when a RetroArch WebSocket server is detected on the local machine. -![Xbox Account dialog](plugin-xbox-account.png) +![Xbox Account dialog](images/plugin-xbox-account.png) ### Available OBS Sources #### Account & profile -- **Xbox Gamertag**: text source for the current gamertag or RetroAchievements display name -- **Xbox Gamerpic**: image source for the current gamerpic or RetroAchievements avatar -- **Xbox Gamerscore**: text source for the current gamerscore or RetroAchievements score +- **Gamertag**: text source for the current gamertag or RetroAchievements display name +- **Gamerpic**: image source for the current gamerpic or RetroAchievements avatar +- **Gamerscore**: text source for the current gamerscore or RetroAchievements score Account sign-in and sign-out are managed globally from **Tools** → **Xbox Account**. #### Game -- **Xbox Game Cover**: image source for the currently active game's cover art +- **Game Cover**: image source for the currently active game's cover art #### Achievements -- **Xbox Achievement (Name)**: current achievement name, including gamerscore when available -- **Xbox Achievement (Description)**: current achievement description -- **Xbox Achievement (Icon)**: current achievement icon -- **Xbox Achievements Count**: unlocked / total achievements for the current game (for example `12 / 50`) +- **Achievement (Name)**: current achievement name, including gamerscore when available +- **Achievement (Description)**: current achievement description +- **Achievement (Icon)**: current achievement icon +- **Achievements’ Count**: unlocked / total achievements for the current game (for example `12 / 50`) #### Real-time updates diff --git a/images/plugin-xbox-account.png b/images/plugin-xbox-account.png new file mode 100644 index 0000000000000000000000000000000000000000..d54b2702b92f4b0a979540c840a073469a5f1438 GIT binary patch literal 2602285 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

vm}#wHIZ8hS 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 z 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 z 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:ILuh+hV5f;Yg%;R+AP#k03a!+mFy2g0Zzvlv zoUWbl{w9r9oS*|go#SNUQLpQkZ+y4LAq$Juc;3mueJXvOH{G6NKK?;(zC9AO@O-8y#f zUB*C)k#J#QmV4RM-GX}3SO#S(dNg@RhjviR_@m)XW~v{n3*#AG z*w}$y002M$Nkl#;41%!?PHgX5gFS8gzSPXDu}JIu`5Y7(CmwO~dcj z$bdSw242Ufr;!nNtes~ZF?Z$^IG-+a)VT}r$`kK0--O|FjBv*5E$Uw&23YcO6 zpZmv;IW-7B^UojgE-*e3kTUDs+!%`tHe;CHwsU6;v{Tgcws29|l((7hN%86!*81YY zZ|ml{@Q!&0ctImbeA+g~nqCE9TQx=7p~yS;<6M5m3*f4(Z`iPrwvG7->Y?)+9#grF z_?E%3tHxpH2W(61zbv~>134y|a-2G;jJk_>>(*_#a%v4SefYq$F75p@+IcRma zK^^=#pmWlMe0VXNO!6p1q;*vXfHKgJ^;y>7@4!CJ1o$~gBwPpf<~udASl)2^euTS} zKlu0;Fnpa!M|t!0d&&k@O^gmR!9q1!OC?&%WXWsq+EZ@4X-9eJkwfLtuRdKy=y1OO ztv8o9{ro!%2U6Egz#2(qzjXR=IrORf%Ljks6BytoF~Dspo7jbQnoBWfSSj-GQ-|mv zm@u#*q-={ADNo>kZkQw8&McH~J^frdg;sfLL6&~4*Ui<^wXeV0b2TGP$Ol;QZ0|J} zbH1|60KNEv#XK7@|vnbbK? zg;sfyZstEq=dp2v=RB`14?g}}R<#fqIkQ2w(p#yG?-5!4g`U!vmwq~570Igvu13@T z=#@4dEzOg_(5@p+zWWn=hws!ncP7-lC>pH4Ix?qrbI;*wc?ulG{b zQm6!?1*YCwMrG>TaRapK5}IeftgQ~OKcf!EUI|yG_;&GH31Ov=xMu;uvY2W9+jn;Gca? z3@0$xNz9h7vg7VhVWzz$gG}%WR~qxIliAV|Ncb5pj*($ulg6}8aN4HpG9k`)n=nn^ zr?N#l2VW{P8k(|#2O6b+l;0q(5+TewaVyWN5h}C*&uZ9|C*&FDIX&kV3gV}9~m8fkDepBMwgSw9EPILqvS z(fp*T_{SIkO{I&28Yc$KOQVnjvPF&8#*bcA4Wy$n#?-U@H!%TWxlM1{9E-@ivXf(B zq#=1-bP&Ui*9ml?*WGbr7At-B8;_UM;AELEk>7a+ECSLfCT`+ud8C6p9CvadxH-tZ zoKHrtwu$UpxnM~TW_bNIK>fP zmw^uN%DhNscauosY+sat)N>GMbyM1gH}FV5=jH*ZLyyvfMp+ zBcD1zbCU%uGS`CVyN+f{eVrCvZ6@sQ5KZzo@fll9QScMR5) z-&M#dE6wd%2G*_ai-WjIRqLckX*9PDO%P%7({IzX@&tJk5=$7?UE>?B!A^+o95q~- zPrJoLi{a@bNMxGy1wK1iB#0B1WfvEZaqZ=czv;t&=o)y?RZN71SI@P4nnz2ce~@hf zJS!i%XBDBP&=icaiKlsyNm>``USN@DFyJXZ>F-FB{D6`PfG$j+$qRmHtQ3#71MU

>t){UY~%x})bNafH@x2AkL;7j!|T%4xH27A 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%0Ab~rCiHN z6@2O$fq4cW^x-732^#mg*yS-eq7VEnoZM61C*9Uywk=LT{Z3xtN=I$ti1#Leck>V7 zm~nzta07m5k8~p~=YoR7Dg6j}9fS6J(H&Cn1FqCB%m*yy_qqM$?$Scr8Zx*BZ_=W;v@Xlf z1sxEExRnNVV5TgiKh1A{C2plP%FcdqEJFqzXYBBvWx8-dE&`e?D`DWiNtjw0Ke{op z$+tT&8X2m{u~nw99_h__NEVUrz%SNJk>b_sqIVU1d%sX{(dCVTa*T7s9jhj*$BRqq zeM;hYxl`cE^0`de_p&5=!iOZ`;Ed^L>Q2(%R zKCk)Rp`;;kjyt=xkI?@EIOFS}&q~i!*2xa@h6zHiPC(=x!n0TCkbGK$9X}Ew!r<+D>7XxXKN0Ji~(zA_^#4P5a?KmI?;fZ0! z;TFb4#pD5W8zXI;va~0zy5b^2m(Pmz8#cwZoqJ=`+Q(R6KQAu1 zJWl5{suV}=)W&)ER0kXbAG%&Mw!O00$esC){mMxBS;vPCIBl2Ohlbc~mZ7S_%MtFo zOLmyg2)ffG<{6!{XT&*Yof1tL!s`iPdFqNK*jcB>hd=V!IDj)`GWNwhGtM~)G8juzhFT z{n@X^0LFNA3Gpk(r_LjFIv^o`(xwY8U?lI7>f)n+{o8TXg=Z!n%RSHb9^~w|yW?+e z*pRx~W(##U*sXtE3ZZNraKH7}H$lgP(YIr3;_I>tPK(uRH^p0bzcTnbZ=KN?%v1rL6bo#dV(pPTFF=^~5 zx;yw%Uv*cP3v%Tt=`%Y5`l;rdWFk*poP6pjIOs>??r%L5`^Q@2zHR-vDP|^Tj`y@M zZ;K;w4m&BE8_~`&7x_+Fz94$$ zv?m;y;Y5GXrQiPUkHm(N8L|4tuMpMM=t-0X819U8?)~nU&WrjTYh&Rl3kgB_x~QK< zJWT3&?4AeW*6VJ@e!+Z?g|Dm5Iz7%uCVI5e{j1l;*S>mJj2QwKecN4V&RINzO_{fc z`T8+r@#|l8dHf>ubKipxMZ$P_o%6gp;pqTSAMm%hzSAn=~yc{4;W?a8Ql+>^iM0XMKXubq^ zH0cw9lt3U#(cz>FT#hSd4m93ZU2_7JLY2H}faACH4V^-is(I!q!d0qs!fd$7YSpNN zi$Y1UpTe4Nw;!i*R7T{T>~sXBA(oO+$fIYsed<_Tj0ao?+->)*#{oA)xWeXGwQLSM z;B*FJ>|n(MEEQeT>KV*eWLTs-Z(kQ%AK4KjC<1T#&8uSh%P(WO?i?DZ;YN}{D02qf z{`+yj{n0hi+|d<_4MEB3%$}1@iZKRAh0mTHdot{ht2Xx@V%y{(tK1-+`*8fb`oswAbdY873GC!@Lh8mID^c4jw1TD*qa1G*Vld6KtJEuFP;nw4QL= zsbZr+SHq5H=QP3eM`2hMC|5%`A$IyL{N`6sOLxi0NqE9p3%$m7VQ>v_6%L9Jv0Zxp zO@J}pHkAW$Cd{_a-x@SE05t)t23-|Qh2}Fk;Ih#C^JKr3`0GzT`QBHyugU@M!6TrX zcGr^qz@_|>13LUER(wbN7o$ZPP|`5L1MhoKxZfvA_P--SDn{Z~`f=r&iB}Q^F7kcw zYCe+&o{H|WjJ!MX4=*QR6Yph_d1Jhp{5mmYE7g2gg+$oou?**?%z(e8Kb=z=$1Sfo z{(&35*1%udUsf)OCx^N5VL44S5@#M~j#INP? zj=zOTr$cH}4{#jS?q><7xoT}!}OoISOQfwPijY5cCymhIHgY@5Z8xXDnHtR8K^Q6f$1 zcyssL00walvR%X-*9m9nyA06+J$MG2@0T4lI!cT3Wn6FNg1GUy^kcZPgE*kXk2q}9 zS%JJS4%R{|&27*cu!&ERm%E_lF*{Vco7hh^xv#dmN4|_ih+@5DA99HId zq3+ShgkQYbKk0Bl#yK_=+B3u&{YcF^i^NGaE=ePWPio_y@MKOWE2R&_rR|q~yp~2y zBj_rYn+AJylm_$%X-eFwn5OfVwx~P{lYFNEPeZ=DfehDrh!wS6T{AgrV{SU&Gz3;O zqQdNXaN^QMH@+*+i033gfdGDCXko~E)nym6TWWe-cgr_oFMVk_Wg!dghMscwCUhjO z2ie8rn5(1r5Y9SVUC*RyfSr+h_Uyx$QbK!5!`ACNxp<5IZf_^d1S>gpEKg$RNvp;` zaPKPF{)30(eh#6YH@`c2Sd}Tfx$}*3Mr~UKaOag}7@C`hsb}^P3N%C0@s3X0Dh#3gAYF)`!YfSHsLOJ5$3Bw+ z`&9UBw>pj^v4+`{CCP$i-151fbd2$>UMu}n6LfjjI)pWM4>K&;2I+2qzL%zqAW-xk z3?cnQT-diCd4Z#bI_I*}upI|g%1UI5{OdvmajFc=GuMDqdFhx?odM^#B5fqCCcJ<} zo8@=QC^#>&PFTdXZL=-HRB-Q@VF)&ypWHK_<%$>Siq4~);+PYk%7o;3AWw(1vW>cR z21;uOSp9emr->`abJZ;L;6dwcgphK@rkRI0KgF`>$(%cQPv@OZBX@3Re?b3^oyyug zCkT`~uMofDU)?2TuWbTX!kgm@<=95U*xD~%+aBeCyWs36+pZzN{!%XFE*I`gD;nCR z0r^kIclNdQSw6qrU1{%UXrJU!_>MB%X=Yw^V(W0sDRd&KLi-|#=jzRAz?WB~ao&{% zTrg?A;v_4w$KE8ne-kH;$?{UwZ$7EUhvX;n`dm6YiX3twmNLmc6?e)8oeApq%4l)! zxf2zAtD~!TC{dMTrXoXWJ7t>W0r6lxj_Zw--_zBGY;K5Mga$igz3L7w_#@dT_9I1> zM1y=!B#NixW#CgLieu44mr@UWz{Lo=eEeq^R1b+aPYo#vw`~*tyqDKh<8SNZE0bfp zh1OE_j#+Zy3z-uKH5k3FU1m|)bZ!WnpDY%5y^xBZl6+X*nt1(`OwZ*z6he|h7le}1$WfCpya0P5m+78g1UF<)pVL@SpVunp_R zn1pVa{er9?U=HM2LtV)G4nCe&beuAp(78RU?GXB|XM(RhWhuwTT)-JyJ@LSrM`HV~ zeX;F{O>r_&6Be`UWflg*ImWtJRNJMY3F{e~ z9ZRJ)$7sjlG3J}CDTg5Q=ZvVjLXIRX+5O zpN#;NKx@B4BP?jo9WBKUr_e0AEQ?4m++T3ck~s5>li}mmn9(&iK6(9(u{k=TfdzFh zyX?Gp`Gx0W?~J$`JbiKXni!(3cYXTv*wD&CMdec_;2gi^hAi*=NZlg)iR(MBdv7dX zx`2myhwsr?yKYnb;(I<5a~3a)ZI7;r9UC4ezxp}jvmNfQti!pJKOL+6lsS@pQpRp@ zR+E9=Gf_3q$`AE2^G$Cai#0d>9eOqqDXK)q8*aKY-i8B?E)gv9@{m8Tx$?|-`&(ZV z%a(Kj37AOOC&l@{_!rT>peGJ(-xR%@Hm4qJn^6&Hdws0E=`Ty^+D}|Af7|95_81y$N1yx9JH~gw9q1p5m;TzHNAt`%(YJBER^-&5 zTu>=^&NFq`3g;jG`pel-_d?oL7WRJPEBC~QzrHS3%x;dCoPTmm9vzI6moJHh-7J1) zQ;0Ym!`QlW_rCbeKf4xFHFlX}gvzHo-}}yAW*21}csCFHgCp=;gf9H{>h&=Row5o0 ziW?cm=pWCEI|7aE8TRNOqS}ldW+y5(4Oe2bn3>=Iv+`WMszkm9P zaloB2uboM}qJjjnWnhV1gP)XwWn8g97 zQByoHX+E?gcfft%583Y9-W5wuU78NKnF|-iZoK_l*Ka~7F%YwweaF57(TfAFk2usv z8FU}sxP?NVYY56LqW0%$%$>Af?iKulTkxj9ax#}YnZPA?(?hMnOv6i=oRY)5yzUAi zC(OB`m)tUh-hI7lDSYe``bcAgeNY)y6s|=nFjj7%0sFof{K}-*_cXXFBsEfbc%u^! z6(-@3#;il(o)Z-e{e~fuzBHCdU+$V|LK#w_ISey8!O>8mqu7bJ6JpykZiuY4Ii0+; z#YQ?g)?jCy;y^l8Kv=)V9StS6yE3v_rtLL(?S0#I)V`)X!y7qS0d#Qlw0_CA{3GT~ zPd*=aW|aru{nxD3Yxd!I*|h=8$L0Zs($CgkUhvzi(yu)}`8*L(ehaEFBz~yOJXP}2<~kAZJq?1=Na7UyN#7}l5^u%$BAt*m z^N3?EvivNo)&~`j`7KVBY2wa-%{D0WtV29j@JNsHiAsmN0!%_`>1hOox1?8%%;rhs z74Q3e{2HFfeo)y}b_*M2deHQI&&6E6IQoXh;_KhKCpt0Y=WbFEV7TCBjGDqCPx)=g zrkp^4n}LB@LAtCo2b^4hD@9 z4Jd!J*af5UH1krna>b++n4W6~n7znk$8TW?y(FmSKH#9@u_wYSa); z9lT0a&wy*i5nxC<4deEwJ66PtN``XM_tPlCJ&l#-%W;=F>>~}x879F#0RMKi@QNqv zEPPV>#{LwR95Z>pqB-T7II#~*_N%*tCbR0y`x?$Y)6VeHgB%9!O2O$UwB6lvb4P>k z7)l}+Qiwz9FgCp98ER7}hWw)uS^WCDoSjG5GI%5>(O6XPt9vV@1R#f3$=D~od7)vXg# znVyDu-qpD&9IjyZzI~K^1uXKgNgO2~Q$~)P{C0eiFVa{~o#Hr+);fTI*XQaZEzLLy z!LPKSW6QSKTFZ2|_U>J~5@(KkuyZ;s4Rh7b4kvevIiYihp8e`Og?fJPlm@ka1cSUiKD@RqjBFot7G20ZVm?T zPWdPvoM^jaMqDL+fm!^D*TfUQ)lZVYs7t<(_r-x9^Z1@0Ck*a-Gc=Vum0Xo)du+ST zH5~-PF8vgk>1T`|c{U$)inF4N7Du!CiFok*Jz>&`C64`wZ~MeB8`7#WQFz3mvPd~D z=sAw^+aDF2T#Umm{H5P$2W=KUc}l9&@u6(!hi;BA$<{&SxtKc4XV0BYn53qZA)eQp zbV&P#(TR0p>o9i`ry89TU-fe!p-}jx%P+la`nG zq%_BIuvv;6>hbWdwk3Jo z5z__DIW{T7O`fBwQZbAi5j{g~eU zJFkj2zUHc&TlstVSbhB5A6%38-}TUasTZV;0^N+_v42d98$b3AvnE0wUcWW|=%aT* zAI$ODsbk&)p4W|>pM)*s7&=NWn5GFI`fvXs=8vBNHyl6zj(=cf>9jbyYa4x9qVs6~ zO#MfF8vV($5r5-N7sXW6V`Q4Y~Qj6d;ipUU@vMXc~6=) z7V}!2_fL*)oNiO=i*1(KK+bjCxg;`|oO}unJ?DK9OO`Fk{(iDG8$0(7V0&lGg=c4XvdfEe+{Ag#B`M2! zb}0&)gDCxEXG?$nLmpXH>i*b3bR;=ON>O?>DxIk4v1)FkI1$@oDf97WWkw;rtm3JE z48MOY-u0nd#u>>hO>eO|Z4~AB?ZuyYZ>$eTH8@F%GyF%;P|MXuz$5PT({;X)I_0VQOY& zR~*I!_ho~W+~yC_CXx|A3L=s3ASXemEgs^owrSRZxH91>MnFhE6+R7i5_L|Hskec0 ziZCw51M5wL7(}3P$k0gcSaPy15$J&HYMmUHp1Cr16DI2`cdd>-cA(9`0e9Mx*?8mK zf{w5l61GXv-ZU03y6oiQfV*ow4mei8pa{JAx2}w3IN-+E0astILB$@0dHah4?)`u8 zsc5V@;CkKK-Z49l6M|{?=4~;Mg1C|R!uw*^!6R{mSi{2%$`7pDU?I=T8E{$9)Bgx# z0W=xG$)XIAgAjeB11=}qW&^kOjUOk#3J?{YH2A~#_O%CHIuJY2FL8v6l3}%$+kl|c zNsxvB>*2oruW>x@0gL6@|4w@8qO7Zch|!M~za!R78HO-Y7|M{Y1a|j=%%u@SBZuuO zhILlV!@!3*uu%ilLHY`@ob{3^^JQ0&UjdNqp{-VK{kF@|RYP87NOMxIz)M55w5-CO zttkcz2S>|NAS*n?nR%v9Z_UY*3cY6+>7Ca>W<5V>`hE^L`>qo5!ZgtV=kI)8>vyj+ z*;X$Er0Rd3Rb`d(#2U%_43-pi;*^ciAfV#pP9qGvG}!W0svT%ec}O&cWdB!i8NJf$zQh{V0^PaM+*d0jeJc{on!f{GTruK{*BTjWpS{HWf6k+}8V`=e_XtHWyV z$s=iir!D4}H;0)#cnGQ!a?cfN$El&5moD5@q#QA&flN72!?Q3}aH>Gb*S5>&ItJ2- zhTL|yl+G#*5`MQ32Y)s&RdMu{HSQY1JeT!|A6L=nEKK7o{AZQT?5xo-lFkj_Ft)Ti z$V|!*SB=>x8lJ_K@0#TCgs%p#&-|VElot4H|M;!^^UN!aed5^Nuo|;99FNOQ%Gda; zp|6>RAI87d&@YduOjyn&CV7sHh8uJzPCjEitHR@olNp3Zlt2m&i*Ye`*if&ys&J}t z)wbkBkhZ80xqziIwn}3vp62mW^@(sKO(172*ZwIxf}~H!es&453Q7lrec=J;M~=9f z)4DmMfk|&?XJ^7;`%U6UT9s#XrYWn9`JH@2eKyG5)b5&-wrqpH-QhUJNiT9%x=>M* z-rV(&4kRbVyl>yhbNtCMqbTA`YHRhoSVO%KT-wb5VKb3amP4 zLR>ixG~%=n%0cj}Q!Ya`gVS8`3N6_LLq__o3`oM`ukG;Tm}Ot4bAx`dzs0xk*$*1i z=hqYgOhRAwa&^UR&DhY5%7LWw?% zGBY_FZ4Rr?QwOx|3`3S--#N(>hdKx4EA=eD^UPoJnkJ(t+Xfd#ScZDH_yefKpEytk zDz_5U9N4dpVv;OOz*FI~Q}I$`l;1wo!VL#)Q|h%#)3> zfn1hx4~+9%d`OGcwPhxplxZ2_IblY=93%8q_Br<|y+e9&%u0g=Y_C(!dMPBo4Y_66 zR70XZXv1$gBKd)~DHrH9j5qbU1I`d+yK#E5_MZ2ec(#{3$L?h~yuuWP8WcPaSaMsPG~&gF&+yzHVhunuuqqVFKFoh1wtK`?)0wpb+JsvMX1U!;dL{ znAdp@v$Cw{RHd>L!eTMc4Up&MZCFUwA5Shgajx!S6a-u15mrl?KA!2P7e6u#DCgU| zI%5XmR&_r2683O9J6xuq(@&)z2HB~vKJECYEOsv7Xf?0BH5baesIiXmP`NV<|0r9h zbAIsI=bj#Cp0*N4H@ha#=fCu&n_@4vwzEz>IXY*syJb#S^vs~VIUp1uK2%y^!EwW{DOvh0$V>$~ir?$k^AN_nf;HDy1C^^eVj8Kl_7zH@;#kFIfM#&g z*4Y!E#sRls6dfDA^;AOfy_nrG^Vp5JcKi1DD*E*p^Z0Lk^qSn2D6CHrGRY)`qsv%b zbZYN>=I`Ihd2^>ZoR6nH*gs$T*1wFoC#{SNPgwU3nY=r5&)Isuvo@G?eHcH#!P zV!!%HowO(fDM-DSV>R!ZKY!Q0i!OowgD$v;(5AOv_nvV$yfE)S{mV`9-oN`Y_;;>V z+F>0(d&TMTwqJThEMGF$ob0e1jbC`r=i@lW{N_65w9IF%FC)-Uj;6xv-~ZN9J`H(j z-RAiH58sIc4xMj+BLK+juAQ<_S+%(6ed=(3_5Z#;=FKJEBI&@uaJ>2VJ{V&-;0CsA z#F11S4~`MeZ>4{A=Bd~R{?lt;7?+)Q688$+U=K*ae^GAi^a9V*{_fthKYsTwKg%wy zhL}Fu7w4U}4EszoPMG?*@lKp>$5~_uE{;IMp1pWl%TYp10_6VjKFhwia-QwLp+`iMrYXo< zHg}9MhKwC^v9P)t{ZBi)=g*6Iix$AgI(YCUe2?_e>+Xo_@7o)1SlJZq*n-pv3;lo_ z`Xk3uc+tMK-~Fh+Rl0H7D^cdepmW&_VaYh49VrXoZ#mMS!nJqRL`gL~8?N8G9(&|{ zFvPChyp=oPoCC>|SwHu?aON*vG7sB!u~U%q8Poa=+v3kZvl?5=0O2qr9^SME`^16h z-@7}8peuKkz3rSCv0!Xp%w60aFZxv+aIHqEA_OH))v^O_AO;!VPFk@nPCe&z&P{HJ zZ+(;9ad)gi!Enx87Hg`b9!0+xLJsZ0KXC{r)*D}WY5co4yn>yEz3eFC2n=@JUj50h z27&U^0q2?K8NCJnh4#MU<53pi*+r1PoB@I4CNRC9g*DZ@AnuJ`~v7GmNA5_{W#|^D);2SF~*5o*6q%^ zzTcmp7zf-6&VW10xn&~|SP>8^F$f8ShX_t$24Q0`ut?3(jBjbv!BWGh&K13!GKB&p zCvOZo`HydnwG8m6uBIi`}dynZ5j!=w%1o6OTT|4mb=| z2%sH%4-!w6K^Gj1Fxszv^zm%(b2|f03_nBik=)@II5Opc1F-q5}GAKWG5Bu&?d2OttUISW)qg z1ACRk+r+%p{puUa0S^o`(hnbbG97M|J=sAve_LhY&Fa1CTZ2(ag$}F1(r@wQbMZVe zSyp*o%C%kJD^apV(SHBeaNrBo@7nY6GHbtWd%;bu9$%rYI^ay=HyuhfJUUs;`}|QR z3A^-Q<(8wenX-uA=5<1yPGIOyBeSTmPK{03PrRui#{Np96~C2zRX>?Wx=-A4Ee+>A z$~BMmT2E!bRq2q2G{7falSBG<#gZ6K;~l?;ShaT2to97su>+&`?S!S!iBid3;W4Fy z424por6KS3alVsvOhcY_GP$xIc~97_SJ>n^C?=IkWqyIvIWQ`eIG|hyQuAtHwJz@~ z6IATnlJ4sHX@m{#VA4<&Ez0LT&jwO1CEtOUbfRhpXj&lhpxsi9i=DqM~Wj!ljk?m+V0bhaV)r8Orhjv=`d z2^q~x=^V0r+ar(LCyrB=={?)v_+aa-FDJybMflwvl=X;Bevn(34|QGi_kpL#DW5*1qWN?PZe3s$1G;k`DIu?t^DIl9v8o!Fjjt&Tpa~ z@h+|F3>GIE`<)=_kaTBP8l=E+I-+63N=7s=&cFVu7p3z<2izVE7s?9TBQ42a!dzCS z$y?ro#<}OtC5;)b{N1s22Yq`K$ED6X8U~K-6R*X011mdcGD&GCq^RLRk24um={^c= z>LA=lsJX}2J;n~W9wuvZf!DrYXnnjM9fZPhcdL$L@j8U=ssY6EOd6>jU&WKFdgVvQa~EY~qJGCuv*&z* z{#Jg7uWGE4=G6amco!Zoo7p9p7DgCdUiQ6GmmBV~lj9%=3L06u8L1zPG*h zwe(WPtMZO*&u3Xu(W{C~qL09d*M4l5AL+z)O6zb)(r&#xN`1CR`V+s(`^vb*k4(zm zG?J0gavY~kmL(ob|8p-bmO3LV$Eo3sD+3ES29G+K)!mOVcQhQ3I)UX>{pz`j%1pyz z+V9ebbO7+FQ#y{>u3?;ejeIYd-H{9KcCoYe01jqpjJInJIH&&rZ39Wk@4zcQtkcC; zi5rL@aR9H%k6zov+y#eTWU`G@T@b*-EGO@lKlV>miOU@*`95a;_>ab6xKgWO*!}5Hz(ePxFSOhsRk=kpf)e-VpVkXJ7H|^MSV?0G$7$vsALLg9VfgjLn0D=4*p5 zCNUN&gFQlI$74@KD+|UPd(`>WYev}BuxQqd3_+PYz1Xqlyje$>J7A_0J>m2-R>bM2 zz98msZqQM7o*Qa%>$Yui?&&8Jnvn37?2_y5>CPSCdkD4oz&-cJ{cE?xy&Ja27$MW# zncB$QLS4tjm~+^nH*Y~VA+GnwmJM6tD7x=#b~LrIXcF5qeBs!DJ|{sjCb?Tr9&wy< zoDqJ<2*+BLk`avFfShN>8U9{fXNqGz?bBX)1pCxZY=a}%uKJiC=G+CR+{8BvJNN7rIP#{lv#2|+ z`P{AX_%Y@kIN+9^ycDO|*|Cgp1buuwqV6dgc2)LVc3*W>r!axRaHUQ@}akA3pX@!k*K9B=;j zZ-`HP^q;^v3p&|7xPW7o{^)mJ1Dyyzb7xEsZ+`FRV$#9=>{crF2-~l{(S?FWo%x4% zy@9+W2B!yb;{L%uegoq_kr?`zuZeqf5*Lg)ht)~bgzo9w{ttiSWifXaXQz<{Sm6AQ zKmTm(89WxP$B6hsev`E0S%62-gC?QhPGZN>ufG1Gxct23&`YsDWyYucsU$7W?Jw-; z>Rr2g`{IxP?kh2LobwGQ<47DCjDw@o;$S^tg~=oB&S~I`(gqxG*s-TF@A8~Do!X7e z$<#&XE$WW5I7_UN2Tjar4(#0*kF0r^`BKDvTMop=y^K?%91{SJrZQi=XaSLL*uYXx zSj<*KcmtaA;2g&(SDS9`S_9W!cj6R3nNW!xE+{@x^2JIx^Zxrj_RYBMv2F1i7u2Hb zP(jk9${ShzlDGUoIq;)48|ke08njc{E@{VkS`r=kq&vr4X|p`H?=8|n@BhMsan-7Mgcdy> zANuk=oL9+wy8l4*?P4Cy9PaJs&4}*f`(oCDx$)w+z8(i0G{w8??^%;)!0p-9A4h1* zs&iJwSr?oGhmOWAH-9_s{LbTX41Bm)TKQBDOv;VJ%$@c!KRn0=me;-f!uX{(zdCl{ zCpn7G19x3~)Jhh%fkC5wIB`AHr29qm6X9K>Fs4~Pjx!J+nlWVdr4ooOjA#3Z=M zc?B}WxpG;A$;*CgcndPR5+DreNlJY7#pWJv!64smDOTxS<(Jh19uU zgsr>Xa>WRFWxy$V^-+Wz0EaLD_@4GqCoT1qlcSc5#KbXoDseB*0)xQF#;Z)esMDQS z3P)clh5$GbqNF%xhex9mVR{wY)Hm7cavB*No?QLu`I@M~0yMcfWN-EPdIPQP)UJS_VfQi8|np=MK0B;;;YcU)b(F zoA|XS#rEEV(LR5EJhY7+Z^RL9fH-wf?%LPS;i<%WMpo*8yPsIArvKdzIEmUcDxou2 zdDco!!fBI+4F!x$VmiiZ9FWf>nu#*MohX|jLym&xbVf0$FeIKdq3}}~QCKM)P2N|Q zYDiHr@qVuECwXW$X5=wXtG7Zqt82MDp zoa7wBFrvypRZmH-ToRU?jMIh`*3?V~~i5D9P&Hh%Lj!+<*Qa4oDFI?7;ViSVgx zp%7kZ9GD;Z^ zc9tdFX{->2?~$_AIVi2B0$^FS zwn-nh-SVY1lX*0_dC#)szY-(4a(Gnl(>{2xa-38~vV6~XX|59!Tb*=CUDBwqt2mep zUDJ$0r*Y50slb;#l5k0{Dy^Lyf8?X;YkuWDUHIH}+T33eT-uW3v2jUdJ)}z~nh~_P>3tv&1n=2&0)C0B5y3$I?@oUk(DwN zukfi(3j0H6pEQz2V8`4Vy*jogy%rJ~r(^rVGE{tQk8QP2?1xl*bhJ~hc-DxzpYu%* zA65pU)X(h##)S$CAlPw9}OENQoycXU+dSOjkD8^foiV+P#& zu6PheWq0x(JeM>eO;{#%X8+g+z@lN?esipK2ia7fYv9rVHr2S~v_Zb=$MNa2HqMfg zW`*4`Zj^S}-ds!qe9HE8oNIMh&rbx7z8x4&%L;>GiErm(XNgM|86 zIuI#SJ`)BVTY#82aa`2_;6fGKCe03_d^f>Gzwq)`q?78ix89avyM$8ZZREKqsXNu3>_oj zLnqgct-E90+V!yjeaZ=;t0a%pkJ3D&Q0^|HV-k4?Iq3M{c#-c@jC3Hq3YUDL z>^X`9ZWl(UL012IK3dQGo|Kcx9~c#Kp@8EEi<@kV^2X#jfzp`x67;IA?ZcgL)r3!lQMDd zPDA@mIW&YW?~Y30^MzIn-Yx|33^?;1t%Zq_nU&4frR)=ibp9}A*aPAtKgh|-;bejK zX{C2aOB#Dk zSKin0R^BUol8Q=}T>hj^D}=yL@ueO76kZcHvLCBt8^=>lItt#$?>&o)(m&sj&Y1(Pr;v|#iUXnz{IygZYxWbk1=F2lncIhagKe7EYhh7-y_H zHBLEYc`TSU2l+i3U-{Z?v2(}HIPa_#M7ko}HsjtL9B?f-(e`ZH5t|?19CxpIJihtZ z)~Lscm2-K<*Afk63K2%85rVRtvy2bLwoTix3l7G7oa2T$YbDB&W3FNP>VR|d)aGbp z=bJoQjXhphLqU$u2r_M_I*AMkr?K5R4+A9c9Zz2GWB1Sj=6sWApS%A?!AU0(AI>@Z zlxUs8SlYKQR;^r$+-QowzxrB?>@3hBLWW1#P-OC}v3X}iU+{TJ5J|#27cbn^p04+b8obB2AOm4#5pA^^JmQHNWDbO?zLCGATB&}F?f3hp-&#PE%1+?MV67V zhWOBDZj635e>}2_c^tIXF_ldP+EK~3ac~+TAqlg}{WWN(n*t! z$6Ma=^XP5bx3tS2i-*`?vYq3SHnOqg?t|Ebj&g*-6n6aa&Y3gn;?$YIPuVVL)aj^m zPrXQIHh;3ebFmlq#SITBdusG7TM}oSb7qcriPRJPvDM;w|DmDyt54q%BkTx!$r(NA zv{rw0j8bosuCyr|s@&uls(xAMr8vej+6K?G8EZpP@AY|s)q0>UX-b&6PO`0C^D}kX zJlD~(smG7+R&7<+oVRdZ^z?L4i!`Z@SYWZ2zE?ViXaDNYd?UWJW?%g7mGgsHDCZm> zj1S$ohPfWcR_)mm1I#CX^US80J<=PqIS=wBzor9@(67L-jx*qHzV=4WfaACaaD4vx zXT)+sg<_hEZ{Ph$+;l5D;F$NTe>x7PJ%Ta4k2y-O4mj){ufFny@zNJvl#7Jg341$y za9@1<+MDCxu_@SOh$4l4qV2%BgZQy5``dm{zn<)32IU&b@Y~wGoeMbc%6q)y97=hQ zRwEfO7I2=MJVrhjET~(|AWW{uZsdJryg1A`HW$;U8x^R`TjhW4NmL%AoO>x18vg&# z!M$jnFVcEE|>@5j*Q0LWCP^V&aBGWS#zWS}(2fkz#u z4rum;OeMoONQz61NynJzX1E?!vbv>SL6go;^HGlZ9n?&&V%4~sx5AgQGkn79DGoUBu~bd<(4Xw-Uy(K2n1^sIM3@dVy9 z6lfH+4elz+L4fyCl5b6ZJ77&r)w8GHH&0bYRi6Ek z*F4KX0HFPyZL}e^cYG#5Dt3Ms3|N1`kpm=8YaicwGC7!+#2`UADpl@)lW+Kwv|vqU zvu#1;2^{F^2v{;k|6&at&d(xo! z{Vn}Ty9E`6hlRxfS30&W@|iHnQ#wqfWn<5uws0=1>}JIyn|H>ePi%`BhOgtFVc&#R znB@b<0qfNP*U!iLS~#@bv(*Yryj82qaUursB>?h|0t_-}VATaIu)6FALtBIz^B*0GZY@|=Vhd@B?D z=xEb`D!djX-Q;R0ehIJ1c8Ehevg#l2XW#Pe8E{^^GvyEpjdH>M)^K(Rxn?<1)gJYt`M9Z+9 zE@%**N-j%&8fT>im3;A$%BzIJ!$Ld7DPf!Zoen+TIm#jy2}&GWkH&CRb^5$D`({7m znr(8`wsbm+6|06T5FVYLmQ@@E7&(D;GICU!br)S96F+H7yjDh3cWAkbM?J&EHHHB3 ztTk~f-11d3v}T)}JWIbi81n}BlV-D>;)T41)w9j+SaTJZlOn@-YWV772d85|p*MG$ zF-}m1a35xz$;C0iKZ(goIyPyObfL3Dr=ZRiaRY-TZWPDvCf9hYj#C-Pc>cH=#4JyItoO z^242A)+aF+hZmDq@F9-fZ8X?_m<3tv{A5v+VXO8saXZK=V&SeFm(rL#)Xe!F?tp8i zk6W2cjG}PQARLJcXF|9MG9%f7dtEL#|KDu^o?BOL_ZH$Q!3|9NeD zlplrxRw4<9PJ7!gIoek`(1r-3vxi-sBha+r(B=|?Qdn{kMh*iS9&k?MAf3S(D&-(- z7C=zHy12&Ji7##r&4up-+WLzHWo7dX9NeY~&ZN1U6)Pq~Lvk!Lz0P0CeiGo3`} z9=0!|9-wF0H|_wIcYTM#6A$u)VNOO_etHxfqzq(CZ*FN|r{B!v-z=9<%h`9f1-z6= zI8HMrdeWkKT(NB5+BZ5LU6CoQ**5A|<|Ujwm;QxA7;UF`S5^s+c*^_Kqdb%*QrG2~ zaGTe@&vAxl@|w?!PQaK#xz4Y=XC7CH+E2DkcnXcfcXY6A*Foo^Gi9VQFl7zTgv+*6 zG&!n+lJ*(iR{5l?F^@bi4W&~t(aO92SAuWX_a#9YjH$pa=Ykt;)oZht1P6+9ka+iUrinX?xGK5%kmG| z6EBu&vQBAV{+0ILf{gtqg&-VCSoMxNgCdbg~clL(`Qa=BIwS2^-d}nR+syVWM zygN|`$p#KPQm*ZNu1WY!!d#^>9dOUR=!CQ?#iYWnAlHLBSL(W{#uIT@7QK^i|7S;Fljx+>+;`jj%$Fof$e4 zxa|YOsT)#Wy~&wY%3b(2(~0^B_)c{D#8Cg}?#eASD6!-GGmPLVWwp}YPe*r0oObFGqH=Kr%YojQJG%`%wLSik9dJiDXG;ehSYS+btad0x z-@+a?!Y;eZFFZNUVh3Ck#_SoL-SMewzmhxPrnI%kh1f!0dif>M#{2hg-5g)WemTm* zfV)0^J$hi-wJ%F#A1Z8UYo!BKfD3v^C@?eE8&Wh-LC zy{o}p-*?HY#0lj)W{V@Mpt!8B$V6?y;D&!s;!r%6-|GIIgf87q_)L>?s**<8E!hz_ zedfK{2eq3Bfx7sMkKf8Uc(>4R^VP|M+)b!wxvk>mv2D^X;et6_Gq->b9;a=$-*I;w8m@~+_ti!3F&1v}egpJhkIno=-E}dq zkw`zZ6-~t2;34c3?An`zJ=SqcyOBJleaOB}osYKBxiM?r9L^}a;OR{&je{PXC#WxO z-n=!|uYWxD;~c$t!_l~GISwdb_PjI{S#(RIt{4$So^hU3>|)mC;$LY-JZMN6&|hbCHK{IJM}k{W3`dsQXj?+W!_vkC;fusHp1Y}pWlOA(6%TsSM)fszr6p< zY2CU_@ef~qG#)=N6mPrg3}g*+BzRyu^6GPUJwo(6qM97o8$UDsK&)ya!XArJU;L{& z;P9pb-`cx%z}>)HkK-!U<`-f%kKPJ$MlRiCg)V zg>cFWZD-C?59hqO^u4XOPp7~SM##~oGsZ?H&)8GnFZLU|q%Q3qE_QXkWI6JN^rXGY z`e(6=dgsnv*}qe0Q}0f82Oii5*0D`svzfx!^0kL|Ju|W=Jo$;)0k=#C90NolRF!|O zL6#F*1t_M=va*ODB3t2^+qAuc9(D3m9pL0n#&ku99hin~3`z>ca^?^Q6anN{L%G^kqZ-LjPeTMGIA9|AfDwNOUfGb(8 zzBs(BuiUdQo+(Yl)06p1exJ#5RkAs@iISfJs4KCJ^>6!xu~Oiw_p0wS#v~n-I~6|s zH4#GVNuEGvS*5tuSXiB~^PKI{kKt;Qqkw*#_I zYxgyV%M*zkoCL-Ait~#1bsE?gwzdDzVI~l)l1k*4ax15pG7UjncH022aA~w{M$r;} zcWO~-!m1NW{ON#^&We(Yf`sAFwwPa9soEuB%SUNYr+r>0ok3qIziEdGY*Ctvv#v7u zs{~oT<$2CRGrKR`wWcF#AK}2Jtw?<#2v4kRMLXi z_MeW&0$&-Q#GQs_@uDGD=aD>?d_^1l7RH>g@xCI$e)6MS7H-F&OldnFOJ}I7VKsi~ zL^+P3%Q}U_73og2t;dkrI%9-uDxqxL-RnXWY1!T5p68-tQ2Manp_ZgA;Y-6h?+b%` zkUI^fC$UiD1L-&Eg|<71G$f}ESZPXUoS{n1<8DC5L;J`{fX)hWv4hpCI(x0-7%LU` z6Ea6**(?rk@9vqMdD6H5yk!zpcD>kEovPMZ^^t8)r*qcB?i*sz5u~oEEI7D-ARc|_QC1bQIACFqZ>2nGq<_>O#jX8gf2+hNE@+GRffBNg ziWX94!m}#!=JUSy#IbTW4dk>-d8^~oFoxdKnXc1SHm z+qSB(kD$2?29Wb3FqLr{Wu z%axaX&z)TwiR2~EfK#73M0gH&;VoFaAm6jhdLjqN)1I? zQ~p8k(z>$Rq(fO)O#ZbmtY12{T;UbR;zbpqYd$V^5I0Ae1P)^$aEGhBDvwukO8p^aE@g=u z<(^Jn^#OnT5l7V)xAIJS%JIH7Clfc~GgCz)+@l&~RdIx8m|S?( zn^mu+eop>kVBqQ6^f3GC`V1UI#YY;yf+SMx`H; z?rB5j;aT=M`5bfXsnnU}aq?J~vL?gbqtnTk^E%t216i?`v;TH8FSCD`TqdtnfREE8 zaHLL&3S>J(koa)-zP~HJ@+Q?}UkzhCGP$GEwoOdZLBdC7dDG;*Diu9XSV}v*Z`7B1 z=-GZXmHg0@eI)3@UrTxAJ$?(PpVYs&EqmjuYK} zYNj9kFS(`SPG!37azUPGQjhb(Has7A`_Z@N$Fl};dLnsnLTJf50|#6ywzYo3sU2qS zID5%rbj9Xi#uZy1+Ynu|=f)v)#YPOYl$_^N&1JFt49-w;5jShPkgqJRcA*60hvx^s zV8zl{wsD`JB^FVG$bh4aSo0xwDyl!LL052bV*eob*cD{R<{_WMbKOgN;=J=##L~GP z(Ys|6&Jxc_niQY7_NE{POVl@ThB*4gaBd4MW1M=>5KgbFE?OBYRxFMN7PZalSrFHJ z_J&w@1Y0LI%1b$p=anzIf;rsOxQ7T`UtN8FjNt_Q=EutpILEde)9EjD59cGwAmxCO zSWNc&hyL`f@v|?xkWoo)r?OSUH2TgrR9RnB_&TfwzuKDA9#-H)@XYc=)`204lZpU~0&(FnS zoLX(cdB!?s(HYc}mq5qrf*m-EwP{~``s_G$IS#l)yEc{KIE07r`XCOF3PcMJnD(g$hl=Z@Rs?2 zEiCqlA^654LZln@*Q35iJH*ed1>JG}WjNrHFc=xp|C~b}Csg@i#=URedN<)=r^LpA zy4bLTMcA}$Dn~!P?9`TMq&-K6SR}{d7I$Uk+!Z>NR@Jw)b$L{Q_*aK>Ec3b=N0kQv z3vCIET4#ZoPAGH*J*w+gaxHCMWJx=<{LOpQ*c~}<-fZR$*lV6kqW#0@=ih#0TYUWM z567ydbK>Mq9EXG)1x?72vDioyn6KUY1d;Xj#p|YRkGaFUV%8!;P_hHA9=lK-ytDT1 z2jZq{zaG7Nbg+)(uGCfMp9ddKj&Iz4Z`^X*gDf_1S0-8{xNw1wjINNr&=VUOL!|MYEu{hebJ7S5lway)BBvLSfi`PG-}upGMc<^_(X-j z!p@b^!luDPvi13K1g8_`naz{p@-t73ErjB^>7Ga9AjGHVUkBWD2KGkh>6AIb#J;+&S#c@`;yhR7xRhLFI7YCdK=IWKvfgQ2$-h1P3{=e&@aaw0A ze*q3S4Xg_nMk6b^AAayLR^9XxW4e(z&wVh_VDydQMA88Vp_`r$2OMbmuH=e`YNF^v z+gMGo6-El=#3lV?dlXjOuBFNdp}_^g2t(N4DU_(o6@I0kxu)DQQ7!_^KGF#3t`&++ z!$um9Q8-L8RAr2@;}w_+QH>rdFVY4w&_^g@ZksJ<@n|S&W%8}lP1@2hpTeC1=P(X9 z-(!rFTwq`fsnCK9EVCxV(m3%^+G)F3twdhHryPyl7$z||S&m6V-4w!;`K@5D&VUgf zg@Y4djdIepZO~ZGqclFaOQcNJp~fF%qMS8~%kd7V-8sQm)z_6)Q_E8ATuTR>_W(v% zi=hENNxt=VRX}DkTOxtnqK+{Ugoqa(*OJe?>2q42c+&vm4!GLuwCTxG zs;df~gp`c(isdP1#I43b^N7zh6!D_UM=`(%hZrbHMO(#CzRMOte_1Y%9YBPlz*>93 zhcrQWEj!!FZ)q^w%=4n$X{^&>TvqE#kG_+w=Z}VZ`AoVOHm`+Geh?NNK9;Fbi~q>D zp*UmN0tVi$xbwlav5OVvI>4cF23;H}lrPWebkXRqEOwQOp$CnR?xZEd_JNn=Wq3*0 zbMT}B4Nl@L+XXCKj>A~+QTi)GqLE)?uB+*WaH#8ir}~(Ub5J9)yiGw8PB~|hKG%4f z&L;TKP#n{k3}spWi@o=N^7A?ldk4T`8?cMA=)D6ZL9l_nQzS)7wq!Ny+0U^p+sBd} zE4EI2l9%I?#Bv-Eg^yTI;ZcTsk+c)#D= z|A$?I5JifVEcv{TT>QUs%iNi{bLY<7I~SOp7-?usXB&0fU=>p3jqe;sk|^ZU(5j3` zB?1_QxB5%I@SO+?V{Vp%@bR5^awmI#>>~tNaK%?%eJ-b*kY* znp4jD-Sn0zKE%7B26~u)Tb2$Sff5fzrkAteRP?-bh`Cxy{OTM?JV9gSi}aHgmJ4u2 ze}Km=$NKCa8A_0PY_EOM_c|ur37JNIaDI$B>}$5OqrIJlL#&u(hn&teaYxY@2~@nH zA+#0_m3VRDjv2>=pLl)2IX1^D68sDy~bHFJiZ-XTK58pYOIgLvHY^v0rCi zjs@V?u~3+#i+I$TlnzAX#|N*zI$`~X`|gi!aFn_gWy%LGM$rKwkC@MQwq00`pf5FY zo|}%^J-haSkHIvm$b0TY$^Hw`)fpO5zNX?>Z*zsQbY$W*0li5lx_sKz*&7>P-4HWo zlyf=c1?zHGlyE9lgS1V#tB#;?$1@}-kh&Y7Az^T-+jiN;-2KMAlR#n98EO4RKcLUczrf`A5RNDE zfzKM0az{S(2w&>M$ToEx+bOP1>#r4BHreQZ_LcitI8IbfXxl5ztRwG%(a!60;*G|uCkeaqRvE5S z%5h6soH&=p;)woXzssGZ)M38|ahYe& zz?AoeS)P(EI-zqxgnAHpHKxmFmMuLUo6Mu*%`rkbC!VP?VUVs)YK6)9RxW6P2L3ue zB!A1NRhjUTdbatk!(V9vu-un%p7n)kyz0vv9h|QW^JH~f#~@Sj(HE{z@j{$1Q<`^i_e+amt|9dM^25?T>Y zZWN0gW)QhW-WyFHRu0mG(q>}+QjgZDzj5&F0Vc#zhA$?@H&)85@jbi z*O-5DzV^CA-!JHXFzY!LXZG<*W(o1g`?uW!%9=2xEvC$wiQGOBTi3qAPN^li6P_hZ zv3v8@m_CEE*U)_pPp^1peOAn5H_~M6X9GCh`tc5oGBkURnS`L^=!50U7sld+3u58I z#TaRi#cj9U9S6I+2-&zarVvh&5jv*fIMb;yz&y8eZ$~`za>h7|$15Om=c!;CYWl zh%@GkM{FhP9FBqZq11(y2W04{ub;@>|3lofkd1lKJRNWsuE6|_GoHv6(^;6-+1Ver z-uW0taTYCs2aWgcW^vKCW1)o|VyDdIt8q#$o|7Ry7cDy@{^1|*jh7CgXHA+KmtA~r zy#M-ZqJ{bWnr++Tu4kW%QRq=m{I6R%KMALy17z*8EsoE{o@4p`71{r#&;NY9|K=-m z%=0}OTHOAvm*cvzj#aBjy-pX1w!tO(r!1cttCG7 zlUJ|I--C9mx~BR zzw_sFmrRQfU3(^Hh)#(8gz`U1c|Coj;?{d!h{M3UA9(kp-#dm(W|PTS_^Y+Cj&@Ce zwwynQZV#H7pAd1U30&b+Y-$)4*IaoS;|=`)$HfsAR(O`(E1UMk{v)GeOE;0bMu8g= zPrykxp@Cg`ErjD_VMYUU&M~7|07rT1b}t>k;8DHpc=IgjE+lI&W|bMm_LBO zExQk}vku!6(}&}PYaB%9V`Ku3qVwjwg~gxrf~1u^E06fy`HVF1s_3CEoV*QA4GF8I zO&!fSv-31lr>p~Foor1kz~xOYY;~8T_vNq9nuqWD+P14B{`$@}@z}PW_~bQ9k$Kck zu?1W9>oKu@dq>>&?8dnA_=_>Me^<;P1m$~vz7~QK{os|So{w*R^*%yS5{U>0+y$PC zdFe&Sp{98F(HG+0`<`W|E+JoQ{m#uw$Kjzv$e(@K4!W6VefXxU;uk;h;&c~M5%#Cb>g~FO5Kzn&c$S&KwovvJ(fiT?gDmxS%*GTu4?Xz z97J~N)Yi_$gg0$L;@d0jXy_S+p;Y5loH-8@X6HZBF3$}|J~$VY0t4{GQRZQz(A$q6 zJDkUe^&jd6m;cNhaA(b(1Y!}RFtv=C*x^^CNQA>6-3gEgmT{`dkcK7&N-{Gym7vv7 zZeE#K1E3wnL5Y_oKV|DMa>8kK4q9Fc8|&6sWf!zA^9)h8>0LFT(BUP-!e|I{PNfrH z2}ADS47hurc{#dSojQS)0c8gq=gF}B-MmLIWK5gTzyYNTFn%`0<4{1CEX^46s!kCj@2ZGtU$UTI&MeshE6+iRnl)o;Jowzptcqb0K)>^{uO*+?21;ox zT0Ni5ogykI?*2?;qIgMpt}^6Bdr52`tmvSuNxTA&4OUr711@kFy48MT8vC)vWeuHX zpUSQ=4W$m$2^(X`5mrkMF!<_}7YDXc!)2~ul3$>Ys}h}fyP{V(Y`g6iUY`vgA|1^y z&JvHb!?Jvqrlzmni^D3dEzEvSJ4dk+U&DoC-eDXarb~k+@JbhrvpO)xH6bH_ITa7e z6+arerJ0V0);t5Q52xk?@NVcZ48+n5KD6CBfZXMhhD&fQoXTP`T<&XapuamF`%WcB zoGRy%?*!bsX|u?+ZOT|-u4G%0Ukb0%PsBqySZGHRt1mq;+;+M1uY(DKcx{Fkrg8AF zvUiAfi$BXWudwSJ@XVv+PvA*|2)K7gi@YLirYk&wq7AQ0H|c0tOW}3*qVG(XZL=LU z8mTXo`ik7PuVjcx@G5>BON1eJPBJE^!-F>H2(a(9@7vPo{LDF$VC%!zzb8XZ-*P_=I40)yd*Rd}WY|0F)(Ka1ydr}%Vt2Fq zTeS(-h zM}9|p7Y?}fIN+wod=?0dr*8~mpp*}e0cV4|mnbW7E|S4%(O*>hi@fvMOW5TB`NK(o z?XVpATw3TTknhB?eB(s3S^#7}(lMkQFFaRdtPVPzpY|Q=Nu7$atiwJ&p6_+w)vayBy7sZ z{qWKuoucsSyajVo-^>hjeVwl-(Cg)a)W0x32xmGL)ve&wO0L@`c~dy0pRz=J+2#tD zK1&1NX;^MVZe^dP{KP*Q{nZI=vvrWCtd=mmke3b-vfVT(6KR{_UJS2ldU4#xnBdsg zi=nQE-G~~Yl(QC5$6^r22}4c^hasa9ZYF!mSub&!{GWOnAu{2EoTN(=`k7pkdK1sm z!HR`PStqXT2g2;C_iP(|Ao0OB^*+yYG>wKE@sSI@psD@R=%4p!q`oSL= z$X4i6(b2L@XD9QU6L*qj9X|Wr1s3Yi2}2fRIlyH^6aRyz8r6_Qf}6ZA{|cYuzPth$ zz@qFH?t*W3s-+Xq!ngn(2izo#Yb_X9dt)c7cBvHjic{0J2TMQKJU8XMF#gm?I==`rLrkALz-)h6%F?EC7nEvdJvo965C%|4#+@+i%! zJf`t4*)9v_TWy}JbI;2%GhJ0l^;;?^PbF#IOM~jF_$(V)y?o2RmSek12H~!*d?)(f z*l9+3|wJ zCwbv@u#m>0e$Xzvk2-K&8rXrKJ}55VG2XsU4YePi?7wfQQ;gRT&rfw#vZ8uE^>?J~ z@!QBg?X!G$>O0?mR~Nucm_i6jqBE!m?Rs@nOkc7%7f5PAZQr&dX3m@)y*SYfUng;z zaA42IQ8EF&@C5hATw$$|7u}D|GAsnFCv@H{oN&uyA&ZL!*>-y8o%cpN&XeWK7R2-^ zt?c3n9B`9kJdOhGfd|_U#$!*t7!R)96m>)=80#)``ldYXVu@CFz|Ego7LaY*6G!N? zv*`<-Gt@>ohGRX3-lR@G$apcHIgf_vUi1=iWuGy!0h%5RI9!o^GD);k`ISNgE8wM@dPw<>PF{u-Q`t?>dl z|HhgZVib${p8Oj^P~xD>F`4qzGsH(0%zfd7GL~xN`O@$H0z2TY%sym~Kf%U=Gp_!n zn1AVIv2)`~(XnMKZ%aOYQl~LugZJtrg|F0CVcLViTq4&YCQS`|`ZCNwi}@8*?c7!UT?68s9Q8&(@uQ<7|9A zc8tM(c8JbPJIy{qjrOrY#LXagKCqVl)DZhvU)W7&noLN^Y3M!USU56;`QwB-xCc5L z-N0ip>gj(?*u`gaya8e~rZ8`tKApuSz*?>vzWAxBDnvl(ignN8kmVQx)kt;3Mx1*$ zeBfptO1@WLd?lV=yFGSy9gY=eE{R1`u-Rban743F(HMbYe|tx~vVI$9w6m}oz0f|U zou}x%g+}s$m-zQjeb;$bH9rL^zH09Rc-q8Grgul5$4(g4O`18kaF^S(=~LjX(HT}$ zr+n(w=weklnfV?4!yJKm^%Lv1$3Hy0CE5t>dC{^dx#&RWlqz{*lz)bRdF_^tXjpe= zOzhgo?$|kT-6wFswG!48_+NhFxp?5KhTdgoJ$!M&xhrDz6_=%R?2*S_i2J|weAF=q z)mg7zEB>$WpXr%4UKGu)zLLBFO z!TGt)=k+aKR# z;O%Dn>IAlPuUc9{P`1GM8o37O3{zUiat7QY1lhQFx zN*v9O@-P|)T-gEVLHDI|+mi2miNn%T+wVZcpqTG$H*l2%B;jS=7eV8D(<0)tLx@)= zuo9NZxna9}PD30tiKFlGm>$KcpZ>}L%eDoS=tVL!$SW)&<2iecWI%xieG z6Kn9U%Fqa6yUc4_gdv3qzY20!(|c)HDSV2uhY(OvtlH8@D75mf80Kxe-!)bV;}H(& zH9oE@7d0|^pu3YTnw50Q3f`rEbkte20x)UJ08)Aa6&R8S{Nx`nrV!(+^foR3bCvIA z_uju8NAsg)`u>fVyrV%tV{z`FwAKm+laoIcO@2-30B(`uJBzj+nKmzf3miVCF@v<` zsqRhcpE9Dzn{ryWH9t)wYTAfxP4`|FYlQ5~ci?gw;Bsp*K{Fp{;^?O(y*vDX|kzd)a zEOoHe>0vu{#yNq|0D2V1-8lNCO0)7pgR+BVB}XcnS-1VF7)lFY_|A!sxU_8=d)@IQ zUTohH&J^oKSu_lq?KCuR$plPHuT-&mhvFFZ8dw1!EPHm=T;8{}i_lnxqHQ+@$oQErOE!JQRe;!jy8 zPUV4ARQavspXJy#>!fMP-?qWFna8q)LH?-ZWzrX%d*;z-&UZDv4y8UOZTnHM>shYa z3NK7#rK#UM`?RH{CG`dCwM=(2CfvZ%$O_COI4b3DCtOwC;zh?R6{j++lSRi=QMQX* z8P6^V;jvunvP|hKp5#ftiB)+-oX8XIHfzSwsnK5=`CSKv;ZVA327aA8@{wUmP*Ib& zNd}De7X=wShP-#2;uVu7oz&7Mi3+}ir5Mj`kFbejFZG^$2hWL9X&_v}S|;Sh0c41U zUM9q2=|?(9h77*}yqD!%#Q| zf!VQYEPV)&^Q<<@6~4-WBAgln#{=?5uD`(nF>Za}!3+!H#KiH>kge_zIZ6nN(l&QE zvDisoh5tJ_J0tPVio5oG`+?gtvUK2il`~jql%T}3p7p{g-<%&E>^6a1QIrC=c3UAvh9mUH4yI0*Yrwnam;wvCoHf<6<+oe3Q-ZK6bN~$wC9!P6(V3}U| zmAuL*7e-}&A3+CoBMm#AcOi_zr87$BzIFLdy4enKG>);w-IUTnxv$I?-agJ*%QH{Z z-KmEj25m>hRGc(A;G7e9PPF}5B1s?1 zu}$K{aifb+Rkqc>WSQ2Ni^FJVI@`%7?B;QWv-j3z8+CqJw@zoY_ zUb9W&+_aWqnaU2wH`|mnN~rw|yu4GV&E2}dmpo5?^QB(Ez4cXjGb^}Ce2BLiuB_9t z8cS={)M~2o5r3p#^oEw=c;`0FcyAx z*Tg(_S5ISC!$J6A2dnmnFjSDOIHJL0acY%Lp%Fz%0OqniITz(w_`MuY=q`E5=hAQx zndW7mRd;YMSzWbkC-aLVaaiG$4^`6Cv;3aUWq=Sj_RSn8vZt#Wke>f-cLkHrSq$>m zc8PyW&0BBs@~ONPcjYUUB$Jj$Q0Q_f4_11|P@O`%bcphrhlO#Pi?E8s&~WeBCvj-Ut2V{&S#CZ;CP@+Q`V(1o{u@V1x7L? z55EEbq^Xs7vM!6SuB!f#&)&bQ_^%aS)m70cI9ppsSo^tpIG_w4zz(Bt}J&-Ojhi_v#B^O|vEJwJ?SDvX^+N$0%G`9g;2V?Lq- z&dYJe^2VS)IJdD+=dKS3leS5ni=@%6=57yrQa=T%YpU0}_-v5A*g9omTz>hgXc@&^ zZ=gTUJaYwSV(pGwzy5ga?Lik}E~5i(09&eKjl3;sdk(b6P1l_tE6-ZQ8C?T0bJo20 z+FcLFEB)xCO|2ZUb5Z=r_18ozj;QBxz}@xy+Bku+{fWQ6H5V3YORKJmCwKy9s%078jokG30(s$G; z{3|+OE#eCKoC9YO0F{`GjCIc88kp;%mrC3r9Mz*3FX}+9ZjO4&*Iv*BUr!!4F&55mj`v=3k>NO) zQ`KST9v|(@#}4)!PN(ey&#aGq?T2vc^~GL%oUP2)mT<;k^BCqv@MQ~OD_a?h#H(ZC8#Q|9!kE^ZUj8g0FOlWX&at+8S426S!w2f*HnGwZtdUrP~4EBL&d zV+uSzXcT9rPUU>BJci>m<+;fBS@2dxN)R6cDGv#ccvII?4|hHw?^e9!y$iy$bGv9! z;<|Gyd4@h>q&$zhm^W`0b2oU4j_MA-nhJUvXx{lNHM?0r%jo_r<U6&4oKha`hW|PV%iF`w!=L`xO|cA_>3nPY zwAMJv;>Q2}<=dib0RDnMU1+cEFz2?A-W_h0Zzg$NU?GJL+hfQO=_IZzT4+D8-_rAw z?w$c>xLtJ(>Ewb0WvBKnH+mV0QroNc9O>k5NOO^C9NV$136J`hdFVi#5G zNF6xT72kY$?^`0!4~+xv;suj%T(R<&(ZY#|vNg{Uf-^E~BnYxQD!T0u#h~DX10w{8 zl2EBQK!nn9G{6*N6<8;ihCU2Bq)MSrVL4%f5mo-uK*YVo%J0^OVc4GMb9$|**K%Nk z{PQqA&wy)dHkR(n*vZ!OZxSo@AO?p?grGcU$!u1gaqdL}%#QO7jzNgk#WmL~PovO% z#0=iGabFxmIrupoa0_p~nh_rd9LC3@Tw~PY47mMIJ`;cX+qV$gdPX|n+A%mCZfH#h zT<`vUtVroe1LCgs?%3JU6aAxE)y^RB%(_>AlmY*{cEHhE+MdkM0OY+_K9?IFz$ky! zm4hBa&z%L*L?@QC^6VD14?9TZt+u1O)&3}kOKBi(?YNbp&D~~BDD4~#bVli^(b8ur z;J|6!Y3$~n&-qRRrDYYPNr5blg}k#KjVcWo?^H%K<~wP35~2gn5H||(tP=&N6`|l^ zxbDO`h#|ysUCH1jJhsiWPL!){^nk)Qc(bN}YgDQRc~L050B#GY*A>5I;I9l(m4c$6 zPsbxLJ6So7!_AJNQl`OO0Vf`;tD;Q;_AdNWIpBmdnLX<&^^L+PQC^mcG=}&kzna{( z`OX(y7Lk%O?|p9{_1zmUTEojz9dP6!{TPiQW~}8E-zqwmFCUb8#7Cvz6*#I|67SVR z?YHo9!N0Fc8Kpea+lK1hx4S0=Ig2c+24tV5Nkx}ZPp#6dCtFg|z$fyb{lOWkWh8C0 zsih6dr<|bH@>-ILro3128NDa*Bd-nPzSJX#1%AJkK3&qNsFrea5=@&N)QW;s8gJ|5 zQ|rq9N!x@`m~FfLHTwbyUA?F5GQG-(bdw%UC_kP7H+jL7aC+Xa=J?_?UQG#^zKXD=K>1?Cj8c5Qh4nFPcB+0hRQ07lK z$(#H`K4GoeX6;owY-8aWlzJ2#)7v&-x4kM}^0GTn?CYl2q1KH8cZgMehG}p$sApc; zSMoeH@=JerRK?P8kXir=BOP4kFwY z4O6k>Ir)r#eHLboSViH)(E#7r9%XY2{3_2JLdkR|kMJ4BrJnv_KNd#AO|~+zwoG?K zIKfrPvmq+;?%2w6$LJ68ll|Iy{j21I#(MMXw6ksF>MX5c=&a-|d`#K=z&7TeJ*(FEcl)qh7Kbi&$uMW*r zY^}rZ@IwjxjXVTab%ZAR`3JANHWlGpzV$%#;#_VZuYEsvivxrGt7@0KbX@SFqVA42 z9T{EdJ$nfI-FFD1BDhR?@mt3ILc4la&$LZyDXWM%FutBuoZ~ULxbwxssUdQ<9_PHxNCX5SH4 z%5`~{hGe^Khy3p)ZoRBS97rq6cZZ?xEK_H?cs@iZUTLjwUz9!K+m++;nQa&6$`xgYZSj)F(lKm1;T;*k`pj>+>2%|zJmq`& zLOT22`o*R^UGctf`o8eF4*E*wTbr$8jC7Jrp3*M(3L0d7VR|(=4HMLYDBLfCms_% zzU0WCb(;E(m-(~p{0hs+@=D3W?=o$cS!?@<;$EN6vPv4?mrHtAx3!NxdRv;3_nCrp z<`YN4^mZ=msIpYmWnmUly~x6ArJi~}GF=USwUlq^XJq|vDZ?p=pfYdDSUnZPweuk5 zk@~09v`=|nqG6+zA&rF2W%`W{;(`lyf5*beW&;zS+4ba zWxqgnjmD9q{*#R4rx9?Q&gh<79Qp+4Y0xQ#Q*Z9fnQ<{8 z2)ofe?`H?x{%u=hE=LwjYQc`g?xpFRJI8Xim_2Tw1%l1As3 zb1o+ZF20{LZx*`UKy2T#GkS?2FdaBNPpiqf4LZtU;A3z=Z)Wj}Jmpx6zUDZUdKhDg zJ501o4lqZS#~eRBqiYo7u4lg;K|eDL+zImaa+Ylw_naf3$I*c%5SqPmz>PX`2#4Z= zm_27f{Kx{GyBE<@>&w@-f;si{o?u{*%LSad+4KFU0?NaBHl4@E(SD z^l<8(LHNYa>43YSIN-XOr~Jh4+!e1q@i;k@Z$%F;wi1SMObweJ`(h~tpBH(iR-oZP*}a2(dA9zoer30=A+mQvHzI?}~haY+dXWikG ziJiNtD~|#n@{s*kzEWRy?4);z%DgWT8Ni!*KIsfYDPPV+PE27Ds7I+d-?y0W{l%i+ z{=vB8;aB4;k8g}i=TC~2b2#^pIa=<#WV{Fa$pp4R{zllu`o|xR*3A#aOhQmzTkU|O zZ?1d%*?5Q$l>7GLfJ2cm{O;KoUx17lACEoxLfn1#Gn}dCf?nO2oU~YH< zhx7mS>7QXf*&CB^u+HUtyABpa{I|dSYV-$-511o0U<0x5X_vQ8>nM{Savlo2+M(Pi z-RQ`@HCn_z){FQMq+Uw0WF!I3zIP?UGSypNK<^YugHfV*hHgy_-0h%iwU zX!Ov_$sGdU2^tv&cQeocRl`G9Asxj8wb0dwU~oh z`E6nlAAotr&<@UQjcczx14DF6=z!b1wKE2oTz}%z*T-TVaN}kIQ;((hLD^@Nh)MR&bb1-Jl35<$|amJyr){ku@UhkpUvA-vJhTOtVJmK{l6XJK` zfD^BFCge$8;_KvvU;^2RL*KcQLB$e6V7y@UFZT{`($1ZW)%jx%wi-e#%QG|FmTo;7 z7m`M#cfxB&mQD(4Cx6}>``U@UMju6=gG3rt_*RV2?&7FRt!dTnQ64u&}KR(DdSiobqwQzLf&#Ta=3E9PG5`?7&_^kep40Dq3C-JHfad7 zjg+r|alp6C1d6)kH_H|+0#sL%9V~45+qG%p954GhDb5{i|vR2C1_$v>1 zmW#MAMk;@iX)tXXmr~x9a?@Bv+Y7D>4oqXU*5f6-rM=}@+Bn$QhCIWB^eT1ou*i{* zvtI6XhzWJUZ&5x}gIFjgR4zaaiLtxY({xLf5}2tCryak?teV$ zFr>RGpJM1QC^Mwdz?RN&`h*Se;MNR}g;9L+L_&PvP;tkBm+;H8)-4=GmW$_tW099F zq3xFCThkmxA<%fO5ql5=yt|e>0NK@sZG>59MESSxsuZfb9YuKnd0CG*kT;ZR4%iwU z-8tPtD97wGw86uzQ${e+uwBBJbf7T%xwMrQ6`ZI3T8H1OUuj|*|C0BhnRr!EPK<7Fz1V9CW1Ev$Nye$v#kQ(kK< z0S4usd?@bo>?Yo+;D{G5IjkB-GcVtY!CV8TFG@RmxU>BXP2Ssdv&fnqt4)WIu1X;>1TepceS zgV*q%gS9>+esrc7BF#y&J1B+MIy{R^oM&5V@9c9bAi^ZBg~xmOLPNLjl+of^N25q} zoYctX`C%I7`dB4Do=`aA=1>Z zXlN?NfQb{?jR-8(ITk)L46$J!>|gSSVNV>(G=$r~D;hUY&WEnMPQc=;4?Y~d_80Ec zNB~`RR=O+69YE?2xqF0i97i-qiCyupeYnE8bn)Il z>7_1UAAp$23l;448T*rT@Vm|*%NOVB9_IJ5Y(q{eLrmxUN(Sguw!91*3N9QcbtX4q zy!1+agkmbAyX}?s($5?D)DRx>W`^LQf~s#g0E$3$zflxlI)KW3aelgTQ-`webdU>= zVHppj~7^|oaV<_R&G71FF<4O<$o{7j0&IfyyKtW zg~j)_MR=7g*6n+vTNu*R^HH31*|w^WNCWk*3^N2RNoA4a#F3)tz;!ds?DCzwrMxk{bkp$R*$sI{vE^6?Jf99b z^febhxG*Sb3ZBg;T&7W;NQdMbjEVE6O^%uDDDv!z*YDxu_`)a(5PF7qY0-V3s+e8+#@OY6Kwq_grOk1L+tGkv~n07xIWv1$5Fmu6bNU>J%sId*`^W zk@94Tg^s>0ylj7R2e6BuTx6$gQh$=i)M1r#nff#|_k*nW19{Od9dHVvGVTK9a993; z1o@v0P~d(Nq1~s>Vg#g$jZUe0*y+_5WmzxZ-AV~G9HAA4UcLATkBarTkBz8O6`w#VX`)AFd9 zLB_tx%(o_?!_Vg|;R86-zJ($Gu?^ce6K!HNV*^y*JF3kJox%{5bLY>@1$#TU?1{8y^g{n1%{Z^}z)*t>Xa2~a zc1c6W57Fm6&+0gKRnM=p@4N8tIQd%9W3IgFyl5Ci-@&l#xz0D;baVXm-`&BPZVwa5 zf^%+RjzM`DW1jXG(8bwx`{SCc&W$rTW9t|~dD*h%@sD>u!WnRkeN8R#!JDp+_g{NO zj)Tu_+ZneLg7P@Ki*&$g>#KB!!gr-7=RA$F9J?HoZzja$XFm1OIEP(!)inft7heCb zWAWLmV%`1s=9q16WeJjl%3W+$Yy*xWmXl*7FG-U6KrY}yXK>8Rd6Hwb3IqSEA6H|q z`heqpe&AninU1qs`96Bh8S%Tn`AZd8`MY~}XZ+^>dNS_+$J@aXTt(e8r%s5^=Z?B1a4c?!uf5p32lP*&rUZS*VtLqgCNLDvAWhgzBaaP+?MAS8cFQEAG{tExoECxah3AT zeqG3XEI#+eTjR=Ai%MSsW*64FFjM_qJgVE)F~8OcCkXTo3N4HE1lM_(wN9pgEnT(% zeOBIcp8jTazZ>7w;R;TU93LGIJhdVI=Al>Eq1zajFP(~f0@qTUJ|@J{yQJn{fRiV- zKYo8SZh0hTBkQjI#7AN@;YRhHtb6R4c<`(Du=AH)wd6i`<+50P&BfS{8sgC>UW|Xd z{ZX8`L~28yb&e%}s$cXo?>~SHTZRMhlRxue&Klg0)Ao2=e9^hFW6Rd~;$PengY}## zh;yv6518LMl(q`-s*R}V=j!V$NJPi+k{=aFesg|i-*!%#`nqMnVA|)L8!9iSPHW5a z(tCktJoW>5qmTKWmvcaQR3C!2Bj;4^)azsMA|*LVArvK1rmz*BIMNs2T;GxTzSBQH zG!D267qmtXh7?1797Ea-C=?Mc9xkfjlQ}YmEsURs%+qo^ge#?*oES0*D-&99#W%A% z*k}N?8_Rf3yjAp4xWZI2p+*pQI=I8i%L!4&hvwc%rvrnRv{r^Wsni(m`7>^*Jq|NW z#Q}H4d1tc&ju4bEV>bisA8szzP zTf8*TC}TQT!s?JHf=FedNFxnqhI!LKrLcBVuJb`9qlplk(okV-8Q#0XFCBdlPq^$@ z)?ZDc1xv-(PMAtPJe1CW6qq^!iCau)A{7cdn-gS1*yL&<=p&D4M9@gDG2%Gk>Bb`f zTrKGC7!5YADuO_@_VYuX3LcH0IhYFsm;9-)HiVt{D-(0snnAzDpYo!-Eg#EU<`GvK z9yK0m&=eOMl{}xOkuB&N;)IPNvYnRo&aOh+k>#ZG$c7a%G2j$oZ9AZ9wp~R^!$9uZ zA)U0yk+GIZx=823AI0!i;IuOhL+p32RKB=%La0G?I0R*?37ICH1=%M_m|e5v6{poz zaH=7qdSlt8jaH?B)-+z#d+#++O9SB;c~#}eoAT@MRrLic8hKw*Sax+)ZS?u%J>RV} zjh?($@fLq+jN@D7T#|><_<}re)l(Xu7$7R%u}$)geTWt%O)SIj)+HRpASSLYfi}M%*A9b2qzN-dC@6!+j%$1>^R%g8$XC1WcqxL(U2?dQhK~Tn6HFM6A z`RvwciCgb|G{)(G$Tk>KvGg6=Un%Fx-5$1AS|F>xY}JAWxPapB->yKSdRb}ALX zrSsh@2Vv^gCD=n!{W2AK&9x?F`-7<6)c^&A@S9Y6N7I>yS+aT@y=4C$dZ#lU_ z2i$02OgLz#vP&f;$1nPwJfY)9xnK->#}E0{J}FH#Nb4*bV4QS;iQ`vO9%?L~;g|qF zmM33mTvo;ii!_qAH1PUe~G3?jnDFheX26Pnoqd>^FHMu@v4e8o5Xd?YD*D+5>12847uUk=d)qF~GSnk9^qXza za9`39(vUQUXOyS+aZYRt{4!2TCra3-#;Gx-bV zun$yyTxRi`hAaDtN~@vUq?hk2ev%KQOUJ(UT%o6ftsnitvX40#gaTaCX7oJCZ9Va~x04E;hIffe6TVvW7a3hW7-{f~_B|fWn)?bHy@X`0) zNZ%SAw>&VZYMqb_&L0=wZ_-Ms|3 ziJQbB^bwYd{`SLk;Lu*%ph+0k#G5PI zofyd5!l4{5vXQZQ`SW*q!u>PvoQPw6$#nE!->mh)%r8UpN}w2AtiC)!5!9$qB8MUFGq zVF|r>#ncfh>!&lLBQ(q*n-z{1F z&o*1Nf4t7W{HLfM3Ag2B+X^_DzbZT7_JPb~AHGccx)-%iwf86U4d-~>o!^DCT=H3U zKQb9m)nFR=R$RZ+>$KIq%|hP|INnZ`N=n!~X*zxS4Ehp!gJUrNbud1v)A`Q6SC3(A zfK}Uv2m|MMA--KSQH4KtY^eCJ!0^s-on$!;8J$;Fq&5t<3u?P?cC=y;^UPo6uRNbR z4um-!&1LA*6#aJ4_q|IC&U5!XvO$?8{NHch_}(?{2fSn$Yx0a4F_B0n{TNR76aH}K z(xqhwIyRUsM1)#(!8tge&@GuqJO4O>L&z~^<+*3aVHSzjO=*kEZ@z&us|I7s`pvQS z-Uo4l^~NuK=9f7KZb`iG+U9uS@yDZU^J}qS=Jc4z&hitEQ|!2y#m?z@)22{&U)=SL zN8*XiJEDa*DyQ;(CpiC=Z}JeM5#&xRv( zjWnysgUOI;^1tJAF0A2UfZcuaSRN%nnJ5VC>>#R?<0fOb$I~#tMhBtz93!=# z4uGpx^x{h{T^03%EbQWVlNmGEA%lJCf(tH;|Ma_Gi1nLURK;1`M$>ZClbMw}-3Qy_ zMs_SMU%nuYP}Uh|tc=_4dL&-#X8dbl_tAA%#s_Y=HXVo0fTz20Vh*v;?eQ=Fefm+V z2s4#FS9GSb3$BacgLnnViM9?pyceOXY>-7`>*0 zg_@3b#U`bMKpHacDc?Nfxfi*ZM-A~sy;?-Nt7Y|t7sl4tUW>i#(o+|3TraRWUV>Ot z^6QwYqv_)~yngqyznt%@e>`63UvpmD9bdbH>_CCT$Q^Kh@b7;*E~^}H-Tm=Xzkgr6 z@Qphe%aILC^2Dg~dgrpg@KYa%|L`mCuZoOkaKQa59B>-`_iWmbLQnYA%LmXSl%p=n zzx^-%O`LbmnS@Xsj9b3;Y<&4||B-tl%uJpWM`+H${rhunq)x@nNg3-@K)qg>+yMV# zDZuG=L44}RE@k{s>%gu6ZXbSPP29#AUq_GE#m)iF&pW}qhQ1P`>=ZuCG*=RCJD zlrsi?8IN;O2i0i8P8OSHnZGqU2V_1b4V-%!V$jf-N1eODM<4zmyC&&RO}c&xtY?9|aK`mA5SJ?{F}i!loa-~{{E+-b4u{1qp0`NkWeFM7wR z`o^#S$-QyIQqI<9PV9nkVNeH^XJEm+oJXlU${x-;ZKniEeA55UJO3=^Y4{r8&+p%5 zdq(FuW{*_046JEDDo_=OS-160jkQHT-p*!1; zume+>(Zw94um4bd_~uLU+_>$W+3v!EOD|m=`*!Y$-~TUv702twvoo+Y?KCdRap#~$ zH}z+2%jz-WegM56geI>zKQm&F&(5LKUy=i@&N%FU@R~Z1JxsmaIe>E24FCt!gE-qx z{aX29)FE-w!hFy^wS$Gn&JmOWhnZt4PaEOc-tL2(*V#=pufe$U<^6AotUojkxJwsK z!Vrp3V&W;Hk1)w}6^N^So%rjRv%|XUB`+|g@j#|`5(9p4mK5WY4xAL0Al{BKiViNT znchiePD*Isx|Y}~pd z9$d2_x-d|*wKT@cB{<+*v5%0fcOalMPa<69{rp5A=3u7-KD96v5izga^xMd5BaVQPO`x)f+9K@i^ zp@zp`;OAa`HBt5Ucfi$foVgX!Ovu4O4vygF59>wjw-Fn&NQ6_8bw(tlwqBU zp+fMBaZIO0eHvb@N2Onfr5#gvH9kzlpfZ*+dr{mJw(?aPJy1+0Vi0xpzY34MVi+Zr zr<^44Y$vYZ)7b{d`7UGGQj*31|Ex>HghpN`)5U0k0R>}OmO(o;4#|g=(ZzeyYXs4l zrB~i_g{<3mR0Z;jAocdUxsr^uS6q7uXWk*uvLEnH!S0pLDR7t1q|aR+q~}Gp(O>za z;t|XCen`t3SC%cjB=%lR&I;2tI&FpDc0e+Ng5k9X!@Mz z>m;o;;4%H84Nd_3X1PvceOF{^8Dni<8a+vqic`wdVdtZ?^0J+_*EE*rdw2BN<_5wG z93UKta?p^2dpKXUg%z4@>`u@@WqVx|r*bAe3w=;NSs>BEBsS$ddF>DKrtNW+lyx~K zq>-JmOC?W7q&v;zS(=iI9#qu4Z1c%>+joG`MH+IQWeLA98qUozK}V%^%RBC*f{{}u zTKW7;+qx@TW^a#7I$a>S7sdL-i8={Mw~0#T`j6Y>TWD6EIiGmQG+sYvMbqDL{VItAi)|SJ+a!A=AZr#}`jATi8Qm18{kT*^sLxfZMC{J}d zIgY3cd1(NWtI|P0+Z-1vXRdu7>}C1x@Z7z7Pr~S8t678=nKHF4WrTfFIdqtiF7Cv1 z;gg|Pg-X16K8fuX=fa)(Ik+hoFe3jPPn2n1WefttHTcDab1vIb^-+1-_g>=2RpS2I zPwk)i4%uOPaVsBb{FN?_2g-2qt*meXh~Ys8SV1n%UHmf{UTU2{IAq#kzcrnR(7~(> zvprr}AAD$ERSuUP>UdGw=Xd!)8DGjE6Zp?n*0u389ZcX|S*K&&EBg`-O`p{%y`)jr zN1N0+Q~uI##DzGN_av8i@mnQpU5sHLmkuez$tzDdMp?J=y$O9S?F-$wnt=5TU)8-5)ba{r>*X7mho=D@ph_|3*a*3&FGjmeL5l9Jw5?l z6~5cs-jR!yHOPAou6%x|tCQmtI7=B>+wBT(WSYA#9IwT{eQ@}C=eQQW(=mzX&*TLU zO~wJ2{U1KHzluX;p$j2gNaA7^dG!q!?@q@dZ%Fq~@Ir9aFH#24-?Oist_}YLu>G^I z5}ulbGg=4SQFbZp-S}F}SiUS5R}SK&+Od99tT<~$>?5+q^m+4eP8od(n+iMBR$h31 z3=y8Zp7Y}_z5J3qUv0z29r4IF+3~~qTfg?1PsgHpvtwgtdp!Bz1JSd6XTHV>6951} z07*naR7_(hTMJ`bi=n`s%n+@)3#{hoTo;j0QC3K=LX>w@F zH+#-Z`s%3IzIj_5V4=rSU_Nn-s1Yn^Q(s8E3@#r{nr5OhxFMmDC@|X5T)4vkR>o+L zPe8{~e%goX9e)|u4KbhkH)DB54a4Trjswo|)CHZ#NZ&GfLR@v#>NwGlVHu~|Btiw& zGf%wm!V3sn*cPArgFlZgJGyXIvhWY)F}jm*^mcW`%{N>StIl5P%M4rjmD}!*mk*)8 zF!#LdvJ2y;t1l4@w;}RfyX%?`>mKhdv>gU1cN_gsN-8MN}=8UdTx_rsv{)AB^P{Y zdTK^T7)v9JP~*6$o@JZV>C}&%Z+S$K@>88G(~wTR$LlCNqul*8ge~{u*PY7_xKHK# z>K}I={@Nej9bdck_S6xS%`-Ry?vFnEb8-3Vl_X;aTsL;!&)*%d-v138wN2=q*oe=b z6QBB-kHkE7UZM$+YFM(l1MXk`;Wyw>&I;VP9$2+C2^0Dr`iW?CciOM~>_=nm%bVk& z7uLtb*$ZOcigTC-m4!Zs`+MR*$G+TTBCJLnGhaPrO$WEFEGS!f*0T8JAHOQ5Ft-U}KL4eAV(a!@F}j(EAuL1^Uo7V$Kj$kSXVJtM&s9Um1oH9PxEYI_yR{JU z4Q9kP$S?Ra1Zo3xA{YsCMRZX~!>@SeAKImUIy!#rgI8dWaDG4%XnCmjXl&lr8N2uQ z#m3zS;;~KpqZ>7NVf~@_`5RZo1s9)5wqi@Ly}$jJ569V4Z~}2Zk+7MUU3uQg?^$T= zAN4eKj4o{DeJt>vH*Y4q1gy2|OJ9FBCgE5#a$V_H=-ITzxr25bZLeC*v^DdAI~#;O zoB6dNVXwd8Qj)6!f-&;>pXt6=m$;H|PYjKTCkVy)+QGs2yQg-hbM)$kb#XS%v>3&_ zKy?&3;8^c58(0Gq&%&Sm4gkA$?~J4OeJN%vo)g#o!pCAPb0c}?rAMEQhrf0&XRdQD zHZ)z%aSfMTcL|G^TjJqI*T&br{usM-*(FIc(+7Gnlp@nHqy(;budMCC361IIN&ar-4gvE6%Gdx5P^wKHQ6%Wrw1C2a*Huoli^ZG zN=gu_vBqAlfx|&UrvUtz@9Z?L_D=;5LYUUDCArJWM74Js*cIS1qKsOPptft3a?0SA zc`4ttGG(2emO9(m)pjv4QFpMK`oXmuqYH;x8*!h{UOX!%I;fAuXbI!Hl4jb(dK_@` zatGWa?10<1?O+UHeEW${UKz`O`u*zGOYs35zE}v6KlTV|!yKXXsRi;%qly=+3 zRty9Ec;oAEe)X}cKxM^C!Rz1Ky{w;V6VFxN0$&lJego3{&+o#ZfXgNzxScrF9ukL{ zl8?T(Y>PLo?{f$uf7VGUr=9^<(nH6@7dha2oeLv(z)>*uWJ%l#yMO+ax(a+kTHg6< zd*ltjRq*)!)XQ%b9a5pAZ@<30T3hUsTyHGTdI}9vsmN62UDf95H$T<>NrNJ7t{iaL z7I<1?r-mxqCtQ^gP2*R-PZ)}^Pk61Hq+pu1`YnZIsl&D>p`N}sR zB23w2l(ky8KgzMOPCVoR8)3*OLs0f$@ONdeyOES}$`b2I10D2G=4lR~U3u*-jf02fYg`l#;nD!A5z_QYW6JVSf!r-`riI-pKyF| zCAR%RC!T<6BzGK>XLYJI@$0)|tju-1J9v*(Mw+wK`!eQ%niJe>wwk*Tu(fx{2;}BEE9}{kdRBolB>J za;1^BySPTYD|=jt25R6d!iWNgZB$*{v4b--2<;+#PJ-M4=L%ct>?`I=dA7hLcD6NP zfJ80A;9|IodUo>-;DFm78#ipiku@onv#Kwh1ym$`>}$$0Wr3?yepgoR4bC}GwVZ;(AI<=`0qYDl=zS~dSJ!_rWpJ=OcF56dY zoBDj=YsY$3Va6uDslO|e3cQwG_}^WZzOzljUf^V9yY+z=`PX05=zunzZEzuz6&U7L z-Oq7bW1RR?R_b^&%%<%aAZ%c+NC%$D7_HnXEuG4kAa7HY{6^Upnnq;dWt{N*xCuCa zZKq$ApSG*QGnvu|ZoUj%maBn_F+6crYlCtz^JMwQ;SnA7j+5%T8hXp35#jRQ_KR0{ zcBf2cA&l?kPsat@<*q+@)Rn$)a(-#@Qx17+mJtK9jju1`97 zO<2Ww<|lD65EL0EuB@-<#7?2gxM

FNI2Poo>F!x?|B%6@HM2XdYC7Z{t`MymCzbB6JyL@=M(&fE3 z7Vw>5eq)X|zBz4mZ%p>4Z{7_!-n4>KKBm04`++JKk7|@^!a$_1(a*~8ein1&n43L~ zv4wf;IMO($QjQ4c-UKzY(hIfkVB-LriIMM;99-^*h-*bVI{oFpUtWbWX z%s36rlUGl{#}CXSZ61R>wTHL}$Lsse8$U3(_^2i!a6Od2=}5ZB$Id0jF4WEbzRaIjfe(33k)ZI&(#=K4S$t>ziWz)}8Uhnl&l$ zuUdV6T*Ul!H_;&;c;w;e+O{>Oqt8qsox9%#agwy6v#ngVD32|;``*XmiPv^uqvPx+ zcK!6Rn1_)Dd5x2T`exzG8;w14$EK|qz4ye5+0!$$nGs@!`0j2m!@DWJi*JBA4*WD} za$7MN=UBqxH2STfWnHXH=VwtOx&wcnSv17ramO4TAdH@bZY%Q#=PGQBiDr($x%%4G z9AncRjW`^%eL3efT>BMQT)|G-zW9H?d|RyF){!`?V_vCD>Fe!^_g;5?oV{`pJNCxM zQf8b3Zy1ZMy#2tKviNeGg8r#&~Y)*0>u7+%e|yPyW?cVgQ{gEiKmN_1jms|70f(;Hdm?`K5C0;j zOl*uFdEeDIG3M09y_z0XimLs4BA&+q_e+0tFM279+%|3?t#Y~ORt2tXJ@Td@&baup zXk;#_+#H4dYzXJa!A|Ig%~P6zSa{`FoH1ucoH@Uh^V}xHd!hZZ`P0ym2`dO)j*V`N z&;R+~$8#I@aYP7<%s3A*7g2)~&xIR3#Fh^n5%s`7US!OV%4e@ z9JA09k3GB={R$@)eZwdxdB!}y81j=&qgfbff2eG@^1(+wdLy_m3-pY7bLV|)**)1A zd;5-Z#$t1{Fqu06442`|S=u%(&Re~N{0=hcJ;3w_Uw$|iHxU{i+mVjyd9-cuvbi~z z$}=CCKNwx_-g};6(e+U5?qy*kwyB?Z|M`T3#qJI~UVr|zb+L2X=D2+M^t1=5i>5Bg zub29jQS;R0eJ_6H-MTS@arqS&!F#8pXJ&nu{wV`%j^oI+uCD%A|Jptx??v4Din5;{V#qz z>NuBC=jKa~Jd+N%{f3~VUz~r=ia7H^cF!`_J^kFPap&F7;iN^s;9KH^Uw7KBSUx9i zB+Tu2`f)FG>}E0Ms4>_A&s!OLx9y5Q{ICC$oxS7mZE&VGe5@YgTui%1My!FhKBs<2 zUp|`i0L^T?2WGz+(vk!@-=SLSWpfOC-_WRjK_nphytV`v@n>`)Xy!t1^?!=bd129m zoQpXZ8IyBb(_=j340GTFGYk-a- zc0`ift`Ut%5FKB3R*gCeP*Zv3uL2x|>Ih09ukhvGKNUMC>lz-@P)fRDG$}?m2V&Ea zkvdtaiiEL@A*8#%4q8qc?OdZ3gb-OlrxCD?*s7PFy)1U>fMXTHK@?jnP+#-K0m zy|*3*VTVoYax$Mrf4--YmVs1SRrHdUPWm-^$UYi}Tv1(Ma&>W8S#9|mS5kP|VS!8I zpvDF}ryj0+v^dtr`tAvI(mlUJN<#$*0){ z>edKaR@oH(m5;1PIIH*KIq^rm!tHktrW^oXd0Hi_b-bZE4(6a~+A`smZN;2_g*pz_ zZ+_JTZ=r0-r}Xj;+<4`{f?{D34G><%XhL4#q0;m+EJHY}>tvbc;GsIdC}{`}X`pvy zY9fv_D(%ANKvM3DOd4tE^1U-XYe~6St3+N*97!)PNv3Qez0l^$alV-@@x)tcrDCMw z;gyCj?k(HCDX-i7>XHw|i7=Oy@6gY_LjRx`(jQ~8QXi|9EQq62ddDMAW4vca8-2-w zln+IwtB~t3aG}MRH25FnFm0V9lO}Nn98NM4is_8^ECML@ng1+#S-z?8>RX;OdIxK+6T`Ka63a!qEW8mDgszjVS+796;^{ z_l>LuRmszF)_{_2*~)2YA;0;o{O^IjE@;pQqVqL(8&H?@Rz}Oi?rzL6fb$zv`0Nwo z*}Vm@GX2T6oa7-PqI~~T9t*P*Tpf>2;xjBY-^$LFg4Z6LTJAJacBNw%gojk&O z&oa|M>N#{S!Vq3K1eh^C1C!1J4P!+y#aK=o91rVpWP{G^FOGeV74m2HZD5f1EyFtH zcl)ptEq5Yi8Nl6&a;?F-2Zxqz7vIuEI@$lkz3=1|({*$l$bL10@Hw;R&d54-8rk-W z?v4}USDq0D9Y9GVXpn|r;83SCB<+WZr|S-I|wt>hhlFCN{UYSotR|*%|3+#j*0MOR^z%$vySm}0!|d$<=Juj z*a5d`<7S+6ZLwhSyriYhb)B^0?zr>?x3;h11MlTu1&uVYGV4p(L3@(dsXH&eiwk9A zE>MDRTYL+?^=ANdw@O4<(E|<0ZYFaM(86Tk24sg2yOZd62M@R@lt!Zm}U8hw_`d^xVbQ zg%i#^GiOhW88c__t@QU?0D&>U9b3v7orU5-zOXzOLMZROQpX^Tye^Ek)jT3uIi~E; z$?LCql=rT9_Sya~E$rv^OL6IC`IU|+9!*o7PiXxI(WR6Hxzh`h3B#e(_jKy2$1(Zp zD(7sfkx!gBp761*M0baG>1R2%lK)c?Le`@L#}lfdX=neCi;jjeO&K;s+SAy|wh_l9sm1 zANf0FF*p;C`ObPtXSmxkF3=aDoiO?=tsTpxzvC;#)aoy7kl%CMlLz?d;s<%W$hI=? zv#xSE?&5%?FWJuNgioD6lf&1!*8!&_5idHsT)0`$AOY0SMFpTBVMtwy`oxvZ^}Vty z9UDA5PjIn=&$$B*87{x2=yje+Y05G6xJ*MK@{8qKpZsf^v-}$L{{gr&y zpY%)TYbMEenU?aBB;tYpZ9wTU`IUcs$!iO#U6fqAQ-Td&HPQ~h;7&SLSLPe>T)nS; z{WM(O@Ll!Y-`ABlqO9*Y%^6w9x4GAVTU}LKM%Gt-d$Zqn1CBQ<|I}~to$M{*rcaxm zd;%-w;)~JnvxaA7uDXxA@yB2cb*wOp`ltQeIqh-yt@L5%>lGq=cWRA%J4?>y$&7OD1Q6F+%t)A!t#KY*qskhM!v_Yz8DD#aT(L^6V zO2{`y#iJORoj(py=V97`gL9iuhQ?!qy5CocMOB^t3PuiAt-+=+9r)J3H-*` zHt*`s#FDelj7@8wRRX3UFpDN7$J(*r&*Ow#*jMS1>bwn%@1uD~$IL#dK4FcH?dnC! zNpb3UyL|cLSpVvlY@6_uw9H#bH;AM1qgS0p2+Gqr;J(3GSoeYVZt6H5v!_nPZu@g5 z9dO4vmn+Z9CWM`ir~QRb#v@|Z7U&9%UpgC7))~UiUo1O(kX<_I~L1Uog0^&2i*=IioG4!HSxs0NT}6Y z?s+bDbaTuN3!_IhOad{;U-ZM#wDvR845Vt56)w7ULot9SVgp=<)!%H4=C!D+}&9rx`*L_q698qq>hx7fv zyZy;{bPJ(Tn{ezcTNqPY=o2{L)R$env2gCxm@{We;>>WKU-;^pn0E9~?!eQRpuRYD z#^jhjYesC@wkx*p=!ipvuzcv%&Cy41ZR6;ui|0*>4_tc&foNyCuzWfWapKml<_x<@?2gn44eP@rIF}F=12uilxr}V5Q`;;1BELJ!Mo z^;r94nu&QQUGj`>?v4RV6Y^2r#vQBr6>@Hf{K&Z#Y5I^c@wpLjUT{Hn4~xY0&VFigK;RgaRt2S3XYc1)ek1MDijd)+=#eCO+j#sRlt zDrZ_9!6{ISQ8XMAx$+KyS@+P4mf&>IXkYeL~-J3c8#i&*~WW0hZ624hVcE* zz8nV#nKha1#jBRi%7ax6LD|ee+J}*1`lN=q>WalMTyxxi-^WA9Di{JxF?&+3+1-BRDWrPh7emgU=V9OC$P;skR|5_6MTNM=|v3_H8C zz-O0%fdJvY5}0Awz-B@qCMSekcAV2TzHQl#ZCSSNyIX3tq*hC6wWR%i>-}GME4Jd; zKuDJS?AHJP|NY+Yy?XVk>eZ`yRqv?{^!UXi;GDq5FTSH9=TC)=ILt|rJ89@{6!c!+ z&rd)G&vntL!Ckz_^;y0AK3)d;whqUzww2&dDxdZEa@Jqo z9XG%<@Z;m`MB`s!s}4BJidXw5-4v$)3ZQrZEa8!UMQ3qTT8aJkgLnDq_z1^1+>P)4 zcC4(|E60`>5;weKo5H1H=fUjtx#cwyIlj`Ew5g+9zBIzE;;8TxPD3uEfRxcWT+oeY zWzO$tL5W(%BA_*Hzvuo;2d6@9w1!4gcj?QE@4@MX9Y#4XWj)2%oU+2P0`HT@%XjPVI&WFF z%u&)le8_vsP5Y*CQNy|QWK_EX0F^)+(YlMsE)|18o+R(9Js=zTeN@&FNpz>U_ za6dN-Fb-+pMaiMLV(lZ3};v?&7wcT9<7&4o2lP(a%h4KwIL~ zG4#GN)l@5m@3@ci%W<;4c4Vw`gQivC^g*GWLjQ&TC+N?O8uF)6B-SghI1XtfR*6L4 z(2%SGsf;;D#E|1No%vr_#f>skI?});zB0WX^;oy?Yq+Iok+s}+ZZ(o|G7nZf%csI& z9(Cuh=G0$jq+rw&ASMXIxjZyhbdW+atPixdjrwi_~j)9Y@IqtyMuJ3h<8pvVo| z7bhCxU3d0KSsG=g!wT%O*15bfGQ3C>zp|DgL1eiMbuwV;kbyC@n8x zk{2ppNZ%sU``)V?AjGY88)4~Yl{!|+X7L~n%KV_dMyg)$E-tLY=Q?wZV(wu{G%@o6bk}RoY4?4t3NG9_~uF9gPmojrO^mB~u(^Ze9>C)|F@HG6v!!BXOxu z{7OT@rT%Q$lugjJJf_T3*Y%P%5_iBZeEzn)c=fwuN+%P3%Uj0raU7+Y93x;ARoQ3g zT3+;B?@9ZXm(HX|FP}*xIoABPee1C;`Muz^IIon$zUJKLd(xxhYQ34c0&vpF4Gi+G zbdu+aGN+{R44yA@g<}Q$tUroVO*nK~kCCCIGgd6XILr8N+_g832{*tepVLm_k>BEy zN6D9sN+KgCo>@DwmMR%rB@dF;bS1-$mv&@!Y z!(6F50EIYn4z};y<+Y-}DW9xVzN}RlT_9XG>0fpt`@+2})TrDBxO}%>_Mu#*@AZDd zPes;ex64JFjqmy1`2G5P;?qZGwmR`_;+y@L_*K6bm?!Rkt#9M_Jxig)$E0VqjY+r8 z`t_y2an?#+!UIRt;dboJ4l$F>W6lw-FOTM2TV$F}cIOQpaLMn;b7f;X;NT-2zGYrj zjyVbwNY0^u@qziep)T}>&dVFhK-U-@%(pu2m1FXmd?nv1bJWA?b;ei#;y)o+wTXYS zPi+*+oRRDWIu7!#U&R-$Lf`F9383;C!VSBj-v;(BeT1(2hHWoW@g2V1iS0mr-|w(og-5DtAzo+kn_m~ckhn-*R78y_U@0_OXlOaI28xbsZW#IPx-BbYtfQE=)NsB zZ`d6Bx9^IjL|uChn~^)FJ@*{tQ!scdZ6ny3n_N$8dvt>+X|1(e!9N;>{YxE_Icqxa z9w*&q-eavhrd|WH45Q1OCXJu~vp`J0wi_*>qpZn0h;+OD##cq_$wP5?-!5QlVnfn! z3h`F*1zz!rOJi~0qWFjV*TpApzc+RrVBUpqM{#o8%o%WNaO|L!(3fTLx3}LH&mCps z9s1$--SWElzMHPkb-+Vxko)ArkK%wk6!*RFgE8g?lmBM5Q>?^zUoWG}SKRQw#fr5T$NER^r7SYUxeJ`Q9`apfiu3LGcjm=5o_P+j zb|oI9&TAQU7WEEprOs4rA61`I7b@#Y+b>d!FU;GwUUy#n_B(#2f|Z}9to}d$=(F*u zPklCya;Bv==!HhWy@M2#jR?4G2wKRfJa!W2y!h3Ej5LD5S%79!`-4Bf9jE5>*uCkQ zjDRar@5~p<-0u2=H5hA&uHM-(mCt3pQ{xS~e(~L)re)GHIaqF!& zk2~NF9Xb;4|J(aw-=Pz6{#?`R`yTD+L}m@wfwND0z}mI6&&3KS{`Bu3j}tgn&Yi;% z8|b9=>lk#ui&T^Ab{vfDBd4PqTDWMT#|Ds2zSAI?*>T~TMXYCa{FzLh6|9vcP zZ;Cfu)|c~Crk96jvLB#dTr1zjiSzHwnVqqE^-|U`y5K8yXLT>*AIH}^$~ddbDX0#y zUN_a^0pNRR-4-0^oXfU@bMXd7VhK*_WwY7%jeJyG%ncfB`Gw{{_mx)Zwf8Q{L`ouCM)p6Dr|~n1mXS~x zD-d$9xSK`@KK-4GGv2X|YDn{4e_NM^BZai#jS5hSDHn*ShPh~>Ef>bq$PMeHYB~oO zRb5j~#Wfe7O9a~C`0N8u#2|(v&wjh)oW69#!KRs;`2+(#w|iP#dkqJ}viSP^olnNV zHXLx|e*Tf4x;mEJaBVbqE=EW(($w!%Id*VY?8X82M>ya*duF8rZjj0TSWA1{_bfYX zn%E7FpwTFDlm+Vmaj5M1<#5#C47iu#fGdnhqe;+{39C$IJOKaolGq&|iQhLYqmnG) z>VQiJ5tUg^!`oCM8y&yg?W`c>SvsCrv}&Z(2%w?BgP|3sKIiRhGmROHpN!-agPh#f8Gsax$*>(vZZs_^HD0f>lOKLCQTBF{8j@Xt8;^r{IJgBiwol z%uHn%p*YI~L#imyQEW7U3byp8u|Z+%4kaTc#Yff)JoZr<(KwQ25iruELMj*a(5vuS zURqPAxInUO8pjg$B7Dr-Z1uKdzmsk$=RNydMo!x0YhuNFFMdrp;La>7434XY3P-~+ zv0jaXj!miE$u%3ym)+r$B?}M}71D_G;zbSRoyKeVKIO|R8Y*$VF>#8soETiW0E?}9 z=~(cq28lwO{7hJV+Njj8v?OjUlfU?p{0wguW25-2wCiUv>iAj9m->ZGxlxQm`OtqX z$NSYtk?q)4-YfMgUu?ra;mOyeYc8SE;Fg9PzSn3G=}I`I6W$!}r{i6sCaFn!N_-aB zvTfRMdQIN60b0ne^H27}JKo^0&`!Zi7UduNVd}@+{6Jlnm9B)^*Rmh{uF-MT*d-r% zFO7)2myS8!D(InYoH&a}yKuqkWuzHyjZfWmZyIlP>RPwmaH7@W&Ga|pLMK7vv+%%7CddY!1!dCBJ$9$|2dt+!sn zSri6kT;Y3v*RjyJs=?l_QPu!yJ*EYi*0|Ts&Q1-L z%I7I4)+t*lC#=dkWo6+(cD;cQWu|rbJq^W-nX=113U}^C;`;WlB(RcAs z@uAEXZ$^5wp`@Kc!Q8ix=x$&=!iJW;EN17 zxNxy54lP%sjD+8N^;}q~yOp_G_;ifecX8=L!SB*SQW?*c@s8Q}xB;*90g#CsbKYyr z*C~4FpoV>Rdl`ktJ37L|%Mc53BRShiduiWN?lWe|WzJa*{EIVpZkeXl%W>6FlKi1Q z1k+4TgD5T?2m7Z2n^Bp(rxVMu$uUx~q>r{`WS+a<+>Pd3A{>r^^XT>+JJ45*qGV3w zo@26~=r{2o9xuB10%(gli_HM3d(m&xeF{THt-;4SdX;O=-5S!84&{qvFm|IM!ryfB z>q(08j2kT6rjmNqNR;Uu7`~Hpo;I_adC7`J7!nqyLouBi@R@UW&c$$$awo@% zK6o}wIs@o$ohy(Ui67@h>CHZibNlU>cu%=@jLlQ!oG~2e;KIe78GKY!FVsOx* zUiep8DsPBKaiBpr9T$wFjtm`y+{CdYju}(h)d9ChM+JJ5QE#*7&L#qGZsJErxV)ls zYm5bxykQz)4dKFj1m~D@KuP~v>Qt9s z@wd)l^{ISDAB*fFJutAEp}@tLGSgJ7rgZci63ex1-Fst%dW2e?imqi{Nu7=UBt9CnDnHt}Y#(6kt9`S5dBwhsa?ZK9 zrn=&MN3PXNT#jFU_a~plNJy)+X@9*}a8FwT#pV4%d%nk?Wii-{U%tZ+P??wDXBT{( zI`Tgl(>A;+ECo+_>#YA&8Cd&W3Mx}3Ua9p>+AtLh1VR z+c-<{Gj6{WIL>(SW&Us&jV6=cJqJ{Kg0$cU8>3iEK`CFjR?9Sx=*~yj%+`hsE^`WJ z!YY^1v*dH@DdRPP(8=TXGQm9KwWK*K5mW}Ti`#XqiYab&@zP}$scT+5%GbaYN?~KPcY>7>5+*z<>0k(`|7;Sln z>0u0++}73{i*Y*XT-*5cMk3($L?4@aT9{`u5+BBMUD<}NjpP;0nXPAx>{fB;Dcl|4)WsFFu zLCy)oiR4E9y?Zzh&a>-q!d-mfTI{k5;$t7bGd}y}$K&`ZHl~dZ6GU)PtT}f%8`@f9 z@rsp1z}+32M>)a;AzLEgZpajr4-!TAiH9B~Doh6)5pd|;$|>hU=PNmR6;XqGFytR* zV^q#1^y?LC7RE39?>`(@U3u|1`Raf>=ftDV?OeY{-~EYq2^qr&_X!m ze8X4IF~5r(Msik3*~*6JCo8O5+kv$J2FP4{0TT@8^FAn=|WJY}Cu3J&)em z!`XjNt=|wM$4Jh*4jz5kEjxC5qQ%}UDGu2hgyy7_I8pOKLiR??! z=~)-)ykq>H=Yad@z1Xvl#oBppY-TLfqtsP+U;Hjzz925X?7YMTR+jjq+a8Dw8@I$Q zmo9-%I*C6V zQ{sx1^Rk^{`_~p$XjVIgwkZEICH*<8`x?$S2j?GuCGFAQqiojd$H{-}L~}f`aVO(A z5_=Af#-lriaU`CKD^|@R+K&wd%>6w*IPF2v6xQ?}i2`W;pMQ>l$9kQj&RlOc6d_0_ z>05{`D~<1b`iYqG@ZS~(+*@yrDP27Zm2|+}^LNDocMw@~(98EVg#C!BiCB4idh*JH{? zHyd@~?6boM*nHWJ{UhyM6m~7;#^JhQ)HRr6eF!<<0*%WTC$KvW?%5T0Z#k5(z1TnB zG7h+T9nEpxIp>mAh=Z>|o(p>MDUwg99P&LEP6{d(QT%93L`6Utl_sO)K=8~#l+ly0 zD9__k2X|c1c=;@afdtEC+AAl~F^t;|wBHpBnHrPQ(ydOqR+!kZ%u|G7dUdf&;402$ z8zfcD9UOvqfJsIN+{G|vFOeUtiSsbkQ49_XW=_utIEmtmM8FO1KFpTR;rOw)UlU7j zyp9x`d)#Zpk(&4P{cA+GBs9=*hq#y>9wXI^~PvNad4LdhLE;z!)c zG%f_(?NdeoLgw`}X7Obd;qNXT&%bbiYBCB3%yo6-JK|A&D`@mkp25f zwS*Bsqo>AA6)6cwC8A8!_N&m2uvxEvMad9+CnD*R*ZhY|cnXXqBGC6TXEXf}KN@Q^ zOlSmANSs8eQZSh!N#l#P_`c+9TlFf{`+MSEefC113as(*pHx786ILB?wJPsvG)rEj zP5-NxeU+0Y`X~;@pN{ui{+3R%1D1CjvmE~<-J=M?L*ouO9$I(BW#Z4y(~#fmpTBKT zTx6MX*lY{B08zDUb*4?gXOS|=j`usud%uiv?x3nb+pTQRaV?#!b(gLbnL?p7zF53o zsW9@xE{r?i_>pI^&{p=-I>k%vJM^m}SlTExr6bZ3I zM%b_9arqt?D^8Tx8qzgf>W~uV+|@#4!eOE|j*x5Iywa`gsxq~h#!3zU)@N#5C+(Ce zATuX?_}?})raL)XCj~MBD8uiWsPl|1o{MwK>daHt_}$A-@h#rHDy)7N-~RT`?{&QV zZR7(FQU<9kNZ$6<`ZU)2DGrS6a<0mBx+oFCT4>S+kk2SdGcdfWv@2JvTfFN8bt8gp z>ZlV>_Ps1hY+3^-vY5J)J}4(V8W(Ms6=LEyDU4^zu-cbOZKhoqb>gMblHC0NN8}GuGI_ITZ(-cp4&NPp77iFP&>g zp`A77p94>J;BYQE--XA8t#o2^Sf<>gofA4;aOjJh+@UIMA|pJ|xCf=^``_@LF^nVG z2sjmU0g*p-+{m{zde3pQZXE<(gUrRAt)=sD%jO+KV;Ox_I+6}J=ttam&z=8s*aZ67e}gzf5x@4?F*f z|D4MyUp7b-T|~L#r9(D1{Xh%Hpb=@!4Ln_py?iFkr%Yvh#g)9+#wH)rCn}4i5&PoU z%Y&v2^`7G>ZD?SsvP4*t?r2wiMdPb|s(q-Aj>?IC;tAI(BvPfP##IgTiv2Sg>#|xF_P5vsrIXdV zn{%gfncLFY1uQz?tdFl{j3r2Z_&ocQy2b<@IIoK=@nWAHQ|VE7l+Qkv?v0djGfd9Q z$Q^gYTTa>OdzRO!Z#zc28tnjNz*6Sda#n|$1>N@K z_qyrJzOX=Ryjt!%b~(;IvMet;uBm(Rnezfh72yJmWRmb$* z`ksw9s>qio?tksN&i>T8D|Q{fQu3uZHO5~*OCzQ0&u`-_#m~6?Qs6k_#h3ZRQK=5N zdGqEbZ5r9_n%SN52boj69Gf)SLnF!}Q`jjVHP9R3t4^7`4$YKxNdvJBO8&=>TY}N} zM;_N+Bb~Zd;QU?Y2CXC`xSGikW@Z{0-J zK8{+zX}6cG3|sc>i@osJf<^O4yGRxfbk-A`3!~o26c&9;7XnvDY$Da+ft~%aOr3&r z8UZNvC)Z(W@n)HDGoW*a`nL|J+|a^3ZET)xcN%+}yzTnUsC&AL7bKYx73j`;Wk55_TI zx$k`+Ayp^qnudsR?zdllDrfu@HY62Mhb^RU{PFnC*Ikt`7aBetKmN0S8aqyP#B&eb zmr*myH|=wirIzPvyAE_davkCLX&dfFJ`Q42aC4h-NZs1YI+TIV)4rolqn^W$oM+S@ zeC9Q~t0n&M*MBmuBLZmh^*4X_rTCkN4#WeWzcWta=(Btu>yCH*>f7R~S8@hiPFN6; z!3P2>0DM71h;>gq6OXNX0_W!R_{hCm;si80wXHpE3j23#jqOi8ow_-egQSPfj&8S!fe3>)@7qQ|s%y0%AZqnEHoM!tEr+qp~T$N%!C8)D5l zOA-|Zt-Rwm{vsY3?utuVS+7s$4f?4aU4351nd>EWTXD{8zm>-v2aiMoJ6UA@6@9x;R@wxc--*XN6Fza^a zG+Sta_8~0vX7$*XSiW*WOr;+!=z87VWo<>Vgy9Q!KNtV~_9x@buUrz{;6PZ_>ykDS zKi)%Ehen`|Shcb*mMxr75rY5#KmbWZK~!D9+tP=veZ5x_L8Gwm@tZ!$2OBqShcAdm z+dmrjKS8?8)6-(x5KeqHi(j;)C$1!#QG0tQn*me5gojQs9_b`q^tk%I@2 zU2JTEXO7}ve{gprmF|lS_qU7#?h4X1wt#$@>mY`QA&5nOx#K4pJ?jlN89w$&+`XN5&5k!+ZH7hsOo6hHdM1LSwPa02_ssyXPTt9b2PR zC<>Y0R=kfZgw zt5;@Nv?(a}?ZE+e>`1)jKU^0}IJ`7E`d}Uxoia2E+|Z6Z1Mc1L_!yy+vtl(VDEkpk zEj_d2>0Jln6ru3F9T-^z?3waW0XVKtDMR>GQm-H=~$;}jug%*GJ)jl zp}|7s*60Tp)WW3^%KJ{HDkx4c-b*0~!#a7ofYq=ltU2j298SpYfOf()oK<5+7dxk> z0k2GZ3seNkMc(2#nSt9RzagaEA%d3l*j?; z+bi2wPC;X0J`JM{dJ_lIS;e8B;>0VJS%1q%+{<$H)4oGDH4T&R6bG|WcaC+V|De^r zSeM2)@u2Zf7_CXM))b`97Wvd4HbimE-jPqA5i*1CV-^a!P9USsnI;|)t z-7B*-B$mZ1>EYP@W12P7!p&r->~!+-ySuNP=TeMY_SZkJ#22u7$@d~U9fW)rHZd-5 zX=F8u#0CEd4!9%8o+-%a`6vb*EPRakv7bg^x)C6q-}FBXUDTmtO5>k9hmGiHOJ@xS zyRtyb=qBJaygiNCjs@_!2vSx!-u6$Ji+m{jZNGA%1RmsRyCmLKl597}2V;o}gi#ve zUinkcfYYdAokl1*PNqmpBQ|h)U*n@^qP4Qv^eoaD$Q}&D)?fZ+}uo0>=!> z`pmxqZ&Bc-XO${pFa=!l5B+qvwKCXeMLCksiVX16dc~{H{B5~}4Y}wgy{LR;+BTdc zUOE;Jla6AD%`FRAq>9d2I7&+tup1{Z;D84W?$+fvyDL+}dAmEMkku;U73ab%o}G7& zX`}{E(>ZioSu8x#uVv{B^yqw64CM8F8p(0=w??8GX(+52A;hPPzOqqcYUW7KXBht> z9b(fx^AH1fk_8J*Q!juEohWVqas!6_(CH;DI`+~`#iMmO&+0_-p8bK$&*-1BgjW(* z&J*HC4w2puL!<7PH*(2TpUzXZX}S(^EuH0}1G>|QuhSwGVq}8nd})kdv}8e!g()4| zpmk-1J8i|^44g1+(2bX8Rfucb&nsy=mjRp*a4LS_JBtJE1E0Pf2OKFhlza3?TF&&R z(5^B;J~9=lJfaSEn4N1zw(Er3v3(DlV-C<}WQ}jWe%Lq8i z>X@#u3WIZ~eG~SS@rOex{t#@K@&kq;>nv7}#15i+*VT9OJxr<|S;(T|d3jp-daa zm;kL%PNQSWG3pjdX$&IEx}2jt4}w>+zwT(athA@z*2!@K=PX`8e_LV`k)6Z9AWZ(* zrhKCA==gg1J;$92OM1wn%gUSftMGIw?zo&dCg0H~025d8RMul%w2?%XHzssvap1G6 z59VWjYe0Y#l6I0#5)aH*jBnZLFRlxm%5A@iM*r+TD9JC%2FqEOW0>_f@Ll?vx6b;{ zBB|Dm2>QCO@z>AtM(O(V+c-<{Gj6{WIL>(SW&V%? zs{?NK>{%(t&BBl=##t-5VMf_q*Ak{>o*@#^bU1p~qw4`R6lN6KVD+4mfnk6nqfXqP6G8 zti_AcSUm+@WYy)DL^lq&!w3n}@pWPcT#UnJ`K-AymnfnxY!+?s)j?$IV?zV+NdFF; z6m2mdT0XIFAog$D62p52NKr;MDl%bhBYVd_BHwgip+I5SK7c;Vx>?&Eb4K4X9B{(* z)Mg^)cE{?ai!)2WtlnOpt81YPq5qt~_UOhLBUcZhe|vV8QE^IaH?OzZzWl>Hb;7^_ z=4u$4GnJdrlR4j<`CNV*qaK|hW&S)Khgkni$KG}A4X=r=rja-@urs4(d(n-jF@I;K z31oHo*C|3rM(>t7@1 zH2xws^`DHN{EfegO^-j?U?}i|EK`2)PnL8(Px~0mNLTW^b*uB4`9d71H>i8%8V_Nr z?Cb06BO}I6N*1|SWsbH7H@#~YUb&zv?)b>>;D9RnN2ToF{QdXFm--2c`21(UpXsG% z#B>5P{^VER&UsmDuwfy~5CBs+yUTfOd;dWE#rr;tjBbvdhg+im1bPjXO=)G_PW#8u z^>;q^Y^Fi=yN-f%`Y^US5P$TI*Thf$_^mOcnKbs;1kHlh%=mBEdocd$w$CsQ&9Qy> zbPQ&~gd)#fE9}|19UMU?u4}Qa08POi_!j5C{o)A=#>iw^1SMwe1R^|?T;#Y|tH>3Z zE=DvUxCnIdmuGS~05T|_1`Ny8unfWq=2oeLiIm1E^eJb34z`~zuAT4{$~xX02nQZ{ zL4Euo5_P<}D3yVyDo7}s3m6E!I~{OqVo(46xc#9g^9;BinEaA+7Q`IRN@-!y?yl8Q z7Q2h)OpoiXS;aXp)8Y#_;C61tD~up~%g|wxu!Tj`3t=I!jet8bv^{n`@JPJ- zS3b(F^VzX{4LPO>=bSNbVN5~rZr!*!Q{5=Zw)GFjAR)WM%_!Me`2Hy(;3|oYFC^;? zJ{2QQ?kbyJiDLx=3uIZ{!!=d1i$P9dphE2dn#F+Zj)Y>E!Po)=IDQJ0V=#pVLA~JV z$YSv*o9Wptq3s_W-{M((+7}Hc8XYx?Y3S}i2<6Ua@T+29>MDZY@{JM6c68u6QRN^xI9zpcU4Bjc z>m=ygUcz1%-KBh~KNs|VrJy|FGu53eQ;OvGnu61DOk)e>%H?PI-b4ty71i+*2mblE zo*#IczDp~ReYJi+(})K>DZPcQUe+(2^ok*=T)3+MS;v4{NqHI7q8Sh>b-ozeT_^m%p9vU@PhwBQ{XpgrZI8S zj{KoP+D~PaFgeN^>?(cLc51t|J%86eD7#AeGC|wAbZ5`NYEED&Hz_x6z^5&ZIP#J7 znE21})In4XQ*{?g@*wb8uXt+ay_IvjIJ9?ZY$R{>Ro=CiC7?L2fpnJ=3OHmw3=&q9I;KTa7|;e$>$C zWop+J{peoljP79ZjXo+8hp7W18$&5y`-_98&VhE)VT-lho z)krK&*iScY$g}ocdeC8P{puh_Uunb_7E{EUV&)JFPib3SL#5DNveUqO3v?ik((@E2!AaTK}R(8Z>^8yy?x$c*l$oCaVI z9d4g)3Q{72SX|nlTnO>Zewv1PU|=BcE9W(0@7+6~fQV%)7Du-caPVL|3aaBSJ*6A~ zW_Psfe9K5S;Ril<<_d??)HED4-QfLAH{Z-o&5`)f9e2iQ>T-V9Xl*&=j%iVJgxPN$ zaMFmlk%3xCcd>^JPusTa#Noo+jl4iY=XeQ^wCdPtq@2f2)Y-E*KM=lX2KOEAdW62z zE%vZ!X+OJSSCUSrmvbPcB@O(AE_F0|N$Wt1zxGV$_;-+ILfCx?x8Lvh*z9C?j)cH+YoJ+L37k7|Kjd zD*nnjg*teBM_dpUhkW%6I7PEsK{G~``J_;p#o{uZNARDtr<}L`9A|l#-zrM-zj*Ms zI;}M07}J>sor5Q6KY5(G9A}Lq^0V~ed2~j9=Y|scYd=SX2SntU(T`l9I)>muXS#in zZ^X|qv@@eI=M*@YGq|S?>_RtT1}5QF22?pJyz;ZglA?>2^_JyR*6?Zl@^;ERMTea;P8Jlwo1X_7j*`nji zOW2Zz!L4+W4s8lZ3&K?N+@hoStZXV_a|YQ>)-3A-_SSU39d5`iWlD~z<3|1BpkBi7 zUHfD|#GB*j_*gD!0^C@K4mdw$!B#eD$`8r|=~|e*{FG;suBby@#=i0(apiM)*!B{C zbq?TOaxc~RnUV0>SNWzEeo@-J^!Vb;?!`R^R=$hhgt}Xy+C_sd;g`take^M%KgL>bDJYA z->SR1kkH_C0=>4Q!xUUoN#lMX<+tncY4Dn7L`gHQTa12l{#T|XjZ$5u!3xV)|E~96 z%BOY63yEJ~^s}s4N|qPXX3DoY_dxev>KpQjv|p}CWcSyLC%Oye+z5ZAOAW$2nx_fNLP5l?^w&eSOira6V_ib;r{4 z&y8N3Oe4@?8` z*qSgBGat0!*pR@@0wydHR10&WI<@PJ6VR2kl@1B?G&7pW+j%5`d`;WVNNz+^m+`oQ zQ_j8gO?q@*J;u7JmCQ2NUUyZr2bQub$hO6UyZ@z&Do%VQa+qU>5_RHf$ z!rc4*53>$%v(4nWq0HYocf$KQr_*=k!Jq!hk7YCsfCB;Y1AEZOXj5GIWAEh5y0R7# zH#+s5P?aBffg3k{xf#!CO}!{(3+=ke(dfbhY(f>W)6ws>C#owrS38%>!OE*56SZMD zua!A?)q>vm!bg9Psd9p^ZS&WD`#tgHf%bUv%U{eW$0qbd;l1r$KONUzeRqB>xflJi(5Uq4yqfe*8BG_LuHH^mgznlMwW=N!npK6WQ^jtH@)vABd3l8crsftN=( zi*I&xqmr^eyU(i`TA>-Mjb1AH4go zSo^aH8atZKHP;W7_uOP_mWo`zN$b#v_I20_c;RW_mdDlq_4_E-bkLf9)bk`;S?eon zQlsEqX+Q^@vZfoyqWCxKow|A}?dq&`J->bD_L#+H-L-4i5^OUZ+qZ0uy}P!vU}lYj zoR|s^eEPAiU)NxN%Q)aJSlpAjdefK!k`97E2}2`*M5OT`6*(p#jf%O5fr$L>Kulwy zsF;?Ja*+6{kZBR&FfO+d2vQlsnGfq?IN^T;EdrQP$a@Y(i$>H2@hbe&Fv36A!r(HC$<+wBnH|6l0W6v);E4yRt$l-YFf4VXHuD?2(+LzF8dZLiX6qGw+*L@GiyWa89=uHRQve<{gskd)& zY~Dx8$=$nRIzmo->>4DD{4hr2DePP(ukHhnKMBLllNnMCsE^Zt<`6LF0XOb`jlyf!=ov&zA9wX7Ii=WLbBRx1vxv zZo*-oUA!1+W+cc6ijtwHW6TV)t!KdXAjmaV9$}}TZMmDu@zGdTof8_nWoi{4BQSLc z=tRqQP@-&G!@0twMB{iQtvyN`I+tWPQ91)*0S^`--G^Yf5(+TYvR7|dDS-kp7rKU<(I~8 zn8(RMI>@$B9L1HD@;bF-T~v}~in0owCEeJzk_>wv_1I6}b+Yl(fi3D!sUvX=t=f*y zOL>h);>R*fc!a+f1+5r1tvlaq;H2VEd6@U%nIa2|(K~nAllm=%gZ+fp&RZ}u&RM=J z)~(+b8!>nbn#!<|$JS%mxDFU`p%QG=&HllI{2ohVXFE!>yrQAf{$@0^bT4p?@e!}m zMuji?PQT%agiqPZ2XavdgAO7b9F4yC+_JutxS>tunPX!a-;v&hEe*{m zI?fLoOM81}Vz@q>X+(6A7=7%a%!?P3IszJStZZ0gx@Y(mLvh(aWB=VDDt=BVuNecM z3x_n2X)SrzC_;$I;&}#~uoXNh%SpRO|8?fs5C5}0jjQsQ25*%$$Hu5p`)QwCG^!u? zTxXG+5pt6dbxWvJ5l2}N>wN5KMDa-*I$<2EOew=}@g;8xvk_a)A3hh~(z*^k2T<8B zEql-CYH8ZJARWfwNuz2;0Mfn&_hw+2hSAruo&nd&n5*O-CZ&S&jP;9$K@J^mAqA!L zonxfqZlHf4=Vozv>17vToG>-XG@Mp56EDK7q;mYEo08U*h)dcNpPq-6#(8+&jTJp? zN_x}lZjK?w{llO80y3WYk-7mtd01zp#`xS6!#g^3lnc(e>J1&FVHp_M7n@1fVX8pe z01=6U65*mOQf{A&1@mUbe4IrJo#tt5!XaCn`6kO=V1R zwi96w-8jysvGBWN=6JhV#6C+Sl1MJ{fnUR?v{B`b-z~3lFRi*l4(_v%OD!M3FZbt;`k`v&&1J9(DYiliyWFrQOSIqp~`T)>;e2aL)@KjdMr zs$1lIz>|7k9O$Hy2ZYr==`2G6f&UY^FmchOk$=Z_cTclP2*>z5oKxMsok^3@we)2F zM&MI585YZ&u_6ZM8N#|UShh1cK<$IAM=e;m4X z4w7e#9P^&-NfWPpq!LXJ2+@ugRjP?#35rX|GD|X_dQ3#v6VKZC(nSJ!&!H^ z5rc8DkJc}|wpHdIKy@yFHr+5J*6T(N<&dy?$+J2pmBG@LQB+>?oxH1_=Un2PqeDh# ztVR@dOvl=BO2;PUQ!c<;_90~ww0wk(jNKU8QWtIDQ9g2>O!>ik>HyNEJS_bFnd00v zPB}-kz%N{r<-fn}t8ghJ_>nvU>XP2Xb?VuSr}XVyn6i||!k|2LtW(BJ!lC%I#hf>J z&i~-JY&5W}xbU*wln;5&aiCum&N1M*bAUQV%5Z>k43&LQSAiSdBIP2uSH7s%Pr)d4 z@v3Es)6JwX+e_9Gc|iGM#uecf9wX_ztXrJaPjMhl>Xq=?*GAuUUOR5$Xc~srA~zLB zzE^ZN(P!W4yi(;y;u?DKv(j7kjUHKca=YFak4dxwBSN`of^s=L*^j*6m`ld>wNmtX z{|evPF8ReaCtwiHQo8Dy{>oeR!PzQ%f&1Tfz@3Q{@z}(=NQ}C9M?FWwy%92Q6g4YL z>cSX1lr8F=sM;78i!R|QrEz)ZTxgI@o7{h3aBmD?knbXB;2`Iz9fIeM5B0}<#&{>0r=DZ; z=xH{5&BSR%zWW&7M=EzVR+&}BIcW)-*i6;^3=X*d9sO*~CyJGMOg@#k%}mouB%b7- z8z%w01vrdYoq`QZo^CD=Gew$$)#Fk|v2iiGWePTF&ozXb*M{MB&#QILA7!pEDrO3O zz3#@VWBRG#=;F*SBS%h=xyA^a0n)>1$RN5GrRla6FT6~x9-OQcU)Z^ekkj41wt{f zr`!QP?Pjj)bVUCCFa2oTa`UU;n^MlPvriX%*Do?(YBwo*K$&;cq?v>0SJf??Bh@!@ zbB|Ul=)?I|+k$Hm*Y>vSIzhcbysMWLxmo5|+mwHecr&{1l9j#jsSo}(Fr|{iQ|$oF z@vFc4S8>-MXLWt{4(fDMQAvZHvVcC#nlmT%VV_-l)oXI>bbfd>9UG3_8#lx*HUc)E z0-h-|qIJq>EF@#lEFy`}#Ns!9Okmu(8dUKbkDk7@pHfR7tua*Ud$wY z{xmY0q#i(D$I$2Y?A!|dKp6b#RBLW(jlP~{9C_2@s!LYH+kWV^$Xso)1(pQp1^!`H zkN@YdJ`uNl;R&k3UV|WOpGK4)WAszharLV%PT6(}-RXCJ^DpAT!`*RJrw&pugYFBd zqQm0oWQeBVWSPoYb7Mq8sfnp`xn4A??#*w$h2V#>(f1&F*L!aJB93074%6Ytx**pF zZWtz7k<_l&aDJio5C`t_cRv>Y?-!qm*DcqX(;BzF@wLEO=pzT#!Ohi{pZ2#ZLZAn} zd1BMP__I&0$2N5+e))}S;|PZ)=2`TNeXc{ZxOkMNrV()Z83j& zUtIq-Qc&W6JB>Z|srw#@fB5*9+4PEy8@^x6CN(!(9!on@Q_O|_4zW)1SOwF+GVs*M z7_+WwXFLYkfN=OI>medO-F&%b^)l8MC*ybD^?v%QjRu?|1D!WrXS?=vh+5&DalI3m z?Pn`Ci%~w0vsMyj`8@SuWOHW5p`Y4vlzXl}#Jwpgm9N^f+@M}JF6-Nw4nHVwl>zDi zgFt-0nMM(+>n~okICkvWL)uzsnR=R`+jiu}FdJX*cw+mD4SYWTmT|x>?3x;Lx-nRS z#1jz4QH;QPHC;?GlB6hd5sd+s?=DVqaRFk>L!D-I_jFmjIxt>EM^(szU@w+$yT1HPJoC5?xZ!x~f4(V}+;CkqOez=O(bP3NItY#4fp_*Wlbe&sPR`;uG(yT8 z!kmvGC?9@eed6FB<$!D8QEcXf=5O)lCvuEt<^R0A=bs_*nW{ysF)kXWC2SX?8EFWP zT@0IMuo~L3F78>z$VZJR4zIs8q-YFCrUW;_;eD^9gVK85b8Hk)?(CCZEa#3F@uRUt zg~Zfq8jmzymYsHES>`Cl4tMA{IlJhdL5|>~IP*qW$R8w}-!a#SVxMc8t2A7R0REil zOA5vW2>2_l6da`x=3S#MtjiQwzAB6wr!=ON`x>(~qNzT3P7wLPsrw|bs|aZf)NmuN z`N($ctG_iQG+O6l(%>YoG{&t_qJF5~P%^K{i)Dc;5J-|jQZK)kv95Rgw0-N*xZv|M zFD8>*q{E9UA6amMrYxP#6~35Kz;gkiuH?&vLs*2tE;S5Vw&T6L?~g_wZ8rt7$Z1?f zh?laK7tfX{uUJmpd2ga$j+cha+LQW@Ro40h$olFeVIT8qyj0;!{7xDJA14nu(eP0D zBQWj;)mSB6C%sTm1Emv!%Av-%bpC^bl#Pj#tR1|TPwA=jt^Af&$^>f!00u07+cyE_ zeU*x&JMI^wnKV>7AU;y5qbiMEUfC|6X_SIjg;nFZeb+&vk*gU4d$y&l#%X-XioRH} zco9*#n@J&og|)ow#&- z(%}R?oD(eLMDE5AqovF{pLEHhKxdVcxQ=<@%*7IQ2wRm~;?Xg%?)u$wI!(sFi5)BR zj0=iFBN|F_Qvv-nGQ%?N+!0r%<+DEf+1cKiXLTv#5~uWE!?t)BrLJcBQr5T;iN%uVW zx6co94q0ahsQ{Vd4zQc5+&j$ogRyMc;#A&@C{N=meBoHQ>#3yk^}M))oax4b5m{O} zSDfqIsBIgG;^O=mZRA|gNz@!=05SV1jb!u|{ZE-bX`Jkbuv%C==@1gPIw^e5v%wsg zA>i=7c=nwU7P2DqAcm%1;OoRFZlu3wvdHt!ZPJ>KL3vz$)Y$Ia>HH^eRs7Y>7wNEu z27J$Pa-pCRUK*CW9X}mnz9+8D1Yp{jgpVDmD!4jZZpd*Qyz0(W z>kwasCd#HTqnXrwY+KppWgWt=EI5KLAjS9c|usloA}Og0)FLV!b6+# zxOA*TP`+X$b3v`c%n0J$?3C8%q48+JqWS16W#fVJPr0lv=gvsa;Pad!FE?e`wwJUg zjQN{SxwA+0DE9V=wff6Vf^h4};|@YiK_W zBn^Z}SLzK($0CSJc%@7EPx>$_S;vCusH98BH~E@Q`5!eVErWo3U-%M7cDiv{f2}va z3qSB#gyIc4EI9R^WvlK6TF1*-HX8$%!mT{BJ+H}q$QyZ&0xxhWYo7m}G+he&yz0k! zt3G&vy3Tg%+YY!hF(V$U15W4L%$cOFV;q%)%7+8!AIg8v5|yuJn05=ik8w}=lbKX> zzA@LN0}k2X^RFKFul{`|6kp#jNy;Jjv%p+vOqw%lx(j{C^w#pKn;taCs!ttfey?j9 zYREdWMeF+dn*J9l<$78@UHR)gq^$AM*7WV`pAiEP*sQ*V(MjsE9qZSp%w2fi`DB}D zjV+I^%QTIt0|3IJ3)e;u(Q-}5{Ati&--@NtHiu0$%_M5)n10yORypGtdvF=LSM)#yKq4e!$xXEy>-kvDB623sX>z zF~>QNJ5RU4Hz(0krgEHuDd^O{T|-#cAn=T2Ie4FW3XLV2(bKNMS=Q0SX7YpBAt~Pt z9L}3M-_&Dt&^s*&i#kXTo2zDEtFmr0bgg8roIzl~hwpqic21p_DKl@n_EquSIN(~q z-IF_a#U~#k`jGX*z3=}BDKgPRfJc3IHZse3s~@~LNBgJa&2_>O^vM78@81|VU&GmE zID6{l-1%RA{{wN)MjTh0pKaXM)UV!*4n(FgWmY@7sM$&eX;-~gJ>899+CtTpY**f_ z^3Ap@pL);vtj@g(o~6r|a$fXq?65x)x4z+qbgERC4wI4KT_3n7?%pySPu%%Q)^e`v zCtzN@a%Ie1x*YoeYZmk}9Xq85s+(SSO0tcyFaH^5eoZIZa}kk8vr@mv@j$@z<1jc5UD~>Hu6?jStLAsc#Y?*5 z$A0AB#L7NW`$0v{sQ^XU7oOK^|NOk`p{L?cKXg~@*|$GwaYie8A+NvvhhLWtIF$#* z+i(BQd*eY;P`;{tFS4FB34hY28?9}{^WI!BN>^xHIJj|kV`rVtn*P@BCjyQ%krJFo zPQ2#>Ux))Er($(xnM7Zr4uc~WFPh8Qg|9}BExMq3`ujd{e|!R4`j1~a7aE!pw|vjF zIo~AlQe(M<&_A&wezaAej18oo{MZ*CiwAd&#_HMa@s=Ccf>US!*^qEDp5-0hgAbce zO^GWnTL{h3=NA>~+GL>@(WAi|qXg25z9;O?k@98IJ2afSm-9Zwat%qJ@4dV zO4~=Z?^vJr#i6>ly@&hqp3gEG)~rF`(+#C=f*7O^qZ|_k$@7N|XWu~F@%Z+np%?q- zTgCx5uN&_?QDLS`!cm%n+({}yBBNpNRg+-TerN4apWh3LBiRa{KGh5(d+xl!>mO5W?@ zk;**(0@Fq}KtHR||VhOjOf%?1>J8o*>01%vhbXOxEH>4MU-by4j5 zb&>2n-*G%ky2|2+^LZNAp$R?hMs~=Y^~?~Bh|+|U@i0zj$J~B2 zZukb{T?~L(q!hD|rOP{fD()D%@ymXAS(VXm(t?KKF^sl(UwRWaS$E#Dc`l8LJOl5g z{>HOfgbMA0e^#!6(KZ?{XQ_mrZ^`%NVV1R1)|o~F+D_Xv;}I+XY`d z*J$se!7}b%QHGyH?p?Za5lVGm-2LeKlwYkVU8caQhpdWm>k=mG9%jPcpANXD+`+Gd zYZ^v<;Z||Vg}GhlxA1#S9?!~Wj+M%(O1R&xUz#&NzNy|ctje#Qgv!q)szK#nI0{8bEdYxp?q?9=Z+uI^=A}1(ybJ=}mZ*h2p|Lzl+1eEO^{VpfOk{ zj=S}evcaY2rrBqW>qb(fQ3ssWI+U5h>2G1PTq@bL<)uN#zWGc%3y1XytC#nM%g-YF z#gC~hU4Wt7;9Q|O2-_4YrbrsaQF<^V;Fc^|m~dN81G#e5h~^^aOS|I1K8aVIONSZb z9Cv6^ezxuD7_2-4ZkT#|aqfC8z6;sbJh_FI)$4hgH6b??5R&e8eH`OHV1FI=>dg+%AxcwLg zKK!}Qv8%Tj2<1f=%l6s1RkES$<8!Pjq6cwe9%Z+kI~2EV+lfQYi1&gAX+gM6Jy~dw z-FdURGatP&djJx!?yb=`i(1##!U2{3yN-v&qNt(I9VII-bkU&cZK_iT%_0 zWu57uqnxQsEw586<#WOa{ZNnklPQU$YcFN9SK&g3#|<4tCi^o+)En-c#4~l2+t_O25gU_6d4Q`Agjzs@%L%=z?9h z;7MGoBi8qHGKBHl)#}w-_3~W@TG5F)|)l^35;Hjr{9t$_>yIKp1cC> zJI>-Poq{wi-lYq9)reH*5TXb z%cSx`?Vp$ZD`Riljb2VX=BXtG=WJIR3mXruqh2p+|Ells$_TDcX+m%27AZQGmeGF9qM+%v{0t?mN(=R z%Sbnq$6I*6`uEG}LxVJu?__=X+&_7vletUzSfX##ABz6s`L4N+9!GfL*=(ON_-DuM z%ju~2@;!i4HrYpUYd;eQg#}(_&EJ0QMKJ)9dlxQ<&e^kL_l6BAGZ(HsKhx1|;S9Lx z%N>FmHC z^5nifF_R6U^GLloj6VKQ|JK-nj$}Hsp`F{~Fh?vLL@zS!xtXwr2l`{Ee_uLZj+4F0 zwcL_ri&&>{2Hew|qkr4(Sjq;mHnKA?!!a+Aj-7cc*Y??Is4CZ4%z4a9Q&^+Bam!7F zu2D~^Gc(_`Vj(`xx>kJ+ipx!GW@#{m_6Rz$78N)zGd-QeKG?)s@9OJb6&+JZCwYXd z7uF4bs`n1#2)DHJkUDUl-RK5Oj<#`Xo6kA8N6=fBEMJVnb54Btvk%9PsdHGiO^q90 zb7j2o4L1@k(i#tK+!!B!@ZmVdTI<2vKF--;q*zBMQm$Nj(FMsHk3I1;^Ck7dGX_4W zXQPqEdCTU;Z~pvS;*twiz*7@~ch}&Nxb^4W6MG0gkguE@m2S$ksjOSn@s=+k5|T7? zkFI-Mc1)Q^qm8+z%%7=y`iMX0Q|&8W@~uoPjQ(j)9%F9wbK8A?%nPgod?{f%9k+et z_ITgD`_Wq?zVhWeGf2ex)B$W;{pOsDFHK!?{S%MjK)|NQeIt;B$xR6}Ip6C){LmZX zKfe7|^a$|G2FHU$8SW(#QGM^dANpL}v2G9Rq}EutVi~YPm(Zzz3=eZoI_uoi5NA1h z#&J`oQ%!chDZc-jHSu$A`_2qJD5)une%kmp{YyPi)^6|JIe42XF zjY`_dCme7^KL7GN|16$7HY;8=17|er9BEzJ1R3cRHZ8nWyMEB7dIG$vd$*Hv@drsk zX_`}EG6L?sfAgj2KYS|I%r3U4R_gJL=?h7J*nzXE=mbr%Zr#)I=bw5ij?(Armrl|_AbwxqLMwYk7fi}neeRbASav!CEOH*crT z%es;`bWmwq(4MD;=f$gFx4>+QeUtwQr-WkFoA3R6v~IX77A{{HdiTuCh~j2;d8G}xWIvDdj^kzIuQa2bN!esiw6nXRpg7iC zySTBCO`_;Cj*HGb*FT=Yoyg-K`{z1IJzf5E!>IPFq7$PpQ-@_-cT7iLQa2fP6DDvU zfyY{)`BD4=qsYB4JiSMBzUcKW@Loa@LZ5#yl^t<40f-$D4L=nCl^?t zpZ`s9>zl#$dLggYM)Kzw>z+N z^2xFqK#P#puw(s3zey180-1^T{)WrXi)}jx;xqR@9tTh!yXnW;m7EoUVb@&@L~YWI zvFMvMEv~(41x(x#U%qQYYmtk2UK(-4p}26YtiwYYvtD;PNaPsyd|w>96QC%jE}kh5 zvyBk_=eT*_PX&gc$V^TVPX5BeKglpgmK5PrCP;<1FUXj}XTM~mjB;S?RN{Tzg|2OA zq|i9ypYS<3j2p;!-iaV_LGSr0cusL;f(ziBhOuuLSfwGi2$OOE06+jqL_t&qnno&G z8#fF}E5fc|C<=EX82HQX8)0*SBW(85tELL7O1deHs?oYQ<;pv@nTBtu+d2%bE%hov$${Y%yE`LRR-*_U&{pTd*WZ3_f_dZaW0;- zPD}H@i*udeUbTODR-0UCg?>^`_M8Yfapw=|!b=j%Gn9Z(!=Xx)^*4%!@#mI9A0m$v*Y?@8MeidGT8%7G$##^0q(E(~pmKi{eCR0D|p z5Z}^)eXGW$Mnefqea9aO3DxDUZh!H9);m6a@<1_oRebth@(tw+jR}tM6h5?1;#4EP zaQaNRCbwIa`s&bB-kkv>?W^!*#1rF?Fg0*wo$`OC73x=Z+O~9DjEaSB(_oEE zpGu033yFYRK+2E19(|UbgVHas@sfP5Avq09)FXWxS)j3hAE_$khn`*{hA^Is5BqJq z#TZ`b$8oF11K|^9e_Jm5556*j5Luw&rDCjOMA>i%MNdVrmx!dEnLX5BoK+hAJfG4X zlj6$7iMX@xMyqNhHf@xVvKm1hZz;^asJtCVZl&=XSj3Gm3A_C%veKbSD$X%0V?4S3Itnzyrm-*Cat1_g#Q_-+YHKK}}=|mo;0}ff^p~%W0 zx8LcsN=1xLXndZ*`|hlE?sQx${5o%>RplDMq>@wRon^{mtvLV0i8up-d_Rr5^hqA} zGHOD(q9ZDepvc|BM4@;#iHVj0fuLtq|7H? z>1dPJfI&hNhtjq%J8o4jW?`OJ`jBSiCwcTJJ7zW9o9a`Ch`Yp`OLP*5$CO3XZyVCt z;Qr!#lM}khgZ6|u^&!fn(HC4eSNY7yw>0k4p$bo?^M?051Mb$F z-w^w0`vaf;G^t70`HM_Z?#pxXo9`rVK|#5b4P48YMy3km5$Iw!=_3b8?UI~iJ19c( zwHXAQPej)I*}d%2n+ac_ixEZZnUc=o($yZLT>1xaz_Ck}awSp)+M=B*D~hZu4u&dI z9Dm`fJnfhidIt~GEluVaNmq=4ihlAUa7*isOVT3kRNl8e`|ZK^C)stWBhCIx+qP2; z4UUyGqmCf1jfMk7DQ}YBpbHlozAv7nQ7_xCbfTQGFO_#K=l7&%zRR1!BAqHzWgl$E@<%Z~*)KO6SQpYb`PBX>-%Mev zEK_E9rSlt^D$ZS?TJHe!kc)k3%>K;6QQO1rcHeg#Qa_TP`IFbheaa%`&tr_*55H9@u{J3hygN zoVT14#B*76(gx+FDdCfreMdR#cguPut?}D(!bEe4!?LkQao5nX8E6^xU z>4pj#G%qa78x5UTT|(WW@bk&I7#i+spBCHq9*CXLk5SFer9$UeXj5zwg_k9!#;6OT_I&& zZOe8OmWCdttYSVB7;fjEO=h#m3XL-S4=*+PR-i6$`$FTYx=Eu~`HnRI(k|sdc|#b# z{tGw-G%x#CzA=?N@3Pca-_Abf>n~8pSKU470zQe(YE+0e5p^QZ&oxpuBWoLTL3u;$6+FGPF={mUH9jD> zywac#-krOgr*Z=aaH(IVOo5-(19R=q8)v{_x4%Xk|B{cyoMWP#DmnriR+#&eO^Ryx zFA3iNzuShMbij4t%9<(UEv` zU{`EqU2BGmgFCjxksZ5YW>06#W^NkVy)zD=W4c-B=wTu}se9@2MY&OJ!&jcoGvHQ` zhP9KFgW9E}p;n?sG+O&ZJIYDsIjt+s8O_Z5mUGTjkDr2LfFI0F$fk6x8$}~8q4TqG z$1E?y={#^y9S_+qHoZ+- zcaw>$lho%pAh1s^Ba)>H2iynmcmxOBY?aWs>FQU<_uP0*bg;&JbnBM**u4*C3d)E6 z=I=>CS#A8@9>XuCvngFRp+rBAfadAKsb6b-tv7{$8Y@N zt;i(wB<%d#ckd@P|IYaI9S_7k``hF2&K;zE+>*L;j+<~$fjVJ_SzU0bjZL9_@Rl2{ z&@WThL07`UL=KZYYf zU0EjlEU;RpYTd`s9eU~v1CO*-i zV;zATPzUy!-stn(b#UzU3xD#-c=*YuV+Q&iQabPbG!byua0Xms8j4@|wLgmuCwhs1 z+s||D<_-H0@=%Ql|CM+DKla`PJkP5<(0*)LmSxGdEH9GfJ>HTyJ0T>2#Bml92y~&e zg{G9kz;vc9v_Ea9{aYY(rofc)16`nWIz!7afuw{j5JCbZWP|LEoj8tTJ8`^Q@+Qez zY|HZ8_jA5iUPv0#>*^2m>YK>l_r33V&w0+Xoo6`<|KPjI!~8O7+RU*Mzw)Nn!GqeJ zoSjTu=1X6_pCk)#v>b|#*|V{?$Hi% zBtGCTEo^-e{em(P5#Nkn<_c(FbfUR_t@=T{`>F4k^-*sVddLLn5UU-x?&w0!Nhlx2 z$7DNUJ%?}qTU!A)cRJ^k5j2@jAXLQcMNzxotWKdb1o8kv1{E2_WuFF6bVkwvg4vS^ zLB2%vyPqmz({M6k5grCH>yY6?ndGel$nsJTa)=`pm zQ&VKzu7O6M>K9X|A2XN>2- z$jJmxJ;!K(<+M9?Gjo?i4To?r@B5Jwa5V|^1EkP;;sF`urwZ?=(i1<`Rq$<~yWo9* z46#HiXS$SG&eB8tQ&Yh$0+tRp!g+`lbLmWD92oR*u(DkK(QZlNRDnhk0~jDGY-wwd zQf1_TX=1`b+MuRxZqn7nUU;iv+hRj|>(i%yBgazC($c@>}z%Mk>wo_Aa&BmH$& z3@DoX%~`CrO&jA-rV6@S2YK*iZt+7M_Q3#-eX@QXq&zo7=ZCVwBkYA=F#xF7eh9Zt zQPsD~`5uEDh$FY=$g|QwmGz2ngK6?~4j9}~WmlK9R4pYPp_A`sS#DZd%sP4E|M_k$0cWYapiw?7KgvD-%>*2@^+oIEBlqB?ya6Ou5gt1kA1iL?z74n zv{Y5r_v`~V{QsD%f~DNbK~ov2mGD!#Ca>~o&`RB6ZB+oz0G0th>#tyzhb&~7N)D9; zX-3{G#KYGD0ko-edoc|xrK+pad}<6kU=xb=T=$BuLG=!0k<6-N5W_d zTkX0Hlqx8LPdG@93&K(1rO-inD0oPU+gHkn1B2euY(LxVxw=F>@2Y|xbt$^Jh1J&+ z*`C7k{uvx~C4|9E#{uQmOM}QDocs##8QfIAl;Em~Pz|IKtjz6dp{+Em^rQNwg8Mi+ zz!~D+vQR49NS*^0VO8%r)+z5$E(65E;|dR-TbJh*35$VA+YoM0kcNeN#&K13F@!!F zkArt4jXnbX=&y-5i|R1x<+!SbcMD4=JjkmCcI4I6r5IiEn|+oKq(7h~{7Fyw$d+sP zH!*Mjg-LzrcmI4YTn0+Tv%0yLZJJHK<;-jXN0O7WmhoDyzZ_fSYI& zW_eTCgwxely{v4hg2Bp}Vk2y>dK?Wdb;gHSxiiY`FEAdh-yp0>1y{kV<1H@@5>{{^ z{N6Ko?>PnXob8r`5y578pT9u@_@3M4>PYpxTkzRWgV;L28uM*Cz4O{HZuo>^9SQqGaBga=$J69$1(R|1p4aocl@(m?jUzm+R_OWonQrk;J}yZZTOtw@qc!6QYd#(y`w zSZ*%FazGMVNI$_5g-&c5!#LD^eNiq4)hBhLe{E|Xq|Ia6d9C(m=^ zT=C}Q5ZiKwx44ssh21tYF_bW9h0zX(lxHmi=D~$dSg{4IL;b8Sw*QuqM}%KpBHx*W zJD4k+p`G}kmR#Y6o^$Jz3COxL$<;TmB=(Fu`Ps=6207?{Zg<*4-?V`2yJy2po$h!v z4&1Y~Iekd^^dV(Lqqw#|!vwwDzPviW+VQ{w2ARaIbjswpG~&L0CN9+Kf3}4L+(u^ZyIY5Cs#mQq<=l6;M^%Z}@?9>edRh2D7`+UTQ5>En8GI-ID>VL zyQGb{s;h0FGTw5#;VcaE+5rRxxu3b)d-ykX$)#H--z_`AiA_1+8AAu>+- zI@bDSBB2p0ROuJ&NJZj1D*Uc2#+Uh3e{Y+Hy?BNj{`Q>KVsJ`{Q*S9CrJKoA`;i zo4f{o$1+|Czd9wa6XfeB0@!~`K)_&=J4lL=jNZO(9d-w2MV-bLl*q-F)lbEE#=AV9 z2<~aZ9&DbNpY?%$yU8u%U@Y#SUz-yS8qOEql76XXnlskO5Y%^*iPhq;{-7L?&c3KF7r*WLoO5qYkiDoD=yOAG??| z=$PSTbtn5Mr>c3!%ATG9Rw*^HRV9;9>GRB4Gh#f!^RL{sGPc#X=ebqOUv*(z%Whti z88=rx|9pJ;fk)y1_TmFKd^K0fI|i4r#qk4O1U|I4wO7Zu%8uk%D{)|bq7VPxo8sd0 z7K34Jn{pYhGBzJGeiF;obHDyQzZmo2&-Z`g=GaKW!ZGzDfB38M3$MMH{u1MW zUsgW7HQs*x=c1);Cg+nkCk;J!Y7}9X)lf;_83(Wlo_O+Uk_@|J;7DV9^47;V zBH(bm^R=hP&%F9#c(T;@-cQ{YE1q7*S#xn_d|Lg~`eQ zzAm;~WzovCNil8yX>q|Br^XozI*>n-NWh?7?K!F*ljCk3+F1=u-qpv@;+fpiNK%sf zM?t7iIr1sGdi#ds_6Ik_olk6vE++b3ID0~zHNQQ^L0@U?R+=KsYI4kT98XRx31D$& z8~PV{RFU>3zqNZzJRvPfN8go4wZpU*eW&oOn5x;MyyJV2nYgL;SMdc+th-&R6UpU! zugxnTi7_j`$(FnwaXDL1j+w;P*65>E_dgoX-0c1B(0AftcWwt=OQYH@m}P%Z?GJHaM3HykM--Hi@*4*&&7mRbTP*h7z0h; zpURwY?+zud@|6bC1cpJE;p3@{=!cU7^kEOC6yfp)cz8+%CeHO!BdjNxPk0yJN?et(@V<(O<~k806`;6&tgzm-^?Y zW(C}wX)-&@GFg`0grmBHneQqG8B4^NL^BJj!>S|ZrA|#|gVj{BDsTg1a+^d0wMkG1 z6U!Bb^q!2WIO!?OCnZX)G{RArwC>a2Cf9}z2H)Jr?8AH8%TAzUz9T#~} z4iXNHhYYS#d-53fk_YW5S31nK@0RDaEH6(L{x*QdwgM^mg*S!A%kpj|W)Rm|Dh360 zmQvAxV@WbX2g>`sILf7N>rjaciEWuYJ6gu4+!rQG@NO<+cEIL8zn9x8XlV@Iy+Iw- zWw}zu_KKYOEah^fm_S-r?M5cx3Qv`h+xq1T%c)pdS`QBhSJGLy>?=G{8EW>y=PAe3 zo9$)a%ivPrEA5F79&zPA`N;Bl$9`oWvL}g~Y!e=;>du1vQzcR>d{=e&y1Xb_gsI@S z)?H!a-GsO5e`zuGQ0g-HAZP3+9ZG8kds6;@&psb*Lt0s%`pAG;{sLCz0i5tV4Q4*= zv%m8`1=Ww%S@b7(lAipwy!Yf`<-(b<_RVMhRjVJADK7(|V$wcqlpCm1?}{JmD!fwa zx6ZN9^W{qyMB9w^_{QCjMIQsFTTm+726r7O9Y9UM`P-F5-5ArJ2QiUg`6SMW$cY#j znD)iPhSfo~?_WiSf&*lH1P3BPRw_w71Cl18yp$&oem}^JbOYn9t&^CAGb!OOtKQi1 zk=cd9UyL03O&<;9YGA9s9Mmg)Ji1X6iX`sR1Vsh@ZkAB?u|LEBJ-W zX9n2Ct2)5`jRYGBFz0L@WT6jzWLYPasKeA9ne?G;+wh*}L;2mynLYO1Ngz%J@eCtp zqZ#ZR$5>?&O5NhB32BiI2>RT5G)nyQxyUWaK%F^_qMCyvEC$H=%<)$Gz}H0&lcFCOI| z9qv5858|6pbF0$Q9|h$I%|Pmefc#IPYrE zOm0w**b=*@3`8N}Av@d+p zeKh^kxNW81Z+P|9v75I4>5eDiIQGcFKt-= zEIeSMKt8X{v}1e*eUvwNPXdm8>DviVnl$h{kOug}WV5>_Y~Q>yp5MHM!{nJDz_}A9 z4Sc4vC(O!N;Q{mx@N4rK=$9ViCiPP4B7@x;^sKb>89XGOB~;aS>oORsEXuRu<1oD8 zJ^93XD_!gMpl+wC96CWreJeezYwzAYxv##nc!kq?+|n^^SxSyYj)d8|Dm^YtzAMb? zP=gcV+uy?FpR#IQ-WR5X8@ebn!Y3^LX$8~(f{(gMVs^4cqxj_D>bW!W%uea0ew5Zj zZ1s5nU24C_f_r&P0zqOvaMEcrWmi50PVF);`|OzFC2UDQXqFBrb(q9-HIy_cGZz_y zY1fs7CeR&EbYwwA_S5?%;lgAqW~-~ul@HHJa+}P(yLTtQ3Xf$6>66=?Y9hFOy0o9v z!dAs>za+moo;aq8rwrcsDW8f@{u?BSa0uO%33bX@);^4ZZiTPqmEwPh4_*dN0%`Dg z;=cCGG02Gn6^`5vHWRV*(R!3Oe0y}xQB*4>7pdMGQR`j>u_R%(Ti&|)_t`$Dp z5J%3)b>f+%u7{`XmwHOREk2Ue;R0*}od)hk$yb))p7lr*Ve(ynD+|6Qe!T3LIF&cO zXBj`01K)EjQlC|JLOGMJOtw=$2up4aN?n#oyMymJ34s1NM$qY`71brKtQRVH8(0{x zBrJ}Ghzx`>~7=CiVXy%Oq5BNDgkV}c0B1^>r3_sMo~v)Un${p`|btS zY!H6McYv3WI^>!ai3WXYWwYQh|M-4hd=$S)9CF9|;7Yt#eYQ>IT6zdWwoO0XUOM%7 z!pw7sllCCxEbCteD(#Qm@>Y!wr7;VYtN0b(6$mwqWlR5RMNZfcGcWqbdg zfIAUU(p!6&NorH3fKX%&*>+s(!*)KPtq0zecPAH_pmWj!VxF{9r=>5;xK$FPUNA*;PjMQ{0wPxV(;oqp)tg>Ne6(+K%vlW1K8B43D|f))$VOOIiKb94nrCHoo-WqcMR0@W2gU zAz@gyymySzrnFy^nP9sgd(+i2+9j!cPFHNxR=q%Kuf%S2m~ zg2g@^WR>IZzvJ5Y{*(J+7u!F&<$gUrh%uO+-MgUq&e*$S3wAD(zpz^xo5wK;l- zNp9@jwwYCv`(r;_C?1Ay>%qH|2;X$=tKzyhEF-Bli0*gg7Rg&+ErU26;abJ^rf>eh zjSLam_~@iMRx*9z`s}OEH*ICX$bBnf@JM|;wqbW{+>5;=4(Qh?e6RnotUccFy36zZ zy}bwGL!Z4T)@;}q!~IOYBhl4>&i>8oJOl15tIK!a_rbr9Ck9*MoN>E2D-IlCcjhWM z>~&+0#!e>UbL($C{^YaJ$Rr8&8@%^xZ+_j#7L<+w>4%XN&fHXK;h29%GjX&xZvF1c z_}c2uIAiLlSUeRQ5P##f*Ssp$ZP>~&BR%o8Z{8U%({HovTWs>U$ zt9Qp|Zhs;trk>p~DNdQvz^W?ZId&GFI0CIJ{}9%b{c>D(VAi%Bi+|w+Tu_$w9F6Dj zp}ov4?iYToY-{1xMs<)8etEsJ)BMy|cY>dniyTU_N||s{xk)(RtBZBty(Pvy|47VP zG%J?B?Tt~_!q^NgR^9h-Nxf2_)pqt?1u1pnKF@ z<{&&1-o%``(Br5?hLa79;keRI+tzZfsMr5AuAWIpsx{`Mj!Qe4j%&HQ(bQ~%SwPxAIlUq3YoxVdc;lc&vuPhy6J2h+O}!>ldV zSvqP5VK4(rGM9{3*u4ahRk+oCpQ&7Z)r5-5*FfhGj5ikM)X1yK=$v?!?V(BnK|Ynh zCW2%f|6B?w(?f$&uilEkp<)XOxXaF3$jp)6xa|jz#a;%P7L?4Ad2T_;9_Iv(hnV>| z4B@7cfV*nhB4&7uFA2CcJL50|<~x4>)iLMt<#D8O2Cx;FMzIg@5L;00dF=7{#CvaK zl}204KXV~j=TF$to?i?_vCuxUbussLoK{C+k?DN~8uytqPDhFM+72<4~97KhWAQ+0rcZI2x zGvF`GCD3dc1B@CNZcR1{-ZB_5#Ed~{K9m7WXB=S^F)+CerK>T8#dot#`3Xj_4qnP2 zl>%+M!s4I2Y2r*i^|$c&+{}47MPsH(A6gh9(jQ8^@{9-}j z%2(i@@~(w^(fb++<-X7IC-)sV?W1F#4vPk*0U_~eY2{b=vTHP&@{3bh;V=QAo^0FJ ztk@pfX6+KsmQUPqPpEvZA*=CXozm3L3co(jcep3~RUK8GJ}X@-_>&K^d{uX?V3wa+mMyjs-oUNr?af3g8@i+-?G^NjzDq0XY1!#CL9>BT%l;P z$Qdl-(0eaC?G(0AXpLL$dYIXR*z5$th1I$Y_NC6Cym~--q(My(!F`xr<>3J9*-h#k zaUhN=+E)0eaI73jE9>_%IH@yI;l}4C9rm(4*bt70zo&4J>?97Hb$l`S>TE3&fu*ly zdp>btyW-HKk&c}~Ndv6H;%c!Lj5rfFIs@Kw3`v>-OD00ZHT}!Fps&V&JXg`*S^whJ z1e-W1iG{-N>M3>Kc!Kjz3h+{&7{u3s5jOixWeKCJ+=S15m?)H4EYh=kUv61+7#*SU zq`+t3A6autAi2i9z15M)tH_ehR`Nd2Otu)n&LAl5WxF+5OPVC#0Rw%pUpbD`XUqAQ zWq{p8r@!USO76Njhs@PYyL4EASNwYxpu9PQz_)zh$`xs6-TqmJ_>{+Y?P4nxXrNwH zhgLi+yauS`PtSnsWd>vq`|D4iIU^0V3@+22IPXX2`>w%qX;$Q>mh7TE@5%e(N8r^> znY2T9C(WSijvYH$X*D6~U`O`Rp0IkpcY03;kC=rmoBG1BXGhVtnUTsPL)yQO`IAizngU&6yNVXv)Af{O5gFU|Dt_ zxNXF#cI8J`R~P(4f|ozXFK6eTdfFmnk|a3qtDhaS9UGN-WvLPVaI5c3)=-~x7VpZf zD?eP>KaD>A;x(^{P7*kt0XK?(hjfNo>2bOJNcYv^1b$vv~V@sX3jftMNcnDQ79Ypnc3Y+Ks9w7&W@96 zket+4>aIrkU7SekiOh2JvVH4KI>S%$P>xHqkxnSMQI74b@2Y=oU!7&p);@?o`{Z{M zF9X=2CU6>3FC^Mhrum#%m=k?&RH#DsrYsqFjCCO4rkF4ZMvY%X@GlO42q?7sd$FnfBo9${>O*AQamWO=6Hk-}`y?K$TbiYw8dtc@chfam9x@CZl`w@p^MbyU9WIzdl+?+*`ljrN8_jdDLIR?Pbu-1a|TwxT1-i zO)HFN%P+yWDb|7omv@?uj4eJAE+A$wyze@syap<{fJ+VwtX@$z7TvT^WMpop_epZf^9lUhYS+J zqXWpIL8%^(On}dm&kP>1b(cJ;9BY@Ge5=l0Q#RxW=S@ZFD}r zHD*nlQg%aNylzfE6qu2XL1ftS2gv;8S&8^2%4d!_$hfPChVeUx;j__B(8fmeoI7=; zV}!{Aw|+aw@BO(OfU91OYho9WkiX1-sbby#AOg zXqC?`tTgMG!8V^He4M;8Z~nYEL=x(Aw>}u14ec2eziios@pD&S86Dtf1zS*l@qve9 zKNDFVxZ%qcTqrONW6#S3Egy!o-2RdQRm?aX@y;guWpkhYKUhHw1!e~QJ6<|Fh+ zB}m)k&buFscYNUU7~a)5$){s6eNaDurDV3$XSH!@R!3W0e9@V4)6L(`u?s9ws`#cB z7B2rrbQbT4N2@vn+~;2PTHwN_CuY0tx#x&4lgz~T9%O4n?oy8Peu2AwG~+zJ$ltyH zm*R@$7h<=uvkG-t_bOJ+{mEw^z>n#SjVo8gw?F$|Vkt==wc23VaYyW@3dwa2@E?b=M1+4fhybx+*DId^^gc9O8|&2!3( zrT^x2SCN1_d!+gQ_UHc)kM%aix#QV-9h*eE&xI|i) zWU}QgZ@PA51>8u5FY?864Zm^QLvibqU7Xc8Ca#`aAJZn37-1br@!KBX8r>{Vx$};% zvx;jPNu)z0-#!#)E}27YoH!Ep@Z+o2#(V$!-^H^}t%-}yT^K+AGuOb^;1oWScjO+( zRp`$zZMusuT*^3F5_CTd8gzmepV_=S{=b_aL+%d8Wv9)G*^^34PkS`&Ch(j#KX^6n zS(iqFF<>6hp1*C&1XJ#MfDGt6koQeHb1d?f{sH)uH~kZ4?^VAYbL6*_HQwXVNCHke zyQ3S`!dk><(0e)V)7h;nAB^G0ZjJe;&W+37_6Bg*im`ksR+50bk1Z&7l7Jh=ujrUL zmC2UvOk8iyGaa=vv>{q2PbNmg1a2q#us!c?67L>oVjOEvH(T`XKR}GWInF-!Ed1X6 z@uwg9Tm084#GRU>nbmW3=v{4W`Ni|zwFByjLkQ;q^ry)%w}jW;*M}2s7fBrvx8Nv! zF?h^eh&oJsAkFBp689IslbO)(1Zj1My2hB7u>+)=PixR%w+k_V{6!gaxhv5P%S0_HzY}w8r&Dk@+JqWCux9^R?dbZRd0r$`oPi0?!)C61(6m&B2n*y#N7iX*B zybMs%ARRq$lK29T2MBzqXx#2ehhAg5WXKhO;^?_bM5kboK$%;@DM->s=2r-$g+Z@_ z;9IBLLCfI3!Hz!8m@CPZLIvOR(wJA-QPp-;@Lbt}z0yRU3VH-y4+iy|Es4FT)X={6W8{04{&l#YUb4LHkxX(-V`35pQh zLMg~U@~XJ;e$J2sZ?dI|N&Na;#Unh{tHLS4F!9UQRRjQ4oS(DWe$#$Pobpiowz?p;DPrPx2GEO&Zab_!g=h)cGd9${=K;!dZeP0$9C6 zvHV{6*VjuqKNBwT06!a4^Gd}{pGv=MPjylTHS5TFd^fLxd&^esRqa%t-uHXKwUPkb z7|_YL;35+w+)GEIRyLCY(9tXVNWaxzpq+MVeNNg`xU7;P+4HR5FCa1#WO6J){q`lQ$FB_DdkRd@qwv41gLDmdhj@ZMXtNS+g`|c0MzqJ&7`BEuPB? zvzGWeE8s>scovY7ubrJMZ;6XEP-w?3A`C<~lBk&6!g)J5E8;`_UXtqex!}uSZV7}H zqg~mvUlq=b!;1rh%fjw=ofMr7gRH_ol|Ahn31}QV&?(x=f_m z?zjfGo+v!&stuEP@~yC&C~;Mcf!gFp;I}^_E4SKZobU`d&wLa9Of*0@+jZH#L2;7~ z2J}qMNO*Oeb&GG4IxhQnB7(ds97R5h@nieq$#J#tzCEFCU@)+1KYZr*s-M>9s6L6a!5W~StKwX}<*LD9>XFxk$pA`~D6HryO~kG6+7FY0;$c4t zEMYex(u0H60^e4LzVCG<4gG1RErU)XQyfbtolFDi;vwxEo=F28?gB$CAWu1EQaJ2u z#ZMJ4RG+?UK-=>PE#tW4XT?9#Ses$2VAs8e7If~Fhuxk5 z2NLJA1!e0Ll0I~3EW9pHIAOvqAw1YVS0nPw)kP*jD!9@n15a*K-3|>r18xU(eu)I! z7!rOC4I0Ar;K4dg0^3)wGBE|bfkTsr_QwRA+e2*Ix)Zp|*>nBuKA_&vN|R?t;|Na! z)+w!%bEfSP#%IS}LAe^-1jPfOFh z_>y)2W4yXZ`kEy2p7N*OQFn@8@nN8U039)oep)iDQ-ZCmh^2uq?be`iNi3C@bQ<;tS7^6E0=a`|6g|ca#{O z8`D{`ee}n^Xg8|M`k0*I3Tao72+tPIb14okNhoF@&z?6cd8neJxYb6h>>YK6`k{`Q zn4Srfu+k4@+%jq3P)1s3|0wI&k#;|H6*e#XX3|{vofMM&11IW4<-|U#)3uqs94ixd z=t9RN@!~V>W)r?{*{jVY&MhZA%9Z`rBGF0C_bF@gom)8ucu(4TiI3_kHUnhkdCCg# zn3Q(~X3j*_mr@3jhUG2$Ykj^eovhFAj{VjlPQ9x8>MUt4FUW&A35fT!gRB0jf3+XP zhy8P$w_O=dx@hma^31m7^@AiH?3{rVSH5YtdPbfdY zwY~`pSHgEpA>aGqOWK#aFZ}$6-zay)Z34|taZtPa0!<_?PN>FLOP{McPAG8FKaaM3 zGOuK8?PLo6i^|Y>8c>d00jC}9`6>p(Qf8rf?%;z4##%wXi(S@$o>fMap-jS|>#Dd( z2IAzS+V!K+sCw)8&*S)lx}}36q>UlVwPMfps;6nzl@N{x>L|y>92;xkBrJS~0y(}P z-^x$MFF_SP`)pr?S-q`3{MY4$pN#(hIH7P=((I*YV*4M7-p(Bf%0#yD%cKtX)<3!; z7M^_u0r#g#zDZK31&q5TAu z8I#)PaONAkyR2WaHg;iO%pwWswtn?YnrzZ80+t4JGs2Mi8Id-klVgn9-jyKw)?*oC zF&1;OPk$frQpQVH-qUFops*5)alBjmjdyymbDYRAgfeush%303Uv+6TjUs;7yOUKb z9%105Ja@*xhvfM_e54Xjak4kZ+!&Uk@9r4mq&K(h9LH*vFWvQIbdH;m6MdFl`il64 zYp;nmR=PY+0`AKXJrZ3Tx5Q&Ne=}FWDI1PSj@#NCZjp&}p`OjEA4@OgU55G64t9gjq=h+VrtpS?E})4L$)osh6!a zU5TikG3JX^3{Gk`u?osRuWFzHUjEPX_gW^luqER3So7plJfYEVfH?g=v9S@B95XL>Fxyj%E z=RI%7$JrO3yx}g6oMN|@L&SUm>6d@`wfJ33OilRsc#&&}ZD4Qu^6hc=CXT4+J{Xs` zM=Y92{(wFmVs+UNlL2pdaC3a`_S-mHoP`w=r^Ltpn1fPgewjNkuE}zyE>w zrMLevtK<6Oop1TsSpKRDKr0dk`O`lF*Klh>bl&-==h0Cw0v7d>v*;d-Km3O~W6SP= zxMXf~y!PUyFb%6Dk^3Wz1M+81G&K+l@7s{=E~8(LY?pF7H?`mfq3V1s8_j;6Hjj0vb4jpb`gi7)*|M^pJh8=!a9-Ldv@ty6o~xW9>5=<70o#7L;tKI+-nJ^}%3nV(9pt$Y#br z;fu71fl%MAkx2uVIYewh`@vO}hq$k_8^^QH_2fT>xUX#L$Ek1A9zuWVKR9t!Ur^sd zpHsg`Jz$*2vib<_R(OQIG*fmz3x&i%BR+!XE_QC+5_hjRG5*rmPfY^u^m)^8lr&U^ z2~u%R2P-6W`Wyfb6A;$1_L;K~OaP?gK>ssv2xB|=%0wj*A|vw)qetVXVn!WViK0TN z4iL*Vz&*VBY5Eih0sE`c=VPzzZer=!yXCtIo{lA+#f$Gcp837{v;X3;1eg`}GBeu& z-a$@BTxQm}_tKDd1)Kx>fJrp|b1!-W3@RiI1Y!?!I?1+YP)kEWrIa)26;kSSJ15`M=^Z3VXe$N>6}}8qf$Sya20&2G)+8}rT+4| z3c+VIn##hh_)G{IFww!PjC!A2kMHw;!c<;Uz5ei}-WRuWgNn^dgC`v?Dllkx>?NI& zAGld1;CO-dEG7JfuWY|cz>U05xvCFJRSiG}AqO~rQxeOi;K87UfqG}yy9%lVy^n7`$Ru1Z++Eu?Dy)PpY|yOrTK$*s9T=#vK=ZK!C!&z__}$V zeJCvz{?C_RJk21e1G|?Xw5txB8PnR@ zl0p5^82r{LmZ|`(a91?cMow-s=a>PWG~*0n8sJQP(D$4jhaPbD zrTWJAq?N%zFLi)$R* zCo%}XcvMeRa1_0Wj4>A3-WZITOw>`Xk?~fi&!D{lOD9m|iU-~o2H{rMT0gd1>NO`3 z*p6*``6y1~%ycL>RXvh@JdIy9U}E7rit%h21gC8Svwo zp(@_Wc?kxiu{U^My=suUItNVWa)4w+SJ$pwT{Q!vyLHMWa8{3zT{|}s-aydOsTJ4a zOWepqAS!Jv`yo#{t86MbedE>F#CDQ?|MYEUqo%D;k|)IwE;|+Iq)TTLtB!rHUNQkB z&D9S(w(lfK$ZShil9*KPMxOh7#Z?LFV|lOw4u_dUtFkK3Pn=|83wfbWTQ}`sR`0e< zz_r6)wwF8u{C>)7;@QO1(PRRB5Z}OM8RZ~p=9tCUByFU*m*vXJpIRVJ8NwzKH#!HI zxPgs*-#*%w6Kv8!0tR(UKljCW}?T+;jf`<%Q8PHTj9(-L=(` z+Oo=&bny(hoD2xg|Yt$?cJt;3j{l*R9ib9T)rYIZVV0uI>BVG1Bie zpM7vVGRSDX(lBWRjny+csgl6&NjL3d;LD`E`cfQFmp($yP(?3hdFUq$X|K|b`1Vq_ zN?#sie=K7HSpM<8AlXjB$7h8%x74dvpqub_e6*U>VKv?p2DjBVsHbkREmsE)>ts{0 z_z@lmn5&=9WfkZ2)`_v3V9J`U+w;BTDJqu#gv~4MV!l@WQSPNtd1znkbFs}xlTZ%& zumZp>(6k*g(8>1CwHNp(w2_Y}3@s@|eYR70g1RUr?WJMLDrL&*bP|y8wYbtQw4mFn zI`)YVuY@n*O?AQ@WQw{$T24BZmM30SU%j6=sui$bUP+q@A5}xOGRMAKyTyloPx+kO+3E!WSB_^QvT)m?1)7Eml@zRc$uhP$}0q~>IsP@tc zA1T)(_q4~$5BXQv-3`M@Pj2C*{L1r=&j}y=UCC6!LYILsV>BaG{-k{=qLDgCo^z|u z^ofdM{YiuN-wZtZT&J9QP8>k*c6V+~{n*U*W;xjze{{|FAIQFr=coY_Zxc9^d?JYy zZN6FaX2-7HeRGmvOz1za!Wyc$IP4!XvYDZBk_%m&u~5*V>PzGIC%Iq zGfs(iwxRTToC$=tKfRJ|B{xP3HY;)k<42@_Zy>z!0|NI7?0CYCkKI9G@6XT)TODEuJg zUAt~9_O7zj%Oq2GyXe8z=XL&wqatf#NgiHs@p;ic9-->*iY_MGwQ`=DNw|JubShaV zw56@jgb~dgV`WZEb)x!M^vkrV*btm6ck^9qV{84CoPhY6Yc7j7UVBYUpf8VZ*brZN z;E~w9X=|+b%5A`Fu$)*6_G^w)B8`6NZ>pfHNmsd|o8LKEie%9D{^#$;Ojax&8BM%o zWSklux8L`<|n*fv`U zx&>ukM`F!0o8tOUel_0o`d7u3uRJ>@u&VBOU2S{#ve?1@-b7hUJAEc&=I-b*rfxWX^}1ic7az;yrk?oV z|GYh#kg@qKC6@I|zjO@~g3Hkk1xETqJNo_%5RjMNAs08?a7%n^E9Z#~jEM_oO^nl~ zW4DrcD~T0Wnc~Cl#y9+fkC5D%KAY_y$Hr&==KZl?0rX51iYMVc5)VDFGJf{DKZqIF zdtLZbANZr+irKR{iU4_0c6^~E%nrvTm%JB>&*P=9>oe_xJh#r6 zsIeQ3I&_dxg`B(y6N0{6(bxkaF~W>Z50%Zr_+_}h;p*NWU!iJqT-hsOQ03UUqRzi=p;ge#D?ExNFQa; zns#(RtQY=Hg@f+Mt9i_DTy?=Yc^=6fk3JRM)G-Amy=d;#m_B7f9{zfOV2=s7+0)0x z70VWo;T{+F+`|eu1okik>O247s+hIx(vpC)aW00}IMho5ZUqUr_uar2NgXlo^iyJc zS5Gw0ni~^Yw!UW7n%K0FrQ!&Y`!zq$!H0*(a*mA&I1bkI`cV>a3X}|(lBHyFqa;7L z?L+=dPWniE=p-xM2I&nBs5CM$fbk)-dzC<~0hY4m*${_#%KX%lK`8g6l|Gi!88!&1 z0j{%c0?xpXfv2RI^&*g7-mfmpI*@93I8b^iz|901rK5pH&q-3)${BDa;B7Fcg{`R^ zxDTMXm0(weXoMVQf7^bH4Y#z?Q86Iupwq+P>wvEE${-AFWspq;0gB`isVBPZ2bki| z`wm3Tcqhq3|Eu?_#GLpOr&ZnACycQ?=ZR;iK#ocSl)8NQ{b@mnmkxX{<1Bbwv6}ur?l_a3g^D>{~B*22{>?B zW_y%iV!rD;;*fS--QiV?NRmGc^fn-WBzk!!Z3-O7r!=nNt?H}o3xCqOrtcCa>A-yl zP3trnV6aLV7f@kHS*1({_o*j?Z+3zg?5_iqL4Mnk?&{k*oCz9Z#@k?YAj4;|q@7O2 z&3AmCL$0SlyAotg+^RoPeogX}VDWC80S#Ga+IdEV#)}8|ikr$vPa}ih1*O0RY`$+l z3oOMDaoaz2fUtR{n2;L;Gr?eTMu)j%BPWhL!zMFQ^x7Clf$4zt0(M z@*3r(k6Y(CtH)I^=}@3UGiVE(e%h|VTDJ&xw%It0s8R5hxKgH^G@uhQo`h%OfcosO zlM4K8B0vL1{uxBSR&|PJVf2zZ!lzuOzRtVwoxz|QP09+J!nf)}>&u|BL3wmtuUk-J zpzR}|FP;tbJF80DU>++^#I1T*gG^b?6&~PPocWi=8ame1XpRqV6PiICbi2H1)C{B)BcJt_{$-eV?)^E^^`xeGqo#P+pM#bcziwr!3L`#F2dgCf{)k*}KQ{ zq)47oj{*JUA#p^XKu@m5>LIwVtU4yxCvmCsApMjl1FDXpjxD~Qj7uE`k>v&dlp8Mt z?_N}qG!Q=PGlAe(;W#aROwKCnCI*{0K;AN*2WNZoj=W^@((>ZgK(&3?OAh65I8JA>iwQMD=qLB<-^R8zTQ+Y6F1Lhq>pL8XeI)8wVNxR$yf_?f z(!Ud$pLYefqQH^c}_fOE7*Yi zX);Zmdrw@_Na`oQ4?uU%Ad`2blWj^5WzqMoE4Mr3o^`vrUf%P*$&hNBRqGNCb%2Re zWys{Nt3{_0NIJx1hI~hUgAYu$h<5`Gw&lC>kDtn_^~pQxL_V?{0CCArMOJOY#GeUi z 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%0AH>>~Za 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�|R0JVzOUSKE{uRr)Z2VrC2`No!99(bLR( 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μ2+N5e1%9rM;fSEJK;@Y90}eJqkgAYX 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
0KE8Xw& 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

7M2Wm?*9@b z0c$?D@A6sDg>T!I64?1x9{0lU;q#VR^mTDP-_7?uU%YQArAkT<<+)n9$P6u6eiwer z^`C9lF(EzVc0vUdQ38QdY=8b0&+v}*Wmrnri-wiz{J^i9%KgBne&`LI=m8vMWqjZ6 zaocjc>xgeFR=oyH|w&@vBEHe ztf1p;q~i*!ypUJ;*MKhFhKyk#Usq>m*nZ}is|@D2i#^~BL_PHVH`3`t$I=>XdzH>B z^x-7g3+CW68j#h;r*OoW@@^WtRW<#*Tz*9v%aI$+bfaxanNPb>*fE%kwDm}zMG&a+ z-6V2c!OLQ=H{?5Y;$id;gR{(>pzbqNMXVEU21m~8-}pCa-J?&XZFk>=48fR&Q0mYLt81HSFS;6ivha>+L-~X(ee(wPng@=SWrGapFw+;v z82FKUVordZ9H(YPs^z;JSmh`Dr%s$UjNM2V3v4>}Km+oNHVqtI1YuTyhcXI{^vU#R z@D=*Ocig669DaM4E}EWar61)_A!pP$K~tX#Ddc(b4V^{qZG88-hIB7k*v$T=o?S

GnI+k=0)b&9-AJC*W4thj`aEb>zM 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

L<_Q?tv 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

RmkKS+RUB3rDuISZEyV}bDh=GsQ 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