@gmb/bitmark-parser-generator 1.4.12 → 1.4.14

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 (126) hide show
  1. package/dist/browser/bitmark-parser-generator.min.js +1 -1
  2. package/dist/browser/bundle-report.html +2 -2
  3. package/dist/cjs/ast/Builder.js +29 -4
  4. package/dist/cjs/ast/Builder.js.map +1 -1
  5. package/dist/cjs/ast/rules/NodeValidator.js +15 -0
  6. package/dist/cjs/ast/rules/NodeValidator.js.map +1 -1
  7. package/dist/cjs/config/Config.js +3 -2
  8. package/dist/cjs/config/Config.js.map +1 -1
  9. package/dist/cjs/config/raw/bits.js +74 -5
  10. package/dist/cjs/config/raw/bits.js.map +1 -1
  11. package/dist/cjs/config/raw/cardSets.js +39 -0
  12. package/dist/cjs/config/raw/cardSets.js.map +1 -1
  13. package/dist/cjs/config/raw/properties.js +15 -0
  14. package/dist/cjs/config/raw/properties.js.map +1 -1
  15. package/dist/cjs/generated/build-info.js +1 -1
  16. package/dist/cjs/generator/bitmark/BitmarkGenerator.js +17 -4
  17. package/dist/cjs/generator/bitmark/BitmarkGenerator.js.map +1 -1
  18. package/dist/cjs/generator/json/JsonGenerator.js +90 -13
  19. package/dist/cjs/generator/json/JsonGenerator.js.map +1 -1
  20. package/dist/cjs/generator/text/TextGenerator.js +1 -1
  21. package/dist/cjs/generator/text/TextGenerator.js.map +1 -1
  22. package/dist/cjs/model/ast/NodeType.js +8 -0
  23. package/dist/cjs/model/ast/NodeType.js.map +1 -1
  24. package/dist/cjs/model/config/BitConfig.js +4 -1
  25. package/dist/cjs/model/config/BitConfig.js.map +1 -1
  26. package/dist/cjs/model/config/enum/CardSetConfigKey.js +2 -0
  27. package/dist/cjs/model/config/enum/CardSetConfigKey.js.map +1 -1
  28. package/dist/cjs/model/config/enum/PropertyConfigKey.js +3 -0
  29. package/dist/cjs/model/config/enum/PropertyConfigKey.js.map +1 -1
  30. package/dist/cjs/model/enum/BitType.js +5 -1
  31. package/dist/cjs/model/enum/BitType.js.map +1 -1
  32. package/dist/cjs/model/enum/PropertyTag.js +3 -0
  33. package/dist/cjs/model/enum/PropertyTag.js.map +1 -1
  34. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserProcessor.js +42 -29
  35. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserProcessor.js.map +1 -1
  36. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserTypes.js.map +1 -1
  37. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserValidator.js +4 -3
  38. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserValidator.js.map +1 -1
  39. package/dist/cjs/parser/bitmark/peg/contentProcessors/CardContentProcessor.js +49 -13
  40. package/dist/cjs/parser/bitmark/peg/contentProcessors/CardContentProcessor.js.map +1 -1
  41. package/dist/cjs/parser/json/JsonParser.js +31 -4
  42. package/dist/cjs/parser/json/JsonParser.js.map +1 -1
  43. package/dist/esm/ast/Builder.js +29 -4
  44. package/dist/esm/ast/Builder.js.map +1 -1
  45. package/dist/esm/ast/rules/NodeValidator.js +15 -0
  46. package/dist/esm/ast/rules/NodeValidator.js.map +1 -1
  47. package/dist/esm/config/Config.js +3 -2
  48. package/dist/esm/config/Config.js.map +1 -1
  49. package/dist/esm/config/raw/bits.js +74 -5
  50. package/dist/esm/config/raw/bits.js.map +1 -1
  51. package/dist/esm/config/raw/cardSets.js +39 -0
  52. package/dist/esm/config/raw/cardSets.js.map +1 -1
  53. package/dist/esm/config/raw/properties.js +15 -0
  54. package/dist/esm/config/raw/properties.js.map +1 -1
  55. package/dist/esm/generated/build-info.js +1 -1
  56. package/dist/esm/generator/bitmark/BitmarkGenerator.js +17 -4
  57. package/dist/esm/generator/bitmark/BitmarkGenerator.js.map +1 -1
  58. package/dist/esm/generator/json/JsonGenerator.js +90 -13
  59. package/dist/esm/generator/json/JsonGenerator.js.map +1 -1
  60. package/dist/esm/generator/text/TextGenerator.js +1 -1
  61. package/dist/esm/generator/text/TextGenerator.js.map +1 -1
  62. package/dist/esm/model/ast/NodeType.js +8 -0
  63. package/dist/esm/model/ast/NodeType.js.map +1 -1
  64. package/dist/esm/model/config/BitConfig.js +4 -1
  65. package/dist/esm/model/config/BitConfig.js.map +1 -1
  66. package/dist/esm/model/config/enum/CardSetConfigKey.js +2 -0
  67. package/dist/esm/model/config/enum/CardSetConfigKey.js.map +1 -1
  68. package/dist/esm/model/config/enum/PropertyConfigKey.js +3 -0
  69. package/dist/esm/model/config/enum/PropertyConfigKey.js.map +1 -1
  70. package/dist/esm/model/enum/BitType.js +5 -1
  71. package/dist/esm/model/enum/BitType.js.map +1 -1
  72. package/dist/esm/model/enum/PropertyTag.js +3 -0
  73. package/dist/esm/model/enum/PropertyTag.js.map +1 -1
  74. package/dist/esm/parser/bitmark/peg/BitmarkPegParserProcessor.js +42 -29
  75. package/dist/esm/parser/bitmark/peg/BitmarkPegParserProcessor.js.map +1 -1
  76. package/dist/esm/parser/bitmark/peg/BitmarkPegParserTypes.js.map +1 -1
  77. package/dist/esm/parser/bitmark/peg/BitmarkPegParserValidator.js +4 -3
  78. package/dist/esm/parser/bitmark/peg/BitmarkPegParserValidator.js.map +1 -1
  79. package/dist/esm/parser/bitmark/peg/contentProcessors/CardContentProcessor.js +49 -13
  80. package/dist/esm/parser/bitmark/peg/contentProcessors/CardContentProcessor.js.map +1 -1
  81. package/dist/esm/parser/json/JsonParser.js +31 -4
  82. package/dist/esm/parser/json/JsonParser.js.map +1 -1
  83. package/dist/types/ast/Builder.d.ts +23 -1
  84. package/dist/types/ast/Builder.d.ts.map +1 -1
  85. package/dist/types/ast/rules/NodeValidator.d.ts +9 -1
  86. package/dist/types/ast/rules/NodeValidator.d.ts.map +1 -1
  87. package/dist/types/config/Config.d.ts.map +1 -1
  88. package/dist/types/config/raw/bits.d.ts.map +1 -1
  89. package/dist/types/config/raw/cardSets.d.ts.map +1 -1
  90. package/dist/types/config/raw/properties.d.ts.map +1 -1
  91. package/dist/types/generator/bitmark/BitmarkGenerator.d.ts +7 -3
  92. package/dist/types/generator/bitmark/BitmarkGenerator.d.ts.map +1 -1
  93. package/dist/types/generator/json/JsonGenerator.d.ts +7 -0
  94. package/dist/types/generator/json/JsonGenerator.d.ts.map +1 -1
  95. package/dist/types/generator/text/TextGenerator.d.ts +2 -2
  96. package/dist/types/generator/text/TextGenerator.d.ts.map +1 -1
  97. package/dist/types/model/ast/NodeType.d.ts +16 -0
  98. package/dist/types/model/ast/NodeType.d.ts.map +1 -1
  99. package/dist/types/model/ast/Nodes.d.ts +14 -0
  100. package/dist/types/model/ast/Nodes.d.ts.map +1 -1
  101. package/dist/types/model/config/BitConfig.d.ts +3 -1
  102. package/dist/types/model/config/BitConfig.d.ts.map +1 -1
  103. package/dist/types/model/config/_Config.d.ts +2 -0
  104. package/dist/types/model/config/_Config.d.ts.map +1 -1
  105. package/dist/types/model/config/enum/CardSetConfigKey.d.ts +4 -0
  106. package/dist/types/model/config/enum/CardSetConfigKey.d.ts.map +1 -1
  107. package/dist/types/model/config/enum/ConfigKey.d.ts +6 -0
  108. package/dist/types/model/config/enum/ConfigKey.d.ts.map +1 -1
  109. package/dist/types/model/config/enum/PropertyConfigKey.d.ts +9 -0
  110. package/dist/types/model/config/enum/PropertyConfigKey.d.ts.map +1 -1
  111. package/dist/types/model/enum/BitType.d.ts +20 -2
  112. package/dist/types/model/enum/BitType.d.ts.map +1 -1
  113. package/dist/types/model/enum/PropertyTag.d.ts +6 -0
  114. package/dist/types/model/enum/PropertyTag.d.ts.map +1 -1
  115. package/dist/types/model/json/BitJson.d.ts +12 -0
  116. package/dist/types/model/json/BitJson.d.ts.map +1 -1
  117. package/dist/types/parser/bitmark/peg/BitmarkPegParserProcessor.d.ts +3 -3
  118. package/dist/types/parser/bitmark/peg/BitmarkPegParserProcessor.d.ts.map +1 -1
  119. package/dist/types/parser/bitmark/peg/BitmarkPegParserTypes.d.ts +8 -2
  120. package/dist/types/parser/bitmark/peg/BitmarkPegParserTypes.d.ts.map +1 -1
  121. package/dist/types/parser/bitmark/peg/BitmarkPegParserValidator.d.ts +1 -1
  122. package/dist/types/parser/bitmark/peg/BitmarkPegParserValidator.d.ts.map +1 -1
  123. package/dist/types/parser/bitmark/peg/contentProcessors/CardContentProcessor.d.ts.map +1 -1
  124. package/dist/types/parser/json/JsonParser.d.ts +1 -0
  125. package/dist/types/parser/json/JsonParser.d.ts.map +1 -1
  126. package/package.json +11 -11
@@ -1 +1 @@
1
- {"version":3,"file":"BitmarkGenerator.js","sourceRoot":"","sources":["../../../../src/generator/bitmark/BitmarkGenerator.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uCAAgE;AAEhE,gDAA6C;AAC7C,uDAAkE;AAClE,sDAAiF;AACjF,oEAA8G;AAC9G,8DAA2D;AAC3D,oEAAqF;AACrF,oEAAiE;AACjE,8DAA2D;AAC3D,8DAA4E;AAC5E,4DAAyD;AACzD,2DAAwD;AAuBxD,MAAM,eAAe,GAAmB;IACtC,qBAAqB,EAAE,KAAK;CAC7B,CAAC;AAiDF;;GAEG;AACH,MAAM,gBAAgB;IAYpB;;;;;;;;;;;;;;OAcG;IACH,YAAY,MAAc,EAAE,OAAiC;;QA1BnD,QAAG,GAAG,IAAI,SAAG,EAAE,CAAC;QAK1B,QAAQ;QACA,2BAAsB,GAAG,KAAK,CAAC;QAEvC,QAAQ;QACA,YAAO,GAAG,KAAK,CAAC;QAkBtB,IAAI,CAAC,cAAc,GAAG,MAAA,+BAAc,CAAC,SAAS,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,CAAC,mCAAI,wCAAuB,CAAC;QACnG,IAAI,CAAC,OAAO,mCACP,eAAe,GACf,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,CAC3B,CAAC;QAEF,4CAA4C;QAC5C,IAAI,IAAI,CAAC,cAAc,KAAK,+BAAc,CAAC,EAAE,EAAE;YAC7C,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,KAAK,SAAS,EAAE;gBAC7C,IAAI,CAAC,OAAO,CAAC,cAAc,GAAG,+BAAc,CAAC,EAAE,CAAC;aACjD;SACF;aAAM;YACL,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,KAAK,SAAS,EAAE;gBAC7C,IAAI,CAAC,OAAO,CAAC,cAAc,GAAG,+BAAc,CAAC,EAAE,CAAC;aACjD;SACF;QAED,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEjC,IAAI,CAAC,wBAAwB,EAAE,CAAC;IAClC,CAAC;IAED;;;;OAIG;IACU,QAAQ,CAAC,GAAe;;YACnC,kBAAkB;YAClB,IAAI,CAAC,UAAU,EAAE,CAAC;YAElB,kBAAkB;YAClB,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAEzB,uBAAuB;YACvB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YAEvB,qCAAqC;YACrC,IAAI,CAAC,SAAS,EAAE,CAAC;YAEjB,mBAAmB;YACnB,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAC5B,CAAC;KAAA;IAED;;;;OAIG;IACI,YAAY,CAAC,GAAe;QACjC,kBAAkB;QAClB,IAAI,CAAC,UAAU,EAAE,CAAC;QAElB,kBAAkB;QAClB,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAEvB,uBAAuB;QACvB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QAEvB,mBAAmB;QACnB,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;IAC1B,CAAC;IAEO,UAAU;QAChB,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC;QACpC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;IAEO,YAAY,CAAC,GAAe;QAClC,uBAAuB;QACvB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAQ,CAAC,UAAU,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QAEzD,qCAAqC;QACrC,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,IAAc,EAAE,MAA4B,EAAE,KAAiB;QACnE,IAAI,GAAG,GAAmB,KAAK,CAAC,CAAC;QACjC,8DAA8D;QAC9D,MAAM,GAAG,GAAG,IAAW,CAAC;QACxB,MAAM,QAAQ,GAAG,SAAS,IAAI,CAAC,GAAG,EAAE,CAAC;QAErC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;SACrB;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,qBAAqB;YAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAExF,IAAI,OAAO,GAAG,CAAC,QAAQ,CAAC,KAAK,UAAU,EAAE;YACvC,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;SAC1C;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAED,OAAO,CACL,IAAc,EACd,IAAc,EACd,KAAe,EACf,MAA4B,EAC5B,KAAiB;QAEjB,IAAI,GAAG,GAAmB,KAAK,CAAC,CAAC;QACjC,8DAA8D;QAC9D,MAAM,GAAG,GAAG,IAAW,CAAC;QACxB,MAAM,QAAQ,GAAG,WAAW,IAAI,CAAC,GAAG,EAAE,CAAC;QAEvC,IAAI,IAAI,CAAC,OAAO,CAAC,qBAAqB;YAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAE1F,IAAI,OAAO,GAAG,CAAC,QAAQ,CAAC,KAAK,UAAU,EAAE;YACvC,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;SACvD;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,CAAC,IAAc,EAAE,MAA4B,EAAE,KAAiB;QAClE,8DAA8D;QAC9D,MAAM,GAAG,GAAG,IAAW,CAAC;QACxB,MAAM,QAAQ,GAAG,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC;QAEpC,IAAI,IAAI,CAAC,OAAO,CAAC,qBAAqB;YAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAEzF,IAAI,OAAO,GAAG,CAAC,QAAQ,CAAC,KAAK,UAAU,EAAE;YACvC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;SACpC;IACH,CAAC;IAED,IAAI,CAAC,IAAc,EAAE,MAA4B,EAAE,KAAiB;QAClE,8DAA8D;QAC9D,MAAM,GAAG,GAAG,IAAW,CAAC;QACxB,MAAM,QAAQ,GAAG,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC;QAEpC,IAAI,IAAI,CAAC,OAAO,CAAC,qBAAqB;YAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAExF,IAAI,OAAO,GAAG,CAAC,QAAQ,CAAC,KAAK,UAAU,EAAE;YACvC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;SACpC;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,qBAAqB;YAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3F,CAAC;IAED,EAAE;IACF,gBAAgB;IAChB,EAAE;IAEF,EAAE;IACF,gCAAgC;IAChC,EAAE;IAEF,UAAU;IAEV,qBAAqB;IAEX,YAAY,CACpB,KAAe,EACf,KAAe,EACf,MAAgB,EAChB,OAA6B,EAC7B,MAAkB;QAElB,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,kCAAkC;IAExB,eAAe,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACzF,MAAM,GAAG,GAAG,IAAI,CAAC,KAAY,CAAC;QAE9B,MAAM,SAAS,GAAG,eAAM,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,kBAAkB,GAAG,eAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC;QAEvF,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAEpC,IAAI,GAAG,CAAC,UAAU,EAAE;YAClB,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAErD,IAAI,KAAK,EAAE;gBACT,IAAI,CAAC,UAAU,EAAE,CAAC;gBAClB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;aAClC;SACF;QAED,2EAA2E;QAC3E,IAAI,YAAyC,CAAC;QAC9C,IAAI,SAAS,CAAC,yBAAyB,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;YACpF,MAAM,QAAQ,GAAG,kBAAkB,CAAC,wBAAwB,CAAC;YAE7D,IAAI,kBAAkB,CAAC,wBAAwB,CAAC,IAAI,GAAG,CAAC,EAAE;gBACxD,mCAAmC;gBACnC,qDAAqD;gBACrD,+FAA+F;gBAC/F,sCAAsC;gBACtC,KAAK,MAAM,YAAY,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE;oBAC1C,YAAY,GAAG,YAAY,CAAC;iBAC7B;aACF;iBAAM;gBACL,2FAA2F;gBAC3F,YAAY,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;aACtC;SACF;QAED,IAAI,YAAY,EAAE;YAChB,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;SAChC;QAED,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAES,iBAAiB,CACzB,IAAc,EACd,IAAc,EACd,MAAgB,EAChB,OAA6B,EAC7B,MAAkB;QAElB,yEAAyE;QACzE,MAAM,QAAQ,GAAmB;YAC/B,mBAAQ,CAAC,OAAO;YAChB,mBAAQ,CAAC,UAAU;YACnB,mBAAQ,CAAC,KAAK;YACd,mBAAQ,CAAC,QAAQ;YACjB,mBAAQ,CAAC,GAAG;YACZ,mBAAQ,CAAC,YAAY;YACrB,mBAAQ,CAAC,UAAU;SACpB,CAAC;QAEF,MAAM,GAAG,GAAG,IAAI,CAAC,KAAY,CAAC;QAC9B,IAAI,GAAG,CAAC,IAAI,EAAE;YACZ,8FAA8F;YAC9F,QAAQ,CAAC,IAAI,CAAC,mBAAQ,CAAC,SAAS,CAAC,CAAC;SACnC;QAED,sEAAsE;QACtE,MAAM,IAAI,GAAG,CAAC,GAAY,EAAE;YAC1B,IAAI,IAAI,CAAC,sBAAsB,EAAE;gBAC/B,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC;gBACpC,OAAO,IAAI,CAAC;aACb;YACD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;gBAC9B,IAAI,IAAI,CAAC,GAAG,KAAK,OAAO,CAAC,4BAA4B;oBAAE,OAAO,IAAI,CAAC;aACpE;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,EAAE,CAAC;QAEL,IAAI,CAAC,IAAI,EAAE;YACT,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;IACH,CAAC;IAED,4DAA4D;IAElD,eAAe,CAAC,IAAc,EAAE,MAA4B,EAAE,MAAkB;QACxF,MAAM,KAAK,GAAG,IAAI,CAAC,KAA2B,CAAC;QAE/C,0EAA0E;QAC1E,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,MAAK,mBAAQ,CAAC,SAAS;YAAE,OAAO;QAE/C,MAAM,GAAG,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAY,CAAC;QACjC,IAAI,GAAG,EAAE;YACP,IAAI,KAAK,IAAI,EAAE;gBAAE,IAAI,CAAC,aAAa,CAAC,yBAAW,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACxE,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE;gBAAE,IAAI,CAAC,aAAa,CAAC,yBAAW,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;SACjH;IACH,CAAC;IAED,iDAAiD;IAEvC,iBAAiB,CAAC,IAAc,EAAE,MAA4B,EAAE,MAAkB;QAC1F,MAAM,WAAW,GAAG,IAAI,CAAC,KAAoB,CAAC;QAE9C,iFAAiF;QACjF,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,MAAK,mBAAQ,CAAC,SAAS;YAAE,OAAO;QAE/C,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC;QAE1D,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QAC7C,IAAI,GAAG,EAAE;YACP,IAAI,QAAQ;gBAAE,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC7D,IAAI,IAAI;gBAAE,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACjD,IAAI,MAAM;gBAAE,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;YACvD,IAAI,2BAAY,CAAC,SAAS,CAAC,IAAI,CAAC;gBAAE,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;SAC1E;IACH,CAAC;IAED,6CAA6C;IAEnC,aAAa,CAAC,IAAc,EAAE,MAA4B,EAAE,MAAkB;QACtF,MAAM,OAAO,GAAG,IAAI,CAAC,KAAgB,CAAC;QAEtC,iFAAiF;QACjF,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,MAAK,mBAAQ,CAAC,SAAS;YAAE,OAAO;QAE/C,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;QAEtC,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC1C,IAAI,WAAW,EAAE;YACf,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;SACjC;IACH,CAAC;IAED,qDAAqD;IAE3C,qBAAqB,CAAC,IAAc,EAAE,MAA4B,EAAE,MAAkB;QAC9F,MAAM,UAAU,GAAG,IAAI,CAAC,KAAmB,CAAC;QAE5C,qFAAqF;QACrF,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,MAAK,mBAAQ,CAAC,UAAU;YAAE,OAAO;QAEhD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAC;QAE7C,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACvC,IAAI,KAAK;gBAAE,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACpD,IAAI,QAAQ;gBAAE,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC7D,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;IACH,CAAC;IAED,oDAAoD;IACpD,mFAAmF;IAEzE,mBAAmB,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAC7F,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACnD,CAAC;IAED,0DAA0D;IAC1D,yFAAyF;IAE/E,yBAAyB,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACnG,IAAI,CAAC,aAAa,CAAC,sBAAsB,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACzD,CAAC;IAED,8CAA8C;IAEpC,cAAc,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACxF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAiB,CAAC;QACxC,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE;YAChD,2CAA2C;YAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YACtC,IAAI,CAAC,OAAO,EAAE,CAAC;YAEf,IAAI,QAAQ,CAAC,IAAI,EAAE;gBACjB,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAChC,IAAI,CAAC,OAAO,EAAE,CAAC;aAChB;SACF;IACH,CAAC;IAED,0CAA0C;IAEhC,UAAU,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACpF,6DAA6D;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAa,CAAC;QAChC,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;IACH,CAAC;IAED,8FAA8F;IAEpF,eAAe,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACzF,MAAM,SAAS,GAAG,IAAI,CAAC,KAAiB,CAAC;QACzC,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;YACvC,yFAAyF;YACzF,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;IACH,CAAC;IAED,6FAA6F;IAEnF,aAAa,CAAC,IAAc,EAAE,OAA6B,EAAE,KAAiB;;QACtF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAe,CAAC;QAEtC,qFAAqF;QACrF,MAAM,cAAc,GAAyB,MAAA,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,0CAAE,KAAK,CAAC;QACjF,IAAI,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,IAAI,MAAK,yBAAW,CAAC,IAAI;YAAE,OAAO;QAEtD,IAAI,QAAQ,EAAE;YACZ,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC3B,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;IACH,CAAC;IAED,yFAAyF;IAE/E,SAAS,CAAC,IAAc,EAAE,OAA6B,EAAE,KAAiB;;QAClF,MAAM,IAAI,GAAG,IAAI,CAAC,KAAe,CAAC;QAElC,qFAAqF;QACrF,MAAM,cAAc,GAAyB,MAAA,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,0CAAE,KAAK,CAAC;QACjF,IAAI,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,IAAI,MAAK,yBAAW,CAAC,IAAI;YAAE,OAAO;QAEtD,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;SACxC;IACH,CAAC;IAED,4GAA4G;IAElG,kBAAkB,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAC5F,MAAM,YAAY,GAAG,IAAI,CAAC,KAAqB,CAAC;QAChD,IAAI,YAAY,CAAC,SAAS,EAAE;YAC1B,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB;aAAM;YACL,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB;QACD,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,wGAAwG;IAE9F,gBAAgB,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAC1F,MAAM,aAAa,GAAG,IAAI,CAAC,KAAsB,CAAC;QAClD,IAAI,aAAa,CAAC,SAAS,EAAE;YAC3B,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB;aAAM;YACL,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB;QACD,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,8CAA8C;IAEpC,cAAc,CAAC,KAAe,EAAE,OAA6B,EAAE,KAAiB;QACxF,yBAAyB;QACzB,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,UAAU;YAAE,OAAO;QAEvB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAES,gBAAgB,CACxB,KAAe,EACf,KAAe,EACf,MAAgB,EAChB,OAA6B,EAC7B,KAAiB;QAEjB,yBAAyB;QACzB,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,UAAU;YAAE,OAAO;QAEvB,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC/B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAES,aAAa,CAAC,KAAe,EAAE,OAA6B,EAAE,KAAiB;QACvF,yBAAyB;QACzB,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,UAAU;YAAE,OAAO;QAEvB,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,0DAA0D;IAEhD,cAAc,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QACzF,EAAE;IACJ,CAAC;IAES,gBAAgB,CACxB,KAAe,EACf,KAAe,EACf,MAAgB,EAChB,OAA6B,EAC7B,MAAkB;QAElB,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAClC,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAES,aAAa,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QACxF,EAAE;IACJ,CAAC;IAED,4DAA4D;IAElD,kBAAkB,CAC1B,KAAe,EACf,KAAe,EACf,MAAgB,EAChB,OAA6B,EAC7B,MAAkB;QAElB,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC/B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,+EAA+E;IAErE,uBAAuB,CAC/B,KAAe,EACf,KAAe,EACf,KAAe,EACf,OAA6B,EAC7B,MAAkB;QAElB,IAAI,KAAK,CAAC,GAAG,KAAK,mBAAQ,CAAC,MAAM,EAAE;YACjC,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;aAAM,IAAI,KAAK,CAAC,GAAG,KAAK,mBAAQ,CAAC,kBAAkB,EAAE;YACpD,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,IAAI,CAAC,0BAA0B,EAAE,CAAC;YAClC,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;IACH,CAAC;IAED,yFAAyF;IAE/E,WAAW,CAAC,IAAc,EAAE,MAA4B,EAAE,MAAkB;QACpF,2FAA2F;QAC3F,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,MAAK,mBAAQ,CAAC,eAAe;YAAE,OAAO;QAErD,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC9B;IACH,CAAC;IAED,qGAAqG;IAE3F,0BAA0B,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QACrG,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAClC,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,gIAAgI;IAEtH,4BAA4B,CAAC,IAAc,EAAE,MAA4B,EAAE,MAAkB;QACrG,8FAA8F;QAC9F,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,MAAK,mBAAQ,CAAC,kBAAkB;YAAE,OAAO;QAExD,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC9B;IACH,CAAC;IAED,4DAA4D;IAElD,gBAAgB,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QAC3F,EAAE;IACJ,CAAC;IAES,kBAAkB,CAC1B,KAAe,EACf,KAAe,EACf,MAAgB,EAChB,OAA6B,EAC7B,KAAiB;QAEjB,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,qBAAW,CAAC,UAAU,CAAC,CAAC;QAEvE,IAAI,CAAC,YAAY,EAAE;YACjB,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,IAAI,CAAC,uBAAuB,EAAE,CAAC;SAChC;QACD,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAES,eAAe,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QAC1F,EAAE;IACJ,CAAC;IAED,+EAA+E;IAErE,qBAAqB,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAC/F,MAAM,SAAS,GAAG,IAAI,CAAC,KAAkB,CAAC;QAC1C,IAAI,SAAS,CAAC,SAAS,EAAE;YACvB,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB;aAAM;YACL,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB;QACD,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,6CAA6C;IAC7C,oFAAoF;IAE1E,eAAe,CACvB,KAAe,EACf,KAAe,EACf,MAAgB,EAChB,OAA6B,EAC7B,MAAkB;QAElB,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAES,YAAY,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QACvF,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,6DAA6D;IAC7D,oGAAoG;IAE1F,kBAAkB,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAC5F,MAAM,MAAM,GAAG,IAAI,CAAC,KAAe,CAAC;QACpC,IAAI,MAAM,CAAC,SAAS,EAAE;YACpB,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB;aAAM;YACL,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB;QACD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACxB,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,+CAA+C;IAC/C,sFAAsF;IAE5E,iBAAiB,CACzB,KAAe,EACf,KAAe,EACf,MAAgB,EAChB,OAA6B,EAC7B,MAAkB;QAElB,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAES,cAAc,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QACzF,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,iEAAiE;IACjE,wGAAwG;IAE9F,oBAAoB,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAC9F,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAiB,CAAC;QACxC,IAAI,QAAQ,CAAC,SAAS,EAAE;YACtB,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB;aAAM;YACL,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB;QACD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,yDAAyD;IAE/C,aAAa,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QACxF,EAAE;IACJ,CAAC;IAES,eAAe,CACvB,KAAe,EACf,KAAe,EACf,MAAgB,EAChB,OAA6B,EAC7B,MAAkB;QAElB,kBAAkB;QAClB,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC/B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAES,YAAY,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QACvF,EAAE;IACJ,CAAC;IAED,yEAAyE;IAE/D,oBAAoB,CAC5B,KAAe,EACf,KAAe,EACf,KAAe,EACf,OAA6B,EAC7B,MAAkB;QAElB,IAAI,KAAK,CAAC,GAAG,KAAK,mBAAQ,CAAC,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,mBAAQ,CAAC,SAAS,EAAE;YACtE,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;IACH,CAAC;IAED,yDAAyD;IAE/C,aAAa,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QACxF,EAAE;IACJ,CAAC;IAES,eAAe,CACvB,KAAe,EACf,KAAe,EACf,MAAgB,EAChB,OAA6B,EAC7B,MAAkB;QAElB,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC/B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAES,YAAY,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QACvF,EAAE;IACJ,CAAC;IAED,sEAAsE;IAE5D,eAAe,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QAC1F,EAAE;IACJ,CAAC;IAES,iBAAiB,CACzB,KAAe,EACf,KAAe,EACf,MAAgB,EAChB,OAA6B,EAC7B,MAAkB;QAElB,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC/B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAES,cAAc,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QACzF,EAAE;IACJ,CAAC;IAED,uDAAuD;IAE7C,WAAW,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QACtF,EAAE;IACJ,CAAC;IAES,aAAa,CACrB,KAAe,EACf,KAAe,EACf,MAAgB,EAChB,OAA6B,EAC7B,MAAkB;QAElB,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC/B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAES,UAAU,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QACrF,EAAE;IACJ,CAAC;IAED,qEAAqE;IAE3D,kBAAkB,CAC1B,KAAe,EACf,KAAe,EACf,MAAgB,EAChB,OAA6B,EAC7B,MAAkB;QAElB,EAAE;IACJ,CAAC;IAED,iFAAiF;IAEvE,cAAc,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACxF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAiB,CAAC;QAExC,wDAAwD;QACxD,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED,iFAAiF;IAEvE,cAAc,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACxF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAiB,CAAC;QAExC,wDAAwD;QACxD,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED,wDAAwD;IAE9C,YAAY,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QACvF,EAAE;IACJ,CAAC;IAES,cAAc,CACtB,KAAe,EACf,KAAe,EACf,MAAgB,EAChB,OAA6B,EAC7B,MAAkB;QAElB,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC/B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAES,WAAW,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QACtF,EAAE;IACJ,CAAC;IAED,uEAAuE;IAE7D,mBAAmB,CAC3B,KAAe,EACf,KAAe,EACf,MAAgB,EAChB,OAA6B,EAC7B,MAAkB;QAElB,EAAE;IACJ,CAAC;IAED,+EAA+E;IAC/E,wGAAwG;IAE9F,YAAY,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QACvF,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC/B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAES,cAAc,CACtB,KAAe,EACf,KAAe,EACf,MAAgB,EAChB,OAA6B,EAC7B,MAAkB;QAElB,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAClC,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,2DAA2D;IAEjD,eAAe,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QAC1F,EAAE;IACJ,CAAC;IAES,iBAAiB,CACzB,KAAe,EACf,KAAe,EACf,MAAgB,EAChB,OAA6B,EAC7B,MAAkB;QAElB,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC/B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAES,cAAc,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QACzF,EAAE;IACJ,CAAC;IAED,6EAA6E;IAEnE,sBAAsB,CAC9B,KAAe,EACf,KAAe,EACf,KAAe,EACf,OAA6B,EAC7B,MAAkB;QAElB,IAAI,KAAK,CAAC,GAAG,KAAK,mBAAQ,CAAC,cAAc,EAAE;YACzC,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;IACH,CAAC;IAES,mBAAmB,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QAC9F,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,8DAA8D;IAEpD,kBAAkB,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QAC7F,EAAE;IACJ,CAAC;IAES,oBAAoB,CAC5B,KAAe,EACf,KAAe,EACf,MAAgB,EAChB,OAA6B,EAC7B,MAAkB;QAElB,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC/B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAES,iBAAiB,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QAC5F,EAAE;IACJ,CAAC;IAED,mFAAmF;IAEzE,yBAAyB,CACjC,KAAe,EACf,KAAe,EACf,MAAgB,EAChB,OAA6B,EAC7B,MAAkB;QAElB,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAES,sBAAsB,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QACjG,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,+FAA+F;IAErF,aAAa,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACvF,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,+FAA+F;IAErF,aAAa,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACvF,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC;IAED,+FAA+F;IAErF,aAAa,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACvF,MAAM,OAAO,GAAG,IAAI,CAAC,KAAe,CAAC;QACrC,IAAI,OAAO,EAAE;YACX,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;SACrB;IACH,CAAC;IAED,+CAA+C;IAErC,iBAAiB,CACzB,KAAe,EACf,KAAe,EACf,MAAgB,EAChB,OAA6B,EAC7B,MAAkB;QAElB,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,oDAAoD;IAE1C,oBAAoB,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAC9F,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAiB,CAAC;QAExC,wDAAwD;QACxD,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED,6DAA6D;IAEnD,iBAAiB,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAC3F,MAAM,WAAW,GAAG,IAAI,CAAC,KAAsB,CAAC;QAChD,IAAI,WAAW,IAAI,WAAW,CAAC,KAAK,EAAE;YACpC,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;SACtD;IACH,CAAC;IAED,4DAA4D;IAC5D,qDAAqD;IAE3C,gBAAgB,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAC1F,MAAM,UAAU,GAAG,IAAI,CAAC,KAAwB,CAAC;QAEjD,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YAC7B,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAE3D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC1C,+BAA+B;gBAC/B,IAAI,CAAC,KAAK,aAAa,CAAC,MAAM;oBAAE,MAAM;gBACtC,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;gBAChC,MAAM,GAAG,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;gBAC7B,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;aAChD;SACF;IACH,CAAC;IAED,EAAE;IACF,0BAA0B;IAC1B,EAAE;IAEF,6CAA6C;IAE7C,gDAAgD;IAEhD,+BAA+B;IAErB,UAAU,CAAC,IAAc,EAAE,MAA4B,EAAE,MAAkB;QACnF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAe,CAAC;QACnC,MAAM,KAAK,GAAG,KAAK,CAAC;QACpB,MAAM,GAAG,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAY,CAAC;QACjC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC;QAC7B,IAAI,KAAK,IAAI,KAAK,EAAE;YAClB,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE;gBAAE,IAAI,CAAC,SAAS,EAAE,CAAC;YAClD,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YACxB,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;IACH,CAAC;IAED,kCAAkC;IAExB,aAAa,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACvF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAe,CAAC;QACnC,MAAM,QAAQ,GAAG,KAAK,CAAC;QACvB,MAAM,KAAK,GAAG,CAAC,CAAC;QAChB,IAAI,KAAK,IAAI,QAAQ,EAAE;YACrB,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE;gBAAE,IAAI,CAAC,SAAS,EAAE,CAAC;YACjD,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC3B,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;IACH,CAAC;IAED,0CAA0C;IAEhC,SAAS,CAAC,IAAc,EAAE,MAA4B,EAAE,MAAkB;QAClF,MAAM,GAAG,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAY,CAAC;QAEjC,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,EAAE;YACrB,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YACvC,IAAI,GAAG,CAAC,SAAS,EAAE;gBACjB,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBAChC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAEf,IAAI,GAAG,CAAC,YAAY,EAAE;oBACpB,IAAI,CAAC,aAAa,EAAE,CAAC;oBACrB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;oBACnC,IAAI,CAAC,OAAO,EAAE,CAAC;iBAChB;aACF;SACF;IACH,CAAC;IAED,6CAA6C;IAEnC,WAAW,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACrF,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;IACH,CAAC;IAED,gDAAgD;IAEtC,cAAc,CAAC,IAAc,EAAE,MAA4B,EAAE,MAAkB;QACvF,MAAM,GAAG,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAY,CAAC;QAEjC,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,EAAE;YACrB,sDAAsD;YACtD,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;gBACb,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;aAChB;SACF;IACH,CAAC;IAED,0BAA0B;IAE1B,0BAA0B;IAE1B,aAAa;IAEH,SAAS,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACnF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAe,CAAC;QACnC,MAAM,IAAI,GAAG,KAAK,CAAC;QACnB,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACvB,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;IACH,CAAC;IAED,uDAAuD;IAE7C,gBAAgB,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAC1F,MAAM,KAAK,GAAG,IAAI,CAAC,KAAe,CAAC;QACnC,MAAM,IAAI,GAAG,KAAK,CAAC;QACnB,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACvB,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;IACH,CAAC;IAED,mDAAmD;IAEzC,YAAY,CAAC,IAAc,EAAE,MAA4B,EAAE,MAAkB;;QACrF,MAAM,KAAK,GAAG,IAAI,CAAC,KAA4B,CAAC;QAChD,MAAM,SAAS,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC,SAAS,mCAAI,KAAK,CAAC;QACnD,MAAM,gBAAgB,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC,gBAAgB,mCAAI,KAAK,CAAC;QAEjE,IAAI,CAAC,SAAS;YAAE,OAAO;QAEvB,IAAI,gBAAgB,EAAE;YACpB,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;aAAM,IAAI,KAAK,IAAI,IAAI,EAAE;YACxB,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YAC5B,IAAI,CAAC,UAAU,EAAE,CAAC;YAElB,IAAI,KAAK,KAAK,IAAI,EAAE;gBAClB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;aAC1B;iBAAM,IAAI,KAAK,KAAK,KAAK,EAAE;gBAC1B,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;aAC3B;iBAAM;gBACL,SAAS;gBACT,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;aACzB;YACD,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;IACH,CAAC;IAED,sDAAsD;IAE5C,aAAa,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACvF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAe,CAAC;QACnC,MAAM,IAAI,GAAG,KAAK,CAAC;QACnB,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;SACxB;IACH,CAAC;IAED,6CAA6C;IAEnC,eAAe,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACzF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAe,CAAC;QACnC,MAAM,IAAI,GAAG,KAAK,CAAC;QACnB,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;SACxB;IACH,CAAC;IAED,+DAA+D;IAErD,kBAAkB,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAC5F,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC9B;IACH,CAAC;IAED,uFAAuF;IACvF,6BAA6B;IAEnB,mBAAmB,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAC7F,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;IACH,CAAC;IAED,qFAAqF;IACrF,wFAAwF;IAE9E,WAAW,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACrF,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;IACH,CAAC;IAED,sFAAsF;IACtF,yFAAyF;IAE/E,YAAY,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACtF,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;IACH,CAAC;IAED,2DAA2D;IAEjD,oBAAoB,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAC9F,IAAI,CAAC,aAAa,CAAC,iBAAiB,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACvE,CAAC;IAED,qDAAqD;IAErD,wDAAwD;IAE9C,YAAY,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACtF,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,+DAA+D;IAErD,mBAAmB,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAC7F,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,gEAAgE;IAChE,kEAAkE;IAExD,QAAQ,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAClF,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC9B;IACH,CAAC;IAED,kFAAkF;IAClF,2GAA2G;IAEjG,gBAAgB,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAC1F,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC9B;IACH,CAAC;IAED,6EAA6E;IAC7E,2FAA2F;IAEjF,aAAa,CAAC,IAAc,EAAE,MAA4B,EAAE,MAAkB;QACtF,0FAA0F;QAC1F,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,MAAK,mBAAQ,CAAC,cAAc,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,MAAK,mBAAQ,CAAC,eAAe;YAAE,OAAO;QAEhG,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC7B,kBAAkB;SACnB;IACH,CAAC;IAED,wDAAwD;IAExD,qDAAqD;IACrD,oEAAoE;IACpE,sFAAsF;IACtF,qDAAqD;IAE3C,UAAU,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACpF,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAES,UAAU,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACpF,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAES,UAAU,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACpF,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAES,UAAU,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACpF,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAES,UAAU,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACpF,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAES,WAAW,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACrF,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAES,QAAQ,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAClF,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAES,YAAY,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACtF,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IAES,cAAc,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACxF,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;IAES,aAAa,CAAC,KAAe,EAAE,OAA6B,EAAE,MAAkB;QACxF,6FAA6F;QAC7F,8CAA8C;IAChD,CAAC;IAES,gBAAgB,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAC1F,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAChD,CAAC;IAES,YAAY,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACtF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAe,CAAC;QACnC,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACvC,CAAC;IAED,qDAAqD;IACrD,oEAAoE;IACpE,sFAAsF;IACtF,wDAAwD;IAE9C,aAAa,CAAC,IAAc,EAAE,MAA4B,EAAE,MAAkB;QACtF,2GAA2G;QAC3G,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,MAAK,mBAAQ,CAAC,SAAS;YAAE,OAAO;QAE/C,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;IAES,SAAS,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACnF,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAES,aAAa,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QACvF,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;IAES,mBAAmB,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAC7F,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACnD,CAAC;IAES,kBAAkB,CAAC,IAAc,EAAE,OAA6B,EAAE,MAAkB;QAC5F,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;IAED,EAAE;IACF,0BAA0B;IAC1B,EAAE;IAEF;;OAEG;IAEH,8FAA8F;IAC9F,YAAY;IACZ,sCAAsC;IACtC,eAAe;IACf,+DAA+D;IAC/D,oEAAoE;IACpE,MAAM;IACN,IAAI;IAEM,wBAAwB;;QAChC,MAAM,gBAAgB,GAAG,eAAM,CAAC,sBAAsB,EAAE,CAAC;QAEzD,KAAK,MAAM,cAAc,IAAI,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE;YAC5D,MAAM,MAAM,GAAG,MAAA,cAAc,CAAC,MAAM,mCAAI,cAAc,CAAC,GAAG,CAAC;YAE3D,0EAA0E;YAC1E,IAAI,MAAM,KAAK,yBAAW,CAAC,OAAO;gBAAE,SAAS;YAC7C,IAAI,MAAM,KAAK,yBAAW,CAAC,SAAS;gBAAE,SAAS;YAC/C,IAAI,MAAM,KAAK,yBAAW,CAAC,UAAU;gBAAE,SAAS;YAChD,IAAI,MAAM,KAAK,yBAAW,CAAC,WAAW;gBAAE,SAAS;YACjD,IAAI,MAAM,KAAK,yBAAW,CAAC,WAAW;gBAAE,SAAS;YACjD,IAAI,MAAM,KAAK,yBAAW,CAAC,OAAO;gBAAE,SAAS;YAC7C,IAAI,MAAM,KAAK,+BAAc,CAAC,UAAU;gBAAE,SAAS;YAEnD,MAAM,QAAQ,GAAG,SAAS,MAAM,EAAE,CAAC;YAEnC,8DAA8D;YAC7D,IAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAc,EAAE,MAA4B,EAAE,MAAkB,EAAE,EAAE;gBAC7F,MAAM,KAAK,GAAG,IAAI,CAAC,KAA8B,CAAC;gBAClD,IAAI,KAAK,IAAI,IAAI;oBAAE,OAAO;gBAE1B,mDAAmD;gBAEnD,kGAAkG;gBAClG,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,MAAK,mBAAQ,CAAC,SAAS;oBAAE,OAAO;gBAE/C,qBAAqB;gBACrB,IAAI,CAAC,aAAa,CAChB,cAAc,CAAC,GAAG,EAClB,IAAI,CAAC,KAAK,EACV,cAAc,CAAC,MAAM,EACrB,cAAc,CAAC,YAAY,KAAK,OAAO,EACvC,cAAc,CAAC,YAAY,KAAK,MAAM,CACvC,CAAC;YACJ,CAAC,CAAC;YAEF,YAAY;YACZ,8DAA8D;YAC7D,IAAY,CAAC,QAAQ,CAAC,GAAI,IAAY,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC9D;IACH,CAAC;IAED,oBAAoB;IAEpB,EAAE;IACF,kBAAkB;IAClB,EAAE;IAEQ,WAAW,CAAC,CAAU;QAC9B,IAAI,CAAC,IAAI,IAAI;YAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC;IAES,UAAU;QAClB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAES,UAAU;QAClB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAES,aAAa;QACrB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAES,aAAa;QACrB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAES,QAAQ;QAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAES,QAAQ;QAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAES,QAAQ;QAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAES,QAAQ;QAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAES,QAAQ;QAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAES,QAAQ;QAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAES,QAAQ;QAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAES,QAAQ;QAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAES,QAAQ;QAChB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IAES,QAAQ;QAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAES,QAAQ;QAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAES,UAAU;QAClB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAES,aAAa;QACrB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAES,WAAW;QACnB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAES,UAAU;QAClB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAES,WAAW;QACnB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,6CAA6C;IAChE,CAAC;IAES,OAAO;QACf,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClB,CAAC;IAES,OAAO;QACf,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClB,CAAC;IAES,cAAc;QACtB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClB,CAAC;IAES,UAAU;QAClB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClB,CAAC;IAED,uCAAuC;IACvC,sBAAsB;IACtB,IAAI;IAEM,SAAS;QACjB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClB,CAAC;IAES,iBAAiB;QACzB,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,KAAK,+BAAc,CAAC,EAAE,EAAE;YACrD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SACnB;aAAM;YACL,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;SACpB;IACH,CAAC;IAES,eAAe;QACvB,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,KAAK,+BAAc,CAAC,EAAE,EAAE;YACrD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SACnB;aAAM;YACL,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;SACpB;IACH,CAAC;IAES,uBAAuB;QAC/B,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,KAAK,+BAAc,CAAC,EAAE,EAAE;YACrD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SACnB;aAAM;YACL,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;SACpB;IACH,CAAC;IAES,uBAAuB;QAC/B,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,KAAK,+BAAc,CAAC,EAAE,EAAE;YACrD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SAClB;aAAM;YACL,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SAClB;IACH,CAAC;IAES,0BAA0B;QAClC,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,KAAK,+BAAc,CAAC,EAAE,EAAE;YACrD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SAClB;aAAM;YACL,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SAClB;IACH,CAAC;IAES,OAAO;QACf,IAAI,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE;YACtC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAClB,OAAO;SACR;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAES,aAAa,CAAC,QAAkB;;QACxC,MAAM,iBAAiB,GAAG,QAA2B,CAAC;QAEtD,IAAI,QAAQ,EAAE;YACZ,qEAAqE;YACrE,0BAA0B;YAE1B,wGAAwG;YACxG,qBAAqB;YACrB,wBAAwB;YACxB,kBAAkB;YAClB,IAAI;YAEJ,sDAAsD;YACtD,4BAA4B;YAE5B,gBAAgB;YAChB,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAI,CAAC,WAAW,CAAC,MAAA,QAAQ,CAAC,SAAS,mCAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;YACtD,IAAI,QAAQ,CAAC,IAAI,KAAK,yBAAW,CAAC,OAAO,IAAI,iBAAiB,CAAC,KAAK,EAAE;gBACpE,IAAI,CAAC,UAAU,EAAE,CAAC;gBAClB,kBAAkB;gBAClB,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBAC1C,IAAI,CAAC,OAAO,EAAE,CAAC;aAChB;iBAAM,IAAI,QAAQ,CAAC,KAAK,EAAE;gBACzB,IAAI,CAAC,UAAU,EAAE,CAAC;gBAClB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;aAClC;YACD,IAAI,CAAC,OAAO,EAAE,CAAC;SAChB;IACH,CAAC;IAES,aAAa,CACrB,IAAY,EACZ,MAA4B,EAC5B,UAAoB,EACpB,WAAqB,EACrB,UAAoB;QAEpB,IAAI,WAAsB,CAAC;QAC3B,IAAI,cAAc,GAAG,KAAK,CAAC;QAE3B,IAAI,MAAM,KAAK,SAAS,EAAE;YACxB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;gBAC1B,WAAW,GAAG,CAAC,MAAM,CAAC,CAAC;aACxB;iBAAM;gBACL,WAAW,GAAG,MAAM,CAAC;aACtB;YAED,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC1B,IAAI,UAAU;oBAAE,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAExE,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE;oBAC7B,IAAI,GAAG,KAAK,SAAS,EAAE;wBACrB,IAAI,WAAW,IAAI,GAAG,KAAK,KAAK;4BAAE,SAAS;wBAC3C,IAAI,UAAU,IAAI,GAAG,KAAK,IAAI;4BAAE,SAAS;wBACzC,IAAI,CAAC,QAAQ,EAAE,CAAC;wBAChB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;wBACvB,IAAI,CAAC,UAAU,EAAE,CAAC;wBAClB,IAAI,CAAC,WAAW,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;wBAC3B,IAAI,CAAC,OAAO,EAAE,CAAC;wBACf,cAAc,GAAG,IAAI,CAAC;qBACvB;iBACF;aACF;SACF;QAED,IAAI,CAAC,cAAc,EAAE;YACnB,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;SACpC;IACH,CAAC;IAES,gBAAgB,CAAC,GAAW,EAAE,KAA4D;QAClG,IAAI,GAAG,GAAG,GAAG,CAAC;QACd,IAAI,KAAK,CAAC,IAAI,EAAE;YACd,GAAG,GAAG,IAAI,GAAG,GAAG,CAAC;SAClB;aAAM,IAAI,KAAK,CAAC,KAAK,EAAE;YACtB,GAAG,GAAG,KAAK,GAAG,GAAG,CAAC;SACnB;aAAM,IAAI,KAAK,CAAC,MAAM,EAAE;YACvB,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC;SACpB;QAED,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAES,iBAAiB,CAAC,SAAiB;QAC3C,MAAM,YAAY,GAAG,uBAAU,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,uBAAU,CAAC,iBAAiB,CAAC;QACtF,MAAM,WAAW,GAAG,CAAC,YAAY,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;QACrE,OAAO,CAAC,CAAC,WAAW,CAAC;IACvB,CAAC;IAES,cAAc,CAAC,KAAiB;QACxC,OAAO,CACL,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,qBAAW,CAAC,UAAU,CAAC;YACjD,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,qBAAW,CAAC,eAAe,CAAC;YACtD,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,qBAAW,CAAC,iBAAiB,CAAC,CACzD,CAAC;IACJ,CAAC;IAES,aAAa,CAAC,KAAiB,EAAE,WAA4B;QACrE,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAClC,OAAO,CAAA,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,IAAI,MAAK,WAAW,CAAC;IAClC,CAAC;IAES,UAAU,CAAC,KAAiB;QACpC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACxB,IAAI,IAAI,CAAC,GAAG,KAAK,mBAAQ,CAAC,SAAS,EAAE;gBACnC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAY,CAAC;gBAC5B,OAAO,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,OAAO,CAAC;aACnB;SACF;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAES,aAAa,CAAC,KAAiB,EAAE,SAAS,GAAG,CAAC;QACtD,IAAI,KAAK,CAAC,MAAM,GAAG,SAAS,GAAG,CAAC,EAAE;YAChC,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC;SAC5C;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,EAAE;IACF,mBAAmB;IACnB,EAAE;IAEF;;;OAGG;IACH,KAAK,CAAC,KAAa;QACjB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,SAAS,CAAC,KAAc;QACtB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAC,MAAgB,EAAE,SAAkB;QAC7C,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,eAAe;QACb,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAEQ,4CAAgB"}
1
+ {"version":3,"file":"BitmarkGenerator.js","sourceRoot":"","sources":["../../../../src/generator/bitmark/BitmarkGenerator.ts"],"names":[],"mappings":"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"}
@@ -63,6 +63,8 @@ class JsonGenerator {
63
63
  this.bitJson = {};
64
64
  this.textDefault = Breakscape_1.Breakscape.EMPTY_STRING;
65
65
  this.bodyDefault = Breakscape_1.Breakscape.EMPTY_STRING;
66
+ this.bodyJson = this.bodyDefault;
67
+ this.startPlaceholderIndex = 0;
66
68
  // Debug
67
69
  this.printed = false;
68
70
  this.bitmarkVersion = (_a = BitmarkVersion_1.BitmarkVersion.fromValue(options === null || options === void 0 ? void 0 : options.bitmarkVersion)) !== null && _a !== void 0 ? _a : BitmarkVersion_1.DEFAULT_BITMARK_VERSION;
@@ -126,6 +128,8 @@ class JsonGenerator {
126
128
  this.bitJson = {};
127
129
  this.textDefault = this.options.textAsPlainText ? Breakscape_1.Breakscape.EMPTY_STRING : [];
128
130
  this.bodyDefault = this.options.textAsPlainText ? Breakscape_1.Breakscape.EMPTY_STRING : [];
131
+ this.bodyJson = this.bodyDefault;
132
+ this.startPlaceholderIndex = 0;
129
133
  this.printed = false;
130
134
  }
131
135
  walkAndWrite(ast) {
@@ -326,16 +330,55 @@ class JsonGenerator {
326
330
  }
327
331
  }
328
332
  }
329
- // bitmarkAst -> bits -> bitsValue -> body -> bodyParts
333
+ // bitmarkAst -> bits -> bitsValue -> cardNode -> cardBits -> cardBitsValue
334
+ enter_cardBitsValue(node, _parent, route) {
335
+ // How cardBits are handled depends on the bit type
336
+ const bitType = this.getBitType(route);
337
+ if (!bitType)
338
+ return;
339
+ // Create the listItems / sections if not already created
340
+ let listItems;
341
+ if (bitType.alias === BitType_1.AliasBitType.pageFooter) {
342
+ if (!this.bitJson.sections)
343
+ this.bitJson.sections = [];
344
+ listItems = this.bitJson.sections;
345
+ }
346
+ else {
347
+ if (!this.bitJson.listItems)
348
+ this.bitJson.listItems = [];
349
+ listItems = this.bitJson.listItems;
350
+ }
351
+ // Create this list item
352
+ this.listItem = Object.assign(Object.assign({}, this.toItemLeadHintInstruction(node.value)), { body: this.bodyDefault });
353
+ listItems.push(this.listItem);
354
+ }
355
+ exit_cardBitsValue(_node, _parent, _route) {
356
+ this.listItem = undefined;
357
+ }
358
+ // bitmarkAst -> bits -> bitsValue -> body
359
+ enter_body(_node, _parent, _route) {
360
+ this.bodyJson = this.bodyDefault;
361
+ }
362
+ exit_body(_node, parent, _route) {
363
+ if (!parent)
364
+ return;
365
+ if (parent.key === NodeType_1.NodeType.bitsValue) {
366
+ // Body is at the bit level
367
+ this.bitJson.body = this.bodyJson;
368
+ }
369
+ else if (parent.key === NodeType_1.NodeType.cardBitsValue) {
370
+ // Body is at the list item (card bit) level
371
+ if (this.listItem)
372
+ this.listItem.body = this.bodyJson;
373
+ }
374
+ }
375
+ // bitmarkAst -> bits -> bitsValue -> * -> bodyParts (body, cardBody (e.g. cloze-list, page-footer))
330
376
  enter_bodyParts(node, _parent, route) {
331
377
  const bodyParts = node.value;
332
378
  const plainText = this.options.textAsPlainText;
333
379
  const textFormat = this.getTextFormat(route);
334
380
  let fullBodyTextStr = '';
335
- let placeholderIndex = 0;
336
- // Ensure body exists
337
- if (this.bitJson.body == null)
338
- this.bitJson.body = this.bodyDefault;
381
+ let placeholderIndex = this.startPlaceholderIndex;
339
382
  // Function for creating the placeholder keys
340
383
  const createPlaceholderKeys = (i) => {
341
384
  return {
@@ -373,12 +416,12 @@ class JsonGenerator {
373
416
  }
374
417
  }
375
418
  // Add string or AST to the body
376
- this.bitJson.body = this.convertBreakscapedStringToJsonText(fullBodyTextStr, textFormat);
377
- const bodyAst = this.bitJson.body;
419
+ this.bodyJson = this.convertBreakscapedStringToJsonText(fullBodyTextStr, textFormat);
420
+ const bodyAst = this.bodyJson;
378
421
  // Loop the body parts again to create the body bits:
379
422
  // - For text output the body bits are inserted into the 'placeholders' object
380
423
  // - For JSON output the body bits are inserted into body AST, replacing the placeholders created by the text parser
381
- placeholderIndex = 0;
424
+ placeholderIndex = this.startPlaceholderIndex;
382
425
  for (let i = 0; i < bodyParts.length; i++) {
383
426
  const bodyPart = bodyParts[i];
384
427
  // Skip text body parts as they are handled above
@@ -426,6 +469,8 @@ class JsonGenerator {
426
469
  }
427
470
  placeholderIndex++;
428
471
  }
472
+ // Save the current placeholder index for the next body (body, card bodies)
473
+ this.startPlaceholderIndex = placeholderIndex;
429
474
  // Stop traversal of this branch for efficiency
430
475
  return false;
431
476
  }
@@ -1644,10 +1689,14 @@ class JsonGenerator {
1644
1689
  */
1645
1690
  getTextFormat(route) {
1646
1691
  var _a;
1647
- for (const node of route) {
1648
- if (node.key === NodeType_1.NodeType.bitsValue) {
1649
- const n = node.value;
1650
- return (_a = TextFormat_1.TextFormat.fromValue(n === null || n === void 0 ? void 0 : n.textFormat)) !== null && _a !== void 0 ? _a : TextFormat_1.TextFormat.bitmarkMinusMinus;
1692
+ const bitType = this.getBitType(route);
1693
+ if (bitType) {
1694
+ const bitConfig = Config_1.Config.getBitConfig(bitType);
1695
+ for (const node of route) {
1696
+ if (node.key === NodeType_1.NodeType.bitsValue) {
1697
+ const n = node.value;
1698
+ return (_a = TextFormat_1.TextFormat.fromValue(n === null || n === void 0 ? void 0 : n.textFormat)) !== null && _a !== void 0 ? _a : bitConfig.textFormatDefault;
1699
+ }
1651
1700
  }
1652
1701
  }
1653
1702
  return TextFormat_1.TextFormat.bitmarkMinusMinus;
@@ -1808,6 +1857,10 @@ class JsonGenerator {
1808
1857
  content2Buy: undefined,
1809
1858
  quotedPerson: undefined,
1810
1859
  reasonableNumOfChars: undefined,
1860
+ resolved: undefined,
1861
+ resolvedDate: undefined,
1862
+ resolvedBy: undefined,
1863
+ maxCreatedBits: undefined,
1811
1864
  // Book data
1812
1865
  title: undefined,
1813
1866
  subtitle: undefined,
@@ -1849,6 +1902,8 @@ class JsonGenerator {
1849
1902
  matrix: undefined,
1850
1903
  choices: undefined,
1851
1904
  questions: undefined,
1905
+ listItems: undefined,
1906
+ sections: undefined,
1852
1907
  // Placeholders
1853
1908
  placeholders: undefined,
1854
1909
  // Footer
@@ -1882,7 +1937,8 @@ class JsonGenerator {
1882
1937
  bitJson.item = undefined;
1883
1938
  // Add default properties to the bit.
1884
1939
  // NOTE: Not all bits have the same default properties.
1885
- // The properties used in the antlr parser are a bit random sometimes?
1940
+ // The properties used are a bit random sometimes?
1941
+ // It would be better if this functionality was generated from the bit config
1886
1942
  switch (bitType.root) {
1887
1943
  case BitType_1.RootBitType._error:
1888
1944
  case BitType_1.RootBitType._comment:
@@ -1912,6 +1968,15 @@ class JsonGenerator {
1912
1968
  if (bitJson.AIGenerated == null)
1913
1969
  bitJson.AIGenerated = true;
1914
1970
  }
1971
+ // Special case for 'review-...' bits
1972
+ if (bitType.root === BitType_1.RootBitType.reviewNote) {
1973
+ if (bitJson.resolved == null)
1974
+ bitJson.resolved = false;
1975
+ if (bitJson.resolvedDate == null)
1976
+ bitJson.resolvedDate = '';
1977
+ if (bitJson.resolvedBy == null)
1978
+ bitJson.resolvedBy = '';
1979
+ }
1915
1980
  break;
1916
1981
  // Default, but with no 'example' at the bit level.
1917
1982
  case BitType_1.RootBitType.cloze:
@@ -2168,6 +2233,14 @@ class JsonGenerator {
2168
2233
  delete bitJson.content2Buy;
2169
2234
  if (bitJson.quotedPerson == null)
2170
2235
  delete bitJson.quotedPerson;
2236
+ if (bitJson.resolved == null)
2237
+ delete bitJson.resolved;
2238
+ if (bitJson.resolvedDate == null)
2239
+ delete bitJson.resolvedDate;
2240
+ if (bitJson.resolvedBy == null)
2241
+ delete bitJson.resolvedBy;
2242
+ if (bitJson.maxCreatedBits == null)
2243
+ delete bitJson.maxCreatedBits;
2171
2244
  // Book data
2172
2245
  if (bitJson.title == null)
2173
2246
  delete bitJson.title;
@@ -2241,6 +2314,10 @@ class JsonGenerator {
2241
2314
  delete bitJson.choices;
2242
2315
  if (bitJson.questions == null)
2243
2316
  delete bitJson.questions;
2317
+ if (bitJson.listItems == null)
2318
+ delete bitJson.listItems;
2319
+ if (bitJson.sections == null)
2320
+ delete bitJson.sections;
2244
2321
  // Placeholders
2245
2322
  if (!plainText || bitJson.placeholders == null)
2246
2323
  delete bitJson.placeholders;