@seleniumhq/side-runtime 4.0.0-alpha.8 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/dist/__tests__/callstack.spec.d.ts +2 -0
  2. package/dist/__tests__/callstack.spec.d.ts.map +1 -0
  3. package/dist/__tests__/callstack.spec.js +63 -0
  4. package/dist/__tests__/callstack.spec.js.map +1 -0
  5. package/dist/__tests__/integration/playback-webdriver.spec.d.ts +2 -0
  6. package/dist/__tests__/integration/playback-webdriver.spec.d.ts.map +1 -0
  7. package/dist/__tests__/integration/playback-webdriver.spec.js +249 -0
  8. package/dist/__tests__/integration/playback-webdriver.spec.js.map +1 -0
  9. package/dist/__tests__/playback-tree/command-leveler.spec.d.ts +2 -0
  10. package/dist/__tests__/playback-tree/command-leveler.spec.d.ts.map +1 -0
  11. package/dist/__tests__/playback-tree/command-leveler.spec.js +69 -0
  12. package/dist/__tests__/playback-tree/command-leveler.spec.js.map +1 -0
  13. package/dist/__tests__/playback-tree/command-node.spec.d.ts +2 -0
  14. package/dist/__tests__/playback-tree/command-node.spec.d.ts.map +1 -0
  15. package/dist/__tests__/playback-tree/command-node.spec.js +232 -0
  16. package/dist/__tests__/playback-tree/command-node.spec.js.map +1 -0
  17. package/dist/__tests__/playback-tree/playback-tree.spec.d.ts +2 -0
  18. package/dist/__tests__/playback-tree/playback-tree.spec.d.ts.map +1 -0
  19. package/dist/__tests__/playback-tree/playback-tree.spec.js +463 -0
  20. package/dist/__tests__/playback-tree/playback-tree.spec.js.map +1 -0
  21. package/dist/__tests__/playback-tree/syntax-validation.spec.d.ts +2 -0
  22. package/dist/__tests__/playback-tree/syntax-validation.spec.d.ts.map +1 -0
  23. package/dist/__tests__/playback-tree/syntax-validation.spec.js +224 -0
  24. package/dist/__tests__/playback-tree/syntax-validation.spec.js.map +1 -0
  25. package/dist/__tests__/playback.spec.d.ts +2 -0
  26. package/dist/__tests__/playback.spec.d.ts.map +1 -0
  27. package/dist/__tests__/playback.spec.js +2161 -0
  28. package/dist/__tests__/playback.spec.js.map +1 -0
  29. package/dist/__tests__/preprocessors.spec.d.ts +2 -0
  30. package/dist/__tests__/preprocessors.spec.d.ts.map +1 -0
  31. package/dist/__tests__/preprocessors.spec.js +141 -0
  32. package/dist/__tests__/preprocessors.spec.js.map +1 -0
  33. package/dist/__tests__/util/FakeExecutor.d.ts +32 -0
  34. package/dist/__tests__/util/FakeExecutor.d.ts.map +1 -0
  35. package/dist/__tests__/util/FakeExecutor.js +81 -0
  36. package/dist/__tests__/util/FakeExecutor.js.map +1 -0
  37. package/dist/__tests__/util/JestFakeExecutor.d.ts +32 -0
  38. package/dist/__tests__/util/JestFakeExecutor.d.ts.map +1 -0
  39. package/dist/__tests__/util/JestFakeExecutor.js +79 -0
  40. package/dist/__tests__/util/JestFakeExecutor.js.map +1 -0
  41. package/dist/__tests__/utils.spec.d.ts +2 -0
  42. package/dist/__tests__/utils.spec.d.ts.map +1 -0
  43. package/dist/__tests__/utils.spec.js +40 -0
  44. package/dist/__tests__/utils.spec.js.map +1 -0
  45. package/dist/__tests__/webdriver.spec.d.ts +2 -0
  46. package/dist/__tests__/webdriver.spec.d.ts.map +1 -0
  47. package/dist/__tests__/webdriver.spec.js +522 -0
  48. package/dist/__tests__/webdriver.spec.js.map +1 -0
  49. package/dist/playback-tree/command-leveler.d.ts +2 -2
  50. package/dist/playback-tree/command-leveler.d.ts.map +1 -1
  51. package/dist/playback-tree/command-leveler.js +4 -2
  52. package/dist/playback-tree/command-leveler.js.map +1 -1
  53. package/dist/playback-tree/command-node.d.ts +5 -4
  54. package/dist/playback-tree/command-node.d.ts.map +1 -1
  55. package/dist/playback-tree/command-node.js +81 -29
  56. package/dist/playback-tree/command-node.js.map +1 -1
  57. package/dist/playback-tree/commands.d.ts +12 -9
  58. package/dist/playback-tree/commands.d.ts.map +1 -1
  59. package/dist/playback-tree/commands.js +22 -14
  60. package/dist/playback-tree/commands.js.map +1 -1
  61. package/dist/playback-tree/index.d.ts +1 -1
  62. package/dist/playback-tree/index.d.ts.map +1 -1
  63. package/dist/playback-tree/index.js +5 -2
  64. package/dist/playback-tree/index.js.map +1 -1
  65. package/dist/playback-tree/syntax-validation.d.ts.map +1 -1
  66. package/dist/playback-tree/syntax-validation.js +4 -2
  67. package/dist/playback-tree/syntax-validation.js.map +1 -1
  68. package/dist/playback.d.ts +16 -12
  69. package/dist/playback.d.ts.map +1 -1
  70. package/dist/playback.js +64 -33
  71. package/dist/playback.js.map +1 -1
  72. package/dist/plugins.d.ts +4 -3
  73. package/dist/plugins.d.ts.map +1 -1
  74. package/dist/plugins.js +28 -9
  75. package/dist/plugins.js.map +1 -1
  76. package/dist/preprocessors.d.ts +2 -2
  77. package/dist/preprocessors.d.ts.map +1 -1
  78. package/dist/preprocessors.js +12 -28
  79. package/dist/preprocessors.js.map +1 -1
  80. package/dist/recording-syncronizer-webdriver.d.ts +3 -3
  81. package/dist/recording-syncronizer.d.ts +4 -3
  82. package/dist/recording-syncronizer.d.ts.map +1 -1
  83. package/dist/recording-syncronizer.js +1 -1
  84. package/dist/recording-syncronizer.js.map +1 -1
  85. package/dist/types.d.ts +25 -29
  86. package/dist/types.d.ts.map +1 -1
  87. package/dist/variables.d.ts.map +1 -1
  88. package/dist/variables.js +6 -0
  89. package/dist/variables.js.map +1 -1
  90. package/dist/webdriver.d.ts +39 -45
  91. package/dist/webdriver.d.ts.map +1 -1
  92. package/dist/webdriver.js +283 -223
  93. package/dist/webdriver.js.map +1 -1
  94. package/package.json +10 -7
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-node.spec.js","sourceRoot":"","sources":["../../../src/__tests__/playback-tree/command-node.spec.ts"],"names":[],"mappings":";AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,wDAAwD;AACxD,6DAA6D;AAC7D,oDAAoD;AACpD,6DAA6D;AAC7D,6DAA6D;AAC7D,EAAE;AACF,+CAA+C;AAC/C,EAAE;AACF,6DAA6D;AAC7D,8DAA8D;AAC9D,yDAAyD;AACzD,4DAA4D;AAC5D,0DAA0D;AAC1D,qBAAqB;;;;;AAErB,2DAAsE;AACtE,mEAGyC;AACzC,gEAAuC;AACvC,wEAA+C;AAE/C,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,IAAI,SAAoB,CAAA;IACxB,UAAU,CAAC,GAAG,EAAE;QACd,SAAS,GAAG,IAAI,mBAAS,EAAE,CAAA;IAC7B,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACnD,IAAI,IAAI,GAAG,IAAI,0BAAW,CAAC,SAA2B,CAAC,CAAA;QACvD,mBAAmB;QACnB,IAAI,CAAC,KAAK,GAAG,MAAM,CAAA;QACnB,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,UAAU,EAAE,CAAA;QACzC,IAAI,CAAC,IAAI,GAAG,SAAS,CAAA;QACrB,mBAAmB;QACnB,IAAI,CAAC,KAAK,GAAG,MAAM,CAAA;QACnB,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,UAAU,EAAE,CAAA;IAC3C,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACtC,MAAM,OAAO,GAAG;YACd,EAAE,EAAE,GAAG;YACP,OAAO,EAAE,kCAAuB,CAAC,KAAK;YACtC,MAAM,EAAE,EAAE;YACV,KAAK,EAAE,EAAE;SACV,CAAA;QACD,MAAM,IAAI,GAAG,IAAI,0BAAW,CAAC,OAAO,CAAC,CAAA;QACrC,IAAI,CAAC,YAAY,GAAG,GAAG,CAAA;QACvB,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,SAAS,EAAE,CAAA;QACxC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;QACxB,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,UAAU,EAAE,CAAA;IAC3C,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACtC,MAAM,OAAO,GAAG;YACd,EAAE,EAAE,GAAG;YACP,OAAO,EAAE,kCAAuB,CAAC,QAAQ;YACzC,MAAM,EAAE,EAAE;YACV,KAAK,EAAE,GAAG;SACX,CAAA;QACD,MAAM,IAAI,GAAG,IAAI,0BAAW,CAAC,OAAO,CAAC,CAAA;QACrC,IAAI,CAAC,YAAY,GAAG,CAAC,CAAA;QACrB,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,UAAU,EAAE,CAAA;IAC3C,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,cAAc,GAAG,MAAM,CAAA;QAC7B,SAAS,CAAC,GAAG,CAAC,cAAc,EAAE;YAC5B,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE;YACpB,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE;SACrB,CAAC,CAAA;QACF,MAAM,OAAO,GAAG;YACd,EAAE,EAAE,GAAG;YACP,OAAO,EAAE,kCAAuB,CAAC,OAAO;YACxC,MAAM,EAAE,cAAc;YACtB,KAAK,EAAE,aAAa;SACrB,CAAA;QACD,MAAM,IAAI,GAAG,IAAI,0BAAW,CAAC,OAAO,CAAC,CAAA;QACrC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IACvD,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,MAAM,OAAO,GAAG;YACd,EAAE,EAAE,GAAG;YACP,OAAO,EAAE,kCAAuB,CAAC,OAAO;YACxC,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,EAAE;SACV,CAAA;QACD,MAAM,IAAI,GAAG,IAAI,0BAAW,CAAC,OAAO,CAAC,CAAA;QACrC,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAA;QAC9C,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAA;IACtD,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,gFAAgF,EAAE,GAAG,EAAE;QACxF,MAAM,cAAc,GAAG,MAAM,CAAA;QAC7B,SAAS,CAAC,GAAG,CAAC,cAAc,EAAE;YAC5B,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE;YACpB,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE;SACrB,CAAC,CAAA;QACF,MAAM,OAAO,GAAG;YACd,EAAE,EAAE,GAAG;YACP,OAAO,EAAE,kCAAuB,CAAC,OAAO;YACxC,MAAM,EAAE,cAAc;YACtB,KAAK,EAAE,aAAa;SACrB,CAAA;QACD,MAAM,IAAI,GAAG,IAAI,0BAAW,CAAC,OAAO,CAAC,CAAA;QACrC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAA;QAC/B,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;IACpE,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,UAAU,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAA;QACpE,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,CAAA;QAChD,MAAM,IAAI,GAAG,IAAI,0BAAW,CAAC;YAC3B,EAAE,EAAE,GAAG;YACP,OAAO,EAAE,kCAAuB,CAAC,OAAO;YACxC,MAAM,EAAE,UAAU,CAAC,IAAI;YACvB,KAAK,EAAE,aAAa;SACrB,CAAC,CAAA;QACF,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAA;QAC/C,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAA;QAC/B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,kFAAkF,EAAE,GAAG,EAAE;QAC1F,MAAM,OAAO,GAAG;YACd,EAAE,EAAE,GAAG;YACP,OAAO,EAAE,kCAAuB,CAAC,KAAK;YACtC,MAAM,EAAE,EAAE;YACV,KAAK,EAAE,GAAG;SACX,CAAA;QACD,MAAM,QAAQ,GAAG,IAAI,sBAAY,EAAE,CAAA;QACnC,MAAM,IAAI,GAAG,IAAI,0BAAW,CAAC,OAAO,CAAC,CAAA;QACrC,IAAI,CAAC,YAAY,GAAG,CAAC,CAAA;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,QAA0B,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YAC5D,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,OAAO,CACzB,yFAAyF,CAC1F,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,uFAAuF,EAAE,KAAK,IAAI,EAAE;QACrG,MAAM,OAAO,GAAG;YACd,EAAE,EAAE,GAAG;YACP,OAAO,EAAE,kCAAuB,CAAC,KAAK;YACtC,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,EAAE;SACV,CAAA;QACD,MAAM,QAAQ,GAAG,IAAI,sBAAY,EAAE,CAAA;QACnC,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,mBAAS,EAAE,EAAE,CAAC,CAAA;QAC7C,MAAM,IAAI,GAAG,IAAI,0BAAW,CAAC,OAAO,CAAC,CAAA;QACrC,IAAI;YACF,MAAM,IAAI,CAAC,SAAS,CAAC,QAA0B,CAAC,CAAA;SACjD;QAAC,OAAO,GAAG,EAAE;YACZ,MAAM,CAAE,GAAa,CAAC,OAAO,CAAC,CAAC,OAAO,CACpC,sCAAsC,CACvC,CAAA;SACF;IACH,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAChE,IAAI,OAAO,GAAG;YACZ,EAAE,EAAE,GAAG;YACP,OAAO,EAAE,kCAAuB,CAAC,KAAK;YACtC,MAAM,EAAE,EAAE;YACV,KAAK,EAAE,EAAE;SACV,CAAA;QACD,IAAI,IAAI,GAAG,IAAI,0BAAW,CAAC,OAAO,CAAC,CAAA;QACnC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjC,IAAI,CAAC,sBAAsB,EAAE,CAAA;QAC7B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjC,MAAM,WAAW,GAAG;YAClB,EAAE,EAAE,GAAG;YACP,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,EAAE;YACV,KAAK,EAAE,EAAE;SACV,CAAA;QACD,IAAI,GAAG,IAAI,0BAAW,CAAC,WAAW,CAAC,CAAA;QACnC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjC,IAAI,CAAC,sBAAsB,EAAE,CAAA;QAC7B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnC,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,OAAO,GAAG;YACd,EAAE,EAAE,GAAG;YACP,OAAO,EAAE,GAAG;YACZ,MAAM,EAAE,EAAE;YACV,KAAK,EAAE,EAAE;SACV,CAAA;QACD,MAAM,IAAI,GAAG,IAAI,0BAAW,CAAC,OAAO,CAAC,CAAA;QACrC,mBAAmB;QACnB,IAAI,CAAC,KAAK,GAAG,GAAG,CAAA;QAChB,mBAAmB;QACnB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAA;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;QACtD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IAClC,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,OAAO,GAAG;YACd,EAAE,EAAE,GAAG;YACP,OAAO,EAAE,GAAG;YACZ,MAAM,EAAE,EAAE;YACV,KAAK,EAAE,EAAE;SACV,CAAA;QACD,MAAM,IAAI,GAAG,IAAI,0BAAW,CAAC,OAAO,CAAC,CAAA;QACrC,mBAAmB;QACnB,IAAI,CAAC,KAAK,GAAG,GAAG,CAAA;QAChB,mBAAmB;QACnB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAA;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;QACvD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IAClC,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;QAC7E,MAAM,OAAO,GAAG;YACd,EAAE,EAAE,GAAG;YACP,OAAO,EAAE,MAAM;YACf,MAAM,EAAE,EAAE;YACV,KAAK,EAAE,EAAE;SACV,CAAA;QACD,IAAI,KAAK,GAAG,IAAI,0BAAW,CAAC,OAAO,CAAC,CAAA;QACpC,MAAM,KAAK,GAAG,IAAI,0BAAW,CAAC,OAAO,CAAC,CAAA;QACtC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAA;QAClB,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IACtD,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,OAAO,GAAG;YACd,EAAE,EAAE,GAAG;YACP,OAAO,EAAE,kCAAuB,CAAC,EAAE;YACnC,MAAM,EAAE,EAAE;YACV,KAAK,EAAE,EAAE;SACV,CAAA;QACD,IAAI,KAAK,GAAG,IAAI,0BAAW,CAAC,OAAO,CAAC,CAAA;QACpC,mBAAmB;QACnB,KAAK,CAAC,IAAI,GAAG,MAAM,CAAA;QACnB,MAAM,KAAK,GAAG,IAAI,0BAAW,CAAC,OAAO,CAAC,CAAA;QACtC,MAAM,MAAM,GAA2B;YACrC,IAAI,EAAE,KAAK;SACZ,CAAA;QACD,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC5D,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=playback-tree.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playback-tree.spec.d.ts","sourceRoot":"","sources":["../../../src/__tests__/playback-tree/playback-tree.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,463 @@
1
+ "use strict";
2
+ // Licensed to the Software Freedom Conservancy (SFC) under one
3
+ // or more contributor license agreements. See the NOTICE file
4
+ // distributed with this work for additional information
5
+ // regarding copyright ownership. The SFC licenses this file
6
+ // to you under the Apache License, Version 2.0 (the
7
+ // "License"); you may not use this file except in compliance
8
+ // with the License. You may obtain a copy of the License at
9
+ //
10
+ // http://www.apache.org/licenses/LICENSE-2.0
11
+ //
12
+ // Unless required by applicable law or agreed to in writing,
13
+ // software distributed under the License is distributed on an
14
+ // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15
+ // KIND, either express or implied. See the License for the
16
+ // specific language governing permissions and limitations
17
+ // under the License.
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ const playback_tree_1 = require("../../playback-tree");
20
+ const commands_1 = require("../../playback-tree/commands");
21
+ function createCommand(command) {
22
+ return {
23
+ id: 'a',
24
+ command,
25
+ target: '',
26
+ value: '',
27
+ };
28
+ }
29
+ describe('Control Flow', () => {
30
+ describe('Process', () => {
31
+ describe('Linked List Validation', () => {
32
+ test('nodes contain command references and levels', () => {
33
+ let input = [createCommand('command1'), createCommand('command2')];
34
+ let stack = (0, playback_tree_1.createCommandNodesFromCommandStack)(input);
35
+ expect(stack[0].command).toEqual(input[0]);
36
+ expect(stack[0].level).toEqual(0);
37
+ expect(stack[1].command).toEqual(input[1]);
38
+ expect(stack[1].level).toEqual(0);
39
+ });
40
+ test('command-command', () => {
41
+ let input = [createCommand('command1'), createCommand('command2')];
42
+ let stack = (0, playback_tree_1.createCommandNodesFromCommandStack)(input);
43
+ expect(stack[0].next).toEqual(stack[1]);
44
+ expect(stack[0].left).toBeUndefined();
45
+ expect(stack[0].right).toBeUndefined();
46
+ expect(stack[1].next).toBeUndefined();
47
+ expect(stack[1].left).toBeUndefined();
48
+ expect(stack[1].right).toBeUndefined();
49
+ });
50
+ test('if-command-elseIf-command-else-command-end', () => {
51
+ let input = [
52
+ createCommand(commands_1.ControlFlowCommandNames.if),
53
+ createCommand('command'),
54
+ createCommand(commands_1.ControlFlowCommandNames.elseIf),
55
+ createCommand('command'),
56
+ createCommand(commands_1.ControlFlowCommandNames.else),
57
+ createCommand('command'),
58
+ createCommand(commands_1.ControlFlowCommandNames.end),
59
+ ];
60
+ let stack = (0, playback_tree_1.createCommandNodesFromCommandStack)(input);
61
+ // if
62
+ expect(stack[0].next).toBeUndefined();
63
+ expect(stack[0].right).toEqual(stack[1]);
64
+ expect(stack[0].left).toEqual(stack[2]);
65
+ // command
66
+ expect(stack[1].next).toEqual(stack[6]);
67
+ expect(stack[1].right).toBeUndefined();
68
+ expect(stack[1].left).toBeUndefined();
69
+ // elseIf
70
+ expect(stack[2].next).toBeUndefined();
71
+ expect(stack[2].right).toEqual(stack[3]);
72
+ expect(stack[2].left).toEqual(stack[4]);
73
+ // command
74
+ expect(stack[3].next).toEqual(stack[6]);
75
+ expect(stack[3].right).toBeUndefined();
76
+ expect(stack[3].left).toBeUndefined();
77
+ // else
78
+ expect(stack[4].next).toEqual(stack[5]);
79
+ expect(stack[4].right).toBeUndefined();
80
+ expect(stack[4].left).toBeUndefined();
81
+ // command
82
+ expect(stack[5].next).toEqual(stack[6]);
83
+ expect(stack[5].right).toBeUndefined();
84
+ expect(stack[5].left).toBeUndefined();
85
+ // end
86
+ expect(stack[6].next).toBeUndefined();
87
+ expect(stack[6].right).toBeUndefined();
88
+ expect(stack[6].left).toBeUndefined();
89
+ });
90
+ test('while-end', () => {
91
+ let input = [
92
+ createCommand(commands_1.ControlFlowCommandNames.while),
93
+ createCommand(commands_1.ControlFlowCommandNames.end),
94
+ ];
95
+ let stack = (0, playback_tree_1.createCommandNodesFromCommandStack)(input);
96
+ expect(stack[0].next).toBeUndefined();
97
+ expect(stack[0].right).toEqual(stack[1]);
98
+ expect(stack[0].left).toEqual(stack[1]);
99
+ expect(stack[1].next).toBeUndefined();
100
+ expect(stack[1].right).toBeUndefined();
101
+ expect(stack[1].left).toBeUndefined();
102
+ });
103
+ test('while-command-end', () => {
104
+ let input = [
105
+ createCommand(commands_1.ControlFlowCommandNames.while),
106
+ createCommand('command'),
107
+ createCommand(commands_1.ControlFlowCommandNames.end),
108
+ ];
109
+ let stack = (0, playback_tree_1.createCommandNodesFromCommandStack)(input);
110
+ expect(stack[0].next).toBeUndefined();
111
+ expect(stack[0].right).toEqual(stack[1]);
112
+ expect(stack[0].left).toEqual(stack[2]);
113
+ expect(stack[1].next).toEqual(stack[0]);
114
+ expect(stack[1].right).toBeUndefined();
115
+ expect(stack[1].left).toBeUndefined();
116
+ expect(stack[2].next).toBeUndefined();
117
+ expect(stack[2].right).toBeUndefined();
118
+ expect(stack[2].left).toBeUndefined();
119
+ });
120
+ test('while-command-command-end', () => {
121
+ let input = [
122
+ createCommand(commands_1.ControlFlowCommandNames.while),
123
+ createCommand('command'),
124
+ createCommand('command'),
125
+ createCommand(commands_1.ControlFlowCommandNames.end),
126
+ ];
127
+ let stack = (0, playback_tree_1.createCommandNodesFromCommandStack)(input);
128
+ expect(stack[0].next).toBeUndefined();
129
+ expect(stack[0].right).toEqual(stack[1]);
130
+ expect(stack[0].left).toEqual(stack[3]);
131
+ expect(stack[1].next).toEqual(stack[2]);
132
+ expect(stack[1].right).toBeUndefined();
133
+ expect(stack[1].left).toBeUndefined();
134
+ expect(stack[2].next).toEqual(stack[0]);
135
+ expect(stack[2].right).toBeUndefined();
136
+ expect(stack[2].left).toBeUndefined();
137
+ expect(stack[3].next).toBeUndefined();
138
+ expect(stack[3].right).toBeUndefined();
139
+ expect(stack[3].left).toBeUndefined();
140
+ });
141
+ test('while-if-end-end', () => {
142
+ let input = [
143
+ createCommand(commands_1.ControlFlowCommandNames.while),
144
+ createCommand(commands_1.ControlFlowCommandNames.if),
145
+ createCommand('command'),
146
+ createCommand(commands_1.ControlFlowCommandNames.end),
147
+ createCommand(commands_1.ControlFlowCommandNames.end), // 4
148
+ ];
149
+ let stack = (0, playback_tree_1.createCommandNodesFromCommandStack)(input);
150
+ expect(stack[0].next).toBeUndefined();
151
+ expect(stack[0].right).toEqual(stack[1]);
152
+ expect(stack[0].left).toEqual(stack[4]);
153
+ expect(stack[1].next).toBeUndefined();
154
+ expect(stack[1].right).toEqual(stack[2]);
155
+ expect(stack[1].left).toEqual(stack[3]);
156
+ expect(stack[2].next).toEqual(stack[3]);
157
+ expect(stack[2].right).toBeUndefined();
158
+ expect(stack[2].left).toBeUndefined();
159
+ expect(stack[3].next).toEqual(stack[0]);
160
+ expect(stack[3].right).toBeUndefined();
161
+ expect(stack[3].left).toBeUndefined();
162
+ expect(stack[4].next).toBeUndefined();
163
+ expect(stack[4].right).toBeUndefined();
164
+ expect(stack[4].left).toBeUndefined();
165
+ });
166
+ test('while-if-end-command-end', () => {
167
+ let input = [
168
+ createCommand(commands_1.ControlFlowCommandNames.while),
169
+ createCommand(commands_1.ControlFlowCommandNames.if),
170
+ createCommand('command'),
171
+ createCommand(commands_1.ControlFlowCommandNames.end),
172
+ createCommand('command'),
173
+ createCommand(commands_1.ControlFlowCommandNames.end), // 5
174
+ ];
175
+ let stack = (0, playback_tree_1.createCommandNodesFromCommandStack)(input);
176
+ expect(stack[0].next).toBeUndefined();
177
+ expect(stack[0].right).toEqual(stack[1]);
178
+ expect(stack[0].left).toEqual(stack[5]);
179
+ expect(stack[1].next).toBeUndefined();
180
+ expect(stack[1].right).toEqual(stack[2]);
181
+ expect(stack[1].left).toEqual(stack[3]);
182
+ expect(stack[2].next).toEqual(stack[3]);
183
+ expect(stack[2].right).toBeUndefined();
184
+ expect(stack[2].left).toBeUndefined();
185
+ expect(stack[3].next).toEqual(stack[4]);
186
+ expect(stack[3].right).toBeUndefined();
187
+ expect(stack[3].left).toBeUndefined();
188
+ expect(stack[4].next).toEqual(stack[0]);
189
+ expect(stack[4].right).toBeUndefined();
190
+ expect(stack[4].left).toBeUndefined();
191
+ expect(stack[5].next).toBeUndefined();
192
+ expect(stack[5].right).toBeUndefined();
193
+ expect(stack[5].left).toBeUndefined();
194
+ });
195
+ test('if-command-while-command-end-end', () => {
196
+ let input = [
197
+ createCommand(commands_1.ControlFlowCommandNames.if),
198
+ createCommand('command'),
199
+ createCommand(commands_1.ControlFlowCommandNames.while),
200
+ createCommand('command'),
201
+ createCommand(commands_1.ControlFlowCommandNames.end),
202
+ createCommand(commands_1.ControlFlowCommandNames.end),
203
+ ];
204
+ let stack = (0, playback_tree_1.createCommandNodesFromCommandStack)(input);
205
+ // if
206
+ expect(stack[0].next).toBeUndefined();
207
+ expect(stack[0].right).toEqual(stack[1]);
208
+ expect(stack[0].left).toEqual(stack[5]);
209
+ // command
210
+ expect(stack[1].next).toEqual(stack[2]);
211
+ expect(stack[1].right).toBeUndefined();
212
+ expect(stack[1].left).toBeUndefined();
213
+ // while
214
+ expect(stack[2].next).toBeUndefined();
215
+ expect(stack[2].right).toEqual(stack[3]);
216
+ expect(stack[2].left).toEqual(stack[4]);
217
+ // command
218
+ expect(stack[3].next).toEqual(stack[2]);
219
+ expect(stack[3].right).toBeUndefined();
220
+ expect(stack[3].left).toBeUndefined();
221
+ // end
222
+ expect(stack[4].next).toEqual(stack[5]);
223
+ expect(stack[4].right).toBeUndefined();
224
+ expect(stack[4].left).toBeUndefined();
225
+ // end
226
+ expect(stack[5].next).toBeUndefined();
227
+ expect(stack[5].right).toBeUndefined();
228
+ expect(stack[5].left).toBeUndefined();
229
+ });
230
+ test('if-while-command-end-command-else-command-end', () => {
231
+ let input = [
232
+ createCommand(commands_1.ControlFlowCommandNames.if),
233
+ createCommand(commands_1.ControlFlowCommandNames.while),
234
+ createCommand('command'),
235
+ createCommand(commands_1.ControlFlowCommandNames.end),
236
+ createCommand('command'),
237
+ createCommand(commands_1.ControlFlowCommandNames.else),
238
+ createCommand('command'),
239
+ createCommand(commands_1.ControlFlowCommandNames.end),
240
+ ];
241
+ let stack = (0, playback_tree_1.createCommandNodesFromCommandStack)(input);
242
+ // if
243
+ expect(stack[0].next).toBeUndefined();
244
+ expect(stack[0].right).toEqual(stack[1]);
245
+ expect(stack[0].left).toEqual(stack[5]);
246
+ // while
247
+ expect(stack[1].next).toBeUndefined();
248
+ expect(stack[1].right).toEqual(stack[2]);
249
+ expect(stack[1].left).toEqual(stack[3]);
250
+ // command
251
+ expect(stack[2].next).toEqual(stack[1]);
252
+ expect(stack[2].right).toBeUndefined();
253
+ expect(stack[2].left).toBeUndefined();
254
+ // end
255
+ expect(stack[3].next).toEqual(stack[4]);
256
+ expect(stack[3].right).toBeUndefined();
257
+ expect(stack[3].left).toBeUndefined();
258
+ // command
259
+ expect(stack[4].next).toEqual(stack[7]);
260
+ expect(stack[4].right).toBeUndefined();
261
+ expect(stack[4].left).toBeUndefined();
262
+ // else
263
+ expect(stack[5].next).toEqual(stack[6]);
264
+ expect(stack[5].right).toBeUndefined();
265
+ expect(stack[5].left).toBeUndefined();
266
+ // command
267
+ expect(stack[6].next).toEqual(stack[7]);
268
+ expect(stack[6].right).toBeUndefined();
269
+ expect(stack[6].left).toBeUndefined();
270
+ // end
271
+ expect(stack[7].next).toBeUndefined();
272
+ expect(stack[7].right).toBeUndefined();
273
+ expect(stack[7].left).toBeUndefined();
274
+ });
275
+ test('do-command-repeatIf-command', () => {
276
+ let input = [
277
+ createCommand(commands_1.ControlFlowCommandNames.do),
278
+ createCommand('command'),
279
+ createCommand(commands_1.ControlFlowCommandNames.repeatIf),
280
+ createCommand('command'),
281
+ ];
282
+ let stack = (0, playback_tree_1.createCommandNodesFromCommandStack)(input);
283
+ expect(stack[0].next).toEqual(stack[1]);
284
+ expect(stack[0].right).toBeUndefined();
285
+ expect(stack[0].left).toBeUndefined();
286
+ expect(stack[1].next).toEqual(stack[2]);
287
+ expect(stack[1].right).toBeUndefined();
288
+ expect(stack[1].left).toBeUndefined();
289
+ expect(stack[2].next).toBeUndefined();
290
+ expect(stack[2].right).toEqual(stack[0]);
291
+ expect(stack[2].left).toEqual(stack[3]);
292
+ });
293
+ test('do-command-while-command-end-repeatIf', () => {
294
+ let input = [
295
+ createCommand(commands_1.ControlFlowCommandNames.do),
296
+ createCommand('command'),
297
+ createCommand(commands_1.ControlFlowCommandNames.while),
298
+ createCommand('command'),
299
+ createCommand(commands_1.ControlFlowCommandNames.end),
300
+ createCommand(commands_1.ControlFlowCommandNames.repeatIf),
301
+ ];
302
+ let stack = (0, playback_tree_1.createCommandNodesFromCommandStack)(input);
303
+ expect(stack[0].next).toEqual(stack[1]);
304
+ expect(stack[0].right).toBeUndefined();
305
+ expect(stack[0].left).toBeUndefined();
306
+ expect(stack[1].next).toEqual(stack[2]);
307
+ expect(stack[1].right).toBeUndefined();
308
+ expect(stack[1].left).toBeUndefined();
309
+ expect(stack[2].next).toBeUndefined();
310
+ expect(stack[2].right).toEqual(stack[3]);
311
+ expect(stack[2].left).toEqual(stack[4]);
312
+ expect(stack[3].next).toEqual(stack[2]);
313
+ expect(stack[3].right).toBeUndefined();
314
+ expect(stack[3].left).toBeUndefined();
315
+ expect(stack[4].next).toEqual(stack[5]);
316
+ expect(stack[4].right).toBeUndefined();
317
+ expect(stack[4].left).toBeUndefined();
318
+ expect(stack[5].next).toBeUndefined();
319
+ expect(stack[5].right).toEqual(stack[0]);
320
+ expect(stack[5].left).toBeUndefined();
321
+ });
322
+ test('times-command-end', () => {
323
+ let input = [
324
+ createCommand(commands_1.ControlFlowCommandNames.times),
325
+ createCommand('command'),
326
+ createCommand(commands_1.ControlFlowCommandNames.end),
327
+ ];
328
+ let stack = (0, playback_tree_1.createCommandNodesFromCommandStack)(input);
329
+ expect(stack[0].next).toBeUndefined();
330
+ expect(stack[0].right).toEqual(stack[1]);
331
+ expect(stack[0].left).toEqual(stack[2]);
332
+ expect(stack[1].next).toEqual(stack[0]);
333
+ expect(stack[1].right).toBeUndefined();
334
+ expect(stack[1].left).toBeUndefined();
335
+ expect(stack[2].next).toBeUndefined();
336
+ expect(stack[2].right).toBeUndefined();
337
+ expect(stack[2].left).toBeUndefined();
338
+ });
339
+ test('forEach-command-end', () => {
340
+ let input = [
341
+ createCommand(commands_1.ControlFlowCommandNames.forEach),
342
+ createCommand('command'),
343
+ createCommand(commands_1.ControlFlowCommandNames.end),
344
+ ];
345
+ let stack = (0, playback_tree_1.createCommandNodesFromCommandStack)(input);
346
+ expect(stack[0].next).toBeUndefined();
347
+ expect(stack[0].right).toEqual(stack[1]);
348
+ expect(stack[0].left).toEqual(stack[2]);
349
+ expect(stack[1].next).toEqual(stack[0]);
350
+ expect(stack[1].right).toBeUndefined();
351
+ expect(stack[1].left).toBeUndefined();
352
+ expect(stack[2].next).toBeUndefined();
353
+ expect(stack[2].right).toBeUndefined();
354
+ expect(stack[2].left).toBeUndefined();
355
+ });
356
+ test('if-if-if-if-end-end-end-command-end', () => {
357
+ let input = [
358
+ createCommand(commands_1.ControlFlowCommandNames.if),
359
+ createCommand(commands_1.ControlFlowCommandNames.if),
360
+ createCommand(commands_1.ControlFlowCommandNames.if),
361
+ createCommand(commands_1.ControlFlowCommandNames.if),
362
+ createCommand(commands_1.ControlFlowCommandNames.end),
363
+ createCommand(commands_1.ControlFlowCommandNames.end),
364
+ createCommand(commands_1.ControlFlowCommandNames.end),
365
+ createCommand('command'),
366
+ createCommand(commands_1.ControlFlowCommandNames.end),
367
+ ];
368
+ let stack = (0, playback_tree_1.createCommandNodesFromCommandStack)(input);
369
+ expect(stack[0].next).toBeUndefined();
370
+ expect(stack[0].right).toEqual(stack[1]);
371
+ expect(stack[0].left).toEqual(stack[8]);
372
+ expect(stack[1].next).toBeUndefined();
373
+ expect(stack[1].right).toEqual(stack[2]);
374
+ expect(stack[1].left).toEqual(stack[6]);
375
+ expect(stack[2].next).toBeUndefined();
376
+ expect(stack[2].right).toEqual(stack[3]);
377
+ expect(stack[2].left).toEqual(stack[5]);
378
+ expect(stack[3].next).toBeUndefined();
379
+ expect(stack[3].right).toEqual(stack[4]);
380
+ expect(stack[3].left).toEqual(stack[4]);
381
+ expect(stack[4].next).toEqual(stack[5]);
382
+ expect(stack[4].right).toBeUndefined();
383
+ expect(stack[4].left).toBeUndefined();
384
+ expect(stack[5].next).toEqual(stack[6]);
385
+ expect(stack[5].right).toBeUndefined();
386
+ expect(stack[5].left).toBeUndefined();
387
+ expect(stack[6].next).toEqual(stack[7]);
388
+ expect(stack[6].right).toBeUndefined();
389
+ expect(stack[6].left).toBeUndefined();
390
+ expect(stack[7].next).toEqual(stack[8]);
391
+ expect(stack[7].right).toBeUndefined();
392
+ expect(stack[7].left).toBeUndefined();
393
+ expect(stack[8].next).toBeUndefined();
394
+ expect(stack[8].right).toBeUndefined();
395
+ expect(stack[8].left).toBeUndefined();
396
+ });
397
+ });
398
+ });
399
+ describe('Processed', () => {
400
+ it('knows if there are control flow commands within the command stack', () => {
401
+ let input = [
402
+ createCommand(commands_1.ControlFlowCommandNames.do),
403
+ createCommand('command'),
404
+ createCommand(commands_1.ControlFlowCommandNames.repeatIf),
405
+ ];
406
+ const tree = (0, playback_tree_1.createPlaybackTree)(input);
407
+ expect(tree.containsControlFlow).toBeTruthy();
408
+ });
409
+ it('do-command-repeatIf-end skips do', () => {
410
+ let input = [
411
+ createCommand(commands_1.ControlFlowCommandNames.do),
412
+ createCommand('command'),
413
+ createCommand(commands_1.ControlFlowCommandNames.repeatIf),
414
+ ];
415
+ let tree = (0, playback_tree_1.createPlaybackTree)(input);
416
+ expect(tree.startingCommandNode.command).toEqual(input[0]);
417
+ expect(tree.startingCommandNode.next.command).toEqual(input[1]);
418
+ expect(tree.startingCommandNode.next.next.command).toEqual(input[2]);
419
+ expect(tree.startingCommandNode.next.next.right.command).toEqual(input[0]);
420
+ expect(tree.startingCommandNode.next.next.left).toBeUndefined();
421
+ });
422
+ it('populated tree exists with correct values', () => {
423
+ let input = [
424
+ createCommand(commands_1.ControlFlowCommandNames.if),
425
+ createCommand('command'),
426
+ createCommand(commands_1.ControlFlowCommandNames.else),
427
+ createCommand(commands_1.ControlFlowCommandNames.while),
428
+ createCommand('command'),
429
+ createCommand(commands_1.ControlFlowCommandNames.end),
430
+ createCommand(commands_1.ControlFlowCommandNames.do),
431
+ createCommand('command'),
432
+ createCommand(commands_1.ControlFlowCommandNames.while),
433
+ createCommand('command'),
434
+ createCommand(commands_1.ControlFlowCommandNames.end),
435
+ createCommand(commands_1.ControlFlowCommandNames.repeatIf),
436
+ createCommand(commands_1.ControlFlowCommandNames.end),
437
+ ];
438
+ let tree = (0, playback_tree_1.createPlaybackTree)(input);
439
+ expect(tree.startingCommandNode.command).toEqual(input[0]); // if
440
+ expect(tree.startingCommandNode.right.command).toEqual(input[1]); // if -> command
441
+ expect(tree.startingCommandNode.right.next.command).toEqual(input[12]); // if -> end
442
+ expect(tree.startingCommandNode.left.command).toEqual(input[2]); // if -> while -> else
443
+ expect(tree.startingCommandNode.left.next.right.command).toEqual(input[4]); // while -> command
444
+ expect(tree.startingCommandNode.left.next.left.command).toEqual(input[5]); // while -> end
445
+ expect(tree.startingCommandNode.left.next.left.next.command).toEqual(input[6]); // do
446
+ expect(tree.startingCommandNode.left.next.left.next.next.next.right
447
+ .command).toEqual(input[9]); // do -> while -> command
448
+ expect(tree.startingCommandNode.left.next.left.next.next.next.left
449
+ .command).toEqual(input[10]); // do -> while -> end
450
+ expect(tree.startingCommandNode.left.next.left.next.next.next.left
451
+ .next.right.command).toEqual(input[6]); // repeatIf -> do
452
+ expect(tree.startingCommandNode.left.next.left.next.next.next.left
453
+ .next.left.command).toEqual(input[12]); // repeatIf -> end
454
+ expect(tree.startingCommandNode.left.next.left.next.next.next.left
455
+ .next.left.next).toBeUndefined(); // end
456
+ expect(tree.startingCommandNode.left.next.left.next.next.next.left
457
+ .next.left.right).toBeUndefined(); // end
458
+ expect(tree.startingCommandNode.left.next.left.next.next.next.left
459
+ .next.left.left).toBeUndefined(); // end
460
+ });
461
+ });
462
+ });
463
+ //# sourceMappingURL=playback-tree.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playback-tree.spec.js","sourceRoot":"","sources":["../../../src/__tests__/playback-tree/playback-tree.spec.ts"],"names":[],"mappings":";AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,wDAAwD;AACxD,6DAA6D;AAC7D,oDAAoD;AACpD,6DAA6D;AAC7D,6DAA6D;AAC7D,EAAE;AACF,+CAA+C;AAC/C,EAAE;AACF,6DAA6D;AAC7D,8DAA8D;AAC9D,yDAAyD;AACzD,4DAA4D;AAC5D,0DAA0D;AAC1D,qBAAqB;;AAErB,uDAG4B;AAC5B,2DAAsE;AAEtE,SAAS,aAAa,CAAC,OAAe;IACpC,OAAO;QACL,EAAE,EAAE,GAAG;QACP,OAAO;QACP,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,EAAE;KACV,CAAA;AACH,CAAC;AAED,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;QACvB,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;YACtC,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;gBACvD,IAAI,KAAK,GAAG,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC,CAAA;gBAClE,IAAI,KAAK,GAAG,IAAA,kDAAkC,EAAC,KAAK,CAAC,CAAA;gBACrD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC1C,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;gBACjC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC1C,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;YACnC,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,iBAAiB,EAAE,GAAG,EAAE;gBAC3B,IAAI,KAAK,GAAG,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC,CAAA;gBAClE,IAAI,KAAK,GAAG,IAAA,kDAAkC,EAAC,KAAK,CAAC,CAAA;gBACrD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;YACxC,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,4CAA4C,EAAE,GAAG,EAAE;gBACtD,IAAI,KAAK,GAAG;oBACV,aAAa,CAAC,kCAAuB,CAAC,EAAE,CAAC;oBACzC,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,kCAAuB,CAAC,MAAM,CAAC;oBAC7C,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,kCAAuB,CAAC,IAAI,CAAC;oBAC3C,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;iBAC3C,CAAA;gBACD,IAAI,KAAK,GAAG,IAAA,kDAAkC,EAAC,KAAK,CAAC,CAAA;gBACrD,KAAK;gBACL,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,UAAU;gBACV,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,SAAS;gBACT,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,UAAU;gBACV,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,OAAO;gBACP,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,UAAU;gBACV,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM;gBACN,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;YACvC,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;gBACrB,IAAI,KAAK,GAAG;oBACV,aAAa,CAAC,kCAAuB,CAAC,KAAK,CAAC;oBAC5C,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;iBAC3C,CAAA;gBACD,IAAI,KAAK,GAAG,IAAA,kDAAkC,EAAC,KAAK,CAAC,CAAA;gBACrD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;YACvC,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,mBAAmB,EAAE,GAAG,EAAE;gBAC7B,IAAI,KAAK,GAAG;oBACV,aAAa,CAAC,kCAAuB,CAAC,KAAK,CAAC;oBAC5C,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;iBAC3C,CAAA;gBACD,IAAI,KAAK,GAAG,IAAA,kDAAkC,EAAC,KAAK,CAAC,CAAA;gBACrD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;YACvC,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE;gBACrC,IAAI,KAAK,GAAG;oBACV,aAAa,CAAC,kCAAuB,CAAC,KAAK,CAAC;oBAC5C,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;iBAC3C,CAAA;gBACD,IAAI,KAAK,GAAG,IAAA,kDAAkC,EAAC,KAAK,CAAC,CAAA;gBACrD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;YACvC,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,kBAAkB,EAAE,GAAG,EAAE;gBAC5B,IAAI,KAAK,GAAG;oBACV,aAAa,CAAC,kCAAuB,CAAC,KAAK,CAAC;oBAC5C,aAAa,CAAC,kCAAuB,CAAC,EAAE,CAAC;oBACzC,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;oBAC1C,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC,EAAE,IAAI;iBACjD,CAAA;gBACD,IAAI,KAAK,GAAG,IAAA,kDAAkC,EAAC,KAAK,CAAC,CAAA;gBACrD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;YACvC,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,0BAA0B,EAAE,GAAG,EAAE;gBACpC,IAAI,KAAK,GAAG;oBACV,aAAa,CAAC,kCAAuB,CAAC,KAAK,CAAC;oBAC5C,aAAa,CAAC,kCAAuB,CAAC,EAAE,CAAC;oBACzC,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;oBAC1C,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC,EAAE,IAAI;iBACjD,CAAA;gBACD,IAAI,KAAK,GAAG,IAAA,kDAAkC,EAAC,KAAK,CAAC,CAAA;gBACrD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;YACvC,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,kCAAkC,EAAE,GAAG,EAAE;gBAC5C,IAAI,KAAK,GAAG;oBACV,aAAa,CAAC,kCAAuB,CAAC,EAAE,CAAC;oBACzC,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,kCAAuB,CAAC,KAAK,CAAC;oBAC5C,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;oBAC1C,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;iBAC3C,CAAA;gBACD,IAAI,KAAK,GAAG,IAAA,kDAAkC,EAAC,KAAK,CAAC,CAAA;gBACrD,KAAK;gBACL,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,UAAU;gBACV,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,QAAQ;gBACR,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,UAAU;gBACV,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM;gBACN,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM;gBACN,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;YACvC,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,+CAA+C,EAAE,GAAG,EAAE;gBACzD,IAAI,KAAK,GAAG;oBACV,aAAa,CAAC,kCAAuB,CAAC,EAAE,CAAC;oBACzC,aAAa,CAAC,kCAAuB,CAAC,KAAK,CAAC;oBAC5C,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;oBAC1C,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,kCAAuB,CAAC,IAAI,CAAC;oBAC3C,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;iBAC3C,CAAA;gBACD,IAAI,KAAK,GAAG,IAAA,kDAAkC,EAAC,KAAK,CAAC,CAAA;gBACrD,KAAK;gBACL,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,QAAQ;gBACR,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,UAAU;gBACV,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM;gBACN,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,UAAU;gBACV,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,OAAO;gBACP,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,UAAU;gBACV,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM;gBACN,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;YACvC,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE;gBACvC,IAAI,KAAK,GAAG;oBACV,aAAa,CAAC,kCAAuB,CAAC,EAAE,CAAC;oBACzC,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,kCAAuB,CAAC,QAAQ,CAAC;oBAC/C,aAAa,CAAC,SAAS,CAAC;iBACzB,CAAA;gBACD,IAAI,KAAK,GAAG,IAAA,kDAAkC,EAAC,KAAK,CAAC,CAAA;gBACrD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;YACzC,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,uCAAuC,EAAE,GAAG,EAAE;gBACjD,IAAI,KAAK,GAAG;oBACV,aAAa,CAAC,kCAAuB,CAAC,EAAE,CAAC;oBACzC,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,kCAAuB,CAAC,KAAK,CAAC;oBAC5C,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;oBAC1C,aAAa,CAAC,kCAAuB,CAAC,QAAQ,CAAC;iBAChD,CAAA;gBACD,IAAI,KAAK,GAAG,IAAA,kDAAkC,EAAC,KAAK,CAAC,CAAA;gBACrD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;YACvC,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,mBAAmB,EAAE,GAAG,EAAE;gBAC7B,IAAI,KAAK,GAAG;oBACV,aAAa,CAAC,kCAAuB,CAAC,KAAK,CAAC;oBAC5C,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;iBAC3C,CAAA;gBACD,IAAI,KAAK,GAAG,IAAA,kDAAkC,EAAC,KAAK,CAAC,CAAA;gBACrD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;YACvC,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,qBAAqB,EAAE,GAAG,EAAE;gBAC/B,IAAI,KAAK,GAAG;oBACV,aAAa,CAAC,kCAAuB,CAAC,OAAO,CAAC;oBAC9C,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;iBAC3C,CAAA;gBACD,IAAI,KAAK,GAAG,IAAA,kDAAkC,EAAC,KAAK,CAAC,CAAA;gBACrD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;YACvC,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,qCAAqC,EAAE,GAAG,EAAE;gBAC/C,IAAI,KAAK,GAAG;oBACV,aAAa,CAAC,kCAAuB,CAAC,EAAE,CAAC;oBACzC,aAAa,CAAC,kCAAuB,CAAC,EAAE,CAAC;oBACzC,aAAa,CAAC,kCAAuB,CAAC,EAAE,CAAC;oBACzC,aAAa,CAAC,kCAAuB,CAAC,EAAE,CAAC;oBACzC,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;oBAC1C,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;oBAC1C,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;oBAC1C,aAAa,CAAC,SAAS,CAAC;oBACxB,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;iBAC3C,CAAA;gBACD,IAAI,KAAK,GAAG,IAAA,kDAAkC,EAAC,KAAK,CAAC,CAAA;gBACrD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACxC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAA;gBACtC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;YACvC,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACF,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;QACzB,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;YAC3E,IAAI,KAAK,GAAG;gBACV,aAAa,CAAC,kCAAuB,CAAC,EAAE,CAAC;gBACzC,aAAa,CAAC,SAAS,CAAC;gBACxB,aAAa,CAAC,kCAAuB,CAAC,QAAQ,CAAC;aAChD,CAAA;YACD,MAAM,IAAI,GAAG,IAAA,kCAAkB,EAAC,KAAK,CAAC,CAAA;YACtC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,UAAU,EAAE,CAAA;QAC/C,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;YAC1C,IAAI,KAAK,GAAG;gBACV,aAAa,CAAC,kCAAuB,CAAC,EAAE,CAAC;gBACzC,aAAa,CAAC,SAAS,CAAC;gBACxB,aAAa,CAAC,kCAAuB,CAAC,QAAQ,CAAC;aAChD,CAAA;YACD,IAAI,IAAI,GAAG,IAAA,kCAAkB,EAAC,KAAK,CAAC,CAAA;YACpC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;YAC1D,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;YAChE,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAK,CAAC,IAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;YACtE,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAK,CAAC,IAAK,CAAC,KAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CACjE,KAAK,CAAC,CAAC,CAAC,CACT,CAAA;YACD,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAK,CAAC,IAAK,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAA;QACnE,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;YACnD,IAAI,KAAK,GAAG;gBACV,aAAa,CAAC,kCAAuB,CAAC,EAAE,CAAC;gBACzC,aAAa,CAAC,SAAS,CAAC;gBACxB,aAAa,CAAC,kCAAuB,CAAC,IAAI,CAAC;gBAC3C,aAAa,CAAC,kCAAuB,CAAC,KAAK,CAAC;gBAC5C,aAAa,CAAC,SAAS,CAAC;gBACxB,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;gBAC1C,aAAa,CAAC,kCAAuB,CAAC,EAAE,CAAC;gBACzC,aAAa,CAAC,SAAS,CAAC;gBACxB,aAAa,CAAC,kCAAuB,CAAC,KAAK,CAAC;gBAC5C,aAAa,CAAC,SAAS,CAAC;gBACxB,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;gBAC1C,aAAa,CAAC,kCAAuB,CAAC,QAAQ,CAAC;gBAC/C,aAAa,CAAC,kCAAuB,CAAC,GAAG,CAAC;aAC3C,CAAA;YACD,IAAI,IAAI,GAAG,IAAA,kCAAkB,EAAC,KAAK,CAAC,CAAA;YACpC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA,CAAC,sDAAsD;YACjH,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA,CAAC,2DAA2D;YAC7H,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAM,CAAC,IAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA,CAAC,iDAAiD;YAC1H,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA,CAAC,kEAAkE;YACnI,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAK,CAAC,IAAK,CAAC,KAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CACjE,KAAK,CAAC,CAAC,CAAC,CACT,CAAA,CAAC,oDAAoD;YACtD,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAChE,KAAK,CAAC,CAAC,CAAC,CACT,CAAA,CAAC,iDAAiD;YACnD,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CACtE,KAAK,CAAC,CAAC,CAAC,CACT,CAAA,CAAC,kCAAkC;YACpC,MAAM,CACJ,IAAI,CAAC,mBAAoB,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,KAAM;iBACjE,OAAO,CACX,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA,CAAC,sCAAsC;YAC1D,MAAM,CACJ,IAAI,CAAC,mBAAoB,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK;iBAChE,OAAO,CACX,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA,CAAC,kCAAkC;YACvD,MAAM,CACJ,IAAI,CAAC,mBAAoB,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK;iBAChE,IAAK,CAAC,KAAM,CAAC,OAAO,CACxB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA,CAAC,oBAAoB;YACxC,MAAM,CACJ,IAAI,CAAC,mBAAoB,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK;iBAChE,IAAK,CAAC,IAAK,CAAC,OAAO,CACvB,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA,CAAC,qBAAqB;YAC1C,MAAM,CACJ,IAAI,CAAC,mBAAoB,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK;iBAChE,IAAK,CAAC,IAAK,CAAC,IAAI,CACpB,CAAC,aAAa,EAAE,CAAA,CAAC,eAAe;YACjC,MAAM,CACJ,IAAI,CAAC,mBAAoB,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK;iBAChE,IAAK,CAAC,IAAK,CAAC,KAAK,CACrB,CAAC,aAAa,EAAE,CAAA,CAAC,cAAc;YAChC,MAAM,CACJ,IAAI,CAAC,mBAAoB,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK,CAAC,IAAK;iBAChE,IAAK,CAAC,IAAK,CAAC,IAAI,CACpB,CAAC,aAAa,EAAE,CAAA,CAAC,eAAe;QACnC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=syntax-validation.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"syntax-validation.spec.d.ts","sourceRoot":"","sources":["../../../src/__tests__/playback-tree/syntax-validation.spec.ts"],"names":[],"mappings":""}