@forthic/interp 0.19.1 → 0.20.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/README.md +10 -0
  2. package/dist/cjs/forthic/interpreter.d.ts +4 -4
  3. package/dist/cjs/forthic/interpreter.js +13 -13
  4. package/dist/cjs/forthic/interpreter.js.map +1 -1
  5. package/dist/esm/forthic/interpreter.d.ts +4 -4
  6. package/dist/esm/forthic/interpreter.js +13 -13
  7. package/dist/esm/forthic/interpreter.js.map +1 -1
  8. package/package.json +5 -5
  9. package/dist/cjs/forthic/module-flag-manager.d.ts +0 -53
  10. package/dist/cjs/forthic/module-flag-manager.js +0 -87
  11. package/dist/cjs/forthic/module-flag-manager.js.map +0 -1
  12. package/dist/cjs/forthic/profiling-manager.d.ts +0 -39
  13. package/dist/cjs/forthic/profiling-manager.js +0 -77
  14. package/dist/cjs/forthic/profiling-manager.js.map +0 -1
  15. package/dist/cjs/forthic/streaming-manager.d.ts +0 -46
  16. package/dist/cjs/forthic/streaming-manager.js +0 -123
  17. package/dist/cjs/forthic/streaming-manager.js.map +0 -1
  18. package/dist/cjs/forthic/types.d.ts +0 -21
  19. package/dist/cjs/forthic/types.js +0 -6
  20. package/dist/cjs/forthic/types.js.map +0 -1
  21. package/dist/esm/forthic/module-flag-manager.d.ts +0 -53
  22. package/dist/esm/forthic/module-flag-manager.js +0 -83
  23. package/dist/esm/forthic/module-flag-manager.js.map +0 -1
  24. package/dist/esm/forthic/profiling-manager.d.ts +0 -39
  25. package/dist/esm/forthic/profiling-manager.js +0 -73
  26. package/dist/esm/forthic/profiling-manager.js.map +0 -1
  27. package/dist/esm/forthic/streaming-manager.d.ts +0 -46
  28. package/dist/esm/forthic/streaming-manager.js +0 -119
  29. package/dist/esm/forthic/streaming-manager.js.map +0 -1
  30. package/dist/esm/forthic/types.d.ts +0 -21
  31. package/dist/esm/forthic/types.js +0 -5
  32. package/dist/esm/forthic/types.js.map +0 -1
package/README.md CHANGED
@@ -1,3 +1,13 @@
1
+ > **⚠️ DEPRECATED PACKAGE**
2
+ >
3
+ > This package is from an archived repository and will not receive updates.
4
+ >
5
+ > **New repository:** https://github.com/forthix/forthic-ts
6
+ >
7
+ > Watch the new repository for announcements about updated packages.
8
+
9
+ ---
10
+
1
11
  # @forthic/interp
2
12
 
3
13
  A Forthic interpreter that runs within TypeScript.
@@ -96,12 +96,12 @@ export declare class Interpreter {
96
96
  word_histogram(): any[];
97
97
  profile_timestamps(): Timestamp[];
98
98
  handle_token(token: Token): Promise<void>;
99
- handle_string_token(token: Token): void;
100
- handle_dot_symbol_token(token: Token): void;
99
+ handle_string_token(token: Token): Promise<void>;
100
+ handle_dot_symbol_token(token: Token): Promise<void>;
101
101
  handle_start_module_token(token: Token): Promise<void>;
102
102
  handle_end_module_token(_token: Token): Promise<void>;
103
- handle_start_array_token(token: Token): void;
104
- handle_end_array_token(_token: Token): void;
103
+ handle_start_array_token(token: Token): Promise<void>;
104
+ handle_end_array_token(_token: Token): Promise<void>;
105
105
  handle_comment_token(_token: Token): void;
106
106
  handle_start_definition_token(token: Token): void;
107
107
  handle_start_memo_token(token: Token): void;
@@ -434,17 +434,17 @@ class Interpreter {
434
434
  // Handle tokens
435
435
  async handle_token(token) {
436
436
  if (token.type == tokenizer_1.TokenType.STRING)
437
- this.handle_string_token(token);
437
+ await this.handle_string_token(token);
438
438
  else if (token.type == tokenizer_1.TokenType.COMMENT)
439
439
  this.handle_comment_token(token);
440
440
  else if (token.type == tokenizer_1.TokenType.START_ARRAY)
441
- this.handle_start_array_token(token);
441
+ await this.handle_start_array_token(token);
442
442
  else if (token.type == tokenizer_1.TokenType.END_ARRAY)
443
- this.handle_end_array_token(token);
443
+ await this.handle_end_array_token(token);
444
444
  else if (token.type == tokenizer_1.TokenType.START_MODULE)
445
445
  await this.handle_start_module_token(token);
446
446
  else if (token.type == tokenizer_1.TokenType.END_MODULE)
447
- this.handle_end_module_token(token);
447
+ await this.handle_end_module_token(token);
448
448
  else if (token.type == tokenizer_1.TokenType.START_DEF)
449
449
  this.handle_start_definition_token(token);
450
450
  else if (token.type == tokenizer_1.TokenType.START_MEMO)
@@ -452,7 +452,7 @@ class Interpreter {
452
452
  else if (token.type == tokenizer_1.TokenType.END_DEF)
453
453
  this.handle_end_definition_token(token);
454
454
  else if (token.type == tokenizer_1.TokenType.DOT_SYMBOL)
455
- this.handle_dot_symbol_token(token);
455
+ await this.handle_dot_symbol_token(token);
456
456
  else if (token.type == tokenizer_1.TokenType.WORD)
457
457
  await this.handle_word_token(token);
458
458
  else if (token.type == tokenizer_1.TokenType.EOS) {
@@ -462,13 +462,13 @@ class Interpreter {
462
462
  throw new errors_1.UnknownTokenError(this.get_top_input_string(), token.string, this.string_location);
463
463
  }
464
464
  }
465
- handle_string_token(token) {
465
+ async handle_string_token(token) {
466
466
  const value = new tokenizer_2.PositionedString(token.string, token.location);
467
- this.handle_word(new module_1.PushValueWord("<string>", value));
467
+ await this.handle_word(new module_1.PushValueWord("<string>", value));
468
468
  }
469
- handle_dot_symbol_token(token) {
469
+ async handle_dot_symbol_token(token) {
470
470
  const value = new tokenizer_2.PositionedString(token.string, token.location);
471
- this.handle_word(new module_1.PushValueWord("<dot-symbol>", value));
471
+ await this.handle_word(new module_1.PushValueWord("<dot-symbol>", value));
472
472
  }
473
473
  // Start/end module tokens are treated as IMMEDIATE words *and* are also compiled
474
474
  async handle_start_module_token(token) {
@@ -487,11 +487,11 @@ class Interpreter {
487
487
  self.count_word(word);
488
488
  await word.execute(self);
489
489
  }
490
- handle_start_array_token(token) {
491
- this.handle_word(new module_1.PushValueWord("<start_array_token>", token));
490
+ async handle_start_array_token(token) {
491
+ await this.handle_word(new module_1.PushValueWord("<start_array_token>", token));
492
492
  }
493
- handle_end_array_token(_token) {
494
- this.handle_word(new EndArrayWord());
493
+ async handle_end_array_token(_token) {
494
+ await this.handle_word(new EndArrayWord());
495
495
  }
496
496
  handle_comment_token(_token) {
497
497
  // console.log("Comment:", token.string);
@@ -1 +1 @@
1
- {"version":3,"file":"interpreter.js","sourceRoot":"","sources":["../../../src/forthic/interpreter.ts"],"names":[],"mappings":";;;AAwxBA,0CAYC;AApyBD,2CAAwE;AACxE,qCAAuE;AACvE,mDAA+C;AAC/C,2CAA+C;AAC/C,qCAUkB;AAUlB,MAAM,eAAgB,SAAQ,aAAI;IAChC,KAAK,CAAC,OAAO,CAAC,MAAmB;QAC/B,MAAM,IAAI,GAAG,IAAI,CAAC;QAElB,sDAAsD;QACtD,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;YACrB,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;YAClD,OAAO;QACT,CAAC;QAED,iFAAiF;QACjF,uBAAuB;QACvB,IAAI,MAAM,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,IAAI,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/B,MAAM,CAAC,UAAU,EAAE,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAEtE,6DAA6D;YAC7D,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;gBACpC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;YACjC,CAAC;QACH,CAAC;QACD,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;CACF;AAED,MAAM,aAAc,SAAQ,aAAI;IAC9B;QACE,KAAK,CAAC,GAAG,CAAC,CAAC;IACb,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAmB;QAC/B,MAAM,CAAC,gBAAgB,EAAE,CAAC;IAC5B,CAAC;CACF;AAED,MAAM,YAAa,SAAQ,aAAI;IAC7B;QACE,KAAK,CAAC,GAAG,CAAC,CAAC;IACb,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAmB;QAC/B,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,IAAI,IAAI,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;QAC9B,iFAAiF;QACjF,OAAO,IAAI,EAAE,CAAC;YACZ,IAAI,IAAI,YAAY,iBAAK,IAAI,IAAI,CAAC,IAAI,IAAI,qBAAS,CAAC,WAAW;gBAAE,MAAM;YACvE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjB,IAAI,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;QAC5B,CAAC;QACD,KAAK,CAAC,OAAO,EAAE,CAAC;QAChB,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACzB,OAAO;IACT,CAAC;CACF;AAED,6CAA6C;AAC7C,MAAa,KAAK;IACR,KAAK,CAAQ;IAErB,YAAY,QAAe,EAAE;QAC3B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAC7B,IAAI,IAAI,YAAY,4BAAgB,EAAE,CAAC;gBACrC,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;YACxB,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,aAAa,CAAC,KAAY;QACxB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,GAAG;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,CAAC,IAAS;QACZ,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IAED,sBAAsB;IACtB,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;IAC3B,CAAC;CACF;AAxCD,sBAwCC;AAGD,MAAa,WAAW;IACd,YAAY,CAAS;IACrB,QAAQ,CAAwB;IAChC,KAAK,CAAQ;IACb,aAAa,CAAe;IAC5B,UAAU,CAAS;IACnB,YAAY,CAAW;IACvB,kBAAkB,CAA4B;IAC9C,eAAe,CAAc;IAC7B,cAAc,CAAe;IAC7B,WAAW,CAAuB;IAClC,WAAW,CAAS;IACpB,YAAY,CAAU;IACtB,WAAW,CAAU;IACrB,kBAAkB,CAAU;IAC5B,cAAc,CAAM,CAAC,uEAAuE;IAC5F,OAAO,CAAyB,CAAC,0EAA0E;IAC3G,oBAAoB,CAAyB,CAAC,wEAAwE;IACtH,YAAY,CAAyB,CAAC,wEAAwE;IAC9G,eAAe,CAAgB,CAAC,kFAAkF;IAClH,WAAW,CAA4B;IACvC,YAAY,CAAU;IACtB,kBAAkB,CAAgB;IAClC,UAAU,CAAc;IACxB,qBAAqB,GAAW,CAAC,CAAC;IAClC,MAAM,GAAY,KAAK,CAAC;IACxB,qBAAqB,GAAW,CAAC,CAAC;IAClC,eAAe,GAAY,KAAK,CAAC;IAEzC,YAAY,UAAoB,EAAE,EAAE,WAAkC,KAAK;QACzE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAEzB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAEhB,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAE7B,oGAAoG;QACpG,IAAI,CAAC,aAAa,GAAG,IAAI,4BAAY,CAAC,IAAI,CAAC,CAAC;QAE5C,IAAI,CAAC,UAAU,GAAG,IAAI,eAAM,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtC,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAElB,eAAe;QACf,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;QAC/B,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QAEvB,gBAAgB;QAChB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAE5B,oBAAoB;QACpB,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAC/B,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QAErB,mEAAmE;QACnE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAED,mBAAmB,CAAC,eAAwB;QAC1C,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IACzC,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,SAAS;QACP,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,SAAS,CAAC,KAAY;QACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;IACjC,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,YAAY,CAAC,QAA+B;QAC1C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,IAAI;QACF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,oBAAoB;QAClB,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,IAAI,CAAC;YAAE,OAAO,EAAE,CAAC;QAChD,OAAO,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACpD,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,oCAAoC;IACpC,mBAAmB;QACjB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,gBAAgB,CAAC,WAAmB;QAClC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED,iBAAiB,CAAC,WAAgC;QAChD,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,iBAAiB;QACf,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,sBAAsB;IACtB,SAAS,CAAC,SAAiB,EAAE,KAA6B;QACxD,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC/B,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;QACjC,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACzB,CAAC;QAED,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;IACvC,CAAC;IAED,SAAS,CAAC,SAAiB;QACzB,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACxD,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACtC,MAAM,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3E,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,YAAY,CAAC,SAAiB,EAAE,KAA6B;QAC3D,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,YAAY,EAAE,GAAG,KAAK,EAAE,CAAC;IAC/D,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,EAAE,CAAC;QAE/B,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAE3B,gBAAgB;QAChB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;IAC9B,CAAC;IAED,kBAAkB,CAAC,WAAmB;QACpC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,2BAAkB,CAC1B,IAAI,CAAC,oBAAoB,EAAE,EAC3B,WAAW,EACX,IAAI,CAAC,eAAe,CACrB,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,CAAC;QACtB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,GAAG,CACP,MAAc,EACd,qBAA0C,IAAI;QAE9C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,qBAAS,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC;QAErE,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACrC,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,kBAAkB,CAC3B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CACtD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,cAAsB,CAAC;QACjD,IAAI,CAAC;YACH,WAAW,EAAE,CAAC;YACd,IAAI,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;gBACnC,MAAM,IAAI,6BAAoB,CAC5B,IAAI,CAAC,oBAAoB,EAAE,EAC3B,WAAW,EACX,IAAI,CAAC,WAAW,CACjB,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;YACtB,OAAO,WAAW,CAAC;QACrB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,IAAI,CAAC,WAAW;gBAAE,MAAM,CAAC,CAAC;YAC/B,MAAM,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAChC,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,MAAM,IAAI,CAAC,kBAAkB,CAC3B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CACtD,CAAC;QACF,OAAO;IACT,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,SAAoB;QAC3C,IAAI,KAAY,CAAC;QACjB,GAAG,CAAC;YACF,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;YAC5B,KAAK,GAAG,SAAS,CAAC,UAAU,EAAE,CAAC;YAC/B,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAC/B,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAS,CAAC,GAAG,EAAE,CAAC;gBACjC,MAAM;YACR,CAAC;YACD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;gBACzB,MAAM;YACR,CAAC;YAED,uGAAuG;YACvG,IACE,KAAK,CAAC,IAAI,KAAK,qBAAS,CAAC,SAAS;gBAClC,KAAK,CAAC,IAAI,KAAK,qBAAS,CAAC,OAAO;gBAChC,KAAK,CAAC,IAAI,IAAI,qBAAS,CAAC,OAAO;gBAC/B,IAAI,CAAC,YAAY,EACjB,CAAC;gBACD,SAAS;YACX,CAAC;YAED,iDAAiD;QACnD,CAAC,QAAQ,IAAI,EAAE;QACf,OAAO,IAAI,CAAC,CAAC,iBAAiB;IAChC,CAAC;IAED,UAAU;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC/D,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,WAAW,CAAC,IAAY;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,IAAI,2BAAkB,CAC1B,IAAI,CAAC,oBAAoB,EAAE,EAC3B,IAAI,EACJ,IAAI,CAAC,eAAe,CACrB,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,UAAU;QACR,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC9C,IAAI,MAAM,GAAG,GAAG,CAAC;QACjB,IAAI,GAAG,YAAY,4BAAgB,EAAE,CAAC;YACpC,MAAM,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;QACzB,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,UAAU,CAAC,GAAQ;QACjB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,SAAS;QACP,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YACvC,MAAM,IAAI,4BAAmB,CAC3B,IAAI,CAAC,oBAAoB,EAAE,EAC3B,SAAS,CAAC,kBAAkB,EAAE,CAC/B,CAAC;QACJ,CAAC;QACD,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QAE9B,gEAAgE;QAChE,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;QACjC,IAAI,MAAM,YAAY,4BAAgB,EAAE,CAAC;YACvC,MAAM,iBAAiB,GAAG,MAAM,CAAC;YACjC,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,CAAC;YACrC,IAAI,CAAC,eAAe,GAAG,iBAAiB,CAAC,QAAQ,CAAC;QACpD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,iBAAiB,CAAC,MAAc;QAC9B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;IACjC,CAAC;IAED,eAAe,CAAC,MAAc;QAC5B,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;QAC9C,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,0FAA0F;IAC1F,oFAAoF;IACpF,mDAAmD;IACnD,WAAW,CAAC,KAAY;QACtB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,WAAW,GAAG,IAAI,CAAC;YACvB,IAAI,MAAM,GAAG,IAAI,CAAC;YAClB,IAAI,IAAI,YAAY,KAAK,EAAE,CAAC;gBAC1B,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBACtB,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACnB,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;YAC7C,IAAI,CAAC,cAAc,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,oDAAoD;IACpD,aAAa,CAAC,MAAc,EAAE,MAAM,GAAG,EAAE;QACvC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC7B,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,cAAc,CAAC,OAAiB;QAC9B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAAc;QAClC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACtC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,IAAI,oBAAW,CACnB,IAAI,CAAC,oBAAoB,EAAE,EAC3B,MAAM,CAAC,IAAI,EACX,CAAC,EACD,IAAI,CAAC,eAAe,EACpB,CAAC,CACF,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED,SAAS,CAAC,IAAY;QACpB,IAAI,MAAM,GAAG,IAAI,CAAC;QAClB,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACvD,MAAM,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,MAAM;gBAAE,MAAM;QACpB,CAAC;QACD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,yBAAyB;IACzB,YAAY;IACZ,eAAe;QACb,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACrC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC5B,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;IACxB,CAAC;IAED,UAAU,CAAC,IAAU;QACnB,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,OAAO;QAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,cAAc;QACZ,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;IAC5B,CAAC;IAED,aAAa,CAAC,KAAa;QACzB,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,OAAO;QAC/B,MAAM,SAAS,GAAc;YAC3B,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,kBAAkB;SAC9C,CAAC;QACF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC;IAED,cAAc;QACZ,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC7C,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7D,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,kBAAkB;QAChB,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,yBAAyB;IACzB,gBAAgB;IAEhB,KAAK,CAAC,YAAY,CAAC,KAAY;QAC7B,IAAI,KAAK,CAAC,IAAI,IAAI,qBAAS,CAAC,MAAM;YAAE,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;aAC/D,IAAI,KAAK,CAAC,IAAI,IAAI,qBAAS,CAAC,OAAO;YAAE,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;aACtE,IAAI,KAAK,CAAC,IAAI,IAAI,qBAAS,CAAC,WAAW;YAC1C,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;aAClC,IAAI,KAAK,CAAC,IAAI,IAAI,qBAAS,CAAC,SAAS;YACxC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;aAChC,IAAI,KAAK,CAAC,IAAI,IAAI,qBAAS,CAAC,YAAY;YAC3C,MAAM,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;aACzC,IAAI,KAAK,CAAC,IAAI,IAAI,qBAAS,CAAC,UAAU;YACzC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;aACjC,IAAI,KAAK,CAAC,IAAI,IAAI,qBAAS,CAAC,SAAS;YACxC,IAAI,CAAC,6BAA6B,CAAC,KAAK,CAAC,CAAC;aACvC,IAAI,KAAK,CAAC,IAAI,IAAI,qBAAS,CAAC,UAAU;YACzC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;aACjC,IAAI,KAAK,CAAC,IAAI,IAAI,qBAAS,CAAC,OAAO;YACtC,IAAI,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;aACrC,IAAI,KAAK,CAAC,IAAI,IAAI,qBAAS,CAAC,UAAU;YAAE,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;aAC5E,IAAI,KAAK,CAAC,IAAI,IAAI,qBAAS,CAAC,IAAI;YAAE,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;aACtE,IAAI,KAAK,CAAC,IAAI,IAAI,qBAAS,CAAC,GAAG,EAAE,CAAC;YACrC,OAAO;QACT,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,0BAAiB,CACzB,IAAI,CAAC,oBAAoB,EAAE,EAC3B,KAAK,CAAC,MAAM,EACZ,IAAI,CAAC,eAAe,CACrB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,mBAAmB,CAAC,KAAY;QAC9B,MAAM,KAAK,GAAG,IAAI,4BAAgB,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACjE,IAAI,CAAC,WAAW,CAAC,IAAI,sBAAa,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,uBAAuB,CAAC,KAAY;QAClC,MAAM,KAAK,GAAG,IAAI,4BAAgB,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACjE,IAAI,CAAC,WAAW,CAAC,IAAI,sBAAa,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,iFAAiF;IACjF,KAAK,CAAC,yBAAyB,CAAC,KAAY;QAC1C,MAAM,IAAI,GAAG,IAAI,CAAC;QAClB,MAAM,IAAI,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAE/C,IAAI,IAAI,CAAC,YAAY;YAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC1D,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB;QACvC,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,MAAa;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC;QAClB,MAAM,IAAI,GAAG,IAAI,aAAa,EAAE,CAAC;QAEjC,IAAI,IAAI,CAAC,YAAY;YAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC1D,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACtB,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,wBAAwB,CAAC,KAAY;QACnC,IAAI,CAAC,WAAW,CAAC,IAAI,sBAAa,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,sBAAsB,CAAC,MAAa;QAClC,IAAI,CAAC,WAAW,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;IACvC,CAAC;IAED,oBAAoB,CAAC,MAAa;QAChC,yCAAyC;IAC3C,CAAC;IAED,6BAA6B,CAAC,KAAY;QACxC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,MAAM,IAAI,8BAAqB,CAC7B,IAAI,CAAC,oBAAoB,EAAE,EAC3B,IAAI,CAAC,cAAc,EAAE,QAAQ,CAC9B,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,cAAc,GAAG,IAAI,uBAAc,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACvD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;IAClC,CAAC;IAED,uBAAuB,CAAC,KAAY;QAClC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,MAAM,IAAI,8BAAqB,CAC7B,IAAI,CAAC,oBAAoB,EAAE,EAC3B,IAAI,CAAC,cAAc,EAAE,QAAQ,CAC9B,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,cAAc,GAAG,IAAI,uBAAc,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACvD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;IACjC,CAAC;IAED,2BAA2B,CAAC,KAAY;QACtC,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YAC/C,MAAM,IAAI,4BAAmB,CAC3B,IAAI,CAAC,oBAAoB,EAAE,EAC3B,KAAK,CAAC,QAAQ,CACf,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,IAAI,CAAC,UAAU,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACxD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,UAAU,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,KAAY;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,yBAAgB,CACxB,IAAI,CAAC,oBAAoB,EAAE,EAC3B,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,QAAQ,CACf,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,OAAO;IACT,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,IAAU,EAAE,WAAgC,IAAI;QAChE,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAC5B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;aAAM,CAAC;YACN,IAAI,IAAI,CAAC,eAAe;gBAAE,OAAO;YACjC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACtB,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IAEH,KAAK,CAAC,CAAC,YAAY,CACjB,UAAkB,EAClB,IAAa,EACb,qBAA0C,IAAI;QAE9C,8CAA8C;QAC9C,MAAM,SAAS,GAAG,IAAI,qBAAS,CAAC,UAAU,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACrF,MAAM,MAAM,GAAY,EAAE,CAAC;QAC3B,IAAI,QAAQ,GAAG,KAAK,CAAC;QAErB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAErC,oCAAoC;QACpC,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,KAAK,GAAG,SAAS,CAAC,UAAU,EAAE,CAAC;YACrC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM;YACR,CAAC;YAED,iDAAiD;YACjD,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAS,CAAC,GAAG,EAAE,CAAC;gBACjC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACnB,QAAQ,GAAG,IAAI,CAAC;gBAChB,MAAM;YACR,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;QAED,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC;QAElE,IAAI,OAAO,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAExC,IAAI,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YACtB,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YACvB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,uDAAuD;QACvD,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1D,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACxB,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,SAAS;YACX,CAAC;YAED,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAE/B,IACE,IAAI,CAAC,MAAM;gBACX,CAAC,KAAK,CAAC,IAAI,KAAK,qBAAS,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,CAAC,EAC/D,CAAC;gBACD,MAAM,KAAK,CAAC,MAAM,CAAC;YACrB,CAAC;YACD,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC9B,CAAC;QAED,2BAA2B;QAC3B,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,CAAC;QAE3B,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC7B,kEAAkE;YAClE,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YAE/D,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;YACpC,CAAC;YACD,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC,MAAM,CAAC;QAC5C,CAAC;QAED,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QAED,uCAAuC;QACvC,IAAI,CAAC,qBAAqB,GAAG,OAAO,CAAC;IACvC,CAAC;IAED,WAAW;QACT,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC;QAC/B,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC;IACjC,CAAC;IAED,SAAS;QACP,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC;QAC/B,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC;IACjC,CAAC;CACF;AAppBD,kCAopBC;AAED,SAAS,iBAAiB,CAAC,MAAe;IACxC,OAAO,MAAM,CAAC,aAAa,CACzB,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,qBAAS,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAS,CAAC,GAAG,CACzE,CAAC;AACJ,CAAC;AAED,SAAgB,eAAe,CAAC,MAAmB;IACjD,MAAM,UAAU,GAAG,MAAa,CAAC;IACjC,MAAM,MAAM,GAAG,IAAI,WAAW,EAAS,CAAC;IACxC,MAAM,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;IACtC,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;IAChD,MAAM,CAAC,YAAY,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC1C,MAAM,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACxC,MAAM,CAAC,kBAAkB,GAAG,UAAU,CAAC,kBAAkB,CAAC;IAC1D,MAAM,CAAC,OAAO,GAAG,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC;IAC3C,MAAM,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;IAC5C,MAAM,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC;IAChD,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"interpreter.js","sourceRoot":"","sources":["../../../src/forthic/interpreter.ts"],"names":[],"mappings":"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"}
@@ -96,12 +96,12 @@ export declare class Interpreter {
96
96
  word_histogram(): any[];
97
97
  profile_timestamps(): Timestamp[];
98
98
  handle_token(token: Token): Promise<void>;
99
- handle_string_token(token: Token): void;
100
- handle_dot_symbol_token(token: Token): void;
99
+ handle_string_token(token: Token): Promise<void>;
100
+ handle_dot_symbol_token(token: Token): Promise<void>;
101
101
  handle_start_module_token(token: Token): Promise<void>;
102
102
  handle_end_module_token(_token: Token): Promise<void>;
103
- handle_start_array_token(token: Token): void;
104
- handle_end_array_token(_token: Token): void;
103
+ handle_start_array_token(token: Token): Promise<void>;
104
+ handle_end_array_token(_token: Token): Promise<void>;
105
105
  handle_comment_token(_token: Token): void;
106
106
  handle_start_definition_token(token: Token): void;
107
107
  handle_start_memo_token(token: Token): void;
@@ -429,17 +429,17 @@ export class Interpreter {
429
429
  // Handle tokens
430
430
  async handle_token(token) {
431
431
  if (token.type == TokenType.STRING)
432
- this.handle_string_token(token);
432
+ await this.handle_string_token(token);
433
433
  else if (token.type == TokenType.COMMENT)
434
434
  this.handle_comment_token(token);
435
435
  else if (token.type == TokenType.START_ARRAY)
436
- this.handle_start_array_token(token);
436
+ await this.handle_start_array_token(token);
437
437
  else if (token.type == TokenType.END_ARRAY)
438
- this.handle_end_array_token(token);
438
+ await this.handle_end_array_token(token);
439
439
  else if (token.type == TokenType.START_MODULE)
440
440
  await this.handle_start_module_token(token);
441
441
  else if (token.type == TokenType.END_MODULE)
442
- this.handle_end_module_token(token);
442
+ await this.handle_end_module_token(token);
443
443
  else if (token.type == TokenType.START_DEF)
444
444
  this.handle_start_definition_token(token);
445
445
  else if (token.type == TokenType.START_MEMO)
@@ -447,7 +447,7 @@ export class Interpreter {
447
447
  else if (token.type == TokenType.END_DEF)
448
448
  this.handle_end_definition_token(token);
449
449
  else if (token.type == TokenType.DOT_SYMBOL)
450
- this.handle_dot_symbol_token(token);
450
+ await this.handle_dot_symbol_token(token);
451
451
  else if (token.type == TokenType.WORD)
452
452
  await this.handle_word_token(token);
453
453
  else if (token.type == TokenType.EOS) {
@@ -457,13 +457,13 @@ export class Interpreter {
457
457
  throw new UnknownTokenError(this.get_top_input_string(), token.string, this.string_location);
458
458
  }
459
459
  }
460
- handle_string_token(token) {
460
+ async handle_string_token(token) {
461
461
  const value = new PositionedString(token.string, token.location);
462
- this.handle_word(new PushValueWord("<string>", value));
462
+ await this.handle_word(new PushValueWord("<string>", value));
463
463
  }
464
- handle_dot_symbol_token(token) {
464
+ async handle_dot_symbol_token(token) {
465
465
  const value = new PositionedString(token.string, token.location);
466
- this.handle_word(new PushValueWord("<dot-symbol>", value));
466
+ await this.handle_word(new PushValueWord("<dot-symbol>", value));
467
467
  }
468
468
  // Start/end module tokens are treated as IMMEDIATE words *and* are also compiled
469
469
  async handle_start_module_token(token) {
@@ -482,11 +482,11 @@ export class Interpreter {
482
482
  self.count_word(word);
483
483
  await word.execute(self);
484
484
  }
485
- handle_start_array_token(token) {
486
- this.handle_word(new PushValueWord("<start_array_token>", token));
485
+ async handle_start_array_token(token) {
486
+ await this.handle_word(new PushValueWord("<start_array_token>", token));
487
487
  }
488
- handle_end_array_token(_token) {
489
- this.handle_word(new EndArrayWord());
488
+ async handle_end_array_token(_token) {
489
+ await this.handle_word(new EndArrayWord());
490
490
  }
491
491
  handle_comment_token(_token) {
492
492
  // console.log("Comment:", token.string);
@@ -1 +1 @@
1
- {"version":3,"file":"interpreter.js","sourceRoot":"","sources":["../../../src/forthic/interpreter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interpreter.js","sourceRoot":"","sources":["../../../src/forthic/interpreter.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@forthic/interp",
3
- "version": "0.19.1",
4
- "description": "Forthic interpreter",
3
+ "version": "0.20.1",
4
+ "description": "[ARCHIVED] Forthic interpreter - See https://github.com/forthix/forthic-ts for the new repository",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",
7
7
  "files": [
@@ -17,14 +17,14 @@
17
17
  },
18
18
  "repository": {
19
19
  "type": "git",
20
- "url": "git+https://github.com/linkedin/forthic.git"
20
+ "url": "git+https://github.com/forthix/forthic-ts.git"
21
21
  },
22
22
  "author": "Rino Jose",
23
23
  "license": "BSD-2-Clause",
24
24
  "bugs": {
25
- "url": "https://github.com/linkedin/forthic/issues"
25
+ "url": "https://github.com/forthix/forthic-ts/issues"
26
26
  },
27
- "homepage": "https://github.com/linkedin/forthic#readme",
27
+ "homepage": "https://github.com/forthix/forthic-ts#readme",
28
28
  "dependencies": {
29
29
  "temporal-polyfill": "^0.2.5"
30
30
  },
@@ -1,53 +0,0 @@
1
- import { ModuleFlags } from "./types";
2
- /**
3
- * Manages module flags for the Forthic interpreter.
4
- *
5
- * Module flags are temporary configuration values that affect word behavior.
6
- * Key behavior: get_flags() returns current flags and resets them to defaults.
7
- */
8
- export declare class ModuleFlagManager {
9
- private default_module_flags;
10
- private module_flags;
11
- /**
12
- * Set default flags for a module
13
- *
14
- * @param module_id Unique identifier for the module
15
- * @param flags Default flag values for the module
16
- */
17
- set_flags(module_id: string, flags: ModuleFlags): void;
18
- /**
19
- * Get current flags for a module and reset them to defaults
20
- *
21
- * IMPORTANT: This method has side effects - it resets flags after reading them.
22
- * This is the intended behavior for the Forthic flag system.
23
- *
24
- * @param module_id Unique identifier for the module
25
- * @returns Current flag values (before reset)
26
- */
27
- get_flags(module_id: string): ModuleFlags;
28
- /**
29
- * Modify (set) flags for a module without resetting to defaults
30
- *
31
- * @param module_id Unique identifier for the module
32
- * @param flags Flag values to set/update
33
- */
34
- modify_flags(module_id: string, flags: ModuleFlags): void;
35
- /**
36
- * Get current flags without resetting (for testing/debugging)
37
- *
38
- * @param module_id Unique identifier for the module
39
- * @returns Current flag values (without reset)
40
- */
41
- peek_flags(module_id: string): ModuleFlags;
42
- /**
43
- * Get default flags for a module (for testing/debugging)
44
- *
45
- * @param module_id Unique identifier for the module
46
- * @returns Default flag values
47
- */
48
- get_default_flags(module_id: string): ModuleFlags;
49
- /**
50
- * Reset all flags to defaults (useful for interpreter reset)
51
- */
52
- reset_all_flags(): void;
53
- }
@@ -1,87 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ModuleFlagManager = void 0;
4
- /**
5
- * Manages module flags for the Forthic interpreter.
6
- *
7
- * Module flags are temporary configuration values that affect word behavior.
8
- * Key behavior: get_flags() returns current flags and resets them to defaults.
9
- */
10
- class ModuleFlagManager {
11
- default_module_flags = {};
12
- module_flags = {};
13
- /**
14
- * Set default flags for a module
15
- *
16
- * @param module_id Unique identifier for the module
17
- * @param flags Default flag values for the module
18
- */
19
- set_flags(module_id, flags) {
20
- if (!this.default_module_flags) {
21
- this.default_module_flags = {};
22
- }
23
- if (!this.module_flags) {
24
- this.module_flags = {};
25
- }
26
- this.default_module_flags[module_id] = flags;
27
- this.module_flags[module_id] = flags;
28
- }
29
- /**
30
- * Get current flags for a module and reset them to defaults
31
- *
32
- * IMPORTANT: This method has side effects - it resets flags after reading them.
33
- * This is the intended behavior for the Forthic flag system.
34
- *
35
- * @param module_id Unique identifier for the module
36
- * @returns Current flag values (before reset)
37
- */
38
- get_flags(module_id) {
39
- const module_flags = this.module_flags[module_id] || {};
40
- const result = {};
41
- // Copy current flag values
42
- Object.keys(module_flags).forEach((k) => {
43
- result[k] = module_flags[k];
44
- });
45
- // Reset flags to defaults
46
- this.module_flags[module_id] = { ...this.default_module_flags[module_id] };
47
- return result;
48
- }
49
- /**
50
- * Modify (set) flags for a module without resetting to defaults
51
- *
52
- * @param module_id Unique identifier for the module
53
- * @param flags Flag values to set/update
54
- */
55
- modify_flags(module_id, flags) {
56
- const module_flags = this.module_flags[module_id] || {};
57
- this.module_flags[module_id] = { ...module_flags, ...flags };
58
- }
59
- /**
60
- * Get current flags without resetting (for testing/debugging)
61
- *
62
- * @param module_id Unique identifier for the module
63
- * @returns Current flag values (without reset)
64
- */
65
- peek_flags(module_id) {
66
- return this.module_flags[module_id] ? { ...this.module_flags[module_id] } : {};
67
- }
68
- /**
69
- * Get default flags for a module (for testing/debugging)
70
- *
71
- * @param module_id Unique identifier for the module
72
- * @returns Default flag values
73
- */
74
- get_default_flags(module_id) {
75
- return this.default_module_flags[module_id] ? { ...this.default_module_flags[module_id] } : {};
76
- }
77
- /**
78
- * Reset all flags to defaults (useful for interpreter reset)
79
- */
80
- reset_all_flags() {
81
- Object.keys(this.default_module_flags).forEach(module_id => {
82
- this.module_flags[module_id] = { ...this.default_module_flags[module_id] };
83
- });
84
- }
85
- }
86
- exports.ModuleFlagManager = ModuleFlagManager;
87
- //# sourceMappingURL=module-flag-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"module-flag-manager.js","sourceRoot":"","sources":["../../../src/forthic/module-flag-manager.ts"],"names":[],"mappings":";;;AAEA;;;;;GAKG;AACH,MAAa,iBAAiB;IACpB,oBAAoB,GAAmC,EAAE,CAAC;IAC1D,YAAY,GAAmC,EAAE,CAAC;IAE1D;;;;;OAKG;IACH,SAAS,CAAC,SAAiB,EAAE,KAAkB;QAC7C,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC/B,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;QACjC,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACzB,CAAC;QAED,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;IACvC,CAAC;IAED;;;;;;;;OAQG;IACH,SAAS,CAAC,SAAiB;QACzB,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACxD,MAAM,MAAM,GAAgB,EAAE,CAAC;QAE/B,2BAA2B;QAC3B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACtC,MAAM,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,0BAA0B;QAC1B,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC;QAE3E,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACH,YAAY,CAAC,SAAiB,EAAE,KAAkB;QAChD,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,YAAY,EAAE,GAAG,KAAK,EAAE,CAAC;IAC/D,CAAC;IAED;;;;;OAKG;IACH,UAAU,CAAC,SAAiB;QAC1B,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACjF,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,SAAiB;QACjC,OAAO,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACjG,CAAC;IAED;;OAEG;IACH,eAAe;QACb,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YACzD,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7E,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AArFD,8CAqFC"}
@@ -1,39 +0,0 @@
1
- import { Word } from "./module";
2
- import { ProfileTimestamp, WordCount } from "./types";
3
- /**
4
- * Manages profiling functionality for the Forthic interpreter
5
- */
6
- export declare class ProfilingManager {
7
- private is_profiling;
8
- private start_profile_time;
9
- private timestamps;
10
- private word_counts;
11
- /**
12
- * Start profiling execution
13
- */
14
- start_profiling(): void;
15
- /**
16
- * Stop profiling execution
17
- */
18
- stop_profiling(): void;
19
- /**
20
- * Count execution of a word (for profiling)
21
- */
22
- count_word(word: Word): void;
23
- /**
24
- * Add a timestamp with label (for profiling)
25
- */
26
- add_timestamp(label: string): void;
27
- /**
28
- * Get word execution histogram sorted by count
29
- */
30
- word_histogram(): WordCount[];
31
- /**
32
- * Get all profile timestamps
33
- */
34
- profile_timestamps(): ProfileTimestamp[];
35
- /**
36
- * Check if profiling is currently active
37
- */
38
- is_profiling_active(): boolean;
39
- }