@dbos-inc/dbos-sdk 0.10.28-preview.g5888ab0b23 → 0.11.5-preview

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,4 +1,27 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
27
  };
@@ -12,7 +35,8 @@ const handler_1 = require("./handler");
12
35
  const handlerTypes_1 = require("./handlerTypes");
13
36
  const error_1 = require("../error");
14
37
  const api_1 = require("@opentelemetry/api");
15
- exports.WorkflowUUIDHeader = "dbos-workflowuuid";
38
+ const net = __importStar(require("net"));
39
+ exports.WorkflowUUIDHeader = "dbos-idempotency-key";
16
40
  exports.WorkflowRecoveryUrl = "/dbos-workflow-recovery";
17
41
  exports.HealthUrl = "/dbos-healthz";
18
42
  class DBOSHttpServer {
@@ -49,8 +73,15 @@ class DBOSHttpServer {
49
73
  * Register HTTP endpoints and attach to the app. Then start the server at the given port.
50
74
  * @param port
51
75
  */
52
- listen(port) {
53
- // Start the HTTP server.
76
+ async listen(port) {
77
+ try {
78
+ await this.checkPortAvailability(port, "127.0.0.1");
79
+ await this.checkPortAvailability(port, "::1");
80
+ }
81
+ catch (error) {
82
+ this.logger.warn(`Port ${port} is already used. Please use the -p option to choose another port.`);
83
+ process.exit(1);
84
+ }
54
85
  const appServer = this.app.listen(port, () => {
55
86
  this.logger.info(`DBOS Server is running at http://localhost:${port}`);
56
87
  });
@@ -60,6 +91,26 @@ class DBOSHttpServer {
60
91
  });
61
92
  return { appServer: appServer, adminServer: adminServer };
62
93
  }
94
+ async checkPortAvailability(port, host) {
95
+ return new Promise((resolve, reject) => {
96
+ const server = new net.Server();
97
+ server.on('error', (error) => {
98
+ if (error.code === 'EADDRINUSE') {
99
+ reject(new Error(`Port ${port} is already in use`));
100
+ }
101
+ else {
102
+ reject(error);
103
+ }
104
+ });
105
+ server.on('listening', () => {
106
+ server.close();
107
+ resolve();
108
+ });
109
+ server.listen({ port: port, host: host }, () => {
110
+ resolve();
111
+ });
112
+ });
113
+ }
63
114
  /**
64
115
  * Health check endpoint.
65
116
  */
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/httpServer/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/httpServer/server.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAsB;AACtB,yDAAiC;AACjC,gDAA6C;AAC7C,qDAA6B;AAC7B,uCAImB;AACnB,iDAAsD;AAGtD,oCAKkB;AAIlB,4CAAyE;AAEzE,yCAA2B;AAEd,QAAA,kBAAkB,GAAG,sBAAsB,CAAC;AAC5C,QAAA,mBAAmB,GAAG,yBAAyB,CAAA;AAC/C,QAAA,SAAS,GAAG,eAAe,CAAA;AAExC,MAAa,cAAc;IAYJ;IAXZ,GAAG,CAAM;IACT,QAAQ,CAAM;IACd,iBAAiB,CAAS;IAC1B,WAAW,CAAS;IACpB,MAAM,CAAS;IAExB;;;;OAIG;IACH,YAAqB,QAAsB;QAAtB,aAAQ,GAAR,QAAQ,CAAc;QACzC,IAAI,CAAC,iBAAiB,GAAG,IAAI,gBAAM,EAAE,CAAC;QACtC,IAAI,CAAC,WAAW,GAAG,IAAI,gBAAM,EAAE,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;QAC9B,IAAI,CAAC,GAAG,GAAG,IAAI,aAAG,EAAE,CAAC;QACrB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAA,uBAAU,GAAE,CAAC,CAAC;QAC3B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAA,cAAI,GAAE,CAAC,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,IAAI,aAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAA,uBAAU,GAAE,CAAC,CAAC;QAChC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAA,cAAI,GAAE,CAAC,CAAC;QAE1B,2BAA2B;QAC3B,cAAc,CAAC,sBAAsB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACvE,cAAc,CAAC,wBAAwB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACzE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC,CAAC;QACpF,cAAc,CAAC,0BAA0B,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACjF,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,cAAc,EAAE,CAAC,CAAC;IAC7F,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,MAAM,CAAC,IAAY;QACvB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;YACpD,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAChD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,oEAAoE,CAAC,CAAC;YACnG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE;YAC3C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8CAA8C,IAAI,EAAE,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,CAAA;QAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,EAAE;YACvD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oDAAoD,SAAS,EAAE,CAAC,CAAC;QACpF,CAAC,CAAC,CAAC;QACH,OAAO,EAAC,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAC,CAAA;IACzD,CAAC;IAEH,KAAK,CAAC,qBAAqB,CAAC,IAAY,EAAE,IAAY;QACpD,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC7C,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAChC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAA4B,EAAE,EAAE;gBAChD,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;oBAC9B,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,IAAI,oBAAoB,CAAC,CAAC,CAAC;gBACxD,CAAC;qBAAM,CAAC;oBACJ,MAAM,CAAC,KAAK,CAAC,CAAC;gBAClB,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE;gBAC1B,MAAM,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,EAAC,IAAI,EAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAC,EAAC,GAAG,EAAE;gBACzC,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;QAEH,CAAC,CAAC,CAAC;IACL,CAAC;IACC;;OAEG;IACD,MAAM,CAAC,sBAAsB,CAAC,QAAsB,EAAE,MAAc;QAClE,qDAAqD;QACrD,MAAM,aAAa,GAAG,KAAK,EAAE,OAAoB,EAAE,OAAiB,EAAE,EAAE;YACtE,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;YACzB,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC,CAAC;QAEF,MAAM,CAAC,GAAG,CAAC,iBAAS,EAAE,aAAa,CAAC,CAAC;QACrC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,iBAAS,EAAE,CAAC,CAAC;IAC5E,CAAC;IAEH;;;OAGG;IACH,MAAM,CAAC,wBAAwB,CAAC,QAAsB,EAAE,MAAc;QACpE,qDAAqD;QACrD,MAAM,eAAe,GAAG,KAAK,EAAE,OAAoB,EAAE,OAAiB,EAAE,EAAE;YACxE,sEAAsE;YACtE,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,IAAgB,CAAC;YACrD,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,sCAAsC,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;YACtF,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,uBAAuB,CAAC,WAAW,CAAC,CAAC;YAE3E,kDAAkD;YAClD,OAAO,CAAC,IAAI,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CACvG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAqC,CAAC,KAAK,CAAC,CACzG,CAAC;YACF,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC,CAAC;QAEF,MAAM,CAAC,IAAI,CAAC,2BAAmB,EAAE,eAAe,CAAC,CAAC;QAClD,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,2BAAmB,EAAE,CAAC,CAAC;IACvF,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,0BAA0B,CAAC,QAAsB,EAAE,MAAc;QACtE,gGAAgG;QAChG,QAAQ,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,mBAAmB,EAAE,EAAE;YAC5D,MAAM,EAAE,GAAG,mBAAuE,CAAC;YACnF,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC;gBACd,gDAAgD;gBAChD,MAAM,QAAQ,GAAG,EAAE,CAAC,QAA8B,CAAC;gBACnD,IAAI,QAAQ,EAAE,cAAc,EAAE,CAAC;oBAC7B,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE;wBAChD,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,aAAa,CAAC,IAAI,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;wBAC/F,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;oBACvC,CAAC,CAAC,CAAC;gBACL,CAAC;gBAED,0DAA0D;gBAC1D,MAAM,cAAc,GAAG,KAAK,EAAE,OAAoB,EAAE,OAAiB,EAAE,EAAE;oBACvE,MAAM,EAAE,GAAuB,IAAI,4BAAkB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBAEzE,IAAI,CAAC;wBACH,uBAAuB;wBACvB,IAAI,QAAQ,EAAE,cAAc,EAAE,CAAC;4BAC7B,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC;gCACxC,IAAI,EAAE,EAAE,CAAC,IAAI;gCACb,YAAY,EAAE,EAAE,CAAC,gBAAgB,EAAE;gCACnC,UAAU,EAAE,OAAO;gCACnB,MAAM,EAAE,EAAE,CAAC,MAAM;gCACjB,IAAI,EAAE,EAAE,CAAC,IAAI;gCACb,SAAS,EAAE,CAAC,GAAW,EAAE,GAAG,EAAE,EAAE;oCAC9B,OAAO,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gCAChC,CAAC;gCACD,KAAK,EAAE,CAAC,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE;oCACxB,OAAO,QAAQ,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;gCAC7D,CAAC;6BACF,CAAC,CAAC;4BACH,IAAI,GAAG,EAAE,CAAC;gCACR,EAAE,CAAC,iBAAiB,GAAG,GAAG,CAAC,iBAAiB,CAAC;gCAC7C,EAAE,CAAC,kBAAkB,GAAG,GAAG,CAAC,kBAAkB,CAAC;4BACjD,CAAC;wBACH,CAAC;wBAED,uBAAuB;wBACvB,MAAM,IAAI,GAAc,EAAE,CAAC;wBAC3B,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;4BAC5B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,yBAAU,CAAC,OAAO,CAAC,CAAC,0BAA0B;4BACjF,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;gCACd,OAAO,CAAC,4BAA4B;4BACtC,CAAC;4BAED,IAAI,QAAQ,GAAG,SAAS,CAAC;4BACzB,IAAI,CAAC,EAAE,CAAC,OAAO,KAAK,uBAAQ,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,KAAK,yBAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,SAAS,KAAK,yBAAU,CAAC,KAAK,EAAE,CAAC;gCAClH,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gCAC5C,IAAI,QAAQ,EAAE,CAAC;oCACb,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gCACtB,CAAC;4BACH,CAAC;iCAAM,IAAI,CAAC,EAAE,CAAC,OAAO,KAAK,uBAAQ,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,KAAK,yBAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,SAAS,KAAK,yBAAU,CAAC,IAAI,EAAE,CAAC;gCACzH,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;oCAC1B,MAAM,IAAI,+BAAuB,CAAC,YAAY,IAAI,CAAC,IAAI,0BAA0B,CAAC,CAAC;gCACrF,CAAC;gCACD,+GAA+G;gCAC/G,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gCAC3C,IAAI,QAAQ,EAAE,CAAC;oCACb,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gCACtB,CAAC;4BACH,CAAC;4BAED,2DAA2D;4BAC3D,IAAI,CAAC,QAAQ,EAAE,CAAC;gCACd,sEAAsE;gCACtE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;4BACvC,CAAC;4BAED,8DAA8D;wBAChE,CAAC,CAAC,CAAC;wBAEH,+CAA+C;wBAC/C,kHAAkH;wBAClH,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC,0BAAkB,CAAC,CAAC;wBAE3D,0FAA0F;wBAC1F,mMAAmM;wBACnM,2BAA2B;wBAC3B,qDAAqD;wBACrD,gFAAgF;wBAChF,8BAA8B;wBAC9B,MAAM,QAAQ,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,YAAY,EAAE,kBAAkB,EAAE,CAAC;wBACrE,IAAI,EAAE,CAAC,SAAS,EAAE,CAAC;4BACjB,OAAO,CAAC,IAAI,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,kBAAqD,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAC;wBACzH,CAAC;6BAAM,IAAI,EAAE,CAAC,cAAc,EAAE,CAAC;4BAC7B,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,kBAAkD,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;wBACvI,CAAC;6BAAM,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC;4BACzB,OAAO,CAAC,IAAI,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,kBAAsD,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAC;wBACvH,CAAC;6BAAM,CAAC;4BACN,oCAAoC;4BACpC,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;4BAE3D,kFAAkF;4BAClF,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gCAC/B,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC;4BAC1B,CAAC;wBACH,CAAC;wBACD,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,oBAAc,CAAC,EAAE,EAAE,CAAC,CAAC;oBACjD,CAAC;oBAAC,OAAO,CAAC,EAAE,CAAC;wBACX,IAAI,CAAC,YAAY,KAAK,EAAE,CAAC;4BACvB,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;4BACnB,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,oBAAc,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;4BACtE,IAAI,EAAE,GAAI,CAAuB,EAAE,MAAM,IAAI,GAAG,CAAC;4BACjD,MAAM,aAAa,GAAI,CAAe,EAAE,aAAa,CAAC;4BACtD,IAAI,aAAa,IAAI,IAAA,qBAAa,EAAC,aAAa,CAAC,EAAE,CAAC;gCAClD,EAAE,GAAG,GAAG,CAAC,CAAC,iCAAiC;4BAC7C,CAAC;4BACD,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC;4BACpB,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;4BAC5B,OAAO,CAAC,IAAI,GAAG;gCACb,MAAM,EAAE,EAAE;gCACV,OAAO,EAAE,CAAC,CAAC,OAAO;gCAClB,OAAO,EAAE,CAAC;6BACX,CAAC;wBACJ,CAAC;6BAAM,CAAC;4BACN,qGAAqG;4BACrG,wGAAwG;4BACxG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;4BACnC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,oBAAc,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;4BAC9E,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC;4BACjB,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC;wBACvB,CAAC;oBACH,CAAC;4BAAS,CAAC;wBAQT,EAAE,CAAC,yBAAyB,CAAC,MAAM,CACjC,WAAK,CAAC,cAAc,CAAC,kBAAY,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EACzD;4BACE,OAAO,EAAE,OAAO;yBACjB,EACD;4BACE,GAAG,EAAE,CAAC,OAAgB,EAAE,GAAW,EAAE,KAAa,EAAE,EAAE;gCACpD,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;4BAClC,CAAC;yBACF,CACF,CAAC;wBACF,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;wBACjC,qCAAqC;wBACrC,OAAO,CAAC,GAAG,CAAC,yBAAe,EAAE,EAAE,CAAC,OAAO,CAAC,SAAmB,CAAC,CAAC;wBAC7D,MAAM,OAAO,EAAE,CAAC;oBAClB,CAAC;gBACH,CAAC,CAAC;gBAEF,kCAAkC;gBAClC,IAAI,EAAE,CAAC,OAAO,KAAK,uBAAQ,CAAC,GAAG,EAAE,CAAC;oBAChC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;oBACtC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;gBACnE,CAAC;qBAAM,IAAI,EAAE,CAAC,OAAO,KAAK,uBAAQ,CAAC,IAAI,EAAE,CAAC;oBACxC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;oBACvC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;gBACpE,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAvRD,wCAuRC"}