repoburg 1.3.148 → 1.3.149
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/.claude/settings.local.json +0 -7
- package/.playwright-mcp/console-2026-05-12T09-54-31-560Z.log +0 -13
- package/.playwright-mcp/console-2026-05-12T10-04-14-892Z.log +0 -13
- package/.playwright-mcp/console-2026-05-12T10-50-32-398Z.log +0 -14
- package/.playwright-mcp/console-2026-05-12T12-50-09-889Z.log +0 -13
- package/.playwright-mcp/console-2026-05-12T12-58-49-817Z.log +0 -60
- package/.playwright-mcp/console-2026-05-13T18-41-50-654Z.log +0 -13
- package/.playwright-mcp/console-2026-05-13T18-54-58-000Z.log +0 -13
- package/.playwright-mcp/console-2026-05-13T19-13-30-875Z.log +0 -95
- package/.playwright-mcp/console-2026-05-13T20-09-13-456Z.log +0 -17
- package/.playwright-mcp/console-2026-05-13T20-21-01-662Z.log +0 -13
- package/.playwright-mcp/console-2026-05-13T20-22-00-038Z.log +0 -15
- package/.playwright-mcp/console-2026-05-13T20-26-26-665Z.log +0 -28
- package/.playwright-mcp/console-2026-05-13T20-35-49-544Z.log +0 -26
- package/.playwright-mcp/console-2026-05-13T20-38-10-958Z.log +0 -676
- package/.playwright-mcp/console-2026-05-14T21-27-06-074Z.log +0 -69
- package/.playwright-mcp/console-2026-05-14T22-13-07-470Z.log +0 -101
- package/.playwright-mcp/console-2026-05-14T23-58-12-858Z.log +0 -28
- package/.playwright-mcp/console-2026-05-15T00-15-00-760Z.log +0 -81
- package/.playwright-mcp/page-2026-05-12T09-54-32-920Z.yml +0 -223
- package/.playwright-mcp/page-2026-05-12T09-54-42-067Z.yml +0 -190
- package/.playwright-mcp/page-2026-05-12T09-55-12-019Z.yml +0 -389
- package/.playwright-mcp/page-2026-05-12T09-55-49-065Z.yml +0 -428
- package/.playwright-mcp/page-2026-05-12T09-56-06-607Z.yml +0 -389
- package/.playwright-mcp/page-2026-05-12T09-56-23-371Z.yml +0 -196
- package/.playwright-mcp/page-2026-05-12T09-56-55-792Z.yml +0 -389
- package/.playwright-mcp/page-2026-05-12T10-04-15-716Z.yml +0 -164
- package/.playwright-mcp/page-2026-05-12T10-04-43-994Z.yml +0 -190
- package/.playwright-mcp/page-2026-05-12T10-05-04-616Z.yml +0 -389
- package/.playwright-mcp/page-2026-05-12T10-05-27-643Z.yml +0 -428
- package/.playwright-mcp/page-2026-05-12T10-05-47-851Z.yml +0 -389
- package/.playwright-mcp/page-2026-05-12T10-06-13-429Z.yml +0 -196
- package/.playwright-mcp/page-2026-05-12T10-06-58-147Z.yml +0 -389
- package/.playwright-mcp/page-2026-05-12T10-08-20-216Z.yml +0 -428
- package/.playwright-mcp/page-2026-05-12T10-08-38-177Z.yml +0 -389
- package/.playwright-mcp/page-2026-05-12T10-09-01-851Z.yml +0 -196
- package/.playwright-mcp/page-2026-05-12T10-09-24-888Z.yml +0 -389
- package/.playwright-mcp/page-2026-05-12T10-50-33-049Z.yml +0 -212
- package/.playwright-mcp/page-2026-05-12T10-50-48-496Z.yml +0 -196
- package/.playwright-mcp/page-2026-05-12T10-51-51-308Z.yml +0 -196
- package/.playwright-mcp/page-2026-05-12T10-52-07-379Z.yml +0 -196
- package/.playwright-mcp/page-2026-05-12T12-50-10-589Z.yml +0 -143
- package/.playwright-mcp/page-2026-05-12T12-50-25-461Z.yml +0 -196
- package/.playwright-mcp/page-2026-05-12T12-51-11-190Z.yml +0 -394
- package/.playwright-mcp/page-2026-05-12T12-52-21-138Z.yml +0 -524
- package/.playwright-mcp/page-2026-05-12T12-53-42-423Z.yml +0 -431
- package/.playwright-mcp/page-2026-05-12T12-54-18-549Z.yml +0 -196
- package/.playwright-mcp/page-2026-05-12T12-54-26-818Z.yml +0 -390
- package/.playwright-mcp/page-2026-05-12T12-55-32-697Z.yml +0 -520
- package/.playwright-mcp/page-2026-05-12T12-58-50-450Z.yml +0 -164
- package/.playwright-mcp/page-2026-05-12T12-59-12-954Z.yml +0 -196
- package/.playwright-mcp/page-2026-05-12T12-59-38-479Z.yml +0 -394
- package/.playwright-mcp/page-2026-05-12T13-01-17-580Z.yml +0 -524
- package/.playwright-mcp/page-2026-05-12T13-01-58-447Z.yml +0 -271
- package/.playwright-mcp/page-2026-05-12T13-03-12-109Z.yml +0 -394
- package/.playwright-mcp/page-2026-05-13T18-41-51-436Z.yml +0 -159
- package/.playwright-mcp/page-2026-05-13T18-42-27-482Z.yml +0 -4814
- package/.playwright-mcp/page-2026-05-13T18-54-58-644Z.yml +0 -154
- package/.playwright-mcp/page-2026-05-13T18-56-11-217Z.yml +0 -1560
- package/.playwright-mcp/page-2026-05-13T18-56-32-205Z.yml +0 -1560
- package/.playwright-mcp/page-2026-05-13T19-13-31-457Z.yml +0 -164
- package/.playwright-mcp/page-2026-05-13T19-14-26-248Z.yml +0 -1560
- package/.playwright-mcp/page-2026-05-13T19-15-02-355Z.yml +0 -1560
- package/.playwright-mcp/page-2026-05-13T20-09-14-478Z.yml +0 -149
- package/.playwright-mcp/page-2026-05-13T20-10-49-292Z.yml +0 -4814
- package/.playwright-mcp/page-2026-05-13T20-21-02-852Z.yml +0 -143
- package/.playwright-mcp/page-2026-05-13T20-22-01-084Z.yml +0 -143
- package/.playwright-mcp/page-2026-05-13T20-22-09-334Z.yml +0 -1561
- package/.playwright-mcp/page-2026-05-13T20-26-27-690Z.yml +0 -143
- package/.playwright-mcp/page-2026-05-13T20-26-53-324Z.yml +0 -1561
- package/.playwright-mcp/page-2026-05-13T20-27-35-395Z.yml +0 -1561
- package/.playwright-mcp/page-2026-05-13T20-35-50-708Z.yml +0 -149
- package/.playwright-mcp/page-2026-05-13T20-37-41-379Z.yml +0 -0
- package/.playwright-mcp/page-2026-05-13T20-38-12-049Z.yml +0 -149
- package/.playwright-mcp/page-2026-05-13T20-38-19-708Z.yml +0 -1561
- package/.playwright-mcp/page-2026-05-14T21-27-07-278Z.yml +0 -164
- package/.playwright-mcp/page-2026-05-14T22-13-07-628Z.yml +0 -5
- package/.playwright-mcp/page-2026-05-14T22-13-27-676Z.yml +0 -1561
- package/.playwright-mcp/page-2026-05-14T23-58-13-064Z.yml +0 -3
- package/.playwright-mcp/page-2026-05-14T23-58-33-500Z.yml +0 -1561
- package/.playwright-mcp/page-2026-05-15T00-15-00-945Z.yml +0 -3
- package/.run/backend _ build.run.xml +0 -12
- package/.run/backend _ lint.run.xml +0 -12
- package/.run/backend _ test.run.xml +0 -12
- package/.run/frontend _ build.run.xml +0 -12
- package/.run/frontend _ lint_fix.run.xml +0 -12
- package/CODEMAP.md +0 -53
- package/backend/.repoburg/hooks/README.md +0 -53
- package/backend/.repoburg/hooks/eslint-hook.ts +0 -46
- package/backend/.repoburg/hooks/example-hook.ts +0 -62
- package/backend/CODEMAP.md +0 -48
- package/backend/README.md +0 -3
- package/backend/coverage/clover.xml +0 -12003
- package/backend/coverage/coverage-final.json +0 -313
- package/backend/coverage/lcov-report/base.css +0 -224
- package/backend/coverage/lcov-report/block-navigation.js +0 -87
- package/backend/coverage/lcov-report/favicon.png +0 -0
- package/backend/coverage/lcov-report/index.html +0 -1301
- package/backend/coverage/lcov-report/packages/gemini-core/examples/index.html +0 -116
- package/backend/coverage/lcov-report/packages/gemini-core/examples/simple.ts.html +0 -445
- package/backend/coverage/lcov-report/packages/gemini-core/index.html +0 -116
- package/backend/coverage/lcov-report/packages/gemini-core/index.ts.html +0 -127
- package/backend/coverage/lcov-report/packages/gemini-core/src/code_assist/codeAssist.ts.html +0 -193
- package/backend/coverage/lcov-report/packages/gemini-core/src/code_assist/converter.ts.html +0 -832
- package/backend/coverage/lcov-report/packages/gemini-core/src/code_assist/index.html +0 -206
- package/backend/coverage/lcov-report/packages/gemini-core/src/code_assist/oauth-credential-storage.ts.html +0 -469
- package/backend/coverage/lcov-report/packages/gemini-core/src/code_assist/oauth2.ts.html +0 -1705
- package/backend/coverage/lcov-report/packages/gemini-core/src/code_assist/server.ts.html +0 -790
- package/backend/coverage/lcov-report/packages/gemini-core/src/code_assist/setup.ts.html +0 -454
- package/backend/coverage/lcov-report/packages/gemini-core/src/code_assist/types.ts.html +0 -685
- package/backend/coverage/lcov-report/packages/gemini-core/src/config/config.ts.html +0 -307
- package/backend/coverage/lcov-report/packages/gemini-core/src/config/index.html +0 -146
- package/backend/coverage/lcov-report/packages/gemini-core/src/config/models.ts.html +0 -151
- package/backend/coverage/lcov-report/packages/gemini-core/src/config/storage.ts.html +0 -172
- package/backend/coverage/lcov-report/packages/gemini-core/src/core/contentGenerator.ts.html +0 -490
- package/backend/coverage/lcov-report/packages/gemini-core/src/core/geminiChat.ts.html +0 -1237
- package/backend/coverage/lcov-report/packages/gemini-core/src/core/geminiRequest.ts.html +0 -139
- package/backend/coverage/lcov-report/packages/gemini-core/src/core/index.html +0 -176
- package/backend/coverage/lcov-report/packages/gemini-core/src/core/prompts.ts.html +0 -409
- package/backend/coverage/lcov-report/packages/gemini-core/src/core/tokenLimits.ts.html +0 -181
- package/backend/coverage/lcov-report/packages/gemini-core/src/index.html +0 -116
- package/backend/coverage/lcov-report/packages/gemini-core/src/index.ts.html +0 -187
- package/backend/coverage/lcov-report/packages/gemini-core/src/mcp/token-storage/base-token-storage.ts.html +0 -229
- package/backend/coverage/lcov-report/packages/gemini-core/src/mcp/token-storage/file-token-storage.ts.html +0 -634
- package/backend/coverage/lcov-report/packages/gemini-core/src/mcp/token-storage/hybrid-token-storage.ts.html +0 -373
- package/backend/coverage/lcov-report/packages/gemini-core/src/mcp/token-storage/index.html +0 -191
- package/backend/coverage/lcov-report/packages/gemini-core/src/mcp/token-storage/index.ts.html +0 -124
- package/backend/coverage/lcov-report/packages/gemini-core/src/mcp/token-storage/keychain-token-storage.ts.html +0 -835
- package/backend/coverage/lcov-report/packages/gemini-core/src/mcp/token-storage/types.ts.html +0 -211
- package/backend/coverage/lcov-report/packages/gemini-core/src/utils/errors.ts.html +0 -421
- package/backend/coverage/lcov-report/packages/gemini-core/src/utils/index.html +0 -191
- package/backend/coverage/lcov-report/packages/gemini-core/src/utils/partUtils.ts.html +0 -592
- package/backend/coverage/lcov-report/packages/gemini-core/src/utils/quotaErrorDetection.ts.html +0 -388
- package/backend/coverage/lcov-report/packages/gemini-core/src/utils/retry.ts.html +0 -877
- package/backend/coverage/lcov-report/packages/gemini-core/src/utils/session.ts.html +0 -112
- package/backend/coverage/lcov-report/packages/gemini-core/src/utils/userAccountManager.ts.html +0 -502
- package/backend/coverage/lcov-report/packages/tokenpatch/index.html +0 -161
- package/backend/coverage/lcov-report/packages/tokenpatch/index.ts.html +0 -415
- package/backend/coverage/lcov-report/packages/tokenpatch/parser.ts.html +0 -139
- package/backend/coverage/lcov-report/packages/tokenpatch/patcher.ts.html +0 -1249
- package/backend/coverage/lcov-report/packages/tokenpatch/strategies/index.html +0 -131
- package/backend/coverage/lcov-report/packages/tokenpatch/strategies/tiktoken-tokenizer.ts.html +0 -187
- package/backend/coverage/lcov-report/packages/tokenpatch/strategies/tree-sitter-tokenizer.ts.html +0 -193
- package/backend/coverage/lcov-report/packages/tokenpatch/tokens.ts.html +0 -178
- package/backend/coverage/lcov-report/prettify.css +0 -1
- package/backend/coverage/lcov-report/prettify.js +0 -2
- package/backend/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/backend/coverage/lcov-report/sorter.js +0 -210
- package/backend/coverage/lcov-report/src/ai-actions/ai-action-batch.service.ts.html +0 -1549
- package/backend/coverage/lcov-report/src/ai-actions/ai-actions.controller.ts.html +0 -904
- package/backend/coverage/lcov-report/src/ai-actions/ai-actions.module.ts.html +0 -175
- package/backend/coverage/lcov-report/src/ai-actions/ai-actions.service.ts.html +0 -1534
- package/backend/coverage/lcov-report/src/ai-actions/index.html +0 -161
- package/backend/coverage/lcov-report/src/app.controller.ts.html +0 -151
- package/backend/coverage/lcov-report/src/app.module.ts.html +0 -451
- package/backend/coverage/lcov-report/src/app.service.ts.html +0 -163
- package/backend/coverage/lcov-report/src/application-state/application-state.controller.ts.html +0 -1609
- package/backend/coverage/lcov-report/src/application-state/application-state.module.ts.html +0 -136
- package/backend/coverage/lcov-report/src/application-state/application-state.service.ts.html +0 -2281
- package/backend/coverage/lcov-report/src/application-state/dto/index.html +0 -416
- package/backend/coverage/lcov-report/src/application-state/dto/set-alibaba-config.dto.ts.html +0 -109
- package/backend/coverage/lcov-report/src/application-state/dto/set-auto-context-fetch-enabled.dto.ts.html +0 -118
- package/backend/coverage/lcov-report/src/application-state/dto/set-auto-send-to-ai-studio-enabled.dto.ts.html +0 -109
- package/backend/coverage/lcov-report/src/application-state/dto/set-context-token-limit.dto.ts.html +0 -124
- package/backend/coverage/lcov-report/src/application-state/dto/set-execution-strategy.dto.ts.html +0 -121
- package/backend/coverage/lcov-report/src/application-state/dto/set-followup-token-limit.dto.ts.html +0 -124
- package/backend/coverage/lcov-report/src/application-state/dto/set-history-compression-enabled.dto.ts.html +0 -115
- package/backend/coverage/lcov-report/src/application-state/dto/set-llm-retry-enabled.dto.ts.html +0 -115
- package/backend/coverage/lcov-report/src/application-state/dto/set-llm-retry-max-attempts.dto.ts.html +0 -127
- package/backend/coverage/lcov-report/src/application-state/dto/set-manual-llm-enabled.dto.ts.html +0 -118
- package/backend/coverage/lcov-report/src/application-state/dto/set-ollama-config.dto.ts.html +0 -109
- package/backend/coverage/lcov-report/src/application-state/dto/set-openai-config.dto.ts.html +0 -139
- package/backend/coverage/lcov-report/src/application-state/dto/set-openrouter-config.dto.ts.html +0 -109
- package/backend/coverage/lcov-report/src/application-state/dto/set-streaming-enabled.dto.ts.html +0 -109
- package/backend/coverage/lcov-report/src/application-state/dto/set-syntax-validation-enabled.dto.ts.html +0 -118
- package/backend/coverage/lcov-report/src/application-state/dto/set-theme.dto.ts.html +0 -124
- package/backend/coverage/lcov-report/src/application-state/dto/set-tools-enabled.dto.ts.html +0 -118
- package/backend/coverage/lcov-report/src/application-state/dto/set-websocket-enabled.dto.ts.html +0 -109
- package/backend/coverage/lcov-report/src/application-state/dto/set-yolo-mode-message.dto.ts.html +0 -124
- package/backend/coverage/lcov-report/src/application-state/dto/set-yolo-mode.dto.ts.html +0 -118
- package/backend/coverage/lcov-report/src/application-state/dto/set-zai-config.dto.ts.html +0 -109
- package/backend/coverage/lcov-report/src/application-state/index.html +0 -146
- package/backend/coverage/lcov-report/src/common/cache/cache-invalidation.service.ts.html +0 -1297
- package/backend/coverage/lcov-report/src/common/cache/cache-invalidation.subscriber.ts.html +0 -712
- package/backend/coverage/lcov-report/src/common/cache/etag-cache.service.ts.html +0 -379
- package/backend/coverage/lcov-report/src/common/cache/index.html +0 -146
- package/backend/coverage/lcov-report/src/common/common.module.ts.html +0 -121
- package/backend/coverage/lcov-report/src/common/index.html +0 -116
- package/backend/coverage/lcov-report/src/common/interceptors/etag-cache.interceptor.ts.html +0 -337
- package/backend/coverage/lcov-report/src/common/interceptors/index.html +0 -116
- package/backend/coverage/lcov-report/src/common/middleware/cache.middleware.ts.html +0 -265
- package/backend/coverage/lcov-report/src/common/middleware/index.html +0 -116
- package/backend/coverage/lcov-report/src/context-generation/context-generation.module.ts.html +0 -118
- package/backend/coverage/lcov-report/src/context-generation/context-generation.service.ts.html +0 -1501
- package/backend/coverage/lcov-report/src/context-generation/index.html +0 -131
- package/backend/coverage/lcov-report/src/context-snippets/context-snippets.controller.ts.html +0 -427
- package/backend/coverage/lcov-report/src/context-snippets/context-snippets.module.ts.html +0 -142
- package/backend/coverage/lcov-report/src/context-snippets/context-snippets.service.ts.html +0 -442
- package/backend/coverage/lcov-report/src/context-snippets/dto/context-snippet.dto.ts.html +0 -211
- package/backend/coverage/lcov-report/src/context-snippets/dto/index.html +0 -116
- package/backend/coverage/lcov-report/src/context-snippets/index.html +0 -146
- package/backend/coverage/lcov-report/src/context-templates/context-templates.controller.ts.html +0 -724
- package/backend/coverage/lcov-report/src/context-templates/context-templates.module.ts.html +0 -142
- package/backend/coverage/lcov-report/src/context-templates/context-templates.service.ts.html +0 -1015
- package/backend/coverage/lcov-report/src/context-templates/dto/context-template.dto.ts.html +0 -511
- package/backend/coverage/lcov-report/src/context-templates/dto/index.html +0 -116
- package/backend/coverage/lcov-report/src/context-templates/index.html +0 -146
- package/backend/coverage/lcov-report/src/core-entities/ai-action.entity.ts.html +0 -613
- package/backend/coverage/lcov-report/src/core-entities/application-state.entity.ts.html +0 -124
- package/backend/coverage/lcov-report/src/core-entities/base.entity.ts.html +0 -211
- package/backend/coverage/lcov-report/src/core-entities/context-snippet.entity.ts.html +0 -190
- package/backend/coverage/lcov-report/src/core-entities/context-template.entity.ts.html +0 -439
- package/backend/coverage/lcov-report/src/core-entities/custom-snippet.entity.ts.html +0 -205
- package/backend/coverage/lcov-report/src/core-entities/custom-variable.entity.ts.html +0 -241
- package/backend/coverage/lcov-report/src/core-entities/enums.ts.html +0 -553
- package/backend/coverage/lcov-report/src/core-entities/execution-log.entity.ts.html +0 -208
- package/backend/coverage/lcov-report/src/core-entities/index.html +0 -371
- package/backend/coverage/lcov-report/src/core-entities/index.ts.html +0 -136
- package/backend/coverage/lcov-report/src/core-entities/llm-call-log.entity.ts.html +0 -388
- package/backend/coverage/lcov-report/src/core-entities/mcp-config.entity.ts.html +0 -256
- package/backend/coverage/lcov-report/src/core-entities/mcp-tool.entity.ts.html +0 -256
- package/backend/coverage/lcov-report/src/core-entities/project.entity.ts.html +0 -181
- package/backend/coverage/lcov-report/src/core-entities/session-input.entity.ts.html +0 -745
- package/backend/coverage/lcov-report/src/core-entities/session.entity.ts.html +0 -688
- package/backend/coverage/lcov-report/src/core-entities/system-prompt.entity.ts.html +0 -349
- package/backend/coverage/lcov-report/src/core-entities/tool-hook.entity.ts.html +0 -235
- package/backend/coverage/lcov-report/src/custom-snippets/custom-snippets.controller.ts.html +0 -442
- package/backend/coverage/lcov-report/src/custom-snippets/custom-snippets.module.ts.html +0 -124
- package/backend/coverage/lcov-report/src/custom-snippets/custom-snippets.service.ts.html +0 -304
- package/backend/coverage/lcov-report/src/custom-snippets/dto/custom-snippet.dto.ts.html +0 -205
- package/backend/coverage/lcov-report/src/custom-snippets/dto/index.html +0 -116
- package/backend/coverage/lcov-report/src/custom-snippets/index.html +0 -146
- package/backend/coverage/lcov-report/src/custom-variables/custom-variables.controller.ts.html +0 -463
- package/backend/coverage/lcov-report/src/custom-variables/custom-variables.module.ts.html +0 -124
- package/backend/coverage/lcov-report/src/custom-variables/custom-variables.service.ts.html +0 -310
- package/backend/coverage/lcov-report/src/custom-variables/dto/custom-variable.dto.ts.html +0 -244
- package/backend/coverage/lcov-report/src/custom-variables/dto/index.html +0 -116
- package/backend/coverage/lcov-report/src/custom-variables/index.html +0 -146
- package/backend/coverage/lcov-report/src/events/events.gateway.ts.html +0 -295
- package/backend/coverage/lcov-report/src/events/events.module.ts.html +0 -109
- package/backend/coverage/lcov-report/src/events/index.html +0 -146
- package/backend/coverage/lcov-report/src/events/websocket.events.ts.html +0 -466
- package/backend/coverage/lcov-report/src/execution-logs/dto/execution-log.dto.ts.html +0 -130
- package/backend/coverage/lcov-report/src/execution-logs/dto/index.html +0 -116
- package/backend/coverage/lcov-report/src/execution-logs/execution-logs.controller.ts.html +0 -130
- package/backend/coverage/lcov-report/src/execution-logs/execution-logs.module.ts.html +0 -124
- package/backend/coverage/lcov-report/src/execution-logs/execution-logs.service.ts.html +0 -238
- package/backend/coverage/lcov-report/src/execution-logs/index.html +0 -146
- package/backend/coverage/lcov-report/src/gemini/gemini-llm.provider.ts.html +0 -553
- package/backend/coverage/lcov-report/src/gemini/gemini.module.ts.html +0 -109
- package/backend/coverage/lcov-report/src/gemini/index.html +0 -131
- package/backend/coverage/lcov-report/src/global-config/dto/index.html +0 -116
- package/backend/coverage/lcov-report/src/global-config/dto/update-global-config.dto.ts.html +0 -367
- package/backend/coverage/lcov-report/src/global-config/global-config.controller.ts.html +0 -220
- package/backend/coverage/lcov-report/src/global-config/global-config.module.ts.html +0 -115
- package/backend/coverage/lcov-report/src/global-config/global-config.service.ts.html +0 -397
- package/backend/coverage/lcov-report/src/global-config/index.html +0 -146
- package/backend/coverage/lcov-report/src/http-exception.filter.ts.html +0 -340
- package/backend/coverage/lcov-report/src/index.html +0 -206
- package/backend/coverage/lcov-report/src/interactive-chat/chat.module.ts.html +0 -187
- package/backend/coverage/lcov-report/src/interactive-chat/chat.service.ts.html +0 -1825
- package/backend/coverage/lcov-report/src/interactive-chat/index.html +0 -146
- package/backend/coverage/lcov-report/src/interactive-chat/streaming.controller.ts.html +0 -343
- package/backend/coverage/lcov-report/src/llm-call-logs/dto/index.html +0 -116
- package/backend/coverage/lcov-report/src/llm-call-logs/dto/llm-call-log.dto.ts.html +0 -214
- package/backend/coverage/lcov-report/src/llm-call-logs/index.html +0 -146
- package/backend/coverage/lcov-report/src/llm-call-logs/llm-call-logs.controller.ts.html +0 -634
- package/backend/coverage/lcov-report/src/llm-call-logs/llm-call-logs.module.ts.html +0 -124
- package/backend/coverage/lcov-report/src/llm-call-logs/llm-call-logs.service.ts.html +0 -643
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/apply-diff.handler.ts.html +0 -1090
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/ask-user.handler.ts.html +0 -433
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/create-file.handler.ts.html +0 -757
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/delete-file.handler.ts.html +0 -586
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/discard-messages.handler.ts.html +0 -1153
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/dto/apply-diff.args.dto.ts.html +0 -124
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/dto/ask-user.args.dto.ts.html +0 -103
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/dto/create-file.args.dto.ts.html +0 -124
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/dto/delete-file.args.dto.ts.html +0 -106
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/dto/execute-code.args.dto.ts.html +0 -106
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/dto/final.args.dto.ts.html +0 -118
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/dto/generate-title.args.dto.ts.html +0 -190
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/dto/get-session-history.args.dto.ts.html +0 -196
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/dto/howto.args.dto.ts.html +0 -91
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/dto/index.html +0 -356
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/dto/new-session.args.dto.ts.html +0 -106
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/dto/overwrite-file.args.dto.ts.html +0 -124
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/dto/patch.args.dto.ts.html +0 -124
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/dto/quick-edit.args.dto.ts.html +0 -214
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/dto/request-context.args.dto.ts.html +0 -202
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/dto/run-command.args.dto.ts.html +0 -151
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/dto/sanitizer.decorator.ts.html +0 -181
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/dto/write-todo.args.dto.ts.html +0 -130
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/execute-code.handler.ts.html +0 -631
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/final.handler.ts.html +0 -469
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/generate-title.handler.ts.html +0 -448
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/get-messages.handler.ts.html +0 -1351
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/get-session-history.handler.ts.html +0 -868
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/howto.handler.ts.html +0 -481
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/index.html +0 -416
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/invoke-subagent.handler.ts.html +0 -580
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/list-sub-agents.handler.ts.html +0 -352
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/matchers/context-aware.matcher.ts.html +0 -1054
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/matchers/exact.matcher.ts.html +0 -331
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/matchers/hybrid.matcher.ts.html +0 -403
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/matchers/index.html +0 -176
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/matchers/index.ts.html +0 -100
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/matchers/normalized.matcher.ts.html +0 -724
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/mcp-tool-action.handler.ts.html +0 -358
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/new-session.handler.ts.html +0 -379
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/overwrite-file.handler.ts.html +0 -838
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/patch.handler.ts.html +0 -1702
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/quick-edit.handler.ts.html +0 -1459
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/request-context.handler.ts.html +0 -679
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/run-command.handler.ts.html +0 -964
- package/backend/coverage/lcov-report/src/llm-orchestration/action-handlers/write-todo.handler.ts.html +0 -625
- package/backend/coverage/lcov-report/src/llm-orchestration/errors/handler-validation.error.ts.html +0 -103
- package/backend/coverage/lcov-report/src/llm-orchestration/errors/index.html +0 -116
- package/backend/coverage/lcov-report/src/llm-orchestration/history-compression.service.ts.html +0 -1645
- package/backend/coverage/lcov-report/src/llm-orchestration/hooks/follow-up-post-execution.hook.ts.html +0 -238
- package/backend/coverage/lcov-report/src/llm-orchestration/hooks/frontend-notification.hook.ts.html +0 -181
- package/backend/coverage/lcov-report/src/llm-orchestration/hooks/index.html +0 -161
- package/backend/coverage/lcov-report/src/llm-orchestration/hooks/invalid-tool-feedback.hook.ts.html +0 -313
- package/backend/coverage/lcov-report/src/llm-orchestration/hooks/yolo-mode-post-execution.hook.ts.html +0 -466
- package/backend/coverage/lcov-report/src/llm-orchestration/index.html +0 -176
- package/backend/coverage/lcov-report/src/llm-orchestration/llm-orchestration.interfaces.ts.html +0 -319
- package/backend/coverage/lcov-report/src/llm-orchestration/llm-orchestration.module.ts.html +0 -706
- package/backend/coverage/lcov-report/src/llm-orchestration/llm-turn-processor.service.ts.html +0 -1150
- package/backend/coverage/lcov-report/src/llm-orchestration/parser/index.html +0 -131
- package/backend/coverage/lcov-report/src/llm-orchestration/parser/llm-output-parser.service.ts.html +0 -658
- package/backend/coverage/lcov-report/src/llm-orchestration/parser/parsing.constants.ts.html +0 -127
- package/backend/coverage/lcov-report/src/llm-orchestration/tool-schema.service.ts.html +0 -547
- package/backend/coverage/lcov-report/src/llm-provider/alibaba-llm.provider.ts.html +0 -1681
- package/backend/coverage/lcov-report/src/llm-provider/index.html +0 -236
- package/backend/coverage/lcov-report/src/llm-provider/llm-provider.controller.ts.html +0 -187
- package/backend/coverage/lcov-report/src/llm-provider/llm-provider.interface.ts.html +0 -361
- package/backend/coverage/lcov-report/src/llm-provider/llm-provider.module.ts.html +0 -175
- package/backend/coverage/lcov-report/src/llm-provider/ollama-llm.provider.ts.html +0 -1780
- package/backend/coverage/lcov-report/src/llm-provider/openai-llm.provider.ts.html +0 -1867
- package/backend/coverage/lcov-report/src/llm-provider/openrouter-llm.provider.ts.html +0 -1891
- package/backend/coverage/lcov-report/src/llm-provider/proxy-llm.provider.ts.html +0 -304
- package/backend/coverage/lcov-report/src/llm-provider/zai-llm.provider.ts.html +0 -1666
- package/backend/coverage/lcov-report/src/llm-responses/dto/index.html +0 -131
- package/backend/coverage/lcov-report/src/llm-responses/dto/submit-llm-response.dto.ts.html +0 -436
- package/backend/coverage/lcov-report/src/llm-responses/dto/sync-conversation.dto.ts.html +0 -319
- package/backend/coverage/lcov-report/src/llm-responses/index.html +0 -146
- package/backend/coverage/lcov-report/src/llm-responses/llm-responses.controller.ts.html +0 -283
- package/backend/coverage/lcov-report/src/llm-responses/llm-responses.module.ts.html +0 -184
- package/backend/coverage/lcov-report/src/llm-responses/llm-responses.service.ts.html +0 -1474
- package/backend/coverage/lcov-report/src/main.ts.html +0 -463
- package/backend/coverage/lcov-report/src/mcp/dto/batch-update-mcp-tools.dto.ts.html +0 -145
- package/backend/coverage/lcov-report/src/mcp/dto/create-mcp-config.dto.ts.html +0 -127
- package/backend/coverage/lcov-report/src/mcp/dto/index.html +0 -146
- package/backend/coverage/lcov-report/src/mcp/dto/update-mcp-config.dto.ts.html +0 -112
- package/backend/coverage/lcov-report/src/mcp/index.html +0 -146
- package/backend/coverage/lcov-report/src/mcp/mcp.controller.ts.html +0 -340
- package/backend/coverage/lcov-report/src/mcp/mcp.module.ts.html +0 -124
- package/backend/coverage/lcov-report/src/mcp/mcp.service.ts.html +0 -1345
- package/backend/coverage/lcov-report/src/message-bus/dto/index.html +0 -116
- package/backend/coverage/lcov-report/src/message-bus/dto/submit-message.dto.ts.html +0 -109
- package/backend/coverage/lcov-report/src/message-bus/index.html +0 -146
- package/backend/coverage/lcov-report/src/message-bus/message-bus.controller.ts.html +0 -148
- package/backend/coverage/lcov-report/src/message-bus/message-bus.module.ts.html +0 -115
- package/backend/coverage/lcov-report/src/message-bus/message-bus.service.ts.html +0 -151
- package/backend/coverage/lcov-report/src/projects/dto/index.html +0 -116
- package/backend/coverage/lcov-report/src/projects/dto/project.dto.ts.html +0 -196
- package/backend/coverage/lcov-report/src/projects/index.html +0 -146
- package/backend/coverage/lcov-report/src/projects/projects.controller.ts.html +0 -322
- package/backend/coverage/lcov-report/src/projects/projects.module.ts.html +0 -124
- package/backend/coverage/lcov-report/src/projects/projects.service.ts.html +0 -235
- package/backend/coverage/lcov-report/src/seeding/context-snippet-seeding.service.ts.html +0 -280
- package/backend/coverage/lcov-report/src/seeding/context-template-seeding.service.ts.html +0 -439
- package/backend/coverage/lcov-report/src/seeding/custom-snippet-seeding.service.ts.html +0 -271
- package/backend/coverage/lcov-report/src/seeding/custom-variable-seeding.service.ts.html +0 -271
- package/backend/coverage/lcov-report/src/seeding/data/context-snippets/compress.ts.html +0 -172
- package/backend/coverage/lcov-report/src/seeding/data/context-snippets/index.html +0 -116
- package/backend/coverage/lcov-report/src/seeding/data/context-templates/default-followup_ad-hoc-focused-context.ts.html +0 -157
- package/backend/coverage/lcov-report/src/seeding/data/context-templates/default-initial_condensed-project-context.ts.html +0 -148
- package/backend/coverage/lcov-report/src/seeding/data/context-templates/default-initial_full-project-context.ts.html +0 -151
- package/backend/coverage/lcov-report/src/seeding/data/context-templates/index.html +0 -161
- package/backend/coverage/lcov-report/src/seeding/data/context-templates/open-pr-command.ts.html +0 -247
- package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/default_rglob.ts.html +0 -94
- package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/eta-for.ts.html +0 -100
- package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/eta-if.ts.html +0 -97
- package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/eta-ifelse.ts.html +0 -100
- package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/everest-playwright-auth.ts.html +0 -304
- package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/git-diff.ts.html +0 -94
- package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/index.html +0 -341
- package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/it-mcp.ts.html +0 -100
- package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/it-tools.ts.html +0 -97
- package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/rg-exclude.ts.html +0 -94
- package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/rg-search-glob.ts.html +0 -94
- package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/rg-search.ts.html +0 -94
- package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/run-command.ts.html +0 -94
- package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/tree.ts.html +0 -94
- package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/usr-adhoc-incl.ts.html +0 -100
- package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/usr-cmd-output-incl.ts.html +0 -94
- package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/usr-input-incl.ts.html +0 -94
- package/backend/coverage/lcov-report/src/seeding/data/custom-variables/default-auto-execute-code.ts.html +0 -94
- package/backend/coverage/lcov-report/src/seeding/data/custom-variables/default-plan-mode.ts.html +0 -97
- package/backend/coverage/lcov-report/src/seeding/data/custom-variables/index.html +0 -131
- package/backend/coverage/lcov-report/src/seeding/data/mcp-configs/default-configs.ts.html +0 -121
- package/backend/coverage/lcov-report/src/seeding/data/mcp-configs/index.html +0 -116
- package/backend/coverage/lcov-report/src/seeding/data/sub-agents/browser-use.ts.html +0 -115
- package/backend/coverage/lcov-report/src/seeding/data/sub-agents/explore-codebase.ts.html +0 -136
- package/backend/coverage/lcov-report/src/seeding/data/sub-agents/index.html +0 -131
- package/backend/coverage/lcov-report/src/seeding/data/system-prompts/browser-use-agent.ts.html +0 -190
- package/backend/coverage/lcov-report/src/seeding/data/system-prompts/default_native_tool_agent.ts.html +0 -421
- package/backend/coverage/lcov-report/src/seeding/data/system-prompts/explore-codebase-agent.ts.html +0 -265
- package/backend/coverage/lcov-report/src/seeding/data/system-prompts/index.html +0 -161
- package/backend/coverage/lcov-report/src/seeding/data/system-prompts/master-agent.ts.html +0 -388
- package/backend/coverage/lcov-report/src/seeding/data/tool-hooks/eslint-hook.ts.html +0 -265
- package/backend/coverage/lcov-report/src/seeding/data/tool-hooks/example-hook.ts.html +0 -274
- package/backend/coverage/lcov-report/src/seeding/data/tool-hooks/index.html +0 -146
- package/backend/coverage/lcov-report/src/seeding/data/tool-hooks/readme.ts.html +0 -250
- package/backend/coverage/lcov-report/src/seeding/index.html +0 -236
- package/backend/coverage/lcov-report/src/seeding/mcp-config-seeding.service.ts.html +0 -193
- package/backend/coverage/lcov-report/src/seeding/seeding.module.ts.html +0 -211
- package/backend/coverage/lcov-report/src/seeding/seeding.service.ts.html +0 -187
- package/backend/coverage/lcov-report/src/seeding/sub-agent-seeding.service.ts.html +0 -742
- package/backend/coverage/lcov-report/src/seeding/system-prompt-seeding.service.ts.html +0 -397
- package/backend/coverage/lcov-report/src/session-followup/index.html +0 -131
- package/backend/coverage/lcov-report/src/session-followup/session-followup.module.ts.html +0 -130
- package/backend/coverage/lcov-report/src/session-followup/session-followup.service.ts.html +0 -718
- package/backend/coverage/lcov-report/src/session-inputs/dto/index.html +0 -116
- package/backend/coverage/lcov-report/src/session-inputs/dto/session-input.dto.ts.html +0 -577
- package/backend/coverage/lcov-report/src/session-inputs/index.html +0 -176
- package/backend/coverage/lcov-report/src/session-inputs/session-input-context.service.ts.html +0 -832
- package/backend/coverage/lcov-report/src/session-inputs/session-input.subscriber.ts.html +0 -220
- package/backend/coverage/lcov-report/src/session-inputs/session-inputs.controller.ts.html +0 -685
- package/backend/coverage/lcov-report/src/session-inputs/session-inputs.module.ts.html +0 -229
- package/backend/coverage/lcov-report/src/session-inputs/session-inputs.service.ts.html +0 -1981
- package/backend/coverage/lcov-report/src/session-transfer/index.html +0 -131
- package/backend/coverage/lcov-report/src/session-transfer/session-transfer.module.ts.html +0 -160
- package/backend/coverage/lcov-report/src/session-transfer/session-transfer.service.ts.html +0 -883
- package/backend/coverage/lcov-report/src/sessions/dto/index.html +0 -116
- package/backend/coverage/lcov-report/src/sessions/dto/session.dto.ts.html +0 -769
- package/backend/coverage/lcov-report/src/sessions/index.html +0 -146
- package/backend/coverage/lcov-report/src/sessions/sessions.controller.ts.html +0 -1306
- package/backend/coverage/lcov-report/src/sessions/sessions.module.ts.html +0 -220
- package/backend/coverage/lcov-report/src/sessions/sessions.service.ts.html +0 -2797
- package/backend/coverage/lcov-report/src/sub-agents/dto/create-sub-agent.dto.ts.html +0 -355
- package/backend/coverage/lcov-report/src/sub-agents/dto/index.html +0 -131
- package/backend/coverage/lcov-report/src/sub-agents/dto/update-sub-agent.dto.ts.html +0 -295
- package/backend/coverage/lcov-report/src/sub-agents/index.html +0 -221
- package/backend/coverage/lcov-report/src/sub-agents/sub-agent-run.entity.ts.html +0 -463
- package/backend/coverage/lcov-report/src/sub-agents/sub-agent-runner.service.ts.html +0 -2428
- package/backend/coverage/lcov-report/src/sub-agents/sub-agent-runs.controller.ts.html +0 -580
- package/backend/coverage/lcov-report/src/sub-agents/sub-agent-runs.service.ts.html +0 -550
- package/backend/coverage/lcov-report/src/sub-agents/sub-agent.entity.ts.html +0 -475
- package/backend/coverage/lcov-report/src/sub-agents/sub-agents.controller.ts.html +0 -373
- package/backend/coverage/lcov-report/src/sub-agents/sub-agents.module.ts.html +0 -205
- package/backend/coverage/lcov-report/src/sub-agents/sub-agents.service.ts.html +0 -619
- package/backend/coverage/lcov-report/src/syntax-validation/index.html +0 -131
- package/backend/coverage/lcov-report/src/syntax-validation/syntax-validation.module.ts.html +0 -109
- package/backend/coverage/lcov-report/src/syntax-validation/syntax-validation.service.ts.html +0 -724
- package/backend/coverage/lcov-report/src/system-prompts/dto/index.html +0 -176
- package/backend/coverage/lcov-report/src/system-prompts/dto/set-enabled-mcp-tools.dto.ts.html +0 -157
- package/backend/coverage/lcov-report/src/system-prompts/dto/set-enabled-tools.dto.ts.html +0 -148
- package/backend/coverage/lcov-report/src/system-prompts/dto/system-prompt.dto.ts.html +0 -517
- package/backend/coverage/lcov-report/src/system-prompts/dto/toggle-mcp-tool.dto.ts.html +0 -121
- package/backend/coverage/lcov-report/src/system-prompts/dto/toggle-tool.dto.ts.html +0 -118
- package/backend/coverage/lcov-report/src/system-prompts/index.html +0 -146
- package/backend/coverage/lcov-report/src/system-prompts/system-prompts.controller.ts.html +0 -1060
- package/backend/coverage/lcov-report/src/system-prompts/system-prompts.module.ts.html +0 -160
- package/backend/coverage/lcov-report/src/system-prompts/system-prompts.service.ts.html +0 -2254
- package/backend/coverage/lcov-report/src/timeout.interceptor.ts.html +0 -178
- package/backend/coverage/lcov-report/src/tool-hooks/dto/create-tool-hook.dto.ts.html +0 -181
- package/backend/coverage/lcov-report/src/tool-hooks/dto/index.html +0 -131
- package/backend/coverage/lcov-report/src/tool-hooks/dto/update-tool-hook.dto.ts.html +0 -178
- package/backend/coverage/lcov-report/src/tool-hooks/index.html +0 -146
- package/backend/coverage/lcov-report/src/tool-hooks/tool-hooks.controller.ts.html +0 -481
- package/backend/coverage/lcov-report/src/tool-hooks/tool-hooks.module.ts.html +0 -127
- package/backend/coverage/lcov-report/src/tool-hooks/tool-hooks.service.ts.html +0 -1222
- package/backend/coverage/lcov-report/src/tracing.ts.html +0 -214
- package/backend/coverage/lcov-report/src/types/express-multer.d.ts.html +0 -130
- package/backend/coverage/lcov-report/src/types/index.html +0 -116
- package/backend/coverage/lcov-report/src/utils/ai-format-generator.ts.html +0 -253
- package/backend/coverage/lcov-report/src/utils/fuzzy-search.ts.html +0 -310
- package/backend/coverage/lcov-report/src/utils/index.html +0 -191
- package/backend/coverage/lcov-report/src/utils/index.ts.html +0 -100
- package/backend/coverage/lcov-report/src/utils/short-id.ts.html +0 -109
- package/backend/coverage/lcov-report/src/utils/spawn-with-kill.ts.html +0 -412
- package/backend/coverage/lcov-report/src/utils/trace.decorator.ts.html +0 -223
- package/backend/coverage/lcov-report/src/visual-editor/index.html +0 -146
- package/backend/coverage/lcov-report/src/visual-editor/visual-editor.controller.ts.html +0 -409
- package/backend/coverage/lcov-report/src/visual-editor/visual-editor.dto.ts.html +0 -130
- package/backend/coverage/lcov-report/src/visual-editor/visual-editor.module.ts.html +0 -118
- package/backend/coverage/lcov-report/src/workspace/dto/file-tree.dto.ts.html +0 -112
- package/backend/coverage/lcov-report/src/workspace/dto/index.html +0 -131
- package/backend/coverage/lcov-report/src/workspace/dto/search-workspace.dto.ts.html +0 -193
- package/backend/coverage/lcov-report/src/workspace/index.html +0 -146
- package/backend/coverage/lcov-report/src/workspace/workspace.controller.ts.html +0 -394
- package/backend/coverage/lcov-report/src/workspace/workspace.module.ts.html +0 -121
- package/backend/coverage/lcov-report/src/workspace/workspace.service.ts.html +0 -1027
- package/backend/coverage/lcov.info +0 -20220
- package/backend/packages/tokenpatch/CODEMAP.md +0 -25
- package/daemon/CODEMAP.md +0 -23
- package/visual-editor-proxy/CODEMAP.md +0 -21
|
@@ -1,1981 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
<!doctype html>
|
|
3
|
-
<html lang="en">
|
|
4
|
-
|
|
5
|
-
<head>
|
|
6
|
-
<title>Code coverage report for src/session-inputs/session-inputs.service.ts</title>
|
|
7
|
-
<meta charset="utf-8" />
|
|
8
|
-
<link rel="stylesheet" href="../../prettify.css" />
|
|
9
|
-
<link rel="stylesheet" href="../../base.css" />
|
|
10
|
-
<link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
|
|
11
|
-
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
12
|
-
<style type='text/css'>
|
|
13
|
-
.coverage-summary .sorter {
|
|
14
|
-
background-image: url(../../sort-arrow-sprite.png);
|
|
15
|
-
}
|
|
16
|
-
</style>
|
|
17
|
-
</head>
|
|
18
|
-
|
|
19
|
-
<body>
|
|
20
|
-
<div class='wrapper'>
|
|
21
|
-
<div class='pad1'>
|
|
22
|
-
<h1><a href="../../index.html">All files</a> / <a href="index.html">src/session-inputs</a> session-inputs.service.ts</h1>
|
|
23
|
-
<div class='clearfix'>
|
|
24
|
-
|
|
25
|
-
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">63.95% </span>
|
|
27
|
-
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>126/197</span>
|
|
29
|
-
</div>
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">54.09% </span>
|
|
34
|
-
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>33/61</span>
|
|
36
|
-
</div>
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">62.06% </span>
|
|
41
|
-
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>18/29</span>
|
|
43
|
-
</div>
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">63.54% </span>
|
|
48
|
-
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>122/192</span>
|
|
50
|
-
</div>
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
</div>
|
|
54
|
-
<p class="quiet">
|
|
55
|
-
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
|
56
|
-
</p>
|
|
57
|
-
<template id="filterTemplate">
|
|
58
|
-
<div class="quiet">
|
|
59
|
-
Filter:
|
|
60
|
-
<input type="search" id="fileSearch">
|
|
61
|
-
</div>
|
|
62
|
-
</template>
|
|
63
|
-
</div>
|
|
64
|
-
<div class='status-line medium'></div>
|
|
65
|
-
<pre><table class="coverage">
|
|
66
|
-
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
67
|
-
<a name='L2'></a><a href='#L2'>2</a>
|
|
68
|
-
<a name='L3'></a><a href='#L3'>3</a>
|
|
69
|
-
<a name='L4'></a><a href='#L4'>4</a>
|
|
70
|
-
<a name='L5'></a><a href='#L5'>5</a>
|
|
71
|
-
<a name='L6'></a><a href='#L6'>6</a>
|
|
72
|
-
<a name='L7'></a><a href='#L7'>7</a>
|
|
73
|
-
<a name='L8'></a><a href='#L8'>8</a>
|
|
74
|
-
<a name='L9'></a><a href='#L9'>9</a>
|
|
75
|
-
<a name='L10'></a><a href='#L10'>10</a>
|
|
76
|
-
<a name='L11'></a><a href='#L11'>11</a>
|
|
77
|
-
<a name='L12'></a><a href='#L12'>12</a>
|
|
78
|
-
<a name='L13'></a><a href='#L13'>13</a>
|
|
79
|
-
<a name='L14'></a><a href='#L14'>14</a>
|
|
80
|
-
<a name='L15'></a><a href='#L15'>15</a>
|
|
81
|
-
<a name='L16'></a><a href='#L16'>16</a>
|
|
82
|
-
<a name='L17'></a><a href='#L17'>17</a>
|
|
83
|
-
<a name='L18'></a><a href='#L18'>18</a>
|
|
84
|
-
<a name='L19'></a><a href='#L19'>19</a>
|
|
85
|
-
<a name='L20'></a><a href='#L20'>20</a>
|
|
86
|
-
<a name='L21'></a><a href='#L21'>21</a>
|
|
87
|
-
<a name='L22'></a><a href='#L22'>22</a>
|
|
88
|
-
<a name='L23'></a><a href='#L23'>23</a>
|
|
89
|
-
<a name='L24'></a><a href='#L24'>24</a>
|
|
90
|
-
<a name='L25'></a><a href='#L25'>25</a>
|
|
91
|
-
<a name='L26'></a><a href='#L26'>26</a>
|
|
92
|
-
<a name='L27'></a><a href='#L27'>27</a>
|
|
93
|
-
<a name='L28'></a><a href='#L28'>28</a>
|
|
94
|
-
<a name='L29'></a><a href='#L29'>29</a>
|
|
95
|
-
<a name='L30'></a><a href='#L30'>30</a>
|
|
96
|
-
<a name='L31'></a><a href='#L31'>31</a>
|
|
97
|
-
<a name='L32'></a><a href='#L32'>32</a>
|
|
98
|
-
<a name='L33'></a><a href='#L33'>33</a>
|
|
99
|
-
<a name='L34'></a><a href='#L34'>34</a>
|
|
100
|
-
<a name='L35'></a><a href='#L35'>35</a>
|
|
101
|
-
<a name='L36'></a><a href='#L36'>36</a>
|
|
102
|
-
<a name='L37'></a><a href='#L37'>37</a>
|
|
103
|
-
<a name='L38'></a><a href='#L38'>38</a>
|
|
104
|
-
<a name='L39'></a><a href='#L39'>39</a>
|
|
105
|
-
<a name='L40'></a><a href='#L40'>40</a>
|
|
106
|
-
<a name='L41'></a><a href='#L41'>41</a>
|
|
107
|
-
<a name='L42'></a><a href='#L42'>42</a>
|
|
108
|
-
<a name='L43'></a><a href='#L43'>43</a>
|
|
109
|
-
<a name='L44'></a><a href='#L44'>44</a>
|
|
110
|
-
<a name='L45'></a><a href='#L45'>45</a>
|
|
111
|
-
<a name='L46'></a><a href='#L46'>46</a>
|
|
112
|
-
<a name='L47'></a><a href='#L47'>47</a>
|
|
113
|
-
<a name='L48'></a><a href='#L48'>48</a>
|
|
114
|
-
<a name='L49'></a><a href='#L49'>49</a>
|
|
115
|
-
<a name='L50'></a><a href='#L50'>50</a>
|
|
116
|
-
<a name='L51'></a><a href='#L51'>51</a>
|
|
117
|
-
<a name='L52'></a><a href='#L52'>52</a>
|
|
118
|
-
<a name='L53'></a><a href='#L53'>53</a>
|
|
119
|
-
<a name='L54'></a><a href='#L54'>54</a>
|
|
120
|
-
<a name='L55'></a><a href='#L55'>55</a>
|
|
121
|
-
<a name='L56'></a><a href='#L56'>56</a>
|
|
122
|
-
<a name='L57'></a><a href='#L57'>57</a>
|
|
123
|
-
<a name='L58'></a><a href='#L58'>58</a>
|
|
124
|
-
<a name='L59'></a><a href='#L59'>59</a>
|
|
125
|
-
<a name='L60'></a><a href='#L60'>60</a>
|
|
126
|
-
<a name='L61'></a><a href='#L61'>61</a>
|
|
127
|
-
<a name='L62'></a><a href='#L62'>62</a>
|
|
128
|
-
<a name='L63'></a><a href='#L63'>63</a>
|
|
129
|
-
<a name='L64'></a><a href='#L64'>64</a>
|
|
130
|
-
<a name='L65'></a><a href='#L65'>65</a>
|
|
131
|
-
<a name='L66'></a><a href='#L66'>66</a>
|
|
132
|
-
<a name='L67'></a><a href='#L67'>67</a>
|
|
133
|
-
<a name='L68'></a><a href='#L68'>68</a>
|
|
134
|
-
<a name='L69'></a><a href='#L69'>69</a>
|
|
135
|
-
<a name='L70'></a><a href='#L70'>70</a>
|
|
136
|
-
<a name='L71'></a><a href='#L71'>71</a>
|
|
137
|
-
<a name='L72'></a><a href='#L72'>72</a>
|
|
138
|
-
<a name='L73'></a><a href='#L73'>73</a>
|
|
139
|
-
<a name='L74'></a><a href='#L74'>74</a>
|
|
140
|
-
<a name='L75'></a><a href='#L75'>75</a>
|
|
141
|
-
<a name='L76'></a><a href='#L76'>76</a>
|
|
142
|
-
<a name='L77'></a><a href='#L77'>77</a>
|
|
143
|
-
<a name='L78'></a><a href='#L78'>78</a>
|
|
144
|
-
<a name='L79'></a><a href='#L79'>79</a>
|
|
145
|
-
<a name='L80'></a><a href='#L80'>80</a>
|
|
146
|
-
<a name='L81'></a><a href='#L81'>81</a>
|
|
147
|
-
<a name='L82'></a><a href='#L82'>82</a>
|
|
148
|
-
<a name='L83'></a><a href='#L83'>83</a>
|
|
149
|
-
<a name='L84'></a><a href='#L84'>84</a>
|
|
150
|
-
<a name='L85'></a><a href='#L85'>85</a>
|
|
151
|
-
<a name='L86'></a><a href='#L86'>86</a>
|
|
152
|
-
<a name='L87'></a><a href='#L87'>87</a>
|
|
153
|
-
<a name='L88'></a><a href='#L88'>88</a>
|
|
154
|
-
<a name='L89'></a><a href='#L89'>89</a>
|
|
155
|
-
<a name='L90'></a><a href='#L90'>90</a>
|
|
156
|
-
<a name='L91'></a><a href='#L91'>91</a>
|
|
157
|
-
<a name='L92'></a><a href='#L92'>92</a>
|
|
158
|
-
<a name='L93'></a><a href='#L93'>93</a>
|
|
159
|
-
<a name='L94'></a><a href='#L94'>94</a>
|
|
160
|
-
<a name='L95'></a><a href='#L95'>95</a>
|
|
161
|
-
<a name='L96'></a><a href='#L96'>96</a>
|
|
162
|
-
<a name='L97'></a><a href='#L97'>97</a>
|
|
163
|
-
<a name='L98'></a><a href='#L98'>98</a>
|
|
164
|
-
<a name='L99'></a><a href='#L99'>99</a>
|
|
165
|
-
<a name='L100'></a><a href='#L100'>100</a>
|
|
166
|
-
<a name='L101'></a><a href='#L101'>101</a>
|
|
167
|
-
<a name='L102'></a><a href='#L102'>102</a>
|
|
168
|
-
<a name='L103'></a><a href='#L103'>103</a>
|
|
169
|
-
<a name='L104'></a><a href='#L104'>104</a>
|
|
170
|
-
<a name='L105'></a><a href='#L105'>105</a>
|
|
171
|
-
<a name='L106'></a><a href='#L106'>106</a>
|
|
172
|
-
<a name='L107'></a><a href='#L107'>107</a>
|
|
173
|
-
<a name='L108'></a><a href='#L108'>108</a>
|
|
174
|
-
<a name='L109'></a><a href='#L109'>109</a>
|
|
175
|
-
<a name='L110'></a><a href='#L110'>110</a>
|
|
176
|
-
<a name='L111'></a><a href='#L111'>111</a>
|
|
177
|
-
<a name='L112'></a><a href='#L112'>112</a>
|
|
178
|
-
<a name='L113'></a><a href='#L113'>113</a>
|
|
179
|
-
<a name='L114'></a><a href='#L114'>114</a>
|
|
180
|
-
<a name='L115'></a><a href='#L115'>115</a>
|
|
181
|
-
<a name='L116'></a><a href='#L116'>116</a>
|
|
182
|
-
<a name='L117'></a><a href='#L117'>117</a>
|
|
183
|
-
<a name='L118'></a><a href='#L118'>118</a>
|
|
184
|
-
<a name='L119'></a><a href='#L119'>119</a>
|
|
185
|
-
<a name='L120'></a><a href='#L120'>120</a>
|
|
186
|
-
<a name='L121'></a><a href='#L121'>121</a>
|
|
187
|
-
<a name='L122'></a><a href='#L122'>122</a>
|
|
188
|
-
<a name='L123'></a><a href='#L123'>123</a>
|
|
189
|
-
<a name='L124'></a><a href='#L124'>124</a>
|
|
190
|
-
<a name='L125'></a><a href='#L125'>125</a>
|
|
191
|
-
<a name='L126'></a><a href='#L126'>126</a>
|
|
192
|
-
<a name='L127'></a><a href='#L127'>127</a>
|
|
193
|
-
<a name='L128'></a><a href='#L128'>128</a>
|
|
194
|
-
<a name='L129'></a><a href='#L129'>129</a>
|
|
195
|
-
<a name='L130'></a><a href='#L130'>130</a>
|
|
196
|
-
<a name='L131'></a><a href='#L131'>131</a>
|
|
197
|
-
<a name='L132'></a><a href='#L132'>132</a>
|
|
198
|
-
<a name='L133'></a><a href='#L133'>133</a>
|
|
199
|
-
<a name='L134'></a><a href='#L134'>134</a>
|
|
200
|
-
<a name='L135'></a><a href='#L135'>135</a>
|
|
201
|
-
<a name='L136'></a><a href='#L136'>136</a>
|
|
202
|
-
<a name='L137'></a><a href='#L137'>137</a>
|
|
203
|
-
<a name='L138'></a><a href='#L138'>138</a>
|
|
204
|
-
<a name='L139'></a><a href='#L139'>139</a>
|
|
205
|
-
<a name='L140'></a><a href='#L140'>140</a>
|
|
206
|
-
<a name='L141'></a><a href='#L141'>141</a>
|
|
207
|
-
<a name='L142'></a><a href='#L142'>142</a>
|
|
208
|
-
<a name='L143'></a><a href='#L143'>143</a>
|
|
209
|
-
<a name='L144'></a><a href='#L144'>144</a>
|
|
210
|
-
<a name='L145'></a><a href='#L145'>145</a>
|
|
211
|
-
<a name='L146'></a><a href='#L146'>146</a>
|
|
212
|
-
<a name='L147'></a><a href='#L147'>147</a>
|
|
213
|
-
<a name='L148'></a><a href='#L148'>148</a>
|
|
214
|
-
<a name='L149'></a><a href='#L149'>149</a>
|
|
215
|
-
<a name='L150'></a><a href='#L150'>150</a>
|
|
216
|
-
<a name='L151'></a><a href='#L151'>151</a>
|
|
217
|
-
<a name='L152'></a><a href='#L152'>152</a>
|
|
218
|
-
<a name='L153'></a><a href='#L153'>153</a>
|
|
219
|
-
<a name='L154'></a><a href='#L154'>154</a>
|
|
220
|
-
<a name='L155'></a><a href='#L155'>155</a>
|
|
221
|
-
<a name='L156'></a><a href='#L156'>156</a>
|
|
222
|
-
<a name='L157'></a><a href='#L157'>157</a>
|
|
223
|
-
<a name='L158'></a><a href='#L158'>158</a>
|
|
224
|
-
<a name='L159'></a><a href='#L159'>159</a>
|
|
225
|
-
<a name='L160'></a><a href='#L160'>160</a>
|
|
226
|
-
<a name='L161'></a><a href='#L161'>161</a>
|
|
227
|
-
<a name='L162'></a><a href='#L162'>162</a>
|
|
228
|
-
<a name='L163'></a><a href='#L163'>163</a>
|
|
229
|
-
<a name='L164'></a><a href='#L164'>164</a>
|
|
230
|
-
<a name='L165'></a><a href='#L165'>165</a>
|
|
231
|
-
<a name='L166'></a><a href='#L166'>166</a>
|
|
232
|
-
<a name='L167'></a><a href='#L167'>167</a>
|
|
233
|
-
<a name='L168'></a><a href='#L168'>168</a>
|
|
234
|
-
<a name='L169'></a><a href='#L169'>169</a>
|
|
235
|
-
<a name='L170'></a><a href='#L170'>170</a>
|
|
236
|
-
<a name='L171'></a><a href='#L171'>171</a>
|
|
237
|
-
<a name='L172'></a><a href='#L172'>172</a>
|
|
238
|
-
<a name='L173'></a><a href='#L173'>173</a>
|
|
239
|
-
<a name='L174'></a><a href='#L174'>174</a>
|
|
240
|
-
<a name='L175'></a><a href='#L175'>175</a>
|
|
241
|
-
<a name='L176'></a><a href='#L176'>176</a>
|
|
242
|
-
<a name='L177'></a><a href='#L177'>177</a>
|
|
243
|
-
<a name='L178'></a><a href='#L178'>178</a>
|
|
244
|
-
<a name='L179'></a><a href='#L179'>179</a>
|
|
245
|
-
<a name='L180'></a><a href='#L180'>180</a>
|
|
246
|
-
<a name='L181'></a><a href='#L181'>181</a>
|
|
247
|
-
<a name='L182'></a><a href='#L182'>182</a>
|
|
248
|
-
<a name='L183'></a><a href='#L183'>183</a>
|
|
249
|
-
<a name='L184'></a><a href='#L184'>184</a>
|
|
250
|
-
<a name='L185'></a><a href='#L185'>185</a>
|
|
251
|
-
<a name='L186'></a><a href='#L186'>186</a>
|
|
252
|
-
<a name='L187'></a><a href='#L187'>187</a>
|
|
253
|
-
<a name='L188'></a><a href='#L188'>188</a>
|
|
254
|
-
<a name='L189'></a><a href='#L189'>189</a>
|
|
255
|
-
<a name='L190'></a><a href='#L190'>190</a>
|
|
256
|
-
<a name='L191'></a><a href='#L191'>191</a>
|
|
257
|
-
<a name='L192'></a><a href='#L192'>192</a>
|
|
258
|
-
<a name='L193'></a><a href='#L193'>193</a>
|
|
259
|
-
<a name='L194'></a><a href='#L194'>194</a>
|
|
260
|
-
<a name='L195'></a><a href='#L195'>195</a>
|
|
261
|
-
<a name='L196'></a><a href='#L196'>196</a>
|
|
262
|
-
<a name='L197'></a><a href='#L197'>197</a>
|
|
263
|
-
<a name='L198'></a><a href='#L198'>198</a>
|
|
264
|
-
<a name='L199'></a><a href='#L199'>199</a>
|
|
265
|
-
<a name='L200'></a><a href='#L200'>200</a>
|
|
266
|
-
<a name='L201'></a><a href='#L201'>201</a>
|
|
267
|
-
<a name='L202'></a><a href='#L202'>202</a>
|
|
268
|
-
<a name='L203'></a><a href='#L203'>203</a>
|
|
269
|
-
<a name='L204'></a><a href='#L204'>204</a>
|
|
270
|
-
<a name='L205'></a><a href='#L205'>205</a>
|
|
271
|
-
<a name='L206'></a><a href='#L206'>206</a>
|
|
272
|
-
<a name='L207'></a><a href='#L207'>207</a>
|
|
273
|
-
<a name='L208'></a><a href='#L208'>208</a>
|
|
274
|
-
<a name='L209'></a><a href='#L209'>209</a>
|
|
275
|
-
<a name='L210'></a><a href='#L210'>210</a>
|
|
276
|
-
<a name='L211'></a><a href='#L211'>211</a>
|
|
277
|
-
<a name='L212'></a><a href='#L212'>212</a>
|
|
278
|
-
<a name='L213'></a><a href='#L213'>213</a>
|
|
279
|
-
<a name='L214'></a><a href='#L214'>214</a>
|
|
280
|
-
<a name='L215'></a><a href='#L215'>215</a>
|
|
281
|
-
<a name='L216'></a><a href='#L216'>216</a>
|
|
282
|
-
<a name='L217'></a><a href='#L217'>217</a>
|
|
283
|
-
<a name='L218'></a><a href='#L218'>218</a>
|
|
284
|
-
<a name='L219'></a><a href='#L219'>219</a>
|
|
285
|
-
<a name='L220'></a><a href='#L220'>220</a>
|
|
286
|
-
<a name='L221'></a><a href='#L221'>221</a>
|
|
287
|
-
<a name='L222'></a><a href='#L222'>222</a>
|
|
288
|
-
<a name='L223'></a><a href='#L223'>223</a>
|
|
289
|
-
<a name='L224'></a><a href='#L224'>224</a>
|
|
290
|
-
<a name='L225'></a><a href='#L225'>225</a>
|
|
291
|
-
<a name='L226'></a><a href='#L226'>226</a>
|
|
292
|
-
<a name='L227'></a><a href='#L227'>227</a>
|
|
293
|
-
<a name='L228'></a><a href='#L228'>228</a>
|
|
294
|
-
<a name='L229'></a><a href='#L229'>229</a>
|
|
295
|
-
<a name='L230'></a><a href='#L230'>230</a>
|
|
296
|
-
<a name='L231'></a><a href='#L231'>231</a>
|
|
297
|
-
<a name='L232'></a><a href='#L232'>232</a>
|
|
298
|
-
<a name='L233'></a><a href='#L233'>233</a>
|
|
299
|
-
<a name='L234'></a><a href='#L234'>234</a>
|
|
300
|
-
<a name='L235'></a><a href='#L235'>235</a>
|
|
301
|
-
<a name='L236'></a><a href='#L236'>236</a>
|
|
302
|
-
<a name='L237'></a><a href='#L237'>237</a>
|
|
303
|
-
<a name='L238'></a><a href='#L238'>238</a>
|
|
304
|
-
<a name='L239'></a><a href='#L239'>239</a>
|
|
305
|
-
<a name='L240'></a><a href='#L240'>240</a>
|
|
306
|
-
<a name='L241'></a><a href='#L241'>241</a>
|
|
307
|
-
<a name='L242'></a><a href='#L242'>242</a>
|
|
308
|
-
<a name='L243'></a><a href='#L243'>243</a>
|
|
309
|
-
<a name='L244'></a><a href='#L244'>244</a>
|
|
310
|
-
<a name='L245'></a><a href='#L245'>245</a>
|
|
311
|
-
<a name='L246'></a><a href='#L246'>246</a>
|
|
312
|
-
<a name='L247'></a><a href='#L247'>247</a>
|
|
313
|
-
<a name='L248'></a><a href='#L248'>248</a>
|
|
314
|
-
<a name='L249'></a><a href='#L249'>249</a>
|
|
315
|
-
<a name='L250'></a><a href='#L250'>250</a>
|
|
316
|
-
<a name='L251'></a><a href='#L251'>251</a>
|
|
317
|
-
<a name='L252'></a><a href='#L252'>252</a>
|
|
318
|
-
<a name='L253'></a><a href='#L253'>253</a>
|
|
319
|
-
<a name='L254'></a><a href='#L254'>254</a>
|
|
320
|
-
<a name='L255'></a><a href='#L255'>255</a>
|
|
321
|
-
<a name='L256'></a><a href='#L256'>256</a>
|
|
322
|
-
<a name='L257'></a><a href='#L257'>257</a>
|
|
323
|
-
<a name='L258'></a><a href='#L258'>258</a>
|
|
324
|
-
<a name='L259'></a><a href='#L259'>259</a>
|
|
325
|
-
<a name='L260'></a><a href='#L260'>260</a>
|
|
326
|
-
<a name='L261'></a><a href='#L261'>261</a>
|
|
327
|
-
<a name='L262'></a><a href='#L262'>262</a>
|
|
328
|
-
<a name='L263'></a><a href='#L263'>263</a>
|
|
329
|
-
<a name='L264'></a><a href='#L264'>264</a>
|
|
330
|
-
<a name='L265'></a><a href='#L265'>265</a>
|
|
331
|
-
<a name='L266'></a><a href='#L266'>266</a>
|
|
332
|
-
<a name='L267'></a><a href='#L267'>267</a>
|
|
333
|
-
<a name='L268'></a><a href='#L268'>268</a>
|
|
334
|
-
<a name='L269'></a><a href='#L269'>269</a>
|
|
335
|
-
<a name='L270'></a><a href='#L270'>270</a>
|
|
336
|
-
<a name='L271'></a><a href='#L271'>271</a>
|
|
337
|
-
<a name='L272'></a><a href='#L272'>272</a>
|
|
338
|
-
<a name='L273'></a><a href='#L273'>273</a>
|
|
339
|
-
<a name='L274'></a><a href='#L274'>274</a>
|
|
340
|
-
<a name='L275'></a><a href='#L275'>275</a>
|
|
341
|
-
<a name='L276'></a><a href='#L276'>276</a>
|
|
342
|
-
<a name='L277'></a><a href='#L277'>277</a>
|
|
343
|
-
<a name='L278'></a><a href='#L278'>278</a>
|
|
344
|
-
<a name='L279'></a><a href='#L279'>279</a>
|
|
345
|
-
<a name='L280'></a><a href='#L280'>280</a>
|
|
346
|
-
<a name='L281'></a><a href='#L281'>281</a>
|
|
347
|
-
<a name='L282'></a><a href='#L282'>282</a>
|
|
348
|
-
<a name='L283'></a><a href='#L283'>283</a>
|
|
349
|
-
<a name='L284'></a><a href='#L284'>284</a>
|
|
350
|
-
<a name='L285'></a><a href='#L285'>285</a>
|
|
351
|
-
<a name='L286'></a><a href='#L286'>286</a>
|
|
352
|
-
<a name='L287'></a><a href='#L287'>287</a>
|
|
353
|
-
<a name='L288'></a><a href='#L288'>288</a>
|
|
354
|
-
<a name='L289'></a><a href='#L289'>289</a>
|
|
355
|
-
<a name='L290'></a><a href='#L290'>290</a>
|
|
356
|
-
<a name='L291'></a><a href='#L291'>291</a>
|
|
357
|
-
<a name='L292'></a><a href='#L292'>292</a>
|
|
358
|
-
<a name='L293'></a><a href='#L293'>293</a>
|
|
359
|
-
<a name='L294'></a><a href='#L294'>294</a>
|
|
360
|
-
<a name='L295'></a><a href='#L295'>295</a>
|
|
361
|
-
<a name='L296'></a><a href='#L296'>296</a>
|
|
362
|
-
<a name='L297'></a><a href='#L297'>297</a>
|
|
363
|
-
<a name='L298'></a><a href='#L298'>298</a>
|
|
364
|
-
<a name='L299'></a><a href='#L299'>299</a>
|
|
365
|
-
<a name='L300'></a><a href='#L300'>300</a>
|
|
366
|
-
<a name='L301'></a><a href='#L301'>301</a>
|
|
367
|
-
<a name='L302'></a><a href='#L302'>302</a>
|
|
368
|
-
<a name='L303'></a><a href='#L303'>303</a>
|
|
369
|
-
<a name='L304'></a><a href='#L304'>304</a>
|
|
370
|
-
<a name='L305'></a><a href='#L305'>305</a>
|
|
371
|
-
<a name='L306'></a><a href='#L306'>306</a>
|
|
372
|
-
<a name='L307'></a><a href='#L307'>307</a>
|
|
373
|
-
<a name='L308'></a><a href='#L308'>308</a>
|
|
374
|
-
<a name='L309'></a><a href='#L309'>309</a>
|
|
375
|
-
<a name='L310'></a><a href='#L310'>310</a>
|
|
376
|
-
<a name='L311'></a><a href='#L311'>311</a>
|
|
377
|
-
<a name='L312'></a><a href='#L312'>312</a>
|
|
378
|
-
<a name='L313'></a><a href='#L313'>313</a>
|
|
379
|
-
<a name='L314'></a><a href='#L314'>314</a>
|
|
380
|
-
<a name='L315'></a><a href='#L315'>315</a>
|
|
381
|
-
<a name='L316'></a><a href='#L316'>316</a>
|
|
382
|
-
<a name='L317'></a><a href='#L317'>317</a>
|
|
383
|
-
<a name='L318'></a><a href='#L318'>318</a>
|
|
384
|
-
<a name='L319'></a><a href='#L319'>319</a>
|
|
385
|
-
<a name='L320'></a><a href='#L320'>320</a>
|
|
386
|
-
<a name='L321'></a><a href='#L321'>321</a>
|
|
387
|
-
<a name='L322'></a><a href='#L322'>322</a>
|
|
388
|
-
<a name='L323'></a><a href='#L323'>323</a>
|
|
389
|
-
<a name='L324'></a><a href='#L324'>324</a>
|
|
390
|
-
<a name='L325'></a><a href='#L325'>325</a>
|
|
391
|
-
<a name='L326'></a><a href='#L326'>326</a>
|
|
392
|
-
<a name='L327'></a><a href='#L327'>327</a>
|
|
393
|
-
<a name='L328'></a><a href='#L328'>328</a>
|
|
394
|
-
<a name='L329'></a><a href='#L329'>329</a>
|
|
395
|
-
<a name='L330'></a><a href='#L330'>330</a>
|
|
396
|
-
<a name='L331'></a><a href='#L331'>331</a>
|
|
397
|
-
<a name='L332'></a><a href='#L332'>332</a>
|
|
398
|
-
<a name='L333'></a><a href='#L333'>333</a>
|
|
399
|
-
<a name='L334'></a><a href='#L334'>334</a>
|
|
400
|
-
<a name='L335'></a><a href='#L335'>335</a>
|
|
401
|
-
<a name='L336'></a><a href='#L336'>336</a>
|
|
402
|
-
<a name='L337'></a><a href='#L337'>337</a>
|
|
403
|
-
<a name='L338'></a><a href='#L338'>338</a>
|
|
404
|
-
<a name='L339'></a><a href='#L339'>339</a>
|
|
405
|
-
<a name='L340'></a><a href='#L340'>340</a>
|
|
406
|
-
<a name='L341'></a><a href='#L341'>341</a>
|
|
407
|
-
<a name='L342'></a><a href='#L342'>342</a>
|
|
408
|
-
<a name='L343'></a><a href='#L343'>343</a>
|
|
409
|
-
<a name='L344'></a><a href='#L344'>344</a>
|
|
410
|
-
<a name='L345'></a><a href='#L345'>345</a>
|
|
411
|
-
<a name='L346'></a><a href='#L346'>346</a>
|
|
412
|
-
<a name='L347'></a><a href='#L347'>347</a>
|
|
413
|
-
<a name='L348'></a><a href='#L348'>348</a>
|
|
414
|
-
<a name='L349'></a><a href='#L349'>349</a>
|
|
415
|
-
<a name='L350'></a><a href='#L350'>350</a>
|
|
416
|
-
<a name='L351'></a><a href='#L351'>351</a>
|
|
417
|
-
<a name='L352'></a><a href='#L352'>352</a>
|
|
418
|
-
<a name='L353'></a><a href='#L353'>353</a>
|
|
419
|
-
<a name='L354'></a><a href='#L354'>354</a>
|
|
420
|
-
<a name='L355'></a><a href='#L355'>355</a>
|
|
421
|
-
<a name='L356'></a><a href='#L356'>356</a>
|
|
422
|
-
<a name='L357'></a><a href='#L357'>357</a>
|
|
423
|
-
<a name='L358'></a><a href='#L358'>358</a>
|
|
424
|
-
<a name='L359'></a><a href='#L359'>359</a>
|
|
425
|
-
<a name='L360'></a><a href='#L360'>360</a>
|
|
426
|
-
<a name='L361'></a><a href='#L361'>361</a>
|
|
427
|
-
<a name='L362'></a><a href='#L362'>362</a>
|
|
428
|
-
<a name='L363'></a><a href='#L363'>363</a>
|
|
429
|
-
<a name='L364'></a><a href='#L364'>364</a>
|
|
430
|
-
<a name='L365'></a><a href='#L365'>365</a>
|
|
431
|
-
<a name='L366'></a><a href='#L366'>366</a>
|
|
432
|
-
<a name='L367'></a><a href='#L367'>367</a>
|
|
433
|
-
<a name='L368'></a><a href='#L368'>368</a>
|
|
434
|
-
<a name='L369'></a><a href='#L369'>369</a>
|
|
435
|
-
<a name='L370'></a><a href='#L370'>370</a>
|
|
436
|
-
<a name='L371'></a><a href='#L371'>371</a>
|
|
437
|
-
<a name='L372'></a><a href='#L372'>372</a>
|
|
438
|
-
<a name='L373'></a><a href='#L373'>373</a>
|
|
439
|
-
<a name='L374'></a><a href='#L374'>374</a>
|
|
440
|
-
<a name='L375'></a><a href='#L375'>375</a>
|
|
441
|
-
<a name='L376'></a><a href='#L376'>376</a>
|
|
442
|
-
<a name='L377'></a><a href='#L377'>377</a>
|
|
443
|
-
<a name='L378'></a><a href='#L378'>378</a>
|
|
444
|
-
<a name='L379'></a><a href='#L379'>379</a>
|
|
445
|
-
<a name='L380'></a><a href='#L380'>380</a>
|
|
446
|
-
<a name='L381'></a><a href='#L381'>381</a>
|
|
447
|
-
<a name='L382'></a><a href='#L382'>382</a>
|
|
448
|
-
<a name='L383'></a><a href='#L383'>383</a>
|
|
449
|
-
<a name='L384'></a><a href='#L384'>384</a>
|
|
450
|
-
<a name='L385'></a><a href='#L385'>385</a>
|
|
451
|
-
<a name='L386'></a><a href='#L386'>386</a>
|
|
452
|
-
<a name='L387'></a><a href='#L387'>387</a>
|
|
453
|
-
<a name='L388'></a><a href='#L388'>388</a>
|
|
454
|
-
<a name='L389'></a><a href='#L389'>389</a>
|
|
455
|
-
<a name='L390'></a><a href='#L390'>390</a>
|
|
456
|
-
<a name='L391'></a><a href='#L391'>391</a>
|
|
457
|
-
<a name='L392'></a><a href='#L392'>392</a>
|
|
458
|
-
<a name='L393'></a><a href='#L393'>393</a>
|
|
459
|
-
<a name='L394'></a><a href='#L394'>394</a>
|
|
460
|
-
<a name='L395'></a><a href='#L395'>395</a>
|
|
461
|
-
<a name='L396'></a><a href='#L396'>396</a>
|
|
462
|
-
<a name='L397'></a><a href='#L397'>397</a>
|
|
463
|
-
<a name='L398'></a><a href='#L398'>398</a>
|
|
464
|
-
<a name='L399'></a><a href='#L399'>399</a>
|
|
465
|
-
<a name='L400'></a><a href='#L400'>400</a>
|
|
466
|
-
<a name='L401'></a><a href='#L401'>401</a>
|
|
467
|
-
<a name='L402'></a><a href='#L402'>402</a>
|
|
468
|
-
<a name='L403'></a><a href='#L403'>403</a>
|
|
469
|
-
<a name='L404'></a><a href='#L404'>404</a>
|
|
470
|
-
<a name='L405'></a><a href='#L405'>405</a>
|
|
471
|
-
<a name='L406'></a><a href='#L406'>406</a>
|
|
472
|
-
<a name='L407'></a><a href='#L407'>407</a>
|
|
473
|
-
<a name='L408'></a><a href='#L408'>408</a>
|
|
474
|
-
<a name='L409'></a><a href='#L409'>409</a>
|
|
475
|
-
<a name='L410'></a><a href='#L410'>410</a>
|
|
476
|
-
<a name='L411'></a><a href='#L411'>411</a>
|
|
477
|
-
<a name='L412'></a><a href='#L412'>412</a>
|
|
478
|
-
<a name='L413'></a><a href='#L413'>413</a>
|
|
479
|
-
<a name='L414'></a><a href='#L414'>414</a>
|
|
480
|
-
<a name='L415'></a><a href='#L415'>415</a>
|
|
481
|
-
<a name='L416'></a><a href='#L416'>416</a>
|
|
482
|
-
<a name='L417'></a><a href='#L417'>417</a>
|
|
483
|
-
<a name='L418'></a><a href='#L418'>418</a>
|
|
484
|
-
<a name='L419'></a><a href='#L419'>419</a>
|
|
485
|
-
<a name='L420'></a><a href='#L420'>420</a>
|
|
486
|
-
<a name='L421'></a><a href='#L421'>421</a>
|
|
487
|
-
<a name='L422'></a><a href='#L422'>422</a>
|
|
488
|
-
<a name='L423'></a><a href='#L423'>423</a>
|
|
489
|
-
<a name='L424'></a><a href='#L424'>424</a>
|
|
490
|
-
<a name='L425'></a><a href='#L425'>425</a>
|
|
491
|
-
<a name='L426'></a><a href='#L426'>426</a>
|
|
492
|
-
<a name='L427'></a><a href='#L427'>427</a>
|
|
493
|
-
<a name='L428'></a><a href='#L428'>428</a>
|
|
494
|
-
<a name='L429'></a><a href='#L429'>429</a>
|
|
495
|
-
<a name='L430'></a><a href='#L430'>430</a>
|
|
496
|
-
<a name='L431'></a><a href='#L431'>431</a>
|
|
497
|
-
<a name='L432'></a><a href='#L432'>432</a>
|
|
498
|
-
<a name='L433'></a><a href='#L433'>433</a>
|
|
499
|
-
<a name='L434'></a><a href='#L434'>434</a>
|
|
500
|
-
<a name='L435'></a><a href='#L435'>435</a>
|
|
501
|
-
<a name='L436'></a><a href='#L436'>436</a>
|
|
502
|
-
<a name='L437'></a><a href='#L437'>437</a>
|
|
503
|
-
<a name='L438'></a><a href='#L438'>438</a>
|
|
504
|
-
<a name='L439'></a><a href='#L439'>439</a>
|
|
505
|
-
<a name='L440'></a><a href='#L440'>440</a>
|
|
506
|
-
<a name='L441'></a><a href='#L441'>441</a>
|
|
507
|
-
<a name='L442'></a><a href='#L442'>442</a>
|
|
508
|
-
<a name='L443'></a><a href='#L443'>443</a>
|
|
509
|
-
<a name='L444'></a><a href='#L444'>444</a>
|
|
510
|
-
<a name='L445'></a><a href='#L445'>445</a>
|
|
511
|
-
<a name='L446'></a><a href='#L446'>446</a>
|
|
512
|
-
<a name='L447'></a><a href='#L447'>447</a>
|
|
513
|
-
<a name='L448'></a><a href='#L448'>448</a>
|
|
514
|
-
<a name='L449'></a><a href='#L449'>449</a>
|
|
515
|
-
<a name='L450'></a><a href='#L450'>450</a>
|
|
516
|
-
<a name='L451'></a><a href='#L451'>451</a>
|
|
517
|
-
<a name='L452'></a><a href='#L452'>452</a>
|
|
518
|
-
<a name='L453'></a><a href='#L453'>453</a>
|
|
519
|
-
<a name='L454'></a><a href='#L454'>454</a>
|
|
520
|
-
<a name='L455'></a><a href='#L455'>455</a>
|
|
521
|
-
<a name='L456'></a><a href='#L456'>456</a>
|
|
522
|
-
<a name='L457'></a><a href='#L457'>457</a>
|
|
523
|
-
<a name='L458'></a><a href='#L458'>458</a>
|
|
524
|
-
<a name='L459'></a><a href='#L459'>459</a>
|
|
525
|
-
<a name='L460'></a><a href='#L460'>460</a>
|
|
526
|
-
<a name='L461'></a><a href='#L461'>461</a>
|
|
527
|
-
<a name='L462'></a><a href='#L462'>462</a>
|
|
528
|
-
<a name='L463'></a><a href='#L463'>463</a>
|
|
529
|
-
<a name='L464'></a><a href='#L464'>464</a>
|
|
530
|
-
<a name='L465'></a><a href='#L465'>465</a>
|
|
531
|
-
<a name='L466'></a><a href='#L466'>466</a>
|
|
532
|
-
<a name='L467'></a><a href='#L467'>467</a>
|
|
533
|
-
<a name='L468'></a><a href='#L468'>468</a>
|
|
534
|
-
<a name='L469'></a><a href='#L469'>469</a>
|
|
535
|
-
<a name='L470'></a><a href='#L470'>470</a>
|
|
536
|
-
<a name='L471'></a><a href='#L471'>471</a>
|
|
537
|
-
<a name='L472'></a><a href='#L472'>472</a>
|
|
538
|
-
<a name='L473'></a><a href='#L473'>473</a>
|
|
539
|
-
<a name='L474'></a><a href='#L474'>474</a>
|
|
540
|
-
<a name='L475'></a><a href='#L475'>475</a>
|
|
541
|
-
<a name='L476'></a><a href='#L476'>476</a>
|
|
542
|
-
<a name='L477'></a><a href='#L477'>477</a>
|
|
543
|
-
<a name='L478'></a><a href='#L478'>478</a>
|
|
544
|
-
<a name='L479'></a><a href='#L479'>479</a>
|
|
545
|
-
<a name='L480'></a><a href='#L480'>480</a>
|
|
546
|
-
<a name='L481'></a><a href='#L481'>481</a>
|
|
547
|
-
<a name='L482'></a><a href='#L482'>482</a>
|
|
548
|
-
<a name='L483'></a><a href='#L483'>483</a>
|
|
549
|
-
<a name='L484'></a><a href='#L484'>484</a>
|
|
550
|
-
<a name='L485'></a><a href='#L485'>485</a>
|
|
551
|
-
<a name='L486'></a><a href='#L486'>486</a>
|
|
552
|
-
<a name='L487'></a><a href='#L487'>487</a>
|
|
553
|
-
<a name='L488'></a><a href='#L488'>488</a>
|
|
554
|
-
<a name='L489'></a><a href='#L489'>489</a>
|
|
555
|
-
<a name='L490'></a><a href='#L490'>490</a>
|
|
556
|
-
<a name='L491'></a><a href='#L491'>491</a>
|
|
557
|
-
<a name='L492'></a><a href='#L492'>492</a>
|
|
558
|
-
<a name='L493'></a><a href='#L493'>493</a>
|
|
559
|
-
<a name='L494'></a><a href='#L494'>494</a>
|
|
560
|
-
<a name='L495'></a><a href='#L495'>495</a>
|
|
561
|
-
<a name='L496'></a><a href='#L496'>496</a>
|
|
562
|
-
<a name='L497'></a><a href='#L497'>497</a>
|
|
563
|
-
<a name='L498'></a><a href='#L498'>498</a>
|
|
564
|
-
<a name='L499'></a><a href='#L499'>499</a>
|
|
565
|
-
<a name='L500'></a><a href='#L500'>500</a>
|
|
566
|
-
<a name='L501'></a><a href='#L501'>501</a>
|
|
567
|
-
<a name='L502'></a><a href='#L502'>502</a>
|
|
568
|
-
<a name='L503'></a><a href='#L503'>503</a>
|
|
569
|
-
<a name='L504'></a><a href='#L504'>504</a>
|
|
570
|
-
<a name='L505'></a><a href='#L505'>505</a>
|
|
571
|
-
<a name='L506'></a><a href='#L506'>506</a>
|
|
572
|
-
<a name='L507'></a><a href='#L507'>507</a>
|
|
573
|
-
<a name='L508'></a><a href='#L508'>508</a>
|
|
574
|
-
<a name='L509'></a><a href='#L509'>509</a>
|
|
575
|
-
<a name='L510'></a><a href='#L510'>510</a>
|
|
576
|
-
<a name='L511'></a><a href='#L511'>511</a>
|
|
577
|
-
<a name='L512'></a><a href='#L512'>512</a>
|
|
578
|
-
<a name='L513'></a><a href='#L513'>513</a>
|
|
579
|
-
<a name='L514'></a><a href='#L514'>514</a>
|
|
580
|
-
<a name='L515'></a><a href='#L515'>515</a>
|
|
581
|
-
<a name='L516'></a><a href='#L516'>516</a>
|
|
582
|
-
<a name='L517'></a><a href='#L517'>517</a>
|
|
583
|
-
<a name='L518'></a><a href='#L518'>518</a>
|
|
584
|
-
<a name='L519'></a><a href='#L519'>519</a>
|
|
585
|
-
<a name='L520'></a><a href='#L520'>520</a>
|
|
586
|
-
<a name='L521'></a><a href='#L521'>521</a>
|
|
587
|
-
<a name='L522'></a><a href='#L522'>522</a>
|
|
588
|
-
<a name='L523'></a><a href='#L523'>523</a>
|
|
589
|
-
<a name='L524'></a><a href='#L524'>524</a>
|
|
590
|
-
<a name='L525'></a><a href='#L525'>525</a>
|
|
591
|
-
<a name='L526'></a><a href='#L526'>526</a>
|
|
592
|
-
<a name='L527'></a><a href='#L527'>527</a>
|
|
593
|
-
<a name='L528'></a><a href='#L528'>528</a>
|
|
594
|
-
<a name='L529'></a><a href='#L529'>529</a>
|
|
595
|
-
<a name='L530'></a><a href='#L530'>530</a>
|
|
596
|
-
<a name='L531'></a><a href='#L531'>531</a>
|
|
597
|
-
<a name='L532'></a><a href='#L532'>532</a>
|
|
598
|
-
<a name='L533'></a><a href='#L533'>533</a>
|
|
599
|
-
<a name='L534'></a><a href='#L534'>534</a>
|
|
600
|
-
<a name='L535'></a><a href='#L535'>535</a>
|
|
601
|
-
<a name='L536'></a><a href='#L536'>536</a>
|
|
602
|
-
<a name='L537'></a><a href='#L537'>537</a>
|
|
603
|
-
<a name='L538'></a><a href='#L538'>538</a>
|
|
604
|
-
<a name='L539'></a><a href='#L539'>539</a>
|
|
605
|
-
<a name='L540'></a><a href='#L540'>540</a>
|
|
606
|
-
<a name='L541'></a><a href='#L541'>541</a>
|
|
607
|
-
<a name='L542'></a><a href='#L542'>542</a>
|
|
608
|
-
<a name='L543'></a><a href='#L543'>543</a>
|
|
609
|
-
<a name='L544'></a><a href='#L544'>544</a>
|
|
610
|
-
<a name='L545'></a><a href='#L545'>545</a>
|
|
611
|
-
<a name='L546'></a><a href='#L546'>546</a>
|
|
612
|
-
<a name='L547'></a><a href='#L547'>547</a>
|
|
613
|
-
<a name='L548'></a><a href='#L548'>548</a>
|
|
614
|
-
<a name='L549'></a><a href='#L549'>549</a>
|
|
615
|
-
<a name='L550'></a><a href='#L550'>550</a>
|
|
616
|
-
<a name='L551'></a><a href='#L551'>551</a>
|
|
617
|
-
<a name='L552'></a><a href='#L552'>552</a>
|
|
618
|
-
<a name='L553'></a><a href='#L553'>553</a>
|
|
619
|
-
<a name='L554'></a><a href='#L554'>554</a>
|
|
620
|
-
<a name='L555'></a><a href='#L555'>555</a>
|
|
621
|
-
<a name='L556'></a><a href='#L556'>556</a>
|
|
622
|
-
<a name='L557'></a><a href='#L557'>557</a>
|
|
623
|
-
<a name='L558'></a><a href='#L558'>558</a>
|
|
624
|
-
<a name='L559'></a><a href='#L559'>559</a>
|
|
625
|
-
<a name='L560'></a><a href='#L560'>560</a>
|
|
626
|
-
<a name='L561'></a><a href='#L561'>561</a>
|
|
627
|
-
<a name='L562'></a><a href='#L562'>562</a>
|
|
628
|
-
<a name='L563'></a><a href='#L563'>563</a>
|
|
629
|
-
<a name='L564'></a><a href='#L564'>564</a>
|
|
630
|
-
<a name='L565'></a><a href='#L565'>565</a>
|
|
631
|
-
<a name='L566'></a><a href='#L566'>566</a>
|
|
632
|
-
<a name='L567'></a><a href='#L567'>567</a>
|
|
633
|
-
<a name='L568'></a><a href='#L568'>568</a>
|
|
634
|
-
<a name='L569'></a><a href='#L569'>569</a>
|
|
635
|
-
<a name='L570'></a><a href='#L570'>570</a>
|
|
636
|
-
<a name='L571'></a><a href='#L571'>571</a>
|
|
637
|
-
<a name='L572'></a><a href='#L572'>572</a>
|
|
638
|
-
<a name='L573'></a><a href='#L573'>573</a>
|
|
639
|
-
<a name='L574'></a><a href='#L574'>574</a>
|
|
640
|
-
<a name='L575'></a><a href='#L575'>575</a>
|
|
641
|
-
<a name='L576'></a><a href='#L576'>576</a>
|
|
642
|
-
<a name='L577'></a><a href='#L577'>577</a>
|
|
643
|
-
<a name='L578'></a><a href='#L578'>578</a>
|
|
644
|
-
<a name='L579'></a><a href='#L579'>579</a>
|
|
645
|
-
<a name='L580'></a><a href='#L580'>580</a>
|
|
646
|
-
<a name='L581'></a><a href='#L581'>581</a>
|
|
647
|
-
<a name='L582'></a><a href='#L582'>582</a>
|
|
648
|
-
<a name='L583'></a><a href='#L583'>583</a>
|
|
649
|
-
<a name='L584'></a><a href='#L584'>584</a>
|
|
650
|
-
<a name='L585'></a><a href='#L585'>585</a>
|
|
651
|
-
<a name='L586'></a><a href='#L586'>586</a>
|
|
652
|
-
<a name='L587'></a><a href='#L587'>587</a>
|
|
653
|
-
<a name='L588'></a><a href='#L588'>588</a>
|
|
654
|
-
<a name='L589'></a><a href='#L589'>589</a>
|
|
655
|
-
<a name='L590'></a><a href='#L590'>590</a>
|
|
656
|
-
<a name='L591'></a><a href='#L591'>591</a>
|
|
657
|
-
<a name='L592'></a><a href='#L592'>592</a>
|
|
658
|
-
<a name='L593'></a><a href='#L593'>593</a>
|
|
659
|
-
<a name='L594'></a><a href='#L594'>594</a>
|
|
660
|
-
<a name='L595'></a><a href='#L595'>595</a>
|
|
661
|
-
<a name='L596'></a><a href='#L596'>596</a>
|
|
662
|
-
<a name='L597'></a><a href='#L597'>597</a>
|
|
663
|
-
<a name='L598'></a><a href='#L598'>598</a>
|
|
664
|
-
<a name='L599'></a><a href='#L599'>599</a>
|
|
665
|
-
<a name='L600'></a><a href='#L600'>600</a>
|
|
666
|
-
<a name='L601'></a><a href='#L601'>601</a>
|
|
667
|
-
<a name='L602'></a><a href='#L602'>602</a>
|
|
668
|
-
<a name='L603'></a><a href='#L603'>603</a>
|
|
669
|
-
<a name='L604'></a><a href='#L604'>604</a>
|
|
670
|
-
<a name='L605'></a><a href='#L605'>605</a>
|
|
671
|
-
<a name='L606'></a><a href='#L606'>606</a>
|
|
672
|
-
<a name='L607'></a><a href='#L607'>607</a>
|
|
673
|
-
<a name='L608'></a><a href='#L608'>608</a>
|
|
674
|
-
<a name='L609'></a><a href='#L609'>609</a>
|
|
675
|
-
<a name='L610'></a><a href='#L610'>610</a>
|
|
676
|
-
<a name='L611'></a><a href='#L611'>611</a>
|
|
677
|
-
<a name='L612'></a><a href='#L612'>612</a>
|
|
678
|
-
<a name='L613'></a><a href='#L613'>613</a>
|
|
679
|
-
<a name='L614'></a><a href='#L614'>614</a>
|
|
680
|
-
<a name='L615'></a><a href='#L615'>615</a>
|
|
681
|
-
<a name='L616'></a><a href='#L616'>616</a>
|
|
682
|
-
<a name='L617'></a><a href='#L617'>617</a>
|
|
683
|
-
<a name='L618'></a><a href='#L618'>618</a>
|
|
684
|
-
<a name='L619'></a><a href='#L619'>619</a>
|
|
685
|
-
<a name='L620'></a><a href='#L620'>620</a>
|
|
686
|
-
<a name='L621'></a><a href='#L621'>621</a>
|
|
687
|
-
<a name='L622'></a><a href='#L622'>622</a>
|
|
688
|
-
<a name='L623'></a><a href='#L623'>623</a>
|
|
689
|
-
<a name='L624'></a><a href='#L624'>624</a>
|
|
690
|
-
<a name='L625'></a><a href='#L625'>625</a>
|
|
691
|
-
<a name='L626'></a><a href='#L626'>626</a>
|
|
692
|
-
<a name='L627'></a><a href='#L627'>627</a>
|
|
693
|
-
<a name='L628'></a><a href='#L628'>628</a>
|
|
694
|
-
<a name='L629'></a><a href='#L629'>629</a>
|
|
695
|
-
<a name='L630'></a><a href='#L630'>630</a>
|
|
696
|
-
<a name='L631'></a><a href='#L631'>631</a>
|
|
697
|
-
<a name='L632'></a><a href='#L632'>632</a>
|
|
698
|
-
<a name='L633'></a><a href='#L633'>633</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">15x</span>
|
|
699
|
-
<span class="cline-any cline-neutral"> </span>
|
|
700
|
-
<span class="cline-any cline-neutral"> </span>
|
|
701
|
-
<span class="cline-any cline-neutral"> </span>
|
|
702
|
-
<span class="cline-any cline-neutral"> </span>
|
|
703
|
-
<span class="cline-any cline-neutral"> </span>
|
|
704
|
-
<span class="cline-any cline-neutral"> </span>
|
|
705
|
-
<span class="cline-any cline-yes">15x</span>
|
|
706
|
-
<span class="cline-any cline-yes">15x</span>
|
|
707
|
-
<span class="cline-any cline-yes">15x</span>
|
|
708
|
-
<span class="cline-any cline-neutral"> </span>
|
|
709
|
-
<span class="cline-any cline-neutral"> </span>
|
|
710
|
-
<span class="cline-any cline-neutral"> </span>
|
|
711
|
-
<span class="cline-any cline-neutral"> </span>
|
|
712
|
-
<span class="cline-any cline-neutral"> </span>
|
|
713
|
-
<span class="cline-any cline-neutral"> </span>
|
|
714
|
-
<span class="cline-any cline-neutral"> </span>
|
|
715
|
-
<span class="cline-any cline-neutral"> </span>
|
|
716
|
-
<span class="cline-any cline-neutral"> </span>
|
|
717
|
-
<span class="cline-any cline-neutral"> </span>
|
|
718
|
-
<span class="cline-any cline-neutral"> </span>
|
|
719
|
-
<span class="cline-any cline-neutral"> </span>
|
|
720
|
-
<span class="cline-any cline-yes">15x</span>
|
|
721
|
-
<span class="cline-any cline-neutral"> </span>
|
|
722
|
-
<span class="cline-any cline-neutral"> </span>
|
|
723
|
-
<span class="cline-any cline-neutral"> </span>
|
|
724
|
-
<span class="cline-any cline-yes">15x</span>
|
|
725
|
-
<span class="cline-any cline-yes">15x</span>
|
|
726
|
-
<span class="cline-any cline-yes">15x</span>
|
|
727
|
-
<span class="cline-any cline-yes">15x</span>
|
|
728
|
-
<span class="cline-any cline-yes">15x</span>
|
|
729
|
-
<span class="cline-any cline-neutral"> </span>
|
|
730
|
-
<span class="cline-any cline-neutral"> </span>
|
|
731
|
-
<span class="cline-any cline-yes">4x</span>
|
|
732
|
-
<span class="cline-any cline-neutral"> </span>
|
|
733
|
-
<span class="cline-any cline-yes">1x</span>
|
|
734
|
-
<span class="cline-any cline-neutral"> </span>
|
|
735
|
-
<span class="cline-any cline-no"> </span>
|
|
736
|
-
<span class="cline-any cline-neutral"> </span>
|
|
737
|
-
<span class="cline-any cline-no"> </span>
|
|
738
|
-
<span class="cline-any cline-neutral"> </span>
|
|
739
|
-
<span class="cline-any cline-yes">3x</span>
|
|
740
|
-
<span class="cline-any cline-neutral"> </span>
|
|
741
|
-
<span class="cline-any cline-no"> </span>
|
|
742
|
-
<span class="cline-any cline-neutral"> </span>
|
|
743
|
-
<span class="cline-any cline-no"> </span>
|
|
744
|
-
<span class="cline-any cline-neutral"> </span>
|
|
745
|
-
<span class="cline-any cline-neutral"> </span>
|
|
746
|
-
<span class="cline-any cline-neutral"> </span>
|
|
747
|
-
<span class="cline-any cline-neutral"> </span>
|
|
748
|
-
<span class="cline-any cline-yes">15x</span>
|
|
749
|
-
<span class="cline-any cline-yes">32x</span>
|
|
750
|
-
<span class="cline-any cline-neutral"> </span>
|
|
751
|
-
<span class="cline-any cline-neutral"> </span>
|
|
752
|
-
<span class="cline-any cline-neutral"> </span>
|
|
753
|
-
<span class="cline-any cline-yes">32x</span>
|
|
754
|
-
<span class="cline-any cline-neutral"> </span>
|
|
755
|
-
<span class="cline-any cline-yes">32x</span>
|
|
756
|
-
<span class="cline-any cline-neutral"> </span>
|
|
757
|
-
<span class="cline-any cline-yes">32x</span>
|
|
758
|
-
<span class="cline-any cline-neutral"> </span>
|
|
759
|
-
<span class="cline-any cline-yes">32x</span>
|
|
760
|
-
<span class="cline-any cline-neutral"> </span>
|
|
761
|
-
<span class="cline-any cline-yes">32x</span>
|
|
762
|
-
<span class="cline-any cline-yes">32x</span>
|
|
763
|
-
<span class="cline-any cline-yes">32x</span>
|
|
764
|
-
<span class="cline-any cline-yes">32x</span>
|
|
765
|
-
<span class="cline-any cline-yes">32x</span>
|
|
766
|
-
<span class="cline-any cline-yes">32x</span>
|
|
767
|
-
<span class="cline-any cline-yes">32x</span>
|
|
768
|
-
<span class="cline-any cline-yes">32x</span>
|
|
769
|
-
<span class="cline-any cline-yes">32x</span>
|
|
770
|
-
<span class="cline-any cline-yes">32x</span>
|
|
771
|
-
<span class="cline-any cline-neutral"> </span>
|
|
772
|
-
<span class="cline-any cline-neutral"> </span>
|
|
773
|
-
<span class="cline-any cline-neutral"> </span>
|
|
774
|
-
<span class="cline-any cline-yes">9x</span>
|
|
775
|
-
<span class="cline-any cline-yes">6x</span>
|
|
776
|
-
<span class="cline-any cline-neutral"> </span>
|
|
777
|
-
<span class="cline-any cline-neutral"> </span>
|
|
778
|
-
<span class="cline-any cline-yes">3x</span>
|
|
779
|
-
<span class="cline-any cline-yes">3x</span>
|
|
780
|
-
<span class="cline-any cline-neutral"> </span>
|
|
781
|
-
<span class="cline-any cline-neutral"> </span>
|
|
782
|
-
<span class="cline-any cline-neutral"> </span>
|
|
783
|
-
<span class="cline-any cline-neutral"> </span>
|
|
784
|
-
<span class="cline-any cline-no"> </span>
|
|
785
|
-
<span class="cline-any cline-neutral"> </span>
|
|
786
|
-
<span class="cline-any cline-neutral"> </span>
|
|
787
|
-
<span class="cline-any cline-yes">3x</span>
|
|
788
|
-
<span class="cline-any cline-neutral"> </span>
|
|
789
|
-
<span class="cline-any cline-neutral"> </span>
|
|
790
|
-
<span class="cline-any cline-neutral"> </span>
|
|
791
|
-
<span class="cline-any cline-neutral"> </span>
|
|
792
|
-
<span class="cline-any cline-neutral"> </span>
|
|
793
|
-
<span class="cline-any cline-neutral"> </span>
|
|
794
|
-
<span class="cline-any cline-neutral"> </span>
|
|
795
|
-
<span class="cline-any cline-yes">3x</span>
|
|
796
|
-
<span class="cline-any cline-yes">6x</span>
|
|
797
|
-
<span class="cline-any cline-neutral"> </span>
|
|
798
|
-
<span class="cline-any cline-neutral"> </span>
|
|
799
|
-
<span class="cline-any cline-yes">3x</span>
|
|
800
|
-
<span class="cline-any cline-no"> </span>
|
|
801
|
-
<span class="cline-any cline-neutral"> </span>
|
|
802
|
-
<span class="cline-any cline-neutral"> </span>
|
|
803
|
-
<span class="cline-any cline-yes">3x</span>
|
|
804
|
-
<span class="cline-any cline-neutral"> </span>
|
|
805
|
-
<span class="cline-any cline-neutral"> </span>
|
|
806
|
-
<span class="cline-any cline-neutral"> </span>
|
|
807
|
-
<span class="cline-any cline-neutral"> </span>
|
|
808
|
-
<span class="cline-any cline-yes">4x</span>
|
|
809
|
-
<span class="cline-any cline-neutral"> </span>
|
|
810
|
-
<span class="cline-any cline-neutral"> </span>
|
|
811
|
-
<span class="cline-any cline-neutral"> </span>
|
|
812
|
-
<span class="cline-any cline-neutral"> </span>
|
|
813
|
-
<span class="cline-any cline-neutral"> </span>
|
|
814
|
-
<span class="cline-any cline-neutral"> </span>
|
|
815
|
-
<span class="cline-any cline-neutral"> </span>
|
|
816
|
-
<span class="cline-any cline-neutral"> </span>
|
|
817
|
-
<span class="cline-any cline-neutral"> </span>
|
|
818
|
-
<span class="cline-any cline-neutral"> </span>
|
|
819
|
-
<span class="cline-any cline-neutral"> </span>
|
|
820
|
-
<span class="cline-any cline-neutral"> </span>
|
|
821
|
-
<span class="cline-any cline-neutral"> </span>
|
|
822
|
-
<span class="cline-any cline-neutral"> </span>
|
|
823
|
-
<span class="cline-any cline-neutral"> </span>
|
|
824
|
-
<span class="cline-any cline-neutral"> </span>
|
|
825
|
-
<span class="cline-any cline-neutral"> </span>
|
|
826
|
-
<span class="cline-any cline-neutral"> </span>
|
|
827
|
-
<span class="cline-any cline-neutral"> </span>
|
|
828
|
-
<span class="cline-any cline-neutral"> </span>
|
|
829
|
-
<span class="cline-any cline-no"> </span>
|
|
830
|
-
<span class="cline-any cline-neutral"> </span>
|
|
831
|
-
<span class="cline-any cline-neutral"> </span>
|
|
832
|
-
<span class="cline-any cline-neutral"> </span>
|
|
833
|
-
<span class="cline-any cline-neutral"> </span>
|
|
834
|
-
<span class="cline-any cline-neutral"> </span>
|
|
835
|
-
<span class="cline-any cline-neutral"> </span>
|
|
836
|
-
<span class="cline-any cline-neutral"> </span>
|
|
837
|
-
<span class="cline-any cline-neutral"> </span>
|
|
838
|
-
<span class="cline-any cline-no"> </span>
|
|
839
|
-
<span class="cline-any cline-no"> </span>
|
|
840
|
-
<span class="cline-any cline-neutral"> </span>
|
|
841
|
-
<span class="cline-any cline-neutral"> </span>
|
|
842
|
-
<span class="cline-any cline-no"> </span>
|
|
843
|
-
<span class="cline-any cline-no"> </span>
|
|
844
|
-
<span class="cline-any cline-no"> </span>
|
|
845
|
-
<span class="cline-any cline-neutral"> </span>
|
|
846
|
-
<span class="cline-any cline-neutral"> </span>
|
|
847
|
-
<span class="cline-any cline-neutral"> </span>
|
|
848
|
-
<span class="cline-any cline-neutral"> </span>
|
|
849
|
-
<span class="cline-any cline-neutral"> </span>
|
|
850
|
-
<span class="cline-any cline-no"> </span>
|
|
851
|
-
<span class="cline-any cline-neutral"> </span>
|
|
852
|
-
<span class="cline-any cline-neutral"> </span>
|
|
853
|
-
<span class="cline-any cline-no"> </span>
|
|
854
|
-
<span class="cline-any cline-neutral"> </span>
|
|
855
|
-
<span class="cline-any cline-neutral"> </span>
|
|
856
|
-
<span class="cline-any cline-neutral"> </span>
|
|
857
|
-
<span class="cline-any cline-neutral"> </span>
|
|
858
|
-
<span class="cline-any cline-neutral"> </span>
|
|
859
|
-
<span class="cline-any cline-no"> </span>
|
|
860
|
-
<span class="cline-any cline-neutral"> </span>
|
|
861
|
-
<span class="cline-any cline-neutral"> </span>
|
|
862
|
-
<span class="cline-any cline-neutral"> </span>
|
|
863
|
-
<span class="cline-any cline-neutral"> </span>
|
|
864
|
-
<span class="cline-any cline-neutral"> </span>
|
|
865
|
-
<span class="cline-any cline-neutral"> </span>
|
|
866
|
-
<span class="cline-any cline-neutral"> </span>
|
|
867
|
-
<span class="cline-any cline-yes">10x</span>
|
|
868
|
-
<span class="cline-any cline-neutral"> </span>
|
|
869
|
-
<span class="cline-any cline-neutral"> </span>
|
|
870
|
-
<span class="cline-any cline-yes">10x</span>
|
|
871
|
-
<span class="cline-any cline-no"> </span>
|
|
872
|
-
<span class="cline-any cline-neutral"> </span>
|
|
873
|
-
<span class="cline-any cline-neutral"> </span>
|
|
874
|
-
<span class="cline-any cline-neutral"> </span>
|
|
875
|
-
<span class="cline-any cline-neutral"> </span>
|
|
876
|
-
<span class="cline-any cline-no"> </span>
|
|
877
|
-
<span class="cline-any cline-neutral"> </span>
|
|
878
|
-
<span class="cline-any cline-neutral"> </span>
|
|
879
|
-
<span class="cline-any cline-no"> </span>
|
|
880
|
-
<span class="cline-any cline-neutral"> </span>
|
|
881
|
-
<span class="cline-any cline-neutral"> </span>
|
|
882
|
-
<span class="cline-any cline-no"> </span>
|
|
883
|
-
<span class="cline-any cline-neutral"> </span>
|
|
884
|
-
<span class="cline-any cline-neutral"> </span>
|
|
885
|
-
<span class="cline-any cline-neutral"> </span>
|
|
886
|
-
<span class="cline-any cline-neutral"> </span>
|
|
887
|
-
<span class="cline-any cline-neutral"> </span>
|
|
888
|
-
<span class="cline-any cline-no"> </span>
|
|
889
|
-
<span class="cline-any cline-neutral"> </span>
|
|
890
|
-
<span class="cline-any cline-neutral"> </span>
|
|
891
|
-
<span class="cline-any cline-neutral"> </span>
|
|
892
|
-
<span class="cline-any cline-yes">10x</span>
|
|
893
|
-
<span class="cline-any cline-neutral"> </span>
|
|
894
|
-
<span class="cline-any cline-neutral"> </span>
|
|
895
|
-
<span class="cline-any cline-neutral"> </span>
|
|
896
|
-
<span class="cline-any cline-yes">10x</span>
|
|
897
|
-
<span class="cline-any cline-neutral"> </span>
|
|
898
|
-
<span class="cline-any cline-neutral"> </span>
|
|
899
|
-
<span class="cline-any cline-neutral"> </span>
|
|
900
|
-
<span class="cline-any cline-neutral"> </span>
|
|
901
|
-
<span class="cline-any cline-neutral"> </span>
|
|
902
|
-
<span class="cline-any cline-neutral"> </span>
|
|
903
|
-
<span class="cline-any cline-neutral"> </span>
|
|
904
|
-
<span class="cline-any cline-neutral"> </span>
|
|
905
|
-
<span class="cline-any cline-yes">10x</span>
|
|
906
|
-
<span class="cline-any cline-yes">1x</span>
|
|
907
|
-
<span class="cline-any cline-neutral"> </span>
|
|
908
|
-
<span class="cline-any cline-neutral"> </span>
|
|
909
|
-
<span class="cline-any cline-yes">9x</span>
|
|
910
|
-
<span class="cline-any cline-yes">9x</span>
|
|
911
|
-
<span class="cline-any cline-no"> </span>
|
|
912
|
-
<span class="cline-any cline-neutral"> </span>
|
|
913
|
-
<span class="cline-any cline-neutral"> </span>
|
|
914
|
-
<span class="cline-any cline-neutral"> </span>
|
|
915
|
-
<span class="cline-any cline-neutral"> </span>
|
|
916
|
-
<span class="cline-any cline-neutral"> </span>
|
|
917
|
-
<span class="cline-any cline-yes">9x</span>
|
|
918
|
-
<span class="cline-any cline-neutral"> </span>
|
|
919
|
-
<span class="cline-any cline-neutral"> </span>
|
|
920
|
-
<span class="cline-any cline-yes">9x</span>
|
|
921
|
-
<span class="cline-any cline-neutral"> </span>
|
|
922
|
-
<span class="cline-any cline-neutral"> </span>
|
|
923
|
-
<span class="cline-any cline-neutral"> </span>
|
|
924
|
-
<span class="cline-any cline-neutral"> </span>
|
|
925
|
-
<span class="cline-any cline-neutral"> </span>
|
|
926
|
-
<span class="cline-any cline-yes">9x</span>
|
|
927
|
-
<span class="cline-any cline-neutral"> </span>
|
|
928
|
-
<span class="cline-any cline-neutral"> </span>
|
|
929
|
-
<span class="cline-any cline-neutral"> </span>
|
|
930
|
-
<span class="cline-any cline-neutral"> </span>
|
|
931
|
-
<span class="cline-any cline-neutral"> </span>
|
|
932
|
-
<span class="cline-any cline-neutral"> </span>
|
|
933
|
-
<span class="cline-any cline-neutral"> </span>
|
|
934
|
-
<span class="cline-any cline-neutral"> </span>
|
|
935
|
-
<span class="cline-any cline-yes">9x</span>
|
|
936
|
-
<span class="cline-any cline-neutral"> </span>
|
|
937
|
-
<span class="cline-any cline-neutral"> </span>
|
|
938
|
-
<span class="cline-any cline-yes">9x</span>
|
|
939
|
-
<span class="cline-any cline-neutral"> </span>
|
|
940
|
-
<span class="cline-any cline-neutral"> </span>
|
|
941
|
-
<span class="cline-any cline-yes">9x</span>
|
|
942
|
-
<span class="cline-any cline-neutral"> </span>
|
|
943
|
-
<span class="cline-any cline-neutral"> </span>
|
|
944
|
-
<span class="cline-any cline-no"> </span>
|
|
945
|
-
<span class="cline-any cline-neutral"> </span>
|
|
946
|
-
<span class="cline-any cline-neutral"> </span>
|
|
947
|
-
<span class="cline-any cline-neutral"> </span>
|
|
948
|
-
<span class="cline-any cline-neutral"> </span>
|
|
949
|
-
<span class="cline-any cline-neutral"> </span>
|
|
950
|
-
<span class="cline-any cline-yes">9x</span>
|
|
951
|
-
<span class="cline-any cline-neutral"> </span>
|
|
952
|
-
<span class="cline-any cline-neutral"> </span>
|
|
953
|
-
<span class="cline-any cline-neutral"> </span>
|
|
954
|
-
<span class="cline-any cline-no"> </span>
|
|
955
|
-
<span class="cline-any cline-neutral"> </span>
|
|
956
|
-
<span class="cline-any cline-neutral"> </span>
|
|
957
|
-
<span class="cline-any cline-neutral"> </span>
|
|
958
|
-
<span class="cline-any cline-neutral"> </span>
|
|
959
|
-
<span class="cline-any cline-neutral"> </span>
|
|
960
|
-
<span class="cline-any cline-no"> </span>
|
|
961
|
-
<span class="cline-any cline-no"> </span>
|
|
962
|
-
<span class="cline-any cline-no"> </span>
|
|
963
|
-
<span class="cline-any cline-neutral"> </span>
|
|
964
|
-
<span class="cline-any cline-no"> </span>
|
|
965
|
-
<span class="cline-any cline-neutral"> </span>
|
|
966
|
-
<span class="cline-any cline-neutral"> </span>
|
|
967
|
-
<span class="cline-any cline-neutral"> </span>
|
|
968
|
-
<span class="cline-any cline-neutral"> </span>
|
|
969
|
-
<span class="cline-any cline-neutral"> </span>
|
|
970
|
-
<span class="cline-any cline-neutral"> </span>
|
|
971
|
-
<span class="cline-any cline-neutral"> </span>
|
|
972
|
-
<span class="cline-any cline-neutral"> </span>
|
|
973
|
-
<span class="cline-any cline-neutral"> </span>
|
|
974
|
-
<span class="cline-any cline-neutral"> </span>
|
|
975
|
-
<span class="cline-any cline-neutral"> </span>
|
|
976
|
-
<span class="cline-any cline-neutral"> </span>
|
|
977
|
-
<span class="cline-any cline-yes">37x</span>
|
|
978
|
-
<span class="cline-any cline-neutral"> </span>
|
|
979
|
-
<span class="cline-any cline-neutral"> </span>
|
|
980
|
-
<span class="cline-any cline-neutral"> </span>
|
|
981
|
-
<span class="cline-any cline-neutral"> </span>
|
|
982
|
-
<span class="cline-any cline-neutral"> </span>
|
|
983
|
-
<span class="cline-any cline-neutral"> </span>
|
|
984
|
-
<span class="cline-any cline-neutral"> </span>
|
|
985
|
-
<span class="cline-any cline-neutral"> </span>
|
|
986
|
-
<span class="cline-any cline-neutral"> </span>
|
|
987
|
-
<span class="cline-any cline-yes">37x</span>
|
|
988
|
-
<span class="cline-any cline-yes">3x</span>
|
|
989
|
-
<span class="cline-any cline-neutral"> </span>
|
|
990
|
-
<span class="cline-any cline-neutral"> </span>
|
|
991
|
-
<span class="cline-any cline-neutral"> </span>
|
|
992
|
-
<span class="cline-any cline-yes">34x</span>
|
|
993
|
-
<span class="cline-any cline-neutral"> </span>
|
|
994
|
-
<span class="cline-any cline-neutral"> </span>
|
|
995
|
-
<span class="cline-any cline-neutral"> </span>
|
|
996
|
-
<span class="cline-any cline-no"> </span>
|
|
997
|
-
<span class="cline-any cline-neutral"> </span>
|
|
998
|
-
<span class="cline-any cline-neutral"> </span>
|
|
999
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1000
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1001
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1002
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1003
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1004
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1005
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1006
|
-
<span class="cline-any cline-no"> </span>
|
|
1007
|
-
<span class="cline-any cline-no"> </span>
|
|
1008
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1009
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1010
|
-
<span class="cline-any cline-no"> </span>
|
|
1011
|
-
<span class="cline-any cline-no"> </span>
|
|
1012
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1013
|
-
<span class="cline-any cline-no"> </span>
|
|
1014
|
-
<span class="cline-any cline-no"> </span>
|
|
1015
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1016
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1017
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1018
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1019
|
-
<span class="cline-any cline-no"> </span>
|
|
1020
|
-
<span class="cline-any cline-no"> </span>
|
|
1021
|
-
<span class="cline-any cline-no"> </span>
|
|
1022
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1023
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1024
|
-
<span class="cline-any cline-no"> </span>
|
|
1025
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1026
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1027
|
-
<span class="cline-any cline-no"> </span>
|
|
1028
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1029
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1030
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1031
|
-
<span class="cline-any cline-no"> </span>
|
|
1032
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1033
|
-
<span class="cline-any cline-no"> </span>
|
|
1034
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1035
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1036
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1037
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1038
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1039
|
-
<span class="cline-any cline-no"> </span>
|
|
1040
|
-
<span class="cline-any cline-no"> </span>
|
|
1041
|
-
<span class="cline-any cline-no"> </span>
|
|
1042
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1043
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1044
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1045
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1046
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1047
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1048
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1049
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1050
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1051
|
-
<span class="cline-any cline-no"> </span>
|
|
1052
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1053
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1054
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1055
|
-
<span class="cline-any cline-no"> </span>
|
|
1056
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1057
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1058
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1059
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1060
|
-
<span class="cline-any cline-no"> </span>
|
|
1061
|
-
<span class="cline-any cline-no"> </span>
|
|
1062
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1063
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1064
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1065
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1066
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1067
|
-
<span class="cline-any cline-no"> </span>
|
|
1068
|
-
<span class="cline-any cline-no"> </span>
|
|
1069
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1070
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1071
|
-
<span class="cline-any cline-no"> </span>
|
|
1072
|
-
<span class="cline-any cline-no"> </span>
|
|
1073
|
-
<span class="cline-any cline-no"> </span>
|
|
1074
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1075
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1076
|
-
<span class="cline-any cline-no"> </span>
|
|
1077
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1078
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1079
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1080
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1081
|
-
<span class="cline-any cline-no"> </span>
|
|
1082
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1083
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1084
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1085
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1086
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1087
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1088
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1089
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1090
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1091
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1092
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1093
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1094
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1095
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1096
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1097
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1098
|
-
<span class="cline-any cline-no"> </span>
|
|
1099
|
-
<span class="cline-any cline-no"> </span>
|
|
1100
|
-
<span class="cline-any cline-no"> </span>
|
|
1101
|
-
<span class="cline-any cline-no"> </span>
|
|
1102
|
-
<span class="cline-any cline-no"> </span>
|
|
1103
|
-
<span class="cline-any cline-no"> </span>
|
|
1104
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1105
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1106
|
-
<span class="cline-any cline-no"> </span>
|
|
1107
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1108
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1109
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1110
|
-
<span class="cline-any cline-no"> </span>
|
|
1111
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1112
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1113
|
-
<span class="cline-any cline-no"> </span>
|
|
1114
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1115
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1116
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1117
|
-
<span class="cline-any cline-no"> </span>
|
|
1118
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1119
|
-
<span class="cline-any cline-no"> </span>
|
|
1120
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1121
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1122
|
-
<span class="cline-any cline-no"> </span>
|
|
1123
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1124
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1125
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1126
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1127
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1128
|
-
<span class="cline-any cline-no"> </span>
|
|
1129
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1130
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1131
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1132
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1133
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1134
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1135
|
-
<span class="cline-any cline-yes">9x</span>
|
|
1136
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1137
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1138
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1139
|
-
<span class="cline-any cline-yes">9x</span>
|
|
1140
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1141
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1142
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1143
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1144
|
-
<span class="cline-any cline-yes">9x</span>
|
|
1145
|
-
<span class="cline-any cline-yes">2x</span>
|
|
1146
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1147
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1148
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1149
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1150
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1151
|
-
<span class="cline-any cline-yes">7x</span>
|
|
1152
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1153
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1154
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1155
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1156
|
-
<span class="cline-any cline-yes">7x</span>
|
|
1157
|
-
<span class="cline-any cline-yes">15x</span>
|
|
1158
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1159
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1160
|
-
<span class="cline-any cline-yes">7x</span>
|
|
1161
|
-
<span class="cline-any cline-no"> </span>
|
|
1162
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1163
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1164
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1165
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1166
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1167
|
-
<span class="cline-any cline-yes">7x</span>
|
|
1168
|
-
<span class="cline-any cline-yes">7x</span>
|
|
1169
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1170
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1171
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1172
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1173
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1174
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1175
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1176
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1177
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1178
|
-
<span class="cline-any cline-yes">7x</span>
|
|
1179
|
-
<span class="cline-any cline-yes">1x</span>
|
|
1180
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1181
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1182
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1183
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1184
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1185
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1186
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1187
|
-
<span class="cline-any cline-yes">2x</span>
|
|
1188
|
-
<span class="cline-any cline-yes">1x</span>
|
|
1189
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1190
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1191
|
-
<span class="cline-any cline-yes">1x</span>
|
|
1192
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1193
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1194
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1195
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1196
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1197
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1198
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1199
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1200
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1201
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1202
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1203
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1204
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1205
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1206
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1207
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1208
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1209
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1210
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1211
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1212
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1213
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1214
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1215
|
-
<span class="cline-any cline-yes">2x</span>
|
|
1216
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1217
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1218
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1219
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1220
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1221
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1222
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1223
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1224
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1225
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1226
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1227
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1228
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1229
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1230
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1231
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1232
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1233
|
-
<span class="cline-any cline-yes">17x</span>
|
|
1234
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1235
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1236
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1237
|
-
<span class="cline-any cline-yes">17x</span>
|
|
1238
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1239
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1240
|
-
<span class="cline-any cline-yes">14x</span>
|
|
1241
|
-
<span class="cline-any cline-yes">4x</span>
|
|
1242
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1243
|
-
<span class="cline-any cline-yes">14x</span>
|
|
1244
|
-
<span class="cline-any cline-yes">4x</span>
|
|
1245
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1246
|
-
<span class="cline-any cline-yes">14x</span>
|
|
1247
|
-
<span class="cline-any cline-no"> </span>
|
|
1248
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1249
|
-
<span class="cline-any cline-yes">14x</span>
|
|
1250
|
-
<span class="cline-any cline-yes">2x</span>
|
|
1251
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1252
|
-
<span class="cline-any cline-yes">14x</span>
|
|
1253
|
-
<span class="cline-any cline-yes">4x</span>
|
|
1254
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1255
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1256
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1257
|
-
<span class="cline-any cline-yes">14x</span>
|
|
1258
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1259
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1260
|
-
<span class="cline-any cline-yes">14x</span>
|
|
1261
|
-
<span class="cline-any cline-yes">4x</span>
|
|
1262
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1263
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1264
|
-
<span class="cline-any cline-yes">14x</span>
|
|
1265
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1266
|
-
<span class="cline-any cline-yes">14x</span>
|
|
1267
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1268
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1269
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1270
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1271
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1272
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1273
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1274
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1275
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1276
|
-
<span class="cline-any cline-yes">4x</span>
|
|
1277
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1278
|
-
<span class="cline-any cline-yes">4x</span>
|
|
1279
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1280
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1281
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1282
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1283
|
-
<span class="cline-any cline-yes">4x</span>
|
|
1284
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1285
|
-
<span class="cline-any cline-yes">2x</span>
|
|
1286
|
-
<span class="cline-any cline-yes">2x</span>
|
|
1287
|
-
<span class="cline-any cline-yes">2x</span>
|
|
1288
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1289
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1290
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1291
|
-
<span class="cline-any cline-yes">2x</span>
|
|
1292
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1293
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1294
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1295
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1296
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1297
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1298
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1299
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1300
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1301
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1302
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1303
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1304
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1305
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1306
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1307
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1308
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1309
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1310
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1311
|
-
<span class="cline-any cline-yes">6x</span>
|
|
1312
|
-
<span class="cline-any cline-yes">1x</span>
|
|
1313
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1314
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1315
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1316
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1317
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1318
|
-
<span class="cline-any cline-yes">5x</span>
|
|
1319
|
-
<span class="cline-any cline-yes">9x</span>
|
|
1320
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1321
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1322
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1323
|
-
<span class="cline-any cline-yes">5x</span>
|
|
1324
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1325
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1326
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1327
|
-
<span class="cline-any cline-yes">5x</span>
|
|
1328
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1329
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1330
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import {
|
|
1331
|
-
Injectable,
|
|
1332
|
-
NotFoundException,
|
|
1333
|
-
Logger,
|
|
1334
|
-
forwardRef,
|
|
1335
|
-
Inject,
|
|
1336
|
-
} from '@nestjs/common';
|
|
1337
|
-
import { InjectRepository } from '@nestjs/typeorm';
|
|
1338
|
-
import { Repository, In } from 'typeorm';
|
|
1339
|
-
import {
|
|
1340
|
-
Session,
|
|
1341
|
-
SessionInput,
|
|
1342
|
-
ContextTemplate,
|
|
1343
|
-
AIAction,
|
|
1344
|
-
ExecutionLog,
|
|
1345
|
-
} from '../core-entities';
|
|
1346
|
-
import {
|
|
1347
|
-
CreateSessionInputDto,
|
|
1348
|
-
UpdateSessionInputDto,
|
|
1349
|
-
UpdateSessionInputContentDto,
|
|
1350
|
-
BatchToggleDiscardedDto,
|
|
1351
|
-
} from './dto/session-input.dto';
|
|
1352
|
-
import {
|
|
1353
|
-
AIActionsService,
|
|
1354
|
-
AIActionStatus,
|
|
1355
|
-
} from '../ai-actions/ai-actions.service';
|
|
1356
|
-
import { SystemPromptsService } from '../system-prompts/system-prompts.service';
|
|
1357
|
-
import { SessionInputContextService } from './session-input-context.service';
|
|
1358
|
-
import { ApplicationStateService } from '../application-state/application-state.service';
|
|
1359
|
-
import { ChatService } from '../interactive-chat/chat.service';
|
|
1360
|
-
import { LlmResponsesService } from '../llm-responses/llm-responses.service';
|
|
1361
|
-
|
|
1362
|
-
function formatActionStatusForLLM(status: AIActionStatus): string {
|
|
1363
|
-
switch (status) {
|
|
1364
|
-
case AIActionStatus.CONFIRMED_KEPT:
|
|
1365
|
-
return 'The user confirmed and kept the changes.';
|
|
1366
|
-
<span class="branch-1 cbranch-no" title="branch not covered" > case AIActionStatus.CONFIRMED_REVERTED:</span>
|
|
1367
|
-
<span class="cstat-no" title="statement not covered" > return 'The user chose to revert the changes.';</span>
|
|
1368
|
-
<span class="branch-2 cbranch-no" title="branch not covered" > case AIActionStatus.REJECTED_BEFORE_APPLY:</span>
|
|
1369
|
-
<span class="cstat-no" title="statement not covered" > return 'The action was rejected by the user before being applied.';</span>
|
|
1370
|
-
case AIActionStatus.EXECUTION_FAILED:
|
|
1371
|
-
return 'The action failed to execute.';
|
|
1372
|
-
<span class="branch-4 cbranch-no" title="branch not covered" > case AIActionStatus.REVERT_FAILED:</span>
|
|
1373
|
-
<span class="cstat-no" title="statement not covered" > return 'Reverting the action failed.';</span>
|
|
1374
|
-
<span class="branch-5 cbranch-no" title="branch not covered" > default:</span>
|
|
1375
|
-
<span class="cstat-no" title="statement not covered" > return `The action's final status was '${status}'.`;</span>
|
|
1376
|
-
}
|
|
1377
|
-
}
|
|
1378
|
-
|
|
1379
|
-
@Injectable()
|
|
1380
|
-
export class SessionInputsService {
|
|
1381
|
-
private readonly logger = new Logger(SessionInputsService.name);
|
|
1382
|
-
|
|
1383
|
-
constructor(
|
|
1384
|
-
@InjectRepository(Session)
|
|
1385
|
-
private sessionsRepository: Repository<Session>,
|
|
1386
|
-
@InjectRepository(SessionInput)
|
|
1387
|
-
private sessionInputsRepository: Repository<SessionInput>,
|
|
1388
|
-
@InjectRepository(ContextTemplate)
|
|
1389
|
-
private contextTemplatesRepository: Repository<ContextTemplate>,
|
|
1390
|
-
@InjectRepository(AIAction)
|
|
1391
|
-
private aiActionsRepository: Repository<AIAction>,
|
|
1392
|
-
@InjectRepository(ExecutionLog)
|
|
1393
|
-
private executionLogsRepository: Repository<ExecutionLog>,
|
|
1394
|
-
@Inject(forwardRef(() => AIActionsService))
|
|
1395
|
-
private readonly aiActionsService: AIActionsService,
|
|
1396
|
-
private readonly systemPromptsService: SystemPromptsService,
|
|
1397
|
-
private readonly sessionInputContextService: SessionInputContextService,
|
|
1398
|
-
private readonly applicationStateService: ApplicationStateService,
|
|
1399
|
-
@Inject(forwardRef(() => ChatService))
|
|
1400
|
-
private readonly chatService: ChatService,
|
|
1401
|
-
@Inject(forwardRef(() => LlmResponsesService))
|
|
1402
|
-
private readonly llmResponsesService: LlmResponsesService,
|
|
1403
|
-
) {}
|
|
1404
|
-
|
|
1405
|
-
private generatePreviousActionsSummary(session: Session): string {
|
|
1406
|
-
if (!session.sessionInputs || session.sessionInputs.length === 0) {
|
|
1407
|
-
return '';
|
|
1408
|
-
}
|
|
1409
|
-
|
|
1410
|
-
const lastInput = session.sessionInputs[session.sessionInputs.length - 1];
|
|
1411
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (
|
|
1412
|
-
!lastInput ||
|
|
1413
|
-
!lastInput.aiActions ||
|
|
1414
|
-
lastInput.aiActions.length === 0
|
|
1415
|
-
) {
|
|
1416
|
-
<span class="cstat-no" title="statement not covered" > return '';</span>
|
|
1417
|
-
}
|
|
1418
|
-
|
|
1419
|
-
const finalStatuses: string[] = [
|
|
1420
|
-
AIActionStatus.REJECTED_BEFORE_APPLY,
|
|
1421
|
-
AIActionStatus.CONFIRMED_KEPT,
|
|
1422
|
-
AIActionStatus.CONFIRMED_REVERTED,
|
|
1423
|
-
AIActionStatus.EXECUTION_FAILED,
|
|
1424
|
-
AIActionStatus.REVERT_FAILED,
|
|
1425
|
-
];
|
|
1426
|
-
|
|
1427
|
-
const finalActions = lastInput.aiActions.filter((action: AIAction) =>
|
|
1428
|
-
finalStatuses.includes(action.status),
|
|
1429
|
-
);
|
|
1430
|
-
|
|
1431
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (finalActions.length === 0) {
|
|
1432
|
-
<span class="cstat-no" title="statement not covered" > return '';</span>
|
|
1433
|
-
}
|
|
1434
|
-
|
|
1435
|
-
return (
|
|
1436
|
-
'Summary of the results from your previous plan:\n' +
|
|
1437
|
-
finalActions
|
|
1438
|
-
.map(
|
|
1439
|
-
(action) =>
|
|
1440
|
-
`- For the action \`${action.action_type}\` on \`${
|
|
1441
|
-
action.file_path || action.command_string || 'N/A'
|
|
1442
|
-
}\`: ${formatActionStatusForLLM(action.status as AIActionStatus)}`,
|
|
1443
|
-
)
|
|
1444
|
-
.join('\n')
|
|
1445
|
-
);
|
|
1446
|
-
}
|
|
1447
|
-
|
|
1448
|
-
/**
|
|
1449
|
-
* Generates the full context string for a given session input DTO WITHOUT
|
|
1450
|
-
* creating a SessionInput entity or triggering an LLM call.
|
|
1451
|
-
* This is useful for pre-validating context size before creating a follow-up.
|
|
1452
|
-
*
|
|
1453
|
-
* @param sessionId - The session ID to generate context for
|
|
1454
|
-
* @param createSessionInputDto - The input data to generate context from
|
|
1455
|
-
* @returns The generated context string
|
|
1456
|
-
*/
|
|
1457
|
-
<span class="fstat-no" title="function not covered" > async </span>generateContextString(
|
|
1458
|
-
sessionId: string,
|
|
1459
|
-
createSessionInputDto: CreateSessionInputDto,
|
|
1460
|
-
): Promise<string> {
|
|
1461
|
-
const session = <span class="cstat-no" title="statement not covered" >await this.sessionsRepository.findOne({</span>
|
|
1462
|
-
where: { id: sessionId },
|
|
1463
|
-
relations: ['systemPrompt', 'sessionInputs', 'sessionInputs.aiActions'],
|
|
1464
|
-
order: {
|
|
1465
|
-
sessionInputs: {
|
|
1466
|
-
created_at: 'ASC',
|
|
1467
|
-
},
|
|
1468
|
-
},
|
|
1469
|
-
});
|
|
1470
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!session) {</span>
|
|
1471
|
-
<span class="cstat-no" title="statement not covered" > throw new NotFoundException(`Session with ID "${sessionId}" not found`);</span>
|
|
1472
|
-
}
|
|
1473
|
-
|
|
1474
|
-
let contextTemplate: ContextTemplate | null = <span class="cstat-no" title="statement not covered" >null;</span>
|
|
1475
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (createSessionInputDto.context_template_id) {</span>
|
|
1476
|
-
<span class="cstat-no" title="statement not covered" > contextTemplate = await this.contextTemplatesRepository.findOneBy({</span>
|
|
1477
|
-
id: createSessionInputDto.context_template_id,
|
|
1478
|
-
});
|
|
1479
|
-
}
|
|
1480
|
-
|
|
1481
|
-
const previous_actions_summary =
|
|
1482
|
-
<span class="cstat-no" title="statement not covered" > this.generatePreviousActionsSummary(session);</span>
|
|
1483
|
-
|
|
1484
|
-
const generated_context_string =
|
|
1485
|
-
<span class="cstat-no" title="statement not covered" > await this.sessionInputContextService.generateContext(</span>
|
|
1486
|
-
createSessionInputDto,
|
|
1487
|
-
contextTemplate,
|
|
1488
|
-
previous_actions_summary,
|
|
1489
|
-
);
|
|
1490
|
-
|
|
1491
|
-
<span class="cstat-no" title="statement not covered" > return generated_context_string;</span>
|
|
1492
|
-
}
|
|
1493
|
-
|
|
1494
|
-
async create(
|
|
1495
|
-
sessionId: string,
|
|
1496
|
-
createSessionInputDto: CreateSessionInputDto,
|
|
1497
|
-
): Promise<SessionInput | null> {
|
|
1498
|
-
const isManualFlow =
|
|
1499
|
-
await this.applicationStateService.getManualLlmEnabled();
|
|
1500
|
-
|
|
1501
|
-
// Check skip_persistence flag for native tool calling follow-ups
|
|
1502
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (createSessionInputDto.skip_persistence) {
|
|
1503
|
-
<span class="cstat-no" title="statement not covered" > this.logger.log(</span>
|
|
1504
|
-
`Triggering follow-up for session ${sessionId} without persistence.`,
|
|
1505
|
-
);
|
|
1506
|
-
|
|
1507
|
-
// For follow-ups, use empty context or minimal prompt
|
|
1508
|
-
const generated_context_string = <span class="cstat-no" title="statement not covered" >createSessionInputDto.user_prompt || '';</span>
|
|
1509
|
-
|
|
1510
|
-
// Trigger LLM call directly without creating SessionInput
|
|
1511
|
-
<span class="cstat-no" title="statement not covered" > this.chatService</span>
|
|
1512
|
-
.sendMessage(sessionId, generated_context_string, isManualFlow)
|
|
1513
|
-
.catch(<span class="fstat-no" title="function not covered" >(e</span>rr) => {
|
|
1514
|
-
<span class="cstat-no" title="statement not covered" > this.logger.error(</span>
|
|
1515
|
-
`LLM follow-up call failed for session ${sessionId}: ${err.message}`,
|
|
1516
|
-
err.stack,
|
|
1517
|
-
);
|
|
1518
|
-
});
|
|
1519
|
-
|
|
1520
|
-
<span class="cstat-no" title="statement not covered" > return null; </span>// No SessionInput created
|
|
1521
|
-
}
|
|
1522
|
-
|
|
1523
|
-
// Normal flow: Create SessionInput with persistence
|
|
1524
|
-
this.logger.log(
|
|
1525
|
-
`Creating new session input for session ${sessionId}. Manual flow: ${isManualFlow}`,
|
|
1526
|
-
);
|
|
1527
|
-
|
|
1528
|
-
const session = await this.sessionsRepository.findOne({
|
|
1529
|
-
where: { id: sessionId },
|
|
1530
|
-
relations: ['systemPrompt', 'sessionInputs', 'sessionInputs.aiActions'],
|
|
1531
|
-
order: {
|
|
1532
|
-
sessionInputs: {
|
|
1533
|
-
created_at: 'ASC',
|
|
1534
|
-
},
|
|
1535
|
-
},
|
|
1536
|
-
});
|
|
1537
|
-
if (!session) {
|
|
1538
|
-
throw new NotFoundException(`Session with ID "${sessionId}" not found`);
|
|
1539
|
-
}
|
|
1540
|
-
|
|
1541
|
-
let contextTemplate: ContextTemplate | null = null;
|
|
1542
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (createSessionInputDto.context_template_id) {
|
|
1543
|
-
<span class="cstat-no" title="statement not covered" > contextTemplate = await this.contextTemplatesRepository.findOneBy({</span>
|
|
1544
|
-
id: createSessionInputDto.context_template_id,
|
|
1545
|
-
});
|
|
1546
|
-
}
|
|
1547
|
-
|
|
1548
|
-
const previous_actions_summary =
|
|
1549
|
-
this.generatePreviousActionsSummary(session);
|
|
1550
|
-
|
|
1551
|
-
const generated_context_string =
|
|
1552
|
-
await this.sessionInputContextService.generateContext(
|
|
1553
|
-
createSessionInputDto,
|
|
1554
|
-
contextTemplate,
|
|
1555
|
-
previous_actions_summary,
|
|
1556
|
-
);
|
|
1557
|
-
|
|
1558
|
-
const newSessionInputEntity = this.sessionInputsRepository.create({
|
|
1559
|
-
...createSessionInputDto,
|
|
1560
|
-
session: { id: sessionId },
|
|
1561
|
-
contextTemplate: contextTemplate,
|
|
1562
|
-
generated_context_string: generated_context_string,
|
|
1563
|
-
raw_llm_response: null, // Always start with null
|
|
1564
|
-
role: 'user', // Explicitly set role for user-initiated turns
|
|
1565
|
-
});
|
|
1566
|
-
|
|
1567
|
-
const savedSessionInput = await this.sessionInputsRepository.save(
|
|
1568
|
-
newSessionInputEntity,
|
|
1569
|
-
);
|
|
1570
|
-
await this.applicationStateService.setActiveSessionId(sessionId);
|
|
1571
|
-
|
|
1572
|
-
// Trigger the appropriate flow. This is now a fire-and-forget background task.
|
|
1573
|
-
this.chatService
|
|
1574
|
-
.sendMessage(sessionId, generated_context_string, isManualFlow)
|
|
1575
|
-
.catch(<span class="fstat-no" title="function not covered" >(e</span>rr) => {
|
|
1576
|
-
<span class="cstat-no" title="statement not covered" > this.logger.error(</span>
|
|
1577
|
-
`LLM call failed for input ID ${savedSessionInput.id}: ${err.message}`,
|
|
1578
|
-
err.stack,
|
|
1579
|
-
);
|
|
1580
|
-
});
|
|
1581
|
-
|
|
1582
|
-
return savedSessionInput;
|
|
1583
|
-
}
|
|
1584
|
-
|
|
1585
|
-
<span class="fstat-no" title="function not covered" > async </span>createFromRawLlmResponse(): Promise<SessionInput> {
|
|
1586
|
-
<span class="cstat-no" title="statement not covered" > throw new Error(</span>
|
|
1587
|
-
'This method is deprecated and its logic has moved to LlmResponsesService.',
|
|
1588
|
-
);
|
|
1589
|
-
}
|
|
1590
|
-
|
|
1591
|
-
<span class="fstat-no" title="function not covered" > async </span>findAllBySessionId(sessionId: string): Promise<SessionInput[]> {
|
|
1592
|
-
const session = <span class="cstat-no" title="statement not covered" >await this.sessionsRepository.findOneBy({ id: sessionId });</span>
|
|
1593
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!session) {</span>
|
|
1594
|
-
<span class="cstat-no" title="statement not covered" > throw new NotFoundException(`Session with ID "${sessionId}" not found`);</span>
|
|
1595
|
-
}
|
|
1596
|
-
<span class="cstat-no" title="statement not covered" > return this.sessionInputsRepository.find({</span>
|
|
1597
|
-
where: { session: { id: sessionId } },
|
|
1598
|
-
relations: ['contextTemplate', 'aiActions', 'aiActions.executionLogs'],
|
|
1599
|
-
order: {
|
|
1600
|
-
created_at: 'ASC',
|
|
1601
|
-
aiActions: {
|
|
1602
|
-
order_of_execution: 'ASC',
|
|
1603
|
-
},
|
|
1604
|
-
},
|
|
1605
|
-
});
|
|
1606
|
-
}
|
|
1607
|
-
|
|
1608
|
-
async findOne(sessionId: string, inputId: string): Promise<SessionInput> {
|
|
1609
|
-
const sessionInput = await this.sessionInputsRepository.findOne({
|
|
1610
|
-
where: { id: inputId, session: { id: sessionId } },
|
|
1611
|
-
relations: ['contextTemplate', 'aiActions', 'aiActions.executionLogs'],
|
|
1612
|
-
order: {
|
|
1613
|
-
aiActions: {
|
|
1614
|
-
order_of_execution: 'ASC',
|
|
1615
|
-
},
|
|
1616
|
-
},
|
|
1617
|
-
});
|
|
1618
|
-
|
|
1619
|
-
if (!sessionInput) {
|
|
1620
|
-
throw new NotFoundException(
|
|
1621
|
-
`SessionInput with ID "${inputId}" not found in Session "${sessionId}"`,
|
|
1622
|
-
);
|
|
1623
|
-
}
|
|
1624
|
-
return sessionInput;
|
|
1625
|
-
}
|
|
1626
|
-
|
|
1627
|
-
<span class="fstat-no" title="function not covered" > async </span>removeUntilHere(sessionId: string, inputId: string): Promise<void> {
|
|
1628
|
-
const session = <span class="cstat-no" title="statement not covered" >await this.sessionsRepository.findOne({</span>
|
|
1629
|
-
where: { id: sessionId },
|
|
1630
|
-
relations: ['sessionInputs', 'sessionInputs.aiActions'],
|
|
1631
|
-
order: {
|
|
1632
|
-
sessionInputs: {
|
|
1633
|
-
created_at: 'ASC',
|
|
1634
|
-
},
|
|
1635
|
-
},
|
|
1636
|
-
});
|
|
1637
|
-
|
|
1638
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!session) {</span>
|
|
1639
|
-
<span class="cstat-no" title="statement not covered" > throw new NotFoundException(`Session with ID "${sessionId}" not found`);</span>
|
|
1640
|
-
}
|
|
1641
|
-
|
|
1642
|
-
const targetIndex = <span class="cstat-no" title="statement not covered" >session.sessionInputs.findIndex(</span>
|
|
1643
|
-
<span class="fstat-no" title="function not covered" > (i</span>nput) => <span class="cstat-no" title="statement not covered" >input.id === inputId,</span>
|
|
1644
|
-
);
|
|
1645
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (targetIndex === -1) {</span>
|
|
1646
|
-
<span class="cstat-no" title="statement not covered" > throw new NotFoundException(</span>
|
|
1647
|
-
`SessionInput with ID "${inputId}" not found in Session "${sessionId}"`,
|
|
1648
|
-
);
|
|
1649
|
-
}
|
|
1650
|
-
|
|
1651
|
-
const inputsToDelete = <span class="cstat-no" title="statement not covered" >session.sessionInputs.slice(targetIndex + 1);</span>
|
|
1652
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (inputsToDelete.length === 0) {</span>
|
|
1653
|
-
<span class="cstat-no" title="statement not covered" > this.logger.log(</span>
|
|
1654
|
-
`No inputs after ${inputId} to delete in Session ${sessionId}.`,
|
|
1655
|
-
);
|
|
1656
|
-
<span class="cstat-no" title="statement not covered" > return;</span>
|
|
1657
|
-
}
|
|
1658
|
-
|
|
1659
|
-
const idsToDelete = <span class="cstat-no" title="statement not covered" >inputsToDelete.map(<span class="fstat-no" title="function not covered" >(i</span>nput) => <span class="cstat-no" title="statement not covered" >input.id)</span>;</span>
|
|
1660
|
-
|
|
1661
|
-
// Delete all inputs after the selected one
|
|
1662
|
-
// Cascade delete will handle associated AI actions
|
|
1663
|
-
const deleteResult = <span class="cstat-no" title="statement not covered" >await this.sessionInputsRepository.delete(idsToDelete);</span>
|
|
1664
|
-
|
|
1665
|
-
<span class="cstat-no" title="statement not covered" > this.logger.log(</span>
|
|
1666
|
-
`Deleted ${deleteResult.affected} SessionInputs (from ${idsToDelete[0]} onwards) from Session ${sessionId}.`,
|
|
1667
|
-
);
|
|
1668
|
-
}
|
|
1669
|
-
|
|
1670
|
-
<span class="fstat-no" title="function not covered" > async </span>remove(sessionId: string, inputId: string): Promise<void> {
|
|
1671
|
-
const sessionInput = <span class="cstat-no" title="statement not covered" >await this.findOne(sessionId, inputId);</span>
|
|
1672
|
-
<span class="cstat-no" title="statement not covered" > await this.sessionInputsRepository.remove(sessionInput);</span>
|
|
1673
|
-
<span class="cstat-no" title="statement not covered" > this.logger.log(</span>
|
|
1674
|
-
`Deleted SessionInput ${inputId} from Session ${sessionId}.`,
|
|
1675
|
-
);
|
|
1676
|
-
}
|
|
1677
|
-
|
|
1678
|
-
<span class="fstat-no" title="function not covered" > async </span>retry(
|
|
1679
|
-
sessionId: string,
|
|
1680
|
-
inputId: string,
|
|
1681
|
-
updateSessionInputDto: UpdateSessionInputDto,
|
|
1682
|
-
): Promise<SessionInput> {
|
|
1683
|
-
<span class="cstat-no" title="statement not covered" > this.logger.log(</span>
|
|
1684
|
-
`Retrying SessionInput ${inputId} for Session ${sessionId}.`,
|
|
1685
|
-
);
|
|
1686
|
-
|
|
1687
|
-
const sessionInput = <span class="cstat-no" title="statement not covered" >await this.sessionInputsRepository.findOne({</span>
|
|
1688
|
-
where: { id: inputId, session: { id: sessionId } },
|
|
1689
|
-
relations: ['session', 'session.systemPrompt'],
|
|
1690
|
-
});
|
|
1691
|
-
|
|
1692
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!sessionInput) {</span>
|
|
1693
|
-
<span class="cstat-no" title="statement not covered" > throw new NotFoundException(</span>
|
|
1694
|
-
`SessionInput with ID "${inputId}" not found in Session "${sessionId}"`,
|
|
1695
|
-
);
|
|
1696
|
-
}
|
|
1697
|
-
|
|
1698
|
-
// Update the prompt and optionally context template
|
|
1699
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (updateSessionInputDto.user_prompt) {</span>
|
|
1700
|
-
<span class="cstat-no" title="statement not covered" > sessionInput.user_prompt = updateSessionInputDto.user_prompt;</span>
|
|
1701
|
-
}
|
|
1702
|
-
|
|
1703
|
-
let contextTemplate: ContextTemplate | null = <span class="cstat-no" title="statement not covered" >null;</span>
|
|
1704
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (updateSessionInputDto.context_template_id) {</span>
|
|
1705
|
-
<span class="cstat-no" title="statement not covered" > contextTemplate = await this.contextTemplatesRepository.findOneBy({</span>
|
|
1706
|
-
id: updateSessionInputDto.context_template_id,
|
|
1707
|
-
});
|
|
1708
|
-
<span class="cstat-no" title="statement not covered" > sessionInput.contextTemplate = contextTemplate;</span>
|
|
1709
|
-
}
|
|
1710
|
-
|
|
1711
|
-
// Regenerate context string if prompt changed
|
|
1712
|
-
const generated_context_string =
|
|
1713
|
-
<span class="cstat-no" title="statement not covered" > await this.sessionInputContextService.generateContext(</span>
|
|
1714
|
-
{
|
|
1715
|
-
user_prompt: sessionInput.user_prompt,
|
|
1716
|
-
context_template_id:
|
|
1717
|
-
contextTemplate?.id || sessionInput.context_template_id,
|
|
1718
|
-
ad_hoc_context_definition:
|
|
1719
|
-
updateSessionInputDto.ad_hoc_context_definition ||
|
|
1720
|
-
sessionInput.ad_hoc_context_definition,
|
|
1721
|
-
execution_strategy:
|
|
1722
|
-
updateSessionInputDto.execution_strategy ||
|
|
1723
|
-
sessionInput.execution_strategy,
|
|
1724
|
-
},
|
|
1725
|
-
contextTemplate,
|
|
1726
|
-
'', // No previous actions summary on retry
|
|
1727
|
-
);
|
|
1728
|
-
|
|
1729
|
-
// Reset LLM response fields
|
|
1730
|
-
<span class="cstat-no" title="statement not covered" > sessionInput.generated_context_string = generated_context_string;</span>
|
|
1731
|
-
<span class="cstat-no" title="statement not covered" > sessionInput.raw_llm_response = null;</span>
|
|
1732
|
-
<span class="cstat-no" title="statement not covered" > sessionInput.llm_response_explanation = null;</span>
|
|
1733
|
-
<span class="cstat-no" title="statement not covered" > sessionInput.tool_calls = null;</span>
|
|
1734
|
-
<span class="cstat-no" title="statement not covered" > sessionInput.thoughts = null;</span>
|
|
1735
|
-
<span class="cstat-no" title="statement not covered" > sessionInput.error_message = null;</span>
|
|
1736
|
-
|
|
1737
|
-
// Update timestamps
|
|
1738
|
-
<span class="cstat-no" title="statement not covered" > sessionInput.updated_at = new Date();</span>
|
|
1739
|
-
|
|
1740
|
-
// Save the updated input
|
|
1741
|
-
const updatedSessionInput =
|
|
1742
|
-
<span class="cstat-no" title="statement not covered" > await this.sessionInputsRepository.save(sessionInput);</span>
|
|
1743
|
-
|
|
1744
|
-
// Clear any existing AI actions for this input
|
|
1745
|
-
<span class="cstat-no" title="statement not covered" > await this.aiActionsService.deleteAllByInputId(inputId);</span>
|
|
1746
|
-
|
|
1747
|
-
// Trigger the LLM call again
|
|
1748
|
-
const isManualFlow =
|
|
1749
|
-
<span class="cstat-no" title="statement not covered" > await this.applicationStateService.getManualLlmEnabled();</span>
|
|
1750
|
-
|
|
1751
|
-
<span class="cstat-no" title="statement not covered" > this.chatService</span>
|
|
1752
|
-
.sendMessage(sessionId, generated_context_string, isManualFlow)
|
|
1753
|
-
.catch(<span class="fstat-no" title="function not covered" >(e</span>rr) => {
|
|
1754
|
-
<span class="cstat-no" title="statement not covered" > this.logger.error(</span>
|
|
1755
|
-
`LLM retry failed for input ID ${updatedSessionInput.id}: ${err.message}`,
|
|
1756
|
-
err.stack,
|
|
1757
|
-
);
|
|
1758
|
-
});
|
|
1759
|
-
|
|
1760
|
-
<span class="cstat-no" title="statement not covered" > return this.findOne(sessionId, updatedSessionInput.id);</span>
|
|
1761
|
-
}
|
|
1762
|
-
|
|
1763
|
-
async regenerateAiResponse(
|
|
1764
|
-
sessionId: string,
|
|
1765
|
-
inputId: string,
|
|
1766
|
-
): Promise<SessionInput> {
|
|
1767
|
-
this.logger.log(
|
|
1768
|
-
`Regenerating AI response for SessionInput ${inputId} in Session ${sessionId}.`,
|
|
1769
|
-
);
|
|
1770
|
-
|
|
1771
|
-
const sessionInput = await this.sessionInputsRepository.findOne({
|
|
1772
|
-
where: { id: inputId, session: { id: sessionId } },
|
|
1773
|
-
relations: ['session'],
|
|
1774
|
-
});
|
|
1775
|
-
|
|
1776
|
-
if (!sessionInput) {
|
|
1777
|
-
throw new NotFoundException(
|
|
1778
|
-
`SessionInput with ID "${inputId}" not found in Session "${sessionId}"`,
|
|
1779
|
-
);
|
|
1780
|
-
}
|
|
1781
|
-
|
|
1782
|
-
// Find all inputs ordered by sequence_number
|
|
1783
|
-
const allInputs = await this.sessionInputsRepository.find({
|
|
1784
|
-
where: { session: { id: sessionId } },
|
|
1785
|
-
order: { sequence_number: 'ASC' },
|
|
1786
|
-
});
|
|
1787
|
-
|
|
1788
|
-
const currentIndex = allInputs.findIndex(
|
|
1789
|
-
(input) => input.id === sessionInput.id,
|
|
1790
|
-
);
|
|
1791
|
-
|
|
1792
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (currentIndex === -1) {
|
|
1793
|
-
<span class="cstat-no" title="statement not covered" > throw new NotFoundException(</span>
|
|
1794
|
-
`SessionInput ${inputId} not found in session inputs list.`,
|
|
1795
|
-
);
|
|
1796
|
-
}
|
|
1797
|
-
|
|
1798
|
-
// Find the preceding user input that has generated_context_string
|
|
1799
|
-
let contextString: string | null = null;
|
|
1800
|
-
for (let i = currentIndex - 1; i >= 0; i--) {
|
|
1801
|
-
if (
|
|
1802
|
-
allInputs[i].role === 'user' &&
|
|
1803
|
-
allInputs[i].generated_context_string
|
|
1804
|
-
) {
|
|
1805
|
-
contextString = allInputs[i].generated_context_string;
|
|
1806
|
-
break;
|
|
1807
|
-
}
|
|
1808
|
-
}
|
|
1809
|
-
|
|
1810
|
-
if (!contextString) {
|
|
1811
|
-
throw new Error(
|
|
1812
|
-
`No preceding user input with generated_context_string found for SessionInput ${inputId}. Cannot regenerate.`,
|
|
1813
|
-
);
|
|
1814
|
-
}
|
|
1815
|
-
|
|
1816
|
-
// Delete subsequent inputs if any exist
|
|
1817
|
-
const subsequentInputs = allInputs.slice(currentIndex + 1);
|
|
1818
|
-
if (subsequentInputs.length > 0) {
|
|
1819
|
-
const idsToDelete = subsequentInputs.map((input) => input.id);
|
|
1820
|
-
this.logger.log(
|
|
1821
|
-
`Deleting ${idsToDelete.length} subsequent inputs for regeneration.`,
|
|
1822
|
-
);
|
|
1823
|
-
await this.sessionInputsRepository.delete(idsToDelete);
|
|
1824
|
-
}
|
|
1825
|
-
|
|
1826
|
-
// Delete all existing AI actions for this input
|
|
1827
|
-
await this.aiActionsService.deleteAllByInputId(inputId);
|
|
1828
|
-
|
|
1829
|
-
// Clear AI response fields
|
|
1830
|
-
sessionInput.raw_llm_response = null;
|
|
1831
|
-
sessionInput.thoughts = null;
|
|
1832
|
-
sessionInput.tool_calls = null;
|
|
1833
|
-
sessionInput.llm_response_explanation = null;
|
|
1834
|
-
sessionInput.error_message = null;
|
|
1835
|
-
sessionInput.input_token_count = null;
|
|
1836
|
-
sessionInput.output_token_count = null;
|
|
1837
|
-
sessionInput.cached_token_count = null;
|
|
1838
|
-
await this.sessionInputsRepository.save(sessionInput);
|
|
1839
|
-
|
|
1840
|
-
// Trigger the LLM call with the existing input ID
|
|
1841
|
-
const isManualFlow =
|
|
1842
|
-
await this.applicationStateService.getManualLlmEnabled();
|
|
1843
|
-
|
|
1844
|
-
this.chatService
|
|
1845
|
-
.sendMessage(sessionId, contextString, isManualFlow, inputId)
|
|
1846
|
-
.catch((err) => {
|
|
1847
|
-
this.logger.error(
|
|
1848
|
-
`LLM regeneration failed for input ID ${inputId}: ${err.message}`,
|
|
1849
|
-
err.stack,
|
|
1850
|
-
);
|
|
1851
|
-
});
|
|
1852
|
-
|
|
1853
|
-
return this.findOne(sessionId, inputId);
|
|
1854
|
-
}
|
|
1855
|
-
|
|
1856
|
-
/**
|
|
1857
|
-
* Silent update of input content without triggering LLM regeneration.
|
|
1858
|
-
* Use for redacting sensitive data or compressing session history.
|
|
1859
|
-
*/
|
|
1860
|
-
async updateContent(
|
|
1861
|
-
sessionId: string,
|
|
1862
|
-
inputId: string,
|
|
1863
|
-
updateDto: UpdateSessionInputContentDto,
|
|
1864
|
-
): Promise<SessionInput> {
|
|
1865
|
-
this.logger.log(
|
|
1866
|
-
`Silent update of SessionInput ${inputId} in Session ${sessionId}.`,
|
|
1867
|
-
);
|
|
1868
|
-
|
|
1869
|
-
const input = await this.findOne(sessionId, inputId);
|
|
1870
|
-
|
|
1871
|
-
// Apply content updates
|
|
1872
|
-
if (updateDto.user_prompt !== undefined) {
|
|
1873
|
-
input.user_prompt = updateDto.user_prompt;
|
|
1874
|
-
}
|
|
1875
|
-
if (updateDto.raw_llm_response !== undefined) {
|
|
1876
|
-
input.raw_llm_response = updateDto.raw_llm_response;
|
|
1877
|
-
}
|
|
1878
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (updateDto.llm_response_explanation !== undefined) {
|
|
1879
|
-
<span class="cstat-no" title="statement not covered" > input.llm_response_explanation = updateDto.llm_response_explanation;</span>
|
|
1880
|
-
}
|
|
1881
|
-
if (updateDto.generated_context_string !== undefined) {
|
|
1882
|
-
input.generated_context_string = updateDto.generated_context_string;
|
|
1883
|
-
}
|
|
1884
|
-
if (updateDto.thoughts !== undefined) {
|
|
1885
|
-
input.thoughts = updateDto.thoughts;
|
|
1886
|
-
}
|
|
1887
|
-
|
|
1888
|
-
// Save the updated input
|
|
1889
|
-
await this.sessionInputsRepository.save(input);
|
|
1890
|
-
|
|
1891
|
-
// Update tool execution logs if provided
|
|
1892
|
-
if (updateDto.tool_results && updateDto.tool_results.length > 0) {
|
|
1893
|
-
await this.updateToolResults(inputId, updateDto.tool_results);
|
|
1894
|
-
}
|
|
1895
|
-
|
|
1896
|
-
this.logger.log(`Silent update complete for SessionInput ${inputId}.`);
|
|
1897
|
-
|
|
1898
|
-
return this.findOne(sessionId, inputId);
|
|
1899
|
-
}
|
|
1900
|
-
|
|
1901
|
-
/**
|
|
1902
|
-
* Update tool execution log outputs for redaction purposes.
|
|
1903
|
-
*/
|
|
1904
|
-
private async updateToolResults(
|
|
1905
|
-
inputId: string,
|
|
1906
|
-
toolResults: { tool_call_id: string; output: string }[],
|
|
1907
|
-
): Promise<void> {
|
|
1908
|
-
for (const tr of toolResults) {
|
|
1909
|
-
// Find AIAction by tool_call_id
|
|
1910
|
-
const action = await this.aiActionsRepository.findOne({
|
|
1911
|
-
where: { input_id: inputId, tool_call_id: tr.tool_call_id },
|
|
1912
|
-
relations: ['executionLogs'],
|
|
1913
|
-
});
|
|
1914
|
-
|
|
1915
|
-
if (action && action.executionLogs && action.executionLogs.length > 0) {
|
|
1916
|
-
// Update the first execution log's output
|
|
1917
|
-
action.executionLogs[0].output = tr.output;
|
|
1918
|
-
await this.executionLogsRepository.save(action.executionLogs[0]);
|
|
1919
|
-
this.logger.log(
|
|
1920
|
-
`Updated execution log for tool_call_id ${tr.tool_call_id}`,
|
|
1921
|
-
);
|
|
1922
|
-
} else {
|
|
1923
|
-
this.logger.warn(
|
|
1924
|
-
`No execution log found for tool_call_id ${tr.tool_call_id} in input ${inputId}`,
|
|
1925
|
-
);
|
|
1926
|
-
}
|
|
1927
|
-
}
|
|
1928
|
-
}
|
|
1929
|
-
|
|
1930
|
-
/**
|
|
1931
|
-
* Batch toggle is_discarded flag for multiple inputs.
|
|
1932
|
-
* Used to exclude/include inputs from LLM context.
|
|
1933
|
-
*/
|
|
1934
|
-
async toggleDiscardedBatch(
|
|
1935
|
-
sessionId: string,
|
|
1936
|
-
dto: BatchToggleDiscardedDto,
|
|
1937
|
-
): Promise<{ affected: number }> {
|
|
1938
|
-
// Verify all inputs belong to the session
|
|
1939
|
-
const inputs = await this.sessionInputsRepository.find({
|
|
1940
|
-
where: { id: In(dto.input_ids), session: { id: sessionId } },
|
|
1941
|
-
});
|
|
1942
|
-
|
|
1943
|
-
if (inputs.length === 0) {
|
|
1944
|
-
throw new NotFoundException(
|
|
1945
|
-
`No inputs found with provided IDs in session ${sessionId}`,
|
|
1946
|
-
);
|
|
1947
|
-
}
|
|
1948
|
-
|
|
1949
|
-
// Update is_discarded flag
|
|
1950
|
-
const updateResult = await this.sessionInputsRepository.update(
|
|
1951
|
-
{ id: In(inputs.map((i) => i.id)) },
|
|
1952
|
-
{ is_discarded: dto.is_discarded },
|
|
1953
|
-
);
|
|
1954
|
-
|
|
1955
|
-
this.logger.log(
|
|
1956
|
-
`Toggled is_discarded=${dto.is_discarded} for ${updateResult.affected} inputs in session ${sessionId}`,
|
|
1957
|
-
);
|
|
1958
|
-
|
|
1959
|
-
return { affected: updateResult.affected || <span class="branch-1 cbranch-no" title="branch not covered" >0 </span>};
|
|
1960
|
-
}
|
|
1961
|
-
}
|
|
1962
|
-
</pre></td></tr></table></pre>
|
|
1963
|
-
|
|
1964
|
-
<div class='push'></div><!-- for sticky footer -->
|
|
1965
|
-
</div><!-- /wrapper -->
|
|
1966
|
-
<div class='footer quiet pad2 space-top1 center small'>
|
|
1967
|
-
Code coverage generated by
|
|
1968
|
-
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
1969
|
-
at 2026-05-09T01:03:45.353Z
|
|
1970
|
-
</div>
|
|
1971
|
-
<script src="../../prettify.js"></script>
|
|
1972
|
-
<script>
|
|
1973
|
-
window.onload = function () {
|
|
1974
|
-
prettyPrint();
|
|
1975
|
-
};
|
|
1976
|
-
</script>
|
|
1977
|
-
<script src="../../sorter.js"></script>
|
|
1978
|
-
<script src="../../block-navigation.js"></script>
|
|
1979
|
-
</body>
|
|
1980
|
-
</html>
|
|
1981
|
-
|