@luxonis/visualizer-protobuf 3.1.0 → 3.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{depth-BJ1GI-lD.js → depth-DlC6A3Te.js} +65 -1
- package/dist/{deserialization.worker-CpadaVUC.js → deserialization.worker-YKcSaSWH.js} +376 -309
- package/dist/{index-B0OcF19n.js → index-BMIqHWwd.js} +2 -2
- package/dist/{index-M2eVbe_0.js → index-BN2v1iMN.js} +2 -2
- package/dist/{index-TElhyLth.js → index-Bq4VaIv3.js} +3 -3
- package/dist/{index-lYAUlgOC.js → index-C53DG9uU.js} +2 -2
- package/dist/{index-D2XLTZD6.js → index-C77lunov.js} +2 -2
- package/dist/{index-DcciMCSs.js → index-C9_ELgH0.js} +2 -2
- package/dist/{index-ruqK13K_.js → index-CA-EmEAR.js} +2 -2
- package/dist/{index-kX1V6BdV.js → index-D1zXLkli.js} +2 -2
- package/dist/{index-DEAiAkuM.js → index-D89yfNy9.js} +2 -2
- package/dist/{index-BFuISzq9.js → index-DmP7sjUz.js} +2 -2
- package/dist/{index-JtoOqqNH.js → index-DoXJbu-D.js} +2 -2
- package/dist/{index-BimzNWm5.js → index-DpUuSNx-.js} +2 -2
- package/dist/{index-DnF6OLu4.js → index-Du4IzW8k.js} +2 -2
- package/dist/{index-D_329r0B.js → index-Duh8rNuw.js} +2 -2
- package/dist/{index-BoW57zty.js → index-Dx4uEaE6.js} +2 -2
- package/dist/{index-oMO5wzwz.js → index-Eu-m3JKy.js} +2 -2
- package/dist/{index-ByH52TmT.js → index-IGydAG_o.js} +2 -2
- package/dist/{index-POkmkil6.js → index-X7vcFOB2.js} +2 -2
- package/dist/{index-BQ8ArLBu.js → index-fnrBNnsp.js} +2 -2
- package/dist/{index-DQuS45dq.js → index-plyilw_0.js} +61 -28
- package/dist/index.js +2 -2
- package/dist/lib/src/components/Panel.d.ts.map +1 -1
- package/dist/lib/src/components/Panel.js +3 -1
- package/dist/lib/src/components/Panel.js.map +1 -1
- package/dist/lib/src/connection/connection.d.ts.map +1 -1
- package/dist/lib/src/connection/connection.js +7 -1
- package/dist/lib/src/connection/connection.js.map +1 -1
- package/dist/lib/src/connection/foxglove-connection.d.ts +6 -0
- package/dist/lib/src/connection/foxglove-connection.d.ts.map +1 -1
- package/dist/lib/src/connection/foxglove-connection.js +24 -3
- package/dist/lib/src/connection/foxglove-connection.js.map +1 -1
- package/dist/lib/src/context/VisualizerContext.d.ts +2 -0
- package/dist/lib/src/context/VisualizerContext.d.ts.map +1 -1
- package/dist/lib/src/context/VisualizerContext.js +7 -0
- package/dist/lib/src/context/VisualizerContext.js.map +1 -1
- package/dist/lib/src/messaging/deserialization/detections/detection.d.ts.map +1 -1
- package/dist/lib/src/messaging/deserialization/detections/detection.js +117 -96
- package/dist/lib/src/messaging/deserialization/detections/detection.js.map +1 -1
- package/dist/lib/src/messaging/deserialization/video/h264.d.ts +2 -1
- package/dist/lib/src/messaging/deserialization/video/h264.d.ts.map +1 -1
- package/dist/lib/src/messaging/deserialization/video/h264.js +142 -97
- package/dist/lib/src/messaging/deserialization/video/h264.js.map +1 -1
- package/dist/lib/src/messaging/deserialization/video/h265.d.ts +2 -1
- package/dist/lib/src/messaging/deserialization/video/h265.d.ts.map +1 -1
- package/dist/lib/src/messaging/deserialization/video/h265.js +57 -16
- package/dist/lib/src/messaging/deserialization/video/h265.js.map +1 -1
- package/dist/lib/src/messaging/deserialization.worker.d.ts +3 -1
- package/dist/lib/src/messaging/deserialization.worker.d.ts.map +1 -1
- package/dist/lib/src/messaging/deserialization.worker.js +28 -12
- package/dist/lib/src/messaging/deserialization.worker.js.map +1 -1
- package/dist/lib/src/utils/error.d.ts +17 -4
- package/dist/lib/src/utils/error.d.ts.map +1 -1
- package/dist/lib/src/utils/error.js +59 -6
- package/dist/lib/src/utils/error.js.map +1 -1
- package/package.json +1 -1
|
@@ -16,14 +16,20 @@ import { parseMessage } from "./utils.js";
|
|
|
16
16
|
import { Profile } from "../protobuf.generated/EncodedFrame.js";
|
|
17
17
|
import { Type } from "../protobuf.generated/ImgFrame.js";
|
|
18
18
|
import { isCapableOfEncodedStream } from "../utils/encoding";
|
|
19
|
-
import { EncodedStreamNotSupportedError } from "../utils/error";
|
|
19
|
+
import { EncodedStreamNotSupportedError, NotInSecureContextError, UnsupportedTopicError, } from "../utils/error";
|
|
20
20
|
import { Logger } from "../utils/logger";
|
|
21
21
|
const logger = Logger.getLogger();
|
|
22
22
|
export function errorInstanceToErrorCode(error) {
|
|
23
|
+
if (error instanceof UnsupportedTopicError) {
|
|
24
|
+
return "UnsupportedTopic";
|
|
25
|
+
}
|
|
26
|
+
if (error instanceof NotInSecureContextError) {
|
|
27
|
+
return "NotInSecureContext";
|
|
28
|
+
}
|
|
23
29
|
if (error instanceof EncodedStreamNotSupportedError) {
|
|
24
30
|
return "EncodedStreamNotSupported";
|
|
25
31
|
}
|
|
26
|
-
return "
|
|
32
|
+
return "DecoderError";
|
|
27
33
|
}
|
|
28
34
|
const topicDecoders = new Map();
|
|
29
35
|
const topicSizes = new Map();
|
|
@@ -31,6 +37,14 @@ let callback;
|
|
|
31
37
|
function initCallback(cb) {
|
|
32
38
|
callback = cb;
|
|
33
39
|
}
|
|
40
|
+
function ensureEncodedStreamSupport(topic) {
|
|
41
|
+
if (!globalThis.isSecureContext) {
|
|
42
|
+
throw new NotInSecureContextError(topic);
|
|
43
|
+
}
|
|
44
|
+
if (!isCapableOfEncodedStream()) {
|
|
45
|
+
throw new EncodedStreamNotSupportedError(topic);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
34
48
|
function handleMessageToDecode({ schema, buffer, topic, stereoDepthMaxValue, }, configStore, errorCallback) {
|
|
35
49
|
const handleDecodingError = (error) => {
|
|
36
50
|
// TODO: Enable this log once we fix topic unsubscription not working
|
|
@@ -38,12 +52,14 @@ function handleMessageToDecode({ schema, buffer, topic, stereoDepthMaxValue, },
|
|
|
38
52
|
// Type information about an error gets lost during transfer from worker to main thread
|
|
39
53
|
// This means that we have to remap the errors based on type here to an 'error enum'
|
|
40
54
|
// Which can then be parsed on the main thread
|
|
41
|
-
errorCallback?.(errorInstanceToErrorCode(error), topic, {
|
|
55
|
+
errorCallback?.(errorInstanceToErrorCode(error), topic, {
|
|
56
|
+
message: error.message,
|
|
57
|
+
});
|
|
42
58
|
};
|
|
43
59
|
const protobufSchema = protobufsBySchema[schema];
|
|
44
60
|
if (!protobufSchema) {
|
|
45
61
|
logger.warn(`Unsupported message schema "${schema}"`);
|
|
46
|
-
handleDecodingError(new
|
|
62
|
+
handleDecodingError(new UnsupportedTopicError(topic, `Unsupported message schema "${schema}"`));
|
|
47
63
|
return;
|
|
48
64
|
}
|
|
49
65
|
const bufferArray = new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);
|
|
@@ -61,6 +77,7 @@ function handleMessageToDecode({ schema, buffer, topic, stereoDepthMaxValue, },
|
|
|
61
77
|
callback,
|
|
62
78
|
type: protobufSchema.type,
|
|
63
79
|
maxSteroDepth: stereoDepthMaxValue,
|
|
80
|
+
onError: handleDecodingError,
|
|
64
81
|
}).catch(handleDecodingError);
|
|
65
82
|
}
|
|
66
83
|
catch (error) {
|
|
@@ -69,21 +86,19 @@ function handleMessageToDecode({ schema, buffer, topic, stereoDepthMaxValue, },
|
|
|
69
86
|
}
|
|
70
87
|
async function deserializeDepthAiMessage(args) {
|
|
71
88
|
// eslint-disable-next-line @typescript-eslint/no-shadow
|
|
72
|
-
const { topicDecoders, topicSizes, type, message, callback, topic, maxSteroDepth } = args;
|
|
89
|
+
const { topicDecoders, topicSizes, type, message, callback, topic, maxSteroDepth, onError } = args;
|
|
73
90
|
switch (type) {
|
|
74
91
|
case "encodedFrame": {
|
|
75
|
-
|
|
76
|
-
throw new EncodedStreamNotSupportedError(topic);
|
|
77
|
-
}
|
|
92
|
+
ensureEncodedStreamSupport(topic);
|
|
78
93
|
topicSizes.set(topic, { width: message.width, height: message.height });
|
|
79
94
|
if (message.profile === Profile.AVC) {
|
|
80
|
-
await deserializeEncodedFrameH264({ topic, message, topicDecoders, callback });
|
|
95
|
+
await deserializeEncodedFrameH264({ topic, message, topicDecoders, callback, onError });
|
|
81
96
|
}
|
|
82
97
|
else if (message.profile === Profile.JPEG) {
|
|
83
98
|
await deserializeMJPEGFrame({ topic, message, callback });
|
|
84
99
|
}
|
|
85
100
|
else if (message.profile === Profile.HEVC) {
|
|
86
|
-
await deserializeEncodedFrameH265({ topic, message, topicDecoders, callback });
|
|
101
|
+
await deserializeEncodedFrameH265({ topic, message, topicDecoders, callback, onError });
|
|
87
102
|
}
|
|
88
103
|
else {
|
|
89
104
|
// TODO: Handle UNRECOGNIZED
|
|
@@ -95,7 +110,8 @@ async function deserializeDepthAiMessage(args) {
|
|
|
95
110
|
topicSizes.set(topic, { width, height });
|
|
96
111
|
switch (messageType) {
|
|
97
112
|
case Type.BITSTREAM: {
|
|
98
|
-
|
|
113
|
+
ensureEncodedStreamSupport(topic);
|
|
114
|
+
await deserializeEncodedFrameH264({ topic, message, topicDecoders, callback, onError });
|
|
99
115
|
break;
|
|
100
116
|
}
|
|
101
117
|
case Type.RAW16: {
|
|
@@ -153,7 +169,7 @@ async function deserializeDepthAiMessage(args) {
|
|
|
153
169
|
}
|
|
154
170
|
default: {
|
|
155
171
|
logger.warn(`Message decoding failed: unsupported type "${type}"`);
|
|
156
|
-
|
|
172
|
+
throw new UnsupportedTopicError(topic, `Unsupported message type "${type}"`);
|
|
157
173
|
}
|
|
158
174
|
}
|
|
159
175
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deserialization.worker.js","sourceRoot":"","sources":["../../../../src/messaging/deserialization.worker.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,oEAAoE;AACpE,0DAA0D;AAC1D,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAInC,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AACxF,OAAO,EACL,wBAAwB,GAEzB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6CAA6C,CAAC;AAExF,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,iCAAiC,EAAE,MAAM,gDAAgD,CAAC;AACnG,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,2BAA2B,EAAsB,MAAM,iCAAiC,CAAC;AAClG,OAAO,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,OAAO,EAAqB,OAAO,EAAE,MAAM,uCAAuC,CAAC;AAInF,OAAO,EAAiB,IAAI,EAAE,MAAM,mCAAmC,CAAC;AAIxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,
|
|
1
|
+
{"version":3,"file":"deserialization.worker.js","sourceRoot":"","sources":["../../../../src/messaging/deserialization.worker.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,20 @@
|
|
|
1
|
-
export
|
|
2
|
-
|
|
3
|
-
readonly
|
|
4
|
-
readonly
|
|
1
|
+
export type DecodingErrorCode = "UnsupportedTopic" | "NotInSecureContext" | "EncodedStreamNotSupported" | "DecoderError";
|
|
2
|
+
export declare class DecodingError extends Error {
|
|
3
|
+
readonly topicName: string;
|
|
4
|
+
readonly code: DecodingErrorCode;
|
|
5
|
+
constructor(code: DecodingErrorCode, topicName: string, message?: string);
|
|
6
|
+
}
|
|
7
|
+
export declare class UnsupportedTopicError extends DecodingError {
|
|
8
|
+
constructor(topicName: string, message?: string);
|
|
9
|
+
}
|
|
10
|
+
export declare class NotInSecureContextError extends DecodingError {
|
|
5
11
|
constructor(topicName: string);
|
|
6
12
|
}
|
|
13
|
+
export declare class EncodedStreamNotSupportedError extends DecodingError {
|
|
14
|
+
constructor(topicName: string);
|
|
15
|
+
}
|
|
16
|
+
export declare class DecoderRuntimeError extends DecodingError {
|
|
17
|
+
constructor(topicName: string, message?: string);
|
|
18
|
+
}
|
|
19
|
+
export declare function createDecodingError(code: DecodingErrorCode, topicName: string, message?: string): DecodingError;
|
|
7
20
|
//# sourceMappingURL=error.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../../src/utils/error.ts"],"names":[],"mappings":"AAAA,qBAAa,
|
|
1
|
+
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../../src/utils/error.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GACzB,kBAAkB,GAClB,oBAAoB,GACpB,2BAA2B,GAC3B,cAAc,CAAC;AAqBnB,qBAAa,aAAc,SAAQ,KAAK;IACtC,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,IAAI,EAAE,iBAAiB,CAAC;gBAErB,IAAI,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;CAOhF;AAED,qBAAa,qBAAsB,SAAQ,aAAa;gBACnC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;CAIvD;AAED,qBAAa,uBAAwB,SAAQ,aAAa;gBACrC,SAAS,EAAE,MAAM;CAIrC;AAED,qBAAa,8BAA+B,SAAQ,aAAa;gBAC5C,SAAS,EAAE,MAAM;CAIrC;AAED,qBAAa,mBAAoB,SAAQ,aAAa;gBACjC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;CAIvD;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,iBAAiB,EACvB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,GACf,aAAa,CAgBf"}
|
|
@@ -1,11 +1,64 @@
|
|
|
1
|
-
|
|
1
|
+
const decodingErrorDefinitions = {
|
|
2
|
+
UnsupportedTopic: {
|
|
3
|
+
message: "This topic is not supported by the current decoder.",
|
|
4
|
+
},
|
|
5
|
+
NotInSecureContext: {
|
|
6
|
+
message: "This stream requires a secure context such as HTTPS or localhost.",
|
|
7
|
+
},
|
|
8
|
+
EncodedStreamNotSupported: {
|
|
9
|
+
message: "Encoded stream decoding is not supported in this browser.",
|
|
10
|
+
},
|
|
11
|
+
DecoderError: {
|
|
12
|
+
message: "The stream could not be decoded.",
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
export class DecodingError extends Error {
|
|
2
16
|
topicName;
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
17
|
+
code;
|
|
18
|
+
constructor(code, topicName, message) {
|
|
19
|
+
super(message ?? decodingErrorDefinitions[code].message);
|
|
20
|
+
this.name = "DecodingError";
|
|
21
|
+
this.code = code;
|
|
7
22
|
this.topicName = topicName;
|
|
8
|
-
Object.setPrototypeOf(this,
|
|
23
|
+
Object.setPrototypeOf(this, new.target.prototype);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
export class UnsupportedTopicError extends DecodingError {
|
|
27
|
+
constructor(topicName, message) {
|
|
28
|
+
super("UnsupportedTopic", topicName, message);
|
|
29
|
+
this.name = "UnsupportedTopicError";
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
export class NotInSecureContextError extends DecodingError {
|
|
33
|
+
constructor(topicName) {
|
|
34
|
+
super("NotInSecureContext", topicName);
|
|
35
|
+
this.name = "NotInSecureContextError";
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
export class EncodedStreamNotSupportedError extends DecodingError {
|
|
39
|
+
constructor(topicName) {
|
|
40
|
+
super("EncodedStreamNotSupported", topicName);
|
|
41
|
+
this.name = "EncodedStreamNotSupportedError";
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
export class DecoderRuntimeError extends DecodingError {
|
|
45
|
+
constructor(topicName, message) {
|
|
46
|
+
super("DecoderError", topicName, message);
|
|
47
|
+
this.name = "DecoderRuntimeError";
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
export function createDecodingError(code, topicName, message) {
|
|
51
|
+
switch (code) {
|
|
52
|
+
case "UnsupportedTopic":
|
|
53
|
+
return new UnsupportedTopicError(topicName, message);
|
|
54
|
+
case "NotInSecureContext":
|
|
55
|
+
return new NotInSecureContextError(topicName);
|
|
56
|
+
case "EncodedStreamNotSupported":
|
|
57
|
+
return new EncodedStreamNotSupportedError(topicName);
|
|
58
|
+
case "DecoderError":
|
|
59
|
+
return new DecoderRuntimeError(topicName, message);
|
|
60
|
+
default:
|
|
61
|
+
return new DecoderRuntimeError(topicName, message ?? `Unexpected decoding error code: ${String(code)}`);
|
|
9
62
|
}
|
|
10
63
|
}
|
|
11
64
|
//# sourceMappingURL=error.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.js","sourceRoot":"","sources":["../../../../src/utils/error.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"error.js","sourceRoot":"","sources":["../../../../src/utils/error.ts"],"names":[],"mappings":"AAUA,MAAM,wBAAwB,GAAuD;IACnF,gBAAgB,EAAE;QAChB,OAAO,EAAE,qDAAqD;KAC/D;IACD,kBAAkB,EAAE;QAClB,OAAO,EAAE,mEAAmE;KAC7E;IACD,yBAAyB,EAAE;QACzB,OAAO,EAAE,2DAA2D;KACrE;IACD,YAAY,EAAE;QACZ,OAAO,EAAE,kCAAkC;KAC5C;CACF,CAAC;AAEF,MAAM,OAAO,aAAc,SAAQ,KAAK;IACtB,SAAS,CAAS;IAClB,IAAI,CAAoB;IAExC,YAAmB,IAAuB,EAAE,SAAiB,EAAE,OAAgB;QAC7E,KAAK,CAAC,OAAO,IAAI,wBAAwB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACpD,CAAC;CACF;AAED,MAAM,OAAO,qBAAsB,SAAQ,aAAa;IACtD,YAAmB,SAAiB,EAAE,OAAgB;QACpD,KAAK,CAAC,kBAAkB,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AAED,MAAM,OAAO,uBAAwB,SAAQ,aAAa;IACxD,YAAmB,SAAiB;QAClC,KAAK,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACxC,CAAC;CACF;AAED,MAAM,OAAO,8BAA+B,SAAQ,aAAa;IAC/D,YAAmB,SAAiB;QAClC,KAAK,CAAC,2BAA2B,EAAE,SAAS,CAAC,CAAC;QAC9C,IAAI,CAAC,IAAI,GAAG,gCAAgC,CAAC;IAC/C,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,aAAa;IACpD,YAAmB,SAAiB,EAAE,OAAgB;QACpD,KAAK,CAAC,cAAc,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AAED,MAAM,UAAU,mBAAmB,CACjC,IAAuB,EACvB,SAAiB,EACjB,OAAgB;IAEhB,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,kBAAkB;YACrB,OAAO,IAAI,qBAAqB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACvD,KAAK,oBAAoB;YACvB,OAAO,IAAI,uBAAuB,CAAC,SAAS,CAAC,CAAC;QAChD,KAAK,2BAA2B;YAC9B,OAAO,IAAI,8BAA8B,CAAC,SAAS,CAAC,CAAC;QACvD,KAAK,cAAc;YACjB,OAAO,IAAI,mBAAmB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACrD;YACE,OAAO,IAAI,mBAAmB,CAC5B,SAAS,EACT,OAAO,IAAI,mCAAmC,MAAM,CAAC,IAAI,CAAC,EAAE,CAC7D,CAAC;IACN,CAAC;AACH,CAAC"}
|