From 5f01904be1894fd3f9aacc4349f5ef2b09d1f4d9 Mon Sep 17 00:00:00 2001 From: Linehu Date: Sun, 4 Oct 2026 15:53:04 +0800 Subject: [PATCH] feat: white-tone desktop + login crossfade + BUG-031 FAT chain fix + DESK-E texture panics - BUG-031: fat32_io.h on-demand FAT sector read (FAT beyond 128KB cache walked OOB, font/wallpaper corrupted past first clusters); host unit test diff=0 - material pack: gen_textures.py wired into build.ps1, startMenuLogo.rgba packaged; missing wallpaper/logo/font now fatal (DESK-E02/E03/E04 red fatal screen) - login->desktop crossfade 16 steps, boot typewriter screen removed - IDE exit: Esc detaches and returns to desktop page - white theme: KS_* light palette, g_wf_light taskbar, hardcoded dark fills replaced - QEMU verified: labels/clock render, wallpaper + start logo loaded, zero spurious panic --- CODE/UTSM/include/utsm/deshab_ui.h | 31 +++-- CODE/desktop/MAKEFILE | 2 +- CODE/desktop/compositor.c | 2 +- CODE/desktop/launcher.c | 2 +- CODE/desktop/lxc.c | 6 +- CODE/desktop/main.c | 130 ++++++++++-------- CODE/desktop/pages.c | 14 +- CODE/desktop/shell.c | 11 ++ CODE/desktop/taskbar.c | 6 +- CODE/desktop/wm.c | 4 +- CODE/tools/fat32_io.h | 14 +- SYSTEM/system/deshab64/desktop.elf | Bin 229248 -> 225056 bytes .../desktop/textures/startMenuLogo.rgba | Bin 0 -> 181440 bytes build.ps1 | 34 +++++ 14 files changed, 160 insertions(+), 96 deletions(-) create mode 100644 SYSTEM/system/deshab64/desktop/textures/startMenuLogo.rgba diff --git a/CODE/UTSM/include/utsm/deshab_ui.h b/CODE/UTSM/include/utsm/deshab_ui.h index 7cfd256..c452ab8 100644 --- a/CODE/UTSM/include/utsm/deshab_ui.h +++ b/CODE/UTSM/include/utsm/deshab_ui.h @@ -738,27 +738,28 @@ static inline du_u32 du_theme_accent(du_theme t) { #define DP_KATE_DANGER 0xFFFF4D6Du /* --danger: #ff4d6d */ /* =================================================================== - * L1 — Winux-Kate 语义色值 + * L1 — 桌面语义色值(白色调主题,去 winux-Kate 深色风) + * 底色白/浅灰,组件白卡片 + 浅灰描边,文字深灰,强调色深板岩。 * =================================================================== */ -#define KS_BG_PRIMARY DP_KATE_BG -#define KS_BG_SECONDARY DP_KATE_PANEL_SOLID -#define KS_BG_TERTIARY DP_KATE_BG2 +#define KS_BG_PRIMARY 0xFFF3F4F6u /* 页面底:浅灰 */ +#define KS_BG_SECONDARY 0xFFFFFFFFu /* 面板:白 */ +#define KS_BG_TERTIARY 0xFFE9ECF0u /* 三级底:稍深浅灰 */ -#define KS_TEXT_PRIMARY DP_KATE_TEXT -#define KS_TEXT_DIM DP_KATE_TEXT_DIM -#define KS_TEXT_INVERT DP_KATE_BG +#define KS_TEXT_PRIMARY 0xFF1A1A1Au /* 主文字:近黑 */ +#define KS_TEXT_DIM 0xFF6B7280u /* 次文字:中灰 */ +#define KS_TEXT_INVERT 0xFFFFFFFFu /* accent 上的文字:白 */ -#define KS_ACCENT DP_KATE_ACCENT -#define KS_ACCENT2 DP_KATE_ACCENT2 -#define KS_ACCENT_DIM DP_KATE_ACCENT_DIM_SOLID +#define KS_ACCENT 0xFF111827u /* 强调:深板岩(白底上高对比) */ +#define KS_ACCENT2 0xFF4B5563u /* 次强调:中板岩 */ +#define KS_ACCENT_DIM 0xFFE5E7EBu /* 强调淡底:浅灰 */ -#define KS_BORDER DP_KATE_PANEL_BORDER_SOLID -#define KS_BORDER_FOCUS DP_KATE_ACCENT -#define KS_BORDER_DIM 0xFF1A2840u /* 暗边框 */ +#define KS_BORDER 0xFFD1D5DBu /* 边框:浅灰 */ +#define KS_BORDER_FOCUS 0xFF111827u /* 聚焦边框:深板岩 */ +#define KS_BORDER_DIM 0xFFE5E7EBu /* 暗边框:极浅灰 */ -#define KS_DANGER DP_KATE_DANGER -#define KS_WARN DP_KATE_WARN +#define KS_DANGER 0xFFDC2626u /* 红 */ +#define KS_WARN 0xFFD97706u /* 琥珀 */ /* =================================================================== * Winux-Kate 布局常量(源自 theme.css / pages.css) diff --git a/CODE/desktop/MAKEFILE b/CODE/desktop/MAKEFILE index 7e71306..5806e7b 100644 --- a/CODE/desktop/MAKEFILE +++ b/CODE/desktop/MAKEFILE @@ -20,7 +20,7 @@ $(OUT): $(OBJECTS) linker.ld @mkdir -p $(dir $@) $(LD) $(LDFLAGS) -o $@ $(OBJECTS) -%.o: %.c +%.o: %.c ../tools/fat32_io.h $(CC) $(CFLAGS) -c $< -o $@ clean: diff --git a/CODE/desktop/compositor.c b/CODE/desktop/compositor.c index a178d86..f55ee19 100644 --- a/CODE/desktop/compositor.c +++ b/CODE/desktop/compositor.c @@ -188,7 +188,7 @@ static void redraw_all_fluent(void) { for (u64 x = 0; x < g_fb_w; x++) line[x] = srcline[x]; } } else { - du_fill_bg_gradient(&g_fb, 0xFF0A0E1Cu, 0xFF16264Au); + du_fill_bg_gradient(&g_fb, 0xFFE9ECF0u, 0xFFF3F4F6u); } } diff --git a/CODE/desktop/launcher.c b/CODE/desktop/launcher.c index 352759a..a100125 100644 --- a/CODE/desktop/launcher.c +++ b/CODE/desktop/launcher.c @@ -342,7 +342,7 @@ void launch_pe_app(int app_id) { { u32 *p = (u32 *)g_pe_surf; u64 n = (u64)cw * (u64)ch; - for (u64 i = 0; i < n; i++) p[i] = 0xFF101418u; + for (u64 i = 0; i < n; i++) p[i] = 0xFFF3F4F6u; } win->app_state = &g_pe_state_dummy; /* draw_desktop_page 要求非空才调 on_draw */ diff --git a/CODE/desktop/lxc.c b/CODE/desktop/lxc.c index bafa07c..46068d3 100644 --- a/CODE/desktop/lxc.c +++ b/CODE/desktop/lxc.c @@ -385,7 +385,7 @@ void blit_scanout_to_ide(int hx, int hy, int hw, int hh) { const struct linux_compat_scanout_info *si = ide_scanout_state(); if (!si || !si->enabled || !si->host_vaddr) { /* scanout 未就绪:X server 尚未 SET_SCANOUT,显示等待提示 */ - du_fill_rect(&g_fb, hx, hy, hw, hh, 0xFF051828u); + du_fill_rect(&g_fb, hx, hy, hw, hh, KS_BG_SECONDARY); draw_centered("WAITING FOR GUEST X SERVER . . .", hx + hw / 2, hy + hh / 2 - 8, KS_TEXT_DIM, 0); return; @@ -433,9 +433,9 @@ void blit_scanout_to_ide(int hx, int hy, int hw, int hh) { int cov_w = (hw < sw) ? hw : sw; int cov_h = (hh < sh) ? hh : sh; if (cov_w < hw) - du_fill_rect(&g_fb, hx + cov_w, hy, hw - cov_w, cov_h, 0xFF051828u); + du_fill_rect(&g_fb, hx + cov_w, hy, hw - cov_w, cov_h, KS_BG_SECONDARY); if (cov_h < hh) - du_fill_rect(&g_fb, hx, hy + cov_h, hw, hh - cov_h, 0xFF051828u); + du_fill_rect(&g_fb, hx, hy + cov_h, hw, hh - cov_h, KS_BG_SECONDARY); } /* P7.6: 叠加 guest 硬件光标(ARGB alpha-blend 到 framebuffer)。 diff --git a/CODE/desktop/main.c b/CODE/desktop/main.c index 0ec9fe9..cedb116 100644 --- a/CODE/desktop/main.c +++ b/CODE/desktop/main.c @@ -7,6 +7,7 @@ * 原 "Winux-Kate 结构完整复刻" 布局说明见 pages.c 头注释; * M2-M4 将按 Win11 Fluent 桌面重构计划逐页替换。 */ +#include "ascii_font.h" /* 顺序敏感:先于 desktop.h(g_ascii 导出) */ #include "desktop.h" #include "zhfont.h" /* M1: 中文位图字库(dbf 加载 + 中英混排渲染) */ #include "wallpaper.h" /* M2: 壁纸背景层缓存 */ @@ -78,84 +79,89 @@ static void load_fuck_config(void) { } /* ============================================================ - * Boot 屏(打字机) + * 登录 → 桌面 crossfade(渐隐渐显) + * 登录最后一帧已在真实 fb 上;桌面首帧已由 redraw_all() 绘入 + * sprite buffer。复用 WALLPAPER_STAGING(wallpaper_init 后已空闲) + * 保存登录帧,按 alpha 混合 16 步直写真实 fb。 * ============================================================ */ -static const char *BOOT_LINES[] = { - "DESHAB DESKTOP v0.1.0", - "DEAICUP STUDIO && LINEHU STUDIO", - "https://deaicup.com", - "https://github.com/Linehu-Studio", -}; -#define BOOT_LINE_COUNT 4 +#define XFADE_ADDR WALLPAPER_STAGING_ADDR /* 8MB 区,init 后空闲 */ +#define XFADE_STEPS 16 static void busy_delay(u32 cycles) { for (volatile u32 i = 0; i < cycles; i++) __asm__("pause"); } -static void boot_screen(void) { +static void crossfade_login_to_desktop(void) { int W = (int)g_fb_w, H = (int)g_fb_h; + u32 *src = (u32 *)XFADE_ADDR; /* 登录帧 */ + const u32 *dst = (const u32 *)g_fb.fb; /* 桌面帧(sprite buffer) */ + u32 *out = (u32 *)g_real_fb; + u64 n = (u64)W * (u64)H; - /* M2 修复:保留 DSK 已绘制的启动画面(渐变背景 + 居中开机 Logo + - * dcp/xj 角标),boot 屏叠加在其上下空白区——logo 不跳位、不重复、 - * 不被覆盖。DSK logo 居中 157px:占据 H/2-78 .. H/2+78。 */ + /* 1. 保存登录最后一帧 */ { u64 pitch_u32 = g_fb_pitch / 4; for (u64 y = 0; y < g_fb_h; y++) { - const u32 *src = (const u32 *)((const u8 *)g_real_fb + y * g_fb_pitch); - u32 *dst = (u32 *)SPRITE_BUF_ADDR + y * pitch_u32; - for (u64 x = 0; x < g_fb_w; x++) dst[x] = src[x]; + const u32 *s = (const u32 *)((const u8 *)g_real_fb + y * g_fb_pitch); + u32 *d = (u32 *)((u8 *)src + y * (u64)W * 4); + for (u64 x = 0; x < g_fb_w; x++) d[x] = s[x]; } + (void)pitch_u32; } - int lw = 46 * (int)DU_ASCII_STEP; - int lx = (W - lw) / 2; - int ty = H / 2 - 220; + /* 2. 桌面首帧绘入 sprite buffer(由调用方 redraw_all() 完成后进入本函数) */ - /* boot-title(logo 上方空白区)——一次性整行绘制(打字机效果已删) */ - const char *title = "DESHAB"; - int tl = kstrlen(title); - du_draw_string(&g_fb, title, W / 2 - tl * (int)DU_ASCII_STEP, ty, - KS_ACCENT, 0, DU_ASCII_STEP * 2); - du_divider_h(&g_fb, W / 2 - 120, ty + 30, 240, KS_ACCENT); - - /* boot-subtitle(对应 Kate "由 Deaicup 工作室制作") */ - draw_centered("DEAICUP STUDIO", W / 2, ty + 44, KS_ACCENT2, 0); - - /* boot-lines(logo 下方空白区,H/2+110 起)——整屏一次绘制 */ - int ly = H / 2 + 110; - int bar_y = ly + BOOT_LINE_COUNT * ((int)DU_ASCII_LINE_H + 2) + 12; - int bw = 260; - for (int li = 0; li < BOOT_LINE_COUNT; li++) { - const char *s = BOOT_LINES[li]; - u32 fg = (li == 1 || li == BOOT_LINE_COUNT - 1) ? KS_TEXT_DIM : KS_ACCENT2; - du_draw_string(&g_fb, ">", lx, ly, KS_ACCENT, 0, DU_ASCII_STEP); - du_draw_string(&g_fb, s, lx + (int)DU_ASCII_STEP, ly, fg, 0, DU_ASCII_STEP); - ly += (int)DU_ASCII_LINE_H + 2; - /* boot-bar: 渐变填充(accent → accent2) */ - int fill = bw * (li + 1) / BOOT_LINE_COUNT; - du_rect_outline(&g_fb, W / 2 - bw / 2, bar_y, bw, 6, KS_BORDER, 1); - if (fill > 2) du_fill_rect_gradient(&g_fb, W / 2 - bw / 2 + 1, bar_y + 1, - fill - 2, 4, KS_ACCENT, KS_ACCENT2); + /* 3. alpha 混合直写真实 fb:out = src*(1-a) + dst*a */ + for (int step = 1; step <= XFADE_STEPS; step++) { + u32 a = (u32)(step * 256 / XFADE_STEPS); + u32 ia = 256 - a; + for (u64 i = 0; i < n; i++) { + u32 s = src[i], d = dst[i]; + u32 sr = (s >> 16) & 0xFF, sg = (s >> 8) & 0xFF, sb = s & 0xFF; + u32 dr = (d >> 16) & 0xFF, dg = (d >> 8) & 0xFF, db = d & 0xFF; + out[i] = 0xFF000000u | + (((sr * ia + dr * a) >> 8) << 16) | + (((sg * ia + dg * a) >> 8) << 8) | + ((sb * ia + db * a) >> 8); + } + busy_delay(40000); } - flip_buffer(); - - /* boot-hint + credit(对应 Kate "SYSTEM ONLINE" + "© 2026 Deaicup Studio") */ - draw_centered("SYSTEM ONLINE", W / 2, H - 64, KS_ACCENT2, 0); - draw_centered("(C) 2026 DEAICUP STUDIO", W / 2, H - 40, KS_TEXT_DIM, 0); - flip_buffer(); - busy_delay(10000000); } /* ============================================================ * 严格错误策略插桩(D 系列):错误不再降级,整屏 fatal + 错误码。 - * 每个插桩点唯一 symbol(DSK-E)。 + * 每个插桩点唯一 symbol(DESK-E)。 * ============================================================ */ static void desktop_fatal(const char *sym) { - /* 严格错误策略:任何错误不再降级,串口留档 + 停机。 - * (UI 层 fatal 屏由各 UI 组件就绪后的路径使用;此处不依赖任何子系统) */ + /* 严格错误策略:串口留档 + 深红 fatal 屏(ASCII 18px 直写真实 fb)+ 停机 */ slog(sym); + if (g_real_fb && g_fb_w && g_fb_h) { + u32 *fb = (u32 *)g_real_fb; + u64 pitch_u32 = g_fb_pitch / 4; + for (u64 y = 0; y < g_fb_h; y++) + for (u64 x = 0; x < g_fb_w; x++) + fb[y * pitch_u32 + x] = 0xFF3A0A0Au; /* 深红 */ + /* 居中绘制 symbol(ASCII 字符走 11x18 位图,其余跳过) */ + int len = 0; + while (sym[len]) len++; + int cw = 11, ch = 18; + int x0 = (int)(g_fb_w - (u64)len * cw) / 2; + int y0 = (int)g_fb_h / 2 - ch / 2; + for (int i = 0; i < len; i++) { + unsigned char c = (unsigned char)sym[i]; + if (c < 32 || c > 126) continue; + const unsigned char *g = g_ascii[c - 32]; + for (int py = 0; py < ch; py++) { + u32 *row = fb + (u64)(y0 + py) * pitch_u32; + for (int px = 0; px < cw; px++) { + if (g[py * cw + px]) + row[x0 + i * cw + px] = 0xFFF2F2F2u; /* 白 */ + } + } + } + } for (;;) __asm__("cli; hlt"); } @@ -220,8 +226,7 @@ void dsk_entry(const dsk_boot_context *ctx) { slog("[zhfont] dbf loaded (16px ok)"); } else { slog_num("[zhfont] dbf load failed rc=", zrc); - slog("[zhfont] CJK disabled (ASCII fallback)"); - for (;;) __asm__("hlt"); + desktop_fatal("DESK-E04 FONT PACK MISSING"); } } @@ -233,13 +238,16 @@ void dsk_entry(const dsk_boot_context *ctx) { slog("[wallpaper] loaded + scaled"); } else { slog_num("[wallpaper] load failed rc=", wrc); - slog("[wallpaper] gradient fallback"); + /* 严格错误策略:材质包(壁纸)缺失不降级,fatal 屏 + 错误码 */ + desktop_fatal("DESK-E02 TEXTURE PACK MISSING"); } /* M2: 开始菜单 logo(textures/startMenuLogo.rgba → 0x8700000) */ if (taskbar_init(f32_read_path_lfn_to_w) == 0) slog("[taskbar] startMenu logo loaded"); - else - slog("[taskbar] startMenu logo missing (glyph fallback)"); + else { + /* 严格错误策略:材质包(开始菜单 logo)缺失不降级 */ + desktop_fatal("DESK-E03 STARTMENU LOGO MISSING"); + } g_page = 3; /* Fluent 默认进 DESKTOP 页 */ } @@ -278,11 +286,11 @@ void dsk_entry(const dsk_boot_context *ctx) { files_refresh(); - boot_screen(); + /* 桌面首帧绘入 sprite buffer,然后从登录帧渐隐渐显到桌面(无 boot 屏) */ + redraw_all(); + crossfade_login_to_desktop(); g_booted = 1; - redraw_all(); - flip_buffer(); /* M2 修复:boot 后立即上屏,打字机残留清屏 */ slog("desktop ready"); desktop_launch_pending_native(); diff --git a/CODE/desktop/pages.c b/CODE/desktop/pages.c index 74f4859..2a97f62 100644 --- a/CODE/desktop/pages.c +++ b/CODE/desktop/pages.c @@ -14,7 +14,7 @@ void draw_topbar(void) { int W = (int)g_fb_w; du_fill_rect_gradient(&g_fb, 0, 0, W, KATE_TOPBAR_H, - 0xFF0A2840u, KS_BG_PRIMARY); + 0xFFFFFFFFu, KS_BG_PRIMARY); du_divider_h(&g_fb, 0, KATE_TOPBAR_H, W, KS_BORDER); int x = 12; @@ -180,7 +180,7 @@ static void draw_slider(int x, int y, int w, int val, int rect_out[4]) { static void draw_statusbar_full(void) { int W = (int)g_fb_w; int y = (int)g_fb_h - KATE_STATUSBAR_H; - du_fill_rect(&g_fb, 0, y, W, KATE_STATUSBAR_H, 0xFF051828u); + du_fill_rect(&g_fb, 0, y, W, KATE_STATUSBAR_H, KS_BG_SECONDARY); du_divider_h(&g_fb, 0, y, W, KS_BORDER); int x = 12; @@ -420,7 +420,7 @@ void draw_ide(void) { int top = KATE_TOPBAR_H; /* ide-tabs(36px):dot + 实例标签 + "+ NEW IDE" + ide-hint(Kate 结构) */ - du_fill_rect(&g_fb, 0, top, W, 36, 0xFF051828u); + du_fill_rect(&g_fb, 0, top, W, 36, KS_BG_SECONDARY); du_divider_h(&g_fb, 0, top + 36, W, KS_BORDER); int x = 12; int ty = top + (36 - (int)DU_ASCII_LINE_H) / 2 + 1; @@ -507,7 +507,7 @@ void draw_ide(void) { blit_scanout_to_ide(hx + 2, hy + 2, hw - 4, hh - 4); } else { /* P8.1: 启动中--显示分阶段状态 + 详细信息 */ - du_fill_rect(&g_fb, hx + 2, hy + 2, hw - 4, hh - 4, 0xFF051828u); + du_fill_rect(&g_fb, hx + 2, hy + 2, hw - 4, hh - 4, KS_BG_SECONDARY); draw_centered(g_launch_status[0] ? g_launch_status : "STARTING VSCODE . . .", W / 2, hy + hh / 2 - 20, KS_TEXT_DIM, 0); @@ -598,7 +598,7 @@ void draw_desktop_page(void) { int W = (int)g_fb_w; int tb_y = (int)g_fb_h - KATE_TASKBAR_H; du_fill_rect_gradient(&g_fb, 0, tb_y, W, KATE_TASKBAR_H, - 0xFF0A2840u, KS_BG_PRIMARY); + 0xFFFFFFFFu, KS_BG_PRIMARY); du_divider_h(&g_fb, 0, tb_y, W, KS_BORDER); int x = 8; @@ -683,7 +683,7 @@ void draw_custom_page(int cp_idx) { cpage *cp = &g_cpages[cp_idx]; /* ide-tabs 栏(36px):dot + 页名 + "+ NEW INSTANCE" + ide-hint(Kate 结构) */ - du_fill_rect(&g_fb, 0, top, W, 36, 0xFF051828u); + du_fill_rect(&g_fb, 0, top, W, 36, KS_BG_SECONDARY); du_divider_h(&g_fb, 0, top + 36, W, KS_BORDER); int ty = top + (36 - (int)DU_ASCII_LINE_H) / 2 + 1; @@ -836,7 +836,7 @@ void draw_ctx_menu(void) { g_ctx_rect[0] = x; g_ctx_rect[1] = y; g_ctx_rect[2] = mw; g_ctx_rect[3] = mh; - du_fill_rect(&g_fb, x, y, mw, mh, 0xFF050A18u); + du_fill_rect(&g_fb, x, y, mw, mh, KS_BG_SECONDARY); du_rect_outline(&g_fb, x, y, mw, mh, KS_ACCENT, 1); du_kate_glow_border(&g_fb, x, y, mw, mh, KS_ACCENT); diff --git a/CODE/desktop/shell.c b/CODE/desktop/shell.c index cc650ca..dc82947 100644 --- a/CODE/desktop/shell.c +++ b/CODE/desktop/shell.c @@ -482,6 +482,17 @@ int handle_key(u8 sc) { if (sc == 0x01) { if (g_taskview) { g_taskview = 0; return 1; } if (g_ctx_open) { g_ctx_open = 0; return 1; } + /* IDE 页:Esc = detach + 退回桌面页(IDE 退出通道) */ + if (g_page == 2) { + if (g_ide_attached) { + g_ide_attached = 0; + g_input_forward_enabled = 0; + ide_attach_invalidate(); + slog("ide detached (esc), input forwarding off"); + } + page_switch(3); + return 1; + } return 0; } if (g_taskview || g_ctx_open) return 0; /* 模态期间吞掉按键 */ diff --git a/CODE/desktop/taskbar.c b/CODE/desktop/taskbar.c index 4fba6fd..bde0c0f 100644 --- a/CODE/desktop/taskbar.c +++ b/CODE/desktop/taskbar.c @@ -32,7 +32,7 @@ int g_tb2_clk_rect[4]; #define TB_APPBTN 44 /* 应用钮边长 */ #define TB_PAD 8 /* 条内边距 */ -static const wf_theme *tb_theme(void) { return &g_wf_dark; } +static const wf_theme *tb_theme(void) { return &g_wf_light; } /* ---- 开始菜单 logo(textures/startMenuLogo.rgba,加载失败回退字形) ---- */ static int g_smlogo_ok = 0; @@ -151,8 +151,8 @@ void taskbar_draw(void) { g_tb2_app_rect[i][0] = x; g_tb2_app_rect[i][1] = byy; g_tb2_app_rect[i][2] = TB_APPBTN; g_tb2_app_rect[i][3] = TB_APPBTN; wf_btn_state st = tb_hover_state(g_tb2_app_rect[i]); - if (w->focused) du_wf_overlay(&g_fb, x, byy, TB_APPBTN, TB_APPBTN, 0x22FFFFFFu); - else if (st == WF_BTN_HOVER) du_wf_overlay(&g_fb, x, byy, TB_APPBTN, TB_APPBTN, 0x22FFFFFFu); + if (w->focused) du_wf_overlay(&g_fb, x, byy, TB_APPBTN, TB_APPBTN, 0x22000000u); + else if (st == WF_BTN_HOVER) du_wf_overlay(&g_fb, x, byy, TB_APPBTN, TB_APPBTN, 0x22000000u); du_wf_icon(&g_fb, tb_app_icon(w->app_id), x + (TB_APPBTN - 22) / 2, byy + (TB_APPBTN - 22) / 2, 22, t->text_primary); /* 运行指示条:底部 accent,聚焦加宽 */ diff --git a/CODE/desktop/wm.c b/CODE/desktop/wm.c index 358f86b..6048c70 100644 --- a/CODE/desktop/wm.c +++ b/CODE/desktop/wm.c @@ -250,7 +250,7 @@ void draw_window_frame(desktop_window *w) { du_fill_rounded_rect(&g_fb, w->x, w->y, w->w, w->h, KS_BG_SECONDARY, 2); du_fill_rect_gradient(&g_fb, w->x + 1, w->y + 1, w->w - 2, KATE_TITLEBAR_H - 1, - 0xFF0A3050u, KS_BG_SECONDARY); + KS_BG_TERTIARY, KS_BG_SECONDARY); du_divider_h(&g_fb, w->x, w->y + KATE_TITLEBAR_H, w->w, KS_BORDER); du_fill_rect(&g_fb, w->x + 6, w->y + KATE_TITLEBAR_H / 2 - 2, 4, 4, KS_ACCENT2); @@ -258,7 +258,7 @@ void draw_window_frame(desktop_window *w) { du_draw_string(&g_fb, w->title, w->x + 14, w->y + (KATE_TITLEBAR_H - (i64)DU_ASCII_LINE_H) / 2 + 1, - KS_ACCENT, 0xFF0A3050u, DU_ASCII_STEP); + KS_ACCENT, KS_BG_SECONDARY, DU_ASCII_STEP); int bx = w->x + w->w - CLOSE_BTN_OFFSET; int by = w->y + (KATE_TITLEBAR_H - CLOSE_BTN_SIZE) / 2; diff --git a/CODE/tools/fat32_io.h b/CODE/tools/fat32_io.h index 0613b53..aa03360 100644 --- a/CODE/tools/fat32_io.h +++ b/CODE/tools/fat32_io.h @@ -789,8 +789,18 @@ static inline int f32_read_file_by_clus(u32 clus, u32 size, u8 *out_buf, u32 buf for (u32 b = 0; b < fc_bytes; b++) dst[b] = fb[b]; dst += fc_bytes; remaining -= fc_bytes; u32 fo = fat_byte_off + fc * 4; - if (fo + 4 > sizeof(f32_disk)) break; - fc = f32_r32(f32_disk + fo) & 0x0FFFFFFF; + if (fo + 4 <= sizeof(f32_disk)) { + fc = f32_r32(f32_disk + fo) & 0x0FFFFFFF; + } else { + /* BUG-031 修复:FAT 超出 128KB 预读缓冲(sidecar FAT ~2.1MB)。 + * 旧逻辑直接越界读 f32_disk 尾部得到垃圾簇号,链路走飞导致 + * 大文件(字库/壁纸)第二簇起数据损坏。按需读取单 FAT 扇区 + * (fo 为相对 LBA0 的字节偏移,直接换算扇区号)。 */ + u8 fat_sec[512]; + if (f32_read_sectors(fo / 512, 1, fat_sec) != 0) + return -7; + fc = f32_r32(fat_sec + (fo % 512)) & 0x0FFFFFFF; + } } return 0; } diff --git a/SYSTEM/system/deshab64/desktop.elf b/SYSTEM/system/deshab64/desktop.elf index 358f12286c529e3c96b4f94e2e33a5565497d0cc..a2a8cd1bc1097b011a4132ca4235511280ec1e0c 100755 GIT binary patch delta 74550 zcmb@v3w#qr*FT=wbfJaDEv1D5Ed;ridxb(nDRgN98%Vepidd1Sp!BIALJFvq6w|8f z5(E|vs0iMk2Om+<3Kmpsxike8%SGg-+##`upa|vG{Jt~0Z57}D|NXt6_lF;|XU?3N zIdf*_%$b=p)54Hx{ZFRlT{&~!if;Ygaqn;j`mgS5h+;tl!6%G@Wm^2b-{mJ4Ny+Fc$^20b>;v$y2BrW!sDbGKt28hR z;I|BXVFUP)iubshNQxLGDQ=S#3eUk6ek8Em7^Oa-Uu}`v@efT$NoS(mr5B@cl zl(dstqEq+;`o?jT$rF81LQ6YmC@ymg#jR*j-n2%gK#r%d-$v_h@Y@d2526C7l;q8? zl)RaT0#|y|bVAWWlz_OT50NY$$vkPD+5+X8tRy>8mJ&Of7VJ%%Lknv&nI$UrH)V-7 zZUyclg&*>!jiCfn9?}TPHG<8XfYXTi4eg8uzk${#u)7(4#-Q^`UehdOFB1T}5-1Ru z+yZf7U*Tu!NlL)KFhd<2)584_OHO+_aNVahM_%+F2n}J|3(@bl#UU~fF_{u1yCDS@ zwXJpQ)}g@L4>HQAKU1E}VwBf3%BV1n@+nXveN!+_)ANCF7ji9m-HqQj#v)GPyYz%W zl;p1XIFwFy7BZdbL0i#QDy_!vCMoBzBwD}vP z@|w1wUN6eWMbBBIY(+9I3NbyB12Gf>ML)1pS1~9<{!`+X&O{9%&icK&{6@p0Eu$=k2g?)DBUwIv-`K1_-94U;2Z zv4?gzEeG?j1oJ|nkR*JRxk=nk8>hO>Jq3m;L{Duqp@=q@RD3`vdI^A4zEOTLOf03E zOH8b>CGDwWaHtaRr8Un`!j=kKZdipa2g|FYtb%(>wXo#`f=9{&2yUsd2_FTl!bc$+ z`Bf~x7%nckXfT8fqVUlb;iHq}_a$cyA)^6ARUkTPBL~Iu>TogQxGmzgxa4cF5E>@O z%l1&Y!?HJD(T9p+t4tg6y1^hkKMb{cRA^^47=B+KvQ;WJcV${SV&+~A_MjE^rmg)L zUHcRiWS}WeXrKJ_;pPTUia{uP8U&J$2E}4hmO}k;|!sAq6UV|7K%q|Any{2(>1VBnoyh^3aKlb z$GIPDWrXx%5Fw|H0$dz&$TuXxdOOgkvB3bb1#4_>*bp4^`hR<1_YbUfb z1U`47Ejrt2i=j1sL?msE;zXpedj=bXm&+A?0a8Nvt9F?87TzNHQ-ma`{ES&HlOn1l zx6DsNw4Wc1Uz%-T#2*GwyE>vV(@M~o|G``dnCh0m8-V?MN03sDRy_^)$F>3g9PkPs z1-z$*2&>BNN+V1=!pnMzgY**1rS7KRyFz7<{gfiF>OskE**~`}vN2Jmn$EJX00o`V z14&WD06I_FXB3mah|XjS>Y4A(zsItwvMcvV-bfk$+a*io+)T*f>j#?~6v~UMxu=H9 zZ;1k8-a`Q=d2rp0a!qHy#sI8qXpgQ09?90wWPN~*qZ48CtF*Ef6vEW^wHSo76yL9g5q;tu`T1G#lpprRs>J^q%qbgAJhk!yyZ%=!F@=qVBUAn&M9{dq! z2xg(_8L}4*ji?K?r=dXz1!~Ws;4f+0)Ts-wdbcxVonmk`(_SE%_`Wc5gE8A za%ta&NRyvNT4;3>Z(`b23@*`6GdGA$!#WB@`x(3ZPl(d824O38PGTQhAQse?;*hYW z++1FGljJWB*kkKhqir)A)qI~4H3Pu)H5$4%lgESsew89&bR=JWKs}$>DSBlmuuyTt z^4nsgJSR+veX)}o->p~6&Xg<);+M0VgTLhKEimhU&{Cb&tyRnGF?w9C7Ppti6|_`W zbZax++^?>B=cZR*&=go86{815F9IDcI`$)EkjlAYWKOR1T*1^EYsqSEXv$dyYqjSl zhfa%%_MfDUpO?!#X-hhy*=ZNvAu0SUHLAPW{W_vu-9lBxW%(E$yo{iq4H^UrY0`x; z2HFI5?W7F@mjpf%5iLRNu2dmOrbWe3ME7ty67}I=DW97Hwr)&Bgzyn3$vdQoy;Awl zX4hc!j~iF3)sMQzxcAd&nb?YdabfuJb0ITN3YSlN{f9IvWT+mMbl}ESlu5(X$lzb5 z5n5~34#b^g1W6zfXKYR-C_P~6mgi_Qc5D%i|S?ccsh!v(Oe z@(;nnDwDjkOsyf7TfqM%aAKcr-qDb8Khv!P>! zqR&}Q{NZS$!Ky$Id=-Pb1_BXu>I_-s%iH1%ut>JXp^FA`G7M0MY3o5GDnlIJp06?} z-w=2Tvky?B0@&N69!BE2v|W%k=wRig6;r)XfdPPi_as&taz$V@hAcw!sTsFXiy8hO z7PGiIkwtw^72`@R>g^4Hp98FkEK`!tqwn_pkDAysWSp^)^Nsw4JnJ5Vbwc2u(8`h$ zJI@U50HfgLGMGiLu)uXFYI8XZ-j`S~ggA5MAR-jEgeHUyT}aV#rBoi^MEQ#7In~%M zU$uKq*Eqc6;w8`NJGP|b_U%oY3=Gl#?eY)R!g70Pr=9Gzlke=7+iuqcThcknQyV_F zJNVShqS3PJt#kC}68*VGf9}{lyTYB8)A?te7|`2CdprIc)|k+)5VA95_`^1`>_fYq zmO%cM>Nh+UO(lOhlvGG)myRL*N8zHT)GV-*{NJ!n5sD^5E}~o`y2}IYL{cN}uMs_E zH(&?-+K$}VkDimfp&4qX^mpczNjV{h@KKpmevupD9rV0JZb_aUU12?P(3>%|04d}L zs)uB`DHPFh2a6~y)#jC!h=n)boO>EspK|7wRe)7Hxgu^w+Z*iif$F#hL()^;)J}HT zm)xvEoNH4?;iB;C23NS~AA01s-+l|x@C_||qApycg-_LmZ))Llb>UlDI8Yb9t%Wbu zh40Yt!~UUH>JWD|f@^i*S}j~t7Y=FRJ6d>9ILreZBrN(liV0c(*Eivtq1OJ(X};|C|bePnL$+hSzD{e9_Yp`Y^^rx`>Fd4*clKXwJv0yL_kB@ zs$~97IMR7`Mg7TY`^!Yv%d~~^LPMOJdT32!_r5$nS#2XFXu|$r2 z5CF=bgwG3M%_OSfmkvgq{rn)H=s#hL$pY|tdALy25i!E{v~CCs+mk!uqwtS#MnmEi zC3XV7z4g%Y=%vx0LLfe_9163UZB<85_ z^6TX!-vsP9VEu%);vh~?%dhX?kY+%cXs#3sYe;?*Kc55&8ZX~W55J1EmK`twi}vRa zLh6?>>M$E&dPAVFnK~*pD`GyhA2|Hz9rdHsuH1~b)uX9TM_XtYD&DiWlcv{rOKWw; zpkDXiL_1UT<2rhO1}vv2DX)BvgvEuI54KV_51Q6;KFDk!8$ij%OP)(}&_|wZrS?qg zVSFaUsSl++#GQ*%x20LQ_t4;JJ-Mgj)Q*E^aZTe?b#NC`>sroWrFQHM3c1f)sJDl_(0lA1&M-w=pFFx8o%kjuK^wK%mLTK$9zJ2b0!uOBQmpz( zda88*cuB>gJ(U#nkn+lAA~*;^NwJbX)Cg*6m$6E9XGvH$+!v}suCtJ9wGn7&s*ufc zdhs)Ave>)DNN3_1d)_xxB1xc-NF^O@>U`0X@*_2N_;$BBgP7VVe~O=v0!X#22y1rH zNOY@Oq*^za8oBnosyX&h8QAzNM!hI@;VN#aQA4|M#kW+;(6;e22C<3SHH6l|l!|;( zX+J{pye8_rq3PVw=IZ95ow+qJ>W@Rma8EQ>duO2WZ>p0smT}+LsKJa;Tyc$Rv5w~Y z)u=C8@3egd%w_MS>Nu$kl@yAC=wo^}XnmvP9b0?C-S|WG4;#ugZ=^OIKAjY(bB3GA zB6Y>^UR=+%YWeVZZV0cQ9PWs@8itCePK}y(+*4y*bQqKF$uM<@G?rT$rmmE_b5q0A zucYz0ZRmP3hw2jpO<)-jB|O&{IAva>r`9Mey$xFrB3SL62)U%4FoH(-Xmp%p6wngk zo?DnlyMZL>K=1>6JnlF{>GALPhqgkygam7)?4@fsOewtjj6H`uqMo#y+b(y=#bbaT z;SDPeLk+QIu^MX>YIK;0QB4@p(ftUb(V|t7$F{r{KdbLx_4$J22@>JCc%-3PXWMin zDSZGxg0)JLU#8Z+B=41O9Fvq{GYcRIsYFy94Oyy$WgXa@?@gg$rQiiA@upoF8}3xb z#))6h5$#ZlX*OgHEM2y3u*zlSr^2kHOtuxG6uRhic*7c_ zLUU-AURPt}TP#tS)JSsiLO^zfNJiTxhx`LX_a&5bT!r}=)s>6G zX^J+a3|2>V%Z7axSR4*ZcBN31qmCG9bBn^t-J&^UGyf_UhDiQsx~+k|i9=Rn=6bRG z=Wt<52s;;dj0GF8jS(USYs3$1*Q1`QP%J-#J&rSMk0auixMVNt7#c3etcEb6B+r+$ zK8D3{cFW;;&F%6H2fp{AYLw}rN{g`7z&VSrKNT1301TGP4&}>*YDY)c6tGhDS61%) zjg>%@u%!&xT}E4B`KjGTvrWBTC-le$WJ}ip1 zV~t(0vv%D6r)IP!R)~33UF1x(VvN>`G2`US4K{hFSbjFlMs`Zd%VUs-!`ow^!`pFS zAA9HhtqDEX&N!tSbbCXpL z8<=$5S^Uf5mUhcG^P*`PCRPS^a0^x|@dFX(7M6*q0|*2U?bsj^Ug%8$Fe7+60s4Q% z&}zz1@F26bvtd;}6DH-%YZ)%(jE|IZMn;LHC@Ungu^gDKW{+xP{6{UPJ~OIEObg9~ zM>lrDNc7xpBNTO2zZ})iZOgrI1=SVhZ^iQS;bP*qHgZWUzZ5R!?z;rMl?0cZHiQK9 z;M2C;>r^4y$Yrto0t9wJ6WBg+$v!GDr}9L&r=W`D^RUOO=SlKS`n_lS5JosBdCEB$ z;w~$uS#`{4dyn7gmJYdt)wk1fDP34uk#63XURVp=c9g~lA03g5*`>qees2dW)!m~% zY`^7T-z53KD%Cu;JNM*m)j76xtL4I$ zNrai%woQGCuy1(_OiOaXaaB4ZocpFaWPEpF9HJy;N_h3_NN>BTJ~h7o zwB-)(#H9{7a}&N^d{^VU4Bz$mzJ%`ve4&zGrXwEU3ZM${T`74gRA?bAQmV~=83Njl ziFkb{5lbK=RgIc3kegehIwmA=<7?Es3Dd}O_1g)(QK`EVTDDq0&m{V-Us8=6aws|B zo|-2YHFsEMY*2ejY0QfQ4`y7qpzz^OzclCs{fie zL-_a)SU{;F#E2>Toj=splZJAS{GmQPscT$+L^+hK@apww#zX|FX?vRgP~VvJBuP`F zvf{br*VJBFiQJ59>g23`T<>e@OIZ(aw|`f6X5|_&1FF3zo7s2VDMgnMq*&?+oy=CoXy7wNaE;SDi27MUED>+`~ajil-NJvi`xm44U%GW~=p zTKOxcn0r$$?R5ITS+l5_-BLq&U(R^fu;5*?)KcD;Gu}^4iE(c@LwhEj>q{Z-pJfPG zKI6zSBXF7qa=NA$!BFUoNm%j@HA|kIyr=v=W}3uc1D_6+%*yKf*%mqmaHNEVm9S+Y zMpPN>gUUWE^-qk>R+TPn|G~54l;_q|oO-}M$f$B-zh!ZylzWRVVI^ZhsZ$vqXP1vU zg^wy7MrWndDBv`rI;Kud?QoKE2f669{OnpO$;Y7b7yfKdofI|ioUQoW;*)fC9=(lD zHHp8;RZ!oFRe6WIkR6zMt=@j~hk5&5q526Y24civ`M2^j?lAHjqR)hDQ?51QH*Lnv zkYm4yW;DvUtz^K$gzbNQDFGI(@SbY;5mQgHfmE zewDf+JJH?t&r=*#Qsl6coOM`!6^hn_&Mw#3N#()|&eY*i^G;C-KrNJ2PZgO6Y>9iF z@=rDyM;&$S=qG*9S>f!sFf(o6cA(azHor(qb{#>Ih81=2Vk5M4 zyF&GghdrG4mlAPmcfvh#sbuyeyNukcfs%gHD+qVsLdl&O9>O`#mn?a#CCBwUTk>kI zm$ch_8NJg}6SWBI&B^;Ywz$jQ3DXXm(6r&QIxO#glM6K2JLzi1lzUmt&of6hKFwjF zjsD8>r`0#}+Hid?tK0K7q|L>IK>zvq_$m!TI@WV_WB&X}Z7^U#ROAC8)(=fi0p*Qt zdP;r!@i)1yC)HuI+DE2=&Y^^(fYg)fyjd=8^G|AU)&=g{AJzS{hh)6IHx$CU2s?y) z_P1;d0h+|1l)w|as6oo7{78$!`Uxk8U$CP1Y=)wRPWe$C|HP)uS>JF5B^6tKGXaRo zfPl0k6jD+t^stu8@Dr2~19q;2qW7VBk?|nV(v5hpsTYIjUPuQ0dmZdP2!7o3?ssEnWQGIA``28*D8pJIOvLskB?Z6N-KX z1Etrm{T{;7fw<tTi`4Ef57h*VC~+RZzn+Q?mT$$84CE#iFc0m@=-8D+PDQENn?fz#;?oYI57y3<_sC08al zW{-No)ivSa_QViei!9I}wN0?eofD0X)x|jBN$z`}+C4udA%armFyY6(*Fcd7il0ns zVg3MjCb0A*g%8|*nH_0Ps7Gvjj~D`(JetwVKU#_Iha;sN;iYJnohb_#ET)TaN~N9U ztA}a-Yv!cqy|)=trVT(z>^x*KgObpprZdPwbrbA9wg3FrM-Pmsij16#A-`usIL{F5H8(ZeV8@EtvTiiN|TM^K%;a2@B~St2}@ZsgL+)Ui0Mp;p8{ z7xgsK=vNm_;*=Tc?~8`G>8uj?9!VwnOoKVw>iS?V;--k=>&|raZv~LKDXee7FpnDdVqww=29AlIih1&&J0tbWAf{1KGiV`>oITX z7$y#uYPpVK6=RsiI)*iUj+++$xQ>EGrC6jcFxt^xKj>)XYbks5SdQ9}+ zQWX@AR!v6KQd{+G})w4RLE@$=C z!pBMHlEzCSh?@?^z>OP!Y6^xquVbiY*~Tyjbxc}4rd-FcKE`N1(lK4@Y1Zl(Ry3ng zbj%Zs2IYqWPyGc&F^}mOCLNY6Q^zFMXPu#A%=MTg9rIW{rk##qeT?N}(lL6)+$ik! zb*=UdH4EyPhMN7LV;X9D-VOhZ2V|AzVMFBmrTKKKiY4#wC1hLLql zL-7lA3{&W=_!&Be37lcZ>lkgE)0{;eGfS%m9eTZWRDg+t&6v=K(6Sg1~ZE?R4Y*LB(kZS$gzVY3md&O#m2P{Bw4hMAya z8WhP;9n-*9A04A9)-hBrZFLkIE3B|c9n-76!EgPhRk;BZ_#5UhFuGoEq~<)|E1PxZ z`8pk|9K%f4F>Hcnm~lFWwI{=*>loI04AV=;Fp&VGUVgrNvv!&2)$RT?3e;{dq&&gu z@a|QOKfk__|1-)MI07}m6mrbNfE9?vju{w>u@I%XitIffQrprcsdMKX1r9A~88ZSpi` zJhgrC0rz^)W5aKg=c`>q018E2!eEBW<#OgB?CGs$M_mHCsv~C>oHsKMIk8UnCimY# zjl@O{Wn!Ete=ROKi#32-I~cfyW&8%o8{Zf^A7M#w$#Cv+$g?V|W3`1N*5nRy&|&cl zMRZHUj59AgIlM6FNSz-w?<~#%Pdb!G!{J|t)lGg>^$hjb7rQj3%N?NA1SLLBhr_Es zz%i#4z99}}7VOT)Rj1O@O~XR*DA=Ib5BUwd0vq6vu$?AhXX0$H`T3&3)O$@>wjJXR z&Z3*V6T`_>tCD>PD|*qh6RXtZOK?48JE5DikQWf$AH+GKT&eAc-j9HkL-$G7J8}+4 zIY+H>HUx9l>XvQ0;H6;qlwC&c{}|zoc^P%2J3cSK`=qoC2DCh*FzEm`DIcNv%4=uh zqaV6d_ib3f7!<}OcJ=8_U`0{O*JpuK$m<+Mz-oHPjXF^t%jt1fAG>E~q=XY?ZxXTvPY&{%u)SYP zPpw&!*@=_uYw(k9r#xAXxVJkjwo-Sgr{a{Swr;!Yil<<`VevbT-0O6^%VA{Ap%nQF zBeCdEGUJ3Tm9n!^*z%3++#r{ij|k#C=BiUZg=(kJDhVI$a2RdNokkm6NDowZ_|qB@ zix$KcQ!=cs9jTe?g`zN;M&2(Oou%rB-U04%amk$!3U=+^N_SGMiKlaKvXwS`lW;V2 zM*E>EK)xO8c$iJX9TlACc_wl;bGk`K4|&0VGt&HV?y=ptUN!Qnb~wXR#Trx7uIG zhAi^I9@2Vz8upNI9%QQifc9bACQn&7Qf?BqSlHI$cvM8n$=`&v-BI`tN(#KlZ0iwf z1N*^|!vTtAP!q}R4cm-t(SPY)XTsNCV*j`^hH()^VwXWk}z0D6lrxF&nlrBdbD9cx4 z_%Z3_LwXMHa*FkajYIV}dC@RASFqrI2+p0_#xSJGzk#X9L3fq-)eM4G`HL_|!3ny$ z+n@U*m8aXGWTF>sd77YiHb|6Kj2>|O*An&r_Y#fP_L2Tud1gSMk1*$RYvPgIDq3!a zH}W;O&RWS)vX|}(=T`UE}=v-Zm-e_B` z3DLNG6+~Glx=4s_KO!qVWdiO8c#}ih)DKt0$F`*G)}7AmBI2hwol(?NEBaAqAGPJm z_UxOgf2XdDv(UxAq&$qB{5y-VMe#Je^iQ(Wn3tm(qHeP&zCJ33=C% zTQR*F1SeHnm_J^Saw_QP!W2L!1UB2Ut)m>1$~;_9(dd9agR{!M-9wFylybsvGTV<(Ni;ZD*`y_ zDQ8n(l_R%CoBEg|gI&ppqdFG{`<0lbD%;tOP2u_2`cIYvJM<`blJBI{g7xYLueWw< z9wD~GOEz4fz{!m*@r+Hz+4Q-_Hgbp^QRn?J7ZuXZd8`o^Y`Zy9$R3TY5C6{=b*)@(Cx|MbA}o!sne5m)xbZX8v>H7lm{4)M0Der_9=b)8{`V zQVWYvd6}MmKtNZhAeDSra7^^o0&I82J|q*0c6D^h0d?KlmhS3{=W$FoGOD_Y`4T8! zVL#ZwnjO2b24~JWN!c8ZEaCJLg%9<17^qvD)b~K6*9(EQxB-Kqk}irvyX-lB7;Al~ z>b2vn#w#Mfp~CjCE}ohuLQw~*>{B<-tOB2crv*a)MGJkVcbvaBltT{Ec5SucHbT-_YcyPFP!Uu-o-i|A&O945-nh}~AC>kaz~ zJsJaU33S6I_2jw-!lI!5)pqMGaa8#_m3cU64=wuKVYxAHi|98{wL52hOmid&$5AT5 z?-eMh|+2Oav@o9&y^gNY#ZEK#y6 zJ-1_MuTo!oGm$1;2rf$1Z{AE}hux8HwN0jOV0JK3y^$(fN}C^6ZH8l;(N-#~*&$i3 zXr2~_si#GLV}IBZq$rvC*3-m2f_9mmzeqV>L#Mpp*%9W**?~ntF{%x95zVk#I|o&R zs_2A+;eD`yuh4~%)7Y2ZqJnM3PL%8f?mu5UsE#Ojr!{L7L{Qsp-MOl z3eW!xHgLWXJ*ecJ4QI&%n;bcdqZ~Q&W30;TID5{Ij+{s1oyF%Iay};Df-_H9uSC>pp_ypK*+C0^f6917AaNUzLTudaE& zOL!#~ohv}5R=$6~5sOdtm-o%=cmmh?0*}GvoXy6<7J7qW;Yxi1#l-66w^^vw*cH&H zfV9bTH8VW3DNE>@p0X%uwWvtu^3xo>&7@>j88gcg_rhIR%GryV&x<Ds?@K z%r4AgcQZ8n4fL`XVgf2-6A;Uu>T4*fO$`>N-nVXf3RW8yS2UQIg$`vH`c-+I!-2zi zA6;7M{YrB;_!Y~k)vgs-W!lM3YOy~Yr8fPbsXI?(UTtFHPwqs3oKYZSgOK#J;3dMBUC2pr0rW!X#omF1(oOkR+>@;m(FN?@9;wX!iG%nNw{`g_q`Q zG4S}tjWVnu3pQAdUuIFJ$#uWYUBxCv&z-QjX1}e9Rs%iW6@$#9w^8-Bm9An0>wY=2 ziVlTUwo)2}Z<##@21-GtJ?A>z_t|O&znF{ZMg;srtnfw=nT;9<2LpO6?(Sfp1koaM ziUk4fPJ!nevthE{i%u)E8jeu;=^ z@(y$`X0C$CkDD8k=3Oe~>;ObJB7`lrvL?{2Tgq-6G0|B`^i(vq(~HBI>mdUwb*DSW zuVlk-<{;d`;HOEI;+7xeOe8uaXO?MRiDzZFvCu2A$ErIl*L3RUbe8`ps8!e)Oy4jA z>|r{C$y)4oEWb~AZem@De?rDyHUP>Txi>XCte_AcnsHdDZKk}^BY$YvtJs>L)}zyy z1RYy<5rulCILWUt#8$fs;l>AxZ9R2{u}952P2G4-B<-QJMYJG;D90?rGTLtW*0l=; zV!VL9`zsWsME24&W8pv}@6bB0>)^I*SU`rvW1_qtUBd|*C$kd3L7TSn)zPI&ewpym z?^bMYcufhfbA~z#?=Uth4&ndfgjyKd3OM3-?e?#HEI3y!+Z3yw+LX$@`I?&Wu`_1e zYt+L`ikf!<_nsI3;PCS4uc?ba{s(vBRrSor-MNomRfSI`a}!=w|M`h?5dSK5>zf%h z?<9OA79WEHxCoC#B)YT)5lVVE-Thm+(`x>@@HWYBjxKk|DvQ@Z@bwz?_fL9qudh+> zFG=EZ*Ql8#XZ+0)Zue^SW=R`v!)mp~r|r1sSE~a)?afVGtGMQx&vy?&ag9Sk8IjYfqF-q>pP-^;!em_$}w$xL!JA@ zS}x&@l4f5P5N_G)>hkTaxw)^a8@IRR{_(o{&Grr^=K^}!(G>}IlcPe(o$dLYux@)a zya6a1+-Vk!N_36ev;;E;b7ssFq>Z1-zy zk$i6V#MV?((R&XuaKc!4M4|@30e{#llx#wUosq4t=+Dmhk5;()YlZHig^tt;ed+(d zP;o1@zC8Z>h?#0g$x=`%Jo_4WS`KiN;Q1Fozx9)FM5-TG#tqPjZVJ!7fe5?hRy{== zQ?QoXbuoAAV`#=J_p~(9EL!jB$iCv91ooY_rzOjh=Jf1?&COS zsjZLcNb~wg&vVb7ADA58-utu#3GWp;MKPg60~of(<3}uw!tXsopZN8^|Hsn1thHC) zZ=N1N_spHee-S)I-CJ>bY;;%lw}<+Hb7bP+)ix>VnIK_MBaI@2GHi zMA|(S5%l77T4YQ0%(s2QY46#NVoF-?Ye`zt5bU>whaGg;S(V|pzROkz(sysopwpk^ zg%M4XPm2AxI` zuOqN6ryVFw;{geWd>Nk0+K8Wc zKl+9P( zFoJi!O;|lf+jI7g;p;JUs~LTLOrv@X+uQ)AaXlu!3x`>-$%zR%8xq(U z#l-3f(~?VIL&xZBNMJ+9=xj(}L&xZBNMJ+9=xj(}L&xZBNMJ+9Xl$H3QRB|3!LF~& z*ScZ5c=@Mpu}}>SZKdwOr|6PYHvLKwe*O|Z^dG=r19+hUJX;5P`M0#Jegp>O$Lb>d z{0|M_A$J43zX9A=2jU{}9mY^4FktVo%Ph2mhGf%D`tkE+b<}?T%LZ^;1Nd1Ti03l2 z+I|cSQhw;>*pivT@7EFe`3()=yA9x5b)c7TtmX1LFkou!AB?G2Xs9#`0@}f3#(TBs z>$~X+f`48M9r3f!5-oJg?`FYgv|wZ<3+2<0pP!45F6<{7z{eZF+y?N`1~8`%gt%@n z&a#04pB-+q&?Fivy#^ka<9|0;8$~gGeq>!jKQA?awgzx$9q8qEX*mx91}QCd5q`dZ z1K76#?9%}DtOLEgaF?+1y8s3Lrh+GM)1HP(<8=Ojh|{8pCb?)W^tKj?)I#6yVS;O< zg(e+mAp;Hh`MZnj#dxa$yrF|`P+V(3Uu^&{*MVNX>?-3d01Wutc!`D1&`>E(_zYB* z;PWU&`1!+i>HPe`2C%9D{I(AC^1Z9wEH6J$NV=;o#?O~GfZH3u&l|wfI?&4>f|CHs z{{$GYw@(Xgq@hyW0x)#O|A>B@BK-XNx^#YiEkM@)fqu0C?W+U5{GDG}&MSZc&9b@( zKd&@^FEoI~4dAnNAevcg*G0g9y;E9fJ`I)D(D4_q@i&WN{QN)b68iba8o=od;Iul> z%lEy)*qZ_jQfAdf`1#BRaGVZ$_~y@WhH%hH4Ux9R>bGaw#J)sFuy->(0tl?0OP5GO zu}gg;*y4dioTSrGW+NO>*$U}>fS1d0r{c}0;bQH%87I81J#8cu_oWo3o0CgyXP+h9 z_r>a-a}RP)6|0@j_vWNxb>jIYT&H67==q78)a#d~aIY1qBUk0=a zuje`vTz>{(*NNs$Zx63o1X58IAXv;*>9GB(^*&n$t_%fzTxN*I!$YI)l;;i_d$~ zw$9=VE!`*ZM%F2y-~f5zc}UZnaDaXIZ|H}f+Iji$FEEfEZrT9ixd4J|U10gf3+kjR zN6Cqjq^r%0+%}JDz4isS)KkL!@gCt$FDd!p`UMiV6-$2Hwn@Q(F5M5R2y2X_e23za z_iGA`EvDhE6Y9r+jbgFF+Oa7X^t^YPD&FbBxu&WAyt6HGCOV>>;F+A{4vB6shlBBSo#or;DRUMex^UZg52Ii4DE?;>_A7HswUO8 zy)SJPeE;cl63CPcRc#`yAiFF!BYL{e*7?Pf}XV>%&@sZZTvX#Px}@bf9|E+8^?r;mLPg z-a=nVBhrbpF8u6RBk~f-EWviBglo#)v}RRkwCSu}`STgTDk-6ZkkOM?dS5|naJ~vp zCi)E!Aexl-*9QU*m7oU<$6h5e`tG1_dpJonzWuev^Y`ESevTkT5f2Zb(Wc=;eG8h9 zl(u(8S_WDd4{Cb(8}*?+2ptuD-!>uL-G|2E0z``7eFWNCuAxshprd>Tq}{WqQM$n; zXfM^#SL%XU?Xgcl;8DAH%wHpVBe5N44-mgAT9WY$4Sn5?rLn@x8wujDA9`1-`Hm6b z3a8|7h{=)!FTaz9<-NEmkAJ@Bnv(WCX1SvAER`(HL|%cKKCI4t%P|ld@{Ojq$B{VQ zcd#kx$i1BIyV;Z^k#WB6k)#jTXpb*Dl62`-GXxc3udTUSNuGsf175~U+wmk?%+&#M zoR6oys_8pt>v#D+j3jM_@zVs6q3u3)r#7IpAFX(EGqdEldflC$t^ zUhsR!PYK^1k2emXiPz3SegLgJXe**b8w!W(f#V3`WwIN1D=W~>x33v#IdgOmI$aeQjQPo;XHmyEgR3XKiaZm7 zi5=mJP%wrU*%ktKqbr)hV#%k~JP25UBuw3g zarIBw?Vw1SQ>$UV51NzCy|$(R(ZAspI}C&mDGJJXmt{X5wi^>}!+pD#;Zd8A__&Y6 zkeJ6t(oCYzlpoHCMxBz|bi>nO2fCpj7(wf5Pv0txM_oJA(Y>P4-9SYH{{h{(=^fkC zSHYOmt~a?Q3Pkp+@qr7fmwnP!ruY`ckYv)-_el)d5nK9C)|{nuP~=Ajo|=L#dG0eg zmi$DF9lq4GYvxzJf5wrgIJvLyd>rW>x2PlXm2Iaah0oQ%BLF9M^mT1T+H+^V^o?vq z9%{b(0jfg>b%f$;kFnxOdu)bpTPxCYjAcf&0j@W&^Tv-6Cyla?8V)nG50Fx+SsXLQ zVb2hO=)w>a?4w7SdzpIy(H4kD{d@vG=3W(i9KN*Sn{4q7Xia)@Q8Rpxwk8E5-J3D2 zUARN#=O36JZNP>f@||cKXCF4%J_^|+0x6XaH;)-NI>R;|2s1;Br=^&Cpa#p)q60k(FT{ZyPre1wH_zRBF$#nKMU;6p_dfqTL}5b=W9N z<{V$!c#`nQ>3>8s_4Vgx`eeQhCHJO1N6QUCp<%%bI>t?DhGfeasfqYgAR*%6nYQs0 zm_*+P!q2~lUt0AF{$Ky_y@pca4w+f|qQ-o=2BOCNhh|?@Jlc2QHs9~@WEa=8#J4p8 z!+F)GD0UGp6XDgXX&QS{sYA>hl_4>KCjm(Xo>f=ft_)!tr%4>OYX?LHZ^ke52MIHPH=?L_o11z_RVNV zewwjwD>9G4RUtpW?_o{Ae!dcr)}oqVM~z0VUjc~+zRlw@N1=ZMv4tUqn|qo^*=$xI zK41v*$cfJ06P;N=yaPl9|L()S4Q6uNT|xC`5MHWFy6drhd=ym`Te9hnNmv&{gh=rcS^K@P04@GIu}SSYxE^5 z=0_MJW2BAc4a6iMko81-Xont)FD>Ev7GG@#(lc&JD>jtTwM?@$5M9eOrIjzEBk9d; z{p2%ON1~8NUjG1mWWlzso{YquKSpQ-LfFMYv9vUl6fv3dVxC}k+E6th3>u=Rd7N#+ zINH^2WU+>URA_4faTy3O_e+*9apNlh&O3D3!JFcBSC?jx}EPp4N(si7dhdm%{S(IF5D=KsChj)nU z8@x)k&gLC+N-Xrfkw|*GeGthjxO5zN@a_Bo`U-8juM0| z&hK$s-Mm1coX^7r`|R(7eYJ?g_e2~Hw$>tkxF_O=AkiX@NX`D5*O6erm)(uTwf+to zA7vf8C*`r=7T-%WeytXdcfkL`%ZXr-uN?7x^R)P%?uq{?I8KW=c~8X2pv4#2oy4^< zYw@S=i9a1|e8)GWJ89YaG88{JJ9`ho+2HrSImlqf7h3%Jd*aUr>D^o;yl_v%h2V=? z#Kn6eE(V{}A_DhB1cF(8C(xxSUaNV`0_qN7m|vpzZRlSGzgis5OvJKI;X4|vPHhmGD(ia zl#-V8o-e8w88$c{DhR==??OjnMTqQ*%c!@Ak|D8o-I<}j4onx)C(d61Ao;NY2_ey& z@t-a4MP4Co=7Te&z_<3^ z)D*no)hIjI3KMNoDCv6Af$U(y`FmbH^Q0xy9IyiN@_hj9qy>y0BlYw02dI)m`#~bD zBqbe>A(pwQ-P;6YcnFuipzMl(mnF`Fr)2N+^FNR9o#;m%aBm%f3}xpgXgl!eN!v}s zLQ!K#!=WUvM+nck!KE6JRwZFI!gxRzzmA+V6(2D25G$FoG#8LV>8d2OLWSVPCf~5h zM@4!s%|QP|#{d|P4mo?Zod1p}AN2FTq7Wtzyw99{2>v;Zr4Zk4gl}CkaWuJtqi{SZ zBP_e<`y-hwC%L}o`jf&g^JD9)*%mK-pqhJJv8d*UQnW!n7}_r%qYFLR*K+`A!xhE) zMhqb9sLzz|(g4zd0nsTWl>uW?h^23bMs?kuP7gCMOG!C>08M2OJPO0~D`&P!@#9H& zS1UTk_eBb6)9S2>*Ykue4kLV@b~495ypd@ZiZ1!Cq>$+Y`dj5A`vbPTopb2}ZrFMi zBg(|wod(=g?1ZBL!!U2WL0qyEl7U}m{8IM!0rt7x^{uiH^Q8C0&*`~j_1B)X#9^#C z@G1su&SWlVJ z;&(Ta)6zo3*LnyUbRUN&8k5SfsnthGK9KI4K7^PfHl4hlKhM(NUS4Pg?emXU&oVTn&nC$UYtS+R|A07K#K5Z|DYB54w-@`Sks=gURp|(rsP{AV`@8{W&8GF>ApE4iSZ2ZGF-0~JEvCD@<`%Znz#q`Kl_@}kZ#~b;DTIP1P8{oOg z3oktYCgE5tV;s3f->*YSqA4Bcg~1!Fp0R1ZP8pP0Jd7b6NR-qY^2g^@r#0QwvF89 zK9@!#Di%dqjr=JM7M89;2I3|{^&JHj(*eZLdOycMVoIiR*|(^< z(bN|ZYd)G+21c{O_W%lYLW@L27)=W(IeH!~Z=}Mz z7^$%ATbj`H@IYVsaMJq0VT@c@`ZlmeQ#wt8fj~>}F2@(jr4MjQ{1VUYkgG-U@r4CS z8a)IJJaw&>Zbaw*vpNr_CZExBQC!Y*8y5}C}+H2JPeWEK~Z>YHIF>FyGo zkjlw&f4X0>0KfDfdqMKi<{-NO5it|;t?u5y8cl#k+pWcpup=6-_VlVe zo|5$*04L78Ycof97CnGH=JR-NK;aMfWxYEQS7NX)Zdc}~zj!$lrt)*C4)6 z`ubKo$OGJt{-1s0AlW3m-2)II$-<{yQ3yPF$!x#@3I?v^Md>cLGbNx|3)~Bmboq^3uQk;^$Q)rh^~qay24Euf%Db zd?zd|V!0Fp4F&pavhUDn(vKUH>}xWHh;Gspi$V+DEejU^r0p6$tw3|yE@H)(kt5SBfG`XfJIKi~6X zNjvw`G?&A|(jh<_V_jOvn}kr^Aq9UNbEO~IqwX)9q4sLp8xUe(DVBCYBM24Vj%4Tx zGmvk8fNUbdygKnMII^{^!V0FFH_At0l+Gq67ym7~NK zA`;Co*%-T+K?S4z#Kwv*In7p~moOv$x%hJkv*O3U$cldzwz4GHY62=|W!9lQsRmb* zz$#yG97$?E7u{8)rwJ}I{!W_wQ()}FzMkVrn|_Os4<6ntJAyqe?`p~^i@u8+xKQ#! z(S2w<`Uhih43`_M#j6W=fXTOLJZVqdzBk5`1gnUvsFd(HIyI#6TMhCH_li)Cv6lhE zycR9PBL#0d<}b!qP@={UPoNRdE<+X5uSvepcoNs|XcAxVlXfC(7K|Q z@_9^Z3cnk%NI6Y0m9Uht?%@i*R!f{_jSrH1%#zU4Wnmdz%}V8`aR`_8AE2?K_QocmKWlFxHz;`D$q8g6 zH?)thM<%hfUU0ECq_I1e=3EvWq2=re_qj8%kI*aHw?31M<`Ophu4a-r(%jc%B9X{t z-}s4SBl+c(N#uP(d>bc`xXe@MXz!-$A}vD--8LnhioxD$sV1I}2bR-^*E~T}mNlI>jK{;Ag=v)L|^~_&GX!0{d8n%%8qC zu<2uLD&-6xL%jlgSF%V8vcuPSGS0H!gkW)JW!PQfOPWlkc1)G>Zp?v{Pf(*9e}>Rg zF;mJrFh~DGgW7E6+c=r@cTet&ncIaITAdWYzv||mv_dRf+JF9}zA43PkxNBpeXVU!|D4 zMBfJwlI&&=pT&i2I)$u94w#BM`Pxh&@3z@Uc_UXmWqUm}_lts~LQW{?h;GY2)6sW) z3h5I47QD1X{0%z!HuMp^a$daRi+PBcTlGdlF2B2cq@x?f-2#=8ggF&WM$Mn&iV;^WEU7((=zIahg+OTita?h(@r9VbXLpD; z(5pyOsEm$-&d*N*ivA1!fgdCqPIE!8LB$JdrY0&X%E=j>(HZYlPi0RB}T+P0&`+ z>2pjoYRHuN8)TwI#&$F!6fVU;D%=6h@#?w>XCO-qBQfBcJb4P-I+-%^W$saG2e0qO zqxan^GIqq8<`m^$46>%t0iLja1r)s84N4Za07F0_65YXH(KiJ?xRg94>`!5P9gC{e zfR8YLrK9kONuC@oH)T`$!+4iSL=XloJiL~kN6n~sbRXlD_~6cL;A^qT0D)MhKvywqk7(xK}^)TRKBkSv38 zQk!k4O%R=}cy6vgZ!fa!My?@qY%x-ofG?3`2?S8J5J3`pN)F)1JGqmbV>-m9z|a_*o^v(C7<-b=&ztdskcLuA9dXuk=(&`&uYpD zqhTN>-*FTTl(R*+?vK=pooZmILCc;gv#I02e0SH1y|QHV@1`&hId82fK+%JEK#6Cm zXz!Awr_f&7U2*ye7E}ud^nuBm9zn`v(eWAPiTM5(05&{AQ^2y*;a1K6iB*xbm*@+-=G^W=S|U zpd1JC{IcNngdgU}V+v-8A}&OpR1%I!`(t(uuDvY@x5@O_!fsHoR5%}2{7>O)vOBi0 zo^bJ9=_aTuNUCci_0%`X7Y@{)B99X?;$zjBL}We720BStNPf`Z<*ck8= zBw?5KL(*ll8alrWG{QIojE&9hXT!Zk8=HGXh-t=Qw2d*rqXpevOz&q^4_fmt7$Jsv z1XD8#<*n|?epXsr8XGLv%2V3Ns8~HI4@OTj(t(zSQWcqKp%qeb&GlG3Yr*|zi_~}) zJd_+8pt92?T4i?6qs$ild(sa|kuMq1QQlTPuWS=6|4_|$cu#JGQ!FRjnL4ny*UF01 z@yssG7BB|C`jd_n#aV+f<=(fzNvn%u?|9!DPFf<}J5-d- z2Oyn2Lj8h>(vpR@h%^SNX>UBW#FJ(jUz{6)(J9&HwNK->TQCg8qNXQfYpN)VkVfxF zHHf_DSQBK{B6AS zG9=zV8^Qnu{y!sThXGeaGFV3#z~YjUR)|s+7PZGmw6M{ql0US-?|leq>0Ck#mJpm~ zPhBAR90#j&MR$HbUz(hEtSH-_I~ku--w$K`$i^*d^GmYpk@uau#jC}vi}>w1+>Kul z?0MGn0n~Ya*ZZLB@zixo;-xt1v9q$rLqAAu+p_z@zjSQ-&ow*ti9&XD=odP&@@G-- zJbREe6@NU>`uc0I5YzK#(fb9~zM1}73sqR%gZ&UbsX^IHkdU97iq~IY;T>Q55d^?L z?Ph0*qsFaZHB2)J4AX87Mw036X?RBY(LahUFR(Gg;!uDBFRZ&GEzMvbY>h4=qtJEU z_p)u9sj^KZ4O&MAk21WY*A^W)hLWdSOEC98FUGydx=F81wzMgJJ*dGMBk^xhdV}2{ z!~iw1H<2~2EYVYz2-8aZsFj%eQndoTWr5$&2&y=)S26Nc)|d?E#DfX?!_}Adhi8zY zVFKEZ!N-%5@!=Ki!wTwDe@gr(691@{NXNrTLy%ZrEisl7qmX!~TB1UU;YcLC3yC_Y z^I=M?i$q^agdLG6PhgS5yxG;~!B3wD*_SAMXPQA{EK2t)uGUKRdGXWdMZ7xxUrdaj zcVd>HMCIuF$jaBtsq;Hut#abXO*1~xGD@mt^phC`Ea=X!)iS&j>GyXN>39D`I<%Se z`@5O+`@5O+`@5O+lQW5lbS1I}E5W7uME*YpP(d%VPXB)%0>zS7Sl9nQ4}s#L39R$~ z>+{e+T6G%R?3Pz|rdb(c-$dLYzhas@iM2Bq?2?=cT!l;l6K7HXutjf!WFgz+X^JBi zq6V%4p)=T733kJkfejIE6i%?zBNS7s69^$vKMc$nKZ(7{SQ~LPi9N@=92T+3?8UmF zb#bdfl8}EEiEooxE4fEY&q?A$GJD(ge z^z7@O#Ky_2O*8#90|o+GN2w>uCh#HR)?^ko_*0ntK(oP-Z6UuiMl;Hp(l?Pd5}XZ^ z_tSasr?SVa{sQ-vrZvB(orRYw^sOHW4A7lvv!TJ3UDi@ec#SnpUJRZ4RcU49wdwxh}?+{6&Wh)}q&YTWEOZ=qo1A+X3LhJp<(o@#^cWanE`1uT>B3_;!#xz5|F(H{}A3NSAT_fg_S%(h()? zCdO?@StK1bRFvTy8nyp`SpPcf#_P`(S6*jf$~2U=MUV2E+z9SHn9k|Fh(zM@Y|%H9 zHY=`s=clg4>WuOh{jvyWAbDJf>3=|scmo<5fqvrUH(1}uaO~g!d%(dPm?*oubFsyf z91*k`*RKZ2yTe5u`nYkw*#8FWP@g8#&+Zw*@Ij}1QTt8S*^g=_SlWExOKNXBrY^=nTrR4QmB>GrD((HZIoI|2!0! zFxIg<#7GzG-S!5SjKmdMV6g#oVxz!fhT{gq2VI{Ea?X%W zHj9$y6IR#Kv3jQ$tFyOLmDRC&u^wJ*YvsXL@eI19pOI+JE28sFo)2|EfcU10Dm#&g zbwKC;fodrfk=rK5rn8Qwwz8QaavKQ<*)Ha$vjI8)wkR$VC(~K$NDTm6EW>S@*$os&ba-4qfMn*|*i9mt!IMzAqwf$&GRt+6nJW*+Td~JABSd`}N|PAX71)`$ z9hKYLV@S2d7uwtnY;G$Aa6MEj`yJ8feIXtSnN2Ro*iJ;%f@HvGk^^WjtChGZC6WiM-X_A{W)Tl+a~v=Oo2digVapbH`w>Kn?4T&m zWS#knEux*ux^|vSw4L1dYr+%~hV`=Gs$&0dO5z`r;B(9g1oXdTNjPsv6z{04rE@Vn z$3}F6wj|B_9tZn#$^~pjjb%Nr$a$A;*He}#p^_yZ=H zsnLKm8%w!r%ZH13xRWF2avn!^?3xjp?{}{*Lt_YQ3+tKIOoS>V{FdjzZ8oAZxoJKt|1BnL0j9C`6SPIGQuzEu%fwlOPQyvkFQ6< z7;=I+4>0=yn;0r$+-w9No}crso24vD#^ z&z|(H8?XjIK|JD}@5MKBnZlc15`WHRah=D11}s-IwiE2QjbpSoO{dw|Uwg~d@;ZDb zCJW}^`xUWGu#{#qmJ@v-k=zQ@3vc2O$#uZfCWja^kF|?>|JOi(TzyhLQx99!g&|ld ztb(sCehl-|%qv~De4PI3{`}G~wtxRka_J|&#i!0(>Hm*(xqINo->Q1Z&7W!3(;A(I zi3URJQ3z~HHXgIA>OO1a4YXYRE%6ojpYTn=RhK0d5@omi+I5=Q)Z4bmEp{Zq_aK~n zS~4A;2(12AU-DV0hoqq85o6}Fz^L3QC8%>E>a_NKjN+++3p1qc7Rwqxr0ht`%ww_*U$n&ssUrc|y!{-%$6a_?0cZ4o8xDzu;Ndlun+# z;2$vCG#^nS?@8rGD1zxFOc~9P4Ufr35U)2AtQgFm!Dt)tkJKuMvt2p0?(}Whv{JeU zMYso*eM%`F4gq8>Op-mah$2pyW__%Y;W6kBr0#aen5~{cG+o*76$ma8wK(l+F`C?J zRVmsy@FE|RbPVo7v&u{&?;{q}{@j#OjEPenG(E==M(;2Zu70fz((0O)jpff2w?ASr z-U(UwwNO50t-@#kD4V30#e@{VajGQ?w(zN@^nT*?k8zn3ibCkZ(fdYS8;M>6cX!Hm zgp243FZspxNa8u_pgya+sonjL5W9K=-|imbfmeA?y{};ytZ70=Ud53EBRT>pZ>#%c ztMINc$0 zbH&pOSbI5i(D-55V)g>ox`{UQs5bh?a_FXXvnXD`S|I#S1oGib^%|fdlcJSS@lq51 zsc{}76v#N>Y*l&=I6+F5gtx1*Qajsc_tc}a4Xou6lH-CkQk8AMTjn*py34_? z+M&e{_4-WIea_C#+1Pa(`@`;D_?T$2h(!m^gc+Z`?;{PQ7qSKDr+8)&gp1>3GD5qf z$s|AEh8tOM19xmn8=&iymX7G#NpvqBgK|~`4%fPyAo_Y`f+!ed2gNBkqMFJeJXkdg~Hg@O(p#kNGG%C27Z3Z#K*h7!ZC zl!pH=P#MZ3#%qt5q3EMK(K+Ipv0($07xd@h}D{27C(je(5Hr44rA*CgyAhxc&_n(0t zp}X59(IbbW;`n0r5a08q2+U#~1D1SAWx>0BtX$tJtXXWx=-d+1%nS0XxLj~BpcYZR zP|Aw+FuC?11MQe*ZKV>32T3`m)sKW&eHzPaDY{3erI+C8!2xqeS<~mm&snUeewh%p z?h6sIgoOub2gj)QzMvVHtoPutC9G9T%8^hm9ch@>Xq)s{f^X0{A@Fq=O`~beYuLt% ztg4(;^i?a^33*OsAbK+g9&pRlN>l>Cdn7IwcAe4iAu>e@Ue1F_qANibUS2L@7 zREW(p*=X}j7sgN7pgw6xm-k7>T+_DSfqGpb^buY{B86W^Tpq>revu{ohLTzVU#&{f zz+Z_IMiJZRBI8rmT1u7h+VXRejaS{tUyExivEs!-qLi*sNs|=FbK+PacwZ1Oxg&Og23SUI3ekqJ zGDP~|AUjK^gc=HJQI|_Ty#RzhDW)!kgNKh#i>#$!ONrOiTtb^o=HE@}p#*H6;CTX! zRKw_kSj>&$nHq5mzC9Nd#D@Q_Av|;tO&LL2(TQ5oomABGX0W%QEOM0)Ld8Wt1Wyu?%-{`f01dXJXSb z*1D7a`ZM@4?eL}KQc_uSSHHF)24*zKJ2cr(QFl2DA9EGvU~sXy3lccbP+tlx1P8`A z`=*`!4Bdmq5d6KXH(VFr0Pwy^qt{3{N^MuNM+1)^Aea!IckaN4jUyd29Sl^y}HBH0ObK_ejv$vDr4)xqB4t$+UW(Rds@+@bn9` zNg8|pzK9y+!=4?oMgL(+KZ{ASt7oh@DS{OWZb%gp**)%(d!KPCJlO=_`IMS@+z+tN zQjA2grvo3e=pm4R7Oto{4j|kSy(RfkGFF>kV2gI11fu0D;rkV^fhj@oWtww`9Im3i zReF7pP9Yiq`BJt5AKr)lt5m%F8hcxgUUY_Dv~0n3sW^bRFat0Xb{|WYY=yAd+la<_ zfMwbVztqKbu*;=UEu|*m{+xA(n&u`9)&RH$vtb4(up6lx0>V)npaQ3?%jlUE+?Tt% z>t3Cyt<~QJ{2;aV-C>PCD4MTi&722gQwzHS!eTSOlb=0blpfFupGV@LS_iJbHKx_H zMg~ZcC$Q0kMD7f^c6lwJzioF*q7F&V zv#EzEbUbmu1@vX#SS-7~Ddd&C=#4^UPWYV^OO!E1Uv$ z%-Bu#XhQW}q1#I+tUI{h;GNZy;>s{65@1a;&(OTi19Du>5?_D8nhyLi3(#v?tza|9 zab%(f#kITbD1D1cy5q8~uCw>BuVh)ZjU5imQ;`Frkk2*6ke%Xo7N}|N9er~jPc@RZ zigW~?2h9S^<>!}f8BU7u{I05{cn^e~q zfrCxSb=?~R!tA%xlo4FpAXa|KnkQ$T|zm@Qby+! zLubn9NRaIbcxW-r1g6y%VpaEImbLJL48G_K5i1coM1*SM-Bqkb?3G0XWUy&Gs<G=2HbAv7No`P_lt}j#LnXy&wj;b{~J5+Lo9b@!e`D59KcqCswnE z>@ydj_kG{+OFC*+FKU-6$-AIaZd!d4Y@qr(&R*zUn8DzG3qJODrUAvm4A@)JiqL*V zSr&RKN9SW~_@Q_*oAqkGj2Kyc^`RgiW9WcwMhl80zQ|@{{WN4vZzcl12H)!Ik)Y{G znOzp{4IcpXgG37QOG;#a7tjN=u-IA|g%9HoZuzlq4@F2|qym_v_cJg>#`dHpgW>HpfL&k|8UZgjv<4V9Pa|Vg%yT01Ky7k8v~ch6H~Q zW=|x5ab*xDHpUK++SuCHLotXPi9^@CixGwM05N;Hkm zAec3!w?i_(fTIsJ@KbF3hJ}s#4bps@dduz;S3HF}n>U|EOvs6sZ|S89Ey?gqM@z)z zs=80rwtWpblb;orRwy2uw zJ`JvwNWIlF9IalJ8i4Dyyr`{0{PG>^Wuw>9o>U%E)oH?TZG^HnC*@$iEsD+>e>c+|Xr?2O>x18Ra30baN^(0uvvAUl+mp&;IxBTr#V&_E}Z0F7TE1N1s#BHZ4vl- z0Kb@%%Q~}xq9B+3)+8n69(K%(Yany*&eM7=ln#hJ7jR28nf)Lv>$D?SRLl3pgmtV> z=dkY!w#UGl>fhDMyt{?`+5fg!%!z?wT3RTAf6o*odSMZF`dfKT|7I$>U^ zMM&M1kYUC!8sMfp(PPC^KbG&~vEu>I@Hsx}w9XBG};Q2arB<%clm~2*bS^t$A+{2GNA6H*1i7{Hk<0h zNtDA;vZ@b<#8?}^ph2ixHJmSX-xc5>i_;3>uns(pWp<@VckV_OG1QXjd20ju4L-y3 z7BSY67fdPk3|a{%4NCSSVBR7t8Q}uLhkpda_5~!Twv@UTePtbv*F(oB)Hnf0-KGm|E@atOo$ zL?v#Cr_)dMi?TvE6oJ-CTe>BC*b~}S^CvP8YVbCY&FB-!3q{vF7Stk6R)^z^mls&( z4ayr2(O>!&)+Qu0M4MidHoXNjy|ql~r^UN@+VlqOcZ-dAnBMo@G`;_*HoZ}1_3Hl8 zYSX({N!W|&?Uc`2j$BlIdh>B@Ag4Dm;3(L+7~dt&c9!rNyOJN8tx z2~`r0#c66l{#(dFi+4WFp3smg2QAv2<4?&8#E2~{_>qCA4z^MNznowQexfM7DFJCzOs3K}daN8*B=H5VZ?+>Dkn`ME640yW_)e z5e!tqE#Z`x((RgrLj{h1X8)@o+=*gAA!}ZZ(n-OZP~_ zK!J?LYBpK6l-1InH9=PDCVin$2Wokufr}&gJ4_5HaolGV7KjkUnW7B$I;2w*B;Rz=>lmno&oI& zp&nJ3j>koq2z58=&lh3y0dxe1=2@;N$1s@8lRDTNWE%Wy$gCh11;)SM7KMq zq@9-o_TPU@yr^7AFQ=;t@vd(3*|R*h2I_)+AZc)Y!3c7hAu2n zJd>|PUxm*L-T%uL)Qz&ciCCiw7HK8>I6BBtzNPf~;?acB?Rg3-fW z)EGdJsB0{iY!L1CvX(r&mKd}b()B~)#l0-iI@p|ePTDn@J)KXWk(zc*n6<)b%m6Y1 z>n57gFj(xCRc_4M8RACr98qT<3p37_IMHPvYvy;huC!L__`%4Ljl`IJuus}8UfjnL z!}}@fab^Fn=EO1_{=LRXXy$8djgnfOItA11EUm(&Qn#~TG3(IK!DWT*t3X9;8poRc zr)uAO^RLx*l+{+0?ExqdXR3G}xdQArp{TCDV)nea5-FDNMB0AV)=BeN;@?Elh*7Ho zrE}|al7FMjM{j7#-RX4i4%VqB^4&hJa@_imF-ge`TqjE}17xq_ni2xZ+*v$9T$o$r z18$P)sD*Ee47IcuCDChu42`b`7|dy#RWzky0mW#_Do^>)u|PsplT~8C0hSa5XZp}I zz=^9GB8g20FgxMm@B#K}zrN~`{iRrHO!;}*85IBB3A@O78%duev(-vlQ!GT}>&yV2 z>kHtmBlu+GTPjR{y|Shs1BaS5X=XEgo|Dg+6XW>u~t`r6~P@^=Ht7{E@xH zlUIsGKSJ;5`sX>JKd~*0ImGFMtWE75V<9N0@Dp_ov5j)mu+gT0%SeRVx{`DVmlZIm zuMnpXvGy{%l=KlWMgE@!k_$zkP0n3|2tUjQGNX9zFzd>G6mt%S1MnNwq;* z{I{Al7j@*b4#OPi2@S6t=48-UHS}$YA_pfp9}CA3jPesX%85tV!%gMkRjJ5>gkQEB z3(Ya~W7M*oACHg=_4K7VzaM3T7!P_z^f}HP{-2l2HEGDj?BndKMhAhbRtDxs25pbxy(E+yOD@6r1=j@!_|ZssruG1k z;i2-c0G|*lkO5`wSOU#N0 zD&oCMXx(iVEibX=;^ZafKjJ5-4FH=mFT#G1Oh(s^!aqtb?Wq)!`H^&qePJ(XBDPr? z;b_U1m}Kd5_=>>j_xUYtU@K>qMs%5hB@IH z36*5jWD4bdj)WZ+c1P}|*x3C4&~>`+ShN2*O^AfO(>Dn>nAgi5*Yun!_i%Vf zB9+FTU^Q*v1;v1?>?zZ`fC^LQPBehUY50Wr@+u2yQT{lFZCX7DIzpOq$Y$h|&F;-2X543U%dJg*`0kMT7Okqf}P5f!H!D$kH}3UrJ;Z=AHn-_Y;4 zVZN-soQ0Eas#%@3!8Gex5MxM&vt9YOoT}qPt7Lvo(i(tOqN|GhTbO(b(H?MQDD{gJ z*~1`sv&VPCQ&T)?Od6>s=B4G|A?bi)HmKzgbPbx{t*q*tSP22|G%%yE=7m;S3uH!i z@OKiVTC{jS(C{)K{L;)oz}oq;2WHdtGTgNwj9?uqYQRHX`JlVBa^+2sZmm8wVg?g; zPjF2&1sRfe;7Zy(^2NT5Qa0PQP|T(^Bg5flb^wgR-Q!kNabF_!8tcJUi0`ifYm%(u z)HT-iX}h|L#OP)Y z1wsWU7rg9I5(JY~63My`qDPgDz4NH(@h9tL8c9XSbckv*KYCwnOsj2xUfWNPcxzKO z5HGK3f|NDX>eQHc?bb?*r@EHFv*hxJBJ4T~>uy%hxXuhPt7l;#pwi`&e)m*qK_p!P zK(b}P6qZFmK|)Np4qe?laiZWlEI#t%#NF#qx0)Fzy5C@t^}~RG{^h3Cw;*XWgo%V3 ztVIWarW>H?p0+`c6>gd(`E%`3%a!*#-OQtwXuXSw@3Q!@NiVJw$ju9v-EMIZucQE%QoH7oV1U%+3{J&@XMh9C@BJU*ve!W|64N6R-}=sL^Kibzkec=kzA5>PSCiJv2~q z;x|qG78DRap66F=%J`M~=`n^v4Iq6-i=8*Cz&n4Gv|jN-`4zf zCaj`^;C8&dR_3KW6U)SVw^$=?J}j1_5_V2(zXeV3qa#Jo9oBQqCy=$;`@SJ%N7qSZ zt)eW}lK8Vc1U&2s`V9jxc!EZ0SCnRdTs!=%c{adq3M)SLqms52Md0Q)Vx1)O_mbZi z6K}KNq0zGDXQdSBE^XP+RG0V!DU$5JyiE78WN8D?REOZ=0JOdCA#(9j*49ghG}iv8 z*7KDkWY0TK8u6E&!;s)t943^+pC+NhP7-;@4kwD~cc66ivFw<$q5QCV$EsNl82`uw z!#-`E+S{G7L7f12>xZsOpj52@2ICai-n$KwzG1!dTm|L&dRyZm)3&=`&a%6wrJ6FX z;4>6=XvMF99O~fFs~UXl)(WK!ucU}pwE#*s2r9cDw~)Sc8ulKX#nX2IHVTT``c9zh zIZsrN;o_aUY#_fpOzgYMI<+eR1EiUJtfO8_@?=-%nS2O+0%t`2&!OeqlJ(Ctq@?zdG1)l8pwuBingKf(5jL02cF=&F$LN#tjl^ zg+XLJ!D72SJlmD7CqRBIwi+V)tn=5!ftXE)^^~Gv4miN+Hqz9r2UMXS`7>;%fmo z`Tg`MfWXxg-~)6c4gzk8&xxxzWf(P)F!=W-zGNsXlqlY~{(cc~OH;<_z)XW?Rpu+OMTM`vbCS~_Ouho0 zu0oo7TyKQodZR~g%|nc$_IO{)yACEV5&eujO!;&Z(fzVL*7%e>bm@EQ1;`}&RCR|` zNPT*5JJz(u9nyoQ^z~w~k;gZANG+!0@GWfc7l|}d2MQn!ZdHqivX!ELEgoiEwGMl> zc(xXA$GVCo0X#S)xHU)=;(Ijqs*1oO4FlaNzN*Ea3+-=FFDv^m!-POd+*2uKzG+Fg zi;8>J=B?Rc@sHZPRYaC%>Rq-I^s!iRZ6o>0J#1KTv#7X=R^n~Nn_^LI9$8z;R?1I{ zy|sCly4B!FRMh56S#7b@k3Y<|ii>{y)oxwYoBK->59zete`mtJDj7zl2F*aVpLb*W zT)gX#QD$$ZQGV;s+nL^UV57;ayuA~r{rUX<4G96=mONM9jLq+v4-Gj85fl8q?{{4xrltLmij!oa=&{P7zcWrmL?GTAVQCwFBaQFm4DtZh7 z{6u*j-UZT%#69gHyZp%UV;*dv8)080qlJe>n|W75HDXYaT^7LV5Dt!iPC0V!g7 zUEcJAsCmsrgCbTt^7~i~%sm0$;>qp~#09b`eHmZ~v}C)?Y>1s?QLH#!mp5Z?iraO0 zTjz^lC&@OTb%(f=EYJYU5yHAiJPp8;enP^A8;jPz9iw5D`3=zR3^arrID1!3Q==djdK&%&^7{gKN0TG*XlEPy!Qs=A*qSCH1c}kT z6Hm5>>{iD}Pd}%IkN&4Lmrb}7#yqoo8a578dwfa?z0p4-c)`m7yjh=B8a5tSdm5cn zz8<(P6}lV4VWI(3O`SrLU$^^A zHK8vM$=KG^!}jRgDXpp|5rzdT=wer&%!yM`2&6^x zt{w33tGM>{kQnI`KC!K5-EBF16E1qlaNOOCRg5g8R7wzZKR^`$0`q2&;%hO zG#Fz;2vJM6MuZB*=}_KGoC)C$aW9zHlFp}UH|FiTB_5W*AEYq?UcTP{sKy7#y@(YX zQCVXKq}cieFu??LPCh^QaJJB>E0+aZol`4NVk#crv78=3E( z^CV_2vH%Jj3-sL_@*J=xDq?`dGS8#8pr#IMAy4*lOaMg#1rI=0!LWNoeZn0AENv}T zgz(OOQUGKcm@kfp@IlUpY<&lLM*vdLP}xinZ&CZrkn-ehh=~PO7*@? z_Jr~9;RBJ3pe&xK{`An(BX6J~sKPPCU~wBPo=oDJ;Y!inKzx?b?pJ$qxMaxB&7DoCk8d|e&ksJ>Re?)@RR=2sZ!N5i?krofSa>U|vYu>?YLb)(f z1h(PfPZ8n9n3E%Em0&`-$n97GVO~AOwWS$dnm{%Jay~E=Z9}?IwNg@9mUtXenu+QQ zXsWq94N0Hs@0RCkhyT&?d_$k#w>;3uy0QOqHH|E}Dn!AsC{BZTD1tY3F8bR=h(l%f zFG7`O7SQcUT)f88nU7HACcPOTWUIjXV1BwPn=mzXxd20@iom3Q5yj1$zJ$2cElp(<~KMdYG3TL)!_cU2DvY#qZJwdnHXSR70*r;1hc)%m$fSaR z3()gAl2Gz3MLk5O8tOr)my#J_Gay-Wn&1q&46|z{Ul?1S)G{+l1rkxeJueyo?<`Vn zF?qik^v|@q5Ql6CCz*NP589avG{U)ncNIt(XB+jZT^1YLn*^LiN@h*1E^RzT?i6pQXFn zQ(hg?g}PVRo#1+BtG7tsRDyay^SHozAU7#lY7dw*VYFR3^Tz!7I5DU*UnyFm%|m!!HyN_kbrov95R(Pfl)hd#T~oi}Yw zxusnI=j&==MWt%C*W{R}Ov$xJMW=`O<9u*a@%BU9DPcqI(tr)|U=QB3J=LJ^(mNhO zJugx{kK-TdN#MG^PuCZ(_TWu|t7fOfjlx!nSU6sM+=F*w{Y6m^-m-HMlzBCM7i`c* z|F40n@eT0gBcHlj^Dputo_?EgfwZxS2#f;R+a>x$@t1u-P{hh8-enxHEEWGF(1^MP z%%Bu9`X44f5Q=VpkujEiifD}?)l>?1d;g=*1y(iY&*2~wYSeZ76dG^fUwE&-I$Xr` zM;aCqLivH8#x*oDloeNb?}gpXNIaZ zkvH6j-Lwl!G~dAc?iN0MxShY;QXtHIM2D}2V%YF_0?i;R;;G)B+^n zZfnUf~TCrayln zC;^$WhB>f)f+Dm#Dt@ro*B?icx`T6C58yZ11I$9-BU_u?2hp}W%78?xy0JH zw#@Ff2tJr*;f*7{jg`~z75%IZSdSl;uR6Bop9V9ElbvZz)a+QX-oktJ8iG74+fo*z z5mdLaDH4>8mEf>jf^R|tD&AD$M(Z|kTYg!jdSO`ef%j)?)4?v=9pb2ruWJTxfv_n^y zcMKHg9o)`3AS4wJ?}9LxxJ12YgQrpTr;@RCw0nF)rnU4TIF;(hOyL~HKXKyBVNmzF zF8ELkJlDq{Hr)=Cmf^=8)43Ohp%xZpWW!1dDTX2$`j(!o9uFnjJu=0vBK&K~5|hEO z9*J_rs0OoJ_If>y9yVe)JuzcTe$%j z^y(2aJEk6nk-cpHK?EzQ$R}az%}Kw?7;j4SzR8c@IBbIjbGHLD(#91^YWai7L*Qs9 z5IU(eG@4fj{B%A*)6!UGKV(h21=UJJ@*pbkwOln{I643e;wpd>g7Qh43s(JKV?{)F5KCP}{BMwA zCe6wHNbx$7Dv=_ZumXDKX53b@6K1ufI_WY1OC%=Uha`Qd%IJNf>`@5Tv&E)SJe++k zPL1M?*B>Wno*AA(kBUybGARm zJNvYF;Q`v^Gx7kPGHlZ$1jh!vAx3q-oWLi!k+VUf$y0oi-Kr{EoFvikPPH-FiuwtC7^UwM_Np6J_ zCZwqaNKoUD^P`%#4hq@^D`d=YF;hw8O{*P0`Z#uj+k=B7^*F9DPDeX(Cx<|{0XO=_ zjo~!b{4%o_{=tu_NK-aS=8PDDL8#Rol_?8?4|O}^;Nc-4BV1=Er{aOASU8G7*q0n; zQO`hP?KFP5^Quf4ZvN5x|H|@e5&_LQK%{2CYfl6k-#<=(mWJ)G( zf9Z+S6Q?I1Cq4RTyW+u={X}>|vC}lhjzCq&3Svn_1BPf16zr^1iwHR+!RtO-*ki7hZL)`;##xo%CPBeOvuj7v{68m1{gE}`}G#a}mlQHY9_|p4{+xXkU z(fAUpm@kJC(>h5g2|SzkS}3k1@OHe;LeYFYZ^?gOAo`ByakV~NFxoJ7ix@PX58?I& zIcLXn2jhQ!B)YxC=XGxK2D%aN_xw5>sBxn=OII`c5{weK(S!qq)P@h8+e%;0`ST?n zZuD<52kmPIhP2P%s@`O14CVzl;cZ<4HdFS?){eV@-!1B-s z1<&v@fTw*&soxD?^*^0FgRJlsPfg{m`LEl>jH%$62OSk9Q+XS+Sv?0ZF-Kle^U3LF zK9LZsXJc0^EjR`;)UtZ!Op!mHsrUigkZSjMNIG8fGq@FNe8yBUavJnMavAQe)yVC> zT{A6f3oYyVKt7dfP1ybd5P^Ii=KnIlnt!u3+wU3KH8XB~wbC03EgKE)In)@%diI~* zOf6o!2Y>;gE8r=y)RjDm6;j|LS~Y%?IojZPbGI6^3J=z`9ncN>v#J4Eln}oU9icN6X{J{i5WUv5 z%76%BduO&fZL2AxHO7FF30ldUFg5Zd{ZUoWlp)Dkd^wD}SD^_C$LR_F0QyGgX0hhX zppvTq{|QNv)pZk>-Jel^=ydDxg-RTJ(718zxMGJlISA+v!C#0N>*Otl=h@XVJ3BTd z2#7z$WRKpJRL9=;;RZ>*1KqwKK}0d-N6Oeo89QahR@0ip3CB*NcE}e@YyL>MPS22C z;lSa4QjC3vw_vI$bMofx-sweM7@M6M^WfW~4J;*wI3%+tw!Yaj^Z*bP^3|BP_J{{l zd2`3-(3XQRBD@qpiuo{lp2rXTh5%`26(LFSI6|Nqu6V{o9Ja5Y4hogjFx-E{8Sz`sy^8$LouA)fJim@B}fCT@X7a!jm)0UL+$o7v_BrOB;I=g zZk%et0pMh^vDYu2N&Wu5cv05qlgX<^r!*e!{6^W7_W~}UcUj@I&oiipYK(kqG!z!M zsxc9GxDOnfP=Y7m&iYC?a1}mTeRUxTr2?n40<`?76*k}ZfdHN5tQrUu8yq?e7@-y< zVIYhct!i7ze-8=*W)Kuu)!YAvprHM&9$1+C^Wjzu(O@`86hmDmrOWJ`HUDIyk7BKrZ6x(PwevCuBHIN$ozKKB7sSo6cf|!4BsB4Bg(;nfj5W#yH4eh@ z*zISIK7$qQ>ww%pKYgbuy#&qLJQg^U(sZU>(_np;L8%xeC>Md$3Mk6pY7o9|i{u?c zMQ2lb7FFuDtPttxe4-PQcGH?e2?r$NNt06l0w@HT)@(`0GawNcvlZTp*@3F>M`day zAM}^TrH4Ff+#Y{!h$m5iH|h8GDj!2 zOObz#PS66u>3o(g-ZEk{_;iWonb_b66BZvvWNBvd0>ziZLW<<%iiBiFjwYA6=eD5$@~bf z*dZ0QP>I|Nr~T#dC;{xmU5h=wRKFdvtG|>yUyA@I>Yu32ow8MpdK?ed+ztjvOtj6y z=s=1s{v`Ua_941HH z5m_cTg=O1_AdD-9tAhIpf*6s>Pse0?2G+60U)c6*iki}nm*c~ z#+<;v_mQt+N`Rv1cVdFdL;T?(gI>$O74NCMDVfv|S(1%MZq=y~fv(6?`3Y*U2Q>&p z)Ee9iV8Bdx298mUGp3=zs8sxWUxP`M;0ajqjX3cR4{5N9kkgcb`)o>u0vC6K%~@3- zy1DtEb*E+8Jg@m6V^zNBF%z=22AXyYB2V5#*h#PD&TP151~-zf?{Us z&XcEp<$#;h&y^xZ1=YvM1y#= z{4;f-L5M63ZT*kf)pME#p%^-whx+{X+izn0Y~HIy7TSof2j|B56=$rTH|xMNZQweB zsI?fD*fbkr{97Bu`Ptkh?XMoc<8EqLh#@hbPO2({pgsr`7wIU)gf2 zXJ}oU=Meyhu_#A0nakt#Mn}LI-|au9=GvnVC4H+D8K{yE=JF3((6=y)@Vv<}CZBad zG^U35NA5IYpuj01X^lt}{1LsTr{N#*`jh~B^o1mt&G_a}O-BXqqh~+n%|0o!zozU5 z=JD^UeZ7OeJ|nZ=rR-bt?)zG1ACcKAWjp3qeqE#TZz#LjM?5M7513h4NuX=>?9qFZ zYC|27a$op}KM_W``tEue_7qmnXoN<%Vsn+01Bvc_BhGxp?Q%A|e#|4}!_)=(!}O1N z6PdDc0dFEFOFAG^Pgz};uT2f4=%V$C%=3CsTUY;Dx(=cVOp_11FO!_$$ZBC+ z#9x>7q%GoY<-_NTpoU1F?O6oHP2PeB*tg) z#xiN+C%lRHC<|g7D)40%E=K8Lz!Kh6K0L96_m>X~mgo)TEz!`4s%<8o`b7T}bq|pR zQDZy#aN!f4*9etqkd0AHt_6;!?MkusQ=TGAbX%&|8HWeSe%aiQ5{}%O8Vs(imNoid zQayNr{)1}Kvu?_)+TN`4YFXt|18vd!BUX&H7%k;@zvhwMk{!C zE|!VGD|jpK=Pxf46Ibxo-q(khi3NBas<+i-8I3B|52}?mSLxNMA>?TfUicOhD$%g7 zFRfnS%2d$Qe8RQGv3h}@mJ0vRc^jU+RCM{gY7pvD5%)O{_cr_VQZXH`9rcfTp;oxK zN62Tw5j0CUf@bG?n{B*QY)5%Hy0XuCGx^}RQir{6D|t7WGHxXl+fb))uY|0k>!;$Y zmHY)siyZC*0=4p~(7PK5k1i!i{xCrNh*n1Q_=5MAU%mQ;jtA~9xJ{-!@Fj0zT-cRL zUHbz11oVJ34O>vEwMhJux0fy0$d#e%_7!SjbOUR2fox$R&5QW@OFlq;d+kdd2b!$n z&&ZTFSLsl}2eN9O(H$ zd0@gA(dAp7(j@YoyA`GB5Ieh#bF~h{x`Wflh*RJ3;3%~DN@bfbRkb;8Pi2#Rs~W_xe*_gu8?2uto$;!>dQ|mzs#!o@PkCFkS_ANp57Yc6%xNWtb{*!#~VLfp%v-uQX#YE~E zexQY3w0rm%%VT5WMp^DJJ@PDH?F5+Ozom2?^MC2@r|RuIQ~l+?@Vo_OF5>Suz3dMC z_n7{B2ERA)cMX3V@we~EoTKM>A$Lwklt0(=bb7D(_k~_| z&!<&+*OuO`czxO3ig4t80?BLnzyEXoZ2{*u|MA1W{q8?B_BY=+|K|-o|Lxt1RrvEZ zKH@v=`DuL+#rSQ4{1sd8R)lV=@#n0W@PF|A5<1XZuivi!I*tFE4bo_CY`I&p9>25k z_c8u7oG}=_KXtd_$&$Mjrn7e|iZ0x(*pGK_9{q;kkIpjCX%)>&d4O~CYxgQ<|2O|8 z{BM?DgYRC!UwGBuKdZm|%jffx@B8Rqmh)EZEkEwHoLax|xi;soaTOJ<9;v7pjXwka z`s&a0{_p;*)$#-IyyKr06+wvC(rz5i0nbCL1R|jAlPW4c#nr@4=;e=py`tiDd__e7 zerdY(|Gw?a#?_k}>*FiB#`;8%lY@#6TCwkP8Yn&!n6qnFIx!mzetPKP&yN3Q-8i`tcoFJu7OYkJLw;T_gP) z>JZvDDF0PRtze`IG?{@zZ@7}4UcR)I|U%3SR_GuYi zYkW{^zm^_bBi&n(wMM$Po)I+AJAU6n4|H+U<0u_}Z5W$;!sp+@>#eM(bnqT>j0hcw4BhWv zvl05*`_)MQR!?tGBmGq!sKaZdf1j_fy`Jv$;{9_vQ1q_x!CoD0Vr!&l9nmTZp+LO& z&s$IG$p6*W`3FZ;U2*&*FH=H7WCJKM1$kQ3q*PgcnLsN(6cq$?rFHnBu$u^hKuDGZ z6eO@)QA=&rpy>L$tESWVV_>JXgt1KBc2acEv8yr;GPW)bRa#M3TB}ecJ?Eb9t&>~N zAN%q?=huDr*SqiS+ZWyU9iE@9yk;PuOms6ptjQ7{sG!`{>QL|S;ChdzuhFUOCa*M= zxzdXyB2LjVB_<%r-Fy)_?TGN>6K%4cC?70*OI)Q+Gs&%W5o^zPh>gsIo}Y*`!i#Yu zpPe%CMo<+Dke4RcNfD>_zCOzvRJ5otTFq~UUj^?LQ8^_8O>4dQGR*L8;I>9*FfV3J ze2m6frWH@uq$XVDjZ7?nTNZBiu$LQNO!+s}K7d<0!ezdv;qK54bsGC}%A%ocv9^Kt zfoq|ODQmbnRB%#D2W6C0}=jN!#6sFnM;Dq8nrtD`)T0G zZsqr*K>Q{aWA8ts{1$Mz){{6S-&x6odl6b<4HRMic16T?kap(ZbOihYN)sq}MeVC` z#CL;djw>I5CgOkiB1cTYQUx(l%Y^$36lo}uqF~t#?ne;;n?G9KIFP?)`Euo94MT^( zBj5q}`^*zkqAn0~g99076{{6=sg|aIhg+0q!7l+XfG1I++2HZD1LMq3eL9cF=n|;2?Z`_Z6R?@N z97obTPV{vTXoYdji1(p6Syl|ez>D3K&GXK8=kfC}TE2PCU z8}%${PYTsz09RRk-1uuO}sC%pSNbH=HMV^B5xv4ZXT*!{Sf@1!xw|+9p1oPis3hE`W-06T9anNX5;43 zEYne>?NqiQ+)*doea0>E7}N!*ZRCbWRAC3sF)i0a{DdzR52jgI$QUR7_?-QQak(&E(LZGE!cxTLsN`N* z>MT`;fY&(u3~;^xHU73$Mk`NHy`vZlhrr?E!Dl)A2jCHh&jw%U@CD!@!+D_D5;Z{K zI}WSBW8l6y4x%=2a_l!UmzvAeYK5N*``f`|mn(lsDnthQqfn$5tAgL-ZluQs!Z_$g zlkR0+Nxb7Mqy7Z@&}xk%GndE#@VJ~?SeBSiqQlJj2kagloS>H6K*?lpL(;U2x?9M}@r@9EGfwFLP|o{=#nTCEX&i6dSM9>YTLG9=gp zPCro~ugVqKX5;MA{W-d!2f)+I6qF6p?Gp(o{A$hE&s8k)B6F$I-2Y0dd>{B8r_&t( zf7P*n5Aj1W^*0Mq{_|t-L~@8G=5HU3d<8|}eC6K(FXs|Vf%@8Q)v2Ny{AGvNGM5^S z@NY>)GPy7Vg>@m<;2QjJJCFFdv%$`wcU>pD0#}5(>;h2h5ZhvGq%Fs zpQMIonQJ;8f1Pl6)N%MZ93uP%LXlz}J@g3dA9U=W1wY_iMeR1+qfyQ%_=CjfHvXPp;8ji&EC-Jv zPQ;`kS_OWC6Muavx4-o28YtM#$Zc@&9eyu(*a`HQ;U0~3n&4U3$DJmSw>e9VQX;Ae zKSbhJpeTUz7mh~$f&@dH1joQb4*w70gwI!hOsG`Bqel{FW6Be9#VIlpio&_Nk5NMB zfro08%a18VCNh`4;@%vZ2K)TkYWFMM&}HDZ^Wd^4L32zXzCd%@axr+9!8He|P=bUl>Jh;96mDG8Se$QN* zASVUo{wM!0+sJ+>B4OQs8BKG*1oEiLY2)``?@v_wov{DNCYYrBUhos(@hQsr(JLMQ zr92f%iMpWB^)pd5bEye(u0_u`oaYIrK$8%sfH?PR9tv!H%y4&t&oATrlGx`b^hK`J z4K>0c4t@oAJ9rlSB=}a#>lMgTJR&>5bKsvTrXI_uO8v8JtkUfZtl%HGQ5SA;+LKTp z_zs7^hCrF6>VLIv=xy+zQNay3cYFdK!&0mQ`KjM3uG7YvTdR)cT>DZ(vBS#mlI1$f zXz=t4%J-eE{5>8KSH54T zep-zJ`oIu;b?S1<+>>om$;MZE9kHNcb{Muse|8JoQ zGMt}+6RZsZVhCI*&E>53pBEf3X!AW)T{e{(+zzIUI4#*IL2QY_eyD-u-wgK z*@rg%Hgh@4<((QD2m6Tp7Mx`R?5BZ;0*$jBd_H*B_my{`4H^5+R=us@{FR4E zz-2IU69NS%bbm7Vo#2Gkusx@wzutM5CiPbH>v!MmxIa~?ZrPvy9pWpT+vH%GZHV*hHOgQ&3 zml};Y1??7|V8tv)@mo05JNzZ^z~OI$F9f&a`y=LZU^yJvr6}l^us_K5rvKZjs~C!^ z9#BR6&U^5GIeeVq<&;Nad+wM5o>@2Wx*!10g0sDjzd2Au)(>=82p$8E;RqUSAjiH9 zJO`eHeW#6olg79Fj-i}i+9n5u?JW0M2b461K#zmx9sB3N3l8569!7y=$tBWfIL|Bg zOJLh(udzbfEI&sliWaq}LkN^}F16kV?*b2Cf8281!?g$Y6?ht)$G^%D{zGaa={SsJ zE(I#!B=9OGoO59xbL=OB#~nV?a@?v(YT5){4MiSD00k`t?{j)}6Zp#xZ)Gk8&EiW^ zUn`KdfYS;ErKsw=4Cfo&gsMKMC8D$qbiF!!0lw36EatHAp*`SvhxdV#d|(@nN6drS==R zCd~K?!y)82@Oz3(ARj!5K>R8z!_$sEzoXFbjKf!hXB~b^CHcl7=O}&(hy2OwQXS3S zJ*kRS-sFm9%R5%DYl}yl8rC(m^aiWEtap0Tq>0h?zF zZHM>cqT$$!-c0tdmAy}|^UfF~j~)2MRo$ugHhJSKvs#CQZP$&db2`28_A=bwnw^_! zU^>h`reL?3lGKx(-i2jkZ@Sl|4t07LmD#5Ws_IhJn|Ys~CNNb#xh}O>_U+>cGwV_h z%f7v7Ka2fk-#(F1RiCQf;?)ff)IF$AE#BfyFXrvTygfZMRrwcVv_W}Jpr+JETfA|_ WrHfM432*w~&5P9J$y7ta8}nb9qLrWk delta 78642 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 diff --git a/SYSTEM/system/deshab64/desktop/textures/startMenuLogo.rgba b/SYSTEM/system/deshab64/desktop/textures/startMenuLogo.rgba new file mode 100644 index 0000000000000000000000000000000000000000..449d0d654d477bcb79b90318397b1a1f985e2102 GIT binary patch literal 181440 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 b0t^BS0t^BS0t^BS0t^BS0t^CAECT-r(75n@ literal 0 HcmV?d00001 diff --git a/build.ps1 b/build.ps1 index 2f10a9a..23ea8b5 100644 --- a/build.ps1 +++ b/build.ps1 @@ -759,6 +759,40 @@ if (Test-Path $PanicLogoPng) { } else { Write-Host '[build] WARNING: ohMyLogo.png not found (panic screen keeps embedded data)' } + +# Generate desktop textures (PNG/webP -> raw RGBA for the desktop material pack) +$GenTex = Join-Path $Root 'CODE\desktop\gen_textures.py' +if (Test-Path $GenTex) { + $TexSrc = Join-Path $Root 'SYSTEM\system\deshab64\desktop\textures\startMenuLogo.png' + $TexStamp = Join-Path $Root 'SYSTEM\system\deshab64\desktop\textures\startMenuLogo.rgba' + $needTex = -not (Test-Path $TexStamp) + if ($needTex -and (Test-Path $TexSrc)) { + $needTex = (Get-Item $TexSrc).LastWriteTime -gt (Get-Item $TexStamp).LastWriteTime + } + if ($needTex) { + Write-Host '[build] Generating desktop textures (gen_textures.py)...' + $texDone = $false + $Python = $null + foreach ($p in @('C:\Users\林濬哲\AppData\Local\Programs\Python\Python312\python.exe', + 'C:\msys64\mingw64\bin\python.exe', + 'python', 'python3')) { + try { $cmd = Get-Command $p -ErrorAction Stop; $Python = $cmd.Source; break } catch {} + } + if ($Python) { + & $Python $GenTex + if ($LASTEXITCODE -eq 0) { $texDone = $true } + } + if (-not $texDone) { + # Fallback: WSL python3 (has Pillow on this machine) + $wslPath = ($GenTex -replace '^([A-Za-z]):', '/mnt/$1').ToLower() + & wsl python3 $wslPath + if ($LASTEXITCODE -eq 0) { $texDone = $true } + } + if (-not $texDone) { + Write-Host '[build] WARNING: desktop texture generation failed (material pack may be incomplete)' + } + } +} try { & $make -C "$DskDir" -f MAKEFILE "CC=$clang" "LD=$lld" if ($LASTEXITCODE -ne 0) {