From 2796f181f72efed02a364b9526061180efc13874 Mon Sep 17 00:00:00 2001 From: MeowOS Date: Mon, 31 Aug 2026 07:53:57 +0800 Subject: [PATCH] =?UTF-8?q?feat(sdk+launcher):=20SDK=20nav/media=E5=B0=81?= =?UTF-8?q?=E8=A3=85=20+=20=C2=A710.5=20App=E5=89=8D=E5=8F=B0=E5=94=A4?= =?UTF-8?q?=E8=B5=B7=E9=80=9A=E7=9F=A5=E4=B8=AD=E5=BF=83=20(agent-206)=20?= =?UTF-8?q?=E2=80=94=20meow=5Fui=5Fnav.c(env=E6=A0=88=E5=88=9D=E5=A7=8B?= =?UTF-8?q?=E5=8C=96+report/request=5Fexit)=20+=20meow=5Fui=5Fmedia.c(?= =?UTF-8?q?=E6=87=92=E8=BF=9E=E6=96=AD=E7=BA=BF=E9=87=8D=E8=BF=9E,=20meta?= =?UTF-8?q?=E4=B8=8A=E6=8A=A5+playctl=E6=8E=A5=E6=94=B6)=20+=20MSG=5FNOTIF?= =?UTF-8?q?=5FOPEN=3D0x28/CLOSE=3D0x29(0x25/26=E5=B7=B2=E8=A2=AB=E5=8D=A0)?= =?UTF-8?q?;=20SDK=E9=A1=B6=E9=83=A8=E4=B8=8B=E6=BB=91=E6=89=8B=E5=8A=BF?= =?UTF-8?q?=E2=86=92IPC;=20launcher=20App=E5=89=8D=E5=8F=B0=E4=BC=9A?= =?UTF-8?q?=E8=AF=9D=E5=8F=A0=E5=8A=A0=E9=80=9A=E7=9F=A5=E4=B8=AD=E5=BF=83?= =?UTF-8?q?(SIGSTOP=E2=86=92=E8=AF=BB=E5=B8=A7=E2=86=92=E6=8E=A5=E7=AE=A1?= =?UTF-8?q?=E8=BE=93=E5=85=A5=E2=86=92=E6=81=A2=E5=A4=8DSIGCONT,=20?= =?UTF-8?q?=E9=9D=A2=E6=9D=BF=E5=86=85App=E5=B4=A9=E6=BA=83=E5=8D=B3?= =?UTF-8?q?=E5=85=B3);=20hello=E6=8E=A5=E7=BA=BF=E9=AA=8C=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit meow_ui.a→9a8eb7ef; hello→fc299577; launcher→b33da20a; 宿主5套件+新test_notif_open+qemu分发 全过 出入: SDK符号用meow_ui_前缀防与launcher内同名冲突; 叠加会话真机待验; §10.5文档旧号段已过时 --- build_sdk.sh | 2 +- meow_notify_ipc.c | 52 +++++++++ meow_notify_ipc.h | 14 +++ meow_ui.h | 1 + meow_ui_activity.c | 5 + meow_ui_input.c | 5 +- meow_ui_media.c | 253 +++++++++++++++++++++++++++++++++++++++++ meow_ui_media.h | 45 ++++++++ meow_ui_nav.c | 74 ++++++++++++ meow_ui_nav.h | 42 +++++++ meow_ui_sys.c | 17 ++- meow_ui_sys.h | 9 +- test_ime_fix | Bin 304600 -> 229712 bytes test_ime_fix.c | 2 +- test_meow_ui_widgets | Bin 304720 -> 306120 bytes test_meow_ui_widgets.c | 2 +- test_notif_open | Bin 0 -> 150936 bytes test_notif_open.c | 191 +++++++++++++++++++++++++++++++ test_p1p2p3_repro.c | 2 +- test_sb_collapse | Bin 0 -> 150360 bytes test_sb_collapse.c | 6 +- test_sdk_fixes | Bin 0 -> 229912 bytes test_sdk_fixes.c | 2 +- 23 files changed, 705 insertions(+), 19 deletions(-) create mode 100644 meow_ui_media.c create mode 100644 meow_ui_media.h create mode 100644 meow_ui_nav.c create mode 100644 meow_ui_nav.h create mode 100755 test_notif_open create mode 100644 test_notif_open.c create mode 100755 test_sb_collapse create mode 100755 test_sdk_fixes diff --git a/build_sdk.sh b/build_sdk.sh index b7440e4..2150cfc 100755 --- a/build_sdk.sh +++ b/build_sdk.sh @@ -10,7 +10,7 @@ AR="${AR:-/usr/bin/ar}" # 系统 GNU ar 即可归档 mipsel ELF 对象(架 rm -f meow_ui.a *.o # -I../meow_launcherd:meow_notify_ipc.c 复用共享协议头 meow_ipc.h(同一份、杜绝两端漂移) -OBJS="meow_ui_gfx meow_ui_log meow_ui_notify meow_notify_ipc meow_ui_img meow_ui_widget meow_ui_input meow_ui_theme meow_ui_ime meow_ui_sys meow_ui_vol meow_ui_activity meow_ui_global meow_ui_dialog meow_ui_config meow_ui_draw meow_ui_view stb_image" +OBJS="meow_ui_gfx meow_ui_log meow_ui_notify meow_notify_ipc meow_ui_img meow_ui_widget meow_ui_input meow_ui_theme meow_ui_ime meow_ui_sys meow_ui_vol meow_ui_activity meow_ui_global meow_ui_dialog meow_ui_config meow_ui_draw meow_ui_view meow_ui_nav meow_ui_media stb_image" CFLAGS="-Os -static -I$ROOT/patch_v2/meow_launcherd" for f in $OBJS; do echo "== cc $f ==" diff --git a/meow_notify_ipc.c b/meow_notify_ipc.c index 6486fed..5445b6a 100644 --- a/meow_notify_ipc.c +++ b/meow_notify_ipc.c @@ -280,3 +280,55 @@ void meow_notify_ipc_update_progress(uint32_t nid, int progress) } close(fd); } + +/* ---- 通用一次性帧(meow_ui_nav / notif_open 复用本传输层) ---- */ +int meow_notify_ipc_send_raw(uint16_t type, const void *payload, uint32_t len, int want_ack) +{ + int fd = conn_path(ipc_sock_path()); + if (fd < 0) return -1; + set_ack_timeout(fd); + if (!send_frame(fd, type, 0, payload, len)) { close(fd); return -1; } + if (want_ack) { + /* 阻塞读一帧应答头(best-effort:读到即确认 launcher 已处理;内容不关心)。 + * 超时(SO_RCVTIMEO)/断开 → read_all 返回 0,视为已发出(不崩)。 */ + uint8_t rhdr[MEOW_IPC_HDR_LEN]; + if (read_all(fd, rhdr, sizeof rhdr)) { + /* 读完应答负载(若声明),保持连接语义一致;不校验 magic(best-effort) */ + uint32_t rlen; + memcpy(&rlen, rhdr + 12, 4); + if (rlen > 0 && rlen <= MEOW_IPC_MAX) { + uint8_t pay[256]; + size_t to = rlen < sizeof pay ? rlen : sizeof pay; + (void)read_all(fd, pay, to); + } + } + } + close(fd); + return 0; +} + +void meow_notify_ipc_notif_open(const char *app_id, uint32_t event_seq, + uint16_t origin_x, uint16_t origin_y, + uint16_t hotzone, uint8_t flags) +{ + m_notif_open_t o; + memset(&o, 0, sizeof o); + snprintf(o.app_id, sizeof o.app_id, "%s", + (app_id && app_id[0]) ? app_id : meow_notify_ipc_app_id()); + o.event_seq = event_seq; + o.origin_x = origin_x; + o.origin_y = origin_y; + o.hotzone = hotzone; + o.flags = flags; + (void)meow_notify_ipc_send_raw(MSG_NOTIF_OPEN, &o, (uint32_t)sizeof o, 1); +} + +void meow_notify_ipc_notif_close(const char *app_id, uint32_t reason) +{ + m_notif_close_t o; + memset(&o, 0, sizeof o); + snprintf(o.app_id, sizeof o.app_id, "%s", + (app_id && app_id[0]) ? app_id : meow_notify_ipc_app_id()); + o.reason = reason; + (void)meow_notify_ipc_send_raw(MSG_NOTIF_CLOSE, &o, (uint32_t)sizeof o, 1); +} diff --git a/meow_notify_ipc.h b/meow_notify_ipc.h index f02a5a0..14df264 100644 --- a/meow_notify_ipc.h +++ b/meow_notify_ipc.h @@ -43,6 +43,20 @@ void meow_notify_ipc_dismiss(uint32_t nid); * 不落盘)。best-effort:写失败/无 socket 静默。 */ void meow_notify_ipc_update_progress(uint32_t nid, int progress); +/* 通用一次性请求:发 type+payload 帧,want_ack 时阻塞读一帧应答(忽略其内容,仅确保 + * launcher 已处理完再关连接,防「写后即关」丢帧竞态)。返回 0=已发出(want_ack 含读到应答); + * -1=无 socket/写失败/读失败。best-effort,供 SDK 内部 nav / notif_open 复用。 */ +int meow_notify_ipc_send_raw(uint16_t type, const void *payload, uint32_t len, int want_ack); + +/* 一次性发送 MSG_NOTIF_OPEN(App 前台顶部下滑 → 请求 launcher 展开通知中心叠加会话, + * FRAMEWORK_DESIGN §10.5)。App 只检测+上报、不渲染系统 UI。best-effort:失败静默。 */ +void meow_notify_ipc_notif_open(const char *app_id, uint32_t event_seq, + uint16_t origin_x, uint16_t origin_y, + uint16_t hotzone, uint8_t flags); + +/* 一次性发送 MSG_NOTIF_CLOSE(App 告知结束/退出 → launcher 收尾兜底,可选用途)。best-effort。 */ +void meow_notify_ipc_notif_close(const char *app_id, uint32_t reason); + #ifdef __cplusplus } #endif diff --git a/meow_ui.h b/meow_ui.h index 0a21284..63a82c3 100644 --- a/meow_ui.h +++ b/meow_ui.h @@ -218,6 +218,7 @@ int meow_ui_long_press_ms(void); /* 当前阈值(默认 void meow_ui_activity_push(int id); void meow_ui_activity_pop(void); int meow_ui_activity_active(void); /* 当前 active activity id(栈空=0) */ +int meow_ui_activity_depth(void); /* 当前栈深(push/pop 页数;供 M3 导航上报用) */ /* ② App 跨 Activity 控件(SDK 托管,骨架)。SDK 维护全局控件列表: * - 渲染:每帧(有脏区需上屏时,meow_ui_gfx present())在 active activity 内容之上、 diff --git a/meow_ui_activity.c b/meow_ui_activity.c index 205d215..84f29ef 100644 --- a/meow_ui_activity.c +++ b/meow_ui_activity.c @@ -31,3 +31,8 @@ int meow_ui_activity_active(void) { return g_act_n > 0 ? g_act[g_act_n - 1] : 0; } + +int meow_ui_activity_depth(void) +{ + return g_act_n; +} diff --git a/meow_ui_input.c b/meow_ui_input.c index 1629eb7..a931b65 100644 --- a/meow_ui_input.c +++ b/meow_ui_input.c @@ -436,8 +436,9 @@ void meow_ui_run(const meow_ui_events *ev) } else if (e.type == MEOW_EV_NOTIF_PULL) { if (in_startup) continue; /* 启动窗口顶区误触残留:丢弃,防进入即开通知中心 */ /* 系统级「下拉展开通知中心」:起始于顶部热区的下滑为系统保留手势,不下发 - * APP on_swipe;路由到系统钩子(当前为记录占位,通知中心 UI 为后续里程碑)。 */ - meow_ui_sys_notif_pull(); + * APP on_swipe;路由到系统钩子(App 进程只检测+经 IPC 上报 MSG_NOTIF_OPEN, + * 通知中心由 launcher 渲染,见 FRAMEWORK_DESIGN §10.5)。 */ + meow_ui_sys_notif_pull(e.a); /* e.a = 手势按下原点 Y */ } else if (e.type == MEOW_EV_TOUCH_DOWN || e.type == MEOW_EV_TOUCH_MOVE) { /* M2.71-bug2/6:拖动过程(跟手)。IME 弹出时触摸优先喂键盘(键盘覆盖层拦截, * on_touch_* 丢弃,避免按到键盘却在背后控件上锁拖拽);启动窗口也吞(防残留点按 diff --git a/meow_ui_media.c b/meow_ui_media.c new file mode 100644 index 0000000..6063642 --- /dev/null +++ b/meow_ui_media.c @@ -0,0 +1,253 @@ +/* meow_ui_media.c — App 侧媒体会话封装(SDK 公共件;见 meow_ui_media.h)。 + * + * 传输:AF_UNIX SOCK_STREAM 到 MEOW_IPC_SOCK(缺省 /usr/data/meow_ipc.sock)。后台线程持有 + * 持久连接:HELLO(app_id, MF_PLAYBACK) 注册为媒体源 + poll 读 launcher 下发 MSG_PLAYCTL(经 + * 该连接 fd 回发,见 launcher meow_media.c send_playctl)。meow_ui_media_meta() 在调用线程 + * 直接经同一连接发 MSG_META(全双工:写 META、读 PLAYCTL 互不干扰)。 + * + * 连接生命周期(best-effort):懒连(首次 meta / 注册回调时 connect+HELLO+ACK); + * 断线(读失败/写失败)→ close+置 -1,下次 meta 重连;launcher 不在 → connect 失败 → 静默。 + * 线程安全:g_fd 读写经互斥;后台线程只在 poll/读失败时改 fd,meta 线程只在 connect 时改 fd。 + */ +#include "meow_ui_media.h" +#include "meow_ipc.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +static pthread_mutex_t g_mu = PTHREAD_MUTEX_INITIALIZER; +static char g_app[MEOW_APP_ID_MAX] = ""; +static int g_app_set = 0; +static int g_fd = -1; +static pthread_t g_thr; +static int g_thr_on = 0; +static volatile int g_quit = 0; +static meow_media_playctl_fn g_cb = NULL; + +/* 后台线程主体(定义在文件后段;on_playctl 懒起时引用)。 */ +static void *media_thread_main(void *arg); + +static const char *sock_path(void) +{ + const char *e = getenv("MEOW_IPC_SOCK"); + return (e && e[0]) ? e : MEOW_IPC_PATH; +} + +static int connect_path(const char *path) +{ + int fd = socket(AF_UNIX, SOCK_STREAM, 0); + if (fd < 0) return -1; + struct sockaddr_un a; + memset(&a, 0, sizeof a); + a.sun_family = AF_UNIX; + strncpy(a.sun_path, path, sizeof a.sun_path - 1); + if (connect(fd, (struct sockaddr *)&a, sizeof a) < 0) { close(fd); return -1; } + return fd; +} + +/* 写满 n 字节(EINTR 重试);失败返回 0。 */ +static int write_all(int fd, const uint8_t *p, size_t n) +{ + size_t off = 0; + while (off < n) { + ssize_t w = write(fd, p + off, n - off); + if (w < 0) { if (errno == EINTR) continue; return 0; } + if (w == 0) return 0; + off += (size_t)w; + } + return 1; +} + +static int read_all(int fd, uint8_t *p, size_t n) +{ + size_t off = 0; + while (off < n) { + ssize_t r = read(fd, p + off, n - off); + if (r < 0) { if (errno == EINTR) continue; return 0; } + if (r == 0) return 0; + off += (size_t)r; + } + return 1; +} + +/* 组装并写出 16B(LE)帧头 + 负载。 */ +static int send_frame(int fd, uint16_t type, uint32_t req_id, + const void *payload, uint32_t len) +{ + uint8_t hdr[MEOW_IPC_HDR_LEN]; + uint32_t magic = MEOW_IPC_MAGIC; + uint16_t ver = MEOW_IPC_VERSION; + memcpy(hdr + 0, &magic, 4); + memcpy(hdr + 4, &ver, 2); + memcpy(hdr + 6, &type, 2); + memcpy(hdr + 8, &req_id, 4); + memcpy(hdr + 12, &len, 4); + if (!write_all(fd, hdr, sizeof hdr)) return -1; + if (len && payload && !write_all(fd, payload, len)) return -1; + return 0; +} + +/* 读一帧头+负载;返回负载长(≥0),-1=断/坏帧。 */ +static int read_frame(int fd, uint16_t *type, uint8_t *rbuf, uint32_t rcap) +{ + uint8_t hdr[MEOW_IPC_HDR_LEN]; + if (!read_all(fd, hdr, sizeof hdr)) return -1; + uint32_t magic, len; uint16_t ver; + memcpy(&magic, hdr, 4); memcpy(&ver, hdr + 4, 2); memcpy(type, hdr + 6, 2); + memcpy(&len, hdr + 12, 4); + if (magic != MEOW_IPC_MAGIC || ver != MEOW_IPC_VERSION) return -1; + if (len > rcap) len = rcap; + if (len > 0 && !read_all(fd, rbuf, len)) return -1; + return (int)len; +} + +static void media_app_id(void) +{ + if (g_app_set) return; + const char *s = getenv("MEOW_LOG_APP"); + snprintf(g_app, sizeof g_app, "%s", (s && s[0]) ? s : "app"); + g_app_set = 1; +} + +/* (调用方已持 mu)连接 + HELLO(MF_PLAYBACK) + 读 ACK。成功存 g_fd 返回 fd;失败 -1。 */ +static int conn_locked(void) +{ + if (g_fd >= 0) return g_fd; + int fd = connect_path(sock_path()); + if (fd < 0) return -1; + media_app_id(); + m_hello_t h; + memset(&h, 0, sizeof h); + snprintf(h.app_id, sizeof h.app_id, "%s", g_app); + h.version = 1; + h.flags = MF_PLAYBACK; + if (send_frame(fd, MSG_HELLO, 1, &h, sizeof h) != 0) { close(fd); return -1; } + uint8_t rbuf[256]; + uint16_t rt; + if (read_frame(fd, &rt, rbuf, sizeof rbuf) < 0 || + (rt != MSG_ACK && rt != MSG_ERR)) { close(fd); return -1; } + g_fd = fd; + return fd; +} + +/* (调用方已持 mu)标记断线并关闭。 */ +static void mark_dead_locked(void) +{ + if (g_fd >= 0) { close(g_fd); g_fd = -1; } +} + +void meow_ui_media_init(const char *app_id) +{ + pthread_mutex_lock(&g_mu); + if (app_id && app_id[0]) { + snprintf(g_app, sizeof g_app, "%s", app_id); + g_app_set = 1; + } else if (!g_app_set) { + const char *s = getenv("MEOW_LOG_APP"); + snprintf(g_app, sizeof g_app, "%s", (s && s[0]) ? s : "app"); + g_app_set = 1; + } + pthread_mutex_unlock(&g_mu); +} + +void meow_ui_media_on_playctl(meow_media_playctl_fn cb) +{ + pthread_mutex_lock(&g_mu); + g_cb = cb; + int need_start = !g_thr_on; + if (need_start) { g_quit = 0; g_thr_on = 1; } + pthread_mutex_unlock(&g_mu); + if (need_start) pthread_create(&g_thr, NULL, media_thread_main, NULL); + /* detach:App 退出经 meow_ui_media_stop 设 g_quit 后线程自身退出,无需 join */ + if (need_start) pthread_detach(g_thr); +} + +void meow_ui_media_meta(uint32_t state, uint32_t pos_ms, uint32_t dur_ms, + const char *title, const char *artist, const char *album, + const char *artwork, const char *lyric) +{ + m_meta_t mm; + memset(&mm, 0, sizeof mm); + pthread_mutex_lock(&g_mu); + media_app_id(); + snprintf(mm.app_id, sizeof mm.app_id, "%s", g_app); + mm.state = state; + mm.pos_ms = pos_ms; + mm.dur_ms = dur_ms; + if (title) snprintf(mm.title, sizeof mm.title, "%s", title); + if (artist) snprintf(mm.artist, sizeof mm.artist, "%s", artist); + if (album) snprintf(mm.album, sizeof mm.album, "%s", album); + if (artwork && artwork[0]) { snprintf(mm.artwork, sizeof mm.artwork, "%s", artwork); mm.flags |= MF_ART | MF_COVER; } + if (lyric && lyric[0]) { snprintf(mm.lyric, sizeof mm.lyric, "%s", lyric); mm.flags |= MF_LYRIC; } + + int fd = conn_locked(); + if (fd >= 0) { + if (send_frame(fd, MSG_META, (uint32_t)((uint64_t)pos_ms & 0x7FFFFFFF), &mm, sizeof mm) != 0) { + mark_dead_locked(); /* 断线:下次 meta 重连 */ + fd = conn_locked(); + if (fd >= 0) (void)send_frame(fd, MSG_META, (uint32_t)((uint64_t)pos_ms & 0x7FFFFFFF), &mm, sizeof mm); + } + } + pthread_mutex_unlock(&g_mu); +} + +void meow_ui_media_stop(void) +{ + pthread_mutex_lock(&g_mu); + g_quit = 1; + mark_dead_locked(); + g_thr_on = 0; + pthread_mutex_unlock(&g_mu); +} + +/* 后台线程主体:懒连 + poll 读 launcher 下发 MSG_PLAYCTL → 调 cb。 */ +static void *media_thread_main(void *arg) +{ + (void)arg; + while (!g_quit) { + pthread_mutex_lock(&g_mu); + int fd = g_fd; + if (fd < 0) fd = conn_locked(); /* 懒连/重连(best-effort;失败则回到循环再试) */ + pthread_mutex_unlock(&g_mu); + if (fd < 0) { usleep(500000); continue; } + + struct pollfd p; + p.fd = fd; p.events = POLLIN; p.revents = 0; + int pr = poll(&p, 1, 200); + if (pr < 0 && errno != EINTR) { + pthread_mutex_lock(&g_mu); mark_dead_locked(); pthread_mutex_unlock(&g_mu); + continue; + } + if (pr > 0 && (p.revents & (POLLHUP | POLLERR | POLLNVAL))) { + pthread_mutex_lock(&g_mu); mark_dead_locked(); pthread_mutex_unlock(&g_mu); + continue; + } + if (pr > 0 && (p.revents & POLLIN)) { + uint8_t rbuf[MEOW_IPC_MAX]; + uint16_t type; + int n = read_frame(fd, &type, rbuf, sizeof rbuf); + if (n < 0) { + pthread_mutex_lock(&g_mu); mark_dead_locked(); pthread_mutex_unlock(&g_mu); + continue; + } + if (type == MSG_PLAYCTL && n >= (int)sizeof(m_playctl_t)) { + m_playctl_t c; + memcpy(&c, rbuf, sizeof c); + /* g_cb 经互斥读快照后调用(App 回调可能在 UI 线程,简化为直接调) */ + pthread_mutex_lock(&g_mu); + meow_media_playctl_fn cb = g_cb; + pthread_mutex_unlock(&g_mu); + if (cb) cb((int)c.cmd, (int64_t)c.seek_ms); + } + } + } + pthread_mutex_lock(&g_mu); mark_dead_locked(); pthread_mutex_unlock(&g_mu); + return NULL; +} diff --git a/meow_ui_media.h b/meow_ui_media.h new file mode 100644 index 0000000..8bdcfae --- /dev/null +++ b/meow_ui_media.h @@ -0,0 +1,45 @@ +/* meow_ui_media.h — App 侧媒体会话封装(SDK 公共件;FRAMEWORK_DESIGN 附录 B / D1)。 + * + * 让框架/第三方播放类 App 以 SDK 标准上报实时元数据(MSG_META)并接收控制(MSG_PLAYCTL)。 + * 声明 MF_PLAYBACK 的 App 首次上报 → launcher 注册为媒体源(最近活跃=当前源);通知中心 + * 媒体卡片 / 主界面 Now Playing 页据此显示与控制。 + * + * 连接管理(best-effort):懒连(首次 meta/注册回调时 connect)+ 断线重连(下次上报时重试); + * launcher 不在 → 优雅静默降级,绝不崩。帧格式/负载复用 launcher 共享 meow_ipc.h(同一份)。 + * + * 命名:launcher 侧已占用 meow_media_*(meow_media.c),SDK 侧统一 meow_ui_media_* 前缀, + * 避免两态同符号在 launcher(链 meow_ui.a + meow_media.c)出现重复定义。 + */ +#ifndef MEOW_UI_MEDIA_H +#define MEOW_UI_MEDIA_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* 播放控制回调:cmd 1=播放 2=暂停 3=上一首 4=下一首 5=seek(seek_ms 为毫秒)。 */ +typedef void (*meow_media_playctl_fn)(int cmd, int64_t seek_ms); + +/* 指定 app_id(NULL=env MEOW_LOG_APP,缺省 "app")。幂等,首次调用生效。 */ +void meow_ui_media_init(const char *app_id); + +/* 注册播放控制回调并启动后台接收线程(懒起;重复调用幂等)。 + * 线程:连接(HELLO+MF_PLAYBACK 注册为媒体源)→ poll 读 launcher 下发 MSG_PLAYCTL → 调 cb。 */ +void meow_ui_media_on_playctl(meow_media_playctl_fn cb); + +/* 上报实时元数据/进度/状态(state:0=停止 1=播放 2=暂停 3=缓冲)。 + * artwork/lyric 非空 → 自动置 MF_ART/MF_COVER/MF_LYRIC 标志;封面/歌词路径或 MeowOS 槽位。 + * best-effort:无 socket/launcher 不在 → 静默降级(打日志不崩)。 */ +void meow_ui_media_meta(uint32_t state, uint32_t pos_ms, uint32_t dur_ms, + const char *title, const char *artist, const char *album, + const char *artwork, const char *lyric); + +/* 停止后台接收线程并断开连接(App 退出时调;幂等)。 */ +void meow_ui_media_stop(void); + +#ifdef __cplusplus +} +#endif +#endif /* MEOW_UI_MEDIA_H */ diff --git a/meow_ui_nav.c b/meow_ui_nav.c new file mode 100644 index 0000000..69897b4 --- /dev/null +++ b/meow_ui_nav.c @@ -0,0 +1,74 @@ +/* meow_ui_nav.c — App 侧 M3 导航上报封装(SDK 公共件;见 meow_ui_nav.h)。 + * + * 只做「组装 m_nav_t + 经 meow_notify_ipc 一次性发送 MSG_NAV」,不维护连接/订阅循环; + * launcher 主循环单写者消费(回复 ACK)。全部失败路径优雅降级(无 socket/写失败/超时 + * → 静默返回,不崩)。状态(栈深/顶层/app_id)仅进程内缓存,无并发写(App 页面线程调用)。 + */ +#include "meow_ui_nav.h" +#include "meow_ipc.h" +#include "meow_notify_ipc.h" /* meow_notify_ipc_send_raw(复用其一次性帧传输层) */ + +#include +#include +#include + +static char g_app_id[MEOW_APP_ID_MAX] = ""; +static int g_depth = 0; +static char g_top[MEOW_ACT_MAX] = ""; +static int g_inited = 0; + +/* app_id:env MEOW_LOG_APP(与 meow_ui_log/meow_notify_ipc 取值口径一致),缺省 "app"。 */ +static const char *nav_app_id(void) +{ + if (!g_app_id[0]) { + const char *s = getenv("MEOW_LOG_APP"); + snprintf(g_app_id, sizeof g_app_id, "%s", (s && s[0]) ? s : "app"); + } + return g_app_id; +} + +int meow_ui_nav_init(void) +{ + if (g_inited) return g_depth; + g_inited = 1; + nav_app_id(); + const char *chain = getenv("MEOW_CHAIN"); + if (chain && chain[0]) { + g_depth = 1; + for (const char *p = chain; *p; p++) if (*p == ';') g_depth++; + } + const char *act = getenv("MEOW_ACTIVITY"); + if (act && act[0]) snprintf(g_top, sizeof g_top, "%s", act); + return g_depth; +} + +int meow_ui_nav_depth(void) { meow_ui_nav_init(); return g_depth; } +const char *meow_ui_nav_top(void) { meow_ui_nav_init(); return g_top; } + +void meow_ui_nav_report(uint32_t depth, const char *top) +{ + meow_ui_nav_init(); + m_nav_t n; + memset(&n, 0, sizeof n); + snprintf(n.app_id, sizeof n.app_id, "%s", nav_app_id()); + n.nav_type = MEOW_NAV_REPORT; + n.depth = depth; + if (top) snprintf(n.current, sizeof n.current, "%s", top); + (void)meow_notify_ipc_send_raw(MSG_NAV, &n, (uint32_t)sizeof n, 1); + /* 进程内镜像:App 侧也维持当前栈深/顶层(跨 TU 只读用) */ + g_depth = (int)depth; + if (top) snprintf(g_top, sizeof g_top, "%s", top); +} + +void meow_ui_nav_request_exit(void) +{ + meow_ui_nav_init(); + m_nav_t n; + memset(&n, 0, sizeof n); + snprintf(n.app_id, sizeof n.app_id, "%s", nav_app_id()); + n.nav_type = MEOW_NAV_EXIT; + n.depth = 0; + (void)meow_notify_ipc_send_raw(MSG_NAV, &n, (uint32_t)sizeof n, 1); + g_depth = 0; + g_top[0] = 0; +} diff --git a/meow_ui_nav.h b/meow_ui_nav.h new file mode 100644 index 0000000..d786588 --- /dev/null +++ b/meow_ui_nav.h @@ -0,0 +1,42 @@ +/* meow_ui_nav.h — App 侧 M3 导航上报封装(SDK 公共件)。 + * + * App 用它把「应用内页面栈深/顶层 activity」经 IPC 报给 launcher(MSG_NAV REPORT), + * 以及在根屏按返回时请求退出(MSG_NAV EXIT);launcher 据此维护每 app 导航栈(纯上报, + * 回退边界由 launcher 统一决定)。App 不渲染系统 UI(FRAMEWORK_DESIGN §3 / MEOW_APP_SDK §6.1)。 + * + * 命名:launcher 侧已占用 meow_nav_*(app_launcher.c),SDK 侧统一 meow_ui_nav_* 前缀, + * 避免两态同符号在 launcher(链 meow_ui.a + app_launcher.c)出现重复定义。 + * + * 冷启动链路:launcher 经 MEOW_ACTIVITY= / MEOW_CHAIN=;;...; 注入; + * meow_ui_nav_init() 读之初始化栈深/顶层。App 自行 push/pop 页面后经 meow_ui_nav_report() + * 上报新深度/顶层。 + */ +#ifndef MEOW_UI_NAV_H +#define MEOW_UI_NAV_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* 从 env 初始化(幂等):MEOW_CHAIN 段数→栈深;MEOW_ACTIVITY→顶层 activity_id。 + * 未注入(裸启动)→ 深度 0、顶层空串。app_id 取 env MEOW_LOG_APP(缺省 "app")。 + * 返回当前逻辑深度(0=未注入/裸启动)。 */ +int meow_ui_nav_init(void); + +/* 当前栈深 / 顶层 activity_id(meow_ui_nav_init 后为其初值;App 上报后更新)。 */ +int meow_ui_nav_depth(void); +const char *meow_ui_nav_top(void); + +/* 上报 MEOW_NAV_REPORT:App 弹/推自己的屏后调用(depth=当前逻辑深度 1..16,top=顶层)。 + * best-effort:launcher 不在/无 socket 静默降级,不崩。 */ +void meow_ui_nav_report(uint32_t depth, const char *top); + +/* 上报 MEOW_NAV_EXIT:App 在根屏按返回,请求 launcher 终止应用回主屏。best-effort。 */ +void meow_ui_nav_request_exit(void); + +#ifdef __cplusplus +} +#endif +#endif /* MEOW_UI_NAV_H */ diff --git a/meow_ui_sys.c b/meow_ui_sys.c index aea79f7..b5fade9 100644 --- a/meow_ui_sys.c +++ b/meow_ui_sys.c @@ -15,6 +15,7 @@ #include "meow_ui_sys.h" #include "meow_ui_internal.h" #include "meow_ui_vol.h" +#include "meow_notify_ipc.h" /* meow_notify_ipc_notif_open:App 前台 #10.5 上报 */ #include #include @@ -256,12 +257,18 @@ int meow_ui_sys_statusbar_height(void) return meow_ui_statusbar_collapsed() ? MUI_SBAR_COLLAPSE_H : MUI_SBAR_H; } -void meow_ui_sys_notif_pull(void) +void meow_ui_sys_notif_pull(int origin_y) { - /* 系统级「下拉展开通知中心」手势接线(M2.5x):输入层识别出「起始于顶部热区的 - * SWIPE_DOWN」后路由到此。通知中心 UI 为后续里程碑——此处先落记录(避免哑无痕); - * 届时由对应代理在该入口挂真实展开逻辑(IPC SHOW_ACTIVITY / 覆盖层渲染)。 */ - meow_log(MEOW_LOG_WARN, "notif_pull: notification center TBD (wired)"); + /* 系统级「下拉展开通知中心」手势接线(FRAMEWORK_DESIGN §10.5):输入层识别出「起始于 + * 顶部热区的 SWIPE_DOWN」后路由到此。App 进程只做检测+上报(不发事件给 on_swipe), + * 通知中心仍由 launcher 渲染——此处经 IPC 发 MSG_NOTIF_OPEN 请求 launcher 展开叠加会话 + * (SIGSTOP App + 读回其帧 + 叠加渲染通知中心)。best-effort:无 socket/launcher 不在 + * → meow_notify_ipc_notif_open 静默降级。 */ + static uint32_t seq = 0; + if (origin_y < 0) origin_y = 0; + meow_notify_ipc_notif_open(NULL, ++seq, 0, (uint16_t)origin_y, + (uint16_t)meow_ui_statusbar_hotzone(), + (uint8_t)(g_fullscreen ? 1 : 0)); } int meow_ui_sys_statusbar_force(void) diff --git a/meow_ui_sys.h b/meow_ui_sys.h index 4acfaa3..2a67ef9 100644 --- a/meow_ui_sys.h +++ b/meow_ui_sys.h @@ -64,10 +64,11 @@ int meow_ui_sys_statusbar_active(void); * MUI_SBAR_COLLAPSE_H(非满 28,app 内容可上移);否则 0(供 meow_ui_statusbar_height 用)。 */ int meow_ui_sys_statusbar_height(void); -/* 系统级「下拉展开通知中心」手势挂钩(M2.5x 接线):输入层识别出「起始于顶部热区的 - * SWIPE_DOWN」后路由到这里。通知中心 UI 为后续里程碑,此入口作记录/占位;届时由对应 - * 代理在此挂真实展开逻辑(IPC SHOW_ACTIVITY / 覆盖层渲染)。 */ -void meow_ui_sys_notif_pull(void); +/* 系统级「下拉展开通知中心」手势挂钩(§10.5):输入层识别出「起始于顶部热区的 SWIPE_DOWN」 + * 后路由到这里(origin_y=手势按下原点 Y,供 launcher 复核是否在顶部热区)。App 进程只做 + * 检测+上报:经 IPC 发 MSG_NOTIF_OPEN 请求 launcher 展开通知中心叠加会话;**App 不渲染系统 UI**。 + * best-effort:无 socket/launcher 不在 → 静默降级。 */ +void meow_ui_sys_notif_pull(int origin_y); /* 自上次渲染后状态栏数据是否已变(1s 轻刷/显隐切换置位);读取即清除。 * 渲染后端 present() 用它决定是否重画顶部条(配合脏区/整帧判断)。 */ diff --git a/test_ime_fix b/test_ime_fix index 14f793e155d26ea9cf7ba23b5b6345595900471c..c4d3ce7d842c56ffdd0a3e5df60cf3d154d39924 100755 GIT binary patch delta 71625 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 Q_-2j5geZl*2i@5J2PI#xU;qFB literal 304600 zcmeFa4V;}-b??8=%!GtYkdQ=q2{308ATa?G-b^BdIg_A40tF`N)vC9dA%wR8d8LG# zC?^TEl!)diS7=cjpuIwrHnrBv*j}ALwHBm?XsvC%dd^IO6tpGST8O)IN`yT zkaDiz=DSw@+vZMnM*&qyA(YlXuW#}N@i{KkYv!qT-wfsT qad`1fO923e$d%S#$ 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�h%=P0aAKT20=n{N#?RC<=({}}3GD3e%S8p6N z8`qPcAyabiQKKl0owq|3CKL1-{DS+WViqceuz!u2vK@J0b-| z4Juv`lmt{%P!zD*qc#Z;E+r5oK}DNy6rZ!6l0tv#A*71XxYThZQZ zYwO;@Tg3}jt3*hi_xqb?X76Y3>;$xZ|L=P~fAisCo;|Z>X3bh_)~s1`c{~sB>lUM< z8IxvNnJZ9sMsD{|KlriFXiUGLj4_YzhG46TA3t?{vK&8{fe-t`huzjIJvJXbK0l8S z1@uhpv^CGm9`HEGu1JxuklwNQMQ|(08;{?E9~l|?C*?k+{qUaVdm#6}b#+h1_SgKz z$}}>fd1R`>$ud4x@!F;#N19X0uVVY`TcMmkD%qN7nsKZQ)_0VCsBkj(!4ir_Et5ML z=cXf@Q%y7D?qGeV<9tHPr|Ee-i1YCPiLUZ#jGO54F`r8+-+5i< z%k+f;<>vH-^ITt;8J63jFHB+o4RlBsDCeJ&d*+c=?x%!uzY9A@{mk2X7edbzb3@BJ z=(}4Sr0;c_+KP$U#OXrSFLs%+z;)@v{0)%Kbqf zQ||5B1$BQ#>!Qe#r4MqO!AJU@cuNP3UC51vLB=yM()Yv*X3^_mKhQc6bKs5k8(lYa zyesg*FHs+J?Y5PXy8_ol_IVe(^9#id;hHWuBByMraO?dpz9ms$pG;n!a<@+=XFMy` zx(MIcWnaJMg?h5zNywh7@bhfr=6;oYH%Ip98ud@+;OWxN`)AHrg)Z4Gd~~crzsTO5 zEqySOZ)@+SKHEP#!6&DGV)NLs3R?qu_U_O>*&DZ8Jo9Zs>b1N<_uIJ^`{k~8dzP*3 z*9l%_@YC9UouoJTF&6vH+VRo375I0UTXj;7>hW_cd-t&RX8L)R%F&z#8mD=e?zjE+ zePkV4*);fI{gCK;rLC1dh}eHtM(`VGzT)k?(e!D_l;39(B=mj5UfkswZ+!0p`BY46 zx`%1@eZ=}5@FUsvvmW7^T{4`<+4Z~YMp|2`xwsx*j{HG_;r;2)y7&IX@9o}e5*Hin zi&Dn=N}bO*n)6>%6~@6 z*#->fnOQqF&C{i0UEX5F%fE;m+c8snD5O`=CB^7ve-E(r9cxV0eiP|Omu}QXy}R{e zkK^g!_$Aek?kw&T?z{A9lSsRSH2Fo6!UdhAx;FXwEp2)Pyb=@4KzoM3x07#c3fHaD zS-qJ>~9>Dv!|nh6ugyp&Yvo;o9-2Ylq(_ zVAuZ{uk5%d`eI{f91~5i6HOR1^J)0*tHHVvq9OVhXIh4zce%0|WBImnLwNR!`??QW zkbEHeJGr3pf%NcDx1@$sA9~jIADW%POK?yk1desgjtQx;$7 zQm!>y+9~_8gY8hjE-e#Z!0$M>PuAN3Z_}nd$!|>mMsL%~Ze@+7b-411*51!Gy`h;g zEW1y)3q1D8!{g~a#3S}Zu6^xsiGIU4j$Dfe=&07CX?Ke6?oD+3s>Ej>D|8W`<{5L zt?o>X4EbR9<%!n#U`nVnc3RKo<2*ecpgr36ApO8yR%h~V@xmU_d^U>LBT>9If!EP_ zc#$VM&(S;INzdXn#Nov_C;3QupCYpMeaiNj$G;O$usVJ?*i6U68@X7dA1yQo+Lb> zmmjz5qqt&2i1x8r;OgFu{1wpPndmx<;@~6qQe@5`#fbA|$`+6eXs;yg*rGA`JGA2^ z@iI~_-TFNj`F!Ain#0$Qrz(rM$v$o(vH)-U1HW54t|@EV zL)+cjG;7h@8J@X%qc)G%vHwfBGUg>1^LK|sVq^E++r{`nBIA^$50O5AJl!?c)*tdY|FwzoX|I&0csT(l;DzY^;+v zc)6ue`tjNHCtSL>tzxpRd^r<7y~g$FVn2 zaW(4qz8v8EyCGfjS`(3fqkYh0S${x=GjQw!Ra{@{^Znq3mxFcMx0-=b{q(P>?Ee}V zYkzor+#c)A`DN$j+e|)d+qrz{9_UbLC!OML@tkv)*j_Dz!ah?CPF>1T&74;7e78)# zJIe2L?g!k&%lUpu7cj*&!@Hbk6))&I-7MWhT!0(4J6x7_U03mCU8kFRhYPaORhtFZ zx?(qUsUO~&ip;Ijylc#mtc}*ZYf$ve*-!1abp2hVX^pkoGf5xf{8+0U8<|tsa0+Rq z*#Gn${IQ`O%)O9zNA&Gc$WBoLxdiT=zq$F#bYQ151|}o&nd;Rz64+L)jRCuXGVM6W zdrW8Y2@U&SB-76R*kT%bH||fKH(j3pjONidp_GSxJvn(8Gy0O}C6^~gnT9lEdDt0eCx}vCi7&+m*-lZNAy7Gr?9jczq%J zDZJm8v_#RNv#CdP$>@zueH!}^_gBry=^JBq)7PvF%6C0E#EE-o_lW26z3h&!Mt6{w?q4eT7JFQz z>o^aP6W4R|{#Jf`c{jSex;w$=y`?~2#pUPyMt7?p%bc9zOK9Fo8HIE?G9CI+k*{*? zt)N{=e8`M>=h*k2oA%!$z4}myZybDgTNiw?bwRI8U3%Zsx;9alqf?xI*x%=Cjr3 z(D)OTy=(Vn7wsXBx5DE|%%MU)7ah9)p741$GU(?pd3@%ZfbquZd3?T!^-0YcyW|6N zojv9=bDFNk^1J>Ju49JZKKO+_QfpCU z;P-ZMnj5`<-!n39+PdFM1?x&2%wHn;ES|f#Q%U|x;cQrE0x$bsl(@LTzxTvvs|Xy-qg!}2cs)2@>^+7+|*hHT9cZeL(+Rc-OKo9Adz>-k0* zpHrO5S&+Cm?R-5yeuj&;x<`9w;D1_lqweoeH@Yb6TXJ`4ogJy$ z);l3_@ekyy77iCCE}o`$@}C-kJKW>Al=8jr37-94Jj2iK`JiCEKT9(*q(L3?`Rr(P4@muBy{D*z*3?hxTo z+R&T^J}DcFJ2pc-oShHL7o|Nde1~am3F+2u>}dwXuZRz_d1;68mczT4?%jt*R^BLI z^uh;kY4((49aw*lTW5F)ch+23$A-VsRT`_wN168flfpsuu&zB$@wQIFrD_Y~c1}FM z3$}^)63UCVC#LqedP-bdMC;UW(`@zLaOgz7&gjHib@;ts;K22{4zS1qd3#&B4TnbZ zH?aPjrp_Gth52n;bL#3OzokouG8_-UU33KIoHTVxcAsKilzU@x4o9t?*S_L{pXL+OjrZ4^56eCw-HS z+|i^r@0-K=;47Ro!1^GR7SW&FuXm3111sL~MzU(-r-RE> z@Jd}jV^h3onLW=tCFGCR+-zFqzt3oBe`J~6OXbq+ykt80Hr+6zEO^A`ySBa${*@Y(nJsmJyAyvV&Vyj=#qs|GR+j8=Ub0p%?6UiX5zvEp7L0JsRGl zps{-*=N`xNOk^w@&v%=&56#2}`1@mHSM;2jDt7&sciHHfaeZ=k_I>Tk-3i?q-+PSl zvVaWZd)cmilIXnF^!i2U-EPcjUCZ>l|7m!NH{U0(Su zyGiyV`4p#qBRH+^C~dW)!M{NR_E)#E*Sa-ezg?jFDW;g_J1C>&_IP7@N`v%rc25uI z+vvY*DHGm>Jb^FTuQnisAL5?BMEo83dENR)!uwh}N%!k#o<^So*Ggns^Wf_#AKE<6 z-M(QPpWmHj-ewB=ndQ=2)@<7H~ci=j-dWBr6a&|K%&%it$E$es*{ z;f54)X*k=O9v;`;#vQgU+JOAAHmUZ6I7i#1Hucs$Go*6|xNVb_Tfs|i3C*ZT8T0|g z#fh^%;{tsFUWNUbJ>eCUZ@;suJhWxEdGP6J&QdOZ2?zD1PGoDF&L=qi`b;rxm{Qh? z4UyG#8XM5_Rqnnx@gPZCbyfv=(0vy=A7Ev}+U%v&hmC-Z)T*=+D>LFzIFGYw)AQ1> z8%o@K5j&E5BqBBgYp7}ByzHq=+efHBr%wCP^<*5y>ybP@DEeHGi z2<$&iL*@~SJRN+S(PQh~oo%0luA)gR^qGgLz49phc|K&(k9Y( zqJ8Y2<@03bSnsNSXHyw{CqcS^@pL^tL*XZ%S-vc5UBmZpFW>4i_(9bU`93@7jXxLA8-Fev_ma+Ly+oSR zsh;L((sZv~YHO~3u(T)bIiXT%@*g>An)PQEI}QFz^g z9F*~%8LOf);(0H7*vUnLHIw})N97I3FORa~^y?O6DpMYD*b9wm;tI-PfjZ{Mhk~7E zWffa4BZKmT6EFE3es5?$mPsC>WzZkkPp7dcH=pABxp;gg#n_RRe*Pw#U-At<7h{W6 zy7^m@(D_%iue=q$ZD3w&?^M}(f5-jW57vSU^Q^X&=iT|?e5+MGj6b4Pm% z^X0Ahd|ocLzMfVy;M(VB{E58W5C~Z)EoSpV74+;ZiDGz)^G+oz_QiIgqqL zQ9OXDR(XW!kiItGufU^3coP2_YY^0}Ie+V}KZdY(hd6Y+YoB_f{;+aa#_!!ahUnt? z{Wr>jE;C9bhqPC?rXuO+jAq-{ygX2U2N=oJKPelM6TdFfwz9yT-K>#_u76b9kpcWF z9q9T5Y3ffI{sPlaG$NFLDaQP2D{^bs*i3Wa ze|3Pf_rJ@gp-yw*keOzJ85pgvgAa@TK>ujA=gi8&@5zJX_JkSL_-OnpmCrf0c%wqo z(6@1BNT24PLkEq6F@2+oGiuZ^wTy2PwXO92E}c{CduQ9^L}O;n3fj<@?O9&zkJj{j zBmMNee8SjWjaT&yzjN@zCD0YQi8qA5H}G5jV>>?{-H_vdl?_qJ9L0V^j52g?41G8t z8pr(0e^VptABH{?(P=u1fR7FQX$N&!{Yo9ayb{Vwjn3W^tvo+K-Yq>g^=&*38M;S( z0T`pX9cAcU=hL21*+*x~o@C*C*|El!qbXOo5ys(@+MK5D64SFWep$(7*b+8geLN+c zHgVs7=Byy!S?g(5*m%y1@!d7scIMaOMQ?j9CDIPjg?G7I&=;6sj)`{uYw>pyUu;Keh`8`4Z!?~c3?&Ih}D zl=5*_n$sn{)n@8Qvxd+zy=;Z$J?R-9p<^r^@o!7t=v!IWYac~knUecxoRux`^mMoD zB2Mnv(_ww4(!;(_Zk^w8eBHX3zKFfuw(`t7gEiqz5Z;#=3v3a?(GU>jbw@G6V zWyHY4hLrUgN7t9A)6NIon8WErr++rCxRUcH*n3&L zvU^L?`)1)7J8YklU86F#h|emQx|DVheXl&ZdH)jDX_3dwH-c=tNH3vHwr+<{Om}lC zUT1vOM&U%?%8q{#JQ(+UUFyGI)%`o@q%!thS$lwfl^)qZ`-}9wz6T@|>i>5M*O5+E zup2(`-^e1)p0y?2FsB*o^#bw8_=>&Qe-V~#knEB z^K$Uv?}K&!PJN=ojjC7es1LvU>S5jn=319#ii*xr+ijZJn>i|dQr|p7=Y(;bmv?cZ zM}wCOouha0e(unOZu9yfDVxX5cT7VvL+f5qT2medMM&%V@NA05@#o-J363ES12c75 z-6@$jgEMitcxB@~UYC2kq#K3TXyiVmr=>44^_1*3@iHUZ@cRyMAdY=x4HiDG{sTY2 z=_$cp4=q~IYo6}|^7uYRG*&&H@6^GX%Ts~}kF|Cl1WtCJmGla87$bl24fu8_SM6%j zIr^x)+)y@7vf{>ub1aP=ENeltPL~Y1-NmJag^idQEe+9u{tT3JnFe15pPXlYj_*Q&Kr7kv-5`a$Xp8B<3Q+*Tn&(1`MCXT z9Qqggd$ofbthoNfX`cXcD!beANA~6I$;R37aK7>NMa(ybhx3gpm$w^vrMKY4_E_bp z#?)}eD9-0wo}(9JCnmMOi*gRq_iBgRb`D5UPMUYwZSc^}Hw1%CrTS+4H$DQ<-S^$A z;Gy<{UL;-uL;3d3(eqWmDvhygn))tuj$s?>T%*S8gTU1Y z*F=fMReC&F1&@`dj5Tp&qujOom-20Ejaqd(eyxx8|KA1c&Q*PmufAN-hP!CT?dx$l znR9RC^YpZLBfE0#o?_P)!K7W?-&fs-g>`HE6zw(k{E0e`=XV+#S@pt0Yln!w(Ye_c z;IvkdqCcsvz^zTM!hcD>*ase?%Pl>Lx4Ogrrc9MH8v8i)wIqr z@ojPD%Vprw_C@3Ydx1XE*tT-B`&LJcId_6RBBt>@`L)7+W6QAp20u@X{1$I?IlkzD zlBE>oMdMVrexC;Ybtf=}i)}0VNVY*JOTU+KEAyfUFm@jc?{>d{;$#aY>GO({ z?dsxG_cZw(Bfp;v^}VHYC3K!e-S1H+zJJa+hIzL^GxfL1E0JMeH!$|BoyPsE%f`v~ zkzPZn`QA|Sp~r08S{ElfXDBq7U}ngE5YMALE~oBeT)RcP)X)amRckG-Zmy%Vv+%;= zdJOP~czCOSBk<^P%HL+cof5XSwS~H^4DkC_=qy@PQJ#VKw$BisP&tB^uY~%u>&%G_ zZ42Q)Y5BOtnD^NDJRCHpcaSUWntZvM@8qg&<>Wix!-pBTeN$0?rN)@A!2`{yydFnK z*l#Z@ZH-SuAM1C$lkq5h|MpvVPJlibgIBT}pl|OK-$*`4dq(ipn*~E>>ie}x`nTv4 z&HqR8TVDIGX+(>3fME(ksc_yibzm`&rfwj?AGXXObuCOsQ|shD~{6?Wro8 zc-CiZ8;jjsjk`~12jdcHm(gzN&2sl!bja9!l$~~E4|HX(cXw-+s%+Y2*UOzu9O~m( zQ%k$~M*`gwKbY^`A%ijV8OD^vhJ)|{M`g+HRhJHm^F3e-%f1%D?(1Mn=yQ@gOHc4l zGS)=P@cs$ugJ`_ndm{SMmdYKWKcNFXy>FTRwv~R!w^BvhaDE{>+rMkBQH+jc-hmv1 zHaGUQO{cHKjyHDhtl!^+UfFs=TcK~ytDX<$9R8HG7w|P`KHf5jI`eg4anDc(4r*wg zfgD7A?o}bJpVvH8{Ij4+6dN8!Idu0aEhrvg_P|-lPs`?)9?@DeMYngM} zyia+Z8gpm#H6K&jFX_k7{(0$wjJ_{EtwXxBdG%nSr+{){s)jPMUWs6VN@y7$ljn=daNll9w{qz9z{5dK5cF@J~ta!0&;Q z2T$Xz`*!4aw-EP3`-V71_}zuPcOvV?T=V?8-+VGzFLJVOq zuglQ+@lDJ_uq(^lJz>IG@r;L!1K_v)E}O= zlrqpq6M?-BJT)#eM{Krx?^GY}R$mdHfl(gjPZkCnP4Ajlfv;QR&0F_#V~p%NyO&db z74p&kb2NARjC3w@wa8h9%()xvV(Sx;pFcAOMPOUt4eiga*(=SJt1{Im4#k$8raDwV zd)<=GmQAEaHQsi*T}#{I*3!0^hM|oOl9l3YIVX7hSOe5N3Y)3}erf9Rype5d;j|aY zkDJ2F=O;cN?}GW|8!D7vbN9S<7s_8KZ+<>Y_dI%Sz-B16d*mN?{<9xt@8KEAc*Y#2 z1-@+^kKJ$_>-Nm$UqzN)Q@=qr>|E8#e1rY|x8y`}oti^B`c`%`@2z&8cpUbn_MpyT zzNm1GX|}Mnz|H}dy$JfIiG}qrYx#XO@&5Ovz*3IB$>Q?}Uh_J6QG0I5 zzm;}t4ytiQ-(8zcnq)Eq&%Ct{ak{(5w#n0jJfa7-yuKeZ6JL<#N*13M!V?OV^U-to zB~>r!wyof9X?hd%l6>A2(&RReD|Np`o*%kA%wcE9CjJU#b3c4*YJSJIrGdXq@Zcw% zC7+|^mv}(E;z6*;G+!^6Mc9YN3{m*3bQDraSR%_tN|AI zGPhsZmQjlgtt9?ZSN=L9Jrw#>kx}bITSeR|aCK)Y&=niyE4YVtq>!=s4o~r9v*?0- z6*Ju$Q>z-RA4%WsvH7_>ann#_NoDc=wD!`vax1le)V=rd@#q<&{dS7yecFNUoqaWB zIxDMq-mg2ry;FY^_1k#n5(c?_MS5pl1M^Gn`ze)4Y%J z)ipFLkLaZRr0F`+L?^}x>kFbRrC~>o6YN%gSMrq7Y%jXr&t zIs)SD+J9bMw(dorynL^rOraAAPwgWmyH%yg}!_mynExKrj z>d~Ht&giIg=!f2qg=Z4?6c%@gTTG3cB$R@G`IUf^JU8M zT(pSp#eA0espn4%a#n_%RmFENXWKpsX4y5RJXyb^IxFkeCzHpwuG;dkWySFa-qUFzXjK4*i4&8<*Kh!4?4Ozb!*s1@EOfIOY$OI&{rLBDcTcUy6+h-gZWmk z@b3Z_yZ$I#(2>c|j@y`E44?gZJBDv`cHBnOFsyNJbYc$OoL^OXzH_?u*fU&*u(xJ6 zxZ3gD*&&;Tm|0t|#s-JKY4M!rSo*~#PupbZ-;d@gr+wZg@Z+Z)3nV+_ZJS#&U2h(2FSz%gpWb9^m4NfVCBQ}bavmwe$S&}ECy*R^$gnMxmhwbU( zlWtE=Yyxstft(q$BFa0(*?rZjS9!I^nsMLC*Uh1PJ%)U(Qhned`OCA3P;l%IBaxSafad(+3~JUo_*JpPkZ7 z_o{oE>D!>5_nv0VGi1|Qy@Sn|mOXfMNYCLvBn?~f6=WRQwez?t`mMn}^*-Y8?w)7E zHI_sXYb^a(V_{#Td~W!IT8f#Y3=MsouMA?2($6%bGqz{W;$CV(pX0uiPd{00^)~aA z@!{MyNnLtR4-NZ>?SoT|onuS?mdM}BJPbNf4lwSWJy*@I4JvDXm2zKU?0lIy`&Plaq8|cx7e42|i1$7Z`8B3yep7~>cT6RZ;uA%O{^Zxt;%NHP(K&Xxy-#W9v%$Jw zQJ(JFlTIna&W$AxXiVK6YdpzpI&tErO%o0@4JQ_FYM5Ztnn)WSFPxS}T{7tfhe`yB&M7wt**FyPyvJaBPw zx#jtIl{XWfO%G*AcYUFYLf^RFT|J!VvoLlp3g5(Q6VAN`#WXIG$MXNYu&gw{vpkN$ zW6qo9@%SjWzOr894LmyvS(f}(h)+{Y^T`S)o96L^@^9F^t>A6w@2F+q;gf}*oCgo>Gw>C_`*uoBFL1EPmf9rwYN;Te-(_kyJ`U$w;RfcrtBK3dDv}w>It@5F( z(x!e$nsBDxmsQ4j$N_yvc%|suY5J1l_&rrVD(Ah#t1OF|B(d zfPt<$cRbF%YwQ&s;~l*zOJl8QrTjW)qI;H92Q(dQ=h1m}td_pZlt6kvr80S63x9nc7!u#T+gZ~A*xG_rde1_X65`5+;*2 zPjX2g!*9(RAbkkGO1aJ|BeUqK!IEvQ?MX*S=Hzd+cf(9+$mk9$my}`q1@Y=5(kms> zE4Kee&MGS%n&zbQyM(fBe!(Nl7H8_FEcSWl^(*A}NY}6I+@%nX=*86JPH-f?OB|Kn z6^=@mzdG7Re&@77@+i7@)&}O`UYD(&4UeQ#OS3w)ZDn|WqTPRvja8|$BpVNJO!u?? zzufO~PY%~KEX<~^Vam3Q{~dg6G!5YI%F4vus5Y>#mv!6X$Q>{qhYVa(fxH_F=gpi~ zVy#x|KUSv{^ImNAZL`9R9GAi~!7x6h*hgp6`h+rBB3(V&`Nr65Cs|D0iXPVfy`H=) zl>Sqicz3IlC;gT@sl3rno+w9q!&0T8o?e5V{;FhMxTwDDIC5hmb!cPDC3(85skm_( zJj>7nx`B_if9&`Zp|Owm-|p%`J)W2OX~y{=8aVf%ww@xKEdI3bCf7E#dmZmLxw{#4 zW|VjNU{W_b7}_uTq^*t1+7^3GSlgPKy18r|eX_UUlk7XO{-Y?}+_=+Kz7p+M5l+B* zpGSHfIB5;7Ks_0F^>KVB;*s5}qIwJQjj}R)R3GYsZ^N-?hDZUM3JZNGZdE~s;1!i1O!L!w@2%d_K(>JKJ z-%>ay>1$dq)LmTCx0+{YPX)XS^)c_*H?4|eP9BC@BSBC6ICAfzp`3Gc*G&&(5Fbtz z`up_?Gi&t|*Unf!Dok%UIrsPLUof*uPG_%1&G&8oP2jou z&}(L_cJP~yF|*!g?ZDDSw7_n)vPc`&v9_>J*dE)@)|0nP_x-T$(D)Slqe!!7>&T;T zr!+;xuyyg>h)XEzgK(_|{uYK= z49r^&=1}lv&SUpLh>x+P<8d&L@m#;LWs}k0=%FUre?A?5mh?;JH}mUEJ5922 zI`#hA)!WC_tFcpKkZgCiU)0j8=bu@MSdl?sE9NzQygKv*R*#GS`p7CV_<(R$l+&VW)sQ^Ot)fyXXFd zJNTMzHoGc+W5*OfRz~(n`1xd%e;X-h4CQD)_Xv$!Be{cIwjym^2#>7aocqVqTkZD` zk5{^EN!?Q}n98nTbpI$Y=XC+Y7;o!!gDo!Loy&ewoS0qE7^(4*<8wb zS!vR74llQcZ2RYhq`yddgX?FaYhOoKOEA!$xbkC;x1JW?SKVHhl|e6boz4vR zR=ddaUA0Ai@1q;S?-%25fsdD^j&^(m)|ZX{!M5p*BdL#f(Vx45X0iBczf*75P$~09 z%CvS4^(N4%s1VzL2w7wi`)&%m!!^I?XE=~vD#+SXXd*hJ7rYXX1VV z#wTRmo*$a#_IhsyM)LkO$14j!`br@RA--UjpB+vYsQor8%AKH-(BHLOVE{wy)s8XQMrbG;vZZdwg=vA^rIx zcmpk&`!$B^Wa0fEZ7ZGs6u(BA`D*_CJB;0-ubRG$6D{Mbe#Xn;kd zX~i_I;*Xf));k*d*nFY*Oz0rLh;-9L*#WY7DBH?CxRhwl;^1r_bMMeE^zSG? zdeE-tNFFH%+pP5?_@R3Hdpv;qIQiQc+dbaGQTSP%L)qvltN&DwwMTtBz{$#k`~#Z* z`FQZN@%Z6vJia}Zu_@%2rGeFJ#AotBw||#RP==$M^l9t$K2H5a<)hcH@o^g0z{&gG zgU57^tvlbik7d_bb*_QC4eVXr3D#Jm_sHOXYP|a^-l0`>oVEB*z(1F`+eHy{Bqy@rQQqN#o*U)9NzLh zmrH)3<&V8C79II5KHWq)(#v*lfunOOk}kQjyzsOJ5Ah-g#`B9b%MaR~;g_q&@=JXH zK1)w!_JFSu&AV}54>SkoG_+XZQ?AZQ3C|3T z;cGsPpS=*8p)=Z6p2D3X{$6g?UxY7-`l;9Fk69UZby7zPyi$`*BWu>rL(}Jl%kAz= zLKXB94ek8<=&;W>iH6`c-qANRM~&i$Jm%y0-3*Q=-`Uw2xE)W2^Y`MOF*^rV-FD9# zw0YO3jm@Sd)u%~&N$U@U&${qw7yi+Oe^AIA)7r*koWDbMaua(xHOA{b<<6$*ePb-N zOZ2`ycCqLn-m0y_$;xUW8HLZn<4Ne}<@w!T=shdX+>P`c^3W_F9k9*FlP#Ze2OduO zY2s3>JxxRh{!O$--x%F{;o!{`{bwq_&C6W}85rHKl7Zpga}UFr!+TB| zd*75#apq~kh3(`Hu9>1s6jpTT5XV>#9!|%EepKPfc-hQ&X>DH7`wg{2wqk;F&a@$^ zyK8{!CV3*>#_7%&*GApNe+Y6y{o51C(TxY)an%gHYn@S{*>q5274ofd68$4Q!*YEY z#Hn68F6%uR-V5f-o1I@?>Y&CmDUUw8#WZ!}%tAwROm{j6S8ROQ?KZ8fyG_%54`tE2 z!n9UHpHKIo&GH+-UoXSQs*Q>RpK^`8=m0y$mI0%_!0%YY4Kp%!^%acm?u>Dov!uF@ z<)E;PFkb_A4>^Bgy0|HuFLi4+AM4u6XUk4KGQ*!^W*>U9Khtf`d#Y}oiB{<0xiiE5 zb~xC(dz6kH8ts!=zGuf4>0IQgwFUp2{G-w2@k6>_{#;;wrZnjp;?n32&8PKl+a@@*O`+OmL-$*4({Ijo z+fcSQzcQ{5!f0*$H9L zZJD+=4R3tGmG^3-JUa)XZI}A?@*a~-L%1v&2Mw%`h4_`xcn5n)G|tg$HgWQ$IvhB| zGraMBhr`c>17&^Q=M#NYmTPCjz9AngN%#6#Wi^PurL^Dq%91+2l{~m{y({+~m8*36 zgtLw5V+S{W+ogXmlCHU(_~83TS@bt@AI1AxmmlG=c%LA=!2fs`9_zxfE<8%1HL30XH~5unpOo5aLR&q}yV7@XCT~%+o$|?0 zPhZN*$h2gTxSr8CcQ!i_jdQZBIYDd;;{xT!oXlD~TlgT?6B*Aot8Gema&G9`idUPH z;uHKo&e8D{@bhs;xwtanEZP*7VVi%XgFVLa;RX76ew%(1jdN{!HX5fk(e__O<8&U~ z$xQ=v_O$#iv=r>az{-EBIgoz;l;7Ck*6+dmL35Gj;=|DU@>i)1vMU^a?-49{e&E8p zTzDs;Y!1yK(RI&z+tT0PrthlvU1-5AJ&b_mD3VZ|-RLH%oKktZuX+ zv~X)(zoI*TMZvaPO3{&z(BoBcvUv4+&{YY9}G>Nd<(H z3AaIKbfO)fw(@=<-zq^rre7mHQEta+Q)$lG%)O%PH*8oIyQ1Xg61yf*JP7=zY7dIl zY08To)dzn0yd_Gfe8K5^R^fgX;OJ{<&0R&02e2gw52|E5AS_v6zXkS`y+h;2rr9(= z^ZQ-+Ao%_`%>M()7w@V2!~T)cQ)R;&YaJa{iVn0xaOy*EDv#R5Z{d`FFpPKO#TG-} zN|(2Wyg9Jg6T<9k5 z{8J$=JzW`tDMNQl+r3TT@u>X2*dM8>4dGtV(M93?E~Gt}pEfd^c3*zlaF^!fx>ER1 z#s=UrWtVb~D07K}v^F&r{>fGcmo)FfUA$bx+El(AdwEuWsiIu*QMyNbZ6O~rK9qJ& z_5J#3)hRkL=B6DUqP^RDJ2N%YeIHRU{qtbJ$*%hWW9>h|B%MD=e4`xYx96>)@r($K z?|CfL7xuj5OyIELY2(1uBk;-Lvl%~@zMpcDWEA{aJF>D>3C^+uQ*+RH&}53zE9gUW z=rh>Q2ES?Qm%v`YSO$)1cyCz4NrMAzUz`4AL%2U0KCpNB_?Y~OyMu+Fdkl+QWMGkZ zdxl7I)=3>P_-t`-e6~6U+G*cKN_HS^gEr^b_Vcd3W9L2*nhcH5Bq}eGt4v>_e3g0E z2drsAGmS^-N1#10XGjjF+j<6M_J4c73GvFe?LEE|fITgqe2x5~{pF%P`FF}sD4xuR zCyN{py}Zn)T-}4Cc)jcUeZX}_kM#VH!5m1X&)_SiK^($yaV zLahOG&_$HJ8r~+=-@pgwQCL=k^JjmLa`7!_o{_$tGMO_=KbNb|-%8r1RaUn~$Kfi< zD|6+gZUV-Dzhp`9yr(2fl%@9uy{itvxbZ4DFFRgc_-Lq07ig|a{?Fq_r7xbN^VRyj zmf!XqHRa9lX?3LW`^!p$<|==xPlF%&{UxQr3)u%J`!x8Z-x63Cma8~bLx@TQKR1DD!q?AcL+p4NM6C;KHQ zTl?%#YoA7S{0(l*p{$%ShdeQjGgGO{jpc><)Ki?vnC;{%^%(L$)ij^4-;Y7VvMgR- zk=(D#+Fm!h-|VlnJZGHi)v}5)v9_$a6kf^Kq4%Aa9zK)!4_$W3}>S#!X;EBjTkA)$ljH@w?(EH_)Y93I#{ z*GW6mz?ZnT?v4*@b?P_%0U_d#m2_y&C}zx_IsFkQwAu@8(e7)~%%-*QJ7U zE$vu4E3iJ9=TnKUeTp9c{c1QLt)za{B{|QBX?J_5Jxt#MF#qA!+dPc+4}kwh?rLnT zgU+{T%dz+Ii>(EgZBWJ zZiR4}EV}e(jXdO&*2{c*EU#8MUd@3PJ)i~c-|;ZC;P(Ofb*}2ji`T_pyDon=Yu=6* z`E{}%pwl|hW6?Uz9@P0%fjTD+*ZGq0u0P##`3S!^B`SU&GiVI{>Z|MOD;6%Uu9&y* zvLoggGkbROv!6}YEL>8ZJSjQGm=Sdr%q*_1z0|^0&8c5_N%g2hk|&;+JQCv~Og44( z%jPUzIw}KJUwv8qs6!4*9(3_R7L=mwpM#rUQ9WltZO7znJz)VCjJYUz(uv8DRU?H~ zUg=7lK;q>i!Q-5q^79~7(K$JYbigAwxdR?YhIo`0#DhfP@o(U9cKOVi$+`s#=hdH( zterRS#E}<|992_$Y4tK_QM=^Ck>`vYwS4JPemZ(&5RK9mVqJU$T zM;&tv`q-4#FJ4+Iel4w9QeAVz(xr0RaDKZuU=MBy@dZy zq?D!0YG+rUIAY9E=ldsFM<`9dWG4m^O!PGV+ONyQX%|qJ>N5XK3ZCuo7}uvVNWjm=me0 zGx7qRD@5izk&4Q{lIJais1|V4{EGT{wkJeIEJGL10T{ZF#)uJx7-iX=!@H0m^DFWT z2&qA(3+F5f`>^P;q`GPum{<|0Saujy9HJhT6Fr~k`5mKY6Fu9@Ysn~^Whq6Bx$M+a zv(QV)J?648VX_`vDP_ zhgW6jb=yd5-LbPh2-xLRqFyEj#sjWMe`-AP<`3O)D>;z;R?Te%K_xlN{ zZ9(wDx(kmvVBo+5j=6B%AA_I`h@b375eL2)d_>;+&R|v1|8<{wA7y+Lym(;DToJs# zEBG}_rKWoij7DRMdI<8AUkAJ1$1!H6QQb{FO~PjH(XSsy3!n+p^Cl9eQU68j=*Zm| z2PR*)`7hhH{bkeF%5Z#jL*=Zyh-Cf6X++hpg?RY)G+uSZ**{C~5s!e-4x8G(19Tr8 zZp4oeA{OiM+d#1&{BHB+-+vecAMFT!)5B870>n%&(eLN8i^-5EnfnAk-st7(7DU{f z`@*voyu`Y*zuuTRTmEp48@H6KKQ%q9FF_$OSF=she;}Knz%iFDf~Mk}$KFGLP25y~ zQeIDbwupE<6q%j^*bKVG?Fyuq$Y9+qQQE^K5oXJtElIwsRL2Mpm>U=}@#; z1iZovRy0lTc)4zW?WG1z5p@37m-Uj)|3sF2%H%>9YIrWh|J`4SNVn_+lg`N#i|zI8 zTe^2(y)8!#PnZ*f;QpS407#YCOxpEf@Y7y}0HAw3VafwK@xT||!`Lr%>{woOHZ*NDgCe~*0W%aA%2>$&bfJ5P3S`J~Ha*UKLCza02~?GKAu zSNQGSzdr{Q3jZZ~6iwas)?3@A7WK$A2D0E+NW8Ad{*JuG%-JjJ9%$RSv+aTUm9u;1 zGcazBR9^qLC||}C=H#~4ciw#G?YG}~^UV)-t?8J~<@RUxA2eXVfd0vC!IwIwmj}T~ zAwGTI2(B!cJ_)lX7LN_=EPZmk8}?CrP-p4Khvj$wTjBECpMBW=J^CSwZPwJt(#NU3 zu>HG&hJxvByTZSnouqr}eVSf?eq|b3!oQt`=s&rwb*KCLaAyJeI@;$}SewruES~cl zu57S>t5z-PoiE>6PIvm2D9ZkI)kixmU{4b|8D4yL>h9XcK|gjkC0k^U`NgVOBEI02Ao$IY4gf{wgm;2}^do-XyMy4DJtCG&g1>HN z+&jT8uA&w8>jT!Z^IAdfAb5L#tlUJmXWRdg%+_%9r1DAUza0cygSQ8pCC?2>n6kFu zD#zo5IZrI-uXcIx#y;k%;6ZHnU$j5t#=s);m4L}c(0;jDrSyij;4EXl6#RWySV0l* zZ=ZI;Nk^KvO2mAVKE%rg{iM2{!6{H8m%#VUUb`OO# zW_mAKb>)@c2!icD58fiZ^+XdN@sHr!c{2V*mGbsLv)>^YVm}DlkIfJ`Cc*7yz8HMe zF8Z5pW@!-InMo!_e?B1ML;F*Er~SFT#~Mi5+b`i`LO zrYoMh_cCRF+S=0c`mW#z&%~G+ z@J8_EKK=VT(`B!{`}H{^XrJsG5;KhGS4i0Voq6dMpJ#<8780sB+o!FoEc8{IX9-NDu>krfT>9(NWoW<-^`P*BA zYq>|L?Tr&G0x`2MrtzJ<5>K_0)dKAL-~e+86^&O5;@ut%f*-`qh@H?b{M!{=h~tvZ zRvg2orKpXjdu(E4{A#}fWpP;>dw06U&EY}Y)5A<`d?tIav;DGIw{Ew!1@q{1af8AB z!ca5xAMM%l&oYU-g5c@C=y6mwQ=i|Jm>&mpEd8~$z1F|iok8&IXRLytpZ?b_)M@Dl z6ioAW?F=eWPrIJ|g%@0|(z41i!u~ z2%Z@}Z~z)Isso&=2LQ6{V{_%?Mx?MDA@#1{;m@Ex3QyrE@o;R!yqsAa!lY=u(X_DE z&UOI_|2#Pt*S2p}?p1|EKo9 zr14YxztcYXKhysAewI#~<&8-UQ2v~+!$Y&Qdt5juW=zgl#6pk7x^Lmk7*-kfy8~CStnZR z>fu0G9J-m~Kio+bv9H?f`ftZaLGbtM!*%YMxv-_JZ3h5-*WP>6msfv%!!!TDOT}KA z^epnnyWN0SN}jK;*wXahffxLEm)#(AT~XZ34q7Sg9<~g9+4PVj+wOuHa|gR@KElyu z7Lzr7t{L%ipcR48uI>S5r~VO#8=tD&d*d75$L(ZW!Lk$0Ifm43EY>&utyxEV499aZ z>G!!E$KWc{!`u-3W))i%0J8o{Mq>=-?knEGv-Y7D4hK9O1g|Z?SoX^-c$Rvw$LS;M zzWb6feIBOfn<20_^5dq&?vHwW4J#)rO}y`B0Fs`ojLPwD_p@taqA_D|!Cnr|_qYC_ zXN1peAo~1i!1XXkydDHAD0sN6fxJIu=zjcP0^E)rrYML683x_<#&7PGmluC!US@vA z<2d&5bwbJI9ZLXRyT2!RZrqyz?$i!d`29ienq#*I99_%@V0+JY?Js($$czVIS+@NS zmAJVOPQQEv%sLTA+&zZ=nlXg3-18(2_p7j|3QaFWvcmf|IerUe?Hy+(?Kg_`bYTEdH*4O5BgtTasS$% zdr*Jp__P1%+c)oS|KCpvZjho-zyGT62EiT-gKiTH=hE`DW894T^Dp;9Z?pf8(c{7B z-d52kVa^PK=h58S|F?l1gnc7}n*icP-_Gv;WAMKvZ}dRf-prqxQ$L>F0kGTu1ESr`Z12 z_T(U5uM1kw^XXu7$gz-g(34^PPYmG4v4=#EggXf{h%I{0x3@pf-irQWKvWLm-E8ig zP6&b%*eLLefpH9-$R9&Lg@4zu32U<1&_)w;$P|C+%fhi=(e_qGT9uS1@HWkjL++0quRq7Z3AfP(!$Zf1UW zbjWVI|2Mz?$6~4AwNeY<_Fv{Ih`2V3yneU@+kl?w|b0xU#zvItpecN8C*Q@fn>6mn1S_9tn2NDhQynA^dxI*Unw% z6$I!*D(OsH+b&@A%KeL*>t0!)-u<)S)%Sz;3d{L;b`NsQ;MQJ(bUYZ`GnpCQY}FR| zi^s;Xx3AX39||63=GPXC1&68E^~ww)aWnoM%_tuV9x}845$rgO&iHI}3Tn3=2J`L> z?wy14;S9_P^VOZtvlq?R!sYkO-`@-V-X8qpR2z9@+pfbRcmMzn{Jl5Hm}7oD*7SZU z_?dAM-iaN9_HF$2Zl*6{3NaHw)rVrnj(X2ky-Q+s|Oz~ zHbs0oiw%H350*yKi_Ah>eZc)t=74)gn|`lydqqYZ?B2X>=^*t+KwkZg58ikC7x_Wq zV1DcmgCCA%Uc5-&jdi;o%rq~qV1?W~N|^3BNA-@p1C3JRE$$_#UF|H)n+)k}jq1 z+_m%UNUJl68sS3uJEuT$2$oR(nVlw+zwAe6cAo5U^>r2q^9I@i5dR0FBqKZlyw=ms zvy0~=o*g_N@Vv*fo#!o{H+Wv`=o?$%wdAjkm!XduJX3{*r<@qJgPkGoG$7g4Z z`FEZ#^IXESfal+Mrt+M~a|BN@Pd^^m#HG@d!}A=^W}bU_ns{#HY2e{oK;{cPXYx$o z8O^gl&t5z`DB@L~-|;-g^CO-no*Q`Zy&1ZX(MtXl9_~gmjOb<{kN?|yz@UBh8?d)2 z>LXX;-e&Isv3OC>V(=@9$B2)2?=`R(*Ise|17rH#y=VUe2M`tutY=T)2k4)|ezABT zg~c3dFaYTvzx(&^Px>(Ss0|o6jB@%P*uOvJ+pxdV_a&<#)#lqiNrS zs+QTNP9Hz>^Jls|s*rF#r>)2Gim?UWe>>I>tQXIV&QvtZ6b$JWEElKdExJnAIN zizUlzG%}xSZw)XexmRC%aJ_2z+=aDATvA)Jd~vmkh{!MES6WwH54-2r9ic*%9)+)1 zT$Pb~9@;$56AP zbaqueHwmmLMXIXiEUaIlI`y|Z_`3S4`sLI)nXaSGbZXe#Xuc)Y^`)2AR4o}(TFb=` z%0P>kFSW%-;bzw?udc7HtzS?o`i05ieGKZ6NP9)y>?%+1CAIYn=T$7FwiA-}ec_y{ z`h~Sil5^~J56M}RPEL-xbm6krenS)ROLMBPP6Zm$?o=WffuhUpk(%X8OrAP4qms5cibS-QNwwE7Z6C=;*yM(kxD z5a*B`3t=FXeH;ERhwYu=d4FPn48>?MoM;iX5MaOm*SC%S4yXZt$y z?DEN{@aD_cSgOC%7gx=%R?pxTmSokE70E?QYA;=qtmk?XE@D~67_@BJ@}>1=`f>{q zjvwT!tDns^H{?BHfh}j*!Xsuctgow}=T^*FP_=}+Qgp$_@yRQ$NOqETr0lC@vu$>B z?vkq6HPs>yoqtJk9z$MOZuP|#b7~ha)$KM%>L!k5K7yNM#G0Dq%Kjr!u@C(WUMRm@&K zZyp!YBu_diIqK-6l7}Z39DY*W!po~Km~+t~+~$#lBnvAlW-qR)TXaD-=^}gO3%^wc zpkcB0f6dsm8m`l2xIN_e2sZPq=85US8584BNsPtr7=AH4Z9!}k56&tR>)C&=c%s*U zA<6v)_ActyXVCs7qsAO^(9pqsyZ6|8pJBrfJ@WW*M~y!CfY0>X_rMW{9eu+1v4?-Q zc;pesOgQn_(&J8=nD+<$7SHB_o4LuF>Lv5*7bI(Hm(1tJn0i==49u-gio40GORz=6 zC?h&!V=P--Rd1z7!$a*d?qxY4dHmtPa*0ok28S--=2kNxQR9MYr!z&A&oQ_pG29SJ zD_+S_P68)}{UwxF)V~8lVCGf}K}%8OSr^?bsj5jviv#aJN z_0D6f&2OwjuG91x(@wD!cb-3r?Bb=%nAt!g*(VIfHMLc9E2@@ohgNM}J$HJ|A+_Ro z(CsSy$YTZI{=#yYU0s6x#k^bto{|d1Ym5owW$afhz+R~EgVPzOo_?zGmCxmFIl>uJ zCh4bxr^1S5*ptiZl%_ws^3m-b9+tIXQSrtcc_2=$ zV-+o2x}bJRwJXnFP*%5aK86H!#D*ruZ$TN1qch!6)E2zXdr`NxU>D(7!u|t|SxR^? z;p2qU2%jdLOSqs%TkvJV`v`9#e3S4Y!f*9z3tl9Ay*K3$Ue~8B7&eG>!U=@;?cEk! zNZ5Z6`3VmryoK;&!utrP5k5hPOEvO-EItlvgH{l(Go49e| zal-RCIs7u=9jCShMHm)EXTX2LK2zI*lL_CP2LA~MpGAJc?S!`wPB6FyD&BH{al z?-SlK3;y#}k{1al5RN$)ei43y@Cw4gpKA-62rCKo^^(`mhwp?%7qkU3;tsyBEl3hB zB|M(+1;XQ@+(Ed7F!=@eL)b*va~QtuIq;j%%!S{C zXA>?UyqmCrFh%$+!tI226Pjx9A{<8eTf)N#UniVExQp)0V*}!m>K}bRhg8JWOFdd?FmS96k|#gYY`Sv6p}k;rA~i zKjD3ZDZI&#Ycp2dfg!d8d zAbf#vND}&giE;=pyb?Jk+)g-`u+J*^PFTMNdYxppYRF78~=m$5Ds1k-w)z9VUlpvx8OVBErb^mrUVeV`({s`Sy@fC(m~ zQ!yBcVYF1DsHBIEBq0Ws?j{LQlE#E2#Gpk%6Xc-$#8wtA2p`fR_Cb z}N<1+W4?MW6+%@DI>M z&?b5RHR3&JJ?IGN66h3Y$$y|-K{r6pf>x}-KlZ>5pe3OBzkz>%R)RKxF8&t&0lN90 z@H5cn|AwD|R;|NdLFaytcm`Vc2l)HnA|Ct^A4j`l9eMn(Xjjm=P1pmp=n3cnodg{Kt>1!OK}!=T2k3Fo)1VE`R^lw^ zFlfPEln0wEWuSwgHK3z=w-RyC)1X6wU%8by1-byb0P0k1CC-4Zffihee6K=!&?V41 z(8+7?^E{x7*KH++L03S>LDxa2L7gh-0S$qk5&p}d=OuW5`BtI?v>&tvbPTi!bO|&L zx&}H38mZn&On{c*7fKdDM?lYjo&t3$P@fy{)d0}-I_LrIzj-SW0$l>_2ld^8a)H)^ zj)RUL+)B)Wme+43RzZty+e+kJg?M%s>IGW(9L$(19a^k)C06Xx|J9KZSL4gOo3M2x0N^zItY3Ov_1~IR^q*HD^Ur$a1{B2 z<{d-(fciiOKqo=RKu^7XD=`Z?)(<;?&Vc4!i+t`!IY6u4u$8C)-2|-zjXeOng02s2 zC60q0|2x{n;LW&{1=pv$1cAA(&$BM(E*E0FJpVOP*T&?eAv&^YKK=n&}gN70W# zt0&NJK<7cvfHr&#cCAML04)Qp`#Aay=vmMZXz3?l7tnstanKpiInXnptDycqpp~GZN%TL^ z!q03aBA^wZgP@I|W1u6T)1X7R{I>*J|2gOZt(bzI1Mut5qyK^Se-Y&Xt^X4IUfw~+ zKsP~WL1(`VKLI`d6~vJm^phF%U(iv|YS6NOLVD0y&;ihfuOdC@8PHkKfv+JwXyGi< zUypKu`a%6)M|#jo&_>Wf&_2+Upu?b3pc9}=ptGQxpi7{o-`Gm5gEoNX-+=mj6Ltli z0<8rtpMyO>^B;jdK%#vw+T}*{AJB5pVbEHk|AO?O%b)|GYd=AK zK#PBda)9PNhWda`{~Y!NUH&)Nvlj2aM7w}4{0j8}omfSEKx=-Db_Ff{4cY^=`9Dz) z&`Mkx+WbnW~{1xdz`!|suwDAeVRnRl%B@!c`@$(ajQ=sz~;P;zAtDlY^O9O4V zG?6HLCCYahu2_N&y&#cj1l=f2B>F%{UYJOXg3i4d*JDA~Ko>y=%5eJ@baYQ5fxiOj zM9LG1BGCN3iA1?j{O(~bXdP%X=m6*d=q%_c==%OdVit55SG!k03vtEMse?U0{h*=i z@k4f?z8g>;&=_bRXdP~Rj)L}qPJ+&WE`m0^3O|emx(w>O8UBHr{pFxVwnl5VW=n?I7}@DN=&2!;AGGT2DF3U`9-vjA{&yr2 zO`v0-{h&4POe9W%7T~Vy3}_|jGN|ue@CVQ_(1KghkKUa~l!1<(NF-`N`$rRr5a{>> z@&{eU#oS5I_{UKX!9mwSi#~yR+=g}rEe9<=1v`MA0*!%IeiG?H=Rhar{ZmK}>O-iK z&#q&)I(dE1+I3mMvkg`RZ0Zl2xO<7uzH^@?a%J-T$IV2!P<#Zd#=l}<7)s2i1phbS zUk$K&LH1p-Z@2%!yoYl4pUAo8=a2nxHxR&u_}7nrG05eE+D|baM)0p0_{m*(*tfg> z!Sfz^YEJm)kL|{*q?^LOW&8>}+)nuZSA!wx7Vyvar_BV0dxJ}^b(+lZ&j2n3|5T3Q zPv-12-hS>)@J)Q3F!>%fmZ zzL{uNzNz&c9)1-33GnAtzv1V^R6y)D1iT(USl5(i^bhPZ1;{PjWlA7QS%1hK$JKBt zvy|g{luzuk0DKU*w4LBJz@?2=iCa61>;|y@qz=E;;e%}kfS0Nce=X}?3VaxN1#z+M zt5`SDR}20)`0^}yA7Gi9fsZBim5V+pQy=h2;NCI~QHQtuqHmnI-2D^XIXCY%^_>Ae z?_j-R@!Pc>I_2>$9*u=c{U@J$)+(S{U$ANYOeV9!DM#+MFw z>?!v%qu@7@kE)sSOah+-UPThw0loozROS64+J6Ih-?>=(36780r2u|6 z2+S`4K2lCUun}M*Pr(cOVs7g$Q&QnqgP(r^ZONYQ?Q_lG`@y$uDt)Gg^_27j;1}({ z7u$@1?*qRA&(bchV)>_mmjRb@%SY$}u+lVa1z3p(lRVD?lQQ*dohElZc*#Rg&wZ__ zl;l|my#Hxf*W+38Y@m(HfX@JD-0|7CQv-Y*__WF!Ux<3@7y^IrV)!F$Zf%$|s{&G< zx;0@s_B~_EO_YroIfY|bKn;iyS`%L%I%)~S0z38v!3#G zk}vheFNHem;IC```!>x^T)~b4d5@8 zqrFwX#`)?bKMwxvUhL;6-`F+haFRa){=iERi*Ik8j zYdUR@S10wJ0l)9+ClbTZfqEIeEy^}AqyWKq4Sa75EP-eV@D1P-9{<~a;=GZk=KMPb z^wVe+ZI?R8^}SSnNfaOI$B^&xqu`H%-{9fj=HU;4zW{#7!@rY!Kd@8a`>w-&kcYqj zL|&7bRREK=S%gd!GInkt;}lI``0G*z@CVh`we80=6G`uTD*k&p_O#d+Ok96+l3xz~ z<|_~*y=`-Y@}+I+gzB9EWC-Ilfpm^ZD+mjRQs{oa22S}nBj>%bqm3FC&> zHyV=sDEJFFA3LM`NuA&2^vSHikMu*}kK(+{L41NuXLWv>d%vCkNgk7siQkI7X4PTl z4LRrm(#fPQi;~A}Njr!wSAorYFhHg+YyzJJJ|#egIZAN>=JE~Lw^qK1Q~hisDN7aj zWw)a*k#FWWf#e*g34A%XbF{3i&;3R~()WWOzr&3O#s|Fd;3W7H;P4Vz<$8WXy2Thbgo$n zeC0LRBNsvRgM;h`)xZnx#uMkUV08j;{IW4hPSiin8rP4GvlLb!Y@{yaQ()0&pyhd)lK<(str3 zL;Xz0_zo42yhp*`=tAElUwu~>5W=4Zf9O8gmE)N5Png0Be+m4#9yf05TK2VCH)*d8 z@Jr%2+rhJxJ&ck|I(&u5nE-xVaZ|27xW?qD&O=;hCtJQ>cNkIKdOA6tT+64 zjsRZ+9`~ffjsVPw9RYkK?;*%k9!~Z#@!^A>yibAO1U}1V^0s9I%UQsGv*1hpJNMXc!{>@0R8nX)?ZJ7fBf~X?M)xIwwLq^;IDx1XL^n=Z?@^>k3Fp1 z@6LM}k8_O2OTQ|38rH23;9OFD&gkF2dn_;K#@)VsYzL`V1>~9s+_{Xu5#^Wka^GhX z_>|5QP5J}7XGe2${=-!ua&gF29Y=bVo89$b(L>MJzk9ea=SRC|cWF*iAGs&g|JI$y z2f05q34T3f(YD4PY)q4K%Dti$@O@ezf6ji5FU`o1s5X@{{42m1b8Lz z8kIM(U-ZlUq!93G;rNkvRN`0chPXez{+?3bup_ujue-eCKUWsZs`;#%@ z6!>Fr!@0O8eYdB7EP!ACzufWA=(ppcl=lqyi{N`>wBUL8Zxwiz>h;Na)! z8+~?6k#tq~uO!KL(=`CEP2wr(M6cYt3V}bQ?V_=dlU>m}g8vrZj(Z+>mUfNNuBU(x zyaVUg#9z;H%6+Y-ce=Qlr@Y={msRk~huv6b%ERqM6C?7Tj8 zgM^e>?tB%VaO1g=@y2tx3$_4$vDV4(b2w;8dbuMuKjN;XO`W}K=|S*^-h(wEWKjk) zPI5_T+F}Cyx_@wEhN**H8;SmT@a0Yn#~YL0TfQ~$Yu}4IC#v6+ughbj{7c{;;M3-Y z&#g(5e<}DQqZqF=y(vG3E5ok^zx;i!?-{<=_afj=g1@Ti{YTh#1Hk*=k8*izpYv%g z7@Ex)1Kg4DfW{m&^Z)z*#R}2g_9i zJpPb7));%(u}17&3H}oJQ<{%yk9$4#Yy?00LCn|GA9UX1S&R39KRV{F#Z7weT6`4z z{13UY&37xyH3_^L_@?G-?0ml`U;I@?r}$yaY1N*K976`|7_csS$K5f>q>nJY*w0r4 zKLWo=_4{PqCG{-@E_a&>ynU8~g79m>pZ!Q?y~2-xU;B@#4%X_U{Pzp-=3re-QlB;2&50#vi=?HUWO+DR)mv%kSA!ng`$i$({F< z*1(s$WYenOr1$Po=06kr51-yye<}FQlWzN(@_GHH7W_5vt5m<+ADe*}e8!zq_;X&V zbMHRjC7<27Jfq;xfX_X&ZS|c7fBbVhmuCt5vZ?L)t^=?6ygL?{erd-7X=mSM@MG}D zv>t}yJTEPYSzrAEJ) zYC|d0IPhWMHLBa#-a9Xz1AhwqK@Y##L+{ z;miHnx*2zEZfu;xO(o&u&nh{M|AaA8=asPscRzGN&QCOB;h({OCuiM#Q&X;9kDUts z2I;>JJ9=X_4Jql%z@Pob&UUT?zx11!*Lq_lH~IWX9|b=)=dL5Hk6;*2`p7V3rXiEb zN2Cms;5R*z*%zd(7Qr6?zY5QYqwbt+4fr_lA{`fu59J)!%1gTZXTdh#PL@3flX}7Z zz|YLPam^jKD}hgc$6deb`Z6bK7MN1bM(`UR#oSnJLH^B#FM9jHk1uTZonhdUz(*lt z#{q85oAOM8U;16QfBM?k|K=qf@Fh<=tn)BER@+LRXCM>8J|(?&KQ@$KMg+PhFOn!J|5gRfy96Q7v{|0MY3%J<29MD#8Jp8`JYNoUs=!ruVDeJ@{yns_ zA8AU#9|Qk%E?(qJ*fwU)x@k?xqYg6ld)>NiD`OP=Ch(iQe#wJ+Nk0Vs=#{v~if80u z(jWD-^(pW}FM+RUdVfx<&ZXyouTD@ESV&Egd=d~Xgy*ZPbt`xFW;8#_lKjz_O-|ls+HE|2(0Ee;sT^PZPBTL;P zkgcu8Smdoc2O}T&gWyN^rS|QUz=nYpfG;1>GYM=E*q8vck&QpXUj#pYKko2)_;!8l z2euCWD)?uWUv0wTG3{>xiH^b-pzj>OJ!F+J?O@Lz#9kHPPl7*7zTNMw1KwD(9S;F_ zuHTOL1D^m+pY-3&zB>Xu?*=!vYu{w&lQK<#AG*=?1Lb?}U7QAgsW!7eNcqo#fAS{8 zFY8B`>xte1H0qgGy7LTEZ@b?o{4((KU*-CV@dtZuCHy+@E5OebtArl~|2X)puSxIi zgG1mif!_#Ow5{Pc(ElaxEy6b>{H>h@JAydm&=o zL3f^G^0o6E(OUxk3i#>vssdjA>YdBm1bzhkO!g4H{oqf7Ux8=T*W7KAdX4};4ZMoD zjLWtiB;6GF>)?+n-`wevbPK>^x8gpuw~y7U0sY{g0e=+V2bt4!cKv}VtIm-TA|2n0 zFn4J{9Mo9BGk}4MJX`q2S1KVld#77><14nUB(FyBH^8^!gVe#sYsp^9+YcG1kz+Ue zvb`@N^*jl_AN(dfOJBEl0H%P4fX9hTzY+Nb;Im16KG~0#d{%+40Y9norhUC@{=64M z-(5TNOTb?NpKBTIZ!DT#Im>IXjFl)0aZ-jm=* zUW@MwFrAzSc+WRxz#j$Q+Ss1Co(6sj_>iVE<+1ZC(R&vBqSx&_))qox9r(vR>Fr*W z)TaXcN$`u5Z|<22UPoM>#h>L4s2`6Z;HMxT(s5)xId+b?W2b!Q?M$;f_ci`x?-7bV z`7T^u&@Gc+=GubK0*__Dmw+z=2Qg(4+emrW0j#ItA|iGvxB~yR;Cm$kF#fcA;!hd) zL*OqdU&oG~He|1x7sXObTUe+~RPO>gRGilOYMBKe2VRYWl0y=d4019eiZycBu9GV*WP`j;ys8%;17BDUO%b=zq;LR z6O-QSCr#jwgCE!Q?)Vl5?%ad#cPMWB)9xioy+*(v1i!+=_nwnYfqxSG1`ppmS3C{= zBKXzHH+Hsh#rQw?>)@Ar_;%eY_AdNe{CBULzkBDj40thck&%zkYGN2-jGx)FzDD3> zkd^#kTT=$_9HI~WQt)e-PVSS4zG2`Ez(d6C+3*DLG2o4g8+|t3N*?pzFM&Vc;oJGT z@YlevjAowS3SYj1IS>9$`sKTsP6x(7kAAyWl=SkQ&06sLlyBP9-qn$MMZg~epE1R( zl?9jYb{2HHK6KcbW3{B1Uy3`>xz|wR^Kto>K7ZV{WWA>Fpd_%1{e_;eDvTj=dZ=*L^v6xkulo zUNOjpy0;RGDu?wk2F9HG+zXV}fm zk-UDe4t~X9x1RhCga#=|@4FIy^d$Up@cWPKtiK-oW$;Hdf9lr-t>}+|U*ESge;E9^ zC*eW&eiVGhOxC~I zw4eBG4E!bVi?n=Z?38lJcYy`3SKPF#cdVE12Rh4}_%yyVTteL3i{=GD(OV1t%zLrN;N2_ud@|n% z_rXANkYoE27Y7= z^GhwC)_W*fzWi%27Cj7qJICa2_DFK4lI>9ne&xqf+e7+LHSj3#&{IviMRzYSw;_ky ze8yiRkem3d8+T0oxMVl&JqUg=zU#~Sn>+n}s2l^n0$lEd!Y+&_xh=Umtu$%pAXEQ! zcOK`LJC{=DW#F^G8@zQsp>>wBZ-RgJn;5gsHM(VwnD;1unsSe_q!NAoQM6s2ku$c# zAI30>B%d1aEAhSCd9QEq@`xXN`TeSuMXZAhOnS4Qiti8P7UgPB6CHz)DSHgxIrr+| zWlP~tfZzA?Cux81&w^j>^}n}iUB$20z|Z@I8~6NnzTjL7p9ek)8Sy*0uPE|Gz=whJ zysSLuxb9z;3;rv2{4USwR=gH??XTT^sd71&GW{R;B5+5`RiE<)mG1*S{U2_8a_