@pga-ai/core 0.4.0 → 0.8.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 (183) hide show
  1. package/README.md +7 -7
  2. package/dist/PGA.d.ts +100 -1
  3. package/dist/PGA.d.ts.map +1 -1
  4. package/dist/PGA.js +1015 -25
  5. package/dist/PGA.js.map +1 -1
  6. package/dist/advanced-ai/AgentVitals.d.ts +23 -0
  7. package/dist/advanced-ai/AgentVitals.d.ts.map +1 -0
  8. package/dist/advanced-ai/AgentVitals.js +13 -0
  9. package/dist/advanced-ai/AgentVitals.js.map +1 -0
  10. package/dist/advanced-ai/CalibratedAutonomy.d.ts +37 -0
  11. package/dist/advanced-ai/CalibratedAutonomy.d.ts.map +1 -0
  12. package/dist/advanced-ai/CalibratedAutonomy.js +151 -0
  13. package/dist/advanced-ai/CalibratedAutonomy.js.map +1 -0
  14. package/dist/advanced-ai/EmotionalModel.d.ts +27 -0
  15. package/dist/advanced-ai/EmotionalModel.d.ts.map +1 -0
  16. package/dist/advanced-ai/EmotionalModel.js +206 -0
  17. package/dist/advanced-ai/EmotionalModel.js.map +1 -0
  18. package/dist/advanced-ai/EnhancedSelfModel.d.ts +53 -0
  19. package/dist/advanced-ai/EnhancedSelfModel.d.ts.map +1 -0
  20. package/dist/advanced-ai/EnhancedSelfModel.js +189 -0
  21. package/dist/advanced-ai/EnhancedSelfModel.js.map +1 -0
  22. package/dist/advanced-ai/SelfModel.d.ts +29 -0
  23. package/dist/advanced-ai/SelfModel.d.ts.map +1 -0
  24. package/dist/advanced-ai/SelfModel.js +91 -0
  25. package/dist/advanced-ai/SelfModel.js.map +1 -0
  26. package/dist/advanced-ai/StrategicAutonomy.d.ts +41 -0
  27. package/dist/advanced-ai/StrategicAutonomy.d.ts.map +1 -0
  28. package/dist/advanced-ai/StrategicAutonomy.js +148 -0
  29. package/dist/advanced-ai/StrategicAutonomy.js.map +1 -0
  30. package/dist/core/GenesisBootstrap.d.ts +18 -0
  31. package/dist/core/GenesisBootstrap.d.ts.map +1 -0
  32. package/dist/core/GenesisBootstrap.js +95 -0
  33. package/dist/core/GenesisBootstrap.js.map +1 -0
  34. package/dist/core/GenomeManager.js +1 -1
  35. package/dist/core/PromptAssembler.d.ts +26 -0
  36. package/dist/core/PromptAssembler.d.ts.map +1 -1
  37. package/dist/core/PromptAssembler.js +133 -8
  38. package/dist/core/PromptAssembler.js.map +1 -1
  39. package/dist/evaluation/BenchmarkSuites.d.ts +2 -0
  40. package/dist/evaluation/BenchmarkSuites.d.ts.map +1 -1
  41. package/dist/evaluation/BenchmarkSuites.js +9 -6
  42. package/dist/evaluation/BenchmarkSuites.js.map +1 -1
  43. package/dist/evaluation/Evaluator.d.ts.map +1 -1
  44. package/dist/evaluation/Evaluator.js +8 -7
  45. package/dist/evaluation/Evaluator.js.map +1 -1
  46. package/dist/evaluation/ProofOfValueRunner.d.ts +41 -0
  47. package/dist/evaluation/ProofOfValueRunner.d.ts.map +1 -0
  48. package/dist/evaluation/ProofOfValueRunner.js +177 -0
  49. package/dist/evaluation/ProofOfValueRunner.js.map +1 -0
  50. package/dist/evaluation/SandboxSuites.js +4 -4
  51. package/dist/evaluation/SandboxSuites.js.map +1 -1
  52. package/dist/evaluation/fixtures/proof-of-value-v1.json +178 -0
  53. package/dist/evolution/MutationOperator.d.ts +26 -0
  54. package/dist/evolution/MutationOperator.d.ts.map +1 -1
  55. package/dist/evolution/MutationOperator.js +200 -9
  56. package/dist/evolution/MutationOperator.js.map +1 -1
  57. package/dist/evolution/PurposeSurvival.d.ts +68 -0
  58. package/dist/evolution/PurposeSurvival.d.ts.map +1 -0
  59. package/dist/evolution/PurposeSurvival.js +199 -0
  60. package/dist/evolution/PurposeSurvival.js.map +1 -0
  61. package/dist/evolution/boost/EvolutionBoostEngine.d.ts +2 -1
  62. package/dist/evolution/boost/EvolutionBoostEngine.d.ts.map +1 -1
  63. package/dist/evolution/boost/EvolutionBoostEngine.js +3 -3
  64. package/dist/evolution/boost/EvolutionBoostEngine.js.map +1 -1
  65. package/dist/evolution/boost/GeneticRecombinator.d.ts.map +1 -1
  66. package/dist/evolution/boost/GeneticRecombinator.js +16 -5
  67. package/dist/evolution/boost/GeneticRecombinator.js.map +1 -1
  68. package/dist/evolution/boost/ParetoOptimizer.d.ts +1 -1
  69. package/dist/evolution/boost/ParetoOptimizer.d.ts.map +1 -1
  70. package/dist/evolution/boost/ParetoOptimizer.js.map +1 -1
  71. package/dist/evolution/boost/operators/BreakthroughOperator.d.ts +4 -7
  72. package/dist/evolution/boost/operators/BreakthroughOperator.d.ts.map +1 -1
  73. package/dist/evolution/boost/operators/BreakthroughOperator.js +172 -160
  74. package/dist/evolution/boost/operators/BreakthroughOperator.js.map +1 -1
  75. package/dist/evolution/boost/operators/CrossoverMutationOperator.d.ts +10 -15
  76. package/dist/evolution/boost/operators/CrossoverMutationOperator.d.ts.map +1 -1
  77. package/dist/evolution/boost/operators/CrossoverMutationOperator.js +167 -120
  78. package/dist/evolution/boost/operators/CrossoverMutationOperator.js.map +1 -1
  79. package/dist/evolution/boost/operators/PatternExtractionOperator.d.ts +7 -10
  80. package/dist/evolution/boost/operators/PatternExtractionOperator.d.ts.map +1 -1
  81. package/dist/evolution/boost/operators/PatternExtractionOperator.js +167 -164
  82. package/dist/evolution/boost/operators/PatternExtractionOperator.js.map +1 -1
  83. package/dist/evolution/boost/operators/SemanticRestructuringOperator.d.ts +2 -3
  84. package/dist/evolution/boost/operators/SemanticRestructuringOperator.d.ts.map +1 -1
  85. package/dist/evolution/boost/operators/SemanticRestructuringOperator.js +136 -54
  86. package/dist/evolution/boost/operators/SemanticRestructuringOperator.js.map +1 -1
  87. package/dist/evolution/boost/utils/llmHelper.d.ts +10 -0
  88. package/dist/evolution/boost/utils/llmHelper.d.ts.map +1 -0
  89. package/dist/evolution/boost/utils/llmHelper.js +13 -0
  90. package/dist/evolution/boost/utils/llmHelper.js.map +1 -0
  91. package/dist/firewall/ContentFirewall.d.ts +30 -0
  92. package/dist/firewall/ContentFirewall.d.ts.map +1 -0
  93. package/dist/firewall/ContentFirewall.js +251 -0
  94. package/dist/firewall/ContentFirewall.js.map +1 -0
  95. package/dist/firewall/DefaultPatterns.d.ts +8 -0
  96. package/dist/firewall/DefaultPatterns.d.ts.map +1 -0
  97. package/dist/firewall/DefaultPatterns.js +623 -0
  98. package/dist/firewall/DefaultPatterns.js.map +1 -0
  99. package/dist/firewall/index.d.ts +3 -0
  100. package/dist/firewall/index.d.ts.map +1 -0
  101. package/dist/firewall/index.js +3 -0
  102. package/dist/firewall/index.js.map +1 -0
  103. package/dist/gene-bank/CognitiveGene.d.ts +106 -106
  104. package/dist/gene-bank/GeneAdopter.d.ts +1 -0
  105. package/dist/gene-bank/GeneAdopter.d.ts.map +1 -1
  106. package/dist/gene-bank/GeneAdopter.js +23 -4
  107. package/dist/gene-bank/GeneAdopter.js.map +1 -1
  108. package/dist/gene-bank/GeneBank.d.ts +6 -6
  109. package/dist/gene-bank/GeneExtractor.d.ts +4 -4
  110. package/dist/gene-bank/MarketplaceClient.d.ts +26 -0
  111. package/dist/gene-bank/MarketplaceClient.d.ts.map +1 -0
  112. package/dist/gene-bank/MarketplaceClient.js +147 -0
  113. package/dist/gene-bank/MarketplaceClient.js.map +1 -0
  114. package/dist/gene-bank/SandboxTester.d.ts +2 -2
  115. package/dist/gene-bank/adapters/PostgresGeneStorage.js +1 -1
  116. package/dist/gene-bank/adapters/PostgresGeneStorage.js.map +1 -1
  117. package/dist/gene-bank/index.d.ts +1 -0
  118. package/dist/gene-bank/index.d.ts.map +1 -1
  119. package/dist/gene-bank/index.js +1 -0
  120. package/dist/gene-bank/index.js.map +1 -1
  121. package/dist/index.d.ts +54 -8
  122. package/dist/index.d.ts.map +1 -1
  123. package/dist/index.js +33 -5
  124. package/dist/index.js.map +1 -1
  125. package/dist/interfaces/StorageAdapter.d.ts +4 -1
  126. package/dist/interfaces/StorageAdapter.d.ts.map +1 -1
  127. package/dist/memory/AnalyticMemoryEngine.d.ts +83 -0
  128. package/dist/memory/AnalyticMemoryEngine.d.ts.map +1 -0
  129. package/dist/memory/AnalyticMemoryEngine.js +372 -0
  130. package/dist/memory/AnalyticMemoryEngine.js.map +1 -0
  131. package/dist/memory/LayeredMemory.d.ts +2 -0
  132. package/dist/memory/LayeredMemory.d.ts.map +1 -1
  133. package/dist/memory/LayeredMemory.js +2 -0
  134. package/dist/memory/LayeredMemory.js.map +1 -1
  135. package/dist/memory/PatternMemory.d.ts +38 -0
  136. package/dist/memory/PatternMemory.d.ts.map +1 -0
  137. package/dist/memory/PatternMemory.js +161 -0
  138. package/dist/memory/PatternMemory.js.map +1 -0
  139. package/dist/memory/PersonalNarrative.d.ts +51 -0
  140. package/dist/memory/PersonalNarrative.d.ts.map +1 -0
  141. package/dist/memory/PersonalNarrative.js +172 -0
  142. package/dist/memory/PersonalNarrative.js.map +1 -0
  143. package/dist/monitoring/AlertWebhooks.d.ts.map +1 -1
  144. package/dist/monitoring/AlertWebhooks.js +8 -5
  145. package/dist/monitoring/AlertWebhooks.js.map +1 -1
  146. package/dist/monitoring/MonitoringDashboard.js +1 -1
  147. package/dist/reasoning/Metacognition.d.ts +47 -0
  148. package/dist/reasoning/Metacognition.d.ts.map +1 -0
  149. package/dist/reasoning/Metacognition.js +274 -0
  150. package/dist/reasoning/Metacognition.js.map +1 -0
  151. package/dist/types/GenomeV2.d.ts +95 -0
  152. package/dist/types/GenomeV2.d.ts.map +1 -1
  153. package/dist/types/index.d.ts +159 -0
  154. package/dist/types/index.d.ts.map +1 -1
  155. package/dist/utils/tokens.d.ts +4 -0
  156. package/dist/utils/tokens.d.ts.map +1 -0
  157. package/dist/utils/tokens.js +16 -0
  158. package/dist/utils/tokens.js.map +1 -0
  159. package/dist/wrap/FunctionLLMAdapter.d.ts +9 -0
  160. package/dist/wrap/FunctionLLMAdapter.d.ts.map +1 -0
  161. package/dist/wrap/FunctionLLMAdapter.js +26 -0
  162. package/dist/wrap/FunctionLLMAdapter.js.map +1 -0
  163. package/dist/wrap/GenomeBuilder.d.ts +13 -0
  164. package/dist/wrap/GenomeBuilder.d.ts.map +1 -0
  165. package/dist/wrap/GenomeBuilder.js +222 -0
  166. package/dist/wrap/GenomeBuilder.js.map +1 -0
  167. package/dist/wrap/InMemoryStorageAdapter.d.ts +61 -0
  168. package/dist/wrap/InMemoryStorageAdapter.d.ts.map +1 -0
  169. package/dist/wrap/InMemoryStorageAdapter.js +153 -0
  170. package/dist/wrap/InMemoryStorageAdapter.js.map +1 -0
  171. package/dist/wrap/WrapOptions.d.ts +45 -0
  172. package/dist/wrap/WrapOptions.d.ts.map +1 -0
  173. package/dist/wrap/WrapOptions.js +2 -0
  174. package/dist/wrap/WrapOptions.js.map +1 -0
  175. package/dist/wrap/WrappedAgent.d.ts +77 -0
  176. package/dist/wrap/WrappedAgent.d.ts.map +1 -0
  177. package/dist/wrap/WrappedAgent.js +142 -0
  178. package/dist/wrap/WrappedAgent.js.map +1 -0
  179. package/dist/wrap/index.d.ts +6 -0
  180. package/dist/wrap/index.d.ts.map +1 -0
  181. package/dist/wrap/index.js +5 -0
  182. package/dist/wrap/index.js.map +1 -0
  183. package/package.json +13 -10
package/dist/PGA.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"PGA.js","sourceRoot":"","sources":["../src/PGA.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PGA.js","sourceRoot":"","sources":["../src/PGA.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,WAAW,EAA0B,MAAM,8BAA8B,CAAC;AACnF,OAAO,EAAE,gBAAgB,EAA+B,MAAM,kCAAkC,CAAC;AACjG,OAAO,EAAE,mBAAmB,EAAwB,MAAM,qCAAqC,CAAC;AAChG,OAAO,EAAE,SAAS,EAAkB,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAwB,MAAM,gCAAgC,CAAC;AACvF,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAwB,MAAM,iCAAiC,CAAC;AACjH,OAAO,EAAE,6BAA6B,EAAE,MAAM,8DAA8D,CAAC;AAC7G,OAAO,EAAE,yBAAyB,EAAE,MAAM,0DAA0D,CAAC;AACrG,OAAO,EAAE,yBAAyB,EAAE,MAAM,0DAA0D,CAAC;AACrG,OAAO,EAAE,oBAAoB,EAAE,MAAM,qDAAqD,CAAC;AAC3F,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAwB,MAAM,kCAAkC,CAAC;AAE3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAuB,MAAM,4BAA4B,CAAC;AAC5E,OAAO,EAAE,aAAa,EAA0B,MAAM,2BAA2B,CAAC;AAClF,OAAO,EAAE,aAAa,EAAuD,MAAM,8BAA8B,CAAC;AAClH,OAAO,EAAE,cAAc,EAAuB,MAAM,iCAAiC,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAyB,MAAM,qCAAqC,CAAC;AAChG,OAAO,EAAE,iBAAiB,EAAiD,MAAM,+BAA+B,CAAC;AACjH,OAAO,EAAE,oBAAoB,EAA0B,MAAM,kCAAkC,CAAC;AAGhG,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAE1E,OAAO,EAAE,iBAAiB,EAAyE,MAAM,oCAAoC,CAAC;AAC9I,OAAO,EAAE,eAAe,EAAkE,MAAM,gCAAgC,CAAC;AACjI,OAAO,EAAE,iBAAiB,EAA0B,MAAM,oCAAoC,CAAC;AAC/F,OAAO,EAAE,kBAAkB,EAAoB,MAAM,8BAA8B,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AA8DhE,MAAM,OAAO,GAAG;IAMQ;IALZ,aAAa,CAAgB;IAC7B,GAAG,CAAa;IAChB,gBAAgB,CAAmB;IACnC,SAAS,CAAuB;IAExC,YAAoB,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;QAEpC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CACX,qCAAqC;kBACnC,wEAAwE;kBACxE,yCAAyC;kBACzC,uEAAuE;kBACvE,2BAA2B;kBAC3B,0EAA0E;kBAC1E,oCAAoC;kBACpC,WAAW;kBACX,uBAAuB;kBACvB,+CAA+C;kBAC/C,6CAA6C;kBAC7C,wCAAwC,CAC7C,CAAC;QACN,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CACX,yCAAyC;kBACvC,0EAA0E;kBAC1E,uDAAuD;kBACvD,2BAA2B;kBAC3B,4BAA4B;kBAC5B,uCAAuC;kBACvC,WAAW;kBACX,wDAAwD,CAC7D,CAAC;QACN,CAAC;QAED,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC;QACzB,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAG1D,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,SAAS,CAAC,UAAU,IAAI;YACjE,OAAO,EAAE,IAAI;YACb,kBAAkB,EAAE,IAAI;YACxB,eAAe,EAAE,IAAI;SACxB,CAAC,CAAC;QAGH,IAAI,SAAS,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC;YAC/B,IAAI,CAAC,SAAS,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,gBAAgB,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QACzF,CAAC;IACL,CAAC;IAKD,KAAK,CAAC,UAAU;QACZ,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QAG1C,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC;YACtD,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QAC3B,CAAC;QAGD,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC;YAC3B,KAAK,EAAE,MAAM;YACb,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,YAAY;YACvB,OAAO,EAAE,sCAAsC;SAClD,CAAC,CAAC;IACP,CAAC;IAKD,UAAU;QACN,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;IAKD,YAAY;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAKD,aAAa;QACT,OAAO,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC;IACjD,CAAC;IAKD,SAAS;QACL,OAAO,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC;IAC7C,CAAC;IAKD,eAAe;QACX,OAAO,IAAI,CAAC,gBAAgB,CAAC,eAAe,EAAE,CAAC;IACnD,CAAC;IAKD,QAAQ;QACJ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC;YAC3B,KAAK,EAAE,MAAM;YACb,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,UAAU;YACrB,OAAO,EAAE,sBAAsB;SAClC,CAAC,CAAC;IACP,CAAC;IAKD,KAAK,CAAC,YAAY,CAAC,OAGlB;QAEG,MAAM,iBAAiB,GAAwB;YAC3C,eAAe,EAAE,IAAI;YACrB,eAAe,EAAE,IAAI;YACrB,mBAAmB,EAAE,IAAI;YACzB,cAAc,EAAE,IAAI;YACpB,kBAAkB,EAAE,EAAE;YACtB,eAAe,EAAE,IAAI;YACrB,QAAQ,EAAE,KAAK;SAClB,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;YACjD,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,MAAM,EAAE;gBACJ,aAAa,EAAE,IAAI;gBACnB,YAAY,EAAE,UAAU;gBACxB,mBAAmB,EAAE,iBAAiB;gBACtC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM;gBACxB,GAAG,OAAO,CAAC,MAAM;aACpB;SACJ,CAAC,CAAC;QAGH,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAgB,EAAE,CAAC;YACxE,MAAM,SAAS,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAChE,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,SAAS,CACpC,MAAM,EACN,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,mBAAmB,IAAI,GAAG,CACtD,CAAC;YACF,IAAI,MAAM,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gBAChD,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC;oBAC3B,KAAK,EAAE,MAAM;oBACb,SAAS,EAAE,KAAK;oBAChB,SAAS,EAAE,mBAAmB;oBAC9B,OAAO,EAAE,gBAAgB,MAAM,CAAC,aAAa,uBAAuB;oBACpE,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE;iBAC1C,CAAC,CAAC;YACP,CAAC;QACL,CAAC;QAED,OAAO,IAAI,cAAc,CACrB,MAAM,EACN,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,SAAS,CAAC,OAAO,EACtB,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,SAAS,CAAC,WAAW,EAC1B,IAAI,CAAC,SAAS,CAAC,GAAG,EAClB,IAAI,CAAC,SAAS,CAAC,SAAS,EACxB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAC1B,CAAC;IACN,CAAC;IAKD,KAAK,CAAC,UAAU,CAAC,QAAgB;QAC7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QAEzB,OAAO,IAAI,cAAc,CACrB,MAAM,EACN,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,SAAS,CAAC,OAAO,EACtB,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,SAAS,CAAC,WAAW,EAC1B,IAAI,CAAC,SAAS,CAAC,GAAG,EAClB,IAAI,CAAC,SAAS,CAAC,SAAS,EACxB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAC1B,CAAC;IACN,CAAC;IAKD,KAAK,CAAC,WAAW;QACb,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;IAC5C,CAAC;IAKD,KAAK,CAAC,YAAY,CAAC,QAAgB;QAC/B,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;IA2BD,MAAM,CAAC,KAAK,CAAC,IAAI,CACb,MAAyD,EACzD,OAA0C;QAE1C,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;YAC7E,CAAC;YACD,OAAO,YAAY,CAAC,YAAY,CAAC,MAAM,EAAE,OAA8B,CAAC,CAAC;QAC7E,CAAC;QAED,OAAO,YAAY,CAAC,WAAW,CAAC,MAAoB,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;CACJ;AAOD,MAAM,OAAO,cAAc;IA6BX;IACA;IACA;IAKA;IAnCJ,SAAS,CAAkB;IAC3B,UAAU,CAAa;IACvB,iBAAiB,CAAoB;IACrC,aAAa,CAAgB;IAC7B,oBAAoB,CAAuB;IAC3C,iBAAiB,CAA6B;IAC9C,WAAW,CAAc;IACzB,OAAO,CAAmB;IAC1B,SAAS,CAAa;IACtB,eAAe,CAAmB;IAClC,cAAc,CAAiB;IAC/B,iBAAiB,CAAoB;IACrC,cAAc,CAAiB;IAC/B,aAAa,CAAgB;IAC7B,SAAS,CAAa;IACtB,aAAa,CAAiB;IAC9B,aAAa,CAAiB;IAC9B,cAAc,CAAkB;IAChC,kBAAkB,CAAsB;IACxC,iBAAiB,CAAqB;IACtC,cAAc,CAAwB;IACtC,aAAa,CAA0B;IACvC,iBAAiB,CAAqB;IACtC,eAAe,CAAmB;IAClC,iBAAiB,CAAqB;IACtC,gBAAgB,GAAW,CAAC,CAAC;IAErC,YACY,MAAc,EACd,GAAe,EACf,OAAuB,EAC/B,OAAyB,EACzB,iBAAqC,EACrC,SAAqB,EACrB,eAA0C,EAClC,QAAmB;QAPnB,WAAM,GAAN,MAAM,CAAQ;QACd,QAAG,GAAH,GAAG,CAAY;QACf,YAAO,GAAP,OAAO,CAAgB;QAKvB,aAAQ,GAAR,QAAQ,CAAW;QAE3B,IAAI,CAAC,SAAS,GAAG,IAAI,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACtD,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,EAAE,CAAC;QAGjD,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAClC,OAAO,EACP,GAAG,EACH,MAAM,CAAC,MAAM,CAAC,aAAa,CAC9B,CAAC;QAEF,IAAI,CAAC,oBAAoB,GAAG,IAAI,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAC9D,IAAI,CAAC,iBAAiB,GAAG,IAAI,0BAA0B,CACnD,OAAO,EACP,MAAM,CAAC,MAAM,CAAC,mBAAmB,CACpC,CAAC;QACF,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;QAC/D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAGvB,IAAI,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC;YAC1C,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QACnD,CAAC;QAGD,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC;YACnC,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;QACrE,CAAC;QAGD,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1D,IAAI,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,EAAE,CAAC;QACjD,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,IAAI,uBAAuB,CAAC,OAAO,EAAE;YACtD,qBAAqB,EAAE,EAAE;YACzB,aAAa,EAAE,CAAC;SACnB,CAAC,CAAC;QAEH,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC;QACxE,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,6BAA6B,CAAC,GAAG,CAAC,CAAC,CAAC;QAC7E,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,yBAAyB,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QACxF,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAAC;QACzE,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC;QACpE,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;QAGzC,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,eAAe,EAAE,CAAC;YAC5C,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YAC3D,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAChD,CAAC;QAGD,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,mBAAmB,EAAE,CAAC;YAChD,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;YACnF,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACxD,CAAC;QAGD,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,mBAAmB,EAAE,CAAC;YAChD,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAClC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,IAAI,CACzC,CAAC;YACF,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACxD,CAAC;QAGD,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,oBAAoB,EAAE,CAAC;YACjD,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;YAC3C,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC1D,CAAC;QAGD,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,wBAAwB,EAAE,CAAC;YACrD,IAAI,CAAC,kBAAkB,GAAG,IAAI,kBAAkB,EAAE,CAAC;YACnD,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAClE,CAAC;QAGD,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,uBAAuB,EAAE,CAAC;YACpD,IAAI,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,EAAE,CAAC;YACjD,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAChE,CAAC;QAGD,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,oBAAoB,EAAE,CAAC;YACjD,IAAI,CAAC,cAAc,GAAG,IAAI,oBAAoB,EAAE,CAAC;YACjD,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC1D,CAAC;QAGD,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,YAAY;eACpD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO;eAChC,cAAc,CAAC;QAEtB,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,uBAAuB,EAAE,CAAC;YACpD,IAAI,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;YACzF,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACxD,CAAC;QAGD,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,qBAAqB,EAAE,CAAC;YAClD,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,CACtC,YAAY,EACZ,IAAI,CAAC,aAAa,EAClB,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,UAAU,EAAE;mBACnC,EAAE,KAAK,EAAE,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG;oBACtD,gBAAgB,EAAE,GAAG,EAAE,mBAAmB,EAAE,GAAG,EAAE,KAAK,EAAE,QAAiB,EAAE,CACvF,CAAC;QACN,CAAC;QAGD,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,uBAAuB,EAAE,CAAC;YACpD,IAAI,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,CAC1C,YAAY,EACZ,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,UAAU,EAAE,IAAI,IAAI,EAClD,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,OAAO,EAAE,IAAI,QAAQ,CACpD,CAAC;YACF,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACjE,CAAC;QAGD,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,KAAK,KAAK,EAAE,CAAC;YAC5C,MAAM,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;YACvC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QACzC,CAAC;IACL,CAAC;IAKD,IAAI,EAAE;QACF,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;IAC1B,CAAC;IAKD,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IAC5B,CAAC;IAQD,iBAAiB,CAAC,QAAuD,UAAU;QAC/E,MAAM,QAAQ,GAAG;YACb,KAAK,EAAE;;;;;;;8BAOW;YAElB,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;iDAyB2B;YAErC,SAAS,EAAE;;;;;;;;;;;;;;2CAcoB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,IAAI,GAAG;qBAC9D,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;mBAC3D,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE;;;;;;;;;;;;;;;8CAelB;YAElC,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;yCAqBqB;SAChC,CAAC;QAEF,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAKD,KAAK,CAAC,cAAc,CAAC,OAAyB,EAAE,cAAuB;QACnE,OAAO,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IAClE,CAAC;IAKD,KAAK,CAAC,IAAI,CAAC,WAAmB,EAAE,OAAyB;QACrD,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CACX,iDAAiD;kBAC/C,oDAAoD,CACzD,CAAC;QACN,CAAC;QAED,MAAM,SAAS,GAAG,QAAQ,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAClF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,KAAyB,CAAC;QAE9B,IAAI,CAAC;YAED,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;YAG7D,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACjB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;gBACrE,MAAM,GAAG,UAAU,CAAC,eAAe,CAAC;YACxC,CAAC;YAGD,IAAI,cAAkC,CAAC;YACvC,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,oBAAoB,EAAE,CAAC;YACjE,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE,CAAC;gBAClC,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACvD,IAAI,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;wBAEhE,cAAc,GAAG,MAAM,CAAC,EAAE,CAAC;wBAC3B,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;oBACrD,CAAC;gBACL,CAAC;YACL,CAAC;YAGD,IAAI,QAA6B,CAAC;YAClC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACvB,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CACrD,WAAW,EACX,MAAM,EACN,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,eAAe,CAChD,CAAC;gBACF,QAAQ,GAAG,EAAE,OAAO,EAAE,eAAe,CAAC,MAAM,EAAE,CAAC;YACnD,CAAC;iBAAM,CAAC;gBAEJ,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAC1B;oBACI,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE;oBACnC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE;iBACzC,CACJ,CAAC;YACN,CAAC;YAGD,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YACxE,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAG5D,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;gBACvB,SAAS;gBACT,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBAChC,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,YAAY;gBACnB,WAAW;gBACX,YAAY;aACf,CAAC,CAAC;YAGH,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;gBAClB,KAAK,EAAE,MAAM;gBACb,SAAS,EAAE,QAAQ;gBACnB,SAAS,EAAE,MAAM;gBACjB,OAAO,EAAE,6BAA6B;gBACtC,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;gBACxB,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBAChC,QAAQ,EAAE;oBACN,WAAW;oBACX,YAAY;iBACf;aACJ,CAAC,CAAC;YAGH,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAGpE,IAAI,cAAc,EAAE,CAAC;gBACjB,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,cAAc,EAAE,QAAQ,EAAE;oBACvD,OAAO,EAAE,IAAI;oBACb,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;oBACjC,OAAO,EAAE,OAAO;iBACnB,CAAC,CAAC;YACP,CAAC;iBAAM,CAAC;gBAEJ,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE,CAAC;oBAClC,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;wBACrC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE;4BAClD,OAAO,EAAE,IAAI;4BACb,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;4BACjC,OAAO,EAAE,OAAO;yBACnB,CAAC,CAAC;oBACP,CAAC;gBACL,CAAC;YACL,CAAC;YAGD,MAAM,eAAe,GAAoB;gBACrC,OAAO,EAAE,IAAI;gBACb,OAAO;gBACP,WAAW;gBACX,YAAY;gBACZ,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBAC/B,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,SAAS;gBAClC,kBAAkB,EAAE,KAAK;gBACzB,SAAS,EAAE,IAAI,IAAI,EAAE;aACxB,CAAC;YACF,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;YAC/E,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;YAGhD,IAAI,IAAI,CAAC,iBAAiB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBAC7C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,EAAE,CAAC;oBAChF,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBACpF,CAAC;YACL,CAAC;YAGD,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACvB,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,CAAC;YAC3C,CAAC;YAGD,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC;YACjD,IAAI,UAAU,EAAE,mBAAmB,IAAI,IAAI,CAAC,gBAAgB,GAAG,CAAC,UAAU,CAAC,YAAY,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnG,IAAI,CAAC,iBAAiB,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CACjC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;oBAClB,KAAK,EAAE,SAAS;oBAChB,SAAS,EAAE,QAAQ;oBACnB,SAAS,EAAE,aAAa;oBACxB,OAAO,EAAE,0BAA0B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;oBACrF,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;iBAC3B,CAAC,CACL,CAAC;YACN,CAAC;YAGD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBAEjB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAGjF,MAAM,IAAI,CAAC,iBAAiB,CAAC;oBACzB,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,WAAW;oBACX,iBAAiB,EAAE,QAAQ,CAAC,OAAO;oBACnC,SAAS,EAAE,EAAE;oBACb,SAAS,EAAE,IAAI,IAAI,EAAE;iBACxB,CAAC,CAAC;gBAGH,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAGhF,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;gBAGtF,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,GAAG,EAAE,CAAC;oBAClE,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,0BAA0B,CAAC,cAAc,CAAC,CAAC;oBACvF,IAAI,YAAY,EAAE,CAAC;wBACf,OAAO,QAAQ,CAAC,OAAO,GAAG,MAAM,GAAG,YAAY,CAAC;oBACpD,CAAC;gBACL,CAAC;YACL,CAAC;YAED,OAAO,QAAQ,CAAC,OAAO,CAAC;QAC5B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAGzD,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;gBACvB,SAAS;gBACT,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBAChC,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,YAAY;gBACnB,WAAW,EAAE,CAAC;gBACd,YAAY,EAAE,CAAC;gBACf,KAAK;aACR,CAAC,CAAC;YAGH,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;gBAClB,KAAK,EAAE,OAAO;gBACd,SAAS,EAAE,QAAQ;gBACnB,SAAS,EAAE,MAAM;gBACjB,OAAO,EAAE,gBAAgB,KAAK,EAAE;gBAChC,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;gBACxB,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBAChC,KAAK,EAAE;oBACH,IAAI,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;oBAC/C,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;iBACtD;aACJ,CAAC,CAAC;YAEH,MAAM,GAAG,CAAC;QACd,CAAC;IACL,CAAC;IAKD,KAAK,CAAC,iBAAiB,CAAC,WAA0C;QAC9D,MAAM,eAAe,GAAG;YACpB,GAAG,WAAW;YACd,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;SAC3B,CAAC;QAGF,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;QAGtD,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;QAGrF,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,EAAE,CAAC;YAChF,MAAM,KAAK,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC;YAC1D,MAAM,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACvF,CAAC;QAGD,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC;gBACjC,QAAQ,EAAE,WAAW,CAAC,QAAQ;gBAC9B,OAAO,EAAE,CAAC,CAAC,WAAW,CAAC,iBAAiB;gBACxC,SAAS,EAAE,WAAW,CAAC,SAAS;aACnC,CAAC,CAAC;QACP,CAAC;QAGD,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC;gBACrC,KAAK,EAAE,WAAW,CAAC,QAAQ;gBAC3B,aAAa,EAAE,CAAC,CAAC,WAAW,CAAC,iBAAiB;gBAC9C,sBAAsB,EAAE,WAAW,CAAC,WAAW,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBAC7E,WAAW,CAAC,WAAW,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;aACnE,CAAC,CAAC;QACP,CAAC;QAGD,IAAI,IAAI,CAAC,cAAc,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC;YAC9C,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC;gBAClC,OAAO,EAAE,WAAW,CAAC,MAAM;gBAC3B,MAAM,EAAE,WAAW;gBACnB,MAAM,EAAE,WAAW,CAAC,QAAQ;gBAC5B,SAAS,EAAE,WAAW,CAAC,SAAS;aACnC,CAAC,CAAC;QACP,CAAC;QAGD,IAAI,IAAI,CAAC,aAAa,IAAI,WAAW,CAAC,iBAAiB,EAAE,CAAC;YACtD,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAClC,WAAW,CAAC,WAAW,EACvB,WAAW,CAAC,iBAAiB,EAC7B,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAClC,CAAC;QACN,CAAC;QAGD,IAAI,IAAI,CAAC,kBAAkB,IAAI,WAAW,CAAC,QAAQ,IAAI,WAAW,CAAC,iBAAiB,EAAE,CAAC;YACnF,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAChE,CAAC;QAGD,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,gBAAgB,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC;YAC7D,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,CAAC;QACnD,CAAC;QAGD,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,WAAW,EAAE,CAAC;YAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,oBAAoB,IAAI,IAAI,CAAC;YAC7E,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,EAAE,CAAC;gBAChF,IAAI,MAAM,CAAC,OAAO,IAAI,SAAS,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;oBAC1D,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACjD,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAWD,KAAK,CAAC,qBAAqB,CAAC,OAS3B;QACG,MAAM,SAAS,GAAG,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAGjF,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;YACvB,SAAS;YACT,QAAQ,EAAE,OAAO,CAAC,SAAS;YAC3B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,KAAK,EAAE,UAAU;YACjB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;SAC5D,CAAC,CAAC;QAGH,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;YAClB,KAAK,EAAE,MAAM;YACb,SAAS,EAAE,QAAQ;YACnB,SAAS,EAAE,iBAAiB;YAC5B,OAAO,EAAE,8BAA8B,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE;YAChF,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;YACxB,QAAQ,EAAE,OAAO,CAAC,SAAS;YAC3B,QAAQ,EAAE;gBACN,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;aAC7B;SACJ,CAAC,CAAC;QAGH,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACjE,MAAM,eAAe,GAAoB;YACrC,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,OAAO;YACP,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,OAAO,EAAE,OAAO,CAAC,SAAS;YAC1B,KAAK,EAAE,UAAU;YACjB,kBAAkB,EAAE,KAAK;YACzB,SAAS,EAAE,IAAI,IAAI,EAAE;SACxB,CAAC;QACF,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;QAG/E,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAGhD,IAAI,IAAI,CAAC,iBAAiB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YAC7C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,EAAE,CAAC;gBAChF,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACpF,CAAC;QACL,CAAC;QAGD,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,CAAC;QAC3C,CAAC;QAGD,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC;QACjD,IAAI,UAAU,EAAE,mBAAmB,IAAI,IAAI,CAAC,gBAAgB,GAAG,CAAC,UAAU,CAAC,YAAY,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;YACnG,IAAI,CAAC,iBAAiB,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CACjC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;gBAClB,KAAK,EAAE,SAAS;gBAChB,SAAS,EAAE,QAAQ;gBACnB,SAAS,EAAE,aAAa;gBACxB,OAAO,EAAE,0BAA0B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;gBACrF,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;aAC3B,CAAC,CACL,CAAC;QACN,CAAC;QAGD,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACrC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;YACjF,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE,CAAC;gBAC/B,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC7E,CAAC;QACL,CAAC;IACL,CAAC;IAKD,KAAK,CAAC,MAAM,CAAC,MAAc;QACvB,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC1D,CAAC;IAKD,KAAK,CAAC,cAAc,CAAC,MAAc,EAAE,IAAY,EAAE,SAA8C;QAC7F,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;YAC9B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;YACxB,MAAM;YACN,IAAI;YACJ,SAAS;YACT,SAAS,EAAE,IAAI,IAAI,EAAE;SACxB,CAAC,CAAC;IACP,CAAC;IAOD,KAAK,CAAC,SAAS,CACX,KAAgB,EAChB,IAAY,EACZ,OAAe,EACf,OAAe;QAEf,MAAM,SAAS,GAAG;YACd,IAAI;YACJ,OAAO;YACP,OAAO;YACP,OAAO,EAAE,GAAG;YACZ,WAAW,EAAE,CAAC;YACd,UAAU,EAAE,CAAC;YACb,MAAM,EAAE,QAAiB;YACzB,SAAS,EAAE,IAAI,IAAI,EAAE;SACxB,CAAC;QAGF,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,KAAK,EAAoC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAGtF,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAG3C,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;YAC3B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;YACxB,KAAK;YACL,IAAI;YACJ,OAAO;YACP,YAAY,EAAE,eAAe;YAC7B,aAAa,EAAE,IAAI;YACnB,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,IAAI,IAAI,EAAE;SACxB,CAAC,CAAC;IACP,CAAC;IAYD,KAAK,CAAC,MAAM,CAAC,OAOZ;QAWG,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG;YACT,SAAS,EAAE,OAAO,EAAE,SAAS,IAAI,CAAC,uBAAuB,EAAE,qBAAqB,CAAC;YACjF,UAAU,EAAE,OAAO,EAAE,UAAU,IAAI,CAAC;YACpC,cAAc,EAAE,OAAO,EAAE,cAAc,IAAI,IAAI;YAC/C,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,SAAS;YACxC,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;YAC1B,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,qBAAqB;SAC/C,CAAC;QAEF,IAAI,CAAC;YAOL,MAAM,QAAQ,GAAG,QAAQ,IAAI,CAAC,KAAK,EAAoC,CAAC;YACxE,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CACtD,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,KAAK,QAAQ,CACrD,CAAC;YAEF,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,oCAAoC,IAAI,CAAC,IAAI,cAAc,IAAI,CAAC,KAAK,EAAE;iBAClF,CAAC;YACN,CAAC;YAED,MAAM,aAAa,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;YAIxC,MAAM,eAAe,GAAoB;gBACrC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE;gBACzB,gBAAgB,EAAE,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;gBAC/C,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC;gBAC/C,MAAM,EAAE,gBAAgB,IAAI,CAAC,QAAQ,UAAU,IAAI,CAAC,IAAI,EAAE;gBAC1D,QAAQ,EAAE,IAAI,CAAC,sBAAsB,EAAE;aAC1C,CAAC;YAEF,IAAI,cAAc,GAAG,aAAa,CAAC,OAAO,CAAC;YAC3C,IAAI,mBAAmB,GAAG,IAAI,CAAC;YAE/B,IAAI,CAAC;gBACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC5F,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAErB,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB,GAAG,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;oBAE5F,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAChE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAM,aAAa,CAAC,IAAqB,CAC3D,CAAC;oBACF,IAAI,WAAW,EAAE,CAAC;wBACd,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC;oBACzC,CAAC;oBACD,mBAAmB,GAAG,UAAU,CAAC,mBAAmB,CAAC;gBACzD,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;YAET,CAAC;YAED,MAAM,iBAAiB,GAAG;gBACtB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,OAAO,EAAE,GAAG,aAAa,CAAC,OAAO,KAAK,IAAI,CAAC,GAAG,EAAE,EAAE;gBAClD,OAAO,EAAE,cAAc;gBACvB,OAAO,EAAE,aAAa,CAAC,OAAO,GAAG,mBAAmB;gBACpD,YAAY,EAAE,IAAI;gBAClB,WAAW,EAAE,aAAa,CAAC,WAAW,IAAI,CAAC;gBAC3C,aAAa,EAAE,CAAC;aACnB,CAAC;YAGF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAC7D,iBAAiB,EACjB,IAAI,CAAC,MAAM,CAAC,EAAE,CACjB,CAAC;YAGE,MAAM,MAAM,GAAG,UAAU,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC;gBACpD,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,WAAW,EAAE,iBAAiB,CAAC,OAAO,GAAG,aAAa,CAAC,OAAO;gBAC9D,WAAW,EAAE;oBACT,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO;oBACjC,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO;oBACjC,QAAQ,EAAE,UAAU,CAAC,KAAK,CAAC,QAAQ;oBACnC,SAAS,EAAE,UAAU,CAAC,KAAK,CAAC,SAAS;iBACxC;aACJ,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;gBAE1D,MAAM,YAAY,GAAG;oBACjB,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,OAAO,EAAE,iBAAiB,CAAC,OAAO;oBAClC,OAAO,EAAE,iBAAiB,CAAC,OAAO;oBAClC,OAAO,EAAE,iBAAiB,CAAC,OAAO;oBAClC,MAAM,EAAE,QAAiB;oBACzB,SAAS,EAAE,IAAI,IAAI,EAAE;iBACxB,CAAC;gBACF,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;oBACjC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;oBACxB,KAAK,EAAE,IAAI,CAAC,KAAkB;oBAC9B,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,YAAY,EAAE,aAAa;oBAC3B,YAAY;iBACf,CAAC,CAAC;gBACH,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,4CAA4C;oBACxE,WAAW,EAAE;wBACT,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO;wBACjC,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO;wBACjC,QAAQ,EAAE,UAAU,CAAC,KAAK,CAAC,QAAQ;wBACnC,SAAS,EAAE,UAAU,CAAC,KAAK,CAAC,SAAS;qBACxC;iBACJ,CAAC;YACN,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACH,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,WAAW,EAAE;oBACT,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO;oBACjC,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO;oBACjC,QAAQ,EAAE,UAAU,CAAC,KAAK,CAAC,QAAQ;oBACnC,SAAS,EAAE,UAAU,CAAC,KAAK,CAAC,SAAS;iBACxC;aACJ,CAAC;YAGF,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;gBAClB,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;gBAC1C,SAAS,EAAE,QAAQ;gBACnB,SAAS,EAAE,QAAQ;gBACnB,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,sBAAsB,MAAM,CAAC,MAAM,EAAE;gBACjG,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;gBACxB,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBAChC,QAAQ,EAAE;oBACN,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,QAAQ,EAAE,UAAU,CAAC,aAAa;oBAClC,WAAW,EAAE,aAAa,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;oBACrE,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM;oBACzE,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM;iBACnD;aACJ,CAAC,CAAC;YAEH,OAAO,MAAM,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,MAAM,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAG/D,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;gBAClB,KAAK,EAAE,OAAO;gBACd,SAAS,EAAE,QAAQ;gBACnB,SAAS,EAAE,QAAQ;gBACnB,OAAO,EAAE,oBAAoB,KAAK,EAAE;gBACpC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;gBACxB,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBAChC,KAAK,EAAE;oBACH,IAAI,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;oBAC/C,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;iBACtD;aACJ,CAAC,CAAC;YAEH,MAAM,GAAG,CAAC;QACd,CAAC;IACL,CAAC;IAOD,KAAK,CAAC,QAAQ,CAAC,OAId;QACG,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QACzC,MAAM,QAAQ,GAAG,QAAQ,KAAK,EAAoC,CAAC;QACnE,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAG7C,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;QAC3E,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,qBAAqB,IAAI,IAAI,OAAO,EAAE,CAAC,CAAC;QAC5D,CAAC;QAGD,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,wCAAwC,IAAI,IAAI,OAAO,EAAE,CAAC,CAAC;QAC/E,CAAC;QAED,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,aAAa,CAAC,CAAC;QAC9F,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,6BAA6B,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC;QACzE,CAAC;QAGD,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;QAG1B,YAAY,CAAC,MAAM,GAAG,QAAQ,CAAC;QAG/B,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACtB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,GAAG;gBAC9B,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;gBAC1C,UAAU;aACb,CAAC;QACN,CAAC;QAGD,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAG3C,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;YAC3B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;YACxB,KAAK;YACL,IAAI;YACJ,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,YAAY,EAAE,UAAU;YACxB,aAAa,EAAE,MAAM,CAAC,OAAO;YAC7B,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,2BAA2B;YACnC,SAAS,EAAE,IAAI,IAAI,EAAE;SACxB,CAAC,CAAC;IACP,CAAC;IAOD,KAAK,CAAC,eAAe,CAAC,WAAmB,EAAE,OAAyB;QAQhE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACtD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE3B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACxE,MAAM,YAAY,GAAG,OAAO,GAAG,SAAS,CAAC;QAGzC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAClE,MAAM,YAAY,GAAG,SAAS,CAAC,gBAAgB,IAAI,GAAG,CAAC;QAEvD,OAAO;YACH,OAAO;YACP,OAAO,EAAE;gBACL,UAAU;gBACV,YAAY;gBACZ,YAAY;aACf;SACJ,CAAC;IACN,CAAC;IAOD,KAAK,CAAC,qBAAqB,CACvB,IAAY,EACZ,OAAe,EACf,WAAoB;QAEpB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACxE,CAAC;QAGD,IAAI,MAAuD,CAAC;QAC5D,IAAI,KAAK,GAAc,CAAC,CAAC;QAEzB,KAAK,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YACpE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;YACrE,IAAI,MAAM,EAAE,CAAC;gBACT,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAc,CAAC;gBAC9D,MAAM;YACV,CAAC;QACL,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,qBAAqB,IAAI,IAAI,OAAO,EAAE,CAAC,CAAC;QAC5D,CAAC;QAGD,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC;QAGnC,MAAM,UAAU,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,IAAI,OAAO,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QAG9E,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;YAClC,MAAM,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;gBAClC,EAAE,EAAE,UAAU;gBACd,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAS;gBAC/B,IAAI;gBACJ,OAAO;gBACP,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,KAAK;gBACL,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,CAAC;gBACpC,WAAW;gBACX,QAAQ,EAAE;oBACN,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;oBAC9B,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC;oBACvC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;oBAC3B,WAAW,EAAE,WAAW,IAAI,SAAS;iBACxC;gBACD,SAAS,EAAE,IAAI,IAAI,EAAE;aACxB,CAAC,CAAC;QACP,CAAC;QAGD,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;YAC3B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;YACxB,KAAK;YACL,IAAI;YACJ,OAAO;YACP,YAAY,EAAE,eAAe;YAC7B,aAAa,EAAE,IAAI;YACnB,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,0BAA0B,WAAW,IAAI,gBAAgB,cAAc,WAAW,GAAG;YAC7F,SAAS,EAAE,IAAI,IAAI,EAAE;SACxB,CAAC,CAAC;QAEH,OAAO,UAAU,CAAC;IACtB,CAAC;IAOD,KAAK,CAAC,uBAAuB,CACzB,QAAgB,EAChB,IAAY,EACZ,WAAuB;QAEvB,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC5D,MAAM,IAAI,KAAK,CAAC,yCAAyC,QAAQ,EAAE,CAAC,CAAC;QACzE,CAAC;QAGD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAC9E,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAExE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,mCAAmC,QAAQ,GAAG,CAAC,CAAC;QACpF,CAAC;QAGD,MAAM,KAAK,GAAG,WAAW,IAAI,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC;QAGjD,MAAM,IAAI,CAAC,SAAS,CAChB,KAAK,EACL,IAAI,EACJ,aAAa,QAAQ,CAAC,OAAO,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,EAC7C,QAAQ,CAAC,OAAO,CACnB,CAAC;QAGF,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACtB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,GAAG;gBAC9B,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;gBAC1C,WAAW,IAAI,IAAI,QAAQ,CAAC,OAAO,EAAE;aACxC,CAAC;QACN,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;YAClB,KAAK,EAAE,MAAM;YACb,SAAS,EAAE,QAAQ;YACnB,SAAS,EAAE,cAAc;YACzB,OAAO,EAAE,mBAAmB,IAAI,eAAe,QAAQ,CAAC,OAAO,cAAc,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,QAAQ,GAAG;YACrI,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;SAC3B,CAAC,CAAC;IACP,CAAC;IAOD,KAAK,CAAC,kBAAkB;QAUpB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAGlE,MAAM,UAAU,GAAG;YACf,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM;YAC5B,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM;YAC5B,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM;SAC/B,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;QAErC,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC;YACpC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM;YACvE,CAAC,CAAC,GAAG,CAAC;QAEV,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAE/E,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,IAAI,UAAU,GAAG,GAAG;YAAE,QAAQ,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;QACpE,IAAI,SAAS,CAAC,cAAc,GAAG,GAAG,IAAI,SAAS,CAAC,qBAAqB,GAAG,IAAI,EAAE,CAAC;YAC3E,QAAQ,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,MAAM,GACR,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAC/B,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC;QAEhD,OAAO;YACH,MAAM;YACN,OAAO,EAAE;gBACL,UAAU;gBACV,YAAY,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC,CAAC;gBACjF,cAAc,EAAE,SAAS,CAAC,gBAAgB,IAAI,GAAG;gBACjD,eAAe;aAClB;YACD,QAAQ;SACX,CAAC;IACN,CAAC;IAKD,KAAK,CAAC,YAAY;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACrD,CAAC;IAOD,mBAAmB;QACf,OAAO,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,EAAE,CAAC;IACxD,CAAC;IAOD,gBAAgB,CAAC,OAAqC;QAClD,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACrD,CAAC;IAOD,KAAK,CAAC,eAAe,CAAC,WAAmB,EAAE,OAAgB;QACvD,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC;YAC9B,WAAW;YACX,OAAO;YACP,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;SAC3B,CAAC,CAAC;IACP,CAAC;IAOD,mBAAmB;QACf,OAAO,IAAI,CAAC,WAAW,CAAC,mBAAmB,EAAE,CAAC;IAClD,CAAC;IAKD,KAAK,CAAC,MAAM;QACR,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAKD,KAAK,CAAC,kBAAkB,CAAC,MAAc;QACnC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACjE,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;QAGlG,MAAM,YAAY,GAAG,EAAE,CAAC;QACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACzD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACrE,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YACnE,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;QACjC,CAAC;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IAC7E,CAAC;IAKD,KAAK,CAAC,uBAAuB,CAAC,MAAc,EAAE,cAAsB;QAChE,OAAO,IAAI,CAAC,oBAAoB,CAAC,mBAAmB,CAChD,MAAM,EACN,IAAI,CAAC,MAAM,CAAC,EAAE,EACd,cAAc,CACjB,CAAC;IACN,CAAC;IAKD,KAAK,CAAC,sBAAsB,CAAC,MAAc;QACvC,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACnE,CAAC;IAKD,gBAAgB;QACZ,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;IAC7C,CAAC;IAKD,iBAAiB;QACb,OAAO,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,IAAI,CAAC;IAC5C,CAAC;IAKD,WAAW;QACP,OAAO,IAAI,CAAC,aAAa,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IACnD,CAAC;IAKD,cAAc;QACV,OAAO,IAAI,CAAC,aAAa,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;IACtD,CAAC;IAKD,sBAAsB,CAAC,OAAe;QAClC,OAAO,IAAI,CAAC,aAAa,EAAE,kBAAkB,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;IACnE,CAAC;IAKD,uBAAuB,CAAC,OAAe,EAAE,QAAgB,EAAE,aAAsB;QAC7E,OAAO,IAAI,CAAC,aAAa,EAAE,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,aAAa,CAAC,IAAI,IAAI,CAAC;IAC7F,CAAC;IAKD,YAAY,CAAC,OAAe;QACxB,OAAO,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;IAC9D,CAAC;IAKD,gBAAgB,CAAC,QAAgB,EAAE,SAAqC;QACpE,OAAO,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,IAAI,IAAI,CAAC;IAC1E,CAAC;IAKD,wBAAwB,CAAC,QAAgB,EAAE,cAAwD;QAC/F,IAAI,CAAC,kBAAkB,EAAE,gBAAgB,CAAC;YACtC,QAAQ;YACR,aAAa,EAAE,IAAI;YACnB,cAAc;YACd,SAAS,EAAE,IAAI,IAAI,EAAE;SACxB,CAAC,CAAC;IACP,CAAC;IAKD,mBAAmB;QACf,OAAO,IAAI,CAAC,iBAAiB,EAAE,UAAU,EAAE,IAAI,IAAI,CAAC;IACxD,CAAC;IAKD,mBAAmB,CAAC,KAAa;QAC7B,OAAO,IAAI,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC;IACpE,CAAC;IAKD,WAAW,CAAC,QAAgB;QACxB,OAAO,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;IACxD,CAAC;IAKD,iBAAiB;QACb,OAAO,IAAI,CAAC,aAAa,CAAC,oBAAoB,EAAE;aAC3C,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACpD,CAAC;IAKD,uBAAuB,CAAC,WAKvB;QACG,IAAI,CAAC,cAAc,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACxD,CAAC;IASD,mBAAmB;QACf,OAAO,IAAI,CAAC,iBAAiB,EAAE,UAAU,EAAE,IAAI,IAAI,CAAC;IACxD,CAAC;IAKD,gBAAgB;QACZ,OAAO,IAAI,CAAC,eAAe,EAAE,OAAO,EAAE,IAAI,IAAI,CAAC;IACnD,CAAC;IAKD,mBAAmB;QACf,OAAO,IAAI,CAAC,eAAe,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC;IACvD,CAAC;IAKD,eAAe;QACX,OAAO,IAAI,CAAC,iBAAiB,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;IAC3D,CAAC;IAKD,eAAe;QACX,OAAO,IAAI,CAAC,iBAAiB,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;IAC3D,CAAC;IAKD,sBAAsB;QAClB,IAAI,CAAC,IAAI,CAAC,iBAAiB;YAAE,OAAO,EAAE,CAAC;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,EAAE,UAAU,EAAE;eAC5C,EAAE,KAAK,EAAE,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG;gBACtD,gBAAgB,EAAE,GAAG,EAAE,mBAAmB,EAAE,GAAG,EAAE,KAAK,EAAE,QAAiB,EAAE,CAAC;QACrF,OAAO,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7E,CAAC;IAKD,cAAc;QACV,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,iBAAiB;YAAE,OAAO,IAAI,CAAC;QAClE,OAAO,kBAAkB,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC5E,CAAC;IAUO,KAAK,CAAC,iBAAiB;QAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QAGhD,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,CAAC;YAG1D,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,gBAAgB,EAAE,CAAC;gBACzD,IAAI,QAAQ,EAAE,CAAC;oBACX,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;oBACnC,OAAO;gBACX,CAAC;YACL,CAAC;YAGD,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBACnE,IAAI,CAAC,eAAe,CAAC,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC5D,CAAC;QACL,CAAC;QAGD,IAAI,UAAU,EAAE,iBAAiB,KAAK,KAAK,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YAC9D,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAEnD,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,CAAC;gBACnD,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAErF,KAAK,MAAM,QAAQ,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,WAAW,CAAC,EAAE,CAAC;oBAEvE,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;wBACvB,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,QAAQ,CAAC,KAAK,EAAoC,CAAC;4BAChG,EAAE,IAAI,CAAC,CAAC,CAAmC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;wBACvG,IAAI,aAAa,EAAE,CAAC;4BAChB,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC;gCACpD,IAAI,EAAE,QAAQ,CAAC,IAAI;gCACnB,OAAO,EAAE,aAAa,CAAC,OAAO;6BACjC,CAAC,CAAC;4BACH,IAAI,CAAC,KAAK,CAAC,QAAQ;gCAAE,SAAS;wBAClC,CAAC;oBACL,CAAC;oBAED,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC;wBACtC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU;wBACzC,aAAa,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG;qBACzB,CAAC,CAAC;oBAClB,MAAM,IAAI,CAAC,MAAM,CAAC;wBACd,KAAK,EAAE,MAAM,CAAC,KAAK;wBACnB,IAAI,EAAE,MAAM,CAAC,IAAI;wBACjB,QAAQ,EAAE,oBAAoB,QAAQ,CAAC,MAAM,EAAE;qBAClD,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;iBAAM,CAAC;gBAEJ,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;oBACjC,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO;wBAAE,SAAS;oBAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;oBAClD,MAAM,IAAI,CAAC,MAAM,CAAC;wBACd,KAAK,EAAE,MAAM,CAAC,KAAK;wBACnB,IAAI,EAAE,MAAM,CAAC,IAAI;wBACjB,QAAQ,EAAE,eAAe,MAAM,CAAC,IAAI,EAAE;qBACzC,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;QACL,CAAC;QAGD,IAAI,UAAU,EAAE,sBAAsB,KAAK,KAAK,EAAE,CAAC;YAC/C,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM;iBAC1C,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC;iBAClC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;YAChE,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,qBAAqB,IAAI,IAAI,CAAC;YAChF,IAAI,aAAa,GAAG,SAAS,EAAE,CAAC;gBAC5B,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YAC/B,CAAC;QACL,CAAC;QAGD,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAG9B,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,UAAU,EAAE,WAAW,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChE,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QACzC,CAAC;QAGD,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,mBAAmB,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YAC/E,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBACjC,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO;oBAAE,SAAS;gBAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;gBAClD,IAAI,CAAC;oBACD,MAAM,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;gBACxF,CAAC;gBAAC,MAAM,CAAC;gBAET,CAAC;YACL,CAAC;QACL,CAAC;QAGD,IAAI,IAAI,CAAC,QAAQ,IAAI,UAAU,EAAE,WAAW,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YAC/D,MAAM,cAAc,GAAG,UAAU,CAAC,iBAAiB,IAAI,QAAQ,CAAC;YAChE,MAAM,YAAY,GAAG,CAAC,CAAS,EAAE,EAAE,CAC/B,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACxE,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBACjC,IAAI,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,YAAY,CAAC,cAAc,CAAC,EAAE,CAAC;oBAChE,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBACtC,CAAC;YACL,CAAC;QACL,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;YAClB,KAAK,EAAE,MAAM;YACb,SAAS,EAAE,QAAQ;YACnB,SAAS,EAAE,iBAAiB;YAC5B,OAAO,EAAE,oBAAoB,IAAI,CAAC,gBAAgB,YAAY;YAC9D,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;YACxB,QAAQ,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE;SAChF,CAAC,CAAC;IACP,CAAC;IAQO,yBAAyB,CAAC,WAA0C;QACxE,IAAI,CAAC,WAAW,CAAC,iBAAiB;YAAE,OAAO,GAAG,CAAC;QAE/C,MAAM,QAAQ,GAAG,WAAW,CAAC,iBAAiB,CAAC;QAC/C,MAAM,OAAO,GAAG,WAAW,CAAC,WAAW,CAAC;QAGxC,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,EAAE,GAAG,GAAG,CAAC;QAG7E,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAExE,MAAM,eAAe,GAAG,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACrD,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;gBACpD,KAAK,GAAG,IAAI,CAAC;QAGjB,MAAM,YAAY,GAAG,CACjB,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YACtC,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YACrC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/D,CAAC,QAAQ,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CACrC,CAAC;QAGF,MAAM,aAAa,GAAG,WAAW,CAAC,aAAa,CAAC;QAChD,MAAM,iBAAiB,GAAG,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACpD,aAAa,KAAK,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC/B,GAAG,CAAC;QAER,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,GAAG,eAAe,GAAG,YAAY,GAAG,iBAAiB,CAAC,CAAC;IAC1F,CAAC;IAOO,kBAAkB,CAAC,MAAc,EAAE,MAAwB;QAE/D,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,MAAM,CAAC,KAAK,EAAoC,CAAC;YACpG,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;QAE7D,IAAI,CAAC,mBAAmB;YAAE,OAAO,MAAM,CAAC;QAGxC,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,MAAM,CAAC,KAAK,EAAoC,CAAC;YAC9F,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;QAE7D,IAAI,aAAa,IAAI,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YAClD,OAAO,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;QAC9D,CAAC;QAGD,OAAO,MAAM,GAAG,yBAAyB,MAAM,CAAC,IAAI,MAAM,mBAAmB,EAAE,CAAC;IACpF,CAAC;IAQO,eAAe,CAAC,WAAmB,EAAE,QAAgB;QACzD,IAAI,KAAK,GAAG,GAAG,CAAC;QAGhB,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC;QAC5B,IAAI,GAAG,GAAG,EAAE,IAAI,GAAG,GAAG,IAAI;YAAE,KAAK,IAAI,IAAI,CAAC;aACrC,IAAI,GAAG,GAAG,EAAE;YAAE,KAAK,IAAI,GAAG,CAAC;QAGhC,MAAM,WAAW,GAAG,uDAAuD,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC9F,IAAI,WAAW,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;YAAE,KAAK,IAAI,IAAI,CAAC;QAGvD,IAAI,wBAAwB,CAAC,IAAI,CAAC,QAAQ,CAAC;YAAE,KAAK,IAAI,GAAG,CAAC;QAG1D,IAAI,8CAA8C,CAAC,IAAI,CAAC,QAAQ,CAAC;YAAE,KAAK,IAAI,IAAI,CAAC;QAEjF,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;IAC3C,CAAC;IAQO,sBAAsB;QAC1B,MAAM,QAAQ,GAA4B,EAAE,CAAC;QAG7C,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QAChD,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACnB,QAAQ,CAAC,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC5C,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,YAAY,EAAE,CAAC,CAAC,YAAY;gBAC5B,aAAa,EAAE,CAAC,CAAC,aAAa;aACjC,CAAC,CAAC,CAAC;QACR,CAAC;QAGD,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,CAAC;YACtD,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE;iBAC3D,MAAM,CAAC,CAAC,CAA8C,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,WAAW,IAAI,CAAC,CAAC,gBAAgB,GAAG,GAAG,CAAC;iBAC/G,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAClB,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE;iBAC3D,MAAM,CAAC,CAAC,CAAoB,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,WAAW,CAAC;iBACzD,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACrB,CAAC;QAGD,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE;iBAC/C,MAAM,CAAC,CAAC,CAAoB,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC;iBACrD,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACjB,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3E,CAAC;QAGD,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,MAAM,IAAI,GAAkB,IAAI,CAAC,eAAe,EAAE,OAAO,EAAE,EAAE,IAAI,QAAQ,CAAC;YAC1E,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,EAAE,UAAU,EAAE,IAAI,IAAI,CAAC;YAC5D,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACvF,CAAC;QAGD,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,YAAY,EAAE,CAAC;YAC9C,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC;QAClE,CAAC;QAED,OAAO,QAAQ,CAAC;IACpB,CAAC;IAKO,KAAK,CAAC,uBAAuB;QACjC,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO;QAE3B,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,oBAAoB,IAAI,IAAI,CAAC;QAC9E,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,EAAE,CAAC;YAChF,IAAI,MAAM,CAAC,OAAO,IAAI,SAAS,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;gBAC1D,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACvD,CAAC;QACL,CAAC;IACL,CAAC;IAOO,KAAK,CAAC,gBAAgB;QAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,oBAAoB,EAAE,CAAC;QAC9D,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACnC,IAAI,UAAU,CAAC,QAAQ,KAAK,IAAI,CAAC,MAAM,CAAC,EAAE;gBAAE,SAAS;YAErD,IAAI,CAAC;gBACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;gBAExE,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBAEhC,MAAM,QAAQ,GAAG,QAAQ,UAAU,CAAC,KAAK,EAAoC,CAAC;oBAC9E,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;wBAC9C,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,UAAU,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;oBAEjE,IAAI,aAAa,EAAE,CAAC;wBAChB,MAAM,IAAI,CAAC,SAAS,CAChB,UAAU,CAAC,KAAK,EAChB,UAAU,CAAC,IAAI,EACf,UAAU,CAAC,aAAa,EACxB,aAAa,CAChB,CAAC;oBACN,CAAC;oBACD,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;gBACpD,CAAC;qBAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;oBACxC,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACtE,CAAC;qBAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBACvC,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;gBACnD,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;YAET,CAAC;QACL,CAAC;IACL,CAAC;IAKO,qBAAqB,CAAC,MAAmB;QAC7C,MAAM,OAAO,GAAuD;YAChE,iBAAiB,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE;YACxD,oBAAoB,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE;YACtD,eAAe,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE;YACjD,uBAAuB,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE;YAC9D,kBAAkB,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE;SACvD,CAAC;QACF,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;IAC7E,CAAC;IAKO,KAAK,CAAC,eAAe,CAAC,MAA2C;QACrE,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO;QAE3B,IAAI,CAAC;YACD,MAAM,aAAa,GAAG;gBAClB,EAAE,EAAE,QAAQ,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE;gBACzD,OAAO,EAAE,OAAO;gBAChB,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,SAAS,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;gBAC/C,WAAW,EAAE,kBAAkB,MAAM,CAAC,IAAI,sBAAsB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBAC3F,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC;gBAC1C,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE;oBACL,WAAW,EAAE,MAAM,CAAC,OAAO;oBAC3B,oBAAoB,EAAE,EAAc;oBACpC,kBAAkB,EAAE,EAAc;oBAClC,iBAAiB,EAAE,EAAc;oBACjC,QAAQ,EAAE,EAA6B;iBAC1C;gBACD,OAAO,EAAE;oBACL,cAAc,EAAE,MAAM,CAAC,OAAO;oBAC9B,eAAe,EAAE,MAAM,CAAC,OAAO;oBAC/B,eAAe,EAAE,GAAG;oBACpB,eAAe,EAAE,MAAM,CAAC,OAAO;oBAC/B,aAAa,EAAE,CAAC;oBAChB,mBAAmB,EAAE,IAAI;iBAC5B;gBACD,OAAO,EAAE;oBACL,YAAY,EAAE,IAAI;oBAClB,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,CAAC;oBAClC,SAAS,EAAE,EAAc;oBACzB,eAAe,EAAE,EAAuE;iBAC3F;gBACD,MAAM,EAAE;oBACJ,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE;oBAChD,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;oBACzB,KAAK,EAAE,QAAiB;iBAC3B;gBACD,IAAI,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;gBACnB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACtC,CAAC;YAEF,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,aAAgE,CAAC,CAAC;YAChG,MAAM,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAE/B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;gBAClB,KAAK,EAAE,MAAM;gBACb,SAAS,EAAE,QAAQ;gBACnB,SAAS,EAAE,eAAe;gBAC1B,OAAO,EAAE,uBAAuB,MAAM,CAAC,IAAI,cAAc,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;gBACrF,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;aAC3B,CAAC,CAAC;QACP,CAAC;QAAC,MAAM,CAAC;QAET,CAAC;IACL,CAAC;IAKO,KAAK,CAAC,cAAc,CAAC,MAAmB;QAC5C,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO;QAE3B,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAClD,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAEzD,IAAI,CAAC;YACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;gBAC/C,IAAI,EAAE,SAAS;gBACf,UAAU,EAAE,IAAI;gBAChB,MAAM,EAAE,SAAS;gBACjB,SAAS,EAAE,MAAM;gBACjB,KAAK,EAAE,CAAC;aACX,CAAC,CAAC;YAEH,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO;YAEpC,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAG/B,MAAM,IAAI,CAAC,SAAS,CAChB,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,IAAI,EACX,SAAS,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,EAChD,QAAQ,CAAC,OAAO,CAAC,WAAW,CAC/B,CAAC;YAEF,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;gBAClB,KAAK,EAAE,MAAM;gBACb,SAAS,EAAE,QAAQ;gBACnB,SAAS,EAAE,cAAc;gBACzB,OAAO,EAAE,sBAAsB,QAAQ,CAAC,IAAI,QAAQ,MAAM,CAAC,IAAI,EAAE;gBACjE,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;aAC3B,CAAC,CAAC;QACP,CAAC;QAAC,MAAM,CAAC;QAET,CAAC;IACL,CAAC;IAKO,kBAAkB,CAAC,QAAgB;QACvC,MAAM,OAAO,GAA2B;YACpC,YAAY,EAAE,oBAAoB;YAClC,iBAAiB,EAAE,mBAAmB;YACtC,qBAAqB,EAAE,uBAAuB;SACjD,CAAC;QACF,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,mBAAmB,CAAC;IACpD,CAAC;IAKO,UAAU;QACd,MAAM,cAAc,GAAkB;YAClC,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,eAAe,EAAE,GAAG;YACpD,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,EAAE,GAAG;YAC1D,SAAS,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC;SACxE,CAAC;QAGF,MAAM,UAAU,GAAoB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM;aACxD,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC;aAClC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACP,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,EAAE;YAC9C,QAAQ,EAAE,CAAC,CAAC,IAAoB;YAChC,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,OAAO,EAAE,cAAc;YACvB,MAAM,EAAE,SAAkB;YAC1B,UAAU,EAAE,CAAC,CAAC,WAAW,IAAI,CAAC;YAC9B,QAAQ,EAAE,IAAI,IAAI,EAAE;YACpB,WAAW,EAAE,CAAC,CAAC,OAAO,IAAI,GAAG;SAChC,CAAC,CAAC,CAAC;QAER,OAAO;YACH,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;YAClB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YACtB,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE;YAChD,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC;YACjC,WAAW,EAAE;gBACT,EAAE,EAAE;oBACA,QAAQ,EAAE;wBACN,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,cAAc;wBAC7D,OAAO,EAAE,oCAAoC;wBAC7C,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;qBACtE;oBACD,QAAQ,EAAE;wBACN,eAAe,EAAE,EAAE;wBACnB,cAAc,EAAE,EAAE;wBAClB,WAAW,EAAE,EAAE;qBAClB;oBACD,WAAW,EAAE;wBACT,OAAO,EAAE,MAAM;wBACf,SAAS,EAAE,eAAe;wBAC1B,OAAO,EAAE,KAAK;qBACjB;oBACD,QAAQ,EAAE;wBACN,OAAO,EAAE,OAAO;wBAChB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;qBACnC;iBACJ;gBACD,EAAE,EAAE;oBACA,UAAU;oBACV,QAAQ,EAAE;wBACN,WAAW,EAAE,IAAI,IAAI,EAAE;wBACvB,aAAa,EAAE,CAAC;wBAChB,cAAc,EAAE,CAAC;qBACpB;iBACJ;gBACD,EAAE,EAAE;oBACA,eAAe,EAAE,IAAI,GAAG,EAAE;oBAC1B,eAAe,EAAE,EAAE;oBACnB,QAAQ,EAAE;wBACN,WAAW,EAAE,IAAI,IAAI,EAAE;wBACvB,cAAc,EAAE,CAAC;wBACjB,UAAU,EAAE,CAAC;qBAChB;iBACJ;aACJ;YACD,SAAS,EAAE;gBACP,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe,IAAI,EAAE;gBACzC,YAAY,EAAE,IAAI,IAAI,EAAE;gBACxB,UAAU,EAAE,CAAC;gBACb,WAAW,EAAE,KAAK;aACrB;YACD,OAAO,EAAE;gBACL,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa;gBACjD,cAAc,EAAE,EAAE;gBAClB,SAAS,EAAE,EAAE;aAChB;YACD,OAAO,EAAE,cAAc;YACvB,MAAM,EAAE;gBACJ,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,KAAK,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY;gBAC3G,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,IAAI,GAAG;gBACxD,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa;gBAC/C,cAAc,EAAE,SAAS;gBACzB,qBAAqB,EAAE,IAAI;gBAC3B,oBAAoB,EAAE,IAAI;gBAC1B,qBAAqB,EAAE,IAAI;gBAC3B,gBAAgB,EAAE,IAAI;gBACtB,qBAAqB,EAAE,GAAG;aAC7B;YACD,KAAK,EAAE,QAAQ;YACf,IAAI,EAAE,EAAE;YACR,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;YAChC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;SACnC,CAAC;IACN,CAAC;IAKO,eAAe,CAAC,MAA2E;QAC/F,MAAM,cAAc,GAAkB;YAClC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG;YAC1E,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,EAAE,GAAG;YAC1D,SAAS,EAAE,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC;SACnF,CAAC;QAEF,OAAO;YACH,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,OAAO,EAAE;YACxD,QAAQ,EAAE,MAAM,CAAC,IAAoB;YACrC,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,OAAO,EAAE,cAAc;YACvB,MAAM,EAAE,SAAS;YACjB,UAAU,EAAE,CAAC;YACb,QAAQ,EAAE,IAAI,IAAI,EAAE;YACpB,WAAW,EAAE,MAAM,CAAC,OAAO;YAC3B,UAAU,EAAE,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC;SACjD,CAAC;IACN,CAAC;IAeD,KAAK,CAAC,aAAa;QAOf,MAAM,WAAW,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC,EAAE,qBAAqB,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,CAAC;QAEjI,MAAM,mBAAmB,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC;QACrF,IAAI,CAAC,mBAAmB;YAAE,OAAO,WAAW,CAAC;QAE7C,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;QACzD,MAAM,QAAQ,GAAG,iBAAiB,EAAE,mBAAmB,IAAI,GAAG,CAAC;QAE/D,MAAM,OAAO,GAAoB;YAC7B,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE;YACzB,gBAAgB,EAAE,IAAI;YACtB,MAAM,EAAE,6EAA6E;SACxF,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEzD,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,kBAAkB;YAAE,OAAO,WAAW,CAAC;QAEtE,MAAM,OAAO,GAAG,MAAM,CAAC,kBAAkB,CAAC;QAG1C,IAAI,OAAO,CAAC,KAAK,GAAG,QAAQ,EAAE,CAAC;YAC3B,OAAO,WAAW,CAAC;QACvB,CAAC;QAGD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAC7D;YACI,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,eAAe,IAAI,CAAC,GAAG,EAAE,EAAE;YACpC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YACpF,OAAO,EAAE,MAAM,CAAC,mBAAmB,GAAG,GAAG;YACzC,YAAY,EAAE,GAAG;YACjB,WAAW,EAAE,CAAC;YACd,aAAa,EAAE,CAAC;SACnB,EACD,IAAI,CAAC,MAAM,CAAC,EAAE,CACjB,CAAC;QAEF,IAAI,UAAU,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;YACxC,OAAO,WAAW,CAAC;QACvB,CAAC;QAGD,MAAM,UAAU,GAAG,iBAAiB,EAAE,wBAAwB,IAAI,GAAG,CAAC;QAEtE,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC;YAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CACzC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,QAAQ,CAC9D,CAAC;YACF,IAAI,MAAM,IAAI,MAAM,CAAC,OAAO,IAAI,UAAU,EAAE,CAAC;gBACzC,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;YACvC,CAAC;QACL,CAAC;QAED,OAAO;YACH,UAAU,EAAE,IAAI;YAChB,mBAAmB,EAAE,OAAO,CAAC,cAAc;YAC3C,qBAAqB,EAAE,OAAO,CAAC,gBAAgB;YAC/C,WAAW,EAAE,OAAO,CAAC,cAAc,GAAG,OAAO,CAAC,gBAAgB;YAC9D,gBAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC;SAC1D,CAAC;IACN,CAAC;IAQD,mBAAmB;QAKf,MAAM,OAAO,GAAoB;YAC7B,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE;YACzB,gBAAgB,EAAE,IAAI;YACtB,MAAM,EAAE,mBAAmB;YAC3B,QAAQ,EAAE,CAAC,GAAG,EAAE;gBACZ,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;gBAChD,OAAO,KAAK,CAAC,UAAU;oBACnB,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE;oBACpF,CAAC,CAAC,SAAS,CAAC;YACpB,CAAC,CAAC,EAAE;SACP,CAAC;QAEF,OAAO,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACjE,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI;YACzB,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,MAAM,EAAE,CAAC,CAAC,MAAM;SACnB,CAAC,CAAC,CAAC;IACR,CAAC;IAKO,mBAAmB,CAAC,QAAwB;QAChD,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YACnC,MAAM,QAAQ,GAAG,QAAQ,KAAK,CAAC,KAAK,EAAoC,CAAC;YACzE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAC5C,CAAC,CAAmC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,KAAK,QAAQ,CAC1F,CAAC;YACF,IAAI,MAAM,EAAE,CAAC;gBACT,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;gBAC/B,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;YACnC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACrD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;YAClB,KAAK,EAAE,SAAS;YAChB,SAAS,EAAE,QAAQ;YACnB,SAAS,EAAE,oBAAoB;YAC/B,OAAO,EAAE,mCAAmC,QAAQ,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE;YAC9E,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;SAC3B,CAAC,CAAC;IACP,CAAC;CACJ"}
@@ -0,0 +1,23 @@
1
+ import type { IntegratedHealth, CapabilityEntry } from './EnhancedSelfModel.js';
2
+ import type { OperatingMode, ThreatClassification, SurvivalStrategy } from '../evolution/PurposeSurvival.js';
3
+ export interface AgentVitals {
4
+ mode: OperatingMode;
5
+ health: IntegratedHealth;
6
+ purpose: string;
7
+ capabilities: CapabilityEntry[];
8
+ threats: ThreatClassification[];
9
+ strategy: SurvivalStrategy;
10
+ lastUpdated: Date;
11
+ }
12
+ export declare function computeAgentVitals(survival: {
13
+ getMode(): OperatingMode;
14
+ getStrategy(): SurvivalStrategy;
15
+ evaluateThreats(): {
16
+ threats: ThreatClassification[];
17
+ };
18
+ }, selfModel: {
19
+ assessFull(): IntegratedHealth;
20
+ getCapabilities(): CapabilityEntry[];
21
+ purpose: string;
22
+ }): AgentVitals;
23
+ //# sourceMappingURL=AgentVitals.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentVitals.d.ts","sourceRoot":"","sources":["../../src/advanced-ai/AgentVitals.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAE7G,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,aAAa,CAAC;IACpB,MAAM,EAAE,gBAAgB,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,OAAO,EAAE,oBAAoB,EAAE,CAAC;IAChC,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,WAAW,EAAE,IAAI,CAAC;CACrB;AAKD,wBAAgB,kBAAkB,CAC9B,QAAQ,EAAE;IAAE,OAAO,IAAI,aAAa,CAAC;IAAC,WAAW,IAAI,gBAAgB,CAAC;IAAC,eAAe,IAAI;QAAE,OAAO,EAAE,oBAAoB,EAAE,CAAA;KAAE,CAAA;CAAE,EAC/H,SAAS,EAAE;IAAE,UAAU,IAAI,gBAAgB,CAAC;IAAC,eAAe,IAAI,eAAe,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACrG,WAAW,CAWb"}
@@ -0,0 +1,13 @@
1
+ export function computeAgentVitals(survival, selfModel) {
2
+ const evaluation = survival.evaluateThreats();
3
+ return {
4
+ mode: survival.getMode(),
5
+ health: selfModel.assessFull(),
6
+ purpose: selfModel.purpose,
7
+ capabilities: selfModel.getCapabilities(),
8
+ threats: evaluation.threats,
9
+ strategy: survival.getStrategy(),
10
+ lastUpdated: new Date(),
11
+ };
12
+ }
13
+ //# sourceMappingURL=AgentVitals.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentVitals.js","sourceRoot":"","sources":["../../src/advanced-ai/AgentVitals.ts"],"names":[],"mappings":"AA0BA,MAAM,UAAU,kBAAkB,CAC9B,QAA+H,EAC/H,SAAoG;IAEpG,MAAM,UAAU,GAAG,QAAQ,CAAC,eAAe,EAAE,CAAC;IAC9C,OAAO;QACH,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE;QACxB,MAAM,EAAE,SAAS,CAAC,UAAU,EAAE;QAC9B,OAAO,EAAE,SAAS,CAAC,OAAO;QAC1B,YAAY,EAAE,SAAS,CAAC,eAAe,EAAE;QACzC,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,QAAQ,EAAE,QAAQ,CAAC,WAAW,EAAE;QAChC,WAAW,EAAE,IAAI,IAAI,EAAE;KAC1B,CAAC;AACN,CAAC"}
@@ -0,0 +1,37 @@
1
+ export type ValidationLevel = 'none' | 'inform' | 'confirm' | 'supervise';
2
+ export interface AutonomyThreshold {
3
+ taskType: string;
4
+ autonomyLevel: number;
5
+ validationRequired: ValidationLevel;
6
+ successCount: number;
7
+ correctionCount: number;
8
+ lastUpdated: Date;
9
+ }
10
+ export interface AutonomyDecision {
11
+ canActAutonomously: boolean;
12
+ validationRequired: ValidationLevel;
13
+ confidence: number;
14
+ reasoning: string;
15
+ }
16
+ export interface CorrectionRecord {
17
+ taskType: string;
18
+ wasAutonomous: boolean;
19
+ correctionType: 'undo' | 'modify' | 'reject' | 'approve';
20
+ timestamp: Date;
21
+ }
22
+ export declare class CalibratedAutonomy {
23
+ private thresholds;
24
+ private corrections;
25
+ private globalAutonomyModifier;
26
+ constructor();
27
+ evaluate(taskType: string, riskLevel?: 'low' | 'medium' | 'high'): AutonomyDecision;
28
+ recordSuccess(taskType: string): void;
29
+ recordCorrection(correction: CorrectionRecord): void;
30
+ getThresholds(): AutonomyThreshold[];
31
+ getAutonomyReport(): string;
32
+ toPromptSection(currentTaskType?: string): string | null;
33
+ private getThreshold;
34
+ private levelToValidation;
35
+ private buildReasoning;
36
+ }
37
+ //# sourceMappingURL=CalibratedAutonomy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CalibratedAutonomy.d.ts","sourceRoot":"","sources":["../../src/advanced-ai/CalibratedAutonomy.ts"],"names":[],"mappings":"AAmBA,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAC;AAE1E,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,eAAe,CAAC;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC7B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,kBAAkB,EAAE,eAAe,CAAC;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;IACzD,SAAS,EAAE,IAAI,CAAC;CACnB;AA4BD,qBAAa,kBAAkB;IAC3B,OAAO,CAAC,UAAU,CAA6C;IAC/D,OAAO,CAAC,WAAW,CAA0B;IAC7C,OAAO,CAAC,sBAAsB,CAAa;;IAmB3C,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,gBAAgB;IA8BnF,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAYrC,gBAAgB,CAAC,UAAU,EAAE,gBAAgB,GAAG,IAAI;IAkCpD,aAAa,IAAI,iBAAiB,EAAE;IAOpC,iBAAiB,IAAI,MAAM;IAmB3B,eAAe,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAwBxD,OAAO,CAAC,YAAY;IAcpB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,cAAc;CAwBzB"}
@@ -0,0 +1,151 @@
1
+ const DEFAULT_AUTONOMY_LEVEL = 0.5;
2
+ const AUTONOMY_INCREASE_STEP = 0.05;
3
+ const AUTONOMY_DECREASE_STEP = 0.15;
4
+ const MIN_AUTONOMY = 0.1;
5
+ const MAX_AUTONOMY = 0.95;
6
+ const DEFAULT_TASK_AUTONOMY = {
7
+ 'code-generation': 0.4,
8
+ 'code-review': 0.7,
9
+ 'bug-fix': 0.3,
10
+ 'refactoring': 0.3,
11
+ 'documentation': 0.7,
12
+ 'testing': 0.6,
13
+ 'deployment': 0.2,
14
+ 'configuration': 0.3,
15
+ 'research': 0.9,
16
+ 'explanation': 0.9,
17
+ 'formatting': 0.8,
18
+ 'general': 0.5,
19
+ };
20
+ export class CalibratedAutonomy {
21
+ thresholds = new Map();
22
+ corrections = [];
23
+ globalAutonomyModifier = 0;
24
+ constructor() {
25
+ for (const [taskType, level] of Object.entries(DEFAULT_TASK_AUTONOMY)) {
26
+ this.thresholds.set(taskType, {
27
+ taskType,
28
+ autonomyLevel: level,
29
+ validationRequired: this.levelToValidation(level),
30
+ successCount: 0,
31
+ correctionCount: 0,
32
+ lastUpdated: new Date(),
33
+ });
34
+ }
35
+ }
36
+ evaluate(taskType, riskLevel) {
37
+ const threshold = this.getThreshold(taskType);
38
+ let adjustedLevel = threshold.autonomyLevel + this.globalAutonomyModifier;
39
+ if (riskLevel === 'high')
40
+ adjustedLevel -= 0.2;
41
+ else if (riskLevel === 'low')
42
+ adjustedLevel += 0.1;
43
+ adjustedLevel = Math.max(MIN_AUTONOMY, Math.min(MAX_AUTONOMY, adjustedLevel));
44
+ const validationRequired = this.levelToValidation(adjustedLevel);
45
+ const canActAutonomously = validationRequired === 'none' || validationRequired === 'inform';
46
+ const sampleSize = threshold.successCount + threshold.correctionCount;
47
+ const confidence = sampleSize >= 10 ? 0.9 : sampleSize >= 5 ? 0.7 : 0.5;
48
+ const reasoning = this.buildReasoning(taskType, adjustedLevel, threshold, riskLevel);
49
+ return {
50
+ canActAutonomously,
51
+ validationRequired,
52
+ confidence,
53
+ reasoning,
54
+ };
55
+ }
56
+ recordSuccess(taskType) {
57
+ const threshold = this.getThreshold(taskType);
58
+ threshold.successCount++;
59
+ threshold.autonomyLevel = Math.min(MAX_AUTONOMY, threshold.autonomyLevel + AUTONOMY_INCREASE_STEP);
60
+ threshold.validationRequired = this.levelToValidation(threshold.autonomyLevel);
61
+ threshold.lastUpdated = new Date();
62
+ }
63
+ recordCorrection(correction) {
64
+ const threshold = this.getThreshold(correction.taskType);
65
+ threshold.correctionCount++;
66
+ const penalty = correction.correctionType === 'reject' ? AUTONOMY_DECREASE_STEP * 2
67
+ : correction.correctionType === 'undo' ? AUTONOMY_DECREASE_STEP * 1.5
68
+ : AUTONOMY_DECREASE_STEP;
69
+ threshold.autonomyLevel = Math.max(MIN_AUTONOMY, threshold.autonomyLevel - penalty);
70
+ threshold.validationRequired = this.levelToValidation(threshold.autonomyLevel);
71
+ threshold.lastUpdated = new Date();
72
+ this.corrections.push(correction);
73
+ const recentCorrections = this.corrections.filter(c => Date.now() - c.timestamp.getTime() < 24 * 60 * 60 * 1000).length;
74
+ if (recentCorrections >= 3) {
75
+ this.globalAutonomyModifier = Math.max(-0.3, this.globalAutonomyModifier - 0.05);
76
+ }
77
+ if (this.corrections.length > 200) {
78
+ this.corrections = this.corrections.slice(-100);
79
+ }
80
+ }
81
+ getThresholds() {
82
+ return Array.from(this.thresholds.values());
83
+ }
84
+ getAutonomyReport() {
85
+ const lines = ['## Autonomy Calibration'];
86
+ const sorted = this.getThresholds().sort((a, b) => b.autonomyLevel - a.autonomyLevel);
87
+ for (const t of sorted) {
88
+ const bar = '█'.repeat(Math.round(t.autonomyLevel * 10)) + '░'.repeat(10 - Math.round(t.autonomyLevel * 10));
89
+ lines.push(`${t.taskType}: [${bar}] ${(t.autonomyLevel * 100).toFixed(0)}% (${t.validationRequired})`);
90
+ }
91
+ if (this.globalAutonomyModifier !== 0) {
92
+ lines.push(`\nGlobal modifier: ${this.globalAutonomyModifier > 0 ? '+' : ''}${(this.globalAutonomyModifier * 100).toFixed(0)}%`);
93
+ }
94
+ return lines.join('\n');
95
+ }
96
+ toPromptSection(currentTaskType) {
97
+ if (!currentTaskType)
98
+ return null;
99
+ const decision = this.evaluate(currentTaskType);
100
+ if (decision.validationRequired === 'none')
101
+ return null;
102
+ const lines = ['## Autonomy Guidelines'];
103
+ lines.push(`**Task type:** ${currentTaskType}`);
104
+ lines.push(`**Validation required:** ${decision.validationRequired}`);
105
+ lines.push(`**Reasoning:** ${decision.reasoning}`);
106
+ if (decision.validationRequired === 'confirm') {
107
+ lines.push('**Action:** Present your plan and ask for confirmation before proceeding.');
108
+ }
109
+ else if (decision.validationRequired === 'supervise') {
110
+ lines.push('**Action:** Present options and let the user decide. Do not act independently.');
111
+ }
112
+ return lines.join('\n');
113
+ }
114
+ getThreshold(taskType) {
115
+ if (!this.thresholds.has(taskType)) {
116
+ this.thresholds.set(taskType, {
117
+ taskType,
118
+ autonomyLevel: DEFAULT_TASK_AUTONOMY[taskType] ?? DEFAULT_AUTONOMY_LEVEL,
119
+ validationRequired: this.levelToValidation(DEFAULT_TASK_AUTONOMY[taskType] ?? DEFAULT_AUTONOMY_LEVEL),
120
+ successCount: 0,
121
+ correctionCount: 0,
122
+ lastUpdated: new Date(),
123
+ });
124
+ }
125
+ return this.thresholds.get(taskType);
126
+ }
127
+ levelToValidation(level) {
128
+ if (level >= 0.8)
129
+ return 'none';
130
+ if (level >= 0.6)
131
+ return 'inform';
132
+ if (level >= 0.35)
133
+ return 'confirm';
134
+ return 'supervise';
135
+ }
136
+ buildReasoning(taskType, level, threshold, riskLevel) {
137
+ const parts = [];
138
+ parts.push(`Autonomy for ${taskType}: ${(level * 100).toFixed(0)}%`);
139
+ if (threshold.successCount > 0 || threshold.correctionCount > 0) {
140
+ parts.push(`History: ${threshold.successCount} successes, ${threshold.correctionCount} corrections`);
141
+ }
142
+ if (riskLevel === 'high') {
143
+ parts.push('Risk level high — extra caution applied');
144
+ }
145
+ if (this.globalAutonomyModifier < -0.1) {
146
+ parts.push('Recent corrections reduced global autonomy');
147
+ }
148
+ return parts.join('. ') + '.';
149
+ }
150
+ }
151
+ //# sourceMappingURL=CalibratedAutonomy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CalibratedAutonomy.js","sourceRoot":"","sources":["../../src/advanced-ai/CalibratedAutonomy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ export type Emotion = 'neutral' | 'frustrated' | 'confused' | 'enthusiastic' | 'impatient' | 'satisfied';
2
+ export interface EmotionalState {
3
+ primary: Emotion;
4
+ intensity: number;
5
+ confidence: number;
6
+ signals: string[];
7
+ }
8
+ export type EngagementLevel = 'proactive' | 'responsive' | 'minimal';
9
+ export interface ToneGuidance {
10
+ suggestedTone: 'empathetic' | 'encouraging' | 'direct' | 'patient' | 'neutral';
11
+ engagementLevel: EngagementLevel;
12
+ reasoning: string;
13
+ }
14
+ export declare class EmotionalModel {
15
+ private emotionHistory;
16
+ private frustrationWindow;
17
+ inferEmotion(message: string): EmotionalState;
18
+ detectFrustration(): number;
19
+ getToneGuidance(state: EmotionalState): ToneGuidance;
20
+ toPromptSection(state: EmotionalState): string | null;
21
+ getEmotionTrend(): {
22
+ dominant: Emotion;
23
+ stability: number;
24
+ trend: 'improving' | 'stable' | 'worsening';
25
+ };
26
+ }
27
+ //# sourceMappingURL=EmotionalModel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmotionalModel.d.ts","sourceRoot":"","sources":["../../src/advanced-ai/EmotionalModel.ts"],"names":[],"mappings":"AAaA,MAAM,MAAM,OAAO,GAAG,SAAS,GAAG,YAAY,GAAG,UAAU,GAAG,cAAc,GAAG,WAAW,GAAG,WAAW,CAAC;AAEzG,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG,YAAY,GAAG,SAAS,CAAC;AAErE,MAAM,WAAW,YAAY;IACzB,aAAa,EAAE,YAAY,GAAG,aAAa,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;IAC/E,eAAe,EAAE,eAAe,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;CACrB;AAqCD,qBAAa,cAAc;IACvB,OAAO,CAAC,cAAc,CAAuE;IAC7F,OAAO,CAAC,iBAAiB,CAAgB;IAKzC,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc;IAwH7C,iBAAiB,IAAI,MAAM;IAiB3B,eAAe,CAAC,KAAK,EAAE,cAAc,GAAG,YAAY;IAqDpD,eAAe,CAAC,KAAK,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI;IAwBrD,eAAe,IAAI;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAA;KAAE;CAiC3G"}