roku-debug 0.8.4 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/dist/ChanperfTracker.js +8 -10
  3. package/dist/ChanperfTracker.js.map +1 -1
  4. package/dist/CompileErrorProcessor.d.ts +2 -1
  5. package/dist/CompileErrorProcessor.js +7 -5
  6. package/dist/CompileErrorProcessor.js.map +1 -1
  7. package/dist/ComponentLibraryServer.js +1 -0
  8. package/dist/ComponentLibraryServer.js.map +1 -1
  9. package/dist/FileUtils.d.ts +2 -2
  10. package/dist/FileUtils.js +4 -4
  11. package/dist/FileUtils.js.map +1 -1
  12. package/dist/LaunchConfiguration.d.ts +5 -0
  13. package/dist/PrintedObjectParser.js +1 -0
  14. package/dist/PrintedObjectParser.js.map +1 -1
  15. package/dist/RendezvousTracker.js +6 -8
  16. package/dist/RendezvousTracker.js.map +1 -1
  17. package/dist/SceneGraphDebugCommandController.d.ts +1 -0
  18. package/dist/SceneGraphDebugCommandController.js +14 -7
  19. package/dist/SceneGraphDebugCommandController.js.map +1 -1
  20. package/dist/adapters/DebugProtocolAdapter.d.ts +7 -15
  21. package/dist/adapters/DebugProtocolAdapter.js +32 -30
  22. package/dist/adapters/DebugProtocolAdapter.js.map +1 -1
  23. package/dist/adapters/TelnetAdapter.d.ts +11 -58
  24. package/dist/adapters/TelnetAdapter.js +262 -382
  25. package/dist/adapters/TelnetAdapter.js.map +1 -1
  26. package/dist/adapters/TelnetRequestPipeline.d.ts +51 -0
  27. package/dist/adapters/TelnetRequestPipeline.js +229 -0
  28. package/dist/adapters/TelnetRequestPipeline.js.map +1 -0
  29. package/dist/debugProtocol/Constants.js +1 -0
  30. package/dist/debugProtocol/Constants.js.map +1 -1
  31. package/dist/debugProtocol/Debugger.d.ts +9 -8
  32. package/dist/debugProtocol/Debugger.js +33 -28
  33. package/dist/debugProtocol/Debugger.js.map +1 -1
  34. package/dist/debugProtocol/responses/ConnectIOPortResponse.js +1 -0
  35. package/dist/debugProtocol/responses/ConnectIOPortResponse.js.map +1 -1
  36. package/dist/debugProtocol/responses/HandshakeResponse.js +1 -0
  37. package/dist/debugProtocol/responses/HandshakeResponse.js.map +1 -1
  38. package/dist/debugProtocol/responses/Response.js +1 -0
  39. package/dist/debugProtocol/responses/Response.js.map +1 -1
  40. package/dist/debugProtocol/responses/StackTraceResponse.js +1 -0
  41. package/dist/debugProtocol/responses/StackTraceResponse.js.map +1 -1
  42. package/dist/debugProtocol/responses/ThreadsResponse.js +1 -0
  43. package/dist/debugProtocol/responses/ThreadsResponse.js.map +1 -1
  44. package/dist/debugProtocol/responses/UndefinedResponse.js +1 -0
  45. package/dist/debugProtocol/responses/UndefinedResponse.js.map +1 -1
  46. package/dist/debugProtocol/responses/UpdateThreadsResponse.js +1 -0
  47. package/dist/debugProtocol/responses/UpdateThreadsResponse.js.map +1 -1
  48. package/dist/debugProtocol/responses/VariableResponse.d.ts +1 -1
  49. package/dist/debugProtocol/responses/VariableResponse.js +1 -0
  50. package/dist/debugProtocol/responses/VariableResponse.js.map +1 -1
  51. package/dist/debugProtocol/responses/index.js +18 -11
  52. package/dist/debugProtocol/responses/index.js.map +1 -1
  53. package/dist/debugSession/BrightScriptDebugSession.d.ts +12 -9
  54. package/dist/debugSession/BrightScriptDebugSession.js +114 -92
  55. package/dist/debugSession/BrightScriptDebugSession.js.map +1 -1
  56. package/dist/debugSession/Events.js +1 -0
  57. package/dist/debugSession/Events.js.map +1 -1
  58. package/dist/index.js +26 -18
  59. package/dist/index.js.map +1 -1
  60. package/dist/interfaces.d.ts +11 -0
  61. package/dist/interfaces.js +16 -0
  62. package/dist/interfaces.js.map +1 -0
  63. package/dist/logging.d.ts +11 -0
  64. package/dist/logging.js +14 -0
  65. package/dist/logging.js.map +1 -0
  66. package/dist/managers/BreakpointManager.js +4 -4
  67. package/dist/managers/BreakpointManager.js.map +1 -1
  68. package/dist/managers/FileManager.d.ts +2 -1
  69. package/dist/managers/FileManager.js +9 -6
  70. package/dist/managers/FileManager.js.map +1 -1
  71. package/dist/managers/LocationManager.js +8 -7
  72. package/dist/managers/LocationManager.js.map +1 -1
  73. package/dist/managers/ProjectManager.d.ts +2 -0
  74. package/dist/managers/ProjectManager.js +14 -11
  75. package/dist/managers/ProjectManager.js.map +1 -1
  76. package/dist/managers/SourceMapManager.d.ts +1 -0
  77. package/dist/managers/SourceMapManager.js +9 -8
  78. package/dist/managers/SourceMapManager.js.map +1 -1
  79. package/dist/util.d.ts +50 -14
  80. package/dist/util.js +136 -75
  81. package/dist/util.js.map +1 -1
  82. package/package.json +52 -40
  83. package/roku-debug-0.9.0.tgz +0 -0
  84. package/roku-debug-0.8.4.tgz +0 -0
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BrightScriptDebugSession = void 0;
3
4
  const fsExtra = require("fs-extra");
4
5
  const natural_orderby_1 = require("natural-orderby");
5
6
  const path = require("path");
6
7
  const request = require("request");
7
8
  const rokuDeploy = require("roku-deploy");
8
- const serialize_error_1 = require("serialize-error");
9
9
  const vscode_debugadapter_1 = require("vscode-debugadapter");
10
10
  const SceneGraphDebugCommandController_1 = require("../SceneGraphDebugCommandController");
11
11
  const util_1 = require("../util");
@@ -19,17 +19,23 @@ const FileManager_1 = require("../managers/FileManager");
19
19
  const SourceMapManager_1 = require("../managers/SourceMapManager");
20
20
  const LocationManager_1 = require("../managers/LocationManager");
21
21
  const BreakpointManager_1 = require("../managers/BreakpointManager");
22
+ const logging_1 = require("../logging");
22
23
  class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
23
24
  constructor() {
24
25
  super();
26
+ this.logger = logging_1.logger.createLogger(`[${BrightScriptDebugSession.name}]`);
27
+ /**
28
+ * A sequence used to help identify log statements for requests
29
+ */
30
+ this.idCounter = 1;
25
31
  //set imports as class properties so they can be spied upon during testing
26
32
  this.rokuDeploy = rokuDeploy;
27
33
  this.componentLibraryServer = new ComponentLibraryServer_1.ComponentLibraryServer();
28
- this.rokuAdapterDeferred = defer();
34
+ this.rokuAdapterDeferred = (0, util_1.defer)();
29
35
  /**
30
36
  * A promise that is resolved whenever the app has started running for the first time
31
37
  */
32
- this.firstRunDeferred = defer();
38
+ this.firstRunDeferred = (0, util_1.defer)();
33
39
  this.evaluateRefIdLookup = {};
34
40
  this.evaluateRefIdCounter = 1;
35
41
  this.variables = {};
@@ -54,6 +60,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
54
60
  * to interrogate the features the debug adapter provides.
55
61
  */
56
62
  initializeRequest(response, args) {
63
+ this.logger.log('initializeRequest');
57
64
  // since this debug adapter can accept configuration requests like 'setBreakpoint' at any time,
58
65
  // we request them early by sending an 'initializeRequest' to the frontend.
59
66
  // The frontend will end the configuration sequence by calling 'configurationDone' request.
@@ -72,15 +79,27 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
72
79
  // This debug adapter supports log points by interpreting the 'logMessage' attribute of the SourceBreakpoint
73
80
  response.body.supportsLogPoints = true;
74
81
  this.sendResponse(response);
82
+ //register the debug output log transport writer
83
+ logging_1.debugServerLogOutputEventTransport.setWriter((message) => {
84
+ this.sendEvent(new Events_1.DebugServerLogOutputEvent(message.logger.formatMessage(message, false)));
85
+ });
86
+ this.logger.log('initializeRequest finished');
75
87
  }
76
88
  async launchRequest(response, config) {
89
+ this.logger.log('[launchRequest] begin');
77
90
  this.launchConfiguration = config;
91
+ //set the logLevel provided by the launch config
92
+ if (this.launchConfiguration.logLevel) {
93
+ logging_1.logger.logLevel = this.launchConfiguration.logLevel;
94
+ }
78
95
  this.enableDebugProtocol = this.launchConfiguration.enableDebugProtocol;
96
+ //do a DNS lookup for the host to fix issues with roku rejecting ECP
97
+ this.launchConfiguration.host = await util_1.util.dnsLookup(this.launchConfiguration.host);
79
98
  this.projectManager.launchConfiguration = this.launchConfiguration;
80
99
  this.breakpointManager.launchConfiguration = this.launchConfiguration;
81
100
  this.sendEvent(new Events_1.LaunchStartEvent(this.launchConfiguration));
82
101
  let error;
83
- util_1.util.logDebug('Packaging and deploying to roku');
102
+ this.logger.log('[launchRequest] Packaging and deploying to roku');
84
103
  try {
85
104
  //build the main project and all component libraries at the same time
86
105
  await Promise.all([
@@ -97,8 +116,8 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
97
116
  await this.rokuAdapter.watchCompileOutput();
98
117
  }
99
118
  await this.runAutomaticSceneGraphCommands(this.launchConfiguration.autoRunSgDebugCommands);
100
- util_1.util.log(`Exiting any active brightscript debugger`);
101
- await this.rokuAdapter.exitActiveBrightscriptDebugger();
119
+ //press the home button to ensure we're at the home screen
120
+ await this.rokuDeploy.pressHomeButton(this.launchConfiguration.host);
102
121
  //pass the debug functions used to locate the client files and lines thought the adapter to the RendezvousTracker
103
122
  this.rokuAdapter.registerSourceLocator(async (debuggerPath, lineNumber) => {
104
123
  return this.projectManager.getSourceLocation(debuggerPath, lineNumber);
@@ -108,16 +127,12 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
108
127
  //pass along the console output
109
128
  if (this.launchConfiguration.consoleOutput === 'full') {
110
129
  this.rokuAdapter.on('console-output', (data) => {
111
- //forward the console output
112
- this.sendEvent(new vscode_debugadapter_1.OutputEvent(data, 'stdout'));
113
- this.sendEvent(new Events_1.LogOutputEvent(data));
130
+ this.sendLogOutput(data);
114
131
  });
115
132
  }
116
133
  else {
117
134
  this.rokuAdapter.on('unhandled-console-output', (data) => {
118
- //forward the console output
119
- this.sendEvent(new vscode_debugadapter_1.OutputEvent(data, 'stdout'));
120
- this.sendEvent(new Events_1.LogOutputEvent(data));
135
+ this.sendLogOutput(data);
121
136
  });
122
137
  }
123
138
  // Send chanperf events to the extension
@@ -167,7 +182,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
167
182
  if (this.launchConfiguration.stopDebuggerOnAppExit || !this.rokuAdapter.supportsMultipleRuns) {
168
183
  let message = `App exit event detected${this.rokuAdapter.supportsMultipleRuns ? ' and launchConfiguration.stopDebuggerOnAppExit is true' : ''}`;
169
184
  message += ' - shutting down debug session';
170
- util_1.util.logDebug(message);
185
+ this.logger.log('on app-exit', message);
171
186
  this.sendEvent(new Events_1.LogOutputEvent(message));
172
187
  if (this.rokuAdapter) {
173
188
  void this.rokuAdapter.destroy();
@@ -179,7 +194,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
179
194
  }
180
195
  else {
181
196
  const message = 'App exit detected; but launchConfiguration.stopDebuggerOnAppExit is set to false, so keeping debug session running.';
182
- util_1.util.logDebug(message);
197
+ this.logger.log('[launchRequest]', message);
183
198
  this.sendEvent(new Events_1.LogOutputEvent(message));
184
199
  }
185
200
  });
@@ -197,15 +212,15 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
197
212
  await this.rokuAdapter.activate();
198
213
  if (!error) {
199
214
  if (this.rokuAdapter.connected) {
200
- // Host connection was established before the main public process was completed
201
- util_1.util.logDebug(`deployed to Roku@${this.launchConfiguration.host}`);
215
+ this.logger.info('Host connection was established before the main public process was completed');
216
+ this.logger.log(`deployed to Roku@${this.launchConfiguration.host}`);
202
217
  this.sendResponse(response);
203
218
  }
204
219
  else {
205
- // Main public process was completed but we are still waiting for a connection to the host
220
+ this.logger.info('Main public process was completed but we are still waiting for a connection to the host');
206
221
  this.rokuAdapter.on('connected', (status) => {
207
222
  if (status) {
208
- util_1.util.logDebug(`deployed to Roku@${this.launchConfiguration.host}`);
223
+ this.logger.log(`deployed to Roku@${this.launchConfiguration.host}`);
209
224
  this.sendResponse(response);
210
225
  }
211
226
  });
@@ -228,6 +243,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
228
243
  //request adapter to send errors (even empty) before ending the session
229
244
  await this.rokuAdapter.sendErrors();
230
245
  }
246
+ this.logger.error('Error. Shutting down.', e);
231
247
  this.shutdown();
232
248
  return;
233
249
  }
@@ -247,6 +263,18 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
247
263
  });
248
264
  }
249
265
  }
266
+ /**
267
+ * Send log output to the "client" (i.e. vscode)
268
+ * @param logOutput
269
+ */
270
+ sendLogOutput(logOutput) {
271
+ const lines = logOutput.split(/\r?\n/g);
272
+ for (let line of lines) {
273
+ line += '\n';
274
+ this.sendEvent(new vscode_debugadapter_1.OutputEvent(line, 'stdout'));
275
+ this.sendEvent(new Events_1.LogOutputEvent(line));
276
+ }
277
+ }
250
278
  async runAutomaticSceneGraphCommands(commands) {
251
279
  if (commands) {
252
280
  let connection = new SceneGraphDebugCommandController_1.SceneGraphDebugCommandController(this.launchConfiguration.host);
@@ -340,7 +368,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
340
368
  */
341
369
  async prepareAndHostComponentLibraries(componentLibraries, port) {
342
370
  if (componentLibraries && componentLibraries.length > 0) {
343
- let componentLibrariesOutDir = FileUtils_1.standardizePath `${this.launchConfiguration.outDir}/component-libraries`;
371
+ let componentLibrariesOutDir = (0, FileUtils_1.standardizePath) `${this.launchConfiguration.outDir}/component-libraries`;
344
372
  //make sure this folder exists (and is empty)
345
373
  await fsExtra.ensureDir(componentLibrariesOutDir);
346
374
  await fsExtra.emptyDir(componentLibrariesOutDir);
@@ -384,7 +412,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
384
412
  }
385
413
  }
386
414
  sourceRequest(response, args) {
387
- util_1.util.logDebug('sourceRequest');
415
+ this.logger.log('sourceRequest');
388
416
  let old = this.sendResponse;
389
417
  this.sendResponse = function sendResponse(...args) {
390
418
  old.apply(this, args);
@@ -393,7 +421,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
393
421
  super.sourceRequest(response, args);
394
422
  }
395
423
  configurationDoneRequest(response, args) {
396
- util_1.util.logDebug('configurationDoneRequest');
424
+ this.logger.log('configurationDoneRequest');
397
425
  }
398
426
  /**
399
427
  * Called every time a breakpoint is created, modified, or deleted, for each file. This receives the entire list of breakpoints every time.
@@ -401,7 +429,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
401
429
  setBreakPointsRequest(response, args) {
402
430
  let sanitizedBreakpoints = this.breakpointManager.replaceBreakpoints(args.source.path, args.breakpoints);
403
431
  //sort the breakpoints
404
- let sortedAndFilteredBreakpoints = natural_orderby_1.orderBy(sanitizedBreakpoints, [x => x.line, x => x.column])
432
+ let sortedAndFilteredBreakpoints = (0, natural_orderby_1.orderBy)(sanitizedBreakpoints, [x => x.line, x => x.column])
405
433
  //filter out the inactive breakpoints
406
434
  .filter(x => x.isHidden === false);
407
435
  response.body = {
@@ -424,10 +452,10 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
424
452
  // }, 100);
425
453
  }
426
454
  exceptionInfoRequest(response, args) {
427
- util_1.util.logDebug('exceptionInfoRequest');
455
+ this.logger.log('exceptionInfoRequest');
428
456
  }
429
457
  async threadsRequest(response) {
430
- util_1.util.logDebug('threadsRequest');
458
+ this.logger.log('threadsRequest');
431
459
  //wait for the roku adapter to load
432
460
  await this.getRokuAdapter();
433
461
  let threads = [];
@@ -439,7 +467,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
439
467
  }
440
468
  }
441
469
  else {
442
- util_1.util.logDebug('Skipped getting threads because the RokuAdapter is not accepting input at this time.');
470
+ this.logger.log('Skipped getting threads because the RokuAdapter is not accepting input at this time.');
443
471
  }
444
472
  response.body = {
445
473
  threads: threads
@@ -448,7 +476,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
448
476
  }
449
477
  async stackTraceRequest(response, args) {
450
478
  try {
451
- util_1.util.logDebug('stackTraceRequest');
479
+ this.logger.log('stackTraceRequest');
452
480
  let frames = [];
453
481
  if (this.rokuAdapter.isAtDebuggerPrompt) {
454
482
  let stackTrace = await this.rokuAdapter.getStackTrace(args.threadId);
@@ -467,15 +495,15 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
467
495
  debugFrame.functionIdentifier = functionName;
468
496
  }
469
497
  }
470
- catch (e) {
471
- util_1.util.logDebug(e, sourceLocation, debugFrame);
498
+ catch (error) {
499
+ this.logger.error('Error correcting function identifier case', { error, sourceLocation, debugFrame });
472
500
  }
473
501
  let frame = new vscode_debugadapter_1.StackFrame(debugFrame.frameId, `${debugFrame.functionIdentifier}`, new vscode_debugadapter_1.Source(path.basename(sourceLocation.filePath), sourceLocation.filePath), sourceLocation.lineNumber, 1);
474
502
  frames.push(frame);
475
503
  }
476
504
  }
477
505
  else {
478
- util_1.util.logDebug('Skipped calculating stacktrace because the RokuAdapter is not accepting input at this time');
506
+ this.logger.log('Skipped calculating stacktrace because the RokuAdapter is not accepting input at this time');
479
507
  }
480
508
  response.body = {
481
509
  stackFrames: frames,
@@ -483,11 +511,13 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
483
511
  };
484
512
  this.sendResponse(response);
485
513
  }
486
- catch (e) {
487
- util_1.util.logDebug(e);
514
+ catch (error) {
515
+ this.logger.error('Error getting stacktrace', { error, args });
488
516
  }
489
517
  }
490
518
  async scopesRequest(response, args) {
519
+ const logger = this.logger.createLogger(`scopesRequest ${this.idCounter}`);
520
+ logger.info('begin', { args });
491
521
  try {
492
522
  const scopes = new Array();
493
523
  if (this.enableDebugProtocol) {
@@ -518,24 +548,26 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
518
548
  response.body = {
519
549
  scopes: scopes
520
550
  };
551
+ logger.debug('send response', { response });
521
552
  this.sendResponse(response);
553
+ logger.info('end');
522
554
  }
523
- catch (e) {
524
- util_1.util.logDebug(e);
555
+ catch (error) {
556
+ logger.error('Error getting scopes', { error, args });
525
557
  }
526
558
  }
527
559
  async continueRequest(response, args) {
528
- util_1.util.logDebug('continueRequest');
560
+ this.logger.log('continueRequest');
529
561
  await this.rokuAdapter.continue();
530
562
  this.sendResponse(response);
531
563
  }
532
564
  async pauseRequest(response, args) {
533
- util_1.util.logDebug('pauseRequest');
565
+ this.logger.log('pauseRequest');
534
566
  await this.rokuAdapter.pause();
535
567
  this.sendResponse(response);
536
568
  }
537
569
  reverseContinueRequest(response, args) {
538
- util_1.util.logDebug('reverseContinueRequest');
570
+ this.logger.log('reverseContinueRequest');
539
571
  this.sendResponse(response);
540
572
  }
541
573
  /**
@@ -544,27 +576,37 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
544
576
  * @param args
545
577
  */
546
578
  async nextRequest(response, args) {
547
- util_1.util.logDebug('nextRequest');
548
- await this.rokuAdapter.stepOver(args.threadId);
579
+ this.logger.log('[nextRequest] begin');
580
+ try {
581
+ await this.rokuAdapter.stepOver(args.threadId);
582
+ this.logger.info('[nextRequest] end');
583
+ }
584
+ catch (error) {
585
+ this.logger.error(`[nextRequest] Error running '${BrightScriptDebugSession.prototype.nextRequest.name}()'`, error);
586
+ }
549
587
  this.sendResponse(response);
550
588
  }
551
589
  async stepInRequest(response, args) {
552
- util_1.util.logDebug('stepInRequest');
590
+ this.logger.log('[stepInRequest]');
553
591
  await this.rokuAdapter.stepInto(args.threadId);
554
592
  this.sendResponse(response);
593
+ this.logger.info('[stepInRequest] end');
555
594
  }
556
595
  async stepOutRequest(response, args) {
557
- util_1.util.logDebug('stepOutRequest');
596
+ this.logger.log('[stepOutRequest] begin');
558
597
  await this.rokuAdapter.stepOut(args.threadId);
559
598
  this.sendResponse(response);
599
+ this.logger.info('[stepOutRequest] end');
560
600
  }
561
601
  stepBackRequest(response, args) {
562
- util_1.util.logDebug('stepBackRequest');
602
+ this.logger.log('[stepBackRequest] begin');
563
603
  this.sendResponse(response);
604
+ this.logger.info('[stepBackRequest] end');
564
605
  }
565
606
  async variablesRequest(response, args) {
607
+ const logger = this.logger.createLogger('[variablesRequest]');
566
608
  try {
567
- util_1.util.logDebug(`variablesRequest: ${JSON.stringify(args)}`);
609
+ logger.log('begin', { args });
568
610
  let childVariables = [];
569
611
  //wait for any `evaluate` commands to finish so we have a higher likely hood of being at a debugger prompt
570
612
  await this.evaluateRequestPromise;
@@ -606,17 +648,26 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
606
648
  };
607
649
  }
608
650
  else {
609
- util_1.util.logDebug('Skipped getting variables because the RokuAdapter is not accepting input at this time');
651
+ logger.log('Skipped getting variables because the RokuAdapter is not accepting input at this time');
610
652
  }
653
+ logger.info('end', { response });
611
654
  this.sendResponse(response);
612
655
  }
613
- catch (e) {
614
- util_1.util.logDebug(e);
656
+ catch (error) {
657
+ logger.error('Error during variablesRequest', error, { args });
615
658
  }
616
659
  }
617
660
  async evaluateRequest(response, args) {
661
+ if (args.context === 'repl' && !this.enableDebugProtocol && args.expression.trim().startsWith('>')) {
662
+ this.clearState();
663
+ const expression = args.expression.replace(/^\s*>\s*/, '');
664
+ this.logger.log('Sending raw telnet command...I sure hope you know what you\'re doing', { expression });
665
+ this.rokuAdapter.requestPipeline.client.write(`${expression}\r\n`);
666
+ this.sendResponse(response);
667
+ return;
668
+ }
618
669
  try {
619
- let deferred = defer();
670
+ let deferred = (0, util_1.defer)();
620
671
  this.evaluateRequestPromise = this.evaluateRequestPromise.then(() => {
621
672
  return deferred.promise;
622
673
  });
@@ -649,6 +700,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
649
700
  }
650
701
  response.body = {
651
702
  result: v.value,
703
+ type: v.type,
652
704
  variablesReference: v.variablesReference,
653
705
  namedVariables: v.namedVariables || 0,
654
706
  indexedVariables: v.indexedVariables || 0
@@ -669,7 +721,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
669
721
  await this.rokuAdapter.stepOut(-1);
670
722
  }
671
723
  else if (['down', 'd', 'exit', 'thread', 'th', 'up', 'u'].includes(lowerExpression)) {
672
- await this.rokuAdapter.requestPipeline.executeCommand(args.expression, false);
724
+ await this.rokuAdapter.requestPipeline.executeCommand(args.expression, { waitForPrompt: false, insertAtFront: true });
673
725
  }
674
726
  else {
675
727
  const promise = this.rokuAdapter.evaluate(args.expression);
@@ -683,7 +735,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
683
735
  }
684
736
  }
685
737
  else {
686
- util_1.util.logDebug('Skipped evaluate request because RokuAdapter is not accepting requests at this time');
738
+ this.logger.log('Skipped evaluate request because RokuAdapter is not accepting requests at this time');
687
739
  }
688
740
  }
689
741
  finally {
@@ -691,8 +743,8 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
691
743
  }
692
744
  this.sendResponse(response);
693
745
  }
694
- catch (e) {
695
- util_1.util.logDebug(e);
746
+ catch (error) {
747
+ this.logger.error('Error during variables request', error);
696
748
  }
697
749
  }
698
750
  /**
@@ -700,7 +752,7 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
700
752
  * @param response
701
753
  * @param args
702
754
  */
703
- async disconnectRequest(response, args) {
755
+ async disconnectRequest(response, args, request) {
704
756
  if (this.rokuAdapter) {
705
757
  await this.rokuAdapter.destroy();
706
758
  }
@@ -731,8 +783,10 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
731
783
  //when the debugger suspends (pauses for debugger input)
732
784
  // eslint-disable-next-line @typescript-eslint/no-misused-promises
733
785
  this.rokuAdapter.on('suspend', async () => {
786
+ var _a;
787
+ this.logger.info('received "suspend" event from adapter');
734
788
  let threads = await this.rokuAdapter.getThreads();
735
- let threadId = threads[0].threadId;
789
+ let threadId = (_a = threads[0]) === null || _a === void 0 ? void 0 : _a.threadId;
736
790
  this.clearState();
737
791
  let exceptionText = '';
738
792
  const event = new vscode_debugadapter_1.StoppedEvent(Events_1.StoppedEventReason.breakpoint, threadId, exceptionText);
@@ -743,9 +797,10 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
743
797
  //anytime the adapter encounters an exception on the roku,
744
798
  // eslint-disable-next-line @typescript-eslint/no-misused-promises
745
799
  this.rokuAdapter.on('runtime-error', async (exception) => {
800
+ var _a;
746
801
  let rokuAdapter = await this.getRokuAdapter();
747
802
  let threads = await rokuAdapter.getThreads();
748
- let threadId = threads[0].threadId;
803
+ let threadId = (_a = threads[0]) === null || _a === void 0 ? void 0 : _a.threadId;
749
804
  this.sendEvent(new vscode_debugadapter_1.StoppedEvent(Events_1.StoppedEventReason.exception, threadId, exception.message));
750
805
  });
751
806
  // If the roku says it can't continue, we are no longer able to debug, so kill the debug session
@@ -796,9 +851,15 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
796
851
  else if (result.highLevelType === 'function') {
797
852
  v = new vscode_debugadapter_1.Variable(result.name, result.value);
798
853
  }
854
+ else {
855
+ //all other cases, but mostly for HighLevelType.unknown
856
+ v = new vscode_debugadapter_1.Variable(result.name, result.value);
857
+ }
799
858
  }
859
+ v.type = result.type;
800
860
  v.evaluateName = result.evaluateName;
801
861
  v.frameId = frameId;
862
+ v.presentationHint = result.presentationHint ? { kind: result.presentationHint } : undefined;
802
863
  if (result.children) {
803
864
  let childVariables = [];
804
865
  for (let childContainer of result.children) {
@@ -849,43 +910,4 @@ class BrightScriptDebugSession extends vscode_debugadapter_1.DebugSession {
849
910
  }
850
911
  }
851
912
  exports.BrightScriptDebugSession = BrightScriptDebugSession;
852
- function defer() {
853
- let _resolve;
854
- let _reject;
855
- let promise = new Promise((resolveValue, rejectValue) => {
856
- _resolve = resolveValue;
857
- _reject = rejectValue;
858
- });
859
- return {
860
- promise: promise,
861
- resolve: function resolve(value) {
862
- if (!this.isResolved) {
863
- this.isResolved = true;
864
- _resolve(value);
865
- _resolve = undefined;
866
- }
867
- else {
868
- throw new Error(`Attempted to resolve a promise that was already ${this.isResolved ? 'resolved' : 'rejected'}.` +
869
- `New value: ${JSON.stringify(value)}`);
870
- }
871
- },
872
- reject: function reject(reason) {
873
- if (!this.isCompleted) {
874
- this.isRejected = true;
875
- _reject(reason);
876
- _reject = undefined;
877
- }
878
- else {
879
- throw new Error(`Attempted to reject a promise that was already ${this.isResolved ? 'resolved' : 'rejected'}.` +
880
- `New error message: ${JSON.stringify(serialize_error_1.serializeError(reason))}`);
881
- }
882
- },
883
- isResolved: false,
884
- isRejected: false,
885
- get isCompleted() {
886
- return this.isResolved || this.isRejected;
887
- }
888
- };
889
- }
890
- exports.defer = defer;
891
913
  //# sourceMappingURL=BrightScriptDebugSession.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BrightScriptDebugSession.js","sourceRoot":"","sources":["../../src/debugSession/BrightScriptDebugSession.ts"],"names":[],"mappings":";;AAAA,oCAAoC;AACpC,qDAA0C;AAC1C,6BAA6B;AAC7B,mCAAmC;AACnC,0CAA0C;AAE1C,qDAAiD;AACjD,6DAY6B;AAE7B,0FAAuF;AAEvF,kCAA+B;AAC/B,4CAA+D;AAC/D,sEAAmE;AACnE,+DAA8F;AAE9F,2EAAwE;AACxE,6DAA0D;AAE1D,qCAOkB;AAElB,yDAAsD;AACtD,mEAAgE;AAChE,iEAA8D;AAC9D,qEAAkE;AAElE,MAAa,wBAAyB,SAAQ,kCAAgB;IAC1D;QACI,KAAK,EAAE,CAAC;QAwBZ,0EAA0E;QACnE,eAAU,GAAG,UAAmC,CAAC;QAEhD,2BAAsB,GAAG,IAAI,+CAAsB,EAAE,CAAC;QAEtD,wBAAmB,GAAG,KAAK,EAAwC,CAAC;QAC5E;;WAEG;QACK,qBAAgB,GAAG,KAAK,EAAQ,CAAC;QAEjC,wBAAmB,GAA2B,EAAE,CAAC;QACjD,yBAAoB,GAAG,CAAC,CAAC;QAEzB,cAAS,GAAsC,EAAE,CAAC;QAElD,oBAAe,GAAG,IAAI,6BAAO,EAAU,CAAC;QAqpBxC,2BAAsB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QA5rB/C,iDAAiD;QACjD,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;QAEtC,qFAAqF;QACrF,WAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,IAAI,yBAAW,EAAE,CAAC;QACrC,IAAI,CAAC,gBAAgB,GAAG,IAAI,mCAAgB,EAAE,CAAC;QAC/C,IAAI,CAAC,eAAe,GAAG,IAAI,iCAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAClE,IAAI,CAAC,iBAAiB,GAAG,IAAI,qCAAiB,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAC5F,IAAI,CAAC,cAAc,GAAG,IAAI,+BAAc,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IAC3F,CAAC;IAiCO,cAAc;QAClB,OAAO,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC;IAC5C,CAAC;IAID;;;OAGG;IACI,iBAAiB,CAAC,QAA0C,EAAE,IAA8C;QAC/G,+FAA+F;QAC/F,2EAA2E;QAC3E,2FAA2F;QAC3F,IAAI,CAAC,SAAS,CAAC,IAAI,sCAAgB,EAAE,CAAC,CAAC;QACvC,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC;QAEpC,8DAA8D;QAC9D,QAAQ,CAAC,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC;QAEtD,2DAA2D;QAC3D,QAAQ,CAAC,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC;QAE/C,4CAA4C;QAC5C,QAAQ,CAAC,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAEvC,sDAAsD;QACtD,QAAQ,CAAC,IAAI,CAAC,8BAA8B,GAAG,IAAI,CAAC;QAEpD,gGAAgG;QAChG,QAAQ,CAAC,IAAI,CAAC,iCAAiC,GAAG,IAAI,CAAC;QAEvD,4GAA4G;QAC5G,QAAQ,CAAC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAEvC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,QAAsC,EAAE,MAA2B;QAC1F,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAElC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,CAAC;QAExE,IAAI,CAAC,cAAc,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC;QACnE,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC;QAEtE,IAAI,CAAC,SAAS,CAAC,IAAI,yBAAgB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAE/D,IAAI,KAAY,CAAC;QACjB,WAAI,CAAC,QAAQ,CAAC,iCAAiC,CAAC,CAAC;QACjD,IAAI;YACA,qEAAqE;YACrE,MAAM,OAAO,CAAC,GAAG,CAAC;gBACd,IAAI,CAAC,kBAAkB,EAAE;gBACzB,IAAI,CAAC,gCAAgC,CAAC,IAAI,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,IAAI,CAAC,mBAAmB,CAAC,sBAAsB,CAAC;aACtI,CAAC,CAAC;YAEH,WAAI,CAAC,GAAG,CAAC,0BAA0B,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC,QAAQ,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC;YAElJ,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YACtD,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;gBAC3B,sCAAsC;gBACtC,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;aACnC;iBAAM;gBACH,MAAO,IAAI,CAAC,WAAoC,CAAC,kBAAkB,EAAE,CAAC;aACzE;YAED,MAAM,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;YAE3F,WAAI,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;YACrD,MAAM,IAAI,CAAC,WAAW,CAAC,8BAA8B,EAAE,CAAC;YAExD,iHAAiH;YACjH,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,KAAK,EAAE,YAAoB,EAAE,UAAkB,EAAE,EAAE;gBACtF,OAAO,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;YAC3E,CAAC,CAAC,CAAC;YAEH,0FAA0F;YAC1F,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;YAE1E,+BAA+B;YAC/B,IAAI,IAAI,CAAC,mBAAmB,CAAC,aAAa,KAAK,MAAM,EAAE;gBACnD,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,IAAI,EAAE,EAAE;oBAC3C,4BAA4B;oBAC5B,IAAI,CAAC,SAAS,CAAC,IAAI,iCAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;oBAChD,IAAI,CAAC,SAAS,CAAC,IAAI,uBAAc,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC7C,CAAC,CAAC,CAAC;aACN;iBAAM;gBACH,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,0BAA0B,EAAE,CAAC,IAAI,EAAE,EAAE;oBACrD,4BAA4B;oBAC5B,IAAI,CAAC,SAAS,CAAC,IAAI,iCAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;oBAChD,IAAI,CAAC,SAAS,CAAC,IAAI,uBAAc,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC7C,CAAC,CAAC,CAAC;aACN;YAED,wCAAwC;YACxC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE;gBACvC,IAAI,CAAC,SAAS,CAAC,IAAI,sBAAa,CAAC,MAAM,CAAC,CAAC,CAAC;YAC9C,CAAC,CAAC,CAAC;YAEH,0CAA0C;YAC1C,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE;gBACzC,IAAI,CAAC,SAAS,CAAC,IAAI,wBAAe,CAAC,MAAM,CAAC,CAAC,CAAC;YAChD,CAAC,CAAC,CAAC;YAEH,0DAA0D;YAC1D,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,MAAM,GAAG,EAAE,EAAE,EAAE;gBACzC,IAAI,MAAM,KAAK,eAAe,EAAE;oBAC5B,KAAK,GAAG,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;iBACtC;qBAAM;oBACH,KAAK,GAAG,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;iBACxF;YACL,CAAC,CAAC,CAAC;YAEH,4BAA4B;YAC5B,kEAAkE;YAClE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,gBAAgB,EAAE,KAAK,EAAE,MAAuC,EAAE,EAAE;gBACpF,sDAAsD;gBACtD,8DAA8D;gBAC9D,8BAA8B;gBAC9B,MAAM,aAAa,GAAG,WAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;gBACvD,KAAK,IAAI,YAAY,IAAI,aAAa,EAAE;oBACpC,IAAI,cAAc,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;oBAC7G,IAAI,cAAc,EAAE;wBAChB,YAAY,CAAC,IAAI,GAAG,cAAc,CAAC,QAAQ,CAAC;wBAC5C,YAAY,CAAC,UAAU,GAAG,cAAc,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,SAAS;qBACrE;yBAAM;wBACH,uGAAuG;wBACvG,YAAY,CAAC,IAAI,GAAG,qBAAS,CAAC,kBAAkB,CAAC,WAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;wBAC3F,YAAY,CAAC,UAAU,GAAG,CAAC,YAAY,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS;qBAC1E;iBACJ;gBAED,IAAI,CAAC,SAAS,CAAC,IAAI,4BAAmB,CAAC,aAAa,CAAC,CAAC,CAAC;gBACvD,4CAA4C;gBAC5C,KAAK,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;gBAChC,KAAK,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YACxE,CAAC,CAAC,CAAC;YAEH,sDAAsD;YACtD,kEAAkE;YAClE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;gBACvC,IAAI,IAAI,CAAC,mBAAmB,CAAC,qBAAqB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE;oBAC1F,IAAI,OAAO,GAAG,0BAA0B,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,CAAC,wDAAwD,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;oBAChJ,OAAO,IAAI,gCAAgC,CAAC;oBAE5C,WAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;oBACvB,IAAI,CAAC,SAAS,CAAC,IAAI,uBAAc,CAAC,OAAO,CAAC,CAAC,CAAC;oBAC5C,IAAI,IAAI,CAAC,WAAW,EAAE;wBAClB,KAAK,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;qBACnC;oBACD,2BAA2B;oBAC3B,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;oBACrE,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAChB,IAAI,CAAC,SAAS,CAAC,IAAI,qCAAe,EAAE,CAAC,CAAC;iBACzC;qBAAM;oBACH,MAAM,OAAO,GAAG,qHAAqH,CAAC;oBACtI,WAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;oBACvB,IAAI,CAAC,SAAS,CAAC,IAAI,uBAAc,CAAC,OAAO,CAAC,CAAC,CAAC;iBAC/C;YACL,CAAC,CAAC,CAAC;YAEH,0DAA0D;YACzD,IAAI,CAAC,mBAA2B,CAAC,kBAAkB,GAAG,KAAK,CAAC;YAC7D,qHAAqH;YACpH,IAAI,CAAC,mBAA2B,CAAC,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC;YAEzE,wCAAwC;YACxC,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,mBAA0B,CAAC,CAAC;YAE/D,IAAI,IAAI,CAAC,mBAAmB,EAAE;gBAC1B,uCAAuC;gBACvC,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;aACnC;YAED,8DAA8D;YAC9D,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;YAElC,IAAI,CAAC,KAAK,EAAE;gBACR,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE;oBAC5B,+EAA+E;oBAC/E,WAAI,CAAC,QAAQ,CAAC,oBAAoB,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC;oBACnE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;iBAC/B;qBAAM;oBACH,0FAA0F;oBAC1F,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,EAAE;wBACxC,IAAI,MAAM,EAAE;4BACR,WAAI,CAAC,QAAQ,CAAC,oBAAoB,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC;4BACnE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;yBAC/B;oBACL,CAAC,CAAC,CAAC;iBACN;aACJ;iBAAM;gBACH,MAAM,KAAK,CAAC;aACf;SACJ;QAAC,OAAO,CAAC,EAAE;YACR,oFAAoF;YACpF,kGAAkG;YAClG,IAAI,CAAC,CAAC,OAAO,KAAK,eAAe,IAAI,CAAC,CAAC,OAAO,KAAK,4BAA4B,EAAE;gBAC7E,8BAA8B;gBAC9B,WAAI,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;gBAC5D,WAAI,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;gBACpB,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;aACnD;iBAAM;gBACH,uEAAuE;gBACvE,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;aACvC;YACD,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,OAAO;SACV;QAED,6FAA6F;QAC7F,IAAI,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE;YACtC,oDAAoD;YACpD,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YACpC,qCAAqC;YACrC,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;YAClC,0BAA0B;YAC1B,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YACrE,iCAAiC;YACjC,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAClC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE;oBACjE,OAAO,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACjD,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;SACN;IACL,CAAC;IAEO,KAAK,CAAC,8BAA8B,CAAC,QAAkB;QAC3D,IAAI,QAAQ,EAAE;YACV,IAAI,UAAU,GAAG,IAAI,mEAAgC,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAErF,IAAI;gBACA,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;gBAC3B,KAAK,IAAI,OAAO,IAAI,IAAI,CAAC,mBAAmB,CAAC,sBAAsB,EAAE;oBACjE,IAAI,QAAmC,CAAC;oBACxC,QAAQ,OAAO,EAAE;wBACb,KAAK,UAAU;4BACX,WAAI,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;4BACvC,QAAQ,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;4BACtD,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;gCACjB,WAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;6BACzC;4BACD,MAAM;wBAEV,KAAK,YAAY;4BACb,WAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;4BACjC,QAAQ,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;4BAC7C,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;gCACjB,WAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;6BAClC;4BACD,MAAM;wBAEV,KAAK,eAAe;4BAChB,WAAI,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;4BACzC,QAAQ,GAAG,MAAM,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;4BAChD,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;gCACjB,WAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;6BACzC;4BACD,MAAM;wBAEV;4BACI,WAAI,CAAC,GAAG,CAAC,yDAAyD,OAAO,IAAI,CAAC,CAAC;4BAC/E,QAAQ,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;4BAC1C,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;gCACjB,WAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;6BACzC;4BACD,MAAM;qBACb;iBACJ;gBACD,MAAM,UAAU,CAAC,GAAG,EAAE,CAAC;aAC1B;YAAC,OAAO,KAAK,EAAE;gBACZ,WAAI,CAAC,GAAG,CAAC,kCAAkC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;aAC/D;SACJ;IACL,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,kBAAkB;QAC3B,sBAAsB;QACtB,IAAI,CAAC,cAAc,CAAC,WAAW,GAAG,IAAI,wBAAO,CAAC;YAC1C,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC,OAAO;YACzC,KAAK,EAAE,IAAI,CAAC,mBAAmB,CAAC,KAAK;YACrC,MAAM,EAAE,IAAI,CAAC,mBAAmB,CAAC,MAAM;YACvC,UAAU,EAAE,IAAI,CAAC,mBAAmB,CAAC,UAAU;YAC/C,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC,OAAO;YACzC,qBAAqB,EAAE,IAAI,CAAC,mBAAmB,CAAC,qBAAqB;YACrE,2BAA2B,EAAE,IAAI,CAAC,mBAAmB,CAAC,2BAA2B;YACjF,0BAA0B,EAAE,IAAI,CAAC,mBAAmB,CAAC,0BAA0B;YAC/E,gBAAgB,EAAE,IAAI,CAAC,mBAAmB,CAAC,gBAAgB;YAC3D,iBAAiB,EAAE,IAAI,CAAC,mBAAmB,CAAC,iBAAiB;SAChE,CAAC,CAAC;QAEH,WAAI,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;QAClD,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QAE9C,iDAAiD;QACjD,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAEnC,uDAAuD;QACvD,WAAI,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;QAE1D,6CAA6C;QAC7C,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,CAAC;QAEzC,gEAAgE;QAChE,MAAM,IAAI,CAAC,iBAAiB,CAAC,0BAA0B,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAEzF,wCAAwC;QACxC,WAAI,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;QACtD,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC;IACpF,CAAC;IAED;;;OAGG;IACO,aAAa,CAAC,OAAe;QACnC,IAAI,OAAO,KAAK,yBAAyB,EAAE;YACvC,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC;SAC7C;QAED,IAAI,OAAO,KAAK,uBAAuB,EAAE;YACrC,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC;SAC3C;IACL,CAAC;IAED;;OAEG;IACO,KAAK,CAAC,gCAAgC,CAAC,kBAAmD,EAAE,IAAY;QAC9G,IAAI,kBAAkB,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;YACrD,IAAI,wBAAwB,GAAG,2BAAC,CAAA,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,sBAAsB,CAAC;YACzF,6CAA6C;YAC7C,MAAM,OAAO,CAAC,SAAS,CAAC,wBAAwB,CAAC,CAAC;YAClD,MAAM,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;YAEjD,6DAA6D;YAC7D,KAAK,IAAI,YAAY,GAAG,CAAC,EAAE,YAAY,GAAG,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE;gBACjF,IAAI,gBAAgB,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC;gBAExD,IAAI,CAAC,cAAc,CAAC,wBAAwB,CAAC,IAAI,CAC7C,IAAI,wCAAuB,CAAC;oBACxB,OAAO,EAAE,gBAAgB,CAAC,OAAO;oBACjC,KAAK,EAAE,gBAAgB,CAAC,KAAK;oBAC7B,MAAM,EAAE,wBAAwB;oBAChC,OAAO,EAAE,gBAAgB,CAAC,OAAO;oBACjC,UAAU,EAAE,gBAAgB,CAAC,UAAU;oBACvC,OAAO,EAAE,gBAAgB,CAAC,OAAO;oBACjC,qBAAqB,EAAE,gBAAgB,CAAC,qBAAqB;oBAC7D,2BAA2B,EAAE,gBAAgB,CAAC,2BAA2B;oBACzE,YAAY,EAAE,YAAY;iBAC7B,CAAC,CACL,CAAC;aACL;YAED,0CAA0C;YAC1C,IAAI,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,wBAAwB,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE;gBAE5F,MAAM,cAAc,CAAC,KAAK,EAAE,CAAC;gBAE7B,kEAAkE;gBAClE,WAAI,CAAC,GAAG,CAAC,sEAAsE,CAAC,CAAC;gBAEjF,gEAAgE;gBAChE,MAAM,IAAI,CAAC,iBAAiB,CAAC,0BAA0B,CAAC,cAAc,CAAC,CAAC;gBAExE,MAAM,cAAc,CAAC,YAAY,EAAE,CAAC;gBAEpC,MAAM,cAAc,CAAC,UAAU,CAAC,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC;YACnE,CAAC,CAAC,CAAC;YAEH,IAAI,cAA4B,CAAC;YACjC,IAAI,eAAe,EAAE;gBACjB,8BAA8B;gBAC9B,cAAc,GAAG,IAAI,CAAC,sBAAsB,CAAC,sBAAsB,CAAC,wBAAwB,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE;oBAC5G,WAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACtB,CAAC,CAAC,CAAC;aACN;YAED,sFAAsF;YACtF,MAAM,OAAO,CAAC,GAAG,CAAC;gBACd,GAAG,eAAe;gBAClB,cAAc;aACjB,CAAC,CAAC;SACN;IACL,CAAC;IAES,aAAa,CAAC,QAAsC,EAAE,IAAmC;QAC/F,WAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;QAC/B,IAAI,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC;QAC5B,IAAI,CAAC,YAAY,GAAG,SAAS,YAAY,CAAC,GAAG,IAAI;YAC7C,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACtB,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC;QAC5B,CAAC,CAAC;QACF,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACxC,CAAC;IAES,wBAAwB,CAAC,QAAiD,EAAE,IAA8C;QAChI,WAAI,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACI,qBAAqB,CAAC,QAA8C,EAAE,IAA2C;QACpH,IAAI,oBAAoB,GAAG,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACzG,sBAAsB;QACtB,IAAI,4BAA4B,GAAG,yBAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAC1F,qCAAqC;aACpC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC;QAEvC,QAAQ,CAAC,IAAI,GAAG;YACZ,WAAW,EAAE,4BAA4B;SAC5C,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAE5B,mFAAmF;QACnF,+GAA+G;QAC/G,qBAAqB;QACrB,8FAA8F;QAC9F,qHAAqH;QACrH,+GAA+G;QAC/G,iDAAiD;QACjD,gFAAgF;QAChF,qCAAqC;QACrC,8BAA8B;QAC9B,kCAAkC;QAClC,eAAe;QACf,QAAQ;QACR,WAAW;IACf,CAAC;IAES,oBAAoB,CAAC,QAA6C,EAAE,IAA0C;QACpH,WAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IAES,KAAK,CAAC,cAAc,CAAC,QAAuC;QAClE,WAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QAChC,mCAAmC;QACnC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5B,IAAI,OAAO,GAAG,EAAE,CAAC;QAEjB,gEAAgE;QAChE,IAAI,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE;YACrC,IAAI,WAAW,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;YAEtD,KAAK,IAAI,MAAM,IAAI,WAAW,EAAE;gBAC5B,OAAO,CAAC,IAAI,CACR,IAAI,4BAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,MAAM,CAAC,QAAQ,EAAE,CAAC,CAC3D,CAAC;aACL;SACJ;aAAM;YACH,WAAI,CAAC,QAAQ,CAAC,sFAAsF,CAAC,CAAC;SACzG;QAED,QAAQ,CAAC,IAAI,GAAG;YACZ,OAAO,EAAE,OAAO;SACnB,CAAC;QAEF,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAES,KAAK,CAAC,iBAAiB,CAAC,QAA0C,EAAE,IAAuC;QACjH,IAAI;YACA,WAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;YACnC,IAAI,MAAM,GAAG,EAAE,CAAC;YAEhB,IAAI,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE;gBACrC,IAAI,UAAU,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAErE,KAAK,IAAI,UAAU,IAAI,UAAU,EAAE;oBAC/B,IAAI,cAAc,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;oBAE7G,2FAA2F;oBAC3F,sFAAsF;oBACtF,IAAI;wBACA,IAAI,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,0BAA0B,CAAC,cAAc,CAAC,QAAQ,EAAE,UAAU,CAAC,kBAAkB,CAAC,CAAC;wBACvH,IAAI,YAAY,EAAE;4BAEd,qEAAqE;4BACrE,uGAAuG;4BACvG,IAAI,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;gCAC9B,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,yBAAyB,CACrD,cAAc,CAAC,QAAQ,EACvB,cAAc,CAAC,UAAU,GAAG,CAAC,EAC7B,YAAY,CACf,CAAC;6BACL;4BACD,UAAU,CAAC,kBAAkB,GAAG,YAAY,CAAC;yBAChD;qBACJ;oBAAC,OAAO,CAAC,EAAE;wBACR,WAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;qBAChD;oBAED,IAAI,KAAK,GAAG,IAAI,gCAAU,CACtB,UAAU,CAAC,OAAO,EAClB,GAAG,UAAU,CAAC,kBAAkB,EAAE,EAClC,IAAI,4BAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,EAC3E,cAAc,CAAC,UAAU,EACzB,CAAC,CACJ,CAAC;oBACF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;iBACtB;aACJ;iBAAM;gBACH,WAAI,CAAC,QAAQ,CAAC,4FAA4F,CAAC,CAAC;aAC/G;YACD,QAAQ,CAAC,IAAI,GAAG;gBACZ,WAAW,EAAE,MAAM;gBACnB,WAAW,EAAE,MAAM,CAAC,MAAM;aAC7B,CAAC;YACF,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;SAC/B;QAAC,OAAO,CAAC,EAAE;YACR,WAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;SACpB;IACL,CAAC;IAES,KAAK,CAAC,aAAa,CAAC,QAAsC,EAAE,IAAmC;QACrG,IAAI;YACA,MAAM,MAAM,GAAG,IAAI,KAAK,EAAS,CAAC;YAElC,IAAI,IAAI,CAAC,mBAAmB,EAAE;gBAC1B,IAAI,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;gBACpD,IAAI,CAAoB,CAAC;gBACzB,8CAA8C;gBAC9C,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;oBACvB,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;iBAC7B;qBAAM;oBACH,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;oBACxE,IAAI,CAAC,MAAM,EAAE;wBACT,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;qBAC3C;oBACD,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;oBACrD,wCAAwC;oBACxC,qCAAqC;oBACrC,CAAC,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC;oBACrC,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;iBAC5B;gBAED,IAAI,KAAK,GAAG,IAAI,2BAAK,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;gBAC7C,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACtB;iBAAM;gBACH,8BAA8B;gBAC9B,MAAM,CAAC,IAAI,CAAC,IAAI,2BAAK,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;aAChF;YAED,QAAQ,CAAC,IAAI,GAAG;gBACZ,MAAM,EAAE,MAAM;aACjB,CAAC;YACF,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;SAC/B;QAAC,OAAO,CAAC,EAAE;YACR,WAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;SACpB;IACL,CAAC;IAES,KAAK,CAAC,eAAe,CAAC,QAAwC,EAAE,IAAqC;QAC3G,WAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;QACjC,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;QAClC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAES,KAAK,CAAC,YAAY,CAAC,QAAqC,EAAE,IAAkC;QAClG,WAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;QAC9B,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QAC/B,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAES,sBAAsB,CAAC,QAA+C,EAAE,IAA4C;QAC1H,WAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACO,KAAK,CAAC,WAAW,CAAC,QAAoC,EAAE,IAAiC;QAC/F,WAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QAC7B,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAES,KAAK,CAAC,aAAa,CAAC,QAAsC,EAAE,IAAmC;QACrG,WAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;QAC/B,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAES,KAAK,CAAC,cAAc,CAAC,QAAuC,EAAE,IAAoC;QACxG,WAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QAChC,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAES,eAAe,CAAC,QAAwC,EAAE,IAAqC;QACrG,WAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;QAEjC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAAC,QAAyC,EAAE,IAAsC;QAC3G,IAAI;YACA,WAAI,CAAC,QAAQ,CAAC,qBAAqB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAE3D,IAAI,cAAc,GAAwB,EAAE,CAAC;YAC7C,0GAA0G;YAC1G,MAAM,IAAI,CAAC,sBAAsB,CAAC;YAClC,IAAI,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE;gBACrC,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBACpE,IAAI,SAAS,EAAE;oBACX,6CAA6C;oBAC7C,IAAI,IAAI,CAAC,mBAAmB,CAAC,oBAAoB,EAAE;wBAC/C,MAAM,IAAI,GAAG,MAAO,IAAI,CAAC,WAA6B,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;wBAEpF,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE;4BACxB,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;4BAC7D,IAAI,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;4BACrD,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBAChC;qBACJ;yBAAM;wBACH,cAAc,CAAC,IAAI,CAAC,IAAI,8BAAQ,CAAC,2CAA2C,EAAE,6BAA6B,CAAC,CAAC,CAAC;qBACjH;iBACJ;qBAAM;oBACH,uCAAuC;oBACvC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;oBAChD,iDAAiD;oBACjD,IAAI,CAAC,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE;wBAC/B,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;wBAC3E,IAAI,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;wBAC5D,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;wBAC5B,CAAC,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;qBAC7C;oBACD,cAAc,GAAG,CAAC,CAAC,cAAc,CAAC;iBACrC;gBAED,4DAA4D;gBAC5D,IAAI,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;oBAC5D,wDAAwD;oBACxD,cAAc,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;iBAC9E;gBACD,QAAQ,CAAC,IAAI,GAAG;oBACZ,SAAS,EAAE,cAAc;iBAC5B,CAAC;aACL;iBAAM;gBACH,WAAI,CAAC,QAAQ,CAAC,uFAAuF,CAAC,CAAC;aAC1G;YACD,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;SAC/B;QAAC,OAAO,CAAC,EAAE;YACR,WAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;SACpB;IACL,CAAC;IAIM,KAAK,CAAC,eAAe,CAAC,QAAwC,EAAE,IAAqC;QACxG,IAAI;YACA,IAAI,QAAQ,GAAG,KAAK,EAAO,CAAC;YAE5B,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,GAAG,EAAE;gBAChE,OAAO,QAAQ,CAAC,OAAO,CAAC;YAC5B,CAAC,CAAC,CAAC;YAEH,2DAA2D;YAC3D,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE;gBAC1B,IAAI,CAAC,UAAU,GAAG,WAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aAC9D;YAED,IAAI;gBAEA,IAAI,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE;oBACrC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;wBACxG,qEAAqE;wBACrE,IAAI,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;wBAC/D,IAAI,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;wBAC5D,IAAI,CAAoB,CAAC;wBACzB,8CAA8C;wBAC9C,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;4BACvB,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;yBAC7B;6BAAM;4BACH,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;4BAC9F,IAAI,CAAC,MAAM,EAAE;gCACT,OAAO,CAAC,KAAK,CAAC,wBAAwB,UAAU,EAAE,CAAC,CAAC;gCACpD,OAAO;6BACV;4BACD,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;4BACrD,wCAAwC;4BACxC,qCAAqC;4BACrC,CAAC,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC;4BACrC,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;yBAC5B;wBACD,QAAQ,CAAC,IAAI,GAAG;4BACZ,MAAM,EAAE,CAAC,CAAC,KAAK;4BACf,kBAAkB,EAAE,CAAC,CAAC,kBAAkB;4BACxC,cAAc,EAAE,CAAC,CAAC,cAAc,IAAI,CAAC;4BACrC,gBAAgB,EAAE,CAAC,CAAC,gBAAgB,IAAI,CAAC;yBAC5C,CAAC;qBACL;yBAAM,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;wBAC7D,IAAI,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;wBAE3D,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE;4BACzC,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;yBAErC;6BAAM,IAAI,eAAe,KAAK,MAAM,EAAE;4BACnC,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;yBAEvC;6BAAM,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE;4BACrD,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;yBAEvC;6BAAM,IAAI,eAAe,KAAK,KAAK,EAAE;4BAClC,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;yBAEtC;6BAAM,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE;4BACnF,MAAO,IAAI,CAAC,WAA6B,CAAC,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;yBAEpG;6BAAM;4BACH,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;4BAC3D,QAAQ,CAAC,IAAI,GAAQ;gCACjB,MAAM,EAAE,MAAM,OAAO;6BACxB,CAAC;4BACF,mCAAmC;4BACnC,qDAAqD;4BACrD,4BAA4B;yBAC/B;qBACJ;iBACJ;qBAAM;oBACH,WAAI,CAAC,QAAQ,CAAC,qFAAqF,CAAC,CAAC;iBACxG;aACJ;oBAAS;gBACN,QAAQ,CAAC,OAAO,EAAE,CAAC;aACtB;YACD,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;SAC/B;QAAC,OAAO,CAAC,EAAE;YACR,WAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;SACpB;IACL,CAAC;IAED;;;;OAIG;IACO,KAAK,CAAC,iBAAiB,CAAC,QAAa,EAAE,IAAS;QACtD,IAAI,IAAI,CAAC,WAAW,EAAE;YAClB,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;SACpC;QACD,2BAA2B;QAC3B,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAC3B,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;SACxE;QACD,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,CAAC;QACnC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAEO,iBAAiB,CAAC,IAAY;QAClC,IAAI,IAAI,CAAC,mBAAmB,EAAE;YAC1B,IAAI,CAAC,WAAW,GAAG,IAAI,2CAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;SAC3F;aAAM;YACH,IAAI,CAAC,WAAW,GAAG,IAAI,6BAAa,CAAC,IAAI,EAAE,IAAI,CAAC,mBAAmB,CAAC,0BAA0B,CAAC,CAAC;SACnG;IACL,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,kBAAkB;QAC5B,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAC9B,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE;gBACpC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;aACnC;QACL,CAAC,CAAC,CAAC;QAEH,wDAAwD;QACxD,kEAAkE;QAClE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;YACtC,IAAI,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;YAClD,IAAI,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YAEnC,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAI,aAAa,GAAG,EAAE,CAAC;YACvB,MAAM,KAAK,GAAiB,IAAI,kCAAY,CAAC,2BAAkB,CAAC,UAAU,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;YACrG,qFAAqF;YACpF,KAAK,CAAC,IAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC,mBAAmB,CAAC;YACjE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,0DAA0D;QAC1D,kEAAkE;QAClE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,eAAe,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;YACrD,IAAI,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YAC9C,IAAI,OAAO,GAAG,MAAM,WAAW,CAAC,UAAU,EAAE,CAAC;YAC7C,IAAI,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACnC,IAAI,CAAC,SAAS,CAAC,IAAI,kCAAY,CAAC,2BAAkB,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;QAChG,CAAC,CAAC,CAAC;QAEH,gGAAgG;QAChG,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;YACxC,IAAI,CAAC,SAAS,CAAC,IAAI,qCAAe,EAAE,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QACH,qBAAqB;QACrB,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;QACjC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACvD,CAAC;IAEO,qBAAqB,CAAC,MAAyB,EAAE,OAAe;;QACpE,IAAI,CAAoB,CAAC;QAEzB,IAAI,MAAM,EAAE;YACR,IAAI,IAAI,CAAC,mBAAmB,EAAE;gBAC1B,IAAI,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;gBAChE,IAAI,MAAM,CAAC,OAAO,EAAE;oBAChB,kDAAkD;oBAClD,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE;wBAC9B,YAAY;wBACZ,CAAC,GAAG,IAAI,8BAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;wBAC1E,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;qBAC7B;yBAAM,IAAI,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE;wBACpC,kBAAkB;wBAClB,CAAC,GAAG,IAAI,8BAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;qBAC7E;iBACJ;qBAAM;oBACH,CAAC,GAAG,IAAI,8BAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;iBACpD;gBACD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;aAC7B;iBAAM;gBACH,IAAI,MAAM,CAAC,aAAa,KAAK,WAAW,IAAI,MAAM,CAAC,aAAa,KAAK,eAAe,EAAE;oBAClF,CAAC,GAAG,IAAI,8BAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;iBACpD;qBAAM,IAAI,MAAM,CAAC,aAAa,KAAK,OAAO,EAAE;oBACzC,IAAI,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;oBAChE,CAAC,GAAG,IAAI,8BAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,cAAE,MAAM,CAAC,QAAQ,0CAAE,MAAM,mCAAI,CAAC,EAAE,CAAC,CAAC,CAAC;oBACnF,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;iBAC7B;qBAAM,IAAI,MAAM,CAAC,aAAa,KAAK,QAAQ,EAAE;oBAC1C,IAAI,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;oBAChE,CAAC,GAAG,IAAI,8BAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,cAAE,MAAM,CAAC,QAAQ,0CAAE,MAAM,mCAAI,CAAC,CAAC,CAAC;oBACnF,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;iBAC7B;qBAAM,IAAI,MAAM,CAAC,aAAa,KAAK,UAAU,EAAE;oBAC5C,CAAC,GAAG,IAAI,8BAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;iBAC/C;aACJ;YAED,CAAC,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;YACrC,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC;YAEpB,IAAI,MAAM,CAAC,QAAQ,EAAE;gBACjB,IAAI,cAAc,GAAG,EAAE,CAAC;gBACxB,KAAK,IAAI,cAAc,IAAI,MAAM,CAAC,QAAQ,EAAE;oBACxC,IAAI,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;oBACnE,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBACjC;gBACD,CAAC,CAAC,cAAc,GAAG,cAAc,CAAC;aACrC;SACJ;QACD,OAAO,CAAC,CAAC;IACb,CAAC;IAEO,gBAAgB,CAAC,UAAkB,EAAE,OAAe;QACxD,IAAI,aAAa,GAAG,GAAG,UAAU,IAAI,OAAO,EAAE,CAAC;QAC/C,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,EAAE;YAC1C,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;SACzE;QACD,OAAO,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;IACnD,CAAC;IAEO,UAAU;QACd,4BAA4B;QAC5B,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACxB,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,qBAAqB;QAC9B,IAAI,IAAI,CAAC,mBAAmB,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YACnE,MAAM,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;SACxG;IACL,CAAC;IAED;;OAEG;IACI,QAAQ;QACX,6CAA6C;QAC7C,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,EAAE;YAC/C,IAAI,kBAAkB,GAAG,IAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,CAAC;YACrE,KAAK,IAAI,iBAAiB,IAAI,kBAAkB,EAAE;gBAC9C,IAAI;oBACA,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;iBACzC;gBAAC,OAAO,CAAC,EAAE;oBACR,WAAI,CAAC,GAAG,CAAC,qCAAqC,iBAAiB,MAAM,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;iBAC7F;aACJ;SACJ;QACD,KAAK,CAAC,QAAQ,EAAE,CAAC;IACrB,CAAC;CACJ;AAh7BD,4DAg7BC;AASD,SAAgB,KAAK;IACjB,IAAI,QAA8C,CAAC;IACnD,IAAI,OAA+B,CAAC;IACpC,IAAI,OAAO,GAAG,IAAI,OAAO,CAAI,CAAC,YAAY,EAAE,WAAW,EAAE,EAAE;QACvD,QAAQ,GAAG,YAAY,CAAC;QACxB,OAAO,GAAG,WAAW,CAAC;IAC1B,CAAC,CAAC,CAAC;IACH,OAAO;QACH,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,SAAS,OAAO,CAAC,KAA0B;YAChD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBAClB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;gBACvB,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAChB,QAAQ,GAAG,SAAS,CAAC;aACxB;iBAAM;gBACH,MAAM,IAAI,KAAK,CACX,mDAAmD,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,GAAG;oBAC/F,cAAc,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CACxC,CAAC;aACL;QACL,CAAC;QACD,MAAM,EAAE,SAAS,MAAM,CAAC,MAAY;YAChC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;gBACnB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;gBACvB,OAAO,CAAC,MAAM,CAAC,CAAC;gBAChB,OAAO,GAAG,SAAS,CAAC;aACvB;iBAAM;gBACH,MAAM,IAAI,KAAK,CACX,kDAAkD,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,GAAG;oBAC9F,sBAAsB,IAAI,CAAC,SAAS,CAAC,gCAAc,CAAC,MAAM,CAAC,CAAC,EAAE,CACjE,CAAC;aACL;QACL,CAAC;QACD,UAAU,EAAE,KAAK;QACjB,UAAU,EAAE,KAAK;QACjB,IAAI,WAAW;YACX,OAAO,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC;QAC9C,CAAC;KACJ,CAAC;AACN,CAAC;AAvCD,sBAuCC"}
1
+ {"version":3,"file":"BrightScriptDebugSession.js","sourceRoot":"","sources":["../../src/debugSession/BrightScriptDebugSession.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StoppedEventReason = exports.LaunchStartEvent = exports.ChanperfEvent = exports.RendezvousEvent = exports.DebugServerLogOutputEvent = exports.LogOutputEvent = exports.CompileFailureEvent = void 0;
3
4
  class CompileFailureEvent {
4
5
  constructor(compileError) {
5
6
  this.body = compileError;