@balena/pinejs 16.0.0-build--batch-4752d5c621e724b9c1c8681845dc297b99453b65-1 → 16.0.0-build-renovate-node-20-x-f810059b8839e410aab086f27909fb948e1199db-1

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,31 +1,65 @@
1
1
  - commits:
2
- - subject: Add `$batch` endpoint for batch requests
3
- hash: 4752d5c621e724b9c1c8681845dc297b99453b65
4
- body: ""
5
- footer:
6
- Change-type: minor
7
- change-type: minor
8
- author: myarmolinsky
9
- nested: []
10
- - subject: Expect `string` instead of `number` for request ids
11
- hash: 64885d5199044547b364b85f888fa31d3d2f92f7
12
- body: ""
2
+ - subject: Update Node.js to v20
3
+ hash: f810059b8839e410aab086f27909fb948e1199db
4
+ body: |
5
+ Update node from 16 to 20
13
6
  footer:
14
7
  Change-type: major
15
8
  change-type: major
16
- author: myarmolinsky
9
+ author: Self-hosted Renovate Bot
17
10
  nested: []
18
- - subject: Use `status` in responses instead of `statusCode`
19
- hash: 3f9098766356c7604331b7da4c3b67852c8d82b5
11
+ version: 16.0.0
12
+ title: ""
13
+ date: 2023-07-11T14:15:59.239Z
14
+ - commits:
15
+ - subject: Update pinejs-client-core to 6.13.0
16
+ hash: 9757808e1422074b805c57fd5b629f5b3ef6f779
17
+ body: |
18
+ Update pinejs-client-core from 6.12.3 to 6.13.0
19
+ footer:
20
+ Change-type: minor
21
+ change-type: minor
22
+ author: Thodoris Greasidis
23
+ nested:
24
+ - commits:
25
+ - subject: Add support for $duration
26
+ hash: 05edeeea86147ac49dd864ae6e0b46ffc73f6fc4
27
+ body: ""
28
+ footer:
29
+ Change-type: minor
30
+ change-type: minor
31
+ author: Thodoris Greasidis
32
+ nested: []
33
+ version: pinejs-client-js-6.13.0
34
+ title: ""
35
+ date: 2023-07-11T13:16:05.245Z
36
+ - commits:
37
+ - subject: Avoid an unnecessary function creation on each get() call
38
+ hash: 782e43ef40a22fa4c8e0f3d64917b03e07c77522
39
+ body: ""
40
+ footer:
41
+ Change-type: patch
42
+ change-type: patch
43
+ author: Thodoris Greasidis
44
+ nested: []
45
+ version: pinejs-client-js-6.12.4
46
+ title: ""
47
+ date: 2023-05-09T13:11:13.136Z
48
+ version: 15.1.0
49
+ title: ""
50
+ date: 2023-07-11T14:03:07.450Z
51
+ - commits:
52
+ - subject: Mark the bin scripts as executable
53
+ hash: b530c6d4f5c599e517345084f2db3c544118186e
20
54
  body: ""
21
55
  footer:
22
- Change-type: major
23
- change-type: major
24
- author: myarmolinsky
56
+ Change-type: patch
57
+ change-type: patch
58
+ author: Thodoris Greasidis
25
59
  nested: []
26
- version: 16.0.0
60
+ version: 15.0.5
27
61
  title: ""
28
- date: 2023-07-05T15:34:59.549Z
62
+ date: 2023-07-07T15:40:24.029Z
29
63
  - commits:
30
64
  - subject: Add transaction cancelation tests for properly hooked custom endpoints
31
65
  hash: dfe17f5933b2da276633ee713de5c2a0d714b656
package/CHANGELOG.md CHANGED
@@ -5,11 +5,34 @@ automatically by Versionist. DO NOT EDIT THIS FILE MANUALLY!
5
5
  This project adheres to [Semantic Versioning](http://semver.org/).
6
6
 
7
7
  # v16.0.0
8
- ## (2023-07-05)
8
+ ## (2023-07-11)
9
9
 
10
- * Add `$batch` endpoint for batch requests [myarmolinsky]
11
- * Expect `string` instead of `number` for request ids [myarmolinsky]
12
- * Use `status` in responses instead of `statusCode` [myarmolinsky]
10
+ * Update Node.js to v20 [Self-hosted Renovate Bot]
11
+
12
+ # v15.1.0
13
+ ## (2023-07-11)
14
+
15
+
16
+ <details>
17
+ <summary> Update pinejs-client-core to 6.13.0 [Thodoris Greasidis] </summary>
18
+
19
+ > ## pinejs-client-js-6.13.0
20
+ > ### (2023-07-11)
21
+ >
22
+ > * Add support for $duration [Thodoris Greasidis]
23
+ >
24
+ > ## pinejs-client-js-6.12.4
25
+ > ### (2023-05-09)
26
+ >
27
+ > * Avoid an unnecessary function creation on each get() call [Thodoris Greasidis]
28
+ >
29
+
30
+ </details>
31
+
32
+ # v15.0.5
33
+ ## (2023-07-07)
34
+
35
+ * Mark the bin scripts as executable [Thodoris Greasidis]
13
36
 
14
37
  # v15.0.4
15
38
  ## (2023-06-27)
package/Dockerfile CHANGED
@@ -1,4 +1,4 @@
1
- FROM node:16-alpine as runner
1
+ FROM node:20-alpine as runner
2
2
 
3
3
  WORKDIR /usr/src/pine
4
4
 
File without changes
File without changes
File without changes
@@ -49,8 +49,7 @@ export interface ApiKey extends Actor {
49
49
  actor: number;
50
50
  }
51
51
  export interface Response {
52
- id?: string | undefined;
53
- status: number;
52
+ statusCode: number;
54
53
  headers?: {
55
54
  [headerName: string]: any;
56
55
  } | undefined;
@@ -105,7 +104,7 @@ export declare const runURI: (method: string, uri: string, body?: AnyObject, tx?
105
104
  export declare const getAbstractSqlModel: (request: Pick<uriParser.ODataRequest, 'vocabulary' | 'abstractSqlModel'>) => AbstractSQLCompiler.AbstractSqlModel;
106
105
  export declare const getAffectedIds: (args: HookArgs & {
107
106
  tx: Db.Tx;
108
- }) => Promise<string[]>;
107
+ }) => Promise<number[]>;
109
108
  export declare const handleODataRequest: Express.Handler;
110
109
  declare const handleErrorFns: Array<(req: Express.Request, err: HttpError) => void>;
111
110
  export declare const onHandleHttpError: (fn: (typeof handleErrorFns)[number]) => void;
@@ -34,7 +34,6 @@ Object.defineProperty(exports, "resolveOdataBind", { enumerable: true, get: func
34
34
  const odataResponse = require("./odata-response");
35
35
  const module_1 = require("../server-glue/module");
36
36
  const translations_1 = require("./translations");
37
- const validBatchMethods = new Set(['PUT', 'POST', 'PATCH', 'DELETE', 'GET']);
38
37
  const LF2AbstractSQLTranslator = LF2AbstractSQL.createTranslator(sbvr_types_1.default);
39
38
  const LF2AbstractSQLTranslatorVersion = `${package_json_2.version}+${package_json_3.version}`;
40
39
  const models = {};
@@ -600,13 +599,13 @@ const runURI = async (method, uri, body = {}, tx, req, custom) => {
600
599
  if (_.isError(response)) {
601
600
  throw response;
602
601
  }
603
- const { body: responseBody, status, headers } = response;
604
- if (status != null && status >= 400) {
605
- const ErrorClass = errors_1.statusCodeToError[status];
602
+ const { body: responseBody, statusCode, headers } = response;
603
+ if (statusCode != null && statusCode >= 400) {
604
+ const ErrorClass = errors_1.statusCodeToError[statusCode];
606
605
  if (ErrorClass != null) {
607
606
  throw new ErrorClass(undefined, responseBody, headers);
608
607
  }
609
- throw new errors_1.HttpError(status, undefined, responseBody, headers);
608
+ throw new errors_1.HttpError(statusCode, undefined, responseBody, headers);
610
609
  }
611
610
  return responseBody;
612
611
  };
@@ -639,7 +638,6 @@ const $getAffectedIds = async ({ req, request, tx, }) => {
639
638
  throw new Error('Can only call `getAffectedIds` with PATCH/DELETE requests');
640
639
  }
641
640
  const parsedRequest = await uriParser.parseOData({
642
- id: request.id,
643
641
  method: request.method,
644
642
  url: `/${request.vocabulary}${request.url}`,
645
643
  });
@@ -675,51 +673,6 @@ const runODataRequest = (req, vocabulary) => {
675
673
  if (module_1.env.DEBUG) {
676
674
  exports.api[vocabulary].logger.log('Parsing', req.method, req.url);
677
675
  }
678
- if (req.url === `/${vocabulary}/$batch`) {
679
- const { requests } = req.body;
680
- req.batch = requests;
681
- if (!Array.isArray(requests)) {
682
- throw new errors_1.BadRequestError('Batch requests must include an array of requests in the body via the "requests" property');
683
- }
684
- if (req.headers != null && req.headers['content-type'] == null) {
685
- throw new errors_1.BadRequestError('Headers in a batch request must include a "content-type" header if they are provided');
686
- }
687
- const ids = new Set(requests
688
- .map((request) => request.id)
689
- .filter((id) => typeof id === 'string'));
690
- if (ids.size !== requests.length) {
691
- throw new errors_1.BadRequestError('All requests in a batch request must have unique string ids');
692
- }
693
- for (const request of requests) {
694
- if (request.headers != null &&
695
- request.headers['content-type'] == null &&
696
- (req.headers == null || req.headers['content-type'] == null)) {
697
- throw new errors_1.BadRequestError('Requests of a batch request that have headers must include a "content-type" header');
698
- }
699
- if (request.method == null) {
700
- throw new errors_1.BadRequestError('Requests of a batch request must have a "method"');
701
- }
702
- const upperCaseMethod = request.method.toUpperCase();
703
- if (!validBatchMethods.has(upperCaseMethod)) {
704
- throw new errors_1.BadRequestError(`Requests of a batch request must have a method matching one of the following: ${Array.from(validBatchMethods).join(', ')}`);
705
- }
706
- if (request.body !== undefined &&
707
- (upperCaseMethod === 'GET' || upperCaseMethod === 'DELETE')) {
708
- throw new errors_1.BadRequestError('GET and DELETE requests of a batch request must not have a body');
709
- }
710
- }
711
- const urls = new Set(requests.map((request) => request.url));
712
- if (urls.has(undefined)) {
713
- throw new errors_1.BadRequestError('Requests of a batch request must have a "url"');
714
- }
715
- if (urls.has('/university/$batch')) {
716
- throw new errors_1.BadRequestError('Batch requests cannot contain batch requests');
717
- }
718
- const urlModels = new Set(Array.from(urls.values()).map((url) => url.split('/')[1]));
719
- if (urlModels.size > 1) {
720
- throw new errors_1.BadRequestError('Batch requests must consist of requests for only one model');
721
- }
722
- }
723
676
  const { versions } = models[vocabulary];
724
677
  const reqHooks = versions.map((version) => [
725
678
  version,
@@ -754,12 +707,12 @@ const runODataRequest = (req, vocabulary) => {
754
707
  promise: (async () => {
755
708
  await (0, hooks_1.runHooks)('PREPARSE', reqHooks, { req, tx: req.tx });
756
709
  let requests;
757
- if (req.url === `/${vocabulary}/$batch`) {
710
+ if (req.batch != null && req.batch.length > 0) {
758
711
  requests = req.batch;
759
712
  }
760
713
  else {
761
714
  const { method, url, body } = req;
762
- requests = [{ method, url, body }];
715
+ requests = [{ method, url, data: body }];
763
716
  }
764
717
  const prepareRequest = async (parsedRequest) => {
765
718
  parsedRequest.engine = exports.db.engine;
@@ -800,7 +753,7 @@ const runODataRequest = (req, vocabulary) => {
800
753
  }
801
754
  };
802
755
  const results = await mappingFn(requests, async (requestPart) => {
803
- const parsedRequest = await uriParser.parseOData(requestPart, req.headers);
756
+ const parsedRequest = await uriParser.parseOData(requestPart);
804
757
  let request;
805
758
  if (Array.isArray(parsedRequest)) {
806
759
  request = await controlFlow.mapSeries(parsedRequest, prepareRequest);
@@ -841,7 +794,7 @@ const runODataRequest = (req, vocabulary) => {
841
794
  else {
842
795
  if (!Array.isArray(result) &&
843
796
  result.body == null &&
844
- result.status == null) {
797
+ result.statusCode == null) {
845
798
  console.error('No status or body set', req.url, responses);
846
799
  return new errors_1.InternalRequestError();
847
800
  }
@@ -870,16 +823,14 @@ const handleODataRequest = async (req, res, next) => {
870
823
  handleResponse(res, response);
871
824
  }
872
825
  else {
873
- res.status(200).json({
874
- responses: responses.map((response) => {
875
- if (response instanceof errors_1.HttpError) {
876
- return httpErrorToResponse(response);
877
- }
878
- else {
879
- return response;
880
- }
881
- }),
882
- });
826
+ res.status(200).sendMulti(responses.map((response) => {
827
+ if (response instanceof errors_1.HttpError) {
828
+ response = httpErrorToResponse(response);
829
+ }
830
+ else {
831
+ return response;
832
+ }
833
+ }));
883
834
  }
884
835
  }
885
836
  catch (e) {
@@ -901,7 +852,7 @@ const handleHttpErrors = (req, res, err) => {
901
852
  for (const handleErrorFn of handleErrorFns) {
902
853
  handleErrorFn(req, err);
903
854
  }
904
- const response = httpErrorToResponse(err, req);
855
+ const response = httpErrorToResponse(err);
905
856
  handleResponse(res, response);
906
857
  return true;
907
858
  }
@@ -909,9 +860,9 @@ const handleHttpErrors = (req, res, err) => {
909
860
  };
910
861
  exports.handleHttpErrors = handleHttpErrors;
911
862
  const handleResponse = (res, response) => {
912
- const { body, headers, status } = response;
863
+ const { body, headers, statusCode } = response;
913
864
  res.set(headers);
914
- res.status(status);
865
+ res.status(statusCode);
915
866
  if (!body) {
916
867
  res.end();
917
868
  }
@@ -919,11 +870,10 @@ const handleResponse = (res, response) => {
919
870
  res.json(body);
920
871
  }
921
872
  };
922
- const httpErrorToResponse = (err, req) => {
923
- const message = err.getResponseBody();
873
+ const httpErrorToResponse = (err) => {
924
874
  return {
925
- status: err.status,
926
- body: req != null && 'batch' in req ? { responses: [], message } : message,
875
+ statusCode: err.status,
876
+ body: err.getResponseBody(),
927
877
  headers: err.headers,
928
878
  };
929
879
  };
@@ -1120,8 +1070,7 @@ const respondGet = async (req, request, result, tx) => {
1120
1070
  : undefined;
1121
1071
  const d = await odataResponse.process(vocab, (0, exports.getAbstractSqlModel)(request), request.originalResourceName, result.rows, { includeMetadata: metadata === 'full' });
1122
1072
  const response = {
1123
- id: request.id,
1124
- status: 200,
1073
+ statusCode: 200,
1125
1074
  body: { d },
1126
1075
  headers: { 'content-type': 'application/json' },
1127
1076
  };
@@ -1137,15 +1086,14 @@ const respondGet = async (req, request, result, tx) => {
1137
1086
  else {
1138
1087
  if (request.resourceName === '$metadata') {
1139
1088
  return {
1140
- id: request.id,
1141
- status: 200,
1089
+ statusCode: 200,
1142
1090
  body: models[vocab].odataMetadata,
1143
1091
  headers: { 'content-type': 'xml' },
1144
1092
  };
1145
1093
  }
1146
1094
  else {
1147
1095
  return {
1148
- status: 404,
1096
+ statusCode: 404,
1149
1097
  };
1150
1098
  }
1151
1099
  }
@@ -1174,7 +1122,7 @@ const respondPost = async (req, request, id, tx) => {
1174
1122
  }
1175
1123
  }
1176
1124
  const response = {
1177
- status: 201,
1125
+ statusCode: 201,
1178
1126
  body: result.d[0],
1179
1127
  headers: {
1180
1128
  'content-type': 'application/json',
@@ -1208,7 +1156,7 @@ const runPut = async (_req, request, tx) => {
1208
1156
  };
1209
1157
  const respondPut = async (req, request, result, tx) => {
1210
1158
  const response = {
1211
- status: 200,
1159
+ statusCode: 200,
1212
1160
  };
1213
1161
  await (0, hooks_1.runHooks)('PRERESPOND', request.hooks, {
1214
1162
  req,
@@ -1 +1 @@
1
- {"version":3,"file":"sbvr-utils.js","sourceRoot":"","sources":["../../src/sbvr-api/sbvr-utils.ts"],"names":[],"mappings":";;;AAcA,4BAA4B;AAG5B,qDAAiD;AAGjD,qEAAqE;AACrE,6EAAmG;AACnG,6DAA6D;AAE7D,yEAKuC;AACvC,mDAA2C;AAqDlC,oBArDF,oBAAS,CAqDE;AApDlB,0CAA2C;AAC3C,2DAA0E;AAE1E,uFAAkF;AAElF,mDAAmD;AACnD,iDAAiD;AACjD,yFAAmF;AAGnF,MAAM,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;AACvC,6CAA6C;AAC7C,qCAekB;AAClB,0CAA0C;AAE1C,mCAOiB;AACjB,iCAOiB;AAFhB,oGAAA,WAAW,OAAA;AACX,0GAAA,iBAAiB,OAAA;AAGlB,6CAA8C;AAC9C,8CAA8C;AAEnC,QAAA,EAAE,GAAG,SAA+B,CAAC;AAIhD,0EAA2F;AAC3F,kEAA8E;AAC9E,iDAIwB;AACxB,+CAAkD;AAAzC,gHAAA,gBAAgB,OAAA;AACzB,kDAAkD;AAClD,kDAA4C;AAC5C,iDAA2D;AAE3D,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;AAE7E,MAAM,wBAAwB,GAAG,cAAc,CAAC,gBAAgB,CAAC,oBAAS,CAAC,CAAC;AAC5E,MAAM,+BAA+B,GAAG,GAAG,sBAAqB,IAAI,sBAAgB,EAAE,CAAC;AAgBvF,MAAM,MAAM,GAIR,EAAE,CAAC;AA2BP,MAAM,uBAAuB,GAAG,WAAW,CAC1C,CACC,gBAAsD,EACtD,YAAoB,EACX,EAAE;IACX,MAAM,OAAO,GAAG,IAAA,0CAAkB,EAAC,YAAY,CAAC,CAAC;IACjD,OAAO,CAAC,CAAC,OAAO,CAAC;SACf,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjB,MAAM,OAAO,GAAG,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACpD,IAAI,OAAO,IAAI,IAAI,EAAE;YACpB,OAAO,OAAO,CAAC;SACf;QACD,OAAO,QAAQ,CAAC;IACjB,CAAC,CAAC;SACD,IAAI,CAAC,GAAG,CAAC,CAAC;AACb,CAAC,EACD,EAAE,SAAS,EAAE,IAAI,EAAE,CACnB,CAAC;AAEK,MAAM,cAAc,GAAG,CAC7B,OAGC,EACQ,EAAE;IACX,MAAM,gBAAgB,GAAG,IAAA,2BAAmB,EAAC,OAAO,CAAC,CAAC;IACtD,OAAO,uBAAuB,CAAC,gBAAgB,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;AACxE,CAAC,CAAC;AARW,QAAA,cAAc,kBAQzB;AAEF,MAAM,iCAAiC,GAAG,WAAW,CACpD,CACC,gBAAsD,EACtD,YAAoB,EACpB,cAAsB,EACb,EAAE;IACX,MAAM,UAAU,GAAG,IAAA,0CAAkB,EAAC,cAAc,CAAC;SACnD,KAAK,CAAC,GAAG,CAAC;SACV,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CACrB,uBAAuB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAC9D,CAAC;IACH,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACrB,MAAM,oBAAoB,GAAG,uBAAuB,CACnD,gBAAgB,EAChB,YAAY,CACZ,CAAC;IACF,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CACpB,gBAAgB,CAAC,aAAa,CAAC,oBAAoB,CAAC,EACpD,UAAU,CAC6C,CAAC;IACzD,IAAI,OAAO,IAAI,IAAI,EAAE;QACpB,MAAM,IAAI,KAAK,CACd,yBAAyB,YAAY,SAAS,cAAc,GAAG,CAC/D,CAAC;KACF;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACvB,MAAM,IAAI,KAAK,CACd,IAAI,YAAY,SAAS,cAAc,+BAA+B,CACtE,CAAC;KACF;IAGD,OAAO,IAAA,0CAAkB,EAAC,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACzE,CAAC,EACD,EAAE,SAAS,EAAE,IAAI,EAAE,CACnB,CAAC;AACK,MAAM,yBAAyB,GAAG,CACxC,OAGC,EACD,cAAsB,EACb,EAAE;IACX,MAAM,gBAAgB,GAAG,IAAA,2BAAmB,EAAC,OAAO,CAAC,CAAC;IACtD,OAAO,iCAAiC,CACvC,gBAAgB,EAChB,OAAO,CAAC,YAAY,EACpB,cAAc,CACd,CAAC;AACH,CAAC,CAAC;AAbW,QAAA,yBAAyB,6BAapC;AAGF,MAAM,uBAAuB,GAAG,CAC/B,GAAuB,EACvB,OAA+B,EAC9B,EAAE;IACH,IAAI,GAAG,YAAY,UAAE,CAAC,eAAe,EAAE;QACtC,IAAI,OAAO,GAA2B,IAAI,CAAC;QAC3C,IAAI,GAAG,YAAY,UAAE,CAAC,qBAAqB,EAAE;YAC5C,QAAQ,UAAE,CAAC,MAAM,EAAE;gBAClB,KAAK,OAAO;oBACX,OAAO;wBACN,+DAA+D,CAAC,IAAI,CACnE,GAAG,CAAC,OAAO,CACX,CAAC;oBACH,MAAM;gBACP,KAAK,UAAU;oBACd,MAAM,YAAY,GAAG,IAAA,sBAAc,EAAC,OAAO,CAAC,CAAC;oBAC7C,MAAM,gBAAgB,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;oBAC3D,OAAO,GAAG,IAAI,MAAM,CACnB,GAAG,GAAG,gBAAgB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,GAAG,aAAa,CAChE,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBACpB,MAAM;aACP;YAED,IAAI,OAAO,IAAI,IAAI,EAAE;gBACpB,MAAM,IAAI,UAAE,CAAC,qBAAqB,CAAC,gCAAgC,CAAC,CAAC;aACrE;YACD,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACtC,MAAM,IAAI,UAAE,CAAC,qBAAqB,CACjC,GAAG;gBACF,OAAO,CAAC,GAAG,CAAC,0CAAkB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;gBAC/C,mBAAmB,CACpB,CAAC;SACF;QAED,IAAI,GAAG,YAAY,UAAE,CAAC,wBAAwB,EAAE;YAE/C,MAAM,IAAI,UAAE,CAAC,wBAAwB,CAAC,+BAA+B,CAAC,CAAC;SACvE;QAED,IAAI,GAAG,YAAY,UAAE,CAAC,yBAAyB,EAAE;YAChD,QAAQ,UAAE,CAAC,MAAM,EAAE;gBAClB,KAAK,OAAO;oBACX,OAAO;wBACN,gHAAgH,CAAC,IAAI,CACpH,GAAG,CAAC,OAAO,CACX,CAAC;oBACH,MAAM;gBACP,KAAK,UAAU;oBACd,MAAM,YAAY,GAAG,IAAA,sBAAc,EAAC,OAAO,CAAC,CAAC;oBAC7C,MAAM,gBAAgB,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;oBAC3D,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC;oBAC7D,OAAO,GAAG,IAAI,MAAM,CACnB,GAAG;wBACF,SAAS;wBACT,0DAA0D,CAC3D,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBACpB,IAAI,OAAO,IAAI,IAAI,EAAE;wBACpB,OAAO,GAAG,IAAI,MAAM,CACnB,GAAG;4BACF,SAAS;4BACT,qCAAqC;4BACrC,SAAS;4BACT,cAAc,CACf,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;qBACpB;oBACD,MAAM;aACP;YAGD,IAAI,OAAO,IAAI,IAAI,EAAE;gBACpB,MAAM,IAAI,UAAE,CAAC,yBAAyB,CACrC,iCAAiC,CACjC,CAAC;aACF;YACD,MAAM,IAAI,UAAE,CAAC,yBAAyB,CACrC,wBAAwB,GAAG,IAAA,0CAAkB,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAC/D,CAAC;SACF;QAED,IAAI,GAAG,YAAY,UAAE,CAAC,oBAAoB,EAAE;YAC3C,MAAM,YAAY,GAAG,IAAA,sBAAc,EAAC,OAAO,CAAC,CAAC;YAC7C,MAAM,gBAAgB,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;YAC3D,MAAM,KAAK,GAAG,gBAAgB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YACpD,IAAI,KAAK,CAAC,MAAM,EAAE;gBACjB,QAAQ,UAAE,CAAC,MAAM,EAAE;oBAClB,KAAK,UAAU;wBACd,OAAO,GAAG,IAAI,MAAM,CACnB,wBAAwB;4BACvB,KAAK,CAAC,IAAI;4BACV,qCAAqC,CACtC,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;wBACpB,MAAM;iBACP;aACD;YACD,IAAI,OAAO,IAAI,IAAI,EAAE;gBACpB,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC7B,MAAM,KAAK,GAAG,KAAK,CAAC,MAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;gBAC9D,IAAI,KAAK,EAAE,WAAW,IAAI,IAAI,EAAE;oBAC/B,MAAM,IAAI,wBAAe,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;iBAC7C;aACD;YAGD,MAAM,IAAI,wBAAe,CAAC,2BAA2B,CAAC,CAAC;SACvD;QAGD,GAAG,CAAC,OAAO,GAAG,mBAAmB,CAAC;QAClC,MAAM,GAAG,CAAC;KACV;AACF,CAAC,CAAC;AAEF,IAAI,gBAAyC,CAAC;AAgBvC,MAAM,UAAU,GAAG,KAAK,EAC9B,EAAS,EACT,SAAiB,EACE,EAAE;IACrB,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IACpD,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;QAC7B,OAAO,IAAI,CAAC;KACZ;IACD,IAAI,gBAAgB,IAAI,IAAI,EAAE;QAC7B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC,UAAU,CACnC,yCAAyC,CACzC,CAAC;QACF,gBAAgB,GAAG,IAAI,GAAG,CACzB,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAC1C,CAAC;KACF;IAED,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACzC,CAAC,CAAC;AAlBW,QAAA,UAAU,cAkBrB;AAEF,MAAM,mBAAmB,GAAG,CAC3B,QAAuC,EACvC,OAOC,EACA,EAAE;IACH,IAAI,OAAO,EAAE,WAAW,IAAI,IAAI,EAAE;QACjC,OAAO,EAAE,CAAC;KACV;IAED,MAAM,SAAS,GACd,IAAA,2BAAmB,EAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAA,sBAAc,EAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;IAInE,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,KAAK,QAAQ,CAAC;IAE7C,MAAM,UAAU,GAA2B,EAAE,CAAC;IAC9C,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE;QAC5B,IACC,IAAI,CAAC,MAAM,KAAK,CAAC;YACjB,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM;YAClB,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAC1B;YACD,SAAS;SACT;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,QAAQ,IAAI,QAAQ,KAAK,SAAS,EAAE;YACxC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,OAAO,CAAC,WAAW,GAAG,CAAC,CAAC;SAC5D;aAAM;YACN,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SACtC;KACD;IAED,OAAO,UAAU,CAAC;AACnB,CAAC,CAAC;AAEK,MAAM,aAAa,GAAG,KAAK,EACjC,EAAS,EACT,SAAiB,EACjB,OAQC,EACe,EAAE;IAClB,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IAClC,IAAI,CAAC,GAAG,EAAE;QACT,MAAM,IAAI,KAAK,CAAC,uCAAuC,SAAS,GAAG,CAAC,CAAC;KACrE;IACD,MAAM,OAAO,CAAC,GAAG,CAChB,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QAC5B,IAAI,CAAC,IAAA,6BAAc,EAAC,IAAI,EAAE,OAAO,CAAC,EAAE;YAEnC,OAAO;SACP;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,oCAAqB,EACzC;YACC,UAAU,EAAE,SAAS;YAUrB,UAAU,EAAE,mBAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAQ;YAC9D,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,UAAE,CAAC,MAAM;SACjB,EACD,IAAI,CAAC,QAAQ,CACb,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAErD,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE;YACxC,MAAM,IAAI,4BAAmB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;SACtD;IACF,CAAC,CAAC,CACF,CAAC;AACH,CAAC,CAAC;AAlDW,QAAA,aAAa,iBAkDxB;AAEK,MAAM,eAAe,GAAG,CAAC,OAAe,EAAW,EAAE,CAC3D,IAAA,8BAAa,EAAC,SAAS,EAAE,yCAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAClE,yCAAkB,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,CAC/C,CAAC;AAHU,QAAA,eAAe,mBAGzB;AAEI,MAAM,wBAAwB,GAAG,CACvC,OAAgB,EACuB,EAAE,CACzC,IAAA,8BAAa,EACZ,kBAAkB,EAClB,+BAA+B,EAC/B,OAAO,EACP,GAAG,EAAE,CAAC,wBAAwB,CAAC,OAAO,EAAE,SAAS,CAAC,CAClD,CAAC;AARU,QAAA,wBAAwB,4BAQlC;AAEI,MAAM,gBAAgB,GAAG,CAC/B,WAAiD,EACjD,oBAAiD,EAClB,EAAE,CACjC,IAAA,8BAAa,EACZ,UAAU,EACV,sBAA0B,GAAG,GAAG,GAAG,oBAAoB,EACvD,WAAW,EACX,GAAG,EAAE,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,CAC1E,CAAC;AATU,QAAA,gBAAgB,oBAS1B;AAUH,SAAgB,cAAc,CAC7B,KAAsB,EACtB,oBAAiD;IAEjD,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;IAC3E,IAAI,EAAE,WAAW,EAAE,gBAAgB,EAAE,GAAG,KAAK,CAAC;IAE9C,IAAI,EAAkD,CAAC;IACvD,IAAI,EAAE,EAAE;QACP,IAAI;YACH,EAAE,GAAG,IAAA,uBAAe,EAAC,EAAE,CAAC,CAAC;SACzB;QAAC,OAAO,CAAC,EAAE;YACX,OAAO,CAAC,KAAK,CAAC,wBAAwB,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;YACpD,MAAM,IAAI,KAAK,CAAC,wBAAwB,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC;SACxD;QAED,IAAI;YACH,gBAAgB,GAAG,IAAA,gCAAwB,EAAC,EAAE,CAAC,CAAC;SAChD;QAAC,OAAO,CAAC,EAAE;YACX,OAAO,CAAC,KAAK,CAAC,4BAA4B,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,4BAA4B,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC;SAC5D;KACD;IACD,MAAM,WAAW,GAAG,gBAAiB,CAAC;IAEtC,MAAM,aAAa,GAAG,IAAA,8BAAa,EAClC,UAAU,EACV,gDAAqB,CAAC,OAAO,EAC7B,EAAE,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,EACxC,GAAG,EAAE,CAAC,IAAA,gDAAqB,EAAC,KAAK,EAAE,WAAW,CAAC,CAC/C,CAAC;IAEF,IAAI,GAA6C,CAAC;IAClD,IAAI,eAAyE,CAAC;IAE9E,IAAI,WAAW,IAAI,IAAI,EAAE;QACxB,eAAe,GAAG,IAAA,wCAAyB,EAC1C,WAAW,EACX,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,EAC/B,KAAK,CAAC,OAAO,EACb,WAAW,EACX,YAAY,CACZ,CAAC;KACF;SAAM;QACN,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE;YAE9D,WAAW,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;SAC7D;QACD,IAAI;YACH,GAAG,GAAG,IAAA,wBAAgB,EAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC;SAC1D;QAAC,OAAO,CAAC,EAAE;YACX,OAAO,CAAC,KAAK,CAAC,0BAA0B,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;YACtD,MAAM,IAAI,KAAK,CAAC,0BAA0B,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC;SAC1D;KACD;IAED,OAAO;QACN,KAAK;QACL,WAAW;QACX,eAAe;QACf,EAAE;QACF,EAAE;QACF,WAAW;QACX,GAAG;QACH,aAAa;KACb,CAAC;AACH,CAAC;AAlED,wCAkEC;AAEM,MAAM,YAAY,GAAG,CAC3B,EAAS,EACT,KAAsB,EACN,EAAE,CAAC,IAAA,qBAAa,EAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AAHlC,QAAA,YAAY,gBAGsB;AAExC,MAAM,aAAa,GAAG,KAAK,EACjC,EAAS,EACT,UAA6B,EACb,EAAE;IAClB,IAAI;QACH,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,GAAG,CACvC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAC9B,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;YAE1B,MAAM,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YAClC,MAAM,aAAa,GAAG,cAAc,CAAC,KAAK,EAAE,UAAE,CAAC,MAAM,CAAC,CAAC;YAEvD,IAAI,aAAa,CAAC,GAAG,EAAE;gBAGtB,KAAK,MAAM,eAAe,IAAI,aAAa,CAAC,GAAG,CAAC,YAAY,EAAE;oBAC7D,MAAM,OAAO,GAAG,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;oBAC/C,IAAI,UAAE,CAAC,MAAM,KAAK,QAAQ,EAAE;wBAC3B,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;4BACrB,OAAO,CAAC,IAAI,CACX,sGAAsG,EACtG,GAAG,CACH,CAAC;wBACH,CAAC,CAAC,CAAC;qBACH;oBACD,MAAM,OAAO,CAAC;iBACd;aACD;YACD,MAAM,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YAEtC,aAAa,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YACtD,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YAEtC,MAAM,QAAQ,GAAG,CAAC,OAAO,CAAC,CAAC;YAC3B,IAAI,aAAa,CAAC,WAAW,IAAI,IAAI,EAAE;gBACtC,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC;aAC7D;YACD,MAAM,CAAC,OAAO,CAAC,GAAG;gBACjB,GAAG,aAAa;gBAChB,QAAQ;aACR,CAAC;YAKF,IAAI,aAAa,CAAC,GAAG,EAAE;gBACtB,MAAM,IAAA,qBAAa,EAAC,EAAE,EAAE,OAAO,CAAC,CAAC;aACjC;YAGD,WAAG,CAAC,OAAO,CAAC,GAAG,IAAI,YAAY,CAAC,GAAG,GAAG,OAAO,GAAG,GAAG,CAAkB,CAAC;YACtE,WAAG,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;YACrC,IAAI,KAAK,CAAC,OAAO,IAAI,IAAI,EAAE;gBAC1B,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC;gBACtD,MAAM,EAAE,MAAM,EAAE,GAAG,WAAG,CAAC,OAAO,CAAC,CAAC;gBAChC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;oBAC3C,MAAM,GAAG,GAAG,CAAkB,CAAC;oBAC/B,IACC,GAAG,KAAK,SAAS;wBACjB,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,UAAU;wBACjC,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,IAAI,cAAc,CAAC,EACxC;wBACD,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;qBACrB;iBACD;aACD;YACD,OAAO,aAAa,CAAC;QAEtB,CAAC,CAAC,CACF,CAAC;QACF,MAAM,OAAO,CAAC,GAAG,CAChB,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,KAAoB,EAAE,EAAE;YACjD,MAAM,WAAW,GAAG,KAAK,EAAE,SAA8B,EAAE,EAAE;gBAC5D,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE;oBAC7B,OAAO,MAAM,WAAG,CAAC,GAAG,CAAC,MAAM,CAAC;wBAC3B,QAAQ,EAAE,OAAO;wBACjB,WAAW,EAAE;4BACZ,EAAE;4BACF,GAAG,EAAE,WAAW,CAAC,IAAI;yBACrB;wBACD,OAAO,EAAE;4BACR,OAAO,EAAE;gCACR,iBAAiB,EAAE,KAAK,CAAC,KAAK;gCAC9B,UAAU,EAAE,SAAS;6BACrB;yBACD;qBACD,CAAC,CAAC;iBACH;gBACD,MAAM,MAAM,GAAG,CAAC,MAAM,WAAG,CAAC,GAAG,CAAC,GAAG,CAAC;oBACjC,QAAQ,EAAE,OAAO;oBACjB,WAAW,EAAE;wBACZ,EAAE;wBACF,GAAG,EAAE,WAAW,CAAC,QAAQ;qBACzB;oBACD,OAAO,EAAE;wBACR,OAAO,EAAE,IAAI;wBACb,OAAO,EAAE;4BACR,iBAAiB,EAAE,KAAK,CAAC,KAAK;4BAC9B,UAAU,EAAE,SAAS;yBACrB;qBACD;iBACD,CAAC,CAA0B,CAAC;gBAE7B,IAAI,MAAM,GAAoB,MAAM,CAAC;gBACrC,IAAI,GAAG,GAAG,YAAY,CAAC;gBACvB,MAAM,IAAI,GAAc;oBACvB,iBAAiB,EAAE,KAAK,CAAC,KAAK;oBAC9B,WAAW,EACV,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,QAAQ;wBACnC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE;wBAC7B,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;oBACpB,UAAU,EAAE,SAAS;iBACrB,CAAC;gBACF,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;gBAC3B,IAAI,EAAE,IAAI,IAAI,EAAE;oBACf,GAAG,IAAI,GAAG,GAAG,EAAE,GAAG,GAAG,CAAC;oBACtB,MAAM,GAAG,OAAO,CAAC;oBACjB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;iBACb;qBAAM;oBACN,GAAG,IAAI,uBAAuB,CAAC;iBAC/B;gBAED,OAAO,MAAM,IAAA,cAAM,EAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;YAC9D,CAAC,CAAC;YAEF,MAAM,OAAO,CAAC,GAAG,CAChB,CAAC,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CACpE,CAAC;QACH,CAAC,CAAC,CACF,CAAC;QAEF,MAAM,OAAO,CAAC,GAAG,CAChB,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAC9B,MAAM,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACpC,CAAC,CAAC,CACF,CAAC;KACF;IAAC,OAAO,GAAQ,EAAE;QAClB,MAAM,OAAO,CAAC,GAAG,CAChB,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;YACpC,MAAM,YAAY,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC,CAAC,CACF,CAAC;QACF,MAAM,GAAG,CAAC;KACV;AACF,CAAC,CAAC;AAhJW,QAAA,aAAa,iBAgJxB;AAEF,MAAM,YAAY,GAAG,CAAC,KAAa,EAAE,EAAE;IACtC,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACrB,OAAO,WAAG,CAAC,KAAK,CAAC,CAAC;AACnB,CAAC,CAAC;AAEK,MAAM,WAAW,GAAG,KAAK,EAAE,UAAkB,EAAE,EAAE;IACvD,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IACnC,IAAI,GAAG,EAAE;QACR,MAAM,UAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YACjC,MAAM,cAAc,GAAwB,GAAG,CAAC,UAAU,CAAC,GAAG,CAC7D,CAAC,aAAa,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAC/C,CAAC;YACF,MAAM,OAAO,CAAC,GAAG,CAChB,cAAc,CAAC,MAAM,CAAC;gBACrB,WAAG,CAAC,GAAG,CAAC,MAAM,CAAC;oBACd,QAAQ,EAAE,OAAO;oBACjB,WAAW,EAAE;wBACZ,EAAE;wBACF,GAAG,EAAE,WAAW,CAAC,IAAI;qBACrB;oBACD,OAAO,EAAE;wBACR,OAAO,EAAE;4BACR,iBAAiB,EAAE,UAAU;yBAC7B;qBACD;iBACD,CAAC;aACF,CAAC,CACF,CAAC;QACH,CAAC,CAAC,CAAC;KACH;IACD,MAAM,YAAY,CAAC,UAAU,CAAC,CAAC;AAChC,CAAC,CAAC;AA1BW,QAAA,WAAW,eA0BtB;AAEF,MAAM,WAAW,GAAG,CACnB,CAAsC,EACD,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC;AAC1D,MAAM,YAAY,GAAG,CACpB,CAAsC,EACA,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC;AACrD,MAAM,KAAK,GAAG,CAAC,KAAa,EAAE,OAA+B,EAAE,EAAE;IACvE,IAAI,OAAO,CAAC,gBAAgB,IAAI,IAAI,EAAE;QACrC,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;KAC1E;IACD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC3E,KAAK,MAAM,WAAW,IAAI,OAAO,CAAC,gBAAgB,EAAE;QACnD,IAAI,WAAW,CAAC,WAAW,CAAC,EAAE;YAC7B,KAAK,MAAM,UAAU,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;gBAC9C,IAAI,YAAY,CAAC,UAAU,CAAC,EAAE;oBAC7B,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE;wBACjC,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;qBACxB;oBACD,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE;wBACjC,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;qBACxB;iBACD;aACD;SACD;KACD;IACD,OAAO,CAAC,CAAC;AACV,CAAC,CAAC;AApBW,QAAA,KAAK,SAoBhB;AAEW,QAAA,OAAO,GAAG,CAAC,GAAG,EAAE;IAC5B,MAAM,sBAAsB,GAAG,cAAc,CAAC,kBAAkB,CAAC,OAAO,CAAC;QACxE,uBAAuB;YACtB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACnB,CAAC;KACD,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,cAAc,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC;IAClE,UAAU,CAAC,QAAQ,CAAC,oBAAS,CAAC,CAAC;IAC/B,OAAO,KAAK,EAAE,KAAa,EAAE,IAAY,EAAE,EAAE;QAC5C,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QACjC,MAAM,EAAE,MAAM,EAAE,GAAG,WAAG,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,OAAgB,CAAC;QACrB,IAAI,QAAiB,CAAC;QACtB,IAAI,gBAAsD,CAAC;QAE3D,IAAI;YACH,OAAO,GAAG,yCAAkB,CAAC,QAAQ,CACpC,OAAO,GAAG,UAAU,GAAG,IAAI,EAC3B,SAAS,CACT,CAAC;SACF;QAAC,OAAO,CAAC,EAAE;YACX,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,sBAAsB,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;SACrD;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI;YACH,QAAQ,GAAG,cAAc,CAAC,kBAAkB,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YACvE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtB,QAAQ,GAAG,sBAAsB,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YAE7D,UAAU,CAAC,KAAK,EAAE,CAAC;YACnB,gBAAgB,GAAG,UAAU,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;SACzD;QAAC,OAAO,CAAC,EAAE;YACX,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAC9C,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;SACxD;QAED,MAAM,eAAe,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrC,IAAI,YAAoB,CAAC;QACzB,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,iBAAiB,EAAE;YAC1C,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACxC;aAAM;YACN,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACrC;QAED,IAAI,iBAAiB,GAAG,KAAK,CAAC;QAC9B,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAI,OAAO,IAAI,IAAI,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;SAC3C;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,CAGzD,CAAC;QACF,IACC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK;YACxB,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,QAAQ;YAC9B,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,aAAa,EACrC;YAED,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAChC,iBAAiB,GAAG,IAAI,CAAC;SACzB;aAAM,IACN,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,QAAQ;YAC3B,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,aAAa,EAClC;YAED,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC7B;aAAM;YACN,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;SAChD;QAED,MAAM,gBAAgB,GACrB,eAAe;YACf,CAAC,wBAAwB,EAAE,2BAA2B,CAAC,CAAC;QACzD,IAAI,gBAAgB,KAAK,iBAAiB,EAAE;YAE3C,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAC5B,CAAC,SAA+C,EAAE,EAAE;gBACnD,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE;oBAC7B,OAAO,SAAS,CAAC;iBACjB;gBACD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;oBACzB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;iBAChD;gBACD,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACzC,CAAC,CACD,CAAC;SACF;QAGD,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAC5B,CAAC,SAA+C,EAAE,EAAE;YACnD,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;gBAC9B,OAAO,SAAS,CAAC;aACjB;YACD,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QACxB,CAAC,CACD,CAAC;QACF,MAAM,YAAY,GAAG,mBAAmB,CAAC,UAAE,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC1E,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;YAChC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;SAC9C;QACD,MAAM,MAAM,GAAG,MAAM,IAAA,oCAAqB,EACzC;YACC,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,EAAuB;YACnC,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,UAAE,CAAC,MAAM;SACjB,EACD,YAAY,CAAC,QAAQ,CACrB,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,UAAE,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAE/D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC7D,MAAM,YAAY,GAAG,IAAA,0CAAkB,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QACvD,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClB,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,YAAY,GAAG,MAAM,GAAG,EAAE,CAAC,CAAC;QAClD,IAAI,MAAc,CAAC;QACnB,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;YACnB,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAC1B;aAAM;YACN,MAAM,GAAG,QAAQ,CAAC;SAClB;QACD,MAAM,WAAW,GAAG,CAAC,MAAM,IAAA,cAAM,EAChC,KAAK,EACL,GAAG;YACF,KAAK;YACL,GAAG;YACH,IAAA,0CAAkB,EAAC,KAAK,CAAC,YAAY,CAAC;YACtC,WAAW;YACX,MAAM,EACP,SAAS,EACT,SAAS,EACT,WAAW,CAAC,QAAQ,CACpB,CAAc,CAAC;QAEhB,WAAW,CAAC,iBAAiB,GAAG,eAAe,CAAC;QAChD,WAAW,CAAC,cAAc,GAAG,YAAY,CAAC;QAC1C,OAAO,WAAW,CAAC;IACpB,CAAC,CAAC;AACH,CAAC,CAAC,EAAE,CAAC;AASL,MAAa,YAAa,SAAQ,qCAA8B;IAGxD,KAAK,CAAC,QAAQ,CAAC,EACrB,MAAM,EACN,GAAG,EACH,IAAI,EACJ,EAAE,EACF,GAAG,EACH,MAAM,GAQN;QACA,OAAO,CAAC,MAAM,IAAA,cAAM,EAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,CAAO,CAAC;IACjE,CAAC;CACD;AApBD,oCAoBC;AAKY,QAAA,GAAG,GAEZ,EAAE,CAAC;AAGA,MAAM,MAAM,GAAG,KAAK,EAC1B,MAAc,EACd,GAAW,EACX,OAAkB,EAAE,EACpB,EAAU,EACV,GAA+B,EAC/B,MAAkB,EACY,EAAE;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACtC,IAAI,OAAO,IAAI,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE;QAC/C,MAAM,IAAI,6BAAoB,EAAE,CAAC;KACjC;IAED,IAAI,IAAsB,CAAC;IAC3B,IAAI,MAA0B,CAAC;IAE/B,IAAI,GAAG,IAAI,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC3C,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;QAChB,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;KACpB;SAAM;QACN,IAAI,GAAG,IAAI,IAAI,EAAE;YAChB,OAAO,CAAC,IAAI,CAAC,kCAAkC,EAAE,GAAG,EAAE,IAAI,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;SACzE;QACD,IAAI,GAAG;YACN,EAAE,EAAE,CAAC;YACL,KAAK,EAAE,CAAC;YACR,WAAW,EAAE,EAAE;SACf,CAAC;KACF;IAGD,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACxB,IAAI,CAAC,KAAK,SAAS,EAAE;YACpB,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;SACf;IACF,CAAC,CAAC,CAAC;IAEH,MAAM,WAAW,GAAoB;QACpC,EAAE,EAAE,CAAC,CAAC,IAAI;QACV,MAAM;QACN,IAAI;QACJ,MAAM;QACN,MAAM;QACN,GAAG,EAAE,GAAG;QACR,IAAI;QACJ,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,EAAE;QACT,EAAE;KACK,CAAC;IAET,MAAM,EAAE,OAAO,EAAE,GAAG,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAE1D,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC;IAEjC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QACxB,MAAM,QAAQ,CAAC;KACf;IAED,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,QAAoB,CAAC;IAErE,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,IAAI,GAAG,EAAE;QACpC,MAAM,UAAU,GACf,0BAAiB,CAAC,MAAwC,CAAC,CAAC;QAC7D,IAAI,UAAU,IAAI,IAAI,EAAE;YACvB,MAAM,IAAI,UAAU,CAAC,SAAS,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;SACvD;QACD,MAAM,IAAI,kBAAS,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;KAC9D;IAED,OAAO,YAAqC,CAAC;AAC9C,CAAC,CAAC;AAtEW,QAAA,MAAM,UAsEjB;AAEK,MAAM,mBAAmB,GAAG,CAClC,OAAwE,EACjC,EAAE;IACzC,OAAO,CAAC,OAAO,CAAC,gBAAgB,KAAK,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,CAAC;AAC9E,CAAC,CAAC;AAJW,QAAA,mBAAmB,uBAI9B;AAEF,MAAM,wBAAwB,GAAG,CAChC,OAGC,EACsC,EAAE;IACzC,MAAM,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAE,CAAC;IACtD,OAAO,CAAC,OAAO,CAAC,qBAAqB,KAAK,MAAM,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,CAAC;AAC3E,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAClB,OAOC,EACA,EAAE,CAEH,wBAAwB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAA,sBAAc,EAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;AAEpE,MAAM,cAAc,GAAG,KAAK,EAClC,IAEC,EACmB,EAAE;IACtB,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IACzB,IAAI,OAAO,CAAC,WAAW,EAAE;QACxB,OAAO,OAAO,CAAC,WAAW,CAAC;KAC3B;IAGD,IAAI,OAAO,CAAC,kBAAkB,IAAI,IAAI,EAAE;QACvC,OAAO,OAAO,CAAC,kBAAkB,CAAC;KAClC;IACD,OAAO,CAAC,kBAAkB,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IAGnD,OAAO,CAAC,WAAW,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC;IACvD,OAAO,OAAO,CAAC,kBAAkB,CAAC;IAElC,OAAO,OAAO,CAAC,WAAW,CAAC;AAC5B,CAAC,CAAC;AArBW,QAAA,cAAc,kBAqBzB;AAEF,MAAM,eAAe,GAAG,KAAK,EAAE,EAC9B,GAAG,EACH,OAAO,EACP,EAAE,GAGF,EAAqB,EAAE;IACvB,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QAIlD,MAAM,IAAI,KAAK,CACd,2DAA2D,CAC3D,CAAC;KACF;IAGD,MAAM,aAAa,GAElB,MAAM,SAAS,CAAC,UAAU,CAAC;QAC1B,EAAE,EAAE,OAAO,CAAC,EAAE;QACd,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,GAAG,EAAE,IAAI,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE;KAC3C,CAAC,CAAC;IAEJ,aAAa,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IACtC,aAAa,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAE5D,IAAI,eAAe,GAA2B,aAG7C,CAAC;IACF,MAAM,gBAAgB,GAAG,IAAA,2BAAmB,EAAC,eAAe,CAAC,CAAC;IAC9D,MAAM,YAAY,GAAG,IAAA,sBAAc,EAAC,eAAe,CAAC,CAAC;IACrD,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC5D,IAAI,aAAa,IAAI,IAAI,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,eAAe,CAAC,YAAY,CAAC,CAAC;KACrE;IACD,MAAM,EAAE,OAAO,EAAE,GAAG,aAAa,CAAC;IAElC,eAAe,CAAC,UAAU,CAAC,OAAO,KAAK,EAAE,CAAC;IAC1C,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,GAAG;QAC5C,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;KAC/B,CAAC;IAGF,OAAO,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC;IAElD,MAAM,WAAW,CAAC,cAAc,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;IAEvD,eAAe,CAAC,MAAM,GAAG,KAAK,CAAC;IAE/B,eAAe,GAAG,SAAS,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;IAC1D,eAAe,GAAG,IAAA,6BAAc,EAAC,eAAe,CAAC,CAAC;IAElD,IAAI,MAAM,CAAC;IACX,IAAI,EAAE,IAAI,IAAI,EAAE;QACf,MAAM,GAAG,MAAM,QAAQ,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;KAC7C;SAAM;QACN,MAAM,GAAG,MAAM,cAAc,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE,CAC7D,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC,CAChC,CAAC;KACF;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;AAC/C,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,GAAoB,EAAE,UAAkB,EAAE,EAAE;IACpE,IAAI,YAAG,CAAC,KAAK,EAAE;QACd,WAAG,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;KAC3D;IAED,IAAI,GAAG,CAAC,GAAG,KAAK,IAAI,UAAU,SAAS,EAAE;QACxC,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,IAAiD,CAAC;QAC3E,GAAG,CAAC,KAAK,GAAG,QAAQ,CAAC;QACrB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC7B,MAAM,IAAI,wBAAe,CACxB,0FAA0F,CAC1F,CAAC;SACF;QACD,IAAI,GAAG,CAAC,OAAO,IAAI,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,IAAI,EAAE;YAC/D,MAAM,IAAI,wBAAe,CACxB,sFAAsF,CACtF,CAAC;SACF;QACD,MAAM,GAAG,GAAG,IAAI,GAAG,CAClB,QAAQ;aACN,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;aAC5B,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,KAAK,QAAQ,CAAa,CACpD,CAAC;QACF,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,MAAM,EAAE;YACjC,MAAM,IAAI,wBAAe,CACxB,6DAA6D,CAC7D,CAAC;SACF;QAED,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;YAC/B,IACC,OAAO,CAAC,OAAO,IAAI,IAAI;gBACvB,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,IAAI;gBACvC,CAAC,GAAG,CAAC,OAAO,IAAI,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,EAC3D;gBACD,MAAM,IAAI,wBAAe,CACxB,oFAAoF,CACpF,CAAC;aACF;YACD,IAAI,OAAO,CAAC,MAAM,IAAI,IAAI,EAAE;gBAC3B,MAAM,IAAI,wBAAe,CACxB,kDAAkD,CAClD,CAAC;aACF;YACD,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YACrD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE;gBAC5C,MAAM,IAAI,wBAAe,CACxB,iFAAiF,KAAK,CAAC,IAAI,CAC1F,iBAAiB,CACjB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACd,CAAC;aACF;YACD,IACC,OAAO,CAAC,IAAI,KAAK,SAAS;gBAC1B,CAAC,eAAe,KAAK,KAAK,IAAI,eAAe,KAAK,QAAQ,CAAC,EAC1D;gBACD,MAAM,IAAI,wBAAe,CACxB,iEAAiE,CACjE,CAAC;aACF;SACD;QAED,MAAM,IAAI,GAAG,IAAI,GAAG,CACnB,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CACtC,CAAC;QACF,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;YACxB,MAAM,IAAI,wBAAe,CACxB,+CAA+C,CAC/C,CAAC;SACF;QACD,IAAI,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE;YACnC,MAAM,IAAI,wBAAe,CAAC,8CAA8C,CAAC,CAAC;SAC1E;QACD,MAAM,SAAS,GAAG,IAAI,GAAG,CACxB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CACjE,CAAC;QACF,IAAI,SAAS,CAAC,IAAI,GAAG,CAAC,EAAE;YACvB,MAAM,IAAI,wBAAe,CACxB,4DAA4D,CAC5D,CAAC;SACF;KACD;IAID,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAA+B,EAAE,CAAC;QACvE,OAAO;QACP,IAAA,gBAAQ,EACP;YACC,MAAM,EAAE,GAAG,CAAC,MAAyB;YACrC,UAAU,EAAE,OAAO;SACnB,EAED,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CACvB;KACD,CAAC,CAAC;IAEH,MAAM,YAAY,GAAY,EAAE,CAAC;IACjC,MAAM,gBAAgB,GAAG,GAAG,EAAE;QAC7B,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YACjC,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAE;gBAClB,OAAO;aACP;YACD,IAAI;gBACH,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;aACpB;YAAC,MAAM;aAEP;QACF,CAAC,CAAC,CAAC;QAEH,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;QACxB,IAAA,4BAAoB,EAAC,QAAQ,CAAC,CAAC;IAChC,CAAC,CAAC;IAEF,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAElC,IAAI,GAAG,CAAC,EAAE,IAAI,IAAI,EAAE;QACnB,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1B,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;KACxC;IAED,MAAM,SAAS,GAAG,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAExD,OAAO;QACN,gBAAgB;QAChB,OAAO,EAAE,CAAC,KAAK,IAAuD,EAAE;YACvE,MAAM,IAAA,gBAAQ,EAAC,UAAU,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1D,IAAI,QAAqC,CAAC;YAE1C,IAAI,GAAG,CAAC,GAAG,KAAK,IAAI,UAAU,SAAS,EAAE;gBACxC,QAAQ,GAAG,GAAG,CAAC,KAAM,CAAC;aACtB;iBAAM;gBACN,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC;gBAClC,QAAQ,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;aACnC;YAED,MAAM,cAAc,GAAG,KAAK,EAC3B,aACsE,EACpC,EAAE;gBACpC,aAAa,CAAC,MAAM,GAAG,UAAE,CAAC,MAAM,CAAC;gBACjC,aAAa,CAAC,iBAAiB,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;gBAEhD,MAAM,QAAQ,GAA2B,aAGxC,CAAC;gBAEF,IAAI;oBACH,QAAQ,CAAC,KAAK,GAAG,EAAE,CAAC;oBACpB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;wBAG/B,MAAM,KAAK,GAAgC;4BAC1C,OAAO;4BACP,IAAA,gBAAQ,EACP;gCACC,YAAY,EAAE,QAAQ,CAAC,YAAY;gCACnC,UAAU,EAAE,OAAO;gCACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;6BACvB,EAED,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CACvB;yBACD,CAAC;wBACF,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBAC3B,MAAM,IAAA,gBAAQ,EAAC,WAAW,EAAE,CAAC,KAAK,CAAC,EAAE;4BACpC,GAAG;4BACH,OAAO,EAAE,QAAQ;4BACjB,EAAE,EAAE,GAAG,CAAC,EAAE;yBACV,CAAC,CAAC;wBACH,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;wBAC5C,IAAI,eAAe,EAAE;4BACpB,MAAM,YAAY,GAAG,IAAA,sBAAc,EAAC,QAAQ,CAAC,CAAC;4BAC9C,IAAI,eAAe,CAAC,YAAY,CAAC,EAAE;gCAClC,QAAQ,CAAC,YAAY,GAAG,IAAA,0CAAkB,EACzC,eAAe,CAAC,YAAY,CAAC,CAC7B,CAAC;6BACF;yBACD;qBACD;oBACD,MAAM,iBAAiB,GAAG,MAAM,SAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;oBACjE,OAAO,MAAM,IAAA,6BAAc,EAAC,iBAAiB,CAAC,CAAC;iBAC/C;gBAAC,OAAO,GAAQ,EAAE;oBAClB,IAAA,4BAAoB,EAAC,QAAQ,CAAC,CAAC;oBAC/B,IAAA,4BAAoB,EAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;oBACrC,MAAM,GAAG,CAAC;iBACV;YACF,CAAC,CAAC;YAGF,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE;gBAC/D,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,UAAU,CAC/C,WAAW,EACX,GAAG,CAAC,OAAO,CACX,CAAC;gBAEF,IAAI,OAA0D,CAAC;gBAC/D,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;oBACjC,OAAO,GAAG,MAAM,WAAW,CAAC,SAAS,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;iBACrE;qBAAM;oBACN,OAAO,GAAG,MAAM,cAAc,CAAC,aAAa,CAAC,CAAC;iBAC9C;gBAED,OAAO,MAAM,cAAc,CAC1B,GAAG,EACH,OAAO,EACP,KAAK,EAAE,EAAE,EAAE,EAAE;oBACZ,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACtB,EAAE,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE;wBACtB,IAAA,4BAAoB,EAAC,QAAQ,CAAC,CAAC;wBAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;4BAC3B,KAAK,MAAM,EAAE,KAAK,EAAE,IAAI,OAAO,EAAE;gCAChC,IAAA,4BAAoB,EAAC,KAAK,CAAC,CAAC;6BAC5B;yBACD;6BAAM;4BACN,IAAA,4BAAoB,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC;yBACpC;oBACF,CAAC,CAAC,CAAC;oBACH,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;wBAC3B,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAoB,CAAC;wBACrD,MAAM,eAAe,GAAG,YAAY,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;wBAC9C,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE;4BACxB,MAAM,eAAe,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;yBAC3C;wBACD,OAAO,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC;qBAC7C;yBAAM;wBACN,OAAO,MAAM,UAAU,CAAC,GAAG,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;qBAC1C;gBACF,CAAC,CACD,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAC5B,CAAC,MAAM,EAAqC,EAAE;gBAC7C,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;oBACtB,OAAO,kBAAkB,CAAC,MAAM,CAAC,CAAC;iBAClC;qBAAM;oBACN,IACC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;wBACtB,MAAM,CAAC,IAAI,IAAI,IAAI;wBACnB,MAAM,CAAC,MAAM,IAAI,IAAI,EACpB;wBACD,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;wBAC3D,OAAO,IAAI,6BAAoB,EAAE,CAAC;qBAClC;oBACD,OAAO,MAAM,CAAC;iBACd;YACF,CAAC,CACD,CAAC;YACF,OAAO,SAAS,CAAC;QAClB,CAAC,CAAC,EAAE;KACJ,CAAC;AACH,CAAC,CAAC;AAEK,MAAM,kBAAkB,GAAoB,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;IAC3E,MAAM,CAAC,EAAE,OAAO,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IAC1C,IAAI,OAAO,IAAI,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE;QAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;KACrB;IAED,IAAI;QACH,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,GAAG,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAEpE,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QAElC,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC;QAEhC,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;QAErC,IAAI,GAAG,CAAC,KAAK,IAAI,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YAChD,IAAI,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;YAC3B,IAAI,QAAQ,YAAY,kBAAS,EAAE;gBAClC,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;aACzC;YACD,cAAc,CAAC,GAAG,EAAE,QAAoB,CAAC,CAAC;SAG1C;aAAM;YACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACpB,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;oBACrC,IAAI,QAAQ,YAAY,kBAAS,EAAE;wBAClC,OAAO,mBAAmB,CAAC,QAAQ,CAAC,CAAC;qBACrC;yBAAM;wBACN,OAAO,QAAQ,CAAC;qBAChB;gBACF,CAAC,CAAC;aACF,CAAC,CAAC;SACH;KACD;IAAC,OAAO,CAAM,EAAE;QAChB,IAAI,IAAA,wBAAgB,EAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE;YAClC,OAAO;SACP;QAGD,OAAO,CAAC,KAAK,CAAC,mDAAmD,EAAE,CAAC,CAAC,CAAC;QACtE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;KACtB;AACF,CAAC,CAAC;AA3CW,QAAA,kBAAkB,sBA2C7B;AAEF,MAAM,cAAc,GACnB,EAAE,CAAC;AACG,MAAM,iBAAiB,GAAG,CAAC,EAAmC,EAAE,EAAE;IACxE,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACzB,CAAC,CAAC;AAFW,QAAA,iBAAiB,qBAE5B;AACK,MAAM,gBAAgB,GAAG,CAC/B,GAAoB,EACpB,GAAqB,EACrB,GAAU,EACA,EAAE;IACZ,IAAI,GAAG,YAAY,kBAAS,EAAE;QAC7B,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE;YAC3C,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;SACxB;QACD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC/C,cAAc,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC;KACZ;IACD,OAAO,KAAK,CAAC;AACd,CAAC,CAAC;AAdW,QAAA,gBAAgB,oBAc3B;AACF,MAAM,cAAc,GAAG,CAAC,GAAqB,EAAE,QAAkB,EAAQ,EAAE;IAC1E,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,QAAoB,CAAC;IACvD,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACjB,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnB,IAAI,CAAC,IAAI,EAAE;QACV,GAAG,CAAC,GAAG,EAAE,CAAC;KACV;SAAM;QACN,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACf;AACF,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAC3B,GAAc,EACd,GAAqB,EACe,EAAE;IACtC,MAAM,OAAO,GAAG,GAAG,CAAC,eAAe,EAAE,CAAC;IACtC,OAAO;QACN,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,IAAI,EAAE,GAAG,IAAI,IAAI,IAAI,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO;QAC1E,OAAO,EAAE,GAAG,CAAC,OAAO;KACpB,CAAC;AACH,CAAC,CAAC;AAGF,MAAM,kBAAkB,GAAG,CAAC,GAAQ,EAAa,EAAE;IAClD,IAAI,GAAG,YAAY,kBAAS,EAAE;QAC7B,OAAO,GAAG,CAAC;KACX;IACD,IAAI,GAAG,YAAY,4BAAmB,EAAE;QACvC,OAAO,IAAI,wBAAe,CAAC,GAAG,CAAC,CAAC;KAChC;IACD,IAAI,GAAG,YAAY,wBAAe,EAAE;QACnC,OAAO,IAAI,0BAAiB,CAAC,GAAG,CAAC,CAAC;KAClC;IACD,IAAI,GAAG,YAAY,UAAE,CAAC,eAAe,EAAE;QACtC,OAAO,IAAI,sBAAa,CAAC,GAAG,CAAC,CAAC;KAC9B;IACD,IACC,GAAG,YAAY,4BAAmB;QAClC,GAAG,YAAY,yBAAgB;QAC/B,GAAG,YAAY,qBAAY;QAC3B,GAAG,YAAY,+BAAsB;QACrC,GAAG,YAAY,UAAE,CAAC,aAAa,EAC9B;QACD,OAAO,IAAI,6BAAoB,EAAE,CAAC;KAClC;IAED,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,GAAG,CAAC,CAAC;IACrD,OAAO,IAAI,sBAAa,CAAC,GAAG,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,KAAK,EACvB,GAAoB,EACpB,EAAS,EACT,OAA+B,EACX,EAAE;IACtB,MAAM,EAAE,MAAM,EAAE,GAAG,WAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAE3C,IAAI,YAAG,CAAC,KAAK,EAAE;QACd,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;KAC3C;IACD,IAAI,MAAsC,CAAC;IAE3C,IAAI;QACH,IAAI;YAEH,MAAM,IAAA,gBAAQ,EAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;YAE9D,QAAQ,OAAO,CAAC,MAAM,EAAE;gBACvB,KAAK,KAAK;oBACT,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;oBACxC,MAAM;gBACP,KAAK,MAAM;oBACV,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;oBACzC,MAAM;gBACP,KAAK,KAAK,CAAC;gBACX,KAAK,OAAO,CAAC;gBACb,KAAK,OAAO;oBACX,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;oBACxC,MAAM;gBACP,KAAK,QAAQ;oBACZ,MAAM,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;oBAC3C,MAAM;aACP;SACD;QAAC,OAAO,GAAQ,EAAE;YAClB,IAAI,GAAG,YAAY,UAAE,CAAC,aAAa,EAAE;gBACpC,uBAAuB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;gBACtC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAElB,GAAG,CAAC,OAAO,GAAG,gBAAgB,CAAC;gBAC/B,MAAM,GAAG,CAAC;aACV;YACD,IACC,GAAG,YAAY,SAAS,CAAC,WAAW;gBACpC,GAAG,YAAY,SAAS;gBACxB,GAAG,YAAY,UAAU;gBACzB,GAAG,YAAY,cAAc;gBAC7B,GAAG,YAAY,WAAW;gBAC1B,GAAG,YAAY,SAAS;gBACxB,GAAG,YAAY,QAAQ,EACtB;gBACD,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAClB,MAAM,IAAI,6BAAoB,EAAE,CAAC;aACjC;YACD,MAAM,GAAG,CAAC;SACV;QAED,MAAM,IAAA,gBAAQ,EAAC,SAAS,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;KACvE;IAAC,OAAO,GAAQ,EAAE;QAClB,MAAM,IAAA,gBAAQ,EAAC,eAAe,EAAE,OAAO,CAAC,KAAK,EAAE;YAC9C,GAAG;YACH,OAAO;YACP,EAAE;YACF,KAAK,EAAE,GAAG;SACV,CAAC,CAAC;QACH,MAAM,GAAG,CAAC;KACV;IACD,OAAO,MAAM,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;AACxD,CAAC,CAAC;AAEF,MAAM,YAAY,GACjB,CAAC,GAAoB,EAAE,EAAS,EAAE,EAAE,CACpC,KAAK,EACJ,gBAAuC,EACvC,OAA+B,EACf,EAAE;IAClB,OAAO,GAAG,WAAW,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;IAClD,IAAI,OAAO,CAAC,EAAE,IAAI,IAAI,EAAE;QACvB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;KACjC;IACD,MAAM,CAAC,OAAO,KAAK,EAAE,CAAC;IACtB,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC;IAC1C,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;AAC1C,CAAC,CAAC;AAMH,MAAM,WAAW,GAAG,CACnB,gBAAuC,EACvC,OAA+B,EAC9B,EAAE;IACH,IAAI,OAAO,CAAC,MAAM,EAAE;QACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACnD,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACxC,IAAI,GAAG,KAAK,kBAAkB,EAAE;gBAC/B,MAAM,GAAG,GAAG,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACrC,IACC,GAAG,EAAE,IAAI,IAAI,IAAI;oBACjB,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ;oBAC5B,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,SAAS,EACxB;oBACD,MAAM,IAAI,wBAAe,CACxB,mDAAmD,CACnD,CAAC;iBACF;gBACD,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aACvD;SACD;KACD;IACD,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,KAAK,EAC5B,GAAoB,EACpB,OAA+B,EAC/B,MAAW,EACX,EAAS,EACW,EAAE;IACtB,QAAQ,OAAO,CAAC,MAAM,EAAE;QACvB,KAAK,KAAK;YACT,OAAO,MAAM,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QACnD,KAAK,MAAM;YACV,OAAO,MAAM,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QACpD,KAAK,KAAK,CAAC;QACX,KAAK,OAAO,CAAC;QACb,KAAK,OAAO;YACX,OAAO,MAAM,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QACnD,KAAK,QAAQ;YACZ,OAAO,MAAM,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QACtD,KAAK,SAAS;YACb,OAAO,MAAM,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QACvD;YACC,MAAM,IAAI,8BAAqB,EAAE,CAAC;KACnC;AACF,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAC,OAA+B,EAAE,EAAE;IACjE,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK,EAAE;QAE7B,OAAO,KAAK,CAAC;KACb;IACD,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAC1B,IAAI,KAAK,IAAI,IAAI,EAAE;QAElB,OAAO,IAAI,CAAC;KACZ;IAED,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,EAAE,EAAE,CACzC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,EAAE;QACrD,OAAO,CACN,aAAa,IAAI,IAAI,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CACvE,CAAC;IACH,CAAC,CAAC,CACF,CAAC;AACH,CAAC,CAAC;AAGF,MAAM,cAAc,GAAG,KAAK,EAC3B,GAAY,EACZ,OAA0D,EAC1D,QAAmC,EACtB,EAAE;IACf,IAAI,GAAG,CAAC,EAAE,IAAI,IAAI,EAAE;QAEnB,OAAO,MAAM,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;KAC9B;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QAC3B,IAAI,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,EAAE;YACzC,OAAO,MAAM,UAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;SAC1C;KACD;SAAM,IAAI,qBAAqB,CAAC,OAAO,CAAC,EAAE;QAC1C,OAAO,MAAM,UAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;KAC1C;IAED,OAAO,MAAM,UAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC;AAGF,MAAM,QAAQ,GAAG,KAAK,EACrB,EAAS,EACT,OAA+B,EAC/B,UAAmB,EACnB,eAAwB,KAAK,EACR,EAAE;IACvB,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IAC/B,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAC3B,IAAI,QAAQ,IAAI,IAAI,EAAE;QACrB,MAAM,IAAI,6BAAoB,CAAC,+BAA+B,CAAC,CAAC;KAChE;IACD,IAAI,OAAO,CAAC,MAAM,IAAI,IAAI,EAAE;QAC3B,MAAM,IAAI,6BAAoB,CAAC,8BAA8B,CAAC,CAAC;KAC/D;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAC5B,IAAI,UAAU,IAAI,IAAI,EAAE;YACvB,MAAM,IAAI,6BAAoB,CAC7B,6DAA6D,CAC7D,CAAC;SACF;QACD,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;KAChC;IAED,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC;IACrC,MAAM,MAAM,GAAG,MAAM,IAAA,oCAAqB,EACzC,OAAkD,EAClD,QAAQ,CACR,CAAC;IAEF,IAAI,YAAG,CAAC,KAAK,EAAE;QACd,WAAG,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;KAC1C;IAGD,MAAM,gBAAgB,GACrB,YAAY,IAAI,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAE3E,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAEvE,IAAI,gBAAgB,EAAE;QACrB,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC;KAC3E;IAED,OAAO,SAAS,CAAC;AAClB,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,KAAK,EACnB,IAAqB,EACrB,OAA+B,EAC/B,EAAS,EACR,EAAE;IACH,IAAI,OAAO,CAAC,QAAQ,IAAI,IAAI,EAAE;QAC7B,OAAO,MAAM,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;KACnC;AACF,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,KAAK,EACvB,GAAoB,EACpB,OAA+B,EAC/B,MAAW,EACX,EAAS,EACW,EAAE;IACtB,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC;IACjC,IAAI,OAAO,CAAC,QAAQ,IAAI,IAAI,EAAE;QAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC;QACnD,MAAM,QAAQ,GACb,MAAM,IAAI,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ;YAC3C,CAAC,CAAC,MAAM,CAAC,QAAQ;YACjB,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,CAAC,GAAG,MAAM,aAAa,CAAC,OAAO,CACpC,KAAK,EACL,IAAA,2BAAmB,EAAC,OAAO,CAAC,EAC5B,OAAO,CAAC,oBAAoB,EAC5B,MAAM,CAAC,IAAI,EACX,EAAE,eAAe,EAAE,QAAQ,KAAK,MAAM,EAAE,CACxC,CAAC;QAEF,MAAM,QAAQ,GAAG;YAChB,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,MAAM,EAAE,GAAG;YACX,IAAI,EAAE,EAAE,CAAC,EAAE;YACX,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;SAC/C,CAAC;QACF,MAAM,IAAA,gBAAQ,EAAC,YAAY,EAAE,OAAO,CAAC,KAAK,EAAE;YAC3C,GAAG;YACH,OAAO;YACP,MAAM;YACN,QAAQ;YACR,EAAE;SACF,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC;KAChB;SAAM;QACN,IAAI,OAAO,CAAC,YAAY,KAAK,WAAW,EAAE;YACzC,OAAO;gBACN,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,MAAM,EAAE,GAAG;gBACX,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,aAAa;gBACjC,OAAO,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE;aAClC,CAAC;SACF;aAAM;YAEN,OAAO;gBACN,MAAM,EAAE,GAAG;aACX,CAAC;SACF;KACD;AACF,CAAC,CAAC;AAEF,MAAM,OAAO,GAAG,KAAK,EACpB,IAAqB,EACrB,OAA+B,EAC/B,EAAS,EACqB,EAAE;IAChC,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,MAAM,QAAQ,CAChD,EAAE,EACF,OAAO,EACP,SAAS,EACT,IAAI,CACJ,CAAC;IACF,IAAI,YAAY,KAAK,CAAC,EAAE;QACvB,MAAM,IAAI,wBAAe,EAAE,CAAC;KAC5B;IACD,MAAM,IAAA,qBAAa,EAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAE,EAAE,OAAO,CAAC,CAAC;IAErE,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,KAAK,EACxB,GAAoB,EACpB,OAA+B,EAC/B,EAAU,EACV,EAAS,EACW,EAAE;IACtB,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC;IACjC,MAAM,QAAQ,GAAG,aAAa,CAAC,WAAW,CACzC,KAAK,EACL,OAAO,CAAC,oBAAoB,EAC5B,EAAE,CACF,CAAC;IACF,IAAI,YAAG,CAAC,KAAK,EAAE;QACd,WAAG,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;KAC/D;IAED,IAAI,MAAM,GAAc,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;IACxC,IACC,QAAQ,IAAI,IAAI;QAChB,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,QAAQ,CACvB,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,cAAwB,CACtD,EACA;QACD,IAAI;YACH,MAAM,GAAG,CAAC,MAAM,IAAA,cAAM,EAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,CAAC,CAAc,CAAC;SAC1E;QAAC,MAAM;SAEP;KACD;IAED,MAAM,QAAQ,GAAG;QAChB,MAAM,EAAE,GAAG;QACX,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACjB,OAAO,EAAE;YACR,cAAc,EAAE,kBAAkB;YAClC,QAAQ;SACR;KACD,CAAC;IACF,MAAM,IAAA,gBAAQ,EAAC,YAAY,EAAE,OAAO,CAAC,KAAK,EAAE;QAC3C,GAAG;QACH,OAAO;QACP,MAAM;QACN,QAAQ;QACR,EAAE;KACF,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,KAAK,EACnB,IAAqB,EACrB,OAA+B,EAC/B,EAAS,EACY,EAAE;IACvB,IAAI,YAAoB,CAAC;IAEzB,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAEpC,CAAC,EAAE,YAAY,EAAE,GAAG,MAAM,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;QAC1D,IAAI,YAAY,KAAK,CAAC,EAAE;YAEvB,CAAC,EAAE,YAAY,EAAE,GAAG,MAAM,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;SAC1D;KACD;SAAM;QACN,CAAC,EAAE,YAAY,EAAE,GAAG,MAAM,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;KAClE;IACD,IAAI,YAAY,GAAG,CAAC,EAAE;QACrB,MAAM,IAAA,qBAAa,EAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAE,EAAE,OAAO,CAAC,CAAC;KACrE;IACD,OAAO,SAAS,CAAC;AAClB,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,KAAK,EACvB,GAAoB,EACpB,OAA+B,EAC/B,MAAW,EACX,EAAS,EACW,EAAE;IACtB,MAAM,QAAQ,GAAG;QAChB,MAAM,EAAE,GAAG;KACX,CAAC;IACF,MAAM,IAAA,gBAAQ,EAAC,YAAY,EAAE,OAAO,CAAC,KAAK,EAAE;QAC3C,GAAG;QACH,OAAO;QACP,MAAM;QACN,QAAQ;QACR,EAAE;KACF,CAAC,CAAC;IACH,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AACF,MAAM,aAAa,GAAG,UAAU,CAAC;AACjC,MAAM,cAAc,GAAG,UAAU,CAAC;AAElC,MAAM,SAAS,GAAG,KAAK,EACtB,IAAqB,EACrB,OAA+B,EAC/B,EAAS,EACY,EAAE;IACvB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IACtE,IAAI,YAAY,GAAG,CAAC,EAAE;QACrB,MAAM,IAAA,qBAAa,EAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAE,EAAE,OAAO,CAAC,CAAC;KACrE;IAED,OAAO,SAAS,CAAC;AAClB,CAAC,CAAC;AAEK,MAAM,qBAAqB,GAAG,KAAK,EAAE,EAAS,EAAiB,EAAE;IACvE,IAAI;QAEH,MAAM,IAAA,oBAAY,EAAC,EAAE,EAAE;YACtB,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,QAAQ;YACnB,OAAO,EAAE;gBACR,GAAG,EAAE,KAAK;aACV;YACD,UAAU,EAAE;gBACX,oBAAoB,EAAE;;;KAGrB;gBACD,mBAAmB,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;oBAC7C,QAAQ,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE;wBAC5B,KAAK,OAAO;4BACX,MAAM,GAAG,CAAC,UAAU,CAAC;;;;;;;mDAOuB,CAAC,CAAC;4BAC9C,MAAM;wBACP,KAAK,UAAU;4BACd,MAAM,GAAG,CAAC,UAAU,CAAC;;;;;;;mDAOuB,CAAC,CAAC;4BAC9C,MAAM;qBAEP;gBACF,CAAC;aACD;SACD,CAAC,CAAC;QACH,MAAM,IAAA,qBAAa,EAAC,EAAE,EAAE,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACnD,OAAO,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;KACvD;IAAC,OAAO,GAAQ,EAAE;QAClB,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,GAAG,CAAC,CAAC;QACzD,MAAM,GAAG,CAAC;KACV;AACF,CAAC,CAAC;AA/CW,QAAA,qBAAqB,yBA+ChC;AAEK,MAAM,KAAK,GAAG,KAAK,EACzB,IAAyB,EACzB,GAAgB,EACA,EAAE;IAClB,OAAO,CAAC,EAAE,GAAG,UAAE,GAAG,GAAG,CAAC;IACtB,IAAI;QACH,MAAM,UAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YACjC,MAAM,IAAA,6BAAqB,EAAC,EAAE,CAAC,CAAC;YAChC,MAAM,WAAW,CAAC,KAAK,EAAE,CAAC;QAC3B,CAAC,CAAC,CAAC;KACH;IAAC,OAAO,GAAQ,EAAE;QAClB,OAAO,CAAC,KAAK,CAAC,mCAAmC,EAAE,GAAG,CAAC,CAAC;QACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KAChB;IACD,IAAI;QACH,MAAM,UAAE,CAAC,UAAU,CAClB,kGAAkG,CAClG,CAAC;KACF;IAAC,MAAM;KAEP;AACF,CAAC,CAAC;AArBW,QAAA,KAAK,SAqBhB"}
1
+ {"version":3,"file":"sbvr-utils.js","sourceRoot":"","sources":["../../src/sbvr-api/sbvr-utils.ts"],"names":[],"mappings":"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"}
@@ -11,10 +11,9 @@ export { BadRequestError, ParsingError, TranslationError } from './errors';
11
11
  import * as sbvrUtils from './sbvr-utils';
12
12
  export type OdataBinds = ODataBinds;
13
13
  export interface UnparsedRequest {
14
- id?: string;
15
14
  method: string;
16
15
  url: string;
17
- body?: any;
16
+ data?: any;
18
17
  headers?: {
19
18
  [header: string]: string;
20
19
  };
@@ -22,9 +21,6 @@ export interface UnparsedRequest {
22
21
  _isChangeSet?: boolean;
23
22
  }
24
23
  export interface ParsedODataRequest {
25
- headers?: {
26
- [key: string]: string | string[] | undefined;
27
- };
28
24
  method: SupportedMethod;
29
25
  url: string;
30
26
  vocabulary: string;
@@ -34,7 +30,7 @@ export interface ParsedODataRequest {
34
30
  odataQuery: ODataQuery;
35
31
  odataBinds: OdataBinds;
36
32
  custom: AnyObject;
37
- id?: string | undefined;
33
+ id?: number | undefined;
38
34
  _defer?: boolean;
39
35
  }
40
36
  export interface ODataRequest extends ParsedODataRequest {
@@ -45,8 +41,8 @@ export interface ODataRequest extends ParsedODataRequest {
45
41
  sqlQuery?: AbstractSQLCompiler.SqlResult | AbstractSQLCompiler.SqlResult[];
46
42
  tx?: Tx;
47
43
  modifiedFields?: ReturnType<AbstractSQLCompiler.EngineInstance['getModifiedFields']>;
48
- affectedIds?: string[];
49
- pendingAffectedIds?: Promise<string[]>;
44
+ affectedIds?: number[];
45
+ pendingAffectedIds?: Promise<number[]>;
50
46
  hooks?: Array<[string, InstantiatedHooks]>;
51
47
  engine: AbstractSQLCompiler.Engines;
52
48
  }
@@ -59,17 +55,11 @@ export declare const memoizedGetOData2AbstractSQL: ((abstractSqlModel: AbstractS
59
55
  export declare const metadataEndpoints: string[];
60
56
  export declare function parseOData(b: UnparsedRequest & {
61
57
  _isChangeSet?: false;
62
- }, headers?: {
63
- [key: string]: string | string[] | undefined;
64
58
  }): Promise<ParsedODataRequest>;
65
59
  export declare function parseOData(b: UnparsedRequest & {
66
60
  _isChangeSet: true;
67
- }, headers?: {
68
- [key: string]: string | string[] | undefined;
69
61
  }): Promise<ParsedODataRequest[]>;
70
- export declare function parseOData(b: UnparsedRequest, headers?: {
71
- [key: string]: string | string[] | undefined;
72
- }): Promise<ParsedODataRequest | ParsedODataRequest[]>;
62
+ export declare function parseOData(b: UnparsedRequest): Promise<ParsedODataRequest | ParsedODataRequest[]>;
73
63
  export declare const translateUri: <T extends Pick<sbvrUtils.ODataRequest, "values" | "resourceName" | "method" | "odataQuery" | "odataBinds" | "vocabulary" | "abstractSqlModel">>(request: T & {
74
64
  abstractSqlQuery?: ODataRequest['abstractSqlQuery'];
75
65
  }) => T & {
@@ -132,7 +132,7 @@ const memoizedOdata2AbstractSQL = (() => {
132
132
  };
133
133
  })();
134
134
  exports.metadataEndpoints = ['$metadata', '$serviceroot'];
135
- async function parseOData(b, headers) {
135
+ async function parseOData(b) {
136
136
  try {
137
137
  if (b._isChangeSet && b.changeSet != null) {
138
138
  const sortedCS = _.sortBy(b.changeSet, (el) => el.url[0] !== '/');
@@ -146,14 +146,12 @@ async function parseOData(b, headers) {
146
146
  const { url, apiRoot } = splitApiRoot(b.url);
147
147
  const odata = (0, exports.memoizedParseOdata)(url);
148
148
  return {
149
- id: b.id,
150
- headers: { ...headers, ...b.headers } ?? headers,
151
149
  method: b.method,
152
150
  url,
153
151
  vocabulary: apiRoot,
154
152
  resourceName: odata.tree.resource,
155
153
  originalResourceName: odata.tree.resource,
156
- values: b.body ?? {},
154
+ values: b.data ?? {},
157
155
  odataQuery: odata.tree,
158
156
  odataBinds: odata.binds,
159
157
  custom: {},
@@ -208,7 +206,7 @@ const parseODataChangeset = (csReferences, b) => {
208
206
  originalResourceName: odata.tree.resource,
209
207
  odataBinds: odata.binds,
210
208
  odataQuery: odata.tree,
211
- values: b.body ?? {},
209
+ values: b.data ?? {},
212
210
  custom: {},
213
211
  id: contentId,
214
212
  _defer: defer,
@@ -1 +1 @@
1
- {"version":3,"file":"uri-parser.js","sourceRoot":"","sources":["../../src/sbvr-api/uri-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"uri-parser.js","sourceRoot":"","sources":["../../src/sbvr-api/uri-parser.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@balena/pinejs",
3
- "version": "16.0.0-build--batch-4752d5c621e724b9c1c8681845dc297b99453b65-1",
3
+ "version": "16.0.0-build-renovate-node-20-x-f810059b8839e410aab086f27909fb948e1199db-1",
4
4
  "main": "out/server-glue/module",
5
5
  "repository": "git@github.com:balena-io/pinejs.git",
6
6
  "license": "Apache-2.0",
@@ -56,7 +56,7 @@
56
56
  "express-session": "^1.17.3",
57
57
  "lodash": "^4.17.21",
58
58
  "memoizee": "^0.4.15",
59
- "pinejs-client-core": "^6.12.3",
59
+ "pinejs-client-core": "^6.13.0",
60
60
  "randomstring": "^1.2.3",
61
61
  "typed-error": "^3.2.2"
62
62
  },
@@ -138,6 +138,6 @@
138
138
  "recursive": true
139
139
  },
140
140
  "versionist": {
141
- "publishedAt": "2023-07-05T15:35:00.388Z"
141
+ "publishedAt": "2023-07-11T14:16:00.122Z"
142
142
  }
143
143
  }
@@ -95,8 +95,6 @@ import * as odataResponse from './odata-response';
95
95
  import { env } from '../server-glue/module';
96
96
  import { translateAbstractSqlModel } from './translations';
97
97
 
98
- const validBatchMethods = new Set(['PUT', 'POST', 'PATCH', 'DELETE', 'GET']);
99
-
100
98
  const LF2AbstractSQLTranslator = LF2AbstractSQL.createTranslator(sbvrTypes);
101
99
  const LF2AbstractSQLTranslatorVersion = `${LF2AbstractSQLVersion}+${sbvrTypesVersion}`;
102
100
 
@@ -135,8 +133,7 @@ export interface ApiKey extends Actor {
135
133
  }
136
134
 
137
135
  export interface Response {
138
- id?: string | undefined;
139
- status: number;
136
+ statusCode: number;
140
137
  headers?:
141
138
  | {
142
139
  [headerName: string]: any;
@@ -1025,15 +1022,15 @@ export const runURI = async (
1025
1022
  throw response;
1026
1023
  }
1027
1024
 
1028
- const { body: responseBody, status, headers } = response as Response;
1025
+ const { body: responseBody, statusCode, headers } = response as Response;
1029
1026
 
1030
- if (status != null && status >= 400) {
1027
+ if (statusCode != null && statusCode >= 400) {
1031
1028
  const ErrorClass =
1032
- statusCodeToError[status as keyof typeof statusCodeToError];
1029
+ statusCodeToError[statusCode as keyof typeof statusCodeToError];
1033
1030
  if (ErrorClass != null) {
1034
1031
  throw new ErrorClass(undefined, responseBody, headers);
1035
1032
  }
1036
- throw new HttpError(status, undefined, responseBody, headers);
1033
+ throw new HttpError(statusCode, undefined, responseBody, headers);
1037
1034
  }
1038
1035
 
1039
1036
  return responseBody as AnyObject | undefined;
@@ -1072,7 +1069,7 @@ export const getAffectedIds = async (
1072
1069
  args: HookArgs & {
1073
1070
  tx: Db.Tx;
1074
1071
  },
1075
- ): Promise<string[]> => {
1072
+ ): Promise<number[]> => {
1076
1073
  const { request } = args;
1077
1074
  if (request.affectedIds) {
1078
1075
  return request.affectedIds;
@@ -1097,7 +1094,7 @@ const $getAffectedIds = async ({
1097
1094
  tx,
1098
1095
  }: HookArgs & {
1099
1096
  tx: Db.Tx;
1100
- }): Promise<string[]> => {
1097
+ }): Promise<number[]> => {
1101
1098
  if (!['PATCH', 'DELETE'].includes(request.method)) {
1102
1099
  // We can only find the affected ids in advance for requests that modify existing records, if they
1103
1100
  // can insert new records (POST/PUT) then we're unable to find the ids until the request has actually run
@@ -1111,7 +1108,6 @@ const $getAffectedIds = async ({
1111
1108
  const parsedRequest: uriParser.ParsedODataRequest &
1112
1109
  Partial<Pick<uriParser.ODataRequest, 'engine' | 'translateVersions'>> =
1113
1110
  await uriParser.parseOData({
1114
- id: request.id,
1115
1111
  method: request.method,
1116
1112
  url: `/${request.vocabulary}${request.url}`,
1117
1113
  });
@@ -1162,84 +1158,6 @@ const runODataRequest = (req: Express.Request, vocabulary: string) => {
1162
1158
  api[vocabulary].logger.log('Parsing', req.method, req.url);
1163
1159
  }
1164
1160
 
1165
- if (req.url === `/${vocabulary}/$batch`) {
1166
- const { requests } = req.body as { requests: uriParser.UnparsedRequest[] };
1167
- req.batch = requests;
1168
- if (!Array.isArray(requests)) {
1169
- throw new BadRequestError(
1170
- 'Batch requests must include an array of requests in the body via the "requests" property',
1171
- );
1172
- }
1173
- if (req.headers != null && req.headers['content-type'] == null) {
1174
- throw new BadRequestError(
1175
- 'Headers in a batch request must include a "content-type" header if they are provided',
1176
- );
1177
- }
1178
- const ids = new Set<string>(
1179
- requests
1180
- .map((request) => request.id)
1181
- .filter((id) => typeof id === 'string') as string[],
1182
- );
1183
- if (ids.size !== requests.length) {
1184
- throw new BadRequestError(
1185
- 'All requests in a batch request must have unique string ids',
1186
- );
1187
- }
1188
-
1189
- for (const request of requests) {
1190
- if (
1191
- request.headers != null &&
1192
- request.headers['content-type'] == null &&
1193
- (req.headers == null || req.headers['content-type'] == null)
1194
- ) {
1195
- throw new BadRequestError(
1196
- 'Requests of a batch request that have headers must include a "content-type" header',
1197
- );
1198
- }
1199
- if (request.method == null) {
1200
- throw new BadRequestError(
1201
- 'Requests of a batch request must have a "method"',
1202
- );
1203
- }
1204
- const upperCaseMethod = request.method.toUpperCase();
1205
- if (!validBatchMethods.has(upperCaseMethod)) {
1206
- throw new BadRequestError(
1207
- `Requests of a batch request must have a method matching one of the following: ${Array.from(
1208
- validBatchMethods,
1209
- ).join(', ')}`,
1210
- );
1211
- }
1212
- if (
1213
- request.body !== undefined &&
1214
- (upperCaseMethod === 'GET' || upperCaseMethod === 'DELETE')
1215
- ) {
1216
- throw new BadRequestError(
1217
- 'GET and DELETE requests of a batch request must not have a body',
1218
- );
1219
- }
1220
- }
1221
-
1222
- const urls = new Set<string | undefined>(
1223
- requests.map((request) => request.url),
1224
- );
1225
- if (urls.has(undefined)) {
1226
- throw new BadRequestError(
1227
- 'Requests of a batch request must have a "url"',
1228
- );
1229
- }
1230
- if (urls.has('/university/$batch')) {
1231
- throw new BadRequestError('Batch requests cannot contain batch requests');
1232
- }
1233
- const urlModels = new Set(
1234
- Array.from(urls.values()).map((url: string) => url.split('/')[1]),
1235
- );
1236
- if (urlModels.size > 1) {
1237
- throw new BadRequestError(
1238
- 'Batch requests must consist of requests for only one model',
1239
- );
1240
- }
1241
- }
1242
-
1243
1161
  // Get the hooks for the current method/vocabulary as we know it,
1244
1162
  // in order to run PREPARSE hooks, before parsing gets us more info
1245
1163
  const { versions } = models[vocabulary];
@@ -1287,11 +1205,11 @@ const runODataRequest = (req: Express.Request, vocabulary: string) => {
1287
1205
  await runHooks('PREPARSE', reqHooks, { req, tx: req.tx });
1288
1206
  let requests: uriParser.UnparsedRequest[];
1289
1207
  // Check if it is a single request or a batch
1290
- if (req.url === `/${vocabulary}/$batch`) {
1291
- requests = req.batch!;
1208
+ if (req.batch != null && req.batch.length > 0) {
1209
+ requests = req.batch;
1292
1210
  } else {
1293
1211
  const { method, url, body } = req;
1294
- requests = [{ method, url, body }];
1212
+ requests = [{ method, url, data: body }];
1295
1213
  }
1296
1214
 
1297
1215
  const prepareRequest = async (
@@ -1350,10 +1268,7 @@ const runODataRequest = (req: Express.Request, vocabulary: string) => {
1350
1268
 
1351
1269
  // Parse the OData requests
1352
1270
  const results = await mappingFn(requests, async (requestPart) => {
1353
- const parsedRequest = await uriParser.parseOData(
1354
- requestPart,
1355
- req.headers,
1356
- );
1271
+ const parsedRequest = await uriParser.parseOData(requestPart);
1357
1272
 
1358
1273
  let request: uriParser.ODataRequest | uriParser.ODataRequest[];
1359
1274
  if (Array.isArray(parsedRequest)) {
@@ -1378,7 +1293,7 @@ const runODataRequest = (req: Express.Request, vocabulary: string) => {
1378
1293
  }
1379
1294
  });
1380
1295
  if (Array.isArray(request)) {
1381
- const changeSetResults = new Map<string, Response>();
1296
+ const changeSetResults = new Map<number, Response>();
1382
1297
  const changeSetRunner = runChangeSet(req, tx);
1383
1298
  for (const r of request) {
1384
1299
  await changeSetRunner(changeSetResults, r);
@@ -1399,7 +1314,7 @@ const runODataRequest = (req: Express.Request, vocabulary: string) => {
1399
1314
  if (
1400
1315
  !Array.isArray(result) &&
1401
1316
  result.body == null &&
1402
- result.status == null
1317
+ result.statusCode == null
1403
1318
  ) {
1404
1319
  console.error('No status or body set', req.url, responses);
1405
1320
  return new InternalRequestError();
@@ -1437,15 +1352,15 @@ export const handleODataRequest: Express.Handler = async (req, res, next) => {
1437
1352
 
1438
1353
  // Otherwise its a multipart request and we reply with the appropriate multipart response
1439
1354
  } else {
1440
- res.status(200).json({
1441
- responses: responses.map((response) => {
1355
+ (res.status(200) as any).sendMulti(
1356
+ responses.map((response) => {
1442
1357
  if (response instanceof HttpError) {
1443
- return httpErrorToResponse(response);
1358
+ response = httpErrorToResponse(response);
1444
1359
  } else {
1445
1360
  return response;
1446
1361
  }
1447
1362
  }),
1448
- });
1363
+ );
1449
1364
  }
1450
1365
  } catch (e: any) {
1451
1366
  if (handleHttpErrors(req, res, e)) {
@@ -1472,16 +1387,16 @@ export const handleHttpErrors = (
1472
1387
  for (const handleErrorFn of handleErrorFns) {
1473
1388
  handleErrorFn(req, err);
1474
1389
  }
1475
- const response = httpErrorToResponse(err, req);
1390
+ const response = httpErrorToResponse(err);
1476
1391
  handleResponse(res, response);
1477
1392
  return true;
1478
1393
  }
1479
1394
  return false;
1480
1395
  };
1481
1396
  const handleResponse = (res: Express.Response, response: Response): void => {
1482
- const { body, headers, status } = response as Response;
1397
+ const { body, headers, statusCode } = response as Response;
1483
1398
  res.set(headers);
1484
- res.status(status);
1399
+ res.status(statusCode);
1485
1400
  if (!body) {
1486
1401
  res.end();
1487
1402
  } else {
@@ -1491,12 +1406,10 @@ const handleResponse = (res: Express.Response, response: Response): void => {
1491
1406
 
1492
1407
  const httpErrorToResponse = (
1493
1408
  err: HttpError,
1494
- req?: Express.Request,
1495
- ): RequiredField<Response, 'status'> => {
1496
- const message = err.getResponseBody();
1409
+ ): RequiredField<Response, 'statusCode'> => {
1497
1410
  return {
1498
- status: err.status,
1499
- body: req != null && 'batch' in req ? { responses: [], message } : message,
1411
+ statusCode: err.status,
1412
+ body: err.getResponseBody(),
1500
1413
  headers: err.headers,
1501
1414
  };
1502
1415
  };
@@ -1601,7 +1514,7 @@ const runRequest = async (
1601
1514
  const runChangeSet =
1602
1515
  (req: Express.Request, tx: Db.Tx) =>
1603
1516
  async (
1604
- changeSetResults: Map<string, Response>,
1517
+ changeSetResults: Map<number, Response>,
1605
1518
  request: uriParser.ODataRequest,
1606
1519
  ): Promise<void> => {
1607
1520
  request = updateBinds(changeSetResults, request);
@@ -1619,7 +1532,7 @@ const runChangeSet =
1619
1532
  // deferred untill the request they reference is run and returns an insert ID.
1620
1533
  // This function compiles the sql query of a request which has been deferred
1621
1534
  const updateBinds = (
1622
- changeSetResults: Map<string, Response>,
1535
+ changeSetResults: Map<number, Response>,
1623
1536
  request: uriParser.ODataRequest,
1624
1537
  ) => {
1625
1538
  if (request._defer) {
@@ -1787,8 +1700,7 @@ const respondGet = async (
1787
1700
  );
1788
1701
 
1789
1702
  const response = {
1790
- id: request.id,
1791
- status: 200,
1703
+ statusCode: 200,
1792
1704
  body: { d },
1793
1705
  headers: { 'content-type': 'application/json' },
1794
1706
  };
@@ -1803,15 +1715,14 @@ const respondGet = async (
1803
1715
  } else {
1804
1716
  if (request.resourceName === '$metadata') {
1805
1717
  return {
1806
- id: request.id,
1807
- status: 200,
1718
+ statusCode: 200,
1808
1719
  body: models[vocab].odataMetadata,
1809
1720
  headers: { 'content-type': 'xml' },
1810
1721
  };
1811
1722
  } else {
1812
1723
  // TODO: request.resourceName can be '$serviceroot' or a resource and we should return an odata xml document based on that
1813
1724
  return {
1814
- status: 404,
1725
+ statusCode: 404,
1815
1726
  };
1816
1727
  }
1817
1728
  }
@@ -1867,7 +1778,7 @@ const respondPost = async (
1867
1778
  }
1868
1779
 
1869
1780
  const response = {
1870
- status: 201,
1781
+ statusCode: 201,
1871
1782
  body: result.d[0],
1872
1783
  headers: {
1873
1784
  'content-type': 'application/json',
@@ -1915,7 +1826,7 @@ const respondPut = async (
1915
1826
  tx: Db.Tx,
1916
1827
  ): Promise<Response> => {
1917
1828
  const response = {
1918
- status: 200,
1829
+ statusCode: 200,
1919
1830
  };
1920
1831
  await runHooks('PRERESPOND', request.hooks, {
1921
1832
  req,
@@ -29,19 +29,15 @@ import * as sbvrUtils from './sbvr-utils';
29
29
  export type OdataBinds = ODataBinds;
30
30
 
31
31
  export interface UnparsedRequest {
32
- id?: string;
33
32
  method: string;
34
33
  url: string;
35
- body?: any;
34
+ data?: any;
36
35
  headers?: { [header: string]: string };
37
36
  changeSet?: UnparsedRequest[];
38
37
  _isChangeSet?: boolean;
39
38
  }
40
39
 
41
40
  export interface ParsedODataRequest {
42
- headers?: {
43
- [key: string]: string | string[] | undefined;
44
- };
45
41
  method: SupportedMethod;
46
42
  url: string;
47
43
  vocabulary: string;
@@ -51,7 +47,7 @@ export interface ParsedODataRequest {
51
47
  odataQuery: ODataQuery;
52
48
  odataBinds: OdataBinds;
53
49
  custom: AnyObject;
54
- id?: string | undefined;
50
+ id?: number | undefined;
55
51
  _defer?: boolean;
56
52
  }
57
53
  export interface ODataRequest extends ParsedODataRequest {
@@ -64,8 +60,8 @@ export interface ODataRequest extends ParsedODataRequest {
64
60
  modifiedFields?: ReturnType<
65
61
  AbstractSQLCompiler.EngineInstance['getModifiedFields']
66
62
  >;
67
- affectedIds?: string[];
68
- pendingAffectedIds?: Promise<string[]>;
63
+ affectedIds?: number[];
64
+ pendingAffectedIds?: Promise<number[]>;
69
65
  hooks?: Array<[string, InstantiatedHooks]>;
70
66
  engine: AbstractSQLCompiler.Engines;
71
67
  }
@@ -267,27 +263,15 @@ export const metadataEndpoints = ['$metadata', '$serviceroot'];
267
263
 
268
264
  export async function parseOData(
269
265
  b: UnparsedRequest & { _isChangeSet?: false },
270
- headers?: {
271
- [key: string]: string | string[] | undefined;
272
- },
273
266
  ): Promise<ParsedODataRequest>;
274
267
  export async function parseOData(
275
268
  b: UnparsedRequest & { _isChangeSet: true },
276
- headers?: {
277
- [key: string]: string | string[] | undefined;
278
- },
279
269
  ): Promise<ParsedODataRequest[]>;
280
270
  export async function parseOData(
281
271
  b: UnparsedRequest,
282
- headers?: {
283
- [key: string]: string | string[] | undefined;
284
- },
285
272
  ): Promise<ParsedODataRequest | ParsedODataRequest[]>;
286
273
  export async function parseOData(
287
274
  b: UnparsedRequest,
288
- headers?: {
289
- [key: string]: string | string[] | undefined;
290
- },
291
275
  ): Promise<ParsedODataRequest | ParsedODataRequest[]> {
292
276
  try {
293
277
  if (b._isChangeSet && b.changeSet != null) {
@@ -308,14 +292,12 @@ export async function parseOData(
308
292
  const odata = memoizedParseOdata(url);
309
293
 
310
294
  return {
311
- id: b.id,
312
- headers: { ...headers, ...b.headers } ?? headers,
313
295
  method: b.method as SupportedMethod,
314
296
  url,
315
297
  vocabulary: apiRoot,
316
298
  resourceName: odata.tree.resource,
317
299
  originalResourceName: odata.tree.resource,
318
- values: b.body ?? {},
300
+ values: b.data ?? {},
319
301
  odataQuery: odata.tree,
320
302
  odataBinds: odata.binds,
321
303
  custom: {},
@@ -380,7 +362,7 @@ const parseODataChangeset = (
380
362
  originalResourceName: odata.tree.resource,
381
363
  odataBinds: odata.binds,
382
364
  odataQuery: odata.tree,
383
- values: b.body ?? {},
365
+ values: b.data ?? {},
384
366
  custom: {},
385
367
  id: contentId,
386
368
  _defer: defer,