cbrowser 18.2.1 → 18.3.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server-remote.d.ts","sourceRoot":"","sources":["../src/mcp-server-remote.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;GAWG;AA6BH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAgBpE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAoUpE;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,4EAA4E;IAC5E,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,+CAA+C;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,uBAAuB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/F;AAGD,YAAY,EAAE,uBAAuB,EAAE,CAAC;AAExC;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,OAAO,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAsM1F"}
1
+ {"version":3,"file":"mcp-server-remote.d.ts","sourceRoot":"","sources":["../src/mcp-server-remote.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;GAWG;AAmCH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAgBpE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAyepE;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,4EAA4E;IAC5E,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,+CAA+C;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,uBAAuB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/F;AAGD,YAAY,EAAE,uBAAuB,EAAE,CAAC;AAExC;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,OAAO,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwO1F"}
@@ -33,6 +33,12 @@
33
33
  * AUTH0_DOMAIN - Your Auth0 tenant domain (e.g., 'your-tenant.auth0.com')
34
34
  * AUTH0_AUDIENCE - API audience/identifier (e.g., 'https://cbrowser-mcp.yourdomain.com')
35
35
  * AUTH0_CLIENT_ID - Optional: Client ID for static registration
36
+ *
37
+ * Rate Limiting Environment Variables:
38
+ * RATE_LIMIT_ENABLED - Enable IP-based rate limiting (default: false)
39
+ * RATE_LIMIT_REQUESTS - Max requests per window (default: 5)
40
+ * RATE_LIMIT_WINDOW_MS - Window size in milliseconds (default: 3600000 = 1 hour)
41
+ * RATE_LIMIT_WHITELIST - Comma-separated IPs to skip rate limiting
36
42
  */
37
43
  import { createServer } from "node:http";
38
44
  import { randomUUID } from "node:crypto";
@@ -178,6 +184,124 @@ function validateApiKey(req, validKeys) {
178
184
  }
179
185
  return false;
180
186
  }
187
+ // Rate limit storage: key (session or IP) -> entry
188
+ const rateLimitStore = new Map();
189
+ function getRateLimitConfig() {
190
+ const enabled = process.env.RATE_LIMIT_ENABLED === "true";
191
+ const maxRequests = parseInt(process.env.RATE_LIMIT_REQUESTS || "30", 10);
192
+ const windowMs = parseInt(process.env.RATE_LIMIT_WINDOW_MS || "3600000", 10);
193
+ const burstRequests = parseInt(process.env.RATE_LIMIT_BURST || "15", 10);
194
+ const burstWindowMs = parseInt(process.env.RATE_LIMIT_BURST_WINDOW_MS || "300000", 10);
195
+ const whitelistStr = process.env.RATE_LIMIT_WHITELIST || "";
196
+ const whitelist = new Set();
197
+ for (const ip of whitelistStr.split(",")) {
198
+ const trimmed = ip.trim();
199
+ if (trimmed) {
200
+ whitelist.add(trimmed);
201
+ }
202
+ }
203
+ return { enabled, maxRequests, windowMs, burstRequests, burstWindowMs, whitelist };
204
+ }
205
+ function getClientIP(req) {
206
+ // Check X-Forwarded-For header (behind proxy/load balancer)
207
+ const forwarded = req.headers["x-forwarded-for"];
208
+ if (typeof forwarded === "string") {
209
+ // Take the first IP in the chain (original client)
210
+ return forwarded.split(",")[0].trim();
211
+ }
212
+ // Check X-Real-IP header (nginx)
213
+ const realIp = req.headers["x-real-ip"];
214
+ if (typeof realIp === "string") {
215
+ return realIp.trim();
216
+ }
217
+ // Fall back to socket remote address
218
+ return req.socket.remoteAddress || "unknown";
219
+ }
220
+ function getRateLimitKey(req) {
221
+ // Prefer MCP session ID for per-session tracking
222
+ const sessionId = req.headers["mcp-session-id"];
223
+ if (typeof sessionId === "string" && sessionId.length > 0) {
224
+ return `session:${sessionId}`;
225
+ }
226
+ // Fall back to IP-based tracking
227
+ return `ip:${getClientIP(req)}`;
228
+ }
229
+ function checkRateLimit(req, config) {
230
+ if (!config.enabled) {
231
+ return { allowed: true, remaining: config.maxRequests, resetTime: 0 };
232
+ }
233
+ const ip = getClientIP(req);
234
+ // Skip rate limiting for whitelisted IPs
235
+ if (config.whitelist.has(ip)) {
236
+ return { allowed: true, remaining: config.maxRequests, resetTime: 0 };
237
+ }
238
+ const key = getRateLimitKey(req);
239
+ const now = Date.now();
240
+ const windowStart = now - config.windowMs;
241
+ const burstWindowStart = now - config.burstWindowMs;
242
+ // Get or create entry
243
+ let entry = rateLimitStore.get(key);
244
+ if (!entry) {
245
+ entry = { requests: [], sessionStart: now };
246
+ rateLimitStore.set(key, entry);
247
+ }
248
+ // Filter out requests outside the main window
249
+ entry.requests = entry.requests.filter(timestamp => timestamp > windowStart);
250
+ // Count requests in burst window
251
+ const burstRequests = entry.requests.filter(timestamp => timestamp > burstWindowStart).length;
252
+ // Check if within burst period (first burstWindowMs of session)
253
+ const inBurstPeriod = (now - entry.sessionStart) < config.burstWindowMs;
254
+ // Determine current limit based on burst period
255
+ let currentLimit;
256
+ let currentWindowRequests;
257
+ if (inBurstPeriod) {
258
+ // During burst period: use burst limit
259
+ currentLimit = config.burstRequests;
260
+ currentWindowRequests = burstRequests;
261
+ }
262
+ else {
263
+ // After burst period: use sustained limit
264
+ currentLimit = config.maxRequests;
265
+ currentWindowRequests = entry.requests.length;
266
+ }
267
+ // Calculate remaining requests
268
+ const remaining = Math.max(0, currentLimit - currentWindowRequests);
269
+ // Calculate reset time
270
+ const resetTime = entry.requests.length > 0
271
+ ? entry.requests[0] + config.windowMs
272
+ : now + config.windowMs;
273
+ if (currentWindowRequests >= currentLimit) {
274
+ // Rate limit exceeded
275
+ return {
276
+ allowed: false,
277
+ remaining: 0,
278
+ resetTime,
279
+ burstRemaining: inBurstPeriod ? 0 : undefined,
280
+ };
281
+ }
282
+ // Allow request and record it
283
+ entry.requests.push(now);
284
+ return {
285
+ allowed: true,
286
+ remaining: remaining - 1,
287
+ resetTime,
288
+ burstRemaining: inBurstPeriod ? Math.max(0, config.burstRequests - burstRequests - 1) : undefined,
289
+ };
290
+ }
291
+ // Cleanup old rate limit entries periodically (every 10 minutes)
292
+ setInterval(() => {
293
+ const now = Date.now();
294
+ const config = getRateLimitConfig();
295
+ for (const [key, entry] of rateLimitStore.entries()) {
296
+ // Filter out old requests
297
+ entry.requests = entry.requests.filter(t => t > now - config.windowMs);
298
+ // Remove entry if no requests and session is old (2x window)
299
+ const sessionAge = now - entry.sessionStart;
300
+ if (entry.requests.length === 0 && sessionAge > config.windowMs * 2) {
301
+ rateLimitStore.delete(key);
302
+ }
303
+ }
304
+ }, 10 * 60 * 1000);
181
305
  async function validateAuth(req, apiKeys, auth0Enabled) {
182
306
  // Try API key first (faster)
183
307
  if (apiKeys && validateApiKey(req, apiKeys)) {
@@ -326,6 +450,7 @@ export async function startRemoteMcpServer(options) {
326
450
  const apiKeyAuthEnabled = apiKeys !== null && apiKeys.size > 0;
327
451
  const auth0Enabled = auth0 !== null;
328
452
  const authEnabled = apiKeyAuthEnabled || auth0Enabled;
453
+ const rateLimitConfig = getRateLimitConfig();
329
454
  console.log(`Starting CBrowser Remote MCP Server v${VERSION}...`);
330
455
  console.log(`Mode: ${sessionMode}`);
331
456
  console.log(`Auth: ${authEnabled ? "enabled" : "disabled (open access)"}`);
@@ -335,6 +460,15 @@ export async function startRemoteMcpServer(options) {
335
460
  if (auth0Enabled) {
336
461
  console.log(` - Auth0 OAuth: enabled (${auth0?.domain})`);
337
462
  }
463
+ if (rateLimitConfig.enabled) {
464
+ console.log(`Rate Limiting: enabled`);
465
+ console.log(` - Sustained: ${rateLimitConfig.maxRequests} requests per ${rateLimitConfig.windowMs / 1000 / 60} min`);
466
+ console.log(` - Burst: ${rateLimitConfig.burstRequests} requests in first ${rateLimitConfig.burstWindowMs / 1000 / 60} min`);
467
+ console.log(` - Tracking: per-session (falls back to IP)`);
468
+ if (rateLimitConfig.whitelist.size > 0) {
469
+ console.log(` - Whitelisted IPs: ${Array.from(rateLimitConfig.whitelist).join(", ")}`);
470
+ }
471
+ }
338
472
  console.log(`Listening on ${host}:${port}`);
339
473
  const httpServer = createServer(async (req, res) => {
340
474
  const url = new URL(req.url || "/", `http://${req.headers.host}`);
@@ -406,6 +540,28 @@ export async function startRemoteMcpServer(options) {
406
540
  // =====================================================================
407
541
  // Protected Endpoints (auth required)
408
542
  // =====================================================================
543
+ // Rate limit check (if enabled)
544
+ const rateLimit = checkRateLimit(req, rateLimitConfig);
545
+ if (!rateLimit.allowed) {
546
+ const retryAfter = Math.ceil((rateLimit.resetTime - Date.now()) / 1000);
547
+ res.writeHead(429, {
548
+ "Content-Type": "application/json",
549
+ "Retry-After": String(retryAfter),
550
+ "X-RateLimit-Limit": String(rateLimitConfig.maxRequests),
551
+ "X-RateLimit-Remaining": "0",
552
+ "X-RateLimit-Reset": String(Math.ceil(rateLimit.resetTime / 1000)),
553
+ });
554
+ res.end(JSON.stringify({
555
+ error: "Too Many Requests",
556
+ message: `Rate limit exceeded. Try again in ${retryAfter} seconds.`,
557
+ retry_after: retryAfter,
558
+ }));
559
+ return;
560
+ }
561
+ // Add rate limit headers to successful responses
562
+ res.setHeader("X-RateLimit-Limit", String(rateLimitConfig.maxRequests));
563
+ res.setHeader("X-RateLimit-Remaining", String(rateLimit.remaining));
564
+ res.setHeader("X-RateLimit-Reset", String(Math.ceil(rateLimit.resetTime / 1000)));
409
565
  // Auth check for protected endpoints
410
566
  if (authEnabled) {
411
567
  const authResult = await validateAuth(req, apiKeys, auth0Enabled);
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server-remote.js","sourceRoot":"","sources":["../src/mcp-server-remote.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;GAWG;AAEH;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,YAAY,EAAmC,MAAM,WAAW,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAmB,MAAM,MAAM,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAC;AACnG,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,qDAAqD;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAQvC,8BAA8B;AAC9B,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAG7E,0BAA0B;AAC1B,IAAI,OAAO,GAAoB,IAAI,CAAC;AAEpC,yCAAyC;AACzC,MAAM,aAAa,GAAkC,IAAI,CAAC;AAE1D,KAAK,UAAU,UAAU;IACvB,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,4DAA4D;QAC5D,MAAM,WAAW,GAAG,aAAa,EAAE,KAAK,CAAC;QAEzC,OAAO,GAAG,IAAI,QAAQ,CAAC;YACrB,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,IAAI;YAChB,KAAK,EAAE,WAAW;SACnB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,0CAA0C;AAC1C,MAAM,UAAU,GAAG,IAAI,GAAG,EAAyC,CAAC;AASpE,mCAAmC;AACnC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAmD,CAAC;AAC9E,MAAM,kBAAkB,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,gCAAgC;AAEtE,SAAS,cAAc;IACrB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IACxC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IAE5C,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,MAAM;QACN,QAAQ;QACR,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe;KACtC,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,KAAa;IAC7C,MAAM,KAAK,GAAG,cAAc,EAAE,CAAC;IAC/B,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAExB,oBAAoB;IACpB,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrC,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QACzC,OAAO,MAAM,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,IAAI,CAAC;QACH,2BAA2B;QAC3B,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,GAAG,CAAC,WAAW,KAAK,CAAC,MAAM,wBAAwB,CAAC,CAAC,CAAC;QAE1F,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE;YAC/C,MAAM,EAAE,WAAW,KAAK,CAAC,MAAM,GAAG;YAClC,QAAQ,EAAE,KAAK,CAAC,QAAQ;SACzB,CAAC,CAAC;QAEH,mBAAmB;QACnB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAC3E,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE;YACpB,OAAO;YACP,MAAM,EAAE,GAAG,GAAG,kBAAkB;SACjC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,QAAQ,EAAE,CAAC;QAClB,oEAAoE;QACpE,IAAI,CAAC;YACH,MAAM,gBAAgB,GAAG,MAAM,KAAK,CAAC,WAAW,KAAK,CAAC,MAAM,WAAW,EAAE;gBACvE,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,KAAK,EAAE;iBACjC;aACF,CAAC,CAAC;YAEH,IAAI,gBAAgB,CAAC,EAAE,EAAE,CAAC;gBACxB,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,CAAC;gBAC/C,MAAM,OAAO,GAAe;oBAC1B,GAAG,EAAE,QAAQ,CAAC,GAAG;oBACjB,KAAK,EAAE,QAAQ,CAAC,KAAK;oBACrB,IAAI,EAAE,QAAQ,CAAC,IAAI;iBACpB,CAAC;gBAEF,qCAAqC;gBACrC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE;oBACpB,OAAO;oBACP,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,GAAG,kBAAkB;iBACzD,CAAC,CAAC;gBAEH,OAAO,OAAO,CAAC;YACjB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,sCAAsC;QACxC,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,4BAA4B;IACnC,MAAM,KAAK,GAAG,cAAc,EAAE,CAAC;IAC/B,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAExB,OAAO;QACL,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,qBAAqB,EAAE,CAAC,WAAW,KAAK,CAAC,MAAM,EAAE,CAAC;QAClD,wBAAwB,EAAE,CAAC,QAAQ,CAAC;QACpC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC;KACjD,CAAC;AACJ,CAAC;AAED,SAAS,UAAU;IACjB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IAC1C,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IAE9C,IAAI,CAAC,SAAS,IAAI,CAAC,YAAY,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAE/B,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACtB,CAAC;IAED,IAAI,YAAY,EAAE,CAAC;QACjB,KAAK,MAAM,GAAG,IAAI,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;YAC3B,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AACrC,CAAC;AAED,SAAS,cAAc,CAAC,GAAoB,EAAE,SAAsB;IAClE,4CAA4C;IAC5C,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC;IAC7C,IAAI,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,yBAAyB;IACzB,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9C,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;QACpE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,GAAoB,EACpB,OAA2B,EAC3B,YAAqB;IAErB,6BAA6B;IAC7B,IAAI,OAAO,IAAI,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC;QAC5C,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACzB,CAAC;IAED,uBAAuB;IACvB,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC;QAC7C,IAAI,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,CAAC;YAChD,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;YACzB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,mCAAmC,EAAE,CAAC;AACvE,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAmB,EAAE,OAAgB;IAC7D,MAAM,KAAK,GAAG,cAAc,EAAE,CAAC;IAC/B,IAAI,OAAO,GAAG,QAAQ,CAAC;IAEvB,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,GAAG,2DAA2D,KAAK,CAAC,MAAM,mCAAmC,KAAK,CAAC,MAAM,eAAe,CAAC;IAClJ,CAAC;IAED,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,cAAc,EAAE,kBAAkB;QAClC,kBAAkB,EAAE,OAAO;KAC5B,CAAC,CAAC;IACH,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;QACrB,KAAK,EAAE,cAAc;QACrB,OAAO,EAAE,OAAO,IAAI,kEAAkE;QACtF,GAAG,CAAC,KAAK,IAAI;YACX,YAAY,EAAE,KAAK,CAAC,MAAM;YAC1B,sBAAsB,EAAE,WAAW,KAAK,CAAC,MAAM,YAAY;YAC3D,cAAc,EAAE,WAAW,KAAK,CAAC,MAAM,cAAc;SACtD,CAAC;KACH,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CACxB,MAAiB,EACjB,mBAAmG;IAEnG,MAAM,OAAO,GAA4B,EAAE,UAAU,EAAE,CAAC;IAExD,IAAI,mBAAmB,EAAE,CAAC;QACxB,wDAAwD;QACxD,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC;SAAM,CAAC;QACN,0EAA0E;QAC1E,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CACtB,mBAAmG;IAEnG,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;QAC3B,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,OAAO;KACjB,CAAC,CAAC;IACH,iBAAiB,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IAC/C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,gBAAgB,CAC7B,GAAoB,EACpB,GAAmB,EACnB,SAAwC;IAExC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAEzB,+FAA+F;IAC/F,wFAAwF;IACxF,kGAAkG;IAClG,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;IAC9C,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;QAChD,MAAM,WAAW,GAAG,qCAAqC,CAAC;QAC1D,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,WAAW,CAAC;QACjC,sDAAsD;QACtD,MAAM,SAAS,GAAG,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,QAAQ,CAAC,CAAC;QAC9E,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;YACnB,GAAG,CAAC,UAAU,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAED,+BAA+B;IAC/B,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAErD,2DAA2D;QAC3D,IAAI,UAA+C,CAAC;QACpD,IAAI,CAAC;YACH,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACnD,CAAC;QAAC,OAAO,UAAU,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,iCAAkC,UAAoB,CAAC,OAAO,EAAE,CAAC,CAAC;YAChF,OAAO,CAAC,KAAK,CAAC,iBAAiB,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;YAC5D,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;gBACrB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE;oBACL,IAAI,EAAE,CAAC,KAAK;oBACZ,OAAO,EAAE,2CAA2C;iBACrD;gBACD,EAAE,EAAE,IAAI;aACT,CAAC,CAAC,CAAC;YACJ,OAAO;QACT,CAAC;QAED,sBAAsB;QACtB,MAAM,MAAM,GAAI,UAAU,EAAE,MAAiB,IAAI,SAAS,CAAC;QAC3D,IAAI,OAAO,GAAG,KAAK,MAAM,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,UAAU,EAAE,MAA6C,CAAC;QACzE,IAAI,MAAM,KAAK,YAAY,IAAI,MAAM,EAAE,IAAI,EAAE,CAAC;YAC5C,OAAO,IAAI,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC;QACjC,CAAC;QACD,IAAI,MAAM,KAAK,2BAA2B,EAAE,CAAC;YAC3C,OAAO,GAAG,uBAAuB,CAAC;QACpC,CAAC;QAED,MAAM,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;QAEpD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,GAAG,CAAC,UAAU,KAAK,QAAQ,KAAK,CAAC,CAAC;IAChE,CAAC;SAAM,CAAC;QACN,MAAM,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,MAAM,MAAM,GAAG,CAAC,UAAU,KAAK,QAAQ,KAAK,CAAC,CAAC;IACrE,CAAC;AACH,CAAC;AAqBD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,OAAgC;IACzE,uDAAuD;IACvD,iBAAiB,EAAE,CAAC;IAEpB,sFAAsF;IACtF,aAAa,CAAC,IAAI,CAAC,CAAC;IAEpB,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,MAAM,EAAE,EAAE,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,SAAS,CAAC;IAC3C,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,WAAW,CAAC;IAChE,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAG,cAAc,EAAE,CAAC;IAC/B,MAAM,iBAAiB,GAAG,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC;IAC/D,MAAM,YAAY,GAAG,KAAK,KAAK,IAAI,CAAC;IACpC,MAAM,WAAW,GAAG,iBAAiB,IAAI,YAAY,CAAC;IAEtD,OAAO,CAAC,GAAG,CAAC,wCAAwC,OAAO,KAAK,CAAC,CAAC;IAClE,OAAO,CAAC,GAAG,CAAC,SAAS,WAAW,EAAE,CAAC,CAAC;IACpC,OAAO,CAAC,GAAG,CAAC,SAAS,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,wBAAwB,EAAE,CAAC,CAAC;IAC3E,IAAI,iBAAiB,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,8BAA8B,OAAO,EAAE,IAAI,QAAQ,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,6BAA6B,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;IAE5C,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QACjD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,UAAU,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QAElE,iCAAiC;QACjC,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC;QAClC,IAAI,MAAM,EAAE,CAAC;YACX,GAAG,CAAC,SAAS,CAAC,6BAA6B,EAAE,MAAM,CAAC,CAAC;YACrD,GAAG,CAAC,SAAS,CAAC,kCAAkC,EAAE,MAAM,CAAC,CAAC;QAC5D,CAAC;QACD,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,4BAA4B,CAAC,CAAC;QAC5E,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,wDAAwD,CAAC,CAAC;QACxG,GAAG,CAAC,SAAS,CAAC,+BAA+B,EAAE,kCAAkC,CAAC,CAAC;QAEnF,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC7B,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACnB,GAAG,CAAC,GAAG,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QAED,wEAAwE;QACxE,sCAAsC;QACtC,wEAAwE;QAExE,wBAAwB;QACxB,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC/B,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;gBACrB,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,OAAO;gBAChB,IAAI,EAAE,WAAW;gBACjB,YAAY,EAAE;oBACZ,OAAO,EAAE,iBAAiB;oBAC1B,KAAK,EAAE,YAAY;iBACpB;aACF,CAAC,CAAC,CAAC;YACJ,OAAO;QACT,CAAC;QAED,uBAAuB;QACvB,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YAC7B,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;gBACrB,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,OAAO;gBAChB,WAAW,EAAE,8EAA8E;gBAC3F,YAAY,EAAE,MAAM;gBACpB,aAAa,EAAE,WAAW;gBAC1B,YAAY,EAAE;oBACZ,OAAO,EAAE,iBAAiB;oBAC1B,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;wBACpB,MAAM,EAAE,KAAK,EAAE,MAAM;wBACrB,sBAAsB,EAAE,WAAW,KAAK,EAAE,MAAM,YAAY;wBAC5D,cAAc,EAAE,WAAW,KAAK,EAAE,MAAM,cAAc;qBACvD,CAAC,CAAC,CAAC,KAAK;iBACV;gBACD,YAAY,EAAE,CAAC,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,aAAa,CAAC;aAC5F,CAAC,CAAC,CAAC;YACJ,OAAO;QACT,CAAC;QAED,8DAA8D;QAC9D,IAAI,GAAG,CAAC,QAAQ,KAAK,uCAAuC,EAAE,CAAC;YAC7D,MAAM,QAAQ,GAAG,4BAA4B,EAAE,CAAC;YAChD,IAAI,QAAQ,EAAE,CAAC;gBACb,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC;YAC7D,CAAC;YACD,OAAO;QACT,CAAC;QAED,wEAAwE;QACxE,sCAAsC;QACtC,wEAAwE;QAExE,qCAAqC;QACrC,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;YAClE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;gBACtB,gBAAgB,CAAC,GAAG,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;gBACzC,OAAO;YACT,CAAC;QACH,CAAC;QAED,eAAe;QACf,IAAI,GAAG,CAAC,QAAQ,KAAK,MAAM,IAAI,GAAG,CAAC,QAAQ,KAAK,GAAG,EAAE,CAAC;YACpD,wBAAwB;YACxB,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAuB,CAAC;YAEtE,IAAI,SAAwC,CAAC;YAE7C,IAAI,WAAW,KAAK,UAAU,IAAI,SAAS,IAAI,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBACzE,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACN,uBAAuB;gBACvB,SAAS,GAAG,IAAI,6BAA6B,CAAC;oBAC5C,kBAAkB,EAAE,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS;iBAChF,CAAC,CAAC;gBAEH,qEAAqE;gBACrE,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;gBAEvD,yDAAyD;gBACzD,IAAI,OAAO,EAAE,YAAY,EAAE,CAAC;oBAC1B,MAAM,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;gBACrC,CAAC;gBAED,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBAEhC,oCAAoC;gBACpC,IAAI,WAAW,KAAK,UAAU,EAAE,CAAC;oBAC/B,MAAM,YAAY,GAAG,SAAS,CAAC,SAAS,CAAC;oBACzC,IAAI,YAAY,EAAE,CAAC;wBACjB,UAAU,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;wBACxC,SAAS,CAAC,OAAO,GAAG,GAAG,EAAE;4BACvB,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;wBAClC,CAAC,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;YAC5C,OAAO;QACT,CAAC;QAED,sBAAsB;QACtB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;QACjC,OAAO,CAAC,GAAG,CAAC,2DAA2D,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;QACvF,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,IAAI,IAAI,MAAM,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,IAAI,IAAI,SAAS,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,IAAI,IAAI,OAAO,CAAC,CAAC;QACvD,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,IAAI,IAAI,uCAAuC,CAAC,CAAC;QACzF,CAAC;QACD,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;YACjC,IAAI,iBAAiB,EAAE,CAAC;gBACtB,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;gBAChE,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;YACvD,CAAC;YACD,IAAI,YAAY,EAAE,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;gBAC7D,OAAO,CAAC,GAAG,CAAC,6BAA6B,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,IAAI,IAAI,MAAM,CAAC,CAAC;QACjD,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,4BAA4B,IAAI,IAAI,IAAI,uCAAuC,CAAC,CAAC;QAC/F,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,oBAAoB;IACpB,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;QAC1B,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAClC,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;QACxB,CAAC;QACD,UAAU,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;IAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AAClC,CAAC;AAED,2BAA2B;AAC3B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,sBAAsB,CAAC;IACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,sBAAsB,CAAC,EAAE,CAAC;IACtD,oBAAoB,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACnC,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,GAAG,CAAC,CAAC;QACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"mcp-server-remote.js","sourceRoot":"","sources":["../src/mcp-server-remote.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;GAWG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAE,YAAY,EAAmC,MAAM,WAAW,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAmB,MAAM,MAAM,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAC;AACnG,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,qDAAqD;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAQvC,8BAA8B;AAC9B,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAG7E,0BAA0B;AAC1B,IAAI,OAAO,GAAoB,IAAI,CAAC;AAEpC,yCAAyC;AACzC,MAAM,aAAa,GAAkC,IAAI,CAAC;AAE1D,KAAK,UAAU,UAAU;IACvB,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,4DAA4D;QAC5D,MAAM,WAAW,GAAG,aAAa,EAAE,KAAK,CAAC;QAEzC,OAAO,GAAG,IAAI,QAAQ,CAAC;YACrB,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,IAAI;YAChB,KAAK,EAAE,WAAW;SACnB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,0CAA0C;AAC1C,MAAM,UAAU,GAAG,IAAI,GAAG,EAAyC,CAAC;AASpE,mCAAmC;AACnC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAmD,CAAC;AAC9E,MAAM,kBAAkB,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,gCAAgC;AAEtE,SAAS,cAAc;IACrB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IACxC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IAE5C,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,MAAM;QACN,QAAQ;QACR,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe;KACtC,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,KAAa;IAC7C,MAAM,KAAK,GAAG,cAAc,EAAE,CAAC;IAC/B,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAExB,oBAAoB;IACpB,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrC,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QACzC,OAAO,MAAM,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,IAAI,CAAC;QACH,2BAA2B;QAC3B,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,GAAG,CAAC,WAAW,KAAK,CAAC,MAAM,wBAAwB,CAAC,CAAC,CAAC;QAE1F,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE;YAC/C,MAAM,EAAE,WAAW,KAAK,CAAC,MAAM,GAAG;YAClC,QAAQ,EAAE,KAAK,CAAC,QAAQ;SACzB,CAAC,CAAC;QAEH,mBAAmB;QACnB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAC3E,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE;YACpB,OAAO;YACP,MAAM,EAAE,GAAG,GAAG,kBAAkB;SACjC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,QAAQ,EAAE,CAAC;QAClB,oEAAoE;QACpE,IAAI,CAAC;YACH,MAAM,gBAAgB,GAAG,MAAM,KAAK,CAAC,WAAW,KAAK,CAAC,MAAM,WAAW,EAAE;gBACvE,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,KAAK,EAAE;iBACjC;aACF,CAAC,CAAC;YAEH,IAAI,gBAAgB,CAAC,EAAE,EAAE,CAAC;gBACxB,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,CAAC;gBAC/C,MAAM,OAAO,GAAe;oBAC1B,GAAG,EAAE,QAAQ,CAAC,GAAG;oBACjB,KAAK,EAAE,QAAQ,CAAC,KAAK;oBACrB,IAAI,EAAE,QAAQ,CAAC,IAAI;iBACpB,CAAC;gBAEF,qCAAqC;gBACrC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE;oBACpB,OAAO;oBACP,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,GAAG,kBAAkB;iBACzD,CAAC,CAAC;gBAEH,OAAO,OAAO,CAAC;YACjB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,sCAAsC;QACxC,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,4BAA4B;IACnC,MAAM,KAAK,GAAG,cAAc,EAAE,CAAC;IAC/B,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAExB,OAAO;QACL,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,qBAAqB,EAAE,CAAC,WAAW,KAAK,CAAC,MAAM,EAAE,CAAC;QAClD,wBAAwB,EAAE,CAAC,QAAQ,CAAC;QACpC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC;KACjD,CAAC;AACJ,CAAC;AAED,SAAS,UAAU;IACjB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IAC1C,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IAE9C,IAAI,CAAC,SAAS,IAAI,CAAC,YAAY,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAE/B,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACtB,CAAC;IAED,IAAI,YAAY,EAAE,CAAC;QACjB,KAAK,MAAM,GAAG,IAAI,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;YAC3B,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AACrC,CAAC;AAED,SAAS,cAAc,CAAC,GAAoB,EAAE,SAAsB;IAClE,4CAA4C;IAC5C,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC;IAC7C,IAAI,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,yBAAyB;IACzB,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9C,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;QACpE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAoBD,mDAAmD;AACnD,MAAM,cAAc,GAAG,IAAI,GAAG,EAA0B,CAAC;AAEzD,SAAS,kBAAkB;IACzB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,KAAK,MAAM,CAAC;IAC1D,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;IAC1E,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,SAAS,EAAE,EAAE,CAAC,CAAC;IAC7E,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;IACzE,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,IAAI,QAAQ,EAAE,EAAE,CAAC,CAAC;IACvF,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE,CAAC;IAE5D,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;IACpC,KAAK,MAAM,EAAE,IAAI,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;QAC1B,IAAI,OAAO,EAAE,CAAC;YACZ,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC;AACrF,CAAC;AAED,SAAS,WAAW,CAAC,GAAoB;IACvC,4DAA4D;IAC5D,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACjD,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;QAClC,mDAAmD;QACnD,OAAO,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACxC,CAAC;IAED,iCAAiC;IACjC,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACxC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAED,qCAAqC;IACrC,OAAO,GAAG,CAAC,MAAM,CAAC,aAAa,IAAI,SAAS,CAAC;AAC/C,CAAC;AAED,SAAS,eAAe,CAAC,GAAoB;IAC3C,iDAAiD;IACjD,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAChD,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1D,OAAO,WAAW,SAAS,EAAE,CAAC;IAChC,CAAC;IAED,iCAAiC;IACjC,OAAO,MAAM,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;AAClC,CAAC;AAED,SAAS,cAAc,CACrB,GAAoB,EACpB,MAAuB;IAEvB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,WAAW,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;IACxE,CAAC;IAED,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IAE5B,yCAAyC;IACzC,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,WAAW,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;IACxE,CAAC;IAED,MAAM,GAAG,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IACjC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,WAAW,GAAG,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC1C,MAAM,gBAAgB,GAAG,GAAG,GAAG,MAAM,CAAC,aAAa,CAAC;IAEpD,sBAAsB;IACtB,IAAI,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,KAAK,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC;QAC5C,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,8CAA8C;IAC9C,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,GAAG,WAAW,CAAC,CAAC;IAE7E,iCAAiC;IACjC,MAAM,aAAa,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,GAAG,gBAAgB,CAAC,CAAC,MAAM,CAAC;IAE9F,gEAAgE;IAChE,MAAM,aAAa,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC;IAExE,gDAAgD;IAChD,IAAI,YAAoB,CAAC;IACzB,IAAI,qBAA6B,CAAC;IAElC,IAAI,aAAa,EAAE,CAAC;QAClB,uCAAuC;QACvC,YAAY,GAAG,MAAM,CAAC,aAAa,CAAC;QACpC,qBAAqB,GAAG,aAAa,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,0CAA0C;QAC1C,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC;QAClC,qBAAqB,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;IAChD,CAAC;IAED,+BAA+B;IAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,GAAG,qBAAqB,CAAC,CAAC;IAEpE,uBAAuB;IACvB,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;QACzC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,QAAQ;QACrC,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC;IAE1B,IAAI,qBAAqB,IAAI,YAAY,EAAE,CAAC;QAC1C,sBAAsB;QACtB,OAAO;YACL,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,CAAC;YACZ,SAAS;YACT,cAAc,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;SAC9C,CAAC;IACJ,CAAC;IAED,8BAA8B;IAC9B,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEzB,OAAO;QACL,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,SAAS,GAAG,CAAC;QACxB,SAAS;QACT,cAAc,EAAE,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,aAAa,GAAG,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;KAClG,CAAC;AACJ,CAAC;AAED,iEAAiE;AACjE,WAAW,CAAC,GAAG,EAAE;IACf,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IAEpC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,cAAc,CAAC,OAAO,EAAE,EAAE,CAAC;QACpD,0BAA0B;QAC1B,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;QAEvE,6DAA6D;QAC7D,MAAM,UAAU,GAAG,GAAG,GAAG,KAAK,CAAC,YAAY,CAAC;QAC5C,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,GAAG,MAAM,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;YACpE,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;AACH,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;AAEnB,KAAK,UAAU,YAAY,CACzB,GAAoB,EACpB,OAA2B,EAC3B,YAAqB;IAErB,6BAA6B;IAC7B,IAAI,OAAO,IAAI,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC;QAC5C,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACzB,CAAC;IAED,uBAAuB;IACvB,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC;QAC7C,IAAI,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,CAAC;YAChD,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;YACzB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,mCAAmC,EAAE,CAAC;AACvE,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAmB,EAAE,OAAgB;IAC7D,MAAM,KAAK,GAAG,cAAc,EAAE,CAAC;IAC/B,IAAI,OAAO,GAAG,QAAQ,CAAC;IAEvB,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,GAAG,2DAA2D,KAAK,CAAC,MAAM,mCAAmC,KAAK,CAAC,MAAM,eAAe,CAAC;IAClJ,CAAC;IAED,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,cAAc,EAAE,kBAAkB;QAClC,kBAAkB,EAAE,OAAO;KAC5B,CAAC,CAAC;IACH,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;QACrB,KAAK,EAAE,cAAc;QACrB,OAAO,EAAE,OAAO,IAAI,kEAAkE;QACtF,GAAG,CAAC,KAAK,IAAI;YACX,YAAY,EAAE,KAAK,CAAC,MAAM;YAC1B,sBAAsB,EAAE,WAAW,KAAK,CAAC,MAAM,YAAY;YAC3D,cAAc,EAAE,WAAW,KAAK,CAAC,MAAM,cAAc;SACtD,CAAC;KACH,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CACxB,MAAiB,EACjB,mBAAmG;IAEnG,MAAM,OAAO,GAA4B,EAAE,UAAU,EAAE,CAAC;IAExD,IAAI,mBAAmB,EAAE,CAAC;QACxB,wDAAwD;QACxD,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC;SAAM,CAAC;QACN,0EAA0E;QAC1E,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CACtB,mBAAmG;IAEnG,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;QAC3B,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,OAAO;KACjB,CAAC,CAAC;IACH,iBAAiB,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IAC/C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,gBAAgB,CAC7B,GAAoB,EACpB,GAAmB,EACnB,SAAwC;IAExC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAEzB,+FAA+F;IAC/F,wFAAwF;IACxF,kGAAkG;IAClG,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;IAC9C,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;QAChD,MAAM,WAAW,GAAG,qCAAqC,CAAC;QAC1D,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,WAAW,CAAC;QACjC,sDAAsD;QACtD,MAAM,SAAS,GAAG,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,QAAQ,CAAC,CAAC;QAC9E,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;YACnB,GAAG,CAAC,UAAU,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAED,+BAA+B;IAC/B,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAErD,2DAA2D;QAC3D,IAAI,UAA+C,CAAC;QACpD,IAAI,CAAC;YACH,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACnD,CAAC;QAAC,OAAO,UAAU,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,iCAAkC,UAAoB,CAAC,OAAO,EAAE,CAAC,CAAC;YAChF,OAAO,CAAC,KAAK,CAAC,iBAAiB,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;YAC5D,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;gBACrB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE;oBACL,IAAI,EAAE,CAAC,KAAK;oBACZ,OAAO,EAAE,2CAA2C;iBACrD;gBACD,EAAE,EAAE,IAAI;aACT,CAAC,CAAC,CAAC;YACJ,OAAO;QACT,CAAC;QAED,sBAAsB;QACtB,MAAM,MAAM,GAAI,UAAU,EAAE,MAAiB,IAAI,SAAS,CAAC;QAC3D,IAAI,OAAO,GAAG,KAAK,MAAM,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,UAAU,EAAE,MAA6C,CAAC;QACzE,IAAI,MAAM,KAAK,YAAY,IAAI,MAAM,EAAE,IAAI,EAAE,CAAC;YAC5C,OAAO,IAAI,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC;QACjC,CAAC;QACD,IAAI,MAAM,KAAK,2BAA2B,EAAE,CAAC;YAC3C,OAAO,GAAG,uBAAuB,CAAC;QACpC,CAAC;QAED,MAAM,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;QAEpD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,MAAM,GAAG,CAAC,UAAU,KAAK,QAAQ,KAAK,CAAC,CAAC;IAChE,CAAC;SAAM,CAAC;QACN,MAAM,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,MAAM,MAAM,GAAG,CAAC,UAAU,KAAK,QAAQ,KAAK,CAAC,CAAC;IACrE,CAAC;AACH,CAAC;AAqBD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,OAAgC;IACzE,uDAAuD;IACvD,iBAAiB,EAAE,CAAC;IAEpB,sFAAsF;IACtF,aAAa,CAAC,IAAI,CAAC,CAAC;IAEpB,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,MAAM,EAAE,EAAE,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,SAAS,CAAC;IAC3C,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,WAAW,CAAC;IAChE,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAG,cAAc,EAAE,CAAC;IAC/B,MAAM,iBAAiB,GAAG,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC;IAC/D,MAAM,YAAY,GAAG,KAAK,KAAK,IAAI,CAAC;IACpC,MAAM,WAAW,GAAG,iBAAiB,IAAI,YAAY,CAAC;IACtD,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;IAE7C,OAAO,CAAC,GAAG,CAAC,wCAAwC,OAAO,KAAK,CAAC,CAAC;IAClE,OAAO,CAAC,GAAG,CAAC,SAAS,WAAW,EAAE,CAAC,CAAC;IACpC,OAAO,CAAC,GAAG,CAAC,SAAS,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,wBAAwB,EAAE,CAAC,CAAC;IAC3E,IAAI,iBAAiB,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,8BAA8B,OAAO,EAAE,IAAI,QAAQ,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,6BAA6B,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC;IAC7D,CAAC;IACD,IAAI,eAAe,CAAC,OAAO,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,eAAe,CAAC,WAAW,iBAAiB,eAAe,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,MAAM,CAAC,CAAC;QACtH,OAAO,CAAC,GAAG,CAAC,cAAc,eAAe,CAAC,aAAa,sBAAsB,eAAe,CAAC,aAAa,GAAG,IAAI,GAAG,EAAE,MAAM,CAAC,CAAC;QAC9H,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;QAC5D,IAAI,eAAe,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACvC,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1F,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;IAE5C,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QACjD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,UAAU,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QAElE,iCAAiC;QACjC,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC;QAClC,IAAI,MAAM,EAAE,CAAC;YACX,GAAG,CAAC,SAAS,CAAC,6BAA6B,EAAE,MAAM,CAAC,CAAC;YACrD,GAAG,CAAC,SAAS,CAAC,kCAAkC,EAAE,MAAM,CAAC,CAAC;QAC5D,CAAC;QACD,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,4BAA4B,CAAC,CAAC;QAC5E,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,wDAAwD,CAAC,CAAC;QACxG,GAAG,CAAC,SAAS,CAAC,+BAA+B,EAAE,kCAAkC,CAAC,CAAC;QAEnF,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC7B,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACnB,GAAG,CAAC,GAAG,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QAED,wEAAwE;QACxE,sCAAsC;QACtC,wEAAwE;QAExE,wBAAwB;QACxB,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC/B,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;gBACrB,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,OAAO;gBAChB,IAAI,EAAE,WAAW;gBACjB,YAAY,EAAE;oBACZ,OAAO,EAAE,iBAAiB;oBAC1B,KAAK,EAAE,YAAY;iBACpB;aACF,CAAC,CAAC,CAAC;YACJ,OAAO;QACT,CAAC;QAED,uBAAuB;QACvB,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YAC7B,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;gBACrB,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,OAAO;gBAChB,WAAW,EAAE,8EAA8E;gBAC3F,YAAY,EAAE,MAAM;gBACpB,aAAa,EAAE,WAAW;gBAC1B,YAAY,EAAE;oBACZ,OAAO,EAAE,iBAAiB;oBAC1B,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;wBACpB,MAAM,EAAE,KAAK,EAAE,MAAM;wBACrB,sBAAsB,EAAE,WAAW,KAAK,EAAE,MAAM,YAAY;wBAC5D,cAAc,EAAE,WAAW,KAAK,EAAE,MAAM,cAAc;qBACvD,CAAC,CAAC,CAAC,KAAK;iBACV;gBACD,YAAY,EAAE,CAAC,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,aAAa,CAAC;aAC5F,CAAC,CAAC,CAAC;YACJ,OAAO;QACT,CAAC;QAED,8DAA8D;QAC9D,IAAI,GAAG,CAAC,QAAQ,KAAK,uCAAuC,EAAE,CAAC;YAC7D,MAAM,QAAQ,GAAG,4BAA4B,EAAE,CAAC;YAChD,IAAI,QAAQ,EAAE,CAAC;gBACb,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC;YAC7D,CAAC;YACD,OAAO;QACT,CAAC;QAED,wEAAwE;QACxE,sCAAsC;QACtC,wEAAwE;QAExE,gCAAgC;QAChC,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;QACvD,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YACvB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;YACxE,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;gBACjB,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,MAAM,CAAC,UAAU,CAAC;gBACjC,mBAAmB,EAAE,MAAM,CAAC,eAAe,CAAC,WAAW,CAAC;gBACxD,uBAAuB,EAAE,GAAG;gBAC5B,mBAAmB,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;aACnE,CAAC,CAAC;YACH,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;gBACrB,KAAK,EAAE,mBAAmB;gBAC1B,OAAO,EAAE,qCAAqC,UAAU,WAAW;gBACnE,WAAW,EAAE,UAAU;aACxB,CAAC,CAAC,CAAC;YACJ,OAAO;QACT,CAAC;QAED,iDAAiD;QACjD,GAAG,CAAC,SAAS,CAAC,mBAAmB,EAAE,MAAM,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC;QACxE,GAAG,CAAC,SAAS,CAAC,uBAAuB,EAAE,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;QACpE,GAAG,CAAC,SAAS,CAAC,mBAAmB,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAElF,qCAAqC;QACrC,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;YAClE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;gBACtB,gBAAgB,CAAC,GAAG,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;gBACzC,OAAO;YACT,CAAC;QACH,CAAC;QAED,eAAe;QACf,IAAI,GAAG,CAAC,QAAQ,KAAK,MAAM,IAAI,GAAG,CAAC,QAAQ,KAAK,GAAG,EAAE,CAAC;YACpD,wBAAwB;YACxB,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAuB,CAAC;YAEtE,IAAI,SAAwC,CAAC;YAE7C,IAAI,WAAW,KAAK,UAAU,IAAI,SAAS,IAAI,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBACzE,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACN,uBAAuB;gBACvB,SAAS,GAAG,IAAI,6BAA6B,CAAC;oBAC5C,kBAAkB,EAAE,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS;iBAChF,CAAC,CAAC;gBAEH,qEAAqE;gBACrE,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;gBAEvD,yDAAyD;gBACzD,IAAI,OAAO,EAAE,YAAY,EAAE,CAAC;oBAC1B,MAAM,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;gBACrC,CAAC;gBAED,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBAEhC,oCAAoC;gBACpC,IAAI,WAAW,KAAK,UAAU,EAAE,CAAC;oBAC/B,MAAM,YAAY,GAAG,SAAS,CAAC,SAAS,CAAC;oBACzC,IAAI,YAAY,EAAE,CAAC;wBACjB,UAAU,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;wBACxC,SAAS,CAAC,OAAO,GAAG,GAAG,EAAE;4BACvB,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;wBAClC,CAAC,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;YAC5C,OAAO;QACT,CAAC;QAED,sBAAsB;QACtB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;QACjC,OAAO,CAAC,GAAG,CAAC,2DAA2D,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;QACvF,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,IAAI,IAAI,MAAM,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,IAAI,IAAI,SAAS,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,IAAI,IAAI,OAAO,CAAC,CAAC;QACvD,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,IAAI,IAAI,uCAAuC,CAAC,CAAC;QACzF,CAAC;QACD,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;YACjC,IAAI,iBAAiB,EAAE,CAAC;gBACtB,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;gBAChE,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;YACvD,CAAC;YACD,IAAI,YAAY,EAAE,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;gBAC7D,OAAO,CAAC,GAAG,CAAC,6BAA6B,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,IAAI,IAAI,MAAM,CAAC,CAAC;QACjD,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,4BAA4B,IAAI,IAAI,IAAI,uCAAuC,CAAC,CAAC;QAC/F,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,oBAAoB;IACpB,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;QAC1B,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAClC,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;QACxB,CAAC;QACD,UAAU,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;IAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AAClC,CAAC;AAED,2BAA2B;AAC3B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,sBAAsB,CAAC;IACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,sBAAsB,CAAC,EAAE,CAAC;IACtD,oBAAoB,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACnC,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,GAAG,CAAC,CAAC;QACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cbrowser",
3
- "version": "18.2.1",
3
+ "version": "18.3.0",
4
4
  "type": "module",
5
5
  "description": "Cognitive browser automation that thinks like your users—and helps AI agents navigate too. Simulate real user cognition with abandonment detection, constitutional safety, chaos engineering, and UX friction discovery. Sites that pass CBrowser's cognitive tests are easier for both humans and AI agents to navigate.",
6
6
  "main": "dist/index.js",