@quenk/wml 2.14.1 → 2.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -218,6 +218,10 @@ export declare const tag2TS: (ctx: CodeGenerator, n: ast.Tag) => string;
218
218
  * This is simply a call to the View's widget method.
219
219
  */
220
220
  export declare const widget2TS: (ctx: CodeGenerator, n: ast.Widget) => string;
221
+ /**
222
+ * part2TS
223
+ */
224
+ export declare const part2TS: (ctx: CodeGenerator, n: ast.PartStatement) => string;
221
225
  /**
222
226
  * node2TS converts a Node into its typescript representation.
223
227
  *
@@ -260,6 +264,11 @@ export declare const forOfStatement2TS: (ctx: CodeGenerator, n: ast.ForOfStateme
260
264
  * forFromStatement2TS
261
265
  */
262
266
  export declare const forFromStatement2TS: (ctx: CodeGenerator, node: ast.ForFromStatement) => string;
267
+ /**
268
+ * useViewStatement2TS
269
+ */
270
+ export declare const useViewStatement2TS: (ctx: CodeGenerator, n: ast.UseViewStatement) => string;
271
+ export declare const usePartStatement2TS: (ctx: CodeGenerator, n: ast.UsePartStatement) => string;
263
272
  /**
264
273
  * characters2TS converts character text to a typescript string.
265
274
  */
@@ -3,8 +3,8 @@
3
3
  * Typescript code generator.
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.forOfStatement2TS = exports.forInStatement2TS = exports.ifStatement2TS = exports.interpolation2TS = exports.attrs2String = exports.attributeName2TS = exports.attributeValue2TS = exports.attribute2TS = exports.node2TS = exports.widget2TS = exports.tag2TS = exports.child2TS = exports.children2TS = exports.untypedParameter2TS = exports.typedParameter2TS = exports.parameter2TS = exports.parameters2TS = exports.typeMap2TS = exports.expandTypeMap = exports.typeMapFromRecordType = exports.typeMapFromMemberDecs = exports.memberDeclarations2TS = exports.recordType2Ts = exports.tupleType2TS = exports.listType2TS = exports.functionType2TS = exports.constructorType2TS = exports.type2TS = exports.typeParameter2TS = exports.typeParameters2TS = exports.viewStatement2TS = exports.letStatement2TS = exports.contextStatement2TS = exports.aliasStatement2TS = exports.export2TS = exports.exports2TS = exports.compositeMember2TS = exports.aliasedMember2TS = exports.aggregateMember2TS = exports.importMember2TS = exports.importStatement2TS = exports.importStatements2TS = exports.CodeGenerator = exports.VIEW_FRAME = exports.THIS = exports.UTILS = exports.DOCUMENT = exports.WML = exports.VIEW = exports.CONTEXT = void 0;
7
- exports.unqualifiedIdentifier2TS = exports.qualifiedIdentifier2TS = exports.identifier2TS = exports.qualifiedConstructor2TS = exports.unqualifiedConstructor2TS = exports.constructor2TS = exports.identifierOrConstructor2TS = exports.contextVariable2TS = exports.contextProperty2TS = exports.key2TS = exports.property2TS = exports.list2TS = exports.record2TS = exports.number2TS = exports.string2TS = exports.boolean2TS = exports.literal2TS = exports.functionExpression2TS = exports.memberExpression2TS = exports.args2TS = exports.typeArgs2TS = exports.callExpression2TS = exports.constructExpression2TS = exports.funApplication2TS = exports.viewConstruction2TS = exports.unaryExpression2TS = exports.binaryExpression2TS = exports.ifThenExpression2TS = exports.expression2TS = exports.characters2TS = exports.forFromStatement2TS = void 0;
6
+ exports.forInStatement2TS = exports.ifStatement2TS = exports.interpolation2TS = exports.attrs2String = exports.attributeName2TS = exports.attributeValue2TS = exports.attribute2TS = exports.node2TS = exports.part2TS = exports.widget2TS = exports.tag2TS = exports.child2TS = exports.children2TS = exports.untypedParameter2TS = exports.typedParameter2TS = exports.parameter2TS = exports.parameters2TS = exports.typeMap2TS = exports.expandTypeMap = exports.typeMapFromRecordType = exports.typeMapFromMemberDecs = exports.memberDeclarations2TS = exports.recordType2Ts = exports.tupleType2TS = exports.listType2TS = exports.functionType2TS = exports.constructorType2TS = exports.type2TS = exports.typeParameter2TS = exports.typeParameters2TS = exports.viewStatement2TS = exports.letStatement2TS = exports.contextStatement2TS = exports.aliasStatement2TS = exports.export2TS = exports.exports2TS = exports.compositeMember2TS = exports.aliasedMember2TS = exports.aggregateMember2TS = exports.importMember2TS = exports.importStatement2TS = exports.importStatements2TS = exports.CodeGenerator = exports.VIEW_FRAME = exports.THIS = exports.UTILS = exports.DOCUMENT = exports.WML = exports.VIEW = exports.CONTEXT = void 0;
7
+ exports.unqualifiedIdentifier2TS = exports.qualifiedIdentifier2TS = exports.identifier2TS = exports.qualifiedConstructor2TS = exports.unqualifiedConstructor2TS = exports.constructor2TS = exports.identifierOrConstructor2TS = exports.contextVariable2TS = exports.contextProperty2TS = exports.key2TS = exports.property2TS = exports.list2TS = exports.record2TS = exports.number2TS = exports.string2TS = exports.boolean2TS = exports.literal2TS = exports.functionExpression2TS = exports.memberExpression2TS = exports.args2TS = exports.typeArgs2TS = exports.callExpression2TS = exports.constructExpression2TS = exports.funApplication2TS = exports.viewConstruction2TS = exports.unaryExpression2TS = exports.binaryExpression2TS = exports.ifThenExpression2TS = exports.expression2TS = exports.characters2TS = exports.usePartStatement2TS = exports.useViewStatement2TS = exports.forFromStatement2TS = exports.forOfStatement2TS = void 0;
8
8
  /** imports */
9
9
  const ast = require("../parse/ast");
10
10
  const path_1 = require("@quenk/noni/lib/data/record/path");
@@ -149,6 +149,8 @@ const export2TS = (ctx, n) => {
149
149
  return (0, exports.viewStatement2TS)(ctx, n);
150
150
  else if (n instanceof ast.Widget || n instanceof ast.Node)
151
151
  return (0, exports.tag2TS)(ctx, n);
152
+ else if (n instanceof ast.PartStatement)
153
+ return (0, exports.part2TS)(ctx, n);
152
154
  else
153
155
  return "";
154
156
  };
@@ -420,6 +422,10 @@ const child2TS = (ctx, n) => {
420
422
  return (0, exports.forOfStatement2TS)(ctx, n);
421
423
  else if (n instanceof ast.ForFromStatement)
422
424
  return (0, exports.forFromStatement2TS)(ctx, n);
425
+ else if (n instanceof ast.UsePartStatement)
426
+ return (0, exports.usePartStatement2TS)(ctx, n);
427
+ else if (n instanceof ast.UseViewStatement)
428
+ return (0, exports.useViewStatement2TS)(ctx, n);
423
429
  else if (n instanceof ast.Characters)
424
430
  return (0, exports.characters2TS)(n);
425
431
  else if (n instanceof ast.ContextProperty)
@@ -455,6 +461,27 @@ const widget2TS = (ctx, n) => {
455
461
  `<${exports.WML}.Attrs>${attrs})`);
456
462
  };
457
463
  exports.widget2TS = widget2TS;
464
+ /**
465
+ * part2TS
466
+ */
467
+ const part2TS = (ctx, n) => {
468
+ let directives = n.directives
469
+ .map((i) => _setStatement2TS(ctx, i, "let"))
470
+ .join(`;${ctx.options.EOL}`);
471
+ let id = (0, exports.expression2TS)(ctx, n.id);
472
+ let context = n.context
473
+ ? (0, exports.type2TS)(n.context instanceof ast.ContextFromStatement
474
+ ? n.context.cons
475
+ : n.context)
476
+ : "object";
477
+ let defaultContext = n.context ? "" : "={}";
478
+ let body = (0, exports.children2TS)(ctx, n.body);
479
+ return `export const ${id} = (${exports.THIS}:${exports.WML}.${FRAME_TYPE}, ${exports.CONTEXT}: ${context} ${defaultContext}) => {
480
+ ${directives}
481
+ return ${body}
482
+ }`;
483
+ };
484
+ exports.part2TS = part2TS;
458
485
  /**
459
486
  * node2TS converts a Node into its typescript representation.
460
487
  *
@@ -583,6 +610,20 @@ const forFromStatement2TS = (ctx, node) => {
583
610
  ].join(eol(ctx));
584
611
  };
585
612
  exports.forFromStatement2TS = forFromStatement2TS;
613
+ /**
614
+ * useViewStatement2TS
615
+ */
616
+ const useViewStatement2TS = (ctx, n) => {
617
+ let target = (0, exports.expression2TS)(ctx, n.target);
618
+ return _viewCons2Ts(target);
619
+ };
620
+ exports.useViewStatement2TS = useViewStatement2TS;
621
+ const usePartStatement2TS = (ctx, n) => {
622
+ let target = (0, exports.expression2TS)(ctx, n.target);
623
+ let context = n.context ? (0, exports.expression2TS)(ctx, n.context) : exports.CONTEXT;
624
+ return `...(${target}(${exports.THIS}, ${context}))`;
625
+ };
626
+ exports.usePartStatement2TS = usePartStatement2TS;
586
627
  /**
587
628
  * characters2TS converts character text to a typescript string.
588
629
  */
@@ -674,8 +715,9 @@ exports.unaryExpression2TS = unaryExpression2TS;
674
715
  /**
675
716
  * viewConstruction2TS
676
717
  */
677
- const viewConstruction2TS = (ctx, n) => `${exports.THIS}.view(${(0, exports.expression2TS)(ctx, n.expression)})`;
718
+ const viewConstruction2TS = (ctx, n) => _viewCons2Ts((0, exports.expression2TS)(ctx, n.expression));
678
719
  exports.viewConstruction2TS = viewConstruction2TS;
720
+ const _viewCons2Ts = (id) => `${exports.THIS}.view(${id})`;
679
721
  /**
680
722
  * funApplication2TS
681
723
  */
@@ -1 +1 @@
1
- {"version":3,"file":"codegen.js","sourceRoot":"","sources":["codegen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codegen.js","sourceRoot":"","sources":["codegen.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;AAEH,cAAc;AAEd,oCAAoC;AAEpC,2DAAuD;AACvD,wDAMqC;AACrC,sDAA8E;AAE9E,2CAA4C;AAE/B,QAAA,OAAO,GAAG,WAAW,CAAC;AACtB,QAAA,IAAI,GAAG,QAAQ,CAAC;AAChB,QAAA,GAAG,GAAG,OAAO,CAAC;AACd,QAAA,QAAQ,GAAG,YAAY,CAAC;AACxB,QAAA,KAAK,GAAG,SAAS,CAAC;AAClB,QAAA,IAAI,GAAG,QAAQ,CAAC;AAChB,QAAA,UAAU,GAAG,aAAa,CAAC;AAExC,MAAM,UAAU,GAAG,UAAU,CAAC;AAC9B,MAAM,UAAU,GAAG,OAAO,CAAC;AAE3B,MAAM,MAAM,GAAG,GAAG,aAAK,QAAQ,CAAC;AAChC,MAAM,MAAM,GAAG,GAAG,aAAK,QAAQ,CAAC;AAyBhC,MAAM,KAAK,GAAG;IACZ,QAAQ;IACR,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,WAAW;IACX,MAAM;IACN,MAAM;IACN,OAAO;IACP,KAAK;CACN,CAAC;AAEF,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAE1D,MAAM,SAAS,GAA8B;IAC3C,IAAI,EAAE,KAAK;IAEX,IAAI,EAAE,KAAK;CACZ,CAAC;AAuBF;;;;;;GAMG;AACH,MAAa,aAAa;IACxB,YAAmB,OAA6B;QAA7B,YAAO,GAAP,OAAO,CAAsB;IAAG,CAAC;IAEpD;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,IAA0B;QACtC,OAAO,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,IAAgB;QACvB,IAAI,GAAG,IAAA,yBAAa,EAAC,IAAI,CAAC,CAAC;QAE3B,OAAO;YACL,oBAAoB;YACpB,eAAe,WAAG,UAAU,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI;YACnD,oBAAoB;YACpB,eAAe,gBAAQ,UAAU,IAAI,CAAC,OAAO,CAAC,MAAM,YAAY;YAChE,oBAAoB;YACpB,eAAe,aAAK,UAAU,IAAI,CAAC,OAAO,CAAC,MAAM,aAAa;YAC9D,IAAA,2BAAmB,EAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC;YACvC,GAAG,CAAC,IAAI,CAAC;YACT,oBAAoB;YACpB,gBAAgB,gBAAQ,QAAQ;YAChC,oBAAoB;YACpB,kBAAkB,gBAAQ,SAAS;YACnC,oBAAoB;YACpB,iBAAiB,aAAK,QAAQ;YAC9B,IAAA,kBAAU,EAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC;SAC/B,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IACpB,CAAC;CACF;AAlCD,sCAkCC;AAED,MAAM,GAAG,GAAG,CAAC,GAAkB,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;AAEzD;;GAEG;AACI,MAAM,mBAAmB,GAAG,CACjC,GAAkB,EAClB,IAA2B,EACf,EAAE,CACd,IAAI;KACD,GAAG,CAAC,0BAAkB,CAAC;KACvB,MAAM,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC;KACtD,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAPb,QAAA,mBAAmB,uBAON;AAE1B;;GAEG;AACI,MAAM,kBAAkB,GAAG,CAAC,CAAsB,EAAc,EAAE,CACvE,UAAU,IAAA,uBAAe,EAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC;AAD7D,QAAA,kBAAkB,sBAC2C;AAE1E;;GAEG;AACI,MAAM,eAAe,GAAG,CAAC,CAAmB,EAAU,EAAE;IAC7D,IAAI,CAAC,YAAY,GAAG,CAAC,eAAe;QAAE,OAAO,IAAA,0BAAkB,EAAC,CAAC,CAAC,CAAC;SAC9D,IAAI,CAAC,YAAY,GAAG,CAAC,aAAa;QAAE,OAAO,IAAA,wBAAgB,EAAC,CAAC,CAAC,CAAC;SAC/D,IAAI,CAAC,YAAY,GAAG,CAAC,eAAe;QAAE,OAAO,IAAA,0BAAkB,EAAC,CAAC,CAAC,CAAC;;QACnE,OAAO,EAAE,CAAC;AACjB,CAAC,CAAC;AALW,QAAA,eAAe,mBAK1B;AAEF;;GAEG;AACI,MAAM,kBAAkB,GAAG,CAAC,CAAsB,EAAU,EAAE,CACnE,QAAQ,IAAA,kCAA0B,EAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC;AADjC,QAAA,kBAAkB,sBACe;AAE9C;;GAEG;AACI,MAAM,gBAAgB,GAAG,CAAC,CAAoB,EAAU,EAAE,CAC/D,GAAG,IAAA,kCAA0B,EAAC,CAAC,CAAC,MAAM,CAAC,GAAG;IAC1C,MAAM,IAAA,kCAA0B,EAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;AAFlC,QAAA,gBAAgB,oBAEkB;AAE/C;;GAEG;AACI,MAAM,kBAAkB,GAAG,CAAC,CAAsB,EAAU,EAAE,CACnE,GAAG;IACH,CAAC,CAAC,OAAO;SACN,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACT,CAAC,YAAY,GAAG,CAAC,aAAa;QAC5B,CAAC,CAAC,IAAA,wBAAgB,EAAC,CAAC,CAAC;QACrB,CAAC,CAAC,IAAA,kCAA0B,EAAC,CAAC,CAAC,CAClC;SACA,IAAI,CAAC,GAAG,CAAC;IACZ,GAAG,CAAC;AATO,QAAA,kBAAkB,sBASzB;AAEN;;GAEG;AACI,MAAM,UAAU,GAAG,CAAC,GAAkB,EAAE,IAAkB,EAAE,EAAE,CACnE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,iBAAS,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AAD7C,QAAA,UAAU,cACmC;AAE1D;;GAEG;AACI,MAAM,SAAS,GAAG,CAAC,GAAkB,EAAE,CAAa,EAAE,EAAE;IAC7D,IAAI,CAAC,YAAY,GAAG,CAAC,cAAc;QAAE,OAAO,IAAA,yBAAiB,EAAC,CAAC,CAAC,CAAC;SAC5D,IAAI,CAAC,YAAY,GAAG,CAAC,gBAAgB;QAAE,OAAO,IAAA,2BAAmB,EAAC,CAAC,CAAC,CAAC;SACrE,IAAI,CAAC,YAAY,GAAG,CAAC,YAAY;QAAE,OAAO,IAAA,uBAAe,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SAClE,IAAI,CAAC,YAAY,GAAG,CAAC,aAAa;QAAE,OAAO,IAAA,wBAAgB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SACpE,IAAI,CAAC,YAAY,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI;QACvD,OAAO,IAAA,cAAM,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SACnB,IAAI,CAAC,YAAY,GAAG,CAAC,aAAa;QAAE,OAAO,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;;QAC3D,OAAO,EAAE,CAAC;AACjB,CAAC,CAAC;AATW,QAAA,SAAS,aASpB;AAEF;;GAEG;AACI,MAAM,iBAAiB,GAAG,CAAC,CAAqB,EAAE,EAAE;IACzD,IAAI,QAAQ,GACV,CAAC,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAA,yBAAiB,EAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAEzE,IAAI,QAAQ,GAAG,eAAe,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,QAAQ,EAAE,CAAC;IAEtD,IAAI,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,eAAO,EAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEzD,OAAO,GAAG,QAAQ,MAAM,OAAO,GAAG,CAAC;AACrC,CAAC,CAAC;AATW,QAAA,iBAAiB,qBAS5B;AAEF;;GAEG;AACI,MAAM,mBAAmB,GAAG,CAAC,CAAuB,EAAE,EAAE;IAC7D,IAAI,QAAQ,GAAG,oBAAoB,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IAEhD,IAAI,QAAQ,GACV,CAAC,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAA,yBAAiB,EAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAEzE,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,IAAA,iBAAS,EAChC,CAAC,CAAC,OAAO,EACT,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,YAAY,GAAG,CAAC,eAAe,CAClD,CAAC;IAEF,IAAI,UAAU,GAA2B,OAAQ;SAC9C,GAAG,CAAC,0BAAkB,CAAC;SACvB,IAAI,CAAC,GAAG,CAAC,CAAC;IAEb,UAAU,GAAG,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,YAAY,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAE/D,OAAO;QACL,QAAQ;QACR,QAAQ;QACR,UAAU;QACV,GAAG;QACH,IAAA,6BAAqB,EAA0B,OAAO,CAAC;QACvD,GAAG;KACJ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACb,CAAC,CAAC;AAzBW,QAAA,mBAAmB,uBAyB9B;AAEF;;GAEG;AACI,MAAM,eAAe,GAAG,CAAC,GAAkB,EAAE,CAAmB,EAAE,EAAE,CACzE,gBAAgB,CAAC,GAAG,EAAE,CAAC,EAAE,cAAc,CAAC,CAAC;AAD9B,QAAA,eAAe,mBACe;AAE3C,MAAM,gBAAgB,GAAG,CACvB,GAAkB,EAClB,CAAmB,EACnB,QAAgB,EAChB,EAAE;IACF,IAAI,EAAE,GAAG,IAAA,qBAAa,EAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAE7B,IAAI,IAAI,GAAG,IAAA,0BAAkB,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAEtC,QAAQ,GAAG,GAAG,QAAQ,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;IAEvC,IAAI,KAAK,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC;IAE7C,OAAO,GAAG,QAAQ,MAAM,KAAK,EAAE,CAAC;AAClC,CAAC,CAAC;AAEF;;;;GAIG;AACI,MAAM,gBAAgB,GAAG,CAAC,GAAkB,EAAE,CAAoB,EAAE,EAAE;IAC3E,IAAI,SAAS,GAAG,CAAC,CAAC,UAAU;SACzB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;SAC3C,IAAI,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAE/B,IAAI,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAA,sBAAc,EAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAE9C,IAAI,UAAU,GAAG,IAAA,yBAAiB,EAAC,CAAC,CAAC,cAAc,CAAC,CAAC;IAErD,IAAI,OAAO,GAAG,CAAC,CAAC,OAAO;QACrB,CAAC,CAAC,IAAA,eAAO,EACL,CAAC,CAAC,OAAO,YAAY,GAAG,CAAC,oBAAoB;YAC3C,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI;YAChB,CAAC,CAAsB,CAAC,CAAC,OAAO,CACnC;QACH,CAAC,CAAC,QAAQ,CAAC;IAEb,IAAI,cAAc,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IAE5C,IAAI,QAAQ,GAAG,IAAA,cAAM,EAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAEnC,OAAO;QACL,gBAAgB,EAAE,IAAI,UAAU,YAAY,WAAG,IAAI,UAAU,IAAI;QACjE,EAAE;QACF,kBAAkB,eAAO,KAAK,OAAO,IAAI,cAAc,KAAK;QAC5D,EAAE;QACF,gBAAgB,eAAO,MAAM,YAAI,IAAI,WAAG,IAAI,UAAU,QAAQ;QAC9D,EAAE;QACF,YAAY,SAAS,EAAE;QACvB,EAAE;QACF,YAAY,YAAI,SAAS,QAAQ,IAAI;QACrC,EAAE;QACF,EAAE;QACF,YAAY;QACZ,EAAE;QACF,IAAI;QACJ,EAAE;QACF,GAAG;KACJ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AACnB,CAAC,CAAC;AAvCW,QAAA,gBAAgB,oBAuC3B;AAEF;;;GAGG;AACI,MAAM,iBAAiB,GAAG,CAAC,EAAuB,EAAU,EAAE,CACnE,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,wBAAgB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;AADvD,QAAA,iBAAiB,qBACsC;AAEpE;;GAEG;AACI,MAAM,gBAAgB,GAAG,CAAC,CAAoB,EAAE,EAAE,CACvD,GAAG,MAAM,CAAC,IAAA,kCAA0B,EAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;IAC9C,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,GAAG,IAAA,eAAO,EAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;AAFlD,QAAA,gBAAgB,oBAEkC;AAE/D;;GAEG;AACI,MAAM,OAAO,GAAG,CAAC,CAAW,EAAc,EAAE;IACjD,IAAI,CAAC,YAAY,GAAG,CAAC,eAAe;QAAE,OAAO,IAAA,0BAAkB,EAAC,CAAC,CAAC,CAAC;SAC9D,IAAI,CAAC,YAAY,GAAG,CAAC,UAAU;QAAE,OAAO,IAAA,qBAAa,EAAC,CAAC,CAAC,CAAC;SACzD,IAAI,CAAC,YAAY,GAAG,CAAC,QAAQ;QAAE,OAAO,IAAA,mBAAW,EAAC,CAAC,CAAC,CAAC;SACrD,IAAI,CAAC,YAAY,GAAG,CAAC,SAAS;QAAE,OAAO,IAAA,oBAAY,EAAC,CAAC,CAAC,CAAC;SACvD,IAAI,CAAC,YAAY,GAAG,CAAC,aAAa;QAAE,OAAO,IAAA,iBAAS,EAAC,CAAC,CAAC,CAAC;SACxD,IAAI,CAAC,YAAY,GAAG,CAAC,aAAa;QAAE,OAAO,IAAA,iBAAS,EAAC,CAAC,CAAC,CAAC;SACxD,IAAI,CAAC,YAAY,GAAG,CAAC,cAAc;QAAE,OAAO,IAAA,kBAAU,EAAC,CAAC,CAAC,CAAC;SAC1D,IAAI,CAAC,YAAY,GAAG,CAAC,YAAY;QAAE,OAAO,IAAA,uBAAe,EAAC,CAAC,CAAC,CAAC;IAElE,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAXW,QAAA,OAAO,WAWlB;AAEF;;;;GAIG;AACI,MAAM,kBAAkB,GAAG,CAAC,CAAsB,EAAE,EAAE;IAC3D,IAAI,EAAE,GAAG,MAAM,CAAC,IAAA,kCAA0B,EAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAElD,OAAO,CAAC,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;QAChC,CAAC,CAAC,EAAE,GAAG,IAAA,yBAAiB,EAAC,CAAC,CAAC,cAAc,CAAC;QAC1C,CAAC,CAAC,EAAE,CAAC;AACT,CAAC,CAAC;AANW,QAAA,kBAAkB,sBAM7B;AAEF;;GAEG;AACI,MAAM,eAAe,GAAG,CAAC,CAAmB,EAAE,EAAE;IACrD,IAAI,MAAM,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,IAAA,eAAO,EAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzE,IAAI,GAAG,GAAG,IAAA,eAAO,EAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAEhC,OAAO,IAAI,MAAM,QAAQ,GAAG,EAAE,CAAC;AACjC,CAAC,CAAC;AALW,QAAA,eAAe,mBAK1B;AAEF;;GAEG;AACI,MAAM,WAAW,GAAG,CAAC,CAAe,EAAE,EAAE,CAAC,IAAI,IAAA,eAAO,EAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC;AAAnE,QAAA,WAAW,eAAwD;AAEhF;;GAEG;AACI,MAAM,YAAY,GAAG,CAAC,CAAgB,EAAE,EAAE,CAC/C,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,eAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;AAD7B,QAAA,YAAY,gBACiB;AAE1C;;;GAGG;AACI,MAAM,aAAa,GAAG,CAAC,CAAiB,EAAE,EAAE,CACjD,GAAG,GAAG,IAAA,6BAAqB,EAAC,CAAC,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC;AADlC,QAAA,aAAa,iBACqB;AAE/C;;;;;GAKG;AACI,MAAM,qBAAqB,GAAG,CAAC,CAA0B,EAAE,EAAE,CAClE,IAAA,kBAAU,EAAC,IAAA,qBAAa,EAAC,IAAA,6BAAqB,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AADzC,QAAA,qBAAqB,yBACoB;AAEtD;;;;GAIG;AACI,MAAM,qBAAqB,GAAG,CAAC,IAA6B,EAAE,EAAE,CACrE,IAAI,CAAC,MAAM,CACT,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;IACP,IAAI,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAEvC,IAAI,CAAC,CAAC,IAAI,YAAY,GAAG,CAAC,UAAU,EAAE,CAAC;QACrC,OAAO,IAAA,6BAAqB,EAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;IACjD,CAAC;SAAM,CAAC;QACN,IAAI,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QAE/B,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;QAEtC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;QAEjB,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC,EACQ,EAAE,CACZ,CAAC;AAlBS,QAAA,qBAAqB,yBAkB9B;AAEJ;;;;;GAKG;AACI,MAAM,qBAAqB,GAAG,CACnC,CAAiB,EACjB,IAAa,EACb,MAAgB,EACP,EAAE,CACX,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;IACxB,IAAI,IAAI,GAAG,CAAC,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAEtD,IAAI,CAAC,CAAC,IAAI,YAAY,GAAG,CAAC,UAAU,EAAE,CAAC;QACrC,OAAO,IAAA,6BAAqB,EAAC,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC;SAAM,CAAC;QACN,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;QAE/B,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC,EAAE,IAAI,CAAC,CAAC;AAfE,QAAA,qBAAqB,yBAevB;AAEX,MAAM,YAAY,GAAG,CAAC,KAAe,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE1D;;GAEG;AACI,MAAM,aAAa,GAAG,CAAC,CAAU,EAAmB,EAAE,CAC3D,IAAA,eAAM,EAAC,CAAC,EAAmB,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CACzC,IAAA,UAAG,EAA6B,CAAC,EAAE,IAAA,eAAO,EAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAClD,CAAC;AAHS,QAAA,aAAa,iBAGtB;AAEJ;;GAEG;AACI,MAAM,UAAU,GAAG,CAAC,CAAkB,EAAc,EAAE,CAC3D,IAAA,cAAK,EAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;IAChB,IAAI,IAAA,iBAAQ,EAAC,CAAC,CAAC,EAAE,CAAC;QAChB,IAAI,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3C,OAAO,GAAG,GAAG,MAAM,IAAA,kBAAU,EAAC,CAAC,CAAC,GAAG,CAAC;IACtC,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;IACvB,CAAC;AACH,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AARJ,QAAA,UAAU,cAQN;AAEjB,MAAM,UAAU,GAAG,CAAC,CAAkB,EAAE,EAAE,CACxC,IAAA,eAAM,EAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAE/D;;;GAGG;AACI,MAAM,aAAa,GAAG,CAAC,IAAqB,EAAE,EAAE,CACrD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,oBAAY,EAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AADhC,QAAA,aAAa,iBACmB;AAE7C;;GAEG;AACI,MAAM,YAAY,GAAG,CAAC,CAAgB,EAAE,EAAE;IAC/C,IAAI,CAAC,YAAY,GAAG,CAAC,cAAc;QAAE,OAAO,IAAA,yBAAiB,EAAC,CAAC,CAAC,CAAC;SAC5D,IAAI,CAAC,YAAY,GAAG,CAAC,gBAAgB;QAAE,OAAO,IAAA,2BAAmB,EAAC,CAAC,CAAC,CAAC;;QACrE,OAAO,EAAE,CAAC;AACjB,CAAC,CAAC;AAJW,QAAA,YAAY,gBAIvB;AAEF;;GAEG;AACI,MAAM,iBAAiB,GAAG,CAAC,CAAqB,EAAE,EAAE,CACzD,GAAG,IAAA,qBAAa,EAAC,CAAC,CAAC,EAAE,CAAC,KAAK,IAAA,eAAO,EAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;AADnC,QAAA,iBAAiB,qBACkB;AAEhD;;GAEG;AACI,MAAM,mBAAmB,GAAG,CAAC,CAAuB,EAAE,EAAE,CAC7D,GAAG,IAAA,qBAAa,EAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC;AADf,QAAA,mBAAmB,uBACJ;AAE5B;;GAEG;AACI,MAAM,WAAW,GAAG,CAAC,GAAkB,EAAE,IAAiB,EAAE,EAAE,CACnE,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG;UACX,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,gBAAQ,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC;OAChE,CAAC;AAHK,QAAA,WAAW,eAGhB;AAER;;GAEG;AACI,MAAM,QAAQ,GAAG,CAAC,GAAkB,EAAE,CAAY,EAAU,EAAE;IACnE,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,MAAM;QAAE,OAAO,IAAA,cAAM,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SACvE,IAAI,CAAC,YAAY,GAAG,CAAC,aAAa;QAAE,OAAO,IAAA,wBAAgB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SACpE,IAAI,CAAC,YAAY,GAAG,CAAC,WAAW;QAAE,OAAO,IAAA,sBAAc,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SAChE,IAAI,CAAC,YAAY,GAAG,CAAC,cAAc;QAAE,OAAO,IAAA,yBAAiB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SACtE,IAAI,CAAC,YAAY,GAAG,CAAC,cAAc;QAAE,OAAO,IAAA,yBAAiB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SACtE,IAAI,CAAC,YAAY,GAAG,CAAC,gBAAgB;QACxC,OAAO,IAAA,2BAAmB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SAChC,IAAI,CAAC,YAAY,GAAG,CAAC,gBAAgB;QACxC,OAAO,IAAA,2BAAmB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SAChC,IAAI,CAAC,YAAY,GAAG,CAAC,gBAAgB;QACxC,OAAO,IAAA,2BAAmB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SAChC,IAAI,CAAC,YAAY,GAAG,CAAC,UAAU;QAAE,OAAO,IAAA,qBAAa,EAAC,CAAC,CAAC,CAAC;SACzD,IAAI,CAAC,YAAY,GAAG,CAAC,eAAe;QAAE,OAAO,IAAA,0BAAkB,EAAC,CAAC,CAAC,CAAC;SACnE,IAAI,CAAC,YAAY,GAAG,CAAC,oBAAoB;QAC5C,OAAO,IAAA,+BAAuB,EAAC,CAAC,CAAC,CAAC;SAC/B,IAAI,CAAC,YAAY,GAAG,CAAC,sBAAsB;QAC9C,OAAO,IAAA,iCAAyB,EAAC,CAAC,CAAC,CAAC;SACjC,IAAI,CAAC,YAAY,GAAG,CAAC,qBAAqB;QAC7C,OAAO,IAAA,gCAAwB,EAAC,CAAC,CAAC,CAAC;SAChC,IAAI,CAAC,YAAY,GAAG,CAAC,mBAAmB;QAC3C,OAAO,IAAA,8BAAsB,EAAC,CAAC,CAAC,CAAC;;QAC9B,OAAO,EAAE,CAAC;AACjB,CAAC,CAAC;AAvBW,QAAA,QAAQ,YAuBnB;AAEF;;GAEG;AACI,MAAM,MAAM,GAAG,CAAC,GAAkB,EAAE,CAAU,EAAE,EAAE,CACvD,CAAC,YAAY,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAA,iBAAS,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;AADnD,QAAA,MAAM,UAC6C;AAEhE;;;;GAIG;AACI,MAAM,SAAS,GAAG,CAAC,GAAkB,EAAE,CAAa,EAAE,EAAE;IAC7D,IAAI,IAAI,GAAG,IAAA,sBAAc,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,UAAU,GAAG,IAAA,mBAAW,EAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,KAAK,GAAG,IAAA,oBAAY,EAAC,GAAG,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC;IAC5C,IAAI,MAAM,GAAG,IAAA,mBAAW,EAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;IAE1C,OAAO,CACL,GAAG,YAAI,eAAe,IAAI,GAAG,UAAU,IAAI,KAAK,KAAK,MAAM,IAAI;QAC/D,IAAI,WAAG,UAAU,KAAK,GAAG,CAC1B,CAAC;AACJ,CAAC,CAAC;AAVW,QAAA,SAAS,aAUpB;AAEF;;GAEG;AACI,MAAM,OAAO,GAAG,CAAC,GAAkB,EAAE,CAAoB,EAAE,EAAE;IAClE,IAAI,UAAU,GAAG,CAAC,CAAC,UAAU;SAC1B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;SAC3C,IAAI,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAE/B,IAAI,EAAE,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAElC,IAAI,OAAO,GAAG,CAAC,CAAC,OAAO;QACrB,CAAC,CAAC,IAAA,eAAO,EACL,CAAC,CAAC,OAAO,YAAY,GAAG,CAAC,oBAAoB;YAC3C,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI;YAChB,CAAC,CAAsB,CAAC,CAAC,OAAO,CACnC;QACH,CAAC,CAAC,QAAQ,CAAC;IAEb,IAAI,cAAc,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IAE5C,IAAI,IAAI,GAAG,IAAA,mBAAW,EAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IACpC,OAAO,gBAAgB,EAAE,OAAO,YAAI,IAAI,WAAG,IAAI,UAAU,KAAK,eAAO,KAAK,OAAO,IAAI,cAAc;YACzF,UAAU;mBACH,IAAI;SACd,CAAC;AACV,CAAC,CAAC;AAtBW,QAAA,OAAO,WAsBlB;AAEF;;;;GAIG;AACI,MAAM,OAAO,GAAG,CAAC,GAAkB,EAAE,CAAW,EAAE,EAAE;IACzD,IAAI,IAAI,GAAG,IAAA,qBAAa,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,KAAK,GAAG,IAAA,oBAAY,EAAC,GAAG,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC;IAC5C,IAAI,MAAM,GAAG,IAAA,mBAAW,EAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;IAE1C,OAAO,GAAG,YAAI,UAAU,IAAI,OAAO,WAAG,UAAU,KAAK,KAAK,MAAM,GAAG,CAAC;AACtE,CAAC,CAAC;AANW,QAAA,OAAO,WAMlB;AAEF;;GAEG;AACI,MAAM,YAAY,GAAG,CAAC,GAAkB,EAAE,CAAgB,EAAE,EAAE,CACnE,GAAG,IAAA,wBAAgB,EAAC,GAAG,EAAE,CAAC,CAAC,MAAM,IAAA,yBAAiB,EAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC;AADnD,QAAA,YAAY,gBACuC;AAEhE;;GAEG;AACI,MAAM,iBAAiB,GAAG,CAAC,GAAkB,EAAE,CAAgB,EAAE,EAAE,CACxE,CAAC,CAAC,KAAK,YAAY,GAAG,CAAC,aAAa;IAClC,CAAC,CAAC,IAAA,wBAAgB,EAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC;IAChC,CAAC,CAAC,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;AAHlB,QAAA,iBAAiB,qBAGC;AAE/B;;GAEG;AACI,MAAM,gBAAgB,GAAG,CAAC,CAAgB,EAAE,CAAgB,EAAE,EAAE,CACrE,IAAI,IAAA,gCAAwB,EAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;AAD7B,QAAA,gBAAgB,oBACa;AAE1C;;GAEG;AACI,MAAM,YAAY,GAAG,CAAC,GAAkB,EAAE,KAAsB,EAAE,EAAE;IACzE,6CAA6C;IAE7C,IAAI,SAAS,GAAG,IAAA,YAAI,EAClB,KAAK,EACL,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,OAAO,CACxE,CAAC;IAEF,IAAI,SAAS,CAAC,MAAM,EAAE;QAAE,OAAO,IAAA,yBAAiB,EAAC,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC;IAEvE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,IAAA,iBAAS,EAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;IAElE,IAAI,GAAG,GAAG,EAAE,CAAC,MAAM,CACjB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACP,IAAA,cAAK,EAAC,CAAC,EAAE;QACP,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CACtD,IAAA,oBAAY,EAAC,GAAG,EAAE,CAAC,CAAC,CACrB;KACF,CAAC,EACyB,EAAE,CAChC,CAAC;IAEF,OAAO,aAAa,CAClB,GAAG,CAAC,MAAM,CACR,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACP,IAAA,cAAK,EAAC,CAAC,EAAE;QACP,CAAC,IAAA,wBAAgB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,IAAA,yBAAiB,EAAC,GAAG,EAAE,CAAC,CAAC;KACtD,CAAC,EACkC,GAAG,CAC1C,CACF,CAAC;AACJ,CAAC,CAAC;AA/BW,QAAA,YAAY,gBA+BvB;AAEF,MAAM,aAAa,GAAG,CAAC,KAA2C,EAAE,EAAE,CACpE,GAAG;IACH,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC9B,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC,CAAC,GAAG,IAAI,QAAmB,KAAK,CAAC,IAAI,CAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI;QACtD,CAAC,CAAC,GAAG,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,EAAE,CAC9B;IACD,GAAG,CAAC;AAEN;;GAEG;AACI,MAAM,gBAAgB,GAAG,CAAC,GAAkB,EAAE,CAAoB,EAAE,EAAE,CAC3E,CAAC,CAAC,OAAO,CAAC,MAAM,CACd,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAC3C,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,UAAU,CAAC,CACjC,CAAC;AAJS,QAAA,gBAAgB,oBAIzB;AAEJ;;GAEG;AACI,MAAM,cAAc,GAAG,CAC5B,GAAkB,EAClB,CAAkB,EACN,EAAE;IACd,IAAI,SAAS,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;IAChD,IAAI,MAAM,GAAG,IAAA,mBAAW,EAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAEtC,IAAI,GAAG,GACL,CAAC,CAAC,UAAU,YAAY,GAAG,CAAC,YAAY;QACtC,CAAC,CAAC,IAAI,IAAA,sBAAc,EAAC,GAAG,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG;QAC1C,CAAC,CAAC,CAAC,CAAC,UAAU,YAAY,GAAG,CAAC,UAAU;YACtC,CAAC,CAAC,IAAA,mBAAW,EAAC,GAAG,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC;YACzC,CAAC,CAAC,IAAI,CAAC;IAEb,OAAO;QACL,QAAQ,SAAS,KAAK;QACtB,SAAS,MAAM,QAAQ;QACvB,SAAS,GAAG,OAAO;KACpB,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAC1B,CAAC,CAAC;AAnBW,QAAA,cAAc,kBAmBzB;AAEF;;GAEG;AACI,MAAM,iBAAiB,GAAG,CAC/B,GAAkB,EAClB,CAAqB,EACrB,EAAE;IACF,IAAI,IAAI,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC;IAE5C,IAAI,KAAK,GAAG,IAAA,oBAAY,EAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAEzC,IAAI,GAAG,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAA,oBAAY,EAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAEzE,IAAI,GAAG,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAA,oBAAY,EAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAE3E,IAAI,IAAI,GAAG,IAAA,mBAAW,EAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAEpC,IAAI,GAAG,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAA,mBAAW,EAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAExE,OAAO;QACL,MAAM,MAAM,KAAK,IAAI,MAAM,KAAK,KAAK,GAAG,KAAK,GAAG,MAAM;QACtD,IAAI,IAAI,KAAK;QACb,SAAS,GAAG,IAAI;KACjB,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAC1B,CAAC,CAAC;AArBW,QAAA,iBAAiB,qBAqB5B;AAEF;;GAEG;AACI,MAAM,iBAAiB,GAAG,CAC/B,GAAkB,EAClB,CAAqB,EACrB,EAAE;IACF,IAAI,IAAI,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC;IAE5C,IAAI,KAAK,GAAG,IAAA,oBAAY,EAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAEzC,IAAI,GAAG,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAA,oBAAY,EAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAEzE,IAAI,GAAG,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAA,oBAAY,EAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAE3E,IAAI,IAAI,GAAG,IAAA,mBAAW,EAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAEpC,IAAI,GAAG,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAA,mBAAW,EAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAExE,OAAO;QACL,MAAM,MAAM,KAAK,IAAI,MAAM,KAAK,KAAK,GAAG,KAAK,GAAG,OAAO;QACvD,WAAW,IAAI,KAAK;QACpB,aAAa,GAAG,IAAI;KACrB,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AACnB,CAAC,CAAC;AArBW,QAAA,iBAAiB,qBAqB5B;AAEF;;GAEG;AACI,MAAM,mBAAmB,GAAG,CACjC,GAAkB,EAClB,IAA0B,EAC1B,EAAE;IACF,IAAI,KAAK,GAAG,IAAA,oBAAY,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAExC,IAAI,KAAK,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAE3C,IAAI,GAAG,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IAEvC,IAAI,IAAI,GAAG,IAAA,mBAAW,EAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAEvC,OAAO;QACL,2BAA2B;QAC3B,gBAAgB,WAAG,kBAAkB;QACrC,aAAa,KAAK,WAAW,KAAK,KAAK,KAAK,KAAK,GAAG,KAAK,KAAK,KAAK;QACnE,iBAAiB;QACjB,WAAW,IAAI,EAAE;QACjB,OAAO;QACP,kBAAkB;QAClB,MAAM;KACP,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AACnB,CAAC,CAAC;AAtBW,QAAA,mBAAmB,uBAsB9B;AAEF;;GAEG;AACI,MAAM,mBAAmB,GAAG,CACjC,GAAkB,EAClB,CAAuB,EACvB,EAAE;IACF,IAAI,MAAM,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;AAC9B,CAAC,CAAC;AANW,QAAA,mBAAmB,uBAM9B;AAEK,MAAM,mBAAmB,GAAG,CACjC,GAAkB,EAClB,CAAuB,EACvB,EAAE;IACF,IAAI,MAAM,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;IAC1C,IAAI,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,eAAO,CAAC;IAClE,OAAO,OAAO,MAAM,IAAI,YAAI,KAAK,OAAO,IAAI,CAAC;AAC/C,CAAC,CAAC;AAPW,QAAA,mBAAmB,uBAO9B;AAEF;;GAEG;AACI,MAAM,aAAa,GAAG,CAAC,CAAiB,EAAE,EAAE,CACjD,GAAG,gBAAQ,oBAAoB,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;AAD5C,QAAA,aAAa,iBAC+B;AAEzD,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAEpE;;GAEG;AACI,MAAM,aAAa,GAAG,CAC3B,GAAkB,EAClB,CAAiB,EACT,EAAE;IACV,IAAI,CAAC,YAAY,GAAG,CAAC,gBAAgB;QAAE,OAAO,IAAA,2BAAmB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SACrE,IAAI,CAAC,YAAY,GAAG,CAAC,gBAAgB;QACxC,OAAO,IAAA,2BAAmB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SAChC,IAAI,CAAC,YAAY,GAAG,CAAC,eAAe;QAAE,OAAO,IAAA,0BAAkB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SACxE,IAAI,CAAC,YAAY,GAAG,CAAC,gBAAgB;QACxC,OAAO,IAAA,2BAAmB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SAChC,IAAI,CAAC,YAAY,GAAG,CAAC,cAAc;QAAE,OAAO,IAAA,yBAAiB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SACtE,IAAI,CAAC,YAAY,GAAG,CAAC,mBAAmB;QAC3C,OAAO,IAAA,8BAAsB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SACnC,IAAI,CAAC,YAAY,GAAG,CAAC,cAAc;QAAE,OAAO,IAAA,yBAAiB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SACtE,IAAI,CAAC,YAAY,GAAG,CAAC,gBAAgB;QACxC,OAAO,IAAA,2BAAmB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SAChC,IAAI,CAAC,YAAY,GAAG,CAAC,kBAAkB;QAC1C,OAAO,IAAA,6BAAqB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SAClC,IAAI,CAAC,YAAY,GAAG,CAAC,MAAM;QAAE,OAAO,IAAA,iBAAS,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SACtD,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI;QAAE,OAAO,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SAClD,IAAI,CAAC,YAAY,GAAG,CAAC,cAAc;QAAE,OAAO,IAAA,kBAAU,EAAC,CAAC,CAAC,CAAC;SAC1D,IAAI,CAAC,YAAY,GAAG,CAAC,aAAa;QAAE,OAAO,IAAA,iBAAS,EAAC,CAAC,CAAC,CAAC;SACxD,IAAI,CAAC,YAAY,GAAG,CAAC,aAAa;QAAE,OAAO,IAAA,iBAAS,EAAC,CAAC,CAAC,CAAC;SACxD,IAAI,CAAC,YAAY,GAAG,CAAC,eAAe;QAAE,OAAO,IAAA,0BAAkB,EAAC,CAAC,CAAC,CAAC;SACnE,IAAI,CAAC,YAAY,GAAG,CAAC,oBAAoB;QAC5C,OAAO,IAAA,+BAAuB,EAAC,CAAC,CAAC,CAAC;SAC/B,IAAI,CAAC,YAAY,GAAG,CAAC,sBAAsB;QAC9C,OAAO,IAAA,iCAAyB,EAAC,CAAC,CAAC,CAAC;SACjC,IAAI,CAAC,YAAY,GAAG,CAAC,qBAAqB;QAC7C,OAAO,IAAA,gCAAwB,EAAC,CAAC,CAAC,CAAC;SAChC,IAAI,CAAC,YAAY,GAAG,CAAC,mBAAmB;QAC3C,OAAO,IAAA,8BAAsB,EAAC,CAAC,CAAC,CAAC;SAC9B,IAAI,CAAC,YAAY,GAAG,CAAC,eAAe;QAAE,OAAO,IAAA,0BAAkB,EAAC,CAAC,CAAC,CAAC;;QACnE,OAAO,EAAE,CAAC;AACjB,CAAC,CAAC;AAlCW,QAAA,aAAa,iBAkCxB;AAEF;;GAEG;AACI,MAAM,mBAAmB,GAAG,CACjC,GAAkB,EAClB,CAAuB,EACvB,EAAE;IACF,IAAI,SAAS,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;IAChD,IAAI,MAAM,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;IAC1C,IAAI,GAAG,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;IAExC,OAAO,IAAI,SAAS,OAAO,MAAM,OAAO,GAAG,EAAE,CAAC;AAChD,CAAC,CAAC;AATW,QAAA,mBAAmB,uBAS9B;AAEF;;GAEG;AACI,MAAM,mBAAmB,GAAG,CACjC,GAAkB,EAClB,CAAuB,EACvB,EAAE;IACF,IAAI,IAAI,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAEtC,IAAI,KAAK,GACP,CAAC,CAAC,QAAQ,KAAK,IAAI;QACjB,CAAC,CAAC,IAAA,eAAO,EAAW,CAAC,CAAC,KAAK,CAAC;QAC5B,CAAC,CAAC,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;IAElC,IAAI,EAAE,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC3C,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;QACvB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAEf,OAAO,CAAC,CAAC,QAAQ,KAAK,IAAI;QACxB,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,GAAG;QACvB,CAAC,CAAC,IAAI,IAAI,IAAI,EAAE,IAAI,KAAK,GAAG,CAAC;AACjC,CAAC,CAAC;AAlBW,QAAA,mBAAmB,uBAkB9B;AAEF;;GAEG;AACI,MAAM,kBAAkB,GAAG,CAChC,GAAkB,EAClB,CAAsB,EACtB,EAAE;IACF,IAAI,IAAI,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC;IAC5C,OAAO,GAAG,CAAC,CAAC,QAAQ,IAAI,IAAI,GAAG,CAAC;AAClC,CAAC,CAAC;AANW,QAAA,kBAAkB,sBAM7B;AAEF;;GAEG;AACI,MAAM,mBAAmB,GAAG,CACjC,GAAkB,EAClB,CAAuB,EACvB,EAAE,CAAC,YAAY,CAAC,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AAHvC,QAAA,mBAAmB,uBAGoB;AAEpD,MAAM,YAAY,GAAG,CAAC,EAAc,EAAE,EAAE,CAAC,GAAG,YAAI,SAAS,EAAE,GAAG,CAAC;AAE/D;;GAEG;AACI,MAAM,iBAAiB,GAAG,CAAC,GAAkB,EAAE,CAAqB,EAAE,EAAE,CAC7E,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,IAAA,mBAAW,EAAC,CAAC,CAAC,QAAQ,CAAC,GAAG;IAC5D,IAAI,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,YAAI,GAAG,CAAC;AAF1B,QAAA,iBAAiB,qBAES;AAEvC;;GAEG;AACI,MAAM,sBAAsB,GAAG,CACpC,GAAkB,EAClB,CAA0B,EAC1B,EAAE;IACF,IAAI,IAAI,GAAG,IAAA,sBAAc,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAElC,IAAI,YAAY,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IAE9D,IAAI,QAAQ,GAAG,IAAA,mBAAW,EAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAEvC,IAAI,IAAI,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAEhC,OAAO,IAAA,gBAAQ,EAAC,OAAO,EAAE,YAAY,CAAC;QACpC,CAAC,CAAC,GAAG,YAAY,GAAG,QAAQ,IAAI,IAAI,GAAG;QACvC,CAAC,CAAC,OAAO,IAAI,GAAG,QAAQ,IAAI,IAAI,GAAG,CAAC;AACxC,CAAC,CAAC;AAfW,QAAA,sBAAsB,0BAejC;AAEF;;GAEG;AACI,MAAM,iBAAiB,GAAG,CAC/B,GAAkB,EAClB,CAAqB,EACrB,EAAE;IACF,IAAI,MAAM,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;IAC1C,IAAI,QAAQ,GAAG,IAAA,mBAAW,EAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACvC,IAAI,IAAI,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAEhC,OAAO,GAAG,MAAM,GAAG,QAAQ,IAAI,IAAI,GAAG,CAAC;AACzC,CAAC,CAAC;AATW,QAAA,iBAAiB,qBAS5B;AAEF;;GAEG;AACI,MAAM,WAAW,GAAG,CAAC,EAAc,EAAE,EAAE,CAC5C,IAAA,aAAK,EAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,eAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;AADvC,QAAA,WAAW,eAC4B;AAEpD;;GAEG;AACI,MAAM,OAAO,GAAG,CAAC,GAAkB,EAAE,EAAoB,EAAE,EAAE,CAClE,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAD3D,QAAA,OAAO,WACoD;AAExE;;GAEG;AACI,MAAM,mBAAmB,GAAG,CACjC,GAAkB,EAClB,CAAuB,EACvB,EAAE;IACF,IAAI,MAAM,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAExC,OAAO,CAAC,CAAC,IAAI,YAAY,GAAG,CAAC,aAAa;QACxC,CAAC,CAAC,GAAG,MAAM,IAAI,IAAA,iBAAS,EAAC,CAAC,CAAC,IAAI,CAAC,GAAG;QACnC,CAAC,CAAC,GAAG,MAAM,IAAI,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;AAChD,CAAC,CAAC;AATW,QAAA,mBAAmB,uBAS9B;AAEF;;GAEG;AACI,MAAM,qBAAqB,GAAG,CACnC,GAAkB,EAClB,CAAyB,EACzB,EAAE;IACF,IAAI,MAAM,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,oBAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACtD,IAAI,IAAI,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAEtC,OAAO,IAAI,MAAM,QAAQ,IAAI,EAAE,CAAC;AAClC,CAAC,CAAC;AARW,QAAA,qBAAqB,yBAQhC;AAEF;;GAEG;AACI,MAAM,UAAU,GAAG,CAAC,GAAkB,EAAE,CAAc,EAAE,EAAE;IAC/D,IAAI,CAAC,YAAY,GAAG,CAAC,cAAc;QAAE,OAAO,IAAA,kBAAU,EAAC,CAAC,CAAC,CAAC;SACrD,IAAI,CAAC,YAAY,GAAG,CAAC,aAAa;QAAE,OAAO,IAAA,iBAAS,EAAC,CAAC,CAAC,CAAC;SACxD,IAAI,CAAC,YAAY,GAAG,CAAC,aAAa;QAAE,OAAO,IAAA,iBAAS,EAAC,CAAC,CAAC,CAAC;SACxD,IAAI,CAAC,YAAY,GAAG,CAAC,MAAM;QAAE,OAAO,IAAA,iBAAS,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SACtD,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI;QAAE,OAAO,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;;QAClD,OAAO,EAAE,CAAC;AACjB,CAAC,CAAC;AAPW,QAAA,UAAU,cAOrB;AAEF;;GAEG;AACI,MAAM,UAAU,GAAG,CAAC,CAAqB,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC;AAAtD,QAAA,UAAU,cAA4C;AAEnE;;GAEG;AACI,MAAM,SAAS,GAAG,CAAC,CAAoB,EAAE,EAAE,CAChD,CAAC,CAAC,KAAK;KACJ,KAAK,CAAC,IAAI,CAAC;KACX,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,GAAG,GAAG,CAAC;KACxB,IAAI,CAAC,GAAG,CAAC,CAAC;AAJF,QAAA,SAAS,aAIP;AAEf;;GAEG;AACI,MAAM,SAAS,GAAG,CAAC,CAAoB,EAAE,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;AAA/D,QAAA,SAAS,aAAsD;AAE5E;;GAEG;AACI,MAAM,SAAS,GAAG,CAAC,GAAkB,EAAE,CAAa,EAAE,EAAE,CAC7D,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG;QACb,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,mBAAW,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC;OACzE,CAAC;AAHK,QAAA,SAAS,aAGd;AAER;;GAEG;AACI,MAAM,OAAO,GAAG,CAAC,GAAkB,EAAE,CAAW,EAAE,EAAE;IACzD,IAAI,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IAEvD,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG;cACd,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC;cAChC,CAAC;AACf,CAAC,CAAC;AANW,QAAA,OAAO,WAMlB;AAEF;;GAEG;AACI,MAAM,WAAW,GAAG,CAAC,GAAkB,EAAE,CAAe,EAAE,EAAE,CACjE,IAAI,IAAA,cAAM,EAAC,CAAC,CAAC,GAAG,CAAC,OAAO,IAAA,qBAAa,EAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;AAD3C,QAAA,WAAW,eACgC;AAExD;;GAEG;AACI,MAAM,MAAM,GAAG,CAAC,CAAgD,EAAE,EAAE,CACzE,CAAC,YAAY,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,IAAA,iBAAS,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAA,qBAAa,EAAC,CAAC,CAAC,CAAC;AADtD,QAAA,MAAM,UACgD;AAEnE;;GAEG;AACI,MAAM,kBAAkB,GAAG,CAAC,CAAsB,EAAE,EAAE;IAC3D,IAAI,MAAM,GACR,CAAC,CAAC,MAAM,YAAY,GAAG,CAAC,aAAa;QACnC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK;QAChB,CAAC,CAAC,IAAA,qBAAa,EAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAE9B,OAAO,GAAG,eAAO,IAAI,MAAM,EAAE,CAAC;AAChC,CAAC,CAAC;AAPW,QAAA,kBAAkB,sBAO7B;AAEF;;GAEG;AACI,MAAM,kBAAkB,GAAG,CAAC,CAAsB,EAAE,EAAE,CAAC,GAAG,eAAO,EAAE,CAAC;AAA9D,QAAA,kBAAkB,sBAA4C;AAE3E;;GAEG;AACI,MAAM,0BAA0B,GAAG,CACxC,CAAmC,EACnC,EAAE;IACF,IACE,CAAC,YAAY,GAAG,CAAC,qBAAqB;QACtC,CAAC,YAAY,GAAG,CAAC,mBAAmB;QAEpC,OAAO,IAAA,qBAAa,EAAC,CAAC,CAAC,CAAC;SACrB,IACH,CAAC,YAAY,GAAG,CAAC,sBAAsB;QACvC,CAAC,YAAY,GAAG,CAAC,oBAAoB;QAErC,OAAO,IAAA,sBAAc,EAAC,CAAC,CAAC,CAAC;;QACtB,OAAO,EAAE,CAAC;AACjB,CAAC,CAAC;AAdW,QAAA,0BAA0B,8BAcrC;AAEF;;GAEG;AACI,MAAM,cAAc,GAAG,CAAC,CAAkB,EAAE,EAAE;IACnD,IAAI,CAAC,YAAY,GAAG,CAAC,oBAAoB;QAAE,OAAO,IAAA,+BAAuB,EAAC,CAAC,CAAC,CAAC;SACxE,IAAI,CAAC,YAAY,GAAG,CAAC,sBAAsB;QAC9C,OAAO,IAAA,iCAAyB,EAAC,CAAC,CAAC,CAAC;;QACjC,OAAO,EAAE,CAAC;AACjB,CAAC,CAAC;AALW,QAAA,cAAc,kBAKzB;AAEF;;GAEG;AACI,MAAM,yBAAyB,GAAG,CAAC,CAA6B,EAAE,EAAE,CACzE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AADL,QAAA,yBAAyB,6BACpB;AAElB;;GAEG;AACI,MAAM,uBAAuB,GAAG,CAAC,CAA2B,EAAE,EAAE,CACrE,GAAG,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;AADlB,QAAA,uBAAuB,2BACL;AAE/B;;GAEG;AACI,MAAM,aAAa,GAAG,CAAC,CAAiB,EAAE,EAAE;IACjD,IAAI,CAAC,YAAY,GAAG,CAAC,mBAAmB;QAAE,OAAO,IAAA,8BAAsB,EAAC,CAAC,CAAC,CAAC;SACtE,IAAI,CAAC,YAAY,GAAG,CAAC,qBAAqB;QAC7C,OAAO,IAAA,gCAAwB,EAAC,CAAC,CAAC,CAAC;;QAChC,OAAO,EAAE,CAAC;AACjB,CAAC,CAAC;AALW,QAAA,aAAa,iBAKxB;AAEF;;GAEG;AACI,MAAM,sBAAsB,GAAG,CAAC,CAA0B,EAAE,EAAE,CACnE,GAAG,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;AADlB,QAAA,sBAAsB,0BACJ;AAE/B;;GAEG;AACI,MAAM,wBAAwB,GAAG,CAAC,CAA4B,EAAE,EAAE,CACvE,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;AADV,QAAA,wBAAwB,4BACd;AAEvB,MAAM,MAAM,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC"}
@@ -212,6 +212,7 @@ export const export2TS = (ctx: CodeGenerator, n: ast.Export) => {
212
212
  else if (n instanceof ast.ViewStatement) return viewStatement2TS(ctx, n);
213
213
  else if (n instanceof ast.Widget || n instanceof ast.Node)
214
214
  return tag2TS(ctx, n);
215
+ else if (n instanceof ast.PartStatement) return part2TS(ctx, n);
215
216
  else return "";
216
217
  };
217
218
 
@@ -528,6 +529,10 @@ export const child2TS = (ctx: CodeGenerator, n: ast.Child): string => {
528
529
  else if (n instanceof ast.ForOfStatement) return forOfStatement2TS(ctx, n);
529
530
  else if (n instanceof ast.ForFromStatement)
530
531
  return forFromStatement2TS(ctx, n);
532
+ else if (n instanceof ast.UsePartStatement)
533
+ return usePartStatement2TS(ctx, n);
534
+ else if (n instanceof ast.UseViewStatement)
535
+ return useViewStatement2TS(ctx, n);
531
536
  else if (n instanceof ast.Characters) return characters2TS(n);
532
537
  else if (n instanceof ast.ContextProperty) return contextProperty2TS(n);
533
538
  else if (n instanceof ast.QualifiedConstructor)
@@ -564,6 +569,33 @@ export const widget2TS = (ctx: CodeGenerator, n: ast.Widget) => {
564
569
  );
565
570
  };
566
571
 
572
+ /**
573
+ * part2TS
574
+ */
575
+ export const part2TS = (ctx: CodeGenerator, n: ast.PartStatement) => {
576
+ let directives = n.directives
577
+ .map((i) => _setStatement2TS(ctx, i, "let"))
578
+ .join(`;${ctx.options.EOL}`);
579
+
580
+ let id = expression2TS(ctx, n.id);
581
+
582
+ let context = n.context
583
+ ? type2TS(
584
+ n.context instanceof ast.ContextFromStatement
585
+ ? n.context.cons
586
+ : <ast.ConstructorType>n.context,
587
+ )
588
+ : "object";
589
+
590
+ let defaultContext = n.context ? "" : "={}";
591
+
592
+ let body = children2TS(ctx, n.body);
593
+ return `export const ${id} = (${THIS}:${WML}.${FRAME_TYPE}, ${CONTEXT}: ${context} ${defaultContext}) => {
594
+ ${directives}
595
+ return ${body}
596
+ }`;
597
+ };
598
+
567
599
  /**
568
600
  * node2TS converts a Node into its typescript representation.
569
601
  *
@@ -754,6 +786,26 @@ export const forFromStatement2TS = (
754
786
  ].join(eol(ctx));
755
787
  };
756
788
 
789
+ /**
790
+ * useViewStatement2TS
791
+ */
792
+ export const useViewStatement2TS = (
793
+ ctx: CodeGenerator,
794
+ n: ast.UseViewStatement,
795
+ ) => {
796
+ let target = expression2TS(ctx, n.target);
797
+ return _viewCons2Ts(target);
798
+ };
799
+
800
+ export const usePartStatement2TS = (
801
+ ctx: CodeGenerator,
802
+ n: ast.UsePartStatement,
803
+ ) => {
804
+ let target = expression2TS(ctx, n.target);
805
+ let context = n.context ? expression2TS(ctx, n.context) : CONTEXT;
806
+ return `...(${target}(${THIS}, ${context}))`;
807
+ };
808
+
757
809
  /**
758
810
  * characters2TS converts character text to a typescript string.
759
811
  */
@@ -855,7 +907,9 @@ export const unaryExpression2TS = (
855
907
  export const viewConstruction2TS = (
856
908
  ctx: CodeGenerator,
857
909
  n: ast.ViewConstruction,
858
- ) => `${THIS}.view(${expression2TS(ctx, n.expression)})`;
910
+ ) => _viewCons2Ts(expression2TS(ctx, n.expression));
911
+
912
+ const _viewCons2Ts = (id: TypeScript) => `${THIS}.view(${id})`;
859
913
 
860
914
  /**
861
915
  * funApplication2TS
@@ -78,7 +78,7 @@ export declare class CompositeMember {
78
78
  constructor(members: (Member | AliasedMember)[], location: Location);
79
79
  }
80
80
  export type Member = UnqualifiedIdentifier | UnqualifiedConstructor;
81
- export type Export = AliasStatement | ContextStatement | LetStatement | FunStatement | ViewStatement | Tag;
81
+ export type Export = AliasStatement | ContextStatement | LetStatement | PartStatement | ViewStatement | Tag;
82
82
  /**
83
83
  * AliasStatement
84
84
  */
@@ -148,14 +148,14 @@ export declare class ViewStatement {
148
148
  type: string;
149
149
  constructor(id: UnqualifiedConstructor, typeParameters: TypeParameter[], context: ContextTypeIndicator | undefined, directives: LetStatement[], root: Tag, location: Location);
150
150
  }
151
- export declare class FunStatement {
151
+ export declare class PartStatement {
152
152
  id: UnqualifiedIdentifier;
153
- typeParameters: TypeParameter[];
154
- parameters: Parameter[];
153
+ context: ContextTypeIndicator | undefined;
154
+ directives: LetStatement[];
155
155
  body: Child[];
156
156
  location: Location;
157
157
  type: string;
158
- constructor(id: UnqualifiedIdentifier, typeParameters: TypeParameter[], parameters: Parameter[], body: Child[], location: Location);
158
+ constructor(id: UnqualifiedIdentifier, context: ContextTypeIndicator | undefined, directives: LetStatement[], body: Child[], location: Location);
159
159
  }
160
160
  /**
161
161
  * TypeParameter
@@ -273,7 +273,7 @@ export declare class Interpolation {
273
273
  type: string;
274
274
  constructor(expression: Expression, filters: Expression[], location: Location);
275
275
  }
276
- export type Control = ForStatement | IfStatement;
276
+ export type Control = ForStatement | IfStatement | UseStatement;
277
277
  export declare abstract class ForStatement {
278
278
  body: Child[];
279
279
  otherwise: Child[];
@@ -331,6 +331,20 @@ export declare class ElseIfClause {
331
331
  type: string;
332
332
  constructor(condition: Expression, then: Child[], elseClause: ElseClause | ElseIfClause | undefined, location: Location);
333
333
  }
334
+ export type UseStatement = UsePartStatement | UseViewStatement;
335
+ export declare class UsePartStatement {
336
+ target: Expression;
337
+ context: Expression | undefined;
338
+ location: Location;
339
+ type: string;
340
+ constructor(target: Expression, context: Expression | undefined, location: Location);
341
+ }
342
+ export declare class UseViewStatement {
343
+ target: Expression;
344
+ location: Location;
345
+ type: string;
346
+ constructor(target: Expression, location: Location);
347
+ }
334
348
  export declare class Characters {
335
349
  value: string;
336
350
  location: Location;
package/lib/parse/ast.js CHANGED
@@ -3,8 +3,8 @@
3
3
  * Types corresponding to the WML AST.
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ContextVariable = exports.ContextProperty = exports.BooleanLiteral = exports.NumberLiteral = exports.StringLiteral = exports.Property = exports.Record = exports.List = exports.FunctionExpression = exports.ReadExpression = exports.MemberExpression = exports.CallExpression = exports.ConstructExpression = exports.FunApplication = exports.ViewConstruction = exports.UnaryExpression = exports.BinaryExpression = exports.IfThenExpression = exports.Characters = exports.ElseIfClause = exports.ElseClause = exports.IfStatement = exports.ForFromStatement = exports.ForOfStatement = exports.ForInStatement = exports.ForStatement = exports.Interpolation = exports.Attribute = exports.Widget = exports.Node = exports.UntypedParameter = exports.TypedParameter = exports.TupleType = exports.ListType = exports.RecordType = exports.FunctionType = exports.ConstructorType = exports.TypeParameter = exports.FunStatement = exports.ViewStatement = exports.ContextFromStatement = exports.LetStatement = exports.MemberDeclaration = exports.ContextStatement = exports.AliasStatement = exports.CompositeMember = exports.AggregateMember = exports.AliasedMember = exports.ImportStatement = exports.Module = void 0;
7
- exports.QualifiedIdentifier = exports.UnqualifiedIdentifier = exports.QualifiedConstructor = exports.UnqualifiedConstructor = void 0;
6
+ exports.BooleanLiteral = exports.NumberLiteral = exports.StringLiteral = exports.Property = exports.Record = exports.List = exports.FunctionExpression = exports.ReadExpression = exports.MemberExpression = exports.CallExpression = exports.ConstructExpression = exports.FunApplication = exports.ViewConstruction = exports.UnaryExpression = exports.BinaryExpression = exports.IfThenExpression = exports.Characters = exports.UseViewStatement = exports.UsePartStatement = exports.ElseIfClause = exports.ElseClause = exports.IfStatement = exports.ForFromStatement = exports.ForOfStatement = exports.ForInStatement = exports.ForStatement = exports.Interpolation = exports.Attribute = exports.Widget = exports.Node = exports.UntypedParameter = exports.TypedParameter = exports.TupleType = exports.ListType = exports.RecordType = exports.FunctionType = exports.ConstructorType = exports.TypeParameter = exports.PartStatement = exports.ViewStatement = exports.ContextFromStatement = exports.LetStatement = exports.MemberDeclaration = exports.ContextStatement = exports.AliasStatement = exports.CompositeMember = exports.AggregateMember = exports.AliasedMember = exports.ImportStatement = exports.Module = void 0;
7
+ exports.QualifiedIdentifier = exports.UnqualifiedIdentifier = exports.QualifiedConstructor = exports.UnqualifiedConstructor = exports.ContextVariable = exports.ContextProperty = void 0;
8
8
  /**
9
9
  * Module is what a wml file compiles to.
10
10
  *
@@ -155,17 +155,17 @@ class ViewStatement {
155
155
  }
156
156
  }
157
157
  exports.ViewStatement = ViewStatement;
158
- class FunStatement {
159
- constructor(id, typeParameters, parameters, body, location) {
158
+ class PartStatement {
159
+ constructor(id, context, directives, body, location) {
160
160
  this.id = id;
161
- this.typeParameters = typeParameters;
162
- this.parameters = parameters;
161
+ this.context = context;
162
+ this.directives = directives;
163
163
  this.body = body;
164
164
  this.location = location;
165
- this.type = "fun-statement";
165
+ this.type = "part-statement";
166
166
  }
167
167
  }
168
- exports.FunStatement = FunStatement;
168
+ exports.PartStatement = PartStatement;
169
169
  /**
170
170
  * TypeParameter
171
171
  */
@@ -368,6 +368,23 @@ class ElseIfClause {
368
368
  }
369
369
  }
370
370
  exports.ElseIfClause = ElseIfClause;
371
+ class UsePartStatement {
372
+ constructor(target, context, location) {
373
+ this.target = target;
374
+ this.context = context;
375
+ this.location = location;
376
+ this.type = "use-part-statement";
377
+ }
378
+ }
379
+ exports.UsePartStatement = UsePartStatement;
380
+ class UseViewStatement {
381
+ constructor(target, location) {
382
+ this.target = target;
383
+ this.location = location;
384
+ this.type = "use-view-statement";
385
+ }
386
+ }
387
+ exports.UseViewStatement = UseViewStatement;
371
388
  class Characters {
372
389
  constructor(value, location) {
373
390
  this.value = value;
@@ -1 +1 @@
1
- {"version":3,"file":"ast.js","sourceRoot":"","sources":["ast.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ast.js","sourceRoot":"","sources":["ast.ts"],"names":[],"mappings":"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"}
package/lib/parse/ast.ts CHANGED
@@ -110,7 +110,7 @@ export type Export =
110
110
  | AliasStatement
111
111
  | ContextStatement
112
112
  | LetStatement
113
- | FunStatement
113
+ | PartStatement
114
114
  | ViewStatement
115
115
  | Tag;
116
116
 
@@ -203,13 +203,13 @@ export class ViewStatement {
203
203
  ) {}
204
204
  }
205
205
 
206
- export class FunStatement {
207
- type = "fun-statement";
206
+ export class PartStatement {
207
+ type = "part-statement";
208
208
 
209
209
  constructor(
210
210
  public id: UnqualifiedIdentifier,
211
- public typeParameters: TypeParameter[],
212
- public parameters: Parameter[],
211
+ public context: ContextTypeIndicator | undefined,
212
+ public directives: LetStatement[],
213
213
  public body: Child[],
214
214
  public location: Location,
215
215
  ) {}
@@ -372,7 +372,7 @@ export class Interpolation {
372
372
  ) {}
373
373
  }
374
374
 
375
- export type Control = ForStatement | IfStatement;
375
+ export type Control = ForStatement | IfStatement | UseStatement;
376
376
 
377
377
  export abstract class ForStatement {
378
378
  abstract type: string;
@@ -458,6 +458,27 @@ export class ElseIfClause {
458
458
  ) {}
459
459
  }
460
460
 
461
+ export type UseStatement = UsePartStatement | UseViewStatement;
462
+
463
+ export class UsePartStatement {
464
+ type = "use-part-statement";
465
+
466
+ constructor(
467
+ public target: Expression,
468
+ public context: Expression | undefined,
469
+ public location: Location,
470
+ ) {}
471
+ }
472
+
473
+ export class UseViewStatement {
474
+ type = "use-view-statement";
475
+
476
+ constructor(
477
+ public target: Expression,
478
+ public location: Location,
479
+ ) {}
480
+ }
481
+
461
482
  export class Characters {
462
483
  type = "characters";
463
484