@webex/plugin-meetings 3.0.0-beta.22 → 3.0.0-beta.23
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/breakouts/breakout.js +1 -1
- package/dist/breakouts/index.js +1 -1
- package/dist/constants.js +0 -3
- package/dist/constants.js.map +1 -1
- package/dist/media/properties.js.map +1 -1
- package/dist/mediaQualityMetrics/config.js +505 -493
- package/dist/mediaQualityMetrics/config.js.map +1 -1
- package/dist/meeting/index.js +1 -4
- package/dist/meeting/index.js.map +1 -1
- package/dist/networkQualityMonitor/index.js +4 -2
- package/dist/networkQualityMonitor/index.js.map +1 -1
- package/dist/statsAnalyzer/global.js +1 -93
- package/dist/statsAnalyzer/global.js.map +1 -1
- package/dist/statsAnalyzer/index.js +297 -299
- package/dist/statsAnalyzer/index.js.map +1 -1
- package/dist/statsAnalyzer/mqaUtil.js +84 -47
- package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
- package/package.json +19 -19
- package/src/constants.ts +0 -3
- package/src/media/properties.ts +1 -3
- package/src/mediaQualityMetrics/config.ts +379 -377
- package/src/meeting/index.ts +1 -4
- package/src/networkQualityMonitor/index.ts +6 -6
- package/src/statsAnalyzer/global.ts +1 -94
- package/src/statsAnalyzer/index.ts +325 -373
- package/src/statsAnalyzer/mqaUtil.ts +92 -89
- package/test/integration/spec/space-meeting.js +1 -1
- package/test/unit/spec/networkQualityMonitor/index.js +4 -4
- package/test/unit/spec/stats-analyzer/index.js +63 -39
|
@@ -49,7 +49,6 @@ var NetworkQualityMonitor = /*#__PURE__*/function (_EventsScope) {
|
|
|
49
49
|
* @property {string} mediaType - audio|video
|
|
50
50
|
*/
|
|
51
51
|
function NetworkQualityMonitor(config) {
|
|
52
|
-
var _this$frequencyTypes$;
|
|
53
52
|
var _this;
|
|
54
53
|
(0, _classCallCheck2.default)(this, NetworkQualityMonitor);
|
|
55
54
|
_this = _super.call(this);
|
|
@@ -70,7 +69,7 @@ var NetworkQualityMonitor = /*#__PURE__*/function (_EventsScope) {
|
|
|
70
69
|
DOWNLINK: 'downlink'
|
|
71
70
|
});
|
|
72
71
|
_this.networkQualityScore = 1;
|
|
73
|
-
_this.networkQualityStatus = (0, _defineProperty2.default)({}, _this.frequencyTypes.UPLINK,
|
|
72
|
+
_this.networkQualityStatus = (0, _defineProperty2.default)({}, _this.frequencyTypes.UPLINK, {});
|
|
74
73
|
_this.mediaType = null;
|
|
75
74
|
return _this;
|
|
76
75
|
}
|
|
@@ -182,6 +181,9 @@ var NetworkQualityMonitor = /*#__PURE__*/function (_EventsScope) {
|
|
|
182
181
|
var determineIfUndefined = function determineIfUndefined(value) {
|
|
183
182
|
return typeof value === 'undefined' ? null : value;
|
|
184
183
|
};
|
|
184
|
+
if (!this.networkQualityStatus[UPLINK][mediaType]) {
|
|
185
|
+
this.networkQualityStatus[UPLINK][mediaType] = {};
|
|
186
|
+
}
|
|
185
187
|
|
|
186
188
|
/**
|
|
187
189
|
* Values for some browsers specifically Safari will be undefined we explicitly set to null
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NetworkQualityMonitor","config","indicatorTypes","PACKETLOSS","LATENCY","JITTER","frequencyTypes","UPLINK","DOWNLINK","networkQualityScore","networkQualityStatus","STATS","VIDEO_CORRELATE","AUDIO_CORRELATE","SHARE_CORRELATE","mediaType","emit","file","function","EVENT_TRIGGERS","NETWORK_QUALITY","emitNetworkQuality","remoteRtpResults","statsAnalyzerCurrentStats","roundTripTimeInMilliseconds","roundTripTime","jitterInMilliseconds","jitter","currentPacketLossRatio","send","determinePacketLoss","videoPacketLossRatioThreshold","determineLatency","rttThreshold","deterMineJitter","jitterThreshold","determineIfUndefined","value","acceptable","updateNetworkQualityStatus","EventsScope"],"sources":["index.ts"],"sourcesContent":["import EventsScope from '../common/events/events-scope';\nimport {EVENT_TRIGGERS, STATS} from '../constants';\n\n/**\n * Meeting - network quality event\n * Emitted on each interval of retrieving stats Analyzer data\n * @event network:quality\n * @type {Object}\n * @property {string} mediaType {video|audio}\n * @property {number} networkQualityScore - value determined in determineUplinkNetworkQuality\n * @memberof NetworkQualityMonitor\n */\n/**\n * NetworkQualityMonitor class that will emit events based on detected quality\n *\n * @class NetworkQualityMonitor\n * @extends {EventsScope}\n */\nexport default class NetworkQualityMonitor extends EventsScope {\n config: any;\n frequencyTypes: any;\n indicatorTypes: any;\n mediaType: any;\n networkQualityScore: any;\n networkQualityStatus: any;\n\n /**\n * Creates a new instance of NetworkQualityMonitor\n * @constructor\n * @public\n * @param {Object} config\n * @property {Object} indicatorTypes - network properties used to evaluate network quality used as constants\n * @property {Object} frequencyTypes - frequency properties used as constants {uplink|send} {downlink|receive}\n * @property {number} networkQualityScore - 0|1 1 is acceptable 0 is bad/unknown\n * @property {Object} networkQualityStatus - hash object based on indicatorTypes and frequencyTypes\n * @property {string} mediaType - audio|video\n */\n constructor(config: any) {\n super();\n this.config = config;\n this.indicatorTypes = Object.freeze({\n PACKETLOSS: 'packetLoss',\n LATENCY: 'latency',\n JITTER: 'jitter',\n });\n this.frequencyTypes = Object.freeze({\n UPLINK: 'uplink',\n DOWNLINK: 'downlink',\n });\n this.networkQualityScore = 1;\n this.networkQualityStatus = {\n [this.frequencyTypes.UPLINK]: {\n [STATS.VIDEO_CORRELATE]: {},\n [STATS.AUDIO_CORRELATE]: {},\n [STATS.SHARE_CORRELATE]: {},\n },\n };\n this.mediaType = null;\n }\n\n /**\n * emits NETWORK_QUALITY event on meeting with payload of media type and uplinkNetworkQuality score\n *\n * @memberof NetworkQualityMonitor\n * @returns {void}\n */\n emitNetworkQuality() {\n this.emit(\n {\n file: 'networkQualityMonitor',\n function: 'emitNetworkQuality',\n },\n EVENT_TRIGGERS.NETWORK_QUALITY,\n {\n mediaType: this.mediaType,\n networkQualityScore: this.networkQualityScore,\n }\n );\n }\n\n /**\n * invokes emitNetworkQuality method resets values back to default\n * @returns {void}\n * @memberof NetworkQualityMonitor\n */\n updateNetworkQualityStatus() {\n this.emitNetworkQuality();\n\n // reset values\n this.networkQualityScore = 1;\n this.mediaType = null;\n }\n\n /**\n * filter data to determine uplink network quality, invoked on same interval as stats analyzer remote-inbout-rtp\n * @param {Object} configObj\n * @param {string} configObj.mediaType {audio|video}\n * @param {RTCStats} configObj.remoteRtpResults RTC stats remote obj\n * @param {Object} configObj.statsAnalyzerCurrentStats statsResults\n * @returns {void}\n * @public\n * @memberof NetworkQualityMonitor\n */\n public determineUplinkNetworkQuality({\n mediaType,\n remoteRtpResults,\n statsAnalyzerCurrentStats,\n }: {\n mediaType: string;\n remoteRtpResults: any;\n statsAnalyzerCurrentStats: object;\n }) {\n const roundTripTimeInMilliseconds = remoteRtpResults.roundTripTime * 1000;\n const jitterInMilliseconds = remoteRtpResults.jitter * 1000;\n const {currentPacketLossRatio} = statsAnalyzerCurrentStats[mediaType].send;\n\n this.mediaType = mediaType;\n\n const {JITTER, PACKETLOSS, LATENCY} = this.indicatorTypes;\n const {UPLINK} = this.frequencyTypes;\n\n /**\n * determines if packetLoss ratio is over threshold set in config\n * sets networkQualityScore to 0 if over threshold\n * @returns {boolean}\n */\n const determinePacketLoss = () => {\n if (currentPacketLossRatio > this.config.videoPacketLossRatioThreshold) {\n this.networkQualityScore = 0;\n\n return false;\n }\n\n return true;\n };\n\n /**\n * determines if round trip time value is over threshold set in config\n * sets networkQualityScore to 0 if over threshold\n * @returns {boolean}\n */\n const determineLatency = () => {\n if (roundTripTimeInMilliseconds > this.config.rttThreshold) {\n this.networkQualityScore = 0;\n\n return false;\n }\n\n return true;\n };\n\n /**\n * determines if jitter value is over threshold in config\n * sets networkQualityScore to 0 if over threshold\n * @returns {boolean}\n */\n const deterMineJitter = () => {\n if (jitterInMilliseconds > this.config.jitterThreshold) {\n this.networkQualityScore = 0;\n\n return false;\n }\n\n return true;\n };\n\n /**\n * returns null if val is specifically undefined\n * @param {(number|undefined)} value\n * @returns {(number|null)}\n */\n const determineIfUndefined = (value: number | undefined) =>\n typeof value === 'undefined' ? null : value;\n\n /**\n * Values for some browsers specifically Safari will be undefined we explicitly set to null\n * https://bugs.webkit.org/show_bug.cgi?id=206645\n * https://bugs.webkit.org/show_bug.cgi?id=212668\n */\n // PACKET LOSS\n this.networkQualityStatus[UPLINK][mediaType][PACKETLOSS] = {\n acceptable: determinePacketLoss(),\n value: determineIfUndefined(currentPacketLossRatio),\n };\n\n // LATENCY measured in Round trip time\n this.networkQualityStatus[UPLINK][mediaType][LATENCY] = {\n acceptable: determineLatency(),\n value: determineIfUndefined(remoteRtpResults.roundTripTime),\n };\n\n // JITTER\n this.networkQualityStatus[UPLINK][mediaType][JITTER] = {\n acceptable: deterMineJitter(),\n value: determineIfUndefined(remoteRtpResults.jitter),\n };\n\n this.updateNetworkQualityStatus();\n }\n\n /**\n * Get the current status of network quaility object - networkQualityStatus\n * @returns {Object}\n * @public\n */\n get networkQualityStats() {\n const {UPLINK} = this.frequencyTypes;\n\n return this.networkQualityStatus[UPLINK];\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["NetworkQualityMonitor","config","indicatorTypes","PACKETLOSS","LATENCY","JITTER","frequencyTypes","UPLINK","DOWNLINK","networkQualityScore","networkQualityStatus","mediaType","emit","file","function","EVENT_TRIGGERS","NETWORK_QUALITY","emitNetworkQuality","remoteRtpResults","statsAnalyzerCurrentStats","roundTripTimeInMilliseconds","roundTripTime","jitterInMilliseconds","jitter","currentPacketLossRatio","send","determinePacketLoss","videoPacketLossRatioThreshold","determineLatency","rttThreshold","deterMineJitter","jitterThreshold","determineIfUndefined","value","acceptable","updateNetworkQualityStatus","EventsScope"],"sources":["index.ts"],"sourcesContent":["import EventsScope from '../common/events/events-scope';\nimport {EVENT_TRIGGERS} from '../constants';\n\n/**\n * Meeting - network quality event\n * Emitted on each interval of retrieving stats Analyzer data\n * @event network:quality\n * @type {Object}\n * @property {string} mediaType {video|audio}\n * @property {number} networkQualityScore - value determined in determineUplinkNetworkQuality\n * @memberof NetworkQualityMonitor\n */\n/**\n * NetworkQualityMonitor class that will emit events based on detected quality\n *\n * @class NetworkQualityMonitor\n * @extends {EventsScope}\n */\nexport default class NetworkQualityMonitor extends EventsScope {\n config: any;\n frequencyTypes: any;\n indicatorTypes: any;\n mediaType: any;\n networkQualityScore: any;\n networkQualityStatus: any;\n\n /**\n * Creates a new instance of NetworkQualityMonitor\n * @constructor\n * @public\n * @param {Object} config\n * @property {Object} indicatorTypes - network properties used to evaluate network quality used as constants\n * @property {Object} frequencyTypes - frequency properties used as constants {uplink|send} {downlink|receive}\n * @property {number} networkQualityScore - 0|1 1 is acceptable 0 is bad/unknown\n * @property {Object} networkQualityStatus - hash object based on indicatorTypes and frequencyTypes\n * @property {string} mediaType - audio|video\n */\n constructor(config: any) {\n super();\n this.config = config;\n this.indicatorTypes = Object.freeze({\n PACKETLOSS: 'packetLoss',\n LATENCY: 'latency',\n JITTER: 'jitter',\n });\n this.frequencyTypes = Object.freeze({\n UPLINK: 'uplink',\n DOWNLINK: 'downlink',\n });\n this.networkQualityScore = 1;\n this.networkQualityStatus = {\n [this.frequencyTypes.UPLINK]: {},\n };\n this.mediaType = null;\n }\n\n /**\n * emits NETWORK_QUALITY event on meeting with payload of media type and uplinkNetworkQuality score\n *\n * @memberof NetworkQualityMonitor\n * @returns {void}\n */\n emitNetworkQuality() {\n this.emit(\n {\n file: 'networkQualityMonitor',\n function: 'emitNetworkQuality',\n },\n EVENT_TRIGGERS.NETWORK_QUALITY,\n {\n mediaType: this.mediaType,\n networkQualityScore: this.networkQualityScore,\n }\n );\n }\n\n /**\n * invokes emitNetworkQuality method resets values back to default\n * @returns {void}\n * @memberof NetworkQualityMonitor\n */\n updateNetworkQualityStatus() {\n this.emitNetworkQuality();\n\n // reset values\n this.networkQualityScore = 1;\n this.mediaType = null;\n }\n\n /**\n * filter data to determine uplink network quality, invoked on same interval as stats analyzer remote-inbout-rtp\n * @param {Object} configObj\n * @param {string} configObj.mediaType {audio|video}\n * @param {RTCStats} configObj.remoteRtpResults RTC stats remote obj\n * @param {Object} configObj.statsAnalyzerCurrentStats statsResults\n * @returns {void}\n * @public\n * @memberof NetworkQualityMonitor\n */\n public determineUplinkNetworkQuality({\n mediaType,\n remoteRtpResults,\n statsAnalyzerCurrentStats,\n }: {\n mediaType: string;\n remoteRtpResults: any;\n statsAnalyzerCurrentStats: object;\n }) {\n const roundTripTimeInMilliseconds = remoteRtpResults.roundTripTime * 1000;\n const jitterInMilliseconds = remoteRtpResults.jitter * 1000;\n const {currentPacketLossRatio} = statsAnalyzerCurrentStats[mediaType].send;\n\n this.mediaType = mediaType;\n\n const {JITTER, PACKETLOSS, LATENCY} = this.indicatorTypes;\n const {UPLINK} = this.frequencyTypes;\n\n /**\n * determines if packetLoss ratio is over threshold set in config\n * sets networkQualityScore to 0 if over threshold\n * @returns {boolean}\n */\n const determinePacketLoss = () => {\n if (currentPacketLossRatio > this.config.videoPacketLossRatioThreshold) {\n this.networkQualityScore = 0;\n\n return false;\n }\n\n return true;\n };\n\n /**\n * determines if round trip time value is over threshold set in config\n * sets networkQualityScore to 0 if over threshold\n * @returns {boolean}\n */\n const determineLatency = () => {\n if (roundTripTimeInMilliseconds > this.config.rttThreshold) {\n this.networkQualityScore = 0;\n\n return false;\n }\n\n return true;\n };\n\n /**\n * determines if jitter value is over threshold in config\n * sets networkQualityScore to 0 if over threshold\n * @returns {boolean}\n */\n const deterMineJitter = () => {\n if (jitterInMilliseconds > this.config.jitterThreshold) {\n this.networkQualityScore = 0;\n\n return false;\n }\n\n return true;\n };\n\n /**\n * returns null if val is specifically undefined\n * @param {(number|undefined)} value\n * @returns {(number|null)}\n */\n const determineIfUndefined = (value: number | undefined) =>\n typeof value === 'undefined' ? null : value;\n\n if (!this.networkQualityStatus[UPLINK][mediaType]) {\n this.networkQualityStatus[UPLINK][mediaType] = {};\n }\n\n /**\n * Values for some browsers specifically Safari will be undefined we explicitly set to null\n * https://bugs.webkit.org/show_bug.cgi?id=206645\n * https://bugs.webkit.org/show_bug.cgi?id=212668\n */\n // PACKET LOSS\n this.networkQualityStatus[UPLINK][mediaType][PACKETLOSS] = {\n acceptable: determinePacketLoss(),\n value: determineIfUndefined(currentPacketLossRatio),\n };\n\n // LATENCY measured in Round trip time\n this.networkQualityStatus[UPLINK][mediaType][LATENCY] = {\n acceptable: determineLatency(),\n value: determineIfUndefined(remoteRtpResults.roundTripTime),\n };\n\n // JITTER\n this.networkQualityStatus[UPLINK][mediaType][JITTER] = {\n acceptable: deterMineJitter(),\n value: determineIfUndefined(remoteRtpResults.jitter),\n };\n\n this.updateNetworkQualityStatus();\n }\n\n /**\n * Get the current status of network quaility object - networkQualityStatus\n * @returns {Object}\n * @public\n */\n get networkQualityStats() {\n const {UPLINK} = this.frequencyTypes;\n\n return this.networkQualityStatus[UPLINK];\n }\n}\n"],"mappings":"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"}
|
|
@@ -7,55 +7,6 @@ _Object$defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.default = void 0;
|
|
8
8
|
var STATS_DEFAULT = {
|
|
9
9
|
encryption: 'sha-256',
|
|
10
|
-
audio: {
|
|
11
|
-
send: {
|
|
12
|
-
trackLabel: '',
|
|
13
|
-
maxPacketLossRatio: 0,
|
|
14
|
-
availableBandwidth: 0,
|
|
15
|
-
bytesSent: 0,
|
|
16
|
-
meanRemoteJitter: [],
|
|
17
|
-
meanRoundTripTime: []
|
|
18
|
-
},
|
|
19
|
-
recv: {
|
|
20
|
-
availableBandwidth: 0,
|
|
21
|
-
bytesReceived: 0,
|
|
22
|
-
meanRtpJitter: [],
|
|
23
|
-
meanRoundTripTime: []
|
|
24
|
-
}
|
|
25
|
-
},
|
|
26
|
-
video: {
|
|
27
|
-
send: {
|
|
28
|
-
trackLabel: '',
|
|
29
|
-
maxPacketLossRatio: 0,
|
|
30
|
-
availableBandwidth: 0,
|
|
31
|
-
meanRemoteJitter: [],
|
|
32
|
-
meanRoundTripTime: []
|
|
33
|
-
},
|
|
34
|
-
recv: {
|
|
35
|
-
availableBandwidth: 0,
|
|
36
|
-
totalPacketsLost: 0,
|
|
37
|
-
meanRtpJitter: [],
|
|
38
|
-
meanRoundTripTime: []
|
|
39
|
-
},
|
|
40
|
-
latency: 0,
|
|
41
|
-
packetsLost: 0
|
|
42
|
-
},
|
|
43
|
-
share: {
|
|
44
|
-
send: {
|
|
45
|
-
maxPacketLossRatio: 0,
|
|
46
|
-
availableBandwidth: 0,
|
|
47
|
-
totalPacketsLost: 0,
|
|
48
|
-
meanRemoteJitter: [],
|
|
49
|
-
meanRoundTripTime: []
|
|
50
|
-
},
|
|
51
|
-
recv: {
|
|
52
|
-
availableBandwidth: 0,
|
|
53
|
-
meanRtpJitter: [],
|
|
54
|
-
meanRoundTripTime: []
|
|
55
|
-
},
|
|
56
|
-
latency: 0,
|
|
57
|
-
packetsLost: 0
|
|
58
|
-
},
|
|
59
10
|
bandwidth: {
|
|
60
11
|
systemBandwidth: 0,
|
|
61
12
|
sentPerSecond: 0,
|
|
@@ -83,51 +34,8 @@ var STATS_DEFAULT = {
|
|
|
83
34
|
networkType: []
|
|
84
35
|
}
|
|
85
36
|
},
|
|
86
|
-
resolutions: {
|
|
87
|
-
audio: {
|
|
88
|
-
send: {
|
|
89
|
-
width: 0,
|
|
90
|
-
height: 0
|
|
91
|
-
},
|
|
92
|
-
recv: {
|
|
93
|
-
width: 0,
|
|
94
|
-
height: 0
|
|
95
|
-
}
|
|
96
|
-
},
|
|
97
|
-
video: {
|
|
98
|
-
send: {
|
|
99
|
-
width: 0,
|
|
100
|
-
height: 0
|
|
101
|
-
},
|
|
102
|
-
recv: {
|
|
103
|
-
width: 0,
|
|
104
|
-
height: 0
|
|
105
|
-
}
|
|
106
|
-
},
|
|
107
|
-
share: {
|
|
108
|
-
send: {
|
|
109
|
-
width: 0,
|
|
110
|
-
height: 0
|
|
111
|
-
},
|
|
112
|
-
recv: {
|
|
113
|
-
width: 0,
|
|
114
|
-
height: 0
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
},
|
|
37
|
+
resolutions: {},
|
|
118
38
|
internal: {
|
|
119
|
-
audio: {
|
|
120
|
-
send: {},
|
|
121
|
-
recv: {}
|
|
122
|
-
},
|
|
123
|
-
video: {
|
|
124
|
-
send: {},
|
|
125
|
-
recv: {}
|
|
126
|
-
},
|
|
127
|
-
share: {
|
|
128
|
-
send: {},
|
|
129
|
-
recv: {}
|
|
130
|
-
},
|
|
131
39
|
remote: {},
|
|
132
40
|
candidates: {}
|
|
133
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["STATS_DEFAULT","encryption","
|
|
1
|
+
{"version":3,"names":["STATS_DEFAULT","encryption","bandwidth","systemBandwidth","sentPerSecond","encodedPerSecond","helper","audioBytesSent","videoBytestSent","speed","results","connectionType","systemNetworkType","systemIpAddress","local","candidateType","transport","ipAddress","networkType","remote","resolutions","internal","candidates"],"sources":["global.ts"],"sourcesContent":["const STATS_DEFAULT = {\n encryption: 'sha-256',\n bandwidth: {\n systemBandwidth: 0,\n sentPerSecond: 0,\n encodedPerSecond: 0,\n helper: {\n audioBytesSent: 0,\n videoBytestSent: 0,\n },\n speed: 0,\n },\n results: {},\n connectionType: {\n systemNetworkType: 'unknown',\n systemIpAddress: '0.0.0.0',\n local: {\n candidateType: [],\n transport: [],\n ipAddress: [],\n networkType: [],\n },\n remote: {\n candidateType: [],\n transport: [],\n ipAddress: [],\n networkType: [],\n },\n },\n resolutions: {},\n internal: {\n remote: {},\n candidates: {},\n },\n};\n\nexport default STATS_DEFAULT;\n"],"mappings":";;;;;;;AAAA,IAAMA,aAAa,GAAG;EACpBC,UAAU,EAAE,SAAS;EACrBC,SAAS,EAAE;IACTC,eAAe,EAAE,CAAC;IAClBC,aAAa,EAAE,CAAC;IAChBC,gBAAgB,EAAE,CAAC;IACnBC,MAAM,EAAE;MACNC,cAAc,EAAE,CAAC;MACjBC,eAAe,EAAE;IACnB,CAAC;IACDC,KAAK,EAAE;EACT,CAAC;EACDC,OAAO,EAAE,CAAC,CAAC;EACXC,cAAc,EAAE;IACdC,iBAAiB,EAAE,SAAS;IAC5BC,eAAe,EAAE,SAAS;IAC1BC,KAAK,EAAE;MACLC,aAAa,EAAE,EAAE;MACjBC,SAAS,EAAE,EAAE;MACbC,SAAS,EAAE,EAAE;MACbC,WAAW,EAAE;IACf,CAAC;IACDC,MAAM,EAAE;MACNJ,aAAa,EAAE,EAAE;MACjBC,SAAS,EAAE,EAAE;MACbC,SAAS,EAAE,EAAE;MACbC,WAAW,EAAE;IACf;EACF,CAAC;EACDE,WAAW,EAAE,CAAC,CAAC;EACfC,QAAQ,EAAE;IACRF,MAAM,EAAE,CAAC,CAAC;IACVG,UAAU,EAAE,CAAC;EACf;AACF,CAAC;AAAC,eAEatB,aAAa;AAAA"}
|