clarity-pattern-parser 5.0.0 → 6.0.2
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.
- package/README.md +328 -38
- package/TODO.md +63 -7
- package/dist/ast/Node.d.ts +8 -2
- package/dist/index.browser.js +520 -205
- package/dist/index.browser.js.map +1 -1
- package/dist/index.d.ts +6 -1
- package/dist/index.esm.js +519 -206
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +520 -205
- package/dist/index.js.map +1 -1
- package/dist/intellisense/AutoComplete.d.ts +34 -0
- package/dist/intellisense/Suggestion.d.ts +10 -0
- package/dist/intellisense/SuggestionOption.d.ts +4 -0
- package/dist/patterns/And.d.ts +8 -7
- package/dist/patterns/Cursor.d.ts +6 -4
- package/dist/patterns/CursorHistory.d.ts +2 -2
- package/dist/patterns/Literal.d.ts +8 -8
- package/dist/patterns/Not.d.ts +9 -5
- package/dist/patterns/Or.d.ts +8 -5
- package/dist/patterns/Pattern.d.ts +8 -4
- package/dist/patterns/Reference.d.ts +11 -7
- package/dist/patterns/Regex.d.ts +8 -8
- package/dist/patterns/Repeat.d.ts +8 -7
- package/package.json +1 -1
- package/src/ast/Node.test.ts +116 -0
- package/src/ast/Node.ts +71 -5
- package/src/index.ts +14 -3
- package/src/intellisense/AutoComplete.test.ts +168 -23
- package/src/intellisense/AutoComplete.ts +102 -21
- package/src/intellisense/Suggestion.ts +3 -4
- package/src/intellisense/javascript/Javascript.test.ts +86 -62
- package/src/intellisense/javascript/{expressionStatement.ts → assignment.ts} +7 -8
- package/src/intellisense/javascript/escapedCharacter.ts +0 -1
- package/src/intellisense/javascript/exponent.ts +0 -2
- package/src/intellisense/javascript/expression.ts +44 -26
- package/src/intellisense/javascript/fraction.ts +0 -2
- package/src/intellisense/javascript/infixOperator.ts +6 -2
- package/src/intellisense/javascript/keywords.ts +3 -0
- package/src/intellisense/javascript/objectAccess.ts +9 -0
- package/src/intellisense/javascript/objectLiteral.ts +3 -3
- package/src/intellisense/javascript/propertyAccess.ts +8 -3
- package/src/intellisense/javascript/stringLiteral.ts +16 -8
- package/src/patterns/And.test.ts +74 -50
- package/src/patterns/And.ts +72 -36
- package/src/patterns/Cursor.ts +17 -14
- package/src/patterns/CursorHistory.ts +8 -8
- package/src/patterns/Literal.test.ts +79 -38
- package/src/patterns/Literal.ts +34 -41
- package/src/patterns/Not.test.ts +99 -8
- package/src/patterns/Not.ts +58 -14
- package/src/patterns/Or.test.ts +128 -13
- package/src/patterns/Or.ts +46 -13
- package/src/patterns/Pattern.ts +8 -4
- package/src/patterns/Reference.test.ts +127 -28
- package/src/patterns/Reference.ts +62 -32
- package/src/patterns/Regex.test.ts +76 -35
- package/src/patterns/Regex.ts +35 -43
- package/src/patterns/Repeat.test.ts +72 -41
- package/src/patterns/Repeat.ts +55 -38
- package/src/patterns/getNextPattern.test.ts +0 -39
- package/src/patterns/getNextPattern.ts +0 -18
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/ast/Node.ts","../src/patterns/ParseError.ts","../src/patterns/CursorHistory.ts","../src/patterns/Cursor.ts","../src/patterns/getNextPattern.ts","../src/patterns/Regex.ts","../src/patterns/clonePatterns.ts","../src/patterns/filterOutNull.ts","../src/patterns/findPattern.ts","../src/patterns/And.ts","../src/patterns/Literal.ts","../src/patterns/Not.ts","../src/patterns/Or.ts","../src/patterns/Repeat.ts","../src/patterns/Reference.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":";;;;MAWa,IAAI,CAAA;AASf,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAED,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAED,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;AAED,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;AAED,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;KAC5B;AAED,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAED,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAED,IAAA,IAAI,KAAK,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;KACxB;AAED,IAAA,WAAA,CACE,IAAY,EACZ,IAAY,EACZ,UAAkB,EAClB,SAAiB,EACjB,QAAmB,GAAA,EAAE,EACrB,KAAA,GAAgB,EAAE,EAAA;AAElB,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;AAClB,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;AAClB,QAAA,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;AAC9B,QAAA,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;AAC5B,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACpB,QAAA,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;AAC1B,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;AAEpB,QAAA,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,CAAA;KAC9C;AAED,IAAA,WAAW,CAAC,IAAU,EAAA;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAE3C,QAAA,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE;YACd,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAChC,YAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACrB,SAAA;KACF;IAED,iBAAiB,GAAA;AACf,QAAA,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;AAC9C,QAAA,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;KAC3B;IAED,YAAY,CAAC,OAAa,EAAE,aAAmB,EAAA;QAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AAEpD,QAAA,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE;YACd,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;AACzC,YAAA,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;AACvB,YAAA,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;AAC9B,SAAA;KACF;IAED,YAAY,CAAC,OAAa,EAAE,aAA0B,EAAA;AACpD,QAAA,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;QAEvB,IAAI,aAAa,IAAI,IAAI,EAAE;AACzB,YAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC7B,OAAO;AACR,SAAA;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AAEpD,QAAA,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE;YACd,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;AAC1C,SAAA;KACF;AAED,IAAA,WAAW,CAAC,OAAa,EAAA;AACvB,QAAA,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;AACvB,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KAC9B;AAED,IAAA,cAAc,CAAC,KAAa,EAAE,WAAmB,EAAE,GAAG,KAAa,EAAA;AACjE,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC,CAAC;AAEzE,QAAA,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;AACrC,QAAA,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;AAE5C,QAAA,OAAO,YAAY,CAAC;KACrB;AAED,IAAA,IAAI,CAAC,OAAgC,EAAA;QACnC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAA;KACxC;AAED,IAAA,OAAO,CAAC,OAAgC,EAAA;QACtC,MAAM,OAAO,GAAW,EAAE,CAAC;AAC3B,QAAA,IAAI,CAAC,MAAM,CAAC,CAAC,IAAG;AACd,YAAA,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE;AAAE,gBAAA,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAAE,aAAA;AACtC,SAAC,CAAC,CAAA;AAEF,QAAA,OAAO,OAAO,CAAC;KAChB;AAED,IAAA,MAAM,CAAC,QAA8B,EAAA;AACnC,QAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;QAC9C,QAAQ,CAAC,IAAI,CAAC,CAAC;KAChB;AAED,IAAA,QAAQ,CAAC,QAA8B,EAAA;QACrC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACf,QAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAA;KACjD;IAED,KAAK,GAAA;AACH,QAAA,OAAO,IAAI,IAAI,CACb,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,EACpC,IAAI,CAAC,MAAM,CACZ,CAAC;KACH;IAED,QAAQ,GAAA;AACN,QAAA,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;YAC/B,OAAO,IAAI,CAAC,MAAM,CAAC;AACpB,SAAA;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;KACtD;IAED,iBAAiB,GAAA;QACf,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,IAAI,EAAE,IAAI,CAAC,KAAK;AAChB,YAAA,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE;YACtB,UAAU,EAAE,IAAI,CAAC,WAAW;YAC5B,SAAS,EAAE,IAAI,CAAC,UAAU;YAC1B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;AACvB,YAAA,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,iBAAiB,EAAE,CAAC;SACzD,CAAA;KACF;AAED,IAAA,MAAM,CAAC,KAAc,EAAA;AACnB,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;KAC7D;AACF;;MCxLY,UAAU,CAAA;IAIrB,WAAY,CAAA,KAAa,EAAE,OAAgB,EAAA;AACzC,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AACnB,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;KACxB;AACF;;MCDY,aAAa,CAAA;AAA1B,IAAA,WAAA,GAAA;QACU,IAAY,CAAA,YAAA,GAAY,KAAK,CAAC;QAC9B,IAAU,CAAA,UAAA,GAAU,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QAClD,IAAc,CAAA,cAAA,GAAsB,IAAI,CAAC;QACzC,IAAa,CAAA,aAAA,GAAsB,IAAI,CAAC;QACxC,IAAU,CAAA,UAAA,GAAU,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QAClD,IAAS,CAAA,SAAA,GAAc,EAAE,CAAC;QAC1B,IAAM,CAAA,MAAA,GAAW,EAAE,CAAC;QACpB,IAAO,CAAA,OAAA,GAAiB,EAAE,CAAC;KA6EpC;AA3EC,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;AAED,IAAA,IAAI,aAAa,GAAA;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;KAC5B;AAED,IAAA,IAAI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;AAED,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAED,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,aAAa,CAAA;KAC1B;AAED,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;AAED,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;IAED,WAAW,CAAC,OAAgB,EAAE,IAAU,EAAA;QACtC,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,YAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC7B,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACxB,SAAA;AAED,QAAA,IAAI,CAAC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;AAClC,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC;QAE5B,MAAM,eAAe,GACnB,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC;AAEnF,QAAA,IAAI,eAAe,EAAE;AACnB,YAAA,IAAI,CAAC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;AAClC,YAAA,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC;AAC7B,SAAA;KACF;IAED,aAAa,CAAC,KAAa,EAAE,OAAgB,EAAA;QAC3C,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAC7C,QAAA,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;AAE3B,QAAA,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE;AACrE,YAAA,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;AAC7B,SAAA;QAED,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC1B,SAAA;KACF;IAED,cAAc,GAAA;AACZ,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;KAC1B;IAED,aAAa,GAAA;AACX,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;KAC3B;IAED,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;KAC3B;AAEF;;MC3FY,MAAM,CAAA;AAMjB,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAED,IAAA,IAAI,SAAS,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;KAC1B;AAED,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,aAAa,EAAE,CAAC;KAC7C;AAED,IAAA,IAAI,WAAW,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;KAClC;AAED,IAAA,IAAI,SAAS,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;KAChC;AAED,IAAA,IAAI,SAAS,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;KAChC;AAED,IAAA,IAAI,aAAa,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;KACpC;AAED,IAAA,IAAI,KAAK,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;KAC5B;AAED,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;AAED,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAED,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,IAAI,CAAA;KACnC;AAED,IAAA,IAAI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;KAC/B;AAED,IAAA,WAAA,CAAY,IAAY,EAAA;AACtB,QAAA,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;AACrB,YAAA,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;AAChD,SAAA;AAED,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;AAClB,QAAA,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;AAChB,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;AAC3B,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAC;KACrC;IAED,OAAO,GAAA;QACL,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;KACvC;IAED,WAAW,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC;KAC7B;IAED,IAAI,GAAA;AACF,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;YAClB,IAAI,CAAC,MAAM,EAAE,CAAC;AACf,SAAA;KACF;IAED,QAAQ,GAAA;AACN,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;YACtB,IAAI,CAAC,MAAM,EAAE,CAAC;AACf,SAAA;KACF;AAED,IAAA,MAAM,CAAC,QAAgB,EAAA;QACrB,IAAI,QAAQ,IAAI,CAAC,IAAI,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE;AAC5C,YAAA,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;AACxB,SAAA;KACF;IAED,eAAe,GAAA;AACb,QAAA,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;KACjB;IAED,cAAc,GAAA;AACZ,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;KACpC;IAED,QAAQ,CAAC,KAAa,EAAE,IAAY,EAAA;AAClC,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;KAC1C;IAED,WAAW,CAAC,OAAgB,EAAE,IAAU,EAAA;QACtC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;KAC1C;IAED,aAAa,CAAC,KAAa,EAAE,SAAkB,EAAA;QAC7C,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;KAC/C;IAED,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAA;KAC7B;IAED,cAAc,GAAA;AACZ,QAAA,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;KAChC;IAED,aAAa,GAAA;AACX,QAAA,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;KAC/B;IAEO,aAAa,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;KACzB;AACF;;AC/HK,SAAU,cAAc,CAAC,OAAgB,EAAA;AAC3C,IAAA,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAE9B,IAAI,MAAM,IAAI,IAAI,EAAE;AAChB,QAAA,OAAO,IAAI,CAAC;AACf,KAAA;IAED,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AACtD,IAAA,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,YAAY,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC;IAE9D,IAAI,WAAW,IAAI,IAAI,EAAE;AACrB,QAAA,OAAO,MAAM,CAAC,cAAc,EAAE,CAAC;AAClC,KAAA;AAED,IAAA,OAAO,WAAW,CAAC;AACvB;;MCZa,KAAK,CAAA;AAchB,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAED,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAED,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;IAED,IAAI,MAAM,CAAC,OAAuB,EAAA;AAChC,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;KACxB;AAED,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,EAAE,CAAC;KACX;AAED,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;AAED,IAAA,WAAA,CAAY,IAAY,EAAE,KAAa,EAAE,UAAU,GAAG,KAAK,EAAA;QA/BnD,IAAK,CAAA,KAAA,GAAgB,IAAI,CAAC;QAC1B,IAAO,CAAA,OAAA,GAAkB,IAAI,CAAC;QAC9B,IAAU,CAAA,UAAA,GAAW,EAAE,CAAC;QACxB,IAAO,CAAA,OAAA,GAAa,EAAE,CAAC;QACvB,IAA8B,CAAA,8BAAA,GAAG,KAAK,CAAC;QACvC,IAA6B,CAAA,6BAAA,GAAY,KAAK,CAAC;AA2BrD,QAAA,IAAI,CAAC,KAAK,GAAG,OAAO,CAAA;AACpB,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;AAClB,QAAA,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;AAC9B,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACpB,QAAA,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;AAClC,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,CAAI,CAAA,EAAA,KAAK,CAAE,CAAA,EAAE,GAAG,CAAC,CAAC;QAC3C,IAAI,CAAC,eAAe,EAAE,CAAC;KACxB;IAEO,eAAe,GAAA;AACrB,QAAA,IAAI,IAAI,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE;AACxC,YAAA,MAAM,IAAI,KAAK,CACb,uFAAuF,CACxF,CAAC;AACH,SAAA;QAED,IAAI,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;AAC/C,YAAA,MAAM,IAAI,KAAK,CACb,qHAAqH,CACtH,CAAC;AACH,SAAA;AAED,QAAA,IAAI,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE;AAClF,YAAA,MAAM,IAAI,KAAK,CACb,mHAAmH,CACpH,CAAC;AACH,SAAA;KACF;AAED,IAAA,SAAS,CAAC,IAAY,EAAA;AACpB,QAAA,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAE9B,OAAO;YACL,GAAG;YACH,MAAM;SACP,CAAC;KACH;AAED,IAAA,KAAK,CAAC,MAAc,EAAA;AAClB,QAAA,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AACxB,QAAA,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAExB,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAEO,IAAA,UAAU,CAAC,MAAc,EAAA;AAC/B,QAAA,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;AACtB,QAAA,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC;AAC1B,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC/D,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;KACnB;AAEO,IAAA,UAAU,CAAC,MAAc,EAAA;AAC/B,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEjD,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,CAAC,KAAK,KAAK,CAAC,EAAE;AACxC,YAAA,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AACpC,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;AAC3B,SAAA;KACF;IAEO,aAAa,CAAC,MAAc,EAAE,MAAuB,EAAA;AAC3D,QAAA,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC;AAClC,QAAA,MAAM,QAAQ,GAAG,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAErD,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,CACnB,OAAO,EACP,IAAI,CAAC,KAAK,EACV,YAAY,EACZ,QAAQ,EACR,EAAE,EACF,MAAM,CAAC,CAAC,CAAC,CACV,CAAC;AAEF,QAAA,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACxB,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;KACtC;AAEO,IAAA,YAAY,CAAC,MAAc,EAAA;AACjC,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AAC1C,SAAA;AAED,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;KACnB;IAED,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC,WAAW,EAAA;AACpD,QAAA,MAAM,OAAO,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC;QACvE,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;AACvC,QAAA,OAAO,CAAC,8BAA8B;YACpC,IAAI,CAAC,8BAA8B,CAAC;AAEtC,QAAA,OAAO,OAAO,CAAC;KAChB;IAED,SAAS,GAAA;AACP,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QAE5B,IAAI,IAAI,CAAC,8BAA8B;AACrC,YAAA,MAAM,IAAI,IAAI;YACd,CAAC,IAAI,CAAC,6BAA6B,EACnC;AACA,YAAA,IAAI,CAAC,6BAA6B,GAAG,IAAI,CAAC;AAE1C,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;YAC5B,MAAM,eAAe,GAAa,EAAE,CAAC;YACrC,MAAM,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;AAE9C,YAAA,KAAK,IAAI,SAAS,IAAI,UAAU,EAAE;AAChC,gBAAA,KAAK,IAAI,KAAK,IAAI,MAAM,EAAE;AACxB,oBAAA,eAAe,CAAC,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC;AACzC,iBAAA;AACF,aAAA;AAED,YAAA,IAAI,CAAC,6BAA6B,GAAG,KAAK,CAAA;AAC1C,YAAA,OAAO,eAAe,CAAC;AACxB,SAAA;QAED,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;AAED,IAAA,aAAa,CAAC,UAAmB,EAAA;AAC/B,QAAA,OAAO,EAAE,CAAC;KACX;IAED,cAAc,GAAA;AACZ,QAAA,OAAO,cAAc,CAAC,IAAI,CAAC,CAAA;KAC5B;AAED,IAAA,WAAW,CAAC,QAA+B,EAAA;AACzC,QAAA,OAAO,IAAI,CAAC;KACb;AAED,IAAA,SAAS,CAAC,MAAgB,EAAA;AACxB,QAAA,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;KACvB;IAED,gCAAgC,GAAA;AAC9B,QAAA,IAAI,CAAC,8BAA8B,GAAG,IAAI,CAAC;KAC5C;IAED,iCAAiC,GAAA;AAC/B,QAAA,IAAI,CAAC,8BAA8B,GAAG,KAAK,CAAC;KAC7C;AAEF;;AC7Le,SAAA,aAAa,CAAC,QAAmB,EAAE,UAAoB,EAAA;AACnE,IAAA,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAA;AACzD;;ACFM,SAAU,aAAa,CAAC,KAAsB,EAAA;IAChD,MAAM,aAAa,GAAW,EAAE,CAAC;AAEjC,IAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACtB,IAAI,IAAI,KAAK,IAAI,EAAE;AACf,YAAA,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,SAAA;AACJ,KAAA;AAED,IAAA,OAAO,aAAa,CAAC;AACzB;;ACVgB,SAAA,WAAW,CAAC,OAAgB,EAAE,SAAwC,EAAA;IAClF,IAAI,QAAQ,GAAc,EAAE,CAAC;AAE7B,IAAA,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE;QAC9B,QAAQ,GAAG,EAAE,CAAC;AACjB,KAAA;AAAM,SAAA;AACH,QAAA,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;AAC/B,KAAA;AAED,IAAA,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE;QAC1B,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAE7C,IAAI,MAAM,KAAK,IAAI,EAAE;AACjB,YAAA,OAAO,MAAM,CAAC;AACjB,SAAA;AACJ,KAAA;AAED,IAAA,IAAI,SAAS,CAAC,OAAO,CAAC,EAAE;AACpB,QAAA,OAAO,OAAO,CAAC;AAClB,KAAA;AAAM,SAAA;AACH,QAAA,OAAO,IAAI,CAAC;AACf,KAAA;AACL;;MChBa,GAAG,CAAA;AAUd,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAED,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAED,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;IAED,IAAI,MAAM,CAAC,OAAuB,EAAA;AAChC,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;KACxB;AAED,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAED,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;AAED,IAAA,WAAA,CAAY,IAAY,EAAE,QAAmB,EAAE,UAAU,GAAG,KAAK,EAAA;AAC/D,QAAA,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;AACzB,YAAA,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;AACrE,SAAA;AAED,QAAA,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;AACzC,QAAA,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAA;AAEtC,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AACnB,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;AAClB,QAAA,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;AAC9B,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACpB,QAAA,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;AAC1B,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAA;AACrB,QAAA,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;AAC9B,QAAA,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;KAClB;AAEO,IAAA,uBAAuB,CAAC,QAAmB,EAAA;AACjD,QAAA,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE;AAC5B,YAAA,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;AACrB,SAAA;KACF;AAED,IAAA,SAAS,CAAC,IAAY,EAAA;AACpB,QAAA,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAE9B,OAAO;YACL,GAAG;YACH,MAAM;SACP,CAAC;KACH;AAED,IAAA,KAAK,CAAC,MAAc,EAAA;AAClB,QAAA,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;AAChC,QAAA,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QAEjB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AAEvC,QAAA,IAAI,MAAM,EAAE;YACV,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAErC,IAAI,IAAI,KAAK,IAAI,EAAE;AACjB,gBAAA,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAChC,aAAA;AAED,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;QAED,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,MAAM,CAAC,YAAY,EAAE,CAAC;AACvB,SAAA;AAED,QAAA,OAAO,IAAI,CAAC;KACb;AAEO,IAAA,UAAU,CAAC,MAAc,EAAA;QAC/B,IAAI,MAAM,GAAG,KAAK,CAAC;AAEnB,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAC9C,YAAA,MAAM,kBAAkB,GAAG,MAAM,CAAC,KAAK,CAAC;AACxC,YAAA,MAAM,gBAAgB,GAAG,CAAC,GAAG,CAAC,CAAC;YAC/B,MAAM,eAAe,GAAG,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;AAEjE,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AAC7C,YAAA,MAAM,UAAU,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC;AACpC,YAAA,MAAM,QAAQ,GAAG,IAAI,KAAK,IAAI,CAAC;AAE/B,YAAA,IAAI,UAAU,EAAE;AACd,gBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEvB,gBAAA,IAAI,eAAe,EAAE;AACnB,oBAAA,IAAI,QAAQ,EAAE;AACZ,wBAAA,IAAI,MAAM,CAAC,OAAO,EAAE,EAAE;4BACpB,MAAM,CAAC,IAAI,EAAE,CAAC;4BACd,SAAS;AACV,yBAAA;AAAM,6BAAA;AACL,4BAAA,IAAI,IAAI,CAAC,4BAA4B,CAAC,CAAC,CAAC,EAAE;gCACxC,MAAM,GAAG,IAAI,CAAC;gCACd,MAAM;AACP,6BAAA;4BAED,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;4BAC7C,MAAM;AACP,yBAAA;AACF,qBAAA;AAAM,yBAAA;AACL,wBAAA,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;wBAClC,SAAS;AACV,qBAAA;AACF,iBAAA;AAAM,qBAAA;AACL,oBAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACzC,IAAI,QAAQ,KAAK,IAAI,EAAE;wBACrB,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;wBACzC,MAAM;AACP,qBAAA;oBAED,MAAM,GAAG,IAAI,CAAC;oBACd,MAAM;AACP,iBAAA;AACF,aAAA;AAAM,iBAAA;AACL,gBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAChC,MAAM;AACP,aAAA;AACF,SAAA;AAED,QAAA,OAAO,MAAM,CAAC;KACf;IAEO,gBAAgB,GAAA;QACtB,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAEzC,QAAA,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;AACtB,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;QAED,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;KAChC;AAEO,IAAA,4BAA4B,CAAC,SAAiB,EAAA;AACpD,QAAA,MAAM,YAAY,GAAG,SAAS,GAAG,CAAC,CAAC;AACnC,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;QAErC,KAAK,IAAI,CAAC,GAAG,YAAY,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;YAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AAClC,YAAA,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;AACvB,gBAAA,OAAO,KAAK,CAAC;AACd,aAAA;AACF,SAAA;AAED,QAAA,OAAO,IAAI,CAAC;KACb;AAEO,IAAA,UAAU,CAAC,MAAc,EAAA;QAC/B,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAE5C,QAAA,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1D,QAAA,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;AAE3D,QAAA,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAExB,IAAI,IAAI,CAAC,gBAAgB,EAAE;AACzB,YAAA,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;AACrB,SAAA;AAED,QAAA,OAAO,IAAI,IAAI,CACb,KAAK,EACL,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,WAAW,EAChB,SAAS,EACT,QAAQ,EACR,IAAI,CAAC,gBAAgB,GAAG,KAAK,GAAG,SAAS,CAC1C,CAAC;KACH;IAED,kBAAkB,GAAA;AAChB,QAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;KAC9B;IAED,mBAAmB,GAAA;AACjB,QAAA,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;KAC/B;IAED,SAAS,GAAA;QACP,MAAM,MAAM,GAAa,EAAE,CAAC;AAE5B,QAAA,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE;YAClC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;AAElC,YAAA,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;gBACrB,MAAM;AACP,aAAA;AACF,SAAA;AAED,QAAA,OAAO,MAAM,CAAC;KACf;AAED,IAAA,aAAa,CAAC,WAAoB,EAAA;QAChC,IAAI,WAAW,GAAmB,IAAI,CAAC;AACvC,QAAA,IAAI,gBAAgB,GAAG,CAAC,CAAC,CAAC;AAC1B,QAAA,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC;QACf,MAAM,MAAM,GAAa,EAAE,CAAC;AAE5B,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC9C,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE;gBACrC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;oBACjC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AACrC,iBAAA;AACD,gBAAA,gBAAgB,GAAG,CAAC,GAAG,CAAC,CAAC;gBACzB,KAAK,GAAG,CAAC,CAAC;gBACV,MAAM;AACP,aAAA;AACF,SAAA;AAED,QAAA,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;AAChB,YAAA,OAAO,EAAE,CAAC;AACX,SAAA;AAED,QAAA,IAAI,gBAAgB,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE;YACvE,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;AACzC,SAAA;QAED,IAAI,WAAW,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE;AACnD,YAAA,OAAO,WAAW,CAAC,SAAS,EAAE,CAAC;AAChC,SAAA;AAED,QAAA,IAAI,WAAW,KAAK,IAAI,IAAI,WAAW,CAAC,UAAU,EAAE;AAClD,YAAA,KAAK,IAAI,CAAC,GAAG,gBAAgB,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAChC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;AAElC,gBAAA,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;oBACrB,MAAM;AACP,iBAAA;AAED,gBAAA,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE;AAC5D,oBAAA,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;AAClD,iBAAA;AACF,aAAA;AACF,SAAA;AAED,QAAA,OAAO,MAAM,CAAC;KACf;IAED,cAAc,GAAA;AACZ,QAAA,OAAO,cAAc,CAAC,IAAI,CAAC,CAAA;KAC5B;AAED,IAAA,WAAW,CAAC,OAA8B,EAAA;AACxC,QAAA,OAAO,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;KACnC;IAED,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC,WAAW,EAAA;AACpD,QAAA,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;AACrD,QAAA,GAAG,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;AAE7C,QAAA,OAAO,GAAG,CAAA;KACX;AACF;;MCnRY,OAAO,CAAA;AAYlB,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAED,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAED,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;IAED,IAAI,MAAM,CAAC,OAAuB,EAAA;AAChC,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;KACxB;AAED,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,EAAE,CAAC;KACX;AAED,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;AAED,IAAA,WAAA,CAAY,IAAY,EAAE,KAAa,EAAE,UAAU,GAAG,KAAK,EAAA;AACzD,QAAA,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAC;AACrB,YAAA,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;AAC3C,SAAA;AAED,QAAA,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;AACvB,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;AAClB,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAChC,QAAA,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;AAC9B,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACpB,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;AACrB,QAAA,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;AACpB,QAAA,IAAI,CAAC,8BAA8B,GAAG,KAAK,CAAC;AAC5C,QAAA,IAAI,CAAC,6BAA6B,GAAG,KAAK,CAAC;KAC5C;AAED,IAAA,SAAS,CAAC,IAAY,EAAA;AACpB,QAAA,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAE9B,OAAO;YACL,GAAG;YACH,MAAM;SACP,CAAC;KACH;AAED,IAAA,KAAK,CAAC,MAAc,EAAA;AAClB,QAAA,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;QAEhC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;AAExC,QAAA,IAAI,MAAM,EAAE;YACV,MAAM,CAAC,YAAY,EAAE,CAAC;AACtB,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;AAChC,YAAA,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAE/B,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;AAED,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;AACxC,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;QAED,MAAM,CAAC,YAAY,EAAE,CAAC;AACtB,QAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAChC,QAAA,OAAO,IAAI,CAAC;KACb;AAEO,IAAA,WAAW,CAAC,MAAc,EAAA;QAChC,IAAI,MAAM,GAAG,KAAK,CAAC;AACnB,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QAE7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,iBAAiB,EAAE,CAAC,EAAE,EAAE;YAC1C,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACnC,YAAA,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC;YAEtC,IAAI,WAAW,KAAK,UAAU,EAAE;gBAC9B,MAAK;AACN,aAAA;AAED,YAAA,IAAI,CAAC,GAAG,CAAC,KAAK,iBAAiB,EAAE;AAC/B,gBAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;gBAC9D,MAAM,GAAG,IAAI,CAAC;gBACd,MAAM;AACP,aAAA;AAED,YAAA,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE;gBACrB,MAAM;AACP,aAAA;YAED,MAAM,CAAC,IAAI,EAAE,CAAC;AACf,SAAA;AAED,QAAA,OAAO,MAAM,CAAA;KACd;IAEO,WAAW,GAAA;QACjB,OAAO,IAAI,IAAI,CACb,SAAS,EACT,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,UAAU,EACf,EAAE,EACF,IAAI,CAAC,QAAQ,CACd,CAAC;KACH;IAED,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC,WAAW,EAAA;AACpD,QAAA,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AAC3D,QAAA,KAAK,CAAC,8BAA8B,GAAG,IAAI,CAAC,8BAA8B,CAAC;AAC3E,QAAA,OAAO,KAAK,CAAC;KACd;IAED,SAAS,GAAA;AACP,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QAE5B,IACE,IAAI,CAAC,8BAA8B;AACnC,YAAA,MAAM,IAAI,IAAI;YACd,CAAC,IAAI,CAAC,6BAA6B,EACnC;AACA,YAAA,IAAI,CAAC,6BAA6B,GAAG,IAAI,CAAC;YAE1C,MAAM,eAAe,GAAa,EAAE,CAAC;YACrC,MAAM,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;AAE9C,YAAA,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;gBAClC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC;AACjD,aAAA;AAED,YAAA,IAAI,CAAC,6BAA6B,GAAG,KAAK,CAAC;AAC3C,YAAA,OAAO,eAAe,CAAC;AACxB,SAAA;AAAM,aAAA;AACL,YAAA,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACxB,SAAA;KACF;AAED,IAAA,aAAa,CAAC,YAAqB,EAAA;AACjC,QAAA,OAAO,EAAE,CAAC;KACX;IAED,cAAc,GAAA;AACZ,QAAA,OAAO,cAAc,CAAC,IAAI,CAAC,CAAA;KAC5B;AAED,IAAA,WAAW,CAAC,QAAiC,EAAA;AAC3C,QAAA,OAAO,IAAI,CAAC;KACb;IAED,gCAAgC,GAAA;AAC9B,QAAA,IAAI,CAAC,8BAA8B,GAAG,IAAI,CAAC;KAC5C;IAED,iCAAiC,GAAA;AAC/B,QAAA,IAAI,CAAC,8BAA8B,GAAG,KAAK,CAAC;KAC7C;AAEF;;MC/KY,GAAG,CAAA;AAMd,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAED,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAED,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,OAAO,KAAK,CAAC;KACd;AAED,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;IAED,IAAI,MAAM,CAAC,OAAuB,EAAA;AAChC,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;KACxB;AAED,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;IAED,WAAY,CAAA,IAAY,EAAE,OAAgB,EAAA;AACxC,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AACnB,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;AAClB,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACpB,QAAA,IAAI,CAAC,SAAS,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QACtD,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;KACjC;AAED,IAAA,SAAS,CAAC,IAAY,EAAA;AACpB,QAAA,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAE9B,OAAO;YACL,GAAG;YACH,MAAM;SACP,CAAC;KACH;AAED,IAAA,KAAK,CAAC,MAAc,EAAA;AAClB,QAAA,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC;QAChC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAEhC,IAAI,MAAM,CAAC,QAAQ,EAAE;YACnB,MAAM,CAAC,YAAY,EAAE,CAAC;AACtB,YAAA,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AAC3B,SAAA;AAAM,aAAA;AACL,YAAA,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAC1B,MAAM,CAAC,YAAY,EAAE,CAAC;AACtB,YAAA,MAAM,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;AACxC,SAAA;AAED,QAAA,OAAO,IAAI,CAAC;KACb;AAED,IAAA,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,EAAA;AACrB,QAAA,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7C,QAAA,OAAO,GAAG,CAAC;KACZ;IAED,cAAc,GAAA;AACZ,QAAA,OAAO,cAAc,CAAC,IAAI,CAAC,CAAA;KAC5B;IAED,SAAS,GAAA;AACP,QAAA,OAAO,EAAE,CAAC;KACX;AAED,IAAA,aAAa,CAAC,YAAqB,EAAA;AACjC,QAAA,OAAO,EAAE,CAAC;KACX;AAED,IAAA,WAAW,CAAC,OAAgC,EAAA;QAC1C,OAAO,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;KAC9D;AAEF;;MCnFY,EAAE,CAAA;AASb,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAED,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAED,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;IAED,IAAI,MAAM,CAAC,OAAuB,EAAA;AAChC,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;KACxB;AAED,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAED,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;AAED,IAAA,WAAA,CAAY,IAAY,EAAE,OAAkB,EAAE,aAAsB,KAAK,EAAA;AACvE,QAAA,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;AACxB,YAAA,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;AACpE,SAAA;QAED,MAAM,QAAQ,GAAG,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AAC/C,QAAA,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;AAEvC,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;AAClB,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;AAClB,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACpB,QAAA,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;AAC1B,QAAA,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;AAC9B,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;AAClB,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;KACtB;AAEO,IAAA,uBAAuB,CAAC,QAAmB,EAAA;AACjD,QAAA,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE;AAC5B,YAAA,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;AACrB,SAAA;KACF;AAED,IAAA,SAAS,CAAC,IAAY,EAAA;AACpB,QAAA,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAE9B,OAAO;YACL,GAAG;YACH,MAAM;SACP,CAAC;KACH;AAED,IAAA,KAAK,CAAC,MAAc,EAAA;AAClB,QAAA,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;AAChC,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAElB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAEtC,IAAI,IAAI,IAAI,IAAI,EAAE;YAChB,MAAM,CAAC,YAAY,EAAE,CAAC;AACtB,YAAA,OAAO,IAAI,CAAA;AACZ,SAAA;AAED,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAA;AAC5C,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;QAED,MAAM,CAAC,YAAY,EAAE,CAAC;AACtB,QAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAChC,QAAA,OAAO,IAAI,CAAC;KACb;AAEO,IAAA,WAAW,CAAC,MAAc,EAAA;AAChC,QAAA,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,SAAS,EAAE;AACpC,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAChC,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AAErC,YAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;AACpB,gBAAA,OAAO,MAAM,CAAC;AACf,aAAA;YAED,MAAM,CAAC,YAAY,EAAE,CAAC;AACvB,SAAA;AAED,QAAA,OAAO,IAAI,CAAA;KACZ;IAED,SAAS,GAAA;QACP,MAAM,MAAM,GAAa,EAAE,CAAC;AAE5B,QAAA,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE;YAClC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;AACnC,SAAA;AAED,QAAA,OAAO,MAAM,CAAC;KACf;AAED,IAAA,aAAa,CAAC,YAAqB,EAAA;AACjC,QAAA,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE;AACzB,YAAA,OAAO,EAAE,CAAC;AACX,SAAA;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;KACzC;IAED,cAAc,GAAA;AACZ,QAAA,OAAO,cAAc,CAAC,IAAI,CAAC,CAAA;KAC5B;AAED,IAAA,WAAW,CAAC,OAA8B,EAAA;AACxC,QAAA,OAAO,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;KACnC;IAED,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC,WAAW,EAAA;AACpD,QAAA,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;AACpD,QAAA,OAAO,EAAE,CAAC;KACX;AACF;;MCpIY,MAAM,CAAA;AAYjB,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAED,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAED,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;IAED,IAAI,MAAM,CAAC,OAAuB,EAAA;AAChC,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;KACxB;AAED,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAED,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;IAED,WAAY,CAAA,IAAY,EAAE,OAAgB,EAAE,OAAiB,EAAE,UAAU,GAAG,KAAK,EAAA;AAC/E,QAAA,MAAM,QAAQ,GAAG,OAAO,IAAI,IAAI,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAClE,MAAM,QAAQ,GAAc,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AAC3D,QAAA,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;AAEvC,QAAA,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;AACtB,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;AAClB,QAAA,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;AAC9B,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACpB,QAAA,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;AAC1B,QAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;AAC5B,QAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;AAC5B,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAA;AACrB,QAAA,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAA;AAC7B,QAAA,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;KAClB;AAEO,IAAA,uBAAuB,CAAC,QAAmB,EAAA;AACjD,QAAA,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE;AAC5B,YAAA,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;AACrB,SAAA;KACF;AAED,IAAA,SAAS,CAAC,IAAY,EAAA;AACpB,QAAA,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAE9B,OAAO;YACL,GAAG;YACH,MAAM;SACP,CAAC;KACH;AAED,IAAA,KAAK,CAAC,MAAc,EAAA;AAClB,QAAA,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;AAChC,QAAA,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QAEjB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AAEvC,QAAA,IAAI,MAAM,EAAE;YACV,MAAM,CAAC,YAAY,EAAE,CAAC;YACtB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AAErC,YAAA,IAAI,IAAI,EAAE;AACR,gBAAA,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAChC,aAAA;AAED,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;AAED,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;AACrB,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;QAED,MAAM,CAAC,YAAY,EAAE,CAAC;AACtB,QAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAChC,QAAA,OAAO,IAAI,CAAC;KACb;AAEO,IAAA,UAAU,CAAC,MAAc,EAAA;QAC/B,IAAI,MAAM,GAAG,KAAK,CAAC;AAEnB,QAAA,OAAO,IAAI,EAAE;AACX,YAAA,MAAM,kBAAkB,GAAG,MAAM,CAAC,KAAK,CAAC;YACxC,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAEjD,IAAI,MAAM,CAAC,QAAQ,EAAE;AACnB,gBAAA,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;AAE9C,gBAAA,IAAI,aAAa,EAAE;oBACjB,MAAM,GAAG,IAAI,CAAC;AACf,iBAAA;AAAM,qBAAA;AACL,oBAAA,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;oBAClC,MAAM,CAAC,aAAa,CAAC,kBAAkB,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACxD,MAAM,GAAG,KAAK,CAAC;AAChB,iBAAA;gBAED,MAAM;AACP,aAAA;AAAM,iBAAA,IAAI,YAAY,EAAE;AACvB,gBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AAE/B,gBAAA,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE;oBACrB,MAAM,GAAG,IAAI,CAAC;oBACd,MAAM;AACP,iBAAA;gBAED,MAAM,CAAC,IAAI,EAAE,CAAC;gBAEd,IAAI,IAAI,CAAC,QAAQ,EAAE;oBACjB,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBAEhD,IAAI,MAAM,CAAC,QAAQ,EAAE;wBACnB,MAAM,GAAG,IAAI,CAAC;wBACd,MAAM;AACP,qBAAA;AAAM,yBAAA,IAAI,WAAW,EAAE;AACtB,wBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAE9B,wBAAA,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE;4BACrB,MAAM,GAAG,IAAI,CAAC;4BACd,MAAM;AACP,yBAAA;wBAED,MAAM,CAAC,IAAI,EAAE,CAAC;AACf,qBAAA;AACF,iBAAA;AACF,aAAA;AACF,SAAA;AAED,QAAA,OAAO,MAAM,CAAC;KACf;AAEO,IAAA,UAAU,CAAC,MAAc,EAAA;QAC/B,IAAI,QAAQ,GAAW,EAAE,CAAC;AAE1B,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;AAClB,YAAA,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC;AACxB,SAAA;AAAM,aAAA;YACL,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE;AAChC,gBAAA,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACxD,gBAAA,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;AACtC,gBAAA,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACzD,aAAA;AAAM,iBAAA;AACL,gBAAA,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC;AACxB,aAAA;AACF,SAAA;AAED,QAAA,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1D,QAAA,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;AAC3D,QAAA,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAEzB,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,QAAQ,GAAG,EAAE,CAAC;AACf,SAAA;AAED,QAAA,OAAO,IAAI,IAAI,CACb,QAAQ,EACR,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,WAAW,EAChB,SAAS,EACT,QAAQ,EACR,IAAI,CAAC,gBAAgB,GAAG,KAAK,GAAG,SAAS,CAC1C,CAAC;KACH;IAEO,gBAAgB,GAAA;AACtB,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,KAAK,IAAI,CAAC,CAAC;AAE1D,QAAA,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;AACtB,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;QAED,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;KAChC;IAED,kBAAkB,GAAA;AAChB,QAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;KAC9B;IAED,mBAAmB,GAAA;AACjB,QAAA,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;KAC/B;IAED,SAAS,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;KAClC;AAED,IAAA,aAAa,CAAC,WAAoB,EAAA;AAChC,QAAA,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC;QACf,MAAM,MAAM,GAAa,EAAE,CAAC;AAE5B,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC9C,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE;gBACrC,KAAK,GAAG,CAAC,CAAC;AACX,aAAA;AACF,SAAA;AAED,QAAA,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;AAChB,YAAA,OAAO,EAAE,CAAC;AACX,SAAA;AAED,QAAA,IAAI,KAAK,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE;AAChC,YAAA,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;YAE9C,IAAI,IAAI,CAAC,OAAO,EAAE;AAChB,gBAAA,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;AAClD,aAAA;AACF,SAAA;QAED,IAAI,KAAK,KAAK,CAAC,EAAE;AACf,YAAA,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;AAC/C,SAAA;AAED,QAAA,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE;AACjD,YAAA,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;AAC9C,YAAA,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;AAClD,SAAA;AAED,QAAA,OAAO,MAAM,CAAC;KACf;IAED,cAAc,GAAA;AACZ,QAAA,OAAO,cAAc,CAAC,IAAI,CAAC,CAAA;KAC5B;AAED,IAAA,WAAW,CAAC,OAAgC,EAAA;AAC1C,QAAA,OAAO,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;KACnC;IAED,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC,WAAW,EAAA;AACpD,QAAA,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AAC1E,QAAA,MAAM,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;AAEhD,QAAA,OAAO,MAAM,CAAC;KACf;AACF;;MC3PY,SAAS,CAAA;AAQpB,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAED,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;AAED,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;AAED,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;IAED,IAAI,MAAM,CAAC,OAAuB,EAAA;AAChC,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;KACxB;AAED,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAA;KACtB;IAED,WAAY,CAAA,IAAY,EAAE,UAAA,GAAsB,KAAK,EAAA;AACnD,QAAA,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC;AACzB,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;AAClB,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACpB,QAAA,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;AAC9B,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;AACrB,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;KACrB;AAED,IAAA,SAAS,CAAC,IAAY,EAAA;AACpB,QAAA,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAE9B,OAAO;YACL,GAAG;YACH,MAAM;SACP,CAAC;KACH;AAED,IAAA,KAAK,CAAC,MAAc,EAAA;QAClB,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;KAC/C;IAED,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC,WAAW,EAAA;AACpD,QAAA,OAAO,IAAI,SAAS,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;KACxC;IAED,SAAS,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC,SAAS,EAAE,CAAC;KAC7C;AAED,IAAA,aAAa,CAAC,YAAqB,EAAA;AACjC,QAAA,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE;AACvB,YAAA,OAAO,EAAE,CAAC;AACX,SAAA;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;KACxC;IAED,cAAc,GAAA;AACZ,QAAA,OAAO,cAAc,CAAC,IAAI,CAAC,CAAA;KAC5B;AAED,IAAA,WAAW,CAAC,QAA+B,EAAA;AACzC,QAAA,OAAO,IAAI,CAAC;KACb;IAEO,iBAAiB,GAAA;AACvB,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;AAC1B,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YAEpC,IAAI,OAAO,KAAK,IAAI,EAAE;gBACpB,MAAM,IAAI,KAAK,CAAC,CAAA,eAAA,EAAkB,IAAI,CAAC,KAAK,CAAwB,sBAAA,CAAA,CAAC,CAAC;AACvE,aAAA;AAED,YAAA,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;AAClE,YAAA,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC;AAE5B,YAAA,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC;YAC9B,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAClC,SAAA;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;IAEO,YAAY,GAAA;AAClB,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;AAE7B,QAAA,OAAO,WAAW,CAAC,IAAI,EAAE,CAAC,OAAgB,KAAI;AAC5C,YAAA,OAAO,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC;AACrE,SAAC,CAAC,CAAC;KACJ;IAEO,QAAQ,GAAA;QACd,IAAI,IAAI,GAAY,IAAI,CAAC;AAEzB,QAAA,OAAO,IAAI,EAAE;AACX,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAE3B,IAAI,MAAM,IAAI,IAAI,EAAE;gBAClB,MAAM;AACP,aAAA;AAAM,iBAAA;gBACL,IAAI,GAAG,MAAM,CAAA;AACd,aAAA;AACF,SAAA;AAED,QAAA,OAAO,IAAI,CAAC;KACb;AACF;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/ast/Node.ts","../src/patterns/ParseError.ts","../src/patterns/CursorHistory.ts","../src/patterns/Cursor.ts","../src/patterns/Regex.ts","../src/patterns/clonePatterns.ts","../src/patterns/filterOutNull.ts","../src/patterns/findPattern.ts","../src/patterns/And.ts","../src/patterns/Literal.ts","../src/patterns/Not.ts","../src/patterns/Or.ts","../src/patterns/Repeat.ts","../src/patterns/Reference.ts","../src/intellisense/AutoComplete.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Pattern } from "../patterns/Pattern";
|
|
2
|
+
import { Suggestion } from "./Suggestion";
|
|
3
|
+
export interface AutoCompleteOptions {
|
|
4
|
+
/**
|
|
5
|
+
* Allows for certain patterns to combine their tokens with the next tokens.
|
|
6
|
+
* Be very careful, this can explode to infinity pretty quick. Usually useful
|
|
7
|
+
* for dividers and spaces.
|
|
8
|
+
*/
|
|
9
|
+
greedyPatternNames?: string[];
|
|
10
|
+
/**
|
|
11
|
+
* Allows for custom suggestions for patterns. The key is the name of the pattern
|
|
12
|
+
* and the string array are the tokens suggested for that pattern.
|
|
13
|
+
*/
|
|
14
|
+
customTokens?: Record<string, string[]>;
|
|
15
|
+
}
|
|
16
|
+
export declare class AutoComplete {
|
|
17
|
+
private _pattern;
|
|
18
|
+
private _options;
|
|
19
|
+
private _cursor;
|
|
20
|
+
private _text;
|
|
21
|
+
constructor(pattern: Pattern, options?: AutoCompleteOptions);
|
|
22
|
+
/**
|
|
23
|
+
* @deprecated Use suggestFor instead.
|
|
24
|
+
* @param text The text to suggest for.
|
|
25
|
+
*/
|
|
26
|
+
suggest(text: string): Suggestion;
|
|
27
|
+
suggestFor(text: string): Suggestion;
|
|
28
|
+
private _createSuggestionsFromRoot;
|
|
29
|
+
private _createSuggestionsFromTokens;
|
|
30
|
+
private _getTokensForPattern;
|
|
31
|
+
private _getAugmentedTokens;
|
|
32
|
+
private _createSuggestions;
|
|
33
|
+
private _createSuggestion;
|
|
34
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Node } from "../ast/Node";
|
|
2
|
+
import { Cursor } from "../patterns/Cursor";
|
|
3
|
+
import { SuggestionOption } from "./SuggestionOption";
|
|
4
|
+
export interface Suggestion {
|
|
5
|
+
isComplete: boolean;
|
|
6
|
+
options: SuggestionOption[];
|
|
7
|
+
errorAtIndex: number | null;
|
|
8
|
+
cursor: Cursor | null;
|
|
9
|
+
ast: Node | null;
|
|
10
|
+
}
|
package/dist/patterns/And.d.ts
CHANGED
|
@@ -9,7 +9,6 @@ export declare class And implements Pattern {
|
|
|
9
9
|
private _isOptional;
|
|
10
10
|
private _nodes;
|
|
11
11
|
private _firstIndex;
|
|
12
|
-
private _shouldReduceAst;
|
|
13
12
|
get type(): string;
|
|
14
13
|
get name(): string;
|
|
15
14
|
get parent(): Pattern | null;
|
|
@@ -18,7 +17,8 @@ export declare class And implements Pattern {
|
|
|
18
17
|
get isOptional(): boolean;
|
|
19
18
|
constructor(name: string, sequence: Pattern[], isOptional?: boolean);
|
|
20
19
|
private _assignChildrenToParent;
|
|
21
|
-
|
|
20
|
+
test(text: string): boolean;
|
|
21
|
+
exec(text: string): {
|
|
22
22
|
ast: Node | null;
|
|
23
23
|
cursor: Cursor;
|
|
24
24
|
};
|
|
@@ -27,11 +27,12 @@ export declare class And implements Pattern {
|
|
|
27
27
|
private getLastValidNode;
|
|
28
28
|
private areRemainingPatternsOptional;
|
|
29
29
|
private createNode;
|
|
30
|
-
enableAstReduction(): void;
|
|
31
|
-
disableAstReduction(): void;
|
|
32
30
|
getTokens(): string[];
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
31
|
+
getTokensAfter(childReference: Pattern): string[];
|
|
32
|
+
getNextTokens(): string[];
|
|
33
|
+
getPatterns(): Pattern[];
|
|
34
|
+
getPatternsAfter(childReference: Pattern): Pattern[];
|
|
35
|
+
getNextPatterns(): Pattern[];
|
|
36
|
+
findPattern(predicate: (p: Pattern) => boolean): Pattern | null;
|
|
36
37
|
clone(name?: string, isOptional?: boolean): Pattern;
|
|
37
38
|
}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Node } from "../ast/Node";
|
|
2
2
|
import { Match } from "./CursorHistory";
|
|
3
|
+
import { ParseError } from "./ParseError";
|
|
4
|
+
import { Pattern } from "./Pattern";
|
|
3
5
|
export declare class Cursor {
|
|
4
6
|
private _text;
|
|
5
7
|
private _index;
|
|
@@ -9,8 +11,8 @@ export declare class Cursor {
|
|
|
9
11
|
get isOnFirst(): boolean;
|
|
10
12
|
get isOnLast(): boolean;
|
|
11
13
|
get isRecording(): boolean;
|
|
12
|
-
get leafMatch(): Match;
|
|
13
14
|
get rootMatch(): Match;
|
|
15
|
+
get leafMatch(): Match;
|
|
14
16
|
get furthestError(): ParseError | null;
|
|
15
17
|
get error(): ParseError | null;
|
|
16
18
|
get index(): number;
|
|
@@ -19,17 +21,17 @@ export declare class Cursor {
|
|
|
19
21
|
get currentChar(): string;
|
|
20
22
|
constructor(text: string);
|
|
21
23
|
hasNext(): boolean;
|
|
22
|
-
hasPrevious(): boolean;
|
|
23
24
|
next(): void;
|
|
25
|
+
hasPrevious(): boolean;
|
|
24
26
|
previous(): void;
|
|
25
27
|
moveTo(position: number): void;
|
|
26
28
|
moveToFirstChar(): void;
|
|
27
29
|
moveToLastChar(): void;
|
|
30
|
+
getLastIndex(): number;
|
|
28
31
|
getChars(first: number, last: number): string;
|
|
29
32
|
recordMatch(pattern: Pattern, node: Node): void;
|
|
30
33
|
recordErrorAt(index: number, onPattern: Pattern): void;
|
|
31
34
|
resolveError(): void;
|
|
32
35
|
startRecording(): void;
|
|
33
36
|
stopRecording(): void;
|
|
34
|
-
private _getLastIndex;
|
|
35
37
|
}
|
|
@@ -14,14 +14,14 @@ export declare class CursorHistory {
|
|
|
14
14
|
private _patterns;
|
|
15
15
|
private _nodes;
|
|
16
16
|
private _errors;
|
|
17
|
+
get isRecording(): boolean;
|
|
18
|
+
get rootMatch(): Match;
|
|
17
19
|
get leafMatch(): Match;
|
|
18
20
|
get furthestError(): ParseError | null;
|
|
19
|
-
get isRecording(): boolean;
|
|
20
21
|
get errors(): ParseError[];
|
|
21
22
|
get error(): ParseError | null;
|
|
22
23
|
get nodes(): Node[];
|
|
23
24
|
get patterns(): Pattern[];
|
|
24
|
-
get rootMatch(): Match;
|
|
25
25
|
recordMatch(pattern: Pattern, node: Node): void;
|
|
26
26
|
recordErrorAt(index: number, pattern: Pattern): void;
|
|
27
27
|
startRecording(): void;
|
|
@@ -10,8 +10,6 @@ export declare class Literal implements Pattern {
|
|
|
10
10
|
private _runes;
|
|
11
11
|
private _firstIndex;
|
|
12
12
|
private _lastIndex;
|
|
13
|
-
private _hasContextualTokenAggregation;
|
|
14
|
-
private _isRetrievingContextualTokens;
|
|
15
13
|
get type(): string;
|
|
16
14
|
get name(): string;
|
|
17
15
|
get parent(): Pattern | null;
|
|
@@ -19,7 +17,8 @@ export declare class Literal implements Pattern {
|
|
|
19
17
|
get children(): Pattern[];
|
|
20
18
|
get isOptional(): boolean;
|
|
21
19
|
constructor(name: string, value: string, isOptional?: boolean);
|
|
22
|
-
|
|
20
|
+
test(text: string): boolean;
|
|
21
|
+
exec(text: string): {
|
|
23
22
|
ast: Node | null;
|
|
24
23
|
cursor: Cursor;
|
|
25
24
|
};
|
|
@@ -28,9 +27,10 @@ export declare class Literal implements Pattern {
|
|
|
28
27
|
private _createNode;
|
|
29
28
|
clone(name?: string, isOptional?: boolean): Pattern;
|
|
30
29
|
getTokens(): string[];
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
30
|
+
getTokensAfter(_lastMatched: Pattern): string[];
|
|
31
|
+
getNextTokens(): string[];
|
|
32
|
+
getPatterns(): Pattern[];
|
|
33
|
+
getPatternsAfter(): Pattern[];
|
|
34
|
+
getNextPatterns(): Pattern[];
|
|
35
|
+
findPattern(_predicate: (p: Pattern) => boolean): Pattern | null;
|
|
36
36
|
}
|
package/dist/patterns/Not.d.ts
CHANGED
|
@@ -8,19 +8,23 @@ export declare class Not implements Pattern {
|
|
|
8
8
|
private _children;
|
|
9
9
|
get type(): string;
|
|
10
10
|
get name(): string;
|
|
11
|
-
get isOptional(): boolean;
|
|
12
11
|
get parent(): Pattern | null;
|
|
13
12
|
set parent(pattern: Pattern | null);
|
|
14
13
|
get children(): Pattern[];
|
|
14
|
+
get isOptional(): boolean;
|
|
15
15
|
constructor(name: string, pattern: Pattern);
|
|
16
|
-
|
|
16
|
+
test(text: string): boolean;
|
|
17
|
+
exec(text: string): {
|
|
17
18
|
ast: Node | null;
|
|
18
19
|
cursor: Cursor;
|
|
19
20
|
};
|
|
20
21
|
parse(cursor: Cursor): Node | null;
|
|
21
22
|
clone(name?: string): Pattern;
|
|
22
|
-
getNextPattern(): Pattern | null;
|
|
23
23
|
getTokens(): string[];
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
getTokensAfter(_childReference: Pattern): string[];
|
|
25
|
+
getNextTokens(): string[];
|
|
26
|
+
getPatterns(): Pattern[];
|
|
27
|
+
getPatternsAfter(_childReference: Pattern): Pattern[];
|
|
28
|
+
getNextPatterns(): Pattern[];
|
|
29
|
+
findPattern(predicate: (p: Pattern) => boolean): Pattern | null;
|
|
26
30
|
}
|
package/dist/patterns/Or.d.ts
CHANGED
|
@@ -7,7 +7,6 @@ export declare class Or implements Pattern {
|
|
|
7
7
|
private _parent;
|
|
8
8
|
private _children;
|
|
9
9
|
private _isOptional;
|
|
10
|
-
private _node;
|
|
11
10
|
private _firstIndex;
|
|
12
11
|
get type(): string;
|
|
13
12
|
get name(): string;
|
|
@@ -17,15 +16,19 @@ export declare class Or implements Pattern {
|
|
|
17
16
|
get isOptional(): boolean;
|
|
18
17
|
constructor(name: string, options: Pattern[], isOptional?: boolean);
|
|
19
18
|
private _assignChildrenToParent;
|
|
20
|
-
|
|
19
|
+
test(text: string): boolean;
|
|
20
|
+
exec(text: string): {
|
|
21
21
|
ast: Node | null;
|
|
22
22
|
cursor: Cursor;
|
|
23
23
|
};
|
|
24
24
|
parse(cursor: Cursor): Node | null;
|
|
25
25
|
private _tryToParse;
|
|
26
26
|
getTokens(): string[];
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
27
|
+
getTokensAfter(_childReference: Pattern): string[];
|
|
28
|
+
getNextTokens(): string[];
|
|
29
|
+
getPatterns(): Pattern[];
|
|
30
|
+
getPatternsAfter(_childReference: Pattern): Pattern[];
|
|
31
|
+
getNextPatterns(): Pattern[];
|
|
32
|
+
findPattern(predicate: (p: Pattern) => boolean): Pattern | null;
|
|
30
33
|
clone(name?: string, isOptional?: boolean): Pattern;
|
|
31
34
|
}
|
|
@@ -8,10 +8,14 @@ export interface Pattern {
|
|
|
8
8
|
children: Pattern[];
|
|
9
9
|
isOptional: boolean;
|
|
10
10
|
parse(cursor: Cursor): Node | null;
|
|
11
|
-
|
|
11
|
+
exec(text: string): ParseResult;
|
|
12
|
+
test(text: string): boolean;
|
|
12
13
|
clone(name?: string, isOptional?: boolean): Pattern;
|
|
13
14
|
getTokens(): string[];
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
15
|
+
getTokensAfter(childReference: Pattern): string[];
|
|
16
|
+
getNextTokens(): string[];
|
|
17
|
+
getPatterns(): Pattern[];
|
|
18
|
+
getPatternsAfter(childReference: Pattern): Pattern[];
|
|
19
|
+
getNextPatterns(): Pattern[];
|
|
20
|
+
findPattern(predicate: (p: Pattern) => boolean): Pattern | null;
|
|
17
21
|
}
|
|
@@ -10,22 +10,26 @@ export declare class Reference implements Pattern {
|
|
|
10
10
|
private _children;
|
|
11
11
|
get type(): string;
|
|
12
12
|
get name(): string;
|
|
13
|
-
get isOptional(): boolean;
|
|
14
13
|
get parent(): Pattern | null;
|
|
15
14
|
set parent(pattern: Pattern | null);
|
|
16
15
|
get children(): Pattern[];
|
|
16
|
+
get isOptional(): boolean;
|
|
17
17
|
constructor(name: string, isOptional?: boolean);
|
|
18
|
-
|
|
18
|
+
test(text: string): boolean;
|
|
19
|
+
exec(text: string): {
|
|
19
20
|
ast: Node | null;
|
|
20
21
|
cursor: Cursor;
|
|
21
22
|
};
|
|
22
23
|
parse(cursor: Cursor): Node | null;
|
|
23
|
-
clone(name?: string, isOptional?: boolean): Pattern;
|
|
24
|
-
getTokens(): string[];
|
|
25
|
-
getNextTokens(_lastMatched: Pattern): string[];
|
|
26
|
-
getNextPattern(): Pattern | null;
|
|
27
|
-
findPattern(_isMatch: (p: Pattern) => boolean): Pattern | null;
|
|
28
24
|
private _getPatternSafely;
|
|
29
25
|
private _findPattern;
|
|
30
26
|
private _getRoot;
|
|
27
|
+
getTokens(): string[];
|
|
28
|
+
getTokensAfter(_lastMatched: Pattern): string[];
|
|
29
|
+
getNextTokens(): string[];
|
|
30
|
+
getPatterns(): Pattern[];
|
|
31
|
+
getPatternsAfter(_childReference: Pattern): Pattern[];
|
|
32
|
+
getNextPatterns(): Pattern[];
|
|
33
|
+
findPattern(_predicate: (p: Pattern) => boolean): Pattern | null;
|
|
34
|
+
clone(name?: string, isOptional?: boolean): Pattern;
|
|
31
35
|
}
|
package/dist/patterns/Regex.d.ts
CHANGED
|
@@ -12,8 +12,6 @@ export declare class Regex implements Pattern {
|
|
|
12
12
|
private _cursor;
|
|
13
13
|
private _substring;
|
|
14
14
|
private _tokens;
|
|
15
|
-
private _hasContextualTokenAggregation;
|
|
16
|
-
private _isRetrievingContextualTokens;
|
|
17
15
|
get type(): string;
|
|
18
16
|
get name(): string;
|
|
19
17
|
get parent(): Pattern | null;
|
|
@@ -22,7 +20,8 @@ export declare class Regex implements Pattern {
|
|
|
22
20
|
get isOptional(): boolean;
|
|
23
21
|
constructor(name: string, regex: string, isOptional?: boolean);
|
|
24
22
|
private assertArguments;
|
|
25
|
-
|
|
23
|
+
test(text: string): boolean;
|
|
24
|
+
exec(text: string): {
|
|
26
25
|
ast: Node | null;
|
|
27
26
|
cursor: Cursor;
|
|
28
27
|
};
|
|
@@ -33,10 +32,11 @@ export declare class Regex implements Pattern {
|
|
|
33
32
|
private processError;
|
|
34
33
|
clone(name?: string, isOptional?: boolean): Regex;
|
|
35
34
|
getTokens(): string[];
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
35
|
+
getTokensAfter(_childReference: Pattern): string[];
|
|
36
|
+
getNextTokens(): string[];
|
|
37
|
+
getPatterns(): Pattern[];
|
|
38
|
+
getPatternsAfter(_childReference: Pattern): Pattern[];
|
|
39
|
+
getNextPatterns(): Pattern[];
|
|
40
|
+
findPattern(_predicate: (p: Pattern) => boolean): Pattern | null;
|
|
39
41
|
setTokens(tokens: string[]): void;
|
|
40
|
-
enableContextualTokenAggregation(): void;
|
|
41
|
-
disableContextualTokenAggregation(): void;
|
|
42
42
|
}
|
|
@@ -11,7 +11,6 @@ export declare class Repeat implements Pattern {
|
|
|
11
11
|
private _isOptional;
|
|
12
12
|
private _nodes;
|
|
13
13
|
private _firstIndex;
|
|
14
|
-
private _shouldReduceAst;
|
|
15
14
|
get type(): string;
|
|
16
15
|
get name(): string;
|
|
17
16
|
get parent(): Pattern | null;
|
|
@@ -20,7 +19,8 @@ export declare class Repeat implements Pattern {
|
|
|
20
19
|
get isOptional(): boolean;
|
|
21
20
|
constructor(name: string, pattern: Pattern, divider?: Pattern, isOptional?: boolean);
|
|
22
21
|
private _assignChildrenToParent;
|
|
23
|
-
|
|
22
|
+
test(text: string): boolean;
|
|
23
|
+
exec(text: string): {
|
|
24
24
|
ast: Node | null;
|
|
25
25
|
cursor: Cursor;
|
|
26
26
|
};
|
|
@@ -28,11 +28,12 @@ export declare class Repeat implements Pattern {
|
|
|
28
28
|
private tryToParse;
|
|
29
29
|
private createNode;
|
|
30
30
|
private getLastValidNode;
|
|
31
|
-
enableAstReduction(): void;
|
|
32
|
-
disableAstReduction(): void;
|
|
33
31
|
getTokens(): string[];
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
32
|
+
getTokensAfter(childReference: Pattern): string[];
|
|
33
|
+
getNextTokens(): string[];
|
|
34
|
+
getPatterns(): Pattern[];
|
|
35
|
+
getPatternsAfter(childReference: Pattern): Pattern[];
|
|
36
|
+
getNextPatterns(): Pattern[];
|
|
37
|
+
findPattern(predicate: (p: Pattern) => boolean): Pattern | null;
|
|
37
38
|
clone(name?: string, isOptional?: boolean): Pattern;
|
|
38
39
|
}
|