@agentuity/runtime 2.0.11 → 3.0.0-alpha.1
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/index.d.ts +37 -65
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +59 -61
- package/dist/index.js.map +1 -1
- package/package.json +9 -38
- package/src/index.ts +58 -259
- package/AGENTS.md +0 -116
- package/dist/_config.d.ts +0 -100
- package/dist/_config.d.ts.map +0 -1
- package/dist/_config.js +0 -147
- package/dist/_config.js.map +0 -1
- package/dist/_context.d.ts +0 -80
- package/dist/_context.d.ts.map +0 -1
- package/dist/_context.js +0 -160
- package/dist/_context.js.map +0 -1
- package/dist/_events.d.ts +0 -64
- package/dist/_events.d.ts.map +0 -1
- package/dist/_events.js +0 -92
- package/dist/_events.js.map +0 -1
- package/dist/_globals.d.ts +0 -58
- package/dist/_globals.d.ts.map +0 -1
- package/dist/_globals.js +0 -71
- package/dist/_globals.js.map +0 -1
- package/dist/_idle.d.ts +0 -7
- package/dist/_idle.d.ts.map +0 -1
- package/dist/_idle.js +0 -10
- package/dist/_idle.js.map +0 -1
- package/dist/_metadata.d.ts +0 -117
- package/dist/_metadata.d.ts.map +0 -1
- package/dist/_metadata.js +0 -268
- package/dist/_metadata.js.map +0 -1
- package/dist/_process-protection.d.ts +0 -27
- package/dist/_process-protection.d.ts.map +0 -1
- package/dist/_process-protection.js +0 -56
- package/dist/_process-protection.js.map +0 -1
- package/dist/_server.d.ts +0 -50
- package/dist/_server.d.ts.map +0 -1
- package/dist/_server.js +0 -89
- package/dist/_server.js.map +0 -1
- package/dist/_services.d.ts +0 -25
- package/dist/_services.d.ts.map +0 -1
- package/dist/_services.js +0 -286
- package/dist/_services.js.map +0 -1
- package/dist/_standalone.d.ts +0 -212
- package/dist/_standalone.d.ts.map +0 -1
- package/dist/_standalone.js +0 -556
- package/dist/_standalone.js.map +0 -1
- package/dist/_tokens.d.ts +0 -12
- package/dist/_tokens.d.ts.map +0 -1
- package/dist/_tokens.js +0 -97
- package/dist/_tokens.js.map +0 -1
- package/dist/_util.d.ts +0 -16
- package/dist/_util.d.ts.map +0 -1
- package/dist/_util.js +0 -54
- package/dist/_util.js.map +0 -1
- package/dist/_validation.d.ts +0 -89
- package/dist/_validation.d.ts.map +0 -1
- package/dist/_validation.js +0 -29
- package/dist/_validation.js.map +0 -1
- package/dist/_waituntil.d.ts +0 -32
- package/dist/_waituntil.d.ts.map +0 -1
- package/dist/_waituntil.js +0 -156
- package/dist/_waituntil.js.map +0 -1
- package/dist/agent.d.ts +0 -1262
- package/dist/agent.d.ts.map +0 -1
- package/dist/agent.js +0 -981
- package/dist/agent.js.map +0 -1
- package/dist/app.d.ts +0 -514
- package/dist/app.d.ts.map +0 -1
- package/dist/app.js +0 -228
- package/dist/app.js.map +0 -1
- package/dist/bootstrap.d.ts +0 -44
- package/dist/bootstrap.d.ts.map +0 -1
- package/dist/bootstrap.js +0 -259
- package/dist/bootstrap.js.map +0 -1
- package/dist/bun-s3-patch.d.ts +0 -37
- package/dist/bun-s3-patch.d.ts.map +0 -1
- package/dist/bun-s3-patch.js +0 -142
- package/dist/bun-s3-patch.js.map +0 -1
- package/dist/cors.d.ts +0 -42
- package/dist/cors.d.ts.map +0 -1
- package/dist/cors.js +0 -117
- package/dist/cors.js.map +0 -1
- package/dist/dev-patches/aisdk.d.ts +0 -17
- package/dist/dev-patches/aisdk.d.ts.map +0 -1
- package/dist/dev-patches/aisdk.js +0 -160
- package/dist/dev-patches/aisdk.js.map +0 -1
- package/dist/dev-patches/gateway.d.ts +0 -16
- package/dist/dev-patches/gateway.d.ts.map +0 -1
- package/dist/dev-patches/gateway.js +0 -54
- package/dist/dev-patches/gateway.js.map +0 -1
- package/dist/dev-patches/index.d.ts +0 -21
- package/dist/dev-patches/index.d.ts.map +0 -1
- package/dist/dev-patches/index.js +0 -33
- package/dist/dev-patches/index.js.map +0 -1
- package/dist/dev-patches/otel-llm.d.ts +0 -12
- package/dist/dev-patches/otel-llm.d.ts.map +0 -1
- package/dist/dev-patches/otel-llm.js +0 -352
- package/dist/dev-patches/otel-llm.js.map +0 -1
- package/dist/devmode.d.ts +0 -3
- package/dist/devmode.d.ts.map +0 -1
- package/dist/devmode.js +0 -167
- package/dist/devmode.js.map +0 -1
- package/dist/eval.d.ts +0 -91
- package/dist/eval.d.ts.map +0 -1
- package/dist/eval.js +0 -16
- package/dist/eval.js.map +0 -1
- package/dist/handlers/_route-meta.d.ts +0 -22
- package/dist/handlers/_route-meta.d.ts.map +0 -1
- package/dist/handlers/_route-meta.js +0 -25
- package/dist/handlers/_route-meta.js.map +0 -1
- package/dist/handlers/cron.d.ts +0 -73
- package/dist/handlers/cron.d.ts.map +0 -1
- package/dist/handlers/cron.js +0 -43
- package/dist/handlers/cron.js.map +0 -1
- package/dist/handlers/index.d.ts +0 -6
- package/dist/handlers/index.d.ts.map +0 -1
- package/dist/handlers/index.js +0 -6
- package/dist/handlers/index.js.map +0 -1
- package/dist/handlers/sse.d.ts +0 -163
- package/dist/handlers/sse.d.ts.map +0 -1
- package/dist/handlers/sse.js +0 -175
- package/dist/handlers/sse.js.map +0 -1
- package/dist/handlers/stream.d.ts +0 -52
- package/dist/handlers/stream.d.ts.map +0 -1
- package/dist/handlers/stream.js +0 -108
- package/dist/handlers/stream.js.map +0 -1
- package/dist/handlers/webrtc.d.ts +0 -49
- package/dist/handlers/webrtc.d.ts.map +0 -1
- package/dist/handlers/webrtc.js +0 -109
- package/dist/handlers/webrtc.js.map +0 -1
- package/dist/handlers/websocket.d.ts +0 -88
- package/dist/handlers/websocket.d.ts.map +0 -1
- package/dist/handlers/websocket.js +0 -161
- package/dist/handlers/websocket.js.map +0 -1
- package/dist/logger/console.d.ts +0 -70
- package/dist/logger/console.d.ts.map +0 -1
- package/dist/logger/console.js +0 -278
- package/dist/logger/console.js.map +0 -1
- package/dist/logger/index.d.ts +0 -3
- package/dist/logger/index.d.ts.map +0 -1
- package/dist/logger/index.js +0 -3
- package/dist/logger/index.js.map +0 -1
- package/dist/logger/internal.d.ts +0 -79
- package/dist/logger/internal.d.ts.map +0 -1
- package/dist/logger/internal.js +0 -133
- package/dist/logger/internal.js.map +0 -1
- package/dist/logger/logger.d.ts +0 -41
- package/dist/logger/logger.d.ts.map +0 -1
- package/dist/logger/logger.js +0 -2
- package/dist/logger/logger.js.map +0 -1
- package/dist/logger/user.d.ts +0 -8
- package/dist/logger/user.d.ts.map +0 -1
- package/dist/logger/user.js +0 -7
- package/dist/logger/user.js.map +0 -1
- package/dist/logger/util.d.ts +0 -11
- package/dist/logger/util.d.ts.map +0 -1
- package/dist/logger/util.js +0 -77
- package/dist/logger/util.js.map +0 -1
- package/dist/middleware.d.ts +0 -105
- package/dist/middleware.d.ts.map +0 -1
- package/dist/middleware.js +0 -763
- package/dist/middleware.js.map +0 -1
- package/dist/otel/config.d.ts +0 -19
- package/dist/otel/config.d.ts.map +0 -1
- package/dist/otel/config.js +0 -26
- package/dist/otel/config.js.map +0 -1
- package/dist/otel/console.d.ts +0 -33
- package/dist/otel/console.d.ts.map +0 -1
- package/dist/otel/console.js +0 -86
- package/dist/otel/console.js.map +0 -1
- package/dist/otel/exporters/index.d.ts +0 -4
- package/dist/otel/exporters/index.d.ts.map +0 -1
- package/dist/otel/exporters/index.js +0 -4
- package/dist/otel/exporters/index.js.map +0 -1
- package/dist/otel/exporters/jsonl-log-exporter.d.ts +0 -36
- package/dist/otel/exporters/jsonl-log-exporter.d.ts.map +0 -1
- package/dist/otel/exporters/jsonl-log-exporter.js +0 -103
- package/dist/otel/exporters/jsonl-log-exporter.js.map +0 -1
- package/dist/otel/exporters/jsonl-metric-exporter.d.ts +0 -40
- package/dist/otel/exporters/jsonl-metric-exporter.d.ts.map +0 -1
- package/dist/otel/exporters/jsonl-metric-exporter.js +0 -104
- package/dist/otel/exporters/jsonl-metric-exporter.js.map +0 -1
- package/dist/otel/exporters/jsonl-trace-exporter.d.ts +0 -36
- package/dist/otel/exporters/jsonl-trace-exporter.d.ts.map +0 -1
- package/dist/otel/exporters/jsonl-trace-exporter.js +0 -111
- package/dist/otel/exporters/jsonl-trace-exporter.js.map +0 -1
- package/dist/otel/fetch.d.ts +0 -12
- package/dist/otel/fetch.d.ts.map +0 -1
- package/dist/otel/fetch.js +0 -82
- package/dist/otel/fetch.js.map +0 -1
- package/dist/otel/http.d.ts +0 -16
- package/dist/otel/http.d.ts.map +0 -1
- package/dist/otel/http.js +0 -44
- package/dist/otel/http.js.map +0 -1
- package/dist/otel/logger.d.ts +0 -37
- package/dist/otel/logger.d.ts.map +0 -1
- package/dist/otel/logger.js +0 -265
- package/dist/otel/logger.js.map +0 -1
- package/dist/otel/otel.d.ts +0 -68
- package/dist/otel/otel.d.ts.map +0 -1
- package/dist/otel/otel.js +0 -245
- package/dist/otel/otel.js.map +0 -1
- package/dist/otel/tracestate.d.ts +0 -44
- package/dist/otel/tracestate.d.ts.map +0 -1
- package/dist/otel/tracestate.js +0 -84
- package/dist/otel/tracestate.js.map +0 -1
- package/dist/router.d.ts +0 -66
- package/dist/router.d.ts.map +0 -1
- package/dist/router.js +0 -44
- package/dist/router.js.map +0 -1
- package/dist/services/evalrun/composite.d.ts +0 -21
- package/dist/services/evalrun/composite.d.ts.map +0 -1
- package/dist/services/evalrun/composite.js +0 -26
- package/dist/services/evalrun/composite.js.map +0 -1
- package/dist/services/evalrun/http.d.ts +0 -24
- package/dist/services/evalrun/http.d.ts.map +0 -1
- package/dist/services/evalrun/http.js +0 -115
- package/dist/services/evalrun/http.js.map +0 -1
- package/dist/services/evalrun/index.d.ts +0 -5
- package/dist/services/evalrun/index.d.ts.map +0 -1
- package/dist/services/evalrun/index.js +0 -5
- package/dist/services/evalrun/index.js.map +0 -1
- package/dist/services/evalrun/json.d.ts +0 -21
- package/dist/services/evalrun/json.d.ts.map +0 -1
- package/dist/services/evalrun/json.js +0 -38
- package/dist/services/evalrun/json.js.map +0 -1
- package/dist/services/evalrun/local.d.ts +0 -19
- package/dist/services/evalrun/local.d.ts.map +0 -1
- package/dist/services/evalrun/local.js +0 -22
- package/dist/services/evalrun/local.js.map +0 -1
- package/dist/services/local/_db.d.ts +0 -4
- package/dist/services/local/_db.d.ts.map +0 -1
- package/dist/services/local/_db.js +0 -281
- package/dist/services/local/_db.js.map +0 -1
- package/dist/services/local/_router.d.ts +0 -3
- package/dist/services/local/_router.d.ts.map +0 -1
- package/dist/services/local/_router.js +0 -28
- package/dist/services/local/_router.js.map +0 -1
- package/dist/services/local/_util.d.ts +0 -18
- package/dist/services/local/_util.d.ts.map +0 -1
- package/dist/services/local/_util.js +0 -44
- package/dist/services/local/_util.js.map +0 -1
- package/dist/services/local/email.d.ts +0 -24
- package/dist/services/local/email.d.ts.map +0 -1
- package/dist/services/local/email.js +0 -58
- package/dist/services/local/email.js.map +0 -1
- package/dist/services/local/index.d.ts +0 -10
- package/dist/services/local/index.d.ts.map +0 -1
- package/dist/services/local/index.js +0 -10
- package/dist/services/local/index.js.map +0 -1
- package/dist/services/local/keyvalue.d.ts +0 -17
- package/dist/services/local/keyvalue.d.ts.map +0 -1
- package/dist/services/local/keyvalue.js +0 -133
- package/dist/services/local/keyvalue.js.map +0 -1
- package/dist/services/local/queue.d.ts +0 -10
- package/dist/services/local/queue.d.ts.map +0 -1
- package/dist/services/local/queue.js +0 -96
- package/dist/services/local/queue.js.map +0 -1
- package/dist/services/local/stream.d.ts +0 -12
- package/dist/services/local/stream.d.ts.map +0 -1
- package/dist/services/local/stream.js +0 -266
- package/dist/services/local/stream.js.map +0 -1
- package/dist/services/local/task.d.ts +0 -55
- package/dist/services/local/task.d.ts.map +0 -1
- package/dist/services/local/task.js +0 -1248
- package/dist/services/local/task.js.map +0 -1
- package/dist/services/local/vector.d.ts +0 -17
- package/dist/services/local/vector.d.ts.map +0 -1
- package/dist/services/local/vector.js +0 -303
- package/dist/services/local/vector.js.map +0 -1
- package/dist/services/sandbox/http.d.ts +0 -23
- package/dist/services/sandbox/http.d.ts.map +0 -1
- package/dist/services/sandbox/http.js +0 -327
- package/dist/services/sandbox/http.js.map +0 -1
- package/dist/services/sandbox/index.d.ts +0 -2
- package/dist/services/sandbox/index.d.ts.map +0 -1
- package/dist/services/sandbox/index.js +0 -2
- package/dist/services/sandbox/index.js.map +0 -1
- package/dist/services/session/composite.d.ts +0 -21
- package/dist/services/session/composite.d.ts.map +0 -1
- package/dist/services/session/composite.js +0 -26
- package/dist/services/session/composite.js.map +0 -1
- package/dist/services/session/http.d.ts +0 -34
- package/dist/services/session/http.d.ts.map +0 -1
- package/dist/services/session/http.js +0 -124
- package/dist/services/session/http.js.map +0 -1
- package/dist/services/session/index.d.ts +0 -5
- package/dist/services/session/index.d.ts.map +0 -1
- package/dist/services/session/index.js +0 -5
- package/dist/services/session/index.js.map +0 -1
- package/dist/services/session/json.d.ts +0 -22
- package/dist/services/session/json.d.ts.map +0 -1
- package/dist/services/session/json.js +0 -35
- package/dist/services/session/json.js.map +0 -1
- package/dist/services/session/local.d.ts +0 -19
- package/dist/services/session/local.d.ts.map +0 -1
- package/dist/services/session/local.js +0 -23
- package/dist/services/session/local.js.map +0 -1
- package/dist/services/thread/local.d.ts +0 -20
- package/dist/services/thread/local.d.ts.map +0 -1
- package/dist/services/thread/local.js +0 -158
- package/dist/services/thread/local.js.map +0 -1
- package/dist/session.d.ts +0 -734
- package/dist/session.d.ts.map +0 -1
- package/dist/session.js +0 -1140
- package/dist/session.js.map +0 -1
- package/dist/signature.d.ts +0 -22
- package/dist/signature.d.ts.map +0 -1
- package/dist/signature.js +0 -63
- package/dist/signature.js.map +0 -1
- package/dist/validator.d.ts +0 -142
- package/dist/validator.d.ts.map +0 -1
- package/dist/validator.js +0 -149
- package/dist/validator.js.map +0 -1
- package/dist/version-check.d.ts +0 -20
- package/dist/version-check.d.ts.map +0 -1
- package/dist/version-check.js +0 -157
- package/dist/version-check.js.map +0 -1
- package/dist/web.d.ts +0 -8
- package/dist/web.d.ts.map +0 -1
- package/dist/web.js +0 -67
- package/dist/web.js.map +0 -1
- package/dist/webrtc-signaling.d.ts +0 -80
- package/dist/webrtc-signaling.d.ts.map +0 -1
- package/dist/webrtc-signaling.js +0 -237
- package/dist/webrtc-signaling.js.map +0 -1
- package/dist/workbench.d.ts +0 -17
- package/dist/workbench.d.ts.map +0 -1
- package/dist/workbench.js +0 -605
- package/dist/workbench.js.map +0 -1
- package/src/_config.ts +0 -163
- package/src/_context.ts +0 -240
- package/src/_events.ts +0 -142
- package/src/_globals.ts +0 -92
- package/src/_idle.ts +0 -10
- package/src/_metadata.ts +0 -407
- package/src/_process-protection.ts +0 -71
- package/src/_server.ts +0 -109
- package/src/_services.ts +0 -379
- package/src/_standalone.ts +0 -710
- package/src/_tokens.ts +0 -114
- package/src/_util.ts +0 -62
- package/src/_validation.ts +0 -119
- package/src/_waituntil.ts +0 -188
- package/src/agent.ts +0 -2739
- package/src/app.ts +0 -769
- package/src/bootstrap.ts +0 -321
- package/src/bun-s3-patch.ts +0 -224
- package/src/cors.ts +0 -137
- package/src/dev-patches/aisdk.ts +0 -169
- package/src/dev-patches/gateway.ts +0 -68
- package/src/dev-patches/index.ts +0 -37
- package/src/dev-patches/otel-llm.ts +0 -405
- package/src/devmode.ts +0 -171
- package/src/eval.ts +0 -109
- package/src/globals.d.ts +0 -28
- package/src/handlers/_route-meta.ts +0 -33
- package/src/handlers/cron.ts +0 -141
- package/src/handlers/index.ts +0 -18
- package/src/handlers/sse.ts +0 -358
- package/src/handlers/stream.ts +0 -121
- package/src/handlers/webrtc.ts +0 -125
- package/src/handlers/websocket.ts +0 -203
- package/src/logger/console.ts +0 -323
- package/src/logger/index.ts +0 -2
- package/src/logger/internal.ts +0 -165
- package/src/logger/logger.ts +0 -44
- package/src/logger/user.ts +0 -15
- package/src/logger/util.ts +0 -80
- package/src/middleware.ts +0 -1095
- package/src/otel/config.ts +0 -47
- package/src/otel/console.ts +0 -91
- package/src/otel/exporters/README.md +0 -217
- package/src/otel/exporters/index.ts +0 -3
- package/src/otel/exporters/jsonl-log-exporter.ts +0 -113
- package/src/otel/exporters/jsonl-metric-exporter.ts +0 -120
- package/src/otel/exporters/jsonl-trace-exporter.ts +0 -121
- package/src/otel/fetch.ts +0 -105
- package/src/otel/http.ts +0 -53
- package/src/otel/logger.ts +0 -293
- package/src/otel/otel.ts +0 -354
- package/src/otel/tracestate.ts +0 -108
- package/src/router.ts +0 -75
- package/src/services/evalrun/composite.ts +0 -34
- package/src/services/evalrun/http.ts +0 -167
- package/src/services/evalrun/index.ts +0 -4
- package/src/services/evalrun/json.ts +0 -46
- package/src/services/evalrun/local.ts +0 -28
- package/src/services/local/README.md +0 -1576
- package/src/services/local/_db.ts +0 -353
- package/src/services/local/_router.ts +0 -40
- package/src/services/local/_util.ts +0 -55
- package/src/services/local/email.ts +0 -91
- package/src/services/local/index.ts +0 -9
- package/src/services/local/keyvalue.ts +0 -174
- package/src/services/local/queue.ts +0 -145
- package/src/services/local/stream.ts +0 -358
- package/src/services/local/task.ts +0 -1711
- package/src/services/local/vector.ts +0 -438
- package/src/services/sandbox/http.ts +0 -522
- package/src/services/sandbox/index.ts +0 -1
- package/src/services/session/composite.ts +0 -33
- package/src/services/session/http.ts +0 -167
- package/src/services/session/index.ts +0 -4
- package/src/services/session/json.ts +0 -42
- package/src/services/session/local.ts +0 -33
- package/src/services/thread/local.ts +0 -199
- package/src/session.ts +0 -1960
- package/src/signature.ts +0 -82
- package/src/validator.ts +0 -283
- package/src/version-check.ts +0 -184
- package/src/web.ts +0 -76
- package/src/webrtc-signaling.ts +0 -288
- package/src/workbench.ts +0 -725
package/dist/session.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAY,SAAS,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAW9C;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,GAAuB;IACtD,IAAI,CAAC,GAAG,EAAE,CAAC;QACV,OAAO,EAAE,CAAC;IACX,CAAC;IAED,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,OAAO,IAAI,MAAM,IAAI,UAAU,IAAI,MAAM,CAAC,EAAE,CAAC;YACzF,OAAO;gBACN,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;gBACtE,QAAQ,EACP,MAAM,CAAC,QAAQ,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;aACrF,CAAC;QACH,CAAC;QACD,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC;IAC/B,CAAC;AACF,CAAC;AAwjBD,oEAAoE;AACpE,MAAM,oBAAoB,GAAG,IAAI,OAAO,EAGrC,CAAC;AACJ,MAAM,qBAAqB,GAAG,IAAI,OAAO,EAGtC,CAAC;AAEJ,wCAAwC;AACxC,KAAK,UAAU,eAAe,CAAC,MAAc,EAAE,SAA0B;IACxE,MAAM,SAAS,GAAG,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACnD,IAAI,CAAC,SAAS;QAAE,OAAO;IAEvB,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC3C,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO;IAE/C,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QAClC,IAAI,CAAC;YACJ,MAAO,QAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,6EAA6E;YAC7E,QAAQ,CAAC,KAAK,CAAC,uCAAuC,SAAS,IAAI,EAAE,KAAK,CAAC,CAAC;QAC7E,CAAC;IACF,CAAC;AACF,CAAC;AAED,yCAAyC;AACzC,KAAK,UAAU,gBAAgB,CAAC,OAAgB,EAAE,SAA2B;IAC5E,MAAM,SAAS,GAAG,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACrD,IAAI,CAAC,SAAS;QAAE,OAAO;IAEvB,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC3C,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO;IAE/C,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QAClC,IAAI,CAAC;YACJ,MAAO,QAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC7C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,6EAA6E;YAC7E,QAAQ,CAAC,KAAK,CAAC,wCAAwC,SAAS,IAAI,EAAE,KAAK,CAAC,CAAC;QAC9E,CAAC;IACF,CAAC;AACF,CAAC;AAED,gCAAgC;AAChC,MAAM,UAAU,UAAU,CAAC,MAAe;IACzC,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IAC/B,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IAC5B,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC;AACtD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,QAAgB;IAC/C,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC;IACd,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,GAAG,EAAE,IAAI,QAAQ,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QAClD,OAAO,KAAK,CAAC;IACd,CAAC;IACD,MAAM,uBAAuB,GAAG,gBAAgB,CAAC;IACjD,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,OAAO,KAAK,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,QAAgB;IACvD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;IACrF,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CACd,uDAAuD,QAAQ,sEAAsE,CACrI,CAAC;IACH,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACd,uDAAuD,QAAQ,wEAAwE,CACvI,CAAC;IACH,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACd,uDAAuD,QAAQ,uEAAuE,CACtI,CAAC;IACH,CAAC;IACD,MAAM,uBAAuB,GAAG,gBAAgB,CAAC;IACjD,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,MAAM,IAAI,KAAK,CACd,uDAAuD,QAAQ,8GAA8G,CAC7K,CAAC;IACH,CAAC;AACF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAiB;IACnD,uDAAuD;IACvD,MAAM,cAAc,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAC3D,IAAI,cAAc,EAAE,CAAC;QACpB,OAAO,cAAc,KAAK,OAAO,CAAC;IACnC,CAAC;IAED,8CAA8C;IAC9C,IAAI,CAAC;QACJ,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;YACjB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACjC,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC;QAClC,CAAC;IACF,CAAC;IAAC,MAAM,CAAC;QACR,0BAA0B;IAC3B,CAAC;IAED,oDAAoD;IACpD,OAAO,KAAK,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,QAAgB,EAAE,MAAc;IAClE,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACtD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACxB,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAEhD,OAAO,GAAG,QAAQ,IAAI,eAAe,EAAE,CAAC;AACzC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACzC,WAAmB,EACnB,MAAc;IAEd,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,MAAM,CAAC,QAAQ,EAAE,iBAAiB,CAAC,GAAG,KAAK,CAAC;IAE5C,4BAA4B;IAC5B,IAAI,CAAC,QAAQ,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACrC,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,uDAAuD;IACvD,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChC,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,+CAA+C;IAC/C,MAAM,cAAc,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC5D,MAAM,iBAAiB,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAEvD,4BAA4B;IAC5B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,qDAAqD;IACrD,6DAA6D;IAC7D,IAAI,iBAAiB,CAAC,MAAM,KAAK,iBAAiB,CAAC,MAAM,EAAE,CAAC;QAC3D,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,IAAI,CAAC;QACJ,kDAAkD;QAClD,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;QAChE,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;QAEhE,IAAI,eAAe,CAAC,cAAc,EAAE,cAAc,CAAC,EAAE,CAAC;YACrD,OAAO,QAAQ,CAAC;QACjB,CAAC;IACF,CAAC;IAAC,MAAM,CAAC;QACR,+CAA+C;QAC/C,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,OAAO,SAAS,CAAC;AAClB,CAAC;AAED;;;;;GAKG;AACH,MAAM,OAAO,uBAAuB;IAC3B,SAAS;QAChB,OAAO,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,WAAW,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,SAAmB,EAAE,GAAiB;QACvD,IAAI,QAA4B,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAEhC,4BAA4B;QAC5B,MAAM,WAAW,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAClD,IAAI,WAAW,EAAE,CAAC;YACjB,MAAM,gBAAgB,GAAG,MAAM,oBAAoB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YACzE,IAAI,gBAAgB,EAAE,CAAC;gBACtB,QAAQ,GAAG,gBAAgB,CAAC;YAC7B,CAAC;QACF,CAAC;QAED,6BAA6B;QAC7B,IAAI,CAAC,QAAQ,EAAE,CAAC;YACf,MAAM,WAAW,GAAG,MAAM,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YAC/D,IAAI,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,eAAe,CAAC,WAAW,CAAC,EAAE,CAAC;gBACpF,QAAQ,GAAG,WAAW,CAAC;YACxB,CAAC;QACF,CAAC;QAED,QAAQ,GAAG,QAAQ,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;QAE1C,MAAM,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE;YACpD,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,kBAAkB,CAAC,GAAG,CAAC;YAC/B,QAAQ,EAAE,KAAK;YACf,IAAI,EAAE,GAAG;YACT,MAAM,EAAE,MAAM,EAAE,oBAAoB;SACpC,CAAC,CAAC;QAEH,gCAAgC;QAChC,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC1D,GAAG,CAAC,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;QACxC,OAAO,QAAQ,CAAC;IACjB,CAAC;CACD;AAMD,MAAM,OAAO,eAAe;IAC3B,OAAO,GAAoB,MAAM,CAAC;IAClC,MAAM,GAAyB,IAAI,GAAG,EAAE,CAAC;IACzC,kBAAkB,GAAqB,EAAE,CAAC;IAC1C,iBAAiB,CAAqB;IACtC,UAAU,CAAY;IACtB,eAAe,GAAyB,IAAI,CAAC;IAE7C,YAAY,SAAoB;QAC/B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC;IAClC,CAAC;IAED,IAAI,KAAK;QACR,IAAI,IAAI,CAAC,OAAO,KAAK,gBAAgB,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3C,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YACpE,OAAO,WAAW,KAAK,IAAI,CAAC,iBAAiB,CAAC;QAC/C,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,YAAY;QACzB,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC/B,OAAO;QACR,CAAC;QAED,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,MAAM,IAAI,CAAC,eAAe,CAAC;YAC3B,OAAO;QACR,CAAC;QAED,IAAI,CAAC,eAAe,GAAG,CAAC,KAAK,IAAI,EAAE;YAClC,IAAI,CAAC;gBACJ,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YACrB,CAAC;oBAAS,CAAC;gBACV,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC7B,CAAC;QACF,CAAC,CAAC,EAAE,CAAC;QAEL,MAAM,IAAI,CAAC,eAAe,CAAC;IAC5B,CAAC;IAEO,KAAK,CAAC,MAAM;QACnB,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAE1C,sCAAsC;QACtC,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAEzE,+BAA+B;QAC/B,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC1C,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;gBACf,KAAK,OAAO;oBACX,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;oBACpB,MAAM;gBACP,KAAK,KAAK;oBACT,IAAI,EAAE,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;wBAC1B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;oBACnC,CAAC;oBACD,MAAM;gBACP,KAAK,QAAQ;oBACZ,IAAI,EAAE,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;wBAC1B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;oBAC5B,CAAC;oBACD,MAAM;gBACP,KAAK,MAAM;oBACV,IAAI,EAAE,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;wBAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;wBACzC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;4BAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;4BACxB,yBAAyB;4BACzB,IAAI,EAAE,CAAC,UAAU,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,GAAG,EAAE,CAAC,UAAU,EAAE,CAAC;gCACpE,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;4BACrD,CAAC;wBACF,CAAC;6BAAM,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;4BACnC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;wBACrC,CAAC;wBACD,mFAAmF;oBACpF,CAAC;oBACD,MAAM;YACR,CAAC;QACF,CAAC;QAED,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,GAAG,CAAc,GAAW;QACjC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAkB,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,GAAG,CAAc,GAAW,EAAE,KAAQ;QAC3C,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC7B,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;YACxD,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;gBAC7B,IAAI,CAAC,OAAO,GAAG,gBAAgB,CAAC;YACjC,CAAC;QACF,CAAC;IACF,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,GAAW;QACpB,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAW;QACvB,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC;YACpD,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;gBAC7B,IAAI,CAAC,OAAO,GAAG,gBAAgB,CAAC;YACjC,CAAC;QACF,CAAC;IACF,CAAC;IAED,KAAK,CAAC,KAAK;QACV,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;aAAM,CAAC;YACP,iDAAiD;YACjD,IAAI,CAAC,kBAAkB,GAAG,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YAC5C,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;gBAC7B,IAAI,CAAC,OAAO,GAAG,gBAAgB,CAAC;YACjC,CAAC;QACF,CAAC;IACF,CAAC;IAED,KAAK,CAAC,OAAO;QACZ,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAkB,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,IAAI;QACT,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,MAAM;QACX,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAQ,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,IAAI;QACT,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,IAAI,CAAc,GAAW,EAAE,KAAQ,EAAE,UAAmB;QACjE,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC/B,mCAAmC;YACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACtC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7B,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACrB,yBAAyB;gBACzB,IAAI,UAAU,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;oBAC9D,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC;gBAClD,CAAC;YACF,CAAC;iBAAM,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACnC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,KAAK,CAAC,0CAA0C,GAAG,GAAG,CAAC,CAAC;YACnE,CAAC;QACF,CAAC;aAAM,CAAC;YACP,iCAAiC;YACjC,MAAM,EAAE,GAAmB,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;YACtD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC9B,EAAE,CAAC,UAAU,GAAG,UAAU,CAAC;YAC5B,CAAC;YACD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjC,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;gBAC7B,IAAI,CAAC,OAAO,GAAG,gBAAgB,CAAC;YACjC,CAAC;QACF,CAAC;IACF,CAAC;IAED;;;OAGG;IACH,SAAS;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,oBAAoB;QACnB,OAAO,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,kBAAkB;QACvB,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC1B,OAAO,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;CACD;AAED,MAAM,OAAO,aAAa;IAChB,EAAE,CAAS;IACX,KAAK,CAAkB;IAChC,SAAS,GAAmC,IAAI,CAAC;IACjD,cAAc,GAAG,KAAK,CAAC;IACvB,oBAAoB,GAAyB,IAAI,CAAC;IAC1C,QAAQ,CAAiB;IACjC,UAAU,CAAY;IACtB,iBAAiB,CAAsC;IAEvD,YACC,QAAwB,EACxB,EAAU,EACV,SAAoB,EACpB,eAAyC;QAEzC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,iBAAiB,GAAG,eAAe,CAAC;QACzC,IAAI,CAAC,KAAK,GAAG,IAAI,eAAe,CAAC,SAAS,CAAC,CAAC;IAC7C,CAAC;IAEO,KAAK,CAAC,oBAAoB;QACjC,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YAC7B,OAAO;QACR,CAAC;QAED,2DAA2D;QAC3D,IAAI,IAAI,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;YAC1C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC;YACxC,OAAO;QACR,CAAC;QAED,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC/B,MAAM,IAAI,CAAC,oBAAoB,CAAC;YAChC,OAAO;QACR,CAAC;QAED,IAAI,CAAC,oBAAoB,GAAG,CAAC,KAAK,IAAI,EAAE;YACvC,IAAI,CAAC;gBACJ,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YAC7B,CAAC;oBAAS,CAAC;gBACV,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;YAClC,CAAC;QACF,CAAC,CAAC,EAAE,CAAC;QAEL,MAAM,IAAI,CAAC,oBAAoB,CAAC;IACjC,CAAC;IAEO,KAAK,CAAC,cAAc;QAC3B,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC7C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,WAAW;QAChB,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAClC,OAAO,EAAE,GAAG,IAAI,CAAC,SAAU,EAAE,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,QAAiC;QAClD,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,gBAAgB,CAAC,SAA0B,EAAE,QAAkC;QAC9E,IAAI,SAAS,GAAG,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC3C,CAAC;QACD,IAAI,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACrC,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACzB,CAAC;IAED,mBAAmB,CAAC,SAA0B,EAAE,QAAkC;QACjF,MAAM,SAAS,GAAG,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,SAA0B;QACzC,MAAM,eAAe,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,OAAO;QACZ,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACV,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAC1C,mEAAmE;QACnE,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC;QAC5D,OAAO,SAAS,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;IAC1D,CAAC;IAED;;;OAGG;IACH,SAAS;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,cAAc,CAAC;IAChD,CAAC;IAED;;;OAGG;IACH,WAAW;QACV,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAE3C,IAAI,WAAW,KAAK,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACpD,OAAO,MAAM,CAAC;QACf,CAAC;QAED,IAAI,WAAW,KAAK,gBAAgB,EAAE,CAAC;YACtC,OAAO,OAAO,CAAC;QAChB,CAAC;QAED,IAAI,WAAW,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;YAC3E,OAAO,MAAM,CAAC;QACf,CAAC;QAED,kDAAkD;QAClD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,OAAO,OAAO,CAAC;QAChB,CAAC;QAED,OAAO,MAAM,CAAC;IACf,CAAC;IAED;;;OAGG;IACH,oBAAoB;QACnB,OAAO,IAAI,CAAC,KAAK,CAAC,oBAAoB,EAAE,CAAC;IAC1C,CAAC;IAED;;;OAGG;IACH,kBAAkB;QACjB,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC3C,OAAO,IAAI,CAAC,SAAS,CAAC;QACvB,CAAC;QACD,OAAO,SAAS,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,kBAAkB;QACvB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC;QACpD,iCAAiC;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC;QAC5D,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAC/C,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAEjD,IAAI,CAAC,QAAQ,IAAI,CAAC,WAAW,EAAE,CAAC;YAC/B,OAAO,EAAE,CAAC;QACX,CAAC;QAED,MAAM,IAAI,GAA4E,EAAE,CAAC;QAEzF,IAAI,QAAQ,EAAE,CAAC;YACd,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACpB,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACtB,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;CACD;AAED,MAAM,OAAO,cAAc;IACjB,EAAE,CAAS;IACX,MAAM,CAAS;IACf,KAAK,CAAuB;IACrC,QAAQ,CAA0B;IAElC,YAAY,MAAc,EAAE,EAAU,EAAE,QAAkC;QACzE,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,IAAI,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,IAAI,EAAE,CAAC;IAChC,CAAC;IAED,gBAAgB,CAAC,SAA2B,EAAE,QAAmC;QAChF,IAAI,SAAS,GAAG,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,qBAAqB,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACrC,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACzB,CAAC;IAED,mBAAmB,CAAC,SAA2B,EAAE,QAAmC;QACnF,MAAM,SAAS,GAAG,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,SAA2B;QAC1C,MAAM,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACH,iBAAiB;QAChB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO,SAAS,CAAC;QAClB,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YAEjC,oCAAoC;YACpC,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;YAC1D,IAAI,WAAW,GAAG,OAAO,EAAE,CAAC;gBAC3B,OAAO,CAAC,KAAK,CACZ,WAAW,IAAI,CAAC,EAAE,iCAAiC,WAAW,qCAAqC,CACnG,CAAC;gBACF,OAAO,SAAS,CAAC;YAClB,CAAC;YAED,OAAO,IAAI,CAAC;QACb,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,KAAK,CAAC,+BAA+B,IAAI,CAAC,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;YACxE,OAAO,SAAS,CAAC;QAClB,CAAC;IACF,CAAC;CACD;AA2BD,MAAM,OAAO,qBAAqB;IACzB,EAAE,GAAqB,IAAI,CAAC;IAC5B,aAAa,GAAG,KAAK,CAAC;IACtB,eAAe,GAAG,IAAI,GAAG,EAG9B,CAAC;IACI,iBAAiB,GAAG,CAAC,CAAC;IACtB,oBAAoB,CAAS;IAC7B,MAAM,CAAS;IACf,KAAK,CAAS;IACd,YAAY,GAAyB,IAAI,CAAC;IAC1C,cAAc,GAAyC,IAAI,CAAC;IAC5D,UAAU,GAAG,KAAK,CAAC;IACnB,qBAAqB,GAAwB,IAAI,CAAC;IAClD,oBAAoB,GAAkC,IAAI,CAAC;IAC3D,mBAAmB,CAAS;IAC5B,gBAAgB,CAAS;IACzB,oBAAoB,CAAS;IAC7B,mBAAmB,CAAS;IAEpC,YAAY,MAAc,EAAE,KAAa,EAAE,UAAwC,EAAE;QACpF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,IAAI,MAAM,CAAC;QACjE,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,MAAM,CAAC;QAC3D,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,IAAI,KAAK,CAAC;QAClE,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,IAAI,MAAM,CAAC;QACjE,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,IAAI,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,OAAO;QACZ,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,2EAA2E;YAC3E,IAAI,IAAI,CAAC,iBAAiB,KAAK,CAAC,EAAE,CAAC;gBAClC,IAAI,CAAC,qBAAqB,GAAG,OAAO,CAAC;gBACrC,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC;YACpC,CAAC;YAED,yBAAyB;YACzB,MAAM,iBAAiB,GAAG,UAAU,CAAC,GAAG,EAAE;gBACzC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACf,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,IAAI,MAAM,CAAC;gBACrD,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;gBAClC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;gBACjC,QAAQ,CAAC,IAAI,KAAK,CAAC,iCAAiC,IAAI,CAAC,mBAAmB,KAAK,CAAC,CAAC,CAAC;YACrF,CAAC,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;YAE7B,IAAI,CAAC;gBACJ,IAAI,CAAC,EAAE,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAEpC,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE;oBACrC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;oBACrC,0EAA0E;oBAC1E,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBAC/D,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAmB,EAAE,EAAE;oBAC3D,IAAI,CAAC;wBACJ,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBAEvC,uBAAuB;wBACvB,IAAI,SAAS,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;4BACjD,YAAY,CAAC,iBAAiB,CAAC,CAAC;4BAChC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gCACrB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;gCAC1B,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;gCAE3B,mEAAmE;gCACnE,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,IAAI,OAAO,CAAC;gCACxD,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;gCAClC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;gCACjC,SAAS,EAAE,CAAC;4BACb,CAAC;iCAAM,CAAC;gCACP,MAAM,GAAG,GAAG,IAAI,KAAK,CACpB,oCAAoC,OAAO,CAAC,KAAK,IAAI,eAAe,EAAE,CACtE,CAAC;gCACF,IAAI,CAAC,OAAO,EAAE,CAAC;gCACf,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,IAAI,MAAM,CAAC;gCACrD,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;gCAClC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;gCACjC,QAAQ,CAAC,GAAG,CAAC,CAAC;4BACf,CAAC;4BACD,OAAO;wBACR,CAAC;wBAED,yBAAyB;wBACzB,IAAI,IAAI,IAAI,OAAO,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;4BAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAE,CAAC;4BACtD,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;4BAExC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gCACrB,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;4BAC/B,CAAC;iCAAM,CAAC;gCACP,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,gBAAgB,CAAC,CAAC,CAAC;4BAC9D,CAAC;wBACF,CAAC;oBACF,CAAC;oBAAC,MAAM,CAAC;wBACR,sBAAsB;oBACvB,CAAC;gBACF,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,MAAa,EAAE,EAAE;oBACnD,YAAY,CAAC,iBAAiB,CAAC,CAAC;oBAChC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;wBACzB,yDAAyD;wBACzD,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;4BAC5E,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,IAAI,MAAM,CAAC;4BACrD,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;4BAClC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;4BACjC,QAAQ,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;wBACxC,CAAC;oBACF,CAAC;gBACF,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;oBACtC,YAAY,CAAC,iBAAiB,CAAC,CAAC;oBAChC,MAAM,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC;oBAC5C,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;oBAE3B,8BAA8B;oBAC9B,KAAK,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;wBAClD,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC;wBACzD,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBACjC,CAAC;oBAED,yCAAyC;oBACzC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;wBACrB,0CAA0C;wBAC1C,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;4BACpD,IAAI,CAAC,oBAAoB,CAAC,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC,CAAC;4BAC/E,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;4BAClC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;wBAClC,CAAC;wBACD,OAAO;oBACR,CAAC;oBAED,6EAA6E;oBAC7E,4EAA4E;oBAC5E,IAAI,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;wBACxD,IAAI,CAAC,iBAAiB,EAAE,CAAC;wBACzB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CACrB,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC,EAC/D,IAAI,CAAC,mBAAmB,CACxB,CAAC;wBAEF,QAAQ,CAAC,IAAI,CACZ,mDAAmD,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,oBAAoB,OAAO,KAAK,IAAI,CACtH,CAAC;wBAEF,2CAA2C;wBAC3C,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,GAAG,EAAE;4BACrC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;4BAC3B,iDAAiD;4BACjD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;gCAC7C,6BAA6B;gCAC7B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;4BAC1B,CAAC,CAAC,CAAC;wBACJ,CAAC,EAAE,KAAK,CAAC,CAAC;oBACX,CAAC;yBAAM,CAAC;wBACP,QAAQ,CAAC,KAAK,CACb,gCAAgC,IAAI,CAAC,iBAAiB,sBAAsB,CAC5E,CAAC;wBAEF,mEAAmE;wBACnE,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;4BACpD,IAAI,CAAC,oBAAoB,CACxB,IAAI,KAAK,CACR,gDAAgD,IAAI,CAAC,iBAAiB,WAAW,CACjF,CACD,CAAC;4BACF,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;4BAClC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;wBAClC,CAAC;oBACF,CAAC;gBACF,CAAC,CAAC,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,YAAY,CAAC,iBAAiB,CAAC,CAAC;gBAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,IAAI,MAAM,CAAC;gBACrD,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;gBAClC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;gBACjC,QAAQ,CAAC,GAAY,CAAC,CAAC;YACxB,CAAC;QACF,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,QAAgB;QAC7B,kDAAkD;QAClD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,CAAC,YAAY,CAAC;QACzB,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC7D,CAAC;QAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;YACtC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YAEzD,MAAM,OAAO,GAAG;gBACf,EAAE,EAAE,SAAS;gBACb,MAAM,EAAE,SAAS;gBACjB,IAAI,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE;aAC7B,CAAC;YAEF,IAAI,CAAC,EAAG,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;YAEvC,oCAAoC;YACpC,UAAU,CAAC,GAAG,EAAE;gBACf,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBACzC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;oBACvC,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;gBACtC,CAAC;YACF,CAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CACT,QAAgB,EAChB,QAAgB,EAChB,cAAwC;QAExC,kDAAkD;QAClD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,CAAC,YAAY,CAAC;QACzB,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC7D,CAAC;QAED,kBAAkB;QAClB,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC;QAC9D,IAAI,WAAW,GAAG,OAAO,EAAE,CAAC;YAC3B,OAAO,CAAC,KAAK,CACZ,UAAU,QAAQ,iCAAiC,WAAW,qCAAqC,CACnG,CAAC;YACF,OAAO;QACR,CAAC;QAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;YACtC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE;gBACnC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE;gBACxB,MAAM;aACN,CAAC,CAAC;YAEH,MAAM,IAAI,GACT;gBACC,SAAS,EAAE,QAAQ;gBACnB,SAAS,EAAE,QAAQ;aACnB,CAAC;YAEH,IAAI,cAAc,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9D,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC;YAChC,CAAC;YAED,MAAM,OAAO,GAAG;gBACf,EAAE,EAAE,SAAS;gBACb,MAAM,EAAE,MAAM;gBACd,IAAI;aACJ,CAAC;YAEF,IAAI,CAAC,EAAG,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;YAEvC,oCAAoC;YACpC,UAAU,CAAC,GAAG,EAAE;gBACf,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBACzC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;oBACvC,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;gBACtC,CAAC;YACF,CAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,QAAgB;QAC5B,kDAAkD;QAClD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,CAAC,YAAY,CAAC;QACzB,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC7D,CAAC;QAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;YACtC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE;gBACnC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE;gBACxB,MAAM;aACN,CAAC,CAAC;YAEH,MAAM,OAAO,GAAG;gBACf,EAAE,EAAE,SAAS;gBACb,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE;aAC7B,CAAC;YAEF,IAAI,CAAC,EAAG,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;YAEvC,oCAAoC;YACpC,UAAU,CAAC,GAAG,EAAE;gBACf,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBACzC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;oBACvC,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;gBACtC,CAAC;YACF,CAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAK,CACV,QAAgB,EAChB,UAA4B,EAC5B,QAAkC;QAElC,kDAAkD;QAClD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,CAAC,YAAY,CAAC;QACzB,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC7D,CAAC;QAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;YACtC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE;gBACnC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE;gBACxB,MAAM;aACN,CAAC,CAAC;YAEH,MAAM,IAAI,GAIN;gBACH,SAAS,EAAE,QAAQ;gBACnB,UAAU;aACV,CAAC;YAEF,IAAI,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAC1B,CAAC;YAED,MAAM,OAAO,GAAG;gBACf,EAAE,EAAE,SAAS;gBACb,MAAM,EAAE,OAAO;gBACf,IAAI;aACJ,CAAC;YAEF,IAAI,CAAC,EAAG,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;YAEvC,oCAAoC;YACpC,UAAU,CAAC,GAAG,EAAE;gBACf,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBACzC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;oBACvC,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;gBACtC,CAAC;YACF,CAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,OAAO;QACN,wDAAwD;QACxD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAEvB,wCAAwC;QACxC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAClC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC5B,CAAC;QAED,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QAClC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;IAClC,CAAC;CACD;AAED,MAAM,OAAO,qBAAqB;IACzB,QAAQ,GAAoB,IAAI,CAAC;IACjC,QAAQ,GAAiC,IAAI,CAAC;IAC9C,YAAY,GAAyB,IAAI,CAAC;IAC1C,gBAAgB,GAA4B,IAAI,CAAC;IAEzD,KAAK,CAAC,UAAU,CAAC,QAAkB;QAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,gBAAgB,GAAG,IAAI,uBAAuB,EAAE,CAAC;QAEtD,+EAA+E;QAC/E,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;QAC7C,IAAI,MAAM,EAAE,CAAC;YACZ,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,KAAK,CAAC,CAAC;YAC1E,MAAM,WAAW,GAAG,WAAW,CAAC,QAAQ,CAAC;YACzC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,YAAY,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;YACxE,QAAQ,CAAC,KAAK,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;YAE1C,IAAI,CAAC,QAAQ,GAAG,IAAI,qBAAqB,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YACpE,oDAAoD;YACpD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ;iBAC/B,OAAO,EAAE;iBACT,IAAI,CAAC,GAAG,EAAE;gBACV,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YAC1B,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACd,QAAQ,CAAC,KAAK,CAAC,wCAAwC,EAAE,GAAG,CAAC,CAAC;gBAC9D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACrB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YAC1B,CAAC,CAAC,CAAC;QACL,CAAC;IACF,CAAC;IAED,mBAAmB,CAAC,QAA0B;QAC7C,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,GAAiB;QAC9B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAiB,CAAC,WAAW,CAAC,IAAI,CAAC,QAAS,EAAE,GAAG,CAAC,CAAC;QAC/E,uBAAuB,CAAC,QAAQ,CAAC,CAAC;QAClC,QAAQ,CAAC,IAAI,CAAC,qDAAqD,EAAE,QAAQ,CAAC,CAAC;QAE/E,uFAAuF;QACvF,MAAM,SAAS,GAAG,KAAK,IAGpB,EAAE;YACJ,QAAQ,CAAC,IAAI,CAAC,2CAA2C,EAAE,QAAQ,CAAC,CAAC;YAErE,oDAAoD;YACpD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACvB,QAAQ,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;gBAC3D,MAAM,IAAI,CAAC,YAAY,CAAC;YACzB,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACpB,QAAQ,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;gBAC/E,OAAO,EAAE,KAAK,EAAE,IAAI,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;YAC3C,CAAC;YAED,IAAI,CAAC;gBACJ,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAC3D,IAAI,YAAY,EAAE,CAAC;oBAClB,QAAQ,CAAC,IAAI,CAAC,mCAAmC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;oBACxE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,eAAe,CAAC,YAAY,CAAC,CAAC;oBAElE,MAAM,KAAK,GAAG,IAAI,GAAG,EAAmB,CAAC;oBACzC,IAAI,aAAa,EAAE,CAAC;wBACnB,IAAI,CAAC;4BACJ,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;4BACvC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gCACjD,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;4BACvB,CAAC;wBACF,CAAC;wBAAC,MAAM,CAAC;4BACR,QAAQ,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;wBACtD,CAAC;oBACF,CAAC;oBAED,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,IAAI,EAAE,EAAE,CAAC;gBAC5C,CAAC;gBACD,QAAQ,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;gBAClD,OAAO,EAAE,KAAK,EAAE,IAAI,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;YAC3C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,QAAQ,CAAC,IAAI,CAAC,uCAAuC,EAAE,GAAG,CAAC,CAAC;gBAC5D,OAAO,EAAE,KAAK,EAAE,IAAI,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;YAC3C,CAAC;QACF,CAAC,CAAC;QAEF,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;QAC5D,MAAM,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;QAC1C,OAAO,MAAM,CAAC;IACf,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAc;QACxB,IAAI,MAAM,YAAY,aAAa,EAAE,CAAC;YACrC,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;YACtC,QAAQ,CAAC,IAAI,CACZ,kFAAkF,EAClF,MAAM,CAAC,EAAE,EACT,QAAQ,EACR,CAAC,CAAC,IAAI,CAAC,QAAQ,CACf,CAAC;YAEF,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;gBACzB,QAAQ,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;gBACrD,OAAO;YACR,CAAC;YAED,oDAAoD;YACpD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACvB,QAAQ,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;gBAC3D,MAAM,IAAI,CAAC,YAAY,CAAC;YACzB,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACpB,QAAQ,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;gBACvE,OAAO;YACR,CAAC;YAED,IAAI,CAAC;gBACJ,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;oBAC1B,MAAM,UAAU,GAAG,MAAM,CAAC,oBAAoB,EAAE,CAAC;oBACjD,MAAM,QAAQ,GAAG,MAAM,CAAC,kBAAkB,EAAE,CAAC;oBAC7C,QAAQ,CAAC,IAAI,CACZ,mDAAmD,EACnD,UAAU,CAAC,MAAM,CACjB,CAAC;oBACF,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;oBAC3D,QAAQ,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;gBACrD,CAAC;qBAAM,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;oBAChC,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,kBAAkB,EAAE,CAAC;oBACrD,QAAQ,CAAC,IAAI,CACZ,qDAAqD,EACrD,UAAU,CAAC,MAAM,CACjB,CAAC;oBACF,MAAM,QAAQ,GAAG,MAAM,CAAC,kBAAkB,EAAE,CAAC;oBAC7C,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;oBAC1D,QAAQ,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;gBACpD,CAAC;YACF,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,QAAQ,CAAC,IAAI,CAAC,0CAA0C,EAAE,GAAG,CAAC,CAAC;gBAC/D,6DAA6D;YAC9D,CAAC;QACF,CAAC;IACF,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAc;QAC3B,IAAI,MAAM,YAAY,aAAa,EAAE,CAAC;YACrC,IAAI,CAAC;gBACJ,oDAAoD;gBACpD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;oBACvB,MAAM,IAAI,CAAC,YAAY,CAAC;gBACzB,CAAC;gBAED,oCAAoC;gBACpC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACnB,IAAI,CAAC;wBACJ,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBACvC,CAAC;oBAAC,MAAM,CAAC;wBACR,qEAAqE;wBACrE,mEAAmE;wBACnE,QAAQ,CAAC,KAAK,CACb,UAAU,MAAM,CAAC,EAAE,mEAAmE,CACtF,CAAC;wBACF,0DAA0D;oBAC3D,CAAC;gBACF,CAAC;gBAED,MAAM,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;gBACpC,MAAM,SAAS,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;YAC7C,CAAC;oBAAS,CAAC;gBACV,oBAAoB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACrC,CAAC;QACF,CAAC;IACF,CAAC;CACD;AAED,MAAM,OAAO,sBAAsB;IAC1B,QAAQ,GAAG,IAAI,GAAG,EAA0B,CAAC;IAErD,KAAK,CAAC,UAAU,CAAC,SAAmB;QACnC,kDAAkD;IACnD,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAc,EAAE,SAAiB;QAC9C,QAAQ,CAAC,IAAI,CAAC,8CAA8C,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QACpF,IAAI,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,OAAO,GAAG,IAAI,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;YAChD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACtC,QAAQ,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;YACvE,MAAM,SAAS,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACP,QAAQ,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,OAAO,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAgB;QAC1B,IAAI,OAAO,YAAY,cAAc,EAAE,CAAC;YACvC,QAAQ,CAAC,IAAI,CACZ,iFAAiF,EACjF,OAAO,CAAC,EAAE,CACV,CAAC;YACF,IAAI,CAAC;gBACJ,MAAM,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;gBACrC,QAAQ,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;gBACzE,MAAM,SAAS,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;gBAC9C,QAAQ,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;YAC9D,CAAC;oBAAS,CAAC;gBACV,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBACjC,qBAAqB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACvC,CAAC;QACF,CAAC;IACF,CAAC;CACD"}
|
package/dist/signature.d.ts
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shared HMAC-SHA256 signature verification for internal routes.
|
|
3
|
-
* Used by cron handlers and workbench routes.
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* Verifies an HMAC-SHA256 signature.
|
|
7
|
-
*
|
|
8
|
-
* The signature format is "v1=<64 hex chars>" where the hex payload is the
|
|
9
|
-
* HMAC-SHA256 of "{timestamp}.{body}" using AGENTUITY_SDK_KEY as the key.
|
|
10
|
-
*
|
|
11
|
-
* In non-production environments (dev mode), this function always returns true
|
|
12
|
-
* to allow local development without signature verification.
|
|
13
|
-
*
|
|
14
|
-
* In production, requests are rejected if AGENTUITY_SDK_KEY is not set.
|
|
15
|
-
*
|
|
16
|
-
* @param signature - The signature header value (format: "v1=<64 hex chars>")
|
|
17
|
-
* @param timestamp - The timestamp header value (unix seconds as string)
|
|
18
|
-
* @param body - The request body (empty string for GET/DELETE requests)
|
|
19
|
-
* @returns true if signature is valid, or if not in production mode
|
|
20
|
-
*/
|
|
21
|
-
export declare function verifySignature(signature: string | undefined, timestamp: string | undefined, body: string): Promise<boolean>;
|
|
22
|
-
//# sourceMappingURL=signature.d.ts.map
|
package/dist/signature.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"signature.d.ts","sourceRoot":"","sources":["../src/signature.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,eAAe,CACpC,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,IAAI,EAAE,MAAM,GACV,OAAO,CAAC,OAAO,CAAC,CAmDlB"}
|
package/dist/signature.js
DELETED
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shared HMAC-SHA256 signature verification for internal routes.
|
|
3
|
-
* Used by cron handlers and workbench routes.
|
|
4
|
-
*/
|
|
5
|
-
import { isProduction } from './_config';
|
|
6
|
-
// Maximum age for signatures (5 minutes)
|
|
7
|
-
const MAX_SIGNATURE_AGE_SECONDS = 300;
|
|
8
|
-
/**
|
|
9
|
-
* Verifies an HMAC-SHA256 signature.
|
|
10
|
-
*
|
|
11
|
-
* The signature format is "v1=<64 hex chars>" where the hex payload is the
|
|
12
|
-
* HMAC-SHA256 of "{timestamp}.{body}" using AGENTUITY_SDK_KEY as the key.
|
|
13
|
-
*
|
|
14
|
-
* In non-production environments (dev mode), this function always returns true
|
|
15
|
-
* to allow local development without signature verification.
|
|
16
|
-
*
|
|
17
|
-
* In production, requests are rejected if AGENTUITY_SDK_KEY is not set.
|
|
18
|
-
*
|
|
19
|
-
* @param signature - The signature header value (format: "v1=<64 hex chars>")
|
|
20
|
-
* @param timestamp - The timestamp header value (unix seconds as string)
|
|
21
|
-
* @param body - The request body (empty string for GET/DELETE requests)
|
|
22
|
-
* @returns true if signature is valid, or if not in production mode
|
|
23
|
-
*/
|
|
24
|
-
export async function verifySignature(signature, timestamp, body) {
|
|
25
|
-
// Skip auth in dev mode
|
|
26
|
-
if (!isProduction()) {
|
|
27
|
-
return true;
|
|
28
|
-
}
|
|
29
|
-
const sdkKey = process.env.AGENTUITY_SDK_KEY;
|
|
30
|
-
if (!sdkKey) {
|
|
31
|
-
// No SDK key in production is a misconfiguration — reject the request
|
|
32
|
-
return false;
|
|
33
|
-
}
|
|
34
|
-
// If no signature headers, reject the request
|
|
35
|
-
if (!signature || !timestamp) {
|
|
36
|
-
return false;
|
|
37
|
-
}
|
|
38
|
-
// Verify timestamp is within acceptable range (prevent replay attacks)
|
|
39
|
-
const ts = parseInt(timestamp, 10);
|
|
40
|
-
const now = Math.floor(Date.now() / 1000);
|
|
41
|
-
if (Number.isNaN(ts) || Math.abs(now - ts) > MAX_SIGNATURE_AGE_SECONDS) {
|
|
42
|
-
return false;
|
|
43
|
-
}
|
|
44
|
-
// Validate signature format: must be 'v1=' followed by valid hex (64 chars for SHA-256)
|
|
45
|
-
if (!signature.startsWith('v1=')) {
|
|
46
|
-
return false;
|
|
47
|
-
}
|
|
48
|
-
const hexPayload = signature.slice(3);
|
|
49
|
-
if (!/^[0-9a-f]{64}$/i.test(hexPayload)) {
|
|
50
|
-
return false;
|
|
51
|
-
}
|
|
52
|
-
// Decode hex payload into Uint8Array
|
|
53
|
-
const incomingSigBytes = new Uint8Array(32);
|
|
54
|
-
for (let i = 0; i < 32; i++) {
|
|
55
|
-
incomingSigBytes[i] = parseInt(hexPayload.slice(i * 2, i * 2 + 2), 16);
|
|
56
|
-
}
|
|
57
|
-
// Verify the signature using constant-time comparison
|
|
58
|
-
const message = `${ts}.${body}`;
|
|
59
|
-
const encoder = new TextEncoder();
|
|
60
|
-
const key = await crypto.subtle.importKey('raw', encoder.encode(sdkKey), { name: 'HMAC', hash: 'SHA-256' }, false, ['verify']);
|
|
61
|
-
return crypto.subtle.verify('HMAC', key, incomingSigBytes, encoder.encode(message));
|
|
62
|
-
}
|
|
63
|
-
//# sourceMappingURL=signature.js.map
|
package/dist/signature.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"signature.js","sourceRoot":"","sources":["../src/signature.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,yCAAyC;AACzC,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAEtC;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACpC,SAA6B,EAC7B,SAA6B,EAC7B,IAAY;IAEZ,wBAAwB;IACxB,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAC7C,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,sEAAsE;QACtE,OAAO,KAAK,CAAC;IACd,CAAC;IAED,8CAA8C;IAC9C,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACd,CAAC;IAED,uEAAuE;IACvE,MAAM,EAAE,GAAG,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACnC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IAC1C,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,yBAAyB,EAAE,CAAC;QACxE,OAAO,KAAK,CAAC;IACd,CAAC;IAED,wFAAwF;IACxF,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAClC,OAAO,KAAK,CAAC;IACd,CAAC;IACD,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACtC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QACzC,OAAO,KAAK,CAAC;IACd,CAAC;IAED,qCAAqC;IACrC,MAAM,gBAAgB,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,gBAAgB,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,sDAAsD;IACtD,MAAM,OAAO,GAAG,GAAG,EAAE,IAAI,IAAI,EAAE,CAAC;IAChC,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAClC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,SAAS,CACxC,KAAK,EACL,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EACtB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,EACjC,KAAK,EACL,CAAC,QAAQ,CAAC,CACV,CAAC;IAEF,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,gBAAgB,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;AACrF,CAAC"}
|
package/dist/validator.d.ts
DELETED
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
import { type InferOutput, type StandardSchemaV1 } from '@agentuity/core';
|
|
2
|
-
import type { Handler } from 'hono/types';
|
|
3
|
-
/**
|
|
4
|
-
* Route validator for standard HTTP routes (non-agent routes).
|
|
5
|
-
* Provides input and output validation with full type safety.
|
|
6
|
-
*
|
|
7
|
-
* **Input validation behavior by HTTP method:**
|
|
8
|
-
* - **GET**: Validates query parameters (accessible via `c.req.valid('query')`)
|
|
9
|
-
* - **POST/PUT/PATCH/DELETE**: Validates JSON body (accessible via `c.req.valid('json')`)
|
|
10
|
-
*
|
|
11
|
-
* **Output validation:**
|
|
12
|
-
* - Validates response JSON body before sending
|
|
13
|
-
* - Throws 500 Internal Server Error if validation fails
|
|
14
|
-
*
|
|
15
|
-
* @template TInput - Input schema type (query params for GET, body for POST/PUT/PATCH/DELETE)
|
|
16
|
-
* @template TOutput - Output schema type for response validation
|
|
17
|
-
*
|
|
18
|
-
* @example GET route with output validation only
|
|
19
|
-
* ```typescript
|
|
20
|
-
* router.get('/users',
|
|
21
|
-
* validator({ output: z.array(UserSchema) }),
|
|
22
|
-
* async (c) => {
|
|
23
|
-
* return c.json([{ id: '1', name: 'Alice' }]);
|
|
24
|
-
* }
|
|
25
|
-
* );
|
|
26
|
-
* ```
|
|
27
|
-
*
|
|
28
|
-
* @example GET route with query param validation
|
|
29
|
-
* ```typescript
|
|
30
|
-
* router.get('/users/:id',
|
|
31
|
-
* validator({
|
|
32
|
-
* input: z.object({ id: z.string() }),
|
|
33
|
-
* output: UserSchema
|
|
34
|
-
* }),
|
|
35
|
-
* async (c) => {
|
|
36
|
-
* const { id } = c.req.valid('query'); // Fully typed!
|
|
37
|
-
* return c.json({ id, name: 'Alice' });
|
|
38
|
-
* }
|
|
39
|
-
* );
|
|
40
|
-
* ```
|
|
41
|
-
*
|
|
42
|
-
* @example POST route with body and output validation
|
|
43
|
-
* ```typescript
|
|
44
|
-
* router.post('/users',
|
|
45
|
-
* validator({
|
|
46
|
-
* input: z.object({ name: z.string(), email: z.string().email() }),
|
|
47
|
-
* output: UserSchema
|
|
48
|
-
* }),
|
|
49
|
-
* async (c) => {
|
|
50
|
-
* const data = c.req.valid('json'); // Fully typed!
|
|
51
|
-
* return c.json({ id: '1', ...data });
|
|
52
|
-
* }
|
|
53
|
-
* );
|
|
54
|
-
* ```
|
|
55
|
-
*/
|
|
56
|
-
export interface RouteValidator {
|
|
57
|
-
/**
|
|
58
|
-
* Output-only validation (no input validation).
|
|
59
|
-
* Useful for GET routes without query parameters.
|
|
60
|
-
*
|
|
61
|
-
* @template TOutput - Output schema type
|
|
62
|
-
* @param options - Configuration object with output schema
|
|
63
|
-
* @returns Hono middleware handler
|
|
64
|
-
*/
|
|
65
|
-
<TOutput extends StandardSchemaV1>(options: {
|
|
66
|
-
output: TOutput;
|
|
67
|
-
stream?: boolean;
|
|
68
|
-
}): Handler<any, any, {
|
|
69
|
-
in: {};
|
|
70
|
-
out: {
|
|
71
|
-
json: InferOutput<TOutput>;
|
|
72
|
-
};
|
|
73
|
-
}>;
|
|
74
|
-
/**
|
|
75
|
-
* Input and output validation.
|
|
76
|
-
* - GET: validates query parameters
|
|
77
|
-
* - POST/PUT/PATCH/DELETE: validates JSON body
|
|
78
|
-
*
|
|
79
|
-
* @template TInput - Input schema type
|
|
80
|
-
* @template TOutput - Optional output schema type
|
|
81
|
-
* @param options - Configuration object with input and optional output schemas
|
|
82
|
-
* @returns Hono middleware handler with type inference
|
|
83
|
-
*/
|
|
84
|
-
<TInput extends StandardSchemaV1, TOutput extends StandardSchemaV1 | undefined = undefined>(options: {
|
|
85
|
-
input: TInput;
|
|
86
|
-
output?: TOutput;
|
|
87
|
-
stream?: boolean;
|
|
88
|
-
}): Handler<any, any, {
|
|
89
|
-
in: {};
|
|
90
|
-
out: {
|
|
91
|
-
json: InferOutput<TInput>;
|
|
92
|
-
query: InferOutput<TInput>;
|
|
93
|
-
};
|
|
94
|
-
}>;
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* Create a route validator middleware with input and/or output validation.
|
|
98
|
-
*
|
|
99
|
-
* Automatically handles different validation targets based on HTTP method:
|
|
100
|
-
* - GET requests: validates query parameters (if input schema provided)
|
|
101
|
-
* - POST/PUT/PATCH/DELETE: validates JSON body (if input schema provided)
|
|
102
|
-
* - All methods: validates JSON response (if output schema provided)
|
|
103
|
-
*
|
|
104
|
-
* @param options - Validation configuration
|
|
105
|
-
* @param options.input - Input schema (query params for GET, body for POST/PUT/PATCH/DELETE)
|
|
106
|
-
* @param options.output - Output schema for response validation
|
|
107
|
-
* @returns Hono middleware handler
|
|
108
|
-
*
|
|
109
|
-
* @example GET with query validation
|
|
110
|
-
* ```typescript
|
|
111
|
-
* import { validator } from '@agentuity/runtime';
|
|
112
|
-
*
|
|
113
|
-
* router.get('/search',
|
|
114
|
-
* validator({
|
|
115
|
-
* input: z.object({ q: z.string(), limit: z.number().optional() }),
|
|
116
|
-
* output: z.array(SearchResultSchema)
|
|
117
|
-
* }),
|
|
118
|
-
* async (c) => {
|
|
119
|
-
* const { q, limit } = c.req.valid('query'); // Typed!
|
|
120
|
-
* const results = await search(q, limit);
|
|
121
|
-
* return c.json(results);
|
|
122
|
-
* }
|
|
123
|
-
* );
|
|
124
|
-
* ```
|
|
125
|
-
*
|
|
126
|
-
* @example POST with body validation
|
|
127
|
-
* ```typescript
|
|
128
|
-
* router.post('/users',
|
|
129
|
-
* validator({
|
|
130
|
-
* input: z.object({ name: z.string() }),
|
|
131
|
-
* output: UserSchema
|
|
132
|
-
* }),
|
|
133
|
-
* async (c) => {
|
|
134
|
-
* const data = c.req.valid('json'); // Typed!
|
|
135
|
-
* const user = await createUser(data);
|
|
136
|
-
* return c.json(user);
|
|
137
|
-
* }
|
|
138
|
-
* );
|
|
139
|
-
* ```
|
|
140
|
-
*/
|
|
141
|
-
export declare const validator: RouteValidator;
|
|
142
|
-
//# sourceMappingURL=validator.d.ts.map
|
package/dist/validator.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,KAAK,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAE3F,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAI1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,MAAM,WAAW,cAAc;IAC9B;;;;;;;OAOG;IACH,CAAC,OAAO,SAAS,gBAAgB,EAAE,OAAO,EAAE;QAC3C,MAAM,EAAE,OAAO,CAAC;QAChB,MAAM,CAAC,EAAE,OAAO,CAAC;KACjB,GAAG,OAAO,CACV,GAAG,EACH,GAAG,EACH;QAEC,EAAE,EAAE,EAAE,CAAC;QACP,GAAG,EAAE;YAAE,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;SAAE,CAAC;KACpC,CACD,CAAC;IAEF;;;;;;;;;OASG;IACH,CACC,MAAM,SAAS,gBAAgB,EAC/B,OAAO,SAAS,gBAAgB,GAAG,SAAS,GAAG,SAAS,EACvD,OAAO,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,MAAM,CAAC,EAAE,OAAO,CAAC;KACjB,GAAG,OAAO,CACV,GAAG,EACH,GAAG,EACH;QAEC,EAAE,EAAE,EAAE,CAAC;QACP,GAAG,EAAE;YACJ,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;YAC1B,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;SAC3B,CAAC;KACF,CACD,CAAC;CACF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,eAAO,MAAM,SAAS,EAAE,cA4HJ,CAAC"}
|
package/dist/validator.js
DELETED
|
@@ -1,149 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
-
import { StructuredError } from '@agentuity/core';
|
|
3
|
-
import { validator as honoValidator } from 'hono/validator';
|
|
4
|
-
import { validateSchema, formatValidationIssues } from './_validation';
|
|
5
|
-
/**
|
|
6
|
-
* Create a route validator middleware with input and/or output validation.
|
|
7
|
-
*
|
|
8
|
-
* Automatically handles different validation targets based on HTTP method:
|
|
9
|
-
* - GET requests: validates query parameters (if input schema provided)
|
|
10
|
-
* - POST/PUT/PATCH/DELETE: validates JSON body (if input schema provided)
|
|
11
|
-
* - All methods: validates JSON response (if output schema provided)
|
|
12
|
-
*
|
|
13
|
-
* @param options - Validation configuration
|
|
14
|
-
* @param options.input - Input schema (query params for GET, body for POST/PUT/PATCH/DELETE)
|
|
15
|
-
* @param options.output - Output schema for response validation
|
|
16
|
-
* @returns Hono middleware handler
|
|
17
|
-
*
|
|
18
|
-
* @example GET with query validation
|
|
19
|
-
* ```typescript
|
|
20
|
-
* import { validator } from '@agentuity/runtime';
|
|
21
|
-
*
|
|
22
|
-
* router.get('/search',
|
|
23
|
-
* validator({
|
|
24
|
-
* input: z.object({ q: z.string(), limit: z.number().optional() }),
|
|
25
|
-
* output: z.array(SearchResultSchema)
|
|
26
|
-
* }),
|
|
27
|
-
* async (c) => {
|
|
28
|
-
* const { q, limit } = c.req.valid('query'); // Typed!
|
|
29
|
-
* const results = await search(q, limit);
|
|
30
|
-
* return c.json(results);
|
|
31
|
-
* }
|
|
32
|
-
* );
|
|
33
|
-
* ```
|
|
34
|
-
*
|
|
35
|
-
* @example POST with body validation
|
|
36
|
-
* ```typescript
|
|
37
|
-
* router.post('/users',
|
|
38
|
-
* validator({
|
|
39
|
-
* input: z.object({ name: z.string() }),
|
|
40
|
-
* output: UserSchema
|
|
41
|
-
* }),
|
|
42
|
-
* async (c) => {
|
|
43
|
-
* const data = c.req.valid('json'); // Typed!
|
|
44
|
-
* const user = await createUser(data);
|
|
45
|
-
* return c.json(user);
|
|
46
|
-
* }
|
|
47
|
-
* );
|
|
48
|
-
* ```
|
|
49
|
-
*/
|
|
50
|
-
export const validator = ((options) => {
|
|
51
|
-
const { input: inputSchema, output: outputSchema, stream } = options;
|
|
52
|
-
// Helper to build input validator that detects HTTP method
|
|
53
|
-
const buildInputValidator = (schema) => {
|
|
54
|
-
return async (c, next) => {
|
|
55
|
-
const method = c.req.method.toUpperCase();
|
|
56
|
-
// GET requests validate query parameters
|
|
57
|
-
if (method === 'GET') {
|
|
58
|
-
const queryValidator = honoValidator('query', async (value, c) => {
|
|
59
|
-
const result = await validateSchema(schema, value);
|
|
60
|
-
if (!result.success) {
|
|
61
|
-
return c.json({
|
|
62
|
-
error: 'Validation failed',
|
|
63
|
-
message: formatValidationIssues(result.issues),
|
|
64
|
-
issues: result.issues,
|
|
65
|
-
}, 400);
|
|
66
|
-
}
|
|
67
|
-
return result.data;
|
|
68
|
-
});
|
|
69
|
-
return await queryValidator(c, next);
|
|
70
|
-
}
|
|
71
|
-
// POST/PUT/PATCH/DELETE validate JSON body
|
|
72
|
-
const jsonValidator = honoValidator('json', async (value, c) => {
|
|
73
|
-
const result = await validateSchema(schema, value);
|
|
74
|
-
if (!result.success) {
|
|
75
|
-
return c.json({
|
|
76
|
-
error: 'Validation failed',
|
|
77
|
-
message: formatValidationIssues(result.issues),
|
|
78
|
-
issues: result.issues,
|
|
79
|
-
}, 400);
|
|
80
|
-
}
|
|
81
|
-
return result.data;
|
|
82
|
-
});
|
|
83
|
-
return await jsonValidator(c, next);
|
|
84
|
-
};
|
|
85
|
-
};
|
|
86
|
-
// Output validation middleware (runs after handler)
|
|
87
|
-
const outputValidator = async (c, next) => {
|
|
88
|
-
await next();
|
|
89
|
-
if (!outputSchema)
|
|
90
|
-
return;
|
|
91
|
-
// Skip output validation for streaming routes
|
|
92
|
-
if (stream)
|
|
93
|
-
return;
|
|
94
|
-
const res = c.res;
|
|
95
|
-
if (!res)
|
|
96
|
-
return;
|
|
97
|
-
// Only validate JSON responses
|
|
98
|
-
const contentType = res.headers.get('Content-Type') ?? '';
|
|
99
|
-
if (!contentType.toLowerCase().includes('application/json')) {
|
|
100
|
-
return;
|
|
101
|
-
}
|
|
102
|
-
// Clone so we don't consume the body that will be sent
|
|
103
|
-
let responseBody;
|
|
104
|
-
try {
|
|
105
|
-
const cloned = res.clone();
|
|
106
|
-
responseBody = await cloned.json();
|
|
107
|
-
}
|
|
108
|
-
catch {
|
|
109
|
-
const OutputValidationError = StructuredError('OutputValidationError')();
|
|
110
|
-
throw new OutputValidationError({
|
|
111
|
-
message: 'Output validation failed: response is not valid JSON',
|
|
112
|
-
issues: [],
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
const result = await validateSchema(outputSchema, responseBody);
|
|
116
|
-
if (!result.success) {
|
|
117
|
-
const OutputValidationError = StructuredError('OutputValidationError')();
|
|
118
|
-
throw new OutputValidationError({
|
|
119
|
-
message: `Output validation failed: ${formatValidationIssues(result.issues)}`,
|
|
120
|
-
issues: result.issues,
|
|
121
|
-
});
|
|
122
|
-
}
|
|
123
|
-
// Replace response with validated/sanitized JSON
|
|
124
|
-
c.res = new Response(JSON.stringify(result.data), {
|
|
125
|
-
status: res.status,
|
|
126
|
-
headers: res.headers,
|
|
127
|
-
});
|
|
128
|
-
};
|
|
129
|
-
// If no input schema, only do output validation
|
|
130
|
-
if (!inputSchema) {
|
|
131
|
-
return outputValidator;
|
|
132
|
-
}
|
|
133
|
-
// If no output schema, only do input validation
|
|
134
|
-
if (!outputSchema) {
|
|
135
|
-
return buildInputValidator(inputSchema);
|
|
136
|
-
}
|
|
137
|
-
// Compose: input validator → output validator
|
|
138
|
-
const inputMiddleware = buildInputValidator(inputSchema);
|
|
139
|
-
const composed = async (c, next) => {
|
|
140
|
-
// Run input validator first, then output validator, then handler
|
|
141
|
-
const result = await inputMiddleware(c, async () => {
|
|
142
|
-
await outputValidator(c, next);
|
|
143
|
-
});
|
|
144
|
-
// If inputMiddleware returned early (validation failed), return that response
|
|
145
|
-
return result;
|
|
146
|
-
};
|
|
147
|
-
return composed;
|
|
148
|
-
});
|
|
149
|
-
//# sourceMappingURL=validator.js.map
|
package/dist/validator.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validator.js","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"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"}
|
package/dist/version-check.d.ts
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Version consistency check for @agentuity/* packages.
|
|
3
|
-
*
|
|
4
|
-
* Logs a warning if there are mismatched major versions across SDK packages
|
|
5
|
-
* at runtime startup. This helps developers catch version conflicts early.
|
|
6
|
-
*/
|
|
7
|
-
import type { Logger } from './logger';
|
|
8
|
-
/**
|
|
9
|
-
* Check for version consistency across @agentuity/* packages.
|
|
10
|
-
*
|
|
11
|
-
* @param logger - Logger instance to use for warnings
|
|
12
|
-
*/
|
|
13
|
-
export declare function checkVersionConsistency(logger: Logger): void;
|
|
14
|
-
/**
|
|
15
|
-
* Check if the project is using v1 SDK packages.
|
|
16
|
-
*
|
|
17
|
-
* @returns true if any v1 packages are detected
|
|
18
|
-
*/
|
|
19
|
-
export declare function hasV1Packages(): boolean;
|
|
20
|
-
//# sourceMappingURL=version-check.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"version-check.d.ts","sourceRoot":"","sources":["../src/version-check.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AA4FvC;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAmE5D;AAED;;;;GAIG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAEvC"}
|
package/dist/version-check.js
DELETED
|
@@ -1,157 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Version consistency check for @agentuity/* packages.
|
|
3
|
-
*
|
|
4
|
-
* Logs a warning if there are mismatched major versions across SDK packages
|
|
5
|
-
* at runtime startup. This helps developers catch version conflicts early.
|
|
6
|
-
*/
|
|
7
|
-
import { existsSync, readFileSync } from 'node:fs';
|
|
8
|
-
import { createRequire } from 'node:module';
|
|
9
|
-
import { dirname, join, parse } from 'node:path';
|
|
10
|
-
import { isV1Package, showDeprecationWarning } from '@agentuity/core';
|
|
11
|
-
// Create a require function for resolving module paths
|
|
12
|
-
const require = createRequire(import.meta.url);
|
|
13
|
-
/**
|
|
14
|
-
* Known @agentuity/* packages that should have consistent versions.
|
|
15
|
-
*/
|
|
16
|
-
const KNOWN_PACKAGES = [
|
|
17
|
-
'@agentuity/core',
|
|
18
|
-
'@agentuity/runtime',
|
|
19
|
-
'@agentuity/server',
|
|
20
|
-
'@agentuity/frontend',
|
|
21
|
-
'@agentuity/react',
|
|
22
|
-
'@agentuity/schema',
|
|
23
|
-
'@agentuity/auth',
|
|
24
|
-
'@agentuity/postgres',
|
|
25
|
-
'@agentuity/drizzle',
|
|
26
|
-
'@agentuity/evals',
|
|
27
|
-
'@agentuity/workbench',
|
|
28
|
-
'@agentuity/queue',
|
|
29
|
-
'@agentuity/webhook',
|
|
30
|
-
'@agentuity/schedule',
|
|
31
|
-
'@agentuity/task',
|
|
32
|
-
'@agentuity/keyvalue',
|
|
33
|
-
'@agentuity/vector',
|
|
34
|
-
'@agentuity/stream',
|
|
35
|
-
];
|
|
36
|
-
/**
|
|
37
|
-
* Extract major version from semver string.
|
|
38
|
-
*/
|
|
39
|
-
function extractMajor(version) {
|
|
40
|
-
const match = version.match(/^(\d+)\.\d+\.\d+/);
|
|
41
|
-
return match && match[1] ? parseInt(match[1], 10) : 0;
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Walk up parent directories from a starting path until package.json is found.
|
|
45
|
-
* Returns the path to package.json, or null if not found (reached filesystem root).
|
|
46
|
-
*/
|
|
47
|
-
function findPackageJson(startPath) {
|
|
48
|
-
let currentDir = dirname(startPath);
|
|
49
|
-
const root = parse(currentDir).root;
|
|
50
|
-
while (currentDir !== root) {
|
|
51
|
-
const pkgPath = join(currentDir, 'package.json');
|
|
52
|
-
if (existsSync(pkgPath)) {
|
|
53
|
-
return pkgPath;
|
|
54
|
-
}
|
|
55
|
-
const parentDir = dirname(currentDir);
|
|
56
|
-
if (parentDir === currentDir) {
|
|
57
|
-
break;
|
|
58
|
-
}
|
|
59
|
-
currentDir = parentDir;
|
|
60
|
-
}
|
|
61
|
-
return null;
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Get version of a package by resolving its main entry,
|
|
65
|
-
* then walking up directories to find package.json.
|
|
66
|
-
*
|
|
67
|
-
* This handles packages whose main is ./dist/index.js where package.json
|
|
68
|
-
* is in the parent directory, not alongside the main entry.
|
|
69
|
-
*/
|
|
70
|
-
function getPackageVersion(packageName) {
|
|
71
|
-
try {
|
|
72
|
-
// Resolve the package main entry
|
|
73
|
-
const mainPath = require.resolve(packageName);
|
|
74
|
-
// Walk up to find package.json
|
|
75
|
-
const pkgPath = findPackageJson(mainPath);
|
|
76
|
-
if (!pkgPath) {
|
|
77
|
-
return null;
|
|
78
|
-
}
|
|
79
|
-
// Read and parse manually - this avoids Bun's JSON import parser
|
|
80
|
-
const content = readFileSync(pkgPath, 'utf-8');
|
|
81
|
-
const pkgJson = JSON.parse(content);
|
|
82
|
-
return pkgJson?.version || null;
|
|
83
|
-
}
|
|
84
|
-
catch {
|
|
85
|
-
return null;
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
/**
|
|
89
|
-
* Check for version consistency across @agentuity/* packages.
|
|
90
|
-
*
|
|
91
|
-
* @param logger - Logger instance to use for warnings
|
|
92
|
-
*/
|
|
93
|
-
export function checkVersionConsistency(logger) {
|
|
94
|
-
// Skip in development if flag is set (for testing)
|
|
95
|
-
if (process.env.AGENTUITY_SKIP_VERSION_CHECK === 'true') {
|
|
96
|
-
return;
|
|
97
|
-
}
|
|
98
|
-
// Show deprecation warning for v1 packages
|
|
99
|
-
showDeprecationWarning(logger);
|
|
100
|
-
// Collect versions of loaded packages
|
|
101
|
-
const versions = [];
|
|
102
|
-
for (const name of KNOWN_PACKAGES) {
|
|
103
|
-
const version = getPackageVersion(name);
|
|
104
|
-
if (version) {
|
|
105
|
-
versions.push({
|
|
106
|
-
name,
|
|
107
|
-
version,
|
|
108
|
-
major: extractMajor(version),
|
|
109
|
-
});
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
// Need at least 2 packages to check consistency
|
|
113
|
-
if (versions.length < 2) {
|
|
114
|
-
return;
|
|
115
|
-
}
|
|
116
|
-
// Check for major version mismatches
|
|
117
|
-
const majors = new Set(versions.map((v) => v.major));
|
|
118
|
-
if (majors.size <= 1) {
|
|
119
|
-
return; // All packages have the same major version
|
|
120
|
-
}
|
|
121
|
-
// Find the most common major version
|
|
122
|
-
const majorCounts = new Map();
|
|
123
|
-
for (const v of versions) {
|
|
124
|
-
majorCounts.set(v.major, (majorCounts.get(v.major) || 0) + 1);
|
|
125
|
-
}
|
|
126
|
-
const sortedMajors = [...majorCounts.entries()].sort((a, b) => b[1] - a[1]);
|
|
127
|
-
const expectedMajor = sortedMajors[0]?.[0] ?? 2;
|
|
128
|
-
// Find mismatched packages
|
|
129
|
-
const mismatched = versions.filter((v) => v.major !== expectedMajor);
|
|
130
|
-
if (mismatched.length === 0) {
|
|
131
|
-
return;
|
|
132
|
-
}
|
|
133
|
-
// Log warning
|
|
134
|
-
const mismatchedList = mismatched.map((v) => `${v.name}@${v.version}`).join('\n ');
|
|
135
|
-
logger.warn('Version mismatch detected: Some @agentuity/* packages have different major versions.\n' +
|
|
136
|
-
' This may cause unexpected behavior.\n' +
|
|
137
|
-
'\n' +
|
|
138
|
-
' Expected: v' +
|
|
139
|
-
expectedMajor +
|
|
140
|
-
'\n' +
|
|
141
|
-
' Mismatched:\n' +
|
|
142
|
-
' ' +
|
|
143
|
-
mismatchedList +
|
|
144
|
-
'\n' +
|
|
145
|
-
'\n' +
|
|
146
|
-
' Run `bun install` to sync versions, or pin all @agentuity/* packages\n' +
|
|
147
|
-
' to the same major version in your package.json.');
|
|
148
|
-
}
|
|
149
|
-
/**
|
|
150
|
-
* Check if the project is using v1 SDK packages.
|
|
151
|
-
*
|
|
152
|
-
* @returns true if any v1 packages are detected
|
|
153
|
-
*/
|
|
154
|
-
export function hasV1Packages() {
|
|
155
|
-
return isV1Package();
|
|
156
|
-
}
|
|
157
|
-
//# sourceMappingURL=version-check.js.map
|