@enfyra/mcp-server 0.1.92 → 0.1.93
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/dist/lib/mcp-example-handlers-hooks.js +58 -0
- package/dist/lib/mcp-example-handlers-hooks.js.map +1 -1
- package/dist/lib/mcp-example-permissions-rls.js +49 -0
- package/dist/lib/mcp-example-permissions-rls.js.map +1 -1
- package/dist/lib/required-knowledge.js +31 -1
- package/dist/lib/required-knowledge.js.map +1 -1
- package/dist/lib/workflow-definitions.js +25 -16
- package/dist/lib/workflow-definitions.js.map +1 -1
- package/dist/lib/workflow-planner.js +16 -5
- package/dist/lib/workflow-planner.js.map +1 -1
- package/package.json +1 -1
|
@@ -274,6 +274,64 @@ const scope = {
|
|
|
274
274
|
'Do not override @QUERY.fields, @QUERY.deep, @QUERY.sort, @QUERY.limit, @QUERY.page, @QUERY.meta, @QUERY.aggregate, or debugMode in RLS; keep projection and pagination client-owned.',
|
|
275
275
|
],
|
|
276
276
|
},
|
|
277
|
+
{
|
|
278
|
+
name: 'Split hook layers instead of one god script',
|
|
279
|
+
code: `create_pre_hook({
|
|
280
|
+
routeId: "<canonical_orders_route_id>",
|
|
281
|
+
name: "scope_orders_to_current_user",
|
|
282
|
+
methods: ["GET"],
|
|
283
|
+
priority: -20,
|
|
284
|
+
globalRulesAckKey: "<globalRulesAckKey from get_enfyra_required_knowledge>",
|
|
285
|
+
knowledgeAckKey: "<dynamicCodeAckKey from get_enfyra_required_knowledge>",
|
|
286
|
+
code: \`const incoming = @QUERY.filter || {}
|
|
287
|
+
const scope = { owner: { id: { _eq: @USER.id } } }
|
|
288
|
+
@QUERY.filter = Object.keys(incoming).length
|
|
289
|
+
? { _and: [incoming, scope] }
|
|
290
|
+
: scope\`
|
|
291
|
+
})
|
|
292
|
+
|
|
293
|
+
create_handler({
|
|
294
|
+
routeId: "<custom_order_action_route_id>",
|
|
295
|
+
method: "POST",
|
|
296
|
+
globalRulesAckKey: "<globalRulesAckKey from get_enfyra_required_knowledge>",
|
|
297
|
+
knowledgeAckKey: "<dynamicCodeAckKey from get_enfyra_required_knowledge>",
|
|
298
|
+
sourceCode: \`const title = @BODY.title
|
|
299
|
+
if (!title) @THROW400("title is required")
|
|
300
|
+
|
|
301
|
+
const result = await #secure.orders.create({
|
|
302
|
+
data: { ...@BODY, owner: @USER.id },
|
|
303
|
+
fields: ["id", "title", "owner"]
|
|
304
|
+
})
|
|
305
|
+
const order = result.data?.[0]
|
|
306
|
+
if (!order) @THROW500("Order was not returned after create")
|
|
307
|
+
return { id: order.id, title: order.title, owner: order.owner?.id || order.owner }\`
|
|
308
|
+
})
|
|
309
|
+
|
|
310
|
+
create_post_hook({
|
|
311
|
+
routeId: "<canonical_orders_route_id>",
|
|
312
|
+
name: "add_display_title",
|
|
313
|
+
methods: ["GET"],
|
|
314
|
+
globalRulesAckKey: "<globalRulesAckKey from get_enfyra_required_knowledge>",
|
|
315
|
+
knowledgeAckKey: "<dynamicCodeAckKey from get_enfyra_required_knowledge>",
|
|
316
|
+
code: \`if (@ERROR) {
|
|
317
|
+
@LOGS("Orders read failed", @ERROR.message)
|
|
318
|
+
return
|
|
319
|
+
}
|
|
320
|
+
const payload = @DATA
|
|
321
|
+
const rows = Array.isArray(payload?.data) ? payload.data : [payload]
|
|
322
|
+
for (const row of rows) {
|
|
323
|
+
if (row) row.displayTitle = row.title || String(row.id)
|
|
324
|
+
}
|
|
325
|
+
return payload\`
|
|
326
|
+
})`,
|
|
327
|
+
notes: [
|
|
328
|
+
'This is a layering pattern, not a copy-paste table contract: inspect the real route, methods, columns, and ownership relation first.',
|
|
329
|
+
'The pre-hook owns canonical shared row scope and may short-circuit before the handler. Keep endpoint-specific validation and writes in the handler.',
|
|
330
|
+
'The post-hook owns response-only or best-effort work. It can observe @ERROR; post-hook failures are isolated, so required delivery belongs in a flow or the synchronous handler boundary.',
|
|
331
|
+
'Put rate limits/IP allow-deny in Guard Engine, deterministic body checks in column rules, and field visibility in field permissions instead of adding more script code.',
|
|
332
|
+
'Do not duplicate one invariant in all three scripts. If two checks remain for defense-in-depth, document that they protect different boundaries.',
|
|
333
|
+
],
|
|
334
|
+
},
|
|
277
335
|
{
|
|
278
336
|
name: 'Encrypted field table definition',
|
|
279
337
|
code: `create_tables({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-example-handlers-hooks.js","sourceRoot":"","sources":["../../src/lib/mcp-example-handlers-hooks.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACjC,KAAK,EAAE,2DAA2D;IAClE,OAAO,EAAE,+DAA+D;IACxE,QAAQ,EAAE;QACR;YACE,IAAI,EAAE,mDAAmD;YACzD,IAAI,EAAE;;;;;;;;;;GAUX;YACK,KAAK,EAAE;gBACL,+DAA+D;gBAC/D,4JAA4J;gBAC5J,4GAA4G;gBAC5G,wFAAwF;aACzF;SACF;QACD;YACE,IAAI,EAAE,wDAAwD;YAC9D,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BX;YACK,KAAK,EAAE;gBACL,+GAA+G;gBAC/G,iJAAiJ;gBACjJ,sIAAsI;gBACtI,uHAAuH;aACxH;SACF;QACD;YACE,IAAI,EAAE,oCAAoC;YAC1C,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;SA0BL;YACD,KAAK,EAAE;gBACL,0JAA0J;gBAC1J,oFAAoF;gBACpF,mIAAmI;aACpI;SACF;QACD;YACE,IAAI,EAAE,yDAAyD;YAC/D,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;mEAsBqD;YAC3D,KAAK,EAAE;gBACL,uEAAuE;gBACvE,4JAA4J;gBAC5J,iIAAiI;gBACjI,kEAAkE;aACnE;SACF;QACD;YACE,IAAI,EAAE,yBAAyB;YAC/B,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;0CAoB4B;YAClC,KAAK,EAAE;gBACL,uDAAuD;gBACvD,4IAA4I;gBAC5I,0RAA0R;gBAC1R,kDAAkD;aACnD;SACF;QACD;YACE,IAAI,EAAE,sDAAsD;YAC5D,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wDAsC0C;YAChD,KAAK,EAAE;gBACL,4IAA4I;gBAC5I,sJAAsJ;gBACtJ,6EAA6E;gBAC7E,uMAAuM;gBACvM,oGAAoG;aACrG;SACF;QACD;YACE,IAAI,EAAE,oCAAoC;YAC1C,IAAI,EAAE;;;;;;;;;;;;;;;EAeZ;YACM,KAAK,EAAE;gBACL,iGAAiG;gBACjG,+JAA+J;gBAC/J,yMAAyM;gBACzM,0EAA0E;aAC3E;SACF;QACD;YACE,IAAI,EAAE,iDAAiD;YACvD,IAAI,EAAE;;;;;;;;;;;;;;;CAeb;YACO,KAAK,EAAE;gBACL,gGAAgG;gBAChG,wHAAwH;gBACxH,6FAA6F;gBAC7F,0KAA0K;gBAC1K,mJAAmJ;aACpJ;SACF;QACD;YACE,IAAI,EAAE,2CAA2C;YACjD,IAAI,EAAE;;;;;;;;;UASJ;YACF,KAAK,EAAE;gBACL,+DAA+D;gBAC/D,kDAAkD;gBAClD,uJAAuJ;gBACvJ,sLAAsL;aACvL;SACF;QACD;YACE,IAAI,EAAE,kCAAkC;YACxC,IAAI,EAAE;;;;;;;;;;;;;;;;;GAiBX;YACK,KAAK,EAAE;gBACL,iEAAiE;gBACjE,+GAA+G;gBAC/G,gFAAgF;gBAChF,gHAAgH;gBAChH,yGAAyG;gBACzG,gDAAgD;aACjD;SACF;QACD;YACE,IAAI,EAAE,gDAAgD;YACtD,IAAI,EAAE;;;;;;;;;;GAUX;YACK,KAAK,EAAE;gBACL,gGAAgG;gBAChG,gHAAgH;gBAChH,0EAA0E;aAC3E;SACF;QACD;YACE,IAAI,EAAE,4BAA4B;YAClC,IAAI,EAAE;;;;;;;;;;;;;;;;;;GAkBX;YACK,KAAK,EAAE;gBACL,4GAA4G;gBAC5G,+CAA+C;gBAC/C,6DAA6D;aAC9D;SACF;KACF;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"mcp-example-handlers-hooks.js","sourceRoot":"","sources":["../../src/lib/mcp-example-handlers-hooks.ts"],"names":[],"mappings":"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"}
|
|
@@ -79,6 +79,55 @@ test_rest_endpoint({
|
|
|
79
79
|
'Use ensure_guard only for advanced guard trees such as IP allowlists/blacklists or composed AND/OR guard rules.',
|
|
80
80
|
],
|
|
81
81
|
},
|
|
82
|
+
{
|
|
83
|
+
name: 'Audit global versus route-specific guards',
|
|
84
|
+
code: `search_runtime_zone({
|
|
85
|
+
zone: "api_runtime",
|
|
86
|
+
query: "guard",
|
|
87
|
+
mode: "search",
|
|
88
|
+
maxResults: 50
|
|
89
|
+
})
|
|
90
|
+
|
|
91
|
+
inspect_route({ path: "/orders" })
|
|
92
|
+
|
|
93
|
+
query_table({
|
|
94
|
+
tableName: "enfyra_guard",
|
|
95
|
+
fields: ["id", "name", "type", "isGlobal", "isEnabled", "position", "route", "methods"],
|
|
96
|
+
all: true
|
|
97
|
+
})
|
|
98
|
+
|
|
99
|
+
query_table({
|
|
100
|
+
tableName: "enfyra_guard_rule",
|
|
101
|
+
fields: ["id", "guard", "type", "config", "isEnabled", "priority"],
|
|
102
|
+
all: true
|
|
103
|
+
})`,
|
|
104
|
+
notes: [
|
|
105
|
+
'Use this audit before adding a guard: distinguish enabled global roots from route-attached roots and inspect the rule type/config under each root.',
|
|
106
|
+
'A global IP/user rule shares its subject bucket across every route covered by that guard rule; add a route-specific guard when sections need isolated quotas.',
|
|
107
|
+
'Inspect route permissions separately. A guard is request gating/rate control, not RBAC or owner/tenant row authorization.',
|
|
108
|
+
'For a GraphQL audit, search graphql_runtime and inspect type=graphql guards separately; do not treat /graphql-schema or REST route guards as GraphQL guard coverage.',
|
|
109
|
+
],
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
name: 'Isolate a public route from the global IP bucket',
|
|
113
|
+
code: `ensure_route_rate_limit({
|
|
114
|
+
path: "/auth/login",
|
|
115
|
+
methods: ["POST"],
|
|
116
|
+
scope: "ip",
|
|
117
|
+
maxRequests: 10,
|
|
118
|
+
perSeconds: 60,
|
|
119
|
+
name: "Auth login IP burst limit",
|
|
120
|
+
description: "Isolate login abuse from the global API IP bucket.",
|
|
121
|
+
globalRulesAckKey: "<globalRulesAckKey from get_enfyra_required_knowledge>"
|
|
122
|
+
})
|
|
123
|
+
|
|
124
|
+
inspect_route({ path: "/auth/login" })`,
|
|
125
|
+
notes: [
|
|
126
|
+
'Use pre_auth + scope ip for public routes because user identity is not available yet.',
|
|
127
|
+
'This adds a route guard without removing the global baseline. Do not replace the global guard unless the user explicitly asks.',
|
|
128
|
+
'Choose limits from observed traffic; example numbers are anchors, not production defaults.',
|
|
129
|
+
],
|
|
130
|
+
},
|
|
82
131
|
{
|
|
83
132
|
name: 'Restrict an admin-only route to office IPs',
|
|
84
133
|
code: `ensure_guard({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-example-permissions-rls.js","sourceRoot":"","sources":["../../src/lib/mcp-example-permissions-rls.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,sBAAsB,GAAG;IAClC,KAAK,EAAE,qEAAqE;IAC5E,OAAO,EAAE,wEAAwE;IACjF,QAAQ,EAAE;QACR;YACE,IAAI,EAAE,4CAA4C;YAClD,IAAI,EAAE;;;;;;;;;;;;GAYX;YACK,KAAK,EAAE;gBACL,wKAAwK;gBACxK,4KAA4K;gBAC5K,wHAAwH;gBACxH,qDAAqD;aACtD;SACF;QACD;YACE,IAAI,EAAE,+BAA+B;YACrC,IAAI,EAAE;;;;GAIX;YACK,KAAK,EAAE;gBACL,iIAAiI;gBACjI,6FAA6F;gBAC7F,wDAAwD;aACzD;SACF;QACD;YACE,IAAI,EAAE,qCAAqC;YAC3C,IAAI,EAAE;;;;;;;;;;;;;;;;GAgBX;YACK,KAAK,EAAE;gBACL,qGAAqG;gBACrG,wFAAwF;gBACxF,kGAAkG;aACnG;SACF;QACD;YACE,IAAI,EAAE,gCAAgC;YACtC,IAAI,EAAE;;;;;;;;GAQX;YACK,KAAK,EAAE;gBACL,8GAA8G;gBAC9G,uGAAuG;gBACvG,iHAAiH;aAClH;SACF;QACD;YACE,IAAI,EAAE,4CAA4C;YAClD,IAAI,EAAE;;;;;;;;;;;;;;GAcX;YACK,KAAK,EAAE;gBACL,0FAA0F;gBAC1F,mFAAmF;gBACnF,8EAA8E;aAC/E;SACF;QACD;YACE,IAAI,EAAE,8BAA8B;YACpC,IAAI,EAAE;;;;;;;GAOX;YACK,KAAK,EAAE;gBACL,2DAA2D;gBAC3D,2EAA2E;gBAC3E,iFAAiF;aAClF;SACF;QACD;YACE,IAAI,EAAE,4BAA4B;YAClC,IAAI,EAAE;;;;;;;;;;GAUX;YACK,KAAK,EAAE;gBACL,+CAA+C;gBAC/C,kDAAkD;aACnD;SACF;QACD;YACE,IAAI,EAAE,2CAA2C;YACjD,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAyDJ;YACF,KAAK,EAAE;gBACL,uDAAuD;gBACvD,4KAA4K;gBAC5K,6FAA6F;gBAC7F,kHAAkH;gBAClH,gMAAgM;gBAChM,6GAA6G;aAC9G;SACF;KACF;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"mcp-example-permissions-rls.js","sourceRoot":"","sources":["../../src/lib/mcp-example-permissions-rls.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,sBAAsB,GAAG;IAClC,KAAK,EAAE,qEAAqE;IAC5E,OAAO,EAAE,wEAAwE;IACjF,QAAQ,EAAE;QACR;YACE,IAAI,EAAE,4CAA4C;YAClD,IAAI,EAAE;;;;;;;;;;;;GAYX;YACK,KAAK,EAAE;gBACL,wKAAwK;gBACxK,4KAA4K;gBAC5K,wHAAwH;gBACxH,qDAAqD;aACtD;SACF;QACD;YACE,IAAI,EAAE,+BAA+B;YACrC,IAAI,EAAE;;;;GAIX;YACK,KAAK,EAAE;gBACL,iIAAiI;gBACjI,6FAA6F;gBAC7F,wDAAwD;aACzD;SACF;QACD;YACE,IAAI,EAAE,qCAAqC;YAC3C,IAAI,EAAE;;;;;;;;;;;;;;;;GAgBX;YACK,KAAK,EAAE;gBACL,qGAAqG;gBACrG,wFAAwF;gBACxF,kGAAkG;aACnG;SACF;QACD;YACE,IAAI,EAAE,gCAAgC;YACtC,IAAI,EAAE;;;;;;;;GAQX;YACK,KAAK,EAAE;gBACL,8GAA8G;gBAC9G,uGAAuG;gBACvG,iHAAiH;aAClH;SACF;QACD;YACE,IAAI,EAAE,2CAA2C;YACjD,IAAI,EAAE;;;;;;;;;;;;;;;;;;;GAmBX;YACK,KAAK,EAAE;gBACL,oJAAoJ;gBACpJ,+JAA+J;gBAC/J,2HAA2H;gBAC3H,sKAAsK;aACvK;SACF;QACD;YACE,IAAI,EAAE,kDAAkD;YACxD,IAAI,EAAE;;;;;;;;;;;uCAWyB;YAC/B,KAAK,EAAE;gBACL,uFAAuF;gBACvF,gIAAgI;gBAChI,4FAA4F;aAC7F;SACF;QACD;YACE,IAAI,EAAE,4CAA4C;YAClD,IAAI,EAAE;;;;;;;;;;;;;;GAcX;YACK,KAAK,EAAE;gBACL,0FAA0F;gBAC1F,mFAAmF;gBACnF,8EAA8E;aAC/E;SACF;QACD;YACE,IAAI,EAAE,8BAA8B;YACpC,IAAI,EAAE;;;;;;;GAOX;YACK,KAAK,EAAE;gBACL,2DAA2D;gBAC3D,2EAA2E;gBAC3E,iFAAiF;aAClF;SACF;QACD;YACE,IAAI,EAAE,4BAA4B;YAClC,IAAI,EAAE;;;;;;;;;;GAUX;YACK,KAAK,EAAE;gBACL,+CAA+C;gBAC/C,kDAAkD;aACnD;SACF;QACD;YACE,IAAI,EAAE,2CAA2C;YACjD,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAyDJ;YACF,KAAK,EAAE;gBACL,uDAAuD;gBACvD,4KAA4K;gBAC5K,6FAA6F;gBAC7F,kHAAkH;gBAClH,gMAAgM;gBAChM,6GAA6G;aAC9G;SACF;KACF;CACF,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export const GLOBAL_RULES_ACK_KEY = 'EFYRA::GLOBAL-RULES::RUNTIME-ZONE-INVENTORY::SCHEMA-DESIGN-CONTEXT::20260717M';
|
|
2
2
|
export const DYNAMIC_CODE_KNOWLEDGE_ACK_KEY = 'EFYRA::DYNAMIC-REPOSITORY-CONTRACT::SCRIPT-RUNTIME-TYPES::ASYNC-HELPER-BRIDGE::20260720A';
|
|
3
3
|
export const EXTENSION_KNOWLEDGE_ACK_KEY = 'EFYRA::EXTENSION-APP-COMPOSABLE-CONTRACT::20260716B';
|
|
4
|
-
const REQUIRED_KNOWLEDGE_VERSION = '2026-08-
|
|
4
|
+
const REQUIRED_KNOWLEDGE_VERSION = '2026-08-05.guard-engine-hook-layering-contract';
|
|
5
5
|
const acknowledgedDomains = new Set();
|
|
6
6
|
function hasExplicitAckKey(key) {
|
|
7
7
|
return key !== undefined && key !== null;
|
|
@@ -117,6 +117,21 @@ const GLOBAL_RULES_SECTIONS = [
|
|
|
117
117
|
'Never fabricate ids, field names, relation names, paths, package names, or permission scopes.',
|
|
118
118
|
],
|
|
119
119
|
},
|
|
120
|
+
{
|
|
121
|
+
id: 'guard-engine-contract',
|
|
122
|
+
rules: [
|
|
123
|
+
'Use the Enfyra guard engine for request gating and abuse controls such as rate limits and IP allow/deny. Guards are not RBAC: use ensure_route_access for authenticated route authority, pre-hooks/handlers for owner or tenant row scope, ensure_field_permission for field visibility, and ensure_column_rule for body validation.',
|
|
124
|
+
'Before changing guard metadata, audit the live surface with search_runtime_zone(zone="api_runtime", query="guard") and inspect_route({ path }) for the exact route. For a coverage audit, inventory enabled en_fyra_guard/enfyra_guard_rule rows and classify global roots, route roots, position, methods, rule types, and enabled state before creating a new guard.',
|
|
125
|
+
'A route guard root targets one route through routeId/path; isGlobal=true is a route-type root that applies to every detected metadata route. An empty methods list means every HTTP method. Route-specific guards are required when a quota or IP policy must not share one global bucket across unrelated APIs.',
|
|
126
|
+
'pre_auth runs before JWT and may use client-IP or route rules only. post_auth runs after authentication/RoleGuard and is required for rate_limit_by_user. Do not put userIds or rate_limit_by_user in pre_auth guards.',
|
|
127
|
+
'Supported route rule types are rate_limit_by_ip, rate_limit_by_user, rate_limit_by_route, ip_whitelist, and ip_blacklist. rate_limit_by_operation is GraphQL-only. rate_limit_by_ip and rate_limit_by_user buckets are scoped by guard-rule id plus subject, not by route; use a route-specific guard when isolation is required.',
|
|
128
|
+
'Use ensure_route_rate_limit for one simple route throttle: scope ip for public/pre-auth routes, scope user for authenticated/post-auth routes, and scope route only when an intentionally shared route-wide bucket is desired. Use ensure_guard for composed AND/OR trees, IP allowlists/blacklists, or other advanced guard rules.',
|
|
129
|
+
'Do not replace a global guard blindly. Keep the existing global baseline unless the user explicitly asks to change it, then add scoped guards for sensitive sections such as auth, public registration/webhooks, Cloud mutations, storage/uploads, admin operations, and gateway traffic.',
|
|
130
|
+
'When a route is public but authenticates a credential inside a pre-hook (for example a PAT gateway), a post_auth user guard cannot see that identity automatically. Use a pre_auth IP/route guard for transport abuse and keep token/role authorization in the hook or handler until a task-scoped identity is available to the guard engine.',
|
|
131
|
+
'GraphQL guards are a separate type=graphql matrix over (table, gqlOperation), where null means all; they cannot use route, isGlobal, or HTTP methods. Audit them separately through graphql_runtime. The current ensure_guard route tool does not expose GraphQL target fields, so do not guess or raw-CRUD GraphQL guard rows; report that tool-contract gap or use a dedicated GraphQL guard operation when available.',
|
|
132
|
+
'Guard writes must use ensure_route_rate_limit or ensure_guard, never raw create_records/update_records on guard tables. After a write, inspect the exact route/guard rows, allow the guard reload performed by the operation, and verify a bounded positive/negative request without consuming a production quota unnecessarily. Route permissions and guard rejection are separate verification dimensions.',
|
|
133
|
+
],
|
|
134
|
+
},
|
|
120
135
|
{
|
|
121
136
|
id: 'oauth-provider-third-app-handoff',
|
|
122
137
|
rules: [
|
|
@@ -226,6 +241,21 @@ const DYNAMIC_CODE_SECTIONS = [
|
|
|
226
241
|
'For canonical table reads and shared RLS, merge security filters into @QUERY.filter and preserve @QUERY.fields, @QUERY.deep, @QUERY.sort, @QUERY.limit, @QUERY.page, @QUERY.meta, @QUERY.aggregate, and debugMode.',
|
|
227
242
|
],
|
|
228
243
|
},
|
|
244
|
+
{
|
|
245
|
+
id: 'hook-layering-contract',
|
|
246
|
+
rules: [
|
|
247
|
+
'Do not put every concern into one hook or handler. Split the request lifecycle by responsibility: Guard Engine for request gating and abuse controls, pre-hook for shared pre-handler policy/normalization, handler for endpoint-specific business orchestration, post-hook for response or best-effort side effects, column rules for deterministic body validation, field permissions for field visibility, and flows for durable asynchronous work.',
|
|
248
|
+
'The runtime order is route detection and method filtering, pre-auth guards, authentication/RoleGuard, post-auth guards, body validation, route pre-hooks, the route handler, then post-hooks and response finalization. A pre-hook that returns a value short-circuits the handler; a pre-hook that returns undefined lets the next block continue.',
|
|
249
|
+
'Use a route pre-hook only for a policy shared by every consumer of that canonical route, such as merging owner/tenant/membership scope into @QUERY.filter or normalizing protected input before canonical CRUD. Keep it small, deterministic, and early; do not make it a second business handler.',
|
|
250
|
+
'Use the route handler for endpoint-specific validation, business decisions, secure repository reads/writes, orchestration, and the explicit response shape. A custom route has no @REPOS.main; use #secure.<table> or @REPOS.secure.<table>. Do not make the handler a universal rate limiter, RBAC layer, or post-write dispatcher.',
|
|
251
|
+
'Use a post-hook for response shaping, audit/logging, or non-critical notifications after the handler/pre-hook phase. The worker runs post-hooks after success and also after a handler error with @ERROR populated; each post-hook failure is isolated and does not stop later post-hooks. Never rely on a post-hook to authorize, rescue a failed mutation, or provide a required durable side effect.',
|
|
252
|
+
'For a required durable side effect, queue or trigger a flow (or keep the write in the handler transaction boundary when the operation is synchronous). Do not hide a saga, retry loop, scheduled job, or cross-system delivery workflow inside a post-hook.',
|
|
253
|
+
'Use column rules for deterministic metadata-backed body validation and field permissions for field read/write visibility. Do not replace either with a script hook just because the hook can inspect the same payload.',
|
|
254
|
+
'Choose one authority for each invariant. Defense-in-depth is acceptable when boundaries differ, but do not copy the same owner check, rate limit, or response transformation into pre-hook, handler, and post-hook without a documented reason.',
|
|
255
|
+
'When a rule applies only to one custom endpoint, keep it in that handler. When it must protect every canonical CRUD consumer, put the shared row policy in the route pre-hook. When it is only IP/user/rate gating, use a guard instead of script code.',
|
|
256
|
+
'Inspect the route and its linked preHooks, handlers, and postHooks before editing. Verify each layer independently with the matching route test; a passing handler test does not prove the pre-hook short-circuit, post-hook error path, guard position, or flow delivery contract.',
|
|
257
|
+
],
|
|
258
|
+
},
|
|
229
259
|
{
|
|
230
260
|
id: 'hidden-field-query-surfaces',
|
|
231
261
|
rules: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"required-knowledge.js","sourceRoot":"","sources":["../../src/lib/required-knowledge.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,oBAAoB,GAAG,+EAA+E,CAAC;AACpH,MAAM,CAAC,MAAM,8BAA8B,GAAG,0FAA0F,CAAC;AACzI,MAAM,CAAC,MAAM,2BAA2B,GAAG,qDAAqD,CAAC;AAEjG,MAAM,0BAA0B,GAAG,
|
|
1
|
+
{"version":3,"file":"required-knowledge.js","sourceRoot":"","sources":["../../src/lib/required-knowledge.ts"],"names":[],"mappings":"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"}
|
|
@@ -234,8 +234,9 @@ export const TOOL_WORKFLOWS = [
|
|
|
234
234
|
'Writing or reviewing handler, hook, flow step, websocket, or bootstrap sourceCode.',
|
|
235
235
|
'Editing an existing script-backed metadata record.',
|
|
236
236
|
'Debugging macro, repository, or validation behavior.',
|
|
237
|
+
'Splitting a large hook or handler into pre-hook, handler, post-hook, column-rule, guard, or flow responsibilities.',
|
|
237
238
|
],
|
|
238
|
-
keywords: ['sourcecode', 'script', 'hook', 'pre hook', 'post hook', 'compiledcode', 'macro', 'repos', 'bootstrap'],
|
|
239
|
+
keywords: ['sourcecode', 'script', 'hook', 'pre hook', 'post hook', 'hook layering', 'god hook', 'split handler', 'compiledcode', 'macro', 'repos', 'bootstrap'],
|
|
239
240
|
firstTools: ['get_enfyra_required_knowledge', 'discover_script_contexts', 'build_dynamic_repository_usage', 'search_runtime_zone'],
|
|
240
241
|
inspectTools: ['search_runtime_zone(mode=search, zone=api_runtime|flow_runtime|websocket_runtime)', 'search_runtime_zone(mode=inspect)', 'trace_metadata_usage', 'discover_script_contexts'],
|
|
241
242
|
knowledgeTools: ['get_enfyra_required_knowledge', 'discover_script_contexts', 'build_dynamic_repository_usage'],
|
|
@@ -259,10 +260,11 @@ export const TOOL_WORKFLOWS = [
|
|
|
259
260
|
exampleCategories: ['handlers-hooks'],
|
|
260
261
|
nextStepTemplate: [
|
|
261
262
|
'Discover script context macros for the surface.',
|
|
263
|
+
'Inspect the route and linked pre-hooks, handlers, and post-hooks. Assign each invariant to the smallest layer: Guard Engine for request gating, pre-hook for canonical shared policy, handler for endpoint business logic, post-hook for response/best-effort work, column rule for deterministic validation, field permission for visibility, and flow for durable async work.',
|
|
262
264
|
'Generate repository access with build_dynamic_repository_usage instead of composing secure/trusted syntax from memory.',
|
|
263
265
|
'Use the source artifact returned by search_runtime_zone(mode=inspect) or trace_metadata_usage when patching.',
|
|
264
266
|
'Validate source before save unless the chosen write tool already validates.',
|
|
265
|
-
'Verify
|
|
267
|
+
'Verify each layer with the route/test runner that matches the script surface, including a short-circuit/error-path case when pre-hooks, post-hooks, or guards are involved.',
|
|
266
268
|
],
|
|
267
269
|
recommendedScope: 'dynamic-code',
|
|
268
270
|
},
|
|
@@ -306,19 +308,19 @@ export const TOOL_WORKFLOWS = [
|
|
|
306
308
|
},
|
|
307
309
|
{
|
|
308
310
|
key: 'guards-permissions-rules',
|
|
309
|
-
title: 'Guards, field permissions, and column validation rules',
|
|
311
|
+
title: 'Guards, route permissions, field permissions, and column validation rules',
|
|
310
312
|
useWhen: [
|
|
311
|
-
'
|
|
312
|
-
'Adding request rate limits or throttling to a route.',
|
|
313
|
-
'
|
|
314
|
-
'
|
|
315
|
-
],
|
|
316
|
-
keywords: ['guard', 'rate limit', 'throttle', 'field permission', 'column rule', 'validation rule', 'rule', 'rls'],
|
|
317
|
-
firstTools: ['get_enfyra_required_knowledge', '
|
|
318
|
-
inspectTools: ['
|
|
313
|
+
'Auditing or adding global/route-specific request guards and guard rules.',
|
|
314
|
+
'Adding request rate limits or throttling to a public or authenticated route.',
|
|
315
|
+
'Choosing between Guard Engine, RBAC route access, owner/tenant pre-hooks, field permissions, and column validation.',
|
|
316
|
+
'Restricting field read/write behavior or adding body validation rules at metadata level.',
|
|
317
|
+
],
|
|
318
|
+
keywords: ['guard', 'global guard', 'route guard', 'rate limit', 'throttle', 'pre_auth', 'post_auth', 'ip whitelist', 'ip blacklist', 'field permission', 'column rule', 'validation rule', 'rule', 'rls'],
|
|
319
|
+
firstTools: ['get_enfyra_required_knowledge', 'search_runtime_zone', 'inspect_route'],
|
|
320
|
+
inspectTools: ['search_runtime_zone', 'inspect_route', 'audit_route_access', 'inspect_table'],
|
|
319
321
|
knowledgeTools: ['get_enfyra_required_knowledge'],
|
|
320
322
|
writeTools: ['ensure_route_rate_limit', 'ensure_guard', 'ensure_field_permission', 'ensure_column_rule', 'create_pre_hook'],
|
|
321
|
-
verifyTools: ['
|
|
323
|
+
verifyTools: ['search_runtime_zone', 'inspect_route', 'audit_route_access', 'test_rest_endpoint', 'test_graphql'],
|
|
322
324
|
avoidTools: [
|
|
323
325
|
{
|
|
324
326
|
tool: 'raw create_records on guard/rule tables',
|
|
@@ -332,6 +334,12 @@ export const TOOL_WORKFLOWS = [
|
|
|
332
334
|
useInstead: 'ensure_route_rate_limit',
|
|
333
335
|
reason: 'Rate limits belong to the built-in guard engine, not custom pre-hook scripts.',
|
|
334
336
|
},
|
|
337
|
+
{
|
|
338
|
+
tool: 'ensure_route_access',
|
|
339
|
+
when: 'the requirement is only authenticated role/user authority, not abuse throttling or IP filtering',
|
|
340
|
+
useInstead: 'ensure_route_access for RBAC, plus a guard only when request gating is also required',
|
|
341
|
+
reason: 'Route permissions decide who may call an endpoint; guards decide whether an otherwise-eligible request is rate/IP allowed.',
|
|
342
|
+
},
|
|
335
343
|
{
|
|
336
344
|
tool: 'ensure_field_permission',
|
|
337
345
|
when: 'the requirement is owner/tenant row scoping or RLS query filtering',
|
|
@@ -342,10 +350,11 @@ export const TOOL_WORKFLOWS = [
|
|
|
342
350
|
requiredAck: ['globalRulesAckKey'],
|
|
343
351
|
exampleCategories: ['permissions-rls', 'schema-relations'],
|
|
344
352
|
nextStepTemplate: [
|
|
345
|
-
'
|
|
346
|
-
'
|
|
347
|
-
'
|
|
348
|
-
'
|
|
353
|
+
'Read the guard-engine contract, search api_runtime for existing guards, and inspect the exact route before changing anything.',
|
|
354
|
+
'Choose the boundary: RBAC for route authority, pre_auth IP/route guard for anonymous traffic, post_auth user guard for authenticated quotas, pre-hook/handler for owner or tenant rows, field permission for field visibility, or column rule for body validation.',
|
|
355
|
+
'Keep a global baseline unless explicitly changing it; add route-specific guards when unrelated APIs must have isolated quotas or IP policies.',
|
|
356
|
+
'Use ensure_route_rate_limit for one simple throttle and ensure_guard for composed trees or IP allow/deny rules. Do not raw-CRUD guard metadata.',
|
|
357
|
+
'Verify the saved guard attachment, enabled rule, route permission separately, and a bounded runtime positive/negative result. GraphQL guards require the separate GraphQL guard contract; do not force them into REST route fields.',
|
|
349
358
|
],
|
|
350
359
|
recommendedScope: 'schema',
|
|
351
360
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-definitions.js","sourceRoot":"","sources":["../../src/lib/workflow-definitions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workflow-definitions.js","sourceRoot":"","sources":["../../src/lib/workflow-definitions.ts"],"names":[],"mappings":"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"}
|
|
@@ -51,20 +51,29 @@ function primaryPathFor(workflow) {
|
|
|
51
51
|
return [
|
|
52
52
|
step(1, 'get_enfyra_required_knowledge', 'Read dynamic-code contracts and collect acknowledgement keys.'),
|
|
53
53
|
step(2, 'discover_script_contexts', 'Load macros, repository trust paths, per-surface helpers, and the fields+deep projection contract for script repository reads.'),
|
|
54
|
-
step(3, '
|
|
55
|
-
step(4, '
|
|
54
|
+
step(3, 'search_runtime_zone', 'Locate and inspect the route plus linked pre-hooks, handlers, and post-hooks before deciding where each concern belongs.'),
|
|
55
|
+
step(4, 'build_dynamic_repository_usage', 'Generate secure or intentional trusted repository access when the script reads or writes table data.'),
|
|
56
56
|
step(5, 'patch_script_source or update_script_source', 'Patch or replace the inspected source artifact with validation and hash checks.'),
|
|
57
|
-
step(6, 'test_rest_endpoint / run_admin_test / test_flow_step', 'Verify
|
|
57
|
+
step(6, 'test_rest_endpoint / run_admin_test / test_flow_step', 'Verify each selected layer, including pre-hook short-circuit and post-hook error behavior when those layers are part of the contract.'),
|
|
58
58
|
];
|
|
59
59
|
case 'route-access':
|
|
60
|
-
case 'guards-permissions-rules':
|
|
61
60
|
return [
|
|
62
61
|
step(1, 'get_enfyra_required_knowledge', 'Read access/security contracts.'),
|
|
63
62
|
step(2, 'inspect_route or inspect_table', 'Inspect the exact route/table access surface.'),
|
|
64
63
|
step(3, 'audit_route_access', 'Compare current route permissions against expected roles/users/methods.'),
|
|
65
|
-
step(4, 'ensure_route_access
|
|
64
|
+
step(4, 'ensure_route_access', 'Apply authenticated route authority. Use public_route_methods only when anonymous access is intentional.'),
|
|
66
65
|
step(5, 'audit_route_access or test_rest_endpoint', 'Verify the access behavior.'),
|
|
67
66
|
];
|
|
67
|
+
case 'guards-permissions-rules':
|
|
68
|
+
return [
|
|
69
|
+
step(1, 'get_enfyra_required_knowledge', 'Read the guard-engine contract and access/rule boundaries.'),
|
|
70
|
+
step(2, 'search_runtime_zone', 'Audit existing global and route-specific guards/rules in api_runtime before adding a scoped policy.'),
|
|
71
|
+
step(3, 'inspect_route', 'Inspect the exact route, available/public methods, current guard attachment, hooks, and handlers.'),
|
|
72
|
+
step(4, 'audit_route_access', 'Check RBAC separately; route permission is authority and guard rejection is request gating.'),
|
|
73
|
+
step(5, 'ensure_route_rate_limit / ensure_guard / ensure_field_permission / ensure_column_rule / create_pre_hook', 'Choose the specific boundary: simple throttle, advanced guard tree, field visibility, body validation, or owner/tenant row filtering.'),
|
|
74
|
+
step(6, 'search_runtime_zone / inspect_route', 'Verify the saved guard root/rule, position, methods, enabled state, and route attachment. Use query_table only as an explicit full-toolset escape hatch when the focused runtime inspectors cannot prove the postcondition.'),
|
|
75
|
+
step(7, 'test_rest_endpoint or test_graphql', 'Run a bounded runtime check without accidentally consuming a production quota; GraphQL guards use the separate GraphQL path.'),
|
|
76
|
+
];
|
|
68
77
|
case 'flow':
|
|
69
78
|
return [
|
|
70
79
|
step(1, 'get_enfyra_required_knowledge', 'Read flow/dynamic-code contracts.'),
|
|
@@ -256,6 +265,8 @@ function scoreWorkflow(workflow, { intent, surface, risk }) {
|
|
|
256
265
|
score += 10;
|
|
257
266
|
if (workflow.key === 'dynamic-script' && /flow step/.test(text) && /\b(sourcecode|source|compiledcode|script)\b/.test(text))
|
|
258
267
|
score += 6;
|
|
268
|
+
if (workflow.key === 'dynamic-script' && /\b(pre[- ]?hook|post[- ]?hook|handler)\b/.test(text) && /\b(split|layer|separate|divide|god|all in one|trách nhiệm|chia)\b/.test(text))
|
|
269
|
+
score += 12;
|
|
259
270
|
if (workflow.key === 'flow' && /\b(patch|edit|update|fix|change)\b/.test(text) && /\b(sourcecode|source|compiledcode|script)\b/.test(text))
|
|
260
271
|
score -= 4;
|
|
261
272
|
return score;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-planner.js","sourceRoot":"","sources":["../../src/lib/workflow-planner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workflow-planner.js","sourceRoot":"","sources":["../../src/lib/workflow-planner.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,cAAc,EACd,iBAAiB,EACjB,4BAA4B,GAO7B,MAAM,2BAA2B,CAAC;AAEnC,SAAS,eAAe,CAAC,QAAsB;IAC7C,OAAO;QACL,GAAG,EAAE,QAAQ,CAAC,GAAG;QACjB,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;KAC5C,CAAC;AACJ,CAAC;AAED,SAAS,IAAI,CAAC,KAAa,EAAE,IAAY,EAAE,OAAe,EAAE,QAAmC,EAAE;IAC/F,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,CAAC;AAC5C,CAAC;AAED,SAAS,cAAc,CAAC,QAAsB;IAC5C,QAAQ,QAAQ,CAAC,GAAG,EAAE,CAAC;QACrB,KAAK,cAAc;YACjB,OAAO;gBACL,IAAI,CAAC,CAAC,EAAE,+BAA+B,EAAE,oEAAoE,CAAC;gBAC9G,IAAI,CAAC,CAAC,EAAE,0BAA0B,EAAE,0EAA0E,CAAC;gBAC/G,IAAI,CAAC,CAAC,EAAE,uBAAuB,EAAE,oJAAoJ,CAAC;gBACtL,IAAI,CAAC,CAAC,EAAE,oBAAoB,EAAE,sCAAsC,CAAC;aACtE,CAAC;QACJ,KAAK,WAAW;YACd,OAAO;gBACL,IAAI,CAAC,CAAC,EAAE,+BAA+B,EAAE,oEAAoE,CAAC;gBAC9G,IAAI,CAAC,CAAC,EAAE,8BAA8B,EAAE,8DAA8D,CAAC;gBACvG,IAAI,CAAC,CAAC,EAAE,yBAAyB,EAAE,wGAAwG,CAAC;gBAC5I,IAAI,CAAC,CAAC,EAAE,yBAAyB,EAAE,mFAAmF,CAAC;gBACvH,IAAI,CAAC,CAAC,EAAE,oBAAoB,EAAE,wSAAwS,CAAC;gBACvU,IAAI,CAAC,CAAC,EAAE,kEAAkE,EAAE,uIAAuI,CAAC;gBACpN,IAAI,CAAC,CAAC,EAAE,0BAA0B,EAAE,4OAA4O,CAAC;aAClR,CAAC;QACJ,KAAK,QAAQ;YACX,OAAO;gBACL,IAAI,CAAC,CAAC,EAAE,+BAA+B,EAAE,uDAAuD,CAAC;gBACjG,IAAI,CAAC,CAAC,EAAE,2BAA2B,EAAE,4GAA4G,CAAC;gBAClJ,IAAI,CAAC,CAAC,EAAE,iCAAiC,EAAE,gFAAgF,EAAE,EAAE,IAAI,EAAE,mFAAmF,EAAE,CAAC;gBAC3N,IAAI,CAAC,CAAC,EAAE,mEAAmE,EAAE,0RAA0R,CAAC;gBACxW,IAAI,CAAC,CAAC,EAAE,yCAAyC,EAAE,+MAA+M,EAAE,EAAE,IAAI,EAAE,8BAA8B,EAAE,CAAC;gBAC7S,IAAI,CAAC,CAAC,EAAE,eAAe,EAAE,6FAA6F,CAAC;aACxH,CAAC;QACJ,KAAK,aAAa;YAChB,OAAO;gBACL,IAAI,CAAC,CAAC,EAAE,eAAe,EAAE,8EAA8E,CAAC;gBACxG,IAAI,CAAC,CAAC,EAAE,6BAA6B,EAAE,wEAAwE,CAAC;gBAChH,IAAI,CAAC,CAAC,EAAE,yBAAyB,EAAE,oFAAoF,EAAE,EAAE,IAAI,EAAE,oEAAoE,EAAE,CAAC;gBACxM,IAAI,CAAC,CAAC,EAAE,+CAA+C,EAAE,2DAA2D,CAAC;gBACrH,IAAI,CAAC,CAAC,EAAE,kDAAkD,EAAE,oIAAoI,EAAE,EAAE,IAAI,EAAE,mDAAmD,EAAE,CAAC;gBAChQ,IAAI,CAAC,CAAC,EAAE,gCAAgC,EAAE,mDAAmD,CAAC;aAC/F,CAAC;QACJ,KAAK,gBAAgB;YACnB,OAAO;gBACL,IAAI,CAAC,CAAC,EAAE,+BAA+B,EAAE,+DAA+D,CAAC;gBACzG,IAAI,CAAC,CAAC,EAAE,0BAA0B,EAAE,gIAAgI,CAAC;gBACrK,IAAI,CAAC,CAAC,EAAE,qBAAqB,EAAE,0HAA0H,CAAC;gBAC1J,IAAI,CAAC,CAAC,EAAE,gCAAgC,EAAE,sGAAsG,CAAC;gBACjJ,IAAI,CAAC,CAAC,EAAE,6CAA6C,EAAE,iFAAiF,CAAC;gBACzI,IAAI,CAAC,CAAC,EAAE,sDAAsD,EAAE,uIAAuI,CAAC;aACzM,CAAC;QACJ,KAAK,cAAc;YACjB,OAAO;gBACL,IAAI,CAAC,CAAC,EAAE,+BAA+B,EAAE,iCAAiC,CAAC;gBAC3E,IAAI,CAAC,CAAC,EAAE,gCAAgC,EAAE,+CAA+C,CAAC;gBAC1F,IAAI,CAAC,CAAC,EAAE,oBAAoB,EAAE,yEAAyE,CAAC;gBACxG,IAAI,CAAC,CAAC,EAAE,qBAAqB,EAAE,0GAA0G,CAAC;gBAC1I,IAAI,CAAC,CAAC,EAAE,0CAA0C,EAAE,6BAA6B,CAAC;aACnF,CAAC;QACJ,KAAK,0BAA0B;YAC7B,OAAO;gBACL,IAAI,CAAC,CAAC,EAAE,+BAA+B,EAAE,4DAA4D,CAAC;gBACtG,IAAI,CAAC,CAAC,EAAE,qBAAqB,EAAE,qGAAqG,CAAC;gBACrI,IAAI,CAAC,CAAC,EAAE,eAAe,EAAE,mGAAmG,CAAC;gBAC7H,IAAI,CAAC,CAAC,EAAE,oBAAoB,EAAE,6FAA6F,CAAC;gBAC5H,IAAI,CAAC,CAAC,EAAE,yGAAyG,EAAE,uIAAuI,CAAC;gBAC3P,IAAI,CAAC,CAAC,EAAE,qCAAqC,EAAE,6NAA6N,CAAC;gBAC7Q,IAAI,CAAC,CAAC,EAAE,oCAAoC,EAAE,8HAA8H,CAAC;aAC9K,CAAC;QACJ,KAAK,MAAM;YACT,OAAO;gBACL,IAAI,CAAC,CAAC,EAAE,+BAA+B,EAAE,mCAAmC,CAAC;gBAC7E,IAAI,CAAC,CAAC,EAAE,0BAA0B,EAAE,uEAAuE,CAAC;gBAC5G,IAAI,CAAC,CAAC,EAAE,eAAe,EAAE,4JAA4J,CAAC;gBACtL,IAAI,CAAC,CAAC,EAAE,gCAAgC,EAAE,4IAA4I,CAAC;aACxL,CAAC;QACJ,KAAK,WAAW;YACd,OAAO;gBACL,IAAI,CAAC,CAAC,EAAE,+BAA+B,EAAE,wCAAwC,CAAC;gBAClF,IAAI,CAAC,CAAC,EAAE,0BAA0B,EAAE,oCAAoC,CAAC;gBACzE,IAAI,CAAC,CAAC,EAAE,qBAAqB,EAAE,mFAAmF,CAAC;gBACnH,IAAI,CAAC,CAAC,EAAE,mDAAmD,EAAE,gEAAgE,CAAC;gBAC9H,IAAI,CAAC,CAAC,EAAE,gBAAgB,EAAE,iLAAiL,CAAC;aAC7M,CAAC;QACJ,KAAK,SAAS;YACZ,OAAO;gBACL,IAAI,CAAC,CAAC,EAAE,wBAAwB,EAAE,sDAAsD,CAAC;gBACzF,IAAI,CAAC,CAAC,EAAE,eAAe,EAAE,4CAA4C,CAAC;gBACtE,IAAI,CAAC,CAAC,EAAE,mBAAmB,EAAE,6DAA6D,CAAC;gBAC3F,IAAI,CAAC,CAAC,EAAE,cAAc,EAAE,qEAAqE,CAAC;aAC/F,CAAC;QACJ,KAAK,cAAc;YACjB,OAAO;gBACL,IAAI,CAAC,CAAC,EAAE,qBAAqB,EAAE,sFAAsF,CAAC;gBACtH,IAAI,CAAC,CAAC,EAAE,qBAAqB,EAAE,mEAAmE,CAAC;gBACnG,IAAI,CAAC,CAAC,EAAE,qBAAqB,EAAE,gGAAgG,CAAC;gBAChI,IAAI,CAAC,CAAC,EAAE,kDAAkD,EAAE,oPAAoP,CAAC;gBACjT,IAAI,CAAC,CAAC,EAAE,oCAAoC,EAAE,wDAAwD,CAAC;aACxG,CAAC;QACJ,KAAK,OAAO;YACV,OAAO;gBACL,IAAI,CAAC,CAAC,EAAE,wBAAwB,EAAE,yEAAyE,CAAC;gBAC5G,IAAI,CAAC,CAAC,EAAE,qBAAqB,EAAE,yMAAyM,EAAE;oBACxO,QAAQ,EAAE,2HAA2H;iBACtI,CAAC;gBACF,IAAI,CAAC,CAAC,EAAE,+BAA+B,EAAE,oHAAoH,CAAC;gBAC9J,IAAI,CAAC,CAAC,EAAE,sBAAsB,EAAE,kUAAkU,EAAE;oBAClW,QAAQ,EAAE,0OAA0O;iBACrP,CAAC;gBACF,IAAI,CAAC,CAAC,EAAE,oBAAoB,EAAE,qOAAqO,CAAC;aACrQ,CAAC;QACJ,KAAK,iBAAiB;YACpB,OAAO;gBACL,IAAI,CAAC,CAAC,EAAE,qBAAqB,EAAE,qFAAqF,CAAC;gBACrH,IAAI,CAAC,CAAC,EAAE,qBAAqB,EAAE,uEAAuE,CAAC;gBACvG,IAAI,CAAC,CAAC,EAAE,8BAA8B,EAAE,8DAA8D,CAAC;gBACvG,IAAI,CAAC,CAAC,EAAE,wEAAwE,EAAE,kFAAkF,CAAC;gBACrK,IAAI,CAAC,CAAC,EAAE,2DAA2D,EAAE,8CAA8C,CAAC;aACrH,CAAC;QACJ,KAAK,iBAAiB;YACpB,OAAO;gBACL,IAAI,CAAC,CAAC,EAAE,eAAe,EAAE,8EAA8E,CAAC;gBACxG,IAAI,CAAC,CAAC,EAAE,aAAa,EAAE,8CAA8C,CAAC;gBACtE,IAAI,CAAC,CAAC,EAAE,kDAAkD,EAAE,kFAAkF,CAAC;gBAC/I,IAAI,CAAC,CAAC,EAAE,aAAa,EAAE,qDAAqD,CAAC;aAC9E,CAAC;QACJ,KAAK,SAAS;YACZ,OAAO;gBACL,IAAI,CAAC,CAAC,EAAE,YAAY,EAAE,mCAAmC,CAAC;gBAC1D,IAAI,CAAC,CAAC,EAAE,+BAA+B,EAAE,0CAA0C,CAAC;gBACpF,IAAI,CAAC,CAAC,EAAE,iBAAiB,EAAE,kEAAkE,CAAC;gBAC9F,IAAI,CAAC,CAAC,EAAE,qBAAqB,EAAE,qEAAqE,CAAC;aACtG,CAAC;QACJ,KAAK,OAAO;YACV,OAAO;gBACL,IAAI,CAAC,CAAC,EAAE,0BAA0B,EAAE,oDAAoD,CAAC;gBACzF,IAAI,CAAC,CAAC,EAAE,qDAAqD,EAAE,uDAAuD,CAAC;gBACvH,IAAI,CAAC,CAAC,EAAE,2BAA2B,EAAE,+HAA+H,CAAC;gBACrK,IAAI,CAAC,CAAC,EAAE,wDAAwD,EAAE,iCAAiC,CAAC;aACrG,CAAC;QACJ,KAAK,YAAY;YACf,OAAO;gBACL,IAAI,CAAC,CAAC,EAAE,aAAa,EAAE,0CAA0C,CAAC;gBAClE,IAAI,CAAC,CAAC,EAAE,UAAU,EAAE,8DAA8D,CAAC;aACpF,CAAC;QACJ,KAAK,cAAc;YACjB,OAAO;gBACL,IAAI,CAAC,CAAC,EAAE,wBAAwB,EAAE,uCAAuC,CAAC;gBAC1E,IAAI,CAAC,CAAC,EAAE,kBAAkB,EAAE,oCAAoC,CAAC;gBACjE,IAAI,CAAC,CAAC,EAAE,wBAAwB,EAAE,2DAA2D,CAAC;aAC/F,CAAC;QACJ;YACE,OAAO,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,IAAI,EAAE,4BAA4B,CAAC,CAAC,CAAC;IACzG,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAY;IAC1C,IAAI,IAAI,KAAK,2BAA2B;QAAE,OAAO,EAAE,CAAC;IACpD,OAAO,IAAI;SACR,KAAK,CAAC,oBAAoB,CAAC;SAC3B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;SAC9C,MAAM,CAAC,OAAO,CAAC,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,OAAwB;IACxD,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,KAAK,OAAO,CAAC,CAAC;IACrE,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,CAAC;IACzB,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC;YACjB,GAAG,QAAQ,CAAC,UAAU;YACtB,GAAG,QAAQ,CAAC,YAAY;YACxB,GAAG,QAAQ,CAAC,cAAc;YAC1B,GAAG,QAAQ,CAAC,UAAU;YACtB,GAAG,QAAQ,CAAC,WAAW;YACvB,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChF,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC;YAC7D,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAChF,CAAC,CAAC,CAAC;AACN,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,QAAgB;IACrD,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,CAAC;AACpG,CAAC;AAED,SAAS,gBAAgB,CAAC,QAAsB;IAC9C,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5G,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC;YACjB,GAAG,QAAQ,CAAC,YAAY;YACxB,GAAG,QAAQ,CAAC,cAAc;YAC1B,GAAG,QAAQ,CAAC,UAAU;YACtB,GAAG,QAAQ,CAAC,WAAW;SACxB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,gBAAgB,CAAC,QAAsB;IAC9C,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,cAAc,EAAE,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAC7M,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,UAAU,EAAE,GAAG,QAAQ,CAAC,WAAW,EAAE,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;SAC7F,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,aAAa,CAAC,QAAsB;IAC3C,OAAO,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,IAAI,EAAE,mEAAmE,CAAC,CAAC,CAAC;AAC/I,CAAC;AAED,SAAS,YAAY,CAAC,QAAsB;IAC1C,OAAO;QACL,GAAG,eAAe,CAAC,QAAQ,CAAC;QAC5B,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;QAC3C,WAAW,EAAE,cAAc,CAAC,QAAQ,CAAC;QACrC,aAAa,EAAE,gBAAgB,CAAC,QAAQ,CAAC;QACzC,aAAa,EAAE,gBAAgB,CAAC,QAAQ,CAAC;QACzC,UAAU,EAAE,aAAa,CAAC,QAAQ,CAAC;QACnC,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;QAC7C,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,cAAc,EAAE;YACd,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,cAAc,EAAE,QAAQ,CAAC,cAAc;YACvC,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,WAAW,EAAE,QAAQ,CAAC,WAAW;SAClC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,QAAsB;IAC1C,OAAO;QACL,GAAG,YAAY,CAAC,QAAQ,CAAC;QACzB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;KAC5B,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAClD,CAAC;AAED,SAAS,aAAa,CAAC,QAAsB,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAsD;IAC1H,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IAC/B,IAAI,OAAO,IAAI,QAAQ,CAAC,GAAG,KAAK,OAAO;QAAE,KAAK,IAAI,EAAE,CAAC;IACrD,IAAI,OAAO,IAAI,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,KAAK,IAAI,CAAC,CAAC;IAC1D,IAAI,IAAI,EAAE,CAAC;QACT,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;YAC9C,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAAE,KAAK,IAAI,CAAC,CAAC;QACzC,CAAC;QACD,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;YAC5C,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC/E,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAAE,KAAK,IAAI,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IACD,IAAI,IAAI,KAAK,OAAO,IAAI,QAAQ,CAAC,GAAG,KAAK,YAAY;QAAE,KAAK,IAAI,CAAC,CAAC;IAClE,MAAM,WAAW,GAAG,2GAA2G,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3I,IAAI,WAAW,IAAI,QAAQ,CAAC,GAAG,KAAK,OAAO;QAAE,KAAK,IAAI,EAAE,CAAC;IACzD,IAAI,WAAW,IAAI,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,KAAK,IAAI,CAAC,CAAC;IACvF,IAAI,IAAI,KAAK,OAAO,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM;QAAE,KAAK,IAAI,CAAC,CAAC;IAC/D,IAAI,IAAI,KAAK,aAAa,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAAE,KAAK,IAAI,CAAC,CAAC;IACtH,IAAI,QAAQ,CAAC,GAAG,KAAK,gBAAgB,IAAI,oCAAoC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,6CAA6C,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,KAAK,IAAI,EAAE,CAAC;IAClK,IAAI,QAAQ,CAAC,GAAG,KAAK,gBAAgB,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,6CAA6C,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,KAAK,IAAI,CAAC,CAAC;IACxI,IAAI,QAAQ,CAAC,GAAG,KAAK,gBAAgB,IAAI,0CAA0C,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,mEAAmE,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,KAAK,IAAI,EAAE,CAAC;IAC9L,IAAI,QAAQ,CAAC,GAAG,KAAK,MAAM,IAAI,oCAAoC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,6CAA6C,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,KAAK,IAAI,CAAC,CAAC;IACvJ,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,OAAO,cAAc,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,eAAe,CAAC,MAAc;IACrC,OAAQ,WAAiC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAwB,CAAC,CAAC,CAAC,SAAS,CAAC;AACpG,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC;IAC3C,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACvF,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC;IAC5E,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IAC7F,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,mBAAmB,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,aAAa,CAAC;IACzG,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,EACrC,MAAM,GAAG,EAAE,EACX,OAAO,EACP,IAAI,GAAG,SAAS,EAChB,MAAM,GAAG,SAAS,EAClB,KAAK,GAAG,CAAC,MACe,EAAE,EAAE,UAA2B,KAAK,EAAE,gBAAgB,GAAG,KAAK;IACtF,MAAM,iBAAiB,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACnE,MAAM,gBAAgB,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IACjD,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,iBAAiB,GAAG,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,4BAA4B,CAAC,OAAO,CAAC,CAAC;IACxG,IAAI,iBAAiB,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,iBAAoC,CAAC,EAAE,CAAC;QAC3F,OAAO;YACL,MAAM,EAAE,6BAA6B;YACrC,OAAO;YACP,MAAM,EAAE,MAAM,IAAI,IAAI;YACtB,gBAAgB,EAAE,OAAO,IAAI,IAAI;YACjC,IAAI,EAAE,cAAc;YACpB,MAAM,EAAE,gBAAgB;YACxB,oBAAoB,EAAE,CAAC;YACvB,SAAS,EAAE,EAAE;YACb,QAAQ,EAAE,iBAAiB;YAC3B,QAAQ,EAAE;gBACR,OAAO,OAAO,gCAAgC,iBAAiB,gFAAgF;aAChJ;SACF,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,gBAAgB,KAAK,MAAM;QAC3C,CAAC,CAAC,YAAY;QACd,CAAC,CAAC,gBAAgB,KAAK,MAAM;YAC3B,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,eAAe,CAAC;IACtB,MAAM,kBAAkB,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IACzG,MAAM,MAAM,GAAG,kBAAkB;SAC9B,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC,CAAC;SAC/H,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,iBAAiB,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,KAAK,iBAAiB,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;SACjG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IACrF,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;SACvG,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3D,OAAO;QACL,MAAM,EAAE,6BAA6B;QACrC,OAAO;QACP,MAAM,EAAE,MAAM,IAAI,IAAI;QACtB,gBAAgB,EAAE,OAAO,IAAI,IAAI;QACjC,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,gBAAgB;QACxB,oBAAoB,EAAE,MAAM,CAAC,MAAM;QACnC,SAAS,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACjC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,GAAG,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;SAC5B,CAAC,CAAC;QACH,aAAa,EAAE,gBAAgB,IAAI,QAAQ,CAAC,CAAC,CAAC;YAC5C,CAAC,CAAC;gBACE,IAAI,EAAE,wBAAwB;gBAC9B,KAAK,EAAE,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE;aAC9D;YACH,CAAC,CAAC,SAAS;QACb,QAAQ,EAAE,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS;QACxE,QAAQ,EAAE;YACR,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,8KAA8K,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7M,gJAAgJ;YAChJ,6GAA6G;YAC7G,oIAAoI;YACpI,oJAAoJ;SACrJ;KACF,CAAC;AACJ,CAAC"}
|