From 1f0f824b0198f5b04af82498e2c1a65868c2c3e0 Mon Sep 17 00:00:00 2001 From: cc <98377878+hicccc77@users.noreply.github.com> Date: Sun, 1 Feb 2026 20:50:01 +0800 Subject: [PATCH 01/11] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81=E5=BF=BD?= =?UTF-8?q?=E7=95=A5=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- electron/main.ts | 14 ++++++++++++++ electron/preload.ts | 1 + electron/services/config.ts | 7 ++++++- src/App.tsx | 13 +++++++++++++ src/components/UpdateDialog.scss | 23 +++++++++++++++++++++++ src/components/UpdateDialog.tsx | 7 +++++++ src/pages/SettingsPage.tsx | 13 +++++++++++++ src/services/config.ts | 19 ++++++++++++++++++- src/types/electron.d.ts | 1 + 9 files changed, 96 insertions(+), 2 deletions(-) diff --git a/electron/main.ts b/electron/main.ts index 81e0c5d..4e331bc 100644 --- a/electron/main.ts +++ b/electron/main.ts @@ -552,6 +552,11 @@ function registerIpcHandlers() { } }) + ipcMain.handle('app:ignoreUpdate', async (_, version: string) => { + configService?.set('ignoredUpdateVersion', version) + return { success: true } + }) + // 窗口控制 ipcMain.on('window:minimize', (event) => { BrowserWindow.fromWebContents(event.sender)?.minimize() @@ -1159,7 +1164,16 @@ function checkForUpdatesOnStartup() { if (result && result.updateInfo) { const currentVersion = app.getVersion() const latestVersion = result.updateInfo.version + + // 检查是否有新版本 if (latestVersion !== currentVersion && mainWindow) { + // 检查该版本是否被用户忽略 + const ignoredVersion = configService?.get('ignoredUpdateVersion') + if (ignoredVersion === latestVersion) { + console.log(`版本 ${latestVersion} 已被用户忽略,跳过更新提示`) + return + } + // 通知渲染进程有新版本 mainWindow.webContents.send('app:updateAvailable', { version: latestVersion, diff --git a/electron/preload.ts b/electron/preload.ts index 2c259eb..c0bfb69 100644 --- a/electron/preload.ts +++ b/electron/preload.ts @@ -34,6 +34,7 @@ contextBridge.exposeInMainWorld('electronAPI', { getVersion: () => ipcRenderer.invoke('app:getVersion'), checkForUpdates: () => ipcRenderer.invoke('app:checkForUpdates'), downloadAndInstall: () => ipcRenderer.invoke('app:downloadAndInstall'), + ignoreUpdate: (version: string) => ipcRenderer.invoke('app:ignoreUpdate', version), onDownloadProgress: (callback: (progress: any) => void) => { ipcRenderer.on('app:downloadProgress', (_, progress) => callback(progress)) return () => ipcRenderer.removeAllListeners('app:downloadProgress') diff --git a/electron/services/config.ts b/electron/services/config.ts index 621ca08..34f1fb8 100644 --- a/electron/services/config.ts +++ b/electron/services/config.ts @@ -33,6 +33,9 @@ interface ConfigSchema { authEnabled: boolean authPassword: string // SHA-256 hash authUseHello: boolean + + // 更新相关 + ignoredUpdateVersion: string } export class ConfigService { @@ -67,7 +70,9 @@ export class ConfigService { authEnabled: false, authPassword: '', - authUseHello: false + authUseHello: false, + + ignoredUpdateVersion: '' } }) } diff --git a/src/App.tsx b/src/App.tsx index 95d9e9d..dff779a 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -203,6 +203,18 @@ function App() { } } + const handleIgnoreUpdate = async () => { + if (!updateInfo || !updateInfo.version) return + + try { + await window.electronAPI.app.ignoreUpdate(updateInfo.version) + setShowUpdateDialog(false) + setUpdateInfo(null) + } catch (e: any) { + console.error('忽略更新失败:', e) + } + } + const dismissUpdate = () => { setUpdateInfo(null) } @@ -383,6 +395,7 @@ function App() { updateInfo={updateInfo} onClose={() => setShowUpdateDialog(false)} onUpdate={handleUpdateNow} + onIgnore={handleIgnoreUpdate} isDownloading={isDownloading} progress={downloadProgress} /> diff --git a/src/components/UpdateDialog.scss b/src/components/UpdateDialog.scss index 452447a..f12a6d8 100644 --- a/src/components/UpdateDialog.scss +++ b/src/components/UpdateDialog.scss @@ -171,6 +171,29 @@ .actions { display: flex; justify-content: center; + gap: 12px; + + .btn-ignore { + background: transparent; + color: #666666; + border: 1px solid #d0d0d0; + padding: 16px 32px; + border-radius: 20px; + font-size: 16px; + font-weight: 600; + cursor: pointer; + transition: all 0.2s; + + &:hover { + background: #f5f5f5; + border-color: #999999; + color: #333333; + } + + &:active { + transform: scale(0.98); + } + } .btn-update { background: #000000; diff --git a/src/components/UpdateDialog.tsx b/src/components/UpdateDialog.tsx index 78f3db5..bafdb18 100644 --- a/src/components/UpdateDialog.tsx +++ b/src/components/UpdateDialog.tsx @@ -12,6 +12,7 @@ interface UpdateDialogProps { updateInfo: UpdateInfo | null onClose: () => void onUpdate: () => void + onIgnore?: () => void isDownloading: boolean progress: number | { percent: number @@ -27,6 +28,7 @@ const UpdateDialog: React.FC = ({ updateInfo, onClose, onUpdate, + onIgnore, isDownloading, progress }) => { @@ -118,6 +120,11 @@ const UpdateDialog: React.FC = ({ ) : (
+ {onIgnore && ( + + )} diff --git a/src/pages/SettingsPage.tsx b/src/pages/SettingsPage.tsx index f4603b3..f746c87 100644 --- a/src/pages/SettingsPage.tsx +++ b/src/pages/SettingsPage.tsx @@ -316,6 +316,19 @@ function SettingsPage() { } } + const handleIgnoreUpdate = async () => { + if (!updateInfo || !updateInfo.version) return + + try { + await window.electronAPI.app.ignoreUpdate(updateInfo.version) + setShowUpdateDialog(false) + setUpdateInfo(null) + showMessage(`已忽略版本 ${updateInfo.version}`, true) + } catch (e: any) { + showMessage(`操作失败: ${e}`, false) + } + } + const showMessage = (text: string, success: boolean) => { diff --git a/src/services/config.ts b/src/services/config.ts index e0a20c2..01b5cb7 100644 --- a/src/services/config.ts +++ b/src/services/config.ts @@ -35,7 +35,10 @@ export const CONFIG_KEYS = { // 安全 AUTH_ENABLED: 'authEnabled', AUTH_PASSWORD: 'authPassword', - AUTH_USE_HELLO: 'authUseHello' + AUTH_USE_HELLO: 'authUseHello', + + // 更新 + IGNORED_UPDATE_VERSION: 'ignoredUpdateVersion' } as const export interface WxidConfig { @@ -399,3 +402,17 @@ export async function getAuthUseHello(): Promise { export async function setAuthUseHello(useHello: boolean): Promise { await config.set(CONFIG_KEYS.AUTH_USE_HELLO, useHello) } + +// === 更新相关 === + +// 获取被忽略的更新版本 +export async function getIgnoredUpdateVersion(): Promise { + const value = await config.get(CONFIG_KEYS.IGNORED_UPDATE_VERSION) + return (value as string) || null +} + +// 设置被忽略的更新版本 +export async function setIgnoredUpdateVersion(version: string): Promise { + await config.set(CONFIG_KEYS.IGNORED_UPDATE_VERSION, version) +} + diff --git a/src/types/electron.d.ts b/src/types/electron.d.ts index 68e2cf5..16ede9f 100644 --- a/src/types/electron.d.ts +++ b/src/types/electron.d.ts @@ -32,6 +32,7 @@ export interface ElectronAPI { getVersion: () => Promise checkForUpdates: () => Promise<{ hasUpdate: boolean; version?: string; releaseNotes?: string }> downloadAndInstall: () => Promise + ignoreUpdate: (version: string) => Promise<{ success: boolean }> onDownloadProgress: (callback: (progress: number) => void) => () => void onUpdateAvailable: (callback: (info: { version: string; releaseNotes: string }) => void) => () => void } From b7339b6a35d2b3d0085671059cc3cbd4113f6c46 Mon Sep 17 00:00:00 2001 From: cc <98377878+hicccc77@users.noreply.github.com> Date: Sun, 1 Feb 2026 22:56:43 +0800 Subject: [PATCH 02/11] =?UTF-8?q?feat:=20=E4=B8=80=E4=BA=9B=E9=9D=9E?= =?UTF-8?q?=E5=B8=B8=E5=B8=85=E6=B0=94=E7=9A=84=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- electron/main.ts | 6 +- electron/preload-env.ts | 2 +- electron/preload.ts | 8 +- electron/services/analyticsService.ts | 27 ++- electron/services/annualReportService.ts | 20 +- electron/services/chatService.ts | 206 +++++++++++++------- electron/services/dualReportService.ts | 12 +- electron/services/exportService.ts | 9 +- electron/services/groupAnalyticsService.ts | 7 +- electron/services/imageDecryptService.ts | 12 +- electron/services/keyService.ts | 10 +- electron/services/snsService.ts | 12 +- electron/services/voiceTranscribeService.ts | 4 +- electron/services/wcdbCore.ts | 151 +++++++++++++- electron/services/wcdbService.ts | 29 ++- electron/transcribeWorker.ts | 14 +- electron/wcdbWorker.ts | 13 ++ package-lock.json | 17 +- package.json | 1 + resources/wcdb_api.dll | Bin 750592 -> 758272 bytes src/App.tsx | 6 +- src/pages/AnnualReportPage.tsx | 2 +- src/pages/AnnualReportWindow.tsx | 4 +- src/pages/ChatPage.tsx | 157 +++++++++++---- src/pages/ContactsPage.tsx | 11 +- src/pages/SnsPage.tsx | 8 +- src/types/electron.d.ts | 6 + 27 files changed, 563 insertions(+), 191 deletions(-) diff --git a/electron/main.ts b/electron/main.ts index 4e331bc..cace612 100644 --- a/electron/main.ts +++ b/electron/main.ts @@ -724,6 +724,10 @@ function registerIpcHandlers() { return chatService.getLatestMessages(sessionId, limit) }) + ipcMain.handle('chat:getNewMessages', async (_, sessionId: string, minTime: number, limit?: number) => { + return chatService.getNewMessages(sessionId, minTime, limit) + }) + ipcMain.handle('chat:getContact', async (_, username: string) => { return await chatService.getContact(username) }) @@ -1170,7 +1174,7 @@ function checkForUpdatesOnStartup() { // 检查该版本是否被用户忽略 const ignoredVersion = configService?.get('ignoredUpdateVersion') if (ignoredVersion === latestVersion) { - console.log(`版本 ${latestVersion} 已被用户忽略,跳过更新提示`) + return } diff --git a/electron/preload-env.ts b/electron/preload-env.ts index 70d36d0..3476a0b 100644 --- a/electron/preload-env.ts +++ b/electron/preload-env.ts @@ -29,7 +29,7 @@ function enforceLocalDllPriority() { process.env.PATH = dllPaths } - console.log('[WeFlow] Environment PATH updated to enforce local DLL priority:', dllPaths) + } try { diff --git a/electron/preload.ts b/electron/preload.ts index c0bfb69..628e4cb 100644 --- a/electron/preload.ts +++ b/electron/preload.ts @@ -111,6 +111,8 @@ contextBridge.exposeInMainWorld('electronAPI', { ipcRenderer.invoke('chat:getMessages', sessionId, offset, limit, startTime, endTime, ascending), getLatestMessages: (sessionId: string, limit?: number) => ipcRenderer.invoke('chat:getLatestMessages', sessionId, limit), + getNewMessages: (sessionId: string, minTime: number, limit?: number) => + ipcRenderer.invoke('chat:getNewMessages', sessionId, minTime, limit), getContact: (username: string) => ipcRenderer.invoke('chat:getContact', username), getContactAvatar: (username: string) => ipcRenderer.invoke('chat:getContactAvatar', username), getMyAvatarUrl: () => ipcRenderer.invoke('chat:getMyAvatarUrl'), @@ -132,7 +134,11 @@ contextBridge.exposeInMainWorld('electronAPI', { ipcRenderer.invoke('chat:execQuery', kind, path, sql), getContacts: () => ipcRenderer.invoke('chat:getContacts'), getMessage: (sessionId: string, localId: number) => - ipcRenderer.invoke('chat:getMessage', sessionId, localId) + ipcRenderer.invoke('chat:getMessage', sessionId, localId), + onWcdbChange: (callback: (event: any, data: { type: string; json: string }) => void) => { + ipcRenderer.on('wcdb-change', callback) + return () => ipcRenderer.removeListener('wcdb-change', callback) + } }, diff --git a/electron/services/analyticsService.ts b/electron/services/analyticsService.ts index e9d965e..8c04476 100644 --- a/electron/services/analyticsService.ts +++ b/electron/services/analyticsService.ts @@ -107,7 +107,11 @@ class AnalyticsService { if (match) return match[1] return trimmed } - return trimmed + + const suffixMatch = trimmed.match(/^(.+)_([a-zA-Z0-9]{4})$/) + const cleaned = suffixMatch ? suffixMatch[1] : trimmed + + return cleaned } private isPrivateSession(username: string, cleanedWxid: string): boolean { @@ -245,6 +249,9 @@ class AnalyticsService { } private async computeAggregateByCursor(sessionIds: string[], beginTimestamp = 0, endTimestamp = 0): Promise { + const wxid = this.configService.get('myWxid') + const cleanedWxid = wxid ? this.cleanAccountDirName(wxid) : '' + const aggregate = { total: 0, sent: 0, @@ -269,8 +276,22 @@ class AnalyticsService { if (endTimestamp > 0 && createTime > endTimestamp) return const localType = parseInt(row.local_type || row.type || '1', 10) - const isSendRaw = row.computed_is_send ?? row.is_send ?? row.isSend ?? 0 - const isSend = String(isSendRaw) === '1' || isSendRaw === 1 || isSendRaw === true + const isSendRaw = row.computed_is_send ?? row.is_send ?? row.isSend + let isSend = String(isSendRaw) === '1' || isSendRaw === 1 || isSendRaw === true + + // 如果底层没有提供 is_send,则根据发送者用户名推断 + const senderUsername = row.sender_username || row.senderUsername || row.sender + if (isSendRaw === undefined || isSendRaw === null) { + if (senderUsername && (cleanedWxid)) { + const senderLower = String(senderUsername).toLowerCase() + const myWxidLower = cleanedWxid.toLowerCase() + isSend = ( + senderLower === myWxidLower || + // 兼容非 wxid 开头的账号(如果文件夹名带后缀,如 custom_backup,而 sender 是 custom) + (myWxidLower.startsWith(senderLower + '_')) + ) + } + } aggregate.total += 1 sessionStat.total += 1 diff --git a/electron/services/annualReportService.ts b/electron/services/annualReportService.ts index 4caf50e..a4a31d5 100644 --- a/electron/services/annualReportService.ts +++ b/electron/services/annualReportService.ts @@ -115,8 +115,9 @@ class AnnualReportService { return trimmed } const suffixMatch = trimmed.match(/^(.+)_([a-zA-Z0-9]{4})$/) - if (suffixMatch) return suffixMatch[1] - return trimmed + const cleaned = suffixMatch ? suffixMatch[1] : trimmed + + return cleaned } private async ensureConnectedWithConfig( @@ -596,9 +597,22 @@ class AnnualReportService { if (!createTime) continue const isSendRaw = row.computed_is_send ?? row.is_send ?? '0' - const isSent = parseInt(isSendRaw, 10) === 1 + let isSent = parseInt(isSendRaw, 10) === 1 const localType = parseInt(row.local_type || row.type || '1', 10) + // 兼容逻辑 + if (isSendRaw === undefined || isSendRaw === null || isSendRaw === '0') { + const sender = String(row.sender_username || row.sender || row.talker || '').toLowerCase() + if (sender) { + const rawLower = rawWxid.toLowerCase() + const cleanedLower = cleanedWxid.toLowerCase() + if (sender === rawLower || sender === cleanedLower || + rawLower.startsWith(sender + '_') || cleanedLower.startsWith(sender + '_')) { + isSent = true + } + } + } + // 响应速度 & 对话发起 if (!conversationStarts.has(sessionId)) { conversationStarts.set(sessionId, { initiated: 0, received: 0 }) diff --git a/electron/services/chatService.ts b/electron/services/chatService.ts index 688c5bd..a53c374 100644 --- a/electron/services/chatService.ts +++ b/electron/services/chatService.ts @@ -1,5 +1,5 @@ import { join, dirname, basename, extname } from 'path' -import { existsSync, mkdirSync, readdirSync, statSync, readFileSync, writeFileSync, copyFileSync, unlinkSync } from 'fs' +import { existsSync, mkdirSync, readdirSync, statSync, readFileSync, writeFileSync, copyFileSync, unlinkSync, watch } from 'fs' import * as path from 'path' import * as fs from 'fs' import * as https from 'https' @@ -7,7 +7,7 @@ import * as http from 'http' import * as fzstd from 'fzstd' import * as crypto from 'crypto' import Database from 'better-sqlite3' -import { app } from 'electron' +import { app, BrowserWindow } from 'electron' import { ConfigService } from './config' import { wcdbService } from './wcdbService' import { MessageCacheService } from './messageCacheService' @@ -152,9 +152,9 @@ class ChatService { } const suffixMatch = trimmed.match(/^(.+)_([a-zA-Z0-9]{4})$/) - if (suffixMatch) return suffixMatch[1] + const cleaned = suffixMatch ? suffixMatch[1] : trimmed - return trimmed + return cleaned } /** @@ -186,6 +186,9 @@ class ChatService { this.connected = true + // 设置数据库监控 + this.setupDbMonitor() + // 预热 listMediaDbs 缓存(后台异步执行,不阻塞连接) this.warmupMediaDbsCache() @@ -196,6 +199,24 @@ class ChatService { } } + private monitorSetup = false + + private setupDbMonitor() { + if (this.monitorSetup) return + this.monitorSetup = true + + // 使用 C++ DLL 内部的文件监控 (ReadDirectoryChangesW) + // 这种方式更高效,且不占用 JS 线程,并能直接监听 session/message 目录变更 + wcdbService.setMonitor((type, json) => { + // 广播给所有渲染进程窗口 + BrowserWindow.getAllWindows().forEach((win) => { + if (!win.isDestroyed()) { + win.webContents.send('wcdb-change', { type, json }) + } + }) + }) + } + /** * 预热 media 数据库列表缓存(后台异步执行) */ @@ -543,7 +564,7 @@ class ChatService { FROM contact ` - console.log('查询contact.db...') + const contactResult = await wcdbService.execQuery('contact', null, contactQuery) if (!contactResult.success || !contactResult.rows) { @@ -551,13 +572,13 @@ class ChatService { return { success: false, error: contactResult.error || '查询联系人失败' } } - console.log('查询到', contactResult.rows.length, '条联系人记录') + const rows = contactResult.rows as Record[] // 调试:显示前5条数据样本 - console.log('📋 前5条数据样本:') + rows.slice(0, 5).forEach((row, idx) => { - console.log(` ${idx + 1}. username: ${row.username}, local_type: ${row.local_type}, remark: ${row.remark || '无'}, nick_name: ${row.nick_name || '无'}`) + }) // 调试:统计local_type分布 @@ -566,7 +587,7 @@ class ChatService { const lt = row.local_type || 0 localTypeStats.set(lt, (localTypeStats.get(lt) || 0) + 1) }) - console.log('📊 local_type分布:', Object.fromEntries(localTypeStats)) + // 获取会话表的最后联系时间用于排序 const lastContactTimeMap = new Map() @@ -642,13 +663,8 @@ class ChatService { }) } - console.log('过滤后得到', contacts.length, '个有效联系人') - console.log('📊 按类型统计:', { - friends: contacts.filter(c => c.type === 'friend').length, - groups: contacts.filter(c => c.type === 'group').length, - officials: contacts.filter(c => c.type === 'official').length, - other: contacts.filter(c => c.type === 'other').length - }) + + // 按最近联系时间排序 contacts.sort((a, b) => { @@ -665,7 +681,7 @@ class ChatService { // 移除临时的lastContactTime字段 const result = contacts.map(({ lastContactTime, ...rest }) => rest) - console.log('返回', result.length, '个联系人') + return { success: true, contacts: result } } catch (e) { console.error('ChatService: 获取通讯录失败:', e) @@ -731,7 +747,7 @@ class ChatService { // 如果需要跳过消息(offset > 0),逐批获取但不返回 if (offset > 0) { - console.log(`[ChatService] 跳过消息: offset=${offset}`) + let skipped = 0 while (skipped < offset) { const skipBatch = await wcdbService.fetchMessageBatch(state.cursor) @@ -740,17 +756,17 @@ class ChatService { return { success: false, error: skipBatch.error || '跳过消息失败' } } if (!skipBatch.rows || skipBatch.rows.length === 0) { - console.log('[ChatService] 跳过时没有更多消息') + return { success: true, messages: [], hasMore: false } } skipped += skipBatch.rows.length state.fetched += skipBatch.rows.length if (!skipBatch.hasMore) { - console.log('[ChatService] 跳过时已到达末尾') + return { success: true, messages: [], hasMore: false } } } - console.log(`[ChatService] 跳过完成: skipped=${skipped}, fetched=${state.fetched}`) + } } else if (state && offset !== state.fetched) { // offset 与 fetched 不匹配,说明状态不一致 @@ -913,6 +929,40 @@ class ChatService { } } + async getNewMessages(sessionId: string, minTime: number, limit: number = this.messageBatchDefault): Promise<{ success: boolean; messages?: Message[]; error?: string }> { + try { + const connectResult = await this.ensureConnected() + if (!connectResult.success) { + return { success: false, error: connectResult.error || '数据库未连接' } + } + + const res = await wcdbService.getNewMessages(sessionId, minTime, limit) + if (!res.success || !res.messages) { + return { success: false, error: res.error || '获取新消息失败' } + } + + // 转换为 Message 对象 + const messages = this.mapRowsToMessages(res.messages as Record[]) + const normalized = this.normalizeMessageOrder(messages) + + // 并发检查并修复缺失 CDN URL 的表情包 + const fixPromises: Promise[] = [] + for (const msg of normalized) { + if (msg.localType === 47 && !msg.emojiCdnUrl && msg.emojiMd5) { + fixPromises.push(this.fallbackEmoticon(msg)) + } + } + if (fixPromises.length > 0) { + await Promise.allSettled(fixPromises) + } + + return { success: true, messages: normalized } + } catch (e) { + console.error('ChatService: 获取增量消息失败:', e) + return { success: false, error: String(e) } + } + } + private normalizeMessageOrder(messages: Message[]): Message[] { if (messages.length < 2) return messages const first = messages[0] @@ -1019,13 +1069,19 @@ class ChatService { if (senderUsername && (myWxidLower || cleanedWxidLower)) { const senderLower = String(senderUsername).toLowerCase() - const expectedIsSend = (senderLower === myWxidLower || senderLower === cleanedWxidLower) ? 1 : 0 + const expectedIsSend = ( + senderLower === myWxidLower || + senderLower === cleanedWxidLower || + // 兼容非 wxid 开头的账号(如果文件夹名带后缀,如 custom_backup,而 sender 是 custom) + (myWxidLower && myWxidLower.startsWith(senderLower + '_')) || + (cleanedWxidLower && cleanedWxidLower.startsWith(senderLower + '_')) + ) ? 1 : 0 if (isSend === null) { isSend = expectedIsSend // [DEBUG] Issue #34: 记录 isSend 推断过程 if (expectedIsSend === 0 && localType === 1) { // 仅在被判为接收且是文本消息时记录,避免刷屏 - // console.log(`[ChatService] inferred isSend=0: sender=${senderUsername}, myWxid=${myWxid} (cleaned=${cleanedWxid})`) + // } } } else if (senderUsername && !myWxid) { @@ -1249,7 +1305,7 @@ class ChatService { return title } } - + // 如果没有 title,根据 type 返回默认标签 switch (type) { case '6': @@ -1607,10 +1663,10 @@ class ChatService { // 文件消息 result.fileName = title || this.extractXmlValue(content, 'filename') result.linkTitle = result.fileName - + // 提取文件大小 - const fileSizeStr = this.extractXmlValue(content, 'totallen') || - this.extractXmlValue(content, 'filesize') + const fileSizeStr = this.extractXmlValue(content, 'totallen') || + this.extractXmlValue(content, 'filesize') if (fileSizeStr) { const size = parseInt(fileSizeStr, 10) if (!isNaN(size)) { @@ -1635,7 +1691,7 @@ class ChatService { case '19': { // 聊天记录 result.chatRecordTitle = title || '聊天记录' - + // 解析聊天记录列表 const recordList: Array<{ datatype: number @@ -1648,10 +1704,10 @@ class ChatService { // 查找所有 标签 const recordItemRegex = /([\s\S]*?)<\/recorditem>/gi let match: RegExpExecArray | null - + while ((match = recordItemRegex.exec(content)) !== null) { const itemXml = match[1] - + const datatypeStr = this.extractXmlValue(itemXml, 'datatype') const sourcename = this.extractXmlValue(itemXml, 'sourcename') const sourcetime = this.extractXmlValue(itemXml, 'sourcetime') @@ -1680,10 +1736,10 @@ class ChatService { // 小程序 result.linkTitle = title result.linkUrl = url - + // 提取缩略图 const thumbUrl = this.extractXmlValue(content, 'thumburl') || - this.extractXmlValue(content, 'cdnthumburl') + this.extractXmlValue(content, 'cdnthumburl') if (thumbUrl) { result.linkThumb = thumbUrl } @@ -1693,11 +1749,11 @@ class ChatService { case '2000': { // 转账 result.linkTitle = title || '[转账]' - + // 可以提取转账金额等信息 const payMemo = this.extractXmlValue(content, 'pay_memo') const feedesc = this.extractXmlValue(content, 'feedesc') - + if (payMemo) { result.linkTitle = payMemo } else if (feedesc) { @@ -1710,9 +1766,9 @@ class ChatService { // 其他类型,提取通用字段 result.linkTitle = title result.linkUrl = url - + const thumbUrl = this.extractXmlValue(content, 'thumburl') || - this.extractXmlValue(content, 'cdnthumburl') + this.extractXmlValue(content, 'cdnthumburl') if (thumbUrl) { result.linkThumb = thumbUrl } @@ -2132,7 +2188,7 @@ class ChatService { private decodeMaybeCompressed(raw: any, fieldName: string = 'unknown'): string { if (!raw) return '' - // console.log(`[ChatService] Decoding ${fieldName}: type=${typeof raw}`, raw) + // // 如果是 Buffer/Uint8Array if (Buffer.isBuffer(raw) || raw instanceof Uint8Array) { @@ -2148,7 +2204,7 @@ class ChatService { const bytes = Buffer.from(raw, 'hex') if (bytes.length > 0) { const result = this.decodeBinaryContent(bytes, raw) - // console.log(`[ChatService] HEX decoded result: ${result}`) + // return result } } @@ -2200,7 +2256,7 @@ class ChatService { // 如果提供了 fallbackValue,且解码结果看起来像二进制垃圾,则返回 fallbackValue if (fallbackValue && replacementCount > 0) { - // console.log(`[ChatService] Binary garbage detected, using fallback: ${fallbackValue}`) + // return fallbackValue } @@ -2794,7 +2850,7 @@ class ChatService { const t1 = Date.now() const msgResult = await this.getMessageByLocalId(sessionId, localId) const t2 = Date.now() - console.log(`[Voice] getMessageByLocalId: ${t2 - t1}ms`) + if (msgResult.success && msgResult.message) { const msg = msgResult.message as any @@ -2813,7 +2869,7 @@ class ChatService { // 检查 WAV 内存缓存 const wavCache = this.voiceWavCache.get(cacheKey) if (wavCache) { - console.log(`[Voice] 内存缓存命中,总耗时: ${Date.now() - startTime}ms`) + return { success: true, data: wavCache.toString('base64') } } @@ -2825,7 +2881,7 @@ class ChatService { const wavData = readFileSync(wavFilePath) // 同时缓存到内存 this.cacheVoiceWav(cacheKey, wavData) - console.log(`[Voice] 文件缓存命中,总耗时: ${Date.now() - startTime}ms`) + return { success: true, data: wavData.toString('base64') } } catch (e) { console.error('[Voice] 读取缓存文件失败:', e) @@ -2855,7 +2911,7 @@ class ChatService { // 从数据库读取 silk 数据 const silkData = await this.getVoiceDataFromMediaDb(msgCreateTime, candidates) const t4 = Date.now() - console.log(`[Voice] getVoiceDataFromMediaDb: ${t4 - t3}ms`) + if (!silkData) { return { success: false, error: '未找到语音数据 (请确保已在微信中播放过该语音)' } @@ -2865,7 +2921,7 @@ class ChatService { // 使用 silk-wasm 解码 const pcmData = await this.decodeSilkToPcm(silkData, 24000) const t6 = Date.now() - console.log(`[Voice] decodeSilkToPcm: ${t6 - t5}ms`) + if (!pcmData) { return { success: false, error: 'Silk 解码失败' } @@ -2875,7 +2931,7 @@ class ChatService { // PCM -> WAV const wavData = this.createWavBuffer(pcmData, 24000) const t8 = Date.now() - console.log(`[Voice] createWavBuffer: ${t8 - t7}ms`) + // 缓存 WAV 数据到内存 this.cacheVoiceWav(cacheKey, wavData) @@ -2883,7 +2939,7 @@ class ChatService { // 缓存 WAV 数据到文件(异步,不阻塞返回) this.cacheVoiceWavToFile(cacheKey, wavData) - console.log(`[Voice] 总耗时: ${Date.now() - startTime}ms`) + return { success: true, data: wavData.toString('base64') } } catch (e) { console.error('ChatService: getVoiceData 失败:', e) @@ -2920,11 +2976,11 @@ class ChatService { let mediaDbFiles: string[] if (this.mediaDbsCache) { mediaDbFiles = this.mediaDbsCache - console.log(`[Voice] listMediaDbs (缓存): 0ms`) + } else { const mediaDbsResult = await wcdbService.listMediaDbs() const t2 = Date.now() - console.log(`[Voice] listMediaDbs: ${t2 - t1}ms`) + let files = mediaDbsResult.success && mediaDbsResult.data ? (mediaDbsResult.data as string[]) : [] @@ -2956,7 +3012,7 @@ class ChatService { "SELECT name FROM sqlite_master WHERE type='table' AND name LIKE 'VoiceInfo%'" ) const t4 = Date.now() - console.log(`[Voice] 查询VoiceInfo表: ${t4 - t3}ms`) + if (!tablesResult.success || !tablesResult.rows || tablesResult.rows.length === 0) { continue @@ -2969,7 +3025,7 @@ class ChatService { `PRAGMA table_info('${voiceTable}')` ) const t6 = Date.now() - console.log(`[Voice] 查询表结构: ${t6 - t5}ms`) + if (!columnsResult.success || !columnsResult.rows) { continue @@ -3006,7 +3062,7 @@ class ChatService { "SELECT name FROM sqlite_master WHERE type='table' AND name LIKE 'Name2Id%'" ) const t8 = Date.now() - console.log(`[Voice] 查询Name2Id表: ${t8 - t7}ms`) + const name2IdTable = (name2IdTablesResult.success && name2IdTablesResult.rows && name2IdTablesResult.rows.length > 0) ? name2IdTablesResult.rows[0].name @@ -3033,7 +3089,7 @@ class ChatService { `SELECT user_name, rowid FROM ${schema.name2IdTable} WHERE user_name IN (${candidatesStr})` ) const t10 = Date.now() - console.log(`[Voice] 查询chat_name_id: ${t10 - t9}ms`) + if (name2IdResult.success && name2IdResult.rows && name2IdResult.rows.length > 0) { // 构建 chat_name_id 列表 @@ -3046,13 +3102,13 @@ class ChatService { `SELECT ${schema.dataColumn} AS data FROM ${schema.voiceTable} WHERE ${schema.chatNameIdColumn} IN (${chatNameIdsStr}) AND ${schema.timeColumn} = ${createTime} LIMIT 1` ) const t12 = Date.now() - console.log(`[Voice] 策略1查询语音: ${t12 - t11}ms`) + if (voiceResult.success && voiceResult.rows && voiceResult.rows.length > 0) { const row = voiceResult.rows[0] const silkData = this.decodeVoiceBlob(row.data) if (silkData) { - console.log(`[Voice] getVoiceDataFromMediaDb总耗时: ${Date.now() - startTime}ms`) + return silkData } } @@ -3066,13 +3122,13 @@ class ChatService { `SELECT ${schema.dataColumn} AS data FROM ${schema.voiceTable} WHERE ${schema.timeColumn} = ${createTime} LIMIT 1` ) const t14 = Date.now() - console.log(`[Voice] 策略2查询语音: ${t14 - t13}ms`) + if (voiceResult.success && voiceResult.rows && voiceResult.rows.length > 0) { const row = voiceResult.rows[0] const silkData = this.decodeVoiceBlob(row.data) if (silkData) { - console.log(`[Voice] getVoiceDataFromMediaDb总耗时: ${Date.now() - startTime}ms`) + return silkData } } @@ -3085,13 +3141,13 @@ class ChatService { `SELECT ${schema.dataColumn} AS data FROM ${schema.voiceTable} WHERE ${schema.timeColumn} BETWEEN ${createTime - 5} AND ${createTime + 5} ORDER BY ABS(${schema.timeColumn} - ${createTime}) LIMIT 1` ) const t16 = Date.now() - console.log(`[Voice] 策略3查询语音: ${t16 - t15}ms`) + if (voiceResult.success && voiceResult.rows && voiceResult.rows.length > 0) { const row = voiceResult.rows[0] const silkData = this.decodeVoiceBlob(row.data) if (silkData) { - console.log(`[Voice] getVoiceDataFromMediaDb总耗时: ${Date.now() - startTime}ms`) + return silkData } } @@ -3322,7 +3378,7 @@ class ChatService { senderWxid?: string ): Promise<{ success: boolean; transcript?: string; error?: string }> { const startTime = Date.now() - console.log(`[Transcribe] 开始转写: sessionId=${sessionId}, msgId=${msgId}, createTime=${createTime}`) + try { let msgCreateTime = createTime @@ -3333,12 +3389,12 @@ class ChatService { const t1 = Date.now() const msgResult = await this.getMessageById(sessionId, parseInt(msgId, 10)) const t2 = Date.now() - console.log(`[Transcribe] getMessageById: ${t2 - t1}ms`) + if (msgResult.success && msgResult.message) { msgCreateTime = msgResult.message.createTime serverId = msgResult.message.serverId - console.log(`[Transcribe] 获取到 createTime=${msgCreateTime}, serverId=${serverId}`) + } } @@ -3349,19 +3405,19 @@ class ChatService { // 使用正确的 cacheKey(包含 createTime) const cacheKey = this.getVoiceCacheKey(sessionId, msgId, msgCreateTime) - console.log(`[Transcribe] cacheKey=${cacheKey}`) + // 检查转写缓存 const cached = this.voiceTranscriptCache.get(cacheKey) if (cached) { - console.log(`[Transcribe] 缓存命中,总耗时: ${Date.now() - startTime}ms`) + return { success: true, transcript: cached } } // 检查是否正在转写 const pending = this.voiceTranscriptPending.get(cacheKey) if (pending) { - console.log(`[Transcribe] 正在转写中,等待结果`) + return pending } @@ -3370,7 +3426,7 @@ class ChatService { // 检查内存中是否有 WAV 数据 let wavData = this.voiceWavCache.get(cacheKey) if (wavData) { - console.log(`[Transcribe] WAV内存缓存命中,大小: ${wavData.length} bytes`) + } else { // 检查文件缓存 const voiceCacheDir = this.getVoiceCacheDir() @@ -3378,7 +3434,7 @@ class ChatService { if (existsSync(wavFilePath)) { try { wavData = readFileSync(wavFilePath) - console.log(`[Transcribe] WAV文件缓存命中,大小: ${wavData.length} bytes`) + // 同时缓存到内存 this.cacheVoiceWav(cacheKey, wavData) } catch (e) { @@ -3388,39 +3444,39 @@ class ChatService { } if (!wavData) { - console.log(`[Transcribe] WAV缓存未命中,调用 getVoiceData`) + const t3 = Date.now() // 调用 getVoiceData 获取并解码 const voiceResult = await this.getVoiceData(sessionId, msgId, msgCreateTime, serverId, senderWxid) const t4 = Date.now() - console.log(`[Transcribe] getVoiceData: ${t4 - t3}ms, success=${voiceResult.success}`) + if (!voiceResult.success || !voiceResult.data) { console.error(`[Transcribe] 语音解码失败: ${voiceResult.error}`) return { success: false, error: voiceResult.error || '语音解码失败' } } wavData = Buffer.from(voiceResult.data, 'base64') - console.log(`[Transcribe] WAV数据大小: ${wavData.length} bytes`) + } // 转写 - console.log(`[Transcribe] 开始调用 transcribeWavBuffer`) + const t5 = Date.now() const result = await voiceTranscribeService.transcribeWavBuffer(wavData, (text) => { - console.log(`[Transcribe] 部分结果: ${text}`) + onPartial?.(text) }) const t6 = Date.now() - console.log(`[Transcribe] transcribeWavBuffer: ${t6 - t5}ms, success=${result.success}`) + if (result.success && result.transcript) { - console.log(`[Transcribe] 转写成功: ${result.transcript}`) + this.cacheVoiceTranscript(cacheKey, result.transcript) } else { console.error(`[Transcribe] 转写失败: ${result.error}`) } - console.log(`[Transcribe] 总耗时: ${Date.now() - startTime}ms`) + return result } catch (error) { console.error(`[Transcribe] 异常:`, error) @@ -3468,7 +3524,7 @@ class ChatService { try { // 1. 尝试从缓存获取会话表信息 let tables = this.sessionTablesCache.get(sessionId) - + if (!tables) { // 缓存未命中,查询数据库 const tableStats = await wcdbService.getMessageTableStats(sessionId) diff --git a/electron/services/dualReportService.ts b/electron/services/dualReportService.ts index 3d9a857..a4305c3 100644 --- a/electron/services/dualReportService.ts +++ b/electron/services/dualReportService.ts @@ -74,8 +74,9 @@ class DualReportService { return trimmed } const suffixMatch = trimmed.match(/^(.+)_([a-zA-Z0-9]{4})$/) - if (suffixMatch) return suffixMatch[1] - return trimmed + const cleaned = suffixMatch ? suffixMatch[1] : trimmed + + return cleaned } private async ensureConnectedWithConfig( @@ -202,7 +203,12 @@ class DualReportService { if (!sender) return false const rawLower = rawWxid ? rawWxid.toLowerCase() : '' const cleanedLower = cleanedWxid ? cleanedWxid.toLowerCase() : '' - return sender === rawLower || sender === cleanedLower + return !!( + sender === rawLower || + sender === cleanedLower || + (rawLower && rawLower.startsWith(sender + '_')) || + (cleanedLower && cleanedLower.startsWith(sender + '_')) + ) } private async getFirstMessages( diff --git a/electron/services/exportService.ts b/electron/services/exportService.ts index 87dc4e4..bd91034 100644 --- a/electron/services/exportService.ts +++ b/electron/services/exportService.ts @@ -157,8 +157,9 @@ class ExportService { return trimmed } const suffixMatch = trimmed.match(/^(.+)_([a-zA-Z0-9]{4})$/) - if (suffixMatch) return suffixMatch[1] - return trimmed + const cleaned = suffixMatch ? suffixMatch[1] : trimmed + + return cleaned } private async ensureConnected(): Promise<{ success: boolean; cleanedWxid?: string; error?: string }> { @@ -968,11 +969,11 @@ class ExportService { const emojiMd5 = msg.emojiMd5 if (!emojiUrl && !emojiMd5) { - console.log('[ExportService] 表情消息缺少 url 和 md5, localId:', msg.localId, 'content:', msg.content?.substring(0, 200)) + return null } - console.log('[ExportService] 导出表情:', { localId: msg.localId, emojiMd5, emojiUrl: emojiUrl?.substring(0, 100) }) + const key = emojiMd5 || String(msg.localId) // 根据 URL 判断扩展名 diff --git a/electron/services/groupAnalyticsService.ts b/electron/services/groupAnalyticsService.ts index 3e09181..eb6bb68 100644 --- a/electron/services/groupAnalyticsService.ts +++ b/electron/services/groupAnalyticsService.ts @@ -79,8 +79,13 @@ class GroupAnalyticsService { if (trimmed.toLowerCase().startsWith('wxid_')) { const match = trimmed.match(/^(wxid_[^_]+)/i) if (match) return match[1] + return trimmed } - return trimmed + + const suffixMatch = trimmed.match(/^(.+)_([a-zA-Z0-9]{4})$/) + const cleaned = suffixMatch ? suffixMatch[1] : trimmed + + return cleaned } private async ensureConnected(): Promise<{ success: boolean; error?: string }> { diff --git a/electron/services/imageDecryptService.ts b/electron/services/imageDecryptService.ts index 1fc3648..4b1691f 100644 --- a/electron/services/imageDecryptService.ts +++ b/electron/services/imageDecryptService.ts @@ -380,9 +380,9 @@ export class ImageDecryptService { } const suffixMatch = trimmed.match(/^(.+)_([a-zA-Z0-9]{4})$/) - if (suffixMatch) return suffixMatch[1] - - return trimmed + const cleaned = suffixMatch ? suffixMatch[1] : trimmed + + return cleaned } private async resolveDatPath( @@ -1136,7 +1136,7 @@ export class ImageDecryptService { // 扫描所有可能的缓存根目录 const allRoots = this.getAllCacheRoots() this.logInfo('开始索引缓存', { roots: allRoots.length }) - + for (const root of allRoots) { try { this.indexCacheDir(root, 3, 0) // 增加深度到3,支持 sessionId/YYYY-MM 结构 @@ -1144,7 +1144,7 @@ export class ImageDecryptService { this.logError('索引目录失败', e, { root }) } } - + this.logInfo('缓存索引完成', { entries: this.resolvedCache.size }) this.cacheIndexed = true this.cacheIndexing = null @@ -1175,7 +1175,7 @@ export class ImageDecryptService { // 默认路径 roots.push(join(documentsPath, 'WeFlow', 'Images')) roots.push(join(documentsPath, 'WeFlow', 'images')) - + // 兼容旧路径(如果有的话) roots.push(join(documentsPath, 'WeFlowData', 'Images')) diff --git a/electron/services/keyService.ts b/electron/services/keyService.ts index bdec7de..e12a22d 100644 --- a/electron/services/keyService.ts +++ b/electron/services/keyService.ts @@ -116,13 +116,13 @@ export class KeyService { // 检查是否已经有本地副本,如果有就使用它 if (existsSync(localPath)) { - console.log(`使用已存在的 DLL 本地副本: ${localPath}`) + return localPath } - console.log(`检测到网络路径 DLL,正在复制到本地: ${originalPath} -> ${localPath}`) + copyFileSync(originalPath, localPath) - console.log('DLL 本地化成功') + return localPath } catch (e) { console.error('DLL 本地化失败:', e) @@ -146,7 +146,7 @@ export class KeyService { // 检查是否为网络路径,如果是则本地化 if (this.isNetworkPath(dllPath)) { - console.log('检测到网络路径,将进行本地化处理') + dllPath = this.localizeNetworkDll(dllPath) } @@ -347,7 +347,7 @@ export class KeyService { if (pid) { const runPath = await this.getProcessExecutablePath(pid) if (runPath && existsSync(runPath)) { - console.log('发现正在运行的微信进程,使用路径:', runPath) + return runPath } } diff --git a/electron/services/snsService.ts b/electron/services/snsService.ts index 4d5c2cf..05f0f7f 100644 --- a/electron/services/snsService.ts +++ b/electron/services/snsService.ts @@ -57,15 +57,11 @@ class SnsService { } async getTimeline(limit: number = 20, offset: number = 0, usernames?: string[], keyword?: string, startTime?: number, endTime?: number): Promise<{ success: boolean; timeline?: SnsPost[]; error?: string }> { - console.log('[SnsService] getTimeline called with:', { limit, offset, usernames, keyword, startTime, endTime }) + const result = await wcdbService.getSnsTimeline(limit, offset, usernames, keyword, startTime, endTime) - console.log('[SnsService] getSnsTimeline result:', { - success: result.success, - timelineCount: result.timeline?.length, - error: result.error - }) + if (result.success && result.timeline) { const enrichedTimeline = result.timeline.map((post: any, index: number) => { @@ -121,11 +117,11 @@ class SnsService { } }) - console.log('[SnsService] Returning enriched timeline with', enrichedTimeline.length, 'posts') + return { ...result, timeline: enrichedTimeline } } - console.log('[SnsService] Returning result:', result) + return result } async debugResource(url: string): Promise<{ success: boolean; status?: number; headers?: any; error?: string }> { diff --git a/electron/services/voiceTranscribeService.ts b/electron/services/voiceTranscribeService.ts index 5f594c2..9140c21 100644 --- a/electron/services/voiceTranscribeService.ts +++ b/electron/services/voiceTranscribeService.ts @@ -224,12 +224,12 @@ export class VoiceTranscribeService { let finalTranscript = '' worker.on('message', (msg: any) => { - console.log('[VoiceTranscribe] Worker 消息:', msg) + if (msg.type === 'partial') { onPartial?.(msg.text) } else if (msg.type === 'final') { finalTranscript = msg.text - console.log('[VoiceTranscribe] 最终文本:', finalTranscript) + resolve({ success: true, transcript: finalTranscript }) worker.terminate() } else if (msg.type === 'error') { diff --git a/electron/services/wcdbCore.ts b/electron/services/wcdbCore.ts index b6b17c9..a5167b3 100644 --- a/electron/services/wcdbCore.ts +++ b/electron/services/wcdbCore.ts @@ -60,6 +60,10 @@ export class WcdbCore { private wcdbGetSnsTimeline: any = null private wcdbGetSnsAnnualStats: any = null private wcdbVerifyUser: any = null + private wcdbStartMonitorPipe: any = null + private wcdbStopMonitorPipe: any = null + private monitorPipeClient: any = null + private avatarUrlCache: Map = new Map() private readonly avatarCacheTtlMs = 10 * 60 * 1000 private logTimer: NodeJS.Timeout | null = null @@ -79,6 +83,136 @@ export class WcdbCore { } } + // 使用命名管道 IPC + startMonitor(callback: (type: string, json: string) => void): boolean { + if (!this.wcdbStartMonitorPipe) { + this.writeLog('startMonitor: wcdbStartMonitorPipe not available') + return false + } + + try { + const result = this.wcdbStartMonitorPipe() + if (result !== 0) { + this.writeLog(`startMonitor: wcdbStartMonitorPipe failed with ${result}`) + return false + } + + const net = require('net') + const PIPE_PATH = '\\\\.\\pipe\\weflow_monitor' + + setTimeout(() => { + this.monitorPipeClient = net.createConnection(PIPE_PATH, () => { + this.writeLog('Monitor pipe connected') + }) + + let buffer = '' + this.monitorPipeClient.on('data', (data: Buffer) => { + buffer += data.toString('utf8') + const lines = buffer.split('\n') + buffer = lines.pop() || '' + for (const line of lines) { + if (line.trim()) { + try { + const parsed = JSON.parse(line) + callback(parsed.action || 'update', line) + } catch { + callback('update', line) + } + } + } + }) + + this.monitorPipeClient.on('error', (err: Error) => { + this.writeLog(`Monitor pipe error: ${err.message}`) + }) + + this.monitorPipeClient.on('close', () => { + this.writeLog('Monitor pipe closed') + this.monitorPipeClient = null + }) + }, 100) + + this.writeLog('Monitor started via named pipe IPC') + return true + } catch (e) { + console.error('startMonitor failed:', e) + return false + } + } + + stopMonitor(): void { + if (this.monitorPipeClient) { + this.monitorPipeClient.destroy() + this.monitorPipeClient = null + } + if (this.wcdbStopMonitorPipe) { + this.wcdbStopMonitorPipe() + } + } + + // 保留旧方法签名以兼容 + setMonitor(callback: (type: string, json: string) => void): boolean { + return this.startMonitor(callback) + } + + /** + * 获取指定时间之后的新消息(增量更新) + */ + getNewMessages(sessionId: string, minTime: number, limit: number = 1000): { success: boolean; messages?: any[]; error?: string } { + if (!this.handle || !this.wcdbOpenMessageCursorLite || !this.wcdbFetchMessageBatch || !this.wcdbCloseMessageCursor) { + return { success: false, error: 'Database not handled or functions missing' } + } + + // 1. Open Cursor + const cursorPtr = Buffer.alloc(8) // int64* + // wcdb_open_message_cursor_lite(handle, sessionId, batchSize, ascending, beginTime, endTime, outCursor) + // ascending=1 (ASC) to get messages AFTER minTime ordered by time + // beginTime = minTime + 1 (to avoid duplicate of the last message) + // Actually, let's use minTime, user logic might handle duplication or we just pass strictly greater + // C++ logic: create_time >= beginTimestamp. So if we want new messages, passing lastTimestamp + 1 is safer. + const openRes = this.wcdbOpenMessageCursorLite(this.handle, sessionId, limit, 1, minTime, 0, cursorPtr) + + if (openRes !== 0) { + return { success: false, error: `Open cursor failed: ${openRes}` } + } + + // Read int64 from buffer + const cursor = cursorPtr.readBigInt64LE(0) + + // 2. Fetch Batch + const outJsonPtr = Buffer.alloc(8) // void** + const outHasMorePtr = Buffer.alloc(4) // int32* + + // fetch_message_batch(handle, cursor, outJson, outHasMore) + const fetchRes = this.wcdbFetchMessageBatch(this.handle, cursor, outJsonPtr, outHasMorePtr) + + let messages: any[] = [] + if (fetchRes === 0) { + const jsonPtr = outJsonPtr.readBigInt64LE(0) // void* address + if (jsonPtr !== 0n) { + // koffi decode string + const jsonStr = this.koffi.decode(jsonPtr, 'string') + this.wcdbFreeString(jsonPtr) // Must free + if (jsonStr) { + try { + messages = JSON.parse(jsonStr) + } catch (e) { + console.error('Parse messages failed', e) + } + } + } + } + + // 3. Close Cursor + this.wcdbCloseMessageCursor(this.handle, cursor) + + if (fetchRes !== 0) { + return { success: false, error: `Fetch batch failed: ${fetchRes}` } + } + + return { success: true, messages } + } + /** * 获取 DLL 路径 */ @@ -122,7 +256,7 @@ export class WcdbCore { if (!force && !this.isLogEnabled()) return const line = `[${new Date().toISOString()}] ${message}` // 同时输出到控制台和文件 - console.log('[WCDB]', message) + try { const base = this.userDataPath || process.env.WCDB_LOG_DIR || process.cwd() const dir = join(base, 'logs') @@ -262,10 +396,10 @@ export class WcdbCore { let protectionOk = false for (const resPath of resourcePaths) { try { - // console.log(`[WCDB] 尝试 InitProtection: ${resPath}`) + // protectionOk = this.wcdbInitProtection(resPath) if (protectionOk) { - // console.log(`[WCDB] InitProtection 成功: ${resPath}`) + // break } } catch (e) { @@ -454,6 +588,17 @@ export class WcdbCore { this.wcdbGetSnsAnnualStats = null } + // Named pipe IPC for monitoring (replaces callback) + try { + this.wcdbStartMonitorPipe = this.lib.func('int32 wcdb_start_monitor_pipe()') + this.wcdbStopMonitorPipe = this.lib.func('void wcdb_stop_monitor_pipe()') + this.writeLog('Monitor pipe functions loaded') + } catch (e) { + console.warn('Failed to load monitor pipe functions:', e) + this.wcdbStartMonitorPipe = null + this.wcdbStopMonitorPipe = null + } + // void VerifyUser(int64_t hwnd_ptr, const char* message, char* out_result, int max_len) try { this.wcdbVerifyUser = this.lib.func('void VerifyUser(int64 hwnd, const char* message, _Out_ char* outResult, int maxLen)') diff --git a/electron/services/wcdbService.ts b/electron/services/wcdbService.ts index 107c2c8..c8ca667 100644 --- a/electron/services/wcdbService.ts +++ b/electron/services/wcdbService.ts @@ -23,6 +23,7 @@ export class WcdbService { private resourcesPath: string | null = null private userDataPath: string | null = null private logEnabled = false + private monitorListener: ((type: string, json: string) => void) | null = null constructor() { this.initWorker() @@ -47,8 +48,16 @@ export class WcdbService { try { this.worker = new Worker(finalPath) - this.worker.on('message', (msg: WorkerMessage) => { - const { id, result, error } = msg + this.worker.on('message', (msg: any) => { + const { id, result, error, type, payload } = msg + + if (type === 'monitor') { + if (this.monitorListener) { + this.monitorListener(payload.type, payload.json) + } + return + } + const p = this.pending.get(id) if (p) { this.pending.delete(id) @@ -122,6 +131,15 @@ export class WcdbService { this.callWorker('setLogEnabled', { enabled }).catch(() => { }) } + /** + * 设置数据库监控回调 + */ + setMonitor(callback: (type: string, json: string) => void): void { + this.monitorListener = callback; + // Notify worker to enable monitor + this.callWorker('setMonitor').catch(() => { }); + } + /** * 检查服务是否就绪 */ @@ -187,6 +205,13 @@ export class WcdbService { return this.callWorker('getMessages', { sessionId, limit, offset }) } + /** + * 获取新消息(增量刷新) + */ + async getNewMessages(sessionId: string, minTime: number, limit: number = 1000): Promise<{ success: boolean; messages?: any[]; error?: string }> { + return this.callWorker('getNewMessages', { sessionId, minTime, limit }) + } + /** * 获取消息总数 */ diff --git a/electron/transcribeWorker.ts b/electron/transcribeWorker.ts index 6e353a0..e5a18d1 100644 --- a/electron/transcribeWorker.ts +++ b/electron/transcribeWorker.ts @@ -80,17 +80,17 @@ function isLanguageAllowed(result: any, allowedLanguages: string[]): boolean { } const langTag = result.lang - console.log('[TranscribeWorker] 检测到语言标记:', langTag) + // 检查是否在允许的语言列表中 for (const lang of allowedLanguages) { if (LANGUAGE_TAGS[lang] === langTag) { - console.log('[TranscribeWorker] 语言匹配,允许:', lang) + return true } } - console.log('[TranscribeWorker] 语言不在白名单中,过滤掉') + return false } @@ -117,7 +117,7 @@ async function run() { allowedLanguages = ['zh'] } - console.log('[TranscribeWorker] 使用的语言白名单:', allowedLanguages) + // 1. 初始化识别器 (SenseVoiceSmall) const recognizerConfig = { @@ -145,15 +145,15 @@ async function run() { recognizer.decode(stream) const result = recognizer.getResult(stream) - console.log('[TranscribeWorker] 识别完成 - 结果对象:', JSON.stringify(result, null, 2)) + // 3. 检查语言是否在白名单中 if (isLanguageAllowed(result, allowedLanguages)) { const processedText = richTranscribePostProcess(result.text) - console.log('[TranscribeWorker] 语言匹配,返回文本:', processedText) + parentPort.postMessage({ type: 'final', text: processedText }) } else { - console.log('[TranscribeWorker] 语言不匹配,返回空文本') + parentPort.postMessage({ type: 'final', text: '' }) } diff --git a/electron/wcdbWorker.ts b/electron/wcdbWorker.ts index 259b372..cf3e89a 100644 --- a/electron/wcdbWorker.ts +++ b/electron/wcdbWorker.ts @@ -19,6 +19,16 @@ if (parentPort) { core.setLogEnabled(payload.enabled) result = { success: true } break + case 'setMonitor': + core.setMonitor((type, json) => { + parentPort!.postMessage({ + id: -1, + type: 'monitor', + payload: { type, json } + }) + }) + result = { success: true } + break case 'testConnection': result = await core.testConnection(payload.dbPath, payload.hexKey, payload.wxid) break @@ -38,6 +48,9 @@ if (parentPort) { case 'getMessages': result = await core.getMessages(payload.sessionId, payload.limit, payload.offset) break + case 'getNewMessages': + result = await core.getNewMessages(payload.sessionId, payload.minTime, payload.limit) + break case 'getMessageCount': result = await core.getMessageCount(payload.sessionId) break diff --git a/package-lock.json b/package-lock.json index ee1d0f4..409c9c9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -25,6 +25,7 @@ "react": "^19.2.3", "react-dom": "^19.2.3", "react-router-dom": "^7.1.1", + "react-virtuoso": "^4.18.1", "sherpa-onnx-node": "^1.10.38", "silk-wasm": "^3.7.1", "wechat-emojis": "^1.0.2", @@ -7380,12 +7381,6 @@ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "license": "MIT" }, - "node_modules/nan": { - "version": "2.25.0", - "resolved": "https://registry.npmmirror.com/nan/-/nan-2.25.0.tgz", - "integrity": "sha512-0M90Ag7Xn5KMLLZ7zliPWP3rT90P6PN+IzVFS0VqmnPktBk3700xUVv8Ikm9EUaUE5SDWdp/BIxdENzVznpm1g==", - "license": "MIT" - }, "node_modules/nanoid": { "version": "3.3.11", "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.11.tgz", @@ -8050,6 +8045,16 @@ "react-dom": ">=18" } }, + "node_modules/react-virtuoso": { + "version": "4.18.1", + "resolved": "https://registry.npmmirror.com/react-virtuoso/-/react-virtuoso-4.18.1.tgz", + "integrity": "sha512-KF474cDwaSb9+SJ380xruBB4P+yGWcVkcu26HtMqYNMTYlYbrNy8vqMkE+GpAApPPufJqgOLMoWMFG/3pJMXUA==", + "license": "MIT", + "peerDependencies": { + "react": ">=16 || >=17 || >= 18 || >= 19", + "react-dom": ">=16 || >=17 || >= 18 || >=19" + } + }, "node_modules/read-binary-file-arch": { "version": "1.0.6", "resolved": "https://registry.npmmirror.com/read-binary-file-arch/-/read-binary-file-arch-1.0.6.tgz", diff --git a/package.json b/package.json index 4ba7a88..5319db6 100644 --- a/package.json +++ b/package.json @@ -35,6 +35,7 @@ "react": "^19.2.3", "react-dom": "^19.2.3", "react-router-dom": "^7.1.1", + "react-virtuoso": "^4.18.1", "sherpa-onnx-node": "^1.10.38", "silk-wasm": "^3.7.1", "wechat-emojis": "^1.0.2", diff --git a/resources/wcdb_api.dll b/resources/wcdb_api.dll index d63b6bdd7e43557e8558c43e912227877c8a3474..8c4fb39825230d83d22c4f5a4415fcdf4931a648 100644 GIT binary patch delta 299964 zcmb4s2V7Lg7Wdx4r3ox3OOdw7QWR9ghGGE)U1V3WV2KT*G1iC*YGMHc7;#-gGV0Z6 zEQyI4V@d2CyGEm^iM=M#Tw9`vvFm>SGj~DFd++;wUw#kooik_7oH=vmoHJ+U?kiC0 z6fCVjnPH16{_)@eEoxS(Ixm9EPXvM5rh~ITyMx z59P6$p^MIU3S0Ezf}beAxDd8*9N;f5TwSC-LqxgrkO70KFOB+NoF+3(qZv5WS#y4H z{tyRHb5B##P?dQlXdbv~Gz*vjZ+CO$u~L*&&O1v@8t!t}C|Zr?@jiFWa;jfjRr8q8 zva4z`(*?fzPgzxs2k=UZ-84C$g!_g}b<@P4CbP&*lPtZ4=k2B`^Y|pZMzy-R?~Kny z#hSm+wKrZK@ER<%iLWbq0g}cY&&Q~G?Z0G=Cb{mw{<-}DGqj|Cs%kX!WL5b{7U(4y z0%Mx?fF<)eEX)n;YKZOWd?%~nMI36tsm2-48S8E^qvU?$o{Pq0^Bi{HRo)%JeDk## zmZ}<4;l7xgWB+l{9IgD%RCp(53-PIZt+r@Dcn6aOi>4B-k%}d*Al3Q4t4g5J>jY3S z1Qj<84j{_!Q`x(sO!VV5p6HzF?}5i} zclc*64cY2Dyxhf*IO7h4Qn=5%*Isq}$z3pfgUNc%WZi?_ZEkKFUH3ARt&6Lvq^ikg za@F}TyZ*GD$GC>EM)5q|)tFxoNG9tOQ;B3fZz|mFYS-_#yJ{Zpm2y3|20)G`>v5$j z^<(XAj5k>iqCZ1FM}H2fn{3)^^+4rd3JD(KO@Vy1f4BlvBAKka-^3=tXty{j3)6SI zn(UEX&}HQm3WO#9NpR!;CTNd5{DL=f3uB94@NRB(s}{V#+**&=^&MaEkKKZ^YN31- zvN4%#W}`uAZMWM^HvNU=?$9X$-0(yFzofUr<-bbL`6Wo(w8vfCK6MWZpY-364p9F# z?Kl@Vp6uSPextf>8oR#U^EU=b;{{HA)cs3x9Y*lY?zLLRE~{Ygfc`((``r1zvUdZW zfa>qVd05pL*U#%v$0MKdj#X=PU*}q>WAP?iC)We1#uy2>L7+rBQz8jv(eCPjGKqz> z(I8Z&hf1~9aGFvllXb7jYKAs6II8Sacv;oJ?rr`D?UmX$X>%Iwo3xc@g5xE_{)2W0 zg~xk@87!djU(|Sx+OFd;KGLJeX}3#N{?Mb5(|zZvysl>myVi$WJcHe>vDE(|W!ob@ z#dGObN-Jmnb?&5#bGlolDo@ZgbZX4p_z+!f zuOTp*CTmw?BDx6~%$Mj|M(y}bbo%wXZkm#j0j3fcthJJU!KRXN1`>8Ab^QKsTVQcgx()#pSKvGEuF zR<-(0wLoTOHUC%_c--Q$yr7aK^!k@XzM~Dq3H>K)C`=*N1J;{Vm6unGaQY6KjX`*N2VQrO4>jRF6msJ7YujHNLsdQ;c|}_ zwyY^YZ3JjGflS5rTxV145mSjyjDgr5ewA1Ajb^{vd6Mt^$ZqqUD+Xnv+BsJ+$ijV@ zz4i(lmkBvV*!eTxm620FdlU1(<^RC!@{%9X_p0XnFU+==d7@vFs``7x`(wMl%02#p z-wFNum~E5IT7Y0eOdgDT-+y?ve=Xm3mq5A%|4W89f)H)m{{8sp{sHWx9KOjv#CLFx z^S|8A#*19>-@uHnqn6kMGpA!_$QWU-==o;H|oi7NU%VMtc#v#l6?7ui`(qsQ1%o8u5 z6K3mv<=JfhcZkt1Z6uk`ze=SQ|?5uNzn$fiyO)!eu}GRWt~bC-(sV(Tzi z8PkTxM)mZ`&ZNcbY_fHLdYw^L4CJ$;YO%hZcv+OM&vGAB7MGcHX=h3QL!R^Ns66&J z_m0kByYKKm(JAcK1->{s&Z*ShnIDg?rA?KSvs>dEsScmP)*?^yCyfzVm*K+21k>{7x~PX z05T$%)9NZvF^RC-ArLUnW-F_$B6yB zSG^Ie<=^~=dNFM16#k&zqE_j*FrToegH6_4putY{+pGN6*F{rG5mMo9!_8=5I0i@l zC7_#W%AEobh8;8i%176aVSYdJ1@#kI;!A$Ie*f_6dq{g07#9=HlzoKScdxY^mbDFH zNTu-;-Xmco`{x=zoG^~X{lr^0=*YrOao(UEJAIO0Z17p&*jk`q%QKj1FlOssYgRT{ zl(47#v6MR9VWcE`zzuYLq*XOC-PT~9v zl@&-pw~Ol<4`f?<^1Q}fy~cDURfcAOc9SRkOyhQJ;U#Wp62<0p<)$V^mi&mn*QBk> z_8rvWWB$n>fm-NPS|fh0Np^&MjF_akY5J?Pruaf$t#m9ft8FbAU-Y$iyNm2?a1MY; zJP7A%^GrmtF(P+@*=2|^}&{yT1k^=LAG`SA2N8?4gwADpZ z*kTYh%)=7))NggwC<}Iyusu5wLM9L}4Uu?HYfy%6O0+3>N3}aO(l->nmkNy*WW+PBU^-pmIHe9 zK;c?oA{NZZw(GwJ1aAR${j9_M?G{~Ghr@hxi}#q{CLYtW7F&6UcWK!mpz$GBP14!i z0UwR@E_~sX+Y1H?Z3iFX3tL9i?Sjgq1-po-CNBU6qI)*#L9rSt9Pr$mY7^Zd{%6Zz z=5~mCwwma_uF0E&g#FMc3pen^ts;C<4!$vf)(81dtqg$%K#vw~qrTWAKVdm(XLs!Y z_e>6sJ#_%JFcYr@zfWK@Om_Wl)VwB+JqLK#WW$KXgkLB)XOr9yek90(G(44EKLC|r z+Vm>AL-^87?LpY0iVfs1kA;>7xqlRe)D1%i(^yy{SuSC^RyM6&Z z$RsM$YYQjnDwYzsoW5Vkp~6ZQ-bqvr4uDZ8%X8mKi5+Fj-&(MNy#TFSW&S}70Q;i9 z@f548TS_;c)!GvL)CLu`B4J?dL*kF_8USkGq+JSix2vWgf^rUCw8i8?&be*X=WVNX)#9pR^>i+RM0ahlQT! zLxfw*Fxd5fZsNN-O!mp&Uukh*EVcLc@D3gQlCy59yPY?!W6do>2dvn(s5`C|)VQP_ zrWl(%>`5HE=?}i*OFK4g?Q+Levlle4+*Y5P9M47cRHqpGydKsQ>SP+!bjFbE3TM?Bw+UjOS3u=Qra&&nu1ATy4w+D(cY_HdH`UJ*6wOwj;14qSA9WeUT$k{nU9;GCi}~)Z!EDA+ex+*$`*0hN z%NiQ{^&%I|?RpMZkd8iP6CgB2=i_WC8RU(>0GM?|s!xCAyR!nK+n^d@1cfpw{Zjg- z^hxR6uWzqDdzD)o5FII9*JBMSb(?+Ktq%KmC$HDdSi1^^uZ8&mE@L6bR*1)GqOz4e zhp=d^sm5&608ZOH$JIbL+1J`U)QZ0tGEtwp@Y zTXBI)S3n*md27ujlQx@eX=^DKvm`3@ck<8Q@^6)^)|R365NgXrZMh=tgmh6xk|c}p z1C);siD=YPuFNhI%MmoJW&H2Anzl~<)$jvFnS0?$;q*N~ocQCA!c zvE24KpndevoqQpxYdFYglQ&Qg&O9({wTvf^J#-#l-z$Ud*vzHgA#U!= zQDgIb_bQL>9TGTgJ8@$jgEjEXR5&3(N0XhT{J4zw=^fano2a#AtyKl_?mjV?R3vi5 z@N$%&52%A#t6bPA21D{HuXxQ=_V46ddK=lhoB5UA-PzP7Jh4wJuR7~Q9Fs!cs@6JQ z+@}f4{DSZ7Q_pi3Ha?CN%7Z=pX`e=(wpWnv_weR@TX^k4Roh-r*9`a?IAJX6t>bMJUqyYgdG6JHOxoZ#QJ#U-J%c z2eZbz`S7>fvxlqr=C^CHF<?eYvBUvx83_(A@n!N3r$} zzHh)g)vJHvqS-9iby$O6N_q2v5v19Z;7hsUI0wRhbJeR zVt1PgAG=SkcR;%mFsWoXHhbU{|9D2dAlp&;rK_eXpp!igY72k@%cr^RS=eG6-Zi?S zWb{geeFWiqc!YA6v)wU=|4usnE7Z#!4l1AU6qOe5^BBPtJ0hH|eCo6f# zJB``3Gd$~^RxOu*4E0$-0){Tlrvk;bDTR-vJYCA>XsWR3*PVeYnVYh?vs(O#iY0b^ z>Pmj{oo4Lb8SXWx3)?o64;a*3_w8+Bb7pn0Vbu@6#a9msY&aV*-ONYe9HX3uf-(U; z6}Fg&SG%tGGAgj2Z-6YRb~Hc;=_lOg&jtmv7H4?iyHPCU3{QDCk~yE@gWol>d#CwK zJkFoy>+#rrnxB8y*z)Vs7%$AU(g^Y@1vR8`w4H7dv5>d$z^*|9C)TJX-f0bbfj@Ie zt})qU4XJ&LHy_-k-=&-G!0>Eb(^<8mDVwPcnUG9nHs%|=H?u*%N8!B`h0lSn7)8w1 zVji`%Hu?;Y^rV-%qRVJmYDN-;RFrm@nPd1Lg9F*@2<|pyD0@GO=M8DXO09hLkZx?j z7VbQB47<0HPZ%1{_D|=lhFaLz>HPW78ip<#T{H)(Bw>26ZKC)zrElLpz4j`r7n9=) zSi~C-OK0~>_>^H0hNC555=rHfcCIET_$f-0mbAmdr&A+k`a-^M*en)M!rvO+iS3`p zR}BvcUAmrDn83{>yp+EE`tDVvMMQkq=ls{SvDs82zMmqj9<+YlMR|cytmndg+5P(V z*~^_hL-VhaoUPhXUtzjv3!E06jvTf1FXYbC8ay=HT0Ht1;w_o<2$s>V|5ScsbHPzO zYSkKWV$%ZaCqK{EeyBw2gW?uC!$cAs2ng+4tN;h1K@BWhML$-+BxkXlH%|;tAaJHly=Z8hr2n2MPzLnWYSGOgcVHbyK?kt zS1iB=16jvSg->;3oACZ#3DqYSk>**m)(BW*lQm7|-|6c5CIL=tm=30`(P7L7(qxVN z+56hqP7ARbOoe-*Z^JzvQvN8U2{|ps^kHjtOrQQ(F{ZV_|IcG;jYgm%DIGnW3q{`dTpPWi86v2+AHMa{<9^nPl8cIEIV6ftJmk)ZV# zXpR==f`^w*l@ug<#cQ(sERFE0?{(P7H{)hV~bu3>eI z`xL{ms)uD(AW<$Zh9ov+-&M$gf@oTINq zcrlZQJBZ^>bk6WJ!0@8gVX-q-O{`tt=3_dBx(d$-cQ6GA>HoSBeUE(kE0@rGWoACy+PeV17B+oA zur7e=0GZ?N>5C=$<_z9eA05_0&f801^-wlEjBqlF(qBe4IHEk zOU1nItZLW0%yZS`PjfQa_o626t}5=c5U2uy-c#4jS<;rpNH|y0rMJgbM%Oagg5y)R zz+FJ%+Mbk3qGQry%3rhpQf!-|Cz%YSupG%-&;Z^3 zUs;uFWobP^cYYv7_J8A1?%P`O$RDjDzPU;TXLA>04gB9t%0_Ma8DW2lZzJYNCu?!5 zgmld&ObFtpzu$+7OxZ_<_>CM0O=hyPVSYZTUT=i5n_q^ygN8ldlyo-V%`|1N=Gs5n z+pg)>%VJ3oK90TS6M8Cgct|mSII#c=*c5xnlyp2V#DpV^M>kEopH`zR>Tac#$*J7> zgE9-j`t3avy|!w4M`=+mqVo5zkZZoeHVxU6+*${P-aQGcZV!-q5b{*{gp(AU|H|D^ z6p1|4L}Ne}91fh#aN`ynEQ!d_s+~EvA`nFW1|i^YFw)+qRU!Gqf0!uyW(iXU-B*1; z7%V~)@;H_-C~iHot+^)M7K~HS3s|wr+Rrgytkpz$pNEtflb!^gBoj?pk38yAm$6B3y^lyNHs35P3yu7VpH!pQ9 zGf;Kj78jk5=MKCQCs=7Z+RzM2EqRA}exwYb4y_&kBXlz8K73E&&*le(8i0?;DVUO( z)MDi#3VP@*1XF?03slG@DD_f8-FEf{%D0)9LA)U z3`CG)MYc)X2!U9GleC*Xg&2p@4kc-ia8|Bby}}l8pr^@ovFpD@^-)-FtHo|ja~h<} z2U>~V8Pz5Ep04!JQUOOgnQ&E)N-Xx0G+Yg_JhJQed?d0qiNf}4e>zDbgz5w>ps`z8 z(Y|C&9@e={-It_Wd&Q(%C&Z^)f5lqs-Dj_G=XQM|$dp2IcE_e-43(8eGwk`4!>2Pc zbx$-N3fthJ$yO(64tj!7PBvM8wCfuQE-KH58l#9k%K+fKwrA;zqJzAi$YcIPh~Fts z4?(8753TqYQQ?ylfY}e5B0L}AO$)`idV;SW*)qR87eX&VPV68~z=3qxx%o`O%yjfeAaI8x&%Z`apAzt9I<;1>ByaXX6XG z->BpogT{!^`$ueI$0NS&g{*7!Vr2?&wr+Kt&C>wCim}Xo`f1{w9AvHzv6{lK*Bp`N7S_OhjQq zdVdrO^27$skJ%QP`Ujz5ftwD(HbGE8L=ru+h+oUC9ykp&bsN)`PgA3jwGJ{%3b|)q zgZwzm7nl_Z6RaGt>C^ifzjr{RP>_)anD)p1O0hxRdiwsozyGj$Mc%7g&%U)v7rqvf9R@Fn*<3u zU5(=%c+DY$|1zem4{1#7Y9XIFHlR}!x~v#WO}rPC{$ zg8%roZ0cOzZ+tTrF`UmI-<;+B!q1J*Vl#*F`1dC=?_qrP`*G~U(fs23t=N*GJmiB` zUfDxQN#R7HXbp$*p&tzP{BS*SjY zQ@MWf05*OQ|6p>6f6qbG`(u-}y4l*s)f|h!@wn3FQ@(m~b9V9_erNJvHuya6mTzRO z^ZCU5aMtf6UzDH7t`Fqr^26BDf&6KHsO$RoDR(u~zRpl^*41}{W8IT>T3dTVLw}jT zJxZ3crXTU|OWL!$Q~Ar1c(!dSkDuO$^`6QNi|$OA#H&)hj!-; zZ9Q3jAph9bo1N&!@7jX&=JzV^ONs3*qK_rrc*xAAQXcOVL9Fak=j zB@y(Le%*wi=tfF3jtAp^!W7Y6(te1jdc#b@u_8lDS3&4zmi4qU_9#C)GdwbhNT|vE z9IO|VbQ|wMqwd-D0csV3NV$_=l?0yoan*>!!(BBA7jFKEa3kS@UH?6bv`hX8Wi$eX zxx@M7kK1@yUd@og~`z%keHunAwQZ zrznYI@^Z@SP7H9?tiu75sQMFCHxJVkpbYMspsb6zr;9m6`8K+yA2=6UY#IndH2?`m zL}zHHO#4GCS|plqS0z*Ij`^lfeCl6CB2no$fUFv>58n=QP`xyS*eO@r8pe=!5Uk|g z{jf(p4>2}8|(WHA3w*K-{T#}csE(0 zc5t_LeO;7ryHQoj#fpD*5nqZbtEd{W*=)^QdozdxL!RKrf&ZSuHAr|Vm;2Hb-V@19 zv{piIYH2I$nhKX?;6ZYj%X@@&sSi()<8>Jz;+U~yW#$N8AivM{n)x$%Ae-dF`_JuF zv(yC#s)fg$5fFSgr@|>GD~Es6BCL+rd5`y&JN0m_&hO7n_ONCk?DomS>BXdSUMAP! zL+5$;wgr&RQ%O~_A-qy$mYGkV7s2Xz^ELBYu=4i&k9qA`QG4F(vo1~p+PjEPYxvU7 z>IOcYB!rMf+EJ<;Z4b**xHsTt!zXgVEh!Yc4NEqe6l*%KKEFO2+@80cUq>3ubLS6X z2mA3W^IOKg%Sp>f4)2U|)*v&LjI`6M3}kX;wR2ByS}-GDX-6B~?ZyIHDkbZU)9{3! z&jAtra>^&#W*BooLfJJPD}xsE4C7khD948gR<+UlfrQ|SfFl0`eC*Tg`WwAy=4o-v zFnYsq*!4?$yK2O_3(*ufpEm5Lc5x4>7Q22TN*MYqfnV8^-%~9?E2u>GrJ{?3WKvmv1_2S1D)%STIrUg)vmR*0T7x!80%XanR(Tk(l z$Su6%;u@{_1TnW2IKNdiQ3*{#@#bQfm{&bcufR~*n%|4BT-=WR&_-}y^cJ|kjm?U< zYbtyrlGDOB4rv2fP1#q9qMDt?@s|EAp1veOFQFAKRRqw;3h_AtqWTWKcWKUvy;2t@-y~#IW;w_{A@3RrlYo zt-RV=h&$o(J}uwuAMC5_)Bfu={MZz3`Z7k!=A*vs%SN>4C%#OOTJb7NjrqHA%sHcY z1|BA-AMMvFv;5gs(##`Dl}<=ad4vDTn)Z>bZbN2&Jj4Y3Qgar<#ke*MvH1Hc|}& z>&iCydRIr)0;*d6T9y8<=_(5!Qq9cQYc4u!2BYToxRin?hA|1SbcX>J=cHsi;*}3F zX?E$&_dUlh$Z<0{p4zpdQx_ifRTEaPJ@5BbjrtL-NbZyxF5H()XADP6hm~nGr|`E3 zf5rIQg1;vC>x92sW&E43zIMqifn9!g9q;~iy|C7JCnvtM16^l<&@lP>!wAa>xS|99 z>gyQyXV|4saa;#}=IaQLsi;+tlo#Mg}=3|aZQhb!j!A7ppxo& zipYUxQWjYF_scBIV&T&AW^77x-eP$YOKr|SSf0TiCGmsHo3kxRT)V=|h9&VXE7F-E zi7#C7j{AvXm64PT?)goC`!Yu{EQ8nkX0FTUh~t%etNF2S>bW1mwukb@?b>sfl@T7@ zP^Gdw_#|(IKUO)A>g$8--uR&Gbs|Rmt*d>_OlXK2}Dh^Gho&tY$io`?eYD zmdFR=Q6rHr{WhH)Z^HllHi>=OgvYJQU};VG`>WE~)5d(?s=n^ui@oGArDi)Gx7zCB ziK3!e$#<@f4?AB#EFMw1;o?(ehm-PEU`ku=xh9TPZ;Nodo*}y;o0{H;PPH7fq;cTx zOXJhm)O0sE=*>;z8`qenuH0#DI15Wa?_TSM9y+EW-Ni=z1Uz!8kEWwFwvJEBT3T zxFL-Tv7q*ueuEn&s!FkaB8^SKxs_zyu5$;#xcp78&X6lg?4FoMYc7L?ko- zQs&@PE``!RhwS>N_)ZuvK=B2NG67ZU5m=FtT&ua_Jn zh39Wvq}%zI7Cu3Rnyu@3olVhMU7M3cC(_8z_(MQtS)@Trq(Ve;z%e<<&jsb)ZiYQJqJ1EK>DuMOxF^a zNo>R#LaMS^m3$&nlcALPj4ym59$lCR)AI-Ua+%1o6wi9+u6{)fQEf_ zJM0Kg+EUZg424a%Uce!Y^0GZQ?CQa~cH$rG%91}A;N<0NLcZz5W0C81tn(Mw`2Afq z{E&y%6dq$0i$a(HO9l@wYvMD0Bn;KVOuFuscQdHmAu_5pdY1h0;}X&yxFPTp!yThBAd@rYF3amCz$f4Zlmr}Y)& zo`wIhC!;2%h#WX`EierjhMOrCKRoc*o>!gLLILl!*WywXE^HrPv$qF}4Cik9TDn{} zsGtt}K4&Qges^C$kYh=L3o#Qt9G9wdl*xU#VSksFyIbK5pzwgb#+A2Ze3oXQD=cdPFqJGY7T_t`)ZyRl_jOrJga0CpAKf3r#;5Uz`z`r5L$Mtf z_y6EPRjCUTNYcnAbk{V8IS3#ZR72k4tUZip?%1G0b{^(__X z@JUKv6}iaadkBw0VS9e{U}RN){DK2n>EuDG znI8U29m&MsI`j^!bB^ymRGlsF!A~EGaXE>^k&{6W5a!HlTyM%Ib>aPww00^9bm5;}Z(pT(po@BP>GdoC z8g8}tliZI7@K#6bg?g3JjCFBU@=B3*v1Yic+CY2Hn_mR*8ApTICC*nIjSOme2$;5v zX?Fe5+QePuW&h7(_|2n6wx|i${g{zYv7OGR$Y^jp;~h^5e^O!Msh&(d=?gsxPmKkS z`cveB|Is(wMU@CKK!AGV47A8d#K_|jF&IYiPLUT(CPiJK-3o67tzgx}7j2}c)LyaR z!UVJ$`A!^S(V8&-B5cttQ6lJaG*rgE#RHB7*Vf>MmAT|wu_!5m)ZmlT!l#n1$nJwa z;Q$JNY=WYC^S;Ln?w>_cOc7%5@5}W~ky+MM?CsA0=hDk*_{( zV1Fd?^5YR~NE;#-VITcEIiHGFf`${d`X++slp9!FBLB2JiY;wTtwNi<(aPM+K|{1^ z*^I}ZFtCZ=@XjaVSlwJ+aKg;Wy76Nt8YfKa_9{%MhJa63^ckE(;S)Dq@mxfB!jnw{ zM7a$+ily44FK>LZ7VFcP_di)P@?5gRFNiT+NQ5H7@KUEVF(w-JjV!+WWUIj9%E0lC zr&=pmdoS_RQ{iDzEs3_)Y=d?}e@aPL&^|!q+$PuL$)}8d$u&hz$x*9@m>xF%!KpfK zEsSVq({`A_*Pb%eK7=$9wI(V`zxEWh<1!hd_Pr6L{1mlcLi$HZZO@;cI?AU0%n$w4 zhy{gl`%l4aNdq48v(Y=KrDI%TN<$j+PCvJUKYYrh&Jx%4BQDEu}CWdZqM012VOAJ>XQ08sqQ4M zqNuE>&-G`LypJZRzQ1)vI6@J?#4{aP_z(QYGp49BjWI3}4U5S&HE^hupwSE^iiQzJ zoUOyw*XKjeevy9_b|z)YaScv>9J|z6A|9lX2uAHo)L{vN2??sUPz|k@93>e+b;X`A z9x+%~>!}}3tMaCeJ`3kx{?l_O1J)~m>cr%FZS~UKv~^TjmyG$ z{zX6D@RG0R2mqZk&TGIoTrzv87z9XZz&$Syc8SJa2-s!0&PP>3 z_`J(WPKTUb_?gQsoTlOFe|0Wrrd`&dz;+7RLnIqyDUB!iaUNh!*Zx5k;odo$)%t5P(q+UkKeed5; z3VM|D1g(rMj#l8P>fq^0wWV_HiN*`6`$X`7P1IT&XWh;t+Ktdt_7svf?P{ zVAmBMc)b~W(p1D8T8$cWY_>bAF^6s(-YQ~_47)Q=J{rt3Z-ldzp?u7ZhShd>zj3^` z)7w?9pDqOieF=DJ!A@Ez8eOqMT+=?wqEklkJ2%4EsIlDh_e9qHC2#k81NMC>pZNP* zHM`-yGe%-rqfDF*L8suuQxd7ZEo4tyz{Xz4BN}*s;u+Z82+d5{OxII^aNh(3$~4~d z$d>)-7ZaNZ61TiYVqY0$BG4njB_FXET|KD!&{v<=VgcSD>C z@w|BVz1D4LOg7=T+93x}`YJ_cE2rgai6B2Qo8HaVfg+8F1eq5mO+B)2`-so@BfPeM z9+GS&IItLxqxv0Jg|xLb#)CMW-*$QasxF5~F|Ax=FAIEZs@~!uqJNfBc`IGxioLgZzeH_Lc{}m=) zhlX+KZ#~cX%Uu-H;7J`dhA{rsU)`LsCsp=^0x3+qE(!%gsLKKZe-O$u{#G$U2_w{{ z34x!407dUzHLtxHlWx=3B;ZdW{6277;B|Zmb?L3m!%Y#Y-$1}FY9sfGMhgg7H-yU% zx_Qv+$zbvaxg&Z1zXDv62(l_za9-yhcR_Vpu;|r2&#Y2)Bb))j{Oy0@S?vvc)<4PY z(4YMDKM6H`mm-BUrCmT7WO>^?-PX}tsh=fGyNy6fl@EFChnDQfKULUO!0h@>&UDlb z-Kd-z3m_=JFmnSJZ#0L{=owt zMYTv0q>{1dlrFfT@E;1=vqq(YiYvxDwIHVIX7@k%gh%!C2}owVQbR#$5KrlV~>X3x4oPSLX9J4|&?s z={pFd@6+baiI}xWf4=x>lz4sO$B*K*37|jv@yAc2yysAhq+4r(R$Z1cEKV>sE7gRZzDs47#W~&{;-n3UCP^Kc>u>TLNecIfbXN(_ zRf62*y@avoSJ{qd@BsWQ4~a3^T+&j#?q1Rsm!V+e-TslYnDj2wESGmOsZH#B{2ZC7 za7T{ttwofJ!oKHLJ&d&^Z8M~nO`gnVDN|TaInGH6ip{!2fm^)EYT2x;@I6 zpmvB?dM=}AyhA1eh%)8kM0vCmc)E8@UhO0eVSWCV1FJ|~So}5ly(&^~cJiuxw2IV~ zO}r{^O_VZNy{qy_t<;X)xFTmZl`KrYA}?wxh08I{C`4b8$2kM(t(WpXXUQ1d5GP%b zDP0dcq;z)|1$;VmsR~9zP|S0(@@Kfb+fDMVVvEdwDM!0VHQBmwN~_A*E|OnttQcbf zhWnHHio>zI0vrepOt<3e!eh!14_FQBW98-@d5Mb@Twg*j&^nQf6Mf)=+hxY)wfjW7Y(aL7!4~}swH1`lcLz;P}$jCig4?9i+cBL zSPQ2afzA-d<(DtzPVQ25AGZqejFhn1_q*kc)I>n48NUlL|K&>>Q>rl=Q?2%(4yC5r zhH#?MNZ0)^J}I`8;xp96kgsEebwY8cTJmE%p2|1frP=|tMq&C3)8-mLOqCL`dn$ym zeC1YErP}ONjy#N>{(-VwRpOG59P1&qVXK?UIUZ63D`_gv_K>34idhT!iv5Xv z#Yd{yX8voKX}AL@B&s5pJyGqFx3Up$X6tZc4>gyIpX961>Ud>nH957KG)HomFI1Dd zdp&w7^6e?=hhLO*mwQ*2TGiN%ohpeg69V&A{stO}&RePVSl&<_qFXy#_VSgQu!DEx zcD_=gN2o(g$CNS8Wh-htCkIu6@}JAceKG70%jICb)ZU|Ud4=H29`b0tl<#}{A1$uL z2xF18maZs#_RmXM>xbWoz9xHlOUX|0$D#jIw7znopVXNBdQ9Ht2ZD2s$*%sA?Azi2 z?v{yLfaRp;$VndgQC{aS#pG*|kHx8V4pjS#>Tq87tB7To=1n^${GzT}?^u-ti3fz% zsjAMjs|t1Cs1VOyMCKcnjM$vLR}Fx91fbt5D@RWg3Gxv^;;C-|8$z($*P0~~V1Np! zU}t?5d3u0k=rsBcesD*8&D{<^28x&y7qVLUkJTwTsA$D6Bmru({H_Fe zSEMW~zgyF8m!#ds$-v4x^0NRb(B}{id4-rP?MOyFkIIpOQY8CcCz}JMa7)kyVFENY zFmWZ8-|^AQpLEF^L-<|z$z{ste~Ja4woGtgvqUSgPgORSDfK}d;Ap`{s!rY-C`H$J zb|3Q^iAW4N&s?yQ^*gGgm8JJz%Fn3lJJscyHKYa^?T*mZ)0-24`Pzr3^;PH~K*0nk zXZ^11fC0q(q`5%OFR-&y%mC071Ayv1|Ch%|?fT7Msvh1=bi@MBf@*hExpXXT>M%68@$UebR^)`zE zqT7b_gX7>25f4H-D`=rmfD8C`{aBUo>`c|C-cu-J0e!&7g;X7VRem>EifnhUSZK-Y zGD26A1HRTmIAx} z;1xMPMDkDfx~LBHr8*4M%mQ;5hdMC2aQG!qa3vej{_OFDg+rsvjl^X??D8DL-E={| z5+X(CPsP$lW6F9>KyDSU+P_n&_u_aVfZ6mAVS6ehEN;*0JK%SzL8u(DlG4pxG@46? zu9(OqwQ4+FMBL_$DwqN)fR(w3(L@k*JngZ=+hf{ur@sv*CxTQP`p?j?G(? z)~QvcV9c&x=%`X}g3eW|a>OmiLPr&Gh;N$ppbv_NFns(no}-RNhbz)*vj8N=?Rtx& zipFo(w^OSgBkH&76C70}LVTeu=F6sFly<$pqlz?1Id2luwH=~Di*%A_oYiwb@ZY#B zibb{m2eIr(UBMfzKD)loCHa1sRK5CR;N!E8F_jfpF3SD}sbQ~C)5+#Iu)hTsEeBQO z{TwBg(pr>YUtm^W;ZJ-6|HcKiwTfSGQU2N>h5L^H)NH*cKDY;IgOE#)3-V=y6lFdN zZU6Vm(f-=@HRaRyhml7+TA|7imp3%6gIXn2PR)s@12Uo=hB_ciB`OId_JbB#+<_{M@sG>qd_H>7b1|RfqD_j)XadJ-ny*j#V{6 zm2=d2d2mgsQ9k{A9_EfddiYI!6+GbzJxU;^s@4-#JT`RosasjF`pS=j2ln zQt!yG)CsVWsk7@prf%?+0IYK|x>JFp&&pkmQe1;z9HN*Ci!*^~xLt#OCN^0O;OVnq zn+ag0>0^}_wW0N_yv`_%^tgqIw4NpFeD#7{H&W{D_XS8{&SqalBecz?wlf>cizB6` ztic8OLL@@v-_Og@QPNc&O#o_?uW5^xZ^@%^p zFVWca=(#|(E2HYrWY8I;AH<<)hhw$&4f=91TDK;9&~)P;Iv zY?8aw#T0vPl0T^{)pS7y3m-9@l(*KEjA2R79D~{ri;H4gZ&y{xLZ`EKDV;jW@eQRq za_xFjHII97pud7d)NLaX3U}=##=QT8JgS~#tXlNcA?BC0<;C@+M!wyt0aD`l99I9U z=+tsTHY7+!qlb!WSEkk$o%)c73Xizn9x1-ffPh}a%Jt)=nx3NB#d0wVljX9yQfSTj zPaGWU)yCC`)xsm*D&yJ8>W=c_c*vtI26TJTYx4MNz5FB|^60rpcdZl(IPL zPY(sHR|gf(NIcVz%iq?=pweNpgzoH(kuTK8oEy+7%{dKfJ2Gr`z29*$sH#6d5~y~i zV~pG}LGot@YRQ8Wq+l0;wepyZFZN=p4pOmpDOaQAoe5F^8*7ozCV*Y9S|GgOHFigQ zFV}AXcEi6XcAK+bzmvB$kYYSx9PuIUk3uBlRFPDD=nzS9l#r*Fkj2M~RYl*Wgqmp{ zTY2n=Mjv0(6h;VQ(O$JN6F3pUy*Ol^9n>=ZaZuZjJq1+4O{G>=L9K6we2=KTKxZno z0c+)?MqmvK4O)wzw*;}_a%r3t8f1OoAf^Seblb;QE2w zJ!&LnNi1`<+@T4QP=BqGzilGD#pbM%T@&$awn|M({r0Vzl#;(ylTsbNRg+Tom6Vi9 zXAO_Yx0*_CHzIw3nO48fh7B!++g7Un1pAB6IFZ0~{5WHf>V8G-s%`R=W>P=4{Tun0 zW>U0IukB(?)didQ$-eD!jU?=Lnr)YxCrR(KcXQ-TNib{K+vJx?Qe)r2E9eF%epk%4 zn8I0@wZ3IoyiJql&8SvMgqfKMU`!GWB=OWxH&3TY9)6EOTNQYsEK z#OH(fXqrF}C^g1U*`Op^Kiolqq^@`cj^PF1(hfPWr4$ms5fy4kGhVcqiZZoVOQoXr zY-Krnr#z^oRNKQNn7kH^yY&uvK}*S2)9Gz>kXMyj4N#Y|nSRy?>+u5V8kGCjjdDgS zD8Sr}@|;#ui>g8e&A1w$xlz8{3XbvN201ZVYU=(siNrEZS+_x+fU@q;5!ETvfRv1S z^4?@Anax`&Yg6#-zEp0Pf?R3PQn@e%X^~@J%H=6Yd***BhqXpI;Y)dVYxMg27xE^0 zF8D%bZKO60yMLiNLUoikw_wbc;)lAT#mM6d@yy(WKs^UTKuM_u?3=}M_zAF`xb8seCy!G6vdz=#RVSnT78wk z@CP9jR=SvN?|Rc|paxj<@xa-mq?|{U;uiAFRH>2f^ae-wkg+mqv0NujN??87k^84f zwOGQ}@{Ba8xyxNz+3#+Xj|1p(n+i>~$#yE-p@Pdcxn5goHp|%{A80E@=3ie3W-7P4 z(`XUcw9gI157-lvwG&h@*L2rK`S4m5QiRRw_OM$r;B<_td~geJXs0++wat#FBM?%A zr|W5=?_tUnbnj5q>lg=!=;z&b$tTJMB$ZmAEFyD@L1|GYW>-6#a%LrI2H|UL%f-H{ z=l9fDgxlCmVMGDzRNYjo-8TwmV?@5-AGM>|gb4L9D6=wEwNYDsz1~H>*-omHzf&b) zG1&FPz%Xe#@q`^0v5!Dsgs257HL)-sIM8UIcKv&(0oq!zLG7uc3AxzyUDT>%!D>rK zm3nQc9KE8|W~VHo5#gw#DNyFbt9))26ung%iDD@}L(c^}NbfbdQE2{HKy9E^RF*j_s>Z@XHKPnQB&>}ok9T?%3cZpnkw zrBt?dmAsms&Fabz(&5{N&zBS0V=Z0!R-V!x`S|bTHSMJq?D2QQHTr1zmkPP`h%zI4>MgCm-tC)LSk*e5i zdW%V@vKB%sDW=JW2EF{9L}*!S*FOiGbZRaBe+B?4SK3?@nyMcr0JeJ=zEV%Xa6*qC zndoiI+>%3z*I}NsUT9v$DiA+~p}i9*e`b~%`ANi@`UxPCJ0@>j6<3~IlCPVk)@($e zT+1RQ=l6mv(K$3jnHGeZ!|&Xbc#%DD zR!2gI1ruUbHJB?Z{y`gHsoz;%br3K>v3&4Ns9J}gh=MBZUn4)UNLkEpwVc^O@~i%G zm1^dHBNeb#g*#X+zu!TsXNXhzwyhP-{7@oi1w|I+m#gGM9i-5hjdUu505%)zTa`P0 zMNKK6McZRng!BOj>!vBm^<}S)Qe*EPb5tX$(zvxs?%GkR9TXZvQ1VzmEyF0RHiae- z?)Lg@d0t1!;Cjl9f~6PBK3tmt!f&v24YzSh(f`TGoL9v1b#oon&y?|l? z5xb6EG-@m{YGT2TC2BObM589Lr5}(^i zPFhIit5~_@;Wz{$gUYT$ATH{6Yto=jTJ_KsxM5BvdLgmcSUm^vQZ3^ud$vMSj<~VR zxUZlioircYD%ekQuaj2UH4dT;W&`4V7#aNQjehe8mFcVn`u1Y?9xJR|{L5~g1c7{b zPjW2}uq@`^cTtzln(v_7i~|U*Vvit{GZWYSbWdrY6El>rtAMhyn8)Hm?V^F4S0KYB z3Hx!p$`XU0GOhuB@KAn$RUOmWV<&yn8AJJNdBfcG!pc5FxTxxDGWAVi>ZY9(*hQ;V zuC0R{$^j>12leTqE%1$wSB<@>5BDlQlt;r4%tN`~7An&f)6#D?Q`fE-u^(`=F=EqZ zqOMpWX}+0WcGa4fz0dKylJz=|8h6tgmUB9+0DJ4ptI)J=7`J~}OozK+kz?E9QWP~+ z)TJ8TwQ^#}V%mE|t4tlbW5vU5G0p3aq5Se9`l>sI@Qg*&>9l61utcn1HCRN$5)t`p zE*(hJVw|_+Dv?ywuD^}SBxyOqVJ=aUmQ-ofMz)6d!4)@jSC+|X3(2+zX6+AmQ}Z5} z9^4j`*h6a|GCrh5J+#nLaQNsp`Se*2tbyK2pvOJ5x~1S8(LX#)UOmy&*aVu?Q=4CL z;{sM4Gxk1qfE+T7au<+GFD*!Bo_B~^^g`xOtz>TdOWB ziaAK>yJ_yNvV@n=~gp{t>Q!)Eql1&zHib7sQ)`abB8L z7&`3+`X^bdZrj4qk-Yn0ay4LsgK@5TDCdJc(s(`%>Z6Tq@(&(8H4KV2{En5q89f`- z^P!ihj2V$Ora4EU&d@WqqN%Ot{FoLDIT@ob`kb8mYL(rRftZ{Gz(~bJ9Iv^sFT3yO z)B>qu@Onz>t5tV&k+Y$utI4ImRz-x(qfLFa*6G*Rfe1KR;h5%``SV}um<>u>%zYVX zZv0S-`5+MIEOu$;%%9(?EV*yw(6Y=ZEz-O)e}1Qu_)ZNb6*@?kq{IZ2M>C?(j3$U+ z{NeLv6mxFZ!ibZ3)mxQZxkM5M`fM2EhfkXMY&Sbc&4MNh>m#-(@MwR*U;qwT9x!`q;flr z_e5@|VuVbV*;%YU1;z#;`!gYO&7oII5OUl(MJ^YET!qpR1?X6c0wpULl#MmAR#aKb ztt=#M2cj_pHCM+{uentr%T=p_X3?&JAmyc13eSp?lob^zlL5Z4Mf+A$`9Yd%uO*!G zuk*M?*XD6B#MHpNDNAgwxePoOEZ0WYYj+lyV=#p#@J4cxTvq`UV2+0ZQf!`J(>=&v z?JT7a0{H`0(dt3)JAL&#Bl>QsLiBYy-5Uf%X{AE6vP6`x^8?Ro0$L%WGl-%FYp&kO zoRbm7Gf%Fvo8dtu#Gwd?9!oT7uohG9#Ya#%a&fcUM*4g(Mu0{u$ud~0Txs(zY=uUv z81h4GJ;IE9CDk0F1$n}cG6&}dGhl{b*qk#=N`EffPkPNI6ee*@lSXPf74c98tgP~ff^al!8)r?E3+FY#jp{{c(X$eST zG4C~!k}x~5n0KnAJCdR+j3m|gfaS#+KgCFb(*vc(t5T72PSZywrNbp5Dfm*-I@eLw z+=??6(ahr#gJcz3=2UTt~_E{QJuP)-d<~tU(dUr$i0Qi`Ou7IYkcFs(Ady^v85Rr;jrP;KvJ+K2iXJ zPSV8TT5!Y;eg!}+R55*lu(w>?C|JTJOE5EcF&8gl=8O<#rhED&ML)%ng9cJ@lG1xs z(nV~@#$|p+5-vtWXoX5jkW5WCk`zN+q|_J;8E7OultS1?l}eF=W*eE5oNEY8E0v~% zCfF#ZBty0a(_JYG6^$gtCnr@(N#Pr&#^a-skIeLo$En(Qbi1b`w2Bpy7nN*(d|mF7 z9$iVHt8kjl5RC5Q$~2VPVkBoNlB(9l7!i8B1lJiU-RU~b8mU#Oy%Q8?8B&;5RrM%L zOUZgX-TpJ@v@w=5uQv429Nm7%Xk+fsQ>1GsAGF(9wP&|9b$YU5b`sLz9bZwO8A@(0t zOt2jdCd4c(iFLy|iU}D~I1PM9D7wj-EwY(hb2rXX#Dw6_7?P|@uX6N%negWo$%L?F z08qpPJ5`Tj!V9ztGfUaI#-C+y%!?yO=%>-(MPn}bfAFFcH=!giymGj3QP(P8yErd; zN#Yr8i;;C&c@e3S6fbHSNs1T#DoOFeStUt|Y?UNrittNq+%(0DKP07c6)zre5-xZ! zcrjL%kzMlfdLBUX@)c7mjR8{{EGUV-e=W%rQ>ucfgs5jO4IG16%is&D`I3yx&MMiSDfDo-R>|m7=Oyk2ANM1` z*r-0WTO}zzt}>DoAD5^k#m8wXNs_`Osm`PrWE4<*?5heWKDOngB0hd6>8<$a0OLgO z^_k+v&T-gYnm4~B_Djflq~>Y*Mpk6t{n-Ngdz@CaES&#}O6dm~LJgNn|0!%I3;TB{ zUbrz+(%|G3Nh(Ia`T|-vUaRI)#>grMpx3}uO^wGO%+t*e#?rUrwb~WB@%t;em}BxH zXkw7wI*{Dcv=mYCB27!vyeln5`jTT1QoPW{bp`1UF3{dI%~K@JqpN9J?et5s>V#q6*1*ajt!e3bCgVHGK0z)|Y`0uNHN|7fmzc%@uIOe&rKR#he**1yMm; zyuTfz1sBRI@!(yR54k`CK}vWm->-J>+L!)Swpm8X zHAEDU^8tx4m=6B4Gezi)+~x19JW)b**b zui?DL&DOGcDF6B}$jx47odp;$I0K%noMBX;g1=gWcOYx} zAAeKZbgh=DqpUVZ_5UU_Y3E|ipLV8Waj0MrIWNJQ{mkjBGPEXcXMiqG(f`F9yr_MU)sFTc7WTbdyGx(PvPm@M>D5%Z>! z_iXJWalJoXosG5r&!*6;*;;V)!70`T$T4Okf=0O%88H_T>YiXmD3Y5sJkXF4mE+qf zG$2#+so{*AC9etoZ95#iKI3uDpzxaDNWI@X+LMVT+D~NSIJ%dqHLoyhGFN+@tH=O- z_0zMc&KzyN&{OEp9PAfpf1AFaqm8ci9hRIjuezy=h3ez-#lLnj4|&*))J=a=>Rj!j z7}S><&x23AN?)2Y4-0jN`_M1*v{=uN*g>O#FnsS&e^$PzPIZdq6R6#MEwpjcgc8(< zLQp=e@Yc$7Nt2o!%~l_zKt{Mspo8YE|8$@*#34V-DYms+bJ` zq5p7=jxErtdYzBrQzenkQ5lonZ6;J{lUd*`&zN(bGQZIu3$RMst0%R}!8XGkT%OtC zcTJuckXsR>!rG$&;on? zr)*@#eL4cIwFX)M1WRG?_ZP)6cxdoY zVsO7F738Ahedj@uQ$E|y#%`ymMVc>1D8M0K(C9^) zyN9`_Y6k}K(Q|QFn@_ae#`QLldQ}hlV38IsPIsq!i?os@`!^YJ#XSvB^KN^eY0mp8lTT8HZ+OjXzUW$!EZ~M^r zr8rYHcs%7V)zU?`uGDxL2KND7D0P`Opz5wm?=4aCp%S^2h;6~RunZ%dzW-NxwhS9E z{}@Frmuo@d%tacx95ZRV6SQEt)?IWRMc*$+FZRAjE~}t>l8;m93dHXjN!cq9Kjngo zKXi=ltiVnfyOC6HCE~B2SMg5R__PumpSq5q?^kMdgr^bT^C;C{g|*PF!)e(nH}%OYR%8B zO?=_94tKf`IbhlUb%i#q)&goIUV@rax2DO<1Ppt^dAl(aT;61N zc223e8#UVIZ?~q2ExHvY6*11U0_GkMnZ01m=3FAjle+z>#agY3Z}p`T6I}eo$?{yNwE}0v=oPQhw6(Ck8f}pI z3T>~4aKdrD+$_E4CM2@$r5d@yk0~L61*OoVbvW`T)?qPX%t`L|YkQ*svS(qNG61l^ zmD+BMK#GLvMxzu7hglI)8?y2Lg>#+0jB}G7KHEwlwH9n<&)l{dFt+Mce(E5U_af7*vKw`e`eFH%I}Zm1tPOuue{zFpOt z96!)vM2D7?@PRf;Jcy!GA7Bf@qs&x`ad(-r-T5NggQ^cKCY%^auNH?}>9xi)Z z@leKlTp}@D)Dym?_gk^;r*|Z^+@__9%wF{AHWbZO)$%M(Uv+>Sw`(31Cbuk6)cqSf zinG`?pb^`(at{72FfL{vpd}W&s$Xt0~<6?nJG3Yfa0t+Xog{xL$ED`SDutyb*79{|n^O&DLpJlx!w z%|rj-EuEMZFWEA@jxj(QfX%1#2r;=0)HY1Q@-PXbWlWzo6!I~wulkK>_{ZAi%5%Bs z9KQ^1aMOL#1(9n%crLZytNBK8q9m99?&26_700MdV}%h6y#WJD7<$fc?I`qPEtu}@ z)k=#)4M^XsMY(-|1MPAcXD$}fB)%a}t>Wv~rAVY#V7>d7jgiCfbh#shFfD zI(CsV_dyd?jb{uEO;jqLHBkWF--pBH>Gh>L3OjkYggUC*&Hy9T(GB>ht!CjE9)@8S zI@PDK`yq>|U1%@#nJC|muJ6ZACTBShyQb&tpo*VpaUT8JN=VZG+Zw-RUyz}?ZE4ac zaIaTwOY1(-s=5xC#HrWx`yYacOiye@`Lzvw@rmZ?`2-A-aUmA-ZTvQ%AauHo1MOaE z=iYpVwHP8@P|=eS(jMr8+$HCfk*G&cZB;m@M3wumQ1YjmcSu=In%eTcXcFQ8UZ7ySy5VM5hC)hR@{t961hp}Ak`6ppa(;z+TGs$VWF?S)7!U~?a z%f{Z0aj^L<&Q!bLNog6rhHzX?d$b8{-BOpnJE+yEbfIoB%NFvNYd>Wlc^<;n>MI?n z(;+QEOQ0=>v>1H$AJ>8cLiD>Gm~fct#_!N0j)ApN`8fOpaWtQTtAjUs{neZr9ftM1 zuQ|;;j7@JG4OCO~AE!W2Y;dH+Pku}Iw^oY`ETdYuGUk2Yf7*Ogo?8zl3@XXuj} z(czO|>KbDkWr$vFKfO2!rj8DvkW={9381m~Iz07f=8d9n%GtFOYyHWt0JF%}{>)i- z8dtz~!1yuGJBbZ`q@4z5ah&TF{LaXYRw<-4ysBdx9P788fcQ?TOt8 zais6`qMt5kTZGw@vM*{qYp?M@<+IMQ2eRn+VJ|$kiK!!&)+T}5`nJ&bc*t#W12TQC zg@~mdY)TFj-+RzUpJUC+xha*uq^)pUuoTjg8SCi%#Dx13pdzJ~yg8SSUea=fzdyCP ztj!SH{pjLlt+mTycWyMaXZ%a1TZ%h*eWBH=|5bRQ=8TKWxyuidzNwGxy>M7LHh^kE zSVuSvPhQ!#m{=Mb?{0mX@db{T{o+RSg%<45G**qJtP9vOxsVIAq++--jUIiWMU~$aJR)ZT1zyqoybj_rY`HRO6o@J;aC_!^i&PWMURMUTSdfk6i`HQh%$4QmbW4?0EcRyaPaxBUGx z7+nE+PXtlztGMXp$Y$zxRcmTj4%N~iXRQ{Ux~i2I*Ien^RjqMk*Ls}&j(VT^SFRLf zX~dCuy?W7IM93=Ye85%s$e{VeNIMQ_x!2Tbx7*s zO_Y9JYi#>trBbxHtX+%rEtQy@PGuV~1Cs+vsI5K-;z8D?NGp7h^$08;JS-b1^G9$7 zUJpxw5^)|2vgUY}=1;DZz=vNf)O|E`zwBO6S>}eEl#LhSoNCKoy`1AZ<#_t=?+f-{ z^W+kLWT7i>p~Ph&r*ZXFp={*7VE@L*g`cmH042(0hXWh_iDBHIF5SSIY(N-Fg~_)~ z9kE&(j~g;_@YwJxyi&-Q?2qt3Ilk((KYqmX+qymQL*Cyy$L}FP@deH=jqe+L^&?SI zG>wb=Ig8#h3q8^(Bh7l08Oll{`+%3<82$kbGh3CDj>Cn1oJ}vAMJv9pp#x)Z?DqmR$2hcqy3C4XfL)>{QAPkJ67p!z1O}wUJpNY)vjfPW^}V)bEiNYhSYh zkDyhb;$+Js7drWs7UQv%Hzou%Q{SB;T12=||C?IV`ZmawkG^Ah`~YX! ziiy}S&enwUoDj!2J0LS0w{+tswrK6fG_g&#Lws(kJmeLQ41CS(;bwfu>xw>SFLa$j zmzPN6Te8*nxZfL@_o{xgxs{w;V)iZeu3ghls#p-K4WDrufoKCxfx(OG_%`D9+~Eim zSy)(vDZ|-x^IXuAXDqT1Vp$vLEp}4gEiF3YhzSCp9fl`?v0o0)0_QmJn~*uN2*G5^ ziFL*o|4_*!L`^~lJe~mn7!%Sulh4;$L$4Ts0A9G%NhO8h4QIR)flN< z!i_rK)?7qjbLxLv>spJecVvR_{pR@cus#@ZY|XIiM^O(hAkBt;zOB`)5r#_Ivm^oM z_GsV^eB0oe`1bssiHx*WS3*;>JDPVJhR`R%xDH7Cx8vjd59WFn4e zu|(KBsnx#LMZ*)s5xVCMJMy`Q{hEjGXnrA`(JkY0XWBdTgH~k-o2>3H@YFLv8FgDbOtMC-}!p5{{K8-$r7k3Xks_ppM7&ePds_YUpWuUF3UF)nJ20>wSASc0uT(J&b^`ez1WQmcSBZ(xx+D+*^jVE4 zq~vi5%qpa08!0;&%iII9Pa4X--WHrHaz@-M5-s`bjTPuJBN@5|lZpY{^B z75E*MUlqVHTAWE_X}hSmb(5oo=|7_def*u~UNJG)keur%q~C>cxP)F#w~e;*#*PXK z{t6cD?NZe2z7}n}v{Wf7Gs&(BZMd(6rO$UlC562#tQ4L>%bqbAL|YxegR-F**&=*U zSy~QdB@=Ly2!c8GCy}eraLBgbi=Z?gEan2FLs~pvGMwC2c!u5nC;pieF|R*=ppA2` zWu#*{GA#@T`7)+pU9wDE(;nWY+>6}s{AGS^_^(}DWBX*3FwNmdqMihqszt*D`;*W9 zHBR!LfsH(o&QI_^^bnjR8_x3rXWD}&d(i|huE^*yY{SAy1F2G%zs|ImEGQe7o#fp< zduUMm?8$WRf#$6pp!W|n-|l<*mA28x;5p5~rtxCGj4*%Ck@QU}H46 zU5Tzg)Oy=asU$g0v5#PJ2P~4tfbA$;Cb|0&4xH7*kLQnYedsm5FY_9+ql+D6r{*_QI8UeC1B6#t_ZP|>eM zrWKrt@}6l`)8TIEiL}E0bR6`BenmG5!{f4s#seR-So87JdAZDRox3AzLtK4@2-!PT zaD+^U>2FPM0%0uPE2S`~Ub)b(25UgR`dF!Y*&V-6dvjvZ=eb`OO zC-__T9cjAOOuIr)A%@gl*BaT+_!q+^Ez`A54uSj=vUVcNE`XdLYxV3ez6ChyElP#a z)W=#m`#A{5QO;wykb~aRkB}TKDkXZ-C?f-yUE|aHN8-V1(CwL!bYkRbTZ?Yvl0NU#k69S&y_&X`S;5I;&P?)>$(gOU(ObB8YikFQgT!Z)4sU zEAuCFhPWK323=_Bb1lzdd1vUufY}uOLTlAv>1*JZgM0X)QBje8!)(m@(QEbkvw3m~ z+n6P=V~pb23wwLo_d*LTTh;?bA(AQjQhNFV{+}=Zpk^<%2)pHffKRh9fu)@hT9iJm@9u`~%l5Ms|zK9qG3d0&|@a$g$sTG6be|ECeOO zg=zUfD?x*Y2trUsA??3{(nIDy#Tod8vWI{f_HA5d#8YR$!QpP!)^Hqz19X$dIB}SM z1Z1*73_lVX)H>(%QRLvQ#olbe;f6|nA_6u9ic4q9+(XC@>k84)IR))=1&4Q?mf{@l(T6E5txnEBB8a}aRZTMO=T&w!^E@n*p zg>L%0X-s{%0hsy;k&62H*qQ<0zo1AUvN@QX@zgmUR?bdxHn||mP?si`_(oZ7`Zs2l z-*^YT-xMD3yH%sdziWZsYk+Fe0DIs$_m6HZ;$S3C42#QY9k~2-s;77F5}78cOb-e( zUEoaq)k#Z7_rrvLuT-bN1QkFRkQwB)10 zm=m(SAjG1n#d;>3w=!Rw_li0tn|+~Jvu~r>wv%OR6|!~Fq6={rT7F%t;)zCD@4D)V zD$#6&p95HaU3tP00%!TkJa05Q_tZC^orK!|wtfg#Q zO^she7fdh1486lDoX_v+-%Z5Of+_lOtX~+0&_meUdRKo8T1DGOGte5{JAel=$XKG) zo{`bR(yikg7wlyXN$~O35Kr0l7U@nbbeM{Bs9pj+eGM0B1dhl3skynmMTf^xUE?S$ zmf~R>TFgILDC$qGditBPjQC4%s7xcE3LtVLo=a_6x%Dd8KO3sFm*`FUgnHZtOrbf% z)BJonQG;=p$ts7bU_M=k3&>Tu(QvN7m^7~qQ!rR6_5FNa9)u~wHHN^x(jU^ZKXDyT z1%QyICr9E69cxgQvd3O5BucQ4ttni){w?S)i%ATxSVOWc*Wj&|X^u>u{TOd#i0Pnz zV9m+Ld-RoMXw6?*gP3`cbKIyiwve3>yy}ORGV!GudlNY%6ppc&Paw!=Nzt{G09edh z-czMFn)i@9!A5;5=VQ(}>nsnDk4K@GZ~-Y94{;A42ZEry^&b$3&pE+zP{=oKCyqCu zPy8=8bKcRqH{j;R(#%a*>gIh|Xkc)XZij0~9IV`2Z=^|DRSiK}ac(jtWE*R6_mkWl zQcD42X~S}~YP&fiRK-dncjYRa3{jU1&7`(}Ya!{MKs888DTe-T4a!p6;CYvc3i3SE zD1(w4lO2ombhtGnTQt&IFo=2D0d|8dCwUra&B+w&qSr%^DKVLIHkgf^8OJ4+F$eaN z5^UdyMISSw9iTTRx>qPEZ zaHmSTl|@8*zP;l*$4RCq%%YS3Xg;Po4cKDEoZHo6ZfxT~&;Nlt$}XMCyw$4K|I6As z1?CN2LE`6>vj7y^6W_9tn`^FO^iXeZ<*g*@@fQ2+D{(_mmyCQngNBtA0qHW(=MQKM z%h@MuFhOv9jQ1EUdb^UP1Cd(>g3=6#{i-I4}@Hm8N+Q-_{v(VE*qybvl5i*g_gY2sj}sv=QT$>n zw$m*1lZalY`1jc3@Yh44_gY_vRS#96R98{kZ@@}J7Ns)&X`CHzf0%|@DVKi9+_@1$ z@fPs+vsE#^RU7ob{GAS}>wG{XsV@SnH_yC;e;D+-sR|2Rk}E2*1tfZ?XfV z_{wUqxs^Rm>`)s0dS#^ORJAT1K;;eN&_-hlH^3r~ey01%k3^j77x#Ho#2#5|dd_Wq zV0S8`iB@9#ed?%*(7=%?O5$1I3iS_b3yV4X4@L)4?KIGrKGa0*-tNE2PTRG(^4p-| zaGM|G`L)rhGax{?v-5WZ`OW79{x3=0!?p7sBlWWIGP-Cyk%-G{`cPdVLh5^BrxR{` zz%xj3xtzj^mJ5$jglmJ88L989JgLPUt|zmc=8XsnHjA&HxzavI4SDf?Ga0>CYXP|1599#9aKJVUHz~n;KvpPnF zFS!T?7pL1^RNr0%4_)wF(gjNz=)MvcNv^Wslq45NV>*edWKf;1eJxWl!(n>yOvf2t z#mVyDa7V&l^;WISkZb=@Pr76;YE^J3i_}?Xy+Nuc-$Ojody+#b(Nv6kLD8i|s5XL` z>rd-S314kEoh&81(jT_utE@l@$s5sIak=fv_tyK_th`~=^mz~@nOkwaBHAm1ax}7k z`;I}ewEQzd_B~}v=}-TW35wkMeT3LGCZBnsUJjy(ZLK@@6q;mPnf5w}K-2pgN_|TG zzq37EFDu-uF8YSmsN8H?_)O9zWYkx#CwE6N$M(h7aLYIdFFNTc98AajiorOFt!jWF zHr=Hcj-s*coOO0|>K%5yR{fg3a}qwH_ScjUD5}uD(junab|^$Nqljfvp^f>P4agOK zDa;Zk7Z|4>TgBrql)D>q_rJU zXe_c;Q$RVa|N4GKBg=_CrmLPR^J=cC^$&EnoTydW?T6w};oW2kn!hT}p$@SMZrCmA zBT2E6oby*C}dD5wJk5q{t@;Nbt@SjCKn&))>a1+Ai~;5G^f1iEt)-| z@5_t!)prp+gyjk?b`i1S&=tDlBKnKYSEyM9QCGNJrBM|`Rbe-s7E}<` zMYZO%w*soT`-Z-+Af^PIo^NnfQuK!;i8>a=nJ6c)u*0Zt_>N{(6wRIY{AT2pIM?k? z*D9jMiI>R@L$RoHSq{nK$4j)U5-^*0i5$&{kGMpg%pykniB_9M2eJKg(#@h~`Cdlf zl|$@1@^%$*!tZk$?kYk}uVxq($uW66?Q#{>#0MAYva4t*EWePcvS=X|O{9d%qN#Zh zyoJ)CC08SCpds|<%_y(3@Dq+i=PQd@+AWH66JD;aN5J|V+)aEYgqbB5&Byhi>29LG zX_32%}PLEYHpG{OFH6SVS(^z^qr4JbKx_=Ez784LGkhnIK> zN3C2Xi(~`4?jO_EYGSdeF}tWiI!UGW^%a#y-c?lcdBRkR_Wk&zl|Tbwa)UsI$7#EZ zB9PZLNuZCfDgyP2V*)j#yFQ|v{f8$CspRPkDh)WnR7$ihbHbi>)D_<1m!@>7u85{5 zzQQDy9jAYNAsSjo@~jTgsB@h9RTs%Z9H)ZnBB6A%)fNk{OkTk){Gz7Eku|V%u^xGm z8OH09_^J~N1CDWlN;KY2%o7zi(px{#K}(~y{xCIXY@nt75Qb5B1I1rdbkE1q2i7&A zeI*=FgTMObqjb+-R2ErB=}&(^v1vs!14O**X%iC|8)KNdnWr&lxS?;r`K|!bR&1_8 zbpoOBaexaNKSg^=`vXNq@$X^ArZ)W+D8fYG3JMGop&naTD&*xVE|A~HEKK2=JIL&n zC@VJSJ!^!nJ2J584D`|KRP7&yTVVc4CD28r0S~> z%kAsx7pcU2t~FbU_NE>pQ%$sC{4VNMQ?#o*uPHhgY6v%Kc*wAPCen$T!bALimA4`tO6C!_*XRQ}~843mEdWGJEiY8)LFREWpgqgFyEw0O!V986b;7il%K{q;1r}Onhf|%$_ zZef6*=SwrgpxD2vPV2%%eYY9ml86C{h}EQL=c3-|IQ<>%S9-kO6WU3jX4UvM`}G?nccD&s8J z+kz~&5vne&J1$aK+1Mn5+6vHYXt~BBG`&TCaMcBjcw$>hI3hp|xz?JZ zS9oH}LrGV^6znswnBS^*L-@LO#~=xvXV#s#5F|2Vnun#fk>bTO%gU_D)emMFTCa5*H?0%PR^kl8j-J%hbSQ z^rES_9MGRIz@=)PJ1vhW{sGlXMSQw zH=^zRs31akcrIbtC|tLSk-3aP!T%HPe!aB|)V;Z=C(>%sg61%Zj^(KyH#txBxH>H$ z)t-4YwuR_#cVrWs9E-c#wh$9Hu`Ih&Xe122s+(whr0DN(cq1#ZN-W(L^2%cequG2;HT%1lxX}BSB2Ub$KzXe&q#Y|o zXIo)BD!-i)qR}s(ucf?b(LfwtOShv%v&v&J6=f_#c#=KRgi}~K2mB(P$lGk|Di$7~ zmaSns#hj-Jtwpryt2IUo`Ibbz8(nNI+M8bAQxNWO^&`qt^%%_7D*RFmY=iRDBL?Qd zigGkHMsyOVSJRakkbg2R9E}w%Y)7n?6FpZN9V>!L-)H+R*Rx|4+7t_3b@`aSiWLFk z0@2%8;Sq4~M+JEw%gfMjWbcv=+BP{ixgpniyi1{oIN_dte~;mGG5>3nN&w;(^ZAdB z8R~WRWheY0ftay>N0QHIWGicbbuy zAhV7$5)hYm_wN)0=}5~{kC z#`E|7657`RMuyKay3zqN;qBeXv7=}%VwO-`M~wQ;t!ZXQvBbZ8JEIoaln@W8P5q>3 zm}kounJ?HOEhVhHI|+-YtCx@5s3y2{^4i|FHS_y#Yclun{gqpP{NV4^3u z&ieQ?2jV#ZQ5eImORXYns;z2z{D|psQLnL)UUvd^Usa}BodK*$E~RzG{Qc%aI@%d? zV%tUZq_gl9n>vxHi&!Y!@@YdC;UKi^lX5zI47jRQ|jya!iDUd2u84!S11UO|n?^7k2a{PylYV1oU$@NfKnx>~l-i zD)rROOU3onEyhObsW0e8qHyojb|cHnOPFLSMk#J7?q}F!$k`aSg^vHIRMPZs733ut zNcABKvU$7_xep_V-kF*v2~Urq^I0bqd55tnRiSF@=s;;nqH&{Z|CB;Cf3IeMMyhfW z7wV>0^B6{P-ExfFpBwDpKt4T0MEat22AWb2WRwQ+p`0$Z{2%2cn_-t@C@0m% zr5lXGN^O(@DVRJ;ZTw+PRLbcYf}E(7(`_TMrJCP6s`V77McO+0z9;n1ertP}mAE(p!4lnj79xte_heROgWDMJRgv54D6to`#;0rP zgI>@>kJpw^7+)e-0^$)w6hTa4h#TWdKs2qRYP|vR$r{!};n6-NA(r_s#8+#ILkwq# zU&oe!7`v8!=`HGLcgUQKPC6i#+9ivcVp1keN=D}_6-zskMWFD^q#GRmD27BIsHQkv z^wmc+5~f*{-baMH-^u_xu`(C}TG^mTC;p2Oti@WuFdsxULCGW~m$9>kB{L zq)Q4G9Y0x| znnBk%JZ%OmKwoOmA8OcR294{F#1qr$Mt_0Rl^2TP|0xY0fGKv&DjK_8RHStSgunRv zLpn1+j0||*&>+3U&Y2fl3*9llT>}s_KAKlitH#DXP4wN--x+RSK*8 zRHd+XO`#tLL1FcqLUjg%P2N+f&tMVj{0odwDe%%%8&;O~hhsD6mBGSM&}6#JSxc=Z z#~~Pl)(23_AtKgw2&QU94!k(Ff?hs-N1KL-O}6)+y`!k1@cUH#o(2qsJvn+7y&MXA zvcp7*90q%`@ptAa1m>& zGr@{9m)=XGhl?=*&8>#C1eu~q+8LhFwOku$S7k2!HHHt;jS#NxHP=b5JF5YrwnV5s zCbDO!*9cM1Hue2GS~3FeghS({^=~_Vygl70Z|h3+MuOpP<7whZ5cJwOIyF-C6{E+I z_bAcawEGbAn&J5Uf`tpROcs3G6?8D7&6iJcD%2Ju{`_ak8wF8F_=!%A5?$@5jzzPm z`AclAy9~36r^@P8z9vZEl^mVtWaVwmG;Xx0Uhc&?YfaC7qRpc*>^tYs$l)}-$dnyDCm6|HPD;Vu~ zbY?-Q{mnN_osf~JrRr!JKNh6?augjOi@|mDDDoaBs@u*OWlvG}VA>{+!(^uS3tBb~ zYmMEYXvV=ia&9EO9|uGK6Kn*PB!!`&587KafEx3C-bAk_Q{;FU`rpn*UW~nR-({}( z52I)XxM4A$%rum*GYnHb3oJm#Ft0wXz=!bk?Dvm36078s*&msK#wx4cG?KeS(FiIZ ztG3_slxvggz&MNrpmb-v2y&bbQv|Qg&LGD$;pw(+gfVd9?1D6vu$K=@#!Dz74R*cL zQ<{<{;?n~%ByR2fChJw70|z$h0}IDZv`~^jBEHGWE7hvnXtM0!3DUsc#uR`^T$i)! z#nwb75{!By(MDS4rI0Si$tQ?($JNu4ho6iICHS>9lzwM!6^H zMk7`7O$19oJcfw>K+LOSs83bIC4)RCL8`V6qqdVU%mvq>j7cJ~%E2L!d<`P>wLb(?#PdLghf?x%|_E)~2orKyR13+SLYLtm#(lwce zW@1FWXI&|K$Q6_`DKX#V#6rP&Vs+lC6V@LiAr99ccCKSs)^($ zm~+i-1P9^bX*WvbxKLnARoX02;Y%uAPm3xEU{%}1ZGm@8OQ<3MbE4(_OzY<(#k z_s+m*jKuF3giMEUY8=J}`=CoBmH`DJj91(Mmix*RjBQ1+%egX)@>yWIiAv>Qx&5=@ z)GtSPik4j|BS&~>A+!OX^s~EoEX6IFaErf0tEBIJFqok@>j$?FgH@8>0bqfrx#5Q@ zwt)Nh(p80=WwPs=Cn(PTeO=+ek%l3nnwLMMh}CTsOC}CASfX+aVf0a}B0wiqD=zW` z`#4%w^TgiZwSw^PFq*wkG)^x)%z$KwfHlad;*l5x8NwaOu+OB-6}GOSHOO?pqclte zMgq$rI6`PmCgx=C4eGOA(sHl7Dlsl0q~^CyGRHh6R0VvaYU zWJopB2qBEK`@mP5w2EAHzGSgwC@szvo3!Utcaf;xaAUfhe6&$(Im{S6@I31>>FEFN zp45?khz6q;F{7X(SM{T;MIx%&2N;Q=K_Nk$I%unEA&a^m-VbJQa4D=a?pY)psN7;v z!MOuxXGFZYcU}L6f)_*GS56?Gvm(m=W=9?g_KmTNcF4ic_Ssv>CmZGcmxxHaK*Xpu zfgd~2t|g*}ZFUExmqla;>abK)u9-RrtU`lXux-*zT#u6J?wr6urNR;i(Bh>Snoh*i zjitiZ<1+hYI$k=MOnOB8S+;R+bHtlKAa?#9mbdw^Ov@#DCP&L9T`>jFL zg0SUc!6aO7Amk5J5JpX;4l6~3 zuhy0)E$v~>9R6BzGf?sCNS@;6*q*d!B_@MjH|gO@Fl100s<8?_PX9JEY!%Rb5J&xX zi9jueZm$xJO=*U=N7k8oLe;q#w~I2?(P=bYvyBwDV(AE>?BZBe_D>32EfOlOJjHZT zi-bu`lCAe>!D>-6DJdCDC^k?^>$x3Aa?`mgi@9qbBPdJ$JW>i%d+g2l7C+;1x?tRE zWgYkSp@|mrZ@sD98sT2;L2oOIWpn|8QXXV2yLwaf8ql%=dvZ{jBjd#v)~*3J>ZH)- zHE7rOW9jZ15m8}cYl9nnR?=cV)w2{0Uj>^Wc`a-LpVq3eS+sJk7-m|#SOJ{O0A0F~ z(>hVb{Moml0PNCkaAhgGH0+)&Ic*Xil(bINHN7*ikkrlU%A5(Jlj|@C4ed(L*1^h5 zZbhN%!5+_6GA&3d4^*h zaQPAzUstFrP>vp^fg44z@3mqaI#BoYE;Nq>Pp{l0WE9u^Oh(U#Kk7< zr^+9QkmyeHi$z{+FS|~pWQIPq_q*bbKW?&qhdxC~#e zU`nPn22A?)u;xuEDLAoMZY#Dib?r}8wu)fwCbij$EnPNEY0*|}cRtgEzSs(xp4o(D z*_%SP!5>kr38iimJ;m9^ba|VY<)1XC7{X`a?~Th@DDNL(w^kcdORVlEcVXXOxNsgs zySIx0LFLuTqFOK0Lq3yg&qt}fDoX$kgV?X|^C~pEe<)m?ZPZRsrEK)sXK4C|(1o8j zl7o|&*N7Z(m@REk~eurpU{r7A;o1<}D0dSLCifULwM32T(@0}>{ zxB+eBZ(ai>qF39J+b)FbG>{@HR$P$N8{ZJ9JRWt<)JM;pbuJRY66@2$+tImQ!n;yj z7Sp4wsyh?!jyzsfA9ssFb^Y0e+;&5)FaMs}?M4m%bfp!$q33oPLLoN^pV&b+b|dq> zczVT|sW16`gfXKQUV&$sh}0jk$}ZgFS2afwZ(S?O{0QF1=o57GBLL5-$74o_iw}3A zLN{BxdiE5tAL?<+9;iqAdX&9KgqwC7{FDfs+^!I~-%cU0I+@Zhib&fUp+?blAEW3G zA+-Br(XnEMoj}G=CXskcT=%&^PJ2bo7PoM%Sh4XVPrfsLkt13Dxh9MGMywH(B?ojj z#*aunsXI*skhoH(9?1*ilkP7o|gT;7^`?GwS3e=rqO~(;Pzaj) zi@mDJjxuQ8U^J1D(-SD-6PWbBFJhA($|zC}4lDfj@r;45MmXIHg?W#VITfBhZib@4 z&S=?2bFu*~kC*VDrm|fxHRD4FiT-Z~Nq_sUyA%c-X5}<_jB4&k z91dGknKgQiQwHAQ67CiQ5Z_^EF)u_2mM(9NurbY9j7bAm;wEu-15lp9O(_xE1hHz1 zKZsY>hWZ^4=8A*cDb?OQvrx5D_5s)it7_7l1EOyAjP9%jFjE3#u0cuI1LlG<3ntg3 zwg-h*?e;sEiG^lC0kDK{b=b|Zg=T^5b_?=o#X%9|AE&shdWJ;2Ibx()VC@^8QS|7b z=we$CS&9nI3I8DH>57^cxm#4NX|(OA&7mC_`3-PnMxOFthHSv!fW z%O#TR52KT`3Ziz0v6HbhjXsPuzMFw`^soqadD`464pNUiYsOuwA=S-?D(VCj6l29oXHMbJO_qCxr|q(JCkT5#v% zyqPM-N`N^CaxqS~nEP-@?Z{IRtr1alZHXjGO||LGT4bFpa@8MyNCJrLUV^|?-?nep7L{z=E)nVHl!Uc)OnP=0D$d*m5oRYyV zP3i10@O5r=Dt#OV&>+LhlL0*Rgw@piIL05};*o2@Xzp>*wC3??MNQBb^KOnP-g}Q` znU@w%svkzb9v6LVZ`QM8q4c03Cq!N6tA?hNOqhbCoC6||uAG3`?pu%kJ;APHABsGQ zZy6u%TVAx~Bz&g3z3Idm_)6_hiKb5Nz3pvqxhbAhdF=9zFF>grY-N_YuHnLv4cP+Y zfbEPWEH{NVP_rhq>=bOE7wzbaQzF&=5pU6=)8|Ch2)=-CX}mGdmzy9YqE%M#XbM_N zmVB{W4)n$rz*3W$i5K;Gb=e(irac9sy65`Vk}gosOqY)*DU!*49a@*36^P~)qBsk~ z%s?jn?2dQF9@{crH0Lx7h0~sNg};+M$@L5lNmTKqv@;0b@L)>x7o$9s!Bx|P2A)Oy zqpGy$EQ~@Nn@>F~no{67^uffc)aV?>-tqOU+?R5e7NYv;4$kv+70N#+>X_!kHOBbJ z7O!2btc|1fm5xY@k@Ja~_En%BtQuAM4wN>nA6lY@26buwXK)UzaJQ$^c6OD0c^?{^ zX`S7rnRXq)5@y;zb*cV&?6f%)PD$r6Xm`0lIp?v@xn68>pTRx|uYN3-zB(@&*2-+G z+||8deX|KRR1e)IIa5=SefL}e2ib-7KvXSg_xz=6k1lUR#vg|%<6!uoa# zh4s*i6!3+ZZu@J6Vpuy*z%KeC3pBd|*V^s1AnS z7#TEo?5k>Df)?tc8!fyds`h-HjPAr{&^~EiV6KdTS(-uPVU4IwM8k>^+hXoj!;qaZ zJdg69TxkC|vi)-~OxZt9i%Gi*kM$S+oLiZS;nDzF5MY#FEe(xn0LL_OlLo;c1suDc z4Nt8EYB_7Q8YBegAR2vDxJNg3L92N$5n8GCNV3Nn4ZpcmHJtY<#O3>x?QyZC>nApG zjj_KQG4iJKBXf9h^#@3Imst@Bc^FcYsxO zG=Ia{gJK2Li*%_LY@pa1C@Lx{_7V%RcZtCgV+4CalqBj{BZ($4R*W&0M8#;VvG^fpFVnNGxZ7tZp3X1jxAQ7|CpwyJjZ039ha&GQ$eAVepWd%k5~h zbT^7wEpgYGnQQ`9zm7EQ0f;7C8m)rQ{W%66XJJ5iM35I#3w@G6_yh#e;#v=rJ*= zNtUoatbFeA$0l=m{MYTD-rHKt(t{QBlc~ozmTHj+MY0;!bYKqxiP?i#i}Ku)p)|%E zVPa-56b}ez&=2y#Fkn35wAg(`xkv*_qH8C$YA*eHDr?{cnswyltz}MWvmLctMQH75 zZJ1`kGp}c~ZjS%b=V!F#T1H_iaTe!CdKIRAXR$>ntR|(L)skHXBg(~$c?*LzapG35 zbJ|2l?O8!;a|!P1xAWRRTG0tK`GPjq@hQEz0B17e2$j2t^B?{NXv9Sf=~tZS*NfPl z^pz92UBYgqNGGPP?y|X!;_SfH|LzM)yQGzizR}h$v8x3mx!iiiy6nCeRm|IWmBnPu zkjCMcKH#O|g^9}r?Y@o^V2v*0JZN`=T^K9rP$}}v(kjrz%UVg_%b{|xMvp@gmQAfy zu?dWqP>MEO)?!6qDV^r6!W_BM6^_ves(S_1aTPT23aYb7qpJ)L*KnsR;Nlu3UqxKz zS4ZB2Rf(LhX&sBl#M)H{AGELW2W@Yfd5u44SE9eJX@dhF<858EHAfTNQ{_+*poEI+ z4q^-yxSrrTPJhO`(yr^+*j}xJ;wkIo`timo_gE_zwCGP<4t^fUj3fV-NZz4)I0LIg>k#lCTe?2o1pD^OGj^My+h;Q${jnr zsZm+J%S>6Zda7cD5H;kA9V(*JSb6 z5M5u>#Jifi<11QlS4$RSUtxk^jOInD@jdJvEcr@qN2~0BZGJp$Ir$Ryhl}O_=9{*B zQT)BldK*11&ARIw%Djh04J%F8?!m)f`*ERFtLD2zeIvqqO|r(Z!T#2Q_~^lvw#}oq zR;`K4n-@llF^Y8peQ(7U5pu!k``j2>}-5|KDv_J{?(dW7GdGQpCQ!^or_q2fFU&eU!3Krw~xO47xDAUF?9N0 zEmZ7%rqiAv&7ItHG@pR>vOjTk;s!$`ej3N$IC8{a=LQ~A8IW{g~z%)?^5^#HxpVs`w>lh2!rnIO4}YnhWp>qlZQCb@~fY{!mK=Fsn?%6 z{0D_~+D%{l2i`eNXzzd8yi%RKF$X|XMano(5j<{*8)XMP(yEH4!4CyQvk&K~2(~*EQ2t}4oL+PUBu$IS7)kPfm~M=AikVF>K*^6a z&qB98<>^i_hXR!F49lLakF^ro%LjDivF7b~p6)%?s`eb98)K`A>XZX0#}D~+_6sNO z`M41oWhak|LU`s+Rol22g(hoTJuH81o4BajE*&CkYw7Ozacw)lsaCbs3#nkJN7ZU8 zz`R-&l7(6dH@B<9*(&+#aHp86LxaJp4)1InaHEj%v(uiTeJbS8;%BJIS=#bUtD3Y(DlfMt-2mp*WUZ_h z{ETdsIr57a_F6CwCdk;>!VPDhBJ{V`M?*ojj&K4zw+m6MWATnpwc)5fdV#+j0_Mox zfFPt}fl4wgRLS7aoy2At13C^Cx#vsmitBUdJ=cZ?-*m`lQLO-C=Z!l{ty<$VXwL72 zHcwQ=9~m#Sfk}T$?E-U3pB%FYYe;i;5L5-*Eq^znIky^xA} zo9x?~pb{t2R+n9XS?Ts>F86b5{h>y~v1Ty!{9tfWnrLRD6EATTZN)tb<10q$zS7E+ ztJs*Eh#hAIe1S5ZF79cQV~hG6X)XRQCBMQ^okHuR>n+}p*I~xt*R^-))+?<-`Q#{* z(U?!{86C7|^hvhihr6wnocs{r&gJy>j;=25#LSdyQ?CGRe4}}mME8P-7N^_-c6X=a zuQgA%RoHA}+=PPB#@aMl4Gb0DU`EyD4mEhE#ZVFhxc?#b4F=GvPR!B2s8ggV>*j8B z8D+RFx|fetog`IJK7wIZwAF3JG3BjRw8V4Vuc?9aXB5ew>RnAcUpibdP@#bo^;}!*2iOryX@-t6kymh|5_t% zQOozZrKlP{Snxbx$#{;?V&`s)Sq>ES09(1!Zb&-#X=vP9f{J{=uu|s+b^4$+=Ib#& zXl=w#S!%?h4fU)g_1T7sxRS9zH zQvf{yohkPzRT;N~@EK@W>n{zFDdP&<%y1~R*&5l|jKxj2xCaR>xj=Hm)DJgZx5kCI zU}kw@gahKR(zpItMwVdN6lQ1uUdNiI5@E>Bfc~nZP$nBF8L$#7_Js@Ki|R>B zvH4265awk~?Io*O>@2-EPfnu$q71B`xdv`o(llfpzkgy)lITL;w&^?nf%|Y(49`{(~u9mom&0KCXYyA;YA*PGnVlYCl1fvyC$i+#7TQZ#G zw8(fAK^j(_w$#ZZ1%#`%>pxmlKtx2p`p>AR!npx3AKQaS$YaYUWnI7AsF5P^lWfDZQj%j?8dOje zk8YEnZLN>l`sHIA#%x7?wu%2KX)hHNu42eTT!vaec$2fU@Q7Z8+iGRoC;?Id=94)Q z33)O<;#TOkET7DWA5uSOQ8r?YzcS=F7T~#x72xs?Kx$Gvd4cq3PL0u%)v`EaB*hmN z4T^S>l&~Xf>3j5`nCPTs-d$KkG}rE(l?yFx)mb`GT$G{K#Y7NQDlCeZZGRT#&ufod z_F3O5_8I6bihc1Biv4Ck7L3`CzN6Ut-I45@o>Ay!XFvZ@@*JOYCmSR8QmSn&3lwu!$DwlnD+2W@ZXV#?Ryev&|o>ST6e0YfBJks0b z9DY-AzH~!!c08##?>fPpJ9rO1q33=ivLs3>^ighy>(tOi_-Ld4r5-M#wifb^7P>&c z-yf$3E~1at;5fB&g`%Gwqb2;i_88rA713V(kD+UGa2-619seH8uJsg(a)W~{c#LMa ziApXf15}$!yZEQE^2+z`(M>neKwI*f0!oPHUcpEIZ)Qa&(`4jpd;gIu+`=bV*;wyP z`iCBr5H(7Te*;xj%yOylTd+SiOXBkD3prG?q=?fxkEfX>MVk^{z%ZALyj=S!lB^{~ zIhV8UN-X~1WKD=9zf#b_sfJX)lxX2p@Cd}gb-MNCX zOe5OhjuB?zZK`b%;ac1a8frnsuO6aJ{7Z-ErA35T&R{hzC6F5lWzei=Lkf2nm9*nY z)Y~0zjUF}HLkg3HM|GL6!!0`Ij*)BqGb&zMM7z|*w{F=DT{(h;D}hRjrrO;Dw7RtD zt4+d=2@g@%XLw0=>F05wByPJbVJwuBnc$BG)Yn7w^LbE;F}f%WF9SmsT(1G$@(_c3 zzK|HFaRnuKm>3>>gb*L}26_U+Nn*5B7-lKyTuSx&l;bHndoM){1#j9XTDS)?clPG5 zSl5%NhnMhl97tolM46=Kz~hA#XT{W;8tecjF4NYlsm=~O-Ntn30IkF8VE$nO$vt^8 zg3YoqvmA31>vcDrj+CUb2}#Mzn2@Zgn+e4yv(Ul>rGU>n8*HSW@0m~}V_xiL()>urUZt}r$ld2&8wy_*HZ41kW;!BYKN~=n<&ck7NwJlU0@HZ z7FCbrkaq+rQB#gbGGDd)-HtnS7*eaNm4ILj*pAKf3M5Ou4aOMaDJE?$F;bo1f;kc- z!~XSaapMm-%O3oFNl{He6UIpouZ>@jjssz`LsA!tjX1UHk-+fRIWC?^cB5J zP4_a2iQ_dje;O}(o`(1dALkblOzVG|=K6_Bo(1;&uNp87T3VY<`-yU8)||_yfhOne zHL&0Ud6p3sJePQWT$Vq`PQgcm$gzQ59|} zZ*a@xDd$#)+`h)Wz}O4q%1k`<%+no`xWQ|eBoV$mFQ;?jAnvRS5r zJwqH^$Gx^^DKb!$a&u0Q{4jV*J$s&^{(+)uQrKxj->U0fG(naLXWjuaD|PJeKI$Xe zMpdJy31-Qt!a1%jaO35tu}m}5@B&7r;RVdhv?1uFHcNz248HjQnr`OGZuF|HAvd4P z!;uh!5pNQ}M@>K&%ehxOBv$6qXUaaC1Jxh^ftMf66t~m#RgmxqtrhUWR{e$jEmZ!l z(DvJVuwV3W23n;2gL4h1X?KvYc+`ey{FyDu@K=n09a^X9evl~Z(jDEG%a9IXco+o) zV*pG&OHsiX0PEhPNx>q@?J#brlWJ46O-|A2V2rb)caUd@DDRik+Nhv1Xdl_m;K^Rj zI+uEfV7Rnyr=LPV^TT$!&%ZskQ?;`Ab>B|o%3@aVRV#ys^!+1gLs<|l-bT;Mir!l7 zZPdA(i16rhTvlc3Us!;#&`O->4 zjv6hWEDbLRiek^3L|A&(rEhvGzK14E%qcMA#bi8&knNc7e<{G zM*0z&TTuj5I(yjZqbI(%zH-7<0Q=B~`y!?$ucegj71Wk4R}>M>gE{}g-gk5~R0L4% zN+PgCH83&yS~^V2Ito{qRuVI`#lO#3mQY!QX#>Yn^U9*3TftwA7G^`VSt1Y7 z!pfq9wsH~W@bBoW6j=qw5bhtL$yG#1l?Rf$e0rY0_sS7&)^jIN?!_gNQ}FbBG29Y7 zPp16x7a_D+HsEVSwQ?#%7;V{VdIB1!4%m5sT9kqpDZHAd)&iS7Khx1# zXxs92?Y)T?iQ1rx`k7kS#=7e2PrRh@*OvZ7r)!I^TWZc=x_##Py+laVGFH*Gy5dAZ#8cC(hZ@qBdLlrp zxtA`~6V0?;?a05rhz^;9`wR0HM{!mU57{3&^0ns}1$pMzX$H-z4|D(f2Rc+=R4B>utOmkc`{hr1-vE)cVaKR#11x6Ve{XbRNuNaDH4rt6E_$YHCC<9RU6Gyq zLy^rtO63}gCN6>b$X3x84MlC;I{`b*20p@esEZ9D|NeA(*HCnK45coOFhCUaqOpxc zkXAOGmNgQ!eCn|HQB(eLjGomG1GyUG;W+U$Nlp3>7~Xfcpe2E!OAO;=5=Z6E;z&xQ z2+{WcPJ<%RD$#$_Z2k@Wo7P2&rmjKR%KEy>akj?qIp1PGFlJjskKLE0x8;5yRhTN|flK?L0*{qC|Dgqa(RD7IDsPP>jv8Z5xef zj1^_EKJb#<9^|&ZSXnh4VD4+*^k!>%DRg;2zY zSwo3U#b*V7Ud)}?xTUXPGtr=6jFEyvecm*nnW&}xw}@6W6CJh1i|BbXQMLb+eQHV& zi9ny!#l4Nth1zMHyeN0Fos9AhMDi>LKSlWmgIz~nrJFmD@$fE^x_NR^?)GEZybFrc ztmYyzq#koN+MSEDS;CQGY(Hj|;MT^C^su?;==SRdqd^qj-VM|t1|9C@LL&a%ypS%( zzzKC+NOfC?&K^D1t1&-`9Tl2UQ8ipot6PXN%`C`8xxCkR9pfcBwMen$M6i8fF2r@p zqsayan;@KNzu*|dQb9Rs9TjUSg4|YdKBK3B%w}1zj-px$ucDJ=G8ggRS{evMul5Eb z*N+(eyOvfVzd|vSk(xPvSnGsK`S-IxVY~uD3I1#(-;JY3Ek%uj$C01yDR-!bc($JQ zAaR&%tXa4#b4LPNgLj(-&!-`+M5s%gnTX|@6&IPWY$ZBt2fn4qtHPrYY?R+p58a46 z;}BEPH&WeLao@uo3g^PhBcBUb&Ec?t8nzah+FxHUY$H13CBiOkL{rBMTHXeo(W@)% zYlGS08e{1zR|^ZA=rwSPcehVGNwICk4_cL0^r)=}cYI5MaiUShit}Jyw!PVSblu!) zoI6&O!P;1AnY+|CD`-v}Tv^C3^h=zmr=8tFcjH7?t<7ADY$wWTPOE5eJ5ed={7s$} z9EnNs-r*0GSns9k4#{8QWzv%|DcHgXRx15C(q$XgW(~VJF%@dgz!@D!iXuVG6f)%p z6FHvqxltsk^q%g3s%PdDS5FGkKe}F&{M!p>|7Z~L1(#^ad|N#3uY8By9c5QiOnb<^ zd>wt(UU-*E6YLmMuEeHR-hqW^Y-)pF&ry1NOr`2?qnqu;lnUJuhR3dRJ}-<%gPQ?T znu@J>phapI#~6WCXVF^L%G+pe2T@jA^oD-#AUc(5_Zy^DnDVG`>*LlBRHmaCt~sR8 z+>WA+TgGhunuQArT9=lAyV>-hqwtFg_@3n)8lpScJqs4u0ncpt$D~}u_Gb_41}qD4 z{?pky+L4_^D`%xPc^azmY>Mq9s+M?sO*V+sI$Fi*IGa*Cp&@V2qBWf`?+*QiZg;}y zwWAgVcgBD>bF2M;7jG@~0b=ln;CQwLIUQ~{oKicBC~enFI?)+}%f&8)h)|4c^DD|= zIPF1n9 zAgh~julH~k$j8y&!B-4d*ocR4udxN{>BV=PG35t(mM07DsaJ&DW3!@Fa#TpArf zszXtiUq+p~i&{ywmKr{ei^ZeECYTJV@U|2{X0-^_!>t&okz}DN($569$%3u|WZc@a zmIuttOzHeHjm$_X`WiDco!6i?OFg3)^#Ll?%w?5ZZKVyl)gh#D2BY$F>D&hp7Rx7q z=#W^ROTQpXe*)c@U+Yzh2N!{My8z5w3Ku+^`iUr{MJ}a8roAdavk!I(y^kOu$XrA#N4N+ zv<*~VB{y75k9vx*;41`)^3Q!vauTbFHDabZ#8kwq3yf-P6lVsPMYZRlpUY40F`$YQ^hTN*dA3-Kdq&oZ-K)DuPmD5!ZXbOht z6TW#VL%9eJGni=EVUKRIHB(^<9pz1-=6> z%J*4gHTTpbPv22Tptz>+iw`JQraC@(M|1m#%3g&eVP8e)BBK^;;w?dSwvPxXR#H-N z(wxWdNc0uazF#4#fKMpUlieqjG;|{CAK==rFUtBdQtfV`}~9% zOjr|y*-ZEXD@my|P8|lqpnhVSc6&Un=_g{ulJRQ6?7EXJ*VqKpV>}KtyY>;KD5k#% z@NKnUPWPciJLzO0i@|Pse-zSfmt7&pAHJi^{-U|>`oEd5bbdlvfw%t|)%s(nUA4kN z*lU2O=;eKY2^YY|QDUA7CxA+-u&JbC74CZQj!q6hz_<1|>O4@i*KUucH3P9$SuvLW z8;JFG+p*MW5N6j!#?lo0x*Ql|jFvpGSzFMVK|mfohCBz0)!LEKw0E$Gak)6#ZU&k- zn!JXHK$q2KBF{jZjHXsYM1`T%v4mvprt{dl)K8kLWv!_VPAsqieHw57Agn2yfzzI> z=YEcl5|Ba8;k)rYuc?-E+*a7|a*Fe@@5Y{H7hQ)GwaIKw<}+8})w3^eyyX4JjJ>b} zw7#hJe!(%lwBMYXn7gD}vSFcIOaqCE`#O1!zj`{27%CbUxbnH~Q0)}Cj?~N3wV|Ry z;Nuf^lFwWxCA(ptmPi$biHO?yq^PFwuK#IA>&Iz4_IL4TO-RX>giFavgw>Febz{De z?8aJ+Mqb2u?~7ZUiYBFwVkKM7AqbkQ!dYvX8GJCy{%k7eSUzL30QGRrOSN3H$M2@_ zV?lF%q-*v$N>+ zNKrwfrG&TMTDYqhtMJj3?L4M$jE))Nm;cg~1W~EtPFOuROD3{xmVuL0efYjwR3gb3 zQo6DkZl+5K!auCqU&8K+1I|e1r{kE%IJRm{eVm!2Cdbbl)HQ8cV93+?z!4PtnTYWj zmx{}p)f?r>P;*SmrKZ&pbUbXc_)VjX&qN)c%g`XW;y{GWa)7nTUjikxX(~C568@zI z-o#WVw$6m$+AdQ)UB!Xm~h|#dn#42E_Ugc7_<$v1HmdTKJaOn#}5(6D&22Mwl^}?u{08wVat0G)8nU z+z6hYS8?U4(2Ozom{2pAtYbv&%B%Jv9m8(Be8fa`#K)W z-YuWO4wy%+$BIC0{W$t;EY?p~2hygoc)DTPKzcG()GE<;ApFvy7OB0R@j@m#d53{i zZ=5JsXvkhw^sh8@oJi5i2GXl>BHUvwzv+ZRQF3&!e=M%9MPXLoc@*`9@X$)8(kEXa zx|cqNCVqiJj`yeC{5!Y*!ttV!TkHOCIC2G9j!n+5KgEp~Wt?|@$t%dMU((p|=o`bP z(huXsigHV*@+Za%ty2#0%rBBBim%S$l_ zYagol6+*x+eJJTGM0wYKO1Hj38?^kCq9=;++Oc@boG6mZ$HwapIl-*D#{8F8Zd{@j zEQmWF-yUFX7D9uP#IR5YImD{#=B!`Nl%fSH(RLaR<^({ie*%3-5+e{l8J;Ynitd*_ zh0h@M8%aBok@1WwOcD)?{=I_>;ZCp?cgju@BSgIsf(DP*jT>k~CyR38$Z#ZmDH>72 zB;Co~D6ao@C7x7S!f@I!Sq#%g_29||Qo|{TC=~BO$x}q1f@?nE8U1gRn(gRKFI=(v zH1-o}JQWfB$K7f9ROlqFJAIf6MON$13hbjD>qeQ=L{)9uG$Ut|j2|5-gBFt~10Stz%spKSTI; zX^(8)4c^vxPFZ0^sMKk7kZQyOUD338T#HDqDJQHyWZP`fDUZ-YA~~0_@ILkkJme&z zeAkSS!eb~(!(T4H!+Dx0Ge%I`nWA>TP7;OJJItR)t%@qeM63jm$vEF;DZmgrVKd>u za9%QU#G2Dy0m*vG+nDkzk|rZ4XQl{pd5eWEK z5)#ON7OsRIK1=u~wUwCmf`+IRQ_!*i^W<`1$X?KU!|Vl>Li}R}T9lv-K$2ZnR`Vv1 zl~^S zLvkyl8u;!IdXyq6Yh@y+%p6h8aV@olqZ_IC3^lMFm76P?m+))Hodzp345sWkAI4GgTv4|1 z^nvi4GVGQ=;CAe94hJs)Lmd47Zn z%@ZN<4IOyS(Q2m6a=#DP?ubOgi}lOnom6;_w+Zn6^z1ehWWX=7L+3709iuu$b&l$? zEz<*56gm;Is*QXZfL$v58Jvz^Z0JiKNpt6k&yudbhi5m!8T^!U;cbZO+On^<1QuG< z6=Rt7^%nO2a)V5H3GYQsWzZQ=F4nizjU%fP=kMD*m75yu!6-N)&5TC3fzvOw5|shx zEatSaI#}gGf8FD9)R|Xf2b#nh4_g;K=s-DAhUerE5GSQ zZHqL*@o^Y!tXr_$<8sn?*MhH;+Ds;ajK2)#>71n*SrS-aW`%LqJzY^rV0@C9=g)cn z7NE*~ps`m`h}mvagt<_1JLWG4?9Dn7+OCI5xOKVlBEJ?9(eiq|omI05V71hnoC#JPK9sBY z2v#?P!(|4kwPlLb?lx)F2w5bvHmCd*$q3SF>dXg%jC~r`%@!hW>)qN5d}KfQ(Foir z8(g7evve@Zk#<_*=4>v=h;g!YyV0Kn>%Q94sEM-f>0p{?-L=tiC8RienzfczT4ad5 zb-y2MK+?Kx{CSG&Ag%kxC0R*WG53noz|6JoGBUELZ21;MF(ZpArBE-Lwg}@=`E~Tu zBJp({r(1?H;$h}E%EGPG?#uVMH5@ymQ5q*(GcRin*#$#^fE2a?>xOlduvoa4{^^~R zajHz^g-aY35uV@B^2H+9_vzQ%EZEx26eFS>r13fDcmU<#w{&f>sNncFIWG|bxLqI= zKXE6`TE#KNUO+spcm!YQFuDqtEeDXbCYF?B`FTSVQqpp(}v#q@Uwb;p1o{Km3%wdC{QHV840>5J*RVL+zG|V86EC*wtVM&ef!G z2)kg8CvfV0L*FhHp_gS)Sq9I*D~Q( zOILowY0exJ3HNgXt{gFo;Rbj?fz1psOM%DJY2-3&NQyB%N+v6=C7oU-YA1!W2b?k? zINl+tP}6A-T;}r2zvwNCzvD{H2_D2_%sQ<4GaOU!ac|nGiC=ND6z=S&+_zq#nx9K- z96$kQ&X$c?;484UyMT*BB8?}qB2{-_)=AcI@RlZfkn^XQ4JA2@HX&KuKtRw5EY+o`g5g8IY9l zj0wr&_5+GddB{(7Y=eaCK2&*@;1x=pR<7j6$y{ox)AjG1%Aq@*V2#N(X+A+_;7gP2 zXEH+;^BrycPIx3uQ~6HQxXy}BmizuodkL$WGD*?^6OtvAG$AR76Cf^Jx~kd_d7#2x zb9wv&&h}mx>67Lg4~NYOPQn5kyUej;*3?fJ&k!7@$kMSJ0uZxP&iQLeuB2q1Hp>j8 z7+Xjb$^caYh7;!F{FUL#WHFcaX$UgfT&6xip;G-0zLHBIhavTK_%&6EDSj=0Tp8tp-56r0ZzjCz z#7igh?#dJF7Oo0oji*T3bf&Cy;a}0`411^p&e@6BVP~@(1)&n~bNpqrqHK-Ly{O{% zB1yZ6V=JrSl5j!asqYcJ`LY3({6RD-a~Q*IcK`P_TkDj+xuN2W*{+;56!XEYxA@+3 zus*%{L3DE5OK~fOyVlv02CWoxwZrx3)k@J)E4-7USBbDd#41r~><+*z2M@He_|wiB zMkJvbv~U$xm<`+8jY~F5TN9LK*Wv{G!CV{fj_;VJf~*Y;Q!U1c$_S+IJUbet1aPQ{FSe`t!=r>)J&QoQS5t5PnBZ!mRFoRMBSb1-_*}k7BHPz&gi0}MHWFZ7%~~*I zU$ZbIL%`3$;b;ZSq>-X3c-Spg)zGY9;m&mC7gTUy4Jx+= z75q0s`GTUcba)MBWK-Hw&Kgmp{xDP+A+DHuf69H)GH!BV9LG&sHUo2`s3{HA#_e-5 zr#x~n`9iR5ov2TX){0`T2Z4)1|*6`wZLv0I*a@;;3J9VHpPblgH51JNo-1m z*NN`F<64@v@WWq*Qj}ls)RHExLp*3eNxHBOag>B=A7xM zcJ-FS6>gtAT0|;N)`ig@1PP`O4!ZJl(MukA?Yp}n2>ZA zRq5ddQL%WCJ!@R`zfqJ=N{urnPr3fHx|~PC(qSgnU7snbi*ur?VQtuuwewJ!K2`Py zBcm&4tXCOMfAf4=5xBCC2r&ul+-I_eKof2pI=K;(ioOQn&^$s}lgmSlk`m+yd4k(Z zR=Ao$5Sm9IwX{YO~>kt!?74Km}Qax=GhC z6AnEBNAYM35_afU@}&l=)M@*XYDCDr(s?GCOZPU~?6ZTT>A@y^mpU3vZoi7sTEA!t z{Z*86pCU0pz=Sv$2GDe@MdNd+k2Rs0zhX;Ycr>kN>Vr*a|F77}l-}iT3@8|Ahw)N{3c2}P9rNQ9D7soEh5OV9#z{SDmi{fy|;*R zjqiR3Ynl}nonmZgQVrNO$`DO~gH2F&j=sB%-XQ%FUNhe!LR*HmV1MyQ#bjm2@Q^83 zei`e9RLjB?^fGQc_JxIvuJ`q{+^#3Pzv4tLOh{JwstHNO9A~H(7bw-Z$IO)4-VBJdxLvGw&wkYT7c`R1 zmbWBISJx8&c9X^xGE= zXwfzi(y_F}K(#X<1>Q3U7-MJa32f^rOQ9LZ+IezlCXuRINfVTfTI^49+m6r4+Fq)^ z9m6v@8E4mie8fJfMd1iSJ5LkfeylAJ4l^O@zWxzhrLI5W{nA;Y4La@tnT1 zC#xsdEk<(MELNF;Bvm!;PeTDR`|wr+k_`S-kh@XN1~W6AIpNu=o$$#sqCS=_#E^~8 zLR-i6Wf@YPJo037W&h)vU$!t#yTWPqvK=vdip=&kiCC?4K(2vNL2k_I+*&-JO$Wqi z%o`6i)s$n#39|s3Wd~C74PA>R3NvOt^?DdXmn^2(D)hH0nTXD`2Nq9Nk7JRN$1Fmn zPTOvzN;fc;P1G2>^3Pk}*Dy!0TlmY6Ld{SwAt5r^CS0a{YmA4|i4>XkPVN#(;+o}~ z1OF;{*{}F#suXk1I}0F7%6x2=z6{x~_*)_&&v>NZHnYPhl5{4)H;GqR+R&msqG-`^ zn-RLZh0pA{bLrB+QDgG72s*h(1bSyjAcemixY&Ia;0bDS1Qq`ap6h!?$ZMf*0P-O1 z!HvgaaF+Z)?D`E1Lygo@ybLTNvb~KLu+(5Z+T^9c=_V*`J{kD3AnDXb8BmgnqxCa0 z<#MdE3Gt|5jWHql)u65kaqqQOGNA;<^fRF_{#5U3LjH`YnNTD{&o&vtgvl?ccTG@! z<+)%&@+;3_>`9h#$1@@B_1P;bI;Kkvo#b z5gmqgDAT4QEh^<*+7w$sm(+Q%ENGfPHw+qJhtyjU#@VN}l7v^Ly!H4ha@u7{6Oo(G zJ+LB;+9!fyk}4xwvp44t@O)=4%zqs;2it+{L2~btrKjQlrA%j#1@zYTX_<6&p9ro+ z_AKTqyn6lYL>9ezKFpR0{9p5JCt>jT2K z%Bfe(3jf7L<_O##8Cea>E^KP}Msf9KuBMR`Xh(|F%dfvb)qjC)qB>PBgCFgILBiOs{KM z+I0loWlqWb-KF^V33kkDZ|(n&7~|-95}bG>;jzdV2OqH|9-?PQ#n0NL8MOQu&US=$ zQnZhNV@;n%50BwIPs&*eI*$F#?yfWrzn*(=Lvl>LiIIu5a1cRmU6Eb9?sU3+T(oex z(n0aaU>@zKQvDO)(clbyb^_Z!N=OSt7bB9$`wbcJ}B#H0hKmU1|Q2|DPP8N{*z?ipS-qN)CE`N)+unqo@?% zpnY3SX_{Nrnf6tEd-(rX#Mj4URX=d6p{k9IA_A81^u(y@!y>Yz4uiQyhKc`6n@@|Q zT930d`HZNht;Us4XGFMfNDs`su`kzE&9onmup?Pa`dLvUu(x3#a**iUL>9l*97}&*AOPi1*CL*<1dx{i4T`!x!qAAooTETweXxM8lGGT z(&IGvD>ypmhX|I4_#Jo-b$| zlaQB!c>2=c=W()WT0tsw0l!fNsWpDx-xpvkY%g?RkEG6Obel{+UJ#Y)EX5Lq^{DO- zYU-)vSp-Cz<)ynZYm!~-@i=3OAU~QurNS3QKq<%Wb|*LF461DbYIITf#~j7Ibh*z~ zCUD>MW-($R2K#2-*U6oL|K{?gzg}!lBUA1<(a+#ks=s|sJagOZM3*@y+&;&jbCR6M z$drKpW(oM$ddQwerj&M~vEWv9fqhOIS(Ggp<@L^Ht?xzEE{n#V8R(1{vKrtyE*vGfHu|zlmrS(# z#28AwEPU$T8pkWy1K7V>yLYdipI|TaX}$rd$N2oo*%i?qcIVc!i;SULmvP*DQaJfu z!5NXwf%M509GhseiI!f${zb3wykqAGAM)&NO=z{#t^OFQeRa`bDWUd;Ldc6-MLVXbDfoGQ&T{8y+^^-LEx^K_-!=KnB= zcS&OAV2N&{%q*Q>68Q8Z#&2mOk*5jVFno{|T3r$M~F? z$s$+}2AY|?rr%*gQusd=VJxnq`TkqO09X^&Z-Is_V~?O_c|JQFyV+%@S_wJK4UsD4 z5K?$Y(ku3Is2tN+pY_{%>AG-obosHpsxn`1Xifi|9%donp6NlwZ=j*Zhf>rH>`id| zK&dy-8UDllYPp>*o+*yLr#&}BnO3pw>~i8bXUThxOW;Nb09-8pT5Di`7bnV%$VlX0 zt3MK@b`n^!Csgq!4mbI{r%^X?>1WP6!i^NQv=52odJEqG^lvHjmWa?cl%V)qh?6ca zL0{a$JsNXMQu-~-+}r|bCw_4X+D>2Ty5 z9wG1_KV5~*b=VL#lPAaco2O~9&6QBnMqCSVi^)+FM2;E zh{eO8m1gpDeW+C(9~kEh9d1=;8k}6llI;%e13XrYrB|T^WuJ43!6|++AF8@M^8mLW;PMD~-M@B9gpa45e_P2uzqD%Ve`m11MR^ zsKt5I$F2*+n4s#{d$_hJ)`|{+m#584?y5G+DkGD_H8#s!GcyzM62N7QVlGJB&r~jV zn7b*4(A>+g#o6GJAZ2X_WfZ!=)czRiXf^ zhz>0G5_^hp{VTRRVWBK{R}U+idy4m%wctyd0X*%~^>oxKLVd1A^B#b5usFLz&9c`O z8BQg$MMak*b(IoiV$@J-oh_<()sbW?(Jc8+CeI$GP9_)aAca)HH z7gSnNm>1WsM(4M_9ZCo8qo6#(uc+#CzcG`21HIVEHkW*JqwB(3<&V4;!dt ze~plgl6_Qv^7#+4casEri{ukRYWL>>O7?-0#*qDLKic#kWZ&6<%c+&0Op56}K*@f& zx}EIp`cZ>NVve@=Asu;yljkEJvg{4Cu!q#^F;1RmJ)jMbF)v&8fS&Mg*9TPd305hk z9vHjd#<90uNHd<`1o~h1>7OUU)5Yd!*etIFmfWXjPsBk@zfYfiu3PBzQ_;2gcm3xvw_3tf?PBiM72uwOyOb*hy*{W}j2ay_q z$4MK5UDzz6HR&-d6>2LTWO86+TV>g)Em?*wWbrzDB`4w@D(PbJPuJ}UJo0DarB;p) z+Bsk+c;H?`$>TY$at!Om+V7656`qTLI;|KPqofBfds6vXfYa6{Rk<)57#as|T$yd< z0X(o_X~00_VA}8;yZJJQ(EjJR;bN;zPTJW2+#Uw%*wkW`etKuV8vutTNo7?AJ(SHN z>-x&U@Q!ju@NW@gMquUccV&XCGB*73z<llHJtL8Exl^o8&%`nMF47jBzvROF@bteBpgG97=#rrOt z(@(EOYi;ozdj48WEfrMDZZaaxR=!|@*}?ohwB`-EM*3}f$iF>qQ?w-ktWo6^)!{b7J<97koA?gsQ$1g)qCQ^9~`HI=r-p?8*E|`ujPu=9W#B zl)a{LVo@KS@K~C{OUX)d+AD9?9rh-o47sA~{hZlYt|0En%f1Vok1(1&%|3(1*`%om znvTF)Z4j+eM85V!X$BE58Dv2(pUHv}4VnZ+v)GtQNP&A$)O!)sCW2A8RaoGPz~f*W z?i8qKms|?T=H&t76z3ng`|`@wi>qkd9nkL?Wqc4(^z^+54!qIOj>9-c!wY}S?9%#C zoe!cyo0|4otPDIQzjAYi`>MY#E#>*CydBydPRk3w@w(pn>2eu#agG-s>*imB_1laPQI*GL5@}Ja^xzg?PWHDk5)ndZsk%w zS_Pd&qMRVhRnX5gM%QDsW0&|Y3V&_RCAz8W1GIgwsil*?KIqQtw^+ohD*!rWS)0YG z<+iQ*P&~^UJxy@P$_mIe?74j-MyVIC?Xy2i9n~J}u^{ zOHxxHcjP5o>nxk)hLxuqJXWW2X*SCRB&g&5oV`P3_rPj%+U3N`yYc19mU8})%N~k% z*Fz||xbEuR133H@_ybCGDH9374OaE6w6?hJm6i*%O4`c)tBNAQ_54oj^gSz~I z)DWT(s?9%6Z}_+Maf)))duk7lu@&~z<{?7kiu9Oc z)XYt9>gIS1t&@@(57GF<_^G3`%uO#BF!=Uck!yIqhv`R)9$YDh2Yb`- zmIbrb!1x}tv@^c>>SBZnk@Vc6R|&e2W!l&rc^d-m4MPfy48aN17gzaaQ8RZv)~%03 zL7PI#YvQ5P`D!!h2A+HU1RSn0=q$aVo zU?x~OBqrhr>dR-{oEhYm~trI22iF z)MYBJpWR36yyy3Kj7v1pTd%71 zzC|0o^__u({MlYxr(5sk$es|adP0C4ijka#*G7Ecb?cwbb=nOz>nV1@HA^C90%D72 zIp)FMcf~38zWu~6d!*xar+2=3eXZjj9(LLZN2J2xmZb0f^t#$6d|UT}qg{QU4Ss8i5fPpO@|9#H|opG~qJsS5keIps^2A(2n{7|EBN4>(>O?u>(&7}ZjUtt{GmZ^p0rUmqrF+h12z$86_#~J7RWg^X{TETiVZKOXX z1?wJK>PcE0tOtdsUwvzQpmk9n24qBWkchVjO;8eT z?Kq7C5#flv##}{pt5>`&trt)m?_(|bxvg!i;}>KcC@jq z?q0DAb|A=dPkauPZumz+vMuVhGV;oEb5*8CW%b0Q9^2R=5g3{poXkbSGuFUGB}N;L z!x25}v@oay&q3f$THIR8ll87hX3Ufu&TM)@&nfqCdF_PYjz)Rd>?is79VgfFx_|hxtBmyGfMX)= zYPg5H8thS}#N&a%9$fN#(3Czcuh$43a1>(Xzo_98PGW_gz~tIysehDql-Gka7azJ_ zUiZ{09i=yblNw#*N@0k%ED)*z9GXJduCJxBsvBujI>PX${1wUE{L3M?r3NYa8yiEc zw6Kw^G@MvI_>XDCzw3tWOC!!u(pdT#g=E$No2RcFU2}Eh|0z-e-;%AJ?oNMI&`Tvf z>zMFA zVN1z84V_17UkTuAHU`USbvb7!cn~YmvALl{uA%kmStBp9IiNd$;2x64IZ(SwdZo&} zdE!6imF6<}mh6&3I_QFaA<-N+aUQ7RdX(F=Nd| z+KIpN;+u=msjc`PZO~!7XCCkit9keXx%!Q1eK4#t34gJDL@)hiaZJXiK;r=-8AlgzEt=K_=~LXV6;6 zxtjiI(q>%D!rD(qdtuPT(%dg}V0p^BwlI_(5C=mtN{*|jg;e&*d zPh`i$v3@{|W@S#Pn9M1Uj8vQDyWC<5Fq62!^st)lXNhlU_pK#Ej-*a|DWJOUaIf->-fU>o; z$sl=H4}5&>7)91VYKuHZH{B?`2JB&qL6tEL`9Cq09g%+o5*_o1zLOvRp)p4OCEh4q zV%0PF_)kSvuaEdRR7c`=Iqu6^^fCDOPo>&5b+_J6`zz5Cl7Q#_5ph;H5S$_;5GkaUO^_W$o`BMVe(RBX90p&GlLhl3<2lhZW_V7!awGfS<#RyeE{Q~ z+$D_&5oSp?O7Y4ub~J>^#QwYKBzPqq`}3nZ_B44p3}Rj*OkRr2Me$l>@QRVVG?tzF zErVVw2jn3X?#B-?s=6xy^gmXBs9 za`i$&zF_hc&mYV!I6%TJnb(uVR^?hf{`2@#@<2m3-_iO8glgeUOs>wGaP}2M% zRS3fcn9I1K$ygz^H5p%M1z8>+#0)FdG96nDm|&b#&25D;UxJ(*-U4N#pD25%CS(q;8-?)+KvcABlT{iTQpzf0HlT$M1fD{#(Sxi;rk>EnFDSmmc=33iu^1vN5 z5)2)?(Db@`jgW9xLwepeBc*qNu!h@v{KCB5N53Ksn`?>Ft<5ADQ8qq zAq`V)hV>@+Sg&E?%FW>(|3B4}g|}aAR4<8zv}XNn)X%62s}$w&6oJcA(}+5A5N03Vc z-Lt`!txT>)vScQz9%NMYRXad;_8G#u1_L^8LjKJFUF=2u8-QVFn$Z9ZkJAP)OserQ z!});*!{iPiYG$(7RuNEb6H1N*RJRx8<>)Bn_n*VXIBYGJiy^+m9_gw?Ip^81{*_ld`T_kI6J z?lWi3nRDjMnKOL`I~8^sHj+IKam_ml?WhwWH4YtO@n6Ltjw1G#Bu zZW3rRfZV9(0Uy%@a0t4LiE<|3CO0qc7X!%7IuE#!GV7se?EgpPtcoo1h3$sTb1;vn z7gCaj#ZaxdH3Q*c2)P>>V2v<=ZnVRY4u`VglT z)+NSy^3dJq#ItwMr*PH1!vTq-NE^grhm&pkYY~TC~t(Ci2dH7f6*jU3LugHCh!^>%uQaM)=mGh#OerZSByUnpP? z7ns4{j+LGDmBF9!axJsBQ)GP%XY6-V|N3gxpeN7=uP%&&8sz0bov`MEd-OM{d9Ma^ zmyqq7=wy90KpC@(UV*T3PlGVQN_Zig2_tO?uS!S|Akgy?I#*wHFL(|*u^T=h*YbQP zjcWh_u0tU#K$10`CX#CZ#?J!8O2~?h^hX1=di#?n2k!V5BU!(ikR< zr_uAsj)6?xwu^J7lI-JFy4q0Hl-xyhI8vQs@}ahk)Wyo#h4iu!g5ETxvHHETgs4oE zx)6_){T!wGDIG`BUH;Y>Ne5QP zc_Yu`gs*RqBjc_VueLOF#n39;%9);xG#BCqBYu{>BO>$dIyaxHJy zkynfwka&NG;rry+;EFXQ2N5T&AvtQMW}aqvs`b`*d1dPu2}=`uKjThg-0nKA z_4dI&3~O%SPW+4;#qjDnu63_nVgLjE7{~=z%fl!*32tibrAW$9Yp4&CRI-Mqamd#i zTEn5D)=(CQgf*mb=;0{qQ4(4C$XE;t>$X0 zuo9knshxkDS1fVxo!XpV4Na}Z=@)4*61)%HBpDjTNE<1kg<7{XUWb&f0M169=YxKq zy!w!9To}ZzSPONe-&&~dt?KWANn>mL(*pYB5>RiQ=P6n11iuTgF(LaS%#zUxN;K;X zKl+^yImW1q>2Qiz#|e#9J(csTs8cLFLGvAygs-_AUlM=`dx^8uleWfU!rqmMznriy zDAR)t$HG=||NKfS&{8eqx&I{^;neMtJa4ktEsjyHuB2uy)l%+{x5%kvbg}DShwhMs zU0ui{exsC@sz>|3uS$D|{|(k#qV%@1Ot4XOC9C=h2z&gY6ULzjic=7}D3-!Taz3F* zF5{dm2kDeD`vGv4KDES>)8Zdk4`9kb+-Zn3Wl$2m!3{|=q$hmY8p$GPC-CC6jAX&I zeb$f^{(zM*i-#Y}tQ{H7xHcP@m{YbJ!%dWaOSmI`Pe>B|jGYCK}x z?hJd!5amPTydjF-v%%f1oM26uzEq~p^eBXpL6%M1wb9V@7S`rkFQe*kuC&E@amcxr zh7fcckNNtwt<};MoIPQ^U(VMLgIxbLU*B=LoUd9Td$zdT_jJ6iTHeJK z>rHG=5<27Kd$Mn*R`ncri3uOT=4=R2ZLs0_(|c;&4umPZZUjOJ&HeD6(%Y$xJ#SoO z!p2_`K4Zcl5WZr4XyM4Z?(u$WR4I zn7Hfk}n8j z8D;(7?`e1!5cWN)6H4f<*Y9ad7i8`zR*SK>{!79HCM*TQ4@`Lbh)yV>?Lb(wtGdp9 zU7|e=dM!LjiN{8U+KJRUUhV8~eY~FKjm6XwbUt2PsQ8Vi0o~BAJUotmNQixSJE|kD&$yxsEn%A(hTYG+N-w+rt}{8-GM9CUR(6(7V`n%%N%O5i zbHz$?Cr#3HHE23+$7AJ4<9Ay|jSZq~E72yMD99ixt24^HYa?7ygGRH`jL~WS=3GIz zm)j(tCAKuT7#55iJ+l%u(uocmL_h09+ASMK>*+;LwN&#-w%Qs4Jbin+zfsCE^F08z zZf`$6L+1O{Z@M^9oU(O){k9p@qnFy#uQJ>d*EmU>^^+9XWXl`F&t7U^^C`AW#sN>~ zUG}gId2fKNyicY|-hZFdc{k;ht-N=p%B}T&;qY*Iyf1H+ywh*nzz);3-fBSe1-4Am zfT#1W@rw=WHvn6CUz^Sm76*fOM^4$w``C1ycPxBe9`6TRB=2Bb*abTIwHnZMl`WH{ zI$o1QHnb@WoAhl>^Edgx#3u)j4z}{awHkOZD4304Z7rUavE(}o8U#Bqy7hjEqbby~ zkJ{TW;&+<_uWXjWbhCvWp{sq=z^)5y8K>!ZwKHvKM>FjIBg~?jQkXZVbzzz?x>cAR z({y1f!%gRDCTo)v#@7}Gi|7l@Otob^UdIc)tGVdGUz|EU~fS;?WtKBJqb9_ycwP`&>t?>9^PMVL6227%GXmGvf2C%}m> zFqo$^C~V+6>G%t58T_*WHY{J^jQ{UfII%{OC(S7!hZ@gtV!a^`z5{Tp#k=b~8*%Fl zC47gdJc}1osPF)_cc}?n9jsY&V~jLQH(M8|ZlLc5s9r6yZMj@t&()3J0G+VkhCUNu zHg}ohpk$7*#LDd^S=vfH4jb;E4RbO%3{<=O)v-;q3}d8O%G$z;Q0hRnqhArOCsrxf zu9J8}jUKSn^?Y(1qz1P7+E$t_I$lA!G+_9$CJeJmxMPx(ur?DxKNV%%Gt|@o=EWOU zwRM%`B}L&O(hN89EIcru(}qDX!=(xIe2_ZAFU*!h;94nNIa`>8rVUp2c=xZ0R4`1- z<^k)ZL#C+XnY@iY%3L2R8I(ft32HUPe=$)4THb|&u!k{aCHbbPCC!ul?a&q)CrqwB zq|!sw@?Is;$CiR3D%Wx}NmtQA85%jB1`knve4H|IuV0iLAR9YRat5MBNA{w4Jb92d z11qufAseik9I+l)d;vxP0@mv%_%~DXS1V^rA|az>!Z?azpz&8L+Jt4q{JH_;ul6Zg z2fpRT4hj145A7kKayTJ(+wGHU=gf@<{}_7@Rek-h4}k0wj_~eF-bx(NS?(b{tR0^C zK36-)|MpCz9YZl2c5DD2J9RCLCp1Ua#9#OxjQ=pm)4^10m}*u=8G(2Xw3LC;N;w0# zX_#6>u`>c!aDvrzffA4+sl(BEy)>O_4p$#0?wih|v@6E_KIfQ)+YLOICTCqOJC5l^ zG74ifEgp3XgDbIwf%^1XFvCav$nd-=AzpIT8m`iDJ6UmK{1dbmKr{$ZXOS0GX%6*q z)CjAxB=y&MAx3L&4M{1QT0>ISP-|!lOOAWYN2sO!0#z;@PB!7qx@;(@5f-nPQb^ti=46Jh{vNB~RGD<*D#lo{1k=R%=#gn zU8B^mO8qLiu=LThkdX*}h8_Z1LgXll;m@i3XmzkM;Tu{yT8%L;HU@Mukuu-V+tKPE z(@y$&jM}X5G-K!`OR(bzo1-8tO*vHMTeX>aAbVhll)$5a^x-t~TXm4)Gn_tstHwB& zGurEPjyy_nW5Ku0Fgh_7akGq3&@+yEN2SK8gVpIn!D1t}j?va}Y9;f$<9gb$JbbD& zl%9@*Xg^bz@!-4MF#jza*K-K%9gjFXshWs5XTwn^aNMED-o*Qh>Xz4Xv4@`cb~=YN!(3hU-*G zil44J$A%e-i)BAi_^AnR^hWH~qyb^X&%ojn*ui6PgaEfTYoJB!MjU|28vQ(jxeXBX zJST~E7_;270X}f&yzp8A7f5f69>e4 zlqVtAvQ9@>g4<@P1s;c`d8w*P=~zJ77NsdK&gS{i-B>te^Z#fxu5EhKiBz>Uzsfa3 zt&+F_Tirj`sDt{-Hdm5u`cEUR9}#+Z1N-_obzPwD{q)ts-CsZ(>d@pBfEvq!@o4Ek zla&Mla)u`PP+!%q66Sd`4EMx%=qdvGd0FsFTHHzTX@=_Va6sZH;?xX?7Yf1NNnj9M0dDPILHmA9{#z;^{uN z%Ya|Xv;rwebTFqq;;ezGgXUUL>}^k zuYt@KCNHY7&XBqHp#wA35?w?d-g@Bi`WWzViH#NS2B21__-}=rK%6enU`hLoY2!ZA zF8`XU&BB^y(f-tNmRhyKM<|z<6gB8qu4xXK$MYjMyMe`|y8imhDG3txOE=m-3x|8B z_M-<(I>aCiK#nD8_FN|Y>I>38C9HZkib@CR`@S?R9p|*}A&1P>(MsA{q8*F3i~m^B~bHpwKzRbS36YRdKe8o4lbrP^+7MOCR@c4B&03+0uF`E^IypD2{d*#cA+k) zNNZ-R6_l?l(&gD$9B2?g?`NxZOvk9k9JI(|soNZMjPA#5SRU8rs64RtT~4%7m>(g?OCO<~D)TnsDSC!e4a#>U5)*^HAWg z`;z;7)dS}xsm6RYxWEdY5yE9;oVq z)Ecu*t?liAPD76?#+7Fu$h1K9tuKR#u-WeG%EpiQH3)UH3 z>Zsb$I#Np{Lc;WjgOJuP5;uKdbKNLNpN>X7*Ybo}F_d4kNOMDpW0#_2k6U;*bFS0Y zfKI!Ii5MLZQl({}^m8p+4ZMe&q;_Jp%rB4v;H`2kGdii%U?GlFH*8Gf7pks`c8L}& zRI9nZZp01T70x;Y<_lOZYfCTD?S*QTJvFkYSd&tW!WXHowa@U}8PLMzL1=lxdKmJC zGK)?ukjv`PeKVgd{02GY6_W4!Q2HX((kus7nGT)ALK@KFr_58XWxO7e1vk`) z(F^qts0?UHQb)&Gf1uCC>6y;-Vi8vLo08vm*n}2I+)te~4I0u9tocWBv)*Eq_I`&6 zR?)Z*W>E0gqK`b>wrU}xx9FqezHKPazrioI!(WRyi84t?iPKRo0tHc+{rF8A?aMv> z7VtQ~X#@4&bm=?QT%;WW#>IW`M2-&~j?v%Wsr5a+Me#(X&E!5~uBA5udl%v-pC+u; zklHN9)(~?;N?fd#D^{G@SZ~eYx3Wdw!*pP=+Nt{8J*eSnZE8lRHLs~%(gRTlL}@4V zKpX;bn#Tc&)(3$;n)v{=SfbYT`VAM@MWx<~O09>7w0*RR0k|t637X;=qkHvf?GiP} z^o}krQFklmc{FRO>W|>|rRqVYL<9~0UJWi5_lwEy&0*7Ur@d~H?yPnxoOXW?#dqzN z51H!r70SBD)mvt;COD1irzO3yja%r+QXj znh#mu;GZrTRH!6_!*QC&J|`-*njHsWT)~L7!&!WoSyb|y;r29O85)wmcMvU8E4jDb z39m8fxDPJkjH+{E#5JxmKGKnqOIvf%%B&dK8(VdYgCu#yWGl z-Ia54J(h-LVE;4)wM4X_ z(ks;A%A^Xkc!lccTInqNS$2=f%~iWS3CO?pv@WG@RD!Krzvx@T9%HjRLzOI5Vaf6F6KTA<|Zf2)3qZPUndj`iy9yEMQ*zx zI3ctSP^2}u9v7AH8%J^yjZB9F0htufWGW5)1EO*>qf*3e1Y_W6V`I`7h88@DCHZcZ zFE^pg=vh;CKOBjcB2K=Rj<0sLBaQe`4NG_m6?wZod?g7)lV$k>jajGGv%gRkW2<1LV}T470nIF~pY>g@ z#wg2L(ctwk`^tA{<9e9=#5QzlJ|Llfzaf3P>vqw!fs-;RL%B`$i&=(tESKEGn7qkO* z=J}}pdQGTOg=@k*%aY3fQwb6}Q>{&ye2REO12^Hm61O+BV3T^XP|RSX8U*vnyv=Iq zii_p!GOEEG{fClSrb>6;G?i$BMvXtz&Vd>P$zhmvmbd#T4(wUyF4jCOB@#cy7q zTYRwQ8Ahg`VDaTz+gkkavAV^xhsMsWEvX7A7ba;qHX9v?+&6%+hAs6f~eSbT;ozUh`!#gwo}fOqs;B- zZ4WL--aFL#^@GY8_8#}y-gm8L-vxW$r2lZ!dacPTv|qKifwqM!nKsNR=l&}*Po*2cBKGbws_w(JGNI!46+t$|Lqd1cTmeNgc`8es=Vp6UzLLjko!V zLBDFhjHDSqsO9X-Y^!a!7A8y)r zn4rru_6ns9y-7c@d6$jPf8cL5`C#4T8%5gs{PgNy z-lvgn@`leZjNpIx{FCWRQiALqq2p_wU^y?!X(d6!QAr+U)qTS8)N z>wt9n`{$6d0d?T^%~(ckRmo=m_H<2_x@4Y)cc5f(rIjaqecX4 zEf>+i&8QK-l2Idm(SNvUqtQRls}Y4t*m{zg8@NVPPdw&stqg|$FJ0T#{|^rOBI^kV zP6%xR6l-M&!*83)&;kft8FFPR?CYife}>?H`2V%ZdHz4QobLa%+PeR5P)qv%GS0u- z`v2e`rS%8t*8gIHZvBq}sOMH(6SE*dZvbv3>DC{tH4BgpfM^zp4Ll)8@~~E4N>@07+tPw%4tql{;Yj*NWOU0j-PbO+ff5 zjE8qtp}13Olf>GGFp9wDtpdAIK)Db1xN>rPCOj_ykAt<7h zl`?p2vg}^rN}N;J7VrOs2@F6mRWt#%-svxjPQR#wpwR`6LA<1Qw6in85_%1$z|-gf zc70BXr`6JhvU=);6QJFkLb$x4q+%*hr%$7Uvp1AXXVkidTNK82q0ESsNS(i3DQbQO zH`mqtKs(Q<4NQ~h-5E8~e`#Mi^mW7tHH$~E6>yp^YEomzEY4#rx>s8N3Dn~(E~cpM zqTfZk^sL&{ZF>X7F627*@T2%&?4Edbfxnn_6w5g^T=_eP+MQD?E5o1A^mCYP^^lRp zXzw|7bcB1Vv`6&dLC384tA+5{v4~te_tBcCG%?wu`B;yWu`GEq6)@BA-!LC{nCSf( zwV{6+8a52z^Kvl|dojPv#rpAjF2*?7$i?WX z|CNhjh5jcO@eJbr+84QKQi!VluGTkuwbd(92CF-N5+(nx)(pJf#s>HmZuqp$np--z zwuz}(lJ5Vm`ZY?oMRx!?7UIM6^p)=f&!0WBK5ZmhrWZJU$xEuvNDimIFxv3>ftp`b zqY4#}Y4KQRYzbO%QH?B}91Q-G&N%Y3TRwS$v}&ablEr0Lqy!bZq;@gk^v5L(bZ`+atqnnQoH2bpJ+F`W=ygC$!Lf&ipsnKKZQL38zs(I3~nTSS}6FF%mfGl%fi)`&RX*y??0gB^K$3#_DE&iO5A#xhOsP1D)|OJ>D38PBXM2 zivpvi8|aMRvz`}qVY~Wz2GI?*v9ifT+5GKgqQIMKV+RitD}Ouva|z0ycT)`)yY1LX zHydFeWo(xMKT^OQd_6zXkUMIGa_s|czk`YBl^^Na z9kp3-uMY}O1Yv4tvi~%$`MB5(GjLF+(_RlWn-R-2jQC4KAPPSox$?#g-b9ztN6 z8;D;_bN8ERvd+ZGI|ZXAJr0IX?NJhKbjT4NVEG{7hDbOn^;)iFu9I}t*6FKx2x9tb z2%`TzebrgYGK>+TQk|5!arFMKIxq2KyL>prI2FQRc_uY3fQKoVufVW;(kP>m8l(Sk z(<+a)X{3(4!&Z`DwjRt=?Lr_5$A7{@uIGq-XnQbG?NkIZ<3iLzXgzQaCI*6IoIa2- zCmjjycv#LilJh;>c6HyK0`95hm1%3J?LD=5#Td-<$vG-aC>#Fv;vne)Ci^EzmKQi8 z13$G7J!tU*HIB;N$DSI`^3?4ib?tjHF9OW!`gid#r`PH&MC_cvA7)bi%lb@Zf?I4Mu;6VcS-O2fi5T|dW|E-(5S;xfhZvg4&=F}g`k^{Da5HA%^YYjM z`+QI(n=)<_?z{T$TSILL~$o&bbA8I$Q!=G@iV)@_9|6;hKar#FQJ*`Ijq8l4jqB?KiaEW^xY%Hn1mYY z%%UlFD*gCMZ56OG*BGzgSig{> z=NpsWSIFzt!AGe zKaRao$NBZO3Zv_<34+EcPaRM>mwNq;BbUveQ|8}Tk!@Usp8l;y6e|D1WH;$9ZeA4c zDpTFJsC9duQ_@>(D%2SOQo(=JiVaio+>Ml)3lxV$5H#9v9ncYg&l|?vP=;DK zwoclRZ2d^%{!x9)-~V9$ueHmpa#*4K`^`J++9h%Z2!{qxj)&nyiH8Kmvrlc8qi?2ExIGnt^G+ZB+X&DO@ESS*xzKJ zQlT?h1ZnA=N&j!D$w#$~*<>WdMx-UYpiLif3~-_&_a{%GKiSi!KN*WruQYu|HNPP9 zCpFHrgZg|zr{vFU=!S9|i4e;EgsJ3=Z2IdH<^~&QQ{!CpGwrhpZyK~y*4?5%b1`op zcWZuiv9R8yK%2ZpV8c)Jq+>1*cfXg<%z_PiY3prKynvFYx`>hFWD?Dl$~URANtDB_ z4%0Ze^9Efp3GZU16AZJ_weS3zyG`jg;p#$fP)kKLc6f!$g=11S^SMI$(-DumZ-wb^cC$;MNrY>+=GU1Ou%{Ys8loV=6OLcRT1pf^0`sTGGPr^ zsei^s{+64{cx~VZiV(um2`{;zR_S}3Ph3+jcfI*FCR0!HLHFvqqhaF#AcKRcR?gqX6AJZOJeMkXRGPlGS&Xyi7Ei}gK+ zVp5$Zfn+aFGFXRStm}z<8>Lj8EQd-)vikO-30x}33u}dOxD<0OzZy6k!cokEIFt#< z!bW>t)(ZT$plG50Rp5_ zrn&_L{QNCSDj?wJ3y7}D^c?aiC@MA_lVc>$rHePH5tJr~9-;&^0pRl+)IO}rN{bA| z>KGY0G_#=aEr0RRzy16!?6=VF|H*zH{dc|FiA1$hgXwxfQO&Ur$6vk+KVLxjQmsP5 zuV`f?Vl{R~9rE%W4Jst2C=1Win?k}HD+#Vn&|Pn$C?^qCINy1r z*e+xIYiipXq3WkK#C^J46_6wshaG2Q(QbO}BqEj3AE~ahXyg78l}H~_L)f$0V+?<= z7;c`NLhGDGdGjYP-PAb^ZEYm|<|5q9GcUl;rQ)vM@Tea?>=1vOJH+-oU26^3~c(Z7#+&)Vi&7zDFU5zf9#d_0wn&2WVjz^?( z9qmRF3JXtHxEaWA+3RT|%7F$_6lKM4^w>rCxM$4e(!nXNx18BY@66xS;L&@wBW=BD z@~$4v-T=#@c;gBK?%HSISrO|3g+!+&apS@r*O^(8ky9nfD73sMjVdfEnD2Sm@V!!B z@~wX09IN08tIQRnO@5ze(xGsDgrsF+>hS+9Ogz`a&%$f4DSw*61NZp*St3`0YS z0^|Ur$U=BDhg;7q?M^TLqGP}d)wUV0PTqw@Y3J*l8Dk~*@+mr0L=>yF^|WEb;cN;G zx*8#_Q^_7l ze_2H7#K0U>bA8_i*4c22P^fHFX85D|w9~Fv;v#|v;6dO`J*qX|Lu|xyeh2+kQ7KK80Ei=vfdR8Y~VL+|h`7FsbByY}+o zJL^G+b0MrBDFDy&qnEYQiLzYbQ;w46D*7l(PSIDzMeE?+uRtR`J{t~7D)M<=BIm1E z6FHY(Ph@`;!uyxrrd{-=xTxwf=ZPU^Itw=W3DtHJUHymMXYIUg#@o{@UYL_+0TURb zFGgG}%j?Q?z)h4>j{4CfwQG_x7eJ4`jQaH;wW@wnar+?tyG?=}%#v$o6W^B@1ZH_7vEg-pjDG zGP=ex+s>+1(n=ofSi54|4N{$UB3mp|>cnj18ip-eO4W{McN{ZT>YBD>jk%r?rx1 z*oPJ3bW18Ct<`%jc&VdzHyL!LSz4qIIIT2XYcSiyQ#+m0x8&a~Nj-c-kn&YY zO7{UryOMN}!y)A;hvQe5pyIwzTJJy#_Z9DypL$bWKM@$RnvLJKRHwiU4W(_vj$)QY z&swhBQ7Bvs(Lz5ijQ~302j$gjN3Z=vCzt+r4CQI8h|YJYTPbm&=9OzQQxR$HWUkUV zqemnR5Bad64@OmG9$PqO?+2YnqcSwWA3R)((?b4sC__j1d&ZTX@ppP@@+d8`6vrNP zzqBY@HTRy839e9V@Hg+|Wujzhoq??Cz2EB$2H`wGL>W=hbbu1dhzN5*>x#7-3;&Ta z%ZPr;obyz^teEEe`mSPkO!dYl{6E=uy8tCB1$_l$;jQmgx>#1!_up|@78bjY1kJ4> z%q4FstXwI`0I|+fodD5U8Gf9;3lK5pGni!IWD?k0xgV$30iv!;&<#V6v0Tg>!zm(A zL}6$)UH@DN6!j1)T2A!DC%Y1Stvq|NX*)$!!358faw59Kg5RaqxuM(5(lQTDZT#;P z8-yC;JD8pXiP>dl4l;Pj65diz%8bi5Kw&AsO$B7`cbHa|7lYJyzhI(jRxkUKlspC- zz@sV%H*-y+za#6*vR`O$1re6G`3e%vo0$Jib`Mx3jgf%SZR29n+68iZ4Ij*bCQM{( zKEP|%0CChpE{(2wdd4*VXro^vqh1{{*_mDJ%!P3)FG$QTQ7&dGUs06v%%>AUv7DD! zJ6+MEIK9P(Xjny2*K^}#DJN!D7-gSPx#Ae5{vkS5QFJo>Nr9C_6=im9>Rd@gDVvqK z8Hp9C>pPKO`F=AiznlGL#cuBD>mC#zEFw*tXjL!@YZE;U7CqEWJdDP}BMp^18)->p z(ZjTHK@|~h+Q=o<(X@e2Q ze#^FI_OxwypF5Lh4N;=V>owc}KV!vDW2~dj6kS6ESr&HTegdYzW$(NX7gw(hlu|={ zrBrsN8#P3l=??X;DMq-&G%)NbgXzN>(6gGNr1@$QL;FmL>Fdh1@px9{TEb$wPmOB{ zUvph!P&$ec;HXB{62azVTVS6Ow6hj^mlj)K`4aSkG0zvaN&ksEr(Yh|H+HEl%EnGD zs2iCSsNZYO;5p8qWHrWJssZ<(f-yt0S?ppd#x*?>r%`QvmZBy{wU3~SwZ#c#P*=*R zBN~*uZP*pN1g+C4TYLHmizb|;j52K}r@ErKX)ATY$E;u;j^mPGdRm)pw5P7BqJu4g_as!rn3hxR zFwq6qnph`s&V~smQwH4t6rZ~F@L5KS>xsC0%g~ul=|q(q;dwEqa8XxTrqF4=TBA=m z?DTtD8!k#KUQu)|Tr?^D(?RJ}_+pwg%hLCH7PfHCwOhJZ9iCsMdJ!T}Y50!%MWCgQ zdPm(U#?i%&1Y}zs8%x zd5YXits07WrTu!^7b_z1dV_Fq{@d`P8LZ7uWR4Vrm6_`(DN=+MswCs&s=_)}WdJ>o z6t$H_3jKB4K%plE%qhNi9*}@{skSz7tejF^g0TP{r&~{L_?t+Faz8yS|k>aU(XzHAulJN zYV0vxJfH4Hi}-x=^~}gSUmmnqD;3QIS8Ga#3m`q9)>eW{4QKlL5MAh42v@)mxWwaAsW$R0;W6f;;z#XGBdE5;hWy9}D zpT1~1-D@YlGEJqLap?U_Q7Bx)a~XT$L``g|e-S6jRCs2%Us;0f-piyW`*VnUkWsd& z)k>kr_M#RSeo}kbL^5Tz7cG?_ydls5mR@lRg?B*fH<>1P5Y6y8-vN!_WUA0n)GE+B zlKpg+cE$tuAc<1S+8=3tM^UH3hacXdA$kUL&z3BW`uF3^(L{+_Psh4qt_iKaQ@n^!4z8ovc+soCVWftMlT6HV{Twgq zxr~QIsW_k2tT>OlW5<(oH{s=+!KI;>`N>fMMgUGdh|46LZ7Yt?6y))RB+FBVauUeN4a)&*+zZ)xw2~V3Ms^Zc(yZR1p;BulUFPeucOzwv90_7i?VEXLHuI<%8K2Z+|DUuoz7bSl3~ z((@>ja#}=N2Z$iI_*^6zvD*USP@$*aV)Mz;N=%|x1F%L?BQNm->}8`;+hocaKP;-Y zHThE4f$%3oY2ZK+Y8pc8_0PkBq7_1+g9O1JTpT2lONK7Ng55E-hFwmPW~pcOa`)j3 z?Ri8a28+t3L|Q#qeCO0L1QP0JF?tTB<_YNZZliA#gdg@BexD#*gC@y&!8Fc6uBGD? zgs>v?mzg(~^^ph4dFLN5_LohjTM4iRMv2COz35tvU3j5PYZ|iCR5T7;cA&Ip^VTFKc$!GmC)#xI(6btx zOmBt=pK8f^!aDFDq!N>soFvP;wSONRq0}NVK^T)7%v*-S_P9YJ?dyTmbg1xBg8rob zL&dKK(eBsj-DI`tK!7MH@@!Q};co4v;kAk#1rfh*-23={25{b}hiQL4-b zY>t&Vg0yXaq!T^R$IO1kc87)k%b6c!)t_@S0 zmLlyune!xzKwG6(*5u4Q$UKJd)>%v(PI;GmN^6xui-!w;C3HF+8ZJ8d4!g|CYBozN z!^;49?Ngi;e3rsSz#;XewIf7FC15_~`$n|&uX>58_-yHYmOhWnag!B3b2KG=BL?9B z-_~QoLh48~Vh`q0u4V1FQ&A z)IQ73H9Alx;jROL!l}PM#Hm|8Wa$`OskD-Rp9LMi7sEkgBb>y(S(w5ni-5%ajE;=_ zv6xqN&69tYHP7;+k&5IK{u;MY@xmaMkmO251MbIT)ok*9iH)fSe6{uvAR3RWL1s4| z5VmLD+?D1KLnYSBFk?bO;?RT1qIAtIJ9U{eIT`yU`Z&@oB|FE2@eE%)A8=#BL+Yg8 zD{7c5T01{msZ&efWm=Ui0*n8+#U{l}09W2GUk<5Q@$x8qRR7QHgo|mId!X$ z>vD97Gnnydo{t6j(PK1v3RYqp+@;86+DKu$TNcBUsmdcxfwPu4O4h)Zy|qL>*@? zAP>L6R=rS}Rbx=3$MuoP@s%yj@yp1W536kFud?XD2n4uhb`Xu6Cd!oHvddYlQc@r|;JJi|Yj@%o&k zohfjfd+1dPT-JBb$bY&BLF*MaU35{}?xWq)MGte|Wjenk=JzU#%B5n7I?vLF;-xO%8ac$PQw{^*dW)_ zJWksgm}rYx?l`@gA!@kZ-Ysjf*K$1-NpRyBMWlg1u_ah~j3%T(+{-`PV0J%7`x$e! z0hB`c9itCvNct*I>7-fu*%DklO3^bxP}`PZ{!vPq34$1%;Ko6ngB`0b>L^{BDXJxo zTdV_<7})a>TbV_CX9J6su+No0gAuPg^MI9i%2>u4sb(^~!5qDY9$$nM^coV+@Q$fm zlXQUOR1T?fHKpmZM2-3#KPTt5Ugs^7J3L!YuJON;yFUG2$*m*%bP?9zx>KH5(+=3A z)4)jQ_`-jQ_3w1bJ*3I$qK03~LF_7I{=94xI+3mmv~dyLNQVd7LLb4`?{=X)zMJ;j z@QpUmPZM>XjWx$$jmFOwwcG!(L`TYI|IqFi@WR;&Q%(u4n!AmvnZbGsI-!_rHuGocQjK0nh3A0H*auW)j_Bx|xKC#zHGYQ{&k>>KEo1|u`}AOr@GS0l zSXOgOA%h^CdD|bNl5=5F=l0qNdpMIi0_eYx2ivF}GU>bb*lh4dj^U)@nY_y{v}LaF z@QW>wr<-O*N*Nr#J53k5?tJ=dE`(lokIeHh(XjgvwVfxt{Z{ACqua1YXO_uyW`l0- zJR;!nod)x;vEafk9VeV|O8iV)=VSKRZN6~vd&OI(b*<$$5|RRTnxPAjJ(rry7amHZ zKdH}rQQKV3Hl=|FIVJz_#-9`Ei4x+h%S1M_VWUk6nF}D>H;*MxP6p7{+85m=%K{{w zY_yM3$jk#$$QIYmLwkDF$YkNabI6nTxFL#Ur5LQH%&}qR`EOQ_>CggE$DF;xMjb_U zPUKBc#}l-6hC2LglW)Uy0Xca-n_3doQSS~7CJ|a8(~#MRWqXM^b=)4Jjq{ihVS8A*cr%z)ViE`##za zpzme_n8d(|s5fkH&(K}cHEwr+oEHfX?-y!b=ALe6ez-wK>x>Bx&e`o*6uk(R)-ap; zEfV#W`2DnriN5+w)Gm+cz*LHg_QWr9*X@=_|{u*pT{+G zn;yTAYj#m14Vnp{ZXB^%#iV~32aaZQ%71RPNx7^{xfm5(ES&t*&&m7RCO=?`F5BUbfwDxjVO5nPd73o1wNXrrx=|^w~?Z0GksbN z(N-CqFq!GAyJUjYehEa|Y066|$KWax@-hb16LVq91KA?f#JF5@@iHM(~(s1Fv}I3>&=F*Ey3|D72@|$-+|H4UI5b z8OyZII#N7aPtl!J@Ox3$?;=l|=zig^>3Y1BJ#><;gsao3@Ar_s>~)&@y=WF()#%hn z?u)NUiGDW{mawT3W^|7WtR{7t_{ZF1qn@-6vmUygo~^(#W2p?xF4vjZ6=3&BU*^k28)e*)6sVy69NbR=ir1O`9G?eZx2Wcpib}-e|sf?AWZJ1zS6-$OQ zw=z{vptSh`1a)*?-YdbYj!uPh0?cdlIvXmFEjq8!E5WNa9bYNN(r-VA=FT`pmA6uJ zs}?6v#$237s8)XKHtCc(KZ=>ATFk91EnkH_JT>XJRhZ#BSd5;n!jj`Bs<#@Qx%-%9 z$uoz}QM7e6R`#lIqAROKJ%@3asnMqPAg?tTU03ZvL)M5YE&q9Mhi8Xy1~Ka3Y2#|8 z$dKH;0c`gqn*>7}^M0(0%pjh%ANraL9DV==sc%v5f7XsNeiR<$vQ~sR-%GT~$$o0N z7Mo2wHKLXqMRn5FLS@yc+h+VOzfS(Hy-su~T@~Zav^G9@Jchs2dHDZe<+0-QXC7r2 ztQSR`UB}z-c|tzxv35A4q0VRbdZZnq^ZB6vF0cW7aDg)Tgy->DDK~bdi2*CDe9r&+ znNOfsxa=@Q?8a~c8n!eZYs1p30S-Bf^5n4*-RlDsyHPYWRn}Slx)JOv6SCHl%54%( zr7KIm@p*hNKGpNLF~iE&{^V!AC28&^;bR^##)ex=1atGGTbt0ge@330vAz<_+!~lF zQU9%?S@r2W<}sE!$5+DWfO|pGwHpPOUv3mj6aRc~Wm+T4mTA{5*wC6a%7*FGdU;G8 zX~Py#O$n-}E7*N2a#&H%ZD;*Agy>MRg3bBb!$wlFR#yz8?5z;C0{QWrqyLiDu_UHEo${==X&5XZ$HmA$vs)WllpHuvfHDA}Z2>y;!FWU4$*EBG@5lHY$3BSjsp6 zqg=U9xR^@O^MfLgZtfHQ1)Efajwc;cA3jvc_W7R?#EE@r?bt9%E6=vSV~9|WRl z0gXEdLW-w{0k`IV7T8FK`ouiEiA;&1XK*v5D0hHzJ2$umk&A6t(_Ed{yAP-oU}k+4v~h z@{5Qs7|+48TCdsfa%sbDQ@tX79z1U-Z&6HOW-m(8fWxAMR9z%&J5N3;I+b5M6aGU^hc@(&=Q;ZX{x>RuM?FZ$avV;dGZ(K7nMqE^L`bD+ z1|(do!nC|f9FB|cGQc%k^Y+kZ!m)3gGoHE4j)Lzg;mT<@o|*j$n<-lUip9x;LiaHG z*6|=Ws(ezo;vIF#vXg8unWd6OV~>NSrvVAq4$t@>mRm}E!LsE~I!nw$ZUIN7U~!#g z3wB_6yVdu*>MV_1zQ!Vmp3AwZl#>OPI}J#<);jfnSVp*i!Sc=)BbQGtoXeKV5{u+% z=EE_cc{Za%S)zDRqgyajHnp5f|LN4>Bv`gEAmQ3Qeg587vFD3_!E)GUgJn`N$r9f1 z_6ZSA>AwoIsi>YeWEh#UtnX&c8{WP+@hcb&Fd(@9aoYdnt%vIujMPmAqrye?yd5mU zdGnw@PKj!!B2?tG2zSCtCts$CxjJq0H0pX99g4!V>9ix z$b|--#oD-8p?x(?P3-&QM}jalviHM}mbFYV_7|KL%BTf5aq65X1{Zz%oUr7-@5>qy zyJl1FInm2pxeiytEbLecIj@zgL&JU(4Juvom2)}{S-j&26_ zn`+U$-$ZawQf(up!$@f$2aa=TBlS)=H8SalPuIiAnWG=&T6UJD@bhA{(x5!;JC7ZB zk89D(^Ek56Kb1;eK!$qNqTv^?K!15UExUlNpbu)&rwgKl@~RA#_+8ZVs$0{BQJ@Uq zCIUS1I9zDmYtqQyu|!;e7X2<7hMcOd*gb55xj~4u3BR##zqGyGaXVi5!BeIFm^mzu zSWG&nbip^*a^Ig^E<%=LfmHLN7@*XvL8~rel-9U39mluab0iXzGAoq)%63tQSY?BL z4p$@B%UF@`U5y%C#;$?YrReL+!rRLXOqc=o8-vvcu#zin&7QHv?scG*mql&gU(xMj z0dwX9X9EIQzx4Yo&Qo8?y^Imc?K0$fMR?`kE>jWfdQihF;5eu%4Y?wGl$Xgg_ljs| z%11d@&!)!Y0)a zVyliY#)?o~NAPH!hp|P+sAa{lRHE^J2-kvd_ZduIRitGM*kuJ=s7RR%_{IwOsUqD5 zpm8-TV0J~RtmCRxn>jj@S9~ozt2==aVp7kdnM`;s6}`tA)utka-C#R1QKuWCoY{GT zz1;{bDA#w4sw47Gp!qk%2saa3DEtcis_t2GM?cNA{9cm$Zi@HHLk|2SPI9-^dzbwFx)*VRY7uvIl|kBD8zvx(WzO{DK)fusF*lagab`r#Hg1rPBJHB z5Qnf7<+KFgzzlL^N$`MI#WB*jJw9+PT4%xXy~WCcdGdQZxIuW_isKh#qYJgAJb7lL zg2#`i>e(U(gHONPqO9vSPhq|M16LSf2^kcX22+#%QUu{gFD9gpM3cZ*waT61?qLI8cv+fzPn55_qY!Uj8c`Z+aQMYX zdl4!g-Qyy7`S!O*H{g`kzQDWOhqJjqhJ6wusgB(U-1*>Hr$4>FC;W=xAztRI??X>w zQ))JdD&H41?GHQRI^p~9VAULH(R~qP-xvVxzGz=%Qfnv_o$)9xsc$%t>hv{#&^|Sf z!c=|2as65fK6wOtD2a>hABd1bUckxm=MpN`ntpm9qDyw`tIJr+5j`UwLT0c8>pjsm zp~jD}oibVzX3O6=>5uzI?3i76D`w|exfKo6M2SM42<8;$B#XA9xtbVIcAX#Euj1Nl zd~z+Zg+DhJzq_zCj`fc+yNG~cROX@R)ar$!-2UY+PdDGt1I~MKpbnZllWVch&*I_7 zc|=9^Xzd>dg(kll;SBYb?SnDSn0)VYb6gsxo&lgD1N!Epiw{MBc_G-#Ue0keUCDk_ z=#g+MTr&~*%FE^Sk|wJD09RY|dnC+7UUO6`-s=Q!ZUZm8qSQyitLgjRx`t8(YbZH) zxc9S$=0k~Y5tE*pM)cE8hRoouF5bM8hKcow0bjhdckL z13{@(eML=j(Al}tgL>znCm3CncI1f4CCUuN{y~?h)Xu2BozESQ+`SnjF=?R(dn|a2 zeoA{E8uVCr;wjh}kJ0v4X@O!%6Lb60w#VpUo%5!g$Cx#EL6x3hBsOlH^up(~e>~~C zC!$1+sKP+!DjA7ue&4~ZcuTjktGn)2d|}LRE4Yh*-O5YDt>6-!oF`aPsm2}Zlt?q& zL2=V$%#t62}6Dz189nwZP_6z)s!3SD1FNP7|Q%h_!J&H=KuKm4zMVX=YQ^n z+dT_K;Si*Fs0d=if`V93EQg?A17pSBVuBGXDkwH27d4jAs8M4~Vu>Y1?26skHTu

)xCW|%uvNgMus9;&u{l0+$AHic|g){Ye1b52n%V^CbW03E6Ekui8D+2nB8r@IG z868NRLFywYKK9k*`q=25ep7hrB2rj!)Ukbqc^=Ruk?xotC4rg)^eB^v+NeiKpl%Nt zWsYd96^cy}@QCcI_vw9@_NkLQOZ6wcdx>gI5E!1qtwYpO_qmYReOJ@&$HrEHRe-K8 z_fmwAYt~|$ZW(sgGm*uN+d|cz7<<+Z>7(T=-Nbi$;Cv5p(n9f3rAbL8qI-hX7s6^GFZ6Sg<5Un;Oqo(gWKXq4--L+ijLY5U#o8EL%p6E8&z?5>rEjR z5bfq986rr4cC(wqaRgZ?L-K*!IxKmr&LU z>uL$XBcNS3TKCe}E_jIYkG=l0NI2BHep(kbZV`FVbxtr|(CfQ&6ba(04pDK%lJ6^2 zFQ8-=N0TV=6+EBz7-;1yW6iSPB^05zNuo=yj4LY^qRFPpb7#!uWTfsV^l2h}{@U2c zJ=!Wc{nz-Sge?>4>T6>w*JZV}s!9%h(3R@Ef!njK3XObY+zn6TI(B0P{Is8`~2in`w=ta{F>;uE^bj`qeV^u5?NRYwxN$OIF9|)=PvIA0#E%R*maK`yE;1%8w;Coq5Zv4`c{fL=enw zKJ%FTomhwN2o-!SHub;7?W~1P4?(Ez2qZY}Ey8aPB*!n%wtotyJ)?zSFPY5#gU1Th zdJbc!hmm=Q<4~~@{bLHiCXP5JLViV2j~FgOol?iX?IV33(Lf_>Yq(6`8(G6L4~zQ8 zwuf}z$O5bI_xeXthj;pi`j8qj)?Vy>6o=v9GGuT1im~dhYlYH?rbrMp`MN#*##mp& zC2GQ1dmNWBo3pmA2ZSD3gz{w^<#C|=k6M~oxNAtsxW8j5%Y?X#RA6E)UFTq`UYxFF zEHx>`dKxa!l2R-|*9R-(WeI0*=>F0aS{5(r*ymk{4?&6I0 z#?W3M8GfaJGAtaY(swVz+TmwS88FUyaw;o-`j=%L**WcFLn|xZZuuksvDWK?t2Yf8)Wrl;+Hw z4QDCKnMJhB$3YCZ=i!A;K?{^zHTN|JXq(XyoHCc7LlAJm0@T3Nm=I>Np{0FE$$^lQXe2*#%9LRZ(jbk(qi^vaGplE8611 zyuBJrRCA6GP@rA?sKs6lqZ=-)PV86_Eaam|`H>dqQ!=;i2rIf^bk7Y@s<|LY%c{9R zFS>Gg-3{vL%DQ{jt5qVyV{%k5w~M9|uI#K*X9=xvWA&7@FX+4*YvwuDy9Dk>a*k+j z8$?0nSUpErdKaE@s!-|!$PSb_tR77)$9zkD2%9RvzrAQxIo38Dj+3}cB>x@`0xr@Z z@iC(L)nhkg!Z#Rcia&5PeEX1^wIEA*cG7T-?w4oPdDvnx*8fg_xUu@4jWB^M#;+~x z)VO0gkOsS>PMNc{I(dI4gF`}TmpkfI^AB04pFQciJL+`&|E^OOSPS{J1P2wD5hfYH z+|ZMfJ=h~9b`EtmvuaB8O-eH}*a)7{dNXTdI7W}nEW*F;c##9V;3T_Txgtu28YLmy zWs31+(QeQ}q*T$y;$eBT455ajl;_DhDn|`;V!7f+2^E;1#{*X!br~g?6^g!8oL(QH zDHWK9LSGYAU>1*oKESZ*7*Zko@dzCkF?CDEs6t?*A0c}M=4CiSUS6z8>7&0F!o7Dt zo^)!R;_0Ef2t~DwRvt_iJ@TI&rdeLB4mP!J^I}%WGlMs)TAu$8AC=AI?XZrR>fE_R zr&lp=O7Ldk%EXH_+nZUGP8Vr|H>;#XT%?oUtc|DPB07xS{0V-bnU$8RkTc@GV)dzK zMGP2EXktayz=WgyU#V$j z7EPOcSUF|cU$ox`V)q=C_GK~n>Eg?VR`~5c6gwOi=uqI&KKqnV8R0?Ry(tCwLovwr zWn~~5{`O@d?kDpK?I$#c`*UcM6Y8!!s^`Z>BBQVU*q{owd;gJkL;^>wdNLBFgO4B8m0TQI!cE;+U(D~lrBm1i$4o+H2hOY_x)Kc+b3H7#r%2q zy>XC)v3fZ5s>Gt)u5}f>ggK;`-+u+%?<=u3zGs08Z6s9PcMClq>tMFcAg-8N#P20n z3rjTIqd^uHsVD`s+QM2^L?0B3Ko)ts3_MzdXPj8(a=k%z3#&}40+^5T^OTHF%AA`HW*djM-g8I@UZ`rXFpGg(v4 z2v)QiFKW;w4cezcc^b4%gH#P#ph0pLYco#Ppch))5Djt=-)A#+(jcfe0y@z|mgfbi z#gS+)EHZ(^H;XOI*6f+G7Ldxovo)a>RhU=99uj|Agsf8b%sf$ohEZLQkwMurWxceR z=aDo=q&*ZV%9<7-E15l0)=tBiugA!s?3uErT1?+a`WU2}U@m-Dfo+(+vsi z=E8HdrYdVN-~e2JfN%5(*9(;A28c}U=4+?q=ygW$5wc#10;NFGV&|bGA+#{70B%}Q zxfW5b-w3^2B&&Otng+5S?mNJc+Lc=|S#3;KThl5HXni2_hhy?DfvjHT6pT1_^B2c4 zBejALLxmwIN^qfdyJ!@3!FKYm#wrZwVo?<}z9zI@(L|^**59yU5vN6gsGhIFYK>#D@pqB=pWiZbj0bqQiM4BIFphy_%2Y$&S6tTwSNMRXFI(Ig294L271 zi~gs^)TTp0tbyYAKYAI&VwJ=+vIeslrOZT{AI#d8!#7&BbBLovmmRg03W8bF^bZ?| zjHiU7J&+Aa1zbY(7TULzvkI7{x2`U9jQ@CZ7vbyZQTLRIUc|uyXB)ESvx+auBS9 zV{OJ#EpisQxyd<1-4pbv7OO;`)?hW$uZp>1F=Y>HkZeYq zakB==rn4Ep&>)?%(=_-|T8_H(vra`j3Y{r%vq&Lwnjm{bGQ1;=4_b5B5zDC(t ziT_`e_10tFr|g}28fAa3r*Xyml+Dy*-luHGdKzUb=@@#o9b{quqU`y4RHGIPsdo5n z{|7ba0fc-MgogTuc9%kI^)X7T#k_kRDUK`>o=B33Q1tW?be)1s{!P~rga1v}1Cshh zbOo1yuJe=$V`*A#R?~E%st|0q_tUo8%-6hGC@Au7S&Xg_T~;?WFo^PNv&Ciqz_rQ8 zp18U>53BD;500{~j>B3R==ud#fnL>Nt(AUPC_0p#Ex)l?l1d?CjH*M`>asALMANe_ zYoYuPt6X(i71O!^QSPsM>6f}JD1CJe$zXEG!*HiT=*jpz<5&&K)1bZ@qz}BY8YIUw zn=wp-=C8(K#?e9iYecS)25pvd|(y-$sL?fC6fTYLM)2 zHe*E%(#3(32I=D9ez2rLvX<_W1`W}m{TihAt0o%lM6KTn`V{y!|4Y!n4$;KH@etYa z{~_p?=rOW-?+E(AA(}V{(=px`2abA-tnfR6{%mzk9ITMvS1jl=WP*Q*gU%teK8#gY z9`2@#Va$@WM-s#WIZ%Qi0ef|VXsSSEAQkoVm7*JfN-lkh`ngmG2Ip#odVw~wn>*%G z`-Utw{Z%#D#Nk?_-qs+UP-iqqC)5rN(h2po2I++QOoMbnjng2VQ2jJWC)8DqZ0{1v z?f83yS{_Vi8!&Hp9~R)pN2Zz<@jg*_FjWd;-eJNPfPwpcnyl7i-lxgPAR2+BfjWX- zL5nQvUnF@FL}kK3lDRvnVK_*#>%T~ni%>{kaapezQuptCpClW5zC#iYB8u@;BgrFp zM}~tW%OG#xPBCU^kQ5>|V~PezSz4|S8TYpJFoac##!P)q`D8DfqQTJ=1+2Ru9X;r^NCc?_5an?~a=nSHy zI)=^{-$v8&$NJICNanA6n@`_HvbxICpXj$p7FjL_@z%%}Sdm2iQ1ElA)`aa$|It#C z_RBR$r~OO~(rG_ZgLK;W&>)@mtu;ueeH{(bY45E;dLz!4jrgxoZtNjR`;wzv7m4>@ zqg-V@Mpp8jQSM=YHp=b6IF9!Ek5TSZJx1e(lA~Pr0Bw{D)-hz|-x=ke$?qs0nMelBK)5>j=*wvxl#j81QvVOWmVRW)YVMURj# zov+LM(?`jYi!1`YG)N~|TMg1lR#$^`lKE(mPBNng=_GsLC)q$J*<}sVN!D2-U{QC~ z6q7~=-XocZ-auyrufL<1+^D1xiPK}=Cs{=*Q=fT9sq#an zdB0Dwt$K|99ebst&c7)3xvxgC4o{0I)_<#}n3VqUzbIC9Ye|Z=Nq9@K5KveMSB+v5 zw^HR6P)usdQi~K5PYsIF1fhclSvBY{VUo_8qK|jKYLLhbD$E`YO4gw7G-!wheXc?J za8g#IYX;)p3fHK8l3FEacPITc#bl|Z^?%J%hUzi0dhaMEjr=sl#HeG)O1?7#Jukm( zT7<0dJBrCFUrjOjSjW(-oglON*C<%UkFK=DJY}W8Uw8-Eq;Hm>C4?7_##3%1rqkZ)K)fV|Y(yR?vFjM-Pj8 z;OZ?}4{W#bzk1*RjhND6cU+wj`?d!TlSD1*fxEWQjb^NQ`Y2gyvAonEom_1-NGDfa z4JwkC8l;oUs6jfp9*C8UtSLIVE^ClZuFe|q-X&L~UGI_0LvNfjlKo0f>(57}$}4|08O*2p#aQ8BstZ_)+khW{d0 z)lKgR%$T?23ITab2+U1X*$PYermYljWyi7i#V3XZ;HPN}o8`6;+Dqoaa2$Wu8;cj) z*U^O-7F>GoTA8=8tqbvXta5rRT&gg|KitLyN16_9c5{e8h{+lQ6Qyy6I~=%RWE4k* z$)Wiq>MQkUiwJ<2_*BbIMt)ZmiBs3G7_%Kwu3K@w(=1_%m1pUR{Lg)dPsqm2aDs+e z^j$mVrlhW;9qm~6@(WO9&3>y{9rE0%S}d#%3#ex-tB5mc$HuZ+N{YK?d|1te@!{ke zIvWeEZNfuxien>O-LbXUbsDzSW2qtV%>&AaV-;}9{TAx;?9)jPW70JzHwPd5Ou) zmsWOQ6O_-dkZ(Mzs4Oy4cs%Q7m_zg8SrShA&5vh(N}`cW39N}0>O;v1tcHKC*omF} z(wgl9ry7g;Nh;ROG9*WzRxf-;YZE|29HW=O2tWNhvZzKMnB|gFj4cWVou1-sHTWrl zxKUzL1eQdWti}pY(O>?{uN<@+^Qe0QtLxt}@15fMeS+c=^y0eOsCp+9XQS9oFq7M~ zZ%yyS*5ll`8l73!$`jrH|3&XwMPGGhL56HC>9x+RiT|oU-YN0(k4u!;I-4T8umF#2 zd8;29JUlLYzt-S;>7y>Jsei|Jo9FY7ka~z--=AmGF{H+UmIYndLi|kW%AzVqV$TOw z1Gm}sf7PXBf7zMU(ufqc4Mu) zQ?XVdZUYR>NcV;db)2oO#hQIV-R(yKAFytYt1mmy+~rP{l`os;to#5AhB&tp3|5Is z^7e^#0oj49S5(H2+mNz|+~lX@?m=JjDs zTu8{vY+yoC;KJD}eb_)8cZbGpWxDfNc-fYlN48|XLDs9g8=MUEDFWiZNy}1-IrB2Os0?fvU*N07eSf~Ok(xm{B@}>i^UJd`6S{qp}mZozyU(H7~c_KrC{}bt{k#&hVPwnls=daJ@NZ3Ub~NT(X(I z`Is(!3`$HfQ0d;Ri{WF9n3Gdj4`u#*x{?A*z3)V-Jd%B@j7p>9Be4W95Pm>*^NMt` zk7PlP4R00Fgt5G_;ypqLFdxeJgheYuzoA2)u*!ace~PL{n=Fzl2ZRL1TtQN3*#F3B z6ialO3et^}d=4Ln4{69KR;9{tA+v@1u08OZNt##hi4z&)O%AE0wa~efXyYj6SuUd} z5@QmON8%vLQ7j(E7|N) z>HD$x>{+APd^nBxjzN$5mWGXCe*RO1mLXAa7Yx2xC`bp?YmpL?2Ax))UPCT#A@@X z6IbI))s~E5!XB(n=;!IDGo%{^=s2oshPY_?RcpN3B zv8qbHOEfVJ0(S3cI-Lf^Y4a$0lLkkjZIh_>L{?K#rc%#|VAQNhv~VJpn4f+^J0`La zMV&~uMLf>p@tDM_8KzR?By=ta7{LGgu>NDD`KeC6|w+zB6HB96gez%!H52zH{{DOg6jmPa|;? zNc2Sfj|3%ga_XqTa0>*NYfYGK{PRbQ!&%X(;CqbvniNHkIx&d)&0=-@)}NKV2(l+j zzO`_(PRU&?TVUTH+Bl06kJ?)F&QWEoFc5*GQ>7-2wEenOT;VaqF(Ur!1p1y zAI{{wn#JZjf#h>-EYv-rqu}uu@=i9e`DrzL5}miPuW?l7xX)OWPlJJ)0vgphF{wo& zBzW+%7AXc~bmbR1{}~%%SVc|dfb1Lk(9}7sreQyAn!_r)?;HT9wF8D!=N;WpXQ9Ou zQs24EchOwtT5eK*RORg_Zyi9Exh%laL!7l~nUI#kEh?3m@N}Zp~pK!$0Kdqbx0dk=)9h--#O22;eY96@z zt7NMAISY3ma@ua!zQRjyhCwv;a~9&U8r9Vz1b2z{sUAl^f6nSvoOBc=h?~de$(ZTq zQbTdw*EqG-0y4~J9nI~Q!lN$g*@SbAjV(@3xdd7zpPaq9erW`Rz;+8KV!?!;AiPZZhXn>Jjo>j9J)h z>b#h>RC02O7NhrU?53v}m{^?Rg>2|k>Ob_SKy}Tfpd~*JSjPki`+kp11e(SoILln(ruZZE}n za+SiCK^>e&8Ot!i8%`^hF+bD3ZUQwVi4HDf+c3MHv>bEfiL`Jz#CeAiw0k+L?)MBe zEATFslgHItA^_8l|EZ=CG%=qAn7Sp2Z1#7hnqR^vb19Af5;Z@PK+nI#I^41Zs=R`o ztLNJswG~@C;ZBL3)-A}I`DY$P+6yQ`kiM^RN{YPEqKzALZqQG?N!3=eW>7Z=uEYRg ziKj1DV(cpHKqptSI8*;F!d3KSCkj}_#wfSqHAm3X?FA*@I)ZMB7mlE@O1t*t`xWG` zZ+mL@6^l?V$IexrsAgF(nb&fcGGJ{55M? z<+}(VWYq`N;xKg=o{SbT{0p+xN)Q=S2TEFl3p2b1(!Dk8bMx<*qsfUeW@u>gIOJ9F z4_fdITW2_%)BIb;6~(hFS=X{oP>q+aWdTZ;Fxs=0wNnPHr_$@#$m-Xp!&N!!BM=Ne z0AgedZGe`B3#HI^M8OF$qTqFh>FaeM`{$kM#5%Uc-4*kF9AzDEa|(&6@e9sif*oY; zdgd8)ySyOOX;iAfslBc3B@uNFVK`D8JJZ-+`8GV$ ze{JYd|H`SqnawdMjkWxpzblddHF~p!t;A^_$iA`SSd*^&fFbul4cfPn1(5HL>|>>4 z4YK{na6NrHt$+>h6)-HP|4*WT9sg0lCaS#^1^l5Ea6U*YV1AHRKwJ(A2neFxIcy%7 zD1ICKUx~ii#=<@8Rg+Av9Rg#sTHyPuPFO}yw?VZF|DLLC2LVzdsl#>{QjXA=?YPZD z=|~CNm?wGffC=CxeXs)_-IJ?|Y#xeiFkW@DNXI|vM|@n}^960*0a0D2sx~Wnu>*EB zlMYnc37rYoK=j%P5z{DwX6|II%C|@rL&|a88sekk=$_wqVxEU)+zAzIY6mjxV_~#y z7wj$l>9<|1NyI+^q5{&hsJH^bdIcIUM#mI$aCCE_u!{+e!*(kk>VW`JCr=u<8>W)n z@2J;aR^727oV`o!!ZdS#+}nbb)j4!!7mJK&Z27-Sny~1%vRLOS}2YYh!0gWv==Y6(IUHD zpR1o%f58zlI$xYpca!A^`$I8CFFML1!&c$QFYMUHNcHd9$uHaL`F`!*d`c-t*(YVY zVHnh$&xS0~YN!4#YGmx1b-6vHOM;TJ;P1ZATBv{e@YT1Iww*aftdJ?v!~P znstL<+HstH3M+Tp6YP$1p((9AfO?IbF6xzC<^6ieR+}MBgpydrt#)dr)@qe7LTUA? zvp}oYHLcZ@Dot{3oPvjoVv5XpeVUCjgnc+g6f>g|iixp}HVNNh(0D-A;Oz;5I8&U9 zKR>w0_3l_EtvSnPmn{=nRE*DDt(YrUDDMKyd_SCn`cOVR=gB$jG>Pz?EQ)C8Te1i% zctGn=$)cEArA0AP5EK_PI)e&-WtnC7G%70Q)Tgo-!zsFUf%P-&&uMuP8>y6m^|cl= zV7>-E^Zq|t%##;?N^y(zo}}{`h7zsC_GW3HvguMWpIruL3ts+>H4C$k6=isPzF$U) z_zn*zQ3kXDaCi|f_nbiGudwgRX4EYzW9|%5Mtv&00()2n`CWw#Z%R()RWO0&WU46O zPI(j{$Y6QfP~oD08&u~HwzOH1|uRQ2Y-%z7GNRTcev?UJ{>c$Jn={oeuGt}Zbb631lDe*c>Fl?o7uS4^>Tb|Bc zN9EQ~pBt<*l+GV-UQ>!M#Wcdq~!YWjX$s#iIU^2?;aiD#6E?8b|Or2Gj zr97X}D-~VmC3)tv%Gi|>kVEZdJ#bNUz=TF|r*`x+Op?d}3jY2ASmo@TT@EF-tE0J%e2r!F$zo7wl zSzXf|lgPFsr{#AseX8qEd3V_gp>N-VPCcF$-$QG6^`ou#U=4Uc_wQk!-GzrJ8#{}# zLi2ycb~JS$7g?M(Ql@!@x%Z*hy(W(bEXGuciO4J`8u);9Q4)P<=L6_V#gmVZ8o1(=q z&6Io$v(I6et0T4)BsN+{J$RRXc?64By^8eU5%X~?twrmxsduU3V;G%@5+5^vk9~%J zo3Rt`(yYgPZOT7s=lA~69aZ^H?{SCJ?*YZGQ^^G zrX5e%@KQ;Qz$fC5{NtIIqh}Kbiin2>(DW}_^^~RH8lsg?nLma8&FZ>Ud5H~VM-0%N zu_rPx@Fk5zsN)V?s<`HFm@h8;V<>4QzxWU3{f!mQ9skgjzTC4c*5yU@6YOTwOY(ol z5+ePPAamy{ggd0((xO%)XxhHf^}<_K4Hq7ClD`-Nt+r^)^z=E2S*5klm~U*(s~2df zqpIuc7uflxARqN$OMH*j))|T>R+rUtTx%Fir%2$pn90;QwC)A8Ji+@7G#4+kLV^GNA9mJt^1%{; z0e|M~ehEo~iTCwa7-M=Zdd+s>KF!^)AulK8pO*NDQVhI7>2Zh<#+sB5XrqC9M%5Qd(7@QBV)PKkA0aAYk;Aoz8sZ#b7s+z0 zzt5Vb`Nn5S7s2f!Th--va#DCg>7zRG!!FcY;htf_6TT?dr(H_q8l)i#OI%IydN?`? zb&R#z&3+GQt-|NJR6zxIh|I<;uf0R7hLaSmrmV{~3MI4p6&WX2hH53T88I9!(?3~6f&VQWv$A(cf%*gNJ zF03TRqbrVv&SK3>_i`QMXw7ck9%3BReN-mNiGE_dnc{zmo-!VTE#=KP5A^-UQJ_!O z&>ObLt}__zE@EAvj+#yBocor#eh(b2#@>BFUvoYY=j;ZUczaa*V-pW_8?9hEZYx^} z3k+hyJ&3+G@qqN8g5pjf+R>|PVv=>r-3-Yl#tDDJqeELLP7&u`WfzJgvaI#*WqpWG zw;3CE5G`(ip?EVA*v;K;#+wsA#0np2AVDWSJ%V<}!) zxq6GvmEwWQg$GnvidS=+eoJ7l(6Q}xsZMF`RY8QJ3P;rqw}ddggjc&c^bYkd%{`Uy zTQsILZ(2V0rbGfQ;@}v8j{AZRmF88IQBSC#H2*+}x=C%y0Pb|2J}krQDr0dtUSXzlz7EUQblK8$+Q2zg55w2wYEs&WByl^ z72*-s(q41sfjDr%=)&t%w+i!DmI0>`WnWHp&)hC0F}OH0H`#8kaYN8ai0kV&sFw?` zqVzmNQ(budpd)BCNoG%cr)G*xmR;+#TK0?}nQpTD)P+~~omqr@7zELfyGgp9hB6S~ z%0t~FfuTi&>Jj7VtPA(0GmDtn_raffVGWDZqYP2LT2o8E8W>vo@AQa#+Tx1zQS(?i z_a4QuMJDI9T5N(FuMys{rI65Rd03&eX4j1q)3UcyffUi0qfUv!RHi%+4Ow*p+F-2` z>fu}w;49R_A77NjUqb`S^E#c>8=|jwx-Pn}eh!kxI{CGc@IcX+CV!#|ERPfT=9+LKmP?=)3q;F=B=UN`&QviOb6Qw)ZS+(xe56qP9~}UZ2FbarWRR^@>?Mv?KHuzYW-vCZ`7bF4|WcA5=XhStq;Izo9Br~1=2c&YuXf?GIKvliD_6;r|gB;dQ zLp5)s@zwa(aDVd;LK~(~(;!}md*>Sk1InhvU>;#;PjiF0m!Scz4d%g0na}BbFmHhK zUQE?_O`HN9R-Gp)mY?af>S*p8Cq;ALJx1rM^V6l9|Adwh-S!DZ1#`1v`6*|A2)}0# zGP)*6z4sS^ee5v(T@!sIoYvOj{)+dOoMW|kKLc#dHR}K=`lvu^e~?Dj;V~{#7eKel z(8bR!I$DQ!7Nid4LzLi+G$WM%gc~;_>!S9Zse4_X;&KD`6BX-u7wA%5-pOVE+!A4< zDZCzEV>nHJ)I%!VI#iF3a48S}#A2tmFdA1M#ayQo_4$57Cz{g$i1le>1O5w`Z+sXJ zwv^c~Drw%M5BqW1S37sbh(AkK)HvcO<%aQiPhT8)9V1-8vM-<~3RNdreKCWoHRNNI zj2ZN0L*7zpGJ|e37>1XVTPxn!bPlH^pHM&CM4ejkbIPtIqFf(V zMhM3*sBLRLsLLEzVZoM{PsCc(DLNE|Q94Q;r9;VplGTA4v{14n9N9o{wWA)k5&)dr z#E;t4l?-jTr^lN1!tXV6pNPs%GKot`Kc^aPxVNHWk477wtgyxOT^k-{I=ETX^3(=; z*oL=r**^{pnJiP`)OoVDJXm1lSWzVAAJCpyZZS0r6q#N6 zmTt%L5pY875(fpiIeit!>wA=j(|%lb8&iy}g8>dTU~TNf%8%p1RV1iA4>cXCA`3}+aMa?_#@SuK}s#>$*hk~P;#i-p0a66kv6)aW>&m6TSVB984&GVTh z@;>@xL3oL={C5!$B*t=wf93OVr%30~KrVV6SFclH2VT<@^o<9RLDZ9By03Ef_(nCmDsf!7G>2sNajW{H|ai2xr_lm74EcctkG zytZk{*P>v@)wtfCS4~fw>qx*)IpxgZs!-;7*4bDt_xvxQ^yyGi#bC6i`Q`_6o> z5Z0af7(+Me+J#?){IA)Szk(>Pp2&T1(QKPUK9${^iDn6<+KIe^a%3j8P2^KpD-o8g zg$2!|nMwRNzw{a6<1t2MiB_0Z0&zjZdMS)4}Pm{axYPg$bO*bCryK_2-T)za> z*NK42u#2lF$@v4`%w$+5=sf%j>ihxU;(Jy2?ZSeY_C9l=7j);tMl7lM;<*C6P#mNbYUnzVJOJ? zY8bCzRL;mPHEKf($!M7nl#a=!CNG$jSf*V)RnJB1Iz<=j3aIr{WR*q56PcSCM0K}3O2HoayHE?S}Om3c|>We^aU@mB2wKc#_ z0fBT_hQnO+!%^6=vQNU3mc`Y09Aj(3M8tOv^8e{2z>=IpcYEW%U5MwvS^w^#tx*A?>OV zv2P7a-Ows(Z#X|Xb8pWo|B4(ZB5PBh3A~?T?@y=FcoVWu;3o}F>0}!JBWw!Jdx3ct zHX+SA51SCQO1pXJC?PzAY^j9ZM;U2W0lB4OA?~cYobo2}fJ$Yqh@>!9W+ezQkLDbx zKHnll#)@tTphxF;J?b=xS8%V=R}euQlozZm_DtPC6DRSL%GhMBMl&Zv2zu$jZ2@fW zqs6pN2hd#yzE0;&m217Vm`WKu6qisXWWY-2M=9b5j!5F?ciJp|cGH;*7!e!)Mo%-q zxK}9~Df zOnhfV$nA!w)Lw`LUV9792pmD5PUV9Q<8z))<;@)prKrISbo!HzY2*y(!fCXB2Cr=B zmUC+c?;vAmi`e@#ayF00^gDMpx9}eKvEtR*Lic8HudUhqPeP>utkQl^sa8KO4#oR*~yDR70 z#k{UTQCn#Aeh3Gbrp4x)}<@HS4jPQKA?H(S5Jyi*)g^aT{Z3)LuMDX))Pdqynf z-3^E6=u+OuWRqqpN+P}t?cJy)?i(7+{J17+%hAMTyrrkoQZS?L8e!|~ChdG{>DOgE z$n#K(|A_mL$}Q(^7OlW@1X;vS zdx~1YEmb%4F1F*3(~bBR^hUV&h~7Aw!O=B=rmf)B%YBO;3dN#~6z_KPcL}s-1!jD< z1iHL}*DC+a7l%4y@uM5e^ic)X)n@_ZwGuUHLycC#XmvlHl2>wb4c=Vz4;awL2?Kh5 zQ_&R5szOGK8<;Zi)91i;NBpQ87t_j>m_b(kK?t$K@j2>B2ubC;A+$Rc8c_|(`ikFm zZQfak7=7ziNN1Y1np@5L8kZb|1mXJRZ=ma|c^9|zP9^Y%bu!S^J~+N%@Yk4c-=wu) z^N-+D;35=rxqj&xos_+d+HHx}_!`p#L z*L=f=o1U&0U$7`9$Lm`jY(Qj-@A!Bu{qOva-&HPz(b~1Vb=@x;{5!Wk`LhuwOV)G- zp_ka41J{b&=Cq+o>mZKHG!W~qezbBOtc94`u0tE)TAlU0q3Pha0&!659P4@rIb7#C zegn)2JE?F3rWr)fzUNh(MukGge!r48fb|T>i7j)wZ4|8>-a~6;U~l3F-RpcK^o}xe zf+i}|BOh{cGY0U%wdl?|$j9hfRAxO7Gfi71vZ>ZQXVw;!sk}_02^;uiLt0M6k0RRv zA>=X?JQEW_)ray}y{wM2H3raki4(~a%C158Igps zv3P-XDUD2O^#~fhgV!?rm9u&W^cv4U7lYkO46{ekt<*2+!A`zJ@%Wx*?*c`(Qt91% zP_L^nPr&*7h?44@dFM4o2D|#fVvG^e$6S~_kEk(#W3t)dsIqY4!H+Y3T(H6>CeQWH zVV7Y&;Z@sgyG8ULhX7GgP~YafY7w2>&1+WZu}F+sa6jngC6?c^&xmGrNhP;EAmJ}R zP=h`EvSPzP24BLR*X6Gz+|}Xp4GcJAJa3w{x%*&T*+hTr6z~10M)?T zAr)6P#9QPJHFdZT?KuGBOHJx~fVX$O|Dj+%L|Vm%ouS5Ieo#D%0D<{`>I4awsO53S`^{hi5IIe;go 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

>YGc3;8Vvs(qJy7N*~ravEH?KHnKxjdrH{ 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 delta 293609 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 diff --git a/src/App.tsx b/src/App.tsx index dff779a..a5121c8 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -241,18 +241,18 @@ function App() { if (!onboardingDone) { await configService.setOnboardingDone(true) } - console.log('检测到已保存的配置,正在自动连接...') + const result = await window.electronAPI.chat.connect() if (result.success) { - console.log('自动连接成功') + setDbConnected(true, dbPath) // 如果当前在欢迎页,跳转到首页 if (window.location.hash === '#/' || window.location.hash === '') { navigate('/home') } } else { - console.log('自动连接失败:', result.error) + // 如果错误信息包含 VC++ 或 DLL 相关内容,不清除配置,只提示用户 // 其他错误可能需要重新配置 const errorMsg = result.error || '' diff --git a/src/pages/AnnualReportPage.tsx b/src/pages/AnnualReportPage.tsx index d0aa943..626f315 100644 --- a/src/pages/AnnualReportPage.tsx +++ b/src/pages/AnnualReportPage.tsx @@ -91,7 +91,7 @@ function AnnualReportPage() {

-

只要你想
我一直在

+

你只管说
我一直在

{/* 双向奔赴 */} @@ -1025,7 +1025,7 @@ function AnnualReportWindow() {

其中 {midnightKing.displayName} 常常在深夜中陪着你。 -
你和Ta的对话占深夜期间聊天的 {midnightKing.percentage}%。 +
你和Ta的对话占你深夜期间聊天的 {midnightKing.percentage}%

)} diff --git a/src/pages/ChatPage.tsx b/src/pages/ChatPage.tsx index 2b12197..a5c8b3d 100644 --- a/src/pages/ChatPage.tsx +++ b/src/pages/ChatPage.tsx @@ -286,6 +286,11 @@ function ChatPage(_props: ChatPageProps) { setSessions ]) + // 同步 currentSessionId 到 ref + useEffect(() => { + currentSessionRef.current = currentSessionId + }, [currentSessionId]) + // 加载会话列表(优化:先返回基础数据,异步加载联系人信息) const loadSessions = async (options?: { silent?: boolean }) => { if (options?.silent) { @@ -301,6 +306,19 @@ function ChatPage(_props: ChatPageProps) { const nextSessions = options?.silent ? mergeSessions(sessionsArray) : sessionsArray // 确保 nextSessions 也是数组 if (Array.isArray(nextSessions)) { + // 【核心优化】检查当前会话是否有更新(通过 lastTimestamp 对比) + const currentId = currentSessionRef.current + if (currentId) { + const newSession = nextSessions.find(s => s.username === currentId) + const oldSession = sessionsRef.current.find(s => s.username === currentId) + + // 如果会话存在且时间戳变大(有新消息)或者之前没有该会话 + if (newSession && (!oldSession || newSession.lastTimestamp > oldSession.lastTimestamp)) { + console.log(`[Frontend] Detected update for current session ${currentId}, refreshing messages...`) + void handleIncrementalRefresh() + } + } + setSessions(nextSessions) // 立即启动联系人信息加载,不再延迟 500ms void enrichSessionsContactInfo(nextSessions) @@ -330,14 +348,14 @@ function ChatPage(_props: ChatPageProps) { // 防止重复加载 if (isEnrichingRef.current) { - console.log('[性能监控] 联系人信息正在加载中,跳过重复请求') + return } isEnrichingRef.current = true enrichCancelledRef.current = false - console.log(`[性能监控] 开始加载联系人信息,会话数: ${sessions.length}`) + const totalStart = performance.now() // 移除初始 500ms 延迟,让后台加载与 UI 渲染并行 @@ -352,12 +370,12 @@ function ChatPage(_props: ChatPageProps) { // 找出需要加载联系人信息的会话(没有头像或者没有显示名称的) const needEnrich = sessions.filter(s => !s.avatarUrl || !s.displayName || s.displayName === s.username) if (needEnrich.length === 0) { - console.log('[性能监控] 所有联系人信息已缓存,跳过加载') + isEnrichingRef.current = false return } - console.log(`[性能监控] 需要加载的联系人信息: ${needEnrich.length} 个`) + // 进一步减少批次大小,每批3个,避免DLL调用阻塞 const batchSize = 3 @@ -366,7 +384,7 @@ function ChatPage(_props: ChatPageProps) { for (let i = 0; i < needEnrich.length; i += batchSize) { // 如果正在滚动,暂停加载 if (isScrollingRef.current) { - console.log('[性能监控] 检测到滚动,暂停加载联系人信息') + // 等待滚动结束 while (isScrollingRef.current && !enrichCancelledRef.current) { await new Promise(resolve => setTimeout(resolve, 200)) @@ -410,9 +428,9 @@ function ChatPage(_props: ChatPageProps) { const totalTime = performance.now() - totalStart if (!enrichCancelledRef.current) { - console.log(`[性能监控] 联系人信息加载完成,总耗时: ${totalTime.toFixed(2)}ms, 已加载: ${loadedCount}/${needEnrich.length}`) + } else { - console.log(`[性能监控] 联系人信息加载被取消,已加载: ${loadedCount}/${needEnrich.length}`) + } } catch (e) { console.error('加载联系人信息失败:', e) @@ -514,7 +532,7 @@ function ChatPage(_props: ChatPageProps) { // 如果是自己的信息且当前个人头像为空,同步更新 if (myWxid && username === myWxid && contact.avatarUrl && !myAvatarUrl) { - console.log('[ChatPage] 从联系人同步获取到个人头像') + setMyAvatarUrl(contact.avatarUrl) } @@ -542,6 +560,50 @@ function ChatPage(_props: ChatPageProps) { // 刷新当前会话消息(增量更新新消息) const [isRefreshingMessages, setIsRefreshingMessages] = useState(false) + + /** + * 极速增量刷新:基于最后一条消息时间戳,获取后续新消息 + * (由用户建议:记住上一条消息时间,自动取之后的并渲染,然后后台兜底全量同步) + */ + const handleIncrementalRefresh = async () => { + if (!currentSessionId || isRefreshingMessages) return + + // 找出当前已渲染消息中的最大时间戳 + const lastMsg = messages[messages.length - 1] + const minTime = lastMsg?.createTime || 0 + + // 1. 优先执行增量查询并渲染(第一步) + try { + const result = await (window.electronAPI.chat as any).getNewMessages(currentSessionId, minTime) as { + success: boolean; + messages?: Message[]; + error?: string + } + + if (result.success && result.messages && result.messages.length > 0) { + // 过滤去重 + const existingKeys = new Set(messages.map(getMessageKey)) + const newOnes = result.messages.filter(m => !existingKeys.has(getMessageKey(m))) + + if (newOnes.length > 0) { + appendMessages(newOnes, false) + flashNewMessages(newOnes.map(getMessageKey)) + // 滚动到底部 + requestAnimationFrame(() => { + if (messageListRef.current) { + messageListRef.current.scrollTop = messageListRef.current.scrollHeight + } + }) + } + } + } catch (e) { + console.warn('[IncrementalRefresh] 失败,将依赖全量同步兜底:', e) + } + + // 2. 后台兜底:执行之前的完整游标刷新,确保没有遗漏(比如跨库的消息) + void handleRefreshMessages() + } + const handleRefreshMessages = async () => { if (!currentSessionId || isRefreshingMessages) return setJumpStartTime(0) @@ -584,6 +646,31 @@ function ChatPage(_props: ChatPageProps) { } } + // 监听数据库变更实时刷新 + useEffect(() => { + const handleDbChange = (_event: any, data: { type: string; json: string }) => { + try { + const payload = JSON.parse(data.json) + const tableName = payload.table + + // 会话列表更新(主要靠这个触发,因为 wcdb_api 已经只监控 session 了) + if (tableName === 'Session' || tableName === 'session') { + void loadSessions({ silent: true }) + } + } catch (e) { + console.error('解析数据库变更通知失败:', e) + } + } + + if (window.electronAPI.chat.onWcdbChange) { + const removeListener = window.electronAPI.chat.onWcdbChange(handleDbChange) + return () => { + removeListener() + } + } + return () => { } + }, [loadSessions, handleRefreshMessages]) + // 加载消息 const loadMessages = async (sessionId: string, offset = 0, startTime = 0, endTime = 0) => { const listEl = messageListRef.current @@ -621,7 +708,7 @@ function ChatPage(_props: ChatPageProps) { .map(m => m.senderUsername as string) )] if (unknownSenders.length > 0) { - console.log(`[性能监控] 预取消息发送者信息: ${unknownSenders.length} 个`) + // 在批量请求前,先将这些发送者标记为加载中,防止 MessageBubble 触发重复请求 const batchPromise = loadContactInfoBatch(unknownSenders) unknownSenders.forEach(username => { @@ -1549,23 +1636,13 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat, o useEffect(() => { if (!isVideo) return - console.log('[Video Debug] Full message object:', JSON.stringify(message, null, 2)) - console.log('[Video Debug] Message keys:', Object.keys(message)) - console.log('[Video Debug] Message:', { - localId: message.localId, - localType: message.localType, - hasVideoMd5: !!message.videoMd5, - hasContent: !!message.content, - hasParsedContent: !!message.parsedContent, - hasRawContent: !!(message as any).rawContent, - contentPreview: message.content?.substring(0, 200), - parsedContentPreview: message.parsedContent?.substring(0, 200), - rawContentPreview: (message as any).rawContent?.substring(0, 200) - }) + + + // 优先使用数据库中的 videoMd5 if (message.videoMd5) { - console.log('[Video Debug] Using videoMd5 from message:', message.videoMd5) + setVideoMd5(message.videoMd5) return } @@ -1573,11 +1650,11 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat, o // 尝试从多个可能的字段获取原始内容 const contentToUse = message.content || (message as any).rawContent || message.parsedContent if (contentToUse) { - console.log('[Video Debug] Parsing MD5 from content, length:', contentToUse.length) + window.electronAPI.video.parseVideoMd5(contentToUse).then((result: { success: boolean; md5?: string; error?: string }) => { - console.log('[Video Debug] Parse result:', result) + if (result && result.success && result.md5) { - console.log('[Video Debug] Parsed MD5:', result.md5) + setVideoMd5(result.md5) } else { console.error('[Video Debug] Failed to parse MD5:', result) @@ -2061,11 +2138,7 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat, o String(message.localId), message.createTime ) - console.log('[ChatPage] 调用转写:', { - sessionId: session.username, - msgId: message.localId, - createTime: message.createTime - }) + if (result.success) { const transcriptText = (result.transcript || '').trim() voiceTranscriptCache.set(voiceTranscriptCacheKey, transcriptText) @@ -2138,14 +2211,14 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat, o useEffect(() => { if (!isVideo || !isVideoVisible || videoInfo || videoLoading) return if (!videoMd5) { - console.log('[Video Debug] No videoMd5 available yet') + return } - console.log('[Video Debug] Loading video info for MD5:', videoMd5) + setVideoLoading(true) window.electronAPI.video.getVideoInfo(videoMd5).then((result: { success: boolean; exists: boolean; videoUrl?: string; coverUrl?: string; thumbUrl?: string; error?: string }) => { - console.log('[Video Debug] getVideoInfo result:', result) + if (result && result.success) { setVideoInfo({ exists: result.exists, @@ -2642,7 +2715,7 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat, o const fileName = message.fileName || title || '文件' const fileSize = message.fileSize const fileExt = message.fileExt || fileName.split('.').pop()?.toLowerCase() || '' - + // 根据扩展名选择图标 const getFileIcon = () => { const archiveExts = ['zip', 'rar', '7z', 'tar', 'gz', 'bz2'] @@ -2662,7 +2735,7 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat, o ) } - + return (
@@ -2682,10 +2755,10 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat, o if (appMsgType === '2000') { try { const content = message.rawContent || message.content || message.parsedContent || '' - + // 添加调试日志 - console.log('[Transfer Debug] Raw content:', content.substring(0, 500)) - + + const parser = new DOMParser() const doc = parser.parseFromString(content, 'text/xml') @@ -2693,11 +2766,11 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat, o const payMemo = doc.querySelector('pay_memo')?.textContent || '' const paysubtype = doc.querySelector('paysubtype')?.textContent || '1' - console.log('[Transfer Debug] Parsed:', { feedesc, payMemo, paysubtype, title }) + // paysubtype: 1=待收款, 3=已收款 const isReceived = paysubtype === '3' - + // 如果 feedesc 为空,使用 title 作为降级 const displayAmount = feedesc || title || '微信转账' @@ -2743,7 +2816,7 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat, o
- +
diff --git a/src/pages/ContactsPage.tsx b/src/pages/ContactsPage.tsx index c4d071f..27868e7 100644 --- a/src/pages/ContactsPage.tsx +++ b/src/pages/ContactsPage.tsx @@ -41,15 +41,10 @@ function ContactsPage() { return } const contactsResult = await window.electronAPI.chat.getContacts() - console.log('📞 getContacts结果:', contactsResult) + if (contactsResult.success && contactsResult.contacts) { - console.log('📊 总联系人数:', contactsResult.contacts.length) - console.log('📊 按类型统计:', { - friends: contactsResult.contacts.filter((c: ContactInfo) => c.type === 'friend').length, - groups: contactsResult.contacts.filter((c: ContactInfo) => c.type === 'group').length, - officials: contactsResult.contacts.filter((c: ContactInfo) => c.type === 'official').length, - other: contactsResult.contacts.filter((c: ContactInfo) => c.type === 'other').length - }) + + // 获取头像URL const usernames = contactsResult.contacts.map((c: ContactInfo) => c.username) diff --git a/src/pages/SnsPage.tsx b/src/pages/SnsPage.tsx index 6e512a5..6140902 100644 --- a/src/pages/SnsPage.tsx +++ b/src/pages/SnsPage.tsx @@ -149,7 +149,7 @@ export default function SnsPage() { const currentPosts = postsRef.current if (currentPosts.length > 0) { const topTs = currentPosts[0].createTime - console.log('[SnsPage] Fetching newer posts starts from:', topTs + 1); + const result = await window.electronAPI.sns.getTimeline( limit, @@ -281,10 +281,10 @@ export default function SnsPage() { const checkSchema = async () => { try { const schema = await window.electronAPI.chat.execQuery('sns', null, "PRAGMA table_info(SnsTimeLine)"); - console.log('[SnsPage] SnsTimeLine Schema:', schema); + if (schema.success && schema.rows) { const columns = schema.rows.map((r: any) => r.name); - console.log('[SnsPage] Available columns:', columns); + } } catch (e) { console.error('[SnsPage] Failed to check schema:', e); @@ -335,7 +335,7 @@ export default function SnsPage() { // deltaY < 0 表示向上滚,scrollTop === 0 表示已经在最顶端 if (e.deltaY < -20 && container.scrollTop <= 0 && hasNewer && !loading && !loadingNewer) { - console.log('[SnsPage] Wheel-up detected at top, loading newer posts...'); + loadPosts({ direction: 'newer' }) } } diff --git a/src/types/electron.d.ts b/src/types/electron.d.ts index aeff9dd..e00eeeb 100644 --- a/src/types/electron.d.ts +++ b/src/types/electron.d.ts @@ -77,6 +77,11 @@ export interface ElectronAPI { messages?: Message[] error?: string }> + getNewMessages: (sessionId: string, minTime: number, limit?: number) => Promise<{ + success: boolean + messages?: Message[] + error?: string + }> getContact: (username: string) => Promise getContactAvatar: (username: string) => Promise<{ avatarUrl?: string; displayName?: string } | null> getContacts: () => Promise<{ @@ -110,6 +115,7 @@ export interface ElectronAPI { onVoiceTranscriptPartial: (callback: (payload: { msgId: string; text: string }) => void) => () => void execQuery: (kind: string, path: string | null, sql: string) => Promise<{ success: boolean; rows?: any[]; error?: string }> getMessage: (sessionId: string, localId: number) => Promise<{ success: boolean; message?: Message; error?: string }> + onWcdbChange: (callback: (event: any, data: { type: string; json: string }) => void) => () => void } image: { From f9bb18d97f5c333b48f9c77e17612bfd4ca7b412 Mon Sep 17 00:00:00 2001 From: cc <98377878+hicccc77@users.noreply.github.com> Date: Sun, 1 Feb 2026 23:25:19 +0800 Subject: [PATCH 03/11] =?UTF-8?q?feat:=20=E8=B6=85=E7=BA=A7=E6=97=A0?= =?UTF-8?q?=E6=95=8C=E5=B8=85=E6=B0=94=E7=9A=84=E6=9B=B4=E6=96=B0=E5=92=8C?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- electron/services/wcdbCore.ts | 87 ++++++++++++---------------------- resources/wcdb_api.dll | Bin 758272 -> 760832 bytes src/pages/ChatPage.tsx | 36 +++++++++----- src/stores/chatStore.ts | 22 +++++++-- 4 files changed, 72 insertions(+), 73 deletions(-) diff --git a/electron/services/wcdbCore.ts b/electron/services/wcdbCore.ts index a5167b3..d6124dd 100644 --- a/electron/services/wcdbCore.ts +++ b/electron/services/wcdbCore.ts @@ -155,63 +155,7 @@ export class WcdbCore { return this.startMonitor(callback) } - /** - * 获取指定时间之后的新消息(增量更新) - */ - getNewMessages(sessionId: string, minTime: number, limit: number = 1000): { success: boolean; messages?: any[]; error?: string } { - if (!this.handle || !this.wcdbOpenMessageCursorLite || !this.wcdbFetchMessageBatch || !this.wcdbCloseMessageCursor) { - return { success: false, error: 'Database not handled or functions missing' } - } - // 1. Open Cursor - const cursorPtr = Buffer.alloc(8) // int64* - // wcdb_open_message_cursor_lite(handle, sessionId, batchSize, ascending, beginTime, endTime, outCursor) - // ascending=1 (ASC) to get messages AFTER minTime ordered by time - // beginTime = minTime + 1 (to avoid duplicate of the last message) - // Actually, let's use minTime, user logic might handle duplication or we just pass strictly greater - // C++ logic: create_time >= beginTimestamp. So if we want new messages, passing lastTimestamp + 1 is safer. - const openRes = this.wcdbOpenMessageCursorLite(this.handle, sessionId, limit, 1, minTime, 0, cursorPtr) - - if (openRes !== 0) { - return { success: false, error: `Open cursor failed: ${openRes}` } - } - - // Read int64 from buffer - const cursor = cursorPtr.readBigInt64LE(0) - - // 2. Fetch Batch - const outJsonPtr = Buffer.alloc(8) // void** - const outHasMorePtr = Buffer.alloc(4) // int32* - - // fetch_message_batch(handle, cursor, outJson, outHasMore) - const fetchRes = this.wcdbFetchMessageBatch(this.handle, cursor, outJsonPtr, outHasMorePtr) - - let messages: any[] = [] - if (fetchRes === 0) { - const jsonPtr = outJsonPtr.readBigInt64LE(0) // void* address - if (jsonPtr !== 0n) { - // koffi decode string - const jsonStr = this.koffi.decode(jsonPtr, 'string') - this.wcdbFreeString(jsonPtr) // Must free - if (jsonStr) { - try { - messages = JSON.parse(jsonStr) - } catch (e) { - console.error('Parse messages failed', e) - } - } - } - } - - // 3. Close Cursor - this.wcdbCloseMessageCursor(this.handle, cursor) - - if (fetchRes !== 0) { - return { success: false, error: `Fetch batch failed: ${fetchRes}` } - } - - return { success: true, messages } - } /** * 获取 DLL 路径 @@ -999,6 +943,37 @@ export class WcdbCore { } } + /** + * 获取指定时间之后的新消息 + */ + async getNewMessages(sessionId: string, minTime: number, limit: number = 1000): Promise<{ success: boolean; messages?: any[]; error?: string }> { + if (!this.ensureReady()) { + return { success: false, error: 'WCDB 未连接' } + } + try { + // 1. 打开游标 (使用 Ascending=1 从指定时间往后查) + const openRes = await this.openMessageCursorLite(sessionId, limit, true, minTime, 0) + if (!openRes.success || !openRes.cursor) { + return { success: false, error: openRes.error } + } + + const cursor = openRes.cursor + try { + // 2. 获取批次 + const fetchRes = await this.fetchMessageBatch(cursor) + if (!fetchRes.success) { + return { success: false, error: fetchRes.error } + } + return { success: true, messages: fetchRes.rows } + } finally { + // 3. 关闭游标 + await this.closeMessageCursor(cursor) + } + } catch (e) { + return { success: false, error: String(e) } + } + } + async getMessageCount(sessionId: string): Promise<{ success: boolean; count?: number; error?: string }> { if (!this.ensureReady()) { return { success: false, error: 'WCDB 未连接' } diff --git a/resources/wcdb_api.dll b/resources/wcdb_api.dll index 8c4fb39825230d83d22c4f5a4415fcdf4931a648..9d0741ff4bf847b3755cfc4148cfad962584d78c 100644 GIT binary patch delta 214981 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 delta 212952 zcmafc2V7Lg_VCWY0wTB+7f`yaii&`pVgUtQ6cjsltg%Ez1;q*qqPVPL1|5yvn5eOf z3Rn<3b~Ld!5=$%T8Y*g!)L@Ot5KEh5mI_I!P*j{^-;oB&tOYd`@yk4GTcp=e zcmrGvyG`0y?tTURY@qmt)unE#+7^JqriMac3C{`()|oaSlue`!NeEj3|6j}s;QyI9 zPpO7jJ}oy_X!X|P|FYoCI?>u1W!LDM3T^5s@6u^+%@r4`{?VpB_s+*Lq@T)Jl&M>n zo_|@$aILDt0jjakQ0ifF%GXiGfp5IQfh&6!y~+9Av?rxw zUa;2YA+*5@mIRN-&)FgKmUP#1R&MS=GoLd%i}keT^PC(DUt)E4t0nLhrSXuSI678j)giIvnGsNOjKKU%s;EXJxG>7KL1%7mC4es9LIt-VdM-kb4_smk{B z*i&Y(o=m=FlWTRXSK}#4U1>R1U{TqascbtriD9A};wa~yuY~kdIJ>}=~%(^ssuZ8TkL%NE#npcTKfGqwY1=W^y{r=j;pvPe63yJA$6 z%zprmp!uE6v@5advaWK33D#`1{dxLr32R>alwIG|W|iPt1YhxxS*Q!_(!c+@`pg4% zOFhxf>|fOp4{~B1dJy~0_hHZs_&3Bto6*Sv$R5UyIMy*;7;mQFWA~Z4*u#%^CrN_! zAt$gUt?r6+@E)^p%BQL_cG4+@&gjj;>$uZzpXH3M(~ZzIW$a+xx%9EbT04)W0ZO*f z*`DV0Vh5c)X{f|*JO4&cJYh#%R#NXLtgq`92gC1XipVA}BXu{lS3hZW7ov2hrN5Um zdpC_bak9}ZLVAHu_-l1{q!V^5%1uL`f15MK?Ifk0vsfF?BQ#?vd+V8P^2;aloXmP% z3BA6A-S%p4a_t{;R##KkW6y2RwajN{H399+4}k&i5L65eyqt;z}T+AH@0yxsBAN>zMHpJ zcT?Ink{xK!hzwy58)!^i0miJMH@*Ct`8QlbpWS7J4Si^qC41ShF&$~i>UswZdUhR@ zl`+&NN_Qqw=ZM0U?wKh<^Gs0GdUbbOKo6C_K&4jSN2N`j(@>>Vb?&2z(uKQYOFp)w z&M_zwe4=${po@pG%Z7Vwm$ws5zsHKagXrQL%(PJlI^zNhZ`9Ma{slC&vszuW9~#cP z^K5IQX>{Fr=F!-#W2r3~*MVl-WTn1-)afRx>lf*?s?1EGJ6Wd8!|;#(9FJ1) zI?ZPJO`z>xvuA$Zblf~v+kd?#@)-z2H%K!^t4jc|)Kf7-PfCx6m@Bd%T7%(uls0_E zZu)nk4%eAWv(@y;iJbgq=7jqE%1$)zPThZD_ANTo8`s#N7T?opjaWsCI90_}lzw!K zRu@?zm0e}uw9KInSD8zz5c+E|8`8>;s*bUxtwz%P{_Jh5-gIhj*0uF4x}rBLYW=PG zk)znVg6;iO#}tGc&SKjP^WvAGQZO9&$V{=|ZepWIFb17|4*>>&x06TAc~%EAC-$bz zbUN=cn-H*qt~$(=fuq&)+M#y7io0%ySxR7g`uPwm3~WM`huMq3;a1_(WCeLhNl)3p zAUE3S5StY=+w1-zb46;q(GE2ghD6Y|wfc~SLRwRR^jPkUQcne( zl;~MDD7dL(*I=~m+u98B?gUA&JR~MOw|urCcrLw`m*dekolu9|oUQGK5yzZ1U&F#2 ztdQ0n$noglNvxdXD=AAaVbLM}WD=Vj;z*}AVLYTiy_myZg>qHm zaRp9!0WGeD<`oOGE0WgVMky(mvyje-WKzz-&fSSeLoZZEm?lJVjA++%pmL0v0-f?9u zyIu0qHAJ*HDQ!Cq(#q)UA!am~2aR*>%paMi`y{Keah0-cd6lj2-jQr)zjyCSA2wuu zG3#m1YpghC6Ww){CG?m=BQ7(kM`L>Wa!&1@y@{&#Msr2!9W*#yk<@u3o8D_Owb;m> z_3A_SZeXFkU1;V-HnexH{ZH%76=i<;kZCC{ft_BFmak`x`uNjM>)F6QUeq^;rS$3L zZHh4}HQC908rWtB2(D<~angw*bjUDGoOXoPG)mtpi2dE?6jBNImKTZ$6CEJw3fa^FfgMA3mj(OlPvMj^%du!nID%yeMAS}RrotGehU^we>y zSj&OqsO46+VPG)5w1wRt80K`hKn#unt+?`MjC8ty1rC}+(>JobL1{E*6Kg*>h`u?& zW)2Ra`%bVUgSB+b31&7Vf_j`_-QaQSI9oAf5nZ>Oc?|91-E%qUYZU0qs0mbCd#vjL zbqlVk78Jl!a@x$k8`_3G{DEB<+R5?dAtNF2(j)n2be44c5UU>-Lnjup>2Y4+k%dAo zb;B}RHT(;WDLO{#2C!wC1?N-?<_jr9RWMYgwlf6?GRN|)vZ5S*$ZheG`ymibfbEYA z#iGx`YLLt{#=M7}pskOy=flp>Lr2;E;aVDhlzko^MjIbxVIxM_+b=U$C|!XAy9MrSR}894ed@o!zvOg4hhJaa(^qGW>>F#d>WiEE6<(7BQv)jhV_Oj;TYJd$Ei$P$M&Ub z@>%-WskHnc`+KZEJ-wJU9T!cfEoQUF)up`-vX$e$p?_sCGTw_`%wP@1@1sr`?9TWe z^zkiGl1BduMR1x@Hrw`H;A6DH8b%b4lJxpqP6D4^5m!?7qK z%XF4K@i*GgjlGNyV7n*PpxMh=v&rE!dO0KU9q8;d<~y|m4NhYpC%0pT@wMp7R8}1C zLie~pk5KBGEue2O0j*3G(5L1DbXPikKI=Rsf*O8iOQ)#m*6#%5uORjL zoJq{7dbPs^%<7{J(z#`9!PIYPaSD4m)r;yA31_D7f6P%gM z!V*{0wZZJS#2t0I{A{i`W9qIbgAD14F$ly<=PJzDPt$&-ueP$;)4R~0wz8t>Eon(8 z`#gOH4WG?sBt_DXv)F+d?P^U0dbFu08lvKN&-!j=dlo&zijJ7Y2F`Fs*GZZYOlu%$ zBrTZv-OMhgQ)ZegSlkQ;la(9HSpP&1ws2-W`g#W2K68#kHkeV_iP^OdDF!uA>ds4P zSl-8MXVqpsXW5y>VlkcnWk+0c(q|=+`g2=CFwpmT4}x%)_F7{h`n@Er6}9f75L}CS z&55ABrnB*LeCdd_Z1tRoTHDvl!REab3f9a+Qk3l+v!)qsJ6*Z@7fVIHm;!fCW1Z$| zXse&u*ttoyoYw$iU33Suh24ql&$*vyaRPgp96mffCuk*HZxS|ei5Hl;NnVL9j0 zvQ23EN;Y&+5cT?&tzN|FlJU$xV>Y!J&vs?_(D_r?y^IcY<2dHJxI?YDaU#08BULTO zv2ly1(hken!^N32X*rvq>rNG8S%EH=t}tOvnSJTy$t*r|8vSVslQM(oxG7Ad&!<+5 zJ=CwFNu$}!C9aPBM=#!D` z_ELAcc_jO|RAaKlV3y;VwX_BeT*&sV>OxEU$d|NUS(D4i|+K8w!jpX0gO zlF))Q)^ts<-LJzyre`~0a-wMQPOER4!)C7OL5~k-m)3;Wn>id>4QI5epKVkN21B$L z%ePF;28mquImQ551Eg#rB6I$tOoU&2^Na1 z`~c`C4ecwq!vxO}=4=07!I5z09%`e_7^Hy|TG=Y6Xx(N)iwCob8+uw@90HN_kt#xU z(8`NtZSbdAL)hmH!|7}%Hhg18y67eQX=4wX_=0`d7(!Efvfxe4sb5bvX;Wj`es0d{ zO$Uj|`WSN_T5hh+8N1n)(1WpT(T{!T?*8oIj~(d5{>Q>5Zwv^J7 zQS9$6Bk3GlHf-y_dRgW$i>6*Ni_$CiuCP$FxQ6p+h;;6;QlYZ(SJ@=l@ZV-w*t5U3 zhFIykn!~~>u~20@rP6>y0D1tztK^XS)(1U)T}?#?#QH4XLe&p!#c+nD}_<%Gc|iq4Ohkr#L9-u zVP~9)!$&2Xv2%?7;Y=k?0@)fTh+1HF2KC0lpgAq{@_-s?`#I5`sac6Qtj{ysU2b$) zSJrHoKb(U(`R(oF?haaIytGk5>VpWsghYj1;orZK|`}TR$J15w^eU0oLPb({zxMF$B zPbt|gN0-{tDdoQw^V33^HfJH7(1l&incmv8hZ$@jLC~oReV4<)&YCsSkMh~HZjZV)#nykC?a*2rET5Vj|ctfbl815*p#lk z!OU`d(l^m;KyK@LRwIRZT7*GH?NQb9PC8CdQ5vnZCYtTbji%AjjN}E;d2Ly{ykHvE zmd(uTO5X>wvw3Z4elSz!N73=YtXF;{^$2F`@+Z*HuFU$72X*ht{0`lqox3pe!%gX! zYpnI*?(}RVTX?t?Eg8xR4!hFHk?j8AXj(6l`5XzNeFNASc+?GGn~y}&D{a`HM}p~h zZJ5u|t~9(2n{gB-uh#6;(b2SCXXaCI-mz~)HIC;b%c2X7VAjWcsC@(kIzNxN$~i8w z6;8rN=_rh_r^4CdV~y#`@SKCk`V*5&@0HB%cmS<8fkhn;q-|QTg~x*${oNenQFMv) z>LhqV;NTL~f?J;yY(szU$9kU})b!#D zVf|5>G14+XfZQJi~P~o*JwN#S?JFGIr$^)?$3TW)t?sUv(Kj{ zxo!E`0@_<;!2{Py5||BoR|w4GQn!IjcX~Eiz%0)Ax~_o4ArzJcx*~)6V+abR2(~|J z&wx~I);FxznG3Yw74taTlJ;)P`kw7U`}AVl&UU0%eb|e$v(>C8GNelrh;c0eah0>V zMNR2nciGOOKITE0W(sLz5UX+S8r}E@yML~a&3Uk6;p#|~bR>p#Jb#DAJ!NheCTe09 zR&N{L9eEyX6PY^4Nj1$hS~o!R<7hP4ykAjquG0>F+mTGy)gElW< zK9_vx51p^>eG0h0OG_kP@>nZ|iCy%PIAg$H3A} zPR!+=GriAP;Jx~^eG!YhcZyzgWDV~3r_mePy!(3keSK#0prz%=`slXpmJPFDq{N*~ zc(Ay-X19 zXRq%{Hn|0T1r`-#>?FY22eHBu4?6p2_IrsB^-W+lzwM-Dp6u9f!|B}s=Joq{Ix&D{ z{qAYepgl66jAHq}cPCb?#-mnnhS1@WFCE&2O?p&^hIL_!A6=yB*IDf2R@B*@EqxqA zU0bu?9(OcdrGjMr#WNSy>B$6#s8&b-xO5g6p3$Xa7BkC7O-!Vp3)q_{DHhUZh)R;L zE1UiFA@w}Z2LI6yf|8N$60kcds0BOq$1Pe?#MVjfD#J!l5tyQoQ1j+LT$BjS+Q=@K zGU|Mmjd<3OPVr}%&vf+kC03^_mqxW@*UCoJ*wqr(z^VnFY<-yn>;2rFerUlGpAVs{ zTCnTS`_j-Btm%s}<_*ndS6lm&sVmEW5loBB*t-|)=^``M`ej49-iHl+Ig@(%u)8lC z(TXO_?9WNGvyx5!(>-}~6C=^y=wxGN%Wfgu@51bA9w%x(n1aWJzB?;C?XonJS9;n% zMo%k71F-)JrMf!Gq<^Dylzu{-THIvJ)T9_aZHj4*PkAPxn|+0I4L&BE>sEW#`c+e! z;wzlXgbL@9;^=K!?~tUj>aAV~V+_mbkMfAD+@C$C>@d!6rT*&DhkBfiz|$+x2k; ztvJRa{*Eyj@BxtiU7tj-V}Cnae$tr3Y;i?8l+7OhJ)VAglGEd#KtiLvSmq};lL$E7 z+WE=D!7&jg#tcaNl3*cl6paEX^#6Ec9Fa>GV1y50@z-OSgthZ%FG8y`=h(M>eEnYY2p53UHIwyBxeB??Xp z^y+$8`>QLrH385hS22ilkjC_b1AmUsOAg%0k~Fs3=pdXrZ47J=@#CgM zV>=Yq;Bwwou7w;l_!&>NB(bXBN@Ze7keHFP`7=u({<~7{QAbojlJXIqozt~acO#aqkGW3XAT7b}x*0c6=J3rGIZnt0NA z*4(ugaWZj)+JIW574@^`lWLJLTH`4{Pz$I(`-H#8=Yl6ZP(@-*nmjS%WtOBxtzdM0 z~2W^(}>5qE|}Jmi!SytbfGaZQ(iM z5g%wv=268~{=k-WqN{)BUUnp`NuT=|*ZjfD@}!+M5G-MFpzD(dr)~aH|1B7ryT!l~ zx=^||n}25qh{}KCm+eRa_5Y18u_uG*wG#f^p7f@(OZfRH(v|v^@TIj$XZrLZkBbHq z;Sc%lXyVDWYA7^($hn#F0Iy^ID9UeOIopp#e zTnOMd>i~6)Ci7Nxfx2Jfxvnl)nqwWFTbJCVy8?NZGk9o5AV1(tGHCndJj8`KnEdov z$@{yIzO?BYzSo5$(btqWaU~t8f$~YNz#hHHkGPUd`>5pWJV?9xzx`sSQ1vT>BhT=xsEou7U@u}d zT;ro`ayF9TgK~u@@$9s^8f172LsZ6`D&WEomB0t#SCsBsO{|O)j#0&q2UxMcG|nz} zq$lY|oR2RN;C(=q(KgcS_n-0b4t_PNQ1Tn~fZaXIxvv+QWis_2Grq%%gqkG7k8&^4 zh0ZVLZ8h+0UCbA0NQOz-TP3eupR}RBISPhN{I8hts~eQH`49C;Yx?Lizgr*JUU8Xw zHz2%ryEm{yaS*aay~sHsHM?*r_m>7lL#XmK|Im;G+ZMetf<$-5)UE$T9_~%F)cG!7 z>P_0xX0P}qZ_<+f{TDZB1UB;Ao_B0SS~zvSV5Z0+rL$p6sM_9UvkP3`hzv7%P+`XZ zYD5+|IlKnezbtd~8|)xtM1kioX-vXuSUwkmQ4Z&K8-u~AXY(0N$Ownp=U@WNfPeAC zenEgO`o60(f7OK4qxXuqgAZv=M)F7>;_kIboR*a1enFBvam?1lVb=QhDdCICU)ph< z4;e;d4)T{iBtV@G5&`LBvN)@YJo@V}9^8~PaqVj<$}4Zl(Ii+cqDhh&P<+^ir#2LHg*2(rrIDrTQ6`&r*kc zo*YbW(0K~puPqsGMHCr>b76w@kT&$>m)nwll;`q>?ZDx>=JKiSh##ciGBTL5iX`h? zzPBA2tg0#Z3ISg~CiUpSV>*$h^oSXcY7eUJdk}#M|t`$%m0@tIx{BB1wmAXaom!>BBq@GrH{NzR4=(XtwS6)1{x@8sE7tYC3 zKdPp+*6QYQzplj7E9NV@V|JM-S{SrvQxRB&9WoA=^T}OFBz?7$AL$C|+KQdrDGHuJ zJLM_y@eX-P^Ek>Eiaf4vTA}fYyJxU z0lV*zvCNV)7H45ja_i2+d|5X#lpgt+zv@OB+73J-@;`gQut7cO2yYBW-8AS3kLpfl z&~M`T+3sM{aff-W7}C1-m~FUw0_R%#4OYMkm~`uHJT`_jp{0lTf*43xg0}IkF~rZY zk0<0mXW@*zxe!t@*mH>#*MYx`A@w@A9D^kaHntB@D8gG5YIVh8$JPq!qjV4y!}kFE zB7@o{XA?>OtxTt$&59RM;*wsP`jY+)Ip-g%PD+ zP!2M|&1)^}MH@SzHL@PuuV>zyXPwNS3s}&qVLxKrA z)g6!W9X*M@p2={T$r7ni3z0t7LE-7uci}D|y78lfd|)rIfRzXNPrXQ6tBzO?tdEg! zmgof`?%e^d?M(t|u6d0u(Tk*<16vIJ@(*xjVRB0P33fCAsE`L-D`_l%z%gUAllTTV&$IvrK7YexV;Ev`21m8VkATz>U0D zEb*b2`tfmr)yMQK4h{vnpMQr$RUBmpPa$s2gP{-ik_Jc>{5Pa4tYKk+sFNwCHJ7Z@A9 zIm{pSC*Bs9%COYtFjozLQvK&xGC#~a3?R#C`~iMr0I8q+WL@=na1nZgUipuQmGegL*JiEWk>_AJ;8t5g+%X#>+wX5)5y& z*eAdWAW^R>Gfzg$DJYmmfEfj&kM@w-6$&LQmpdaJ;U3~xR=*Vz0fV~#KI{yRrq{zf z4;4;1vXRQomIno~-avps{Z<}mIRXmA*)g*9$UT4BZ_YmqBu$eGWE9aJ2K9I#7-$nT z8PrXYd|1!`>jrg-j7@mx8zUGpYEVyv7697=6CV&Lg9*79)V<`U5J75tV-t$fpe}|{ zp;w+sA1rwp+fW743V)f-Jb}?h#t|TV@^2V96 zA});|Ktt%6G|dKp2U)HaI>qzA@LeKeS{Wl|#4a8(7}l&!cJYCOi8DR(j3*6-_1T`C zya1m;zT9*Oq@&-i<{gKCOWohWmkj|kU%Hnc8v42L`bf8}WwkYoer@&Jb9Zrm-~naq?kG6k_7yvLw6lR3e= zNVA&AcCb=3yoEjhg$IKMb%_xH9tzqT)OX~z4Z=rG@8&gzlRng87mpiG9PB^ulmq@_ zv;kdBgS!4Mo-v&GdHBe5>-UIm4p72r3oKcbKkwwXh7&jMgEb+DLy{H;4lc{RwqTSlBcNCXG0r?c^gzkjBn#-dKxs*RNZE3!Pp<1;WJp zWI5k9f_PZ`Qo{nc`m}{#9RYT7q9K1if;6CY5AfO}iNCEsbb|ezN^5PlMYdLlEj)fC z8A2y6;Kd_hy}Lh~`;H?1j+d?ES=%2>1_mnznHNd78}r0b#H(30-1xv*+uscutIgVJ zP%lC=T%yB#Bre|xZKh5(KQ{_8g1XlH`6%M#pasiDB^F5!z<2Ohh4gDauREGFtTzxh z?l55K;lGUVSg^;E`$B0O0F^=g`e#03G^sc0CXxU$l56v!q??jn@7 z4eH6;0IF(6$1R)yA;Do-FM~wDPf^zje&C$GA446A*<~AlHX7#iw_6dSxN5M|Q2sLX z710V&*GS6xZM@Alq={7*b1|m_o|LV8;x}Y*y|8GR*&=D2TlG0TtOW5FNt#W(?ig6N z-r2}Uj)9qb(L>}LW^TTbZy5t=ar=!c#*%hc4T7Q@$L_=gF^*Sybd zsN9mveJ4Ul?74#vnh29}=NP_lB3Wp^ZZQUsIlD{E!5UFi`o-LH5@~4egT2xZ^6rzM zm*-JFXA<;k(4B9c1SHPL;H~0GWAh(>1)xa>_~>|2&%6Q$k2t`W#zPO=Zv1FGS!>&K z5#k3XqE*O&*CIZCGU*U^XpK;`(#{lZ5-yMr@y4Ksp{+B;Dw8PvREsD$=8F+IPCbB+ z)OWKuLlh~={)z-^t-fD?w4*(ofu1pgyMp507sSdrgz<$wzb1f2U!KJ`U70BTG6*7Z=rt#MaB%-12 zd!#jXTgFOT!;n18zD3 zHxF?QtXJd!O$SR!%kTCfV|iV`5xvaFF{;nW%67Roh^?4k_8+70RpRiIX1 zag_QVIoi2g=IF;%-fkKR(R2oAK=ZWbR2N{WCZdMf4JxbHX}X$koJJg|^(vk}jcBO* zb^dS~adcd_(kRvf5(kC?1cMd*1^bWF!A`cW^-LT((AWRar+UV3#FpXOwJbBdEO$YPGydwB0yQNg@swW^a)ze5W1Y8G*A zU~)P(D_gLV2l30GzKn1>GxUFdknNTWqOBadNvsf;K(}z24^0^5CjZKt&L&PiD!>5v zgtMl~1L1x$tUSa(x*-E5j=!++U331| zT-ew8b2c$cekju_vvFP?R&OIR&Qo#|TqS^kcN?2xVYy;ZZanM>-ryh8co<<{W=iW}W2ovixL?955246_Va9Hx*DUOK&cdE7LR|F&N#)0c9w{#kUCZ z#j3)qDWchtue6RtN!G=DSqiD^vkfGUHY8K(ERQ2oY9_`J-iU-Yyufd!fI9nO4_Tck zuqt&A#qH;V4k9wYCc1S~SqCY? zHjU(tm&GOqHV7_p;64cQMF+m85tA57s(a`^b@1+z&_Rpu0Kpd>n9AeGI`|Wqf`z8= zt*Ivw9jYQfpTC_CstCl6|3wu&kcF>R;ikjRUp%XpPjyuc6tXk&79qy0R7Hr~B&(u{ zu}M}%eYr_ig^k=KB(hnE5G8`|h#_mTD&7c5>19W%vLdtOCRvfQ zhQnR!4q1sAI#zugTBy7V2nq zM~q}7{4|QAbRk5S@a6{0UzTB@k%boshXu0mk`Ex>Ms~ITh0;_;S-)F#l!1uSsNqXO zgvgcGV!nMLard+|f{JZP5$@-N*VJ4U<6peK9)-%a_O>Ml2^ydJh>Djw{4P3c)1VyWy+;E zxin2KiRH3h87G%;LlPkG{3*suff61s^@1nxpiUDSQ7$jTR(VAaLdCnS%^SdGTn40p zx^zLLeBF4qK$F%?RO!+M!E#HNKlz%)#L30U2qCD~r3O^i224AQKd^4jL0o9FS(nJI5luHLKwL+h@#ooG+ukj2kA(=K;Q4hEAzNTVIdAC zb$7J74`6V@f|jBv4C-1?kiQhL2n7YZ4EHARYdX@@wrMJm2}Xu@TeXJzD^j^lCZxeH zGkHiRnNFWf;Q5)PQ}2}k21X5ccSUxx5#Nx(&;(|JbNpWUqKLA_Gr_c|6sL~RK@d=s zg8ea>&eRkOQ%ax5WAsGbY7!_%7?a3?`pc@y7C=?#U%QE&uF9^asr-9AtWFBNc`=|! z=0<9Cv*E6mz8~cDnVJgFytHJmNNKZ03Ai+<69823p#ZX^xi3X~rba^O5-dgOtj7S% zAyiJ~ZG9t?Bjd%ESfvbXaa0&d3-8!~h)1OI@k>ZhV85dRr|~jIw#Gv&h-A{GnUHtG zCU=^Vy=);JL6|m$KY;H2Tb?npD$8xBagaSiI>@M?UKU}Nu`$L137A>gD66O@yz?i> z6Vwf!&nGX1{oyG`c;-^#?6SPze-Sb;840Pw?=2;s{kxz3ikc!LPMMm0P^w1Fc4MPV z&GO1dnVJTm|1Z=e&EtKuU?(noIZw+Xlid5myD!x+T{8m9n2w}yyJfJ!mzmAmEhEEw z9i0oPj5AfGMdZ&$^q6yi=7C{pt1I|5$QcXZg_>LVghpAauaaeIWIpaC^HQLZmJlaQM#UHVoXu9KdmZ8Z8u&AcR4Edya7gx%jNIcnijt z-hAK#7-^#FF2>c#5g=$T&;J4LJ>)YuMJgP{JvPHJ|J>Q!CYuB~odAMy^7{u?=U)cd zJev>CCe3K{D8BJ`xU>3mHd#pz&EjFpVV`%>ES|iaEUi~C(@05-u(S10GzJE_B7G+J zUqN=z;^F+k3OEfoJ%bZYe8UdRsN_J1Y#kJh{o+K$0;mx0_!lEVA;{ObhDIxqA@0uL zQ#tW$Yy*%g?{bxQ(P*t|E*t?^zxoMwdp)OqHfTq{nh&nh;I8?wPo}(p6L0f^2qOD554YCp8Y+X>E#aL@4qJzZfAGk<_!VS;MMct7=h7vL?mU2 zeBf%*EHF0lD|v)MQ47#%e^=^VNTo4W%W+p0f^8x{y_yWBiwASf8Zy(i)?j0dlAG5j z@ZD?RRI=j`esK-)qgOror!_#~=s{e&mh`o)HR!95)_E%5y_N*kv!9B@;2vcD6c`Zv zXAcbjh3K*=yyiOMRqryi%5VurILtP_!2L9Z$E+h7t3_3CzEgP0I#Sy-4r=(JRm9mT zG!Kjp`lti8!B8NV6x8*jEBwMb;_P-N6t5|U*o3Ae)lnqYjZ7`{KtB;Mman+!dN@)Y zIDq$BPnxuxwiOYet~FQSrec)%LIVJM7zMro5!V=ur*BU1Dq@I1eJ_FUTTkk{-v@s2 zy}sZzB3vhS03({Q4waTO9yrAJhMU=>cBq#Kd;8YWqT!qIyv+tU*A48So4A3rBn@AK zS;?b+xLAGk5~Bje=nn?);*H>V_gwg%Rn))Mdu%jb(w*Cn`)?v@t7JeF6e7=|3yA`6RG2(9w2i86ZymiaKRmK-`<2z!-PoAE<9%w382UO@)w&(gRXUg za0CMX$9K#sLr&fVKI8}DU{g53 zXs9CAoG;~RKad8h#uJfyW2{k6#8@+mF6kq}j6>A7=86#2LGeZce3eHex&eK7-_2x( z!{8y9fX%WI_eS=DIHL6JCa>pDHp4M&$DzFKk8u0w?;$+(N76Pq1@>BCb8_@l_+mzj zQ)rg)P!p~DO{;sQ&FBr2e+HNjiWHt3Q0p1lnw9Vj1JIRFAEr9ELsKrWz|??GXjlXd z;Vs^U>pq9UK5<+)c-<0j41{1Mx+Dv2@WX`0DtADejCF8R@PgE*HxQkA(jVFqpKEoQ z0*6*dv>Blms($C-j&7#r7Pxm*#(s?i&wK?CA&uyT=S>iivNa`8iTwl+C@=VYLI;&Q z9O?8c3{}}GqBG)c;6Epo4Z)(yCej9;$y%GJjLA0Iv!PC~T2R1wlW>RB;~vmI@pL3! zUMiA)KL6PeD&9dCN3;yZA2J{an%3=5^4dfr*{jcnGL@)~*%<#b|Fs&0s5P?(E z1WJ!GcohK*0F2Z~j_FZBjtA}<#*3F}L1}q{u0Ws*wesKS;s>`7&*a`R5nYW$;AcnT z6VIbWg=B*vqXT{t?7_$-kFUsZ624;8KqW1Mj|f^qke0YgTK4>JT8NVG*+Lp7?*zjJ zSyU$@?thUn<7{V%e~}efMb_qV|Dm+l|0S*X)BmTmc0yd$>I({S z;M8OrprM**Kr;J{Cix(tjc_TxbUPTZsZ2zKESm@DMgJ+2o6_}D{~8};_b=PE!|}yi zD*A$wFGOVE&nmzEuS9$^a;%WV|3yTr|C@*@c}N7L*=Q@lvdgQ|-~b&X8o#%k)Psna zB{D>>kuZNit;#k{19w|QjPy4?1K=s&EsBh;I{Zc(L;#o&-(P}R28!4ZB`b$dnYqYd zxOg}ggTB69zw?k1V#r3Y8yIqmlc9@b^OJE$EmISZ$w2W$ocuD5h>~%=Dv6cW%Q%tQ zh{Uj5Y_#tfW}NqAfVIE|A|3;H4C;l*6ecDJi`4?Xr$HqBpB5Fpoooc|So)}Yn|1>Uk|VVx*!HB*e1puw49!5v6==0RovEx1ooRu9s>_yWuW zzaIqB5>v-jF$O?LWXF2Nl}%JvheQ%O#+Vq zMTw@uTnhXE(>JR#9kxaYw2J3s1gc{Cn|1$->83+b*$`sBVj3puV(Giv|6;oKzu5Hr z(YWlAx%?jd07n#DCacpb-9lz_j>nav8I;tQKypfP&EV^!LI;4n00w#ErO z0VkLD?I2;xtbt;3J4uPB1B9J3W?2SzZ_1(ep zE{wrQfn2*2YQ=zZv7oY;gnSj<7W5enWWn9aqlF_zyM$GR9FGK<#+8%(5c9eU?Yxu1 zd?2}gfK#}zFi@9*8x9b^h!O(0SQfx^m;|;da%xnXn1En-k(+0vC2Qi1t#Q~oMigL!03`$E zI4I+Lg-KBvJH*TRk@|3X$srmxi*ypcVxbW%0$TKV?1;*Zf*su0C?Fukh;@T##B3Pk zum}tKj+HtgzzJ?zMdHy(m8KpIlr_}?YEc$=Zh=oNJoDoKgS0kGY-jaO6K!Cluv|;i z#2De?;28$+W8fL7dxvgPeX%CHiBfFMw1XSuV1W;`#~&%RCb!Yr`Ltc|0@cG@;?V?o ziUB_igJlnxSTW%HLS^{?w4BrqAZ6II=Fxe?BhV7O2fln+w-Q=fhFU=^(6v;7fxc1; zV&#SlTcIQ#e2BOu=YSpI_L7_e$pcEQjVNLP#g}bo*u9kQi4|^zF%iT08KvZ8e0sn$ zG!OU#n$@LCWJf|EX@9QR+(?tBbYN^NPOSP&3n5KuML6$}4{s}W1h=U)(juu_N7$pt zn94KriHl}BtYACKD_Fn_=`0Q=-l1xxHNXeMG66N897^0!s011{9hwP7qo`IB$K3cqLndr+y{sY_uV?Ucg#v zV(e9j>Pyj5>l!OiePV2vpL576n0q_Z_e&{cYimr-=L zjKX$`g*xQL+xWz7;;OG7P;n@qsd2)Nmkt=EjU_Y;e4_%*CAXbREcd60K!l_;0ST`C_yAbM0Zf+AZeto6h3JO1@J_kcm!VRNCgl2Z=6U- zPyyJ)7fvdWSzyEhn(%1@&&rQ9s_*J$vq2zf#eO3rSVBf_Rc9or;}=HEfRj3ROnIK0 zvX#9Ll4i7k`W*x-E8LaN^|Cbz>@RqM*YpK1NMGp~QGgvTzT+rqlH3ja?7#710llRR z;Zl`axn<- zW@M$jooviF78)~-Wi)2Q3H`wwdfTmS#gm^U)kADyqt+yacs z(HfsILPgWmN(VqiqAc9I~YE9 zUWh2SqG;Gt$cBs}h1VSL_O}-P7pjQ~&9jk3`9a)9fUqO+JwlH7It29BRu|%IxE5Y% z9bg=;H~3#?iGOleAu9P>n11jXAAw&BN7ymKEC3Vq%GMO3USy-kF+rk8T-kULSgMg# zjjF&Zs&4MCPE~Ams_GnRS49@?8tT>F$#8^n#$d{yA18j?YN3f$@|eo62+2bF&;z~@ zs(|6EM>`=aKh(v4%BmVsiFipskD{{wil{NwiK=K@MH5Chy6RUUtJc?r;mESu9{7LC z3g65HIq{g2#3M4jTHij0SMx4h)NsSm!z=#u>3 zgb$M|FsS|{ybJlU9U4;X|A)fhDhf+?R5y>L>YBJ5 zgqkp(nQR2-z+0GAZx@GU_=i@`UXXT(01SS+3G4&kV1%U+)`_E&_Oo#_(TDHOcAE3STFtBVqx`6Eg-06zNtS1S*egm|jcvj*Q%3I+X zrIYhctdB!~f%-j0xG|y}risHwk;Xz}p0P2Bzz#n`X9+BF5*nrZlBs4Hu@xFS6ya0s zULy%c)bOzwpvwrEf)M(4DGN{(MlA;KK`p{&)@ZC%g~=(H?7T4|s8n+lKZFsEQh$4O z^(?Bc9?L*kJ+S3IVkG#(m%|_%zPE@3CLe^)Z&fAG@Lg7Ia3`Atu^`4Y0^h8u4KEsN zQ#)CFeM}^`!ZFbWxR+!+CK7d(2}pEn99dpBlx{R07s-pEpQDgx7%R{uIYhM_a^T9m zeJ`{Kze|F_rNd%*Qn|{(Wzsqn4h5xlmLYA7G6pPt>u@dFw z=RgR_@Wo$n1d;6j*M(9+?pF&Xzph3y#X{*S+{LRr!oou*ysKr6-w>X63Qwg%hlUOb z9UMAn=#YUYtNvJw_*ejJx+Q2l`f2%&^Td`;>cx+pC+@UXS6*_S1X|jN{hZ2fP-zRpmW>w^ zF*xbJ&e=m?9BEP~*rJxt*#KXTPHqGq#*-%znbXJL>z?7~?y?a6jeAgak zX;d{x@@g}F^dj+h=+MJ>vL{>=?lGM=sLQn6^#Au0{hc!-b`04M4O^^}fZ zLQ;EC6ALw2{AjjGd$=@#_#(D+#zD`NwLpn_ON&kma}jSfXF^kp!m>Jo)teFKidR~d zPhnXNQN99YT#m#cr<-`$W#U`=EX?;)iZAQuk{7^_t+I0nDYglb7tU?Wx9b|?UhlPYba{3}3} z#^D!S-Y$YqV}3S>>0kkdzbO4&?pFcrm5hbG2w>l?(ofxmRS8>;gb)NYm99R`C7%~Oj2r#?0Z884FFx97z-A&Zz+ z3@;z;Y0sAw!|RNm*a(7*lfG#W?>DyOHLt?!E_K`U7dN0_xJhbQrNZ2RARf}yc6`EB z;#2E&FA;^JZKN5n4CPC1!3)$yKK$ub(!p{etQBB24l^e&e`p>^!uZ&0@DZ0ko8Zfj zz3BH%c-(EcczwTtsX4FtT-kzj=A(as?+(0g%yWMs?YjMgaRc&mX?J5Y#hLUxkOB#5 zZYX_c43R6pu6`)07r>-}DP@9PxdFcUqm#=ZFy8T3c#UqO2xWa^KsfP|G)bh8V#}&q zl9UfGC&4D3hgQD?r!Q%nTn>RU&PdWKxf}=OTUgEzWtIZJp$g{^X_{QML9TK_y^WBo z3PqJ>NdVTx$aN($SS(hx6IDRee306O37Q)qBECgXQ;x?SgsXb>cwm_|5CY zQ|%${%VAc2FbH)6hOn~>8bV_q+ekEn3b;B8tMHR>1rI*eGXYnxp?UUVV70l3bwyIc zKz!k~8BZ!Eb|zb;629#QM8dupv-I$;_gen^28p6E0bmuadHhXcZnbxsYzQHec>r2Z zOMW|EX|F`%fluw+gx=l)B05Ey&h2iIrdF$>Wkd0o-1qXXw@3#vk?U@e5Ym)i#K&`P zeVgB@PHJESLB%Lm;d-AOdx0T24gi+{R9y4Bq2Wu^$p zC0gCuB;NNf32K}N(j?6bwL0n`)Sd&JHD<$f?FeeOyC zfDAG4%)&gvm)(O;`RpOQ@E&Q~Y!9?(bxSc1IkOP+79csaM4KUS!cPf)$`K{B9DXh$ zxlQkbkf=>a?!*V=wTZ>R>7Y94$7Z=>e@ckcgxK3H`TZv(*6OSt3`KbLrCB`mDSRS9 zm&g}BB`xhkt6FZ(MPsUTWp4flv8lZv4I-oZ&&KA8z}cFRx$u`M9wzW6e~=(|NBk2s zDAVu?VL_cY!wrbak4b(U&C~vXn@{;0`GG%3PV3&y!ImIgrB)bJY0p6RNNO9b3_ht^ za$A@xSYgv25QnF1x#gqyItiq^aRa|3!S|XT{=hqw!ez=+KkxyiBt%tj69OA^e(OEG6@kYqmn}2RHc2zlK2ZqD~nMZS5e$CMVW56y-xiQDi6^3ix&ifOmSq z|J62=fkB;X4SeXWDLnA&`jRJs>?>m+_?o&kHf1hP6zb=F8nI1d1+jCOSX7+mF^sd-nubwuX$2=#2rjOP@ye@f9!gH@ZhtEpU z?RwtzC0XO7UI5UzN-l&^Fh|6F9jU{%T*FInQ^%vJqFKDx2e)tmMryneFy$&~2fn-< zK0(>AJwICxUvJd6;FJF%x9RtTa-&|6U_#%f@{HGT5$dofKlz%31kCe<2|ZG`HU$Wa z%vgXA%%|WldqFsB=~4BOmayg4hk@mtc6xU7za-mt;u?`+i8sde}I=pCyZfTs)>IE0lC$$)lAUEi2jAX7<5erTSP z%#>Xp5F;cO&DC%ZCratW6FODlq=pGS;=sTEOx#;A7{qv9 zgsWRPl7$K(Sh+Y}v_lBV)W{Vc!_-&<&LJWmkmev$*FA#s8Z?Y9OU}JtgSH|y z2GquZH!ESmP?HX%H#YL5nzVzRwel-UYC-$Cn$*qY1*BZhYEr+3KbWHJ!i9|JhX0SR z?||?5`2Ux?cL+ife6l1F8N?1^3t5OAdlRGfUbPdmh^X0@U0T#CLHU>!RV`I}MJZ8Q zAA76)`9EKG?@uKC{vQ869-7a+?zQf9ue*EQc;DGd7G`lxF%QVFr6jR5T$0Bw`%5fE zxr$gZHkPKlicw8H5azQT8$&d8ZLsU(AS%6dYkzYg03d@!tiQkA3ob3K|)7ZOt{ zoN#4!KljB4B8eZsY3hT%ikq$F7-msbvv^rsvnW8T3yE^#&?wqgSS*zfQ2ULGh%lKq zUtStrL{t>(me9r`qNMMHd}b4$6T;u=+OCa;_v38!fm(F0h$ti4jU+D%JfTtob+(9L z5m|vITZFgwJJbQbmp4C1$7Tq|H@oF;J8cJ+>+Af?^$E(9uNq}qgs*s2mEK!KXtAkW zcRW?G94-e{VGqn62j^0~fMr=_it-eV+7tqk>J`E<9^)P=N0R5NHfJ1yL8c&V%I z{TAC*ltqy}fj`(zI#TL1?di32!&CUWf9rtq=Wn*f`6#cKs8W9h>I_lbFz$Gi86tT` zg&~m>s@u5$48@xvcFRE|Ie>mRVLO z!rYO#g+$YogUP_kvLP1&w=1D`|JSl9A1J>!EW0W%TNXW}B`tz#dc(3SBB-sm2n{O5 zUZE`8rwm&b*mg^e zTzROguc#mT8dsC^!H1dPhAF^1-UUgu_*T^h4CJz0Y){91(GrSOpjW=4W6>r|V%9Gj z3)&utm}+?y8cB9B(C-&<26SAgH={QJ}PCeDQHl=@{16Ow~ zJ|?3y)%2tzliLEWWkV@cnN%|HPu++mRaQI?2 zHRI%-%hu?_2RqD|Wn6Aw5cq^i(6|d+4xqImqI|X4k5suADJS}5-~5kFbFgnA3VivKm8N6C1%7(~aZk7;`; zQ6*$OLOr&GYF1aeDV;3cOKPsFRV`{rczLr31(X(f%GTu^1ggb`nA$6p7X5jMwQLQ_ zM%Gl3jTLo@(eI_jXKuAH|6@U_EI-Dxrf!f9JH+)MT3udj6#*Ts2^A2K3S$Djt%$+2SRE=>N$hjK)n1Wd1Avt}7(jO`A$+aS z)>^l+s3V2_4kc9;b;aD#lwMUd6OU?>do>XvT!^Yx6F-RI9q2(d(Zg-7k5+gn4}WWF zQJ3l>Kpf7biPgmn@4Z;^MUPTk%Q)|?tuo>g4UH0mX;uw^=)Jl1#~PxL5!S?Fo(J=W zyXP9^e77bz?p0I2dWU(tA%l-`r908_b!!Z{>VXM7FukD;_O70g%Hi+`Rxt|qP{2;L=Resc;PaEs?~Sg z*71}T|58j_u}p+Nw_a~6_Bn|c2WeS*5uVTYpz4DxKfR#~?L~0H^kDc02Baq}QXgDQ zQ(b=??)OHQafaJzf|^kZTnipO`7{q*4Af{3!H-kn*agL&%Ry?;0nKm90UFprRP?Od z1LcWNZ5%6pyrtW^KzzU0x-*HHfU%=YezWD8sJ+^76~#VD77`8W#sY6H#eEBXoPMbG<+ zDDP66&3f3wMJeh7-^D=Lvn4g|Cqg@vg+NtH?UgI8Lz0Wl-{jdXUpg|+pv@sBGcywu z>TpM98mixJk$mSDD32-BHs90nexhh-lu44Pe4sQ^O;UP=L^Vvgz_{LQx9RyQZ-0?4 z-ff~2{YAx~>JEK%$%`YYW&~&($`me}DPVvI6kRt{)Bw>))Z9dK28ilGLvgj3Dv3tx zfMgE3s7>?_(|xsxTn2(}_(r-qUIf$U1BE4M1MVZwMm!(M9K>Tb($;|>KDE($W}rAA z+{68p--RgGw@kT3D~5=6Vyut#X1kB>3FCPK!s1I$~)N>&21cUng;F6`dL_>Uboein$NrGNR^- zUnKv}MP$83s~m2Vcu`lwP-Ux1Uz^1m3j5m*+}8dw;i|@&hlXzJ^P2{axJqAtE@Gr~ z$wRk47d2c?zs-$meY1o@$B2HiH~RGXV-VENT~24lAQU96V_I@*I`949OgoIe9s)8;8ogyqta=2T$0!j0%s32i;wkgYF!XIq3E-qe0_A z=eC@_91pttxQ>wNisz)u_g}iFOR35P&^1_QZ8rf6QEnN>bx~h)*@9ov)k#>saXLYH zlZ0Qu=XH2G^+a#!X{WdK1dJCnl8#esl4vVF|BaR>!B0*dv%W|Y8A8PWN~fk^+E)K7 zx_ML-ruC^aoWjk^KLdm6aLEj4x(@xvPAGl-0(^E>=TEyi4s}#qkqUf z72{XJ-&8(TTy}lTZ-*$-hkujDT#V}ODO7&0NOmuXDG7>fj_Q4n(vNdRxR~^op3D`G z-T&lyK=ht)Eu!1c^!Q7$(fPt_7QZ@0#94376UCfF=f@-#z}4GKrRW8sq1dsP<{(|= z>J*4YnGBfg<^;(@PP2lTvJPlWJSvlKNWohLhheSQsYJ3KSQSOm{bqCj#YrnGir?f(vg|0 zqK27fW-iqdhdVM8RgWwuYf8N&-DV0MUnGjUN0}t;RT)Z8p%;rpAJH$Fx-1suf;MTr z@C~%eUWlaGAT(fHGHqE5$3BxxrxuH7u`7u@zCwezpJXbn(JmmFgKmEk4fqOl9?90! zuS6Fow|!|^xz}9V&e!M-iSpv+b}F?54Wbn2={ppRow^by4$gvYOg{AYPy>iuM(}qgI#oQ z6#|A*_pJ5477YyXWE{=?R@9Kw^M0h?z7_Su9$-Nh!Orwj9DdFUR+@m9Z4oPG_*@>lF~rmT8*^}RondsD{**> z0;e&~um~-&Bf~kV(P|<2DKiu)glJvO;%N$(K}>-&qZ^de{_62-65q*`8oOZ7L1m>@q;=ylWI%$VSeDxRTbTlRcQn>HYF-FBW%ZxCJ;2lrPJ zl$Nc#1SrV;tive^J{KWfy^lY=Jk(9TeiL5JXha;J;I*1WSvQ8PwVndAbv|amCwcrq7!i(pAM^C;-&+yq= zYPc0W!dQ6KjallNYs(p&)D5OxPqL?pULH4lmC7_9b{2&^-TQ8{+mDDBLyP7P!Fa`x&uqNyh;ZANN%}7fz z7;;cE__Bu;qN+QI#fRvwRn#icz6VQMyo(l8Aj1=>P$cEf&PU!J^~9DKy3x~)6+dDX}Lu5*ej;VLmhL|AG<^qI=NS@ z5zD@$q5DM1d`GXMKOU9>;$7f^*lyt1fPx^_WdE!&?u`}kt?OCUNR=RLdln)x-o=c;< z&p_2N^##OjH`X?>mu$B*YEL0QLYsT-Xu^-8gj>r+S{Y^6rn_kSk66$d*-=%@SBFFk zQMnzpI)t^ZrmZP&x;X5;ppBkD4~6z@5iMk78~Q6T-X}lB0wpu{@E>eTjwzE zJtQ55v|E1W6mOkq%i1lQThsW%qMZL)MaA@uKA}XZ&T?{VI(iuO_g!oH_b`UPBCVKMQ65%yk;Qi|?;ISrHdrWB+rA%QP*ZD*Cm{ry6ZeCkOot>Lb zPkw@x`Y*J`9}y#kXg`g9JSvKdF0D9L-RvHIRC#N0?XAA^XvHrW$*25eeejF8?j-g# zrQeTSWtdP=VO$P~*mMKhd}=@5eZpppEPxv(CcI4#P1 z-7;f9W@&r%Eywde;QAVBu~T>o&xRCsMobZ#Vrk16v0lW)QR}l9<$vF%wRcfRKP@ZA z(VDXu8P^0ITI2sOqqFpS}ISl*VW6T0GW4k3E)KTT<_r!4JJ#v|r*F5YN zf31^4#kmgLG{rfODJNWwVNV^IQL4q?Ly{S#D-AC=GShK~4;X)DipfwqSRJ|UFqN&; zAvFb<6M_?NK>fyK#OKNIz%Wu6OWdI>zFYbd!yF6oR=RtGDMtchb3khX>bT+{EPpOK zdtO-b^=_=&Se>c#eO(l5IeRr37e!cT ze74%qCaeR9>gyan(F19 zMgM?Yijq6C!I8Q79;PR%c2sR#i=_S;qDsv7$bm1Q<7Ag*+^HJkD9JP=nT+%8mad#) zPj&$6Mbga-Oiz|alDr~H2NYA(%qO+>e`UU_O^vUJ>M_TWlT+r`8sd<-8p%&0#&OE* ztd$boYtzvykZG-Ly>ms>a`K3&Ma=?K3kLP6m}NVF_)$iV1wsV6t5m z@%{(Kf0AMQvauQs5l=y`W&U_-dQI#Vr^Z=b{=^{|QDFexxQ<@9c1;pDL}q~RBDfMO zs5*z=H>-ZqTvp9J=BrH9-qz14AyafPj%@f~E|NdX1g*!2N)A<3QAURA+Vs9HBHg|) z!)E0p7|vC1ye~rcsJm{9P96~zb5K{o{o#L$$>MDVTKl&M61%I@vA@yHxB8Xd{f)`d z{#1(nM^p`(T0_srI`iO&@wl(8;yR^sX({_ z+Isn}@N{y^gCLrXr?`t*ntM=rE4WX?jzAcF^8j7xq(#6&$3GN0piY{1qsI?KjPD5a zcWQ!b>6cAOyQNbpYWxt3)djw!VGl7;`aP5_rQ;ENng!RLUBa~864jH9FQv8cRz1#V zrD*R%^qB5pbp4^IROZ5bEu9}B$a#4TN95`whP~5xdEyq%Dn1fzM6da@;E|}4G)Kv0 z*8rYv(n7Oeb5Wh1-J!xzR0KjkB-s!%Rqt5{B~wntc0n^NX(j`eg71-J+|}qZ?3RBV znQ5x4yS#tmM*$gPx7>j-%$BPG*F!1%i3m*k85#Ez znGaX5t=uThN7Xf-`Qv|bGba@*NVXXj#*ts48) zTT!yc&F0x)?J-ru5@wWEspF9x@nI%Y)d!5@!ye5j@h#%Rj?HP$TTHyRH??}a6Z^4* z(}Yfa;3b@*^!kI?>h77UnqYBggrX;Oq}?CI&!SQ*nqWuhO0%q&?c$PjcblouYH75* zZRntsB)q3nTSIG|R!eYFJ`1lsZ(=0Y8_+3_q^9+@h_Jx!9en#A`y6k%7Ir&LiS z=_bisI^-gkh)@f4$SX^Tli$+hyt1Px-k<)=D?>!BpGoGEb;Q+pip?jxxwcfMWey4b zXlp*X+I6d{0EVpXYweg{#yjQPv{N%Llw#fDD#tmAw(b;GP*xWYR#A_FvYV*&867DI z?rku`D=6c|{aC8(CRfY7xpUJcH(5d6aL!FG?y`o*&LOZ8I;wf9bG5|9P)m0iEb;rs^JAL(~a(86@on-uHHw zK6!6-=Psu}uH2MaSX!v0hwN6pw_!FF9d(sNk{R*`bau;FXQZ%GpALq}WBA#p16s=j z?4x@?%jNx*mX?lA|JBl4V7fUx5UiSlect}rrSy*l5O|y&0(1cJ; z+XSDQRT?BghXa9TXceU+YanpIRo0}}(9tH;GY7OixY~=z0U>|o%27p)k;KxWCu^mx zGz`U^Yk^5C;76dR?2~j`;+JJC#UIZM{c{ec2~rFUVd4rGgS7RI5DRM$sdmld29Mlo0C zCaBOkQ*Q9Kl=`#qd@%Cr}261+QsKpnM`;Kc`j2Wo?fsa8d3b&VVfxZB?4?7nd;+ zpFigc%mid{Y371%7N_H1C~I1tnZZc{A{W~_T-AWevTP5h?m@D+m=aFYf@ED$ybB!- zk~Li(qQk?53XdpHu$(UXcBZ+(vaa+T=*ggy(E<$}I(D9#46TT+lTV+aix{sf2GFxnh@Ldhj$ zAiWBe?&8PC8KXN9I60#_bDJi|<);`K1KNZOw@<#&jDR6nhR_cJ~P?WW`%D+9L z3ngWVh)sdow-UJeUh>?Pdn0y3_LW52l*IrcB#40z;!bS%dD;*tCOg4AQ zm$^`*q=nNjrDOxKGr;OrnltJw&=~<0sBal$c=%hlm*I>R^K{0Xa+I$eGKLhjwkju^ zI*E}*>6`L0Obowg{k^7OlgbX^Lliq`biZQ2ka{}o;8(3&c; ztT>%Sr>n>)x06M)A!kNv7)fTiL~SVi_6N1DEvx&q*GRbb2S}V9rI1Tqp>?(43VE*3>DscPh>IiN zNLkUZdqI{E`)3Y&rL#3kR;NCZa+q+vOn*d5KbKb#j2U>IK1Rw|vAjCP){!NPZMu|0 zr`XHcby}Q3v+BrNc>;li21Pd_rI$-S#V6t%^C?QsbN#Q_W}uLB(oOw`l2A^ZHrV zSO-A~YA|1M4wa2Su|OP0id+HQU)U|vz=2bGqBHm+r7<6$3v@ABR!9mzZubZ3wU0=m_n8}EjQZS823Tu7rmbpga2}eYJ%IWUI76^dwv84mzah@K= zNN-WCIOU1Ow4mF0st_wJ-qj(RR|JzFny~}1GKeM5^VAtwZXMyI3{7TD28Gl7SoATe z7ioK}oF`(>QEZ%?DE!V^e~Lq3;N9c2;x+9j>|1`~6?d8nHIRRbE~n^e1E3W?MP=gU zmq9&Fn$}#cno%s0YJf+JSAfzd=~}#;C#xgK8`4nXOpKlOH=QJnkt`oH?u4T{ zpdB7JLDC#NSY50Ro}g=uF#fDQK_45*;yxFDbNOy9{ z;zHXdsi8CM);Y~&eQfjp zLKm82Fv$Bh8~%%6%9kK3ixY3CZUU;c>1*ncAj^x%Z)jG6^b7cRAO~|#94CF!x&Cee z#zUa}UpkV2IoqSx6w*R|CaV2wO=%&|3$gnpCAOBu{ZgQ3mS!LEfNxf!cr2}KE$@r> z=`_2IOcLi0S@XA*yM$ZqqTsFHnh3PH9i`Ll&w2czgvEF@lblOfcwt6U-S_|l!Ova_h+P4&9T7DfNr1>cFD`nwS~ zt5-;rxfRJvDHpM~)=h?rUv^VQH#y5a_^!4E@7~!hRd&;`L>cPgx!ZI-4gPl*eU~W1 zLRS6&u=+Cg2;8P&%1Jy~#UQp{x@y}aexT=x(Bt4aYSA6_=iQoSbe9P(%^(Il=zHjT zclpkx7Oug^>%~^O*+b41EB~coJ*B_s{V&byDNl&WudH2qVU8{CY@_db%TlFUbC}>* zlAoYnf$reLpse+H7H(Tyklyr`QK7ZAu}Zq@j8YM7ML^8;_%TXN_ifa*k8JI+W2>pX z#yhgrdZdqxbn@=}y>97A2xGZ$I=jyIe_Vr!;u43wawZ{C;Q84B4H!t z9w4WQ(%Wzn6v3CVjW!LC54=5L7!EMQ;1;Z%He0T()~y5O7AN;jW|*Od)5VyU^&gDT zz2jAD+F+PZ6#Ii74?#>2y3y)0RFad+gKyvCDuWW=(w8c+I8t5|r8iRRQCQ8{SB(~pLc1yQk?xI>W5tzr^x0_K zl-uB1wx%5OfewsD2j1fw>$TAkD~hkAQDZRY+U&yKGA*Ppx(STH1JBb>V`TlH6)PNb zuGtu8xR|YB=tJ z6b9fk;GSz_7z@f!f}Ww=jui+E@m@~G7 z9R*F0^&%~7NPG*2?rCI>?#Vz#lN4NyF)bt+BBSxFd6r>y`QI+3wG-rM_x``@f@|o6 zrBr$%I<79NhM=Yf;~+!gL>V4(jUX>)$90xLTp%u+-Liw|hlz4Ro?ZZBV4-niFi5ta zBt1PI@fy)5=h=3Wk|rUbyYm$zazJP#4c0BqkkncKGMYFzoHRI@Sxd?P4%@0RfaaIG^biP`D{pdyuaKS9?%lGgEue2M1-cMGY5oO)=V0Gryub$?%{PY#9jG zuD=VZEDypvi4G5{2U>WL|0l?R#k4S4mKI+urbEf{3-QYiil2-zq<92PoGeTGtwaEX zO@t*mW^o%(d$tqL>BwYR#w~?EPJ#plbb3Y~Cd=|Zc@mMsR*b z!hktXY4{Xb&u=1P9ZVKc@NAPsUfrN9FT70SIjWSWJ61D{wIOqC6s{2Jq}IShp`MmA}RZs`+xISq6je#}O9`Vm!_F5~^a zKgwiYImwhl?;g|nDInW_Fq@VYAJIu@?o;$vCR+>#gtSk#nDCh5rpO@IdWwdP@#8~l z)C^fmiYv2e;w*`;)@IYzS+cR`W`{OBlgqtTz}}X+=g4ig^z-iU1&g#?;(}rU;@tNt zwydXG`uK%w#?&oS4FzVY>|w_2W5C1+<-SV zXUnCYPtTads$MI*a+P%6jRV>60~p3(W4l216K?vpWfisTLg7_7 z60~$+0Z{+uW}bO{pxrb}blvoTX6j136dL7bOr zxt<-rgT}{IJt)o38b8{^kJR|Pv*VZ2_z4Ps5#tw5wRo5W1vJ4|r^zK%mT7h|dm(?{ zByvSn!lMzE(fhOMy9?kHoC9X@K3aVJ<67Ni$bzB6RG#xRnw%>8d6v%3)4~|37S97; z&6RyTzt7Hh$wrm6bU#g;iz&m!S=8@KIa7?kN6){MHQoD6);d&I6E~kEikyd)kTI$F z7(?Hsk&N~bpYlh&$_VIj*IdAK3Y;%%_+5pH=+Uq%XSe*y>hhMqN^PG;qvp%NB7Ocs zP|*Z85#e$*Z`JKpnMoVx%Tnb^!x2%-DNRD~Jkk|4TcPdj`FWE*%~n<_$m2<5pD%m* z*Mx|aU+!K*zjj};F8CY_;~jsi>voHh7GNPQ?F;&Gfs7DS(&)tk>;>gIM!pLX<^1t0 z#VwTE#dlNa--QUR6Sh&nBIIBHh2r?{fnTWqBDu|NDlCB;>R@HW;ir-*Y%zjfYce%h z%#**Fv~V%DvFaYB$BX3}vG!-{g0EzhljwhhE|A1wub-^Tm&iCLmxJRuma>kgJ4o3cS|-2tUp|dj95R}w{K{cl6pCSceFyy2<@z{RGNx&ek6?}_&fVzJz4~k#*Q{ZZ86-W13udJ3;oy2E* ztsdXVUQ&1sqtDmLvSlYS zw4r(U<+dA6=|K5nFdh0%R*z|;P*B=E%%7WE84YnDmPL}uINxr`%_)7JMFSoVq8b}8 zua6x}oi@l|w|9uO7(I|Hb=V0?-5`q=TRX_1$87w{p~qwZXx;{Ffc*(JG0hcbc6CBE z#Gy_JBtNN>i&NRvxigUJZj^x~Bav~J-`22O{u<~IJ`=yp;D#&Ac5IY&#ztv4`R*Iw zoQtoDht9n39*)1cMvk&uY7U{bn`DGf2$vf7(k=nRQ5Jmhz7PYn-QwJvo^FzbUFNCO zU!RfdW?9WYFPP~G*S7vy+Ua`vr@u9Ev)nDjj6USO6|?@ACur?>M0C$bH$q@v~HWM?vVG` zNaF~&?lOA39Wn9eJGHSj<#&=kWx>2&?)fWKuL8g+q z@Kl2BwF_p2Y;8?@#gVxI6B65r!RY)rlh-e82OX(2ZW@PNKG2gL(kFT$zz8{4^R+s9 z(!w8L;Pn`Ybxc|`EUQz=dBp8I&{$hp=6lKZhedtg4z-Y-j3 zm@@~saKtm{4sqOckeSTT$@*qe9RyBwKE0Z5?3X`?rK@Q10fg-ryK`N=2HO#<=*R&% zMmVja$b+(|YeZJgUn{BCK{>%I30!ERn#`tlcS=bSwxi^e1>JSfKAqej-M8sc#5 zYDjYFw0C)Miapi=c-@A|r( zt2u^qv08W)hirMWVKQ)9kB@E5NeB@plw`WDfRmq6R8zTXxY!ObU|WpK9}%cTOR`?hjG4BC@5Y6+q&Usx_DHEdiMa7ZT$gVB&(rq z9hX3bevyg(e>8WLIUT=pu(LL2TUU+wLZM_ga~BP9n7J#Gjsn^()j5^j%*C2ho?j6$ zj6%j;Pq?t%;;R^NER^0Xr=@eXr)Iy(7kLEW(YTpn*g0tldeqdRZl^qZ_wdmu`I*fGA=fsk~xFcsNkjN!bBXYk@e{bS=`B^Wkbfv@{OJiDfp!9DSl}|Gf&FmUi(wE z!PItb?-AO8ze%O^lUSbVkxCCv%JZdC6U<&G%kL|z4i9|`%xC*?m?kT@fNZDW_ebZG z&uRGmfcez(G}5K#)1uR0S8y(+pO(7{x4ZVAc96S1%{+s4kcN`x>~q!wlEWvaD-;wb zk=sGZ0rc+~85|n}D7S-am>Yg7YlwzU{{>KU9>AmiCxmx#4*T_sqb_H0pz&lJO+G8V zM6Wnnc2<`3oT@M&jtQ}ai=@MIT@$mYPsP&fvsm-37)So+Kz%Hhs-D9V<=t4*_PS2~ zh^2w&u;TxV0<*70#L|LuGT56Kf)OJ>FB7VGf^$p7(#dnOxJTQZY#PLpo!L~*VzVZO zLeGPZVX|?}!DdwqC7zd|o`+&`Xp@Fy^d3XCLe~{4kA>!op#$f!xH~+CuAN87;Sxiy zK%6hd*H)M}_qN8o)TiyzSkqgVcsuC<;rD)ev z<8Iyo+K1*(r9 z(y7bn3cA&y$CpvxuOi7M12*zf7!aWA+ocZG$&eu)!U5K-3)i6$8Q82GS)cyMfTjCR zp|=@WM%niTO}iqedWD+HD1jXJ&g`x2vgZp5_ycwr@&z^Lza_q)Wd8f-4BF0r7tNr* z_;2GGRQM|XiW%0ptFnkwsfd{Ww%v1+wB3`Le`qhwf7c|Md`(U(^+oi5(L+siK2=~F z(^I2+PonaF%88}cd_qsdWC9~%gQ=Q(IC@swxgHvQ*)+QFC$#D?jhwHeXGoet&2h+2 z)R{ub*HOzYr_z?|=oto_{7>!rR-=(OP`f`@{cr8=10+Z7E>$SpRJnF*b*5W4WJ&Lq zfO5}pT7_4R5i+7G1!c-|Ngt{>s`M6qne22^{{w)iWV>{mzR+|Gjx=ofr@wcsDdg-+ zb|_Zaho+et;^;eOA^B-&>dC2s*~g|vRp?qK@9|fmkD0QXtCu2Ycbkqo0dLBnqIV;p zEeDovYCAzsJQyK4f+pRB|E*yJmZAM`K?MD9Q`YhrxiMM31XW!o0^1A7~gx<9K7W_4$H(k0VE7VRZhr#a1{r#x)_t{xJZY6Tr zf4!?;w6t_F-A75efGnUlokY>MB~F58C!4GDYW1QoZli6z%Am+V!<*7?^D^-;sDp`A zB;#Z)6PKmyw|SX(bT(aaixo@om`JIA%POArdu7Xu)Oq)MP{!You!|vjsK>S#m zdsljS-zmwAES)h!WNWlB!D)30gxRq|B**-zrw5^^_T^}LLsyTyNKb8&MuC>yc zX`I<|nsv)#*~!V%d3ZKWUe{MzIt?fPr!u%~=if2OYmyS>9zS)Ae%uT?oWa77?b&IC z*Z?yV*6!Q-rg7Iim4z#g$zJfr%o0~7vw^I|Se7NCy`~D+(pn6ozadR5IzjoKq5Mg0 zsmwFD&9R|0>6r|6dPg3pj3Os&^G_+EAGwea8dJ{{DxS;2qE$bu*K?e^6psc|-xo64 zvzuuPW&XCYiqwi##uu`T*l|odYW(jC++i>kcq#n~b@EgC-EOS~T!=9R41Fn!dQN7j zqdG^%D8f;#t!rLNT#%g-WZn5nCgP^-DP(z#mHT==8hZ)40=wm3Piwc=vbM+*?fc$t ztL;nQyp=INX)p&aM~-y7p?(#&UBWzg4(7vK>F0B63=bT?;@;xw-MV(^gi|Bu`T3d7 z5~r#K)18EDU^lScuLD!%M6zM0bS|D&`g@cWLwyqejtKY52Q8LO{$c zbm4LpruEVY^|)Ecw15WxREVxgBP^t^2f*1j(of;)6$Uvpvs>zTP?%wi6VKdftzm>0 zoH>E@=i5(HElnEGUxraXXo5RnJj_}8$7dJbOS7_gH=st&MzC=EoQ60XUNuh@U=ccu z(-kzQAmUWFeGjpRK2R^y^SO4!;^4r#@N5a6r+QF2^U3Q@e>)oyNk!dERmZ4x$DbWZ zt}KkGNGe*?IW~Zyqbim*K)fTVz3?!X0CH?_0bCd0$jpQf;5t?_6MZgHa~+xKdegj^ zDJDbV4s)mPa~s|@yO}gYm1Yf*%JPpgEJ!=U6%-rpp`MV}5PLzg=QfIq5H||SV+;}# z%hLQjMmsUkmG0#+T8Qr7Q>2Sg+V4-yOYD}CsMT!y%*t!>52C3qMj5vgHFc2`FnRzT zbTP{N)KFyK!m2qojAswj8^)~^4R09#-k&PvHR}0&kJ$z`rZs`%5cCH4uI=3bs^$tg z`)g=93Rtl}oy==g@OyxX1P+s-*xA&Z$z-Dkkas?iRW->Ja7#aH%X~(xlh4OBKmAMXL&IE+s(y>3 zSk4{z;eYiz(O2u2QdJjA>F3nP`oYzRck;PWo9P<5{zt#?K3cyw2*R{}!#|@r1)*OD zMQ|j44nfLP-}Tn|^-(mYet-6&;%?CIU?j__mXl1WQna_$?`q|2`nBj~{oc*kAf(;N z+1kDkEGeF@p_PRVpR&0tX6tfwqdMWlUGAs5-gOh$<>X9%6*htz9V?)E-K<>#?iTHq zaUjw??-*5cs06!Zlu(VzQmVREhSx}Jd&;S<(UMt>niVmsi>?D`W)UO8CA=$_spEV4 zxri}Tr1z()7NeTQYFGE!ai4m7pqfY&D7&7fSd5^WuXCAAR&~tx@|zvAjos)PFT-&| zQvL5KN1pl`COto0w-_CKQ^6Y3g6Zc#5TBAie)3_qAhgCO+nz>%>ro||qkx@u8t-ZN zxUSBE%&^mHPs3l-wbLO_Bi3V?RujjQ6^j(RwXm1r>?9-dytfwhHZr8=_OjXr^LW$4 z)lUt^^`a=RpW)}-?WMY&_!@#~4ihqps@#TA6v??|bnXT-cdgF#kD_6m`|k@yJJQS@ zs&kh%pmlym1)m58!wgDl8RX%8E%d_|%g{qV!z*BnCSJ!?2ElK9A=q&+pw|lu3^1ap zr@s;6d9zM7K4TaSUnJG1mHtMRW>vG7tQ_*RjLRxIHbr{^>^O}u?zz(VJ9Y{Pedm)+ zXz%ANw0-F(aPTa>zhI11OJ;W12n`D?P2U8d%fGyeehn~+iLWBb7GSgz9+4DTjBWQ! z$=blWK-OApP=b>sl7=C-$-hsv?abVvI`=NxWR~pC48xsX@fdNz0Vkj}O_WJfThmOB zqbtRXa-Jf4q2G8ZY3svq-8yvZzLG<@VqUGe>wq#FINK2*7k)}30*!B5ehkYd{4PEz zgu3^#!!BxA=~~(F4r`b%I^!(Gzt^y>Vb;FIjeJhxw^uYW$e1aHwxf?hMoo{-cvy^) zz15;t!3W0Tk47zj7mY_(z>z855sBhMiSc-XvL29IbL`MG6Zi4jxL4r_Lp`)-w`2gI zk0NmPKAqheQ4HQIDt8EH2<$1BpST^SGgXXGdQ#4CFWMP6yr}RI65WbL!ImbgS~e8efPaS0JPu&=9>gR-ZWEZr zb)Uusw?zC>(G;^AF5`d?`%}=_QnE5- zE-?&hQ_1*CtPHo-sBD~e64P!{zA8qAviBQgtFRUN1=v*QhmEpT+M;eN@AUL zt8-VT84ZBh>Q>t=?R7R<9UZP>M3j2vHf_6-pQ^FnUeYaY1%SOVxSQasmuP%l!`Ih} zY+c?i_=TtG`s%h$muOpE!{ReDE5AJFtM-;@xAeP2f7UgMhjs;!TTpM^g0#pMipC+S z=Ot@!l(E!FWS+PF7;OYNiPcx>dW?}E0{T;UtWm5`Bqn<1@sfEw@r%SqyRk+EulL0n z-Wg9Q>(c}7qmfCo>AP5?z8Dfnk7EsQk$RT$#u>o{R{#0VoYua|<4iT;jL6{f*hp0x zTm15J4I$1@C%!$;ahX#szX5S+oY5eu^%(`gfr)PHpC25_rw&~$04!(!P=?k1Y=MC)k0Q1P2aua1i4o+Wi4j`r8@kr)4eUYYSYV}T`{J_Gg zbYNvWeG$PK%1>eEk&yH*3MHoA4Nyq|rzyFC(Of*NM`s%tRYH271a8jL7o8Zy+Urkx zYoDaj@jScrqvr7j-n2PM{gEzE_X?}Tv*N|lnU=*HF~P@vcU1FkLtA6Ds^&D!(b5Zu z_IRT~`$s2C5rN&=)C4*uF}((~Z8+SlW=&k$p-%V^Wcp>8)f`w7se+DFu6jth52sZP z4c|JqFRLn@H;$_`luNP%Kkb$mkct{rcSLH4FDs1MKAIW=Js{cQed$$0qnh~gEmde_ z_;@z~4c2e6W((E3GN-C1D6x?d+^iua!3J5mQNua+-ER&vyuk#5S?h!C&vmIS-|<`n z(4m14SoL2gF1w{G<|k(x8NR z8M&SO)_q_;c2rw7J{-f?ZiUk3=HTMqT5-zsoeg0~&2^;GW00EHmld!aF036E{U3B3!3yvmC?~o6$vt$% zX|dPRKZ&!U6vb@=DwrKEBjS=*r4Nd%+4&!#$*qjKjYcXuunRB!iJfgUK08-k14C_l zPMW%A)Nww2A23#9nDQA@3v^A{~n}jZH<5ubjb88on0Na zM!l}X0+uoYdKw)2O{eipvk0%6FinJm2I~~azKA4f>YFrJkp}SCA-c{q6%Wz}raAkg zDMx1y*EILdHNrE2PmZ-j|0 z`)OQzBe-dEM{Y)AU|(X zm6-*!D*CJW>zc!&5KgiHTQe5WXCK|@V010)wvSa(k`wR(DNe}lrG$=EL&Zt~`qvvk?pS8%Gh`eT%X&&fB-HNoWixE})p!Jhq zDugB#%udOr4bbNvA@{C^Pe6)7b1?br2)h?nHXy(jpXWU_=!#{=UAt&Fg`X z98>IRWvb11*gRIWaCOiuQYTD5(GJ>0Hxtn**V{!--7#8M+(rJ~kQ$Vp|_;Y076jyJh|lw5vNJ0=b8-b~hr*JcK!TraT5# zP)FxF-{i35)K(+w%7PvW^21iD*#oXV&Pu&{7!ehFnS?_fgy%DvuwFL8D+*Eu5SV!d zMfEUz@}GfCa*Z5lw>;fV55cF*RTzX7NOtgPq^J&j|4D%a1^MQCYSPoF+Tphy%Dqv6 zL-C8JMhT{;@x4E|2^Y}lJ&2B!b-Z&_{@g6u2>epppm2Fr@dI|y)t-iL>vmZvAGU+N z?nUQeArptr6z6;?l- zgo`QxRAYcqF=YK;n9*~b`ib40O{y*E_JVU$n`rI;BP{-(U1mE}gLsA`rAGVT94Qqo z9B`ymSh3ZSQlZ%DUG#B)QPl0oMhLmP5YCRs_})zl8)$@7K8D)HB@~DG&-CLB-Qqst zJ*k~4bq=ZPtYa8#U~5oJm!|GpN*ajekXLUgZJ<$F?0ZAk`0tcA)zW$o-+-o+k8WC{qc`n<66Feuuv~!~`9UW}+PkQ*`y}e<|MHa};Zi{pQ zAvQE0=gpeCE&-fLV)nu=oRu$Y@_OSO&ypOIS9c&{jV~{{zp_$>FwF zW|uWr^KQ>5SJu+Op+>OlgETdh!-y7hl^zT=VuMDlHGR&~^BUI!o+MIZTo*0F;&GK) z3^U@}FaMVHMRq!RKf5IkWGWdL3Ef}e#Gp!P+RKj2d2Nw-e4FV)3E@cXccgOFM(SWg zdOFPTjh+uEmM3yyZfbrU;)0)eb{A3|s}maXD?vwuYW^(h9mNMx>eaF%WA7TaPGID(d#*D{?N7=s%&H0!qWVT zhK2_~hwG>G3^(@`3L9Yz_ny7Rw2+MhoF5A63GVv_v}1%3TJtDaD~qutoArCsL}?t7 zYz#1?I@Zy)JSz|7u%&)a9wUt?-x1*ce@%KjtbDK+TW9Xv=Q(3=S3!Kkdy2Qla={MJwFH8T`VamX$<}s=n>2UW&i3sGy3b_YO)>?%{LWf(jFIl-*YrG#`)+j(x_QhweCs`Vk-G58pGTFvsnoI$Uy`dZ9pk+Blmh^QFY2mD8&$m=&JjjZh zWC}>Ht$oI`mLFhX1jH+I(y_S4uPJsS=<@!e#f394=@lhSgqB?t*{>^dkR>q2=6~rH zll42Q$rSL$ODZ-AS{}uE9IpAyNj8+pg8!uflR$R!XHBMn?Os~Hn`D$V#N_#Oaf;C= zsjtb@{d15U`N0Y1v%JsH6biPDVc6t5GeY&jc8lj+&b2J$LZDCnQq$xzTcx5IZ_;Eq zX#Pr7G~G;^PMYRIhC%zM8b!Ug>g+ORc1fL`ev2MW#ZKfno%=6q3W3jeDkWFkVwPA2 zWyNnW3`#z62&}JZj+iuuG>z>BwVj5Y->KOPJq~$#S2pBlS~U$jzrW5=+P=UVFbj-V z%*{{2cg~^n(~Mr8717YL#2?$CRC2mOO{ZhicZO+krP@T~Y4#Znb)~V9PfX(?oGqj@o1yiRgmju218|$!c*O8MlJsPE6x_ z%q|JoL<`G%vYnR~aS6hw=qkFbvt_(Yq%}GMqo?R1U8VDw59`o@p$qnJk7vMAHf@vd$E?~NQDr4Hmh%up1(A=$@ zXX!toNd^i!CEF%#f=CNJ43L5AbdRGTi#^v~gliePfyolK_Ch{;e`N)!_Zj$4VJXIy zZ0P`Nwv44^8XaxvGX%Z3&*0r;PCrzoA1LS_GiNGr*Y<)w0r}zm2aG;8(-@;>sHJ95 z2L{}Uf<=aQJi|OufU`>PAm|tT0eZ6z??1rxhr)u+Y+>HO??1pLghKRgL>G92yWm!z zMO>`jVoWOZ209s1&1kq(<|+lkyD^GPW4EjD70YwKYs>h`=7RE44?xUxott;)B$m~f zz?ZFaEo+dVkiB6NjGC_N?oz{+MOj9XX$(9FucqtzxD;m&RZ#TCO+4+V>o6cwSE*&6 z12$=0L|Re4bfAWXMhsU_(cNiWlIkoIRy3Ta<>9qyd|!rb@LD#N7Y9kBqxji^U-yA= zhVF<rQ#*K(_q6~-BaKF)7U8JYCN6|#i`;29E(}pZn5vuvDu|@_X*fB zPgjC0Jpm`?;c&at33xM4w}wo}f`#*SwGFkiM0pWxal`$#@@T%Un1WBu;ePln)}{(}OqZ(bJoF9=MFoc#aPyfB z>^x4xuuZz~us{2=0iBp#T;SuXlZYwU566!yZ4v}aak&Z(heP(I?#6l z4_)KH^^dHKlgnQ)1`_>v!oQ>{qez9-dV9It=%A>AXBEqlB0}-ao=>^uxdTT#ZA;x6Cj zhxo*b<2oV5^ZxvvmyIZkAt=ufl-t{6m~a%|-!vm@%f1fKbGI(ss|^E=xBqN?UXqh{ zKyuc!vFPP}VcTxqf{L!&5ycNFwZ=pgqV-)o>R^YXU0mYs%#3Yef{nHs&vxSJwDl4A zc@M5#wm*V7GvZd9h}(ecpG~&o0Z~B_w*t{AcvfoW2}Xf;q4Q%1@%}+p<2+8nqDzyH z_(g1la_aG8GbjWn*xXe}!B5{{sr!+{uqQ5PYTO2tEkYD@xuedmrO6y;!h&+A#^sta z3(90%e@3xq#T>#a*u|Mouwz)Gu}ZV}MDisopJCZ+f|+h;ZTz|wmnqYz*#-j@op<04 z6@I#vt0uvcjl(&S3FXcd-)5iQ34T*_Er{hZNLjjuWZ7kCo~0X6{Tv$yW1XY<@h^TG z;xLpJwcgNt#-hLc#mXuyVh1~SHWI~Ti|4;2E!eB`tvelQ(FmCvPMX2kt~H*Du-2A7_nw&rTbo81C3!UR>G7yV-`1L?@o}lPdAM8J*Je~uZz$ockRY5 zMef#u&5VW@Dr{n*0m#o=Gb^qPiJdx zMr=Hbc#W6&YShJ;tZa?);;62l zrmagyri4ydIYyos|3gXL5KOIA14+0}U2N8N>wMhv8Z+-Mvhby1{Z2Pk!1H_^$LZTG}vd7+|li1X7b z*m7LAfLvS&^-k#U8!S^``3XF?Kk}&Z@r3S?mMm`xcTS<&D%=M=qTod)wuYLgQEk&V zz)z=j{@Qiq3oJUVOAXyr?}yrKM)1G&HoG3gok6`N^W7Jwh)c2X^o(wu(A&}qHhP1V zXLUPTk4Am6?}e~abEb^66cyx`f@Y+#lWB%M=rL2%m=h!2N#=@avl(7V_dknJ?~Jth zoGjh{Jc3ixKm+T~=`OT=&pyk777@2$)rt9`4$%mv)+&|o-6D?ow~a-7kbqg_Jfc}! zjt~~fPJnagaei|?8eW~(8A(8dhWDpKS*yz@V_lE zv>Noff)?n?mUOu*?yd?&t`>N1YFQf#C$$Tk|4`Cw1XFAEN0I{1?TUZf z=xGQNFg^L!7kW}X*SS87zmA^ki^>1txkc&=&&BuMpIt}KO~9pG^jtrowrA5}+zs?x zG960ZM78A%g~2ybZR@ruxi^{Tp06c5x7!)vxxdwcV)syO2j+0kC6`}7(mhn$_3$4m za|6NuR@;$qFy2SCZNsHgp*9*0d+!%G?imjowZYH_|IZwE)I)UKfa=*It)QD zwN@h}DKJQF{M*JL&5(c@#LBr8I&NNd_~j8gt~EqBuBEzg+}LVR^f5Ya#9D5FP+@^L zsj&1hI_{kmsPY6Yu%HOD1+@ zltV9dB{ZaeD*XAk?xNcYEZY>CwvauJeAJl?+fJCOrES;1!B;w0Ph4g}Mll);N#f6v z4NXVx>rC3Y3pGmKE8R*B**pQ}zW)DXH2%&1jnVcuy2=`ZcN-@3bn*Upkra6U78jmx zw1)EU@a$jbR?zSrZV%0B4P)NvJiVopY<`(na4We56=->bXB%+%Kpk7bu6H;bv2P9f z_qtxBWlLr7d);|LE;onhkGis+>zdn?Zd(943Cmce~C8!t0M1&VtG+W%G64 zG`>Opd_K$M)1yu-Q)h8E@f2<{XCT!3tZPNmTfpMax=!Ts0QmSB-KGBkX!!-7Q=7xq zFX%RXrYrJS-DYas=ZSu6)H&+dHHF^X^dB4`htL)+dU&AMv-=v^03p+%9#Z0+jaK7a z2ksgL1C)6P;s9kRCjajMr88$fj1id34s+WH^93 z)P)@G0$@*<(CW*OF=!G=Js4Y*x|0nK%7UWwFHMn1JtkPf^q*mv0}Um&onVCntxX0k zhr13a*u+YZ??7Y7(Oyu~k=7*XyS$ph*dOTubb9U@S>n2CcEGcO-vAf$%n64Kfu| zV7|;Hu;^$ot0avg)w;s*lC+X`6(YWtq~+Wrk)EBx7=uIU@6wmVl<3v>Wv$JHEn8H(J{L@fYp?Od@kbaNhXg9|&}(4fJCe@bvvB z2uET7ck1U9i#hlb5za>~lj&#Wq&vm$I<))@Z%fe}vgs2X@SuT)(%9#+8na?8#oECe z4_eXlemNUt`?s3HMH^$!FsSQ^Ep2u=_}PM4gyQ-g+V z{R|iU(D`djgA!$EeX=?MI+mgMuJ|TMEkpgtwRW(!46RIJ%EPTPG@XRLfgb)e!nyft zRo85CfG4N&V2wZZt3Kmzh8Bxxce%I5ztZyWt2na#b6+M;G@pD{e1ob)D4Q>}dB0f@ zfR;Iv2Yvyxf_ugS-Z1b~FTOXUpFuhHtJ%{Nb*kHyySM%THweNu-KPiuANI0U= zbGR9TW?AtZzJ*|ex%BLR8;pW036{qXp=u~K>5~|6JEd#sRQZu9L9%J z|MERJQ+^xRRV3moUe=Oq#jDzVbhd)~yL3i|^1crj!s#&5uoA?Tr!NirylmJXjAiUs z6e-Vj6= z$*;wmmpCb6xlx`;jLSmt`10@VT991{+kfs!cwC9b`n-MmsbKryLKG8%6WOEhV?5g9 z0H(?qke8l;iYT?MV7ue{9@(2uK=~G(hzdo5BgT6;pC(rEUHQaNzV#!v?^Uf41=L-H5wQt zy-~|=he3&z|LE_+@)zTRGGojp-t<$`cnS_5V8?E|?rQ1*U4@UaHUj&rTj zHBt8M{oznelzlxDm5ERw`(!klx^dG|?K-&Zjyl2E#aVHyMH4g;@7k)?mtGTT-U3 zBvxyOJG_>eEk84qiJ?B-W~i%8GUI%)q%~@TiC{HvJg9@?t`;8P z6pba?c|h%Ggrh>Be>A4AF9i^d8tEMj+0pb9`K>n`h@rtz>zV7>8f7v%imH*FxYW&L z5mmGDr9|pd4BYB6RR<~c>e3;as#mXbxnnZha>3b3sO5K#!*^|&w++UK#n^0TDf_+% zHucNGi&$ji;tFo{@Y$g()ML+cE--{Wrv<>$dNh~ldqD3v8d%Z#NR@LI)}A@f?fZpt zdIX39X0ee#@6V!uL3$k=iK9=+oQtrfK3z}xUW3*RXkD+}SGZDHBO79ItA}PS9Q=lq zfn5#gZ`yM>hU{yiZOE_D$`KQNuPL?QFJ4J@WFd>WJywT1!i2w+3yo+^jnnozoRJS} zlbJ?)AMlK)zmuxoa6g{5Cx3WBttQlsv<-%~O>mO%vlnDGp>4GZI4XP61Pj{l33Zy% zrDS$>MU{dcB zJWIszVfqB6y3r8rUG$*_-RMG+Szo!=jds)!-zccvgAUMM$5H*SJRro8;R2`)dkAX0m?>O8(0mSdoMhcff)F*(91w z5;rSN`%?UHSmT;XnE}+SB@14__Q5z~>+=at52gpm+Gmh4gl;7L@}c5T^wDikVdhYZ zpW*tbyc|mZ(UOcv<J`1 zT+2C6$Qwh;kd14>IF{BZ_ht1bbiX`oJa>8fz@0tjWC4iAB?ogWaYk_=!#S^p@nfl9 zsqt&LhL}raGZ%4iLVw3z>g6lgI~Fyu;}tw&&+)Ioc^p3T|A1QKP*XYwrQbN}uW@u- zi1ERq=f7kjEFF*X99#iM#?$8RTTd}%H#u+FfoB8IrO*Vd)xs$ybOH`B?ci%=^o@|P%lF=M_x)}NC%P)p3|ro zX}J(;OrxHmmsYXhoyp#{WX(P^1qHEW3uN3?fn#$X%a&CzaT;ytJ{#MR*~x6uXW*pJ z9CrrSaw_7opWi%qI1QuZPXL}~R8&*!Wcjf%iY&~+B|NcLki4b2Ub8dhtNXh;WME^Wo8 z0~vA1HqMQ$P$jX~8Y9^D9{x0Ovl>fGvatwdZSPqVXdyBCL8JGsnOXz4aB-l7jh+8 znwm9icRHHwsTD?`zUyKBQe5LZcn;bx!#)JgDWjIrbsF;O4EQXkHwgJl`Ldj@*Er@6 zV}-uuzb}Wuj+Jy`(MKnlpr{9ypS)))lK|g> zW>K~81&p!QeGCR|;^ zS)kSEF$9LKqctlWAIzLz3|Uwr9wp!ylD4_R6O<}!D#Js<9_!(cl15PV)o>m>VO zDy!RMtO2WuV4)M(No&4v1WQah1(i3_ z6=cQ$xVn*cA#L_U)lIaAq3?1*l)}V#mkXOV(P+c;#_MLUFGgwxR5P0&4z>lYJl4YoFn_>QOD6$nZ#ET5K4v7-%SdC1_q0LrW$z}W!flOh@p3j*1jdU@r z+)91@ZaA_57C*u`PR*Om$YSS+rj)Y?9&Dvu{5pQ8bK5M~ak^u(1zm$h&|@3Y-Eb)6 zH}#+mU93u%vk=cl(RO~#2eGEd%k{RUJBhP7)+B#j1f91dzk9_B`E5O5!>^%AcNXB* zcG|K1&7~soE^Bvfk0NvSO_S%PSTn|MjGK7{t61poB8`95B#7NT>?_2uw`D(nrV!)j zg)n;u9Y>P)gW)&yn%}#YQvM+9R;!H#E=%_4~YBmSfp)1CeCm zd~n=}>wR60Lc~t$>6c(%Sg|H5J(n*lQ`v1~iFfD1sa>?4A;gx$ zz(b6Kzh8sznS1hK0lu5eGH)}B%u#b;)Naf?NsY%`A=w9c@sZarq5(wI%x0Mu%Y~BU zsD*K6L}fO44*2guW_Nen)TM-A2Fv$gU0z~@R_o$t%c1o&At%5OqGF3Y*SaA7Yk?YCK5SWNa#k-m^Mgc53Im;ojB(bk5C zJ8Uus^2{Z{ypKBg>ArI)ZOdW6WKn!xChTJz;%qsjWU=B)mS2qLX1INM?MR_4(^Ofx zEXOAaP7O1m+kWJv*A&hPuI)!z_Gk(@JXee39K2Ny`=*2b0Buc_Oz3)mHX{8q zVe350E z4MYq1dzwh+1=mUwqT`n(pB|+BBPyz094~0ebzab4DnpK&!f`k#VBGE3L;4|_Z|L!> zVCl<{Kkb4cN2#l_`Y?^x7>rwNlI(VhB;yg5v=hhMtdHWkX6#TfR}YQh=S?v-Vl2qOb?Q(GDK7KMR%Ap$ryQhdOT=rTGG&tzt z?|CLNNo&1lNB(E?Wr-Y;mg&Tbik?t>WinpQwMuTvrrrqlZAsI6yMljoJ}pfV`1ef8m25g zLqj$8mtKi-e_a88oTc5#h%ri~bF_=bz6f8D&ZPOjz_Rn$_;W`qpU%^^8ggtjwETk} z3>!Vmrk;aqu`N7taU0VYuWUcQFq}#IErpsFX*BIgV1VZ*}`ZI|QgBoveq}$&NOWx3lqH@v%S5dPmEW6Ty)6j%Jbu0np$*O>-=cqy^a)l!2@7alK=T zKgj>kCXQ3fd`~M@2D<-4)5!WV@Z=vl&9T4V_q11~A^8K&J@1u;Wgln&+0+Am|3I6N zx09g6N1RK&m;}>4qUcj6!LyIloAjIn_WAgXo&+K6={X4+vFFEh=*OOarNcD#+@21b z*mHV1oMO+Uba=*|_0qxq6Fz;@A>|KH*B9k_gHtTCPZt8`og_L-6tw^&xhL z!0|Ia4^b2eB(P_#gD@1I$zKjIE8xAHqw%7lGpV0Rv|Y*wcYImLf?oq<|QF3J59-f>wnD+XX?j0s^BT!0lv}!?v$r_(Cc9xF1};pis(wsKTBj z_d`4Oth66~#;4aierpK|IV2o~j5nV*|7jWWo{P74AME}@n;RTcwRR(1P3F3KQw>@q z6^vhT5$-P!SoM{DCRa+q@^7fK!#;5M8?Di^dNL9_sKk{J818N|6U^w$5`5HzVhkwW z(45;aql%>t`cYK&)21nK1oxbHj(V?M&X(6by-nISTbLp-626-TY%6ClNkI~a)* zls#5jLgTX2ix!-&!UOZT;(`sM{NVX_q>N~HWa z_@I%z8b`Fp(lg@j=9#S2pZ#raVu{MmGZ}U`I3S1$%ou^M7#N*cTBbujJ}l3J`O9K2 z+cEOfR@YgW+2Kh$=t`tv#Wr~$RvZ?q3g=hSW>8Kmxs%29!K9VE$%Oil#Gc*p15fN( zzdmeW&yf0%%bt$)!Gh1AH*qLBE@Dh5sDK)P!B`kQ{NDA=`pQ8+!DGw~`c9%o}N*`!f}lYz2|B)Uar`zCw~}`cE)fmbw&) zW?!~2dsS!&FJ-AzF)sw4yRsZ5T0#lE^mC~M=kMX=FDGVHyvEjmhqQ*lI=$4X)f+uu zdiLiBOKu6kaUX8@V~z2siM9wU5dXM{Nv0mH{M(@-CjB$Q5!DiygdN-%>67)jQ$6!J zM1(U$U+ELHDI)z@^mA_^tC@a+iuO`EIp7HU?4=NLwFf-5mzt1YX>rNS=z#$Gvwu_cXBRxcXENVLd%llHY=(iE zR5qD4)&xEG?Z@#D?I`si*9@Yrd$9HWS6!PXLY^bm^=M;W*T%hJwE^quupUyKq)ueH z1Ke?v>XG235a28YdTxk8@o~(suQ+kEV(B?WE(x0_!0GB z8PyHP&Bo2i2RFm{9X{(yVfeLuZ0~@Yat1b%7WvrHV!;uGLg=;K!mI*C+ zN0HpYMyxT6!i6n2GAY${Lr&doHPk9D)pIL@NGFqW|Ti!8rcVU3G4pn6SAD zcayZPkPsjhFLs38c8z0sT=4q_$*xir=lY#gZI4FD@gn1IkmD+iB=R??<0gd~I<&G; z)ufKf&u)@VW9ZS+2K!S7nC>pEB(7hed@1RLA-{r1MD61(t?eMhLuwS1L_S%g{;7el z3L2(YKr6@8_}wrw2>(Fqw`$HZup5U-J6P(0rIxm3k=qt7dq^hjA54RrF7>KT@X3t_n{ zylM^GyrgdgKEO6_$%QP(ZD4Py0jXRIoO~ot644UEeWY8YVGD5Zl`at1O3EEysR{{m zWZubMjvb4Bf%k@SKcY^Z8Mg3jDl@qyz6I1RBULMt|Argl!go8r;uy3h)0@?J;SKy! zMrzV=D5BY-a=~#v;S?7`UmGqMX;vUkezA+RDlGYez z;%K*!vTkEI5G36)gvJV_h51{XMzA4Rnre86W8Xr`!wr=>A(9^33C@ROvOcQ1 z@nzc_N4~PzCbh<6sraHN!y$N81=$O^Oc)km@Y99&A-$Xw?zZn9SDH%Q!=%Hl&vlps zQY%Tpc&hR612&?e7aGI2a*~%zMk!Gv{&w#}v^%z(*7cx5xa96uos$|B4r*WP_U}Q$P2Ee*mNImhD#k>BFot@ zJjtV#u~DoNUtWsSxQueQNgRY5lqhF|Kv*9kMQV>t{{*#tb*@F)-5VmL-s%qR!IlSt&BHcjR4 zK7->!BA{jz@(;Vs`R{gtZc)g;F50z_MI~+=V`UfRZj|J%A+ZnPb4BTp(~TP}Pl3@g zuffSmQghPpuHso)%F^g_Z{_1w-O*ccvx>BucwK|ks*-4cRF$fdahJiqn&eAbT!ye}k`JkN8Jbj+>bqzzqa#?2Kj8zrD|!`&#M!&~)-z%+^&*yk#&Y1U@>@-*qQ-slox&9JP5jezs}ySL5ZIr`%=CnTj)Mu$sbA<|$kVk@BGi7-BK+@fwVA zdNnSQc?uUrP|Q_RILbVQizQOJ)qu{Jw`_TpLY1*q`GNr+QN9RYk)zZ4KZIAc!(_Z7{~`p`lWKPIsH!sNN5NQD ztMLwgm`!X(#{2tPjVq8X@BT&V?2CdAjwg_IEJB#r%HNl*^>_{Bqbi=Q!XI$3o-}}z zsR*HQQgi(fY`RwC;?s~GCsnI=hxLA}LRc=Y(%_+%v)>EFH>m>=w0-v&DYjfti^4aw zaqINpS^yTmzisXs;+^8%X6e$pb2~EU8sd3uxdr0*V$;w17+k3K0#d8r;nO?c)1vW&_bEph4_^f=R5@VBIjhAnp!V4C5->9Z=lz9pl zLZpnU1T$IQIF*7+WS+uB5fmlV6pk`a;bMuDdllgp<}JI8S0=rhD&s7kfq5QRi=gdM z2|OA}!Cr~@!9Dc2Xzc$mT4UvzAD}&}T8+k&(5;bF(lZcA3Xep!^2g&J_+kLkT8+P+ zgxN?@Qa;7)iihnP3uan+681Kd{GA$LUPkZ4#|;(Ez|ba=4-{)Gg(cr)!J}snP|cnre`MxH2+nI{|T>WYW3VF= zzf9$>ru^GfPa=h>c1H>`|Jzh)YRbP&)jU#|%15P8Wwhgk{g0{sjO3>3JN3l(_J!t| zji72d?8s2dyv?pY`Tu3C;G9DGg4lvw(h!TS-^O&QC-7t{n(i2K`ffTjHJa|Q{tT`s z;%ehjsM-{}hJZlm+f-Vq?H8p5!&9lX(!H5fS3{!9!@2}%6uA-(KFy^vj+;ueOn)85 zl`Z@S(VZl}sgHo{MAIxH zAiaRn*svob)lId&23|LpTr1b(*mQR;hB=LwFWN_OHHD+hX1a}IgJY^QW}N9ILul{CE$XZ)3}6!;4zmu-CY&>RWK_1zr@F{ybBtHnt*whV#L*4R(y9fUTmC7-~YLtN3m7}abPT^b#n_oSkG^E(7f zTT7*#`Wz8j{)iQ{8k--1v#q7Z$zRHH{Zthic`P7R%NGQsYI&c4R4uO&kgDYw0#da+ zT0p9ny9-Fw@=c-hLM=lZ)bg?*5&rt~#QzF^)zp-KYhDf#;qMX~?PD+ZZ`H3>Q~s^` zp@Aa&)ln%_8GU(S|D*f2fnaWnx}UXQ=)TW^|I+;t#M$ETA8#9MkM9U>q#_;e7E8hq*rh&OCpR}>I$-3$fWItPgH z=^ZX&dNox>3!C)*@A!1TA0MBVGwns~s%H|}VGUf=w;E#+sSZ|gAXyNLI^(Tz9dNMP zW4~=|*?j=|c952mQC=W-#8vV2Pa&|QRDrzPrF7^h$(rPyzP2V=CLq-$Qv{@%WT=2t zlXMi2YLYkssU|5eAk`%90#d6xmshv2KY+WPaM0C?Bmb*A@KaN`L_c%~d8MIt3(R{6 z`#5X{|Ir^zS5t(MZ2N-_rC~bejSf;NxTHUH2>)=Q3p)g>H!I|SI)sbfqC+6~9kYT_ zK$hqb8tpDLkxiWHnPuA{OcvLUbCdQ{Y>jpx3%Yla>Ld^2r4~%*Itxg(O#=a`wy7W> z)ixdiQf-5;t+Pg_+UAuPhg92K6Od|~mcmkn&BeDX>bIn-i3`lte(0+2`v}ed+cw*M zgl#6M6#wq4M?h+bE+(v)f@wUI_34J8?5vmQMwW0h{#Q5BS54uv{Lq0{ z!A~Tz2@h2%xI{lpc>d(oNUz4F`=JM4>B+m1fWaz-Dq{j?^*`N68JN~q3h8@yJJYX- zVL1G~hv2^l(QnZ-1>p`SL^d;?pLZ0}7c?m3@+V?{97O-I9q-J?L3D{-!f0at^K~bb z?jc1d?_|qdh3g~B1f({oDFP}8b^K$sV+xlPasi!cFI{2O3_;dP;HdTdi;-Io8djsLbEVqL@U zwh2L7ez(oIZLq436iT-3QO@^~(luo7CTQJP3bH@Eku#tT9AQddoKrS-WMWAt>g#cH zv8j{Q7{Uk|W{lKhjGJ5nH-2$7NxX9Hix&){P<+Vf%X&?0#?u8mKBd}FkXV&3sqV!j zb~{+o)cVMazn;eUU)+Fl;wyVonV~WusGsCShHrxE{iJ^6E`EEypVW-h*$5x{N#)3p z5_~eOUoErA@Y%J{ygv?r#^gbIe`%nhL>}HQl8#4<+1*9oUM(0PnMv~vO6CA*kB%%_ zt;7wLZfMAXm5SdmsSa*NELVDrkY-XcZ8f|bBi$yORw;jtm12l-AqxPwzliU-EMl>} z@n}oMix4tFI!m%OkUv3cX}AhZyXF+6#1H-gbWD~u>7U@P5MI+T8yr%kaI(V@YNbd6 z3}Y8C(t>OK7ARRM(ohXKJqto7N~iQ6a9hY~EImW{I#K$WlG|n&Jrx&82T z{m5r9W14h_EI$r|&CRhoe<66r9A|SYUR=Sgcze^qYq~U_*r&s;=~BgF z_3*7R4BKa|##3qVZo1T<0JJ6?}VEeIhy| zrGOZ52oFtx)^nxPMQ=Vv?Ph53djrW3I!}rs6Oxt0c~WPhzcYcY&^H_p#~0wn!Q-2X z8%S+*`tUIfy>K*)Tq60C?pI;y5==fk0$wda58FNryqBW!vc^NxrBWCn6Jgv^++xfa z54)F2Wyrgq;QCTL>0lWL(lSiPBj6R6;TEMP6~-@>mp^ev#Ib#e*Szxip?cjREZnsT;{21ie>CM+p5Hf>)vxmqtVT zmFNvv+Jcp6O83!FZk1G%+!zJ@S4k^K`vKsvT1q14N5ZJpQU+-?QXy-k@)}ZR1VpWs zGRc9_aCEJ-mE0T#KdqAz{1zv1?+Hn>Xod%*eIz5242R;`_b=x%>8!?n!{FgMJPG76 z3_R9LJ;}16kh&h{8Y70n%Jq^5$-W4O)=Sf>?;1+%PQ;GG|3k6y;`?~R`rxkINmGWX zrI|k1i3i3qVuzbD8spoDr%h?U`*uXDo#_n|H%R5ZHvhq`h8~x}|B7+KZ>ullB4qc5 za~mYrDpPuMca_zRhS8i(SIuPRn9SKpc+@JRRkbg;^Y4c1`&cpL_S*%;bE9;CdQ|L% zR>ptg5WtHcB}L&+0qqOZNt#AzbCxiCe?Hv-vb$Z7jzHaVYFQ; zZRpsG@tw)~7OQb)%#fx@7l%if%ne6d%FTn)JJG)z zErH=XrLH9AEL_?twIy!dA$*s#h3xABH+M$&$(!-P%q~=+y>ZXGyJy;RrO?iwWNfa$IT+se7dq zGPVO~_er(M<_-|MPpU@jIw%wNN#PoOUVGNAJG4`F?U#Zy`s{WL3~8%8JRl`%^zGU* z@Mvp@KO~(bISJr;7}rCVCMb0eOJg*|w;3GD#^#^j6kcXa@%kRE*zV%l77%j;4`V!P zCUzIkH(^qK-(B3+jO{KqCXJdv&7&9$JexqjqbSq0cvyQ>igY;`k1E6OG-I~Hjm4Ak z3T`ZVX!P@%Gl{-6Q=ERsP^vGNz(8oKj5;p8(h`@}kaSYYCOtPp$SG+KNoWX%PGJ#q zS}HG2N#}IrXjA3Dc_~~+<}^}X{3(^CWXw`1c};3ZhSX37UBfz)LyO_Ub?FkRQcYQZ zL)xq%)fYmmTd4I9m6a#Aq)-hRvj9roK}3~G%KAH!A0FkN2dD31yZ<#xsc?@4lCZhZ z{k}AhJg%U8yf0}rdd*B0;62KL_8|@@y3B@%htec+co{f8mD(r{kEEtr{mN;KW`7X$ zuprI1=`hP8jU!2m6r?#tNW~!K`g3WAMn7~CqcfL*xi69K+!V-uiM-0s6TFuFExjfB z0jZ2;vJWhLjWj3I;P`74$77bD+3^Nf(Dj}Z7)@nQu)ITXL<+dS$Jlpnx}f>?Uiyl1 zV<1Mk-9h`2$vqw-J~Fv81dT(!l&8^KM==_A7oeY!rqdXR{4D)OW=&=^QHuK)Jd&b6 zJDkxxDGpV>Ne4+vnn(+_q8kvm;V@Dok0CFLD{nONehn$_tZdWDr!}Pb5Ew^gPf~9v z-b^QtCnE-fyCiodJ%_*;Nsc5JT$QboY|!fO6lHGE&|W!SMDD36GR&TVxAgf+WKlUy zQ{;)B!Oi7-2;ok$OCyUNkEJxX z5sS*~#y+#x0V^JvNW+tk<=D&5*sbI1*GR@u29uet!E`Hb^I`_vE9B{m>T} z%hkyJhA_@quBF{C6FA^3dy{@W;ij|Pl-T!#u;Ox(Hd{jgipzQ0vsl=)67qi1wu;iA zq+DI&ROT}t8OzaNOt!;5CEzp6Hp&&W`|w_g<3>5e`O+ti?GWkmrv)x@DYEYq{E;fV z6g$9jWj0Q*8u3=W+AeZJh&R%w?Z+!r@cU1XMAB+R;oVk|RqOdz9bS~x1=WMcAG2KK za$(AskNiRg!`F{^8UWX?@oJX3sCT^O5hFbgeJ%4v2ioVVa9%5z;3xY9ziVYf94Hc5#}>x^JP{ks^lGviz4G9s zpFE3{d5ssc$>&JRJP7rd?;14ES>;FII1f+PEPbYw3XoS4{k@l{MN8us%CSJ%Pm>(@ z96|AqZCJatZqwG3`XU9Dj6ON$Jx)%VPmoVf~q$BZAhkj$BFV27`p~e(NnkK zOMG_tNM&+lHgmEX%VBm?#~m=@qz#$Yq@- zJz~_$RcdPmXci*7xiTz@kZalU2#?O;eU0p3V8j!c5F)#fs*hknh+K;tc?g$6|JGbgzQZ8mix>BTHJ#Jk#Ys%dP{i~DaUBZ&09)jWjRbkeyItGRpd^@ zw+GTwp}LITT@!9s z$HMcjD&95ZuY|n5q=!2$zeaLtEjf8YiEDzr z0BQ2Oa-^ADSt?~br22Hc`DV-3=+1nuYo-Hp73Vf6EAcv^bZaM%(Guq>+iS=YdwAOqofFUAH|;OuguN)UQD<`39zVV)S0-22 zE0qVxqco)JI%V5H)V@A&9kcrEHOlzG@??#E(HaJ7S3}XEau%7rN;y7MzAWoCOBuTV zVrBKujB40o2Hsi-6~aub|A|yM{Zn1YMQckTX&Cmf_4tt7T#iyqG8l`c+${ z{XX}78p_53-~VBd+WQ_VrO7kA^H8ifFSc~%=K7c{oMB;DYUuQ|)>&viNj8$&uOVrY zjK|ns!`eym5`D>KY#pY}bj37T{*0cVp~Ov-hs(s{6zrcZwy? z5_}TY&cU!qPQsZv==i_og6CX0*k?*Edocqq*^D>iTZ$(3`FghM5QC9*I3~g1zH;S& z?)|YPYP_NlVL~!|FQ%Li|C`1BwBI9ebkQsY4$qZi^uzDq*v05FUeV8!OKHizJAijK z)_|@cPbKefGoUlsa}!JpF;o|ytPEHvn>G4n*I1@kBf+{zo<_#r1oL7Hmt}4$`xncJ z#6R^mI#-4kL!}rhV5r14gf|ThV@}6HrO$AvvrLZkDSCrZ;#@2v0X>mbq?hHx4rcb{ z?GORo-pY}1bQunxCT>w)ER#oSN%iZ{b0sR~#$Yh7l#`2Xy3APM(Pet~BDk!=K<70M zx~-BIk)H-CUslO$omxFVf-WX5mTu;2xurtb%$r49&Z`hM^Ja;bBLd=6d~6;mtV#c> z;#m7e9D7(69Z}xzl=b*NwtBP^Tp`mbz>g(h}YslXo~Jx3EF>YoUQo$&#OP<#%}_ z(ZAcw@-JwpOwEz4L?3`xTUm`W>nk%)$)z>=-`6v+cbt-STGngzyVfwUO|sS**eO{KjbA^@^fuv{w3K*LvriGp34|MOV@|aSL9pz>Pr~i&8kY>t8$Kp{J9j0 zUYDo^G@4;CtoZ^~CSrJN(#yTi5j`Z8$>$V)`+HnE% z8oeo_9lvA;cWCf5qT_H#xs4s4wYHLcM;<2|f+K9ITQUOdpU9)hr^=B2M2;xu6#PSQ zbVl$@>ezS;1j!>x+o}A>jg1K|(OuoE)BwuIB+Pq2p!|UvGP1R=Nb@ns!WDoT^`?`3Y{gmx2OJ>Oy z;yQa+sDTrC@o#VWJFkgLdnDs_3Weh>|8FK?v zRx@9=>KAG?TD{=#8&p=V7yR=E4Kl?W-<6fixM#(R<17h z5f*`%5pqe`{#I^6a#FzhR*rT)hy~cJTCMYigm)M`9aEK*ck&2LQQ3>7bJ2FClXd8i{2Nk?h1yRFnW-*6>xP+ECH8v56k`SAO z`?%i9Z~w^2xTanTqCT>LW+`RZM;X7dmf#Ls^D)*R`57EO$t_9PSm^#qo*dB0$VxFc z$x{2wFof|EdVIIbiCs_5R;Vf%!QrzU?wo;1Hlu}UMu`6`yBi0y9EBRyjc~y`zl<>E zv+Us#h)Eby*%;5#xG4+!=Pk!Nz-HuT-@}zxkIo$p4?fF&Rjs2~{k11z*=|c?C#&(0 z3nyT8Kc@bP_0D2{o`_9EzO2FHQ*%w z-N}FF^WQ%Fw*vpw^52)7!(jgF&VS!>ZcX^_9n=o;;lDTV)h}yuz)SWBc*TET^WV4p z_dWmpz<-BwAv*HkCj7S!|E<7(%kW<#|CRY~J{RRV|GmY3&-33S{8v<9E&toZ7I&=y zq6TI7-$wo`^WP#)EHw&$zmLS!zk2sJ_@twiv4z%fSmXnbzR6)^rze!K%I%U@mc))O zx+M48j#y@)a!WyUl+gZ4mVhPIctd?qV-UlQV3lsfU<-$bhhxQ}dK(7Q z*31u3nfQe*>Wl>V^{7(#U?6)USOy;_=*zaSgXqf^@AdhEb;M}X|KaQV^Lkyc-`90t_jTRB&K2>+0;Dsh9k!hq>*1_!(@jP< zvLACtwik*gUw%V-;kH}iA~CYB%Ks#C__?}z&7XG$CJfW(3r6m~P{xmp&s$nWR-Nqe z?2!w9@+w07_6zN8&8_=lR(G~9jbF%w_mhbhS-)Ct>ub*3+u%6 zZ*{(l|3r$&SE(9y-$>HodP(6tueka$+pk6YYtp`@#pO8qxxnN|B5Mpi_8aY|iMuxYLK6*+1ZE5lQ z1@?0-t&3u+FR+ibv^saJ7L5V)dSOq+2woV;$7ajyyP;+cci|K;oge!4P5rhkiG7c^k*nZvbi8uEWra$HTGL21V3Ea{m zHOYRawKXEVC$YKbjhY3O)|M940>u~k6}YbjjXv;!ci!a-D!p4;yf0NroHV>E=xvXu zxvUXeY!*EBq%TDOQ8Bm{wKKlBWf*=4%G>*c;UCVYSwO{vJmz(1P?bp@H$2VJCEfjgb_oq%bPij|fhhy<+xu zvRk&bdd6f)U$?b-4Okp6W1wK1yzeruR<7ntO}>LR2zW?y#qtGE*5l*t8{1l^pS`W4 zcpzU6&x9NIw`eX;ImiUzyJVy6+v8L5&T4(?RdJXtrJf{pXS95hT2_Z$1#?2Wta+VX z+g66|M2Ti2u3TEvb?z@b;hlFezmHrkg?v4xpt+3Cd9tC|+0MQ`&gyIj;;i_t50NMD zIGz&aN$LDZto!tX8Bop!adv5(HOV>~C#a-gTl-j?HO$+qt%O)tzj49g=JOvc*s`d8 zUXMUQ=k{wR#MH}+@J>5>TD;Y-_4D!-{QA_}nm4oa;;pQdM5#)^S(qBA{9;k_wsX|u zIb*}Tc==X9n`U-wJ8NKvJ7j#y{R5vIVsZ6Jt3A!^v)WnnV~*C_8`@b@5?-#Cp(U4F zrCAQX?e%u=_Etv1<&9JkdZ6CEro9zT`0|*W_vkVEzxLMY3Hgmw7&vB+Nw6{oU*1X= zVXX#Nn2CIo{BBw5Y~h8wfd&87&+Aa1l%ia?2J*4h%wCmX^^5b&h2^^v0y53O() z@>vTctgaqEez99FoI0)0jH|aRTQsw~ceLJ$*?-vH*3mjGEkRhtgTC^@hkQd_KG?C~ zaQ!^~wCD3epmXC}HnRtGvWBOZt3Sp$7p1aLXibVa_mI6R z(K>0!Tv3b%{A8qdmxDU>Y&isE9eMx7vW`sZf*S7UZ;ULi<8o6vjP%^RLFPZcfw{C8aO|r(z^-{T8W6g=#G+^zaB5>Hk)2{!i7N zu@CD0Rs5s=KV2!Lk5qi7{vWOX&(i3j^-H@Wdr<4C zekc54Uw?{~o_vke%;FhSO+mg_&L7V9U+s0LSOa4g{$cMv#p>O>!c%9rA81_?6ZF`x zPqI3NLkntRWGKcjxH5E9c5T7PaE~tGyfQ;mj~{xL?2@HXK|Zi-Cexfma5dBePOQ`o ze-Qk$$q%gjyXsZm)C10T)C=={ILSGc^>)ist;>6F|3#U6QK6|6GWCEnw%*P^)#@2e zF~X2d77WAq6NR!A^fxK34Ca7O+qDSvOiMx-nvVwBPD!zvr{kv+_^WwQVoCWZ{i``tw1#hKTD#pG1D@ zsn-*QdYe$O8;vY)cT5sk8CfH0WK+)Gx=30X3Zqf)7k0JJ8)Wq#)I~+<<&&~HYGBmf zR_CYo(LlTiB+$oxVUTru%D5jTYH>(D%q>Vv$;}IKY0U}7CAo3`qkYL>>x6CtesWo- z1Ab`Q^{0KuY1Ya8-}zHhq1qoxR!f?`D_W~F5=0f)r%KhXJ;h4)Aq^|QC^On68>Kx5 z?HyBvVut61P+7p3&im6&9Bieg^#391@PFUC9A4I=!Qo~a)>;j1+ zCU&6x@?h(OcELmHFP%DM-;r*0yD)<^&DH?oGC1WW4#^VHNhB@;-7<9GBmXt(t0m3^ z|1NnDFI`S?|Mjs`hgkQt`*3t)FLWDiuO4ER#bnpnR}Hns#H7^OFAudwh3D;Mde*!mFSYk1QIf_Ywq-W9Ia_mNm@)CfHwkOVb;J=Js}wFE2Fv_RToqBO6?mC*0d(7U*2iQW>~2)3wGN5 zGpyHQUY4&1WLSN}57DF!ls)IEGZ_fFK1P#-1c+m!$rWU+Eo;iR@v ziSw1EM1-B>8EPT~{D6qY2~&+!#KwI)?V{7IP|VKn?3m$J?~J^ARICiFb8n-VEbN`& z@7f&+F)H=!cXD%jnl3jBc26jXf8;xR=5XuejJNMq>Esq7@h)+ZOlD%|caadQA!(7? z6RauUw43C}7`;rUiygzQ`ab*rRzulvp!7m@0IoWFN!OIs{B0jQ!y4M77_?~DXv=*< z;W)8h|IkXdvqxB`w<~x_y~3qMr`O;1Ya?XpzipfS;|QyByYP1P%P(;`GhVWrkF>^y z7yYF!RDl0>Vmw0ae0r9;6M;LkNLM_KxCA`s5^JgpIcw&EK8SSfnpBtU4u+_<;z_qZ z9BEw@Q&MXW9AzzNcjt@hd=-?mueIMFWpxf86JGheCf zYcBe8#95HFU9ts&8@jq+oOeNu*PeQ&l^hfK+`j%y$zbgln!zGuaO(^9BWGG?o_Bbk zW>Ag%Ni0t`c${B|wL`xl)=YIjqWmH7yl?ms(3|`0?tbg3nAwNzb$(fd-T0NAG}`JL zbKzIEf3(%P--n!t%7s@(mGu?-QpT&)wy|ex5YU6y+PT6X^V@fJ@o38zvwpk%@n~zn znB^{>L!-5KwI|v&(VJ<;2=#Vj4ZCIM>ucpj*zizW9j+4Xv3;9XMaaOZB`(8+_zrn$G1WaydV+jG(s`6PuZ`fv#H9&>?*tCZX{NnY zZeW8N{*qXak2x--<4MmEXStj^nRGSQomib{Ph25^NphMo=&D%HOpnvTm_V+b zYc$sy+xOpUoF(j$Ud(hY^WK3qzqC1<%#wjqx>p+Q8nF1*Zgs#x>$j({DM3_44KWuM*muB%*Ap1 z4kf%erkk#Y>z=ioG4C$GV-2u+{ zNNZ?w4hHQm6RbBA`c(?8AlgOiKeE4_AnUi3NF(!7BF7Fe0oEp+I z(N~*DudoD{yJXjsCkuy73F!$kNS!6bsxyyR^*liSuqq05bRwqhb{42??^dc91Nh3Yp z$&rTWMhZ*hZmqBwiA`YMU|;==lk4%nCOJ^MupBDKAatIy-MS#z(jlTOr9|?lqPM}xT`q17KudT+*c5v zTVY>6%{n>!BE7G}(eMhf{GO%ETz#nt7XGG_o)Yvp23-QKL6@mZNPx8LkpxL{{Af9OlsX;+e)2-) z%47;2d*8n2LhH%_eMmL3nUpoPF->ae@7o=xTT{Z-h%n_0Ra``6SG}hu(~y&OuGo9d zR+Ax^kGWVSBIua|AMtpUi9j6ApftFo){ixr`=!_B$i?2md<%MSqTbpt%nv=6Vm0yzvGP3b;<>}cbA6*D&gCwAp^N7{;t-s8^`nDfc%%kSV?(Z-?#1so z`t1i>-Ar`}rlsYLccm!I&p<@`m^Y2+XW~kXp0A1J-n7U0m^cFb9cZy}E6>?3`fwK>*z63u=XC3&voxGo zX~7XL;rXC#9<5+Xk-)ECAH7x}?E$n;WqTTM<#78!bAdy|LEzcMe&8%(FYpB7T3|nM0>V!xE&;tXL#`-_;Y>92a0w(3tKnGUDhSk_ zuKZr$y~KXt8sZ@EcH&&%N@6v&7bBldgF7pC++4Qcd4Xj4yS0NBdYHJBIp$YRAo z;2Ia+PFwvaxNvuZK z6BmIVq(BDnRAS}HGdyr?K5-^+S*HEqObPD3XB%89$cK~8_RV6gAm5|bfTg=dLI&s| zxkoHDb@qqG;H9Osys>2yTSBl>PFw`MlDG=Egg7TAES1DeJ=Roh9vf=GG@n=%g@{$r zY+_ZEMO+5{3B*2NKXE2-I&la&PBZ)nu7}`ov;z~^pu(}lRS>QlsvV@+m^(zVX2~~8 z=h|BEY$s0$xRSUGcs;QORz{o&`U>JA!7)y;oqDOxIGEimTzbpDO@gjsU6cX~%rEic=cz_a^FU~+Ff zAosS|8yezI)yN0lV?zh2->>d4x%l;D=0d4;r_q0v+G8rP9r?jjGy`8~MUEMJ|17I> z>Kjs(nAFD?h@rq)N({}8{0z< zG{k2b^3~J{E>j%@zF%OSA+RHav9w^99` zP9J{k@V64HQs4VZ*VWjjEbZJ{9G#`)DaYDm88Oa-GQm9frWA$wVa?Ga6!CGru;~qL zQm1l$Qf2Dx)^ioBvP_pFV~Lf=7*wqzT#k6jqd_DR!|}jH^{FlCiTd8Ai6bNENLqq; zUt6QbbC8iuKFx?moFfOMJo^qV9=r0HQewOXof7ptco=VD=|TwjVLxjjS<4->^#Mjf#rInG7TnEF2Wl|CdK`UtDv-(OSltpG3c#a^uwp9VU_)p zSkv(fu{!zh{GyBJNn#a#h**^_0KR`}N&;?5`2z*JWeSDT z$kG(fWlMKU&U7w=bCFJ8>Ri^dGSaU%r&cA86g4m#{k5k;XK#mV&uL z#sr2rW&Z$;8)puS!c{Y%j4!Q$wuAwgX2y$j1&sLu3!~Kf1h&U|Blc;-H% zB@Mzd0*HOwdf&7XnaGDZnJ(79qO}CftGQFu!CL5=eU94DI|5nZwK~IO$}kg=r6STe zr4+>HOWn+RLFumO;$ra=u1U`iov)v-`h&o45yP&ie41Wp3ch2?a>4aE@fZzzBP%Mt zmbe5=uMq1nc$(M``lG~}@5T1eYpv8S52Keym-mon84OSUE`x=D6(lGI|HVamxC0(~WMIp`(C)xb-L zec;I>t^%HGPOZ3llKYlsy$JMOg2Q5<41wivHm$<3F_TR4Xtl@5B+e88$?2Gv5oCT9 z)-7jKq896!;es2xuQ0x!)cGTP=A=~!k;oj|)qQ198OAAL6=#!d_%Z8zVG*C;;4R$$ zgn)N^qy3zWKv(gqO%dqN5c_~1BUah_i8DbzdZx-M{>z1bJ+p2Ij1__DBA23x#39f} zyA%yEbo;XFWR5LEbB9#zq$2prLF@znPsEwPUlD7bcf85N0rZip6>GnI z!HG@##d}4 z%R~)EJ7Qg?c7z7-8D7wlOEYlpw67KCpd(tE0DuoM5gEYyh&9N|M>Qt@LKi*{I6ArN z*{|HrTxKQM$8NA%g-fV`M|Xa>f?yl6=V8# zs?JlMT&yWplP42HwUih-aT0i52XO+%_i~YN58MZ(KDs={V_$fq)js^mBd&=gBo6D+ zvO@>;sty5co~XkYZO)GIYF#ri@=L{O@Vo<~P;VEVp>)N!1G|T2{kULs+K$IlejP`b zr@?4p((gY@A=CX9`@oG>cC$HWD_HSd9%LR%5BeYOE`<8jB~^4rz9x{qD_HmoCZ4lAF=x$>M%tnh z7;)x};Gn_5l1&l3%_7EMrtuQGvWzt^o`a~_rzSle1g9If#Eer+9E7d`bW1nr38dFz zW{g!F)})J(15{gqF?DDh)ndKy1F!LGBBkS#Ex5@HsId`RKcODU}({v^DFJwzGrnDUHP$Hnu zCEX8+AaNFWrV{J%lE<~L(&rQFq*peCBTx7x#k-ezuE3Zo6ID{(`xHXprD)4##BBLh zK`r-Us(2T%I$Q0cZzc9}u&i1Bc#fR;yDV;)Pz&_NkQjV&xf;~lLpArk*9vGVV5(LZ(ZZy;7ZZvkVLzhK&QyVLEKuiZ~O5O5(piF|*^o^rc9 zf_&_0J9N91Hf+P|_4Oad_L9*vE<134a+EDz70OlJbd03Y<-L)V!lbjmmqNzbKKt|A zt$s<*wbx-L8^O0_n`EN@Uz0~4^7)w9=w1J$YAV6(RzZmx^q5@kzY?nSes3{F zBwT|MqEcxd`qmDpv&;yNpgER%gZ#YtTathWq_oJUxjcSHk0ttOUW-(g?uVp)MMg z8rw&l3!a~W-Ake9Wcgn^9q(q>djXz}mht}PBX-s8R^P7K@*W0;xj%BZC}@~rZ|uU8 zxT?N@X8bU7j$m^Vm+?@Bfs)SVBH%P)-Iw$r_JN*2TnZIScr{vi>UbGSdG->Az+Xcg zE=4MKJ*Qo)4S^Mki!hFNj?_LV!^yCMJYF0FtBIjhhQtfSQkWafFH^$8n0}DAQi^fD zzLydiydJU1Rtez>L%|wWvD4SZYv)+)0ZqrpeqFrkRe&G3XY%75Jmy1nO=IkAF0~={ zHpF?r$GDl!M7)0!2VtW=buKN2;&5*5?eiV>MpL6Iup)x=(yE+zH=FC$hr ziim4KUr4Naa){NXxx^vp3HQSZ!F1q!7EfbFMLxCKPn^bAF{*u zT0=6PZ#WxRbR`to+=(=AyR(hD)<-zRwN&HU5c}0!E48~g?~UwkMX$UOk7!^(2Rhot3#=33I;vSU zwblOX9(h7>b%H%S*BYHZ?v>-y@wvPtKhvMf34v z%V<9Sl}#OFy^%czWk!A?Vm`J@Me{LT^YNBcqxpD=Se<-|So85P@c-oF74*UA^8WPg z`LF5Ql@GwT6egsbamyR=i3*0)r-NO2kJTgIav3{fZ&+Y;Id^rvo}Xl@kgaio`c)3R zwVh%eU_OuHAm}S_o{&uha4Go}FSAcvXblUeQ(Xirr7SjEn6V~MT?Oc6@dZ_Ce;kqG=`bO zb-q$%HJnUTnYm@4%F36yl^v44632|Ly{u`T5?s2LxOC+VxJDDD%H}pv_G%MlC9IVq ziJMMW$25r%MhPdy{cTNTHnCd?r<8tJ>gn^jNea_C9Ef>#AE}o|ZUnv7o6+P@?TI6E7omhFUbMedq zj!q+fPOHJloy~O`=`60vv^s5@6f)xvvGek*!Cimy=)6{lj79d#rV4XNFtWQX7e+x5 za<+1>1s11*SkH2+iIu06SeMkxi2XPP7ZE4u>A1D#s}85#9O7Ki=elHr#L2iGIkhdH zVkiMqfDIlr>>aEhie|t;Rr4noHJRgfFrp>bR_vj zm$aP5mRz(vKA2ZGYEU_k>MG#Mdu=ohHNTBBWG1Ji0R?JC6<4OKVs&g~6Rwsnu4l=m zF5haa%Zjg29L~?iO7BuOs8=5ltJ({xRt1KWUW0>dpy5Z4*Qa_JQw6SXrceS|aV*{) z(Bt69<7(Q3F^Ue>HkTto6!=)xc<1fV)O!=OA6K?f3ROe2Z?-uTtRRx zH2sd8*2zoFGSo}jtFFKEU3c6H#`#k{2_E~Z0xPle7|28)vd|>>gu>SyUoEhDP5u)b zr6@xshV1v;I;k^X5a)uvnYaY_ZQ>yCD&h$6Gj@*$tmF~p@~StMYGt2^dwP8xnj?c= zHH)>tQC&mu7U~R{Hg{7i z9b&aOGnThdtS7LQ#9oYQ+^O2?XwpqR*_qH-cXEH%iysv*w@~KJhM9Idkkz~MU{Iq25r?I4_F8ODm$tJH-{)#eMnJQE z)ecfiLwq`0=^Dw$k-`iUFuy&tTC?t`dT5D90*c zDlv{wiTiBCTbQr6Sk9veE@V0bc@17)ChJX!fJ{vyF?*3pfJG3k*?RfhBD+L6;Cw`AqxLdJ-aP6WF6FSH}ZOS*PzZq_Wmr= zL9N;S1z191U`dURiJPA`xHqMBHNmY-RO8$r4^uK-iwQIf$=Yd?GI!t&a>1y@SeLD51H!t!6C_)r2Cs(-=#80Wc$(n}z=P{Kr zEl)JzD_~8%Jx6XriXAUf^Nz@*OT`FX*+gi%OQ;it4ByDy=)q9&s-4d}4i= zE;L&Qd@bnnh;{c-p05)`1{C!uP^@RVGI_>M0?<|367rN{?UzSv3BTn14y?!uQ}XqW z+1(TgSlU!}H=6QGaJO;)R&(f|WFC^}_t*cU<;t=QC+!AUsSN*3wtxrwJ67C7BcdxtA9Gx|4Fa+jOpbWhd zv@a1R??^Y3j-UQyQcb-M+fP4X^$8z5l~~n#Oxp2Y0;JHQ~EVYbnuWOmT_D zHxV0l2M(n`_>bGw8I8U#9Z(}D7-!&Q2V%`i3u2A_KUo!F0)X>>5Le0(?)*d?0se|O z13mB&aTf5q#Nh6&vGW-dnG zn_TS%VXfzuB3uxbu_#~tbxBq?8W7V=ZHPPHZd+~It5`?Do`=F z1o&psbAjg&>(HA)tl6Jzco6DY#G2V*#2P?qV6}iS>s5i^M+k&y&RH1?QoEj)rlh`Vi#;BLI9G zaV-R{C9VR#%m@QtKpX`BImBw<4B`avoJymFnHR(W_L<5S)xbRRH?nfNJiL@tiDR4*PJm8js8?Jp6j2oNk@#uF+JK3K< zYqggzzWw;DbxN}`6v=k#b5>Hbdx_pGqG#-v^B+I;7U#>nUQH*CJ;do>~(dBISwectMD zMuptVGl?z8uY}LX=8OLY`FZg9Z{UUxtfe$MAnyENk6I?9M_%Yf5PR=zj5?E28p1BD zSVaS(t|X6UX+5zC`qhwzrg?gU5;>MgJkHC_8EpmUQ^F);>kTTA(^=TWnfF-L+{Cv_}sGTwQfO2gO{<*=Qen zLDsV+ZYEtwKIme)*FNJ#nb|LPGgU%UfK2-8+5DwCUMkRYWyBg|`W>1@%}^RKGUPl! zteH+AhTjr+3Pw{ z>YS^;X|UT|3@EG=oICo!bZ+%&w zs|rkQ7-a?dA>k8uw_d9us$76UAXQhR}OSP!d($Y8Ny|YsSRXJHSBKI zFdBs~@mi1VUuJn_b~3z?Yt(WXbf!>eEpRe%5pW!F2v}YZK|V^vuCt%JmR#TnaS(VX zu^+gKxC*kHh!bM?NYATcy5YqT@FHD~WP>VzNI!^@Z@f`w}g zxoTL8Yf?LQb+q5{a9I(~N$K<`O_rNZ8dv%Wz&(hoZWio~KZ1x$uM?bjiw-%x$e%-8 zBA2h6IC)}Gc#7rZ?bOaw9*i<)7jd4fTg17q#R1{U9p>rfalVx&!lY7hnKs3-$t#;e zCv$C`J>@mo`{&65#JTS~*ZLrOZzNaZi)^)Lt&)$J-h7Y!`WpF;*3+x3PBG`1N~Kgf z&yssY4YM}x_lghC&$0g!sX1@ntX>x3{L_VAdd3NUC0^a~o-Ftw^7v#bbruj~1twZ< zkr4^!PnVY4jl?W%d1a2a6v*Yg773*VY*Z*pde#<)X6uC`wi-?Tm8!SphjN-e?5?OtVan!MG`%LgxJsUC6s{C#h@3n9{vQ#$u@t%a*+ z)8uere1Hmk{RD?7RGXx1Z;&hVJZZU*Eurq(Qp}d%P-&S!dCxt9edO{F5u8qX(Y=C` zN%y7;?$L&K*2@-2#lr^AV8O8z@GcY_xj`eW86jN4ys+>SK(;iNbi`de?Viv5b-@z?!^k zU+9y?Ol0sB*D7YokA%xn&h(#Oc!`?oir^{a@sAQbjr7Waf=@R(c~o~| z2qm(9l_YJ(^ewZbY!9UtUdt+8$dl?zrV*3XuRrP>7>U!ChuBhrmQUCcWXmmV@nf!h zoh>11o57X}$k=SDZmZfxv&EBxw8}Ru-m>O|KMhKg92j)-eb$QFEC1`PS*$(BT8T%5 zA8IWl#M}s6K%58qZNwI4xp#hGB$nXUh%14g1CBnYWKVd@>MZ91KRV+6<~jy)u(7+2 z5?R2rh>I{mUb)TQyF$JV`AUF0&d1lt_H$wm&d~#6dTH6&{&$Vlx$~d{GA5#W(anOOJRK?HJ4l@_zTiQw6c-9d_ARQi#)~U zK0U9MdehT0*dqJKyAIqMnPHrsEqHnkVw}Xhu18FDjNq^L^N0b{$Hdjh^{AbCdLB@i zUx#!j?$l1K0JgX}sKv2yM3zkwsIEI}?N7_ClY3Qy6wP-LnAVU<7r8Ino!%Cvd)-WB zU<#4R*G%wi`yye=7~y8B0#iRSdE{!Qvu{72SU~nVlI{g=`JG+cq(qj=X|I~sn<)ic&JCEW|>L`R7|z6 zUT5{}HiYRwyVI8#g3bxw+Rv=B&Io%K%cj$O;Bmo*3@4#UJ>Ynn)U%vmdx@)oKikP{ zQqOUUj_D@03_Z4xn;2bW=a>x*4(hqYIO(711X(G=fjQMQ00)S578pV7gRswF7)aS+ zFMUTAN{6dmor)8rMLS*Mm$dGIw2j z5ndch42!DBN241Kba@O*DAGPrrV!~EHTBYm+DUZbZavb`8NyYcrCgfPPBexVr zN_fzbFI=vf%VA6HG||joc9HPzB_GR7u8QVlE-s1kQDiH@bkdtGnQTds7WauDR$BSXjqCEjA#Z$0uSKSeZ5SW2&w`KNy|0h% zz(?nydV^&x<}6^vkA~Y09j@13eP~_4FU&2OWe=~AU&fieT}K429ynRs6lX$Us|)+r zDP1kBcvrC(Jf-AGgKQ7#v49hZOTiOM90acWvQf`oVtg}Oo~~gf4|qFqE)-P~M?jYs zWjDyX2@6RIp*iOZ)u&n5>%zgemF|PsruB_BE6JmW;|S_01CNim3OI#08#tL*^~4eP zt3`u{l_KE%Oal7Ii4Z3M@3emsf3wnQGY_LKdxQFt2|WKF9f1L;2odK3&n8x$EEmrN z7mr^sIx z5c~Awk*~3$!p{+_0h_oMxhNo3hr+~Fpx;a!0-i%$20VjUot{iw1o~OT>hv(do#pr| zK{ordApyA87xvQ|t-cuxb2P*1aimH!uXrbMjYoK^h%10M5trCi8?7!qJ+N0oQYM<0 z5a$Bt*+Vv2Cv{n}MOGD~%limPp1{BFc`0PAG0DDRlQp^1wrtniNj1U}*=v8X$r_wm zEUz_V`2h=&S3c)jL>ZQ|BCkv>vHNbedUm}<2xbCvt|nH$F0q4~t&Fr3k}}|GGO?y9 zj<`ayAydwQOuJ&UTt1zOcT}R|q(mHYwtXh*8|J;O5~didKug+tY8W$}GvZdwBRWR3 z-AyiDO5NJPB`r(XQUjR)XNd~nnSZMMsXn^XnQX~$`g}NGu8Ds5o7+sqWc$7ktrMFk zeRkA-W~!BBzyG1tVe;Njg+CgCj+AdfF%#iu#Om}1#6CE%hFG0>nK%b@xni`%>f2=n z`lI2yO7A_(UX(9vY>{64`ASzWW}(OAN$xFHztq<^XfICmMYc#5(4X46&Q#!BWR;yz zY4z;>Ak&0)=U!s<>(;GDZNK00+E-V~r$)vaE^M$eKGvubfS0|a7;kAvk~>e*PAZZX zsRbu$tpb`;I6(vvnZ;|(y2(D0rFpGk_D6|C<5{L4exTI#N<`SRE+}gBIog3|xJHT} zPGoT(QDX_7NsN7$Q}(wi&%{c32@UDB!#rY@o%@jn;DMgZz2xVftqtAxqNT^#pD3G} zSoe#vRWZud6YNJmvifw21xK{^mG5u6*~jvr+TM>WE54FBQ@WfhKE}C%BpGmWt{~3B z0%UHbnkvIGE=YPZ=u?SteZ>h77eRIevFh;|9?(;WLy*nmIY-a`6K1RX;Y=vtYm{nWzG;APh`0;_ zE3ROofs2WCm`)&14h;K=i-FULGl0{G)zKcr$)G0?SK%!aCzciUw2o;ng0a2C>S+zJ zI=bD^;bN5(j`2iG9Kob}UwE(Qssoc1IO(EpZv}F5)8KYT^VK z*h=h!;R?eKyqdTQxRf{x0W2fV0WMM;&M!t~Asa#v$RW;zfw{yH@RZEbaiFh#EFrew zP=Guc;2A-j4D2H=g3c7;OyFc<4InOTn4ri*tP$_$7Dh7>A+80_PGY3asUp^tZX(VG zPdTwVw~{yw^b%qXW(jd-7>e>(QLonrIod%lBQ64-O&*OV%LpTy3B>9|F8S4odBo~O z8hO--9>nTI!iRhqNYfI_h7gq2ZPsz%1Kvxl6G)B0aA-TRc2gyBE%?{Fc*+b9=qree zfQyNx%j9982Uw{>LoRU{@H}EQkWCx{eI~JHC6l-q{XLer3eIH^=YT$dShMRT&H_CV zI8h#jf>MhO8l{{)KezhMj9D*dPk9OJ-Y4ahqnB`yz{s7~$f>m95)Seh$p#6_s_@%f zHYxRyO+4qS)FM+se?)RN*&QmaWG^btMbaXZ0Jxlq#M(KdH<>f<@+zxMIFT)SYN&og zCGs$(?_91p8$k!(RID-V;xfJhJk=YOu6QeP3FsBXdcSkE3zxd^GUAw==JtP8^59Di z1m{wD25^uJJU0<1AiDwLOeA*%aW1frxCA(bxB@ttxEO)N5tjpdi1j|e{tsNIi^vBW zm9DUM5?8@+6>%-_CSn~1<;3dfN@7)7Vt8O|39&knN32fFC$7`eMTixRayGF>kVRaA zXeJQn0{e+I6Y0ciAdNTy9p8gE1e{>_fn$m5fa@gdI9=f4g0q)hpb^v%Yh>GrHR4KQ z&BS_Q%}^O}88WoO@W9bx;&SMJfVdbqmpEB66n5sZl7n=ay`mbM>7r*6*Fx!7;tJpl z;u7Ei#JRv;V$Dz@u?A)lm&4YP3Us%eE>Nk}3O_xzi&&$tCf1{2{ZBfP`Vc_{>1tp# zu{u}kl3hluhKq>R)9E95C)wT!3#P2k=UDfxT(F{K{a*wVatc+R>Q_!jXb2-7^z(L~=mF%=FM|&P+;u z_I=JwD)pGDWP(3WE9KHD`X?*dz$G*AqxSlXd(PF;94JiWPl{Zkm3(M)ro3;@+H9R< z7ky<}r>C$XBr2R_!LG+~f}q8+JrB5!n>atP>^;Adk1B2_NjK1DkA{tbV>SsTz_nbv zS3_(UaW-%@aR7KLaS4Wb1#vF$YT^p$DJ3oi|1#pqd8ibz;(@?IVm}0Oh?Qr6@f~z8 zu^LV!R;AW^_L{G)KI3b!*^KTBypZ^e+s`2I2Z9@RJmxVF*|l{~bMJA4QMOYro@t-_ zjg=CU!UX_4BasF^lA=J_VCI3YLEdQ@&DMO*7r z|3r;<0-W#8lY@v_oX>&fUYYtaKDC)RfPn!E&MxY!0cOsjLarUx^ z{kjl2!d+}N8fv*!N=EPOBE1GOz zq8v8h;}y~~m$PSZKsukjto>UF{4=)~xXC75Ddft4vw_Ey3zzVvyjuy{ z|6Z%UsXxE553`%wuc2Mf93POT?Q4iLV(lNLJ)8&mM_lsvu{{gp~)>DmtiNH5e#~r0Z?r zQqp~(A8{qN)|Iqf!&p(n)h?#3E~W|>&uZeJU9(dLg^Cp!68u_7?DN@U8T0Z@yM_9rN>wl8737dJ@KNY{g5KIz4XD@2?FJeyc;X1VYL zV$Fl!#h*^BdeYX|SN&jh=&FhmTn(|rnRd|+){9|{A@i+9AIB1_SO&4`8$hi7dWmZg z|NcUi#gf2DZm-x2`jOR*xYmVtxp4LBa3j-JHk2c26~yY?YL`GMu^$GOxp<0PJPTbs zIWC^LE}meN2bXcCx|jkkrV&vl;qke6Qd~UAE}l3SkH^KcpW7>SIszPhio`4HvWb5A zj>W+mt3&K+X?lF3)uWkQAOA@{YB^8pSOLlD$A@@lQ%wy9Mqs;6$>qQkNUsI<6DNQ_ zoj3@38gVXg4`M%Xf{Q2C#Z&hNH~7l5m)pi51Zs$LfwvR;fh%1+>s>r$E}j)Go?;iz z11_Fi;DY>WkEfq(8X66uwxAZ zdT*);0e_gUbmjTDT_evi`^TTHZe72W38yHqAj31SwR{jJP>_|dr&XZvg#B0A9e=U< zcrQKAbpbtB^hKVn))lh6wjK~|_UFG?eeHXGvAmte%d=d8E2{Z*E(LK%aumw60XQffIEneh7swd};zKT`qsD4dxIe4;&D{$VN zuuADVlKrHIbW{@;0jIfSdl0wwa{bbBkX`nxe3ffX*M^mF!^cwg_>gMeUp{BKnyEuH zGcMHeg0-HkfSw{3)(}#g!&(m9JW1}1MGs2*)kZf9h}F$7aajGonHBYU4zaFXW)K%c z>15(;IC2)TE;@&~`1=!QBKBS`{!YXZ=xOERKfH?5YZe;*WJ1-zFT`a~^vx@c5qv_r zI`_Vd|4m}m^CEE(9DS0w4EP~Kht37W)q2_EHmNl3Q7~@gGd?v^L_WoPGh8Uh8&qhh zPn~kA6nw0~S+%UOb2d!Xq{B7gYEG^k)>2v1T(_oa({1552dX+SIydm=27U1GmzAno zQ~3>X2=q@}^!JHj(s|QGf04Kh{7-Uit$H3JU2QEO?x%fn8!N?7bS<$8Tt;kRykB5n z6R~{LcFX>J*o7iF8XKopAjpq z+4FX?W1Sj){#jlFc@<;&XJuZa5-@8{nLQ_*E zGSL;j8XAQ!BNT8>eYTZgz66Ni=uQsw)Td68@lE}W-IIZ)0(mgt^p39X2~yzQs6!?| zXT^(0?e2eArzO@SmC-KpVIak?uxI@tk4F`q42Aii1@74pV3KZbLd5YW?p)Y}m__30 zO^87f6A?y(&TJA7;%IFkVwi}|Z$~wu=8*a>hz)(TmOZAC*QdVCHl0$R8f*{RXLT7g zwz%;?zz>*2I|b&D8FYzvi5~o3sXN>4+xJ=NiBCguG%0$8ZPl~(hJBJ0AH4#tF)5vz z5KU4Jqza4tJ_9*TQg$>Unxw3TwFXX;6uSwhNy;6*CRCG@OF(Q$${f}(Qk?Op*$e)Z zuYlaw-Zdmj(K2>^(bJD-Wvd`mE_U z^%j;jtsmdMA_0OT`sz0KRR1RT&gl0-MkEFGCW{HO&PZyv|m8 z(BD>8Y1)C)xxyA9Sec&%E71OU=U>9{!)5brgZ+f)R|GdH` z?rHnNt&Q!02b#2FOgY=1(snhN_eqm>m7o1+xKTl}83@J!6LgzVU~hG&S= zP@j6B!4Nb!Q@1ycrE1#rg1*&-D~Neir0;5~V4=)=(I~S1YQz&<*iY<-;?JJ0 z;;k-R;lkU^yo#H9+Sg-iM2KrSCxCrj!@ADvWHhP!owO$Ppp)#X-?JeX{-8DFsVTqxMBXn?_&eb|D7HmjxjKij$CSR;pr=w%TiTzOx zn0m64F55ZRV07j^to%N)&jrEMr$}Hu%^7=~!iCIGgTh^RH&vL}MBeMfHmUoa{n(H- zoaTbgYU&Sb1SV}i;ndeKoGs^z@0$j(VVl;CNHr4K^G-L5Y=iKg*gz70Q= z+7NKE^Ya%NCPLA}Xvt+dgXtkwH^ntZ%$Qig6q+&MjgA3R_d5%lvjiMN4T)hh4=5K4RKJjx;-*R-w(^iP>K{w#IEbByW3Cy=%4oCiP`e( zXLfy3hc0rYDEhH8(6nq_0LA=aFFR!QXuo81Gt?xt4++` zlkK>}@?&#Ll9ka9lgTh?dUL+eqY2g{)g*R_Os>%pET3QLs?)OevAn7)wWv%q>50c0 zV${4Qu2XwK*t6Chv|l`Iz0zk)k_O|ePf8FZd-7?%K*1-GH!slL`b4283*G)xegyt3 z*mC-Iad{{1WP+Fo_oMyqk%b_4adIk>S#z9TwDW>*g8ju2t84gM`tBE!oM5)H21O!} zAe6u1RKvE>=kzWU&l~Cir(=_PwiDy3oALa4pThVIMX`;=% zADgO)ssMjoikkKU?*%q%0{;;049tSgcJe5$bn(PZcBM)TNC?_pSIK+t7(?cGmkcB~ z)=UQQE^xzqAQ^Z~-GB+nkz}ArT{7URM>AkgI%b^_)2XFhaLgLf_xb_omWgSB`z`t9 zEa~JdD-s0l{^UrWlyZf7QyLz(ut($9657>U9S6>ht*_tOu*c4qiys#Y1)SbXHa0eB z-TB0xRB!d{SSp+N2?gUq1$tNnBXKeI-St-Y*pp_;Pe%UKsnuEGKw?RS={GInf0SZkf!~T8+k+z`{&T7GLmuL$)7tcycBDL?k|sLe6^=+1 zeo3hy{&jFCAX!^lJR=x?h|j4yhKWW57K{YHXI`uNq>(sw(7I98Vc8VlRi2V?c9|_R z_{G7;L_i#TP>cA*QmBKYep3f;llnUCUf8)B$DaQJk@W5v87OETC>U=A?r(AN#W9}I zfr4g%0)Ik%(llLJRR$JS%Nr=H)XXc_nGpLDf5lq5>u9%a@`wCNDYRdCWnPy7Mlt+$|fA>-RScv@XG=wTsR+zHHl=-H- z$&{I<>}SdZQ|>%M#qXJNxhdzH@^Vw2ZOYz9!W7tlm}QkIOHFyNDK9nUa8u4UU9;De zed3tGY*W5$%Dtvci)Z^%(=`E8uWQ!azN1C!q2Xg@H19NJvN04f_0LSX-jpw!vW?+; z(9|`Z@-NVl21l7P-IR%@%(djVaGIWtu4u zIc<0tekK5aOHG+&%KZ`2SDJF3DZQrL_dDBPFy$Sl44Bd~<(l7&ep6Qb%KA0Gn!_;7 z5PsXmh6+>OZORd*Of=Kco5OIdAq+5O zoGCy1i2@Ir@_JKdm@N!v>-ZSNWrkrWY(^!T*v4-&5Hxzi>lv$=6Wy*G@jC@VLO{QFC%08y7 zt7H3prc5#AfrF&KVM>qk%klTyS8S*-(aEo-<-9MnKJ6gfllQ6&6H94 zs6^7gHvEC(+Pft+)n6Sx&R~ua2$}K+qbSxWKF^dhO?j&+i%q%OlvSpTnDT%rJ;s4J zQ-*gR7g=Y+SYqhu(YkSHouRKb^^Z;YUesYzZa3x2rnF3%V9I2cjr~8sH1sy*C{yk> z8LBbm5<@@VlvkND+65092N#+$$CT0bOAY@}EvH7w9#0!%px<#_6713ncZogG(toPO z`f+7c(;oxuzuUEbFwS>hYvrr-Sh@B+x3*5SOWLi1{(y2d|B?QEJB2}BUqG)X!tyr{G|DSWtydk0R{r;Zs^Uw3loH;XRX3m^BbLP5l zgf5V$>v4tXt@|wCyx0zvE_si(?x?A3U0WQS+Z?sgd*T z;)Z#;1+_Qn7HAmOuvEk2Ti&Ge)#-wZG&D5q(D~{$bX&e#=W7B7g+wQ8m77$NyxrH*Q?|A~fIYWOn^X(YCi63%;0L|mr}IGJ`Y)x)RtxQa|& zV5){08s=(Ppv!M76$ZPNPfF+xpO8B~kE>v)E~rkA>k%4vhi8W#o{cA}piB9iPoN{L zgszgf+PhDWhN1_A<0fr*0xNVEJtCvVwV45JLpyZ7)^~-jy+B~SPOts%d=0GK1-h?0 zbVV*~*La(Tts1(@H1TQaI-`eFF36p(Wk%RD(pgN^`mv?HCQm zYB)*5T2}|2>YlGqr`PK)>ZkEyH~uAIv|i_1GE7YM&l_~0d7Bg%)-a~y+qX*m%^F{= z;T;-=AC>gLuLa(v;~&s)lZK@2tKcSTM#gCqPWoqTfGg4o!*s&Yy~1%|j}%<{h`>?} z>whJ9XunTjlZN3Jb>IF*;v4lO)1-$} z>u!nfHk{B9cQl3FVg2O)M2Getct$F!+a-i`KM?H>Gzs3S(_6LjG_IET4X*O(VfX)_ z?X2wI{`CBB3r_vz%=?~wv(J|er_b3mPq(z*tw4{{(&KD-v$o~#Fm2Oxt;f;TA4hjo z)72k03x+|*GHP}_&&I1&Ne~^yAVjQ2}s00ka9c~dA*KmV|^%_pput>wBC>;4<31+5nS;Tg(-AYAwDxH0x z6Q#QS4|Yoobwjh3x+t>OK1epauo+QZ|Ms~gETgk$Z2}L}2Dnm${c!CM3EZt=lZNv& z3~N}RVF!vtK59opBl2%}xOQ1*$+pD6M84*79^^(V;?KS}&y z#CQE;;c&+kl8n0k)d4@&Q7N6l-2B$#C=U>>%^n*PiAKHG?rsP2k1w#(MC95{uolOxSW0IwH~)Cc>)+C8Zb}h63b*0cuw!r&RdA)< zFLf58S|23^EN(=w?RY9sZtj*VxzavuO=)`Y|BW)^zpCt=U4$~@aNRk{_^+tmX@@~o z`6%?B7|cIk2fOwPhwDJn^=}n$w5e+phmVgtKr~ymgnFiQ26N4jI^$-0kXfsu09NBx zb?eRcKy#kjPUwcM>L5_7b*r*g0q)zXh7fGus-_b>x>YR$Gy|$-6$%NdmkET`=LBY{ z!dn39RRq9VwN1^x1zDQ6skH=mZ&P~!%>tFAXzG(xkzm%P^sP_fQ9*LfO%>#fYsQlrmsdx8(P&ef~~D;Bf)*G z>J`B3cD=}TOKwuzSKB?Uqphmf?JTOu?It}Y z4a(WPLsb!M+M#A^{8m5+Vfz}8b?i_FDf++;WvvASJ_Ha_nYI>X7O86q%u_7{YSqgC z)`rK`7ew3mxaxHWgt71O?z-8e%sU{A*2mR+BwM?8s#4#D zIhj2YG&t*>(T2{)4^@p?IOdW%k95XGs}NYP=oJ9At5!5Kv-Q%V3ukjP_JGFuvR^(z5uD!_N3}{AK>99RSm)BC)Ip{ zyPs5R0jc5lL$1^`YIqn9hT}dIWGMT7fKoLAfbw5(Kj=$|ok7Sk*S$DdtV;_Fut3+@$V*(C%TyZ&I&6!sxRU zd$XFl5xx4}19q-zebDx*^k!W6(N2dVZS~WwP7mm0^@DcLUaPtf9=hl8!PT#_@4Uv&w>Ga*?>_)$cCS*mx7a;;m!5<^ za0}CWCTciKpf&FnmDvooSGS<*HeFcLEvg!k<}K=dFbnYaErL-^9k;0aDe+ddd=rDI z0P6aUXf`)?-9|LFbThu8tnzL`Db!WgtlPMyI>9;sl-h>UsHLm9P+Z%dv&kN+nl{;|SW6|&nzdRz z3$8%&cL7u_6#GilX0>UeRksUQn>E}g&~x~9<_?PbEs^_w$z-1JFSQ0Vu?Cn;(!-@1 zPGr~<(bRD|)zj1@EsZ0SM6;B2?BOPL)x+q!I$gz49bdYJtFYEc=2>eLb*76pu2J8i zELFbQ&QhN}VEe5m&{OGaRLK^*hk9|d7NGi)LUlXPd25B~wbJC$wdyM90Ok(TRyE@h z>NgrnYgNfZV5n&=3qEgccP+f;l z9i7kvuLX`Hc*f%s(~J$kagD-w(GOAI4y>nLd}^A}1RQsFoIYy`9@hZJfw0g|LN6dc z&T%Cj_&(ru8ZQ`%E&z_>TTX96`cdGx&H>)nnGEr7hbHLc1Hi+;ajMJY1!qJ2z;T+( zcq{N#z-u+W3dJ`A$8j#FcL3iF9LKm^{4}T$7DsqG!O4xaXgzS;)iU0M^j6@w9A-Q) z9ozyBYdk&^t>1;-XS}b2>_te%206{`O_LfWuR!>DRAVwL{*9i+!-9B+6}4#MB;*hBZoZ>s)>le4Z<<1RbX=|B5{3y z$UbSafY$-XwE^(H&N*pDDf$eD_MF@fd@1mWE{;Bq1INV^r^lfKel!!;D2&&l*_FU? zS-^N3@Oi*-F~#^SNO1%3!1IE)1E(b^?un3|pG!9ow4SJgbdMq)w-%hw#c^4|_$s6a zASb*fV0<_55OBP-VY~x)7&z{Y8812)$^jfV_L3j?D&V*tmi)k*f#b;l@cdl*MIZ4| zdLG&f@!-OY>0BHaWsJ{4`T?Zlr4Hik*H8IMmbEIUnKyiaTYX`MGr8Ok^F1Z$mupo+)0vwwrWpH}r!e z`lPjA2z>!wukn4TuL<}DjduXw3_LElQ#2g%1%CJ?wfr}BkA?xiwT*G8XdYk~FlzaY zYv4{#@f+8t`HkD){tj22?l?TaF&ID9t{v_-Rsau|_=g~aVI;rz8)rcQW?8m@e?eqSKX=@@fAkN1 z`^*O~oOHvZ3l3hi?auwP)tEi@%@yIkexqdZ+@*^LTzM5JjndQn%(ojiptRJeM_lV0 zhNfF;6q!$cv&SA{W;EjWfhCLPL>EVqQ;m4q#wRguvW<7cZu9{Bt69THhb-;|6w(1# z|8&9PE9U^Gi=V@ooOS%NWy|Kw{t4onUWI-z{o+dpOo~JhG&XdLyWj$fYwj91gXtQK z&D|n}5Vt_w`z4DP{ERa0?1B#fj@u!r5a|OhkUVk39sLB%EtU4|-sKpxFdhXTu$0OP zJm(mP@xZQRuFxEP@l3~9XCdNpiWpEvM7RCc;j1hiH0C;Q^hOpC8|eDl{aCB22hiCBk@*hasq)r!1*%UKr@7-)K&%|)h6s= z%&_ zVD~B{E_b4UjVL(u3<58}S(#4`Q;`?!e!Yp;!-xre4)0qyZ+aW5ZLYX?g!=glcArwp zKj019*g^S+BQP1xNvC>i%cxm(75gCYTN}6g5d08gf5ASbQ)byd=w_K!O4VG4jG>kA z*1&n4jwWQN1|L~3+Ci4tZp6Aw^Fxx;E@aM1@wvTSsY58#T=8Z*`;DOf=i!?S508w%0B^l?rSFUbmkz z`HjLZk~&QBe|uA1vDY3v@F)=K*|u}=yA#~{5MJm-t7}ASEB^rEF>23Vdk9N$0pSbb zS&NNA$1AKr_+6%a=N!(vnq zBk*Q=htqzndqN-yjes`^&T*Qikou*MgmJ4FJW?fIvIk{Rk@ZA&ExeoFQvZ6%?lYev z?*(4@2)rlZ-h=b`S^nV~-89Sl9L475PS-`c%+s1)r76NBOX0M2oWFg-O^j2@*P|E+z-U>Yh*5l@qU z$hJk__2@*9^y<@5L1MfPuyVr4hJJxW#Yv-@)!4u;`{CI9O?%lM$}IT*2s3Abg=_>0)a@_ZL#ip; zIH1cY{u~5uhRcC@_8HNXs#**((~HRtV*%FOXEd|l{`#Zke&efe%GFmd+f%vfHe_2% zWxRvHxd&{cKbiO+zhYl*Q@)6|2I%i!vCp6x(|OhI6=t{w#HkBjvrDFZ zrfKOv&OZhxIB4gj8eQY0EjdQ|j$>_^a?mzt1ghcExyut)4NV4G2<=@3 z6D5hLr+#OjQA`CiA`egew;*sYoR4Qmn)6ZDY-6P=eBB<(w)i!qhW5jI7mf_KI{$UM z-&C5A+t850Ld!@shw=hD3=PVr0c`d%ym|l+co*4+!#@uwh%~1ibWv&tyOvk zR!ep8h8!b}`qp+K{puy8hUOc+tX|$BzDECaXGr?(PAGGT_X2gr@9h!&NIaqUw0K4! zPz~p0`8H7}JoS6KoCUKK@u3*Jo8hd?qAHcrW)JO4`JYD2bn4~32)qI3&8)3rtyNRo z?3$9!Rbwy}tC>@bEVG9pD#SY!qw;-N0?JRtN7S=z_P}$f+MAK-R9lY&|7==34gv#;e-4A#Q#P;8=myp&WL%L7i@O?uui#SKVM8*T zKpt|o5)XMiB1I>Yxf`jBWNuacGth(ls=CK{=+>PIEMw8HKp*jclsOs_GoE8!0szsx zxgKh5q*o2K2HB`N(Li3*XIXuVzC*3BE-ZD6^Q`ZP>D{GId zf4yn<;U#}F;@R+!oF8ddgZ^OmsUnl}8s*#%&q_ifnQg=hu?$rtAmgN#M@x%Higjc8 zAM7gLm4uOv^G{MQ{lOl>3;U%M7lXGN4hk_w6vBDS9$3RlgXkRUiMii7p^J z-d5I(5f$@P5s;d>4`@5n$2u@ZEqcqY=H>9{53pUvma%dY0^h?0{(@F!2CA_lKZCqU z@RoIaY#64$itI%!rFtR7{|er%MTZe@SMNo5cI};a?zd01I&M(K`|Z$K)bbY376F{o zOl5JzQaLgvn2Cu8lrircUaNmaWh!b%zu^CX+_v9t97-+SfT$g$-Yp31f%9j!o#i*W z+N)+7YNx+#mse4Sqo7$qO-lI?;|cBqxNv4sm|8>L`S7?&5ouB+wF+E6{I*?Mm=d84 z6uiA2YFosaFayYZ6#tL6?eW~JiB#6dgz!%jCv~;&bB|Rry80bd1^&$%b@3nV+gWXv z9_qq>?2!8Yk9K(_@fkYjski3NgJ58|aR)WY*8dq7VrCE=BRm!f%WE6kNo=HUPiO2Y0dZi5%&FqckLSoa>UteWFxt59aLIW!Y-S(dSv%b_-!AWdV z6B8E^ujUjU)h4m5`n+%dns+d@pTUZq4{sSJli^jtd%rt6r0!Ol zD{d9=semIMf#YahksQIx3$uck7ftg&ATcx*TaN=IMsC7m7ow@*8l`@{MvjT5nO$u> znRN(8hAxUEEHUy3505Acfz-?q)g#Y_wT!P+Biijy16Nl@Gn?tK&|}^z5_(Ht7J9Id zgbwpqWn5-5LjqTN1TOIkoSPzWrcdDbRDoE!bG~9*;3k`_fmu-(vy9PJ)KUl9?dy0^ z-wru{ib*;22?E#s!#0M{>g~#;UBo;lEYS?l)t60ytnYv~q&*IGx`DK;v8-dhX$1Ry zDxlaSFyAZih=zw!1mEuyxHnZG8<|93mRHaU-EEAsuJR7^E%28)1Je7e^bhRHv1BpZ zz*a9>(Y%8|QwKJZY%!zW>d%NN`y6;>@tBYMIp!9h)MWElg{nM+!0scq@iJUk){}ben8zc`Oyd!j@XFe; z_eVuP0>7lj7}K3rdi0+M1B&3jE-QzMnZymx#2Bl z*|jvJ)=+d39B{Iq(WocIOK6LrN$(La8S7vHr?$u#uHQl=^_$oPx5)6W|2&oZpnjo$ zy`Ph<$y26&01=@N`d{cbmi%nP2#@tiPw!2>#r{*AQ3KNlI2UB@%o!K>)Hfk-fNxcg zs)Dj!m8Xmf3_0aP9iG~2rF!5~yWq4XzJVWwW?Dnuv4$-u8E*|cWDR+}bV1n#r6W8; z>PL;PxE`Q#bk*emqeoXyQh)o@?s;x`O33z1shIlOl#G;6#q@CKn}JvN&&TQxTjpV~ zc{ujYnRBXx@UJAf@9TGuZ6>Zw;{%Q~4>D2hzHZDa;l^F<} z0yi8Ehi;&h39GiW((-zJ0}u@ftbzp2NKLOcZnTzr6Bf>bZObSe?ii<-=NcIuY3+7f zYCNUhTjwdYcneX7d^eC)z8rxs;6e_qC=*z2H9+_YSukn)X^I(*vo#d^8Rl?8%xuKF z*F#fO%o@+V8%g2r)Tz3Vh|o$#DJ0H?=+YxnWx|X91Yj3hYdq?{&+L&r%}x2nJ#j(c zA~?%wzd?QSnSJV*(m$KV58&n?Rt~b$7{3^C^%MsgQhHasGmo0|H@o);8hq^_JqXg! zCkSNyo0j#BKc_R9whv9CZZ`ShvN-(s^YIVW`oGy{@vfy7lza+sJ_2*$yqU(2wK1vl z@3p*NTh?pdN3Fs+USrPU4EO#h^Y6GLr4xdAsM4fEW~?-sdmO3P{?#-t`ph)$MR8&; zW*aB67w;k+Cox9lCkTxB);8wD&EaWFubrcIRndC%iY(UMzOpuFUI!ktdC!qZrNlMVDu0DrIcv z(juZR5l_C&D>0k3ftT>mEK!4Y?)pwj&XRrlwvt`v&TbTzMeVzaJQcD?Y_isys@xn4&7uYeSe-! zSa##{=B4VZf7lz@m7~|?yk0#@3I_JdDR8eLj32^S-9GI0`U)zZz7vc9nU^RQ?J{S^VI=2iq|T8?oU+>5xnKpV}`+|-x`XEJ75 zpVqEZ7k^=&7C5%HhHPl>a^DyBjoB27oHTi1MyKeqf7;UUyrrKnN_qvYg>}F2 zkEx+$N-!c)Idc)q$l^vs&gvQ&t?r7MqFXW-xNUc3x{I}_EQsqFG+k)40AfO8j!t2* zn3e^T_G5GpCXwIGQ(t^(f7O@ttj^;YgXhCr2G@$~o=zbu-&eQ-Bcu5!lFq~&Qu!MM z7I+=wdbkSR&9LUQX%XAg$U`71NQ>`aQ3G1;t)dwRk#S({8>xch=vG?Bx%f6}3X7<* zj0NS{LSj>oeP#C?%RI@tLvrc`gdTq_A|qXG(6g5t(P$ZEqZWfxwD`LD%Kn%AQ*Lnw zq6U8h&rWfSCf(v7jaqf*zwG|p;!#M#If+pjL7=bCF;0W4krqdKaQ{T}x#5W(Ri)Qr zRhn1TgzJS^(H4?M5@~2v7Yq)~0 z+xM58+~6(n_P}*22o0A?bCuZcp~M};z0}&L$_62g`spQJQ`}>er-=xt?6gb>gl}whlrY5%DB6ZMV`R<=d?sSOfLD zZ|oxG6=c*qi9%ty@3!}T3SOOh;WhK$n%CqRTys=FvQjgd%-D4bv6(!bIbk_KU!>|p zXN!oWlb>RqPa-F7*xUhJT$T5t+nc6C_{PJVb1no#XWj&!_AWvov`}^Y+kTgOb)17< zoeHn(uuoD~sZal7_vJxwBa(kX8s}qi?FtTNU=HM7jSUn`(y)~v zooda}YP!jg)L6_{RA}9xJ9?>gI3l(q5z!D1}Es;OaLQLBQX`BV~BwTP@(0 zknHpZ9tu!)bKri5U{dPQDz90Qvh{JRW?|q;i|C_tEsAWiHr4bk(z+971DAtA?-^e} z`C^v0|J2%HkdINns2l*|{?X6;#=>z3{BVhSQlO@`jl>Jxt!8XWkq2jQomP~Q~!&BHK(zFArXqx z3g*q{kxmovb;~ECH=q&DQuSxkxt2#_8=?jugxAf!a<5)(IWiIh0mm4L4QFK^1g2#> z#%#EYq*sHO7hz_j&N2a9cT3mFGHP$6yPU9dokW^zOEZkU$2sc(D!i|;i(29?u%~o(2kF1uVJhWPd@{y;) zszU}>%TU(qSeXp2RMzX30@mwbt_-eJ*6T>A=yjx2^g2>1dL1bhy^fTMUPnr0Z~^k* z0v!*oNNG*$Qk>TeR`FD84rdE(4wp-gvg-cVyWMIIm2Mrz-5TfXY11RtG&qz8 z3Am?jH9f3y!C}&^!&b_TR0-2S0MsuaC4hPfn8U}*`lYdJtfq;x0)QpXAlXf8Z*M}; zy~`W(&@brTtCp)re9mJs$PhL7AUs<0xu%oHu(~?c>B~3rfqcjC&?2S}0?j=fV>?{E z^lw7nZU|^&4icps=~AvmW-m7mT&ZNL6BQa^{ZqPbN4U3GRVC z=So-C(&h_UA#aYau(t<~LkkS|6m%U(AIDa-vW4=%y$(m?4z?^}O{OMrJo4{6^H1-T03i2>LHD=2_}e$H}gs5&Rhl2Y&^xPXU(onbL0&X=*cfSeX6xH>qrj zQCl3R*M*dKG_r8s2?*5t`dh=&&x0o5g;RH?=OMY1=_NpjY2xyFgk3K0T_IdPccbc; z=Jc6H)ADYl|AAV&7l95qv(PaDeuuU=?aWpboYKz0;>{9-M;#pJr0^Qd9qE}zkqv_1 zxl*l8bI#-y+BlSg7k5VGGz7ke>(z@lW>joMPJCJbP;M}t%Qe#~`I(8?N3JU|Ct~k_ zV<4VA!Bph|TPH2c93}c&?4S=>yzu9jb8i2sNH>-!!ox6ES^EA@_fM3*9 zzKlSkw`05sH&Ktv5*YzxHWb!Ap+US(;VZj{EX@;rxN(vG@2_2j1>|$^XaV_DhBJK{ z@skik6451zJxL6eS#qebEF{t!joc@Zp($CC+cL&Yco`gl>wny$F3xn8^Mo?v6sXk2 z@UDb&#{`w2zRq+8aqr!Wl-z7I>=6W(_jQa1;8sb)^oW%zV`UquE)&}W8XXwfq$x7o z^+hIT2qMv2qgVy^t63@iTE*rEy-epB+^?7e5?S1_h^3x1N9KEI(`lYjL%T_{Y#FVw zV!Dpg-Ew{dl1M%ul9(eu;DxzU)fuV2%yLHXdd$@8F@1HBCF`-FvUknriW6BpZ<$px zZ<$pxZ<$pxZ<$pxZ<$pxZ<$pxZvpbWh4^$@6q;3s()k)FTtiylGO9r?Fhgtbf^JDFn!%{8F_H6Z3uhx%N^zPWyEf@O{6Cl0O;@QtDx}e9qXz|sn z(PzeuH{A&U4Jcae_Z#QXX6v!lYG}5zpJ$(?{h$js!0Wo%;xbj=9H-Y%GC{3Ku6zdG zOK^XL(`%40Tfx^6fkJ28t}e}ih{>b`iX7u?{2HUO4+2*N9pg5*1)@F8WuzgAv_%3~ zUt$^658aLduoK>`wO4zL7*@%+fHysrneS4h!zOn*(sVbSuAl&#lM|Lal*y3CED_&??I4`VCnQ1dginCv z2O1%RsK2Hz0miLm1{OaslFW?oX=Wwzyg5ULErVQ*dGl8QpbLHt*`(TMA@svFsvytV z(2qJ}Sbs-;o>GoL4V;&Eq3tx@f1l@!;n%&Z5dRliV5~=A+W^P-2i(KbV^A&h7^Zgt zGQ!KNcdo%}g!aeO}>!$!&0wa|{Y$@>qyZQW5(kyd`O(IhWe%2u*| zm}M!XAF8Z}Gqh_fVwtk6{U07x{NGz~NVg)Exha#isEk#zp+#0WEn+a^6&J3GPwJ%a4F^VbGshQTZymcJz$% z-U67_c*A=D#>R&}0w{v!Tn6E7?TNtocleD@rXi4ljB82|ICZ`Hc~571IVsiVVuyd| zR=Ep-7vc89$!&xz>-5#&YlueHdFxfQz!^D)jl)1kp5+xHFdi;5vuV9qi=TSSR(yEGE0X z&R8C8k}oPZ!oo;HMC<^DF>$90Gi|X7cDYyuTU!NNTLt?N-$|PGel|g-y;r|{+bbuc zvNbi+s=vC^H5x&S_b^TT!WJyh&NSj#c^W@~i+EG`$SRr2s~Vhv@FkaThk#F66?l)T zBE6iR_G^$2y5Uu&qP?77ungyg9OI4x$Z!b)Uz~H8Xl6PnaNA!Xl8QMztYbywMKsa%rLE+{-`FG`>PguGMarumyIbpi?5w+a zhZQ?3pOq+fmJIT$>JFErWi$`+meDfETShYl3K?;aF2tO~6y_v7J)t(T3KLmb6H^$N zr!S&NeRyk5=E#;Y0JsB*$T=@oX+#qo`2m5J&b1bo=B6=8L{7~k<)ZqLa(xzDe#Fa< zHpbP^z7GzL(&7+y z|1TWn%fo>3d|3yS=gV`0>>8SvBX-sL1}I^|S;8HK)h0Lg^y7FG7TXVZ99^HyBI?GM zDK`q8Qrw@*G;(9yB8P8DImnI5t#U+`93~ko$RFBAITErs)Wvo7#{VpFw|yzPeMdAr z#KtC4zMqXvq1=t%i`xlSry$&Z{P~h&1tgfE?5T=f$@NR#YLT|x4 z$b=({t-#Nap;GJA^6E`~WBWDfeZw`ym`*30H>(8Tg6o!_4q#fQm12bvvhgx1!rHpSHki~iV=9@KE(VKfqx+IGHv1(Y~&1 z|5EGGk&f|T4kq*8Ah5E+G2VuIUzYC?TEn) zJP}6+$$i9Fo`@4;Wg@@!po`{px z;mqX^qu%?;`z?7L@U}5JtP_`2deFlgxuB2taWRkV<6<7($EoT;&JbQYXpUpJ)WP{> zGRWKbJr+)}h#)3<6|Y$B5}1>jz?>{|yg8W_CtmTo zOAs8(1i`UF5FA_6G}enpB2{ew=2?{v-Sl1-atc`pad`kf@~ZidK&A>F&W|u>dT*t( zvnF|5UGoJ$maZw5$JI6Zadl0KJgTlaqTwNVTwSw79#_}!!_%PLd$j0P@7V43ez8Ig zXDu1bV`l<4Ar@XfW{V$Z^iF1J*(1=timA0b0H!ay?kRwW+unQ;z&QBs?*O2_GtmFn zXCW~8SAOG}Mg+b?;62)B`~%GhlCEEY0t+8}VwADO!n5uvzT5qmIk%@@me~}j$|+IT z4|e{rzq#lwY>iX+}MIMa4<((pJD`_hx-Fu88=vOc9PP>r~ui* zNDC9P@QBF5BPlZJ$*ufYwGUJ^DF(jgIz35O)%V`7&+kd{PJ z?-psxD2Zs^k4c+(kNB(a-U{CP^3(V@pTfj>Kc$6h&1K=9KioN+PeF?C(U7q>L%72c zIBTq93>xPcx9B|)y{*CEAG_UigNAGjRYh>`40ndfmL^BGH1D$|^?Ya5kPY&@ zz z5ZKQq34xVtlMt9pb2wg~6TnMw(t>E;ME;?C3caw!(=eGj$MdADxIOx1YuUc!U^IIyaT*lljb-=L&1W{7ZL2=0#6? z4XhKH$=T~|t|N&!<{lwe}b8 zp|g$^4|&3w{~q`xOhND6@FtOW4ZLmLQ85QcM>@mV97MC(9K^m9r8rN_fu~Jdt2S*8 z5TUIV0%ENY5Nm~iSgSVITD5s-0i|vnrOg3;2|}8aSbFs%ztQFZ8!aCFFKBb{f=8Q! z7tj$pMVo^cTyyY(YYtv;&A|&|4x(vt{3W}#Xz!N%yah`&=d3&d)g6t{T$CU&nF1X^{n*V;`suh)t)yz`#t|b2(w0mcd$1FlNesQuJmRi zfLXZ}^Tm=h1Xf_S$lr!QHmvmDPC?)U1U?TT@P{Xmv>buY5jcaEXIW6KAK!q$Rs>dW zLf~;|*U#~GD7!I&ZXN$D0y&UH`78RiIT%>_lA$BHMlals1yh zY{B|cUnOKk5|I^PQquJ9H<7p18upC7s!QZ8;dLLZDd&^zGH1XckIvD4kkZ|otUMlI8tX@C4YhGFG>ca_~uTeb_0f`2^5|-_GQ1AVvMG;vcx(mhp zEu1mG+!9zUYuS8#K$EXeF7ow3Q@%d9$kzu=`TC$KUmslL^T9;}ZfW(&MZP|{$k!(q z`Ez-j70I8;7ub>f@%(Tyl3&h8ZIS%q9APA%kJTdiM>H(%A@Q>8>skHYv+kn0B_L0M z0=!~v$&y1pJn^Co$!zW&w+Hs~C0r~+x-5S$9~UO_c|L%R;VSZW2#}KnxhG6!vz*X( zZ03bBk;{=dHlawoJD_}tz?Ryx7;4h`rH!kaHu$z}YyA}zaL10FtpHCvvHLdw7&b%W ze&fEY5SWC(@9GiwNnA}GS{*^&;v6sw(0KMGI6=o9Q<;s`FnkSCf~MR6_q4P`IJ zA}O1g62Fh5#7Ii@lpLz7E|zMvmK9-AtGyL7^XJvh4;o6b4447e1eWM`9$j(MNim!n zU%UHL#2`LhRQO_skun2c=6l9#oCfzINSea(S)1d5sTGmOG;H6K=b_C>*#e4{nVg#HpR$kL5mE!pnw)JF|ymK zW!n&x!5P%sAsPQIo@tqATHm4&>VsmedtN;gcFtvhy3g2 zd5C&}eyFhofy!FPm;^W4@3f=NSV~pVN|jxMQw{t?#~8vxOq(gGM+-trO5$3)>v@DW z$;cFXQy9{Qu)Aork!;bdr^=A*W>tqtMcTM(!Q)hsIr3+xTSjG77>uKFBlfEOHO|lY zH*`hN8&=N6_^r7&#kdY9W33<~ed>zKZ|Me}@V9jSX^wF!by_|G^Wj#(^@4!-Fn}1q zR~HDxgnv`OIWesk8hF|4m?EiW?km&UDB1VREu_~ndK4@|>3X8>*tgejB>QJK{_`c3 zH_jQ&U%=ak^uce!I}F#RCuu3qWx(qUv5LHVd^h@g`MSLZ_fFS&Kl+2ZXPgt10{}$w zrR{hGzJu#?E-L`B7L`s&3fGW6AMK`9Pya3KxE$cbtkLvErrLviN8w>}p7h9ZuMbBT zP$Qf`@D9YYtcb3hJo4JcQ*{sD>qs$CxhjoW{M;ttt1j5*H@>wZ@I|jhlUo@<`NW-Q zyeUXWF`v5EktX=i0xiR+wF5=Gac*|w!Iue6-(&2yuJbneS9*Nss6FGIi+SnOgdBtK zhSv($q@|jWI#~#6%mk+=e<1EPmlQ(0bb=GSh}JE}47{O-QLM~BU=Q4%;3~!1B#L=t zM~nGHJTicVh$m$HgB|&)f{9nUI4zBr@idSDKhf-s0%WviGKlI`i@v`Q z)feSVcvwRc+5C+c%wF`qJR;L?ga~1MUCQ;c3h>H=FEmgP>hp*$TI%DB$MOk929K&p zMlqKX$;g-0QAUbfGiDsoP@ni^=+#j}#t}I|&2T@X#vF=vxdTDQL)5oPu6Fcwjb3gD zhc2Vt8!xP73Tv5~wM@-gCb5S0M=~{UncVUgF`YpH33+Lh&i5S1v9ycFDzM#wNMA%vi4lxYFUS%8(n|NQP{jBN_U4 zV;OQ&6cItUq_QfsG>9Px3P_$%n1@c~g40<%?!sA%Knp|zk%ShVD@ZB2MFW{&#M0!!H>K zXzm(x%RAW{KZ+XL+@+^<$Lj5k9y=L(D~L{?s3jy;Mv@*LT9#T9T)hxNtpXTM=c16P zUM~pKNv-X=D+F_S*dL}^TT=1x#2Rm{gPCx*m(Gkg@G@xywx(}BdHNLR43pQshcAGI z{Q@3sE?oh zTkN*KtMQ9Ah}ny3vlrE7FUn?**wXEmaw9T46Jqru0+KSU^==PmlH49?rEarcMMktd zL^=twe$@YBB%&IKbx6w4PiBZbl6vGP^~g_Vh&+;dCo^OloovXEeRMKo3GbspFo1PTe&?@yhgrouFZTL`g4DxOYm)%2g;DHasfz=; zZv(n-1DIOq`aT-aLJnx<3TWjDXypp*V&#ekq%qOJ-V%C;-=cTj(kabcNy1Y+QYvFR z?DmH6qg$g#Q>E{3&PNS2(-e< zcb=Mfl5C%kW=ZXwdYA>fbF6H5|EoJoV$B0_>R2GsgXq zKiRJ1_qc8H9@kFci+)u#(^)==7#?*g-X&7o#~`o-P8Nr4vX=00+asdHjS?r@oQQyg zMT;M0p686ckcx|=1pe;j%M_U77(Fsui7yhNv@_vZONbsHZao_*PS?Yt28DbYA;E%w z;5?_CC!Q%NlfSbx69MZ>{hg&xPdJHO2a>V)W?JPf2wXDHF&4p{p_jj|p34MbVmhQ{ zuuKq9nLMHxCNy2(3YS2G*dna%iP>1n76xLOIwOzB8eKkR)EPT7g|=FeLVl%}l&j~U zY^!2DKdq~WN#l2<^wSEubBlUB$ zc~c6N9kF?2o0`=Vm7=TYUW%?SlFmg(8l)yonvht%j&)g+IZ;n0nldR9m7X?T%Ffd~ zmLgh6A_gS`ZiJ?65xd@!(ZI1Tr>=$UN}7~Ny|W=olopgigJRHhp;4(GD+sFI6iQk= zB7-aZ<9ha^hK=vxeEU^+tj?XCJ6^h6_BSZM1Co#B?GPY5dnB^w7LJq~lsXg=jLP)i(ZE>DmyZ#Tz7iFeR&;2>gOuVTTyFDv{tizkKlyxT)WK=G z;O6q4r9VZ1sWo*SU`vc*%*!m}j+-kZ&dWd}Bf(6O`B0bI85vD{9Y=!52 z@Z@(FIAs=p#`)3tcp^rIZWjUxIB({?AK-TzuwGMt?DXfaPkn~yMMQH1f&ai+4w7&A zu`}pLWZZ^bftNNoI|`K}@N>94BxA67`3NK?RuZF|Bjww=+RR0S?>LLe6pF?|vYe?G zJMtCMFHzo^sGC19|Lqm(7Z*Eyc&Zt&0EZE7!f>_cVy9OoaZ`)&zJ`~j{6WNr@(9AuA{hIuaP?=7oP{p<~W7;CW=QHMAH@TmJjJ& z%PuVP;mc=vAtUFDV_#19U#TUTjX+;GuT$@(FXh%->erX(mW@Mv=NFsLQ3o$UE2w2l z5&uurQn?a==i&YVSK#*tdXZ!yKH6u+@B=do9M7k68}Fz81oC_l)Tq6z^q(o1YdCtQ z3{A^xS>88Lh>_Rh9RTQt@gW}6VkJ_FZ$h;#0y4fJyYZ}#)X(dj5kI6mu>n_MAyNYG zY`8YZ??|y!wP`I9Ai8P!UiZG~Z%64}ztu3u&5uRNzw4Yr{snmxB3TLVLSP4+pT$yN zRhvT}*(09o@2>Z%v!YHhUp};hhBcD@i^nHdscWLR?IjtV@>9G}qN}yR2z;~@ec!%*oxyh8&=uPXTS`~%n%ggK}$E7IurJq0k=eJX+q3IL`+iB*+NoJ zI(k{{6gRL?la9Px%B!yV*u4glpJ27}LSj>4-E*2wT#autje|gfJ?d?L33lrYE$W~w4}$5>WPJMxK0i9@Q@=4clWyr_ff{Wmb!b6^FD7DI-v7|zk%0vv!Iti zS`U&KmfgnXfS>6+7?)4Ybqe{X<5Lh>c|N==;g-WWPUAiJCj?dTf$&Q!my>y+k1#Gl z8m!0WzbfZ4r;7h|z|)8d?S=O$rDb;fRh@sC)B6;%A)isw5qSURq@vGI$h98JP>nCx z1*g+69qh>Bbt`W;;qA}{c|RcUBJviJcN09`RfR9WovM0w zo)hBhfa}~+S6;1hFLws>w{3S)4k9EH^;c$JIcz&Thd%}n30ajgXlvb!iW zaLGLKt|xCTdA}m>Y4YA6?<06as3imEI|I2TFS>R7?izLBe5cO{sBZSELaxwUcsIj2{6XY|To{?2 z>*#_zAwLTa(`V0B{uRz3{$~k0DcdvfUWW5#wxjqVMG1A@6;6L1K^>I-H9X^5>SZIL zRwHX6Eea>W1rSS%l1^Ox?h2=8VKa{Y_P~X8awo3dSm5-GP;+lXQfNKAd*P^Hbcr`& zSudhAStg|#MX*IxaBeZ3I2XhGeMrUp4c?brOzTD!Tj1o5DaDJd$#8DYZaCecFUE)5 zk$$iXO()K!^S_se+?&f;X@Ri5h{6=lgm1? z;5zi;5_s3aSq{|O{wZEcmfqkqX29KuSnkZOxbDmj#HFk_)|p*#ll}$O96$dHD(OtT z`2g)7;NI0`cEhPm{L8AM8}WwvMqfiGk&a;eME}xl;`QKv8a&~jtru5_4xzL5a=1=e zcg498I4ncl@8R74qb0Z&KEDo`Zq-YHnB;Eq!35(r1oZ_COn*3^=@!SWz<-Pb%}?N- zW;$HU9*1|$V`g>#XO3J~0}76>@)_^Lb*-#hoUY7!i_ho@7g{b|bv)iRPd5K&Fm%gw z`OjcCB2Q>FymfH+WHG)Z8ur#2Q&ec7Q^4kUH&GjgqeuSMPwI>GX-@N|${+?N;nxKQ2WK*;|fplLVo#1#uxOzW3ltYh9)csUxiz$le^-DJpBAH>KKM)X0?*>2lInfaUxZ0WgJ-H=SOn)K!%HQ$4oCDU^TFgm|tA zNAXLXl1Yuv_>70)E<$|J4|Ty8xs4CKMz?ry(;df43D6jz?TlCFTxX%~{H|{n0!g43BUcTDt&2z{_H=><$;Vpo} ze`mW#eT~}tlL=@-3~x~GLtq;vV>7aeAa6#hu5n5l+F$e;J@$f2L=%_YacILRZ?`xz z4P&M(wZk1V+%+F&80{$Ite1R-f2A&`8;)|0qcLYe?Z0%?$JaRJ{b=RB0U2w+K&Sg6!HrDD2PJlO}OfXb640!tJFQ9mVd>8_)rAi z`EWQi!B5tks@Ugi^?1e3f2xm{I%lw1-9W@G@OHxCpW!hv`yf`4Yn?${X*-d90`Dt0 zuhR;$a1|DJE3S2lxtyY#K`UA2syH%F0TTtPGM6R>De8&-_SMk}X?pY|Tir5>2UQ%gU%NTefye6q0!=MDeU7 z+aoNJMY32)lHdD#@0p!DJ)U{JKKK1O=bm%!|8wu1JM+B{8a+COen?fXqX6S%ZewY4 z3g(T<0cqd|2KL3R_wl1Kz8RAU_v|63F-R^}%KdYyx)mMQ?ZwiuIUe#D?cKm&6yn9c z=4J@_g5N)Abm&<0E7zJR+CVHFYalEQyu#ouvw=pl0hcd$W2tdwS2=i^q`;pH>~mZ@ zUFJC0wN&qdIkPErK7-2;J1ng%)bwDhX~t=t z!U+zw6U||q*+azA!Rx2$N$i&vzGm>V*@88rjmv_*X+{sT1L*uX1$r>ZL5T*VUYTZe zyTqU3P^GC3)t6jp+@7}H0oz)+CdR)5cBVA-1cL>S2RlvY$ANOp4WaUB(z%Z2(tkK_ zrgbvMD5M*XOUrEn{aQEKeI(f*qJ)(&+)ay?x3)O0VdXY4^nKsNm^-at!#8oD5@AMm; zu8`4<+PgNS zegt~DLp^~G@cwd{0eiZ2MzYH2V?JZZmBZRQmtFjB1`ncC`|Fwdbw0v-!MmvPtw^ETDhx!#I&y!t(ng6dmPHM3-!M|o29jrTI zDr8S$P>K?bzz@N+nMPOhW+)`1{K0+cMq8hTzUej5GVy zU&4K~C)Rj;I==DPxL~hYM$ZA^OZl4!s-Rt&vG}x;UXvd=@CZw7=N6D}bz*v3U(;J$pOUI{~d+E2g zvufBmV&j5iA7$m6z+%3Em7X?)sN zpSvm9G;!mlTPfyTa)U!vq3G#3F0JoKJi{F7dStyInr_@m`{Ldh9al(hd6;=a&X9D~ zwN&^4MK7M>(|RRQR-If{&t&LEhuVaqGijx7(HXjs8tzb8C|W2koyp(zwsU%CCpAX% zr4r@5XgZ2+=jODzoqf$o**JOlB&QF#b_JfZZUCxiNysE&Vh6H76Q|Uk}_6!$$#wjX(9NkWH z*$ZbIT|4F9>QLiRwON&iC9!ny`^St9qg*4nrbB<%cKkRl0PJO3v#`YumBK=VZsWK? z(TT*;v5ug$oQ~iT2J;aQzTc#i?h|SVc70qrf>Cq?|BS7z_;mc*ij50Sf86M3c3!T< zG~R)M8zmZ%w}WdQH_kBcf``f|>G=3Xz~e@5^DFx@$(zSuJ<2dVb?g%6EmM9!=TZ9o zEE#0Wp#M>4@X|R(*N(2c*e^0B2D zw}jc6#Gn+JU2xhH##w#Tc=`%dMy@m+pJq2|;yzxk51Y#c$2>tF;lIzJUPpDhUVK_+ zNmeX-7GEu?;Vu<7zME5Z<1lVZAJmdQBxQI@<(a^)gra>;eA>2%W}nm27gxdjwzH4^ zwzDtSG?R$mfXbfM#~9xRNO}qiNFK|1a{9mPaLqQ^p}L}I2Ng?a%Ec0=X1-U6Wd@f% zX|(r+sIVTnDy#{`rOgAL@A9TN)E_ANG$B4Mr~H%3=z9JVhk6=C>&2(ddY7rVOkL4E z)xjT@V-@4m)&!gLf|KTQ28vMpFlx}t5uax3((jpH!LY((gz6*+PadYI`8p-R+?swTZN#V9C%9*A&I_J9UplHe>_(_kSBa&AW9Rc1 z^zb}~`WQ9n@o{N$*0~#y1`m|U2h+z89q+-UIPr;KiW0t>myLSbnqGg)Oe(HkAG^0F5> z)Mnkjl(EvmQ58nlwB~BTSD&IYH19v3Gt@GskbNg+9O98wcdluYOA`ZREBjWM$!PCm zQl{VE{`0?*QQ2!4>_A3_JR|n@tB_MhwG1}PU>5^kU&j+EmG`%eG)N;qG00dZjYu#J zZ@)uQ^|%Z&erM46cW3bF1$<2)_fI*LGjCze$0QC({JWS0`HafGmBAZg%s+8?`{hYf zLuD{h2IFMllfhgD)1MW$UItqwxm(=VGWb=JDaUYGon)BJV0wRX*T`U$48|XG2CrLa z^cp6sxQS^FlU4jDrqyz}1$Fb=u0Wr_P_8}3%P&Tphmr>-_DmgReIM4B^}m7uB`ErJ zRxBNSccC%t=G-+7br&k8IrE!8_Og`iDQ4az^8J#}G^I=|EeA)cimOYRSUNay5xYhG zI)^%C{eQPDc|Fi^-FAH1YCEnjZQIi)e_LN%$+norpd1-`qf{SrvHmv8O57!b{jA9| zg8DJo4yo}0g99j)ue~@N&1;mRvF?W8grL#Q`~ogx1;vPNpiW0zR+-=Pg}w>a1o;9^ zc9|hk;06Yx%mQJvfd88yKi07d%#;F8Fj!(1Fnp4+d^Er|1i4p2NsMJ}i|9iOo=m*5#ULyw*_{vHC`(0ba z7qY1b$mW5;(LbEQ2NoMW`_ylBs7~AdyTg&Z5_FvMGBdHXbU0mnarIitcZ5#!3@KN- zGm&|vL%q1Pbhz|`?zbH38WiocY% z2`YaFms==$CWxhjuP!mVq`BU4sGCtv@QWoz+YVx%NByg;OLoVMgOpt4og`iW0-dES&7ysN@! z=ZkAV&xGqkhdK{M*FaqQZ)UR^&J>9wk zub-aLuCZ->>)KY47DXA}^n4@NxP|~lW(M(A8hLh9wI_9sU`lg?ujESkuKPvJZcBp4j zwQeAm4vu}!=-6KN;^U0VPO0H46eSwDe>j3mo-?|b-=5@>m3<+D!NIqlAJMPHo#Ja#p(X{K=k@)V7TW@58s?9aUT4V~ME+>OYBXSRU&~ z$iu7`IYy{@=DQ4bqd>CLuo@jkv#JBH`cA*y5xj4ikz&rop=jYFm~bNNk3#0pE%=E9 zx4Y5j8ku3P<2x`&yp90JPSs|33;vjqq1p^j}*7 z+++fVrV#gqu^m!^>nn}k9iroYBfm!~5vLg^pR`~CKP$Z>I{JD>O-4NwH`vgA%T~Fb zpI)zHumNpH$xfH-lAEzy;Q6W2K9OGz+5diD$GE${WWW#K?_0rLmP|-?xLk)*J&Tr7 zOFoHCc3>1u+kfmPb!7j$lJR$=mvo&x{515wPS3*6vyGSZeB1c6j;TS%N~1;dih75U zD~V(GB@L`h3-(%ROqQP>FI#EcEIhW-=xCl)=$8nVnX1|qCMy>wayhltXS0^hGf%~j!5(|t~>@SVp<(~q^tIYDXR6> z7Qv^UH(JZgtbE?+B7Ez4V}LNR%DCEBzljOxkE~U-(NOk0$&&o+|B;{nKk`fdM}8fG4&H0W0BR`87|GOFW{Ez&?zs={zdx5_lq12}Tk?(v(CLElx%IKLG`X#tp zbGPO(&C^#~6u zPu9mLkH#lmFUQr*j!$~xlLhg~qWEN4d@>ZD+!UXzjZZebYy>}lHmzN1(H7S2mf-9) zM#rSaSB>Da%hTGW4|$FA2ddv9GaKB$#>h-^{hShfe2vi|Df=}e*lJ~3dn3NkptVLp zQh;&)4yCnE*=)A@>RRKnV8vRaL(1#XsdP%*Yy{7#Ol#M+fiiyb3(yX8yzx{*(y77H z8Y4GplayMW)~?k_CFY&hA;@X2ASw5CbJj+NjqFsXUWTx7SyJQc)-o97Wa@=G95%)$ zJSQ%@BJo0`BPI>eOjWDSYe)4DXQoP`i1t1%0Gxp z68@P~&-=g{Me{E^bO<%I})R=sC$ZX@!EP% z-y~JrDv3joQ@6W+qH;;2{G-oXNr19`DXR7s3VzG18B|O|KP0Hye zMXWnT#H=sMvBs3STK(C+=(WmGq;DLu0WwQ$m9yHjBvcOD@&=OU zVj@FqGo5!zx~igXwr%MKlUK(6;jz_ylDrV@<=gUJJ|#U%g~^QAGMgyq?vzHy=X;m^ zQ9fR#E1z+i(=}&nR%ou(+^kurd06w9=4{<=NV7_FgJzvYpK8<@sd5nT$<*wn>CwDS zbEIaGX0fhsR%XyW-CB^nhQ%i}2WzHkM$%+F+h)3Hlp3g+sJY8&HBh42U2~Je${(tk zthqJS%Acb-RP#iNmA_tdyk@RY_Kod4`j=0!W?#+qdPz1VS>q>b_R>6bI{Xg2+2ZJKgTuVzopLno~9m71e8uhz`gbZQ>| z(<=YnpN2VowO?n{YDP3enzJ=0YUXS9(sXI=KW;U=MRTcUspjpPgEdb-?z1X1(c8+W zRv7CEu>|2WYm`{PIhyUPyD?m-;Xqq%(3f zGc@1-!m9A3=6KEinnUWX@trlte{Q7*Yj)8*^qG~vMRSQ}sZW~%%?!;wpIQ}`Y8Ge? z(44s68lS6q_!BD~)?B1HS<|h#<3CopN==_%8?WX-&CZ&~_E{D7Xl~Y=uUV)$P_w0G zU7b~Li{>oNk(zxh`c$&cIQX$uVUcEm=0MGsnhkrca@#d4G<#|uJ!*}grP*Ec$ZuBu zdQD}P=lDDLku@TsS)o~?nWuR|?_}FGmumVo^K`?Tb$?QK#Air273&O7}dee3>4?0 z*5hA3sa%(n+8=%jw+Qx6G1sT|Pm?}tozRSqJJQxFcTh8$KQPnE->b_HIca=HF2?Pj zI^RhXEYTH;G(Xb~CF_Q-)*PuhS+iVogJ!K}gXR%UrDq^R)A!v;OV(Z&4C(y7(X^hS zS9SgdoqktyOLT@c_h_!xbZWXZvnO5@AMj~*Ic0UhiQ({jIP!v^$gC` zEYXaPAEnFpGubwp%@v8BK(CEoyk(qz#Z#`NKrksI{iV|iW~BM$8x4_sJP%uGe#vNl zN;dAxNI&OdpL}KRaVa$gi4VcO+Pev;Um`*Eccv*n+^>B-yoe_gwd8wX$4tiI-S9>v z|4i}2ZKw(F<+;a0Nb&>lRqZ3~IFxHiC?+gyMBVYiv)fx0a^bz&hv0f7GujAUrM z*CLsK7fwV{#t$1%Unvg@vMld~&!9s)ecVrCenj&7tlSQCEFJ0HqyjvzleGjMctK~S z7Lf0OQ&BbE59^RDWj*YDs^#(^8Ii`H@({73}mi$xKsOjnAP1XEz9 zJnSHjmaqy9!3#e@Bk}UfwjYr!nXtz|>X0uy3;FT6@aUyX122Ebnu=b4vK^z4i za0tORSFopwhh<3i-T>T+#*tqOM-5hdzr@nOS*Qvhfd9ObJs$6eFCdwrFig9OiIeYw zfvdUk;6MLD-!=v#Nz}rls2H!VVXl!>&V_4`tm-iAHPqU1a$!D_!&UeMlJX(ggvzCz zYn8ejNq#=`q6qoIMW}9fnoor=@1sVU3E25MW&|(10VVTdA>kb;3tt2uM%nlPoRClF zhWEouZeSbZJur-l@xph8u`}J6`_(HF6S%=sp^Sl}Khf0$WYyuq0o& z236vPFQQF&;VWndJ_4_tV%5!`!tp<*gb6Sr1Z$A|MqSu-DytnYbfb*_uu9<>s59OJ zS3baDi4Vg*em0fl!V6yO6e=W%BI6E-Eh{|P!GydQq>BxOFK|F6gR=5qM$X9RQv zSW3JLWJR=_Kv^-8~JAf`CfSK>&(RG zv;*fODHDQ!ZlN2lXGY&(heoo=yf9&_QZvc-xiAyoVrL=Yhg05V^?reeyLZwkz8*IH zn{AAjmwcW16<<7l$&$fC-_Y-W#hDFuX|N{jh7W4*hd&>u8fDa?k-5Zh&3X85*xqp4`3b7vTXs@-*Wd)T9Up)f z-jJYj4za|<+x%p>)lNO!eP@EIB0rzEeI6K_pf(?7hVJntC{HmXeq_RMUP*%5)hIh- zg1TvHf^z@F>VgZAthx|<@u37Yn*0cCH8(*8erD6aVMw;U7p@8noo399f26M!psF#&uSe*1ocDnH7qhRzRI3cL$m zgJccm!|9*0CVyx1!S0{4CXUfQyb_JZ3rC?MywJCjK^Y0*=cocNOsh{&)p!@|!;e8X z<2^zoOW^uCL5<+aSk50TF--rKM)C5n>T(`L&BV(CsgZ|h6E8f9D)I6V>%+7}wdoJ~ ze|fC7farYrpmdcqdP}^67o2lGHO`E=^S=}2bC5BDQEmCFOm)$@~-Z#ad*m|npoRn~(> z;p(T8R0BQ?KdDJlqkHnO7Ix%Gr!*w77$4MLo_>xwo}}`!SxTsQ!s$JacHq@LdD4l` zhe!FNan%JZWQZsqEStp+H4kBN;4He*p@1R1wJOiGFsSBeo!19S{!;|VrK0k1R7ot6Qd3xQCC*23c!|~mD5Iu~B zU?mTx>uzNKfZKUMJ?JJHgJtgAC9a{QGG|#D17Xb6jgu^!1upQQDtM9F#O;^irR&* zhYu2q+IbIk;TK3YpTwvB2N9yhOQdMW&ny`Gf$L}H^jZ=!!Vk0gkw=8e60!GTB!%RM zAN!D$sfRZn;juhryzrXeQ&jReRy91IAA|JAd!YOh#GDwMuYCwcv=`Qkm;PUj`opRq zbZam4XfO0?FZ63K3~4WnXfLeSUZ{@i_Th!vd!Wy&6T*j1uzFd70NjjZ3DjRH>P{qU z!lP2v?MQk_dmLwbjAwiNXNd#-DXOGRVZTHIvf+i-qg~_pDqYNYw4V`v_y>|ZT$Pln z?oK8Ij^x74&g)af+3Wd#7+knAz8{0JmV@Bfc#u|-qopGrc(xPCpyI;d@USuJ(1EzPi7Ti z+6<#%yc@Q-kw`&!7rgW)BCk!M46M8*RpsHsFnNUKUC=W!RaKK;1l1_&;)UmWt-2mK z;daaW;Zgo`B-2%Q5@zt+yL2Hq;ci_BcDaY`UBV2(%yCRaJj}e885Ixn$Fr*OLO*g& zWfQ=#_QL&0zKE!Y9qzN%P;)%csr3I6DD)ZBnaaY?P%d8He{c}VDwUT7EkWk$h0*At z!Xs!X<%KOKvajG>(0M;QAig;)C|<&aPDYh@;S)Xvn@9xUJ4hx_3%};~&pXI(glA6D zGXbMfLxr=@amomvL9PebC*bQy?xvd~hEhf%iMF3iSa-?@&qjUmzFbUC;)D(&VUHgw zaYWakQu2ix(E@w~{*GiuUBnSBLE`;zx%T#$q7rLVO=XFxD;$V6;dNY5pBY%x9!OLI zivEZiC?q_Fk{>ioo<{7@OnfdZL*4QA7@`teG>O=u9`c1HXgJ;;LsVjmrk1h;lAl`2 z@jr+}2?=@m=R9O?WB9-{CL)#Li0PKM2Nab+qq|XvGQzgBwE=IBCn|A9OVD=mg|DDG zd~>W&>HqD4L?yuJS$?)Fg@kp;RmxAV;AhBljp#u!jycLyA7kb|T*cr=wkXKU|Jv4cSA7N=Q-1Og0&1gk8{a zyghO#Aw|_xlrhaP8Nj=z(f^BS`v^8WELL|dBNmZ(4;{b@KSWLVdU)fb))IT+D`o7A)0qhv zjSMQ3h@Y9{+arHUM9{$~k9^@Yl#drajJ)`O57TwF)#tn6FeIy2{^dGX`v6>nX&QL>*S z0!G7#3QL#JfA}dRrV8azC;}Uid58Nn9SIUI9E)Uzir@((Yc97UmG@AwN~!CCcOfYg zfb~e~3bU75`SxI>5~Q@1?^(7bm0Q6cXeK@vCWYv3@h;f@Ic5-Vk3cGsN#8?z$QOQ% z8u0drqY{a9268?`3x}!9lB2`G$l|2~%ERli{0#g3jP~pX9ZvX8XHIVAMsZFWv(`T0;Z) z&|1!HVP;4?9KBAiV3;BJERt0nf*&DsRl~&fR=x`kLy|9{?Puux0BrXnJ2hX`xL@?K zbCEC$!5PThelQxZRCo-PF%!Zb8(3m|E-XY+w+OD#J`Dfy5?4f&@xs@Tl(EMtmH4G+ zzs%+%=$C0GkZ8dB;cXlB48djEhvAA%Tsl!E41Y$_sCtFXgt8x|F3fn_e(ggrLv%5ci-?BOy27>$i8{2YxVU-AMs(%{e<&8g*@;cWZquEv7a&% zvpAgK7pM^52v>hjca0Cjv0qre2sVAmAxFOYik(^*clziyJ5#e?098(_{8xU)Y5Fcy)wTew6D2d<4Gw2Z!Hd^#2je_a|6_*{ohzoj|N7yge|d1n5jnbf|Lj zg&k2f-VI+$BEAMb0w<>M*LS=<&ZflQd>IXT+%Q>>FTe|j`UVT*TZ z#>gyg$wbH(K7h*cLO-g)3lm)qwH+S|duf;N4_wxHKB*_!po3)g1|9wNNfIX zD!2Gp5C!rdqrUk{VoI+O?Rg42yR8l^)MmR%J;w`WS+j^ zD(%CWK8L!aogM+BaW#eeQ7ID>eu)Ay;r0%-2$?4y=sZQ&g?qC2zpu?!AIb3 zWX=$b2GA7V+>!deCwb8$CWt!YLvU9oB51K=Hpk2)UqWksekySV@WMlABwm=(#i7RG zV?i|8SIBd?3H(RCuq}$qIKZ63E@%+m4PQdT@$xR6 z6KE!0oxu@<%uN7ioylq^KLA(vvV0i6mcwR{x-c4rQaJoWNRkqPvg8K#C-Q~U(Kx(trjJ1>342&c2{(BVRgf<{jKcUvc=0g$22Q*7 zXp$0o@(mQBj7j_+d<4FY4&dz(B_-12j2k&$kna=oILcgPn4FLAj<<)Dl+cn#kcWKX z2{at9hQ}gGN@U5K(P;98qfiOn9wt(vN%p#l6BPNvzBkGCCxKBHp-p&u%t(nPxd_#f zFIP)7JN>Kx>>3pb-2d@S@M3sAuEzo&q%lo7)7Z)Io1 z3x}c#ye$}{86@&E@;8$&OdCOcyglZl#EI;F8>^js;Umad&cEqk1?rA(j{WGPkOYP7 zJ(AVI2;r@0DBcVAjAG{Sv3QR3jQ@0~bN-JwIOGe@N89nji_jjt2Tr_$V;%2@caCA{ z7jsC%q`T=s@e-ZU7Y)}a9D{Z+LO34nmkKZ%vQfD79#${;!b;S6iD7azJ_jF$zu(IO z;A62CIcmn!{(W3SkS`pE!b`aR7c&t>7-0{tC_x$fPT;DAeBl7(e3}bLC_xpo@b=(} z5_ECvM9z@p3wNLbyzqTgh_8k36kPX>|}6eeG|4sFK^H=#ZFSR_Tl0FpQ2K{_1rg5-6m zF$v#6(x`;_Pt*H{3zj4Ec_7@U^X26Q9sE{#Hyo+GJ$R!%Xrshxd<7k6CWKpj3|vd; z1K>8~#@E7vhpdU&gD~0yG)myceP|Hng`c63c;Q!Q9KI2j%&^+=L+8Vmcfr{+Iqy)$ z7r@jYxk7b6LIo6NL;$Wsk{^L*%;FFw-yV?B9;{J03**R6N?r}x zM7}Wb3AVqKfi?5!-0=S2*QqE_BJ4_f+~S85ENU!>vfRcP;E!VQmf%yhr;Y z__X#R_~bM66Vwerc^6xPz z5esT)n86NjTuBGC+)%<Q7M2U>}HOj0s zOm=^fnZgT4pgjBtA7%y0ClQ7hykt$l1GgbB`QD9O_if?^1@D2sp+>xVg)%5-1xE^; z_9|yNydPfo8Yd)tJ{+)xHt`-QS$A9{$fD@xdPtC4a}RI%$_%dJ~fC$UlPKxXb|2W{ck3D zU!Za13p>8WWi#FlqtO6`FQNtH3tPR-OyF&i|ICPhQ^?;$zVJm<`@E0iTMUx0TEbIy zIM}falM?OkC_WbTkILk&N6sojW5bkpSQ@-NwqJADKk_9Upm!&yV7zb&D#8n&@iFj| zum}8;K!8cRSOW5ec_@PSz+p%ZQ7_zq%&rth0|N?szQ+PlUU)G&Aa!9h7+@^kAN{`s z0$luW_R>{+#|Jl|9K7%|l!vzm`;#Dm{m^Lgh1a4Iyggo@J*b}q`&+o1g`tda1B&2< z|Jlv^T(9Eafn?bT-vbrzC|<-)t_xx%G#?icL&U(!8S zv**JtNXkTDudj4@D53czbeu36vQIb-d8)bo7c&P9ry=2g&}h6p^qxIVpTz4s`v8qn zMwo{x@WR=s8XtgvBAFreHD^U67c~)h?Liif?+x?eI|teRQpg^^PvZLBhc?rYa1z>s zw}<7k$Ly0>eyI&?W6B6!qBX1)*dDp@_Aq?*5PgGv6qtpEP)Ha+Bk{sTXdFHSze2KU z8sRzLT0R#J{*G--8GBSdiPjfJ5%PuKqB?vdobx?1#E+K)@X#T)e}jy`M1%1OC!?IT z{6Ymjggkg*8Oq1o1L{3TUNrcg@EcS@8Q~!`2QT~y5%`C{S2@%rNEU`Td%ottdlG=} zE3}D1!k^GCsqiD`X=GM_8-C(MM1C#2>_3 zZztPW!S$Y^k(x~uDWNsR`|95s?%GASl z$EOrQ`(bjD zRYurB`_8abJToDz*7?GS_QGRHPM-kr>88FUlhE}6>0K}hn2_iA4RS8HDl zw;`F)?eH7|-g&5-3umK3{2cf!T7a*DN0F32n(A|^mc)-czz7$73b|k8)n{-sG3AQ! z!rzfRFitjj@w$l0!Z$K_sR?EFz=vBn)h2uu+=gTVyP&fr5x-dg;UMk3@E(-oqtH0a zg{^pPIhBXPRcO!#Lsi2Mkubb;zHqpB$_R_K7yf|c zzeJ6&XM1LdX=Ov-bOsG1{P1-otGX7p>_B5Q>Vm5}Gx3+`OyED=%qaQZ)1B&}Zca56 zAAoOnw|p)9swbz{}7M7R(FBpjvzw?nR^deQ7;R&1L&b z!j(%4}*#VC*e57olo zb$Jc6Wx+v8MMA@M1f zvdNJ6;c%Mv370ulS0r^8z;#HhkpL02#5*q!UFHP+o>{LltT7|m8E3|JMLXUQp zmEQwiqx~&#n)Z*u8tr$$2JMBdueRz62WT(6L;Lftp||xhkhvQ(l+Fit}$wd9YafJLwHN-R zy|C+zR$bwB+Be?BX1&?U?{Kq^CDRFEq4vUg+K1r#+PiOYs%w$V^yLMdMv-{oeC_Mu z3FPH(Tc_W~$q0!rgDa8jnCc&N!)UaR%B7eJN#Nb1sDQ+8`X|Td?SvlwlfPua`FGIM z@h_>Z@Ql%PCiw83oQ{!{7bcFe{OxeA_TRwFyR7^&_>%VT71Dm6yLq={66fi$taenN z%nyXeIo0Jz8hr=ec`uzvD%bGi*?W=Xe|jJ9FfX$FELe%856GUtbpz^a@T=H~w27qr zE%&nn7CTj4hM}&XbHcVqPA;}*< zoo$RFnS5vPkW(#3Lr>v5UHHZfCV>ADj(eDML>3Pm;oO;4{u?mw5i5TK-2DjKU$)1v zM~T^r#P5g4w4Yx_qev$F<74!OvpETM=CRxy=KcvQ-wg*MS$g4JI==>HK1rKhdDsjm zikJ4`aU^XX_hEX>wGzVXv=>g%{ss6Bk_lWNaH{)|R9*)^(f(W5cAk}gJ-io5`7!gI zY9%b))&g+)}J2%pow27adf zA=oKol{pg@Xy4^I`V1s>Ut8`}-y!i=SF%6(7)YW7uGC(*M|)x73aiXOI8J-vY$P)} zd?h;<5J~I)Cg7%ruhxQPo^QRqOu0iA0+4a4(XXX!9!fdr0!V@JS^3E8!mP4?$nY*Q^m&!xHUFr!eNHQpA})Ik?cdlyR;WRqW#c+aovEV{3^KH@;S6zQgw4Ok(1@oPv>5=)Tjbh9U8zU@4LbFM#W{AN~Q?`Do7we!9Jz z?TRvPqK}T=W-;4mVL?&g2W4( zv@iUUt`x}(Rlu!C%BTa}{UF%{6Je)=PURYJs7v5PG#r1~H|#4&%I|C7QXQH7|DWG- zzW&Y{F$1pCUO41?r`kV}H-W*~DD!^qaN$=-W}*?cKV;Q)!>hC}feW>dz~8iY9p?OlydbtRHQ?w{BZk@)hTxh6p3>tV}ZEH5u3mUj_LKCdWJp5xZc z$(u!Zv51*3tkhm!x*#uG2+Q|BV&shrVZIm=b~?d{0xyC0CBS}nz8erqG<}(X(2t59 z;Kme6u=^d95lT>dDI=7C_Tq&Sn_j#yD}hbN&8Qpp8Nonqx%cJ><^TP{fNlbBJqBCw)-MQBCUitvh{XHj|}J-aHm zs(+QIYDiUn@RLR9=cQ+_%3alem1otERr$dV!Spq)T-90C+10t#{i{9IL#p$G9|hB| zPYE{osU)!*@aqZEys>WI4s>!Nx*JRh^*7UFO))dwh)s)ou zYszW@HRUy-nyQ*GF)Nf`RsaD~LPJ9Np@NV%R2T|Ym8Tb_4_TJKtYDdUS>dvxV7JBT zXQ%gH?pZ!$dH(W(<=)_Ji__2VP*oYJ+)>(new Set()) const lastPreloadSessionRef = useRef(null) @@ -320,6 +321,7 @@ function ChatPage(_props: ChatPageProps) { } setSessions(nextSessions) + sessionsRef.current = nextSessions // 立即启动联系人信息加载,不再延迟 500ms void enrichSessionsContactInfo(nextSessions) } else { @@ -566,10 +568,13 @@ function ChatPage(_props: ChatPageProps) { * (由用户建议:记住上一条消息时间,自动取之后的并渲染,然后后台兜底全量同步) */ const handleIncrementalRefresh = async () => { - if (!currentSessionId || isRefreshingMessages) return + if (!currentSessionId || isRefreshingRef.current) return + isRefreshingRef.current = true + setIsRefreshingMessages(true) - // 找出当前已渲染消息中的最大时间戳 - const lastMsg = messages[messages.length - 1] + // 找出当前已渲染消息中的最大时间戳(使用 getState 获取最新状态,避免闭包过时导致重复) + const currentMessages = useChatStore.getState().messages + const lastMsg = currentMessages[currentMessages.length - 1] const minTime = lastMsg?.createTime || 0 // 1. 优先执行增量查询并渲染(第一步) @@ -581,8 +586,9 @@ function ChatPage(_props: ChatPageProps) { } if (result.success && result.messages && result.messages.length > 0) { - // 过滤去重 - const existingKeys = new Set(messages.map(getMessageKey)) + // 过滤去重:必须对比实时的状态,防止在 handleRefreshMessages 运行期间导致的冲突 + const latestMessages = useChatStore.getState().messages + const existingKeys = new Set(latestMessages.map(getMessageKey)) const newOnes = result.messages.filter(m => !existingKeys.has(getMessageKey(m))) if (newOnes.length > 0) { @@ -598,18 +604,19 @@ function ChatPage(_props: ChatPageProps) { } } catch (e) { console.warn('[IncrementalRefresh] 失败,将依赖全量同步兜底:', e) + } finally { + isRefreshingRef.current = false + setIsRefreshingMessages(false) } - - // 2. 后台兜底:执行之前的完整游标刷新,确保没有遗漏(比如跨库的消息) - void handleRefreshMessages() } const handleRefreshMessages = async () => { - if (!currentSessionId || isRefreshingMessages) return + if (!currentSessionId || isRefreshingRef.current) return setJumpStartTime(0) setJumpEndTime(0) setHasMoreLater(false) setIsRefreshingMessages(true) + isRefreshingRef.current = true try { // 获取最新消息并增量添加 const result = await window.electronAPI.chat.getLatestMessages(currentSessionId, 50) as { @@ -620,13 +627,17 @@ function ChatPage(_props: ChatPageProps) { if (!result.success || !result.messages) { return } - const existing = new Set(messages.map(getMessageKey)) - const lastMsg = messages[messages.length - 1] + // 使用实时状态进行去重对比 + const latestMessages = useChatStore.getState().messages + const existing = new Set(latestMessages.map(getMessageKey)) + const lastMsg = latestMessages[latestMessages.length - 1] const lastTime = lastMsg?.createTime ?? 0 + const newMessages = result.messages.filter((msg) => { const key = getMessageKey(msg) if (existing.has(key)) return false - if (lastTime > 0 && msg.createTime < lastTime) return false + // 这里的 lastTime 仅作参考过滤,主要的去重靠 key + if (lastTime > 0 && msg.createTime < lastTime - 3600) return false // 仅过滤 1 小时之前的冗余请求 return true }) if (newMessages.length > 0) { @@ -642,6 +653,7 @@ function ChatPage(_props: ChatPageProps) { } catch (e) { console.error('刷新消息失败:', e) } finally { + isRefreshingRef.current = false setIsRefreshingMessages(false) } } diff --git a/src/stores/chatStore.ts b/src/stores/chatStore.ts index 561f568..0e166c9 100644 --- a/src/stores/chatStore.ts +++ b/src/stores/chatStore.ts @@ -80,11 +80,23 @@ export const useChatStore = create((set, get) => ({ setMessages: (messages) => set({ messages }), - appendMessages: (newMessages, prepend = false) => set((state) => ({ - messages: prepend - ? [...newMessages, ...state.messages] - : [...state.messages, ...newMessages] - })), + appendMessages: (newMessages, prepend = false) => set((state) => { + // 强制去重逻辑 + const getMsgKey = (m: Message) => { + if (m.localId && m.localId > 0) return `l:${m.localId}` + return `t:${m.createTime}:${m.sortSeq || 0}:${m.serverId || 0}` + } + const existingKeys = new Set(state.messages.map(getMsgKey)) + const filtered = newMessages.filter(m => !existingKeys.has(getMsgKey(m))) + + if (filtered.length === 0) return state + + return { + messages: prepend + ? [...filtered, ...state.messages] + : [...state.messages, ...filtered] + } + }), setLoadingMessages: (loading) => set({ isLoadingMessages: loading }), setLoadingMore: (loading) => set({ isLoadingMore: loading }), From 0e1c3f93642d1b71497335b3d130906231976968 Mon Sep 17 00:00:00 2001 From: xuncha <1658671838@qq.com> Date: Mon, 2 Feb 2026 18:06:24 +0800 Subject: [PATCH 04/11] =?UTF-8?q?=E4=BB=8E=E5=AF=86=E8=AF=AD=E5=90=8C?= =?UTF-8?q?=E6=AD=A5=E4=BA=86=E4=B8=80=E4=B8=8B=E5=9B=BE=E7=89=87=E8=A7=A3?= =?UTF-8?q?=E5=AF=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- electron/services/imageDecryptService.ts | 171 +++++++++++++++++++++-- 1 file changed, 163 insertions(+), 8 deletions(-) diff --git a/electron/services/imageDecryptService.ts b/electron/services/imageDecryptService.ts index 4b1691f..ca02312 100644 --- a/electron/services/imageDecryptService.ts +++ b/electron/services/imageDecryptService.ts @@ -415,10 +415,16 @@ export class ImageDecryptService { if (imageDatName) this.cacheDatPath(accountDir, imageDatName, hardlinkPath) return hardlinkPath } - // hardlink 找到的是缩略图,但要求高清图,直接返回 null,不再搜索 - if (!allowThumbnail && isThumb) { - return null + // hardlink 找到的是缩略图,但要求高清图 + // 尝试在同一目录下查找高清图变体(快速查找,不遍历) + const hdPath = this.findHdVariantInSameDir(hardlinkPath) + if (hdPath) { + this.cacheDatPath(accountDir, imageMd5, hdPath) + if (imageDatName) this.cacheDatPath(accountDir, imageDatName, hdPath) + return hdPath } + // 没找到高清图,返回 null(不进行全局搜索) + return null } this.logInfo('[ImageDecrypt] hardlink miss (md5)', { imageMd5 }) if (imageDatName && this.looksLikeMd5(imageDatName) && imageDatName !== imageMd5) { @@ -431,9 +437,13 @@ export class ImageDecryptService { this.cacheDatPath(accountDir, imageDatName, fallbackPath) return fallbackPath } - if (!allowThumbnail && isThumb) { - return null + // 找到缩略图但要求高清图,尝试同目录查找高清图变体 + const hdPath = this.findHdVariantInSameDir(fallbackPath) + if (hdPath) { + this.cacheDatPath(accountDir, imageDatName, hdPath) + return hdPath } + return null } this.logInfo('[ImageDecrypt] hardlink miss (datName)', { imageDatName }) } @@ -449,10 +459,13 @@ export class ImageDecryptService { this.cacheDatPath(accountDir, imageDatName, hardlinkPath) return hardlinkPath } - // hardlink 找到的是缩略图,但要求高清图,直接返回 null - if (!allowThumbnail && isThumb) { - return null + // hardlink 找到的是缩略图,但要求高清图 + const hdPath = this.findHdVariantInSameDir(hardlinkPath) + if (hdPath) { + this.cacheDatPath(accountDir, imageDatName, hdPath) + return hdPath } + return null } this.logInfo('[ImageDecrypt] hardlink miss (datName)', { imageDatName }) } @@ -467,6 +480,9 @@ export class ImageDecryptService { const cached = this.resolvedCache.get(imageDatName) if (cached && existsSync(cached)) { if (allowThumbnail || !this.isThumbnailPath(cached)) return cached + // 缓存的是缩略图,尝试找高清图 + const hdPath = this.findHdVariantInSameDir(cached) + if (hdPath) return hdPath } } @@ -761,6 +777,17 @@ export class ImageDecryptService { const root = join(accountDir, 'msg', 'attach') if (!existsSync(root)) return null + + // 优化1:快速概率性查找 + // 包含:1. 基于文件名的前缀猜测 (旧版) + // 2. 基于日期的最近月份扫描 (新版无索引时) + const fastHit = await this.fastProbabilisticSearch(root, datName) + if (fastHit) { + this.resolvedCache.set(key, fastHit) + return fastHit + } + + // 优化2:兜底扫描 (异步非阻塞) const found = await this.walkForDatInWorker(root, datName.toLowerCase(), 8, allowThumbnail, thumbOnly) if (found) { this.resolvedCache.set(key, found) @@ -769,6 +796,134 @@ export class ImageDecryptService { return null } + /** + * 基于文件名的哈希特征猜测可能的路径 + * 包含:1. 微信旧版结构 filename.substr(0, 2)/... + * 2. 微信新版结构 msg/attach/{hash}/{YYYY-MM}/Img/filename + */ + private async fastProbabilisticSearch(root: string, datName: string): Promise { + const { promises: fs } = require('fs') + const { join } = require('path') + + try { + // --- 策略 A: 旧版路径猜测 (msg/attach/xx/yy/...) --- + const lowerName = datName.toLowerCase() + let baseName = lowerName + if (baseName.endsWith('.dat')) { + baseName = baseName.slice(0, -4) + if (baseName.endsWith('_t') || baseName.endsWith('.t') || baseName.endsWith('_hd')) { + baseName = baseName.slice(0, -3) + } else if (baseName.endsWith('_thumb')) { + baseName = baseName.slice(0, -6) + } + } + + const candidates: string[] = [] + if (/^[a-f0-9]{32}$/.test(baseName)) { + const dir1 = baseName.substring(0, 2) + const dir2 = baseName.substring(2, 4) + candidates.push( + join(root, dir1, dir2, datName), + join(root, dir1, dir2, 'Img', datName), + join(root, dir1, dir2, 'mg', datName), + join(root, dir1, dir2, 'Image', datName) + ) + } + + for (const path of candidates) { + try { + await fs.access(path) + return path + } catch { } + } + + // --- 策略 B: 新版 Session 哈希路径猜测 --- + try { + const entries = await fs.readdir(root, { withFileTypes: true }) + const sessionDirs = entries + .filter((e: any) => e.isDirectory() && e.name.length === 32 && /^[a-f0-9]+$/i.test(e.name)) + .map((e: any) => e.name) + + if (sessionDirs.length === 0) return null + + const now = new Date() + const months: string[] = [] + for (let i = 0; i < 2; i++) { + const d = new Date(now.getFullYear(), now.getMonth() - i, 1) + const mStr = `${d.getFullYear()}-${String(d.getMonth() + 1).padStart(2, '0')}` + months.push(mStr) + } + + const targetNames = [datName] + if (baseName !== lowerName) { + targetNames.push(`${baseName}.dat`) + targetNames.push(`${baseName}_t.dat`) + targetNames.push(`${baseName}_thumb.dat`) + } + + const batchSize = 20 + for (let i = 0; i < sessionDirs.length; i += batchSize) { + const batch = sessionDirs.slice(i, i + batchSize) + const tasks = batch.map(async (sessDir: string) => { + for (const month of months) { + const subDirs = ['Img', 'Image'] + for (const sub of subDirs) { + const dirPath = join(root, sessDir, month, sub) + try { await fs.access(dirPath) } catch { continue } + for (const name of targetNames) { + const p = join(dirPath, name) + try { await fs.access(p); return p } catch { } + } + } + } + return null + }) + const results = await Promise.all(tasks) + const hit = results.find(r => r !== null) + if (hit) return hit + } + } catch { } + + } catch { } + return null + } + + /** + * 在同一目录下查找高清图变体 + * 缩略图: xxx_t.dat -> 高清图: xxx_h.dat 或 xxx.dat + */ + private findHdVariantInSameDir(thumbPath: string): string | null { + try { + const dir = dirname(thumbPath) + const fileName = basename(thumbPath).toLowerCase() + + // 提取基础名称(去掉 _t.dat 或 .t.dat) + let baseName = fileName + if (baseName.endsWith('_t.dat')) { + baseName = baseName.slice(0, -6) + } else if (baseName.endsWith('.t.dat')) { + baseName = baseName.slice(0, -6) + } else { + return null + } + + // 尝试查找高清图变体 + const variants = [ + `${baseName}_h.dat`, + `${baseName}.h.dat`, + `${baseName}.dat` + ] + + for (const variant of variants) { + const variantPath = join(dir, variant) + if (existsSync(variantPath)) { + return variantPath + } + } + } catch { } + return null + } + private async searchDatFileInDir( dirPath: string, datName: string, From fdfd59fbdff8d139ae2bf7bef3e8548986424622 Mon Sep 17 00:00:00 2001 From: xuncha <1658671838@qq.com> Date: Mon, 2 Feb 2026 18:20:26 +0800 Subject: [PATCH 05/11] =?UTF-8?q?=E7=BB=99=E5=AF=86=E8=AF=AD=E7=9A=84?= =?UTF-8?q?=E5=9B=BE=E7=89=87=E6=9F=A5=E7=9C=8B=E5=99=A8=E6=90=AC=E8=BF=87?= =?UTF-8?q?=E6=9D=A5=E4=BA=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- electron/main.ts | 65 +++++++++++++++ electron/preload.ts | 2 + src/App.tsx | 7 ++ src/pages/ChatPage.tsx | 16 +--- src/pages/ImageWindow.scss | 99 +++++++++++++++++++++++ src/pages/ImageWindow.tsx | 162 +++++++++++++++++++++++++++++++++++++ src/types/electron.d.ts | 1 + 7 files changed, 339 insertions(+), 13 deletions(-) create mode 100644 src/pages/ImageWindow.scss create mode 100644 src/pages/ImageWindow.tsx diff --git a/electron/main.ts b/electron/main.ts index cace612..c4e8b79 100644 --- a/electron/main.ts +++ b/electron/main.ts @@ -370,6 +370,66 @@ function createVideoPlayerWindow(videoPath: string, videoWidth?: number, videoHe return win } +/** + * 创建独立的图片查看窗口 + */ +function createImageViewerWindow(imagePath: string) { + const isDev = !!process.env.VITE_DEV_SERVER_URL + const iconPath = isDev + ? join(__dirname, '../public/icon.ico') + : join(process.resourcesPath, 'icon.ico') + + const win = new BrowserWindow({ + width: 900, + height: 700, + minWidth: 400, + minHeight: 300, + icon: iconPath, + webPreferences: { + preload: join(__dirname, 'preload.js'), + contextIsolation: true, + nodeIntegration: false, + webSecurity: false // 允许加载本地文件 + }, + titleBarStyle: 'hidden', + titleBarOverlay: { + color: '#00000000', + symbolColor: '#ffffff', + height: 40 + }, + show: false, + backgroundColor: '#000000', + autoHideMenuBar: true + }) + + win.once('ready-to-show', () => { + win.show() + }) + + const imageParam = `imagePath=${encodeURIComponent(imagePath)}` + + if (process.env.VITE_DEV_SERVER_URL) { + win.loadURL(`${process.env.VITE_DEV_SERVER_URL}#/image-viewer-window?${imageParam}`) + + win.webContents.on('before-input-event', (event, input) => { + if (input.key === 'F12' || (input.control && input.shift && input.key === 'I')) { + if (win.webContents.isDevToolsOpened()) { + win.webContents.closeDevTools() + } else { + win.webContents.openDevTools() + } + event.preventDefault() + } + }) + } else { + win.loadFile(join(__dirname, '../dist/index.html'), { + hash: `/image-viewer-window?${imageParam}` + }) + } + + return win +} + /** * 创建独立的聊天记录窗口 */ @@ -941,6 +1001,11 @@ function registerIpcHandlers() { return true }) + // 打开图片查看窗口 + ipcMain.handle('window:openImageViewerWindow', (_, imagePath: string) => { + createImageViewerWindow(imagePath) + }) + // 完成引导,关闭引导窗口并显示主窗口 ipcMain.handle('window:completeOnboarding', async () => { try { diff --git a/electron/preload.ts b/electron/preload.ts index 628e4cb..5836625 100644 --- a/electron/preload.ts +++ b/electron/preload.ts @@ -64,6 +64,8 @@ contextBridge.exposeInMainWorld('electronAPI', { ipcRenderer.invoke('window:openVideoPlayerWindow', videoPath, videoWidth, videoHeight), resizeToFitVideo: (videoWidth: number, videoHeight: number) => ipcRenderer.invoke('window:resizeToFitVideo', videoWidth, videoHeight), + openImageViewerWindow: (imagePath: string) => + ipcRenderer.invoke('window:openImageViewerWindow', imagePath), openChatHistoryWindow: (sessionId: string, messageId: number) => ipcRenderer.invoke('window:openChatHistoryWindow', sessionId, messageId) }, diff --git a/src/App.tsx b/src/App.tsx index a5121c8..0cf6661 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -17,6 +17,7 @@ import GroupAnalyticsPage from './pages/GroupAnalyticsPage' import SettingsPage from './pages/SettingsPage' import ExportPage from './pages/ExportPage' import VideoWindow from './pages/VideoWindow' +import ImageWindow from './pages/ImageWindow' import SnsPage from './pages/SnsPage' import ContactsPage from './pages/ContactsPage' import ChatHistoryPage from './pages/ChatHistoryPage' @@ -318,6 +319,12 @@ function App() { return } + // 独立图片查看窗口 + const isImageViewerWindow = location.pathname === '/image-viewer-window' + if (isImageViewerWindow) { + return + } + // 独立聊天记录窗口 if (isChatHistoryWindow) { return diff --git a/src/pages/ChatPage.tsx b/src/pages/ChatPage.tsx index f5e99e2..1b17182 100644 --- a/src/pages/ChatPage.tsx +++ b/src/pages/ChatPage.tsx @@ -4,7 +4,6 @@ import { createPortal } from 'react-dom' import { useChatStore } from '../stores/chatStore' import type { ChatSession, Message } from '../types/models' import { getEmojiPath } from 'wechat-emojis' -import { ImagePreview } from '../components/ImagePreview' import { VoiceTranscribeDialog } from '../components/VoiceTranscribeDialog' import { AnimatedStreamingText } from '../components/AnimatedStreamingText' import JumpToDateDialog from '../components/JumpToDateDialog' @@ -1630,7 +1629,6 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat, o const [voiceTranscriptLoading, setVoiceTranscriptLoading] = useState(false) const [voiceTranscriptError, setVoiceTranscriptError] = useState(false) const voiceTranscriptRequestedRef = useRef(false) - const [showImagePreview, setShowImagePreview] = useState(false) const [autoTranscribeVoice, setAutoTranscribeVoice] = useState(true) const [voiceCurrentTime, setVoiceCurrentTime] = useState(0) const [voiceDuration, setVoiceDuration] = useState(0) @@ -1996,11 +1994,11 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat, o }, [isImage, imageHasUpdate, imageInView, imageCacheKey, triggerForceHd]) useEffect(() => { - if (!isImage || !showImagePreview || !imageHasUpdate) return + if (!isImage || !imageHasUpdate) return if (imageAutoHdTriggered.current === imageCacheKey) return imageAutoHdTriggered.current = imageCacheKey triggerForceHd() - }, [isImage, showImagePreview, imageHasUpdate, imageCacheKey, triggerForceHd]) + }, [isImage, imageHasUpdate, imageCacheKey, triggerForceHd]) // 更激进:进入视野/打开预览时,无论 hasUpdate 与否都尝试强制高清 useEffect(() => { @@ -2008,11 +2006,6 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat, o triggerForceHd() }, [isImage, imageInView, triggerForceHd]) - useEffect(() => { - if (!isImage || !showImagePreview) return - triggerForceHd() - }, [isImage, showImagePreview, triggerForceHd]) - useEffect(() => { if (!isVoice) return @@ -2363,15 +2356,12 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat, o if (imageHasUpdate) { void requestImageDecrypt(true, true) } - setShowImagePreview(true) + void window.electronAPI.window.openImageViewerWindow(imageLocalPath) }} onLoad={() => setImageError(false)} onError={() => setImageError(true)} />
- {showImagePreview && ( - setShowImagePreview(false)} /> - )} )}
diff --git a/src/pages/ImageWindow.scss b/src/pages/ImageWindow.scss new file mode 100644 index 0000000..a1acf6c --- /dev/null +++ b/src/pages/ImageWindow.scss @@ -0,0 +1,99 @@ +.image-window-container { + width: 100vw; + height: 100vh; + background-color: var(--bg-primary); + display: flex; + flex-direction: column; + overflow: hidden; + user-select: none; + + .title-bar { + height: 40px; + min-height: 40px; + display: flex; + justify-content: space-between; + align-items: center; + background: var(--bg-secondary); + border-bottom: 1px solid var(--border-color); + padding-right: 140px; // 为原生窗口控件留出空间 + + .window-drag-area { + flex: 1; + height: 100%; + -webkit-app-region: drag; + } + + .title-bar-controls { + display: flex; + align-items: center; + gap: 8px; + -webkit-app-region: no-drag; + margin-right: 16px; + + button { + background: transparent; + border: none; + color: var(--text-secondary); + cursor: pointer; + padding: 6px; + border-radius: 4px; + display: flex; + align-items: center; + justify-content: center; + transition: all 0.2s; + + &:hover { + background: var(--bg-tertiary); + color: var(--text-primary); + } + } + + .scale-text { + min-width: 50px; + text-align: center; + color: var(--text-secondary); + font-size: 12px; + font-variant-numeric: tabular-nums; + } + + .divider { + width: 1px; + height: 14px; + background: var(--border-color); + margin: 0 4px; + } + } + } + + .image-viewport { + flex: 1; + display: flex; + align-items: center; + justify-content: center; + overflow: hidden; + position: relative; + cursor: grab; + + &:active { + cursor: grabbing; + } + + img { + max-width: none; + max-height: none; + object-fit: contain; + will-change: transform; + box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15); + pointer-events: auto; + } + } +} + +.image-window-empty { + height: 100vh; + display: flex; + align-items: center; + justify-content: center; + color: var(--text-secondary); + background-color: var(--bg-primary); +} diff --git a/src/pages/ImageWindow.tsx b/src/pages/ImageWindow.tsx new file mode 100644 index 0000000..90ac068 --- /dev/null +++ b/src/pages/ImageWindow.tsx @@ -0,0 +1,162 @@ + +import { useState, useEffect, useRef, useCallback } from 'react' +import { useSearchParams } from 'react-router-dom' +import { ZoomIn, ZoomOut, RotateCw, RotateCcw } from 'lucide-react' +import './ImageWindow.scss' + +export default function ImageWindow() { + const [searchParams] = useSearchParams() + const imagePath = searchParams.get('imagePath') + const [scale, setScale] = useState(1) + const [rotation, setRotation] = useState(0) + const [position, setPosition] = useState({ x: 0, y: 0 }) + const [initialScale, setInitialScale] = useState(1) + const viewportRef = useRef(null) + + // 使用 ref 存储拖动状态,避免闭包问题 + const dragStateRef = useRef({ + isDragging: false, + startX: 0, + startY: 0, + startPosX: 0, + startPosY: 0 + }) + + const handleZoomIn = () => setScale(prev => Math.min(prev + 0.25, 10)) + const handleZoomOut = () => setScale(prev => Math.max(prev - 0.25, 0.1)) + const handleRotate = () => setRotation(prev => (prev + 90) % 360) + const handleRotateCcw = () => setRotation(prev => (prev - 90 + 360) % 360) + + // 重置视图 + const handleReset = useCallback(() => { + setScale(1) + setRotation(0) + setPosition({ x: 0, y: 0 }) + }, []) + + // 图片加载完成后计算初始缩放 + const handleImageLoad = useCallback((e: React.SyntheticEvent) => { + const img = e.currentTarget + const naturalWidth = img.naturalWidth + const naturalHeight = img.naturalHeight + + if (viewportRef.current) { + const viewportWidth = viewportRef.current.clientWidth * 0.9 + const viewportHeight = viewportRef.current.clientHeight * 0.9 + const scaleX = viewportWidth / naturalWidth + const scaleY = viewportHeight / naturalHeight + const fitScale = Math.min(scaleX, scaleY, 1) + setInitialScale(fitScale) + setScale(1) + } + }, []) + + // 使用原生事件监听器处理拖动 + useEffect(() => { + const handleMouseMove = (e: MouseEvent) => { + if (!dragStateRef.current.isDragging) return + + const dx = e.clientX - dragStateRef.current.startX + const dy = e.clientY - dragStateRef.current.startY + + setPosition({ + x: dragStateRef.current.startPosX + dx, + y: dragStateRef.current.startPosY + dy + }) + } + + const handleMouseUp = () => { + dragStateRef.current.isDragging = false + document.body.style.cursor = '' + } + + document.addEventListener('mousemove', handleMouseMove) + document.addEventListener('mouseup', handleMouseUp) + + return () => { + document.removeEventListener('mousemove', handleMouseMove) + document.removeEventListener('mouseup', handleMouseUp) + } + }, []) + + const handleMouseDown = (e: React.MouseEvent) => { + if (e.button !== 0) return + e.preventDefault() + + dragStateRef.current = { + isDragging: true, + startX: e.clientX, + startY: e.clientY, + startPosX: position.x, + startPosY: position.y + } + document.body.style.cursor = 'grabbing' + } + + const handleWheel = useCallback((e: React.WheelEvent) => { + const delta = -Math.sign(e.deltaY) * 0.15 + setScale(prev => Math.min(Math.max(prev + delta, 0.1), 10)) + }, []) + + // 双击重置 + const handleDoubleClick = useCallback(() => { + handleReset() + }, [handleReset]) + + // 快捷键支持 + useEffect(() => { + const handleKeyDown = (e: KeyboardEvent) => { + if (e.key === 'Escape') window.electronAPI.window.close() + if (e.key === '=' || e.key === '+') handleZoomIn() + if (e.key === '-') handleZoomOut() + if (e.key === 'r' || e.key === 'R') handleRotate() + if (e.key === '0') handleReset() + } + window.addEventListener('keydown', handleKeyDown) + return () => window.removeEventListener('keydown', handleKeyDown) + }, [handleReset]) + + if (!imagePath) { + return ( +
+ 无效的图片路径 +
+ ) + } + + const displayScale = initialScale * scale + + return ( +
+
+
+
+ + {Math.round(displayScale * 100)}% + +
+ + +
+
+ +
+ Preview +
+
+ ) +} diff --git a/src/types/electron.d.ts b/src/types/electron.d.ts index e00eeeb..3211b84 100644 --- a/src/types/electron.d.ts +++ b/src/types/electron.d.ts @@ -11,6 +11,7 @@ export interface ElectronAPI { setTitleBarOverlay: (options: { symbolColor: string }) => void openVideoPlayerWindow: (videoPath: string, videoWidth?: number, videoHeight?: number) => Promise resizeToFitVideo: (videoWidth: number, videoHeight: number) => Promise + openImageViewerWindow: (imagePath: string) => Promise openChatHistoryWindow: (sessionId: string, messageId: number) => Promise } config: { From e15e4cc3c895555b96cd71b6fdf92f0849898483 Mon Sep 17 00:00:00 2001 From: cc <98377878+hicccc77@users.noreply.github.com> Date: Mon, 2 Feb 2026 22:01:22 +0800 Subject: [PATCH 06/11] =?UTF-8?q?feat:=20=E5=AE=87=E5=AE=99=E8=B6=85?= =?UTF-8?q?=E7=BA=A7=E6=97=A0=E6=95=8C=E7=89=9B=E4=B8=94=E5=B8=85=E6=B0=94?= =?UTF-8?q?=E5=88=B0=E7=88=86=E7=82=B8=E7=9A=84=E5=8A=9F=E8=83=BD=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E5=92=8C=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- electron/main.ts | 12 +- electron/preload.ts | 16 +- electron/services/chatService.ts | 9 +- electron/services/config.ts | 26 ++- electron/windows/notificationWindow.ts | 200 ++++++++++++++++ resources/wcdb_api.dll | Bin 760832 -> 760832 bytes src/App.tsx | 32 ++- src/components/GlobalSessionMonitor.tsx | 258 +++++++++++++++++++++ src/components/NotificationToast.scss | 200 ++++++++++++++++ src/components/NotificationToast.tsx | 108 +++++++++ src/pages/AnnualReportWindow.tsx | 6 +- src/pages/ChatPage.tsx | 34 --- src/pages/NotificationWindow.scss | 54 +++++ src/pages/NotificationWindow.tsx | 165 +++++++++++++ src/pages/SettingsPage.scss | 293 +++++++++++++++++++++++- src/pages/SettingsPage.tsx | 287 ++++++++++++++++++++++- src/services/config.ts | 51 ++++- src/types/models.ts | 3 + 18 files changed, 1698 insertions(+), 56 deletions(-) create mode 100644 electron/windows/notificationWindow.ts create mode 100644 src/components/GlobalSessionMonitor.tsx create mode 100644 src/components/NotificationToast.scss create mode 100644 src/components/NotificationToast.tsx create mode 100644 src/pages/NotificationWindow.scss create mode 100644 src/pages/NotificationWindow.tsx diff --git a/electron/main.ts b/electron/main.ts index c4e8b79..20d0215 100644 --- a/electron/main.ts +++ b/electron/main.ts @@ -21,6 +21,7 @@ import { videoService } from './services/videoService' import { snsService } from './services/snsService' import { contactExportService } from './services/contactExportService' import { windowsHelloService } from './services/windowsHelloService' +import { registerNotificationHandlers, showNotification } from './windows/notificationWindow' // 配置自动更新 @@ -139,6 +140,14 @@ function createWindow(options: { autoShow?: boolean } = {}) { win.loadFile(join(__dirname, '../dist/index.html')) } + // Handle notification click navigation + ipcMain.on('notification-clicked', (_, sessionId) => { + if (win.isMinimized()) win.restore() + win.show() + win.focus() + win.webContents.send('navigate-to-session', sessionId) + }) + // 拦截请求,修改 Referer 和 User-Agent 以通过微信 CDN 鉴权 session.defaultSession.webRequest.onBeforeSendHeaders( { @@ -366,8 +375,6 @@ function createVideoPlayerWindow(videoPath: string, videoWidth?: number, videoHe hash: `/video-player-window?${videoParam}` }) } - - return win } /** @@ -499,6 +506,7 @@ function showMainWindow() { // 注册 IPC 处理器 function registerIpcHandlers() { + registerNotificationHandlers() // 配置相关 ipcMain.handle('config:get', async (_, key: string) => { return configService?.get(key as any) diff --git a/electron/preload.ts b/electron/preload.ts index 5836625..a579ca1 100644 --- a/electron/preload.ts +++ b/electron/preload.ts @@ -9,6 +9,19 @@ contextBridge.exposeInMainWorld('electronAPI', { clear: () => ipcRenderer.invoke('config:clear') }, + // 通知 + notification: { + show: (data: any) => ipcRenderer.invoke('notification:show', data), + close: () => ipcRenderer.invoke('notification:close'), + click: (sessionId: string) => ipcRenderer.send('notification-clicked', sessionId), + ready: () => ipcRenderer.send('notification:ready'), + resize: (width: number, height: number) => ipcRenderer.send('notification:resize', { width, height }), + onShow: (callback: (event: any, data: any) => void) => { + ipcRenderer.on('notification:show', callback) + return () => ipcRenderer.removeAllListeners('notification:show') + } + }, + // 认证 auth: { hello: (message?: string) => ipcRenderer.invoke('auth:hello', message) @@ -48,7 +61,8 @@ contextBridge.exposeInMainWorld('electronAPI', { // 日志 log: { getPath: () => ipcRenderer.invoke('log:getPath'), - read: () => ipcRenderer.invoke('log:read') + read: () => ipcRenderer.invoke('log:read'), + debug: (data: any) => ipcRenderer.send('log:debug', data) }, // 窗口控制 diff --git a/electron/services/chatService.ts b/electron/services/chatService.ts index a53c374..43f6dae 100644 --- a/electron/services/chatService.ts +++ b/electron/services/chatService.ts @@ -30,6 +30,9 @@ export interface ChatSession { lastMsgType: number displayName?: string avatarUrl?: string + lastMsgSender?: string + lastSenderDisplayName?: string + selfWxid?: string } export interface Message { @@ -287,6 +290,7 @@ class ChatService { // 转换为 ChatSession(先加载缓存,但不等待数据库查询) const sessions: ChatSession[] = [] const now = Date.now() + const myWxid = this.configService.get('myWxid') for (const row of rows) { const username = @@ -340,7 +344,10 @@ class ChatService { lastTimestamp: lastTs, lastMsgType, displayName, - avatarUrl + avatarUrl, + lastMsgSender: row.last_msg_sender, // 数据库返回字段 + lastSenderDisplayName: row.last_sender_display_name, // 数据库返回字段 + selfWxid: myWxid }) } diff --git a/electron/services/config.ts b/electron/services/config.ts index 34f1fb8..b3d988e 100644 --- a/electron/services/config.ts +++ b/electron/services/config.ts @@ -36,12 +36,30 @@ interface ConfigSchema { // 更新相关 ignoredUpdateVersion: string + + // 通知 + notificationEnabled: boolean + notificationPosition: 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left' + notificationFilterMode: 'all' | 'whitelist' | 'blacklist' + notificationFilterList: string[] } export class ConfigService { - private store: Store + private static instance: ConfigService + private store!: Store + + static getInstance(): ConfigService { + if (!ConfigService.instance) { + ConfigService.instance = new ConfigService() + } + return ConfigService.instance + } constructor() { + if (ConfigService.instance) { + return ConfigService.instance + } + ConfigService.instance = this this.store = new Store({ name: 'WeFlow-config', defaults: { @@ -72,7 +90,11 @@ export class ConfigService { authPassword: '', authUseHello: false, - ignoredUpdateVersion: '' + ignoredUpdateVersion: '', + notificationEnabled: true, + notificationPosition: 'top-right', + notificationFilterMode: 'all', + notificationFilterList: [] } }) } diff --git a/electron/windows/notificationWindow.ts b/electron/windows/notificationWindow.ts new file mode 100644 index 0000000..28e7ea0 --- /dev/null +++ b/electron/windows/notificationWindow.ts @@ -0,0 +1,200 @@ +import { BrowserWindow, ipcMain, screen } from 'electron' +import { join } from 'path' +import { ConfigService } from '../services/config' + +let notificationWindow: BrowserWindow | null = null +let closeTimer: NodeJS.Timeout | null = null + +export function createNotificationWindow() { + if (notificationWindow && !notificationWindow.isDestroyed()) { + return notificationWindow + } + + const isDev = !!process.env.VITE_DEV_SERVER_URL + const iconPath = isDev + ? join(__dirname, '../../public/icon.ico') + : join(process.resourcesPath, 'icon.ico') + + console.log('[NotificationWindow] Creating window...') + const width = 344 + const height = 114 + + // Update default creation size + notificationWindow = new BrowserWindow({ + width: width, + height: height, + type: 'toolbar', // 有助于在某些操作系统上保持置顶 + frame: false, + transparent: true, + resizable: false, + show: false, + alwaysOnTop: true, + skipTaskbar: true, + focusable: false, // 不抢占焦点 + icon: iconPath, + webPreferences: { + preload: join(__dirname, 'preload.js'), // FIX: Use correct relative path (same dir in dist) + contextIsolation: true, + nodeIntegration: false, + // devTools: true // Enable DevTools + } + }) + + // notificationWindow.webContents.openDevTools({ mode: 'detach' }) // DEBUG: Force Open DevTools + notificationWindow.setIgnoreMouseEvents(true, { forward: true }) // 初始点击穿透 + + // 处理鼠标事件 (如果需要从渲染进程转发,但目前特定区域处理?) + // 实际上,我们希望窗口可点击。 + // 我们将在显示时将忽略鼠标事件设为 false。 + + const loadUrl = isDev + ? `${process.env.VITE_DEV_SERVER_URL}#/notification-window` + : `file://${join(__dirname, '../dist/index.html')}#/notification-window` + + console.log('[NotificationWindow] Loading URL:', loadUrl) + notificationWindow.loadURL(loadUrl) + + notificationWindow.on('closed', () => { + notificationWindow = null + }) + + return notificationWindow +} + +export async function showNotification(data: any) { + // 先检查配置 + const config = ConfigService.getInstance() + const enabled = await config.get('notificationEnabled') + if (enabled === false) return // 默认为 true + + // 检查会话过滤 + const filterMode = config.get('notificationFilterMode') || 'all' + const filterList = config.get('notificationFilterList') || [] + const sessionId = data.sessionId + + if (sessionId && filterMode !== 'all' && filterList.length > 0) { + const isInList = filterList.includes(sessionId) + if (filterMode === 'whitelist' && !isInList) { + // 白名单模式:不在列表中则不显示 + console.log('[NotificationWindow] Filtered by whitelist:', sessionId) + return + } + if (filterMode === 'blacklist' && isInList) { + // 黑名单模式:在列表中则不显示 + console.log('[NotificationWindow] Filtered by blacklist:', sessionId) + return + } + } + + let win = notificationWindow + if (!win || win.isDestroyed()) { + win = createNotificationWindow() + } + + if (!win) return + + // 确保加载完成 + if (win.webContents.isLoading()) { + win.once('ready-to-show', () => { + showAndSend(win!, data) + }) + } else { + showAndSend(win, data) + } +} + +let lastNotificationData: any = null + +async function showAndSend(win: BrowserWindow, data: any) { + lastNotificationData = data + const config = ConfigService.getInstance() + const position = (await config.get('notificationPosition')) || 'top-right' + + // 更新位置 + const { width: screenWidth, height: screenHeight } = screen.getPrimaryDisplay().workAreaSize + const winWidth = 344 + const winHeight = 114 + const padding = 20 + + let x = 0 + let y = 0 + + switch (position) { + case 'top-right': + x = screenWidth - winWidth - padding + y = padding + break + case 'bottom-right': + x = screenWidth - winWidth - padding + y = screenHeight - winHeight - padding + break + case 'top-left': + x = padding + y = padding + break + case 'bottom-left': + x = padding + y = screenHeight - winHeight - padding + break + } + + win.setPosition(Math.floor(x), Math.floor(y)) + win.setSize(winWidth, winHeight) // 确保尺寸 + + // 设为可交互 + win.setIgnoreMouseEvents(false) + win.showInactive() // 显示但不聚焦 + win.setAlwaysOnTop(true, 'screen-saver') // 最高层级 + + win.webContents.send('notification:show', data) + + // 自动关闭计时器通常由渲染进程管理 + // 渲染进程发送 'notification:close' 来隐藏窗口 +} + +export function registerNotificationHandlers() { + ipcMain.handle('notification:show', (_, data) => { + showNotification(data) + }) + + ipcMain.handle('notification:close', () => { + if (notificationWindow && !notificationWindow.isDestroyed()) { + notificationWindow.hide() + notificationWindow.setIgnoreMouseEvents(true, { forward: true }) + } + }) + + // Handle renderer ready event (fix race condition) + ipcMain.on('notification:ready', (event) => { + console.log('[NotificationWindow] Renderer ready, checking cached data') + if (lastNotificationData && notificationWindow && !notificationWindow.isDestroyed()) { + console.log('[NotificationWindow] Re-sending cached data') + notificationWindow.webContents.send('notification:show', lastNotificationData) + } + }) + + // Handle resize request from renderer + ipcMain.on('notification:resize', (event, { width, height }) => { + if (notificationWindow && !notificationWindow.isDestroyed()) { + // Enforce max-height if needed, or trust renderer + // Ensure it doesn't go off screen bottom? + // Logic in showAndSend handles position, but we need to keep anchor point (top-right usually). + // If we resize, we should re-calculate position to keep it anchored? + // Actually, setSize changes size. If it's top-right, x/y stays same -> window grows down. That's fine for top-right. + // If bottom-right, growing down pushes it off screen. + + // Simple version: just setSize. For V1 we assume Top-Right. + // But wait, the config supports bottom-right. + // We can re-call setPosition or just let it be. + // If bottom-right, y needs to prevent overflow. + + // Ideally we get current config position + const bounds = notificationWindow.getBounds() + // Check if we need to adjust Y? + // For now, let's just set the size as requested. + notificationWindow.setSize(Math.round(width), Math.round(height)) + } + }) + + // 'notification-clicked' 在 main.ts 中处理 (导航) +} diff --git a/resources/wcdb_api.dll b/resources/wcdb_api.dll index 9d0741ff4bf847b3755cfc4148cfad962584d78c..cf0b4edf4b35985b0e22c4fb980d77a1fcecb8ba 100644 GIT binary patch delta 193 zcmZqJq1UiOZvzJ-v&OuJ&D@L!lNpVh&!)7WO<@FLCLm@8Viq7~1!6WJX5W4`h2zUr zt;Y=$pX^=md{)bg{c~R|Z+WtR-Lok>pKjmuV$tfST??MBZ+p6S#*6ihj~kk{zqaDM zX=4qvAd>+In1C3>&^W=#ps|Y+B*Xxd;{mcofOrZ}ZVEzf`u}oHNstS-OIL6zIx(iS O+wS7rZo7-?@IwISb4~*Q delta 193 zcmZqJq1UiOZvzJ-^P~Lw&D@L!lNk+~&!)7WO<@FLCLm@8Viq7~1!6WJX5W4`h2zUr zt*7fcpSG@e+PnJc;?<8ECO&OzeY$Sv)9ss{b}e|izU}GS886m1K5l4YU|`t(+KTh0 zjWy7MOdyYe35Y=qjT4*<8oM|_LJTlD9w1u;h^GMMrXb{||1am11i5g#bOooP6Jv6_ O?Jmykw!63vKLh}+@lF*0 diff --git a/src/App.tsx b/src/App.tsx index 0cf6661..fe051f1 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -21,6 +21,7 @@ import ImageWindow from './pages/ImageWindow' import SnsPage from './pages/SnsPage' import ContactsPage from './pages/ContactsPage' import ChatHistoryPage from './pages/ChatHistoryPage' +import NotificationWindow from './pages/NotificationWindow' import { useAppStore } from './stores/appStore' import { themes, useThemeStore, type ThemeId } from './stores/themeStore' @@ -31,10 +32,12 @@ import './App.scss' import UpdateDialog from './components/UpdateDialog' import UpdateProgressCapsule from './components/UpdateProgressCapsule' import LockScreen from './components/LockScreen' +import { GlobalSessionMonitor } from './components/GlobalSessionMonitor' function App() { const navigate = useNavigate() const location = useLocation() + const { setDbConnected, updateInfo, @@ -55,6 +58,7 @@ function App() { const isOnboardingWindow = location.pathname === '/onboarding-window' const isVideoPlayerWindow = location.pathname === '/video-player-window' const isChatHistoryWindow = location.pathname.startsWith('/chat-history/') + const isNotificationWindow = location.pathname === '/notification-window' const [themeHydrated, setThemeHydrated] = useState(false) // 锁定状态 @@ -74,7 +78,7 @@ function App() { const body = document.body const appRoot = document.getElementById('app') - if (isOnboardingWindow) { + if (isOnboardingWindow || isNotificationWindow) { root.style.background = 'transparent' body.style.background = 'transparent' body.style.overflow = 'hidden' @@ -100,10 +104,10 @@ function App() { // 更新窗口控件颜色以适配主题 const symbolColor = themeMode === 'dark' ? '#ffffff' : '#1a1a1a' - if (!isOnboardingWindow) { + if (!isOnboardingWindow && !isNotificationWindow) { window.electronAPI.window.setTitleBarOverlay({ symbolColor }) } - }, [currentTheme, themeMode, isOnboardingWindow]) + }, [currentTheme, themeMode, isOnboardingWindow, isNotificationWindow]) // 读取已保存的主题设置 useEffect(() => { @@ -173,21 +177,23 @@ function App() { // 监听启动时的更新通知 useEffect(() => { - const removeUpdateListener = window.electronAPI.app.onUpdateAvailable?.((info: any) => { + if (isNotificationWindow) return // Skip updates in notification window + + const removeUpdateListener = window.electronAPI?.app?.onUpdateAvailable?.((info: any) => { // 发现新版本时自动打开更新弹窗 if (info) { setUpdateInfo({ ...info, hasUpdate: true }) setShowUpdateDialog(true) } }) - const removeProgressListener = window.electronAPI.app.onDownloadProgress?.((progress: any) => { + const removeProgressListener = window.electronAPI?.app?.onDownloadProgress?.((progress: any) => { setDownloadProgress(progress) }) return () => { removeUpdateListener?.() removeProgressListener?.() } - }, [setUpdateInfo, setDownloadProgress, setShowUpdateDialog]) + }, [setUpdateInfo, setDownloadProgress, setShowUpdateDialog, isNotificationWindow]) const handleUpdateNow = async () => { setShowUpdateDialog(false) @@ -242,18 +248,18 @@ function App() { if (!onboardingDone) { await configService.setOnboardingDone(true) } - + const result = await window.electronAPI.chat.connect() if (result.success) { - + setDbConnected(true, dbPath) // 如果当前在欢迎页,跳转到首页 if (window.location.hash === '#/' || window.location.hash === '') { navigate('/home') } } else { - + // 如果错误信息包含 VC++ 或 DLL 相关内容,不清除配置,只提示用户 // 其他错误可能需要重新配置 const errorMsg = result.error || '' @@ -330,6 +336,11 @@ function App() { return } + // 独立通知窗口 + if (isNotificationWindow) { + return + } + // 主窗口 - 完整布局 return (
@@ -345,6 +356,9 @@ function App() { {/* 全局悬浮进度胶囊 (处理:新版本提示、下载进度、错误提示) */} + {/* 全局会话监听与通知 */} + + {/* 用户协议弹窗 */} {showAgreement && !agreementLoading && (
diff --git a/src/components/GlobalSessionMonitor.tsx b/src/components/GlobalSessionMonitor.tsx new file mode 100644 index 0000000..9077892 --- /dev/null +++ b/src/components/GlobalSessionMonitor.tsx @@ -0,0 +1,258 @@ +import { useEffect, useRef } from 'react' +import { useChatStore } from '../stores/chatStore' +import type { ChatSession } from '../types/models' +import { useNavigate } from 'react-router-dom' + +export function GlobalSessionMonitor() { + const navigate = useNavigate() + const { + sessions, + setSessions, + currentSessionId, + appendMessages, + messages + } = useChatStore() + + const sessionsRef = useRef(sessions) + + // 保持 ref 同步 + useEffect(() => { + sessionsRef.current = sessions + }, [sessions]) + + // 去重辅助函数:获取消息 key + const getMessageKey = (msg: any) => { + if (msg.localId && msg.localId > 0) return `l:${msg.localId}` + return `t:${msg.createTime}:${msg.sortSeq || 0}:${msg.serverId || 0}` + } + + // 处理数据库变更 + useEffect(() => { + const handleDbChange = (_event: any, data: { type: string; json: string }) => { + try { + const payload = JSON.parse(data.json) + const tableName = payload.table + + // 只关注 Session 表 + if (tableName === 'Session' || tableName === 'session') { + refreshSessions() + } + } catch (e) { + console.error('解析数据库变更失败:', e) + } + } + + if (window.electronAPI.chat.onWcdbChange) { + const removeListener = window.electronAPI.chat.onWcdbChange(handleDbChange) + return () => { + removeListener() + } + } + return () => { } + }, []) // 空依赖数组 - 主要是静态的 + + const refreshSessions = async () => { + try { + const result = await window.electronAPI.chat.getSessions() + if (result.success && result.sessions && Array.isArray(result.sessions)) { + const newSessions = result.sessions as ChatSession[] + const oldSessions = sessionsRef.current + + // 1. 检测变更并通知 + checkForNewMessages(oldSessions, newSessions) + + // 2. 更新 store + setSessions(newSessions) + + // 3. 如果在活跃会话中,增量刷新消息 + const currentId = useChatStore.getState().currentSessionId + if (currentId) { + const currentSessionNew = newSessions.find(s => s.username === currentId) + const currentSessionOld = oldSessions.find(s => s.username === currentId) + + if (currentSessionNew && (!currentSessionOld || currentSessionNew.lastTimestamp > currentSessionOld.lastTimestamp)) { + void handleActiveSessionRefresh(currentId) + } + } + } + } catch (e) { + console.error('全局会话刷新失败:', e) + } + } + + const checkForNewMessages = async (oldSessions: ChatSession[], newSessions: ChatSession[]) => { + const oldMap = new Map(oldSessions.map(s => [s.username, s])) + + for (const newSession of newSessions) { + const oldSession = oldMap.get(newSession.username) + + // 条件: 新会话或时间戳更新 + const isCurrentSession = newSession.username === useChatStore.getState().currentSessionId + + if (!isCurrentSession && (!oldSession || newSession.lastTimestamp > oldSession.lastTimestamp)) { + // 这是新消息事件 + + // 1. 群聊过滤自己发送的消息 + if (newSession.username.includes('@chatroom')) { + // 如果是自己发的消息,不弹通知 + // 注意:lastMsgSender 需要后端支持返回 + // 使用宽松比较以处理 wxid_ 前缀差异 + if (newSession.lastMsgSender && newSession.selfWxid) { + const sender = newSession.lastMsgSender.replace(/^wxid_/, ''); + const self = newSession.selfWxid.replace(/^wxid_/, ''); + + // 使用主进程日志打印,方便用户查看 + const debugInfo = { + type: 'NotificationFilter', + username: newSession.username, + lastMsgSender: newSession.lastMsgSender, + selfWxid: newSession.selfWxid, + senderClean: sender, + selfClean: self, + match: sender === self + }; + + if (window.electronAPI.log?.debug) { + window.electronAPI.log.debug(debugInfo); + } else { + console.log('[NotificationFilter]', debugInfo); + } + + if (sender === self) { + if (window.electronAPI.log?.debug) { + window.electronAPI.log.debug('[NotificationFilter] Filtered own message'); + } else { + console.log('[NotificationFilter] Filtered own message'); + } + continue; + } + } else { + const missingInfo = { + type: 'NotificationFilter Missing info', + lastMsgSender: newSession.lastMsgSender, + selfWxid: newSession.selfWxid + }; + if (window.electronAPI.log?.debug) { + window.electronAPI.log.debug(missingInfo); + } else { + console.log('[NotificationFilter] Missing info:', missingInfo); + } + } + } + + let title = newSession.displayName || newSession.username + let avatarUrl = newSession.avatarUrl + let content = newSession.summary || '[新消息]' + + if (newSession.username.includes('@chatroom')) { + // 1. 群聊过滤自己发送的消息 + // 辅助函数:清理 wxid 后缀 (如 _8602) + const cleanWxid = (id: string) => { + if (!id) return ''; + const trimmed = id.trim(); + // 仅移除末尾的 _xxxx (4位字母数字) + const suffixMatch = trimmed.match(/^(.+)_([a-zA-Z0-9]{4})$/); + return suffixMatch ? suffixMatch[1] : trimmed; + } + + if (newSession.lastMsgSender && newSession.selfWxid) { + const senderClean = cleanWxid(newSession.lastMsgSender); + const selfClean = cleanWxid(newSession.selfWxid); + const match = senderClean === selfClean; + + if (match) { + continue; + } + } + + // 2. 群聊显示发送者名字 (放在内容中: "Name: Message") + // 标题保持为群聊名称 (title 变量) + if (newSession.lastSenderDisplayName) { + content = `${newSession.lastSenderDisplayName}: ${content}` + } + } + + // 修复 "Random User" 的逻辑 (缺少具体信息) + // 如果标题看起来像 wxid 或没有头像,尝试获取信息 + const needsEnrichment = !newSession.displayName || !newSession.avatarUrl || newSession.displayName === newSession.username + + if (needsEnrichment && newSession.username) { + try { + // 尝试丰富或获取联系人详情 + const contact = await window.electronAPI.chat.getContact(newSession.username) + if (contact) { + if (contact.remark || contact.nickname) { + title = contact.remark || contact.nickname + } + if (contact.avatarUrl) { + avatarUrl = contact.avatarUrl + } + } else { + // 如果不在缓存/数据库中 + const enrichResult = await window.electronAPI.chat.enrichSessionsContactInfo([newSession.username]) + if (enrichResult.success && enrichResult.contacts) { + const enrichedContact = enrichResult.contacts[newSession.username] + if (enrichedContact) { + if (enrichedContact.displayName) { + title = enrichedContact.displayName + } + if (enrichedContact.avatarUrl) { + avatarUrl = enrichedContact.avatarUrl + } + } + } + // 如果仍然没有有效名称,再尝试一次获取 + if (title === newSession.username || title.startsWith('wxid_')) { + const retried = await window.electronAPI.chat.getContact(newSession.username) + if (retried) { + title = retried.remark || retried.nickname || title + avatarUrl = retried.avatarUrl || avatarUrl + } + } + } + } catch (e) { + console.warn('获取通知的联系人信息失败', e) + } + } + + // 最终检查:如果标题仍是 wxid 格式,则跳过通知(避免显示乱跳用户) + // 群聊例外,因为群聊 username 包含 @chatroom + const isGroupChat = newSession.username.includes('@chatroom') + const isWxidTitle = title.startsWith('wxid_') && title === newSession.username + if (isWxidTitle && !isGroupChat) { + console.warn('[NotificationFilter] 跳过无法识别的用户通知:', newSession.username) + continue + } + + // 调用 IPC 以显示独立窗口通知 + window.electronAPI.notification?.show({ + title: title, + content: content, + avatarUrl: avatarUrl, + sessionId: newSession.username + }) + + // 我们不再为 Toast 设置本地状态 + } + } + } + + const handleActiveSessionRefresh = async (sessionId: string) => { + // 从 ChatPage 复制/调整的逻辑,以保持集中 + const state = useChatStore.getState() + const lastMsg = state.messages[state.messages.length - 1] + const minTime = lastMsg?.createTime || 0 + + try { + const result = await (window.electronAPI.chat as any).getNewMessages(sessionId, minTime) + if (result.success && result.messages && result.messages.length > 0) { + appendMessages(result.messages, false) // 追加到末尾 + } + } catch (e) { + console.warn('后台活跃会话刷新失败:', e) + } + } + + // 此组件不再渲染 UI + return null +} diff --git a/src/components/NotificationToast.scss b/src/components/NotificationToast.scss new file mode 100644 index 0000000..cb405a3 --- /dev/null +++ b/src/components/NotificationToast.scss @@ -0,0 +1,200 @@ +.notification-toast-container { + position: fixed; + z-index: 9999; + width: 320px; + background: var(--bg-secondary); + backdrop-filter: blur(20px); + -webkit-backdrop-filter: blur(20px); + border: 1px solid var(--border-light); + border-radius: 12px; + box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12); + padding: 12px; + cursor: pointer; + transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); + opacity: 0; + transform: scale(0.95); + pointer-events: none; // Allow clicking through when hidden + + &.visible { + opacity: 1; + transform: scale(1); + pointer-events: auto; + } + + &.static { + position: relative !important; + width: calc(100% - 4px) !important; // Leave 2px margin for anti-aliasing saftey + height: auto !important; // Fits content + min-height: 0; + top: 0 !important; + bottom: 0 !important; + left: 0 !important; + right: 0 !important; + transform: none !important; + margin: 2px !important; // 2px centered margin + border-radius: 12px !important; // Rounded corners + + + // Disable backdrop filter + backdrop-filter: none !important; + -webkit-backdrop-filter: none !important; + + // Ensure background is solid + background: var(--bg-secondary, #2c2c2c); + color: var(--text-primary, #ffffff); + + box-shadow: none !important; // NO SHADOW + border: 1px solid var(--border-light, rgba(255, 255, 255, 0.1)); + + display: flex; + padding: 16px; + padding-right: 32px; // Make space for close button + box-sizing: border-box; + + // Force close button to be visible but transparent background + .notification-close { + opacity: 1 !important; + top: 12px; + right: 12px; + background: transparent !important; // Transparent per user request + + &:hover { + color: var(--text-primary); + background: rgba(255, 255, 255, 0.1) !important; // Subtle hover effect + } + } + + .notification-time { + top: 24px; // Match padding + right: 40px; // Left of close button (12px + 20px + 8px) + } + } + + // Position variants + &.bottom-right { + bottom: 24px; + right: 24px; + transform: translate(0, 20px) scale(0.95); + + &.visible { + transform: translate(0, 0) scale(1); + } + } + + &.top-right { + top: 24px; + right: 24px; + transform: translate(0, -20px) scale(0.95); + + &.visible { + transform: translate(0, 0) scale(1); + } + } + + &.bottom-left { + bottom: 24px; + left: 24px; + transform: translate(0, 20px) scale(0.95); + + &.visible { + transform: translate(0, 0) scale(1); + } + } + + &.top-left { + top: 24px; + left: 24px; + transform: translate(0, -20px) scale(0.95); + + &.visible { + transform: translate(0, 0) scale(1); + } + } + + &:hover { + box-shadow: 0 12px 48px rgba(0, 0, 0, 0.16) !important; + } + + .notification-content { + display: flex; + align-items: flex-start; + gap: 12px; + } + + .notification-avatar { + flex-shrink: 0; + } + + .notification-text { + flex: 1; + min-width: 0; + + .notification-header { + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 4px; + + .notification-title { + font-weight: 600; + font-size: 14px; + color: var(--text-primary); + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + max-width: 100%; // 允许缩放 + flex: 1; // 占据剩余空间 + min-width: 0; // 关键:允许 flex 子项收缩到内容以下 + margin-right: 60px; // Make space for absolute time + close button + } + + .notification-time { + font-size: 12px; + color: var(--text-tertiary); + position: absolute; + top: 16px; + right: 36px; // Left of close button (8px + 20px + 8px) + font-variant-numeric: tabular-nums; + } + } + + .notification-body { + font-size: 13px; + color: var(--text-secondary); + line-height: 1.4; + display: -webkit-box; + -webkit-line-clamp: 2; + line-clamp: 2; + -webkit-box-orient: vertical; + overflow: hidden; + word-break: break-all; + } + } + + .notification-close { + position: absolute; + top: 8px; + right: 8px; + width: 20px; + height: 20px; + border-radius: 50%; + display: flex; + align-items: center; + justify-content: center; + border: none; + background: transparent; + color: var(--text-tertiary); + cursor: pointer; + opacity: 0; + transition: all 0.2s; + + &:hover { + background: var(--bg-tertiary); + color: var(--text-primary); + } + } + + &:hover .notification-close { + opacity: 1; + } +} \ No newline at end of file diff --git a/src/components/NotificationToast.tsx b/src/components/NotificationToast.tsx new file mode 100644 index 0000000..886a878 --- /dev/null +++ b/src/components/NotificationToast.tsx @@ -0,0 +1,108 @@ +import React, { useEffect, useState } from 'react' +import { createPortal } from 'react-dom' +import { X } from 'lucide-react' +import { Avatar } from './Avatar' +import './NotificationToast.scss' + +export interface NotificationData { + id: string + sessionId: string + avatarUrl?: string + title: string + content: string + timestamp: number +} + +interface NotificationToastProps { + data: NotificationData | null + onClose: () => void + onClick: (sessionId: string) => void + duration?: number + position?: 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left' + isStatic?: boolean + initialVisible?: boolean +} + +export function NotificationToast({ + data, + onClose, + onClick, + duration = 5000, + position = 'top-right', + isStatic = false, + initialVisible = false +}: NotificationToastProps) { + const [isVisible, setIsVisible] = useState(initialVisible) + const [currentData, setCurrentData] = useState(null) + + useEffect(() => { + if (data) { + setCurrentData(data) + setIsVisible(true) + + const timer = setTimeout(() => { + setIsVisible(false) + // clean up data after animation + setTimeout(onClose, 300) + }, duration) + + return () => clearTimeout(timer) + } else { + setIsVisible(false) + } + }, [data, duration, onClose]) + + if (!currentData) return null + + const handleClose = (e: React.MouseEvent) => { + e.stopPropagation() + setIsVisible(false) + setTimeout(onClose, 300) + } + + const handleClick = () => { + setIsVisible(false) + setTimeout(() => { + onClose() + onClick(currentData.sessionId) + }, 300) + } + + const content = ( +
+
+
+ +
+
+
+ {currentData.title} + + {new Date(currentData.timestamp * 1000).toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' })} + +
+
+ {currentData.content} +
+
+ +
+
+ ) + + if (isStatic) { + return content + } + + // Portal to document.body to ensure it's on top + return createPortal(content, document.body) +} diff --git a/src/pages/AnnualReportWindow.tsx b/src/pages/AnnualReportWindow.tsx index b4b0155..ed1bdcd 100644 --- a/src/pages/AnnualReportWindow.tsx +++ b/src/pages/AnnualReportWindow.tsx @@ -1017,14 +1017,14 @@ function AnnualReportWindow() { {midnightKing && (
深夜好友
-

当城市睡去

-

这一年你留下了

+

月光下的你

+

在这一年你留下了

{midnightKing.count} 条深夜的消息

- 其中 {midnightKing.displayName} 常常在深夜中陪着你。 + 其中 {midnightKing.displayName} 常常在深夜中陪着你胡思乱想。
你和Ta的对话占你深夜期间聊天的 {midnightKing.percentage}%

diff --git a/src/pages/ChatPage.tsx b/src/pages/ChatPage.tsx index 1b17182..fdbc300 100644 --- a/src/pages/ChatPage.tsx +++ b/src/pages/ChatPage.tsx @@ -306,18 +306,7 @@ function ChatPage(_props: ChatPageProps) { const nextSessions = options?.silent ? mergeSessions(sessionsArray) : sessionsArray // 确保 nextSessions 也是数组 if (Array.isArray(nextSessions)) { - // 【核心优化】检查当前会话是否有更新(通过 lastTimestamp 对比) - const currentId = currentSessionRef.current - if (currentId) { - const newSession = nextSessions.find(s => s.username === currentId) - const oldSession = sessionsRef.current.find(s => s.username === currentId) - // 如果会话存在且时间戳变大(有新消息)或者之前没有该会话 - if (newSession && (!oldSession || newSession.lastTimestamp > oldSession.lastTimestamp)) { - console.log(`[Frontend] Detected update for current session ${currentId}, refreshing messages...`) - void handleIncrementalRefresh() - } - } setSessions(nextSessions) sessionsRef.current = nextSessions @@ -657,30 +646,7 @@ function ChatPage(_props: ChatPageProps) { } } - // 监听数据库变更实时刷新 - useEffect(() => { - const handleDbChange = (_event: any, data: { type: string; json: string }) => { - try { - const payload = JSON.parse(data.json) - const tableName = payload.table - // 会话列表更新(主要靠这个触发,因为 wcdb_api 已经只监控 session 了) - if (tableName === 'Session' || tableName === 'session') { - void loadSessions({ silent: true }) - } - } catch (e) { - console.error('解析数据库变更通知失败:', e) - } - } - - if (window.electronAPI.chat.onWcdbChange) { - const removeListener = window.electronAPI.chat.onWcdbChange(handleDbChange) - return () => { - removeListener() - } - } - return () => { } - }, [loadSessions, handleRefreshMessages]) // 加载消息 const loadMessages = async (sessionId: string, offset = 0, startTime = 0, endTime = 0) => { diff --git a/src/pages/NotificationWindow.scss b/src/pages/NotificationWindow.scss new file mode 100644 index 0000000..3e1515d --- /dev/null +++ b/src/pages/NotificationWindow.scss @@ -0,0 +1,54 @@ +@keyframes noti-enter { + 0% { + opacity: 0; + transform: translateY(-20px) scale(0.96); + } + + 100% { + opacity: 1; + transform: translateY(0) scale(1); + } +} + +@keyframes noti-exit { + 0% { + opacity: 1; + transform: scale(1) translateY(0); + filter: blur(0); + } + + 100% { + opacity: 0; + transform: scale(0.92) translateY(4px); + filter: blur(2px); + } +} + +body { + // Ensure the body background is transparent to let the rounded corners show + background: transparent; + overflow: hidden; + margin: 0; + padding: 0; +} + +#notification-root { + // Ensure the container allows 3D transforms + perspective: 1000px; +} + +#notification-current { + // New notification slides in + animation: noti-enter 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards; + will-change: transform, opacity; +} + +#notification-prev { + // Old notification scales out + animation: noti-exit 0.35s cubic-bezier(0.33, 1, 0.68, 1) forwards; + transform-origin: center top; + will-change: transform, opacity, filter; + + // Ensure it stays behind + z-index: 0 !important; +} \ No newline at end of file diff --git a/src/pages/NotificationWindow.tsx b/src/pages/NotificationWindow.tsx new file mode 100644 index 0000000..deb6616 --- /dev/null +++ b/src/pages/NotificationWindow.tsx @@ -0,0 +1,165 @@ +import { useEffect, useState, useRef } from 'react' +import { NotificationToast, type NotificationData } from '../components/NotificationToast' +import '../components/NotificationToast.scss' +import './NotificationWindow.scss' + +export default function NotificationWindow() { + const [notification, setNotification] = useState(null) + const [prevNotification, setPrevNotification] = useState(null) + + // We need a ref to access the current notification inside the callback + // without satisfying the dependency array which would recreate the listener + // Actually, setNotification(prev => ...) pattern is better, but we need the VALUE of current to set as prev. + // So we use setNotification callback: setNotification(current => { ... return newNode }) + // But we need to update TWO states. + // So we use a ref to track "current displayed" for the event handler. + // Or just use functional updates, but we need to setPrev(current). + + const notificationRef = useRef(null) + + useEffect(() => { + notificationRef.current = notification + }, [notification]) + + useEffect(() => { + const handleShow = (_event: any, data: any) => { + // data: { title, content, avatarUrl, sessionId } + const timestamp = Math.floor(Date.now() / 1000) + const newNoti: NotificationData = { + id: `noti_${timestamp}_${Math.random().toString(36).substr(2, 9)}`, + sessionId: data.sessionId, + title: data.title, + content: data.content, + timestamp: timestamp, + avatarUrl: data.avatarUrl + } + + // Set previous to current (ref) + if (notificationRef.current) { + setPrevNotification(notificationRef.current) + } + setNotification(newNoti) + } + + if (window.electronAPI) { + const remove = window.electronAPI.notification?.onShow?.(handleShow) + window.electronAPI.notification?.ready?.() + return () => remove?.() + } + }, []) + + // Clean up prevNotification after transition + useEffect(() => { + if (prevNotification) { + const timer = setTimeout(() => { + setPrevNotification(null) + }, 400) + return () => clearTimeout(timer) + } + }, [prevNotification]) + + const handleClose = () => { + setNotification(null) + setPrevNotification(null) + window.electronAPI.notification?.close() + } + + const handleClick = (sessionId: string) => { + window.electronAPI.notification?.click(sessionId) + setNotification(null) + setPrevNotification(null) + // Main process handles window hide/close + } + + useEffect(() => { + // Measure only if we have a notification (current or prev) + if (!notification && !prevNotification) return + + // Prefer measuring the NEW one + const targetId = notification ? 'notification-current' : 'notification-prev' + + const timer = setTimeout(() => { + // Find the wrapper of the content + // Since we wrap them, we should measure the content inside + // But getting root is easier if size is set by relative child + const root = document.getElementById('notification-root') + if (root) { + const height = root.offsetHeight + const width = 344 + if (window.electronAPI?.notification?.resize) { + const finalHeight = Math.min(height + 4, 300) + window.electronAPI.notification.resize(width, finalHeight) + } + } + }, 50) + + return () => clearTimeout(timer) + }, [notification, prevNotification]) + + if (!notification && !prevNotification) return null + + return ( +
+ + {/* Previous Notification (Background / Fading Out) */} + {prevNotification && ( +
+ { }} // No-op for background item + onClick={() => { }} + position="top-right" + isStatic={true} + initialVisible={true} + /> +
+ )} + + {/* Current Notification (Foreground / Fading In) */} + {notification && ( +
+ +
+ )} +
+ ) +} diff --git a/src/pages/SettingsPage.scss b/src/pages/SettingsPage.scss index c598716..4615a1e 100644 --- a/src/pages/SettingsPage.scss +++ b/src/pages/SettingsPage.scss @@ -180,7 +180,7 @@ animation: pulse 1.5s ease-in-out infinite; } - input { + input:not(.filter-search-box input) { width: 100%; padding: 10px 16px; border: 1px solid var(--border-color); @@ -207,6 +207,7 @@ select { width: 100%; padding: 10px 16px; + padding-right: 36px; border: 1px solid var(--border-color); border-radius: 9999px; font-size: 14px; @@ -214,6 +215,9 @@ color: var(--text-primary); margin-bottom: 10px; cursor: pointer; + appearance: none; + -webkit-appearance: none; + -moz-appearance: none; &:focus { outline: none; @@ -221,6 +225,124 @@ } } + .select-wrapper { + position: relative; + margin-bottom: 10px; + + select { + margin-bottom: 0; + } + + >svg { + position: absolute; + right: 14px; + top: 50%; + transform: translateY(-50%); + color: var(--text-tertiary); + pointer-events: none; + } + } + + // 自定义下拉选择框 + .custom-select { + position: relative; + margin-bottom: 10px; + } + + .custom-select-trigger { + display: flex; + align-items: center; + justify-content: space-between; + width: 100%; + padding: 10px 16px; + border: 1px solid var(--border-color); + border-radius: 9999px; + font-size: 14px; + background: var(--bg-primary); + color: var(--text-primary); + cursor: pointer; + transition: all 0.2s; + + &:hover { + border-color: var(--text-tertiary); + } + + &.open { + border-color: var(--primary); + box-shadow: 0 0 0 3px color-mix(in srgb, var(--primary) 15%, transparent); + } + } + + .custom-select-value { + flex: 1; + } + + .custom-select-arrow { + color: var(--text-tertiary); + transition: transform 0.2s ease; + + &.rotate { + transform: rotate(180deg); + } + } + + .custom-select-dropdown { + position: absolute; + top: calc(100% + 6px); + left: 0; + right: 0; + background: color-mix(in srgb, var(--bg-primary) 90%, var(--bg-secondary)); + border: 1px solid var(--border-color); + border-radius: 12px; + box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12); + overflow: hidden; + z-index: 100; + backdrop-filter: blur(12px); + -webkit-backdrop-filter: blur(12px); + + // 展开收起动画 + opacity: 0; + visibility: hidden; + transform: translateY(-8px) scaleY(0.95); + transform-origin: top center; + transition: all 0.2s cubic-bezier(0.2, 0, 0.2, 1); + + &.open { + opacity: 1; + visibility: visible; + transform: translateY(0) scaleY(1); + } + } + + .custom-select-option { + display: flex; + align-items: center; + justify-content: space-between; + padding: 12px 16px; + font-size: 14px; + color: var(--text-primary); + cursor: pointer; + transition: background 0.15s; + + &:hover { + background: var(--bg-tertiary); + } + + &.selected { + color: var(--primary); + font-weight: 500; + + svg { + color: var(--primary); + } + } + + svg { + flex-shrink: 0; + } + } + + .select-field { position: relative; margin-bottom: 10px; @@ -1264,4 +1386,173 @@ border-top: 1px solid var(--border-primary); display: flex; justify-content: flex-end; +} + +// 通知过滤双列表容器 +.notification-filter-container { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 16px; + margin-top: 12px; +} + +.filter-panel { + display: flex; + flex-direction: column; + background: var(--bg-tertiary); + border-radius: 12px; + overflow: hidden; + border: 1px solid var(--border-color); +} + +.filter-panel-header { + display: flex; + align-items: center; + justify-content: space-between; + gap: 8px; + padding: 8px 12px; + font-size: 13px; + font-weight: 600; + color: var(--text-secondary); + background: var(--bg-primary); + border-bottom: 1px solid var(--border-color); + + >span { + flex-shrink: 0; + } +} + +.filter-search-box { + display: flex; + align-items: center; + gap: 4px; + flex: 1; + max-width: 140px; + padding: 4px 8px; + background: var(--bg-tertiary); + border: 1px solid var(--border-color); + border-radius: 6px; + transition: all 0.2s; + + &:focus-within { + border-color: var(--primary); + background: var(--bg-primary); + } + + svg { + flex-shrink: 0; + width: 12px; + height: 12px; + color: var(--text-tertiary); + } + + input { + flex: 1; + min-width: 0; + border: none; + background: transparent; + font-size: 12px; + color: var(--text-primary); + outline: none; + + &::placeholder { + color: var(--text-tertiary); + } + } +} + +.filter-panel-count { + display: inline-flex; + align-items: center; + justify-content: center; + min-width: 20px; + height: 20px; + padding: 0 6px; + font-size: 12px; + font-weight: 600; + color: white; + background: var(--primary); + border-radius: 10px; +} + +.filter-panel-list { + flex: 1; + min-height: 200px; + max-height: 300px; + overflow-y: auto; + padding: 8px; + + &::-webkit-scrollbar { + width: 6px; + } + + &::-webkit-scrollbar-track { + background: transparent; + } + + &::-webkit-scrollbar-thumb { + background: var(--border-color); + border-radius: 3px; + } +} + +.filter-panel-item { + display: flex; + align-items: center; + gap: 10px; + padding: 8px 10px; + margin-bottom: 4px; + background: var(--bg-primary); + border-radius: 8px; + cursor: pointer; + transition: all 0.15s; + + &:last-child { + margin-bottom: 0; + } + + &:hover { + background: var(--bg-secondary); + + .filter-item-action { + opacity: 1; + color: var(--primary); + } + } + + &.selected { + background: color-mix(in srgb, var(--primary) 8%, var(--bg-primary)); + border: 1px solid color-mix(in srgb, var(--primary) 20%, transparent); + + &:hover .filter-item-action { + color: var(--danger); + } + } + + .filter-item-name { + flex: 1; + font-size: 14px; + color: var(--text-primary); + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } + + .filter-item-action { + font-size: 18px; + font-weight: 500; + color: var(--text-tertiary); + opacity: 0.5; + transition: all 0.15s; + } +} + +.filter-panel-empty { + display: flex; + align-items: center; + justify-content: center; + height: 100%; + min-height: 100px; + font-size: 13px; + color: var(--text-tertiary); } \ No newline at end of file diff --git a/src/pages/SettingsPage.tsx b/src/pages/SettingsPage.tsx index f746c87..71e8143 100644 --- a/src/pages/SettingsPage.tsx +++ b/src/pages/SettingsPage.tsx @@ -9,14 +9,16 @@ import { Eye, EyeOff, FolderSearch, FolderOpen, Search, Copy, RotateCcw, Trash2, Plug, Check, Sun, Moon, Palette, Database, Download, HardDrive, Info, RefreshCw, ChevronDown, Mic, - ShieldCheck, Fingerprint, Lock, KeyRound + ShieldCheck, Fingerprint, Lock, KeyRound, Bell } from 'lucide-react' +import { Avatar } from '../components/Avatar' import './SettingsPage.scss' -type SettingsTab = 'appearance' | 'database' | 'whisper' | 'export' | 'cache' | 'security' | 'about' +type SettingsTab = 'appearance' | 'notification' | 'database' | 'whisper' | 'export' | 'cache' | 'security' | 'about' const tabs: { id: SettingsTab; label: string; icon: React.ElementType }[] = [ { id: 'appearance', label: '外观', icon: Palette }, + { id: 'notification', label: '通知', icon: Bell }, { id: 'database', label: '数据库连接', icon: Database }, { id: 'whisper', label: '语音识别模型', icon: Mic }, { id: 'export', label: '导出', icon: Download }, @@ -25,6 +27,7 @@ const tabs: { id: SettingsTab; label: string; icon: React.ElementType }[] = [ { id: 'about', label: '关于', icon: Info } ] + interface WxidOption { wxid: string modifiedTime: number @@ -83,6 +86,18 @@ function SettingsPage() { const [exportDefaultExcelCompactColumns, setExportDefaultExcelCompactColumns] = useState(true) const [exportDefaultConcurrency, setExportDefaultConcurrency] = useState(2) + const [notificationEnabled, setNotificationEnabled] = useState(true) + const [notificationPosition, setNotificationPosition] = useState<'top-right' | 'top-left' | 'bottom-right' | 'bottom-left'>('top-right') + const [notificationFilterMode, setNotificationFilterMode] = useState<'all' | 'whitelist' | 'blacklist'>('all') + const [notificationFilterList, setNotificationFilterList] = useState([]) + const [filterSearchKeyword, setFilterSearchKeyword] = useState('') + const [filterModeDropdownOpen, setFilterModeDropdownOpen] = useState(false) + const [positionDropdownOpen, setPositionDropdownOpen] = useState(false) + + + + + const [isLoading, setIsLoadingState] = useState(false) const [isTesting, setIsTesting] = useState(false) const [isDetectingPath, setIsDetectingPath] = useState(false) @@ -167,6 +182,24 @@ function SettingsPage() { } }, []) + // 点击外部关闭自定义下拉框 + useEffect(() => { + const handleClickOutside = (e: MouseEvent) => { + const target = e.target as HTMLElement + if (!target.closest('.custom-select')) { + setFilterModeDropdownOpen(false) + setPositionDropdownOpen(false) + } + } + if (filterModeDropdownOpen || positionDropdownOpen) { + document.addEventListener('click', handleClickOutside) + } + return () => { + document.removeEventListener('click', handleClickOutside) + } + }, [filterModeDropdownOpen, positionDropdownOpen]) + + const loadConfig = async () => { try { const savedKey = await configService.getDecryptKey() @@ -188,6 +221,11 @@ function SettingsPage() { const savedExportDefaultExcelCompactColumns = await configService.getExportDefaultExcelCompactColumns() const savedExportDefaultConcurrency = await configService.getExportDefaultConcurrency() + const savedNotificationEnabled = await configService.getNotificationEnabled() + const savedNotificationPosition = await configService.getNotificationPosition() + const savedNotificationFilterMode = await configService.getNotificationFilterMode() + const savedNotificationFilterList = await configService.getNotificationFilterList() + const savedAuthEnabled = await configService.getAuthEnabled() const savedAuthUseHello = await configService.getAuthUseHello() setAuthEnabled(savedAuthEnabled) @@ -221,6 +259,11 @@ function SettingsPage() { setExportDefaultExcelCompactColumns(savedExportDefaultExcelCompactColumns ?? true) setExportDefaultConcurrency(savedExportDefaultConcurrency ?? 2) + setNotificationEnabled(savedNotificationEnabled) + setNotificationPosition(savedNotificationPosition) + setNotificationFilterMode(savedNotificationFilterMode) + setNotificationFilterList(savedNotificationFilterList) + // 如果语言列表为空,保存默认值 if (!savedTranscribeLanguages || savedTranscribeLanguages.length === 0) { const defaultLanguages = ['zh'] @@ -842,6 +885,245 @@ function SettingsPage() {
) + const renderNotificationTab = () => { + const { sessions } = useChatStore.getState() + + // 获取已过滤会话的信息 + const getSessionInfo = (username: string) => { + const session = sessions.find(s => s.username === username) + return { + displayName: session?.displayName || username, + avatarUrl: session?.avatarUrl || '' + } + } + + // 添加会话到过滤列表 + const handleAddToFilterList = async (username: string) => { + if (notificationFilterList.includes(username)) return + const newList = [...notificationFilterList, username] + setNotificationFilterList(newList) + await configService.setNotificationFilterList(newList) + showMessage('已添加到过滤列表', true) + } + + // 从过滤列表移除会话 + const handleRemoveFromFilterList = async (username: string) => { + const newList = notificationFilterList.filter(u => u !== username) + setNotificationFilterList(newList) + await configService.setNotificationFilterList(newList) + showMessage('已从过滤列表移除', true) + } + + // 过滤掉已在列表中的会话,并根据搜索关键字过滤 + const availableSessions = sessions.filter(s => { + if (notificationFilterList.includes(s.username)) return false + if (filterSearchKeyword) { + const keyword = filterSearchKeyword.toLowerCase() + const displayName = (s.displayName || '').toLowerCase() + const username = s.username.toLowerCase() + return displayName.includes(keyword) || username.includes(keyword) + } + return true + }) + + return ( +
+
+ + 开启后,收到新消息时将显示桌面弹窗通知 +
+ {notificationEnabled ? '已开启' : '已关闭'} + +
+
+ +
+ + 选择通知弹窗在屏幕上的显示位置 +
+
setPositionDropdownOpen(!positionDropdownOpen)} + > + + {notificationPosition === 'top-right' ? '右上角' : + notificationPosition === 'bottom-right' ? '右下角' : + notificationPosition === 'top-left' ? '左上角' : '左下角'} + + +
+
+ {[ + { value: 'top-right', label: '右上角' }, + { value: 'bottom-right', label: '右下角' }, + { value: 'top-left', label: '左上角' }, + { value: 'bottom-left', label: '左下角' } + ].map(option => ( +
{ + const val = option.value as 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left' + setNotificationPosition(val) + setPositionDropdownOpen(false) + await configService.setNotificationPosition(val) + showMessage('通知位置已更新', true) + }} + > + {option.label} + {notificationPosition === option.value && } +
+ ))} +
+
+
+ +
+ + 选择只接收特定会话的通知,或屏蔽特定会话的通知 +
+
setFilterModeDropdownOpen(!filterModeDropdownOpen)} + > + + {notificationFilterMode === 'all' ? '接收所有通知' : + notificationFilterMode === 'whitelist' ? '仅接收白名单' : '屏蔽黑名单'} + + +
+
+ {[ + { value: 'all', label: '接收所有通知' }, + { value: 'whitelist', label: '仅接收白名单' }, + { value: 'blacklist', label: '屏蔽黑名单' } + ].map(option => ( +
{ + const val = option.value as 'all' | 'whitelist' | 'blacklist' + setNotificationFilterMode(val) + setFilterModeDropdownOpen(false) + await configService.setNotificationFilterMode(val) + showMessage( + val === 'all' ? '已设为接收所有通知' : + val === 'whitelist' ? '已设为仅接收白名单通知' : '已设为屏蔽黑名单通知', + true + ) + }} + > + {option.label} + {notificationFilterMode === option.value && } +
+ ))} +
+
+
+ + {notificationFilterMode !== 'all' && ( +
+ + + {notificationFilterMode === 'whitelist' + ? '点击左侧会话添加到白名单,点击右侧会话从白名单移除' + : '点击左侧会话添加到黑名单,点击右侧会话从黑名单移除'} + + +
+ {/* 可选会话列表 */} +
+
+ 可选会话 +
+ + setFilterSearchKeyword(e.target.value)} + /> +
+
+
+ {availableSessions.length > 0 ? ( + availableSessions.map(session => ( +
handleAddToFilterList(session.username)} + > + + {session.displayName || session.username} + + +
+ )) + ) : ( +
+ {filterSearchKeyword ? '没有匹配的会话' : '暂无可添加的会话'} +
+ )} +
+
+ + {/* 已选会话列表 */} +
+
+ {notificationFilterMode === 'whitelist' ? '白名单' : '黑名单'} + {notificationFilterList.length > 0 && ( + {notificationFilterList.length} + )} +
+
+ {notificationFilterList.length > 0 ? ( + notificationFilterList.map(username => { + const info = getSessionInfo(username) + return ( +
handleRemoveFromFilterList(username)} + > + + {info.displayName} + × +
+ ) + }) + ) : ( +
尚未添加任何会话
+ )} +
+
+
+
+ )} +
+ ) + } + const renderDatabaseTab = () => (
@@ -1674,6 +1956,7 @@ function SettingsPage() {
{activeTab === 'appearance' && renderAppearanceTab()} + {activeTab === 'notification' && renderNotificationTab()} {activeTab === 'database' && renderDatabaseTab()} {activeTab === 'whisper' && renderWhisperTab()} {activeTab === 'export' && renderExportTab()} diff --git a/src/services/config.ts b/src/services/config.ts index 01b5cb7..d785cab 100644 --- a/src/services/config.ts +++ b/src/services/config.ts @@ -38,7 +38,13 @@ export const CONFIG_KEYS = { AUTH_USE_HELLO: 'authUseHello', // 更新 - IGNORED_UPDATE_VERSION: 'ignoredUpdateVersion' + IGNORED_UPDATE_VERSION: 'ignoredUpdateVersion', + + // 通知 + NOTIFICATION_ENABLED: 'notificationEnabled', + NOTIFICATION_POSITION: 'notificationPosition', + NOTIFICATION_FILTER_MODE: 'notificationFilterMode', + NOTIFICATION_FILTER_LIST: 'notificationFilterList' } as const export interface WxidConfig { @@ -416,3 +422,46 @@ export async function setIgnoredUpdateVersion(version: string): Promise { await config.set(CONFIG_KEYS.IGNORED_UPDATE_VERSION, version) } +// 获取通知开关 +export async function getNotificationEnabled(): Promise { + const value = await config.get(CONFIG_KEYS.NOTIFICATION_ENABLED) + return value !== false // 默认为 true +} + +// 设置通知开关 +export async function setNotificationEnabled(enabled: boolean): Promise { + await config.set(CONFIG_KEYS.NOTIFICATION_ENABLED, enabled) +} + +// 获取通知位置 +export async function getNotificationPosition(): Promise<'top-right' | 'top-left' | 'bottom-right' | 'bottom-left'> { + const value = await config.get(CONFIG_KEYS.NOTIFICATION_POSITION) + return (value as any) || 'top-right' +} + +// 设置通知位置 +export async function setNotificationPosition(position: string): Promise { + await config.set(CONFIG_KEYS.NOTIFICATION_POSITION, position) +} + +// 获取通知过滤模式 +export async function getNotificationFilterMode(): Promise<'all' | 'whitelist' | 'blacklist'> { + const value = await config.get(CONFIG_KEYS.NOTIFICATION_FILTER_MODE) + return (value as any) || 'all' +} + +// 设置通知过滤模式 +export async function setNotificationFilterMode(mode: 'all' | 'whitelist' | 'blacklist'): Promise { + await config.set(CONFIG_KEYS.NOTIFICATION_FILTER_MODE, mode) +} + +// 获取通知过滤列表 +export async function getNotificationFilterList(): Promise { + const value = await config.get(CONFIG_KEYS.NOTIFICATION_FILTER_LIST) + return Array.isArray(value) ? value : [] +} + +// 设置通知过滤列表 +export async function setNotificationFilterList(list: string[]): Promise { + await config.set(CONFIG_KEYS.NOTIFICATION_FILTER_LIST, list) +} diff --git a/src/types/models.ts b/src/types/models.ts index 2600c69..a3b0963 100644 --- a/src/types/models.ts +++ b/src/types/models.ts @@ -9,6 +9,9 @@ export interface ChatSession { lastMsgType: number displayName?: string avatarUrl?: string + lastMsgSender?: string + lastSenderDisplayName?: string + selfWxid?: string // Helper field to avoid extra API calls } // 联系人 From a557f2ada35b1fcae9c2d0e2d8923e24b1986cf9 Mon Sep 17 00:00:00 2001 From: xuncha <1658671838@qq.com> Date: Mon, 2 Feb 2026 22:33:11 +0800 Subject: [PATCH 07/11] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=AF=B9xml=E7=9A=84?= =?UTF-8?q?=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- electron/services/exportService.ts | 328 ++++++++++++++++++++++++++--- 1 file changed, 296 insertions(+), 32 deletions(-) diff --git a/electron/services/exportService.ts b/electron/services/exportService.ts index bd91034..478c492 100644 --- a/electron/services/exportService.ts +++ b/electron/services/exportService.ts @@ -43,6 +43,7 @@ interface ChatLabMessage { timestamp: number type: number content: string | null + chatRecords?: any[] // 嵌套的聊天记录 } interface ChatLabExport { @@ -228,20 +229,27 @@ class ExportService { * 转换微信消息类型到 ChatLab 类型 */ private convertMessageType(localType: number, content: string): number { - if (localType === 49) { - const typeMatch = /(\d+)<\/type>/i.exec(content) - if (typeMatch) { - const subType = parseInt(typeMatch[1]) - switch (subType) { - case 6: return 4 // 文件 -> FILE - case 33: - case 36: return 24 // 小程序 -> SHARE - case 57: return 25 // 引用回复 -> REPLY - default: return 7 // 链接 -> LINK - } + // 检查 XML 中的 type 标签(支持大 localType 的情况) + const xmlTypeMatch = /(\d+)<\/type>/i.exec(content) + const xmlType = xmlTypeMatch ? parseInt(xmlTypeMatch[1]) : null + + // 特殊处理 type 49 或 XML type + if (localType === 49 || xmlType) { + const subType = xmlType || 0 + switch (subType) { + case 6: return 4 // 文件 -> FILE + case 19: return 7 // 聊天记录 -> LINK (ChatLab 没有专门的聊天记录类型) + case 33: + case 36: return 24 // 小程序 -> SHARE + case 57: return 25 // 引用回复 -> REPLY + case 2000: return 99 // 转账 -> OTHER (ChatLab 没有转账类型) + case 5: + case 49: return 7 // 链接 -> LINK + default: + if (xmlType) return 7 // 有 XML type 但未知,默认为链接 } } - return MESSAGE_TYPE_MAP[localType] ?? 99 + return MESSAGE_TYPE_MAP[localType] ?? 99 // 未知类型 -> OTHER } /** @@ -346,30 +354,87 @@ class ExportService { * 解析消息内容为可读文本 * 注意:语音消息在这里返回占位符,实际转文字在导出时异步处理 */ - private parseMessageContent(content: string, localType: number): string | null { + private parseMessageContent(content: string, localType: number, sessionId?: string, createTime?: number): string | null { if (!content) return null + // 检查 XML 中的 type 标签(支持大 localType 的情况) + const xmlTypeMatch = /(\d+)<\/type>/i.exec(content) + const xmlType = xmlTypeMatch ? xmlTypeMatch[1] : null + switch (localType) { - case 1: + case 1: // 文本 return this.stripSenderPrefix(content) case 3: return '[图片]' - case 34: return '[语音消息]' // 占位符,导出时会替换为转文字结果 + case 34: { + // 语音消息 - 尝试获取转写文字 + if (sessionId && createTime) { + const transcript = voiceTranscribeService.getCachedTranscript(sessionId, createTime) + if (transcript) { + return `[语音消息] ${transcript}` + } + } + return '[语音消息]' // 占位符,导出时会替换为转文字结果 + } case 42: return '[名片]' case 43: return '[视频]' case 47: return '[动画表情]' case 48: return '[位置]' case 49: { const title = this.extractXmlValue(content, 'title') - return title || '[链接]' + const type = this.extractXmlValue(content, 'type') + + // 转账消息特殊处理 + if (type === '2000') { + const feedesc = this.extractXmlValue(content, 'feedesc') + const payMemo = this.extractXmlValue(content, 'pay_memo') + if (feedesc) { + return payMemo ? `[转账] ${feedesc} ${payMemo}` : `[转账] ${feedesc}` + } + return '[转账]' + } + + if (type === '6') return title ? `[文件] ${title}` : '[文件]' + if (type === '19') return title ? `[聊天记录] ${title}` : '[聊天记录]' + if (type === '33' || type === '36') return title ? `[小程序] ${title}` : '[小程序]' + if (type === '57') return title || '[引用消息]' + if (type === '5' || type === '49') return title ? `[链接] ${title}` : '[链接]' + return title ? `[链接] ${title}` : '[链接]' } case 50: return this.parseVoipMessage(content) case 10000: return this.cleanSystemMessage(content) case 266287972401: return this.cleanSystemMessage(content) // 拍一拍 + case 244813135921: { + // 引用消息 + const title = this.extractXmlValue(content, 'title') + return title || '[引用消息]' + } default: - if (content.includes('57')) { + // 对于未知的 localType,检查 XML type 来判断消息类型 + if (xmlType) { const title = this.extractXmlValue(content, 'title') - return title || '[引用消息]' + + // 转账消息 + if (xmlType === '2000') { + const feedesc = this.extractXmlValue(content, 'feedesc') + const payMemo = this.extractXmlValue(content, 'pay_memo') + if (feedesc) { + return payMemo ? `[转账] ${feedesc} ${payMemo}` : `[转账] ${feedesc}` + } + return '[转账]' + } + + // 其他类型 + if (xmlType === '6') return title ? `[文件] ${title}` : '[文件]' + if (xmlType === '19') return title ? `[聊天记录] ${title}` : '[聊天记录]' + if (xmlType === '33' || xmlType === '36') return title ? `[小程序] ${title}` : '[小程序]' + if (xmlType === '57') return title || '[引用消息]' + if (xmlType === '5' || xmlType === '49') return title ? `[链接] ${title}` : '[链接]' + + // 有 title 就返回 title + if (title) return title } + + // 最后尝试提取文本内容 return this.stripSenderPrefix(content) || null } } @@ -430,15 +495,14 @@ class ExportService { const typeMatch = /(\d+)<\/type>/i.exec(normalized) const subType = typeMatch ? parseInt(typeMatch[1], 10) : 0 const title = this.extractXmlValue(normalized, 'title') || this.extractXmlValue(normalized, 'appname') - if (subType === 3 || normalized.includes('(\d+)<\/type>/i.exec(content) + const xmlType = xmlTypeMatch ? xmlTypeMatch[1] : null + + if (xmlType) { + switch (xmlType) { + case '2000': return '转账消息' + case '5': return '链接消息' + case '6': return '文件消息' + case '19': return '聊天记录' + case '33': + case '36': return '小程序消息' + case '57': return '引用消息' + } + } + } + const typeNames: Record = { 1: '文本消息', 3: '图片消息', @@ -613,7 +707,8 @@ class ExportService { 48: '位置消息', 49: '链接消息', 50: '通话消息', - 10000: '系统消息' + 10000: '系统消息', + 244813135921: '引用消息' } return typeNames[localType] || '其他消息' } @@ -690,6 +785,71 @@ class ExportService { return this.htmlStyleCache } + /** + * 解析合并转发的聊天记录 (Type 19) + */ + private parseChatHistory(content: string): any[] | undefined { + try { + const type = this.extractXmlValue(content, 'type') + if (type !== '19') return undefined + + // 提取 recorditem 中的 CDATA + const match = /[\s\S]*?[\s\S]*?<\/recorditem>/.exec(content) + if (!match) return undefined + + const innerXml = match[1] + const items: any[] = [] + const itemRegex = /([\s\S]*?)<\/dataitem>/g + let itemMatch + + while ((itemMatch = itemRegex.exec(innerXml)) !== null) { + const attrs = itemMatch[1] + const body = itemMatch[2] + + const datatypeMatch = /datatype="(\d+)"/.exec(attrs) + const datatype = datatypeMatch ? parseInt(datatypeMatch[1]) : 0 + + const sourcename = this.extractXmlValue(body, 'sourcename') + const sourcetime = this.extractXmlValue(body, 'sourcetime') + const sourceheadurl = this.extractXmlValue(body, 'sourceheadurl') + const datadesc = this.extractXmlValue(body, 'datadesc') + const datatitle = this.extractXmlValue(body, 'datatitle') + const fileext = this.extractXmlValue(body, 'fileext') + const datasize = parseInt(this.extractXmlValue(body, 'datasize') || '0') + + items.push({ + datatype, + sourcename, + sourcetime, + sourceheadurl, + datadesc: this.decodeHtmlEntities(datadesc), + datatitle: this.decodeHtmlEntities(datatitle), + fileext, + datasize + }) + } + + return items.length > 0 ? items : undefined + } catch (e) { + console.error('ExportService: 解析聊天记录失败:', e) + return undefined + } + } + + /** + * 解码 HTML 实体 + */ + private decodeHtmlEntities(text: string): string { + if (!text) return '' + return text + .replace(/</g, '<') + .replace(/>/g, '>') + .replace(/&/g, '&') + .replace(/"/g, '"') + .replace(/'/g, "'") + .replace(/'/g, "'") + } + private normalizeAppMessageContent(content: string): string { if (!content) return '' if (content.includes('<') && content.includes('>')) { @@ -1235,6 +1395,7 @@ class ExportService { let emojiCdnUrl: string | undefined let emojiMd5: string | undefined let videoMd5: string | undefined + let chatRecordList: any[] | undefined if (localType === 3 && content) { // 图片消息 @@ -1247,6 +1408,12 @@ class ExportService { } else if (localType === 43 && content) { // 视频消息 videoMd5 = this.extractVideoMd5(content) + } else if (localType === 49 && content) { + // 检查是否是聊天记录消息(type=19) + const xmlType = this.extractXmlValue(content, 'type') + if (xmlType === '19') { + chatRecordList = this.parseChatHistory(content) + } } rows.push({ @@ -1260,7 +1427,8 @@ class ExportService { imageDatName, emojiCdnUrl, emojiMd5, - videoMd5 + videoMd5, + chatRecordList }) if (firstTime === null || createTime < firstTime) firstTime = createTime @@ -1767,10 +1935,10 @@ class ExportService { // 使用预先转写的文字 content = voiceTranscriptMap.get(msg.localId) || '[语音消息 - 转文字失败]' } else { - content = this.parseMessageContent(msg.content, msg.localType) + content = this.parseMessageContent(msg.content, msg.localType, sessionId, msg.createTime) } - return { + const message: ChatLabMessage = { sender: msg.senderUsername, accountName: memberInfo.accountName, groupNickname: memberInfo.groupNickname, @@ -1778,6 +1946,102 @@ class ExportService { type: this.convertMessageType(msg.localType, msg.content), content: content } + + // 如果有聊天记录,添加为嵌套字段 + if (msg.chatRecordList && msg.chatRecordList.length > 0) { + const chatRecords: any[] = [] + + for (const record of msg.chatRecordList) { + // 解析时间戳 (格式: "YYYY-MM-DD HH:MM:SS") + let recordTimestamp = msg.createTime + if (record.sourcetime) { + try { + const timeParts = record.sourcetime.match(/(\d{4})-(\d{2})-(\d{2}) (\d{2}):(\d{2}):(\d{2})/) + if (timeParts) { + const date = new Date( + parseInt(timeParts[1]), + parseInt(timeParts[2]) - 1, + parseInt(timeParts[3]), + parseInt(timeParts[4]), + parseInt(timeParts[5]), + parseInt(timeParts[6]) + ) + recordTimestamp = Math.floor(date.getTime() / 1000) + } + } catch (e) { + console.error('解析聊天记录时间失败:', e) + } + } + + // 转换消息类型 + let recordType = 0 // TEXT + let recordContent = record.datadesc || record.datatitle || '' + + switch (record.datatype) { + case 1: + recordType = 0 // TEXT + break + case 3: + recordType = 1 // IMAGE + recordContent = '[图片]' + break + case 8: + case 49: + recordType = 4 // FILE + recordContent = record.datatitle ? `[文件] ${record.datatitle}` : '[文件]' + break + case 34: + recordType = 2 // VOICE + recordContent = '[语音消息]' + break + case 43: + recordType = 3 // VIDEO + recordContent = '[视频]' + break + case 47: + recordType = 5 // EMOJI + recordContent = '[动画表情]' + break + default: + recordType = 0 + recordContent = record.datadesc || record.datatitle || '[消息]' + } + + const chatRecord: any = { + sender: record.sourcename || 'unknown', + accountName: record.sourcename || 'unknown', + timestamp: recordTimestamp, + type: recordType, + content: recordContent + } + + // 添加头像(如果启用导出头像) + if (options.exportAvatars && record.sourceheadurl) { + chatRecord.avatar = record.sourceheadurl + } + + chatRecords.push(chatRecord) + + // 添加成员信息到 memberSet + if (record.sourcename && !collected.memberSet.has(record.sourcename)) { + const newMember: ChatLabMember = { + platformId: record.sourcename, + accountName: record.sourcename + } + if (options.exportAvatars && record.sourceheadurl) { + newMember.avatar = record.sourceheadurl + } + collected.memberSet.set(record.sourcename, { + member: newMember, + avatarUrl: record.sourceheadurl + }) + } + } + + message.chatRecords = chatRecords + } + + return message }) const avatarMap = options.exportAvatars From 216f20132706715b2690dd5555200836b5c65d95 Mon Sep 17 00:00:00 2001 From: xuncha <1658671838@qq.com> Date: Mon, 2 Feb 2026 22:40:39 +0800 Subject: [PATCH 08/11] =?UTF-8?q?=E5=90=8C=E6=AD=A5=E4=BA=86=E5=AF=86?= =?UTF-8?q?=E8=AF=AD=E7=9A=84=E5=A4=B4=E5=83=8F=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- electron/services/exportService.ts | 29 +++-------------------------- 1 file changed, 3 insertions(+), 26 deletions(-) diff --git a/electron/services/exportService.ts b/electron/services/exportService.ts index 478c492..d129766 100644 --- a/electron/services/exportService.ts +++ b/electron/services/exportService.ts @@ -1613,33 +1613,10 @@ class ExportService { const result = new Map() if (members.length === 0) return result + // 直接使用 URL,不转换为 base64(与 ciphertalk 保持一致) for (const member of members) { - const fileInfo = this.resolveAvatarFile(member.avatarUrl) - if (!fileInfo) continue - try { - let data: Buffer | null = null - let mime = fileInfo.mime - if (fileInfo.data) { - data = fileInfo.data - } else if (fileInfo.sourcePath && fs.existsSync(fileInfo.sourcePath)) { - data = await fs.promises.readFile(fileInfo.sourcePath) - } else if (fileInfo.sourceUrl) { - const downloaded = await this.downloadToBuffer(fileInfo.sourceUrl) - if (downloaded) { - data = downloaded.data - mime = downloaded.mime || mime - } - } - if (!data) continue - - // 优先使用内容检测出的 MIME 类型 - const detectedMime = this.detectMimeType(data) - const finalMime = detectedMime || mime || this.inferImageMime(fileInfo.ext) - - const base64 = data.toString('base64') - result.set(member.username, `data:${finalMime};base64,${base64}`) - } catch { - continue + if (member.avatarUrl) { + result.set(member.username, member.avatarUrl) } } From 638246e74d49ba6d2c29061db57afce9b548d365 Mon Sep 17 00:00:00 2001 From: xuncha <1658671838@qq.com> Date: Mon, 2 Feb 2026 22:57:40 +0800 Subject: [PATCH 09/11] =?UTF-8?q?=E8=A7=86=E9=A2=91=E8=A7=A3=E5=AF=86?= =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- electron/services/videoService.ts | 41 ++++++++++++++----- electron/services/wcdbCore.ts | 2 +- src/pages/ChatPage.scss | 43 +++++++++++++++++++- src/pages/ChatPage.tsx | 66 ++++++++++++++++++++----------- 4 files changed, 118 insertions(+), 34 deletions(-) diff --git a/electron/services/videoService.ts b/electron/services/videoService.ts index 5420076..a24c02c 100644 --- a/electron/services/videoService.ts +++ b/electron/services/videoService.ts @@ -97,7 +97,7 @@ class VideoService { return realMd5 } } catch (e) { - // Silently fail + // 忽略错误 } } } @@ -105,11 +105,22 @@ class VideoService { // 方法2:使用 wcdbService.execQuery 查询加密的 hardlink.db if (dbPath) { - const encryptedDbPaths = [ - join(dbPath, wxid, 'db_storage', 'hardlink', 'hardlink.db'), - join(dbPath, cleanedWxid, 'db_storage', 'hardlink', 'hardlink.db') - ] - + // 检查 dbPath 是否已经包含 wxid + const dbPathLower = dbPath.toLowerCase() + const wxidLower = wxid.toLowerCase() + const cleanedWxidLower = cleanedWxid.toLowerCase() + const dbPathContainsWxid = dbPathLower.includes(wxidLower) || dbPathLower.includes(cleanedWxidLower) + + const encryptedDbPaths: string[] = [] + if (dbPathContainsWxid) { + // dbPath 已包含 wxid,不需要再拼接 + encryptedDbPaths.push(join(dbPath, 'db_storage', 'hardlink', 'hardlink.db')) + } else { + // dbPath 不包含 wxid,需要拼接 + encryptedDbPaths.push(join(dbPath, wxid, 'db_storage', 'hardlink', 'hardlink.db')) + encryptedDbPaths.push(join(dbPath, cleanedWxid, 'db_storage', 'hardlink', 'hardlink.db')) + } + for (const p of encryptedDbPaths) { if (existsSync(p)) { try { @@ -129,6 +140,7 @@ class VideoService { } } } catch (e) { + // 忽略错误 } } } @@ -155,7 +167,6 @@ class VideoService { * 文件命名: {md5}.mp4, {md5}.jpg, {md5}_thumb.jpg */ async getVideoInfo(videoMd5: string): Promise { - const dbPath = this.getDbPath() const wxid = this.getMyWxid() @@ -166,7 +177,19 @@ class VideoService { // 先尝试从数据库查询真正的视频文件名 const realVideoMd5 = await this.queryVideoFileName(videoMd5) || videoMd5 - const videoBaseDir = join(dbPath, wxid, 'msg', 'video') + // 检查 dbPath 是否已经包含 wxid,避免重复拼接 + const dbPathLower = dbPath.toLowerCase() + const wxidLower = wxid.toLowerCase() + const cleanedWxid = this.cleanWxid(wxid) + + let videoBaseDir: string + if (dbPathLower.includes(wxidLower) || dbPathLower.includes(cleanedWxid.toLowerCase())) { + // dbPath 已经包含 wxid,直接使用 + videoBaseDir = join(dbPath, 'msg', 'video') + } else { + // dbPath 不包含 wxid,需要拼接 + videoBaseDir = join(dbPath, wxid, 'msg', 'video') + } if (!existsSync(videoBaseDir)) { return { exists: false } @@ -202,7 +225,7 @@ class VideoService { } } } catch (e) { - console.error('[VideoService] Error searching for video:', e) + // 忽略错误 } return { exists: false } diff --git a/electron/services/wcdbCore.ts b/electron/services/wcdbCore.ts index d6124dd..fe4f18a 100644 --- a/electron/services/wcdbCore.ts +++ b/electron/services/wcdbCore.ts @@ -191,7 +191,7 @@ export class WcdbCore { } private isLogEnabled(): boolean { - if (process.env.WEFLOW_WORKER === '1') return false + // 移除 Worker 线程的日志禁用逻辑,允许在 Worker 中记录日志 if (process.env.WCDB_LOG_ENABLED === '1') return true return this.logEnabled } diff --git a/src/pages/ChatPage.scss b/src/pages/ChatPage.scss index ea3329d..b86bf2d 100644 --- a/src/pages/ChatPage.scss +++ b/src/pages/ChatPage.scss @@ -2146,8 +2146,7 @@ } .video-placeholder, -.video-loading, -.video-unavailable { +.video-loading { min-width: 120px; min-height: 80px; display: flex; @@ -2167,6 +2166,46 @@ } } +.video-unavailable { + min-width: 160px; + min-height: 120px; + border-radius: 12px; + background: var(--bg-tertiary); + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + gap: 6px; + color: var(--text-tertiary); + font-size: 12px; + border: none; + cursor: pointer; + text-align: center; + -webkit-app-region: no-drag; + transition: transform 0.15s ease, box-shadow 0.15s ease; + + svg { + width: 24px; + height: 24px; + opacity: 0.6; + } + + &.clicked { + transform: scale(0.98); + box-shadow: 0 0 0 2px var(--primary-light); + } + + &:disabled { + cursor: default; + opacity: 0.7; + } +} + +.video-action { + font-size: 11px; + color: var(--text-quaternary); +} + .video-loading { .spin { animation: spin 1s linear infinite; diff --git a/src/pages/ChatPage.tsx b/src/pages/ChatPage.tsx index fdbc300..ee7da3b 100644 --- a/src/pages/ChatPage.tsx +++ b/src/pages/ChatPage.tsx @@ -2155,6 +2155,9 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat, o }, [isVoice, message.localId, requestVoiceTranscript]) // 视频懒加载 + const videoAutoLoadTriggered = useRef(false) + const [videoClicked, setVideoClicked] = useState(false) + useEffect(() => { if (!isVideo || !videoContainerRef.current) return @@ -2178,19 +2181,18 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat, o return () => observer.disconnect() }, [isVideo]) - // 加载视频信息 - useEffect(() => { - if (!isVideo || !isVideoVisible || videoInfo || videoLoading) return - if (!videoMd5) { - - return - } - - + // 视频加载中状态引用,避免依赖问题 + const videoLoadingRef = useRef(false) + + // 加载视频信息(添加重试机制) + const requestVideoInfo = useCallback(async () => { + if (!videoMd5 || videoLoadingRef.current) return + + videoLoadingRef.current = true setVideoLoading(true) - window.electronAPI.video.getVideoInfo(videoMd5).then((result: { success: boolean; exists: boolean; videoUrl?: string; coverUrl?: string; thumbUrl?: string; error?: string }) => { - - if (result && result.success) { + try { + const result = await window.electronAPI.video.getVideoInfo(videoMd5) + if (result && result.success && result.exists) { setVideoInfo({ exists: result.exists, videoUrl: result.videoUrl, @@ -2198,16 +2200,25 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat, o thumbUrl: result.thumbUrl }) } else { - console.error('[Video Debug] Video info failed:', result) setVideoInfo({ exists: false }) } - }).catch((err: unknown) => { - console.error('[Video Debug] getVideoInfo error:', err) + } catch (err) { setVideoInfo({ exists: false }) - }).finally(() => { + } finally { + videoLoadingRef.current = false setVideoLoading(false) - }) - }, [isVideo, isVideoVisible, videoInfo, videoLoading, videoMd5]) + } + }, [videoMd5]) + + // 视频进入视野时自动加载 + useEffect(() => { + if (!isVideo || !isVideoVisible) return + if (videoInfo?.exists) return // 已成功加载,不需要重试 + if (videoAutoLoadTriggered.current) return + + videoAutoLoadTriggered.current = true + void requestVideoInfo() + }, [isVideo, isVideoVisible, videoInfo, requestVideoInfo]) // 根据设置决定是否自动转写 @@ -2366,16 +2377,27 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat, o ) } - // 视频不存在 + // 视频不存在 - 添加点击重试功能 if (!videoInfo?.exists || !videoInfo.videoUrl) { return ( -
+
+ 视频未找到 + {videoClicked ? '已点击…' : '点击重试'} + ) } From 419d5aace3b2759f631fa1a66e14e166ae7eeca1 Mon Sep 17 00:00:00 2001 From: xuncha <1658671838@qq.com> Date: Tue, 3 Feb 2026 14:55:29 +0800 Subject: [PATCH 10/11] 33 --- mdassets/us.png | Bin 189415 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 mdassets/us.png diff --git a/mdassets/us.png b/mdassets/us.png deleted file mode 100644 index 771c7ede958c9cd6f0bf3a89b70e43cb034d737f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 189415 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%0Asj^6QDTGkh>~2oRAZ&k+6=oSRmTiido#%O zyCMf$%t{I(F>$TP(UPo}{7YXSy~$al-tLbdBV_G!nLAIUAw{U%*BG}D9{KH$f+sM(Wnm#u)XmCgze7aM zzSC3CT%$cCJaqL*s57KlQ7^~-@vUpv|M*9~dnx^;dNe5DlV;r7_jzyB^5?HZ|9KR9 zTewOrScbVSO!(5Rgsk`M9=PS+_h6BxX2sAnM>%bOv_ zEnsL$#NL_za-mH7y%bJ}VcOp+fhAiezSA4}bo|-a(_g=_Of_4yX18Ph;X_xSXWq)s z@sZV9DYU6(M;vE|Evxs5P18|xuHR#Ci|2kZ&U>$h?obHP$Jam4PE>O4cD3>zMcL)o zLYaE)qI(>j=DYuyXI*)-5B7^o<6IsBP*6CAu;wfIZTk{URQqv_t-QGtQ&-HsNIr5$ zp(($&ON7fx#SPnn^)|OIBO4u_qkBf_U=}VvRRe;fi=AltTmTDeKo!L?Po6wUnpO_s z$hx?x(v7e|Gyx3S{D=2}MAh|yshZC%jW^f=gHF!eZ~)Am(86$77$janx1DZ8L=5`U zt*dE^;*b9Rmbm*EJSKG@X?4?i5|WWGrz3}U1d;X0orfh1wo6`2cj15_b)_8az69Ln zbc5(~0S2wZ4|NU4!Z0_<_JLOTr1R5JapnmKgrgAWR8{#sy^A-xfQwLY4N_WhG5sgP zUD2MSn{;djHsCb6lMkLQRbC-|4I|alyQpr3^>=OLtUv!jcB}IWSavk2k@&pLm!QFe zwZ7bg1-k;TZ4F0@&~&%T}pVzS%6nSyC3L^K*$NM)FiIRWrJ1C4oLFcn-h`eL?m%(A5bk- zs6Zo)>}JjGg9_Lp6Is(_YM-vS0RRZ00HsXS_i(UI!VV-rCmvbY^C(toGi`^oVUUzuEOx}2JK%8Z!&#u~RVW7GiAYrO-xH^`fqGV{iUFke zCSYCOCtHZ-Lg16Q-O+~vXZ7tPzJ(u-2AO-IaOzAdj>7c>Bvt|)?CXKF0mLSlks0;g z-uV}c;ZYCfbVm8zov@-ZA=thjFxR7gMW zylgOqVx2f-BcVy`o~syK;TcEfD_`)CtHABO}95ZK=<|Q?Ybn; zM}t2by*zVCGKLOP_=v_dnxSx4v4;f~EmDKr+P%39XawKPnX*snDUS;iNRp8q!^KVa z*hwRX%V#tp9#-`k0Ylej?|4P@Hq;_#J_EMGIKHGG^X45UoDpM*I~XwXaG98#@`E;` zfg`fT>7hU)q>Odvy*UY#D2>h2Ejd_&P4V^u?ku=z!ON|*4+Qr*<#7Q(64PS%`Yx{0 z&(Ib3BK`;Vq-t9`pmrrk&R)4fgBw1q{JS0t@!V2%dBFT0ovHanlC{$c&~N#wZ#KZV zF)x~y=2{Wg7j{_0i#V$zthxtfuw-_Lz%cGD>q4-0eEaAx*|mC@y@SHYF41)>%_+igrl9#Cb%7ergkjfRfmu58%6)D+%G#jeNk6Y zdj3}g7p?dz20g=d1UF~NAaAEO(Ndx+Q_>YiNCxut4m8z zb^P7);yb{0wVG~c+IGpLkgAGzPtSKNS)AIlCQ=POfJw12ZsZkIAMC06x z@&2D?^iGdmz2IfJl@E96`Muh;O%-38+C(?$CVJhvc4FoB;hZE-y$6wA&3|)xA8Qp^ z7x)ZZlZZcD9u=vUT>qBwVluj0#$uF@J@*$&*6xc}$A9s(0I?NIHzf0KZSWp)ygZOV z&4bGndaSZ9x`Gp5_XbzC-w>{u9P+JT_}R-LUB%rFBVqsRV;UUq>ofO`V?-LdU z4K|@9(RiN9LT^0>&WC4?a$Ydr?#2a+x!=Y?I`tF}V1pBQ-V70WU9&(8Q~U6yOp7Nnq^^vE4z38JCy+Yh z9VTb2&zvy<)jFxM4zXFPH%(*!l98Tyk}i`5muPg`Q21l#H}!iP|d1dH4r zdtJTa2o>0*Azd}}=IKK}(Hup`Q-=Rjswb zqbe&I%aI9Q26vUXjEoP!Rdw8+zUou;iPapWZ33v;`+;QKi4h+=wD<&2Tm(j0 z{#1b#x^iW zyI^kAtN8f+GyW@rhT+(!5K6lxu|DE2_QEd1dZG`ik9J77xAY*J$L2%xF{GWA0|LzH zp*^Zr?;mBganQHmJD!V(Kr_&pkfSaQ??}NCL+EhB%%p9Yo6kvMc?@7Dz@cb>#V!`p zabxk>68RUmS;m*LTI2LHcayfLl)0nuxfg2wE^L~TeZtE;0Ae~Rc-qvdp*Z<~nlXnu zvCs%*yP%DOQ?48cNKOw8n>bSZEk5ALz66?Sx?&zu4-_3X0#YseWDC>GeRQ-{6w@kHhmhv z&E7+L5GT|K68<4>@4BJG5KIVKctd<*tI?*9W-b+bKr)%oLYgA8ye=;iX%FHDi_@$d zDS$vnq`tns6V5~TrrAP5d1y!TKI8#_U(39YpQ!t)2f4^O@MxJ7w{8f(Xp_4(h8!AY zlxzOLo&>@>XxlEOgpZug3mb_{^6AY_aw=YqBPLYbf4O@WVm7h60Az=*1`v(d5n2_3Lj9 z@jnp4O?hj{MH#9z6mpiA21>Eo_Qp#f=>AAq(^No#?F5}-N6M{Y1;aig^n-?E*Hf29 zv7AHN5{q~DJUgv`S?zB5^l7n=2ca4mU-U_{($IL*({qNfqC;9|A1&pvINj2mgG>wJ z()!tZe|2I}O{h8-J+w8y_%jDKqB!$C5=@KcAq#eyATK8z0fUK;r!sV}%^l}*2o*yD z2JntKN5tizKA`ka>|s6mW&i%wXn^oHZjZrsmj2qH?X=)094if0d=rehkm9?g;tmc) zU*xuStp;|7d}B$kTc>^D`6tk_8Yq5BwP>}qu%7H8a${Wwp4Zi}Ne{Z7e@PgSJ*14z zs#yWk8~n|t#mY0$^-}n0vKln_Z=H^|F^%`aFI+E+Ax6OcXrWUUKHmdBe;{>J`FJ3n zs-bZoMIz*(7g`n<9G^+@`wPM%_Z<2&o}kyr_{M6fXxs<)Am~@VoHeG;8H}?)4O{~7 z%1_|(_En!CxCVmSxL*qy`Z+SPqt7baOBZMl?X(zc8PN=ST3r8ir$I`gX=d zYK(o=$GI;~(a@LLZP91u`CvFa#i>FMbNRn|gBN?X@9j-E!xs_){vLuk@xPP%n~&hJ zGvY#ic>(M|GfUU!F^Gl}>0!W;b$Jgvx5D7RABM(c=ZBIlU?X{xL^awK-fLuU`vHUj zeT|pHn#nU5;sot67;E3v1Zc)qgs)HgyJZW&3iJmxh<0pAZp-R*fAUdr%vF6#SrQ zyNSE2L>8eq%kd+Jeo(kL2I#|P!e{^nKaP%wS-|ImS|15P$`q>~5Rze|ad2mPekc$x z9{Xv9nzfUR;`VH`I+?~?SUt)^F^Ar9CWWi!bj%B+W+{=C2X?y+T&X}!3%8myw-h`jZapmxkbt|!Nwg=O-*I@QC2!4RSZ_ET)40i z%9S-WTQD$?a~S2TJ!jY6y(aiSEl#4RYE#t`WH&)h1fYI_jtGXK<3Qm{J-#E)o)^); zLEV231pb~bE$1|fi;H8^e#DC((rtI%kcW%38k1)F$2=$lWSFgf22KsvNVVOM)oGbb z@XoK{FN<-8gZvOe$Cp@*XZS89YMg}vPV$x7_qaxO@E`;c6rB=R=IDTP1VP8^p6Da~G(RtIXDPesG!#9BZ{Dnb zqK}#!1w;I#V1&3ylakPEIxbmKMrE}E7#`!YW=VX^18<2;W6Lv{l${wLAD`8V(Qq#S zi&l<8WCutazOn8CS5^~%a$OOWPeG*rrkunK3Yo??uUYVQ!H^gV$H07tF3hkzP~sAT ztueBBcJwhq+JH8=1T-z&6##t9vA1+5a;d}*zy7=e)EgFMsH0a+uw+^L|H13JA~8F> z*lRPRgi?BBU?D$bG_DkIjEQhW*3mhK=hRX6aG8_wJ2AlziOC39RIXSA@wGSh&#gjJ@j3 zD72C8BQi=exh#ZXN}L|O@Vy%eXC(pCbv)5Ce*tA+=QXW87(>99y*`79=>4_8ip z#FNF^UcOij@ecG!+MpO#hJOs+2zX!kgFb>VpjcWWAX0?zpUdD~bNhZ#++#yQ?YPCF z$KD>DpxHS)Z^y~pdCSG#Nxg*uZ}py0@dl&_JOqQwjz0yFJbYnsyF_f#(TG`qS<+E} z=h6hC!OKSJ4-KB*wFpyLVg!z4!$z&}g=7W;vQm6&r&^tkIiLIE z!}*V(gWynkk9M9feIJXg)^W#?xg~{=+cF6uGibZ&9OdDRzsRD{(=m(^ZIip&VqsCy zVgiP{IQaZb*SrN#mnL?7(I%T^nB39RR$^N2+Ai34aCjmISzPO~0%P%uy%`2I ze0o5QrH))$fr+%RY>SNt@|00?l{WcEXkS9BjrOJKG~h$5Zdtrv19(_9c|(euA+_YK z2}uVh5sXb1g|~NtfJ4lIpQZ?Ek0nZbVoRtjF2i|FqqGD?j)gaubG8*`U@&7zs1wr; z93hSk&<-lC)SYwB$T-I?2GDVqCmG-+-KaoxYv0p!wX<*fBDwwI{5U{lVUfARB$1|w zB`0C}0+}m3;0Wx-lo(V1O)g>-+UuHIQM!qMQ({p&h=a-Wl+Jp));s522ddEne0in& z%wdx)GIHI&L!X=gtd(96{$=Xp0<@&ag8b)G3KKQFG;ex|`1aTdGN>mjnpp__rtT5k zvRd?Ue6hsW%`J}cs57`Js=zVXCjyA`)_VRFR-_tb_y|z`^@<#HQwf?C6G`s3^4cDo z28G6vp3iM1YV^0yjoY^`4A4tYsA?U#* z@xkQ&XCRCi48w*0JbJDSLpivz{`^MiaSXvN1eCZK@#~Z@1Re1T8`2{5|LZA2t|JGB zQf=H)6RqIF518+KIJNGe}Tk_C)ACdD}*31A6#Oa0#8zd};dZp%zE&ZBNC)gmN^ zuUkl24cD*RW9VTj>^i@EQN*9a1jRKc)E1xWBgGvJMfaEjISA(P~tVGxRfO&%~u7LxJH zJQ5s!*&M{=7ste>K2LkLed!+q%99J&I{!+junHnE#wm!%~UKkG=2HJ75h zXgNjKZ>c{wZ14k~^EQQqVx|h}E6K4>*68pKtn&osEQU+wVzF~iff(j1D;aeZxs(&{ zR5ohpkN*C_kFs0c#>uVE%gBqwH>w2<`*g(tcvom45;ynTz`%XHLSct4fEm32_U3zP z1zp=i3LOXrY-5M8zO}`Eu4uRQ1B2&I<#066O9D_&yG>HM{8`4X@v;*bFF}?Xu1J|t zLh+&_KO6bcX*`np&Zmv`Q5^dP$Sis2^8-gJ1^Dx6VuI+N@h;KiX262UJ%IIn)pKZl zyPb|<{`y^Gav)8?DBEKz8MEdgPy`pU^10J3ZYcF~h{hsw{6F{JG z^#u`%_zu*Q`4<_%TLA&8$oH3kMjKz}L}_pkzh-9e7F=9{PY$+`N<*HJ+}4&ym=S{^ zfn<`^B%A?c=Xzi!2kgJ$RB^8Wq__)uz^3R{ zD8EH9&93yF7Nr9jm?OYk_Rv){V{n$&83tj$YS-`xx-1#yQluK7Wq3K)82JOgocc-a z5JNQRK1|p8(_!JSeT)<%pa~cI5G};roJ+=t7M<}fMp3g?ESXdy^Es&DS%~trryFCB zJU!^kE>A@AY<{P#R>zSbG-1^c(74)=0+b9tXFem{W?!1`^O3EadO+#?Qr7bQVnIp=o= z$RI+A76uEtmtsrHIf$9>u$_j!ZfM}>XIhZa{18q9SEGmenYYo~7t|Gzyx0ZZPMByr zo#Sn*iI04$RxY=d_IxZ;om03Ct3Gh1-`NOwJv#;L`IlF-(pR-1qV4gjdZgN^_K}XG zKXq>Uf%c+3dU|^LTzEDD_7{VwF^S)~3evu#`<_Pk^?!r(PWHiF^pQjxF9^3brAQ2uG5heImYX0$p)%W!}co0WyidSXaMzA8hhb`~O`ZQ|{?+Drb zv&VShv!KGA7Jd0@7GJ|tB-J6paH%X*faRoc$az9y6m57;KY6D zr~S(;RwNz5lH_waSMh#6{q=7Ol0iSwP0w^c7d>#$kDKhAtmLHsq1$8dSy;*di>XsS zQ0>Rc-T&iIbmX~-*hj%IoVR4HJ;eX4&0d(Y3U7Mo`9jGR_<i0|HzV4Y z8F~MHk-i4XQAcU`Wld??`~vKcuDn~IDf+uUNG1no^w(GK96eOjxHND{s0 zPMHvNg2KYW$W^!Ev;Z$BV_u?Zm=tunUdvR=QEBv^o{QBFB1R4K%a@D%ii?*t4jncz ziC97zjAi)C2N-+Lpm;hMj4CTY)E0pTN#f?TD2N`2YN&xW0I{M~Z6hmH=P2*k(Ut?s zi^9aT(RFx=bT3y8!@IqS#m?%}VM3C#>sf}#nJdWg@^o^7|L7W7f9}w-3)-p+*ft!X z)PmUifR}m!EOk^+U=%Iif(YHZ0=13ULOBYJl8}?TO}nuB>@py+HV2TcFU?@gdDmmG z4ckqw73pnPQo@m6@{mcN7(6&to$PX>@1JvIp!rKOf@YM&2Cv^vysS#C07G*Daij;b zL&k_CK{1{vE8Eq6>|cWnXF_Hb`T6w3H)uvr;NS=1gU%fWxtE`8p~#a#P<~v0&6Bg( zoVi~WT@NxI*8dzD(K&z=D^OHXP(kd#aoB3^jjG==^dlRM-29-S)&t|ljYF6NyJ4Y6 z4A$V%Zii9|34&_m)@~p1qu=c674OQNn1l0PZKKATBgp+jjL+XO&NOo469_U&m(qRY zLJs&dnN|Aso>)6<^(`GoQ5gy}w-PC)ZmzCPL-O6c5Ie}b*F3rV091)GvSVUP`}m@1 zs_ezQXg!u1KRC$OT0mJA6mAjTfwyxN0dLWG{l6XMfn)>E@D597Y@NNlJLn}NhkxqZ z->1y7js*1zt@@aAm6c1rILe9AH@LZs((;&GZRAUI(b_Amh`yh_%SZHg)-!J+=dNPb<>09ifgXF2$4nn8iC2M{D{BiJdno_U^ zKUuSNk-mBk;~y;mI?#Il#=pmo<$0^t{@1ZQJh{DyhMKdVHzM#N50*LK%)6i>KSXdy z3TiJ6?WEvaD5mbzdaX8iRu?gB0vBasRrvaQonrAb%b@bh@_ihi6I~(1Z z4hzri@)c-3P(>Na!o2IhY;d8>YuDh@nNK_yvYK9u2zUA^oIHATbksL$^_EGdW+$Fc ze(BB`jWTt%?@L>DS?AO++u!HHkv)|^qQjnjoZ!MCZ350JHuv4&;)6%CMz25oZ9b{(FWg)6UqExSIR-6c1`k-+S?&PhZv(kbt569fE>*v-v%& zVbN&)h~8T4cMTL^bLw-M&d$zc(I}Bcox6upT6DJvH)MWw^&vBeA6u@+##+@k0_EF> z$U-+G?Ca5@1k6;4YXFs&XS~7FpA|tARsgQ~Rf5I<^ATUW@^{VRlc4;vYq5_0V81+w zhh+|28gVm!wFJtIQmTF^g=zF6R=DGLEjA;o;51RPCYxkvpBUv(C9C27CVEP4 z^jP801@b%AGPM!qwqUKvl@eLV&+nt+7Thg@(jx!Eha+ZzC|cm?ygTW}&ttrh+F{ZU z^wsE`2#m+KmJ6jwjdh?j;uk1SC8;(}4%3^<<~ur)dY-&|))+hAP<&S^d>G2+N4aD= zPe2^T>6H7y!J@Px*@#rVHYrnQCy+27mhns`a&C^IN_=)N1rLOHs7NXWSeAmCnx9z= zUHW^&Ak%ZR5fgB^W*Pu%}LAAI)QxytltjguL{3OjyPEiKE#lbc|(@}1zQxCZkCF2#h8?05s-0cn3B&d*b#A8ags~eG+Po(H++VV5`VukpjwF@ZiVq*|Ak_xe8elcU@QJhgFnX{3h~0Vq-)eM&XeX9MeCCSs7KY|t z|MeGVFixxOJ#Lw`ENhU&|F2I9tk;;cP(lirZ0NqQop?Wf= z&!F1?pNZ{25f7$AC?#0H0+NW_x{O;EN~&O^^b8a~7+WxH(x${+BG4lqgI=qtkhWo> zbJn{d-$ZNWd5g_BWY-6H@KC4`So1#?y8^Lb-H@^{{9fhP_)24rOc+027ji;kDWQ-_ zAMl1cBmtVIOeQ4~#At?&*Wp5|k%a%+p1{E+P;d*zDobJq5Mi)77h+m}S_czEo7}KqC$3_Klo}*E2;B$GX*(J^WMqvkO^}xPDfr>5T7xDelnsIy#fX$#92>}Ob%P*U$i*NKym&3BP zX1|RdKxVTUBGAr0a9KNlrjgd@4ihbfF3NbfAz$LnYRHqVHHnUi7aRUx>>4i(>Z-B z!F)}zvi;R#+V%9?m5uoQ-(;~(#IMti7#@sDuBoW)GhwIG>}Ml=Vr9k~*g8#$8v*)~ zs5{gO)4>;*8gD?(N2&LqPnRaEq3s3dy1Lt1U47;qMMphx70iNw&JLOdes06PoSo;7 z6UgS{i3gAH&$kgp>zayev52>=pYU^(h5~mlkR2ou&x2d`^yx?6WPu8n*%2$t8TpL> z90>5+9Q4tZmZ2$IB}j?M7=32kabDNFk?^N>c|~Zvs_sPSpM&?Su&{8BlNA;|@PLQ8 zmp7TYuZ5!{EM=rpPvM(rY+npy5OY=q?-Xm|M>TvC(W=wkI3@&E5bpiX5ZlV&w!_eR^OlWoDDl>tA%h@xr%;Ry*<#xYjmeYmKg{stgc z;KUahlTt)eBNFU!#ZL7~3t$}A|{A!=J1YK8d52WUGIdAm4m&Yy?=18N6a#ceMQCA2{OJ)E0~ty;)! z?D_tEc1GQe(^Qk8oQxe2(h0_^PUteds4*q9Po za%}8y?4;LHWTF%@YHr9waQhN{B`SPOj3g!EFR{xvg~FA$x72c+pXdt--plsYPGeG++J7;13<3BaRB8V2kfd~L4zA+GtFbi?v?U3H9#kz zDaBjCK)an%x&UhlX1;b99T^@|dmcc9HFEbb^Mh3HB_chx7W?Xzf! z?iAxE0UI@D_r1``s#N{x?Tx_hvx`ubbU#1S+oly)C9J?n-o?qO2igWzKwcY%t{rFR zQDi^L1KDWQiw`NzCaeG=5KEa$5HG3feENO*rxgjPU=qQiEIgQ-yLbt`=bp?Z?vK4Nn(P7m+^Q$Ua2G;-@mKYn zAoEQ$h5w%=7a1;_K$MRC8H-Y4xHRYF<=GyQfMSGlz$XRoQB`di4DbPeKoQ-oy6?f; zA!w+!jRUfBf7p(z6k`cg5tPTvHV%0Xz3rX>tiL?g?qd2V4NgFOvo^GUAiFFrd+sF5 zB5)W!_cVR%58p1nMGFTId&|^BY<u8p_7Bc46DU&RY&>snu3-wN4#!}O+DxhG(Qn7?&*{qkYk6C_^Z#Q(FU0`wrbbg z5Euq$@6o?@|H8KsNcoOt3XnvR+XGzwAvx0=@DPu1Em(gQBh4)l1|GBz5?sTJl;B-h zjl4)MLRSHo$U_uBb|03q`Qxb$uU4_KSsMt2&UpoRU34Da1%5=TiUS&GJgU)6%q?oh z=7`THy-`Ahxz;$7$*6ar7;2|#bT56ptukl7l(|Xz;f{XqvSL;2f~A*A(tgY!y4(+Afd9D~@HK6gOT9vJ9FYs%y{ z2G8J)U;~ML6uKP9GM;o^`qB!6NsOY>5d#qhU*oTv#+F$O&$Vl|8rR`M&cQaACFLSO zGE09Mw^5JiJUXJpTCm~dYwXc6%qskG9w#>94L65!2+JMZ()F5_ct9sCUA_W!^B5E; z6<2?NTjYB_N+4NvM>-gnj+&GhO%b#fFf2932Z8_-LJesLX z8hx}Z-a<#*wcvj&{H2cFyTcQk)d++-3nYnH4-Tt8jN(WOzm)tarIsxS?a3+i? zeH|@Ig^E1ZT`^C#tX}(n+WXF^tkR`R44|!ut&#;Jh$2BHND>tlB?yv(Btf#|oK1)d zf)XVoQIH^+m#88jIp-uIAXy~|2+Tfqe=}?5*Zi38$E$3}jFU8o&6X03|G4@*w8Fi=99uom$1m4R>uA8#hY_&ExwW?x02nIITzk;$aJ0b z-%0kEz))n{6|BD~-vIc^PhNPP%Z!&wCWIicJY*AIgxBNmN7-f--W@ANueBw)z`g4X$wvz06SY3U43pjZbw;Jw zD6K5_j}CJ>=zrO5$qrE(rg#IR<^Q88CAR$2ZA13@AOs=BLl|<
8hDLn8Y&vz!0> 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 BB|88B From 0b308803bf10bb2d58167d6c8a84f294571781ec Mon Sep 17 00:00:00 2001 From: xuncha <1658671838@qq.com> Date: Tue, 3 Feb 2026 18:15:03 +0800 Subject: [PATCH 11/11] 3 --- .github/workflows/release.yml | 4 ++-- README.md | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 9f2fcc9..b4c7459 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -54,8 +54,8 @@ jobs: ## 更新日志 修复了一些已知问题 - ## 加入我们的群 - [点击加入 Telegram 群](https://t.me/+hn3QzNc4DbA0MzNl) + ## 查看更多日志/获取最新动态 + [点击加入 Telegram 频道](https://t.me/weflow_cc) EOF gh release edit "$GITHUB_REF_NAME" --notes-file release_notes.md diff --git a/README.md b/README.md index af2d8ad..6264249 100644 --- a/README.md +++ b/README.md @@ -20,6 +20,9 @@ WeFlow 是一个**完全本地**的微信**实时**聊天记录查看、分析 Issues + +Telegram +