lemon-core 5.0.4 → 5.0.6

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 (60) hide show
  1. package/README.md +168 -136
  2. package/bin/lemon-fields-types.mjs +12 -0
  3. package/bin/lib/fields-types.mjs +629 -0
  4. package/dist/common/test-helper.js +6 -3
  5. package/dist/common/test-helper.js.map +1 -1
  6. package/dist/cores/aws/aws-sns-service.d.ts +6 -0
  7. package/dist/cores/aws/aws-sns-service.js +22 -3
  8. package/dist/cores/aws/aws-sns-service.js.map +1 -1
  9. package/dist/cores/aws/aws-sqs-service.js +5 -0
  10. package/dist/cores/aws/aws-sqs-service.js.map +1 -1
  11. package/dist/cores/config/config-service.js +3 -1
  12. package/dist/cores/config/config-service.js.map +1 -1
  13. package/dist/cores/lambda/lambda-alb-handler.js +5 -0
  14. package/dist/cores/lambda/lambda-alb-handler.js.map +1 -1
  15. package/dist/cores/lambda/lambda-handler.js +4 -1
  16. package/dist/cores/lambda/lambda-handler.js.map +1 -1
  17. package/dist/cores/lambda/lambda-notification-handler.js +4 -1
  18. package/dist/cores/lambda/lambda-notification-handler.js.map +1 -1
  19. package/dist/cores/lambda/lambda-sns-handler.d.ts +7 -1
  20. package/dist/cores/lambda/lambda-sns-handler.js +26 -3
  21. package/dist/cores/lambda/lambda-sns-handler.js.map +1 -1
  22. package/dist/cores/lambda/lambda-sqs-handler.d.ts +7 -1
  23. package/dist/cores/lambda/lambda-sqs-handler.js +26 -3
  24. package/dist/cores/lambda/lambda-sqs-handler.js.map +1 -1
  25. package/dist/cores/lambda/lambda-web-handler.js +63 -15
  26. package/dist/cores/lambda/lambda-web-handler.js.map +1 -1
  27. package/dist/cores/protocol/aws-lambda-helper.d.ts +13 -0
  28. package/dist/cores/protocol/aws-lambda-helper.js +64 -41
  29. package/dist/cores/protocol/aws-lambda-helper.js.map +1 -1
  30. package/dist/cores/protocol/local-transport.d.ts +135 -0
  31. package/dist/cores/protocol/local-transport.js +392 -0
  32. package/dist/cores/protocol/local-transport.js.map +1 -0
  33. package/dist/cores/protocol/protocol-relay.d.ts +123 -0
  34. package/dist/cores/protocol/protocol-relay.js +339 -0
  35. package/dist/cores/protocol/protocol-relay.js.map +1 -0
  36. package/dist/cores/protocol/protocol-service.d.ts +11 -4
  37. package/dist/cores/protocol/protocol-service.js +140 -36
  38. package/dist/cores/protocol/protocol-service.js.map +1 -1
  39. package/dist/cores/protocol/protocol-sign.d.ts +22 -0
  40. package/dist/cores/protocol/protocol-sign.js +30 -3
  41. package/dist/cores/protocol/protocol-sign.js.map +1 -1
  42. package/dist/engine/engine.js +35 -15
  43. package/dist/engine/engine.js.map +1 -1
  44. package/dist/esm/index.mjs +2 -0
  45. package/dist/extended/cores/abstract-controllers.d.ts +18 -4
  46. package/dist/extended/cores/abstract-controllers.js +59 -19
  47. package/dist/extended/cores/abstract-controllers.js.map +1 -1
  48. package/dist/extended/cores/abstract-services.d.ts +54 -4
  49. package/dist/extended/cores/abstract-services.js +159 -14
  50. package/dist/extended/cores/abstract-services.js.map +1 -1
  51. package/dist/index.d.ts +3 -0
  52. package/dist/index.js +4 -1
  53. package/dist/index.js.map +1 -1
  54. package/dist/lib/log-mask.d.ts +19 -0
  55. package/dist/lib/log-mask.js +55 -0
  56. package/dist/lib/log-mask.js.map +1 -0
  57. package/dist/lib/safe-json.d.ts +23 -0
  58. package/dist/lib/safe-json.js +78 -0
  59. package/dist/lib/safe-json.js.map +1 -0
  60. package/package.json +14 -4
@@ -44,6 +44,8 @@ exports.SQSProtocolTransformer = exports.SNSProtocolTransformer = exports.WEBPro
44
44
  *
45
45
  * @author Steve Jung <steve@lemoncloud.io>
46
46
  * @date 2019-11-27 initial version.
47
+ * @date 2026-10-30 `execute/notify/enqueue/broadcast`: the local transport (`LOCAL_TRANSPORT=mock`) delivers in-process.
48
+ * @date 2026-10-30 v5 B14: the transformers send the relay (`x-lemon-relay` / `relay`) instead of the full context.
47
49
  *
48
50
  * @copyright (C) lemoncloud.io 2019 - All Rights Reserved.
49
51
  */
@@ -56,8 +58,12 @@ const config_1 = __importDefault(require("../config/")); // load config-module.
56
58
  const aws_1 = __importDefault(require("../aws/")); // load config-module.
57
59
  const qs_1 = __importDefault(require("qs"));
58
60
  const aws_lambda_helper_1 = require("./aws-lambda-helper");
61
+ const local_transport_1 = require("./local-transport");
62
+ const aws_sns_service_1 = require("../aws/aws-sns-service");
59
63
  const perf_1 = require("../../lib/perf");
60
64
  const protocol_sign_1 = require("./protocol-sign");
65
+ Object.defineProperty(exports, "HEADER_PROTOCOL_CONTEXT", { enumerable: true, get: function () { return protocol_sign_1.HEADER_PROTOCOL_CONTEXT; } });
66
+ const protocol_relay_1 = require("./protocol-relay");
61
67
  const NS = engine_1.$U.NS('PRTS', 'yellow'); // NAMESPACE TO BE PRINTED.
62
68
  /**
63
69
  * SDK packages, imported on the first use (not at import; v5 B2-c, K6). This file keeps its own loaders.
@@ -70,10 +76,77 @@ const loadSns = () => ($sns ??= (0, perf_1.measureAsync)(engine_1._inf, engine_1
70
76
  // loader of `@aws-sdk/client-sqs`.
71
77
  const loadSqs = () => ($sqs ??= (0, perf_1.measureAsync)(engine_1._inf, engine_1.$U.NS('PERF', 'cyan'), 'lazy-load @aws-sdk/client-sqs', () => Promise.resolve().then(() => __importStar(require('@aws-sdk/client-sqs')))));
72
78
  /**
73
- * header name to exchange `next-context`
74
- * ONLY for internal communication.
79
+ * v5 B14: the caller's service uri for the relay `via` (`myProtocolURI()` of the service), or undefined if unknown.
75
80
  */
76
- exports.HEADER_PROTOCOL_CONTEXT = engine_1.$U.env('HEADER_PROTOCOL_CONTEXT', 'x-protocol-context');
81
+ const viaOf = (service, context) => {
82
+ const config = service?.config ?? config_1.default.config;
83
+ if (!config?.getService?.())
84
+ return undefined;
85
+ return MyProtocolService.buildProtocolURI(config, context, 'api', 'self', '', '');
86
+ };
87
+ /**
88
+ * v5 B14: the param to send over SNS/SQS — the `relay` field, and the full `context` only with `PROTOCOL_LEGACY_CONTEXT=send`.
89
+ * - throws `508 LOOP DETECTED` when the next hop is over the cap (before any send).
90
+ */
91
+ const asRelayParam = (service, param) => {
92
+ const context = param.context || {};
93
+ const relay = (0, protocol_relay_1.encodeRelay)((0, protocol_relay_1.buildRelay)(context, { via: viaOf(service, context) }));
94
+ //* `send`: the legacy context too (for v4 receivers); else no `context` key.
95
+ if ((0, protocol_relay_1.readLegacySend)() === 'send')
96
+ return { ...param, [protocol_relay_1.RELAY_PARAM]: relay };
97
+ const { context: _, ...rest } = param; // eslint-disable-line @typescript-eslint/no-unused-vars
98
+ return { ...rest, [protocol_relay_1.RELAY_PARAM]: relay };
99
+ };
100
+ /**
101
+ * v5 B14: the receiver context of a SNS/SQS protocol param.
102
+ * - `relay` wins: decode, hop cap (508), caller requestId = the `requestId` attribute, then the D2 context w/ `own` ids.
103
+ * - else the legacy `context` by `PROTOCOL_LEGACY_ACCEPT` (reject → 400), checked against the attributes as before,
104
+ * kept as is + `channel: 'internal'` + an entry trace.
105
+ * - else (no context at all) an internal context of the receiver's own ids.
106
+ * - prints one `TRACE` line.
107
+ *
108
+ * @param transport `sns` | `sqs`
109
+ * @param param the received param (JSON of the message)
110
+ * @param attrs `accountId`, `requestId` attributes of the message
111
+ * @param own the receiver's own `requestId`/`accountId`
112
+ * @param strict (SNS) check the attributes also when there is no context
113
+ */
114
+ const receiveContext = (transport, param, attrs, own, strict) => {
115
+ //* check the message attributes against a (legacy) context, as before.
116
+ const check = (context) => {
117
+ if (attrs.accountId != `${context.accountId || ''}`)
118
+ throw new Error(`400 INVALID CONTEXT - accountId:${context.accountId}`);
119
+ if (attrs.requestId != `${context.requestId || ''}`)
120
+ throw new Error(`400 INVALID CONTEXT - requestId:${context.requestId}`);
121
+ };
122
+ const result = (() => {
123
+ const relayText = param?.[protocol_relay_1.RELAY_PARAM];
124
+ if (relayText !== undefined && relayText !== null) {
125
+ const relay = (0, protocol_relay_1.decodeRelay)(relayText);
126
+ (0, protocol_relay_1.assertHop)(relay.hop);
127
+ if (attrs.requestId && relay.pid !== undefined && attrs.requestId !== relay.pid)
128
+ throw new Error(`400 INVALID CONTEXT - requestId:${relay.pid}`);
129
+ return (0, protocol_relay_1.asRelayContext)(relay, own);
130
+ }
131
+ const legacy = param?.context;
132
+ if (legacy && typeof legacy === 'object') {
133
+ (0, protocol_relay_1.acceptLegacy)(transport, legacy);
134
+ check(legacy);
135
+ return { ...legacy, channel: 'internal', trace: (0, protocol_relay_1.entryTrace)(legacy) };
136
+ }
137
+ if (strict)
138
+ check({});
139
+ //* no context: the receiver's own ids only.
140
+ const ctx = { channel: 'internal', trace: (0, protocol_relay_1.entryTrace)(own) };
141
+ if (own?.requestId)
142
+ ctx.requestId = own.requestId;
143
+ if (own?.accountId)
144
+ ctx.accountId = own.accountId;
145
+ return ctx;
146
+ })();
147
+ (0, protocol_relay_1.logTrace)(result);
148
+ return result;
149
+ };
77
150
  /**
78
151
  * class: `MyConfigService`
79
152
  * - main implementation for `protocol-service`
@@ -328,6 +401,11 @@ class MyProtocolService {
328
401
  // const url = new URL(uri);
329
402
  const $url = url_1.default.parse(uri);
330
403
  const payload = this.transformEvent(uri, param);
404
+ //* local transport (opt-in, local mode only): run this service's handler in-process (sync), no AWS call.
405
+ if ((0, local_transport_1.isActive)()) {
406
+ const selfHost = await (0, local_transport_1.selfHostOf)('web', this, config);
407
+ return (0, local_transport_1.localWeb)(`${$url.hostname || ''}`, payload, selfHost, { param, useEvent });
408
+ }
331
409
  const awsCfg = (0, tools_1.awsConfig)(engine_1.default);
332
410
  return (0, aws_lambda_helper_1.invokeLambda)($url.hostname, payload, { param, config: awsCfg, useEvent });
333
411
  }
@@ -347,7 +425,12 @@ class MyProtocolService {
347
425
  (0, engine_1._inf)(NS, `> uri[${service}] =`, uri);
348
426
  const cbUrl = callback ? this.asCallbackURI(param.context, callback) : null;
349
427
  const params = this.sns.transformToEvent(uri, param, cbUrl);
350
- const arn = params.TopicArn; // "arn:aws:sns:ap-northeast-2:796730245826:lemon-metrics-sns-dev"
428
+ //* local transport (opt-in, local mode only): deliver to this service's topic in-process, no AWS call.
429
+ if ((0, local_transport_1.isActive)()) {
430
+ const message = { ...params, Message: JSON.parse(params.Message).default };
431
+ return (0, local_transport_1.localSns)(params.TopicArn, message, await (0, local_transport_1.selfHostOf)('sns', this, config));
432
+ }
433
+ const arn = params.TopicArn; // "arn:aws:sns:ap-northeast-2:123456789012:lemon-metrics-sns-dev"
351
434
  // _inf(NS, `> arn[${service}] =`, arn);
352
435
  (0, engine_1._inf)(NS, `> payload[${arn}] =`, engine_1.$U.json(params));
353
436
  //* call sns
@@ -389,6 +472,9 @@ class MyProtocolService {
389
472
  (0, engine_1._inf)(NS, `> callback[${service}] =`, cbUrl);
390
473
  const params = this.sqs.transformToEvent(uri, param, cbUrl);
391
474
  params.DelaySeconds = delaySeconds;
475
+ //* local transport (opt-in, local mode only): deliver to this service's queue in-process (no delay), no AWS call.
476
+ if ((0, local_transport_1.isActive)())
477
+ return (0, local_transport_1.localSqs)(params.QueueUrl, params, await (0, local_transport_1.selfHostOf)('sqs', this, config));
392
478
  const endpoint = params.QueueUrl; // https://sqs.${arr[3]}.amazonaws.com
393
479
  // _inf(NS, `> endpoint[${service}] =`, endpoint);
394
480
  (0, engine_1._inf)(NS, `> payload[${endpoint}] =`, engine_1.$U.json(params));
@@ -421,6 +507,17 @@ class MyProtocolService {
421
507
  const service = this.myProtocolURI(context);
422
508
  (0, engine_1._log)(NS, `broadcast(${service})..`);
423
509
  (0, engine_1._log)(NS, `> body[${service}] =`, engine_1.$U.json(body));
510
+ //* local transport (opt-in, local mode only): deliver to this service's topic in-process (no endpoint lookup).
511
+ if ((0, local_transport_1.isActive)()) {
512
+ const [accountId, requestId] = [`${context?.accountId || ''}`, `${context?.requestId || ''}`];
513
+ const MessageAttributes = {};
514
+ if (accountId)
515
+ MessageAttributes['accountId'] = { DataType: 'String', StringValue: accountId };
516
+ if (requestId)
517
+ MessageAttributes['requestId'] = { DataType: 'String', StringValue: requestId };
518
+ const message = { Subject: `x-protocol-service/broadcast`, Message: engine_1.$U.json(body), MessageAttributes };
519
+ return (0, local_transport_1.localSns)((0, aws_sns_service_1.snsTargetOf)(endpoint), message, await (0, local_transport_1.selfHostOf)('sns', this));
520
+ }
424
521
  const arn = await aws_1.default.sns.endpoint(endpoint);
425
522
  (0, engine_1._inf)(NS, `> arn[${endpoint}] =`, arn);
426
523
  const accountId = `${(context && context.accountId) || ''}`;
@@ -463,9 +560,9 @@ exports.MyProtocolService = MyProtocolService;
463
560
  * - transformer for `WEB` Handler
464
561
  */
465
562
  class WEBProtocolTransformer {
466
- // private service: MyProtocolService;
563
+ service;
467
564
  constructor(service) {
468
- // this.service = service;
565
+ this.service = service; //* v5 B14: for the relay `via` (optional).
469
566
  }
470
567
  /**
471
568
  * transform param to event
@@ -486,14 +583,17 @@ class WEBProtocolTransformer {
486
583
  //* build http parameter
487
584
  const base = {};
488
585
  const $ctx = {};
489
- //* v5 B5: sign the exact header and body strings (no signature if no key).
490
- const contextJson = engine_1.$U.json(context);
586
+ //* v5 B14: the relay of the next hop (throws `508` over the hop cap); the legacy context only with `send`.
587
+ const relay = (0, protocol_relay_1.encodeRelay)((0, protocol_relay_1.buildRelay)(context, { via: viaOf(this.service, context) }));
588
+ const contextJson = (0, protocol_relay_1.readLegacySend)() === 'send' ? engine_1.$U.json(context) : undefined;
589
+ //* v5 B5: sign the exact header and body strings (no signature if no key). v5 B14: the relay in the context slot.
491
590
  const bodyText = param.body ? engine_1.$U.json(param.body) : null;
492
- const signature = (0, protocol_sign_1.signContext)(contextJson, bodyText);
591
+ const signature = (0, protocol_sign_1.signContext)(relay, bodyText);
493
592
  const event = {
494
593
  ...base,
495
594
  headers: {
496
- [exports.HEADER_PROTOCOL_CONTEXT]: contextJson,
595
+ [protocol_relay_1.HEADER_LEMON_RELAY]: relay,
596
+ ...(contextJson !== undefined ? { [protocol_sign_1.HEADER_PROTOCOL_CONTEXT]: contextJson } : {}),
497
597
  ...(signature ? { [protocol_sign_1.HEADER_PROTOCOL_SIGNATURE]: signature } : {}),
498
598
  },
499
599
  path,
@@ -532,7 +632,7 @@ class WEBProtocolTransformer {
532
632
  const _context = (context) => {
533
633
  if (context)
534
634
  return context; // use given context.
535
- const ctx = headers[exports.HEADER_PROTOCOL_CONTEXT];
635
+ const ctx = headers[protocol_sign_1.HEADER_PROTOCOL_CONTEXT];
536
636
  if (!ctx)
537
637
  return null; // no context.
538
638
  if (typeof ctx !== 'string')
@@ -548,6 +648,8 @@ class WEBProtocolTransformer {
548
648
  }
549
649
  return null; // not valid context.
550
650
  };
651
+ //* v5 B14: a given context with a `channel` is built by the receiving entry (own ids) → no id check below.
652
+ const byEntry = !!context?.channel;
551
653
  context = _context(context);
552
654
  if (!context)
553
655
  throw new Error(`@context (NextContext) is required - ${errScope}`); // avoid null exception.
@@ -586,10 +688,10 @@ class WEBProtocolTransformer {
586
688
  const stage = `${requestContext.stage || ''}`;
587
689
  const type = $path.type || `${resource || path || ''}`.split('/')[1] || ''; // 1st path param will be type of resource.
588
690
  const mode = httpMethod == 'GET' && !$path.id && !$path.cmd ? 'LIST' : `${httpMethod}`.toUpperCase();
589
- //* validate values.
590
- if (context?.accountId && requestContext.accountId != context.accountId)
691
+ //* validate values (a caller-supplied context only).
692
+ if (!byEntry && context?.accountId && requestContext.accountId != context.accountId)
591
693
  throw new Error(`400 INVALID CONTEXT - accountId:${context.accountId ?? ''} @${errScope}`);
592
- if (context?.requestId && requestContext.requestId != context.requestId)
694
+ if (!byEntry && context?.requestId && requestContext.requestId != context.requestId)
593
695
  throw new Error(`400 INVALID CONTEXT - requestId:${context.requestId ?? ''} @${errScope}`);
594
696
  //* pack as protocol-param.
595
697
  const res = { service, stage, type, mode, id: $path.id, cmd: $path.cmd, param, body, context };
@@ -613,7 +715,9 @@ class SNSProtocolTransformer {
613
715
  transformToEvent(uri, param, callback) {
614
716
  // const uri = this.service.asProtocolURI('sns', param);
615
717
  const context = param.context || {};
616
- const arn = (0, engine_1.getHelloArn)(param.context); // "arn:aws:sns:ap-northeast-2:796730245826:lemon-metrics-sns-dev"
718
+ //* v5 B14: the relay param first (throws `508` over the hop cap, before anything else).
719
+ const $param = asRelayParam(this.service, param);
720
+ const arn = (0, engine_1.getHelloArn)(param.context); // "arn:aws:sns:ap-northeast-2:123456789012:lemon-metrics-sns-dev"
617
721
  //* build TopicArn via url.
618
722
  const url = url_1.default.parse(uri);
619
723
  const end = url.host || url.hostname;
@@ -624,7 +728,7 @@ class SNSProtocolTransformer {
624
728
  const requestId = `${context.requestId || ''}`;
625
729
  (0, engine_1._log)(NS, `> TopicArn =`, TopicArn);
626
730
  //* v5 B5: the receiver gets the `default` string as `Sns.Message` → sign that string.
627
- const message = engine_1.$U.json(param);
731
+ const message = engine_1.$U.json($param);
628
732
  const signature = (0, protocol_sign_1.signMessage)(message);
629
733
  const res = {
630
734
  TopicArn,
@@ -652,13 +756,14 @@ class SNSProtocolTransformer {
652
756
  }
653
757
  /**
654
758
  * transform event data to param
759
+ * - v5 B14: the context comes from the `relay` (wins) or the legacy `context` (see `receiveContext()`).
655
760
  * @param event the lambda compartible event data.
761
+ * @param own (optional) the receiver's own `requestId`/`accountId` (for a relay)
656
762
  */
657
- transformToParam(event) {
763
+ transformToParam(event, own) {
658
764
  const { Subject, Message, MessageAttributes } = event;
659
765
  //* extract message.
660
766
  const param = JSON.parse(Message);
661
- const context = (param && param.context) || {};
662
767
  //* validate message
663
768
  if (Subject != 'x-protocol-service')
664
769
  throw new Error(`.Subject[${Subject}] is not valid protocol.`);
@@ -666,13 +771,11 @@ class SNSProtocolTransformer {
666
771
  const accountId = _str('accountId');
667
772
  const requestId = _str('requestId');
668
773
  const callback = _str('callback');
669
- //* validate values.
670
- if (accountId != `${context.accountId || ''}`)
671
- throw new Error(`400 INVALID CONTEXT - accountId:${context.accountId}`);
672
- if (requestId != `${context.requestId || ''}`)
673
- throw new Error(`400 INVALID CONTEXT - requestId:${context.requestId}`);
674
- //* returns.
675
- const res = param;
774
+ //* v5 B14: the receiver context (validates the values as before for a legacy context).
775
+ const context = receiveContext('sns', param, { accountId, requestId }, own, true);
776
+ //* returns (without the relay field).
777
+ const { [protocol_relay_1.RELAY_PARAM]: _, ...rest } = param || {}; // eslint-disable-line @typescript-eslint/no-unused-vars
778
+ const res = { ...rest, context };
676
779
  if (callback)
677
780
  res.callback = callback;
678
781
  return res;
@@ -695,7 +798,9 @@ class SQSProtocolTransformer {
695
798
  transformToEvent(uri, param, callback) {
696
799
  // const uri = this.service.asProtocolURI('sns', param);
697
800
  const context = param.context || {};
698
- const arn = (0, engine_1.getHelloArn)(param.context); // "arn:aws:sns:ap-northeast-2:796730245826:lemon-metrics-sns-dev"
801
+ //* v5 B14: the relay param first (throws `508` over the hop cap, before anything else).
802
+ const $param = asRelayParam(this.service, param);
803
+ const arn = (0, engine_1.getHelloArn)(param.context); // "arn:aws:sns:ap-northeast-2:123456789012:lemon-metrics-sns-dev"
699
804
  //* build TopicArn via url.
700
805
  const url = url_1.default.parse(uri);
701
806
  const arr = arn.split(':');
@@ -703,7 +808,7 @@ class SQSProtocolTransformer {
703
808
  const accountId = `${context.accountId || ''}`;
704
809
  const requestId = `${context.requestId || ''}`;
705
810
  //* v5 B5: sign the exact `MessageBody` string (the receiver's `record.body`).
706
- const messageBody = engine_1.$U.json(param);
811
+ const messageBody = engine_1.$U.json($param);
707
812
  const signature = (0, protocol_sign_1.signMessage)(messageBody);
708
813
  const res = {
709
814
  // DelaySeconds: 10, //NOTE - use SQS's configuration.
@@ -730,15 +835,16 @@ class SQSProtocolTransformer {
730
835
  }
731
836
  /**
732
837
  * transform event data to param
838
+ * - v5 B14: the context comes from the `relay` (wins) or the legacy `context` (see `receiveContext()`).
733
839
  * @param event the lambda compartible event data.
840
+ * @param own (optional) the receiver's own `requestId`/`accountId` (for a relay)
734
841
  */
735
- transformToParam(event) {
842
+ transformToParam(event, own) {
736
843
  const { body, messageAttributes } = event;
737
844
  const $body = JSON.parse(body);
738
845
  //* extract message.
739
846
  const subject = messageAttributes['Subject'] && messageAttributes['Subject'].stringValue;
740
847
  const param = $body;
741
- const context = param && param.context;
742
848
  //* validate message
743
849
  if (subject != 'x-protocol-service')
744
850
  throw new Error(`.subject[${subject}] is not valid protocol.`);
@@ -746,13 +852,11 @@ class SQSProtocolTransformer {
746
852
  const accountId = _str('accountId');
747
853
  const requestId = _str('requestId');
748
854
  const callback = _str('callback');
749
- //* validate values.
750
- if (context && accountId != `${context.accountId || ''}`)
751
- throw new Error(`400 INVALID CONTEXT - accountId:${context.accountId}`);
752
- if (context && requestId != `${context.requestId || ''}`)
753
- throw new Error(`400 INVALID CONTEXT - requestId:${context.requestId}`);
754
- //* returns.
755
- const res = param;
855
+ //* v5 B14: the receiver context (validates the values as before for a legacy context).
856
+ const context = receiveContext('sqs', param, { accountId, requestId }, own, false);
857
+ //* returns (without the relay field).
858
+ const { [protocol_relay_1.RELAY_PARAM]: _, ...rest } = param || {}; // eslint-disable-line @typescript-eslint/no-unused-vars
859
+ const res = { ...rest, context };
756
860
  if (callback)
757
861
  res.callback = callback;
758
862
  return res;
@@ -1 +1 @@
1
- {"version":3,"file":"protocol-service.js","sourceRoot":"","sources":["../../../src/cores/protocol/protocol-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protocol-service.js","sourceRoot":"","sources":["../../../src/cores/protocol/protocol-service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;GAWG;AACH,6DAA6D;AAC7D,wDAA0F;AAe1F,+DAA2D;AAC3D,uCAAwC;AACxC,8CAAsB;AACtB,wDAA+B,CAAC,sBAAsB;AACtD,kDAA2B,CAAC,sBAAsB;AAClD,4CAA6B;AAC7B,2DAAmD;AACnD,uDAA2G;AAC3G,4DAAqD;AACrD,yCAA8C;AAC9C,mDAMyB;AAsDhB,wGAzDL,uCAAuB,OAyDK;AArDhC,qDAY0B;AAC1B,MAAM,EAAE,GAAG,WAAE,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,2BAA2B;AAE/D;;;GAGG;AACH,IAAI,IAAmD,CAAC;AACxD,IAAI,IAAmD,CAAC;AACxD,mCAAmC;AACnC,MAAM,OAAO,GAAG,GAAG,EAAE,CACjB,CAAC,IAAI,KAAK,IAAA,mBAAY,EAClB,aAAI,EACJ,WAAE,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EACrB,+BAA+B,EAC/B,GAAG,EAAE,mDAAQ,qBAAqB,GAAC,CACtC,CAAC,CAAC;AACP,mCAAmC;AACnC,MAAM,OAAO,GAAG,GAAG,EAAE,CACjB,CAAC,IAAI,KAAK,IAAA,mBAAY,EAClB,aAAI,EACJ,WAAE,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EACrB,+BAA+B,EAC/B,GAAG,EAAE,mDAAQ,qBAAqB,GAAC,CACtC,CAAC,CAAC;AAmBP;;GAEG;AACH,MAAM,KAAK,GAAG,CAAC,OAA0B,EAAE,OAAoB,EAAU,EAAE;IACvE,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,gBAAK,CAAC,MAAM,CAAC;IAC/C,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE;QAAE,OAAO,SAAS,CAAC;IAC9C,OAAO,iBAAiB,CAAC,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AACtF,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,YAAY,GAAG,CAAC,OAA0B,EAAE,KAAoB,EAAO,EAAE;IAC3E,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,IAAA,4BAAW,EAAC,IAAA,2BAAU,EAAC,OAAO,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IACjF,6EAA6E;IAC7E,IAAI,IAAA,+BAAc,GAAE,KAAK,MAAM;QAAE,OAAO,EAAE,GAAG,KAAK,EAAE,CAAC,4BAAW,CAAC,EAAE,KAAK,EAAE,CAAC;IAC3E,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC,CAAC,wDAAwD;IAC/F,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC,4BAAW,CAAC,EAAE,KAAK,EAAE,CAAC;AAC7C,CAAC,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,MAAM,cAAc,GAAG,CACnB,SAAwB,EACxB,KAAU,EACV,KAA+C,EAC/C,GAAgB,EAChB,MAAe,EACJ,EAAE;IACb,uEAAuE;IACvE,MAAM,KAAK,GAAG,CAAC,OAAoB,EAAE,EAAE;QACnC,IAAI,KAAK,CAAC,SAAS,IAAI,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,EAAE;YAC/C,MAAM,IAAI,KAAK,CAAC,mCAAmC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;QAC5E,IAAI,KAAK,CAAC,SAAS,IAAI,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,EAAE;YAC/C,MAAM,IAAI,KAAK,CAAC,mCAAmC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAChF,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,GAAgB,EAAE;QAC9B,MAAM,SAAS,GAAG,KAAK,EAAE,CAAC,4BAAW,CAAC,CAAC;QACvC,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YAChD,MAAM,KAAK,GAAG,IAAA,4BAAW,EAAC,SAAS,CAAC,CAAC;YACrC,IAAA,0BAAS,EAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACrB,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,IAAI,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,GAAG;gBAC3E,MAAM,IAAI,KAAK,CAAC,mCAAmC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;YACpE,OAAO,IAAA,+BAAc,EAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,MAAM,GAAgB,KAAK,EAAE,OAAO,CAAC;QAC3C,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YACvC,IAAA,6BAAY,EAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAChC,KAAK,CAAC,MAAM,CAAC,CAAC;YACd,OAAO,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,IAAA,2BAAU,EAAC,MAAM,CAAC,EAAE,CAAC;QACzE,CAAC;QACD,IAAI,MAAM;YAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QACtB,4CAA4C;QAC5C,MAAM,GAAG,GAAgB,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,IAAA,2BAAU,EAAC,GAAG,CAAC,EAAE,CAAC;QACzE,IAAI,GAAG,EAAE,SAAS;YAAE,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;QAClD,IAAI,GAAG,EAAE,SAAS;YAAE,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;QAClD,OAAO,GAAG,CAAC;IACf,CAAC,CAAC,EAAE,CAAC;IACL,IAAA,yBAAQ,EAAC,MAAM,CAAC,CAAC;IACjB,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AA4BF;;;;GAIG;AACH,MAAa,iBAAiB;IAC1B,kBAAkB;IACX,MAAM,CAAC,YAAY,GAAY,8BAAa,CAAC,YAAY,CAAC;IAEjE,gBAAgB;IACA,GAAG,GAA2B,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAC/D,GAAG,GAA2B,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAC/D,GAAG,GAA2B,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAE/E,yBAAyB;IAClB,MAAM,CAAgB;IAE7B,oBAAoB;IACV,WAAW,CAAS;IAE9B;;;;;OAKG;IACH,YAAmB,OAAgB,EAAE,MAAsB;QACvD,qCAAqC;QACrC,IAAI,CAAC,WAAW,GAAG,GAAG,OAAO,IAAI,EAAE,EAAE,CAAC;QACtC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAK,CAAC,MAAM,CAAC,CAAC,8BAA8B;IAChF,CAAC;IAED;;OAEG;IACI,KAAK,GAAG,GAAW,EAAE,CAAC,oBAAoB,IAAI,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC;IAE1E,uBAAuB;IAChB,MAAM,CAAC,MAAM,GAAG,CAAC,IAAY,EAAE,EAAW,EAAE,GAAY,EAAU,EAAE;QACvE,MAAM,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC;QACjB,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;QACjD,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACxC,uBAAuB;QACvB,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;QAC/B,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAClC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;YACvB,IAAI,GAAG,EAAE,CAAC;gBACN,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;YAC5B,CAAC;QACL,CAAC;aAAM,IAAI,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACb,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;QAC5B,CAAC;QACD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3B,OAAO,IAAI,IAAI,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3C,CAAC,CAAC;IAEF;;OAEG;IACI,aAAa,CAAC,IAA2B;QAC5C,IAAI,IAAI,IAAI,KAAK;YAAE,OAAO,IAAI,CAAC,GAAG,CAAC;aAC9B,IAAI,IAAI,IAAI,KAAK;YAAE,OAAO,IAAI,CAAC,GAAG,CAAC;aACnC,IAAI,IAAI,IAAI,KAAK;YAAE,OAAO,IAAI,CAAC,GAAG,CAAC;;YACnC,OAAO,IAAI,CAAC;IACrB,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACI,aAAa,CAAC,QAAwB,EAAE,KAAoB,EAAE,MAAsB;QACvF,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;QACvC,MAAM,OAAO,GAAG,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC;QACvC,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;QACvG,MAAM,KAAK,GAAU,KAAK,CAAC,KAAK,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,IAAI,OAAO,CAAC;QAE7E,6CAA6C;QAC7C,MAAM,GAAG,GAAG,iBAAiB,CAAC,gBAAgB,CAC1C,MAAM,EACN,OAAO,EACP,QAAQ,EACR,OAAO,EACP,KAAK,EACL,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,EAAE,EACR,KAAK,CAAC,GAAG,CACZ,CAAC;QACF,IAAA,aAAI,EAAC,EAAE,EAAE,SAAS,QAAQ,IAAI,OAAO,OAAO,KAAK,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QACrE,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7B,CAAC;IAED;;;;;;;OAOG;IACI,aAAa,CAAC,OAAoB,EAAE,IAAa,EAAE,EAAW,EAAE,GAAY;QAC/E,OAAO,iBAAiB,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IACjH,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,gBAAgB,CAC1B,MAAqB,EACrB,OAAoB,EACpB,QAAwB,EACxB,OAAwB,EACxB,KAAiB,EACjB,IAAY,EACZ,EAAW,EACX,GAAY;QAEZ,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QAChE,+DAA+D;QAC/D,6DAA6D;QAC7D,oDAAoD;QAEpD,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QAC/D,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QAC/D,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAW,CAAC;QACpE,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;QAE5D,OAAO,GAAG,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC;QACpD,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;QAEnC,iCAAiC;QACjC,MAAM,KAAK,GAAG,CAAC,QAAwB,EAAE,GAAW,EAAU,EAAE;YAC5D,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACxC,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAC7E,MAAM,IAAI,GAAG,QAAQ,IAAI,KAAK,IAAI,QAAQ,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;YACvE,QAAQ,KAAK,EAAE,CAAC;gBACZ,KAAK,MAAM;oBACP,OAAO,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;gBACtD,KAAK,OAAO,CAAC;gBACb,KAAK,KAAK,CAAC;gBACX;oBACI,OAAO,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC;YAClE,CAAC;QACL,CAAC,CAAC;QAEF,iGAAiG;QACjG,MAAM,QAAQ,GAAG,CAAC,QAAwB,EAAE,IAAa,EAAU,EAAE;YACjE,IAAI,GAAG,IAAI,IAAI,QAAQ,CAAC;YACxB,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;gBACpB,IAAI,KAAK,IAAI,MAAM;oBAAE,OAAO,SAAS,IAAI,EAAE,CAAC;gBAC5C,OAAO,IAAI,IAAI,EAAE,CAAC;YACtB,CAAC;YACD,OAAO,EAAE,CAAC;QACd,CAAC,CAAC;QAEF,mCAAmC;QACnC,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC3D,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QACxC,OAAO,GAAG,QAAQ,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,GAAG,IAAI,IAAI,WAAW,EAAE,CAAC;IAC5F,CAAC;IAED;;;;;OAKG;IACI,cAAc,CAAC,GAAW,EAAE,KAAoB;QACnD,MAAM,GAAG,GAAG,aAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,QAAQ,QAAQ,EAAE,CAAC;YACf,KAAK,MAAM;gBACP,OAAO,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACjD,KAAK,MAAM;gBACP,OAAO,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACjD,KAAK,MAAM;gBACP,OAAO,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACrD,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,mCAAmC,QAAQ,EAAE,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACO,KAAK,CAAC,aAAa,CAAI,CAAQ,EAAE,OAAa,EAAE,KAAW,EAAE,IAAU;QAC7E,IAAI,CAAC,iBAAiB,CAAC,YAAY;YAAE,MAAM,CAAC,CAAC;QAC7C,IAAA,aAAI,EAAC,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;QAC9B,OAAO,IAAA,sBAAa,EAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC;aACxC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;aACf,IAAI,CAAC,GAAG,EAAE;YACP,MAAM,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACpF,CAAC,CAAC,CAAC;IACX,CAAC;IAED;;;;;;;;;;OAUG;IACI,OAAO,CAAC,OAAoB,EAAE,GAAW,EAAE,KAAoB,EAAE,IAAmB;QACvF,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;QAChE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,oCAAoC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QACjF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACtD,MAAM,GAAG,GAAG,aAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QAChF,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,gCAAgC;QAClE,MAAM,IAAI,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QACjC,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC9C,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC1F,MAAM,KAAK,GACP,KAAK,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,IAAI,MAAM,EAAY,CAAC;QAC9G,0BAA0B;QAC1B,MAAM,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC;QACrB,IAAI,EAAE,EAAE,CAAC;YACL,MAAM,GAAG,GAAG,WAAE,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC5B,KAAK,GAAG,EAAE,GAAG,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;QACjC,CAAC;QACD,2BAA2B;QAC3B,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;YACzC,OAAO,EAAE,IAAI;YACb,IAAI;YACJ,KAAK;YACL,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;YACpC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG;YAC/B,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE;SAC1B,CAAC;QACF,IAAI,KAAK,KAAK,SAAS;YAAE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;QAC7C,IAAI,IAAI,KAAK,SAAS;YAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;QAC1C,IAAI,GAAG,CAAC,IAAI,IAAI,OAAO;YAAE,KAAK,CAAC,OAAO,CAAC,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC;QAC5D,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;OAEG;IACI,aAAa,CAAC,OAAoB,EAAE,KAAoB;QAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7E,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,WAAE,CAAC,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACrC,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;IACxF,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,OAAO,CAChB,KAAoB,EACpB,MAAsB,EACtB,OAAyC;QAEzC,6BAA6B;QAC7B,MAAM,GAAG,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QAC/B,IAAA,aAAI,EAAC,EAAE,EAAE,WAAW,KAAK,CAAC,OAAO,IAAI,EAAE,KAAK,CAAC,CAAC;QAC9C,MAAM,GAAG,GAAG,OAAO,OAAO,IAAI,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC;QAChE,MAAM,QAAQ,GAAG,OAAO,IAAI,IAAI,IAAI,OAAO,OAAO,IAAI,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;QAE9F,4BAA4B;QAC5B,MAAM,GAAG,GAAG,GAAG,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QAC5D,IAAA,aAAI,EAAC,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;QAEzB,4BAA4B;QAC5B,MAAM,IAAI,GAAG,aAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,CAAyB,CAAC;QACxE,yGAAyG;QACzG,IAAI,IAAA,0BAAgB,GAAE,EAAE,CAAC;YACrB,MAAM,QAAQ,GAAG,MAAM,IAAA,4BAAU,EAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YACvD,OAAO,IAAA,0BAAQ,EAAI,GAAG,IAAI,CAAC,QAAQ,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QACzF,CAAC;QACD,MAAM,MAAM,GAAG,IAAA,iBAAS,EAAC,gBAAO,CAAC,CAAC;QAClC,OAAO,IAAA,gCAAY,EAAI,IAAI,CAAC,QAAS,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;IACzF,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,MAAM,CAAC,KAAoB,EAAE,QAAwB,EAAE,MAAsB;QACtF,6BAA6B;QAC7B,MAAM,GAAG,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QAC/B,MAAM,OAAO,GAAG,GAAG,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC;QAChE,IAAA,aAAI,EAAC,EAAE,EAAE,UAAU,OAAO,KAAK,CAAC,CAAC;QACjC,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACrD,IAAA,aAAI,EAAC,EAAE,EAAE,SAAS,OAAO,KAAK,EAAE,GAAG,CAAC,CAAC;QAErC,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5E,MAAM,MAAM,GAAwB,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACjF,uGAAuG;QACvG,IAAI,IAAA,0BAAgB,GAAE,EAAE,CAAC;YACrB,MAAM,OAAO,GAAG,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC;YAC3E,OAAO,IAAA,0BAAQ,EAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,IAAA,4BAAU,EAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QACrF,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,kEAAkE;QAC/F,wCAAwC;QACxC,IAAA,aAAI,EAAC,EAAE,EAAE,aAAa,GAAG,KAAK,EAAE,WAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAEjD,YAAY;QACZ,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC;QACrD,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,MAAM,OAAO,EAAE,CAAC,CAAC,mDAAmD;QAC1G,MAAM,GAAG,GAAG,IAAI,SAAS,CAAC,IAAA,iBAAS,EAAC,gBAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QACtD,MAAM,GAAG,GAAG,MAAM,GAAG;aAChB,IAAI,CAAC,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;aAChC,KAAK,CAAC,CAAC,CAAQ,EAAE,EAAE;YAChB,IAAA,aAAI,EAAC,EAAE,EAAE,YAAY,KAAK,CAAC,OAAO,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;YAChE,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;QAChF,CAAC,CAAC;aACD,IAAI,CAAC,CAAC,IAA0B,EAAE,EAAE;YACjC,IAAA,aAAI,EAAC,EAAE,EAAE,SAAS,OAAO,KAAK,EAAE,WAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/C,OAAO,IAAI,CAAC,SAAS,CAAC;QAC1B,CAAC,CAAC,CAAC;QACP,OAAO,GAAG,CAAC;IACf,CAAC;IAED;;;;;;;OAOG;IACI,KAAK,CAAC,OAAO,CAChB,KAAoB,EACpB,QAAwB,EACxB,YAAqB,EACrB,MAAsB;QAEtB,6BAA6B;QAC7B,MAAM,GAAG,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;QAC/B,MAAM,OAAO,GAAG,GAAG,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC;QAChE,MAAM,KAAK,GAAG,GAAG,KAAK,CAAC,KAAK,IAAI,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;QAC1D,IAAA,aAAI,EAAC,EAAE,EAAE,WAAW,OAAO,IAAI,KAAK,KAAK,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACrD,IAAA,aAAI,EAAC,EAAE,EAAE,SAAS,OAAO,KAAK,EAAE,GAAG,CAAC,CAAC;QACrC,YAAY,GAAG,WAAE,CAAC,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QACtC,IAAI,YAAY,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,YAAY,EAAE,CAAC,CAAC;QAEpG,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5E,IAAA,aAAI,EAAC,EAAE,EAAE,cAAc,OAAO,KAAK,EAAE,KAAK,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAC5D,MAAM,CAAC,YAAY,GAAG,YAAY,CAAC;QACnC,kHAAkH;QAClH,IAAI,IAAA,0BAAgB,GAAE;YAAE,OAAO,IAAA,0BAAQ,EAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,IAAA,4BAAU,EAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QACxG,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,sCAAsC;QACxE,kDAAkD;QAClD,IAAA,aAAI,EAAC,EAAE,EAAE,aAAa,QAAQ,KAAK,EAAE,WAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAEtD,YAAY;QACZ,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC;QAC1D,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,GAAG,MAAM,OAAO,EAAE,CAAC,CAAC,yBAAyB;QACpF,MAAM,GAAG,GAAG,IAAI,SAAS,CAAC,IAAA,iBAAS,EAAC,gBAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QACtD,MAAM,GAAG,GAAG,MAAM,GAAG;aAChB,IAAI,CAAC,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAC;aACpC,KAAK,CAAC,CAAC,CAAQ,EAAE,EAAE;YAChB,IAAA,aAAI,EAAC,EAAE,EAAE,aAAa,KAAK,CAAC,OAAO,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;YACjE,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;QAChF,CAAC,CAAC;aACD,IAAI,CAAC,CAAC,IAA8B,EAAE,EAAE;YACrC,IAAA,aAAI,EAAC,EAAE,EAAE,SAAS,QAAQ,KAAK,EAAE,WAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAChD,OAAO,IAAI,CAAC,SAAS,CAAC;QAC1B,CAAC,CAAC,CAAC;QACP,OAAO,GAAG,CAAC;IACf,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,SAAS,CAAC,OAAoB,EAAE,QAAgB,EAAE,IAAkB;QAC7E,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC5C,IAAA,aAAI,EAAC,EAAE,EAAE,aAAa,OAAO,KAAK,CAAC,CAAC;QACpC,IAAA,aAAI,EAAC,EAAE,EAAE,UAAU,OAAO,KAAK,EAAE,WAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEhD,+GAA+G;QAC/G,IAAI,IAAA,0BAAgB,GAAE,EAAE,CAAC;YACrB,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,GAAG,OAAO,EAAE,SAAS,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,EAAE,SAAS,IAAI,EAAE,EAAE,CAAC,CAAC;YAC9F,MAAM,iBAAiB,GAA4C,EAAE,CAAC;YACtE,IAAI,SAAS;gBAAE,iBAAiB,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;YAC/F,IAAI,SAAS;gBAAE,iBAAiB,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;YAC/F,MAAM,OAAO,GAAG,EAAE,OAAO,EAAE,8BAA8B,EAAE,OAAO,EAAE,WAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,iBAAiB,EAAE,CAAC;YACvG,OAAO,IAAA,0BAAQ,EAAC,IAAA,6BAAW,EAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,MAAM,IAAA,4BAAU,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;QACnF,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,aAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAA,aAAI,EAAC,EAAE,EAAE,SAAS,QAAQ,KAAK,EAAE,GAAG,CAAC,CAAC;QAEtC,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;QAC5D,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;QAC5D,MAAM,MAAM,GAAwB;YAChC,QAAQ,EAAE,GAAG;YACb,OAAO,EAAE,8BAA8B,EAAE,wDAAwD;YACjG,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,WAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,qCAAqC;YAC1F,+CAA+C;YAC/C,iBAAiB,EAAE;YACf,6DAA6D;YAC7D,6DAA6D;aAChE;YACD,gBAAgB,EAAE,MAAM;SAC3B,CAAC;QACF,IAAI,SAAS;YAAE,MAAM,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;QACtG,IAAI,SAAS;YAAE,MAAM,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;QAEtG,YAAY;QACZ,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC;QACrD,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,MAAM,OAAO,EAAE,CAAC,CAAC,yBAAyB;QAChF,MAAM,GAAG,GAAG,IAAI,SAAS,CAAC,IAAA,iBAAS,EAAC,gBAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QACtD,MAAM,GAAG,GAAG,MAAM,GAAG;aAChB,IAAI,CAAC,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;aAChC,KAAK,CAAC,CAAC,CAAQ,EAAE,EAAE;YAChB,IAAA,aAAI,EAAC,EAAE,EAAE,eAAe,OAAO,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;YAC7D,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACpE,CAAC,CAAC;aACD,IAAI,CAAC,CAAC,IAA0B,EAAE,EAAE;YACjC,IAAA,aAAI,EAAC,EAAE,EAAE,SAAS,OAAO,KAAK,EAAE,WAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/C,OAAO,IAAI,CAAC,SAAS,CAAC;QAC1B,CAAC,CAAC,CAAC;QACP,OAAO,GAAG,CAAC;IACf,CAAC;;AA5bL,8CA6bC;AAED;;;GAGG;AACH,MAAa,sBAAsB;IACvB,OAAO,CAAoB;IACnC,YAAmB,OAA2B;QAC1C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,CAAC,2CAA2C;IACvE,CAAC;IACD;;;OAGG;IACI,gBAAgB,CAAC,GAAW,EAAE,KAAoB;QACrD,MAAM,IAAI,GAAa,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,EAAc,CAAC;QACzD,MAAM,UAAU,GAAG,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC;QAC1D,MAAM,IAAI,GAAG,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;QACvD,MAAM,GAAG,GAAG,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC;QACzD,MAAM,IAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,GAAG,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;QAErC,8DAA8D;QAC9D,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;QACpC,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;QAC5D,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;QAE5D,wBAAwB;QACxB,MAAM,IAAI,GAAyB,EAA0B,CAAC;QAC9D,MAAM,IAAI,GAAkC,EAAmC,CAAC;QAChF,2GAA2G;QAC3G,MAAM,KAAK,GAAG,IAAA,4BAAW,EAAC,IAAA,2BAAU,EAAC,OAAO,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;QACtF,MAAM,WAAW,GAAG,IAAA,+BAAc,GAAE,KAAK,MAAM,CAAC,CAAC,CAAC,WAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/E,kHAAkH;QAClH,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,WAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACzD,MAAM,SAAS,GAAG,IAAA,2BAAW,EAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAyB;YAChC,GAAG,IAAI;YACP,OAAO,EAAE;gBACL,CAAC,mCAAkB,CAAC,EAAE,KAAK;gBAC3B,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,uCAAuB,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChF,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,yCAAyB,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACnE;YACD,IAAI;YACJ,UAAU;YACV,cAAc,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE;YACjC,qBAAqB,EAAE,KAAK,CAAC,KAAK;YAClC,cAAc,EAAE;gBACZ,GAAG,IAAI;gBACP,IAAI;gBACJ,UAAU;gBACV,QAAQ,EAAE,IAAI,EAAE,uDAAuD;gBACvE,KAAK;gBACL,SAAS;gBACT,SAAS;aACZ;YACD,IAAI,EAAE,QAAQ;SACjB,CAAC;QACF,MAAM,GAAG,GAAyB,KAAK,CAAC;QACxC,OAAO,GAAG,CAAC;IACf,CAAC;IAED;;;OAGG;IACI,gBAAgB,CAAC,KAA2B,EAAE,OAAqB;QACtE,MAAM,QAAQ,GAAG,wBAAwB,KAAK,EAAE,IAAI,IAAI,EAAE,GAAG,CAAC;QAC9D,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,QAAQ,EAAE,CAAC,CAAC,CAAC,wBAAwB;QACrG,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,QAAQ,EAAE,CAAC,CAAC;QAC7E,MAAM,cAAc,GAAG,KAAK,CAAC,cAAc,CAAC;QAC5C,IAAI,CAAC,cAAc;YAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,QAAQ,EAAE,CAAC,CAAC;QAE3F,wBAAwB;QACxB,MAAM,QAAQ,GAAG,CAAC,OAAoB,EAAe,EAAE;YACnD,IAAI,OAAO;gBAAE,OAAO,OAAO,CAAC,CAAC,qBAAqB;YAClD,MAAM,GAAG,GAAG,OAAO,CAAC,uCAAuB,CAAC,CAAC;YAC7C,IAAI,CAAC,GAAG;gBAAE,OAAO,IAAI,CAAC,CAAC,cAAc;YACrC,IAAI,OAAO,GAAG,KAAK,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,QAAQ,EAAE,CAAC,CAAC;YACtG,IAAI,CAAC;gBACD,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC1B,IAAI,CAAC,IAAI,OAAO,CAAC,IAAI,QAAQ;oBAAE,OAAO,CAAgB,CAAC;YAC3D,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,IAAA,aAAI,EAAC,EAAE,EAAE,mBAAmB,GAAG,sBAAsB,EAAE,CAAC,CAAC,CAAC;gBAC1D,MAAM,IAAI,KAAK,CAAC,YAAY,GAAG,yBAAyB,QAAQ,EAAE,CAAC,CAAC;YACxE,CAAC;YACD,OAAO,IAAI,CAAC,CAAC,qBAAqB;QACtC,CAAC,CAAC;QACF,2GAA2G;QAC3G,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC;QACnC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC5B,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,QAAQ,EAAE,CAAC,CAAC,CAAC,wBAAwB;QAE3G,gBAAgB;QAChB,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,CAAC,oFAAoF;QAClI,MAAM,QAAQ,GAAG,GAAG,OAAO,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,EAAE,CAAC;QAC7F,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC;QACvD,IAAA,aAAI,EAAC,EAAE,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QACrC,IAAA,aAAI,EAAC,EAAE,EAAE,mBAAmB,EAAE,eAAe,CAAC,CAAC;QAC/C,kDAAkD;QAClD,MAAM,KAAK,GAAiD,KAAK,CAAC,cAAc,IAAI,EAAE,CAAC;QACvF,MAAM,KAAK,GAAG,KAAK,CAAC,qBAAqB,CAAC;QAC1C,MAAM,IAAI,GAAG,CAAC,CAAC,IAAS,EAAE,IAAY,EAAE,eAAwB,EAAO,EAAE;YACrE,IAAI,GAAG,eAAe,IAAI,OAAO,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YAClG,MAAM,MAAM,GAAG,IAAI,IAAI,OAAO,IAAI,IAAI,QAAQ,CAAC;YAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC;YACnD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,mCAAmC,CAAC,CAAC;YACpE,IAAI,CAAC;gBACD,IAAI,MAAM,IAAI,MAAM;oBAAE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC9C,IAAI,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;oBAAE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAClF,IAAI,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;oBAAE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACtF,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,yBAAyB,QAAQ,EAAE,CAAC,CAAC;YACtE,CAAC;YAED,oFAAoF;YACpF,IAAI,MAAM,IAAI,MAAM;gBAAE,OAAO,YAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACrD,OAAO,IAAI,CAAC;QAChB,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;QAE1C,2BAA2B;QAC3B,MAAM,OAAO,GAAG,EAAE,CAAC;QACnB,MAAM,KAAK,GAAU,GAAG,cAAc,CAAC,KAAK,IAAI,EAAE,EAAW,CAAC;QAC9D,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,GAAG,QAAQ,IAAI,IAAI,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,2CAA2C;QACvH,MAAM,IAAI,GACN,UAAU,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAE,GAAG,UAAU,EAAE,CAAC,WAAW,EAAe,CAAC;QAE1G,qDAAqD;QACrD,IAAI,CAAC,OAAO,IAAI,OAAO,EAAE,SAAS,IAAI,cAAc,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS;YAC/E,MAAM,IAAI,KAAK,CAAC,mCAAmC,OAAO,CAAC,SAAS,IAAI,EAAE,KAAK,QAAQ,EAAE,CAAC,CAAC;QAC/F,IAAI,CAAC,OAAO,IAAI,OAAO,EAAE,SAAS,IAAI,cAAc,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS;YAC/E,MAAM,IAAI,KAAK,CAAC,mCAAmC,OAAO,CAAC,SAAS,IAAI,EAAE,KAAK,QAAQ,EAAE,CAAC,CAAC;QAE/F,2BAA2B;QAC3B,MAAM,GAAG,GAAkB,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QAC9G,OAAO,GAAG,CAAC;IACf,CAAC;CACJ;AAtID,wDAsIC;AAED;;;GAGG;AACH,MAAa,sBAAsB;IACvB,OAAO,CAAoB;IACnC,YAAmB,OAA0B;QACzC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IACD;;;OAGG;IACI,gBAAgB,CAAC,GAAW,EAAE,KAAoB,EAAE,QAAiB;QACxE,wDAAwD;QACxD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;QACpC,wFAAwF;QACxF,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACjD,MAAM,GAAG,GAAG,IAAA,oBAAW,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,kEAAkE;QAC1G,2BAA2B;QAC3B,MAAM,GAAG,GAAG,aAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,CAAC;QACrC,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;QACb,MAAM,QAAQ,GAAW,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACvC,MAAM,SAAS,GAAG,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;QAC/C,MAAM,SAAS,GAAG,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;QAC/C,IAAA,aAAI,EAAC,EAAE,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC;QACnC,sFAAsF;QACtF,MAAM,OAAO,GAAG,WAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,MAAM,SAAS,GAAG,IAAA,2BAAW,EAAC,OAAO,CAAC,CAAC;QACvC,MAAM,GAAG,GAAoB;YACzB,QAAQ;YACR,OAAO,EAAE,oBAAoB;YAC7B,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;YAC7C,+CAA+C;YAC/C,iBAAiB,EAAE;YACf,6DAA6D;YAC7D,6DAA6D;aAChE;YACD,gBAAgB,EAAE,MAAM;SAC3B,CAAC;QACF,gCAAgC;QAChC,IAAI,SAAS;YAAE,GAAG,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;QACnG,IAAI,SAAS;YAAE,GAAG,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;QACnG,iEAAiE;QACjE,IAAI,QAAQ;YAAE,GAAG,CAAC,iBAAiB,CAAC,UAAU,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;QAChG,sDAAsD;QACtD,IAAI,SAAS;YAAE,GAAG,CAAC,iBAAiB,CAAC,uCAAuB,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;QAC/G,OAAO,GAAG,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACI,gBAAgB,CAAC,KAAiB,EAAE,GAAiB;QACxD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,GAAG,KAAK,CAAC;QAEtD,oBAAoB;QACpB,MAAM,KAAK,GAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAEvC,oBAAoB;QACpB,IAAI,OAAO,IAAI,oBAAoB;YAAE,MAAM,IAAI,KAAK,CAAC,YAAY,OAAO,0BAA0B,CAAC,CAAC;QACpG,MAAM,IAAI,GAAG,CAAC,IAAY,EAAU,EAAE,CAClC,iBAAiB,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnG,MAAM,SAAS,GAAW,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAW,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAW,IAAI,CAAC,UAAU,CAAC,CAAC;QAE1C,uFAAuF;QACvF,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QAElF,sCAAsC;QACtC,MAAM,EAAE,CAAC,4BAAW,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,EAAE,CAAC,CAAC,wDAAwD;QAC3G,MAAM,GAAG,GAAoB,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,CAAC;QAClD,IAAI,QAAQ;YAAE,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACtC,OAAO,GAAG,CAAC;IACf,CAAC;CACJ;AA7ED,wDA6EC;AAWD;;;GAGG;AACH,MAAa,sBAAsB;IACvB,OAAO,CAAoB;IACnC,YAAmB,OAA0B;QACzC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IACD;;;OAGG;IACI,gBAAgB,CAAC,GAAW,EAAE,KAAoB,EAAE,QAAiB;QACxE,wDAAwD;QACxD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;QACpC,wFAAwF;QACxF,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACjD,MAAM,GAAG,GAAG,IAAA,oBAAW,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,kEAAkE;QAC1G,2BAA2B;QAC3B,MAAM,GAAG,GAAG,aAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,MAAM,QAAQ,GAAG,eAAe,GAAG,CAAC,CAAC,CAAC,kBAAkB,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;QACjF,MAAM,SAAS,GAAG,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;QAC/C,MAAM,SAAS,GAAG,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;QAC/C,8EAA8E;QAC9E,MAAM,WAAW,GAAG,WAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpC,MAAM,SAAS,GAAG,IAAA,2BAAW,EAAC,WAAW,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAkB;YACvB,sDAAsD;YACtD,QAAQ;YACR,WAAW,EAAE,WAAW;YACxB,iBAAiB,EAAE;gBACf,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,oBAAoB,EAAE,EAAE,uCAAuC;gBAC3G,6DAA6D;gBAC7D,6DAA6D;aAChE;SACJ,CAAC;QACF,gCAAgC;QAChC,IAAI,SAAS;YAAE,GAAG,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;QACnG,IAAI,SAAS;YAAE,GAAG,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;QACnG,iEAAiE;QACjE,IAAI,QAAQ;YAAE,GAAG,CAAC,iBAAiB,CAAC,UAAU,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;QAChG,sDAAsD;QACtD,IAAI,SAAS;YAAE,GAAG,CAAC,iBAAiB,CAAC,uCAAuB,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;QAC/G,OAAO,GAAG,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACI,gBAAgB,CAAC,KAAgB,EAAE,GAAiB;QACvD,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,KAAK,CAAC;QAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAE/B,oBAAoB;QACpB,MAAM,OAAO,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI,iBAAiB,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC;QACzF,MAAM,KAAK,GAAQ,KAAK,CAAC;QAEzB,oBAAoB;QACpB,IAAI,OAAO,IAAI,oBAAoB;YAAE,MAAM,IAAI,KAAK,CAAC,YAAY,OAAO,0BAA0B,CAAC,CAAC;QACpG,MAAM,IAAI,GAAG,CAAC,IAAY,EAAU,EAAE,CAClC,iBAAiB,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzG,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;QACpC,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;QACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;QAElC,uFAAuF;QACvF,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QAEnF,sCAAsC;QACtC,MAAM,EAAE,CAAC,4BAAW,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,EAAE,CAAC,CAAC,wDAAwD;QAC3G,MAAM,GAAG,GAAoB,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,CAAC;QAClD,IAAI,QAAQ;YAAE,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACtC,OAAO,GAAG,CAAC;IACf,CAAC;CACJ;AA3ED,wDA2EC"}
@@ -4,6 +4,26 @@ export declare const PROTOCOL_SIGN_KEY = "PROTOCOL_SIGN_KEY";
4
4
  export declare const PROTOCOL_VERIFY = "PROTOCOL_VERIFY";
5
5
  /** header name of the web signature */
6
6
  export declare const HEADER_PROTOCOL_SIGNATURE = "x-protocol-signature";
7
+ /**
8
+ * header name to exchange `next-context`, ONLY for internal communication.
9
+ * - v5 B10-3: defined here (was `protocol-service.ts`, which re-exports it) so that `lambda-handler.ts` reads it without an import cycle.
10
+ *
11
+ * @deprecated v5 B14: the full context is replaced by the relay (`HEADER_LEMON_RELAY`). v5 sends it only with
12
+ * `PROTOCOL_LEGACY_CONTEXT=send` and accepts it by `PROTOCOL_LEGACY_ACCEPT`. removal in v6.
13
+ */
14
+ export declare const HEADER_PROTOCOL_CONTEXT: any;
15
+ /**
16
+ * v5 B14: header name of the relay envelope (`r1.<base64url(JSON)>`) of an internal web call (see `protocol-relay.ts`).
17
+ * - defined here (no import cycle with `lambda-handler.ts`), re-exported by `protocol-relay.ts`.
18
+ */
19
+ export declare const HEADER_LEMON_RELAY = "x-lemon-relay";
20
+ /**
21
+ * header name of the identity of an internal call (JSON) or a JWT.
22
+ * - v5 B10-3: defined here (was a private const of `lambda-web-handler.ts`) for the same reason.
23
+ */
24
+ export declare const HEADER_LEMON_IDENTITY: any;
25
+ /** v5 B10-3: protocol header names whose values are masked in logs (`maskHeaders()` of `lib/log-mask.ts`) */
26
+ export declare const PROTOCOL_LOG_MASKED_HEADERS: readonly string[];
7
27
  /** message attribute name of the SNS/SQS signature */
8
28
  export declare const ATTR_PROTOCOL_SIGNATURE = "signature";
9
29
  /** web freshness window (seconds). SNS/SQS have none (queue delay, retry and DLQ redrive exceed any window) */
@@ -19,6 +39,8 @@ export interface ProtocolVerifyResult {
19
39
  /** signed time (epoch seconds) if parsed — for logs only */
20
40
  ts?: number;
21
41
  }
42
+ /** read a config value via the config service (KMS-decrypted). before `init()`, a plain (not `*`) env value is used */
43
+ export declare const readConfig: (name: string) => string;
22
44
  /** read the signing key (cached after the first non-empty read) */
23
45
  export declare const readSignKey: () => string;
24
46
  /** reset the module cache (for tests that toggle the env) */
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.assertSigned = exports.verifyMessage = exports.signMessage = exports.verifyContext = exports.signContext = exports.canonicalMessage = exports.canonicalWeb = exports.sha256hex = exports.logSignKeyState = exports.readVerifyMode = exports.resetProtocolSign = exports.readSignKey = exports.WEB_FRESHNESS_SEC = exports.ATTR_PROTOCOL_SIGNATURE = exports.HEADER_PROTOCOL_SIGNATURE = exports.PROTOCOL_VERIFY = exports.PROTOCOL_SIGN_KEY = void 0;
6
+ exports.assertSigned = exports.verifyMessage = exports.signMessage = exports.verifyContext = exports.signContext = exports.canonicalMessage = exports.canonicalWeb = exports.sha256hex = exports.logSignKeyState = exports.readVerifyMode = exports.resetProtocolSign = exports.readSignKey = exports.readConfig = exports.WEB_FRESHNESS_SEC = exports.ATTR_PROTOCOL_SIGNATURE = exports.PROTOCOL_LOG_MASKED_HEADERS = exports.HEADER_LEMON_IDENTITY = exports.HEADER_LEMON_RELAY = exports.HEADER_PROTOCOL_CONTEXT = exports.HEADER_PROTOCOL_SIGNATURE = exports.PROTOCOL_VERIFY = exports.PROTOCOL_SIGN_KEY = void 0;
7
7
  /**
8
8
  * `cores/protocol/protocol-sign.ts`
9
9
  * - v5 B5: HMAC-SHA256 signature of the internal protocol calls (K10, SPEC § 6.2).
@@ -14,6 +14,7 @@ exports.assertSigned = exports.verifyMessage = exports.signMessage = exports.ver
14
14
  *
15
15
  * @author Steve Jung <steve@lemoncloud.io>
16
16
  * @date 2026-10-28 initial version (v5 B5)
17
+ * @date 2026-10-30 v5 B14: `HEADER_LEMON_RELAY` (masked in logs), `readConfig()` exported, `HEADER_PROTOCOL_CONTEXT` deprecated.
17
18
  *
18
19
  * @copyright (C) lemoncloud.io 2026 - All Rights Reserved.
19
20
  */
@@ -27,6 +28,31 @@ exports.PROTOCOL_SIGN_KEY = 'PROTOCOL_SIGN_KEY';
27
28
  exports.PROTOCOL_VERIFY = 'PROTOCOL_VERIFY';
28
29
  /** header name of the web signature */
29
30
  exports.HEADER_PROTOCOL_SIGNATURE = 'x-protocol-signature';
31
+ /**
32
+ * header name to exchange `next-context`, ONLY for internal communication.
33
+ * - v5 B10-3: defined here (was `protocol-service.ts`, which re-exports it) so that `lambda-handler.ts` reads it without an import cycle.
34
+ *
35
+ * @deprecated v5 B14: the full context is replaced by the relay (`HEADER_LEMON_RELAY`). v5 sends it only with
36
+ * `PROTOCOL_LEGACY_CONTEXT=send` and accepts it by `PROTOCOL_LEGACY_ACCEPT`. removal in v6.
37
+ */
38
+ exports.HEADER_PROTOCOL_CONTEXT = engine_1.$U.env('HEADER_PROTOCOL_CONTEXT', 'x-protocol-context');
39
+ /**
40
+ * v5 B14: header name of the relay envelope (`r1.<base64url(JSON)>`) of an internal web call (see `protocol-relay.ts`).
41
+ * - defined here (no import cycle with `lambda-handler.ts`), re-exported by `protocol-relay.ts`.
42
+ */
43
+ exports.HEADER_LEMON_RELAY = 'x-lemon-relay';
44
+ /**
45
+ * header name of the identity of an internal call (JSON) or a JWT.
46
+ * - v5 B10-3: defined here (was a private const of `lambda-web-handler.ts`) for the same reason.
47
+ */
48
+ exports.HEADER_LEMON_IDENTITY = engine_1.$U.env('HEADER_LEMON_IDENTITY', 'x-lemon-identity');
49
+ /** v5 B10-3: protocol header names whose values are masked in logs (`maskHeaders()` of `lib/log-mask.ts`) */
50
+ exports.PROTOCOL_LOG_MASKED_HEADERS = [
51
+ exports.HEADER_PROTOCOL_CONTEXT,
52
+ exports.HEADER_PROTOCOL_SIGNATURE,
53
+ exports.HEADER_LEMON_IDENTITY,
54
+ exports.HEADER_LEMON_RELAY, //* v5 B14: the relay carries identity ids like the context.
55
+ ];
30
56
  /** message attribute name of the SNS/SQS signature */
31
57
  exports.ATTR_PROTOCOL_SIGNATURE = 'signature';
32
58
  /** web freshness window (seconds). SNS/SQS have none (queue delay, retry and DLQ redrive exceed any window) */
@@ -44,11 +70,12 @@ const readConfig = (name) => {
44
70
  const raw = process?.env?.[name];
45
71
  return typeof raw === 'string' && !raw.startsWith('*') ? raw : undefined;
46
72
  };
73
+ exports.readConfig = readConfig;
47
74
  /** read the signing key (cached after the first non-empty read) */
48
75
  const readSignKey = () => {
49
76
  if ($signKey)
50
77
  return $signKey;
51
- const key = readConfig(exports.PROTOCOL_SIGN_KEY);
78
+ const key = (0, exports.readConfig)(exports.PROTOCOL_SIGN_KEY);
52
79
  //* a failed KMS decrypt leaves `ERROR - …` in the config — treat as not set.
53
80
  if (key && !key.startsWith('ERROR - '))
54
81
  $signKey = key;
@@ -63,7 +90,7 @@ const resetProtocolSign = () => {
63
90
  exports.resetProtocolSign = resetProtocolSign;
64
91
  /** read the verify mode. default: `warn` if the key is set, else `off` */
65
92
  const readVerifyMode = () => {
66
- const mode = `${readConfig(exports.PROTOCOL_VERIFY) ?? ''}`.trim().toLowerCase();
93
+ const mode = `${(0, exports.readConfig)(exports.PROTOCOL_VERIFY) ?? ''}`.trim().toLowerCase();
67
94
  if (mode === 'off' || mode === 'warn' || mode === 'enforce')
68
95
  return mode;
69
96
  return (0, exports.readSignKey)() ? 'warn' : 'off';
@@ -1 +1 @@
1
- {"version":3,"file":"protocol-sign.js","sourceRoot":"","sources":["../../../src/cores/protocol/protocol-sign.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protocol-sign.js","sourceRoot":"","sources":["../../../src/cores/protocol/protocol-sign.ts"],"names":[],"mappings":"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"}