motion-master-client 0.0.108 → 0.0.109
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/package.json
CHANGED
|
@@ -30,31 +30,44 @@ class IntegroEncoderCalibration {
|
|
|
30
30
|
};
|
|
31
31
|
}
|
|
32
32
|
start(debug = false) {
|
|
33
|
-
var _a, _b;
|
|
33
|
+
var _a, _b, _c;
|
|
34
34
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
35
|
-
const deviceRef = this.deviceRef;
|
|
36
35
|
// The calibration procedure should be performed after the drive is fully commissioned, and thus, the drive should be fully operational in Velocity mode.
|
|
37
36
|
// Tuning of the control loop should be done by the user.
|
|
38
|
-
this.notifications$.next(`Validating the device (${deviceRef}) before starting the Integro encoder calibration.`);
|
|
37
|
+
this.notifications$.next(`Validating the device (${this.deviceRef}) before starting the Integro encoder calibration.`);
|
|
39
38
|
yield this.validateDevice();
|
|
40
|
-
|
|
41
|
-
yield this.client.request.
|
|
39
|
+
// Retrieve the encoder configuration index assigned to Port 1.
|
|
40
|
+
const encoder1ConfigurationSensorPort = yield this.client.request.upload(this.deviceRef, 0x2110, 1);
|
|
41
|
+
const encoderConfigurationIndex = encoder1ConfigurationSensorPort === 1 ? 0x2110 : 0x2112;
|
|
42
|
+
this.notifications$.next(`Setting the integrated encoder sampling frequency to 16 kHz (0x${encoderConfigurationIndex.toString(16)}:28 = 1).`);
|
|
43
|
+
yield this.client.request.download(this.deviceRef, encoderConfigurationIndex, 28, 1);
|
|
42
44
|
this.notifications$.next('Switching the source of the velocity to the value provided by the encoder.');
|
|
43
|
-
yield (0, rxjs_1.lastValueFrom)(this.client.request.runUseInternalEncoderVelocityOsCommand(deviceRef, 1, 10000, 1000, false));
|
|
45
|
+
yield (0, rxjs_1.lastValueFrom)(this.client.request.runUseInternalEncoderVelocityOsCommand(this.deviceRef, 1, 10000, 1000, false));
|
|
44
46
|
// Trigger the POA automatic calibration with an OS command.
|
|
45
47
|
this.notifications$.next('Triggering automatic calibration of the POA by setting register 0x25 to 0x09.');
|
|
46
48
|
yield this.writeEncoderRegisterValueAndValidateResponse(0x25, 0x09);
|
|
47
49
|
// Convert the POE calibration velocity profile values and update the device.
|
|
48
50
|
yield this.setVelocityProfile(this.poeCalibrationVelocityProfile, 4);
|
|
49
51
|
this.notifications$.next('Setting modes of operation to Profile velocity mode and transitioning to Operation enabled CiA402 state.');
|
|
50
|
-
yield (0, rxjs_1.lastValueFrom)(this.client.request.setModesOfOperation(deviceRef, cia402_1.ModesOfOperation.PROFILE_VELOCITY_MODE));
|
|
51
|
-
yield this.client.request.transitionToCia402State(deviceRef, cia402_1.Cia402State.OPERATION_ENABLED);
|
|
52
|
+
yield (0, rxjs_1.lastValueFrom)(this.client.request.setModesOfOperation(this.deviceRef, cia402_1.ModesOfOperation.PROFILE_VELOCITY_MODE));
|
|
53
|
+
yield this.client.request.transitionToCia402State(this.deviceRef, cia402_1.Cia402State.OPERATION_ENABLED);
|
|
52
54
|
this.notifications$.next('Polling the encoder register 0x24 until its value equals 0x11 or until 5 seconds have passed.');
|
|
53
55
|
// Read the value of the encoder register 0x24 until its value equals 0x11 or until 5 seconds have passed.
|
|
54
|
-
let osCommandResponse = yield (0, rxjs_1.lastValueFrom)((0, rxjs_1.defer)(() => this.client.request.runKublerEncoderRegisterCommunicationOsCommand(deviceRef, 0, 0x24, 1, 0, 10000, 1000, false).pipe((0, rxjs_1.repeat)({ count:
|
|
56
|
+
let osCommandResponse = yield (0, rxjs_1.lastValueFrom)((0, rxjs_1.defer)(() => this.client.request.runKublerEncoderRegisterCommunicationOsCommand(this.deviceRef, 0, 0x24, 1, 0, 10000, 1000, false).pipe((0, rxjs_1.repeat)({ count: 14, delay: 500 }), (0, rxjs_1.takeWhile)(osCommandResponse => {
|
|
57
|
+
var _a;
|
|
58
|
+
if (debug) {
|
|
59
|
+
this.notifications$.next(`Value read from the encoder register 0x24 is: 0x${(_a = osCommandResponse.kublerRegisterValue) === null || _a === void 0 ? void 0 : _a.toString(16).toUpperCase()}`);
|
|
60
|
+
}
|
|
61
|
+
return (osCommandResponse === null || osCommandResponse === void 0 ? void 0 : osCommandResponse.kublerRegisterValue) !== 0x11;
|
|
62
|
+
}, true))));
|
|
63
|
+
if (osCommandResponse.request === 'failed') {
|
|
64
|
+
this.notifications$.next(`Reading the value of register 0x24 failed. ${osCommandResponse.errorName} (${osCommandResponse.errorCode}): ${osCommandResponse.errorDescription}`);
|
|
65
|
+
}
|
|
66
|
+
else if (osCommandResponse.request === 'succeeded') {
|
|
67
|
+
this.notifications$.next(`The last value retrieved from register 0x24 is 0x${(_a = osCommandResponse.kublerRegisterValue) === null || _a === void 0 ? void 0 : _a.toString(16).toUpperCase()}: ${os_command_1.kublerEncoderRegisterValueMeaning[0x24][osCommandResponse.kublerRegisterValue]}`);
|
|
68
|
+
}
|
|
55
69
|
yield this.client.request.download(this.deviceRef, 0x60FF, 0, 0);
|
|
56
70
|
yield (0, util_1.resolveAfter)(500);
|
|
57
|
-
this.notifications$.next(os_command_1.kublerEncoderRegisterValueMeaning[0x24][osCommandResponse.kublerRegisterValue]);
|
|
58
71
|
if (osCommandResponse.kublerRegisterValue === 0x09) {
|
|
59
72
|
this.notifications$.next('The calibration of the integrated encoder analogue gains cannot converge. Writing 0x05 to the encoder register 0x25.');
|
|
60
73
|
yield this.writeEncoderRegisterValueAndValidateResponse(0x25, 0x05);
|
|
@@ -69,7 +82,7 @@ class IntegroEncoderCalibration {
|
|
|
69
82
|
this.notifications$.next('Writing 0x00C2 to the encoder register 0x50.');
|
|
70
83
|
yield this.writeEncoderRegisterValueAndValidateResponse(0x50, 0x00C2, 2);
|
|
71
84
|
// Read the value of the encoder register 0x52 until its value satisfies the following condition (bit 6 = 1) & (bit 8 = 0) or until 8 seconds have passed.
|
|
72
|
-
osCommandResponse = yield (0, rxjs_1.lastValueFrom)((0, rxjs_1.defer)(() => this.client.request.runKublerEncoderRegisterCommunicationOsCommand(deviceRef, 0, 0x52, 2, 0, 10000, 1000, false).pipe((0, rxjs_1.repeat)({ count: 16, delay: 500 }), (0, rxjs_1.takeWhile)(osCommandResponse => {
|
|
85
|
+
osCommandResponse = yield (0, rxjs_1.lastValueFrom)((0, rxjs_1.defer)(() => this.client.request.runKublerEncoderRegisterCommunicationOsCommand(this.deviceRef, 0, 0x52, 2, 0, 10000, 1000, false).pipe((0, rxjs_1.repeat)({ count: 16, delay: 500 }), (0, rxjs_1.takeWhile)(osCommandResponse => {
|
|
73
86
|
var _a;
|
|
74
87
|
if (debug) {
|
|
75
88
|
this.notifications$.next(`Value read from the encoder register 0x52 is: 0x${(_a = osCommandResponse.kublerRegisterValue) === null || _a === void 0 ? void 0 : _a.toString(16).toUpperCase()}`);
|
|
@@ -80,7 +93,7 @@ class IntegroEncoderCalibration {
|
|
|
80
93
|
this.notifications$.next(`Reading the value of register 0x52 failed. ${osCommandResponse.errorName} (${osCommandResponse.errorCode}): ${osCommandResponse.errorDescription}`);
|
|
81
94
|
}
|
|
82
95
|
else if (osCommandResponse.request === 'succeeded') {
|
|
83
|
-
this.notifications$.next(`The last value retrieved from register 0x52 is 0x${(
|
|
96
|
+
this.notifications$.next(`The last value retrieved from register 0x52 is 0x${(_b = osCommandResponse.kublerRegisterValue) === null || _b === void 0 ? void 0 : _b.toString(16).toUpperCase()}`);
|
|
84
97
|
}
|
|
85
98
|
yield this.client.request.download(this.deviceRef, 0x60FF, 0, 0);
|
|
86
99
|
yield (0, util_1.resolveAfter)(500);
|
|
@@ -91,7 +104,7 @@ class IntegroEncoderCalibration {
|
|
|
91
104
|
this.notifications$.next('Writing 0x00C2 to the encoder register 0x50.');
|
|
92
105
|
yield this.writeEncoderRegisterValueAndValidateResponse(0x50, 0x00C2, 2);
|
|
93
106
|
// Read the value of the encoder register 0x52 until its value satisfies the following condition (bit 6 = 1) & (bit 8 = 0) or until 8 seconds have passed.
|
|
94
|
-
osCommandResponse = yield (0, rxjs_1.lastValueFrom)((0, rxjs_1.defer)(() => this.client.request.runKublerEncoderRegisterCommunicationOsCommand(deviceRef, 0, 0x52, 2, 0, 10000, 1000, false).pipe((0, rxjs_1.repeat)({ count: 16, delay: 500 }), (0, rxjs_1.takeWhile)(osCommandResponse => {
|
|
107
|
+
osCommandResponse = yield (0, rxjs_1.lastValueFrom)((0, rxjs_1.defer)(() => this.client.request.runKublerEncoderRegisterCommunicationOsCommand(this.deviceRef, 0, 0x52, 2, 0, 10000, 1000, false).pipe((0, rxjs_1.repeat)({ count: 16, delay: 500 }), (0, rxjs_1.takeWhile)(osCommandResponse => {
|
|
95
108
|
var _a;
|
|
96
109
|
if (debug) {
|
|
97
110
|
this.notifications$.next(`Value read from the encoder register 0x52 is: 0x${(_a = osCommandResponse.kublerRegisterValue) === null || _a === void 0 ? void 0 : _a.toString(16).toUpperCase()}`);
|
|
@@ -102,7 +115,7 @@ class IntegroEncoderCalibration {
|
|
|
102
115
|
this.notifications$.next(`Reading the value of register 0x52 failed. ${osCommandResponse.errorName} (${osCommandResponse.errorCode}): ${osCommandResponse.errorDescription}`);
|
|
103
116
|
}
|
|
104
117
|
else if (osCommandResponse.request === 'succeeded') {
|
|
105
|
-
this.notifications$.next(`The last value retrieved from register 0x52 is 0x${(
|
|
118
|
+
this.notifications$.next(`The last value retrieved from register 0x52 is 0x${(_c = osCommandResponse.kublerRegisterValue) === null || _c === void 0 ? void 0 : _c.toString(16).toUpperCase()}`);
|
|
106
119
|
}
|
|
107
120
|
yield this.client.request.download(this.deviceRef, 0x60FF, 0, 0);
|
|
108
121
|
yield (0, util_1.resolveAfter)(500);
|
|
@@ -110,10 +123,10 @@ class IntegroEncoderCalibration {
|
|
|
110
123
|
yield this.writeEncoderRegisterValueAndValidateResponse(0x25, 0x01);
|
|
111
124
|
this.notifications$.next('Saving the correction table by writing 0x00D0 to the encoder register 0x50.');
|
|
112
125
|
yield this.writeEncoderRegisterValueAndValidateResponse(0x50, 0x00D0, 2);
|
|
113
|
-
this.notifications$.next(`Setting the integrated encoder sampling frequency back to 32 kHz (
|
|
114
|
-
yield this.client.request.download(this.deviceRef,
|
|
126
|
+
this.notifications$.next(`Setting the integrated encoder sampling frequency back to 32 kHz (0x${encoderConfigurationIndex.toString(16)}:28 = 2).`);
|
|
127
|
+
yield this.client.request.download(this.deviceRef, encoderConfigurationIndex, 28, 2);
|
|
115
128
|
this.notifications$.next('Requesting Quick stop from device.');
|
|
116
|
-
yield this.client.request.quickStop(deviceRef);
|
|
129
|
+
yield this.client.request.quickStop(this.deviceRef);
|
|
117
130
|
});
|
|
118
131
|
}
|
|
119
132
|
/**
|
|
@@ -132,47 +145,48 @@ class IntegroEncoderCalibration {
|
|
|
132
145
|
if (((_c = (0, product_1.findSomanetProductById)(productId)) === null || _c === void 0 ? void 0 : _c.family) !== 'Integro') {
|
|
133
146
|
throw new Error('The device must be an Integro for the encoder calibration.');
|
|
134
147
|
}
|
|
135
|
-
|
|
136
|
-
if (!deviceRef) {
|
|
148
|
+
if (!this.deviceRef) {
|
|
137
149
|
throw new Error('No device reference could be determined from the device reference object.');
|
|
138
150
|
}
|
|
139
151
|
// The encoder configuration, which is assigned to port 1, must be of type Internal encoder (5).
|
|
140
|
-
const encoder1ConfigurationSensorPort = yield this.client.request.upload(deviceRef, 0x2110, 1);
|
|
152
|
+
const encoder1ConfigurationSensorPort = yield this.client.request.upload(this.deviceRef, 0x2110, 1);
|
|
153
|
+
let encoderSource = 1;
|
|
141
154
|
if (encoder1ConfigurationSensorPort === 1) {
|
|
142
|
-
const encoder1ConfigurationType = yield this.client.request.upload(deviceRef, 0x2110, 2);
|
|
155
|
+
const encoder1ConfigurationType = yield this.client.request.upload(this.deviceRef, 0x2110, 2);
|
|
143
156
|
if (encoder1ConfigurationType !== 5) {
|
|
144
157
|
throw new Error('Encoder configuration 1, which is assigned to port 1, must be of type Internal encoder (5).');
|
|
145
158
|
}
|
|
146
159
|
}
|
|
147
160
|
else {
|
|
148
|
-
const encoder2ConfigurationSensorPort = yield this.client.request.upload(deviceRef, 0x2112, 1);
|
|
161
|
+
const encoder2ConfigurationSensorPort = yield this.client.request.upload(this.deviceRef, 0x2112, 1);
|
|
149
162
|
if (encoder2ConfigurationSensorPort === 1) {
|
|
150
|
-
const encoder2ConfigurationType = yield this.client.request.upload(deviceRef, 0x2112, 2);
|
|
163
|
+
const encoder2ConfigurationType = yield this.client.request.upload(this.deviceRef, 0x2112, 2);
|
|
151
164
|
if (encoder2ConfigurationType !== 5) {
|
|
152
165
|
throw new Error('Encoder configuration 2, which is assigned to port 1, must be of type Internal encoder (5).');
|
|
153
166
|
}
|
|
167
|
+
encoderSource = 2;
|
|
154
168
|
}
|
|
155
169
|
else {
|
|
156
170
|
throw new Error('No encoder configuration is assigned to port 1.');
|
|
157
171
|
}
|
|
158
172
|
}
|
|
159
173
|
// The internal encoder must have a commutation function.
|
|
160
|
-
const torqueControllerEncoderSource = yield this.client.request.upload(deviceRef, 0x2010, 12);
|
|
161
|
-
if (torqueControllerEncoderSource !==
|
|
174
|
+
const torqueControllerEncoderSource = yield this.client.request.upload(this.deviceRef, 0x2010, 12);
|
|
175
|
+
if (torqueControllerEncoderSource !== encoderSource) {
|
|
162
176
|
throw new Error('The internal encoder configuration must have a commutation function.');
|
|
163
177
|
}
|
|
164
178
|
// The internal encoder must have a velocity function.
|
|
165
|
-
const velocityControllerEncoderSource = yield this.client.request.upload(deviceRef, 0x2011, 5);
|
|
166
|
-
if (velocityControllerEncoderSource !==
|
|
179
|
+
const velocityControllerEncoderSource = yield this.client.request.upload(this.deviceRef, 0x2011, 5);
|
|
180
|
+
if (velocityControllerEncoderSource !== encoderSource) {
|
|
167
181
|
throw new Error('The internal encoder configuration must have a velocity function.');
|
|
168
182
|
}
|
|
169
183
|
// The commutation offset must be set.
|
|
170
|
-
const commutationOffsetState = yield this.client.request.upload(deviceRef, 0x2009, 1);
|
|
184
|
+
const commutationOffsetState = yield this.client.request.upload(this.deviceRef, 0x2009, 1);
|
|
171
185
|
if (commutationOffsetState !== 2) {
|
|
172
186
|
throw new Error('The commutation offset state must be valid before starting the Integro encoder calibration.');
|
|
173
187
|
}
|
|
174
188
|
// The velocity controller must be tuned.
|
|
175
|
-
const velocityControllerKp = yield this.client.request.upload(deviceRef, 0x2011, 1);
|
|
189
|
+
const velocityControllerKp = yield this.client.request.upload(this.deviceRef, 0x2011, 1);
|
|
176
190
|
if (velocityControllerKp <= 0) {
|
|
177
191
|
throw new Error('Velocity controller must be tuned before starting the Integro encoder calibration.');
|
|
178
192
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"integro-encoder-calibration.js","sourceRoot":"","sources":["../../../../../libs/motion-master-client/src/lib/integro-encoder-calibration.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"integro-encoder-calibration.js","sourceRoot":"","sources":["../../../../../libs/motion-master-client/src/lib/integro-encoder-calibration.ts"],"names":[],"mappings":";;;;AAAA,+BAAwE;AAExE,qCAAwG;AAExG,qCAAyD;AACzD,6CAAiE;AACjE,iCAAsC;AACtC,uCAAmD;AAQnD,MAAa,yBAAyB;IAsBpC,YACU,MAA0B,EAClB,SAAoB;QAD5B,WAAM,GAAN,MAAM,CAAoB;QAClB,cAAS,GAAT,SAAS,CAAW;QAtBtB,mBAAc,GAAG,IAAI,cAAO,EAAU,CAAC;QAEtC,kCAA6B,GAAoB;YAChE,MAAM,EAAE,IAAI;YACZ,YAAY,EAAE,IAAI;YAClB,YAAY,EAAE,IAAI,EAAE,QAAQ;SAC7B,CAAC;QAEe,yCAAoC,GAAoB;YACvE,MAAM,EAAE,IAAI;YACZ,YAAY,EAAE,IAAI;YAClB,YAAY,EAAE,IAAI,EAAE,QAAQ;SAC7B,CAAC;QAEe,yCAAoC,GAAoB;YACvE,MAAM,EAAE,CAAC,IAAI;YACb,YAAY,EAAE,IAAI;YAClB,YAAY,EAAE,IAAI,EAAE,QAAQ;SAC7B,CAAC;IAKE,CAAC;IAEC,KAAK,CAAC,KAAK,GAAG,KAAK;;;YACvB,yJAAyJ;YACzJ,yDAAyD;YACzD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,0BAA0B,IAAI,CAAC,SAAS,oDAAoD,CAAC,CAAC;YACvH,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YAE5B,+DAA+D;YAC/D,MAAM,+BAA+B,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YACpG,MAAM,yBAAyB,GAAG,+BAA+B,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;YAE1F,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,kEAAkE,yBAAyB,CAAC,QAAQ,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;YAC9I,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,yBAAyB,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;YAErF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,4EAA4E,CAAC,CAAC;YACvG,MAAM,IAAA,oBAAa,EAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,sCAAsC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;YAEvH,4DAA4D;YAC5D,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,+EAA+E,CAAC,CAAC;YAC1G,MAAM,IAAI,CAAC,4CAA4C,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAEpE,6EAA6E;YAC7E,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,6BAA6B,EAAE,CAAC,CAAC,CAAC;YAErE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,0GAA0G,CAAC,CAAA;YACpI,MAAM,IAAA,oBAAa,EAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,EAAE,yBAAgB,CAAC,qBAAqB,CAAC,CAAC,CAAC;YACrH,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC,IAAI,CAAC,SAAS,EAAE,oBAAW,CAAC,iBAAiB,CAAC,CAAC;YAEjG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,+FAA+F,CAAC,CAAC;YAE1H,0GAA0G;YAC1G,IAAI,iBAAiB,GAAG,MAAM,IAAA,oBAAa,EACzC,IAAA,YAAK,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,8CAA8C,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,CACpI,IAAA,aAAM,EAAC,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EACjC,IAAA,gBAAS,EAAC,iBAAiB,CAAC,EAAE;;gBAC5B,IAAI,KAAK,EAAE;oBACT,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,mDAAmD,MAAA,iBAAiB,CAAC,mBAAmB,0CAAE,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;iBAClJ;gBACD,OAAO,CAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,mBAAmB,MAAK,IAAI,CAAC;YACzD,CAAC,EAAE,IAAI,CAAC,CACT,CAAC,CACH,CAAC;YAEF,IAAI,iBAAiB,CAAC,OAAO,KAAK,QAAQ,EAAE;gBAC1C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,8CAA8C,iBAAiB,CAAC,SAAS,KAAK,iBAAiB,CAAC,SAAS,MAAM,iBAAiB,CAAC,gBAAgB,EAAE,CAAC,CAAC;aAC/K;iBAAM,IAAI,iBAAiB,CAAC,OAAO,KAAK,WAAW,EAAE;gBACpD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,oDAAoD,MAAA,iBAAiB,CAAC,mBAAmB,0CAAE,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK,8CAAiC,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;aACtO;YAED,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACjE,MAAM,IAAA,mBAAY,EAAC,GAAG,CAAC,CAAC;YAExB,IAAI,iBAAiB,CAAC,mBAAmB,KAAK,IAAI,EAAE;gBAClD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,sHAAsH,CAAC,CAAC;gBACjJ,MAAM,IAAI,CAAC,4CAA4C,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;aACrE;YAED,yBAAyB;YAEzB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,qFAAqF,CAAC,CAAC;YAChH,MAAM,IAAI,CAAC,4CAA4C,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAEpE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;YAEpF,oDAAoD;YAEpD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,oCAAoC,EAAE,CAAC,CAAC,CAAC;YAEtE,MAAM,IAAA,mBAAY,EAAC,GAAG,CAAC,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;YACzE,MAAM,IAAI,CAAC,4CAA4C,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAEzE,0JAA0J;YAC1J,iBAAiB,GAAG,MAAM,IAAA,oBAAa,EACrC,IAAA,YAAK,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,8CAA8C,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,CACpI,IAAA,aAAM,EAAC,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EACjC,IAAA,gBAAS,EAAC,iBAAiB,CAAC,EAAE;;gBAC5B,IAAI,KAAK,EAAE;oBACT,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,mDAAmD,MAAA,iBAAiB,CAAC,mBAAmB,0CAAE,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;iBAClJ;gBACD,OAAO,CAAC,CAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,mBAAmB,IAAG,WAAW,CAAC,KAAK,IAAI,CAAC;YACzE,CAAC,EAAE,IAAI,CAAC,CACT,CAAC,CACH,CAAC;YAEF,IAAI,iBAAiB,CAAC,OAAO,KAAK,QAAQ,EAAE;gBAC1C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,8CAA8C,iBAAiB,CAAC,SAAS,KAAK,iBAAiB,CAAC,SAAS,MAAM,iBAAiB,CAAC,gBAAgB,EAAE,CAAC,CAAC;aAC/K;iBAAM,IAAI,iBAAiB,CAAC,OAAO,KAAK,WAAW,EAAE;gBACpD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,oDAAoD,MAAA,iBAAiB,CAAC,mBAAmB,0CAAE,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;aACnJ;YAED,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACjE,MAAM,IAAA,mBAAY,EAAC,GAAG,CAAC,CAAC;YAExB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;YAE9D,kCAAkC;YAElC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,oCAAoC,EAAE,CAAC,CAAC,CAAC;YAEtE,MAAM,IAAA,mBAAY,EAAC,GAAG,CAAC,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;YACzE,MAAM,IAAI,CAAC,4CAA4C,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAEzE,0JAA0J;YAC1J,iBAAiB,GAAG,MAAM,IAAA,oBAAa,EACrC,IAAA,YAAK,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,8CAA8C,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,CACpI,IAAA,aAAM,EAAC,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EACjC,IAAA,gBAAS,EAAC,iBAAiB,CAAC,EAAE;;gBAC5B,IAAI,KAAK,EAAE;oBACT,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,mDAAmD,MAAA,iBAAiB,CAAC,mBAAmB,0CAAE,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;iBAClJ;gBACD,OAAO,CAAC,CAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,mBAAmB,IAAG,WAAW,CAAC,KAAK,IAAI,CAAC;YACzE,CAAC,EAAE,IAAI,CAAC,CACT,CAAC,CACH,CAAC;YAEF,IAAI,iBAAiB,CAAC,OAAO,KAAK,QAAQ,EAAE;gBAC1C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,8CAA8C,iBAAiB,CAAC,SAAS,KAAK,iBAAiB,CAAC,SAAS,MAAM,iBAAiB,CAAC,gBAAgB,EAAE,CAAC,CAAC;aAC/K;iBAAM,IAAI,iBAAiB,CAAC,OAAO,KAAK,WAAW,EAAE;gBACpD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,oDAAoD,MAAA,iBAAiB,CAAC,mBAAmB,0CAAE,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;aACnJ;YAED,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACjE,MAAM,IAAA,mBAAY,EAAC,GAAG,CAAC,CAAC;YAExB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;YAC1F,MAAM,IAAI,CAAC,4CAA4C,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAEpE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAC;YACxG,MAAM,IAAI,CAAC,4CAA4C,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAEzE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,uEAAuE,yBAAyB,CAAC,QAAQ,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;YACnJ,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,yBAAyB,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;YAErF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;YAC/D,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;;KACrD;IAED;;OAEG;IACG,cAAc;;;YAClB,MAAM,MAAM,GAAG,MAAM,IAAA,oBAAa,EAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YAEtF,yBAAyB;YACzB,IAAI,CAAC,MAAM,EAAE;gBACX,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;aACvF;YAED,8BAA8B;YAC9B,MAAM,SAAS,GAAG,MAAA,MAAA,MAAM,CAAC,mBAAmB,0CAAE,MAAM,0CAAE,EAAE,CAAC;YACzD,IAAI,CAAA,MAAA,IAAA,gCAAsB,EAAC,SAAS,CAAC,0CAAE,MAAM,MAAK,SAAS,EAAE;gBAC3D,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;aAC/E;YAGD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;aAC9F;YAED,gGAAgG;YAChG,MAAM,+BAA+B,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YACpG,IAAI,aAAa,GAAG,CAAC,CAAC;YACtB,IAAI,+BAA+B,KAAK,CAAC,EAAE;gBACzC,MAAM,yBAAyB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;gBAC9F,IAAI,yBAAyB,KAAK,CAAC,EAAE;oBACnC,MAAM,IAAI,KAAK,CAAC,6FAA6F,CAAC,CAAC;iBAChH;aACF;iBAAM;gBACL,MAAM,+BAA+B,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;gBACpG,IAAI,+BAA+B,KAAK,CAAC,EAAE;oBACzC,MAAM,yBAAyB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;oBAC9F,IAAI,yBAAyB,KAAK,CAAC,EAAE;wBACnC,MAAM,IAAI,KAAK,CAAC,6FAA6F,CAAC,CAAC;qBAChH;oBACD,aAAa,GAAG,CAAC,CAAC;iBACnB;qBAAM;oBACL,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;iBACpE;aACF;YAED,yDAAyD;YACzD,MAAM,6BAA6B,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;YACnG,IAAI,6BAA6B,KAAK,aAAa,EAAE;gBACnD,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;aACzF;YAED,sDAAsD;YACtD,MAAM,+BAA+B,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YACpG,IAAI,+BAA+B,KAAK,aAAa,EAAE;gBACrD,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;aACtF;YAED,sCAAsC;YACtC,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAC3F,IAAI,sBAAsB,KAAK,CAAC,EAAE;gBAChC,MAAM,IAAI,KAAK,CAAC,6FAA6F,CAAC,CAAC;aAChH;YAED,yCAAyC;YACzC,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YACzF,IAAI,oBAAoB,IAAI,CAAC,EAAE;gBAC7B,MAAM,IAAI,KAAK,CAAC,oFAAoF,CAAC,CAAC;aACvG;;KACF;IAED;;OAEG;IACG,kBAAkB,CAAC,eAAgC,EAAE,oBAAoB,GAAG,CAAC;;YACjF,MAAM,EAAE,qBAAyB,eAAe,CAAE,CAAC,CAAC,cAAc;YAElE,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAClF,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YACnF,MAAM,YAAY,GAAG,MAAM,IAAA,oBAAa,EAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YAE9F,uEAAuE;YACvE,8IAA8I;YAC9I,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,aAAa,EAAE;gBACvC,MAAM,GAAG,GAAG,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnC,EAAE,CAAC,MAAM,GAAG,GAAG,GAAG,aAAa,GAAG,IAAI,CAAC;gBACvC,EAAE,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,oBAAoB,CAAC;gBAC7D,EAAE,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,oBAAoB,CAAC;aAC9D;YAED,oGAAoG;YACpG,KAAK,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,EAAE,CAAsC,EAAE;gBAChF,EAAE,CAAC,GAAG,CAAC,GAAG,IAAA,2CAAkC,EAAC,KAAK,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;gBAChF,EAAE,CAAC,GAAG,CAAC,GAAG,IAAA,iDAAwC,EAAC,EAAE,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;aACvF;YAED,gFAAgF;YAChF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,oCAAoC,EAAE,CAAC,MAAM,gEAAgE,EAAE,CAAC,YAAY,QAAQ,EAAE,CAAC,YAAY,iBAAiB,CAAC,CAAC;YAC/L,MAAM,IAAA,oBAAa,EACjB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC;gBACrC,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC;gBAC5C,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC;gBAC5C,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC9B,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,0BAA0B;aACnE,CAAC,CACH,CAAC;QACJ,CAAC;KAAA;IAED;;OAEG;IACG,4CAA4C,CAAC,OAAe,EAAE,KAAa,EAAE,SAAiB,CAAC;;YACnG,IAAI,iBAAiB,GAAG,MAAM,IAAA,oBAAa,EACzC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,8CAA8C,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAClI,CAAC;YAEF,IAAI,iBAAiB,CAAC,mBAAmB,KAAK,KAAK,EAAE;gBACnD,MAAM,IAAI,KAAK,CAAC,wCAAwC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,eAAe,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;aACnH;QACH,CAAC;KAAA;CAEF;AA3RD,8DA2RC"}
|