msoutlook-mcp 0.1.4 → 0.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -12
- package/dist/api/mail.d.ts +26 -1
- package/dist/api/mail.d.ts.map +1 -1
- package/dist/api/mail.js +45 -9
- package/dist/api/mail.js.map +1 -1
- package/dist/tools/mail-tools.d.ts.map +1 -1
- package/dist/tools/mail-tools.js +65 -7
- package/dist/tools/mail-tools.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -11,10 +11,10 @@ Give any MCP client (Claude, Cursor, Devin, ...) read and write access to your O
|
|
|
11
11
|
|
|
12
12
|
## Why
|
|
13
13
|
|
|
14
|
-
Most Outlook MCP servers make you register an Azure AD application, grant admin consent, and manage client secrets. This one needs none of that. It uses Outlook Web's own first
|
|
14
|
+
Most Outlook MCP servers make you register an Azure AD application, grant admin consent, and manage client secrets. This one needs none of that. It uses Outlook Web's own first party client ID, so your access is exactly what your account already has, and nothing is exposed beyond your own machine.
|
|
15
15
|
|
|
16
16
|
- No Azure app registration, admin consent, or client secrets
|
|
17
|
-
- Cross
|
|
17
|
+
- Cross platform (macOS, Linux, Windows) with automatic browser detection
|
|
18
18
|
- Tokens encrypted at rest; refreshed silently in the background
|
|
19
19
|
- 30 tools across mail, calendar, contacts, and people
|
|
20
20
|
|
|
@@ -23,7 +23,7 @@ Most Outlook MCP servers make you register an Azure AD application, grant admin
|
|
|
23
23
|
Microsoft Outlook Web (OWA) uses MSAL to store OAuth tokens in `localStorage`. This server:
|
|
24
24
|
|
|
25
25
|
1. Opens a browser to `outlook.office.com` via Playwright
|
|
26
|
-
2. Extracts the MSAL token cache from `localStorage`, using OWA's own first
|
|
26
|
+
2. Extracts the MSAL token cache from `localStorage`, using OWA's own first party client ID (`9199bf20-a13f-4107-85dc-02114787ef48`)
|
|
27
27
|
3. Caches the access token, refresh token, and session state in `~/.msoutlook-mcp-server/` (AES-256-GCM encrypted)
|
|
28
28
|
4. Refreshes tokens automatically using the refresh token (HTTP, no browser) or headless browser as fallback
|
|
29
29
|
|
|
@@ -61,7 +61,7 @@ Then run `outlook_login` from your MCP client. On first use a browser opens so y
|
|
|
61
61
|
| `outlook_list_emails` | List emails from any folder (Inbox by default) |
|
|
62
62
|
| `outlook_get_email` | Read full email content by ID |
|
|
63
63
|
| `outlook_get_unread` | Get unread emails from Inbox |
|
|
64
|
-
| `outlook_search_emails` | Search emails by keyword |
|
|
64
|
+
| `outlook_search_emails` | Search emails by keyword, with optional received date range and pagination. Omit the keyword to list everything in a date range |
|
|
65
65
|
| `outlook_send_email` | Send an email |
|
|
66
66
|
| `outlook_create_draft` | Create a draft without sending |
|
|
67
67
|
| `outlook_send_draft` | Send a previously created draft |
|
|
@@ -71,6 +71,7 @@ Then run `outlook_login` from your MCP client. On first use a browser opens so y
|
|
|
71
71
|
| `outlook_flag` | Flag or unflag an email |
|
|
72
72
|
| `outlook_move_email` | Move email to a different folder |
|
|
73
73
|
| `outlook_delete_email` | Delete an email |
|
|
74
|
+
| `outlook_batch` | Run one bulk action (mark read, mark unread, flag, unflag, move, delete) over many emails at once |
|
|
74
75
|
| `outlook_list_folders` | List all mail folders with unread counts |
|
|
75
76
|
|
|
76
77
|
### Calendar
|
|
@@ -111,29 +112,29 @@ If your session expires, run `outlook_login` again.
|
|
|
111
112
|
Tokens are refreshed automatically:
|
|
112
113
|
|
|
113
114
|
1. **HTTP refresh** (fast, no browser): uses the cached refresh token with OWA's client ID
|
|
114
|
-
2. **Headless browser refresh**: fallback if HTTP refresh fails; opens a headless Edge window to silently
|
|
115
|
+
2. **Headless browser refresh**: fallback if HTTP refresh fails; opens a headless Edge window to silently reacquire tokens from the saved browser session
|
|
115
116
|
|
|
116
117
|
## Requirements
|
|
117
118
|
|
|
118
119
|
- Node.js 20+
|
|
119
|
-
- A Chromium
|
|
120
|
+
- A Chromium based browser: Edge or Chrome (detected automatically from system default)
|
|
120
121
|
- A Microsoft 365 work/school account or personal Microsoft account
|
|
121
122
|
|
|
122
123
|
## Platform support
|
|
123
124
|
|
|
124
125
|
| Feature | macOS | Linux | Windows |
|
|
125
126
|
|---------|-------|-------|---------|
|
|
126
|
-
| Browser
|
|
127
|
+
| Browser detection | System default (Edge/Chrome) | Chrome fallback | Edge (preinstalled) |
|
|
127
128
|
| SSO cookie import | ✅ Chrome + Edge via Keychain | ✅ Chrome + Edge via libsecret / `"peanuts"` fallback | ✅ Edge via DPAPI (PowerShell) |
|
|
128
129
|
| Windows Chrome 127+ cookies | n/a | n/a | ⚠️ App-Bound Encryption (not supported). Use Edge instead. |
|
|
129
130
|
| Headed browser fallback | ✅ | ✅ | ✅ |
|
|
130
131
|
|
|
131
|
-
Cookie import is a best
|
|
132
|
+
Cookie import is a best effort optimisation. If it cannot run (e.g. no matching browser installed, Keychain denied), the MCP falls back to opening a headed browser where you sign in once manually, and the session then persists.
|
|
132
133
|
|
|
133
134
|
## Security notes
|
|
134
135
|
|
|
135
136
|
- Uses the same auth as the Outlook web client, so your access is limited to what your account can do
|
|
136
|
-
- Tokens are encrypted at rest (AES-256-GCM with a machine
|
|
137
|
+
- Tokens are encrypted at rest (AES-256-GCM with a machine derived key)
|
|
137
138
|
- Uses undocumented internal APIs, which Microsoft may change without notice
|
|
138
139
|
- Always confirm email content with the user before sending
|
|
139
140
|
|
|
@@ -145,7 +146,7 @@ Cookie import is a best-effort optimisation. If it cannot run (e.g. no matching
|
|
|
145
146
|
| `MSOUTLOOK_BROWSER=chrome` | Force a specific browser: `chrome` or `msedge`. If unset, uses the macOS system default browser; falls back to Chrome on macOS/Linux and Edge on Windows. |
|
|
146
147
|
| `MSOUTLOOK_CHROME_PROFILE` | Pin a specific Chrome profile dir for cookie import (e.g. `Profile 1`). Defaults to `Default`. |
|
|
147
148
|
| `MSOUTLOOK_EDGE_PROFILE` | Pin a specific Edge profile dir for cookie import (e.g. `Profile 1`). Defaults to `Default`. |
|
|
148
|
-
| `MSOUTLOOK_SKIP_COOKIE_IMPORT=true` | Skip importing SSO cookies from your real browser (avoids the one
|
|
149
|
+
| `MSOUTLOOK_SKIP_COOKIE_IMPORT=true` | Skip importing SSO cookies from your real browser (avoids the one time Keychain/keyring prompt). You'll sign in once manually in the browser; the persistent profile then remembers the session. |
|
|
149
150
|
|
|
150
151
|
## Troubleshooting
|
|
151
152
|
|
|
@@ -153,9 +154,9 @@ Cookie import is a best-effort optimisation. If it cannot run (e.g. no matching
|
|
|
153
154
|
|
|
154
155
|
**Login says it failed but the browser showed my inbox.** Run `outlook_login` again and let the window close on its own. If it persists, run with `MSOUTLOOK_DEBUG=true` and check the stderr logs.
|
|
155
156
|
|
|
156
|
-
**It opens the wrong browser.** Set `MSOUTLOOK_BROWSER=chrome` or `MSOUTLOOK_BROWSER=msedge` to force one. Only Chromium
|
|
157
|
+
**It opens the wrong browser.** Set `MSOUTLOOK_BROWSER=chrome` or `MSOUTLOOK_BROWSER=msedge` to force one. Only Chromium based browsers (Chrome, Edge) are supported; Safari and Firefox fall back to Chrome/Edge.
|
|
157
158
|
|
|
158
|
-
**Tokens stopped working after a long break.** Refresh tokens last around 90 days. Run `outlook_login` to
|
|
159
|
+
**Tokens stopped working after a long break.** Refresh tokens last around 90 days. Run `outlook_login` to reauthenticate.
|
|
159
160
|
|
|
160
161
|
## License
|
|
161
162
|
|
package/dist/api/mail.d.ts
CHANGED
|
@@ -82,7 +82,32 @@ export declare function markMessageRead(id: string, isRead?: boolean): Promise<v
|
|
|
82
82
|
export declare function flagMessage(id: string, status?: 'Flagged' | 'Complete' | 'NotFlagged'): Promise<void>;
|
|
83
83
|
export declare function moveMessage(id: string, destinationFolderId: string): Promise<Message>;
|
|
84
84
|
export declare function deleteMessage(id: string): Promise<void>;
|
|
85
|
-
export
|
|
85
|
+
export interface SearchMessagesOptions {
|
|
86
|
+
/** Keyword query. Optional: omit it to list everything in a date range. */
|
|
87
|
+
query?: string;
|
|
88
|
+
top?: number;
|
|
89
|
+
folder?: string;
|
|
90
|
+
/** Inclusive lower bound on received date (ISO date or datetime). */
|
|
91
|
+
startDate?: string;
|
|
92
|
+
/** Inclusive upper bound on received date (ISO date or datetime). */
|
|
93
|
+
endDate?: string;
|
|
94
|
+
/** Opaque page token from a previous result's nextSkipToken. */
|
|
95
|
+
skipToken?: string;
|
|
96
|
+
}
|
|
97
|
+
export interface SearchMessagesResult {
|
|
98
|
+
messages: Message[];
|
|
99
|
+
/** Pass this back as skipToken to fetch the next page; absent when there are no more results. */
|
|
100
|
+
nextSkipToken?: string;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Search messages with optional date range and pagination.
|
|
104
|
+
*
|
|
105
|
+
* The OWA REST API rejects $skip, $filter and $orderby alongside $search, so:
|
|
106
|
+
* - date range is expressed as KQL constraints inside the search string
|
|
107
|
+
* (received>=START AND received<=END), and
|
|
108
|
+
* - pagination uses the $skiptoken returned in @odata.nextLink.
|
|
109
|
+
*/
|
|
110
|
+
export declare function searchMessages(opts: SearchMessagesOptions): Promise<SearchMessagesResult>;
|
|
86
111
|
export declare function listFolders(): Promise<MailFolder[]>;
|
|
87
112
|
export declare function getFolder(idOrName: string): Promise<MailFolder>;
|
|
88
113
|
export declare function getUnreadMessages(top?: number): Promise<Message[]>;
|
package/dist/api/mail.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mail.d.ts","sourceRoot":"","sources":["../../src/api/mail.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"mail.d.ts","sourceRoot":"","sources":["../../src/api/mail.ts"],"names":[],"mappings":"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"}
|
package/dist/api/mail.js
CHANGED
|
@@ -112,15 +112,51 @@ export async function moveMessage(id, destinationFolderId) {
|
|
|
112
112
|
export async function deleteMessage(id) {
|
|
113
113
|
await owaDelete(`/messages/${id}`);
|
|
114
114
|
}
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
115
|
+
/** Reduce an ISO date or datetime to the YYYY-MM-DD form KQL expects. */
|
|
116
|
+
function toKqlDate(value) {
|
|
117
|
+
return value.slice(0, 10);
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Search messages with optional date range and pagination.
|
|
121
|
+
*
|
|
122
|
+
* The OWA REST API rejects $skip, $filter and $orderby alongside $search, so:
|
|
123
|
+
* - date range is expressed as KQL constraints inside the search string
|
|
124
|
+
* (received>=START AND received<=END), and
|
|
125
|
+
* - pagination uses the $skiptoken returned in @odata.nextLink.
|
|
126
|
+
*/
|
|
127
|
+
export async function searchMessages(opts) {
|
|
128
|
+
const folder = opts.folder ?? 'Inbox';
|
|
129
|
+
const parts = [];
|
|
130
|
+
const keyword = opts.query?.trim();
|
|
131
|
+
if (keyword)
|
|
132
|
+
parts.push(keyword);
|
|
133
|
+
if (opts.startDate)
|
|
134
|
+
parts.push(`received>=${toKqlDate(opts.startDate)}`);
|
|
135
|
+
if (opts.endDate)
|
|
136
|
+
parts.push(`received<=${toKqlDate(opts.endDate)}`);
|
|
137
|
+
if (parts.length === 0) {
|
|
138
|
+
throw new Error('searchMessages needs a query and/or a date range (startDate or endDate).');
|
|
139
|
+
}
|
|
140
|
+
const kql = parts.join(' AND ');
|
|
141
|
+
const params = {
|
|
142
|
+
'$search': `"${kql}"`,
|
|
143
|
+
'$top': String(opts.top ?? 20),
|
|
144
|
+
'$select': 'Id,Subject,BodyPreview,From,ReceivedDateTime,IsRead,WebLink',
|
|
145
|
+
};
|
|
146
|
+
if (opts.skipToken)
|
|
147
|
+
params['$skiptoken'] = opts.skipToken;
|
|
148
|
+
const res = await owaGet(`/MailFolders/${folder}/messages`, params);
|
|
149
|
+
let nextSkipToken;
|
|
150
|
+
const nextLink = res['@odata.nextLink'];
|
|
151
|
+
if (nextLink) {
|
|
152
|
+
try {
|
|
153
|
+
nextSkipToken = new URL(nextLink).searchParams.get('$skiptoken') ?? undefined;
|
|
154
|
+
}
|
|
155
|
+
catch {
|
|
156
|
+
nextSkipToken = undefined;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
return { messages: res.value, nextSkipToken };
|
|
124
160
|
}
|
|
125
161
|
// ─────────────────────────────────────────────────────────────────────────────
|
|
126
162
|
// Folders
|
package/dist/api/mail.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mail.js","sourceRoot":"","sources":["../../src/api/mail.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"mail.js","sourceRoot":"","sources":["../../src/api/mail.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mail-tools.d.ts","sourceRoot":"","sources":["../../src/tools/mail-tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"mail-tools.d.ts","sourceRoot":"","sources":["../../src/tools/mail-tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAmFzE,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAkSzD"}
|
package/dist/tools/mail-tools.js
CHANGED
|
@@ -36,6 +36,25 @@ function formatMessageList(messages) {
|
|
|
36
36
|
return 'No messages found.';
|
|
37
37
|
return messages.map((m, i) => `--- Message ${i + 1} ---\n${formatMessage(m)}`).join('\n\n');
|
|
38
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* Run an async operation over many IDs in capped concurrent chunks.
|
|
41
|
+
* One failure never aborts the rest: every result is captured.
|
|
42
|
+
*/
|
|
43
|
+
async function runBatch(ids, op, concurrency = 8) {
|
|
44
|
+
let succeeded = 0;
|
|
45
|
+
const failed = [];
|
|
46
|
+
for (let i = 0; i < ids.length; i += concurrency) {
|
|
47
|
+
const chunk = ids.slice(i, i + concurrency);
|
|
48
|
+
const results = await Promise.allSettled(chunk.map(op));
|
|
49
|
+
results.forEach((r, j) => {
|
|
50
|
+
if (r.status === 'fulfilled')
|
|
51
|
+
succeeded += 1;
|
|
52
|
+
else
|
|
53
|
+
failed.push({ id: chunk[j], error: r.reason instanceof Error ? r.reason.message : String(r.reason) });
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
return { succeeded, failed };
|
|
57
|
+
}
|
|
39
58
|
// ─────────────────────────────────────────────────────────────────────────────
|
|
40
59
|
// Tools
|
|
41
60
|
// ─────────────────────────────────────────────────────────────────────────────
|
|
@@ -176,19 +195,58 @@ export function registerMailTools(server) {
|
|
|
176
195
|
await deleteMessage(id);
|
|
177
196
|
return { content: [{ type: 'text', text: 'Message deleted.' }] };
|
|
178
197
|
});
|
|
198
|
+
// ── outlook_batch ────────────────────────────────────────────────────────
|
|
199
|
+
server.tool('outlook_batch', 'Run one bulk action on many emails at once. Far faster than calling the single item tools repeatedly. Returns a per id success and failure summary.', {
|
|
200
|
+
action: z.enum(['mark_read', 'mark_unread', 'delete', 'flag', 'unflag', 'move'])
|
|
201
|
+
.describe('Action to apply to every ID. "move" requires destination_folder.'),
|
|
202
|
+
ids: z.array(z.string()).min(1).max(200).describe('Message IDs to act on (1 to 200)'),
|
|
203
|
+
destination_folder: z.string().optional().describe('Required when action is "move": folder name or ID (e.g. Archive, DeletedItems, or a folder ID)'),
|
|
204
|
+
}, async ({ action, ids, destination_folder }) => {
|
|
205
|
+
if (action === 'move' && !destination_folder) {
|
|
206
|
+
return { content: [{ type: 'text', text: 'destination_folder is required when action is "move".' }] };
|
|
207
|
+
}
|
|
208
|
+
const opFor = (id) => {
|
|
209
|
+
switch (action) {
|
|
210
|
+
case 'mark_read': return markMessageRead(id, true);
|
|
211
|
+
case 'mark_unread': return markMessageRead(id, false);
|
|
212
|
+
case 'delete': return deleteMessage(id);
|
|
213
|
+
case 'flag': return flagMessage(id, 'Flagged');
|
|
214
|
+
case 'unflag': return flagMessage(id, 'NotFlagged');
|
|
215
|
+
case 'move': return moveMessage(id, destination_folder);
|
|
216
|
+
}
|
|
217
|
+
};
|
|
218
|
+
const { succeeded, failed } = await runBatch(ids, opFor);
|
|
219
|
+
const summary = { action, total: ids.length, succeeded, failed: failed.length, failures: failed };
|
|
220
|
+
return { content: [{ type: 'text', text: JSON.stringify(summary, null, 2) }] };
|
|
221
|
+
});
|
|
179
222
|
// ── outlook_search_emails ────────────────────────────────────────────────
|
|
180
|
-
server.tool('outlook_search_emails', 'Search emails by keyword across subject and body.', {
|
|
181
|
-
query: z.string().describe('Search query (keywords, sender name, subject, etc.)'),
|
|
182
|
-
top: z.number().int().min(1).max(50).optional().describe('
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
223
|
+
server.tool('outlook_search_emails', 'Search emails by keyword across subject and body, with optional received date range and pagination. Omit query to list everything in a date range.', {
|
|
224
|
+
query: z.string().optional().describe('Search query (keywords, sender name, subject, etc.). Optional: leave empty to list everything that matches the date range.'),
|
|
225
|
+
top: z.number().int().min(1).max(50).optional().describe('Page size (default 20, max 50)'),
|
|
226
|
+
start_date: z.string().optional().describe('Only emails received on or after this date. ISO date (YYYY-MM-DD) or datetime.'),
|
|
227
|
+
end_date: z.string().optional().describe('Only emails received on or before this date. ISO date (YYYY-MM-DD) or datetime.'),
|
|
228
|
+
folder: z.string().optional().describe('Folder to search (default Inbox). E.g. Inbox, Archive, SentItems.'),
|
|
229
|
+
skip_token: z.string().optional().describe('To get the next page, pass the next_skip_token returned by a previous call.'),
|
|
230
|
+
}, async ({ query, top, start_date, end_date, folder, skip_token }) => {
|
|
231
|
+
const { messages, nextSkipToken } = await searchMessages({
|
|
232
|
+
query,
|
|
233
|
+
top: top ?? 20,
|
|
234
|
+
startDate: start_date,
|
|
235
|
+
endDate: end_date,
|
|
236
|
+
folder,
|
|
237
|
+
skipToken: skip_token,
|
|
238
|
+
});
|
|
239
|
+
let text = formatMessageList(messages);
|
|
240
|
+
if (nextSkipToken) {
|
|
241
|
+
text += `\n\nMore results available. To get the next page, call outlook_search_emails again with the same query and:\nskip_token: ${nextSkipToken}`;
|
|
242
|
+
}
|
|
243
|
+
return { content: [{ type: 'text', text }] };
|
|
186
244
|
});
|
|
187
245
|
// ── outlook_list_folders ─────────────────────────────────────────────────
|
|
188
246
|
server.tool('outlook_list_folders', 'List all mail folders with unread counts.', {}, async () => {
|
|
189
247
|
const folders = await listFolders();
|
|
190
248
|
const text = folders
|
|
191
|
-
.map(f => `${f.DisplayName} (ID: ${f.Id})
|
|
249
|
+
.map(f => `${f.DisplayName} (ID: ${f.Id}) | Unread: ${f.UnreadItemCount} / ${f.TotalItemCount}`)
|
|
192
250
|
.join('\n');
|
|
193
251
|
return { content: [{ type: 'text', text: text || 'No folders found.' }] };
|
|
194
252
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mail-tools.js","sourceRoot":"","sources":["../../src/tools/mail-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mail-tools.js","sourceRoot":"","sources":["../../src/tools/mail-tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,YAAY,EACZ,UAAU,EACV,SAAS,EACT,WAAW,EACX,cAAc,EACd,cAAc,EACd,eAAe,EACf,WAAW,EACX,WAAW,EACX,aAAa,EACb,cAAc,EACd,WAAW,EACX,iBAAiB,EACjB,SAAS,GAEV,MAAM,gBAAgB,CAAC;AAExB,gFAAgF;AAChF,aAAa;AACb,gFAAgF;AAEhF,SAAS,aAAa,CAAC,CAAU,EAAE,IAAI,GAAG,KAAK;IAC7C,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,YAAY;QAC/B,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,GAAG;QACtE,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,EAAE,GAAG,CAAC,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC7E,MAAM,IAAI,GAAG,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,YAAY,IAAI,EAAE,CAAC;IAExD,MAAM,KAAK,GAAG;QACZ,OAAO,CAAC,CAAC,EAAE,EAAE;QACb,YAAY,CAAC,CAAC,OAAO,EAAE;QACvB,SAAS,IAAI,EAAE;QACf,OAAO,EAAE,EAAE;QACX,SAAS,IAAI,EAAE;QACf,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;QAClC,oBAAoB,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;QACrD,CAAC,CAAC,IAAI,EAAE,UAAU,KAAK,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE;QACxE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE;KACzC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAElB,IAAI,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IACjF,CAAC;SAAM,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAmB;IAC5C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,oBAAoB,CAAC;IACvD,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC9F,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,QAAQ,CACrB,GAAa,EACb,EAAoC,EACpC,WAAW,GAAG,CAAC;IAEf,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,MAAM,MAAM,GAAyC,EAAE,CAAC;IACxD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,WAAW,EAAE,CAAC;QACjD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC;QAC5C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QACxD,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACvB,IAAI,CAAC,CAAC,MAAM,KAAK,WAAW;gBAAE,SAAS,IAAI,CAAC,CAAC;;gBACxC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC7G,CAAC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;AAC/B,CAAC;AAED,gFAAgF;AAChF,QAAQ;AACR,gFAAgF;AAEhF,MAAM,UAAU,iBAAiB,CAAC,MAAiB;IACjD,4EAA4E;IAC5E,MAAM,CAAC,IAAI,CACT,qBAAqB,EACrB,kEAAkE,EAClE;QACE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iHAAiH,CAAC;QACzJ,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kDAAkD,CAAC;QAC7G,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;QAClF,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;KACnG,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,EAAE;QAChD,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC;YAClC,MAAM,EAAE,MAAM,IAAI,OAAO;YACzB,GAAG,EAAE,GAAG,IAAI,EAAE;YACd,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS;SACpD,CAAC,CAAC;QAEH,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;IAC5E,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,MAAM,CAAC,IAAI,CACT,mBAAmB,EACnB,kDAAkD,EAClD;QACE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;QAC1E,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;QACpG,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;KAC1F,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,mBAAmB,EAAE,SAAS,EAAE,EAAE,EAAE;QAC/C,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,EAAE,EAAE,mBAAmB,IAAI,KAAK,CAAC,CAAC;QAEnE,IAAI,SAAS,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACjC,MAAM,eAAe,CAAC,EAAE,CAAC,CAAC;QAC5B,CAAC;QAED,IAAI,IAAI,GAAG,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAExC,IAAI,mBAAmB,IAAI,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;YACvD,IAAI,IAAI,oBAAoB,CAAC;YAC7B,IAAI,IAAI,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,WAAW,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpH,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IAC/C,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,MAAM,CAAC,IAAI,CACT,oBAAoB,EACpB,6CAA6C,EAC7C;QACE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;KAC1F,EACD,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;QAChB,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC;QAC9B,MAAM,MAAM,GAAG,GAAG,KAAK,gBAAgB,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;QACrE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;IACrF,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,MAAM,CAAC,IAAI,CACT,oBAAoB,EACpB,+EAA+E,EAC/E;QACE,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,mCAAmC,CAAC;QAC7E,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;QACpE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QACtE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;QAC7C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAC5C,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;QACpG,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;KACxG,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE,EAAE;QAC9D,MAAM,SAAS,CAAC;YACd,EAAE;YACF,EAAE;YACF,GAAG;YACH,OAAO;YACP,IAAI;YACJ,QAAQ,EAAE,SAAS;YACnB,UAAU;SACX,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;IAClF,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,MAAM,CAAC,IAAI,CACT,sBAAsB,EACtB,0CAA0C,EAC1C;QACE,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC;QACrE,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;QACpE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;QAC7C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;QACvC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;KACvF,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE;QAC7C,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;QAChF,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,uBAAuB,KAAK,CAAC,EAAE,cAAc,KAAK,CAAC,OAAO,SAAS,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;iBACzF,CAAC;SACH,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,MAAM,CAAC,IAAI,CACT,oBAAoB,EACpB,kDAAkD,EAClD;QACE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;KAC5C,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;QACf,MAAM,SAAS,CAAC,EAAE,CAAC,CAAC;QACpB,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,0BAA0B,EAAE,CAAC,EAAE,CAAC;IAC3E,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,MAAM,CAAC,IAAI,CACT,eAAe,EACf,oBAAoB,EACpB;QACE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;QACjD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAC5C,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;KAChG,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE;QAChC,MAAM,cAAc,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,IAAI,KAAK,CAAC,CAAC;QACnD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC;IAC9D,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,MAAM,CAAC,IAAI,CACT,iBAAiB,EACjB,6CAA6C,EAC7C;QACE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QAChD,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,4BAA4B,CAAC;QACtE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;KACxF,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QAC5B,MAAM,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;QACtC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;IACjF,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,MAAM,CAAC,IAAI,CACT,mBAAmB,EACnB,kCAAkC,EAClC;QACE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;QACrC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;KAC/E,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACxB,MAAM,eAAe,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QACnC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,qBAAqB,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,GAAG,EAAE,CAAC,EAAE,CAAC;IACpG,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,MAAM,CAAC,IAAI,CACT,cAAc,EACd,0BAA0B,EAC1B;QACE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;QACrC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,oBAAoB,CAAC;KACrF,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;QACvB,MAAM,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAC9B,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,wBAAwB,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC;IAClF,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,MAAM,CAAC,IAAI,CACT,oBAAoB,EACpB,sCAAsC,EACtC;QACE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;QAC7C,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mFAAmF,CAAC;KAC7H,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,kBAAkB,EAAE,EAAE,EAAE;QACnC,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,EAAE,EAAE,kBAAkB,CAAC,CAAC;QACxD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,kBAAkB,cAAc,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;IAC/G,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,MAAM,CAAC,IAAI,CACT,sBAAsB,EACtB,2CAA2C,EAC3C;QACE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;KAChD,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;QACf,MAAM,aAAa,CAAC,EAAE,CAAC,CAAC;QACxB,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,EAAE,CAAC;IACnE,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,MAAM,CAAC,IAAI,CACT,eAAe,EACf,qJAAqJ,EACrJ;QACE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;aAC7E,QAAQ,CAAC,kEAAkE,CAAC;QAC/E,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,kCAAkC,CAAC;QACrF,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gGAAgG,CAAC;KACrJ,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,kBAAkB,EAAE,EAAE,EAAE;QAC5C,IAAI,MAAM,KAAK,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC7C,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uDAAuD,EAAE,CAAC,EAAE,CAAC;QACxG,CAAC;QAED,MAAM,KAAK,GAAG,CAAC,EAAU,EAAoB,EAAE;YAC7C,QAAQ,MAAM,EAAE,CAAC;gBACf,KAAK,WAAW,CAAC,CAAC,OAAO,eAAe,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;gBACnD,KAAK,aAAa,CAAC,CAAC,OAAO,eAAe,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;gBACtD,KAAK,QAAQ,CAAC,CAAC,OAAO,aAAa,CAAC,EAAE,CAAC,CAAC;gBACxC,KAAK,MAAM,CAAC,CAAC,OAAO,WAAW,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;gBAC/C,KAAK,QAAQ,CAAC,CAAC,OAAO,WAAW,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;gBACpD,KAAK,MAAM,CAAC,CAAC,OAAO,WAAW,CAAC,EAAE,EAAE,kBAAmB,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACzD,MAAM,OAAO,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;QAClG,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IACjF,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,MAAM,CAAC,IAAI,CACT,uBAAuB,EACvB,oJAAoJ,EACpJ;QACE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4HAA4H,CAAC;QACnK,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;QAC1F,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gFAAgF,CAAC;QAC5H,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iFAAiF,CAAC;QAC3H,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mEAAmE,CAAC;QAC3G,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6EAA6E,CAAC;KAC1H,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE;QACjE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,MAAM,cAAc,CAAC;YACvD,KAAK;YACL,GAAG,EAAE,GAAG,IAAI,EAAE;YACd,SAAS,EAAE,UAAU;YACrB,OAAO,EAAE,QAAQ;YACjB,MAAM;YACN,SAAS,EAAE,UAAU;SACtB,CAAC,CAAC;QAEH,IAAI,IAAI,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QACvC,IAAI,aAAa,EAAE,CAAC;YAClB,IAAI,IAAI,4HAA4H,aAAa,EAAE,CAAC;QACtJ,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IAC/C,CAAC,CACF,CAAC;IAEF,4EAA4E;IAC5E,MAAM,CAAC,IAAI,CACT,sBAAsB,EACtB,2CAA2C,EAC3C,EAAE,EACF,KAAK,IAAI,EAAE;QACT,MAAM,OAAO,GAAG,MAAM,WAAW,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,OAAO;aACjB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,WAAW,SAAS,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,eAAe,MAAM,CAAC,CAAC,cAAc,EAAE,CAAC;aAC/F,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,IAAI,mBAAmB,EAAE,CAAC,EAAE,CAAC;IAC5E,CAAC,CACF,CAAC;AACJ,CAAC"}
|