@gmb/bitmark-parser-generator 1.2.0 → 1.2.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 (151) hide show
  1. package/dist/browser/bitmark-parser-generator-antlr.min.js +1 -1
  2. package/dist/browser/bitmark-parser-generator.min.js +1 -1
  3. package/dist/browser/bundle-report.html +2 -2
  4. package/dist/cjs/ast/BaseBuilder.js +22 -22
  5. package/dist/cjs/ast/BaseBuilder.js.map +1 -1
  6. package/dist/cjs/ast/Builder.js +137 -54
  7. package/dist/cjs/ast/Builder.js.map +1 -1
  8. package/dist/cjs/config/bits/flashcardBitConfig.js +6 -2
  9. package/dist/cjs/config/bits/flashcardBitConfig.js.map +1 -1
  10. package/dist/cjs/config/bits/generic/cardSetBitConfigs.js +15 -1
  11. package/dist/cjs/config/bits/generic/cardSetBitConfigs.js.map +1 -1
  12. package/dist/cjs/config/bits/generic/standardBitConfigs.js +18 -0
  13. package/dist/cjs/config/bits/generic/standardBitConfigs.js.map +1 -1
  14. package/dist/cjs/config/config.js +5 -1
  15. package/dist/cjs/config/config.js.map +1 -1
  16. package/dist/cjs/config/properties/colorTagPropertyConfig.js +8 -0
  17. package/dist/cjs/config/properties/colorTagPropertyConfig.js.map +1 -0
  18. package/dist/cjs/config/properties/iconPropertyConfig.js +9 -0
  19. package/dist/cjs/config/properties/iconPropertyConfig.js.map +1 -0
  20. package/dist/cjs/config/properties/iconTagPropertyConfig.js +9 -0
  21. package/dist/cjs/config/properties/iconTagPropertyConfig.js.map +1 -0
  22. package/dist/cjs/config/properties/tagPropertyConfig.js +8 -0
  23. package/dist/cjs/config/properties/tagPropertyConfig.js.map +1 -0
  24. package/dist/cjs/config/properties/targetPropertyConfig.js +8 -0
  25. package/dist/cjs/config/properties/targetPropertyConfig.js.map +1 -0
  26. package/dist/cjs/generated/build-info.js +1 -1
  27. package/dist/cjs/generated/parser/bitmark/bitmark-peggy-parser.js +161 -213
  28. package/dist/cjs/generated/parser/bitmark/bitmark-peggy-parser.js.map +1 -1
  29. package/dist/cjs/generator/bitmark/BitmarkGenerator.js +51 -4
  30. package/dist/cjs/generator/bitmark/BitmarkGenerator.js.map +1 -1
  31. package/dist/cjs/generator/json/JsonGenerator.js +49 -4
  32. package/dist/cjs/generator/json/JsonGenerator.js.map +1 -1
  33. package/dist/cjs/model/ast/NodeType.js +18 -0
  34. package/dist/cjs/model/ast/NodeType.js.map +1 -1
  35. package/dist/cjs/model/enum/BitType.js +13 -1
  36. package/dist/cjs/model/enum/BitType.js.map +1 -1
  37. package/dist/cjs/model/enum/CardSetType.js +1 -0
  38. package/dist/cjs/model/enum/CardSetType.js.map +1 -1
  39. package/dist/cjs/model/enum/PropertyKey.js +5 -0
  40. package/dist/cjs/model/enum/PropertyKey.js.map +1 -1
  41. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserHelper.js +21 -2
  42. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserHelper.js.map +1 -1
  43. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserTypes.js +1 -1
  44. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserTypes.js.map +1 -1
  45. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserValidator.js +10 -3
  46. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserValidator.js.map +1 -1
  47. package/dist/cjs/parser/bitmark/peg/contentProcessors/CardContentProcessor.js +148 -27
  48. package/dist/cjs/parser/bitmark/peg/contentProcessors/CardContentProcessor.js.map +1 -1
  49. package/dist/cjs/parser/bitmark/peg/contentProcessors/ExampleTagContentProcessor.js +4 -0
  50. package/dist/cjs/parser/bitmark/peg/contentProcessors/ExampleTagContentProcessor.js.map +1 -1
  51. package/dist/cjs/parser/json/JsonParser.js +24 -2
  52. package/dist/cjs/parser/json/JsonParser.js.map +1 -1
  53. package/dist/esm/ast/BaseBuilder.js +22 -22
  54. package/dist/esm/ast/BaseBuilder.js.map +1 -1
  55. package/dist/esm/ast/Builder.js +137 -54
  56. package/dist/esm/ast/Builder.js.map +1 -1
  57. package/dist/esm/config/bits/flashcardBitConfig.js +6 -2
  58. package/dist/esm/config/bits/flashcardBitConfig.js.map +1 -1
  59. package/dist/esm/config/bits/generic/cardSetBitConfigs.js +14 -1
  60. package/dist/esm/config/bits/generic/cardSetBitConfigs.js.map +1 -1
  61. package/dist/esm/config/bits/generic/standardBitConfigs.js +18 -0
  62. package/dist/esm/config/bits/generic/standardBitConfigs.js.map +1 -1
  63. package/dist/esm/config/config.js +5 -1
  64. package/dist/esm/config/config.js.map +1 -1
  65. package/dist/esm/config/properties/colorTagPropertyConfig.js +6 -0
  66. package/dist/esm/config/properties/colorTagPropertyConfig.js.map +1 -0
  67. package/dist/esm/config/properties/iconPropertyConfig.js +7 -0
  68. package/dist/esm/config/properties/iconPropertyConfig.js.map +1 -0
  69. package/dist/esm/config/properties/iconTagPropertyConfig.js +7 -0
  70. package/dist/esm/config/properties/iconTagPropertyConfig.js.map +1 -0
  71. package/dist/esm/config/properties/tagPropertyConfig.js +6 -0
  72. package/dist/esm/config/properties/tagPropertyConfig.js.map +1 -0
  73. package/dist/esm/config/properties/targetPropertyConfig.js +6 -0
  74. package/dist/esm/config/properties/targetPropertyConfig.js.map +1 -0
  75. package/dist/esm/generated/build-info.js +1 -1
  76. package/dist/esm/generated/parser/bitmark/bitmark-peggy-parser.js +161 -213
  77. package/dist/esm/generated/parser/bitmark/bitmark-peggy-parser.js.map +1 -1
  78. package/dist/esm/generator/bitmark/BitmarkGenerator.js +51 -4
  79. package/dist/esm/generator/bitmark/BitmarkGenerator.js.map +1 -1
  80. package/dist/esm/generator/json/JsonGenerator.js +49 -4
  81. package/dist/esm/generator/json/JsonGenerator.js.map +1 -1
  82. package/dist/esm/model/ast/NodeType.js +18 -0
  83. package/dist/esm/model/ast/NodeType.js.map +1 -1
  84. package/dist/esm/model/enum/BitType.js +13 -1
  85. package/dist/esm/model/enum/BitType.js.map +1 -1
  86. package/dist/esm/model/enum/CardSetType.js +1 -0
  87. package/dist/esm/model/enum/CardSetType.js.map +1 -1
  88. package/dist/esm/model/enum/PropertyKey.js +5 -0
  89. package/dist/esm/model/enum/PropertyKey.js.map +1 -1
  90. package/dist/esm/parser/bitmark/peg/BitmarkPegParserHelper.js +21 -2
  91. package/dist/esm/parser/bitmark/peg/BitmarkPegParserHelper.js.map +1 -1
  92. package/dist/esm/parser/bitmark/peg/BitmarkPegParserTypes.js +1 -1
  93. package/dist/esm/parser/bitmark/peg/BitmarkPegParserTypes.js.map +1 -1
  94. package/dist/esm/parser/bitmark/peg/BitmarkPegParserValidator.js +10 -3
  95. package/dist/esm/parser/bitmark/peg/BitmarkPegParserValidator.js.map +1 -1
  96. package/dist/esm/parser/bitmark/peg/contentProcessors/CardContentProcessor.js +149 -28
  97. package/dist/esm/parser/bitmark/peg/contentProcessors/CardContentProcessor.js.map +1 -1
  98. package/dist/esm/parser/bitmark/peg/contentProcessors/ExampleTagContentProcessor.js +4 -0
  99. package/dist/esm/parser/bitmark/peg/contentProcessors/ExampleTagContentProcessor.js.map +1 -1
  100. package/dist/esm/parser/json/JsonParser.js +24 -2
  101. package/dist/esm/parser/json/JsonParser.js.map +1 -1
  102. package/dist/types/ast/BaseBuilder.d.ts +8 -8
  103. package/dist/types/ast/Builder.d.ts +51 -6
  104. package/dist/types/ast/Builder.d.ts.map +1 -1
  105. package/dist/types/config/bits/generic/cardSetBitConfigs.d.ts +2 -1
  106. package/dist/types/config/bits/generic/cardSetBitConfigs.d.ts.map +1 -1
  107. package/dist/types/config/bits/generic/standardBitConfigs.d.ts.map +1 -1
  108. package/dist/types/config/config.d.ts +5 -1
  109. package/dist/types/config/config.d.ts.map +1 -1
  110. package/dist/types/config/properties/colorTagPropertyConfig.d.ts +2 -0
  111. package/dist/types/config/properties/colorTagPropertyConfig.d.ts.map +1 -0
  112. package/dist/types/config/properties/iconPropertyConfig.d.ts +2 -0
  113. package/dist/types/config/properties/iconPropertyConfig.d.ts.map +1 -0
  114. package/dist/types/config/properties/iconTagPropertyConfig.d.ts +2 -0
  115. package/dist/types/config/properties/iconTagPropertyConfig.d.ts.map +1 -0
  116. package/dist/types/config/properties/tagPropertyConfig.d.ts +2 -0
  117. package/dist/types/config/properties/tagPropertyConfig.d.ts.map +1 -0
  118. package/dist/types/config/properties/targetPropertyConfig.d.ts +2 -0
  119. package/dist/types/config/properties/targetPropertyConfig.d.ts.map +1 -0
  120. package/dist/types/generated/parser/bitmark/bitmark-peggy-parser.d.ts.map +1 -1
  121. package/dist/types/generator/bitmark/BitmarkGenerator.d.ts +6 -1
  122. package/dist/types/generator/bitmark/BitmarkGenerator.d.ts.map +1 -1
  123. package/dist/types/generator/json/JsonGenerator.d.ts +1 -0
  124. package/dist/types/generator/json/JsonGenerator.d.ts.map +1 -1
  125. package/dist/types/model/ast/NodeType.d.ts +32 -0
  126. package/dist/types/model/ast/NodeType.d.ts.map +1 -1
  127. package/dist/types/model/ast/Nodes.d.ts +17 -0
  128. package/dist/types/model/ast/Nodes.d.ts.map +1 -1
  129. package/dist/types/model/enum/BitType.d.ts +10 -2
  130. package/dist/types/model/enum/BitType.d.ts.map +1 -1
  131. package/dist/types/model/enum/CardSetType.d.ts +2 -0
  132. package/dist/types/model/enum/CardSetType.d.ts.map +1 -1
  133. package/dist/types/model/enum/PropertyKey.d.ts +10 -0
  134. package/dist/types/model/enum/PropertyKey.d.ts.map +1 -1
  135. package/dist/types/model/json/BitJson.d.ts +24 -7
  136. package/dist/types/model/json/BitJson.d.ts.map +1 -1
  137. package/dist/types/parser/bitmark/peg/BitmarkPegParserHelper.d.ts.map +1 -1
  138. package/dist/types/parser/bitmark/peg/BitmarkPegParserTypes.d.ts +7 -4
  139. package/dist/types/parser/bitmark/peg/BitmarkPegParserTypes.d.ts.map +1 -1
  140. package/dist/types/parser/bitmark/peg/BitmarkPegParserValidator.d.ts.map +1 -1
  141. package/dist/types/parser/bitmark/peg/contentProcessors/CardContentProcessor.d.ts.map +1 -1
  142. package/dist/types/parser/bitmark/peg/contentProcessors/ExampleTagContentProcessor.d.ts.map +1 -1
  143. package/dist/types/parser/json/JsonParser.d.ts +1 -0
  144. package/dist/types/parser/json/JsonParser.d.ts.map +1 -1
  145. package/package.json +1 -1
  146. package/dist/cjs/config/bits/flashcard1BitConfig.js +0 -11
  147. package/dist/cjs/config/bits/flashcard1BitConfig.js.map +0 -1
  148. package/dist/esm/config/bits/flashcard1BitConfig.js +0 -9
  149. package/dist/esm/config/bits/flashcard1BitConfig.js.map +0 -1
  150. package/dist/types/config/bits/flashcard1BitConfig.d.ts +0 -2
  151. package/dist/types/config/bits/flashcard1BitConfig.d.ts.map +0 -1
@@ -10,7 +10,7 @@ var __rest = (this && this.__rest) || function (s, e) {
10
10
  return t;
11
11
  };
12
12
  import { Builder } from '../../../../ast/Builder';
13
- import { RootBitType } from '../../../../model/enum/BitType';
13
+ import { AliasBitType, RootBitType } from '../../../../model/enum/BitType';
14
14
  import { CardSetType } from '../../../../model/enum/CardSetType';
15
15
  import { ResourceType } from '../../../../model/enum/ResourceType';
16
16
  import { BitmarkPegParserValidator } from '../BitmarkPegParserValidator';
@@ -28,6 +28,9 @@ function buildCards(context, bitType, parsedCardSet, statementV1, statementsV1,
28
28
  const meta = RootBitType.getMetadata(bitType.root);
29
29
  const cardSetType = meta && ((_a = meta.cardSet) === null || _a === void 0 ? void 0 : _a.type);
30
30
  switch (cardSetType) {
31
+ case CardSetType.flashcards:
32
+ result = parseFlashcards(context, bitType, processedCardSet);
33
+ break;
31
34
  case CardSetType.elements:
32
35
  result = parseElements(context, bitType, processedCardSet);
33
36
  break;
@@ -82,14 +85,16 @@ function processCardSet(context, bitType, parsedCardSet) {
82
85
  variants: [],
83
86
  };
84
87
  processedCard.sides.push(processedSide);
85
- for (const content of side.variants) {
88
+ for (const variant of side.variants) {
89
+ const { parser, content } = variant;
86
90
  const processedVariant = {
91
+ parser,
87
92
  no: variantNo++,
88
93
  };
89
94
  processedSide.variants.push(processedVariant);
90
95
  const tags = context.bitContentProcessor(BitContentLevel.Card, bitType, content);
91
96
  if (context.DEBUG_CARD_TAGS)
92
- context.debugPrint('card tags (elements)', tags);
97
+ context.debugPrint('card tags', tags);
93
98
  // Validate the cardBody
94
99
  tags.cardBody = BitmarkPegParserValidator.checkCardBody(context, BitContentLevel.Card, bitType, tags.cardBody, processedCard.no, processedSide.no, processedVariant.no);
95
100
  processedVariant.data = tags;
@@ -103,6 +108,60 @@ function processCardSet(context, bitType, parsedCardSet) {
103
108
  }
104
109
  return processedCardSet;
105
110
  }
111
+ function parseFlashcards(context, bitType, cardSet) {
112
+ const flashcards = [];
113
+ let question = '';
114
+ let answer;
115
+ let alternativeAnswers = [];
116
+ let cardIndex = 0;
117
+ let variantIndex = 0;
118
+ let extraTags = {};
119
+ let questionVariant;
120
+ const onlyOneCardAllowed = bitType.alias === AliasBitType.flashcard1;
121
+ for (const card of cardSet.cards) {
122
+ // Reset the question and answers
123
+ question = '';
124
+ answer = undefined;
125
+ alternativeAnswers = [];
126
+ variantIndex = 0;
127
+ extraTags = {};
128
+ for (const side of card.sides) {
129
+ for (const content of side.variants) {
130
+ const _a = content.data, { cardBody } = _a, tags = __rest(_a, ["cardBody"]);
131
+ extraTags = Object.assign(Object.assign({}, extraTags), tags);
132
+ if (variantIndex === 0) {
133
+ questionVariant = content;
134
+ question = cardBody !== null && cardBody !== void 0 ? cardBody : '';
135
+ }
136
+ else if (variantIndex === 1) {
137
+ answer = cardBody !== null && cardBody !== void 0 ? cardBody : '';
138
+ }
139
+ else {
140
+ alternativeAnswers.push(cardBody !== null && cardBody !== void 0 ? cardBody : '');
141
+ }
142
+ variantIndex++;
143
+ }
144
+ }
145
+ // Add the flashcard
146
+ if (cardIndex === 0 || !onlyOneCardAllowed) {
147
+ // if (question) {
148
+ flashcards.push(builder.flashcard(Object.assign({ question,
149
+ answer, alternativeAnswers: alternativeAnswers.length > 0 ? alternativeAnswers : undefined }, extraTags)));
150
+ // } else {
151
+ // context.addWarning('Ignoring card with empty question', questionVariant);
152
+ // }
153
+ }
154
+ else {
155
+ // Only one card allowed, add a warning and ignore the card
156
+ context.addWarning(`Bit '${bitType.alias}' should only contain one card. Ignore subsequent card: '${question}'`, questionVariant);
157
+ break;
158
+ }
159
+ cardIndex++;
160
+ }
161
+ return {
162
+ flashcards: flashcards.length > 0 ? flashcards : undefined,
163
+ };
164
+ }
106
165
  function parseElements(_context, _bitType, cardSet) {
107
166
  var _a;
108
167
  const elements = [];
@@ -110,7 +169,11 @@ function parseElements(_context, _bitType, cardSet) {
110
169
  for (const side of card.sides) {
111
170
  for (const content of side.variants) {
112
171
  const tags = content.data;
172
+ // if (tags.cardBody) {
113
173
  elements.push((_a = tags.cardBody) !== null && _a !== void 0 ? _a : '');
174
+ // } else {
175
+ // context.addWarning('Ignoring card with empty element', content);
176
+ // }
114
177
  }
115
178
  }
116
179
  }
@@ -129,8 +192,12 @@ function parseStatements(_context, _bitType, cardSet, statementV1, statementsV1)
129
192
  // As .true-false only has one statement per card, we can just add the extra tags to the statement.
130
193
  if (Array.isArray(chainedStatements)) {
131
194
  for (const s of chainedStatements) {
195
+ // if (s.text) {
132
196
  const statement = builder.statement(Object.assign(Object.assign(Object.assign({}, s), s.itemLead), tags));
133
197
  statements.push(statement);
198
+ // } else {
199
+ // context.addWarning('Ignoring card with empty statement', content);
200
+ // }
134
201
  }
135
202
  }
136
203
  }
@@ -177,8 +244,12 @@ function parseQuiz(_context, bitType, cardSet, choicesV1, responsesV1) {
177
244
  }
178
245
  }
179
246
  }
247
+ // if (tags.choices || tags.responses) {
180
248
  const quiz = builder.quiz(Object.assign(Object.assign({}, tags), { isDefaultExample }));
181
249
  quizzes.push(quiz);
250
+ // } else {
251
+ // context.addWarning('Ignoring card with empty quiz', content);
252
+ // }
182
253
  }
183
254
  }
184
255
  }
@@ -206,8 +277,13 @@ function parseQuestions(_context, _bitType, cardSet) {
206
277
  for (const side of card.sides) {
207
278
  for (const content of side.variants) {
208
279
  const tags = content.data;
280
+ // if (tags.cardBody) {
209
281
  const q = builder.question(Object.assign({ question: (_a = tags.cardBody) !== null && _a !== void 0 ? _a : '' }, tags));
210
282
  questions.push(q);
283
+ // }
284
+ // else {
285
+ // context.addWarning('Ignoring card with empty body text', content);
286
+ // }
211
287
  }
212
288
  }
213
289
  }
@@ -226,6 +302,11 @@ function parseMatchPairs(_context, _bitType, cardSet) {
226
302
  let keyAudio = undefined;
227
303
  let keyImage = undefined;
228
304
  let extraTags = {};
305
+ let isDefaultExampleCard = false;
306
+ let exampleCard;
307
+ let isDefaultExampleSide = false;
308
+ let exampleSide;
309
+ // let variant: ProcessedCardVariant | undefined;
229
310
  for (const card of cardSet.cards) {
230
311
  forKeys = undefined;
231
312
  pairKey = undefined;
@@ -234,16 +315,23 @@ function parseMatchPairs(_context, _bitType, cardSet) {
234
315
  keyImage = undefined;
235
316
  sideIdx = 0;
236
317
  extraTags = {};
318
+ isDefaultExampleSide = false;
319
+ exampleSide = '';
237
320
  for (const side of card.sides) {
238
321
  for (const content of side.variants) {
322
+ // variant = content;
239
323
  const _a = content.data, { cardBody, title, resources, isDefaultExample, example } = _a, tags = __rest(_a, ["cardBody", "title", "resources", "isDefaultExample", "example"]);
240
- const isExample = isDefaultExample || example != undefined;
324
+ // Example
325
+ isDefaultExampleSide = isDefaultExample === true ? true : isDefaultExampleSide;
326
+ exampleSide = example ? example : exampleSide;
241
327
  // Get the 'heading' which is the [#title] at level 1
242
328
  const heading = title && title[1];
243
329
  if (sideIdx === 0) {
244
330
  // First side
245
331
  if (heading != null) {
246
332
  forKeys = heading;
333
+ isDefaultExampleCard = isDefaultExample === true ? true : isDefaultExampleCard;
334
+ exampleCard = example ? example : exampleCard;
247
335
  }
248
336
  else if (Array.isArray(resources) && resources.length > 0) {
249
337
  // TODO - should search the correct resource type based on the bit type
@@ -265,18 +353,19 @@ function parseMatchPairs(_context, _bitType, cardSet) {
265
353
  // Subsequent sides
266
354
  if (heading != null) {
267
355
  forValues.push(heading);
356
+ isDefaultExampleCard = isDefaultExample === true ? true : isDefaultExampleCard;
357
+ exampleCard = example ? example : exampleCard;
268
358
  }
269
359
  else if (title == null) {
270
360
  // If not a heading, it is a pair
271
- pairValues.push(cardBody !== null && cardBody !== void 0 ? cardBody : '');
361
+ const value = cardBody !== null && cardBody !== void 0 ? cardBody : '';
362
+ pairValues.push(value);
363
+ if ((isDefaultExampleCard || isDefaultExampleSide) && !exampleSide)
364
+ exampleSide = value;
272
365
  }
273
366
  }
274
367
  // Extra tags
275
368
  extraTags = Object.assign(Object.assign(Object.assign({}, extraTags), tags), { isCaseSensitive: true });
276
- // Allow example from any card side
277
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
278
- if (isExample)
279
- extraTags.isDefaultExample = true;
280
369
  }
281
370
  sideIdx++;
282
371
  }
@@ -287,9 +376,19 @@ function parseMatchPairs(_context, _bitType, cardSet) {
287
376
  });
288
377
  }
289
378
  else {
290
- const pair = builder.pair(Object.assign({ key: pairKey !== null && pairKey !== void 0 ? pairKey : '', keyAudio,
291
- keyImage, values: pairValues, isShortAnswer: true }, extraTags));
379
+ // if (pairKey || keyAudio || keyImage) {
380
+ // Calculate final example and isDefaultExample
381
+ if (isDefaultExampleSide)
382
+ exampleCard = undefined;
383
+ const isDefaultExample = isDefaultExampleSide || isDefaultExampleCard;
384
+ const example = exampleSide || exampleCard;
385
+ const pair = builder.pair(Object.assign(Object.assign({ key: pairKey !== null && pairKey !== void 0 ? pairKey : '', keyAudio,
386
+ keyImage, values: pairValues, isShortAnswer: true }, extraTags), { isDefaultExample,
387
+ example }));
292
388
  pairs.push(pair);
389
+ // } else {
390
+ // context.addWarning('Ignoring card with empty body text', variant);
391
+ // }
293
392
  }
294
393
  }
295
394
  return {
@@ -307,11 +406,15 @@ function parseMatchMatrix(_context, _bitType, cardSet) {
307
406
  let matrixCells = [];
308
407
  let matrixCellValues = [];
309
408
  let matrixCellTags = {};
310
- let extraTagsSideLevel = {};
311
- let isDefaultExampleAllLevel = false;
312
- let isDefaultExampleMartixLevel = false;
409
+ let isDefaultExampleCard = false;
410
+ let exampleCard;
411
+ let isDefaultExampleSide = false;
412
+ let exampleSide;
413
+ let isDefaultExampleVariant = false;
414
+ let exampleVariant;
313
415
  // let keyAudio: AudioResource | undefined = undefined;
314
416
  // let keyImage: ImageResource | undefined = undefined;
417
+ // let variant: ProcessedCardVariant | undefined;
315
418
  for (const card of cardSet.cards) {
316
419
  forKeys = undefined;
317
420
  matrixKey = undefined;
@@ -320,15 +423,20 @@ function parseMatchMatrix(_context, _bitType, cardSet) {
320
423
  matrixCells = [];
321
424
  matrixCellValues = [];
322
425
  sideIdx = 0;
323
- isDefaultExampleMartixLevel = false;
426
+ isDefaultExampleSide = false;
427
+ exampleSide = '';
324
428
  for (const side of card.sides) {
325
429
  matrixCellValues = [];
326
430
  matrixCellTags = {};
327
- extraTagsSideLevel = {};
431
+ isDefaultExampleVariant = false;
432
+ exampleVariant = '';
328
433
  for (const content of side.variants) {
434
+ // variant = content;
329
435
  const tags = content.data;
330
436
  const { title, cardBody, isDefaultExample, example } = tags, restTags = __rest(tags, ["title", "cardBody", "isDefaultExample", "example"]);
331
- const isExample = isDefaultExample || example != undefined;
437
+ // Example
438
+ isDefaultExampleVariant = isDefaultExample === true ? true : isDefaultExampleVariant;
439
+ exampleVariant = example ? example : exampleVariant;
332
440
  // Merge the tags into the matrix cell tags
333
441
  Object.assign(matrixCellTags, restTags);
334
442
  // Get the 'heading' which is the [#title] at level 1
@@ -344,33 +452,43 @@ function parseMatchMatrix(_context, _bitType, cardSet) {
344
452
  // } else if (tags.resource.type === ResourceType.image) {
345
453
  // keyImage = tags.resource as ImageResource;
346
454
  // }
347
- isDefaultExampleAllLevel = isExample ? true : isDefaultExampleAllLevel;
455
+ isDefaultExampleCard = isDefaultExample === true ? true : isDefaultExampleCard;
456
+ exampleCard = example ? example : exampleCard;
348
457
  }
349
458
  else {
350
459
  // If not a heading or resource, it is a matrix
351
460
  matrixKey = cardBody;
352
- isDefaultExampleMartixLevel = isExample ? true : isDefaultExampleMartixLevel;
461
+ isDefaultExampleSide = isDefaultExample === true ? true : isDefaultExampleSide;
462
+ exampleSide = example ? example : exampleSide;
353
463
  }
354
464
  }
355
465
  else {
356
466
  // Subsequent sides
357
467
  if (heading != null) {
358
468
  forValues.push(heading);
359
- // isDefaultExampleMartixLevel = isExample ? true : isDefaultExampleAllLevel;
469
+ isDefaultExampleCard = isDefaultExample === true ? true : isDefaultExampleCard;
470
+ exampleCard = example ? example : exampleCard;
360
471
  }
361
472
  else if (tags.title == null) {
362
- // If not a heading, it is a matrix
363
- matrixCellValues.push(cardBody !== null && cardBody !== void 0 ? cardBody : '');
473
+ // If not a heading, it is a matrix cell value
474
+ const value = cardBody !== null && cardBody !== void 0 ? cardBody : '';
475
+ matrixCellValues.push(value);
476
+ if ((isDefaultExampleCard || isDefaultExampleVariant) && !exampleVariant)
477
+ exampleVariant = value;
364
478
  }
365
479
  }
366
- // Allow example from any card side
367
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
368
- if (isExample)
369
- extraTagsSideLevel.isDefaultExample = true;
370
480
  }
371
481
  // Finished looping variants, create matrix cell
372
482
  if (sideIdx > 0) {
373
- const matrixCell = builder.matrixCell(Object.assign(Object.assign({ values: matrixCellValues }, matrixCellTags), extraTagsSideLevel));
483
+ // Calculate final example and isDefaultExample
484
+ if (isDefaultExampleVariant)
485
+ exampleSide = exampleCard = undefined;
486
+ if (isDefaultExampleSide)
487
+ exampleCard = undefined;
488
+ const isDefaultExample = isDefaultExampleVariant || isDefaultExampleSide || isDefaultExampleCard;
489
+ const example = exampleVariant || exampleSide || exampleCard;
490
+ const matrixCell = builder.matrixCell(Object.assign(Object.assign({ values: matrixCellValues }, matrixCellTags), { isDefaultExample,
491
+ example }));
374
492
  matrixCells.push(matrixCell);
375
493
  }
376
494
  sideIdx++;
@@ -382,6 +500,7 @@ function parseMatchMatrix(_context, _bitType, cardSet) {
382
500
  });
383
501
  }
384
502
  else {
503
+ // if (matrixKey) {
385
504
  const m = builder.matrix({
386
505
  key: matrixKey !== null && matrixKey !== void 0 ? matrixKey : '',
387
506
  // keyAudio,
@@ -389,9 +508,11 @@ function parseMatchMatrix(_context, _bitType, cardSet) {
389
508
  cells: matrixCells,
390
509
  isShortAnswer: true,
391
510
  isCaseSensitive: true,
392
- isDefaultExample: isDefaultExampleAllLevel || isDefaultExampleMartixLevel,
393
511
  });
394
512
  matrix.push(m);
513
+ // } else {
514
+ // context.addWarning('Ignoring card with empty body text', variant);
515
+ // }
395
516
  }
396
517
  }
397
518
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"CardContentProcessor.js","sourceRoot":"","sources":["../../../../../../src/parser/bitmark/peg/contentProcessors/CardContentProcessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CardContentProcessor.js","sourceRoot":"","sources":["../../../../../../src/parser/bitmark/peg/contentProcessors/CardContentProcessor.ts"],"names":[],"mappings":"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"}
@@ -29,10 +29,12 @@ function handleGapOrSelectExample(context, bitType, example, target) {
29
29
  if (trueFalse) {
30
30
  if (example === true) {
31
31
  trueFalse.isDefaultExample = true;
32
+ trueFalse.example = undefined;
32
33
  }
33
34
  else {
34
35
  // TODO: This should raise a warning, because a value on the example tag is not allowed for select
35
36
  trueFalse.isDefaultExample = true;
37
+ trueFalse.example = undefined;
36
38
  }
37
39
  }
38
40
  else if (Array.isArray(target.solutions) && target.solutions.length > 0) {
@@ -50,10 +52,12 @@ function handleGapOrSelectExample(context, bitType, example, target) {
50
52
  }
51
53
  function handleDefaultOnlyExample(_context, _bitType, _example, target) {
52
54
  target.isDefaultExample = true;
55
+ target.example = undefined;
53
56
  }
54
57
  function handleStandardExample(_context, _bitType, example, target) {
55
58
  if (example === true) {
56
59
  target.isDefaultExample = true;
60
+ target.example = undefined;
57
61
  }
58
62
  else {
59
63
  target.example = example;
@@ -1 +1 @@
1
- {"version":3,"file":"ExampleTagContentProcessor.js","sourceRoot":"","sources":["../../../../../../src/parser/bitmark/peg/contentProcessors/ExampleTagContentProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAW,MAAM,gCAAgC,CAAC;AAWtE,iCAAiC;AAEjC,SAAS,0BAA0B,CACjC,OAAgC,EAChC,SAA8B,EAC9B,OAAgB,EAChB,OAAmB,EACnB,MAAiC;IAEjC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAoB,CAAC;IACvC,MAAM,OAAO,GAAG,KAAyB,CAAC;IAE1C,iDAAiD;IAEjD,QAAQ,OAAO,CAAC,IAAI,EAAE;QACpB,KAAK,WAAW,CAAC,KAAK,CAAC;QACvB,KAAK,WAAW,CAAC,0BAA0B,CAAC;QAC5C,KAAK,WAAW,CAAC,kBAAkB,CAAC;QACpC,KAAK,WAAW,CAAC,aAAa;YAC5B,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAC5D,MAAM;QACR,KAAK,WAAW,CAAC,IAAI;YACnB,gCAAgC;YAChC,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAC5D,MAAM;QACR;YACE,4BAA4B;YAC5B,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;KAC5D;AACH,CAAC;AAED,SAAS,wBAAwB,CAC/B,OAAgC,EAChC,OAAgB,EAChB,OAAyB,EACzB,MAAiC;;IAEjC,IAAI,SAAqC,CAAC;IAE1C,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;QAClE,SAAS,GAAG,MAAA,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,mCAAI,SAAS,CAAC;KACxE;IAED,IAAI,SAAS,EAAE;QACb,IAAI,OAAO,KAAK,IAAI,EAAE;YACpB,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC;SACnC;aAAM;YACL,kGAAkG;YAClG,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC;SACnC;KACF;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;QACzE,IAAI,OAAO,KAAK,IAAI,EAAE;YACpB,mEAAmE;YACnE,MAAM,CAAC,OAAO,GAAG,MAAA,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,mCAAI,SAAS,CAAC;SAC7E;aAAM;YACL,MAAM,CAAC,OAAO,GAAG,OAAiB,CAAC;SACpC;KACF;SAAM;QACL,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;KAC1D;AACH,CAAC;AAED,SAAS,wBAAwB,CAC/B,QAAiC,EACjC,QAAiB,EACjB,QAA0B,EAC1B,MAAiC;IAEjC,MAAM,CAAC,gBAAgB,GAAG,IAAI,CAAC;AACjC,CAAC;AAED,SAAS,qBAAqB,CAC5B,QAAiC,EACjC,QAAiB,EACjB,OAAyB,EACzB,MAAiC;IAEjC,IAAI,OAAO,KAAK,IAAI,EAAE;QACpB,MAAM,CAAC,gBAAgB,GAAG,IAAI,CAAC;KAChC;SAAM;QACL,MAAM,CAAC,OAAO,GAAG,OAAiB,CAAC;KACpC;AACH,CAAC;AAED,OAAO,EAAE,0BAA0B,EAAE,CAAC"}
1
+ {"version":3,"file":"ExampleTagContentProcessor.js","sourceRoot":"","sources":["../../../../../../src/parser/bitmark/peg/contentProcessors/ExampleTagContentProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAW,MAAM,gCAAgC,CAAC;AAWtE,iCAAiC;AAEjC,SAAS,0BAA0B,CACjC,OAAgC,EAChC,SAA8B,EAC9B,OAAgB,EAChB,OAAmB,EACnB,MAAiC;IAEjC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAoB,CAAC;IACvC,MAAM,OAAO,GAAG,KAAyB,CAAC;IAE1C,iDAAiD;IAEjD,QAAQ,OAAO,CAAC,IAAI,EAAE;QACpB,KAAK,WAAW,CAAC,KAAK,CAAC;QACvB,KAAK,WAAW,CAAC,0BAA0B,CAAC;QAC5C,KAAK,WAAW,CAAC,kBAAkB,CAAC;QACpC,KAAK,WAAW,CAAC,aAAa;YAC5B,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAC5D,MAAM;QACR,KAAK,WAAW,CAAC,IAAI;YACnB,gCAAgC;YAChC,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAC5D,MAAM;QACR;YACE,4BAA4B;YAC5B,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;KAC5D;AACH,CAAC;AAED,SAAS,wBAAwB,CAC/B,OAAgC,EAChC,OAAgB,EAChB,OAAyB,EACzB,MAAiC;;IAEjC,IAAI,SAAqC,CAAC;IAE1C,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;QAClE,SAAS,GAAG,MAAA,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,mCAAI,SAAS,CAAC;KACxE;IAED,IAAI,SAAS,EAAE;QACb,IAAI,OAAO,KAAK,IAAI,EAAE;YACpB,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAClC,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC;SAC/B;aAAM;YACL,kGAAkG;YAClG,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAClC,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC;SAC/B;KACF;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;QACzE,IAAI,OAAO,KAAK,IAAI,EAAE;YACpB,mEAAmE;YACnE,MAAM,CAAC,OAAO,GAAG,MAAA,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,mCAAI,SAAS,CAAC;SAC7E;aAAM;YACL,MAAM,CAAC,OAAO,GAAG,OAAiB,CAAC;SACpC;KACF;SAAM;QACL,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;KAC1D;AACH,CAAC;AAED,SAAS,wBAAwB,CAC/B,QAAiC,EACjC,QAAiB,EACjB,QAA0B,EAC1B,MAAiC;IAEjC,MAAM,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAC/B,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;AAC7B,CAAC;AAED,SAAS,qBAAqB,CAC5B,QAAiC,EACjC,QAAiB,EACjB,OAAyB,EACzB,MAAiC;IAEjC,IAAI,OAAO,KAAK,IAAI,EAAE;QACpB,MAAM,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC/B,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;KAC5B;SAAM;QACL,MAAM,CAAC,OAAO,GAAG,OAAiB,CAAC;KACpC;AACH,CAAC;AAED,OAAO,EAAE,0BAA0B,EAAE,CAAC"}
@@ -119,7 +119,7 @@ class JsonParser {
119
119
  }
120
120
  bitToAst(bit) {
121
121
  var _a;
122
- const { type, format, id, externalId, spaceId, padletId, AIGenerated, releaseVersion, ageRange, language, computerLanguage, subtype, coverImage, publisher, publications, author, date, location, theme, kind, action, thumbImage, focusX, focusY, duration, deeplink, externalLink, externalLinkText, videoCallLink, bot, list, textReference, isTracked, isInfoOnly, labelTrue, labelFalse, quotedPerson, book, title, subtitle, level, toc, progress, anchor, reference: referenceIn, referenceEnd, item, lead, hint, instruction, example, partner, marks, resource, body, sampleSolution, elements, statement, isCorrect, statements, responses, quizzes, heading, pairs, matrix, choices, questions, footer, placeholders, } = bit;
122
+ const { type, format, id, externalId, spaceId, padletId, AIGenerated, releaseVersion, ageRange, language, computerLanguage, target, tag, icon, iconTag, colorTag, subtype, coverImage, publisher, publications, author, date, location, theme, kind, action, thumbImage, focusX, focusY, duration, deeplink, externalLink, externalLinkText, videoCallLink, bot, list, textReference, isTracked, isInfoOnly, labelTrue, labelFalse, quotedPerson, book, title, subtitle, level, toc, progress, anchor, reference: referenceIn, referenceEnd, item, lead, hint, instruction, example, partner, marks, resource, body, sampleSolution, elements, statement, isCorrect, cards, statements, responses, quizzes, heading, pairs, matrix, choices, questions, footer, placeholders, } = bit;
123
123
  // Bit type
124
124
  const bitType = BitTypeUtils.getBitType(type);
125
125
  // Text Format
@@ -132,6 +132,8 @@ class JsonParser {
132
132
  const partnerNode = this.partnerBitToAst(partner);
133
133
  // Mark Config
134
134
  const markConfigNode = this.markConfigBitToAst(marks);
135
+ // flashcards
136
+ const flashcardNodes = this.flashcardBitsToAst(cards);
135
137
  //+-statement
136
138
  const statementNodes = this.statementBitsToAst(statement, isCorrect, statements, example);
137
139
  //+-response
@@ -162,6 +164,11 @@ class JsonParser {
162
164
  ageRange,
163
165
  language,
164
166
  computerLanguage,
167
+ target,
168
+ tag,
169
+ icon,
170
+ iconTag,
171
+ colorTag,
165
172
  subtype,
166
173
  coverImage,
167
174
  publisher,
@@ -194,7 +201,7 @@ class JsonParser {
194
201
  progress,
195
202
  anchor,
196
203
  reference,
197
- referenceEnd }, this.parseItemLeadHintInstruction(item, lead, hint, instruction)), this.parseExample(example)), { partner: partnerNode, markConfig: markConfigNode, resource: resourceNode, body: bodyNode, sampleSolution: sampleSolution, elements, statements: statementNodes, responses: responseNodes, quizzes: quizNodes, heading: headingNode, pairs: pairsNodes, matrix: matrixNodes, choices: choiceNodes, questions: questionNodes, botResponses: botResponseNodes, footer: footerNode }));
204
+ referenceEnd }, this.parseItemLeadHintInstruction(item, lead, hint, instruction)), this.parseExample(example)), { partner: partnerNode, markConfig: markConfigNode, resource: resourceNode, body: bodyNode, sampleSolution: sampleSolution, elements, flashcards: flashcardNodes, statements: statementNodes, responses: responseNodes, quizzes: quizNodes, heading: headingNode, pairs: pairsNodes, matrix: matrixNodes, choices: choiceNodes, questions: questionNodes, botResponses: botResponseNodes, footer: footerNode }));
198
205
  return bitNode;
199
206
  }
200
207
  partnerBitToAst(partner) {
@@ -222,6 +229,21 @@ class JsonParser {
222
229
  return undefined;
223
230
  return nodes;
224
231
  }
232
+ flashcardBitsToAst(flashcards) {
233
+ const nodes = [];
234
+ if (Array.isArray(flashcards)) {
235
+ for (const c of flashcards) {
236
+ const { question, answer, alternativeAnswers, item, lead, hint, instruction, example } = c;
237
+ const node = builder.flashcard(Object.assign(Object.assign({ question,
238
+ answer,
239
+ alternativeAnswers }, this.parseItemLeadHintInstruction(item, lead, hint, instruction)), this.parseExample(example)));
240
+ nodes.push(node);
241
+ }
242
+ }
243
+ if (nodes.length === 0)
244
+ return undefined;
245
+ return nodes;
246
+ }
225
247
  statementBitsToAst(statement, isCorrect, statements, example) {
226
248
  const nodes = [];
227
249
  if (statement) {
@@ -1 +1 @@
1
- {"version":3,"file":"JsonParser.js","sourceRoot":"","sources":["../../../../src/parser/json/JsonParser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JsonParser.js","sourceRoot":"","sources":["../../../../src/parser/json/JsonParser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAEnE,OAAO,EAAW,YAAY,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAoB,MAAM,+BAA+B,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAkB,MAAM,6BAA6B,CAAC;AAGzE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AA6EtD,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAC9B,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;AAE9C;;GAEG;AACH,MAAM,UAAU;IAGd;QACE,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;IAC3C,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,IAAa;QACjB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,SAAS,GAAsB,EAAE,CAAC;QAExC,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE;YACpC,MAAM,EAAE,GAAG,EAAE,GAAG,UAAU,CAAC;YAE3B,mBAAmB;YACnB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YACpC,IAAI,QAAQ,EAAE;gBACZ,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC1B;SACF;QAED,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAE7D,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAElC,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;;;OAMG;IACH,cAAc,CAAC,IAAsB;QACnC,MAAM,WAAW,GAAqB,EAAE,CAAC;QAEzC,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;YAC9B,MAAM,GAAG,GAAG,IAAc,CAAC;YAC3B,IAAI;gBACF,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;aACxB;YAAC,OAAO,CAAC,EAAE;gBACV,2CAA2C;gBAC3C,OAAO,EAAE,CAAC;aACX;SACF;QAED,+GAA+G;QAC/G,MAAM,oBAAoB,GAAG,CAAC,IAAa,EAAQ,EAAE;YACnD,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;gBAC3B,MAAM,CAAC,GAAG,IAAsB,CAAC;gBACjC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACrB;iBAAM,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;gBAC3B,MAAM,CAAC,GAAG,IAAe,CAAC;gBAC1B,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;aAC3C;QACH,CAAC,CAAC;QAEF,qGAAqG;QACrG,mBAAmB;QACnB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACvB,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE;gBACvB,oBAAoB,CAAC,IAAI,CAAC,CAAC;aAC5B;SACF;aAAM;YACL,oBAAoB,CAAC,IAAI,CAAC,CAAC;SAC5B;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACH,YAAY,CAAC,UAAmB;QAC9B,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE;YAC3D,MAAM,CAAC,GAAG,UAA4B,CAAC;YACvC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;SAC1B;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,GAAY;QAChB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE;YACrD,MAAM,CAAC,GAAG,GAAc,CAAC;YACzB,OAAO,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,MAAM,CAAC;SACpE;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACH,eAAe,CAAC,GAAY;QAC1B,OAAO;YACL,GAAG;SACJ,CAAC;IACJ,CAAC;IAEO,QAAQ,CAAC,GAAY;;QAC3B,MAAM,EACJ,IAAI,EACJ,MAAM,EACN,EAAE,EACF,UAAU,EACV,OAAO,EACP,QAAQ,EACR,WAAW,EACX,cAAc,EACd,QAAQ,EACR,QAAQ,EACR,gBAAgB,EAChB,MAAM,EACN,GAAG,EACH,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,OAAO,EACP,UAAU,EACV,SAAS,EACT,YAAY,EACZ,MAAM,EACN,IAAI,EACJ,QAAQ,EACR,KAAK,EACL,IAAI,EACJ,MAAM,EACN,UAAU,EACV,MAAM,EACN,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,GAAG,EACH,IAAI,EACJ,aAAa,EACb,SAAS,EACT,UAAU,EACV,SAAS,EACT,UAAU,EACV,YAAY,EACZ,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,KAAK,EACL,GAAG,EACH,QAAQ,EACR,MAAM,EACN,SAAS,EAAE,WAAW,EACtB,YAAY,EACZ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,WAAW,EACX,OAAO,EACP,OAAO,EACP,KAAK,EACL,QAAQ,EACR,IAAI,EACJ,cAAc,EACd,QAAQ,EACR,SAAS,EACT,SAAS,EACT,KAAK,EACL,UAAU,EACV,SAAS,EACT,OAAO,EACP,OAAO,EACP,KAAK,EACL,MAAM,EACN,OAAO,EACP,SAAS,EACT,MAAM,EACN,YAAY,GACb,GAAG,GAAG,CAAC;QAER,WAAW;QACX,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAE9C,cAAc;QACd,MAAM,UAAU,GAAG,MAAA,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,mCAAI,UAAU,CAAC,iBAAiB,CAAC;QAEhF,WAAW;QACX,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAErD,sBAAsB;QACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;QAEhE,UAAU;QACV,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAElD,cAAc;QACd,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAEtD,aAAa;QACb,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAEtD,aAAa;QACb,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QAE1F,YAAY;QACZ,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,SAA2B,CAAC,CAAC;QAEnF,UAAU;QACV,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAEvD,UAAU;QACV,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAElD,QAAQ;QACR,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAE7C,SAAS;QACT,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAEjD,UAAU;QACV,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAElD,YAAY;QACZ,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAExD,eAAe;QACf,MAAM,gBAAgB,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,SAA8B,CAAC,CAAC;QAE5F,SAAS;QACT,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAExD,yCAAyC;QACzC,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAE1E,YAAY;QACZ,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,6CACzB,OAAO,EACP,UAAU,EAAE,MAAwB,EACpC,EAAE;YACF,UAAU;YACV,OAAO;YACP,QAAQ,EACR,WAAW,EAAE,WAAW,EACxB,cAAc;YACd,QAAQ;YACR,QAAQ;YACR,gBAAgB;YAChB,MAAM;YACN,GAAG;YACH,IAAI;YACJ,OAAO;YACP,QAAQ;YACR,OAAO;YACP,UAAU;YACV,SAAS;YACT,YAAY;YACZ,MAAM;YACN,IAAI;YACJ,QAAQ;YACR,KAAK;YACL,IAAI;YACJ,MAAM;YACN,QAAQ;YACR,iBAAiB;YACjB,UAAU;YACV,MAAM;YACN,MAAM;YACN,QAAQ;YACR,YAAY;YACZ,gBAAgB;YAChB,aAAa;YACb,GAAG;YACH,IAAI;YACJ,aAAa;YACb,SAAS;YACT,UAAU;YACV,SAAS;YACT,UAAU;YACV,YAAY;YACZ,IAAI,EACJ,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAC5B,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAClC,KAAK;YACL,GAAG;YACH,QAAQ;YACR,MAAM;YACN,SAAS;YACT,YAAY,IACT,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,GAChE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAC7B,OAAO,EAAE,WAAW,EACpB,UAAU,EAAE,cAAc,EAC1B,QAAQ,EAAE,YAAY,EACtB,IAAI,EAAE,QAAQ,EACd,cAAc,EAAE,cAAc,EAC9B,QAAQ,EACR,UAAU,EAAE,cAAc,EAC1B,UAAU,EAAE,cAAc,EAC1B,SAAS,EAAE,aAAa,EACxB,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,aAAa,EACxB,YAAY,EAAE,gBAAgB,EAC9B,MAAM,EAAE,UAAU,IAClB,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,eAAe,CAAC,OAAqB;QAC3C,IAAI,IAAyB,CAAC;QAE9B,IAAI,OAAO,EAAE;YACX,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,WAAW,CAA8B,CAAC;YACjH,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;SAC7D;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,kBAAkB,CAAC,KAAwB;QACjD,MAAM,KAAK,GAAiB,EAAE,CAAC;QAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE;gBACrB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;gBACpC,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC;oBAC9B,IAAI;oBACJ,KAAK;oBACL,QAAQ;iBACT,CAAC,CAAC;gBACH,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClB;SACF;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAEzC,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,kBAAkB,CAAC,UAA4B;QACrD,MAAM,KAAK,GAAgB,EAAE,CAAC;QAC9B,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YAC7B,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE;gBAC1B,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;gBAC3F,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,+BAC5B,QAAQ;oBACR,MAAM;oBACN,kBAAkB,IACf,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,GAChE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAC7B,CAAC;gBACH,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClB;SACF;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAEzC,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,kBAAkB,CACxB,SAAkB,EAClB,SAAmB,EACnB,UAA4B,EAC5B,OAAqB;QAErB,MAAM,KAAK,GAAgB,EAAE,CAAC;QAE9B,IAAI,SAAS,EAAE;YACb,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,iBAAG,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,KAAK,IAAK,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAG,CAAC;YAClH,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAClB;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YAC7B,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE;gBAC1B,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,CAAC,CAAC;gBAC5F,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,6CAC5B,IAAI,EAAE,SAAS,EACf,SAAS,IACN,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,GAChE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAC7B,eAAe,IACf,CAAC;gBACH,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClB;SACF;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAEzC,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,eAAe,CAAC,OAAsB;QAC5C,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC1B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE;gBACvB,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,CAAC,CAAC;gBACzF,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,6CACzB,IAAI,EAAE,MAAM,EACZ,SAAS,IACN,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,GAChE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAC7B,eAAe,IACf,CAAC;gBACH,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClB;SACF;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAEzC,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,iBAAiB,CAAC,OAAgB,EAAE,SAA0B;QACpE,MAAM,KAAK,GAAe,EAAE,CAAC;QAE7B,uFAAuF;QACvF,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,iBAAiB;YAAE,OAAO,SAAS,CAAC;QAErE,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC5B,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE;gBACzB,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,CAAC,CAAC;gBAC3F,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,6CAC3B,IAAI,EAAE,QAAQ,EACd,SAAS,IACN,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,GAChE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAC7B,eAAe,IACf,CAAC;gBACH,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClB;SACF;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAEzC,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,qBAAqB,CAAC,OAA4B;QACxD,MAAM,KAAK,GAAmB,EAAE,CAAC;QACjC,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC1B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE;gBACvB,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,CAAC,CAAC;gBACvF,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,6CAC/B,IAAI;oBACJ,SAAS,IACN,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,GAChE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAC7B,eAAe,IACf,CAAC;gBACH,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClB;SACF;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,sBAAsB,CAAC,cAAoC;QACjE,MAAM,KAAK,GAAoB,EAAE,CAAC;QAClC,IAAI,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE;YACjC,KAAK,MAAM,CAAC,IAAI,cAAc,EAAE;gBAC9B,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,CAAC,CAAC;gBACtG,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,6CAChC,IAAI;oBACJ,SAAS;oBACT,aAAa,IACV,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,GAChE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAC7B,eAAe,IACf,CAAC;gBACH,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClB;SACF;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,aAAa,CAAC,OAAgB,EAAE,OAAoB;QAC1D,MAAM,KAAK,GAAW,EAAE,CAAC;QACzB,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC1B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE;gBACvB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;gBAChE,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;gBAClD,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;gBACjE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,iCACpB,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,KACnE,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,aAAa,IACxB,CAAC;gBACH,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClB;SACF;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAEzC,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,eAAe,CAAC,OAAqB;QAC3C,IAAI,IAAyB,CAAC;QAC9B,IAAI,OAAO,EAAE;YACX,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;SACpF;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,aAAa,CAAC,KAAkB;QACtC,MAAM,KAAK,GAAW,EAAE,CAAC;QACzB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE;gBACrB,MAAM,EACJ,GAAG,EACH,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,WAAW,EACX,OAAO,EACP,eAAe,EACf,YAAY,GACb,GAAG,CAAC,CAAC;gBAEN,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAkB,CAAC;gBACpF,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAkB,CAAC;gBAEpF,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,6CACvB,GAAG,EACH,QAAQ,EAAE,KAAK,EACf,QAAQ,EAAE,KAAK,EACf,MAAM,IACH,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,GAChE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAC7B,eAAe,EACf,aAAa,EAAE,CAAC,YAAY,IAC5B,CAAC;gBACH,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClB;SACF;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAEzC,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,eAAe,CAAC,MAAqB;;QAC3C,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACzB,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE;gBACtB,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC;gBAChG,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,6CACzB,GAAG,EACH,KAAK,EAAE,MAAA,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,mCAAI,EAAE,IACtC,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,GAChE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAC7B,eAAe,EACf,aAAa,EAAE,CAAC,YAAY,IAC5B,CAAC;gBACH,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClB;SACF;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAEzC,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,gBAAgB,CAAC,WAA8B;QACrD,MAAM,KAAK,GAAiB,EAAE,CAAC;QAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;YAC9B,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE;gBAC5B,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;gBAE9D,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,+BAC7B,MAAM,IACH,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,GAChE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAC7B,CAAC;gBACH,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClB;SACF;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAEzC,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,iBAAiB,CAAC,SAA0B;QAClD,MAAM,KAAK,GAAe,EAAE,CAAC;QAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC5B,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE;gBACzB,MAAM,EACJ,QAAQ,EACR,aAAa,EACb,cAAc,EACd,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,WAAW,EACX,OAAO,EACP,eAAe,EACf,aAAa,GACd,GAAG,CAAC,CAAC;gBACN,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,6CAC3B,QAAQ;oBACR,aAAa;oBACb,cAAc,IACX,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,GAChE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAC7B,eAAe;oBACf,aAAa,IACb,CAAC;gBACH,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClB;SACF;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAEzC,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,oBAAoB,CAAC,OAAgB,EAAE,SAA6B;QAC1E,MAAM,KAAK,GAAkB,EAAE,CAAC;QAEhC,gGAAgG;QAChG,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,iBAAiB;YAAE,OAAO,SAAS,CAAC;QAErE,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC5B,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE;gBACzB,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;gBAC7D,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC;oBAC/B,QAAQ;oBACR,QAAQ;oBACR,QAAQ;oBACR,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC1B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC1B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;iBAC3B,CAAC,CAAC;gBACH,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClB;SACF;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAEzC,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,gBAAgB,CAAC,QAAuB;;QAC9C,IAAI,IAA0B,CAAC;QAE/B,IAAI,QAAQ,EAAE;YACZ,MAAM,WAAW,GAAG,MAAA,YAAY,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,mCAAI,YAAY,CAAC,OAAO,CAAC;YACrF,IAAI,IAAkC,CAAC;YAEvC,sCAAsC;YACtC,IAAI,QAAQ,CAAC,IAAI,KAAK,YAAY,CAAC,cAAc,EAAE;gBACjD,MAAM,CAAC,GAAG,QAAiD,CAAC;gBAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAkB,CAAC;gBACvF,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAkB,CAAC;gBACvF,IAAI,GAAG,eAAe,CAAC,sBAAsB,CAAC;oBAC5C,KAAK,EAAE,SAAS;oBAChB,KAAK,EAAE,SAAS;iBACjB,CAAC,CAAC;aACJ;iBAAM;gBACL,gCAAgC;gBAEhC,8DAA8D;gBAC9D,IAAI,GAAI,QAAgB,CAAC,WAAW,CAAC,CAAC;gBAEtC,IAAI,CAAC,IAAI;oBAAE,OAAO,SAAS,CAAC;gBAE5B,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;aACpD;SACF;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,iBAAiB,CAAC,IAAsB,EAAE,IAAgC;;QAChF,IAAI,IAA0B,CAAC;QAE/B,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,IAAI;gBAAE,OAAO,SAAS,CAAC;YAE5B,MAAM,YAAY,GAAuB,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAE,IAAe,CAAC,CAAC,CAAC,SAAS,CAAC;YAEnG,yBAAyB;YACzB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,IAAI,YAAY,CAAC;YAEvF,gBAAgB;YAChB,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAkB,CAAC;YAClG,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU;gBAChC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;oBACxB,OAAO,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAkB,CAAC;gBACxE,CAAC,CAAC;gBACJ,CAAC,CAAC,SAAS,CAAC;YAEd,WAAW;YACX,IAAI,GAAG,eAAe,CAAC,QAAQ,CAAC;gBAC9B,IAAI;gBAEJ,sCAAsC;gBACtC,KAAK,EAAE,GAAG;gBAEV,iFAAiF;gBACjF,MAAM,EAAE,IAAI,CAAC,MAAM;gBAEnB,oBAAoB;gBACpB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;gBAErC,wCAAwC;gBACxC,KAAK,EAAE,MAAA,IAAI,CAAC,KAAK,mCAAI,SAAS;gBAC9B,MAAM,EAAE,MAAA,IAAI,CAAC,MAAM,mCAAI,SAAS;gBAChC,GAAG,EAAE,IAAI,CAAC,GAAG;gBAEb,oBAAoB;gBACpB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,WAAW;gBACX,UAAU;gBAEV,sBAAsB;gBACtB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBAEvB,mBAAmB;gBACnB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,WAAW,EAAE,IAAI,CAAC,WAAW;aAC9B,CAAC,CAAC;SACJ;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,SAAS,CAAC,IAAU,EAAE,UAA0B,EAAE,YAA0B;QAClF,IAAI,IAAsB,CAAC;QAC3B,IAAI,OAA2B,CAAC;QAChC,MAAM,gBAAgB,GAElB,EAAE,CAAC;QAEP,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACvB,2CAA2C;YAE3C,wDAAwD;YACxD,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YAE3C,4CAA4C;YAC5C,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,CAAC;SACrD;aAAM;YACL,4BAA4B;YAC5B,OAAO,GAAG,IAAI,CAAC;SAChB;QAED,eAAe;QACf,IAAI,YAAY,EAAE;YAChB,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;gBACrD,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;gBACnC,gBAAgB,CAAC,GAAG,CAAC,GAAG,GAAc,CAAC;aACxC;SACF;QAED,IAAI,OAAO,EAAE;YACX,oDAAoD;YACpD,MAAM,aAAa,GAAe,EAAE,CAAC;YACrC,MAAM,SAAS,GAAa,WAAW,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAElG,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;gBACpD,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBAE9B,IAAI,gBAAgB,CAAC,QAAQ,CAAC,EAAE;oBAC9B,0BAA0B;oBAC1B,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC;iBAChD;qBAAM;oBACL,gBAAgB;oBAChB,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;oBAC9C,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBAC9B;aACF;YAED,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,CAAC;SACnD;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,aAAa,CAAC,QAAgB;QACpC,OAAO,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC9C,CAAC;IAEO,YAAY,CAAC,GAAgB;QACnC,QAAQ,GAAG,CAAC,IAAI,EAAE;YAChB,KAAK,WAAW,CAAC,GAAG,CAAC,CAAC;gBACpB,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBAClC,OAAO,GAAG,CAAC;aACZ;YACD,KAAK,WAAW,CAAC,IAAI,CAAC,CAAC;gBACrB,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;gBACpC,OAAO,IAAI,CAAC;aACb;YACD,KAAK,WAAW,CAAC,MAAM,CAAC,CAAC;gBACvB,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;gBACxC,OAAO,MAAM,CAAC;aACf;YACD,KAAK,WAAW,CAAC,SAAS,CAAC,CAAC;gBAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;gBAC/C,OAAO,UAAU,CAAC;aACnB;SACF;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IAChC,CAAC;IAEO,WAAW,CAAC,UAAgB,EAAE,UAA0B;QAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAEpD,IAAI,IAAI,EAAE;YACR,OAAO,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;SACrC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,cAAc,CAAC,SAA4B;QACjD,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;YACpD,OAAO;gBACL,SAAS,EAAE,SAAS;gBACpB,iBAAiB,EAAE,SAAS;aAC7B,CAAC;SACH;QAED,OAAO;YACL,SAAS,EAAE,SAAmB;YAC9B,iBAAiB,EAAE,SAAS;SAC7B,CAAC;IACJ,CAAC;IAEO,WAAW,CAAC,GAAY;QAC9B,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC;QAEnF,YAAY;QACZ,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,6CACzB,SAAS,IACN,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,GAChE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAC7B,eAAe,IACf,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,YAAY,CAAC,GAAa;QAChC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;QAEvE,YAAY;QACZ,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,+BAC1B,QAAQ;YACR,IAAI,IACD,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,GAChE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAC7B,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,cAAc,CAAC,GAAe;QACpC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;QAEjF,qBAAqB;QACrB,MAAM,iBAAiB,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAE9D,YAAY;QACZ,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,6CACzB,OAAO,EAAE,iBAAiB,EAC1B,MAAM;YACN,OAAO,IACJ,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,GAChE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAC7B,eAAe,EAAE,IAAI,IACrB,CAAC;QAEH,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,iBAAiB,CAAC,GAAkB;QAC1C,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;QAE/E,qBAAqB;QACrB,MAAM,kBAAkB,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;QAE9D,YAAY;QACZ,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,6CAC5B,KAAK,EAAE,kBAAkB,EACzB,MAAM;YACN,OAAO,IACJ,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,GAChE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAC7B,eAAe,EAAE,IAAI,IACrB,CAAC;QAEH,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,4BAA4B,CAAC,IAAU,EAAE,IAAU,EAAE,IAAU,EAAE,WAAiB;QACxF,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAC1B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAC1B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAC1B,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;SACzC,CAAC;IACJ,CAAC;IAEO,YAAY,CAAC,OAAgC;QACnD,IAAI,OAAO,IAAI,IAAI;YAAE,OAAO,SAAS,CAAC;QACtC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,OAAiB,CAAC,CAAC;QACrD,IAAI,UAAU,EAAE;YACd,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;SAChC;QACD,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;IAChC,CAAC;IAEO,SAAS,CAAC,IAAsB,EAAE,UAA2B;QACnE,IAAI,IAAI,IAAI,IAAI;YAAE,OAAO,SAAS,CAAC;QACnC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACvB,8CAA8C;YAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YAErE,OAAO,UAAU,CAAC;SACnB;QAED,OAAO,IAAc,CAAC;IACxB,CAAC;CACF;AAED,OAAO,EAAE,UAAU,EAAE,CAAC"}