chat-flow-ardymalihi 3.0.0 → 3.0.2
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/package.json +1 -1
- package/dist/adapters/db/InMemorySessionRepository.js +0 -15
- package/dist/adapters/db/RedisSessionRepository.js +0 -41
- package/dist/adapters/intent/IntentMatcher.d.ts +0 -41
- package/dist/adapters/intent/IntentMatcher.d.ts.map +0 -1
- package/dist/adapters/intent/IntentMatcher.js +0 -167
- package/dist/adapters/intent/IntentMatcher.js.map +0 -1
- package/dist/adapters/intent/IntentService.d.ts +0 -26
- package/dist/adapters/intent/IntentService.d.ts.map +0 -1
- package/dist/adapters/intent/IntentService.js +0 -65
- package/dist/adapters/intent/IntentService.js.map +0 -1
- package/dist/adapters/intent/MockIntentAdapter.js +0 -29
- package/dist/adapters/intent/MockIntentService.d.ts +0 -7
- package/dist/adapters/intent/MockIntentService.d.ts.map +0 -1
- package/dist/adapters/intent/MockIntentService.js +0 -36
- package/dist/adapters/intent/MockIntentService.js.map +0 -1
- package/dist/adapters/llm/GeminiLLMAdapter.d.ts +0 -10
- package/dist/adapters/llm/GeminiLLMAdapter.d.ts.map +0 -1
- package/dist/adapters/llm/GeminiLLMAdapter.js +0 -102
- package/dist/adapters/llm/GeminiLLMAdapter.js.map +0 -1
- package/dist/adapters/llm/MockLLMAdapter.d.ts +0 -5
- package/dist/adapters/llm/MockLLMAdapter.d.ts.map +0 -1
- package/dist/adapters/llm/MockLLMAdapter.js +0 -31
- package/dist/adapters/llm/MockLLMAdapter.js.map +0 -1
- package/dist/adapters/llm/OllamaLLMAdapter.d.ts +0 -9
- package/dist/adapters/llm/OllamaLLMAdapter.d.ts.map +0 -1
- package/dist/adapters/llm/OllamaLLMAdapter.js +0 -74
- package/dist/adapters/llm/OllamaLLMAdapter.js.map +0 -1
- package/dist/adapters/logger/ConsoleLogger.d.ts +0 -12
- package/dist/adapters/logger/ConsoleLogger.d.ts.map +0 -1
- package/dist/adapters/logger/ConsoleLogger.js +0 -37
- package/dist/adapters/logger/ConsoleLogger.js.map +0 -1
- package/dist/adapters/memory/InMemorySessionRepository.js +0 -15
- package/dist/adapters/redis/RedisSessionRepository.js +0 -41
- package/dist/adapters/repository/InMemoryRepository.d.ts +0 -46
- package/dist/adapters/repository/InMemoryRepository.d.ts.map +0 -1
- package/dist/adapters/repository/InMemoryRepository.js +0 -235
- package/dist/adapters/repository/InMemoryRepository.js.map +0 -1
- package/dist/adapters/repository/IntentRepository.d.ts +0 -15
- package/dist/adapters/repository/IntentRepository.d.ts.map +0 -1
- package/dist/adapters/repository/IntentRepository.js +0 -28
- package/dist/adapters/repository/IntentRepository.js.map +0 -1
- package/dist/adapters/repository/RedisRepository.d.ts +0 -63
- package/dist/adapters/repository/RedisRepository.d.ts.map +0 -1
- package/dist/adapters/repository/RedisRepository.js +0 -586
- package/dist/adapters/repository/RedisRepository.js.map +0 -1
- package/dist/adapters/storage/RedisAudioStorageAdapter.d.ts +0 -33
- package/dist/adapters/storage/RedisAudioStorageAdapter.d.ts.map +0 -1
- package/dist/adapters/storage/RedisAudioStorageAdapter.js +0 -121
- package/dist/adapters/storage/RedisAudioStorageAdapter.js.map +0 -1
- package/dist/adapters/storage/RedisBufferStorageAdapter.d.ts +0 -14
- package/dist/adapters/storage/RedisBufferStorageAdapter.d.ts.map +0 -1
- package/dist/adapters/storage/RedisBufferStorageAdapter.js +0 -94
- package/dist/adapters/storage/RedisBufferStorageAdapter.js.map +0 -1
- package/dist/adapters/voice/ElevenLabsVoiceAdapter.d.ts +0 -29
- package/dist/adapters/voice/ElevenLabsVoiceAdapter.d.ts.map +0 -1
- package/dist/adapters/voice/ElevenLabsVoiceAdapter.js +0 -75
- package/dist/adapters/voice/ElevenLabsVoiceAdapter.js.map +0 -1
- package/dist/adapters/voice/GeminiMultimodalLiveAdapter.d.ts +0 -77
- package/dist/adapters/voice/GeminiMultimodalLiveAdapter.d.ts.map +0 -1
- package/dist/adapters/voice/GeminiMultimodalLiveAdapter.js +0 -187
- package/dist/adapters/voice/GeminiMultimodalLiveAdapter.js.map +0 -1
- package/dist/adapters/voice/GeminiVoiceAdapter.d.ts +0 -36
- package/dist/adapters/voice/GeminiVoiceAdapter.d.ts.map +0 -1
- package/dist/adapters/voice/GeminiVoiceAdapter.js +0 -134
- package/dist/adapters/voice/GeminiVoiceAdapter.js.map +0 -1
- package/dist/adapters/voice/GoogleTTSAdapter.d.ts +0 -61
- package/dist/adapters/voice/GoogleTTSAdapter.d.ts.map +0 -1
- package/dist/adapters/voice/GoogleTTSAdapter.js +0 -165
- package/dist/adapters/voice/GoogleTTSAdapter.js.map +0 -1
- package/dist/adapters/voice/GoogleVoiceAdapter.d.ts +0 -33
- package/dist/adapters/voice/GoogleVoiceAdapter.d.ts.map +0 -1
- package/dist/adapters/voice/GoogleVoiceAdapter.js +0 -155
- package/dist/adapters/voice/GoogleVoiceAdapter.js.map +0 -1
- package/dist/adapters/voice/HybridVoiceAdapter.d.ts +0 -54
- package/dist/adapters/voice/HybridVoiceAdapter.d.ts.map +0 -1
- package/dist/adapters/voice/HybridVoiceAdapter.js +0 -102
- package/dist/adapters/voice/HybridVoiceAdapter.js.map +0 -1
- package/dist/adapters/voice/LanguageVoiceMapper.d.ts +0 -60
- package/dist/adapters/voice/LanguageVoiceMapper.d.ts.map +0 -1
- package/dist/adapters/voice/LanguageVoiceMapper.js +0 -130
- package/dist/adapters/voice/LanguageVoiceMapper.js.map +0 -1
- package/dist/adapters/voice/VertexVoiceAdapter.d.ts +0 -32
- package/dist/adapters/voice/VertexVoiceAdapter.d.ts.map +0 -1
- package/dist/adapters/voice/VertexVoiceAdapter.js +0 -179
- package/dist/adapters/voice/VertexVoiceAdapter.js.map +0 -1
- package/dist/adapters/webhook/WebhookService.d.ts +0 -47
- package/dist/adapters/webhook/WebhookService.d.ts.map +0 -1
- package/dist/adapters/webhook/WebhookService.js +0 -265
- package/dist/adapters/webhook/WebhookService.js.map +0 -1
- package/dist/adapters/workflow/MockWorkflowAdapter.d.ts +0 -5
- package/dist/adapters/workflow/MockWorkflowAdapter.d.ts.map +0 -1
- package/dist/adapters/workflow/MockWorkflowAdapter.js +0 -173
- package/dist/adapters/workflow/MockWorkflowAdapter.js.map +0 -1
- package/dist/adapters/workflow/WorkflowAdapter.d.ts +0 -55
- package/dist/adapters/workflow/WorkflowAdapter.d.ts.map +0 -1
- package/dist/adapters/workflow/WorkflowAdapter.js +0 -242
- package/dist/adapters/workflow/WorkflowAdapter.js.map +0 -1
- package/dist/adapters/workflow/actions/getSupportHoursAction.d.ts +0 -10
- package/dist/adapters/workflow/actions/getSupportHoursAction.d.ts.map +0 -1
- package/dist/adapters/workflow/actions/getSupportHoursAction.js +0 -33
- package/dist/adapters/workflow/actions/getSupportHoursAction.js.map +0 -1
- package/dist/adapters/workflow/actions/index.d.ts +0 -6
- package/dist/adapters/workflow/actions/index.d.ts.map +0 -1
- package/dist/adapters/workflow/actions/index.js +0 -22
- package/dist/adapters/workflow/actions/index.js.map +0 -1
- package/dist/adapters/workflow/actions/pushOutputResultAction.d.ts +0 -11
- package/dist/adapters/workflow/actions/pushOutputResultAction.d.ts.map +0 -1
- package/dist/adapters/workflow/actions/pushOutputResultAction.js +0 -31
- package/dist/adapters/workflow/actions/pushOutputResultAction.js.map +0 -1
- package/dist/adapters/workflow/actions/setWorkflowMessageAction.d.ts +0 -12
- package/dist/adapters/workflow/actions/setWorkflowMessageAction.d.ts.map +0 -1
- package/dist/adapters/workflow/actions/setWorkflowMessageAction.js +0 -32
- package/dist/adapters/workflow/actions/setWorkflowMessageAction.js.map +0 -1
- package/dist/adapters/workflow/engine/constants.d.ts +0 -3
- package/dist/adapters/workflow/engine/constants.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/constants.js +0 -6
- package/dist/adapters/workflow/engine/constants.js.map +0 -1
- package/dist/adapters/workflow/engine/engine.d.ts +0 -32
- package/dist/adapters/workflow/engine/engine.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/engine.js +0 -623
- package/dist/adapters/workflow/engine/engine.js.map +0 -1
- package/dist/adapters/workflow/engine/event-registry.d.ts +0 -12
- package/dist/adapters/workflow/engine/event-registry.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/event-registry.js +0 -33
- package/dist/adapters/workflow/engine/event-registry.js.map +0 -1
- package/dist/adapters/workflow/engine/interpolator.d.ts +0 -11
- package/dist/adapters/workflow/engine/interpolator.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/interpolator.js +0 -93
- package/dist/adapters/workflow/engine/interpolator.js.map +0 -1
- package/dist/adapters/workflow/engine/registry.d.ts +0 -12
- package/dist/adapters/workflow/engine/registry.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/registry.js +0 -39
- package/dist/adapters/workflow/engine/registry.js.map +0 -1
- package/dist/adapters/workflow/engine/template-registry.d.ts +0 -60
- package/dist/adapters/workflow/engine/template-registry.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/template-registry.js +0 -92
- package/dist/adapters/workflow/engine/template-registry.js.map +0 -1
- package/dist/adapters/workflow/engine/types.d.ts +0 -182
- package/dist/adapters/workflow/engine/types.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/types.js +0 -3
- package/dist/adapters/workflow/engine/types.js.map +0 -1
- package/dist/adapters/workflow/engine/utils/format-utils.d.ts +0 -43
- package/dist/adapters/workflow/engine/utils/format-utils.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/utils/format-utils.js +0 -137
- package/dist/adapters/workflow/engine/utils/format-utils.js.map +0 -1
- package/dist/adapters/workflow/engine/utils/layout-calculator.d.ts +0 -7
- package/dist/adapters/workflow/engine/utils/layout-calculator.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/utils/layout-calculator.js +0 -87
- package/dist/adapters/workflow/engine/utils/layout-calculator.js.map +0 -1
- package/dist/adapters/workflow/engine/utils/slugify.d.ts +0 -2
- package/dist/adapters/workflow/engine/utils/slugify.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/utils/slugify.js +0 -41
- package/dist/adapters/workflow/engine/utils/slugify.js.map +0 -1
- package/dist/adapters/workflow/engine/validator.d.ts +0 -9
- package/dist/adapters/workflow/engine/validator.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/validator.js +0 -425
- package/dist/adapters/workflow/engine/validator.js.map +0 -1
- package/dist/application/ConversationSession.d.ts +0 -23
- package/dist/application/ConversationSession.d.ts.map +0 -1
- package/dist/application/ConversationSession.js +0 -83
- package/dist/application/ConversationSession.js.map +0 -1
- package/dist/application/Message.d.ts +0 -11
- package/dist/application/Message.d.ts.map +0 -1
- package/dist/application/Message.js +0 -30
- package/dist/application/Message.js.map +0 -1
- package/dist/application/Orchestrator.d.ts +0 -18
- package/dist/application/Orchestrator.d.ts.map +0 -1
- package/dist/application/Orchestrator.js +0 -80
- package/dist/application/Orchestrator.js.map +0 -1
- package/dist/application/SessionState.js +0 -2
- package/dist/application/usecases/CreateSession.js +0 -20
- package/dist/application/usecases/HandleUserMessage.js +0 -69
- package/dist/config/ChatFlowConfig.d.ts +0 -66
- package/dist/config/ChatFlowConfig.d.ts.map +0 -1
- package/dist/config/ChatFlowConfig.js +0 -54
- package/dist/config/ChatFlowConfig.js.map +0 -1
- package/dist/config/index.d.ts +0 -2
- package/dist/config/index.d.ts.map +0 -1
- package/dist/config/index.js +0 -7
- package/dist/config/index.js.map +0 -1
- package/dist/core/entities/ConversationSession.d.ts +0 -58
- package/dist/core/entities/ConversationSession.d.ts.map +0 -1
- package/dist/core/entities/ConversationSession.js +0 -160
- package/dist/core/entities/ConversationSession.js.map +0 -1
- package/dist/core/entities/Message.d.ts +0 -14
- package/dist/core/entities/Message.d.ts.map +0 -1
- package/dist/core/entities/Message.js +0 -32
- package/dist/core/entities/Message.js.map +0 -1
- package/dist/core/errors/ChatFlowError.d.ts +0 -71
- package/dist/core/errors/ChatFlowError.d.ts.map +0 -1
- package/dist/core/errors/ChatFlowError.js +0 -108
- package/dist/core/errors/ChatFlowError.js.map +0 -1
- package/dist/core/errors/index.d.ts +0 -2
- package/dist/core/errors/index.d.ts.map +0 -1
- package/dist/core/errors/index.js +0 -15
- package/dist/core/errors/index.js.map +0 -1
- package/dist/core/utils/AudioStreamBuffer.d.ts +0 -33
- package/dist/core/utils/AudioStreamBuffer.d.ts.map +0 -1
- package/dist/core/utils/AudioStreamBuffer.js +0 -55
- package/dist/core/utils/AudioStreamBuffer.js.map +0 -1
- package/dist/core/utils/AudioUtils.d.ts +0 -41
- package/dist/core/utils/AudioUtils.d.ts.map +0 -1
- package/dist/core/utils/AudioUtils.js +0 -188
- package/dist/core/utils/AudioUtils.js.map +0 -1
- package/dist/core/utils/LanguageDetector.d.ts +0 -52
- package/dist/core/utils/LanguageDetector.d.ts.map +0 -1
- package/dist/core/utils/LanguageDetector.js +0 -173
- package/dist/core/utils/LanguageDetector.js.map +0 -1
- package/dist/core/utils/WavUtils.d.ts +0 -14
- package/dist/core/utils/WavUtils.d.ts.map +0 -1
- package/dist/core/utils/WavUtils.js +0 -37
- package/dist/core/utils/WavUtils.js.map +0 -1
- package/dist/db/InMemoryRepository.d.ts +0 -15
- package/dist/db/InMemoryRepository.d.ts.map +0 -1
- package/dist/db/InMemoryRepository.js +0 -41
- package/dist/db/InMemoryRepository.js.map +0 -1
- package/dist/db/RedisRepository.d.ts +0 -16
- package/dist/db/RedisRepository.d.ts.map +0 -1
- package/dist/db/RedisRepository.js +0 -87
- package/dist/db/RedisRepository.js.map +0 -1
- package/dist/demo/cli-demo.d.ts +0 -2
- package/dist/demo/cli-demo.d.ts.map +0 -1
- package/dist/demo/cli-demo.js +0 -146
- package/dist/demo/cli-demo.js.map +0 -1
- package/dist/demo/console-chat.d.ts +0 -2
- package/dist/demo/console-chat.d.ts.map +0 -1
- package/dist/demo/console-chat.js +0 -148
- package/dist/demo/console-chat.js.map +0 -1
- package/dist/demo/interactive-voice-chat.d.ts +0 -2
- package/dist/demo/interactive-voice-chat.d.ts.map +0 -1
- package/dist/demo/interactive-voice-chat.js +0 -180
- package/dist/demo/interactive-voice-chat.js.map +0 -1
- package/dist/demo/voice-demo.d.ts +0 -2
- package/dist/demo/voice-demo.d.ts.map +0 -1
- package/dist/demo/voice-demo.js +0 -188
- package/dist/demo/voice-demo.js.map +0 -1
- package/dist/domain/conversation/ConversationSession.js +0 -82
- package/dist/domain/conversation/Message.js +0 -33
- package/dist/domain/conversation/SessionState.js +0 -10
- package/dist/index.d.ts +0 -26
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -76
- package/dist/index.js.map +0 -1
- package/dist/intent/IntentService.d.ts +0 -17
- package/dist/intent/IntentService.d.ts.map +0 -1
- package/dist/intent/IntentService.js +0 -57
- package/dist/intent/IntentService.js.map +0 -1
- package/dist/intent/MockIntentService.d.ts +0 -7
- package/dist/intent/MockIntentService.d.ts.map +0 -1
- package/dist/intent/MockIntentService.js +0 -36
- package/dist/intent/MockIntentService.js.map +0 -1
- package/dist/interfaces.d.ts +0 -653
- package/dist/interfaces.d.ts.map +0 -1
- package/dist/interfaces.js +0 -36
- package/dist/interfaces.js.map +0 -1
- package/dist/llm/GeminiLLMAdapter.d.ts +0 -10
- package/dist/llm/GeminiLLMAdapter.d.ts.map +0 -1
- package/dist/llm/GeminiLLMAdapter.js +0 -102
- package/dist/llm/GeminiLLMAdapter.js.map +0 -1
- package/dist/llm/MockLLMAdapter.d.ts +0 -5
- package/dist/llm/MockLLMAdapter.d.ts.map +0 -1
- package/dist/llm/MockLLMAdapter.js +0 -31
- package/dist/llm/MockLLMAdapter.js.map +0 -1
- package/dist/orchestrator/Orchestrator.d.ts +0 -62
- package/dist/orchestrator/Orchestrator.d.ts.map +0 -1
- package/dist/orchestrator/Orchestrator.js +0 -697
- package/dist/orchestrator/Orchestrator.js.map +0 -1
- package/dist/ports/IIntentRepository.d.ts +0 -27
- package/dist/ports/IIntentRepository.d.ts.map +0 -1
- package/dist/ports/IIntentRepository.js +0 -3
- package/dist/ports/IIntentRepository.js.map +0 -1
- package/dist/ports/IntentPort.js +0 -2
- package/dist/ports/LLMPort.js +0 -2
- package/dist/ports/SessionRepository.js +0 -2
- package/dist/ports/WorkflowPort.js +0 -2
- package/dist/scripts/debug-redis.d.ts +0 -2
- package/dist/scripts/debug-redis.d.ts.map +0 -1
- package/dist/scripts/debug-redis.js +0 -55
- package/dist/scripts/debug-redis.js.map +0 -1
- package/dist/scripts/seed-collaborative-intents.d.ts +0 -2
- package/dist/scripts/seed-collaborative-intents.d.ts.map +0 -1
- package/dist/scripts/seed-collaborative-intents.js +0 -90
- package/dist/scripts/seed-collaborative-intents.js.map +0 -1
- package/dist/scripts/test-isolated-config.d.ts +0 -2
- package/dist/scripts/test-isolated-config.d.ts.map +0 -1
- package/dist/scripts/test-isolated-config.js +0 -80
- package/dist/scripts/test-isolated-config.js.map +0 -1
- package/dist/scripts/verify_memory_intents.d.ts +0 -2
- package/dist/scripts/verify_memory_intents.d.ts.map +0 -1
- package/dist/scripts/verify_memory_intents.js +0 -45
- package/dist/scripts/verify_memory_intents.js.map +0 -1
- package/dist/scripts/verify_redis_intents.d.ts +0 -2
- package/dist/scripts/verify_redis_intents.d.ts.map +0 -1
- package/dist/scripts/verify_redis_intents.js +0 -52
- package/dist/scripts/verify_redis_intents.js.map +0 -1
- package/dist/server/ChatFlowWebSocketServer.d.ts +0 -46
- package/dist/server/ChatFlowWebSocketServer.d.ts.map +0 -1
- package/dist/server/ChatFlowWebSocketServer.js +0 -344
- package/dist/server/ChatFlowWebSocketServer.js.map +0 -1
- package/dist/server/realtime-voice-server.d.ts +0 -2
- package/dist/server/realtime-voice-server.d.ts.map +0 -1
- package/dist/server/realtime-voice-server.js +0 -627
- package/dist/server/realtime-voice-server.js.map +0 -1
- package/dist/src/api/routes/tenants.d.ts +0 -3
- package/dist/src/api/routes/tenants.d.ts.map +0 -1
- package/dist/src/api/routes/tenants.js +0 -109
- package/dist/src/api/routes/tenants.js.map +0 -1
- package/dist/utils/crypto.d.ts +0 -7
- package/dist/utils/crypto.d.ts.map +0 -1
- package/dist/utils/crypto.js +0 -35
- package/dist/utils/crypto.js.map +0 -1
- package/dist/utils/encryption-helpers.d.ts +0 -14
- package/dist/utils/encryption-helpers.d.ts.map +0 -1
- package/dist/utils/encryption-helpers.js +0 -49
- package/dist/utils/encryption-helpers.js.map +0 -1
- package/dist/verify_memory_intents.js +0 -44
- package/dist/verify_redis_intents.js +0 -49
- package/dist/workflow/MockWorkflowAdapter.d.ts +0 -5
- package/dist/workflow/MockWorkflowAdapter.d.ts.map +0 -1
- package/dist/workflow/MockWorkflowAdapter.js +0 -162
- package/dist/workflow/MockWorkflowAdapter.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Orchestrator.js","sourceRoot":"","sources":["../../src/orchestrator/Orchestrator.ts"],"names":[],"mappings":";;;AAAA,8EAA2E;AAC3E,sDAAmD;AACnD,qEAAkE;AAClE,8CAauB;AACvB,2CAAsD;AACtD,sCAA2D;AAE3D,MAAa,YAAY;IAIrB,YACY,IAAiB,EACjB,GAAgB,EAChB,MAAsB,EACtB,QAA0B,EAC1B,cAA+B,EAC/B,YAA4B,EAC5B,YAA4B,EACpC,MAAgC;QAPxB,SAAI,GAAJ,IAAI,CAAa;QACjB,QAAG,GAAH,GAAG,CAAa;QAChB,WAAM,GAAN,MAAM,CAAgB;QACtB,aAAQ,GAAR,QAAQ,CAAkB;QAC1B,mBAAc,GAAd,cAAc,CAAiB;QAC/B,iBAAY,GAAZ,YAAY,CAAgB;QAC5B,iBAAY,GAAZ,YAAY,CAAgB;QAGpC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,uBAAc,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,uBAAc,CAAC;QACzE,IAAI,CAAC,gBAAgB,GAAG,IAAI,mCAAgB,CAAC,GAAG,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,IAAsB,EAAE,WAAmB,EAAE,QAAiB,EAAE,QAAiB;QACpH,8FAA8F;QAC9F,IAAI,cAAc,GAAG,WAAW,CAAC;QACjC,IAAI,aAAwC,CAAC;QAE7C,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,qCAAqC,QAAQ,iBAAiB,QAAQ,GAAG,CAAC,CAAC;YACvF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAE1E,IAAI,CAAC,MAAM,EAAE,CAAC;gBACV,OAAO,CAAC,KAAK,CAAC,0CAA0C,QAAQ,2BAA2B,QAAQ,GAAG,CAAC,CAAC;gBACxG,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;YAC/E,CAAC;YAED,oFAAoF;YACpF,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;gBACtB,cAAc,GAAG,MAAM,CAAC,YAAY,CAAC;YACzC,CAAC;YAED,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC;QACnC,CAAC;QAED,8EAA8E;QAC9E,IAAI,WAAW,GAAG,cAAc,CAAC;QACjC,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACnB,WAAW,IAAI;;;;;;;;0HAQ+F,CAAC;QACnH,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,yCAAmB,CAAC;YACpC,SAAS;YACT,QAAQ;YACR,QAAQ;YACR,IAAI;YACJ,WAAW,EAAE,WAAW;YACxB,gBAAgB,EAAE,eAAe,CAAC,gCAAgC;SACrE,CAAC,CAAC;QAEH,IAAI,aAAa,EAAE,CAAC;YAChB,OAAO,CAAC,WAAW,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;QACxD,CAAC;QAED,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAErC,2CAA2C;QAC3C,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACxC,MAAM,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;QACjF,CAAC;QAED,kCAAkC;QAClC,MAAM,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAEzD,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,cAAc,CAChB,SAAiB,EACjB,OAAe,EACf,sBAAwD;QAExD,kBAAkB;QAClB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QAC3D,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,MAAM,IAAI,6BAAoB,CAAC,SAAS,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,CAAC;YACD,yBAAyB;YACzB,MAAM,WAAW,GAAG,iBAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC1C,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YAEhC,iFAAiF;YACjF,MAAM,mBAAmB,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;YAClF,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC9C,IAAI,aAAa,GAAG,mBAAmB,EAAE,CAAC;gBACtC,OAAO,CAAC,IAAI,CAAC,oDAAoD,SAAS,IAAI,aAAa,yBAAyB,CAAC,CAAC;gBACtH,MAAM,IAAI,KAAK,CAAC,8BAA8B,mBAAmB,wCAAwC,CAAC,CAAC;YAC/G,CAAC;YAED,yEAAyE;YACzE,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ;gBAC/C,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC;gBAC5E,CAAC,CAAC,IAAI,CAAC;YAEX,MAAM,gBAAgB,GAAG,MAAM,EAAE,gBAAgB,IAAI,EAAE,CAAC;YACxD,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBAClD,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;gBAE/F,IAAI,aAAa,EAAE,CAAC;oBAChB,OAAO,CAAC,GAAG,CAAC,gDAAgD,OAAO,GAAG,CAAC,CAAC;oBACxE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;gBAC5D,CAAC;YACL,CAAC;YAED,+EAA+E;YAC/E,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,CAAC,CAAC,CAAC,CAAC;YAE5H,2DAA2D;YAC3D,wCAAwC;YACxC,MAAM,oBAAoB,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YAE/F,wEAAwE;YACxE,uFAAuF;YACvF,MAAM,iBAAiB,GAAG,MAAM,EAAE,WAAW,IAAI,EAAE,CAAC;YACpD,MAAM,YAAY,GAAG,iBAAiB,CAAC,MAAM,GAAG,CAAC;gBAC7C,CAAC,CAAC,CAAC,GAAG,oBAAoB,EAAE,GAAG,iBAAiB,CAAC;gBACjD,CAAC,CAAC,oBAAoB,CAAC;YAE3B,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;YAC3C,MAAM,gBAAgB,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;YAEpF,IAAI,gBAAgB,EAAE,CAAC;gBACnB,OAAO,CAAC,GAAG,CAAC,yCAAyC,OAAO,GAAG,CAAC,CAAC;YACrE,CAAC;YAED,MAAM,WAAW,GAAc,EAAE,CAAC;YAElC,yFAAyF;YACzF,IAAI,gBAAwB,CAAC;YAC7B,IAAI,YAAoB,CAAC;YACzB,IAAI,eAAe,GAAG,KAAK,CAAC;YAE5B,yCAAyC;YACzC,MAAM,mBAAmB,GAAG,MAAM,EAAE,gBAAgB,KAAK,KAAK,CAAC,CAAC,gCAAgC;YAChG,MAAM,eAAe,GAAG,MAAM,EAAE,eAAe,IAAI,IAAI,CAAC;YACxD,MAAM,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC;YAEjD,0DAA0D;YAC1D,IAAI,OAAO,CAAC,sBAAsB,EAAE,EAAE,CAAC;gBACnC,OAAO,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;YAC/E,CAAC;YAED,sFAAsF;YACtF,2EAA2E;YAC3E,OAAO,CAAC,GAAG,CAAC,kFAAkF,CAAC,CAAC;YAChG,MAAM,CAAC,cAAc,EAAE,YAAY,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACrD,6BAA6B;gBAC7B,CAAC,KAAK,IAAI,EAAE;oBACR,IAAI,mBAAmB,EAAE,CAAC;wBACtB,MAAM,YAAY,GAAG,CAAC,gBAAgB;4BAClC,IAAI,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;wBAE5E,IAAI,YAAY,EAAE,CAAC;4BACf,MAAM,aAAa,GAAG,MAAM,EAAE,kBAAkB,CAAC;4BACjD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;4BACpF,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;4BAC7D,MAAM,OAAO,GAAG,gBAAgB,IAAI,gBAAgB,KAAK,QAAQ,CAAC;4BAElE,IAAI,OAAO,EAAE,CAAC;gCACV,OAAO,CAAC,GAAG,CAAC,qCAAqC,gBAAgB,MAAM,QAAQ,KAAK,IAAI,GAAG,CAAC,CAAC;4BACjG,CAAC;iCAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;gCAC3B,OAAO,CAAC,GAAG,CAAC,qCAAqC,QAAQ,KAAK,IAAI,GAAG,CAAC,CAAC;4BAC3E,CAAC;4BAED,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;4BAC9B,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,YAAY,IAAI,aAAa,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gCACrF,IAAI,CAAC,YAAoB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;4BACrD,CAAC;4BAED,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;wBAC1F,CAAC;6BAAM,CAAC;4BACJ,MAAM,QAAQ,GAAG,gBAAiB,CAAC;4BACnC,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;4BAC7D,OAAO,CAAC,GAAG,CAAC,yCAAyC,QAAQ,KAAK,IAAI,GAAG,CAAC,CAAC;4BAC3E,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;wBACtF,CAAC;oBACL,CAAC;yBAAM,CAAC;wBACJ,MAAM,QAAQ,GAAG,eAAe,CAAC;wBACjC,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;wBAC7D,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;4BAC3B,OAAO,CAAC,GAAG,CAAC,+DAA+D,QAAQ,KAAK,IAAI,GAAG,CAAC,CAAC;4BACjG,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;wBAClC,CAAC;wBACD,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;oBACtF,CAAC;gBACL,CAAC,CAAC,EAAE;gBAEJ,8CAA8C;gBAC9C,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC;aACxF,CAAC,CAAC;YAEH,0CAA0C;YAC1C,gBAAgB,GAAG,cAAc,CAAC,gBAAgB,CAAC;YACnD,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC;YAC3C,eAAe,GAAG,cAAc,CAAC,eAAe,CAAC;YAEjD,gDAAgD;YAChD,IACI,OAAO,CAAC,gBAAgB,KAAK,eAAe;gBAC5C,YAAY,CAAC,UAAU;gBACvB,YAAY,CAAC,yBAAyB;gBACtC,YAAY,CAAC,yBAAyB,CAAC,MAAM,GAAG,CAAC;gBACjD,YAAY,CAAC,UAAU,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,EACnE,CAAC;gBACC,OAAO,CAAC,GAAG,CAAC,yCAAyC,YAAY,CAAC,UAAU,uCAAuC,YAAY,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACzK,OAAO,MAAM,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;YACnF,CAAC;YAED,2DAA2D;YAC3D,IAAI,YAAY,CAAC,UAAU,IAAI,YAAY,CAAC,UAAU,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC;gBAC/F,OAAO,CAAC,GAAG,CAAC,8CAA8C,YAAY,CAAC,UAAU,gBAAgB,YAAY,CAAC,UAAU,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,GAAG,CAAC,CAAC;gBAE1K,wCAAwC;gBACxC,qDAAqD;gBACrD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAC/F,IAAI,UAAU,EAAE,kBAAkB,IAAI,UAAU,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,IAAI,sBAAsB,EAAE,CAAC;oBACvG,MAAM,YAAY,GAAG,UAAU,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;oBACrH,OAAO,CAAC,GAAG,CAAC,0CAA0C,YAAY,GAAG,CAAC,CAAC;oBACvE,sEAAsE;oBACtE,mGAAmG;oBACnG,8DAA8D;oBAC9D,mEAAmE;oBACnE,6DAA6D;oBAC7D,MAAM,sBAAsB,CAAC,YAAY,CAAC,CAAC;gBAC/C,CAAC;gBAED,oDAAoD;gBACpD,WAAW,CAAC,QAAQ,GAAG;oBACnB,GAAG,WAAW,CAAC,QAAQ;oBACvB,MAAM,EAAE;wBACJ,IAAI,EAAE,YAAY,CAAC,UAAW;wBAC9B,UAAU,EAAE,YAAY,CAAC,UAAU;wBACnC,UAAU,EAAE,YAAY,CAAC,OAAO;qBACnC;iBACJ,CAAC;gBAEF,oDAAoD;gBACpD,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAEhI,IAAI,UAAU,EAAE,YAAY,EAAE,CAAC;oBAC3B,OAAO,CAAC,GAAG,CAAC,0BAA0B,YAAY,CAAC,UAAU,+CAA+C,CAAC,CAAC;oBAE9G,gCAAgC;oBAChC,MAAM,cAAc,GAAG,IAAI,iBAAO,CAAC;wBAC/B,IAAI,EAAE,iBAAI,CAAC,MAAM;wBACjB,OAAO,EAAE,8BAA8B,YAAY,CAAC,UAAU,wHAAwH;wBACtL,SAAS,EAAE,IAAI,IAAI,EAAE;qBACxB,CAAC,CAAC;oBAEH,oBAAoB;oBACpB,MAAM,gBAAgB,GAAG,CAAC,GAAG,OAAO,CAAC,UAAU,EAAE,EAAE,cAAc,CAAC,CAAC;oBACnE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;oBAC3F,MAAM,YAAY,GAAG,iBAAO,CAAC,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;oBAC5D,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;oBACjC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBAE/B,8BAA8B;oBAC9B,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;wBACtB,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,CAAC,CAAC,CAAC,CAAC;oBAChI,CAAC;gBAEL,CAAC;qBAAM,CAAC;oBACJ,2DAA2D;oBAC3D,MAAM,eAAe,GAAG;wBACpB,GAAG,YAAY,CAAC,OAAO;wBACvB,QAAQ,EAAE,OAAO,CAAC,QAAQ;qBAC7B,CAAC;oBACF,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,YAAY,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;oBACrG,IAAI,gBAAwB,CAAC;oBAE7B,4DAA4D;oBAC5D,IAAI,cAAc,CAAC,OAAO,IAAI,cAAc,CAAC,IAAI,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;wBAC/E,OAAO,CAAC,GAAG,CAAC,4BAA4B,YAAY,CAAC,UAAU,6DAA6D,CAAC,CAAC;wBAC9H,gBAAgB,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC;oBACnD,CAAC;yBAAM,CAAC;wBACJ,kEAAkE;wBAClE,OAAO,CAAC,GAAG,CAAC,4BAA4B,YAAY,CAAC,UAAU,4EAA4E,CAAC,CAAC;wBAE7I,yBAAyB;wBACzB,MAAM,sBAAsB,GAAG,IAAI,iBAAO,CAAC;4BACvC,IAAI,EAAE,iBAAI,CAAC,MAAM;4BACjB,OAAO,EAAE,oCAAoC,YAAY,CAAC,UAAU,uBAAuB,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,iCAAiC;4BAC/J,SAAS,EAAE,IAAI,IAAI,EAAE;yBACxB,CAAC,CAAC;wBAEH,oBAAoB;wBACpB,MAAM,gBAAgB,GAAG,CAAC,GAAG,OAAO,CAAC,UAAU,EAAE,EAAE,sBAAsB,CAAC,CAAC;wBAE3E,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;wBAC3F,gBAAgB,GAAG,WAAW,CAAC,OAAO,CAAC;oBAC3C,CAAC;oBAED,MAAM,YAAY,GAAG,iBAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;oBACzD,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;oBACjC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBAE/B,oDAAoD;oBACpD,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;wBACzB,uDAAuD;wBACvD,WAAW,CAAC,QAAQ,GAAG;4BACnB,GAAG,WAAW,CAAC,QAAQ;4BACvB,QAAQ,EAAE;gCACN,EAAE,EAAE,YAAY,CAAC,UAAW;gCAC5B,MAAM,EAAE,cAAc,CAAC,IAAI;6BAC9B;yBACJ,CAAC;wBAEF,kBAAkB;wBAClB,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC,OAAO,EAAE;4BACjD,YAAY,EAAE,YAAY,CAAC,UAAW;4BACtC,UAAU,EAAE,YAAY,CAAC,OAAO;4BAChC,MAAM,EAAE,cAAc;yBACzB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,CAAC,CAAC,CAAC,CAAC;oBACtE,CAAC;yBAAM,IAAI,cAAc,CAAC,KAAK,KAAK,qBAAqB,EAAE,CAAC;wBACxD,2BAA2B;wBAC3B,kFAAkF;wBAClF,iFAAiF;wBACjF,OAAO,CAAC,GAAG,CAAC,yDAAyD,YAAY,CAAC,UAAU,yBAAyB,CAAC,CAAC;wBAEvH,iFAAiF;wBACjF,MAAM,sBAAsB,GAAG,IAAI,iBAAO,CAAC;4BACvC,IAAI,EAAE,iBAAI,CAAC,MAAM;4BACjB,OAAO,EAAE,8BAA8B,YAAY,CAAC,UAAU,sGAAsG;4BACpK,SAAS,EAAE,IAAI,IAAI,EAAE;yBACxB,CAAC,CAAC;wBAEH,oBAAoB;wBACpB,MAAM,gBAAgB,GAAG,CAAC,GAAG,OAAO,CAAC,UAAU,EAAE,EAAE,sBAAsB,CAAC,CAAC;wBAE3E,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;wBAC3F,gBAAgB,GAAG,WAAW,CAAC,OAAO,CAAC;wBAEvC,4EAA4E;wBAC5E,oEAAoE;wBACpE,oGAAoG;oBAExG,CAAC;yBAAM,CAAC;wBACJ,qDAAqD;wBACrD,WAAW,CAAC,QAAQ,GAAG;4BACnB,GAAG,WAAW,CAAC,QAAQ;4BACvB,QAAQ,EAAE;gCACN,EAAE,EAAE,YAAY,CAAC,UAAW;gCAC5B,KAAK,EAAE,cAAc,CAAC,KAAK;6BAC9B;yBACJ,CAAC;wBAEF,kBAAkB;wBAClB,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,OAAO,EAAE;4BAC/C,YAAY,EAAE,YAAY,CAAC,UAAW;4BACtC,UAAU,EAAE,YAAY,CAAC,OAAO;4BAChC,KAAK,EAAE,cAAc,CAAC,KAAK;yBAC9B,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,CAAC,CAAC,CAAC,CAAC;oBACtE,CAAC;oBAED,gDAAgD;oBAChD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;wBACtB,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,CAAC,CAAC,CAAC,CAAC;oBAChI,CAAC;gBACL,CAAC;YAEL,CAAC;iBAAM,CAAC;gBACJ,6DAA6D;gBAC7D,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC;oBAC1B,OAAO,CAAC,GAAG,CAAC,2CAA2C,YAAY,CAAC,UAAU,gBAAgB,YAAY,CAAC,UAAU,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,iCAAiC,CAAC,CAAC;oBAEpM,kDAAkD;oBAClD,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAClI,CAAC;qBAAM,CAAC;oBACJ,OAAO,CAAC,GAAG,CAAC,2EAA2E,CAAC,CAAC;gBAC7F,CAAC;gBAED,iDAAiD;gBACjD,MAAM,cAAc,GAAG,GAAG,OAAO,CAAC,WAAW,2DAA2D,YAAY,KAAK,gBAAgB,8BAA8B,YAAY,0CAA0C,CAAC;gBAE9N,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,cAAc,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;gBAC1F,MAAM,YAAY,GAAG,iBAAO,CAAC,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAC;gBAClF,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;gBACjC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAE/B,gDAAgD;gBAChD,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,CAAC,CAAC,CAAC,CAAC;YAChI,CAAC;YAED,WAAW;YACX,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAErC,OAAO;gBACH,QAAQ,EAAE,WAAW;gBACrB,QAAQ,EAAE;oBACN,MAAM,EAAE,YAAY,CAAC,UAAU;oBAC/B,UAAU,EAAE,YAAY,CAAC,UAAU;oBACnC,gBAAgB,EAAE,CAAC,YAAY,CAAC,UAAU,IAAI,YAAY,CAAC,UAAU,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI;oBACjJ,gBAAgB,EAAE,gBAAgB;oBAClC,gBAAgB,EAAE,gBAAgB;oBAClC,YAAY,EAAE,YAAY;oBAC1B,eAAe,EAAE,eAAe;iBACnC;aACJ,CAAC;QACN,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,gCAAgC;YAChC,IAAI,CAAC,cAAc,CAAC,oBAAoB,CAAC,OAAO,EAAE,KAAc,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,CAAC,CAAC,CAAC,CAAC;YACjI,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,wBAAwB,CAClC,OAA4B,EAC5B,YAAiB,EACjB,WAAsB;QAEtB,wCAAwC;QACxC,OAAO,CAAC,wBAAwB,CAAC;YAC7B,UAAU,EAAE,YAAY,CAAC,UAAW;YACpC,kBAAkB,EAAE,YAAY,CAAC,OAAO,IAAI,EAAE;YAC9C,iBAAiB,EAAE,YAAY,CAAC,yBAA0B;YAC1D,YAAY,EAAE,CAAC;YACf,iBAAiB,EAAE,YAAY,CAAC,UAAU;SAC7C,CAAC,CAAC;QAEH,+BAA+B;QAC/B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,6BAA6B,CACrD,OAAO,EACP,YAAY,CAAC,UAAW,EACxB,YAAY,CAAC,yBAA0B,CAC1C,CAAC;QAEF,MAAM,YAAY,GAAG,iBAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACjD,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QACjC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAE/B,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAErC,OAAO;YACH,QAAQ,EAAE,WAAW;YACrB,QAAQ,EAAE;gBACN,MAAM,EAAE,YAAY,CAAC,UAAU;gBAC/B,UAAU,EAAE,YAAY,CAAC,UAAU;gBACnC,oBAAoB,EAAE,IAAI;gBAC1B,iBAAiB,EAAE,YAAY,CAAC,yBAAyB;aAC5D;SACJ,CAAC;IACN,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,yBAAyB,CACnC,OAA4B,EAC5B,YAAoB,EACpB,WAAsB;QAEtB,MAAM,eAAe,GAAG,OAAO,CAAC,2BAA2B,EAAG,CAAC;QAC/D,MAAM,YAAY,GAAG,CAAC,CAAC;QAEvB,gCAAgC;QAChC,IAAI,eAAe,CAAC,YAAY,IAAI,YAAY,EAAE,CAAC;YAC/C,OAAO,CAAC,GAAG,CAAC,yEAAyE,CAAC,CAAC;YACvF,OAAO,CAAC,wBAAwB,EAAE,CAAC;YAEnC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;YAC/F,MAAM,YAAY,GAAG,iBAAO,CAAC,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC5D,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;YACjC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAE/B,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YACrC,OAAO;gBACH,QAAQ,EAAE,WAAW;gBACrB,QAAQ,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE;aACzC,CAAC;QACN,CAAC;QAED,4BAA4B;QAC5B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QACnF,MAAM,aAAa,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAgB,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,eAAe,CAAC,UAAU,CAAC,CAAC;QAE1G,IAAI,CAAC,aAAa,EAAE,CAAC;YACjB,OAAO,CAAC,wBAAwB,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,UAAU,eAAe,CAAC,UAAU,YAAY,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;QAEpC,4DAA4D;QAC5D,2DAA2D;QAC3D,8DAA8D;QAC9D,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,6BAA6B,CAC5D,YAAY,EACZ,MAAM,EACN,eAAe,CAAC,iBAAiB,CACpC,CAAC;QAEF,iCAAiC;QACjC,MAAM,aAAa,GAAG;YAClB,GAAG,eAAe,CAAC,kBAAkB;YACrC,GAAG,eAAe;SACrB,CAAC;QAEF,6BAA6B;QAC7B,MAAM,YAAY,GAAG,eAAe,CAAC,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE;YACtE,MAAM,KAAK,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;YACvC,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE;gBACxD,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;QAEH,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,6CAA6C;YAC7C,OAAO,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC;YAC5E,OAAO,CAAC,wBAAwB,EAAE,CAAC;YAEnC,MAAM,eAAe,GAAG;gBACpB,GAAG,aAAa;gBAChB,QAAQ,EAAE,OAAO,CAAC,QAAQ;aAC7B,CAAC;YAEF,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,eAAe,CACtD,eAAe,CAAC,UAAU,EAC1B,eAAe,CAClB,CAAC;YAEF,MAAM,sBAAsB,GAAG,IAAI,iBAAO,CAAC;gBACvC,IAAI,EAAE,iBAAI,CAAC,MAAM;gBACjB,OAAO,EAAE,oCAAoC,eAAe,CAAC,UAAU,wBAAwB,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,iCAAiC;gBACnK,SAAS,EAAE,IAAI,IAAI,EAAE;aACxB,CAAC,CAAC;YAEH,iEAAiE;YACjE,MAAM,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,iBAAI,CAAC,IAAI,CAAC,CAAC;YAC3F,IAAI,eAAe,EAAE,CAAC;gBAClB,eAAe,CAAC,QAAQ,GAAG;oBACvB,GAAG,eAAe,CAAC,QAAQ;oBAC3B,MAAM,EAAE;wBACJ,IAAI,EAAE,eAAe,CAAC,UAAU;wBAChC,UAAU,EAAE,eAAe,CAAC,iBAAiB,EAAE,oCAAoC;wBACnF,kBAAkB,EAAE,eAAe,CAAC,iBAAiB;wBACrD,UAAU,EAAE,aAAa;qBAC5B;oBACD,QAAQ,EAAE;wBACN,EAAE,EAAE,eAAe,CAAC,UAAU;wBAC9B,MAAM,EAAE,cAAc,CAAC,IAAI;qBAC9B;iBACJ,CAAC;YACN,CAAC;YAED,MAAM,gBAAgB,GAAG,CAAC,GAAG,OAAO,CAAC,UAAU,EAAE,EAAE,sBAAsB,CAAC,CAAC;YAC3E,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;YAC3F,MAAM,YAAY,GAAG,iBAAO,CAAC,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC5D,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;YACjC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAE/B,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YACrC,OAAO;gBACH,QAAQ,EAAE,WAAW;gBACrB,QAAQ,EAAE;oBACN,MAAM,EAAE,eAAe,CAAC,UAAU;oBAClC,UAAU,EAAE,GAAG,EAAE,mCAAmC;oBACpD,gBAAgB,EAAE,eAAe,CAAC,UAAU;oBAC5C,mBAAmB,EAAE,IAAI;iBAC5B;aACJ,CAAC;QACN,CAAC;aAAM,CAAC;YACJ,sCAAsC;YACtC,OAAO,CAAC,yBAAyB,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;YAEjE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,6BAA6B,CAAC,OAAO,EAAE,eAAe,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;YAC7G,MAAM,YAAY,GAAG,iBAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACjD,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;YACjC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAE/B,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YACrC,OAAO;gBACH,QAAQ,EAAE,WAAW;gBACrB,QAAQ,EAAE;oBACN,MAAM,EAAE,eAAe,CAAC,UAAU;oBAClC,oBAAoB,EAAE,IAAI;oBAC1B,iBAAiB,EAAE,YAAY;oBAC/B,YAAY,EAAE,eAAe,CAAC,YAAY;iBAC7C;aACJ,CAAC;QACN,CAAC;IACL,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,6BAA6B,CACvC,OAA4B,EAC5B,UAAkB,EAClB,iBAA2B;QAE3B,oDAAoD;QACpD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QACnE,MAAM,aAAa,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAgB,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;QAE1F,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,IAAI,aAAa,EAAE,CAAC;YAChB,MAAM,MAAM,GAAG,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,eAAe,EAAE,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,CAAC;YAC1G,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;gBAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;gBACrD,IAAI,CAAC,KAAK;oBAAE,OAAO,SAAS,CAAC;gBAC7B,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,SAAS,CAAC;gBACnD,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC;gBAC5C,OAAO,GAAG,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,GAAG,WAAW,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YAC1E,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC;aAAM,CAAC;YACJ,SAAS,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,MAAM,GAAG;;6BAEM,UAAU;yDACkB,SAAS;;;;;;UAMxD,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,eAAgB,CAAC,MAAM,CAAC,CAAC;QACzD,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,6BAA6B,CACvC,YAAoB,EACpB,MAAW,EACX,iBAA2B;QAE3B,MAAM,gBAAgB,GAAG;;;UAGvB,MAAM,CAAC,IAAI;sBACC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;;kBAEhC,YAAY;;;;;;;;;;;CAW7B,CAAC;QAEM,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;YACvE,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAExC,sCAAsC;YACtC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAC/C,IAAI,SAAS,EAAE,CAAC;gBACZ,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YACpC,CAAC;YAED,OAAO,CAAC,IAAI,CAAC,0DAA0D,EAAE,OAAO,CAAC,CAAC;YAClF,OAAO,EAAE,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,6CAA6C,EAAE,KAAK,CAAC,CAAC;YACpE,OAAO,EAAE,CAAC;QACd,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IAGH;;;;;OAKG;IACH,KAAK,CAAC,gBAAgB,CAAC,IAAY;QAC/B,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,+FAA+F,CAAC,CAAC;QACrH,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,uDAAuD,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;QAChG,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,SAAiB,EAAE,WAAmB;QACxD,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAEjE,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QAErE,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YAClD,2EAA2E;YAC3E,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAc,EAAE,CAAC;YAChI,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,CAAC,CAAC,CAAC,CAAC;QAChJ,CAAC;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CAAC,SAAiB,EAAE,IAAY;QACpD,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAEjE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAEzD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClC,yCAAyC;YACzC,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,kBAAkB,EAAE,CAAC;YAC9D,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/I,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAGD,KAAK,CAAC,eAAe,CAAC,SAAiB,EAAE,YAAqB;QAC1D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QAC3D,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,MAAM,IAAI,6BAAoB,CAAC,SAAS,CAAC,CAAC;QAC9C,CAAC;QAED,mBAAmB;QACnB,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;QACtC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,gDAAgD;YAChD,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ;gBAC/C,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC;gBAC5E,CAAC,CAAC,IAAI,CAAC;YACX,MAAM,eAAe,GAAG,MAAM,EAAE,eAAe,IAAI,IAAI,CAAC;YACxD,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;YAE5E,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3E,MAAM,aAAa,GAAG;wEACsC,YAAY;;aAEvE,YAAY;;;EAGvB,UAAU;;SAEH,CAAC;YAEE,IAAI,CAAC;gBACD,kFAAkF;gBAClF,0CAA0C;gBAC1C,IAAI,WAAW,GAAG,EAAE,CAAC;gBACrB,IAAI,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC;oBAC3B,WAAW,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;gBAChE,CAAC;qBAAM,CAAC;oBACJ,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;oBACpE,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC;gBACnC,CAAC;gBACD,OAAO,CAAC,OAAO,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC;YACzC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,KAAK,CAAC,CAAC;gBACnE,OAAO,CAAC,OAAO,GAAG,6CAA6C,CAAC;YACpE,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,OAAO,GAAG,uCAAuC,CAAC;QAC9D,CAAC;QAED,oBAAoB;QACpB,OAAO,CAAC,YAAY,CAAC,0BAAa,CAAC,SAAS,CAAC,CAAC;QAE9C,6EAA6E;QAC7E,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAErC,4EAA4E;QAC5E,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACjE,IAAI,CAAC;gBACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;gBAC/D,OAAO,CAAC,GAAG,CAAC,gDAAgD,SAAS,UAAU,GAAG,EAAE,CAAC,CAAC;gBACtF,YAAY,GAAG,GAAG,CAAC,CAAC,2CAA2C;YACnE,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,CAAC,CAAC,CAAC;YAClE,CAAC;QACL,CAAC;QAED,uEAAuE;QACvE,MAAM,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QAErE,OAAO,CAAC,GAAG,CAAC,0BAA0B,SAAS,4BAA4B,CAAC,CAAC;QAC7E,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,SAAiB;QACnC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;CAEJ;AAxzBD,oCAwzBC"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { Intent } from '../interfaces';
|
|
2
|
-
/**
|
|
3
|
-
* Repository interface for intent persistence
|
|
4
|
-
*/
|
|
5
|
-
export interface IIntentRepository {
|
|
6
|
-
/**
|
|
7
|
-
* Save a single intent
|
|
8
|
-
*/
|
|
9
|
-
saveIntent(intent: Intent): Promise<void>;
|
|
10
|
-
/**
|
|
11
|
-
* Upsert multiple intents
|
|
12
|
-
*/
|
|
13
|
-
upsertIntents(intents: Intent[]): Promise<void>;
|
|
14
|
-
/**
|
|
15
|
-
* Find an intent by name
|
|
16
|
-
*/
|
|
17
|
-
findIntentByName(name: string): Promise<Intent | null>;
|
|
18
|
-
/**
|
|
19
|
-
* Get all intents
|
|
20
|
-
*/
|
|
21
|
-
getAllIntents(): Promise<Intent[]>;
|
|
22
|
-
/**
|
|
23
|
-
* Delete an intent by name
|
|
24
|
-
*/
|
|
25
|
-
deleteIntent(name: string): Promise<void>;
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=IIntentRepository.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IIntentRepository.d.ts","sourceRoot":"","sources":["../../src/ports/IIntentRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B;;OAEG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhD;;OAEG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAEvD;;OAEG;IACH,aAAa,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAEnC;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IIntentRepository.js","sourceRoot":"","sources":["../../src/ports/IIntentRepository.ts"],"names":[],"mappings":""}
|
package/dist/ports/IntentPort.js
DELETED
package/dist/ports/LLMPort.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"debug-redis.d.ts","sourceRoot":"","sources":["../../src/scripts/debug-redis.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC"}
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
require("dotenv/config");
|
|
7
|
-
const ioredis_1 = __importDefault(require("ioredis"));
|
|
8
|
-
async function debugRedis() {
|
|
9
|
-
const redis = new ioredis_1.default(process.env.REDIS_URL || 'redis://localhost:6379');
|
|
10
|
-
console.log('--- Debug Redis ---');
|
|
11
|
-
// 1. Check Keys
|
|
12
|
-
const keys = await redis.keys('intent:*');
|
|
13
|
-
console.log(`\nFound ${keys.length} intent keys:`);
|
|
14
|
-
keys.forEach(k => console.log(` - ${k}`));
|
|
15
|
-
if (keys.length > 0) {
|
|
16
|
-
const sample = await redis.call('JSON.GET', keys[0]);
|
|
17
|
-
console.log(`\nSample Intent (${keys[0]}):`, typeof sample === 'string' ? sample.substring(0, 100) + '...' : sample);
|
|
18
|
-
}
|
|
19
|
-
// 2. Check Index
|
|
20
|
-
try {
|
|
21
|
-
const indices = await redis.call('FT._LIST');
|
|
22
|
-
console.log('\nIndices:', indices);
|
|
23
|
-
const info = await redis.call('FT.INFO', 'idx:intents');
|
|
24
|
-
// ioredis returns array for info
|
|
25
|
-
console.log('\nIndex Info (First 10 lines):');
|
|
26
|
-
console.log(JSON.stringify(info).substring(0, 200));
|
|
27
|
-
}
|
|
28
|
-
catch (err) {
|
|
29
|
-
console.error('\nIndex Error:', err.message);
|
|
30
|
-
}
|
|
31
|
-
// 3. Test Search (if keys exist)
|
|
32
|
-
if (keys.length > 0) {
|
|
33
|
-
try {
|
|
34
|
-
// Check if embedding exists on sample
|
|
35
|
-
const sampleJson = await redis.call('JSON.GET', keys[0]);
|
|
36
|
-
const sample = JSON.parse(sampleJson);
|
|
37
|
-
if (!sample.embedding || sample.embedding.length === 0) {
|
|
38
|
-
console.error('\n[CRITICAL] Sample intent has NO EMBEDDING!');
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
console.log(`\nSample Embedding Length: ${sample.embedding.length}`);
|
|
42
|
-
// Try a search with this embedding (should match itself)
|
|
43
|
-
const blob = Buffer.from(new Float32Array(sample.embedding).buffer);
|
|
44
|
-
const res = await redis.call('FT.SEARCH', 'idx:intents', `*=>[KNN 5 @embedding $blob AS score]`, 'PARAMS', '2', 'blob', blob, 'SORTBY', 'score', 'DIALECT', '2');
|
|
45
|
-
console.log('\nTest Self-Search Result:', JSON.stringify(res));
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
catch (err) {
|
|
49
|
-
console.error('Test Search Failed:', err);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
redis.disconnect();
|
|
53
|
-
}
|
|
54
|
-
debugRedis();
|
|
55
|
-
//# sourceMappingURL=debug-redis.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"debug-redis.js","sourceRoot":"","sources":["../../src/scripts/debug-redis.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"seed-collaborative-intents.d.ts","sourceRoot":"","sources":["../../src/scripts/seed-collaborative-intents.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC"}
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
require("dotenv/config");
|
|
4
|
-
const RedisRepository_1 = require("../adapters/repository/RedisRepository");
|
|
5
|
-
/**
|
|
6
|
-
* Seed intents with enhanced field metadata for collaborative mode testing
|
|
7
|
-
*/
|
|
8
|
-
async function seedIntents() {
|
|
9
|
-
const redisUrl = process.env.REDIS_URL || 'redis://localhost:6379';
|
|
10
|
-
const repo = new RedisRepository_1.RedisRepository(redisUrl);
|
|
11
|
-
const intents = [
|
|
12
|
-
{
|
|
13
|
-
name: 'FLIGHT_INFO',
|
|
14
|
-
description: 'User wants to search for flight information',
|
|
15
|
-
required_fields: [
|
|
16
|
-
{
|
|
17
|
-
name: 'source',
|
|
18
|
-
type: 'string',
|
|
19
|
-
displayName: 'Departure City',
|
|
20
|
-
description: 'The city or airport the user is flying from'
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
name: 'destination',
|
|
24
|
-
type: 'string',
|
|
25
|
-
displayName: 'Arrival City',
|
|
26
|
-
description: 'The city or airport the user is flying to'
|
|
27
|
-
}
|
|
28
|
-
],
|
|
29
|
-
optional_fields: [
|
|
30
|
-
{
|
|
31
|
-
name: 'date',
|
|
32
|
-
type: 'string',
|
|
33
|
-
displayName: 'Travel Date',
|
|
34
|
-
description: 'Preferred date of travel'
|
|
35
|
-
}
|
|
36
|
-
]
|
|
37
|
-
},
|
|
38
|
-
{
|
|
39
|
-
name: 'SELECT_FLIGHT',
|
|
40
|
-
description: 'User selects a specific flight option from a list',
|
|
41
|
-
required_fields: [
|
|
42
|
-
{
|
|
43
|
-
name: 'flight_id',
|
|
44
|
-
type: 'string',
|
|
45
|
-
displayName: 'Flight Number',
|
|
46
|
-
description: 'The flight number or ID the user wants to select (e.g., AC123, flight 456)'
|
|
47
|
-
}
|
|
48
|
-
],
|
|
49
|
-
optional_fields: []
|
|
50
|
-
},
|
|
51
|
-
{
|
|
52
|
-
name: 'BOOK_FLIGHT',
|
|
53
|
-
description: 'User wants to book a confirmed flight',
|
|
54
|
-
required_fields: [
|
|
55
|
-
{
|
|
56
|
-
name: 'flight_id',
|
|
57
|
-
type: 'string',
|
|
58
|
-
displayName: 'Flight Number',
|
|
59
|
-
description: 'The flight number to book'
|
|
60
|
-
},
|
|
61
|
-
{
|
|
62
|
-
name: 'passenger_name',
|
|
63
|
-
type: 'string',
|
|
64
|
-
displayName: 'Passenger Name',
|
|
65
|
-
description: 'Full name of the passenger'
|
|
66
|
-
}
|
|
67
|
-
],
|
|
68
|
-
optional_fields: [
|
|
69
|
-
{
|
|
70
|
-
name: 'seat_preference',
|
|
71
|
-
type: 'string',
|
|
72
|
-
displayName: 'Seat Preference',
|
|
73
|
-
description: 'Preferred seat type (window, aisle, etc.)'
|
|
74
|
-
}
|
|
75
|
-
]
|
|
76
|
-
}
|
|
77
|
-
];
|
|
78
|
-
console.log('[Seed] Upserting intents with enhanced field metadata...');
|
|
79
|
-
await repo.upsertIntents(intents);
|
|
80
|
-
console.log(`[Seed] Successfully upserted ${intents.length} intents`);
|
|
81
|
-
// Verify
|
|
82
|
-
const allIntents = await repo.getAllIntents();
|
|
83
|
-
console.log(`[Seed] Total intents in database: ${allIntents.length}`);
|
|
84
|
-
allIntents.forEach(intent => {
|
|
85
|
-
console.log(` - ${intent.name}: ${intent.required_fields.length} required, ${intent.optional_fields?.length || 0} optional`);
|
|
86
|
-
});
|
|
87
|
-
await repo.disconnect();
|
|
88
|
-
}
|
|
89
|
-
seedIntents().catch(console.error);
|
|
90
|
-
//# sourceMappingURL=seed-collaborative-intents.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"seed-collaborative-intents.js","sourceRoot":"","sources":["../../src/scripts/seed-collaborative-intents.ts"],"names":[],"mappings":";;AAAA,yBAAuB;AACvB,4EAAyE;AAGzE;;GAEG;AACH,KAAK,UAAU,WAAW;IACtB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,wBAAwB,CAAC;IACnE,MAAM,IAAI,GAAG,IAAI,iCAAe,CAAC,QAAQ,CAAC,CAAC;IAE3C,MAAM,OAAO,GAAa;QACtB;YACI,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,6CAA6C;YAC1D,eAAe,EAAE;gBACb;oBACI,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,gBAAgB;oBAC7B,WAAW,EAAE,6CAA6C;iBAC7D;gBACD;oBACI,IAAI,EAAE,aAAa;oBACnB,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,cAAc;oBAC3B,WAAW,EAAE,2CAA2C;iBAC3D;aACJ;YACD,eAAe,EAAE;gBACb;oBACI,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,aAAa;oBAC1B,WAAW,EAAE,0BAA0B;iBAC1C;aACJ;SACJ;QACD;YACI,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,mDAAmD;YAChE,eAAe,EAAE;gBACb;oBACI,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,eAAe;oBAC5B,WAAW,EAAE,4EAA4E;iBAC5F;aACJ;YACD,eAAe,EAAE,EAAE;SACtB;QACD;YACI,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,uCAAuC;YACpD,eAAe,EAAE;gBACb;oBACI,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,eAAe;oBAC5B,WAAW,EAAE,2BAA2B;iBAC3C;gBACD;oBACI,IAAI,EAAE,gBAAgB;oBACtB,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,gBAAgB;oBAC7B,WAAW,EAAE,4BAA4B;iBAC5C;aACJ;YACD,eAAe,EAAE;gBACb;oBACI,IAAI,EAAE,iBAAiB;oBACvB,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,iBAAiB;oBAC9B,WAAW,EAAE,2CAA2C;iBAC3D;aACJ;SACJ;KACJ,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;IACxE,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAClC,OAAO,CAAC,GAAG,CAAC,gCAAgC,OAAO,CAAC,MAAM,UAAU,CAAC,CAAC;IAEtE,SAAS;IACT,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;IAC9C,OAAO,CAAC,GAAG,CAAC,qCAAqC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;IACtE,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QACxB,OAAO,CAAC,GAAG,CAAC,OAAO,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,eAAe,CAAC,MAAM,cAAc,MAAM,CAAC,eAAe,EAAE,MAAM,IAAI,CAAC,WAAW,CAAC,CAAC;IAClI,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;AAC5B,CAAC;AAED,WAAW,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"test-isolated-config.d.ts","sourceRoot":"","sources":["../../src/scripts/test-isolated-config.ts"],"names":[],"mappings":""}
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
const RedisRepository_1 = require("../adapters/repository/RedisRepository");
|
|
37
|
-
const dotenv = __importStar(require("dotenv"));
|
|
38
|
-
dotenv.config();
|
|
39
|
-
/**
|
|
40
|
-
*
|
|
41
|
-
* Verifies that a user CANNOT access Tenant A's config by supplying Tenant B's ID.
|
|
42
|
-
* This proves the "Config belongs to Tenant" check is robust.
|
|
43
|
-
*
|
|
44
|
-
*/
|
|
45
|
-
async function testConfigIsolation() {
|
|
46
|
-
const repo = new RedisRepository_1.RedisRepository(process.env.REDIS_URL);
|
|
47
|
-
const TENANT_A = 'tenant-a-123';
|
|
48
|
-
const TENANT_B = 'tenant-b-456';
|
|
49
|
-
const CONFIG_ID_A = 'config-a-001';
|
|
50
|
-
console.log('🧪 Starting Isolation Test...');
|
|
51
|
-
// 1. Create Data for Tenant A
|
|
52
|
-
const configA = {
|
|
53
|
-
id: CONFIG_ID_A,
|
|
54
|
-
tenantId: TENANT_A,
|
|
55
|
-
systemPrompt: 'Start system',
|
|
56
|
-
allowedIntents: []
|
|
57
|
-
};
|
|
58
|
-
await repo.saveConversationConfig(configA);
|
|
59
|
-
console.log(`✅ Saved config '${CONFIG_ID_A}' for tenant '${TENANT_A}'`);
|
|
60
|
-
// 2. Try to access Config A using Tenant A ID (Should work)
|
|
61
|
-
const validAccess = await repo.findConversationConfig(TENANT_A, CONFIG_ID_A);
|
|
62
|
-
if (validAccess && validAccess.id === CONFIG_ID_A) {
|
|
63
|
-
console.log(`✅ Success: Found config using correct Tenant ID.`);
|
|
64
|
-
}
|
|
65
|
-
else {
|
|
66
|
-
console.error(`❌ Failed: Could not find config with CORRECT ID.`);
|
|
67
|
-
}
|
|
68
|
-
// 3. Try to access Config A using Tenant B ID (Should FAIL)
|
|
69
|
-
const invalidAccess = await repo.findConversationConfig(TENANT_B, CONFIG_ID_A);
|
|
70
|
-
if (invalidAccess) {
|
|
71
|
-
console.error(`❌ SECURITY FAIL: Accessed Tenant A's config using Tenant B's ID!`);
|
|
72
|
-
console.error(` - Returned: ${JSON.stringify(invalidAccess)}`);
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
console.log(`✅ Success (Blocked): Could not find config when using WRONG Tenant ID.`);
|
|
76
|
-
}
|
|
77
|
-
await repo.disconnect();
|
|
78
|
-
}
|
|
79
|
-
testConfigIsolation().catch(console.error);
|
|
80
|
-
//# sourceMappingURL=test-isolated-config.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"test-isolated-config.js","sourceRoot":"","sources":["../../src/scripts/test-isolated-config.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,4EAAyE;AAEzE,+CAAiC;AACjC,MAAM,CAAC,MAAM,EAAE,CAAC;AAEhB;;;;;GAKG;AACH,KAAK,UAAU,mBAAmB;IAC9B,MAAM,IAAI,GAAG,IAAI,iCAAe,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAExD,MAAM,QAAQ,GAAG,cAAc,CAAC;IAChC,MAAM,QAAQ,GAAG,cAAc,CAAC;IAChC,MAAM,WAAW,GAAG,cAAc,CAAC;IAEnC,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAE7C,8BAA8B;IAC9B,MAAM,OAAO,GAAuB;QAChC,EAAE,EAAE,WAAW;QACf,QAAQ,EAAE,QAAQ;QAClB,YAAY,EAAE,cAAc;QAC5B,cAAc,EAAE,EAAE;KACrB,CAAC;IACF,MAAM,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;IAC3C,OAAO,CAAC,GAAG,CAAC,mBAAmB,WAAW,iBAAiB,QAAQ,GAAG,CAAC,CAAC;IAGxE,4DAA4D;IAC5D,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC7E,IAAI,WAAW,IAAI,WAAW,CAAC,EAAE,KAAK,WAAW,EAAE,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;IACpE,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IAED,4DAA4D;IAC5D,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC/E,IAAI,aAAa,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,kEAAkE,CAAC,CAAC;QAClF,OAAO,CAAC,KAAK,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACrE,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,GAAG,CAAC,wEAAwE,CAAC,CAAC;IAC1F,CAAC;IAED,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;AAC5B,CAAC;AAED,mBAAmB,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"verify_memory_intents.d.ts","sourceRoot":"","sources":["../../src/scripts/verify_memory_intents.ts"],"names":[],"mappings":""}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const InMemoryRepository_1 = require("../adapters/repository/InMemoryRepository");
|
|
4
|
-
async function runMemoryVerification() {
|
|
5
|
-
console.log('--- InMemoryRepository Intent Verification ---');
|
|
6
|
-
const repo = new InMemoryRepository_1.InMemoryRepository();
|
|
7
|
-
// 1. Create an Intent
|
|
8
|
-
const testIntent = {
|
|
9
|
-
name: 'TEST_INTENT',
|
|
10
|
-
description: 'A test intent',
|
|
11
|
-
required_fields: [],
|
|
12
|
-
optional_fields: []
|
|
13
|
-
};
|
|
14
|
-
console.log(`\n1. Creating Intent: ${testIntent.name}`);
|
|
15
|
-
await repo.saveIntent(testIntent);
|
|
16
|
-
console.log('Intent saved.');
|
|
17
|
-
// 2. Retrieve Intent
|
|
18
|
-
const retrieved = await repo.findIntentByName('TEST_INTENT');
|
|
19
|
-
if (retrieved && retrieved.name === 'TEST_INTENT') {
|
|
20
|
-
console.log('[PASS] findIntentByName successful');
|
|
21
|
-
}
|
|
22
|
-
else {
|
|
23
|
-
console.error('[FAIL] findIntentByName failed');
|
|
24
|
-
}
|
|
25
|
-
// 3. Search Mock
|
|
26
|
-
const searchResults = await repo.searchIntents([], 5);
|
|
27
|
-
console.log(`\n3. Search results (mock): ${searchResults.length} found`);
|
|
28
|
-
if (searchResults.length > 0 && searchResults[0].name === 'TEST_INTENT') {
|
|
29
|
-
console.log('[PASS] searchIntents (mock) successful');
|
|
30
|
-
}
|
|
31
|
-
else {
|
|
32
|
-
console.error('[FAIL] searchIntents failed');
|
|
33
|
-
}
|
|
34
|
-
// 4. Cleanup
|
|
35
|
-
await repo.deleteIntent('TEST_INTENT');
|
|
36
|
-
const deleted = await repo.findIntentByName('TEST_INTENT');
|
|
37
|
-
if (!deleted) {
|
|
38
|
-
console.log('[PASS] deleteIntent successful');
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
console.error('[FAIL] deleteIntent failed');
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
runMemoryVerification().catch(console.error);
|
|
45
|
-
//# sourceMappingURL=verify_memory_intents.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"verify_memory_intents.js","sourceRoot":"","sources":["../../src/scripts/verify_memory_intents.ts"],"names":[],"mappings":";;AAAA,kFAA+E;AAG/E,KAAK,UAAU,qBAAqB;IAChC,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;IAE9D,MAAM,IAAI,GAAG,IAAI,uCAAkB,EAAE,CAAC;IAEtC,sBAAsB;IACtB,MAAM,UAAU,GAAW;QACvB,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,eAAe;QAC5B,eAAe,EAAE,EAAE;QACnB,eAAe,EAAE,EAAE;KACtB,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,yBAAyB,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;IACxD,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAClC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAE7B,qBAAqB;IACrB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAC7D,IAAI,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;IACtD,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IAED,iBAAiB;IACjB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,+BAA+B,aAAa,CAAC,MAAM,QAAQ,CAAC,CAAC;IACzE,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QACtE,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;IAC1D,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IAED,aAAa;IACb,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAC3D,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAClD,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAChD,CAAC;AACL,CAAC;AAED,qBAAqB,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"verify_redis_intents.d.ts","sourceRoot":"","sources":["../../src/scripts/verify_redis_intents.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC"}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
require("dotenv/config");
|
|
4
|
-
const RedisRepository_1 = require("../adapters/repository/RedisRepository");
|
|
5
|
-
const IntentService_1 = require("../adapters/intent/IntentService");
|
|
6
|
-
const IntentMatcher_1 = require("../adapters/intent/IntentMatcher");
|
|
7
|
-
const GeminiLLMAdapter_1 = require("../adapters/llm/GeminiLLMAdapter");
|
|
8
|
-
async function runVerification() {
|
|
9
|
-
console.log('--- Redis Intent Verification ---');
|
|
10
|
-
const redisUrl = process.env.REDIS_URL;
|
|
11
|
-
const apiKey = process.env.GOOGLE_AI_API_KEY;
|
|
12
|
-
if (!redisUrl || !apiKey) {
|
|
13
|
-
console.error('REDIS_URL or GOOGLE_AI_API_KEY missing.');
|
|
14
|
-
process.exit(1);
|
|
15
|
-
}
|
|
16
|
-
console.log(`Connecting to Redis at ${redisUrl}`);
|
|
17
|
-
const redisRepo = new RedisRepository_1.RedisRepository(redisUrl);
|
|
18
|
-
console.log('Initializing adapters...');
|
|
19
|
-
const gemini = new GeminiLLMAdapter_1.GeminiLLMAdapter(apiKey);
|
|
20
|
-
const intentMatcher = new IntentMatcher_1.IntentMatcher(gemini);
|
|
21
|
-
const intentService = new IntentService_1.IntentService(redisRepo, intentMatcher);
|
|
22
|
-
// 1. Create an Intent
|
|
23
|
-
const testIntent = {
|
|
24
|
-
name: 'BOOK_FLIGHT',
|
|
25
|
-
description: 'User wants to book a flight ticket',
|
|
26
|
-
required_fields: [
|
|
27
|
-
{ name: 'destination', type: 'string' },
|
|
28
|
-
{ name: 'date', type: 'string' }
|
|
29
|
-
],
|
|
30
|
-
optional_fields: [
|
|
31
|
-
{ name: 'airline', type: 'string' }
|
|
32
|
-
]
|
|
33
|
-
};
|
|
34
|
-
console.log(`\n1. Creating Intent: ${testIntent.name}`);
|
|
35
|
-
await intentService.upsertIntents([testIntent]);
|
|
36
|
-
console.log('Intent saved.');
|
|
37
|
-
// 2. Search Intent (Vector Search)
|
|
38
|
-
const query = "I need to fly to Tokyo next Monday";
|
|
39
|
-
console.log(`\n2. Searching for intent with query: "${query}"`);
|
|
40
|
-
// Using matchIntents which uses vector search + LLM
|
|
41
|
-
const matches = await intentService.matchIntents(query, 70);
|
|
42
|
-
console.log('Matches found:', JSON.stringify(matches, null, 2));
|
|
43
|
-
if (matches.length > 0 && matches[0].intent.name === 'BOOK_FLIGHT') {
|
|
44
|
-
console.log('\n[PASS] Vector search and matching successful!');
|
|
45
|
-
}
|
|
46
|
-
else {
|
|
47
|
-
console.error('\n[FAIL] Could not match intent.');
|
|
48
|
-
}
|
|
49
|
-
await redisRepo.disconnect();
|
|
50
|
-
}
|
|
51
|
-
runVerification().catch(err => console.error(err));
|
|
52
|
-
//# sourceMappingURL=verify_redis_intents.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"verify_redis_intents.js","sourceRoot":"","sources":["../../src/scripts/verify_redis_intents.ts"],"names":[],"mappings":";;AAAA,yBAAuB;AACvB,4EAAyE;AACzE,oEAAiE;AACjE,oEAAiE;AACjE,uEAAoE;AAGpE,KAAK,UAAU,eAAe;IAC1B,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;IAEjD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;IACvC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAE7C,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;QACvB,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;QACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,0BAA0B,QAAQ,EAAE,CAAC,CAAC;IAClD,MAAM,SAAS,GAAG,IAAI,iCAAe,CAAC,QAAQ,CAAC,CAAC;IAEhD,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,IAAI,mCAAgB,CAAC,MAAM,CAAC,CAAC;IAC5C,MAAM,aAAa,GAAG,IAAI,6BAAa,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,aAAa,GAAG,IAAI,6BAAa,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IAElE,sBAAsB;IACtB,MAAM,UAAU,GAAW;QACvB,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,oCAAoC;QACjD,eAAe,EAAE;YACb,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE;YACvC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;SACnC;QACD,eAAe,EAAE;YACb,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE;SACtC;KACJ,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,yBAAyB,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;IACxD,MAAM,aAAa,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IAChD,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAE7B,mCAAmC;IACnC,MAAM,KAAK,GAAG,oCAAoC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,0CAA0C,KAAK,GAAG,CAAC,CAAC;IAEhE,oDAAoD;IACpD,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAE5D,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAEhE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QACjE,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;IACnE,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,SAAS,CAAC,UAAU,EAAE,CAAC;AACjC,CAAC;AAED,eAAe,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import * as http from 'http';
|
|
2
|
-
import { IRepository, ILLMAdapter, IVoiceAdapter, IWorkflowAdapter, IAudioStorage } from '../interfaces';
|
|
3
|
-
interface ChatFlowWebSocketServerOptions {
|
|
4
|
-
/** Default tenant ID to use if not specified in connection */
|
|
5
|
-
defaultTenantId?: string;
|
|
6
|
-
/** Default config ID to use if not specified in connection */
|
|
7
|
-
defaultConfigId?: string;
|
|
8
|
-
/** Interval in ms for logging active sessions (0 to disable) */
|
|
9
|
-
sessionLogInterval?: number;
|
|
10
|
-
}
|
|
11
|
-
export declare class ChatFlowWebSocketServer {
|
|
12
|
-
private wss;
|
|
13
|
-
private sessions;
|
|
14
|
-
private repository;
|
|
15
|
-
private llmAdapter;
|
|
16
|
-
private voiceAdapter;
|
|
17
|
-
private workflowAdapter;
|
|
18
|
-
private audioStorage;
|
|
19
|
-
private options;
|
|
20
|
-
private sessionLogIntervalId?;
|
|
21
|
-
constructor(httpServer: http.Server, repository: IRepository, llmAdapter: ILLMAdapter, voiceAdapter: IVoiceAdapter, workflowAdapter: IWorkflowAdapter, audioStorage: IAudioStorage, options?: ChatFlowWebSocketServerOptions);
|
|
22
|
-
/**
|
|
23
|
-
* Start the WebSocket server
|
|
24
|
-
*/
|
|
25
|
-
start(): void;
|
|
26
|
-
/**
|
|
27
|
-
* Stop the WebSocket server
|
|
28
|
-
*/
|
|
29
|
-
stop(): Promise<void>;
|
|
30
|
-
private handleConnection;
|
|
31
|
-
private handleMessage;
|
|
32
|
-
private processResponse;
|
|
33
|
-
private handleDisconnect;
|
|
34
|
-
private logActiveSessions;
|
|
35
|
-
private setupGracefulShutdown;
|
|
36
|
-
/**
|
|
37
|
-
* Get the number of active sessions
|
|
38
|
-
*/
|
|
39
|
-
getActiveSessionCount(): number;
|
|
40
|
-
/**
|
|
41
|
-
* Get all active session IDs
|
|
42
|
-
*/
|
|
43
|
-
getActiveSessionIds(): string[];
|
|
44
|
-
}
|
|
45
|
-
export {};
|
|
46
|
-
//# sourceMappingURL=ChatFlowWebSocketServer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ChatFlowWebSocketServer.d.ts","sourceRoot":"","sources":["../../src/server/ChatFlowWebSocketServer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAG7B,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AA2CzG,UAAU,8BAA8B;IACpC,8DAA8D;IAC9D,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,8DAA8D;IAC9D,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,qBAAa,uBAAuB;IAChC,OAAO,CAAC,GAAG,CAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAyC;IACzD,OAAO,CAAC,UAAU,CAAc;IAChC,OAAO,CAAC,UAAU,CAAc;IAChC,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,eAAe,CAAmB;IAC1C,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,oBAAoB,CAAC,CAAiB;gBAG1C,UAAU,EAAE,IAAI,CAAC,MAAM,EACvB,UAAU,EAAE,WAAW,EACvB,UAAU,EAAE,WAAW,EACvB,YAAY,EAAE,aAAa,EAC3B,eAAe,EAAE,gBAAgB,EACjC,YAAY,EAAE,aAAa,EAC3B,OAAO,GAAE,8BAAmC;IAmBhD;;OAEG;IACH,KAAK,IAAI,IAAI;IAYb;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAsBb,gBAAgB;YAgIhB,aAAa;YA4Gb,eAAe;YAuDf,gBAAgB;IAW9B,OAAO,CAAC,iBAAiB;IAUzB,OAAO,CAAC,qBAAqB;IAO7B;;OAEG;IACH,qBAAqB,IAAI,MAAM;IAI/B;;OAEG;IACH,mBAAmB,IAAI,MAAM,EAAE;CAGlC"}
|